diff --git a/mozilla/webtools/testopia/.project b/mozilla/webtools/testopia/.project new file mode 100644 index 00000000000..3e1b4df33fa --- /dev/null +++ b/mozilla/webtools/testopia/.project @@ -0,0 +1,17 @@ + + + testopia-1.0 + + + + + + org.epic.perleditor.perlbuilder + + + + + + org.epic.perleditor.perlnature + + diff --git a/mozilla/webtools/testopia/Bugzilla/Testopia/Attachment.pm b/mozilla/webtools/testopia/Bugzilla/Testopia/Attachment.pm index 7240923b5ff..0482513358e 100644 --- a/mozilla/webtools/testopia/Bugzilla/Testopia/Attachment.pm +++ b/mozilla/webtools/testopia/Bugzilla/Testopia/Attachment.pm @@ -335,7 +335,7 @@ Returns true if the logged in user has rights to edit this attachment sub canedit { } -=head2 canview +=head2 candelete Returns true if the logged in user has rights to delete this attachment diff --git a/mozilla/webtools/testopia/Bugzilla/Testopia/Environment.pm b/mozilla/webtools/testopia/Bugzilla/Testopia/Environment.pm index 23d2b933758..60ccc492411 100644 --- a/mozilla/webtools/testopia/Bugzilla/Testopia/Environment.pm +++ b/mozilla/webtools/testopia/Bugzilla/Testopia/Environment.pm @@ -24,7 +24,7 @@ Bugzilla::Testopia::Environment - A test environment =head1 DESCRIPTION -Environments are a set of paramaters dictating what conditions +Environments are a set of parameters dictating what conditions a test was conducted in. Each test run must have an environment. Environments can be very simple or very complex. Since there is no easy way of defining a limit for an environment, the bulk of diff --git a/mozilla/webtools/testopia/Bugzilla/Testopia/Product.pm b/mozilla/webtools/testopia/Bugzilla/Testopia/Product.pm index 52ec7f4f401..7779249a287 100644 --- a/mozilla/webtools/testopia/Bugzilla/Testopia/Product.pm +++ b/mozilla/webtools/testopia/Bugzilla/Testopia/Product.pm @@ -20,6 +20,8 @@ package Bugzilla::Testopia::Product; +use strict; + # Extends Bugzilla::Product; use base "Bugzilla::Product"; diff --git a/mozilla/webtools/testopia/Bugzilla/Testopia/Search.pm b/mozilla/webtools/testopia/Bugzilla/Testopia/Search.pm index d0b7db8bc0b..af1ae436d5a 100644 --- a/mozilla/webtools/testopia/Bugzilla/Testopia/Search.pm +++ b/mozilla/webtools/testopia/Bugzilla/Testopia/Search.pm @@ -37,7 +37,7 @@ Bugzilla::Testopia::Search - A module to support searches in Testopis =head1 DESCRIPTION Testopia::Search is based heavilly on Bugzilla::Search. It takes a -CGI instance and parses its paramaters to generate an SQL query that +CGI instance and parses its parameters to generate an SQL query that can be used to get a result set from the database. The query is usually passed to Table.pm to execute and display the results. Search.pm supports searching for all major objects in the Testopia @@ -218,15 +218,22 @@ sub init { my @funcdefs = ( "^category," => sub { + if ($obj eq 'case_run'){ + push(@supptables, + "INNER JOIN test_cases " . + "ON test_case_runs.case_id = test_cases.case_id"); + } push(@supptables, "INNER JOIN test_case_categories AS categories " . "ON test_cases.category_id = categories.category_id"); $f = "categories.name"; }, "^build," => sub { + my $str = ''; + $str = 'case_' if ($obj eq 'case_run'); push(@supptables, "INNER JOIN test_builds AS builds " . - "ON test_runs.build_id = builds.build_id"); + "ON test_". $str ."runs.build_id = builds.build_id"); $f = "builds.name"; }, "^(tcaction|tceffect)," => sub { @@ -296,6 +303,27 @@ sub init { "^run_plan_id," => sub { $f = "test_runs.plan_id"; }, + "^case_prod," => sub { + push(@supptables, + "INNER JOIN test_case_plans AS case_plans " . + "ON test_cases.case_id = case_plans.case_id"); + push(@supptables, + "INNER JOIN test_plans " . + "ON case_plans.plan_id = test_plans.plan_id"); + push(@supptables, + "INNER JOIN products " . + "ON test_plans.product_id = products.id"); + $f = "test_plans.product_id"; + }, + "^run_prod," => sub { + push(@supptables, + "INNER JOIN test_plans " . + "ON test_runs.plan_id = test_plans.plan_id"); + push(@supptables, + "INNER JOIN products " . + "ON test_plans.product_id = products.id"); + $f = "test_plans.product_id"; + }, "^(author|editor|manager|default_tester)," => sub { push(@supptables, "INNER JOIN profiles AS map_$1 " . @@ -422,9 +450,24 @@ sub init { } push(@specialchart, ["bug", $type, join(',', $cgi->param('bug_id'))]); } + if ($cgi->param("product_id")){ + my $type = "anyexact"; + if ($cgi->param('prodidtype') && $cgi->param('prodidtype') eq 'exclude') { + $type = "nowords"; + } + if ($obj eq 'run'){ + push(@specialchart, ["run_prod", $type, join(',', $cgi->param('product_id'))]); + } + elsif ($obj eq 'case'){ + push(@specialchart, ["case_prod", $type, join(',', $cgi->param('product_id'))]); + } + else{ + push(@specialchart, ["product_id", $type, join(',', $cgi->param('product_id'))]); + } + } # Check the Multi select fields and add them to the chart my @legal_fields = ("case_status_id", "category", "priority_id", - "component", "isautomated", "product_id", + "component", "isautomated", "case_run_status_id", "default_product_version", "type_id", "build", "environment_id", "milestone"); @@ -465,7 +508,7 @@ sub init { push(@specialchart, ["tags", $t, $cgi->param('tags')]); } # Check for author - + my @clist; foreach my $profile ("author", "editor", "manager", "default_tester", "assignee", "testedby"){ $t = $cgi->param($profile . "_type") || ''; @@ -479,9 +522,18 @@ sub init { } } if ($cgi->param($profile)){ - push(@specialchart, [$profile, $t, $cgi->param($profile)]); + if ($cgi->param('andor')){ + push(@specialchart, [$profile, $t, trim($cgi->param($profile))]); + } + else{ + push(@clist, $profile, $t, trim($cgi->param($profile))); + } } } + if (@clist) { + push(@specialchart, \@clist); + } + # check static text fields foreach my $f ("summary", "tcaction", "tceffect", "script", "requirement", "name", "plan_text", "environment", diff --git a/mozilla/webtools/testopia/Bugzilla/Testopia/Table.pm b/mozilla/webtools/testopia/Bugzilla/Testopia/Table.pm index 97e005c489f..5b4e27b7d94 100644 --- a/mozilla/webtools/testopia/Bugzilla/Testopia/Table.pm +++ b/mozilla/webtools/testopia/Bugzilla/Testopia/Table.pm @@ -1,4 +1,3 @@ -#!/usr/bin/perl -wT # -*- Mode: perl; indent-tabs-mode: nil -*- # # The contents of this file are subject to the Mozilla Public @@ -105,13 +104,9 @@ sub init { $self->{'type'} = $type || ThrowCodeError('bad_arg', {argument => 'type', function => 'Testopia::Table::_init'}); - $self->{'url_loc'} = $url || ThrowCodeError('bad_arg', - {argument => 'url', - function => 'Testopia::Table::_init'}); - $self->{'cgi'} = $cgi || ThrowCodeError('bad_arg', - {argument => 'cgi', - function => 'Testopia::Table::_init'}); - my $debug = $cgi->param('debug'); + $self->{'url_loc'} = $url; + $self->{'cgi'} = $cgi; + my $debug = $cgi->param('debug') if $cgi; my @list; if ($query){ print "$query" if $debug; @@ -120,11 +115,11 @@ sub init { my $countquery = $query; $countquery =~ s/ LIMIT.*$//; print "
$countquery" if $debug; - my $count = $dbh->selectcol_arrayref($countquery); - $count = scalar @$count; + my $count_res = $dbh->selectcol_arrayref($countquery); + my $count = scalar @$count_res; print "
total rows: $count" if $debug; $self->{'list_count'} = $count; - + my @ids; my $list = $dbh->selectcol_arrayref($query); foreach my $id (@$list){ my $o; @@ -140,12 +135,16 @@ sub init { elsif ($type eq 'case_run'){ $o = Bugzilla::Testopia::TestCaseRun->new($id); } + push (@ids, $id); push (@list, $o); } $self->{'list'} = \@list; + $self->{'id_list'} = join(",", @$count_res); + } + if ($cgi){ + $self->{'viewall'} = $cgi->param('viewall'); + $self->{'page'} = $cgi->param('page') || 0; } - $self->{'viewall'} = $cgi->param('viewall'); - $self->{'page'} = $cgi->param('page') || 0; # elsif (!$query && !$list){ # my @list; @@ -206,9 +205,9 @@ sub init { # $self->{'reverse_sort'} = ($self->{'reverse_sort'} ? 1 : 0); # } # -# #### SAVE #### -# # Save the list of testcases for use in paginating and sorting -# $self->save_list; + #### SAVE #### + # Save the list of testcases for use in paginating and sorting + $self->save_list; # # #### SPLICE #### # # If we are using a paged view of the data we split it up here @@ -228,31 +227,32 @@ Used only in list context =cut sub save_list { - my $self = shift; - my @ids; - foreach my $i (@{$self->{'list'}}){ - push @ids, $i->id; - } - my $list = join(",", @ids); + my $self = shift; + return if ($self->{'user'}->id == 0); +# my @ids; +# foreach my $i (@{$self->{'list'}}){ +# push @ids, $i->id; +# } +# my $list = join(",", @ids); my $dbh = Bugzilla->dbh; - - $dbh->bz_lock_tables('test_named_queries WRITE'); - my ($is) = $dbh->selectrow_array( - "SELECT 1 FROM test_named_queries - WHERE userid = ? AND name = ?", undef, - ($self->{'user'}->id, "__". $self->{'type'} ."__")); - - if ($is) { - $dbh->do("UPDATE test_named_queries SET query = ? - WHERE userid = ? AND name = ?", undef, - ($list, $self->{'user'}->id, "__". $self->{'type'} ."__")); + if ($self->{'id_list'}){ + $dbh->bz_lock_tables('test_named_queries WRITE'); + my ($is) = $dbh->selectrow_array( + "SELECT 1 FROM test_named_queries + WHERE userid = ? AND name = ?", undef, + ($self->{'user'}->id, "__". $self->{'type'} ."__")); + + if ($is) { + $dbh->do("UPDATE test_named_queries SET query = ? + WHERE userid = ? AND name = ?", undef, + (join(",", $self->{'id_list'}), $self->{'user'}->id, "__". $self->{'type'} ."__")); + } + else { + $dbh->do("INSERT INTO test_named_queries VALUES(?,?,?,?)", undef, + ($self->{'user'}->id, "__". $self->{'type'} ."__", 0, join(",", $self->{'id_list'}))); + } + $dbh->bz_unlock_tables(); } - else { - $dbh->do("INSERT INTO test_named_queries VALUES(?,?,?,?)", undef, - ($self->{'user'}->id, "__". $self->{'type'} ."__", 0, $list)); - } - $dbh->bz_unlock_tables(); - # $self->{'list_count'} = scalar @ids unless $self->{'query'}; } @@ -264,13 +264,16 @@ Used only in list context =cut sub get_saved_list { - my $self = shift; + my $self = shift; + return undef if ($self->{'user'}->id == 0); + my $type = shift || $self->{'type'}; my $dbh = Bugzilla->dbh; my ($list) = $dbh->selectrow_array( "SELECT query FROM test_named_queries WHERE userid = ? AND name = ?", undef, - ($self->{'user'}->id, "__". $self->{'type'} ."__")); - return $list; + ($self->{'user'}->id, "__". $type ."__")); + my @list = split(',', $list); + return \@list; } # used by the sort function to check which field to sort on @@ -305,28 +308,37 @@ sub sort_fields { } sub sort_list { - my $self = shift; - $field = shift; - $reverse = $self->{'reverse_sort'}; - my @list = sort sort_fields @{$self->{'list'}}; - $self->{'list'} = \@list; - return $self->{'list'}; + my $self = shift; + $field = shift; + $reverse = $self->{'reverse_sort'}; + my @list = sort sort_fields @{$self->{'list'}}; + $self->{'list'} = \@list; + return $self->{'list'}; } sub get_page { - my $self = shift; - if ($self->{'viewall'}){ - return $self->{'list'}; - } - my $pagenum = shift || $self->{'page'}; - $self->{'page'} = $pagenum; - my $offset = $pagenum * $self->page_size; - my @list = @{$self->{'list'}}; + my $self = shift; + if ($self->{'viewall'}){ + return $self->{'list'}; + } + my $pagenum = shift || $self->{'page'}; + $self->{'page'} = $pagenum; + my $offset = $pagenum * $self->page_size; + my @list = @{$self->{'list'}}; @list = splice(@list, $offset, $self->page_size); $self->{'list'} = \@list; return $self->{'list'}; } +sub get_next{ + my $self = shift; + my ($curr) = @_; + + my $list = $self->get_list; + my $ref = lsearch($curr, $list); + return undef if $ref == -1; + return $list->[$ref]; +} ############################### #### Accessors #### ############################### @@ -341,11 +353,11 @@ Returns an ineger representing how many items should appear on a page =cut -sub page_size { +sub page_size { my $self = shift; my $cgi = $self->{'cgi'}; return $cgi->param('pagesize') if $cgi->param('pagesize'); - return 25; #TODO: make this a user setting + return 25; #TODO: make this a user setting } =head2 get_order_url @@ -376,19 +388,19 @@ sub get_url { my $self = shift; my $regxp = shift; my $cgi = $self->{'cgi'}; - my @keys = $cgi->param; - my $qstring; - foreach my $key (@keys){ - if ($key =~ /$regxp/){ + my @keys = $cgi->param; + my $qstring; + foreach my $key (@keys){ + if ($key =~ /$regxp/){ next; - } - my @vals = $cgi->param($key); + } + my @vals = $cgi->param($key); foreach my $val (@vals){ $qstring .= $key ."=". $val ."&"; } - } - chop $qstring; - $qstring = $self->{'url_loc'} ."?". $qstring; + } + chop $qstring; + $qstring = $self->{'url_loc'} ."?". $qstring; $self->{'url'} = $qstring; return $self->{'url'}; } @@ -406,7 +418,7 @@ sub page_count { use integer; return ($self->list_count / $self->page_size) + 1; } - return $self->list_count/$self->page_size; + return $self->list_count/$self->page_size; } sub reverse_sort { diff --git a/mozilla/webtools/testopia/Bugzilla/Testopia/TestCase.pm b/mozilla/webtools/testopia/Bugzilla/Testopia/TestCase.pm index b624bdc2e43..007c411e2f6 100644 --- a/mozilla/webtools/testopia/Bugzilla/Testopia/TestCase.pm +++ b/mozilla/webtools/testopia/Bugzilla/Testopia/TestCase.pm @@ -191,11 +191,14 @@ associated with this case. #TODO: This can be done with a single query sub get_selectable_components { my $self = shift; + my ($byid) = @_; my $dbh = Bugzilla->dbh; my @compids; my @exclusions; - foreach my $e (@{$self->components}){ - push @exclusions, $e->{'id'}; + unless ($byid) { + foreach my $e (@{$self->components}){ + push @exclusions, $e->{'id'}; + } } my $query = "SELECT id FROM components WHERE product_id = ?"; @@ -214,7 +217,7 @@ sub get_selectable_components { @compids = keys %compseen; #TODO: 2.22 use Bugzilla::Component my @comps; - push @comps, {'id' => '0', 'name' => '--Please Select--'}; + push @comps, {'id' => '0', 'name' => '--Please Select--'} unless $byid; foreach my $id (@compids){ my $ref = $dbh->selectrow_hashref( "SELECT id, name FROM components @@ -946,6 +949,36 @@ sub update_deps { } } +=head2 get_dep_tree + +Returns a list of test case dependencies + +=cut + +sub get_dep_tree { + my $self = shift; + $self->{'dep_list'} = (); + $self->_generate_dep_tree($self->{'case_id'}); + return $self->{'dep_list'}; +} + +=head2 _generate_dep_tree + +Private method that recursivly gets a list of the test cases this blocks + +=cut + +sub _generate_dep_tree { + my $self = shift; + my ($case_id) = @_; + my $deps = _get_dep_lists("dependson", "blocked", $case_id); + return unless scalar @$deps; + foreach my $id (@$deps){ + #print "ID $id"; + $self->_generate_dep_tree($id); + push @{$self->{'dep_list'}}, $id + } +} =head2 canedit Returns true if the logged in user has rights to edit this test case. @@ -1230,7 +1263,7 @@ sub plans { return $self->{'plans'}; } -=head2 plans +=head2 bugs Returns a reference to a list of Bugzilla::Bug objects associated with this case. @@ -1241,12 +1274,12 @@ sub bugs { my $self = shift; my $dbh = Bugzilla->dbh; return $self->{'bugs'} if exists $self->{'bugs'}; - my $ref = $dbh->selectcol_arrayref("SELECT bug_id - FROM test_case_bugs b - JOIN test_case_runs r - ON r.case_run_id = b.case_run_id - WHERE case_id = ?", - undef, $self->{'case_id'}); + my $ref = $dbh->selectcol_arrayref( + "SELECT DISTINCT bug_id + FROM test_case_bugs b + JOIN test_case_runs r ON r.case_run_id = b.case_run_id + WHERE case_id = ?", + undef, $self->{'case_id'}); my @bugs; foreach my $id (@{$ref}){ push @bugs, Bugzilla::Bug->new($id, Bugzilla->user->id); diff --git a/mozilla/webtools/testopia/Bugzilla/Testopia/TestCaseRun.pm b/mozilla/webtools/testopia/Bugzilla/Testopia/TestCaseRun.pm index 40635444859..da8836507fa 100644 --- a/mozilla/webtools/testopia/Bugzilla/Testopia/TestCaseRun.pm +++ b/mozilla/webtools/testopia/Bugzilla/Testopia/TestCaseRun.pm @@ -163,7 +163,7 @@ sub store { $dbh->do("INSERT INTO test_case_runs ($columns) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", undef, (undef, $self->{'run_id'}, $self->{'case_id'}, $self->{'assignee'}, - $self->{'testedby'}, IDLE, $self->{'case_text_version'}, + undef, IDLE, $self->{'case_text_version'}, $self->{'build_id'}, $self->{'notes'}, undef, 1, 0)); my $key = $dbh->bz_last_key( 'test_case_runs', 'case_run_id' ); @@ -181,13 +181,37 @@ sub clone { my ($fields) = @_; my $dbh = Bugzilla->dbh; $self->{'build_id'} = $fields->{'build_id'}; - $self->{'case_run_status_id'} = IDLE; - $self->{'notes'} = ''; my $entry = $self->store; $self->set_as_current($entry); return $entry; } +=head2 check_exists + +Checks for an existing entry with the same build for this case and run +and returns the id if it is found + +=cut + +sub check_exists { + my $self = shift; + my ($run_id, $case_id, $build_id) = @_; + + $run_id ||= $self->{'run_id'}; + $case_id ||= $self->{'case_id'}; + $build_id ||= $self->{'build_id'}; + + my $dbh = Bugzilla->dbh; + my ($is) = $dbh->selectrow_array( + "SELECT case_run_id + FROM test_case_runs + WHERE run_id = ? AND case_id = ? AND build_id = ?", + undef, ($run_id, $case_id, $build_id)); + + return $is; + +} + =head2 update Update this case-run in the database. This method checks which @@ -203,13 +227,17 @@ sub update { if ($self->is_closed_status($fields->{'case_run_status_id'})){ $fields->{'close_date'} = Bugzilla::Testopia::Util::get_time_stamp(); } - if ($fields->{'build_id'} != $self->{'build_id'} && $self->{'case_run_status_id'} != IDLE){ - return $self->clone($fields); + my ($is) = $self->check_exists($self->run_id, $self->case_id, $fields->{'build_id'}); + + if ($fields->{'build_id'} != $self->{'build_id'}){ + if ($is){ + return $is; + } + if ($self->{'case_run_status_id'} != IDLE){ + return $self->clone($fields); + } } - else { - return $self->_update_fields($fields); - } - + return $self->_update_fields($fields); } =head2 _update_fields @@ -224,6 +252,13 @@ sub _update_fields{ my ($newvalues) = @_; my $dbh = Bugzilla->dbh; + if ($newvalues->{'case_run_status_id'} && $newvalues->{'case_run_status_id'} == FAILED){ + $self->_update_deps(BLOCKED); + } + elsif ($newvalues->{'case_run_status_id'} && $newvalues->{'case_run_status_id'} == PASSED){ + $self->_update_deps(IDLE); + } + $dbh->bz_lock_tables('test_case_runs WRITE'); foreach my $field (keys %{$newvalues}){ $dbh->do("UPDATE test_case_runs @@ -302,9 +337,9 @@ sub set_status { $self->_update_fields({'close_date' => $timestamp}); $self->_update_fields({'testedby' => Bugzilla->user->id}); $self->{'close_date'} = $timestamp; - $self->{'tested_by'} = Bugzilla->user; + $self->{'testedby'} = Bugzilla->user->id; } - + $self->{'case_run_status_id'} = $status_id; $self->{'status'} = undef; } @@ -337,6 +372,43 @@ sub set_note { $self->{'notes'} = $note; } +=head2 _update_deps + +Private method for updating blocked test cases. If the pre-requisite +case fails, the blocked test cases in a run get a status of BLOCKED +if it passes they are set back to IDLE. This only happens to the +current case run and only if it doesn't already have a closed status. +=cut + +sub _update_deps { + my $self = shift; + my ($status) = @_; + my $deplist = $self->case->get_dep_tree; + return unless $deplist; + + my $dbh = Bugzilla->dbh; + $dbh->bz_lock_tables("test_case_runs WRITE"); + my $caseruns = $dbh->selectcol_arrayref( + "SELECT case_run_id + FROM test_case_runs + WHERE iscurrent = 1 + AND run_id = ? + AND case_run_status_id IN(". join(',', (IDLE,RUNNING,PAUSED,BLOCKED)) .") + AND case_id IN (". join(',', @$deplist) .")", + undef, $self->{'run_id'}); + my $sth = $dbh->prepare_cached( + "UPDATE test_case_runs + SET case_run_status_id = ? + WHERE case_run_id = ?"); + + foreach my $id (@$caseruns){ + $sth->execute($status, $id); + } + $dbh->bz_unlock_tables; + + $self->{'updated_deps'} = $caseruns; +} + =head2 get_case_run_list Returns a reference to a list of case-runs for the given case and run @@ -379,7 +451,8 @@ Attaches the specified bug to this test case-run sub attach_bug { my $self = shift; - my ($bug) = @_; + my ($bug, $caserun_id) = @_; + $caserun_id ||= $self->{'case_run_id'}; my $dbh = Bugzilla->dbh; $dbh->bz_lock_tables('test_case_bugs WRITE'); @@ -388,7 +461,7 @@ sub attach_bug { FROM test_case_bugs WHERE case_run_id=? AND bug_id=?", - undef, ($self->{'case_run_id'}, $bug)); + undef, ($caserun_id, $bug)); if ($is) { $dbh->bz_unlock_tables(); return; @@ -398,6 +471,24 @@ sub attach_bug { $dbh->bz_unlock_tables(); } +=head2 detach_bug + +Removes the association of the specified bug from this test case-run + +=cut + +sub detach_bug { + my $self = shift; + my ($bug) = @_; + my $dbh = Bugzilla->dbh; + + $dbh->do("DELETE FROM test_case_bugs + WHERE bug_id = ? + AND case_run_id = ?", + undef, ($bug, $self->{'case_run_id'})); + +} + =head2 get_buglist Returns a comma separated string off bug ids associated with @@ -466,6 +557,12 @@ Returns the true if this case-run is private. =cut +=head2 updated_deps + +Returns a reference to a list of dependent caseruns that were updated + +=cut + sub id { return $_[0]->{'case_run_id'}; } sub case_id { return $_[0]->{'case_id'}; } sub run_id { return $_[0]->{'run_id'}; } @@ -478,6 +575,7 @@ sub iscurrent { return $_[0]->{'iscurrent'}; } sub status_id { return $_[0]->{'case_run_status_id'}; } sub sortkey { return $_[0]->{'sortkey'}; } sub isprivate { return $_[0]->{'isprivate'}; } +sub updated_deps { return $_[0]->{'updated_deps'}; } =head2 run @@ -520,7 +618,7 @@ sub build { return $self->{'build'}; } -=head2 run +=head2 status Looks up the status name of the associated status_id for this object @@ -612,10 +710,10 @@ sub is_open_status { my $self = shift; my $status = shift; my @open_status_list = (IDLE, RUNNING, PAUSED); - return 1 if lsearch(\@open_status_list, $status) > 0; + return 1 if lsearch(\@open_status_list, $status) > -1; } -=head2 is_open_status +=head2 is_closed_status Returns true if the status of this case-run is a closed status @@ -625,7 +723,7 @@ sub is_closed_status { my $self = shift; my $status = shift; my @closed_status_list = (PASSED, FAILED, BLOCKED); - return 1 if lsearch(\@closed_status_list, $status) > 0; + return 1 if lsearch(\@closed_status_list, $status) > -1; } =head2 canview @@ -705,13 +803,13 @@ Returns true if the logged in user has rights to edit this case-run. sub canedit { my $self = shift; - return $self->canview + return !$self->run->stop_date && $self->canview && (UserInGroup('managetestplans') || UserInGroup('edittestcases') || UserInGroup('runtests')); } -=head2 canedit +=head2 candelete Returns true if the logged in user has rights to delete this case-run. diff --git a/mozilla/webtools/testopia/Bugzilla/Testopia/TestPlan.pm b/mozilla/webtools/testopia/Bugzilla/Testopia/TestPlan.pm index 0e3261f5f64..f67cc7a74f5 100644 --- a/mozilla/webtools/testopia/Bugzilla/Testopia/TestPlan.pm +++ b/mozilla/webtools/testopia/Bugzilla/Testopia/TestPlan.pm @@ -326,17 +326,19 @@ specified, use the plan product sub get_product_versions { my $self = shift; my ($product) = @_; - detaint_natural($product); - $product = $self->{'product_id'} unless ($product); - + $product = $self->{'product_id'} unless $product; + $product ||= 0; my $dbh = Bugzilla->dbh; #TODO: 2.22 use product->versions + # Can't use placeholders as this could be a single id (integer) + # or a comma separated list (string) my $versions = $dbh->selectall_arrayref( - "SELECT value AS id, value AS name + "SELECT DISTINCT value AS id, value AS name FROM versions - WHERE product_id = ? + WHERE product_id IN($product) ORDER BY name", - {'Slice'=>{}}, $product); + {'Slice'=>{}}); + return $versions; } @@ -354,11 +356,80 @@ sub get_product_milestones { $product_id ||= $self->{'product_id'}; my $dbh = Bugzilla->dbh; my $ref = $dbh->selectall_arrayref( - "SELECT value AS id, value AS name + "SELECT DISTINCT value AS id, value AS name FROM milestones - WHERE product_id = ? + WHERE product_id IN($product_id) ORDER BY sortkey", - {'Slice'=>{}}, $product_id); + {'Slice'=>{}}); + + return $ref; +} + +=head2 get_product_builds + +Returns al list of builds for the given product. If one +is not specified, use the plan product. + +=cut + +sub get_product_builds { +#TODO: 2.22 use product.pm + my $self = shift; + my ($product_id) = @_; + $product_id ||= $self->{'product_id'}; + my $dbh = Bugzilla->dbh; + my $ref = $dbh->selectall_arrayref( + "SELECT DISTINCT name AS id, name + FROM test_builds + WHERE product_id IN($product_id) + ORDER BY name", + {'Slice'=>{}}); + + return $ref; +} + +=head2 get_product_categories + +Returns a list of product categories for the given product. If one +is not specified, use the plan product. + +=cut + +sub get_product_categories { +#TODO: 2.22 use product.pm + my $self = shift; + my ($product_id) = @_; + $product_id ||= $self->{'product_id'}; + my $dbh = Bugzilla->dbh; + my $ref = $dbh->selectall_arrayref( + "SELECT DISTINCT name AS id, name + FROM test_case_categories + WHERE product_id IN($product_id) + ORDER BY name", + {'Slice'=>{}}); + + return $ref; +} + +=head2 get_product_components + +Returns a list of product components for the given product. If one +is not specified, use the plan product. + +=cut + +sub get_product_components { +#TODO: 2.22 use product.pm + my $self = shift; + my ($product_id) = @_; + $product_id ||= $self->{'product_id'}; + my $dbh = Bugzilla->dbh; + my $ref = $dbh->selectall_arrayref( + "SELECT DISTINCT name AS id, name + FROM components + WHERE product_id IN($product_id) + ORDER BY name", + {'Slice'=>{}}); return $ref; } diff --git a/mozilla/webtools/testopia/Bugzilla/Testopia/Util.pm b/mozilla/webtools/testopia/Bugzilla/Testopia/Util.pm index 00bdd196a23..8a984e3ff72 100644 --- a/mozilla/webtools/testopia/Bugzilla/Testopia/Util.pm +++ b/mozilla/webtools/testopia/Bugzilla/Testopia/Util.pm @@ -184,7 +184,7 @@ sub validate_test_id { $res || ThrowUserError("invalid-test-id-non-existent", - {'id' => $id, 'type' => $type}); + {'id' => $alias, 'type' => $type}); return $res; } diff --git a/mozilla/webtools/testopia/template/en/default/hook/bug/create/create.html.tmpl/end/tr.html.tmpl b/mozilla/webtools/testopia/template/en/default/hook/bug/create/create.html.tmpl/end/tr.html.tmpl index 75e37f0b784..b474bc8eb39 100644 --- a/mozilla/webtools/testopia/template/en/default/hook/bug/create/create.html.tmpl/end/tr.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/hook/bug/create/create.html.tmpl/end/tr.html.tmpl @@ -1,3 +1,5 @@ +[%# 1.0@bugzilla.org %] + [% IF caserun_id %] - Back to test case-run. + Back to test case-run. [% END %] diff --git a/mozilla/webtools/testopia/template/en/default/hook/bug/create/create.html.tmpl/form/tr.html.tmpl b/mozilla/webtools/testopia/template/en/default/hook/bug/create/create.html.tmpl/form/tr.html.tmpl index ea45694c025..bc841cf5ea7 100644 --- a/mozilla/webtools/testopia/template/en/default/hook/bug/create/create.html.tmpl/form/tr.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/hook/bug/create/create.html.tmpl/form/tr.html.tmpl @@ -1,3 +1,5 @@ +[%# 1.0@bugzilla.org %] + [% IF caserun_id %] - + [% END %] diff --git a/mozilla/webtools/testopia/template/en/default/hook/bug/create/created.html.tmpl/message/tr.html.tmpl b/mozilla/webtools/testopia/template/en/default/hook/bug/create/created.html.tmpl/message/tr.html.tmpl index d9939ed1c1b..e6a3e360e1a 100644 --- a/mozilla/webtools/testopia/template/en/default/hook/bug/create/created.html.tmpl/message/tr.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/hook/bug/create/created.html.tmpl/message/tr.html.tmpl @@ -1,3 +1,5 @@ +[%# 1.0@bugzilla.org %] + [% IF caserun %] -

Bug attached to Test case-run

-[% END %] \ No newline at end of file +

[% terms.Bug %] attached to Test case-run

+[% END %] diff --git a/mozilla/webtools/testopia/template/en/default/hook/bug/knob.html.tmpl/links/tr.html.tmpl b/mozilla/webtools/testopia/template/en/default/hook/bug/knob.html.tmpl/links/tr.html.tmpl index 24dea17d54c..5c60abc3039 100644 --- a/mozilla/webtools/testopia/template/en/default/hook/bug/knob.html.tmpl/links/tr.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/hook/bug/knob.html.tmpl/links/tr.html.tmpl @@ -1,2 +1,4 @@ +[%# 1.0@bugzilla.org %] +   |   - View Bug Test Case Runs + View [% terms.Bug %] Test Case Runs diff --git a/mozilla/webtools/testopia/template/en/default/hook/bug/process/results.html.tmpl/links/tr.html.tmpl b/mozilla/webtools/testopia/template/en/default/hook/bug/process/results.html.tmpl/links/tr.html.tmpl index f591ebdef2b..1f794bf1b75 100644 --- a/mozilla/webtools/testopia/template/en/default/hook/bug/process/results.html.tmpl/links/tr.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/hook/bug/process/results.html.tmpl/links/tr.html.tmpl @@ -1,4 +1,6 @@ +[%# 1.0@bugzilla.org %] + [% IF caserun_id %]
- Back to test case-run. + Back to test case-run. [% END %] diff --git a/mozilla/webtools/testopia/template/en/default/hook/global/banner.html.tmpl/version/testopia.html.tmpl b/mozilla/webtools/testopia/template/en/default/hook/global/banner.html.tmpl/version/testopia.html.tmpl new file mode 100644 index 00000000000..6794ec9beeb --- /dev/null +++ b/mozilla/webtools/testopia/template/en/default/hook/global/banner.html.tmpl/version/testopia.html.tmpl @@ -0,0 +1,2 @@ + Testopia + Version 1.0 BETA diff --git a/mozilla/webtools/testopia/template/en/default/hook/global/useful-links.html.tmpl/end/tr.html.tmpl b/mozilla/webtools/testopia/template/en/default/hook/global/useful-links.html.tmpl/end/tr.html.tmpl index 503db9c3add..408eae8d3cf 100644 --- a/mozilla/webtools/testopia/template/en/default/hook/global/useful-links.html.tmpl/end/tr.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/hook/global/useful-links.html.tmpl/end/tr.html.tmpl @@ -1,3 +1,5 @@ +[%# 1.0@bugzilla.org %] + [% IF plan_id %] [% plan_id = plan_id %] [% ELSIF plan %] @@ -19,23 +21,41 @@ New Run |  Current Runs |  Environments |  - Test Case # -
- - -

+ + + + +
+
+ Test Case # + + +
+
+
+ Test Run # + + +
+
+
+ Test Plan # + + +
+
+
+ Tag + + +
+
Search |  [% IF user.login %] My Plans |  My Cases |  My Runs |  [% END %] - Help |  - Tag -
- - -

- + Help |  diff --git a/mozilla/webtools/testopia/template/en/default/hook/global/user-error.html.tmpl/errors/tr-user-error.html.tmpl b/mozilla/webtools/testopia/template/en/default/hook/global/user-error.html.tmpl/errors/tr-user-error.html.tmpl index 8d5f1516fe2..414bb406d9e 100644 --- a/mozilla/webtools/testopia/template/en/default/hook/global/user-error.html.tmpl/errors/tr-user-error.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/hook/global/user-error.html.tmpl/errors/tr-user-error.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -42,7 +43,7 @@ Please move the test cases to another category first. [% ELSIF error == "testopia-non-zero-run-count" %] [% title = "$object Has Test Runs" %] - You have attempted to delete a [% object %] that has test runs + You have attempted to delete a [% object FILTER html %] that has test runs associated with it. [% ELSIF error == "testopia-non-zero-case-run-count" %] [% title = "Build Has Case Runs" %] @@ -60,7 +61,11 @@ The test case you entered does not exist. [% ELSIF error == "invalid-test-id-non-existent" %] [% title = "Invalid ID" %] - Test [% type FILTER html %] #[% id FILTER html %] does not exist. + [% IF type == 'case_run' %] + The specified case-run does not exist. + [% ELSE %] + Test [% type FILTER html %] [% id FILTER html %] does not exist. + [% END %] [% ELSIF error == "testopia-name-not-unique" %] [% title = "Name Must be Unique" %] The name you chose, [% name FILTER html %], for this @@ -86,7 +91,7 @@ You can create environments here. [% ELSIF error == "testopia-missing-required-field" %] [% title = "Missing Required Field" %] - It seems there was no value entered for [% field %]. + It seems there was no value entered for [% field FILTER none %]. [% ELSIF error == "testopia-missing-plans-list" %] [% title = "Plan list missing" %] Somehow the list of plans associated with the test case to be cloned is missing. diff --git a/mozilla/webtools/testopia/template/en/default/hook/index.html.tmpl/links/tr.html.tmpl b/mozilla/webtools/testopia/template/en/default/hook/index.html.tmpl/links/tr.html.tmpl index 44858558547..3ce8dde62bb 100644 --- a/mozilla/webtools/testopia/template/en/default/hook/index.html.tmpl/links/tr.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/hook/index.html.tmpl/links/tr.html.tmpl @@ -1,21 +1,28 @@ +[%# 1.0@bugzilla.org %] +
-

Testopia

+

Testopia 1.0-beta choices:

-

Do some testing
- Search for test plans
- Search existing test cases
- Manage run environments

+

Do + some testing
+ Manage + test plans
+ Search + existing test cases
+ Manage run + environments


-
+
\ No newline at end of file diff --git a/mozilla/webtools/testopia/template/en/default/hook/list/list.html.tmpl/links/tr.html.tmpl b/mozilla/webtools/testopia/template/en/default/hook/list/list.html.tmpl/links/tr.html.tmpl index 5a2e24d838a..5418324415f 100644 --- a/mozilla/webtools/testopia/template/en/default/hook/list/list.html.tmpl/links/tr.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/hook/list/list.html.tmpl/links/tr.html.tmpl @@ -1 +1,3 @@ -
Add bugs to test plan | +[%# 1.0@bugzilla.org %] + + diff --git a/mozilla/webtools/testopia/template/en/default/testopia/attachment/choose.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/attachment/choose.html.tmpl index 3dc036a802b..8a17fb970be 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/attachment/choose.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/attachment/choose.html.tmpl @@ -17,7 +17,7 @@ # Rights Reserved. # # Contributor(s): Gervase Markham - # Greg Hendricks + # Greg Hendricks #%] [% PROCESS global/variables.none.tmpl %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/attachment/delete.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/attachment/delete.html.tmpl index 9f07871ad73..90f670a6a49 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/attachment/delete.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/attachment/delete.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of diff --git a/mozilla/webtools/testopia/template/en/default/testopia/attachment/show.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/attachment/show.html.tmpl index 83a7636c1a0..f6b02d97908 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/attachment/show.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/attachment/show.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -49,33 +50,33 @@ - Filename: - + Filename: + Mime Type: - - - - - - - - - - -
SubmitterCreatedSize
[% attachment.submitter.identity FILTER html %][% attachment.creation_ts FILTER time %][% attachment.datasize FILTER unitconvert %]
- + + Submitter + Created + Size + + + [% attachment.submitter.identity FILTER html %] + [% attachment.creation_ts FILTER time %] + [% attachment.datasize FILTER unitconvert %] + + + [% IF isviewable %] - [% ELSE %] @@ -84,7 +85,7 @@ ([% attachment.mime_type FILTER html %]) is not one that your browser is able to display.

- You can however, download the attachment. + You can however, download the attachment.

diff --git a/mozilla/webtools/testopia/template/en/default/testopia/attachment/table.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/attachment/table.html.tmpl index 7c7aa6c4268..6fe68ba7564 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/attachment/table.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/attachment/table.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -24,26 +25,25 @@ - - - - - + + + + + [% FOREACH a = item.attachments %] - - - - - - + + + + + + [% END %] - + -
AttachmentSubmitterTypeCreatedSizeActionsSubmitterTypeCreatedSizeActions
[% a.description FILTER html %][% a.submitter.login FILTER html %][% a.mime_type FILTER html %][% a.creation_ts FILTER time %][% a.datasize FILTER unitconvert %]Edit - [% IF Param("allow-test-deletion") %]Delete[% END %][% a.description FILTER html %][% a.submitter.login FILTER html %][% a.mime_type FILTER html %][% a.creation_ts FILTER time %][% a.datasize FILTER unitconvert %]Edit + [% IF Param("allow-test-deletion") %]Delete[% END %]
File @@ -51,8 +51,6 @@ Description: -
- \ No newline at end of file diff --git a/mozilla/webtools/testopia/template/en/default/testopia/blocks.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/blocks.html.tmpl index bb9244f6412..bd2719ad9f3 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/blocks.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/blocks.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -25,12 +26,12 @@ [% BLOCK select %] @@ -41,9 +42,9 @@ [% IF ajax %] [% url = "javascript:page(" %] [% pc = ")" %] -[% ELSE %] - [% url = "$table.get_page_url&page=" %] - [%# url = "$table.url_loc?direction=$direction&getlist=1&page=" %] +[% ELSE %] + [% url = "$table.get_page_url&page="%] + [%# url = "$table.url_loc?direction=$direction&getlist=1&page="%] [% END %] @@ -79,4 +80,4 @@ [% END %]
-[% END %] \ No newline at end of file +[% END %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/build/delete.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/build/delete.html.tmpl index d5e4f61d917..1c624e6d3f1 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/build/delete.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/build/delete.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -24,15 +25,15 @@
- + [% IF build.case_run_count %]
This build is used by [% build.case_run_count FILTER html %] test case runs.
. - It cannot be deleted.
-

Please press your browsers back button to return to your test plan.

+ It cannot be deleted.
+

Please press your browsers back button to return to your test plan.

[% tr_error %]
[% ELSE %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/build/form.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/build/form.html.tmpl index 13a014b9dab..4033472c27c 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/build/form.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/build/form.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of diff --git a/mozilla/webtools/testopia/template/en/default/testopia/build/list.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/build/list.html.tmpl index 3e193612c33..04e4d3473dd 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/build/list.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/build/list.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -19,42 +20,37 @@ #%] [% PROCESS global/header.html.tmpl - title = "Test Plan Builds for $plan.name" + title = "Product Builds for $plan.product_name" %] - -[% FOREACH cat = plan.builds %] + + + + + + +[% FOREACH cat = plan.builds %] - - - - - - - - - - + +[% END %]
NameMilestoneDescriptionActions
Name [% cat.name FILTER html %]
Milestone [% cat.milestone FILTER html %]
Description [% cat.description FILTER html %]
Actions Edit [% IF plan.candelete %]  |  - Delete + Delete [% END %]

-[% END %] [% IF plan.canedit %] - Add new + Add new [% END %] -

-Back to test plan +Back to test plan

-[% PROCESS global/footer.html.tmpl %] \ No newline at end of file +[% PROCESS global/footer.html.tmpl %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/case/add.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/case/add.html.tmpl index fb35929da65..96edfd6cb30 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/case/add.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/case/add.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -40,6 +41,17 @@ [% PROCESS testopia/messages.html.tmpl %] +

Link to Selected Plans

+ +[% FOREACH plan = case.plans %] + + + + +[% END %] +
[% plan.name FILTER html %]
+
+

Attributes

[% PROCESS testopia/case/form.html.tmpl %]
-[% PROCESS global/footer.html.tmpl %] \ No newline at end of file +[% PROCESS global/footer.html.tmpl %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/case/buglist-to-case-add.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/case/buglist-to-case-add.html.tmpl index 3f9f279ad7c..75c489c8c41 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/case/buglist-to-case-add.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/case/buglist-to-case-add.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -48,7 +49,7 @@ [% PROCESS testopia/case/form.html.tmpl %]

-Back to bug list +Back to [% terms.bug %] list or select another plan

diff --git a/mozilla/webtools/testopia/template/en/default/testopia/case/buglist-to-case-entry.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/case/buglist-to-case-entry.html.tmpl index 27bee8a1b72..a4ca9c0941b 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/case/buglist-to-case-entry.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/case/buglist-to-case-entry.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -59,7 +60,7 @@ [% IF $run_id %] Back to test run regression test cases [% ELSE %] - Back to bug list + Back to [% terms.bug %] list [% END %]

[% PROCESS global/footer.html.tmpl %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/case/choose.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/case/choose.html.tmpl index 6f538b5a3aa..2efa56074fa 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/case/choose.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/case/choose.html.tmpl @@ -17,7 +17,7 @@ # Rights Reserved. # # Contributor(s): Gervase Markham - # Greg Hendricks + # Greg Hendricks #%] [% PROCESS global/variables.none.tmpl %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/case/clone.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/case/clone.html.tmpl index 77a33f6c7ed..cd03bf04e83 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/case/clone.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/case/clone.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of diff --git a/mozilla/webtools/testopia/template/en/default/testopia/case/form.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/case/form.html.tmpl index 696fdf01d12..c42238a9e63 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/case/form.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/case/form.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -41,21 +42,20 @@ dojo.require("dojo.widget.Editor"); [% END %] - - + - [% IF form_action == 'tr_new_case.cgi' %] - - [% END %] - + + +[% IF action == "Add" %] + +[% END %] + +
- - + + + + @@ -80,8 +80,8 @@ @@ -100,7 +100,7 @@ - +
Summary
Default TesterDefault TesterAdd Tags
Automatic
CategoryCategory [% PROCESS select sel = { name => 'category', accesskey => 'c', @@ -112,6 +112,25 @@
+
Components
+ [% comps = [] %] + [% FOREACH c = case.components %] + [% comps.push(c.id) %] + [% END %] + + [% PROCESS select sel = { name => 'components', + accesskey => 'c', + list => case.get_selectable_components(1) + default => comps + mult => 1 + deflist => 1 + elements => 7 } %] +

@@ -136,24 +155,24 @@ - - + + - + [%# action, effect %]

Action

@@ -164,7 +183,7 @@ [% case.text.action %]

-

Effect

+

Expected Results

+ + + + + + + +

+ +

+ +No, take me back + +[% PROCESS global/footer.html.tmpl %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/caserun/filter.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/caserun/filter.html.tmpl new file mode 100644 index 00000000000..913cd8eb993 --- /dev/null +++ b/mozilla/webtools/testopia/template/en/default/testopia/caserun/filter.html.tmpl @@ -0,0 +1,43 @@ + +Filter: +Show All |  +Assigned to Me |  +Tested by Me |  +Open |  +Closed |  +[% statuslist = run.current_caseruns.0.get_status_list %] +[% statuslist.unshift({id => 0, name => '--Status--'}) %] +[% PROCESS select sel = { name => "ftr_case_run_status_id", + list => statuslist, + events => 'onchange="filterTable(1)"' } +%] |  +[% categorylist = run.plan.get_product_categories %] +[% categorylist.unshift({id => 0, name => '--Category--'}) %] +[% PROCESS select sel = { name => "ftr_category_id", + list => categorylist, + events => 'onchange="filterTable(2)"' } +%] |  +[% buildlist = run.plan.get_product_builds %] +[% buildlist.unshift({id => 0, name => '--Build--'}) %] +[% PROCESS select sel = { name => "ftr_build_id", + list => buildlist, + events => 'onchange="filterTable(3)"' } +%] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/caserun/form.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/caserun/form.html.tmpl index 10d150af031..6baffd36a49 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/caserun/form.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/caserun/form.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -29,6 +30,50 @@ [% default_build = "--Do Not Change--" %] [% END %] + + + [% IF NOT dotweak %] + + + [% END %] + + +
+ [% IF caserun.bugs.size > 0 %] + + + + + + + + [% FOREACH bug = caserun.bugs %] + + + + + [% END %] +
[% terms.Bugs %]
IDSummaryRemove
[% bug.bug_id FILTER bug_link(bug.bug_id) %] [% bug.short_desc FILTER html %]detach bug +
+ [% END %] +
+ [% IF caserun.case.bugs.size > 0 %] + + + + + + + + [% FOREACH bug = caserun.case.bugs %] + + + + + [% END %] +
[% terms.Bugs %] in all runs
IDSummary
[% bug.bug_id FILTER bug_link(bug.bug_id) %] [% bug.short_desc FILTER html %]
+ [% END %] +
@@ -40,19 +85,11 @@ + + + - - - - [% IF NOT dotweak %] - - - [% END %] - +
Build Assignee Attach [% terms.Bugs %] Log a New [% terms.Bug %]
Attach Bugs Log a New BugBugs - [% FOREACH bug = caserun.bugs %] - [% bug.bug_id FILTER bug_link(bug.bug_id) %] - [% END %] -
- +
@@ -82,7 +119,7 @@ Notes
diff --git a/mozilla/webtools/testopia/template/en/default/testopia/caserun/list.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/caserun/list.html.tmpl index 33b4bd0b59a..9379c4853b9 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/caserun/list.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/caserun/list.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -15,7 +16,7 @@ # Maciej Maczynski. All Rights Reserved. # # Contributor(s): Ed Fuentetaja - # Greg Hendricks + # Greg Hendricks #%] [%# INTERFACE: @@ -43,6 +44,8 @@
+[% PROCESS "testopia/caserun/filter.html.tmpl" %] +
[% IF table.list_count %] [% PROCESS "testopia/caserun/case-history.html.tmpl" %] [% END %] @@ -65,7 +68,7 @@ found. [% PROCESS testopia/caserun/form.html.tmpl %] [% END %] - +
[%############################################################################%] [%# Page Footer #%] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/caserun/navigate.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/caserun/navigate.html.tmpl new file mode 100644 index 00000000000..98810471d87 --- /dev/null +++ b/mozilla/webtools/testopia/template/en/default/testopia/caserun/navigate.html.tmpl @@ -0,0 +1,67 @@ +[%# 1.0@bugzilla.org %] +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Gervase Markham + # Greg Hendricks + #%] + +[% list = table.get_saved_list %] +Case-Run List: +[% IF table && list > 0 %] +[% curr = lsearch(list, caserun.id) %] +[% IF curr != -1 && (curr > 0) %] + << First +[% ELSE %] + <<First +[% END %] + + [% IF caserun %] + [% IF curr != -1 %] + [% IF curr > 0 %] + [% prev = curr - 1 %] + < Prev + [% ELSE %] + Prev + [% END %] + + [% IF curr != -1 %] +   ([% curr + 1 %] of [% table.get_saved_list.size %])   + [% END %] + + [% IF curr + 1 < list.size %] + [% next = curr + 1 %] + Next > + [% ELSE %] + Next + [% END %] + [% END %] + [% ELSE %] +    + [% END %] + +[% IF curr != -1 && (curr + 1 < list.size) %] + Last >> +[% ELSE %] + Last>> +[% END %] + +[% ELSE %] + [%# With no list, don't show link to search results %] +    + No search results available +[% END %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/caserun/short-form-header.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/caserun/short-form-header.html.tmpl new file mode 100644 index 00000000000..efee0a291be --- /dev/null +++ b/mozilla/webtools/testopia/template/en/default/testopia/caserun/short-form-header.html.tmpl @@ -0,0 +1,62 @@ +[%# 1.0@bugzilla.org %] +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Test Runner System. + # + # The Initial Developer of the Original Code is Maciej Maczynski. + # Portions created by Maciej Maczynski are Copyright (C) 2001 + # Maciej Maczynski. All Rights Reserved. + # + # Contributor(s): Ed Fuentetaja + # Greg Hendricks + #%] + +[% PROCESS testopia/blocks.html.tmpl %] + + + + + [% IF !caserun.canedit %] + + [% END %] + + + +
+ locked + + click to expand +
+ + [% caserun.case.id FILTER html %] + + [% PROCESS select sel = { name => "caserun_build", + list => caserun.run.plan.builds, + default => caserun.build.name + events => "onChange='chBld($index, this.value, \"$caserun.status\", $caserun.id)'"} + %] + + + [% caserun.assignee.login %] + [% caserun.testedby.login %] + + [% caserun.close_date FILTER time %] + + + + + [% caserun.status FILTER none %] + + + [% caserun.case.category.name %] + [% IF caserun.bug_count %][% caserun.bug_count %][% ELSE %][% caserun.bug_count %][% END %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/caserun/short-form.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/caserun/short-form.html.tmpl index 784c83cf315..adac9d2c90e 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/caserun/short-form.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/caserun/short-form.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -15,58 +16,15 @@ # Maciej Maczynski. All Rights Reserved. # # Contributor(s): Ed Fuentetaja - # Greg Hendricks + # Greg Hendricks #%] - - - - - [% IF !caserun.canedit %] - - [% END %] - - - -
- locked - - click to expand -
- - [% caserun.case.id FILTER html %] - - [% PROCESS select sel = { name => "caserun_build", - list => caserun.run.plan.builds, - default => caserun.build.name - events => "onChange='chBld($index, this.value, \"$caserun.status\", $caserun.id)'"} - %] - - - [% caserun.assignee.login %] - [% caserun.testedby.login %] - - [% caserun.close_date FILTER time %] - - - - - [% caserun.status FILTER none %] - - - [% caserun.case.category.name %] - [% IF caserun.bug_count %][% caserun.bug_count %][% ELSE %][% caserun.bug_count %][% END %] - - -[% ##### BEGIN Hidden Pane ##### %] - +[%##### BEGIN Hidden Pane #####%]
- [% ##### Sumarry, Action, Effect ##### %] + [%##### Sumarry, Action, Expected Results #####%]
Summary:  @@ -77,15 +35,15 @@ Action:
[% caserun.case.text.action %]
- - Effect:
[% caserun.case.text.effect %] +
+ Expected Results:
[% caserun.case.text.effect %]
- [% ##### Notes ##### %] + [%##### Notes #####%]
Notes:
@@ -95,19 +53,19 @@ [% END %] style="height:20px;" rows="">[% caserun.notes %]
-
+
- [% ##### Status ##### %] + [%##### Status #####%]
Status:
[% FOREACH status = caserun.get_status_list %]
- [% IF caserun.canedit == 0 %] + [% IF NOT caserun.canedit %] [% status.name FILTER none %] (disabled) [% ELSE %] - + [% status.name FILTER none %] [% END %]
@@ -129,13 +87,13 @@
- [% ##### Bugs ##### %] + [%##### Bugs #####%]
-
Bugs detected:
+
[% terms.Bugs %] detected (all runs):
[ - [% FOREACH bug = caserun.bugs %] + [% FOREACH bug = caserun.case.bugs %] [% bug.bug_id FILTER bug_link(bug.bug_id) %] [% END %] ] @@ -148,16 +106,17 @@ onkeyup="edt_attch([% index %]);" [% END %] />
-
- [% ##### Assignee ##### %] -
+
+ [%##### Assignee #####%] + - +
+
- + diff --git a/mozilla/webtools/testopia/template/en/default/testopia/caserun/show.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/caserun/show.html.tmpl index 81698c8fa28..76f52a9b9fd 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/caserun/show.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/caserun/show.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -15,7 +16,7 @@ # Maciej Maczynski. All Rights Reserved. # # Contributor(s): Ed Fuentetaja - # Greg Hendricks + # Greg Hendricks #%] [%# INTERFACE: @@ -40,22 +41,23 @@ [% PROCESS testopia/messages.html.tmpl %] +[% PROCESS testopia/caserun/navigate.html.tmpl %] -[% ##### Overview ##### %] +[%##### Overview #####%]

-[% ##### Case Action & Effect ##### %] -

Case Action & Effect

+[%##### Case Action & Expected Results #####%] +

Case Action & Expected Results

- + @@ -100,3 +102,4 @@ [% PROCESS testopia/caserun/form.html.tmpl %] [% PROCESS global/footer.html.tmpl %] + diff --git a/mozilla/webtools/testopia/template/en/default/testopia/caserun/table.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/caserun/table.html.tmpl index 1d6e0306705..6cd4720e148 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/caserun/table.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/caserun/table.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -15,7 +16,7 @@ # Maciej Maczynski. All Rights Reserved. # # Contributor(s): Ed Fuentetaja - # Greg Hendricks + # Greg Hendricks #%] [%# INTERFACE: @@ -33,28 +34,33 @@
[% DECORATIVE_BORDER_100_BEGIN %] -[% ##### TABLE HEADER ##### %] +[%##### TABLE HEADER #####%] [% link = "${table.get_order_url}&order=" %]
ActionEffectExpected Results
[% caserun.case.text.action FILTER none %]
- - - - - - - - + + + + + + + -[% ##### Loop start ##### %] +[%##### Loop start #####%] [% FOREACH caserun = table.list %] [% index = loop.count %] -
- [% PROCESS "testopia/caserun/short-form.html.tmpl" %] -
+ + + [% PROCESS "testopia/caserun/short-form-header.html.tmpl" %] + + + + [% PROCESS "testopia/caserun/short-form.html.tmpl" %] + [% END %] [% IF NOT table.viewall %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/category/delete.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/category/delete.html.tmpl index 23b9127ade0..bebf76c6749 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/category/delete.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/category/delete.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -24,15 +25,15 @@ - + [% IF category.case_count %]
+ Case IDBuildAssignedTested byClose dateStatusCategoryBugsBuildAssignedTested byClose dateStatusCategoryBugs
- This category is used by [% category.casecount FILTER html %] test cases.
- Please move all test cases to other categories first. + This category is used by [% category.casecount FILTER html %] test cases.
+ Please move all test cases to other categories first. [% tr_error %]
[% ELSE %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/category/form.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/category/form.html.tmpl index b2ab8555f9b..5f5a2c5e8c5 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/category/form.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/category/form.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of diff --git a/mozilla/webtools/testopia/template/en/default/testopia/category/list.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/category/list.html.tmpl index 5f20e7ffcbc..1209ce6ea3b 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/category/list.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/category/list.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -21,36 +22,31 @@ [% PROCESS global/header.html.tmpl title = "Test Categories for $plan.product_name" %] - - -[% FOREACH cat = plan.categories %] - - - - - - - - - - - - + + + + + +[% FOREACH cat = plan.categories %] + + + + + +[% END %]
Name[% cat.name FILTER html %]
Description[% cat.description FILTER html %]
Actions - Edit - [% IF plan.candelete %] -  |  - Delete - [% END %] -
NameDescriptionActions
[% cat.name FILTER html %][% cat.description FILTER html %] + Edit + [% IF plan.candelete %] +  |  + Delete + [% END %] +

-[% END %] [% IF plan.canedit %] - Add new + Add new [% END %] -

-Back to test plan +Back to test plan

-[% PROCESS global/footer.html.tmpl %] \ No newline at end of file +[% PROCESS global/footer.html.tmpl %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/environment/add.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/environment/add.html.tmpl index 089f2ab6d35..fac9860e75d 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/environment/add.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/environment/add.html.tmpl @@ -1,4 +1,4 @@ -[%# The contents of this file are subject to the Mozilla Public +[%# 1.0@bugzilla.org %][%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of # the License at http://www.mozilla.org/MPL/ @@ -41,4 +41,4 @@ [% PROCESS testopia/environment/form.html.tmpl %] -[% PROCESS global/footer.html.tmpl %] \ No newline at end of file +[% PROCESS global/footer.html.tmpl %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/environment/delete.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/environment/delete.html.tmpl index f8ec229f245..cf07136ef50 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/environment/delete.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/environment/delete.html.tmpl @@ -1,4 +1,4 @@ -[%# The contents of this file are subject to the Mozilla Public +[%# 1.0@bugzilla.org %][%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of # the License at http://www.mozilla.org/MPL/ diff --git a/mozilla/webtools/testopia/template/en/default/testopia/environment/form.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/environment/form.html.tmpl index 92498f7050f..86b62800b7d 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/environment/form.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/environment/form.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -33,14 +34,14 @@ OS: - [% PROCESS select sel = { name => 'op_sys', + [% PROCESS select sel = { name => 'op_sys', list => environment.get_op_sys_list, accesskey => 'o' default => environment.op_sys } %] Platform: - [% PROCESS select sel = { name => 'rep_platform', + [% PROCESS select sel = { name => 'rep_platform', list => environment.get_rep_platform_list, accesskey => 'f' default => environment.rep_platform } %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/environment/list.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/environment/list.html.tmpl index b5e7fe7c423..be48bd32fd9 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/environment/list.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/environment/list.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of diff --git a/mozilla/webtools/testopia/template/en/default/testopia/environment/show.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/environment/show.html.tmpl index c6853b5ed09..e953a6d966d 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/environment/show.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/environment/show.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of diff --git a/mozilla/webtools/testopia/template/en/default/testopia/environment/table.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/environment/table.html.tmpl index f9d0272db36..fef02be957d 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/environment/table.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/environment/table.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -38,8 +39,8 @@ [% env.rep_platform FILTER html %] [% env.get_run_count(1) FILTER none %] - Delete - + Delete + [% END %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/messages.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/messages.html.tmpl index 229708bf21e..ebcb8c2ca28 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/messages.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/messages.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of diff --git a/mozilla/webtools/testopia/template/en/default/testopia/percent_bar.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/percent_bar.html.tmpl index 9f0e8639131..140c79532a8 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/percent_bar.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/percent_bar.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of diff --git a/mozilla/webtools/testopia/template/en/default/testopia/plan/add.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/plan/add.html.tmpl index 638b8a73884..958eae1ddb7 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/plan/add.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/plan/add.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -42,4 +43,4 @@ [% PROCESS testopia/plan/form.html.tmpl %] -[% PROCESS global/footer.html.tmpl %] \ No newline at end of file +[% PROCESS global/footer.html.tmpl %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/plan/choose.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/plan/choose.html.tmpl index 81123805eae..cc6b50da7f1 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/plan/choose.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/plan/choose.html.tmpl @@ -17,7 +17,7 @@ # Rights Reserved. # # Contributor(s): Gervase Markham - # Greg Hendricks + # Greg Hendricks #%] [% PROCESS global/variables.none.tmpl %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/plan/clone.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/plan/clone.html.tmpl index dbdf1bdf93f..67189a8d8ff 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/plan/clone.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/plan/clone.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of diff --git a/mozilla/webtools/testopia/template/en/default/testopia/plan/delete.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/plan/delete.html.tmpl index 9250bc7af79..e177fac0cd6 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/plan/delete.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/plan/delete.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -41,4 +42,4 @@ will be deleted and will not be able to be recovered.

-[% PROCESS global/footer.html.tmpl %] \ No newline at end of file +[% PROCESS global/footer.html.tmpl %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/plan/form.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/plan/form.html.tmpl index 7123356ac22..38c5a46d5b1 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/plan/form.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/plan/form.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -32,48 +33,52 @@ } function getProdVers(product, plan){ document.getElementById("prod_version").disabled = true; - dojo.io.bind({ - url: "[% form_action %]", - content: { prod_id: product, plan_id: plan, action: "getversions" }, - load: function(type, data, evt){ - var prodvers = document.getElementById("prod_version"); - prodvers.options.length = 0; - var vers = data.split("|"); - for (i=0; i < vers.length; i++){ - var myOp = new Option(vers[i], vers[i]); + dojo.io.bind({ + url: "[% form_action %]", + content: { product_id: product, plan_id: plan, action: "getversions" }, + load: function(type, data, evt){ + var prodvers = document.getElementById("prod_version"); + prodvers.options.length = 0; + var vers = data.split("|"); + for (i=0; i < vers.length; i++){ + var myOp = new Option(vers[i], vers[i]); addOption(prodvers, myOp); if (vers[i] == '[% plan.product_version FILTER none %]'){ prodvers.options[i].selected = true; } - } - document.getElementById("prod_version").disabled = false; - }, - error: function(type, error){ alert("ERROR");}, - mimetype: "text/plain" - }); + } + document.getElementById("prod_version").disabled = false; + }, + error: function(type, error){ alert("ERROR");}, + mimetype: "text/plain" + }); } - + - - + + - - + [% END %] @@ -85,11 +90,11 @@
NameName Product[% PROCESS select sel = { name => 'prod_id', + [% IF plan.test_case_count OR plan.test_run_count %] + + [% plan.product_name FILTER html %] + [% ELSE %] + [% PROCESS select sel = { name => 'product_id', list => plan.get_available_products, accesskey => 'p' default => plan.product_id events => "onChange='getProdVers(this.value, $plan.id)'"} %]
Type [% PROCESS select sel = { name => 'type', - list => plan.get_plan_types, + list => plan.get_plan_types, accesskey => 't' default => plan.type } %]
- +[% UNLESS plan.test_case_count OR plan.test_run_count %] - +[% END %]

Plan Document

@@ -102,4 +107,4 @@

- \ No newline at end of file + diff --git a/mozilla/webtools/testopia/template/en/default/testopia/plan/history.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/plan/history.html.tmpl index 449e688451d..0e38ae95d17 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/plan/history.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/plan/history.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -111,4 +112,4 @@ [% i = i +1 %] [% END %] -[% END %] \ No newline at end of file +[% END %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/plan/list-product.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/plan/list-product.html.tmpl index 146535e9ec1..f1da252ec28 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/plan/list-product.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/plan/list-product.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -64,7 +65,7 @@ Plans [% FOREACH prod = products %] - + [% prod.name %] [% prod.description%] [% prod.test_plan_count %] @@ -72,4 +73,4 @@ [% END %] -[% END %] \ No newline at end of file +[% END %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/plan/list.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/plan/list.html.tmpl index 8f805798814..2b89119839f 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/plan/list.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/plan/list.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -15,7 +16,7 @@ # Maciej Maczynski. All Rights Reserved. # # Contributor(s): Ed Fuentetaja - # Greg Hendricks + # Greg Hendricks #%] [%# INTERFACE: @@ -102,10 +103,10 @@ found. Type - [% PROCESS select sel = { name => 'plan_type', - accesskey => 't', - list => type_list - default => "--Do Not Change--" } %] + [% PROCESS select sel = { name => 'plan_type', + accesskey => 't', + list => type_list + default => "--Do Not Change--" } %] Product @@ -132,8 +133,8 @@ found. - - + +Create a new test case linked to plans listed here

diff --git a/mozilla/webtools/testopia/template/en/default/testopia/plan/navigate.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/plan/navigate.html.tmpl new file mode 100644 index 00000000000..6815c521df8 --- /dev/null +++ b/mozilla/webtools/testopia/template/en/default/testopia/plan/navigate.html.tmpl @@ -0,0 +1,67 @@ +[%# 1.0@bugzilla.org %] +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Gervase Markham + # Greg Hendricks + #%] + +[% list = case_table.get_saved_list('plan') %] +Plan List: +[% IF list > 0 %] +[% curr = lsearch(list, plan.id) %] +[% IF curr != -1 && (curr > 0) %] + << First +[% ELSE %] + <<First +[% END %] + + [% IF plan %] + [% IF curr != -1 %] + [% IF curr > 0 %] + [% prev = curr - 1 %] + < Prev + [% ELSE %] + Prev + [% END %] + + [% IF curr != -1 %] +   ([% curr + 1 %] of [% list.size %])   + [% END %] + + [% IF curr + 1 < list.size %] + [% next = curr + 1 %] + Next > + [% ELSE %] + Next + [% END %] + [% END %] + [% ELSE %] +    + [% END %] + +[% IF curr != -1 && (curr + 1 < list.size) %] + Last >> +[% ELSE %] + Last>> +[% END %] + +[% ELSE %] + [%# With no list, don't show link to search results %] +    + No search results available +[% END %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/plan/show-document.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/plan/show-document.html.tmpl index 473c5626219..2d20963afd5 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/plan/show-document.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/plan/show-document.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of diff --git a/mozilla/webtools/testopia/template/en/default/testopia/plan/show.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/plan/show.html.tmpl index bdb0fabc1c5..8d1876e4d19 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/plan/show.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/plan/show.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -57,18 +58,18 @@ selectElement.add(newOption,selectElement.length); } } - function fillSelects (data, item){ + function fillSelects (data, item){ var xmldocroot = data.documentElement; var err = xmldocroot.getElementsByTagName('error'); if (err.length > 0){ - alert(err[0].childNodes[0].firstChild.nodeValue); + alert(err[0].childNodes[0].firstChild.nodeValue); document.getElementById("remBuild").disabled = false; - document.getElementById("remCat").disabled = false; - exit; + document.getElementById("remCat").disabled = false; + exit; } var selected = xmldocroot.getElementsByTagName(item); - var comps = document.getElementById(item); - comps.options.length = 0; + var comps = document.getElementById(item); + comps.options.length = 0; for (i=0; i< selected.length; i++){ var id = selected[i].childNodes[0].firstChild.nodeValue; @@ -80,48 +81,51 @@ document.getElementById("remBuild").disabled = false; document.getElementById("remCat").disabled = false; - } + } function removeCatBuild(id,item){ - if (id == 0) - return; + if (id == 0) + return; var choice = confirm("You are about to delete this " + item + ". Continue?"); if (choice == 0) return; - var myURL = (item == 'category' ? 'tr_categories.cgi' : 'tr_builds.cgi'); + var myURL = (item == 'category' ? 'tr_categories.cgi' : 'tr_builds.cgi'); document.getElementById("remBuild").disabled = true; document.getElementById("remCat").disabled = true; - dojo.io.bind({ - url: myURL, - content: { category_id: id, build_id: id, plan_id: [% plan.id %], action: 'do_delete', ajax: 1 }, - load: function(type, data, evt){ fillSelects(data, item);}, - error: function(type, error){ alert("ERROR Removing Category or Build " + String(error));}, - mimetype: "text/xml" - }); + dojo.io.bind({ + url: myURL, + content: { category_id: id, build_id: id, plan_id: [% plan.id FILTER none %], action: 'do_delete', ajax: 1 }, + load: function(type, data, evt){ fillSelects(data, item);}, + error: function(type, error){ alert("ERROR Removing Category or Build " + String(error));}, + mimetype: "text/xml" + }); } [% END %] function updateCaseList(order, direction){ - dojo.io.bind({ - url: 'tr_show_plan.cgi', - content: { direction: direction, getlist: [% getlist ||'null' %], viewall: [% viewall || 'null'%], order: order, plan_id: [% plan.id %], action: 'caselist', ajax: 1 }, - load: function(type, data, evt){ document.getElementById('plan_cases').innerHTML = data; }, - error: function(type, error){ alert("ERROR Error updating case list" + String(error));}, - mimetype: "text/html" - }); + dojo.io.bind({ + url: 'tr_show_plan.cgi', + content: { direction: direction, getlist: [% getlist ||'null' %], viewall: [% viewall || 'null'%], order: order, plan_id: [% plan.id FILTER none %], action: 'caselist', ajax: 1 }, + load: function(type, data, evt){ document.getElementById('plan_cases').innerHTML = data; }, + error: function(type, error){ alert("ERROR Error updating case list" + String(error));}, + mimetype: "text/html" + }); } function page(pagenum, viewall){ - dojo.io.bind({ - url: 'tr_show_plan.cgi', - content: { getlist: [% getlist ||'null' %], viewall: viewall, plan_id: [% plan.id %], action: 'caselist', ajax: 1 }, - load: function(type, data, evt){ document.getElementById('plan_cases').innerHTML = data; }, - error: function(type, error){ alert("ERROR Getting Page" + String(error));}, - mimetype: "text/html" - }); + dojo.io.bind({ + url: 'tr_show_plan.cgi', + content: { getlist: [% getlist ||'null' %], viewall: viewall, plan_id: [% plan.id FILTER none %], action: 'caselist', ajax: 1 }, + load: function(type, data, evt){ document.getElementById('plan_cases').innerHTML = data; }, + error: function(type, error){ alert("ERROR Getting Page" + String(error));}, + mimetype: "text/html" + }); } [% END %] -[% ##### Overview ##### %] + +[% PROCESS testopia/plan/navigate.html.tmpl %] + +[%##### Overview #####%]
@@ -144,12 +148,13 @@ Type - [% plan.author.identity FILTER html %] + [% plan.author.identity FILTER html %] [% plan.version FILTER html %] [% plan.type FILTER html %]
+ Edit Plan Attributes @@ -162,7 +167,7 @@
-[% ##### Categories and Tags ##### %] +[%##### Categories and Tags #####%]

Categories and Tags

@@ -210,19 +215,19 @@
-[% ##### Test Cases ##### %] +[%##### Test Cases #####%]

Test Cases

[% IF case_table.list_count >0 %] - Create a New Test Case + Create a New Test Case [% END %] [% PROCESS testopia/case/table.html.tmpl table = case_table %] Create a New Test Case
-[% ##### Test Runs ##### %] +[%##### Test Runs #####%]

Test Runs

@@ -233,7 +238,7 @@ table = run_table %] Create a New Test Run
-[% ##### Attachments ##### %] +[%##### Attachments #####%]

Attachments

@@ -242,11 +247,11 @@ type = "plan" %]
-[% ### Reports ### %] +[%### Reports ###%]

Reports

-Build Coverage -[% ##### Edit Plan ##### %] +Build Coverage +[%##### Edit Plan #####%]

[% IF plan.canedit %]

Attributes

@@ -254,13 +259,13 @@ [% PROCESS testopia/plan/form.html.tmpl %]
[% ELSE %] -[% ##### Plan Document ##### %] +[%##### Plan Document #####%]
[% plan.text %]
[% END %]
-[% ##### Footer ##### %] +[%##### Footer #####%] -[% PROCESS global/footer.html.tmpl %] \ No newline at end of file +[% PROCESS global/footer.html.tmpl %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/plan/table.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/plan/table.html.tmpl index d5e40f99678..ee82459e12d 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/plan/table.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/plan/table.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -46,7 +47,7 @@ Select: [% FOREACH plan = table.list %] - [% IF dotweak %] [% END %] + [% IF dotweak %] [% END %] [% plan.name FILTER html %] [% plan.author.login FILTER html %] @@ -58,7 +59,7 @@ Select: [% plan.test_case_count FILTER html %] - [% plan.test_run_count FILTER html %] + [% plan.test_run_count FILTER html %] @@ -74,4 +75,4 @@ Select: [% PROCESS navigation %] [% END %] [% DECORATIVE_BORDER_END %] -[% END %] \ No newline at end of file +[% END %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/reports/bug-severity-status-form.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/reports/bug-severity-status-form.html.tmpl index e7a71156f12..fcbf63d2c70 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/reports/bug-severity-status-form.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/reports/bug-severity-status-form.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -65,7 +66,7 @@ - Bug severity: + [% terms.Bug %] severity: [% PROCESS select sel = { name => "severity", list => bug_severity mult => 1 } %] @@ -84,7 +85,7 @@ -Links to Bugs: +Links to [% terms.Bugs %]: @@ -122,4 +123,4 @@ -[% END %] \ No newline at end of file +[% END %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/reports/bug-stats-form.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/reports/bug-stats-form.html.tmpl index 500101db98f..e39da639cb9 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/reports/bug-stats-form.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/reports/bug-stats-form.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -65,14 +66,14 @@ - Bug status: + [% terms.Bug %] status: [% PROCESS select sel = { name => "status", list => stats mult => 1 } %] - Bug resolution: + [% terms.Bug %] resolution: [% PROCESS select sel = { name => "resolution", list => res mult => 1 } %] @@ -92,7 +93,7 @@ -Links to Bugs: +Links to [% terms.Bugs %]: @@ -130,4 +131,4 @@ -[% END %] \ No newline at end of file +[% END %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/reports/build-coverage.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/reports/build-coverage.html.tmpl index a2ce289ac78..a097807298c 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/reports/build-coverage.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/reports/build-coverage.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of diff --git a/mozilla/webtools/testopia/template/en/default/testopia/reports/header.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/reports/header.html.tmpl index 52bd8581cb3..e9f3b7c42dd 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/reports/header.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/reports/header.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of diff --git a/mozilla/webtools/testopia/template/en/default/testopia/reports/incident.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/reports/incident.html.tmpl index 89f3d21e118..456ea4db651 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/reports/incident.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/reports/incident.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -59,7 +60,7 @@ Tested by Component Group - Reported
bug IDs + Reported
[% terms.bug %] IDs [% FOREACH log = caseslogs %] [% IF log.notes %] @@ -69,9 +70,9 @@ [% END %] [% log.closed_date %] - [% log.id %] + [% log.id FILTER none %] [% log.summary %] - [% log.case_id %] + [% log.case_id FILTER none %] [% log.testedby %] [% log.component %] [% log.group %] @@ -92,7 +93,7 @@

Total: [% caseslogs.size %]

-

Reported bugs:

+

Reported [% terms.bugs %]:

[% IF bugs.size > 0 %] @@ -106,7 +107,7 @@ [% FOREACH bug = bugs %] - + diff --git a/mozilla/webtools/testopia/template/en/default/testopia/reports/log.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/reports/log.html.tmpl index e3b7e307a1b..7ddc9bfc1e9 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/reports/log.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/reports/log.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -69,9 +70,9 @@ [% END %] - + - + @@ -103,9 +104,9 @@ [% FOREACH log = idlecaseslogs %] - + - + diff --git a/mozilla/webtools/testopia/template/en/default/testopia/reports/test-burnout-form.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/reports/test-burnout-form.html.tmpl index 50eb2e08764..e8809723196 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/reports/test-burnout-form.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/reports/test-burnout-form.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -56,7 +57,7 @@ -

Enter time period for gathering bugs counts.

+

Enter time period for gathering [% terms.bugs %] counts.

Default values below select this test-run time boundary.

[% bug.id %][% bug.id FILTER none %] [% bug.short_desc %] [% bug.severity %] [% bug.status %]
[% log.closed_date %][% log.id %][% log.id FILTER none %] [% log.summary %][% log.case_id %][% log.case_id FILTER none %] [% log.testedby %] [% log.component %] [% log.group %]
[% log.id %][% log.id FILTER none %] [% log.summary %][% log.case_id %][% log.case_id FILTER none %] [% log.component %] [% log.group %]
@@ -71,7 +72,7 @@ - + @@ -121,4 +122,4 @@ -[% END %] \ No newline at end of file +[% END %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/run/add.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/run/add.html.tmpl index c13cabf81c8..a17508b6c2a 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/run/add.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/run/add.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -15,7 +16,7 @@ # Maciej Maczynski. All Rights Reserved. # # Contributor(s): Ed Fuentetaja - # Greg Hendricks + # Greg Hendricks #%] @@ -48,5 +49,7 @@

Run Attributes

[% PROCESS testopia/run/form.html.tmpl %] - + + +[% PROCESS global/footer.html.tmpl %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/run/choose.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/run/choose.html.tmpl index 6831e4984c3..8274a80a6f5 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/run/choose.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/run/choose.html.tmpl @@ -17,7 +17,7 @@ # Rights Reserved. # # Contributor(s): Gervase Markham - # Greg Hendricks + # Greg Hendricks #%] [% PROCESS global/variables.none.tmpl %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/run/clone.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/run/clone.html.tmpl index f6371133c46..9767edcf560 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/run/clone.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/run/clone.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -15,7 +16,7 @@ # Maciej Maczynski. All Rights Reserved. # # Contributor(s): Ed Fuentetaja - # Greg Hendricks + # Greg Hendricks #%] [%# INTERFACE: diff --git a/mozilla/webtools/testopia/template/en/default/testopia/run/form.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/run/form.html.tmpl index 946f26c48dd..bb87f0d6608 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/run/form.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/run/form.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -15,27 +16,27 @@ # Maciej Maczynski. All Rights Reserved. # # Contributor(s): Ed Fuentetaja - # Greg Hendricks + # Greg Hendricks #%] - - + +
Show only bugs detected by this test run:Show only [% terms.bugs %] detected by this test run:
@@ -58,15 +59,15 @@ - diff --git a/mozilla/webtools/testopia/template/en/default/testopia/run/history.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/run/history.html.tmpl index 8a514c09518..c8bd2f2347b 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/run/history.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/run/history.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of diff --git a/mozilla/webtools/testopia/template/en/default/testopia/run/list.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/run/list.html.tmpl index f699488baf2..e9e2f7b0a5b 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/run/list.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/run/list.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -15,7 +16,7 @@ # Maciej Maczynski. All Rights Reserved. # # Contributor(s): Ed Fuentetaja - # Greg Hendricks + # Greg Hendricks #%] [%# INTERFACE: @@ -53,7 +54,7 @@ No test runs [% IF table.list_count == 1 %] One test run [% ELSE %] - [% table.list_count %] test runs + [% table.list_count FILTER none %] test runs [% END %] [% END %] found. @@ -99,7 +100,7 @@ found. [% END %] -
Product Version [% PROCESS select sel = { name => "product_version", - list => run.plan.get_product_versions, - default => run.product_version ? run.product_version : run.plan.product_version } + list => run.plan.get_product_versions, + default => run.product_version ? run.product_version : run.plan.product_version } %] Plan Version [% PROCESS select sel = { name => "plan_version", - list => run.plan.get_plan_versions, - default => run.plan_text_version } + list => run.plan.get_plan_versions, + default => run.plan_text_version } %]
[% SET statuslist = [{ id => 1, name => 'Running'}, {id => 0, name=> 'Stopped'}] %] [% PROCESS select sel = { name => "status", - list => statuslist, - default => run.stop_date ? 0 : 1 } + list => statuslist, + default => run.stop_date ? 0 : 1 } %] Build + Build [% PROCESS select sel = { name => "build", - list => run.plan.builds, + list => run.plan.builds, default => run.build.id } %]
+

diff --git a/mozilla/webtools/testopia/template/en/default/testopia/run/navigate.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/run/navigate.html.tmpl new file mode 100644 index 00000000000..8d3bf66952e --- /dev/null +++ b/mozilla/webtools/testopia/template/en/default/testopia/run/navigate.html.tmpl @@ -0,0 +1,67 @@ +[%# 1.0@bugzilla.org %] +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Gervase Markham + # Greg Hendricks + #%] + +[% list = table.get_saved_list('run') %] +Run List: +[% IF table && list > 0 %] +[% curr = lsearch(list, run.id) %] +[% IF curr != -1 && (curr > 0) %] + << First +[% ELSE %] + <<First +[% END %] + + [% IF run %] + [% IF curr != -1 %] + [% IF curr > 0 %] + [% prev = curr - 1 %] + < Prev + [% ELSE %] + Prev + [% END %] + + [% IF curr != -1 %] +   ([% curr + 1 %] of [% list.size %])   + [% END %] + + [% IF curr + 1 < list.size %] + [% next = curr + 1 %] + Next > + [% ELSE %] + Next + [% END %] + [% END %] + [% ELSE %] +    + [% END %] + +[% IF curr != -1 && (curr + 1 < list.size) %] + Last >> +[% ELSE %] + Last>> +[% END %] + +[% ELSE %] + [%# With no list, don't show link to search results %] +    + No search results available +[% END %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/run/regression.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/run/regression.html.tmpl index 24b65c53598..a1a38b3290b 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/run/regression.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/run/regression.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -46,22 +47,22 @@ [% IF bugs.size == 0 %] -

There are no bugs reported in this test run.

+

There are no [% terms.bugs %] reported in this test run.

[% ELSE %]
- + -

Bugs reported in this test run:

+

[% terms.Bugs %] reported in this test run:

[% DECORATIVE_BORDER_BEGIN %] - + @@ -78,13 +79,13 @@ style="color:grey;" [% END %] > - + /> [% bug.bug_id FILTER none %] @@ -104,7 +105,7 @@ [% DECORATIVE_BORDER_END %]

-Create regression test cases for each checked bug? +Create regression test cases for each checked [% terms.bug %]?  

@@ -132,14 +133,14 @@ function ck(f) {

Regression test cases are added to the test plan and will be available for future test runs. -Bugs reported to products other than the plan's product cannot be selected. +[% terms.Bugs %] reported to products other than the plan's product cannot be selected.

[% END %]

-Go back to the test run page. +Go back to the test run page.

diff --git a/mozilla/webtools/testopia/template/en/default/testopia/run/show.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/run/show.html.tmpl index 2852f175f63..00738260377 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/run/show.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/run/show.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -15,7 +16,7 @@ # Maciej Maczynski. All Rights Reserved. # # Contributor(s): Ed Fuentetaja - # Greg Hendricks + # Greg Hendricks #%] [%# INTERFACE: @@ -45,22 +46,22 @@ @@ -96,7 +97,9 @@ [% END %] -[% ##### Overview ##### %] +[% PROCESS testopia/run/navigate.html.tmpl %] + +[%##### Overview #####%]

Overview

@@ -146,16 +149,17 @@
@@ -164,12 +168,12 @@

-[% ##### Categories and Tags ##### %] +[%##### Categories and Tags #####%]

CC, Coverage, Tags

Bug ID[% terms.Bug %] ID Summary Severity Status [% bug.bug_id %] [% bug.summary %] [% bug.severity %] [% bug.status %]
- + + - [% IF run.candelete %] + [% IF run.candelete %] [% END %] - - + +
Edit Run Attributes
- + @@ -178,38 +182,38 @@
CC ListCC List Case Run Status Tags
- - - + + +
- - -
- + +
+
- +
- - - - - - - - - - - - - - - + +
Idle:[% run.idle_count FILTER html %]
Passed:[% run.passed_count FILTER html %]
Failed:[% run.failed_count FILTER html %]
+ + + + + + + + + + + + + + @@ -223,12 +227,12 @@ - - - - + + + +
Idle:[% run.idle_count FILTER html %]
Passed:[% run.passed_count FILTER html %]
Failed:[% run.failed_count FILTER html %]
Running: [% run.running_count FILTER html %][% run.blocked_count FILTER html %]
Total:[% run.case_count FILTER html %]
Total:[% run.case_count FILTER html %]
-
@@ -243,27 +247,23 @@
-

-

Test Case Run Logs

-Filter: -Show All |  -Assigned to Me |  -Tested by Me |  -Open |  -Closed +

+

Test Case Run Logs

+[% PROCESS testopia/caserun/filter.html.tmpl %]
[% PROCESS testopia/caserun/table.html.tmpl caseruns = run.current_caseruns %] -
Add Cases  +Add Cases  Update Multiple +

Attributes

diff --git a/mozilla/webtools/testopia/template/en/default/testopia/run/table.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/run/table.html.tmpl index ed5834437f2..085e22e1b4b 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/run/table.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/run/table.html.tmpl @@ -1,4 +1,4 @@ -[%# The contents of this file are subject to the Mozilla Public +[%# 1.0@bugzilla.org %][%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of # the License at http://www.mozilla.org/MPL/ @@ -47,7 +47,7 @@ Select: [% FOREACH run = table.list %] - [% IF dotweak %] [% END %] + [% IF dotweak %] [% END %] [% run.id FILTER html %] [% run.summary FILTER html %] [% run.build.name FILTER html %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/run/tabs.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/run/tabs.html.tmpl index d67e515c886..eed06965080 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/run/tabs.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/run/tabs.html.tmpl @@ -40,7 +40,7 @@ [% ELSE %] - + [% tab.description %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/search/advanced.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/search/advanced.html.tmpl index d9ab6343a0e..ebc25539af1 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/search/advanced.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/search/advanced.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -40,7 +41,95 @@ [% tabs = [ { name => 'case', description => "Find Test Cases" }, { name => 'run', description => "Find Test Runs" }, { name => 'plan', description => "Find Test Plans" } ] %] + + @@ -93,4 +182,4 @@ [% PROCESS testopia/search/case.html.tmpl %] [% END %] -[% PROCESS global/footer.html.tmpl %] \ No newline at end of file +[% PROCESS global/footer.html.tmpl %] diff --git a/mozilla/webtools/testopia/template/en/default/testopia/search/case.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/search/case.html.tmpl index d19d3152a2e..78c9bd22fe8 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/search/case.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/search/case.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -24,49 +25,58 @@
 
+ + - - - - - + [% PROCESS select sel = { name => 'case_status_id', + accesskey => 'c', + list => case.get_status_list, + elements => 5, + mult => 1 } %] + + + + + +
StatusProductComponents Category PriorityComponents Automatic
- [% PROCESS select sel = { name => 'case_status_id', - accesskey => 'c', - list => case.get_status_list, - elements => 5, - mult => 1 } %] - - [% PROCESS select sel = { name => 'category', - accesskey => 't', - list => case.get_distinct_categories, - elements => 5, - mult => 1 } %] - - [% PROCESS select sel = { name => 'priority_id', - accesskey => 'p', - list => case.get_priority_list - elements => 5, - mult => 1 } %] - - [% PROCESS select sel = { name => 'component', - accesskey => 'm', - list => case.get_available_components - elements => 5, - mult => 1 } %] - - [% PROCESS select sel = { name => 'isautomated', - accesskey => 'a', - list => - [ { id => "0", name => "Manual" }, - { id => "1", name => "Automatic" } ] - elements => 5, - mult => 1 } %] - + [% PROCESS select sel = { name => 'product_id', + accesskey => 'p', + list => plan.get_available_products, + elements => 5, + mult => 1 + events => 'onChange="onProductSelection()"' } %] + + [% PROCESS select sel = { name => 'component', + accesskey => 'm', + list => case.get_available_components + elements => 5, + mult => 1 } %] + + [% PROCESS select sel = { name => 'category', + accesskey => 't', + list => case.get_distinct_categories, + elements => 5, + mult => 1 } %] + + [% PROCESS select sel = { name => 'priority_id', + accesskey => 'p', + list => case.get_priority_list + elements => 5, + mult => 1 } %] + + [% PROCESS select sel = { name => 'isautomated', + accesskey => 'a', + list => + [ { id => "0", name => "Manual" }, + { id => "1", name => "Automatic" } ] + elements => 5, + mult => 1 } %] +
@@ -77,50 +87,53 @@ Summary: [% PROCESS select sel = { name => 'summary_type', - list => query_variants } %] - + list => query_variants } %] + Action: [% PROCESS select sel = { name => 'tcaction_type', - list => query_variants } %] - + list => query_variants } %] + - Effect: + Expected Results: [% PROCESS select sel = { name => 'tceffect_type', - list => query_variants } %] - + list => query_variants } %] + Script: [% PROCESS select sel = { name => 'script_type', - list => query_variants } %] - + list => query_variants } %] + Requirement: [% PROCESS select sel = { name => 'requirement_type', - list => query_variants } %] - + list => query_variants } %] + Tags: [% PROCESS select sel = { name => 'tags_type', - list => tag_variants } %] - + list => tag_variants } %] + Author: [% PROCESS select sel = { name => 'author_type', - list => email_variants } %] - + list => email_variants } %] + + AND + OR + Default Tester: @@ -145,11 +158,11 @@
where one or more of the following changed:
- [% PROCESS select sel = { name => 'chfield_type', - accesskey => 'p', - list => case.get_fields - elements => 5, - mult => 1 } %] + [% PROCESS select sel = { name => 'chfield_type', + accesskey => 'p', + list => case.get_fields + elements => 5, + mult => 1 } %]
and the new value was:
@@ -173,4 +186,4 @@

- \ No newline at end of file + diff --git a/mozilla/webtools/testopia/template/en/default/testopia/search/plan.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/search/plan.html.tmpl index fddb026831a..40b00b49868 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/search/plan.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/search/plan.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -29,26 +30,27 @@ - [% PROCESS select sel = { name => 'product_id', - accesskey => 'p', - list => plan.get_available_products, - elements => 5, - mult => 1 } %] - - - [% PROCESS select sel = { name => 'default_product_version', - accesskey => 'v', - list => product_versions, - elements => 5, - mult => 1 } %] - - - [% PROCESS select sel = { name => 'type_id', - accesskey => 'p', - list => plan.get_plan_types - elements => 5, - mult => 1 } %] - + [% PROCESS select sel = { name => 'product_id', + accesskey => 'p', + list => plan.get_available_products, + elements => 5, + mult => 1 + events => 'onChange="onProductSelection()"' } %] + + + [% PROCESS select sel = { name => 'default_product_version', + accesskey => 'v', + list => product_versions, + elements => 5, + mult => 1 } %] + + + [% PROCESS select sel = { name => 'type_id', + accesskey => 'p', + list => plan.get_plan_types + elements => 5, + mult => 1 } %] + @@ -59,36 +61,39 @@ Name: [% PROCESS select sel = { name => 'name_type', - list => query_variants } %] - + list => query_variants } %] + Text: [% PROCESS select sel = { name => 'plan_text_type', - list => query_variants } %] - + list => query_variants } %] + Tags: [% PROCESS select sel = { name => 'tags_type', - list => tag_variants } %] - + list => tag_variants } %] + Author: [% PROCESS select sel = { name => 'author_type', - list => email_variants } %] - + list => email_variants } %] + + AND + OR + Editor: [% PROCESS select sel = { name => 'editor_type', - list => email_variants } %] - + list => email_variants } %] + @@ -106,11 +111,11 @@
where one or more of the following changed:
- [% PROCESS select sel = { name => 'chfield_type', - accesskey => 'p', - list => plan.get_fields - elements => 5, - mult => 1 } %] + [% PROCESS select sel = { name => 'chfield_type', + accesskey => 'p', + list => plan.get_fields + elements => 5, + mult => 1 } %]
and the new value was:
@@ -127,10 +132,10 @@

- \ No newline at end of file + diff --git a/mozilla/webtools/testopia/template/en/default/testopia/search/run.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/search/run.html.tmpl index 72825a6623c..167678fcdca 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/search/run.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/search/run.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -24,25 +25,49 @@ + + - + - + [% PROCESS select sel = { name => 'run_status', + accesskey => 's', + list => run.get_status_list + elements => 5, + mult => 1 } %] + + + + + -
StatusProductVersion BuildEnvironment MilestoneEnvironment
- [% PROCESS select sel = { name => 'run_status', - accesskey => 's', - list => run.get_status_list - elements => 5, - mult => 1 } %] - - [% PROCESS select sel = { name => 'build', - accesskey => 't', - list => run.get_distinct_builds, - elements => 5, - mult => 1 } %] - + [% PROCESS select sel = { name => 'product_id', + accesskey => 'p', + list => plan.get_available_products, + elements => 5, + mult => 1 + events => 'onChange="onProductSelection()"' } %] + + [% PROCESS select sel = { name => 'default_product_version', + accesskey => 'v', + list => product_versions, + elements => 5, + mult => 1 } %] + + [% PROCESS select sel = { name => 'build', + accesskey => 't', + list => run.get_distinct_builds, + elements => 5, + mult => 1 } %] + + [% PROCESS select sel = { name => 'milestone', + accesskey => 'm', + list => run.get_distinct_milestones, + elements => 5, + mult => 1 } %] + [% PROCESS select sel = { name => 'environment_id', accesskey => 'e', @@ -50,13 +75,6 @@ elements => 5, mult => 1 } %] - [% PROCESS select sel = { name => 'milestone', - accesskey => 'm', - list => run.get_distinct_milestones, - elements => 5, - mult => 1 } %] -
@@ -68,36 +86,36 @@ Summary: [% PROCESS select sel = { name => 'summary_type', - list => query_variants } %] - + list => query_variants } %] + Notes [% PROCESS select sel = { name => 'notes_type', - list => query_variants } %] - + list => query_variants } %] + Environment XML: [% PROCESS select sel = { name => 'environment_type', - list => query_variants } %] - + list => query_variants } %] + Tags: [% PROCESS select sel = { name => 'tags_type', - list => tag_variants } %] - + list => tag_variants } %] + Manager: [% PROCESS select sel = { name => 'manager_type', - list => email_variants } %] - + list => email_variants } %] + @@ -115,11 +133,11 @@
where one or more of the following changed:
- [% PROCESS select sel = { name => 'chfield_type', - accesskey => 'p', - list => run.get_fields - elements => 5, - mult => 1 } %] + [% PROCESS select sel = { name => 'chfield_type', + accesskey => 'p', + list => run.get_fields + elements => 5, + mult => 1 } %]
and the new value was:
@@ -143,4 +161,4 @@

- \ No newline at end of file + diff --git a/mozilla/webtools/testopia/template/en/default/testopia/style.none.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/style.none.tmpl index 5869d9ac871..544b9ca45ca 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/style.none.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/style.none.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -21,6 +22,24 @@ # ... #%] -[% DECORATIVE_BORDER_BEGIN = "
" %] -[% DECORATIVE_BORDER_100_BEGIN = "
" %] -[% DECORATIVE_BORDER_END = "
" %] +[% DECORATIVE_BORDER_BEGIN = "
[% FOREACH tag = tags %] - - - - + + + +
" %] +[% DECORATIVE_BORDER_100_BEGIN = "
" %] +[% DECORATIVE_BORDER_END = "
" %] + diff --git a/mozilla/webtools/testopia/template/en/default/testopia/tag/list.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/tag/list.html.tmpl index fbb37f67430..42f4dd6d1a7 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/tag/list.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/tag/list.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -45,10 +46,10 @@
[% tag.name FILTER html %][% tag.case_count FILTER html %][% tag.plan_count FILTER html %][% tag.run_count FILTER html %][% tag.name FILTER html %][% tag.case_count FILTER html %][% tag.plan_count FILTER html %][% tag.run_count FILTER html %] [% IF type %] Remove diff --git a/mozilla/webtools/testopia/template/en/default/testopia/tag/table.html.tmpl b/mozilla/webtools/testopia/template/en/default/testopia/tag/table.html.tmpl index 3bbcc2eac1c..dbc9731a0c9 100644 --- a/mozilla/webtools/testopia/template/en/default/testopia/tag/table.html.tmpl +++ b/mozilla/webtools/testopia/template/en/default/testopia/tag/table.html.tmpl @@ -1,3 +1,4 @@ +[%# 1.0@bugzilla.org %] [%# The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of @@ -21,8 +22,8 @@ # ... #%] -
-
+
+
@@ -40,4 +41,4 @@ [% END %]
- \ No newline at end of file + diff --git a/mozilla/webtools/testopia/testopia/css/default.css b/mozilla/webtools/testopia/testopia/css/default.css index 5f523dcacc4..a7de4678eac 100755 --- a/mozilla/webtools/testopia/testopia/css/default.css +++ b/mozilla/webtools/testopia/testopia/css/default.css @@ -85,10 +85,8 @@ textarea { /* tr_showcaselog */ .ae_dv { - width:100%; display:none; margin-left:15px; - margin-right:40px; border-width:0px; } @@ -97,7 +95,7 @@ textarea { border:0; margin:0; margin-right:30px; - margin-down:10px; + margin-bottom:10px; border-collapse:collapse; border-spacing: 0px; } diff --git a/mozilla/webtools/testopia/testopia/doc/Manual.odt b/mozilla/webtools/testopia/testopia/doc/Manual.odt index aa4c6c1ad97..0dc42d175e0 100644 Binary files a/mozilla/webtools/testopia/testopia/doc/Manual.odt and b/mozilla/webtools/testopia/testopia/doc/Manual.odt differ diff --git a/mozilla/webtools/testopia/testopia/doc/Manual.pdf b/mozilla/webtools/testopia/testopia/doc/Manual.pdf index e98dc797676..e2ab4461630 100644 Binary files a/mozilla/webtools/testopia/testopia/doc/Manual.pdf and b/mozilla/webtools/testopia/testopia/doc/Manual.pdf differ diff --git a/mozilla/webtools/testopia/testopia/doc/Manual.rtf b/mozilla/webtools/testopia/testopia/doc/Manual.rtf index cefa01e51a3..0f61f4c031f 100644 --- a/mozilla/webtools/testopia/testopia/doc/Manual.rtf +++ b/mozilla/webtools/testopia/testopia/doc/Manual.rtf @@ -1,426 +1,1289 @@ {\rtf1\ansi\deff1\adeflang1025 -{\fonttbl{\f0\froman\fprq2\fcharset0 Thorndale AMT{\*\falt Times New Roman};}{\f1\froman\fprq2\fcharset0 Bitstream Vera Serif;}{\f2\fswiss\fprq2\fcharset0 Lucida Sans Unicode;}{\f3\froman\fprq2\fcharset0 Bitstream Vera Serif;}{\f4\fswiss\fprq2\fcharset0 Arial;}{\f5\fmodern\fprq1\fcharset0 Courier New;}{\f6\fmodern\fprq1\fcharset0 Cumberland AMT{\*\falt Courier New};}{\f7\fnil\fprq0\fcharset2 StarSymbol{\*\falt Arial Unicode MS};}{\f8\fnil\fprq0\fcharset0 Lucidasans;}{\f9\fswiss\fprq2\fcharset0 Tahoma;}{\f10\fswiss\fprq0\fcharset0 Tahoma;}} +{\fonttbl{\f0\froman\fprq2\fcharset0 Thorndale AMT{\*\falt Times New Roman};}{\f1\froman\fprq2\fcharset0 Bitstream Vera Serif;}{\f2\fswiss\fprq2\fcharset0 Arial;}{\f3\fnil\fprq2\fcharset0 Lucida Sans Unicode;}{\f4\fmodern\fprq1\fcharset0 Courier New;}{\f5\fnil\fprq0\fcharset2 StarSymbol{\*\falt Arial Unicode MS};}{\f6\fmodern\fprq1\fcharset0 Cumberland AMT{\*\falt Courier New};}{\f7\fnil\fprq2\fcharset0 Tahoma;}{\f8\fnil\fprq0\fcharset0 Tahoma;}} {\colortbl;\red0\green0\blue0;\red0\green0\blue128;\red128\green0\blue0;\red128\green128\blue128;} -{\stylesheet{\s1\aspalpha\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033\snext1 Normal;} -{\s2\sb240\sa120\keepn\aspalpha\rtlch\af1\afs28\lang255\ltrch\dbch\af1\langfe255\hich\f4\fs28\lang1033\loch\f4\fs28\lang1033\sbasedon1\snext3 Heading;} -{\s3\sa120\aspalpha\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033\sbasedon1\snext3 Body Text;} -{\s4\sa120\aspalpha\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033\sbasedon3\snext4 List;} -{\s5\sb120\sa120\aspalpha\rtlch\af8\afs24\lang255\ai\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\i\loch\fs24\lang1033\i\sbasedon1\snext5 caption;} -{\s6\aspalpha\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033\sbasedon1\snext6 Index;} -{\s7\sb240\sa120\keepn\aspalpha\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b\sbasedon2\snext3{\*\soutlvl0} heading 1;} -{\s8\sb240\sa120\keepn\aspalpha\rtlch\afs28\lang255\ai\ab\ltrch\dbch\langfe255\hich\f4\fs28\lang1033\i\b\loch\f4\fs28\lang1033\i\b\sbasedon2\snext3{\*\soutlvl1} heading 2;} -{\s9\sb240\sa120\keepn\aspalpha\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b\sbasedon2\snext3{\*\soutlvl2} heading 3;} -{\s10\sb240\sa120\keepn\aspalpha\rtlch\afs23\lang255\ai\ab\ltrch\dbch\langfe255\hich\f4\fs23\lang1033\i\b\loch\f4\fs23\lang1033\i\b\sbasedon2\snext3{\*\soutlvl3} heading 4;} -{\s11\sb120\sa120\aspalpha\rtlch\af10\afs20\lang255\ai\ltrch\dbch\af2\langfe255\hich\fs20\lang1033\i\loch\fs20\lang1033\i\sbasedon1\snext11 caption;} -{\s12\sb240\sa120\keepn\aspalpha\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b\sbasedon2\snext12 Contents Heading;} -{\s13\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033\sbasedon6\snext13 toc 1;} -{\s14\li283\ri0\lin283\rin0\fi0\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033\sbasedon6\snext14 toc 2;} -{\s15\li566\ri0\lin566\rin0\fi0\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033\sbasedon6\snext15 toc 3;} -{\s16\li849\ri0\lin849\rin0\fi0\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033\sbasedon6\snext16 toc 4;} -{\s17\li1132\ri0\lin1132\rin0\fi0\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033\sbasedon6\snext17 toc 5;} -{\s18\li1415\ri0\lin1415\rin0\fi0\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033\sbasedon6\snext18 toc 6;} -{\s19\li1698\ri0\lin1698\rin0\fi0\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033\sbasedon6\snext19 toc 7;} -{\s20\li1981\ri0\lin1981\rin0\fi0\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033\sbasedon6\snext20 toc 8;} -{\s21\li2264\ri0\lin2264\rin0\fi0\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033\sbasedon6\snext21 toc 9;} -{\s22\li2547\ri0\lin2547\rin0\fi0\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033\sbasedon6\snext22 Contents 10;} -{\s23\aspalpha\rtlch\af5\afs20\lang255\ltrch\dbch\af5\langfe255\hich\f5\fs20\lang1033\loch\f5\fs20\lang1033\sbasedon1\snext23 Preformatted Text;} -{\*\cs25\cf0\rtlch\af7\afs18\lang255\ltrch\dbch\af7\langfe255\hich\f7\fs18\lang1033\loch\f7\fs18\lang1033 RTF_Num 2 1;} -{\*\cs26\cf0\rtlch\af7\afs18\lang255\ltrch\dbch\af7\langfe255\hich\f7\fs18\lang1033\loch\f7\fs18\lang1033 RTF_Num 2 2;} -{\*\cs27\cf0\rtlch\af7\afs18\lang255\ltrch\dbch\af7\langfe255\hich\f7\fs18\lang1033\loch\f7\fs18\lang1033 RTF_Num 2 3;} -{\*\cs28\cf0\rtlch\af7\afs18\lang255\ltrch\dbch\af7\langfe255\hich\f7\fs18\lang1033\loch\f7\fs18\lang1033 RTF_Num 2 4;} -{\*\cs29\cf0\rtlch\af7\afs18\lang255\ltrch\dbch\af7\langfe255\hich\f7\fs18\lang1033\loch\f7\fs18\lang1033 RTF_Num 2 5;} -{\*\cs30\cf0\rtlch\af7\afs18\lang255\ltrch\dbch\af7\langfe255\hich\f7\fs18\lang1033\loch\f7\fs18\lang1033 RTF_Num 2 6;} -{\*\cs31\cf0\rtlch\af7\afs18\lang255\ltrch\dbch\af7\langfe255\hich\f7\fs18\lang1033\loch\f7\fs18\lang1033 RTF_Num 2 7;} -{\*\cs32\cf0\rtlch\af7\afs18\lang255\ltrch\dbch\af7\langfe255\hich\f7\fs18\lang1033\loch\f7\fs18\lang1033 RTF_Num 2 8;} -{\*\cs33\cf0\rtlch\af7\afs18\lang255\ltrch\dbch\af7\langfe255\hich\f7\fs18\lang1033\loch\f7\fs18\lang1033 RTF_Num 2 9;} -{\*\cs34\cf0\rtlch\af7\afs18\lang255\ltrch\dbch\af7\langfe255\hich\f7\fs18\lang1033\loch\f7\fs18\lang1033 RTF_Num 2 10;} -{\*\cs35\cf0\rtlch\af1\afs24\lang255\ltrch\dbch\af1\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 RTF_Num 3 1;} -{\*\cs36\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 Footnote Symbol;} -{\*\cs37\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 Numbering Symbols;} -{\*\cs38\cf2\ul\ulc0\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 Internet link;} -{\*\cs39\cf3\ul\ulc0\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 Visited Internet Link;} -{\*\cs40\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 Endnote Symbol;} -{\*\cs41\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f6\fs24\lang1033\loch\f6\fs24\lang1033 Source Text;} -{\*\cs42\rtlch\af7\afs18\lang255\ltrch\dbch\af7\langfe255\hich\f7\fs18\lang1033\loch\f7\fs18\lang1033 Bullet Symbols;} -{\*\cs43\cf0\rtlch\af1\afs24\lang255\ltrch\dbch\af1\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 Endnote Symbol;} -{\*\cs44\cf0\rtlch\af1\afs24\lang255\ltrch\dbch\af1\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 Footnote Symbol;} -{\*\cs45\cf2\ul\ulc0\rtlch\af1\afs24\lang255\ltrch\dbch\af1\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 Internet link;} +{\stylesheet{\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\snext1 Normal;} +{\s2\sa120\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon1\snext2 Body Text;} +{\s3\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs28\lang255\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\loch\f2\fs28\lang1033\sbasedon1\snext2 Heading;} +{\s4\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b\sbasedon3\snext2{\*\soutlvl0} heading 1;} +{\s5\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b\sbasedon3\snext2{\*\soutlvl1} heading 2;} +{\s6\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b\sbasedon3\snext2{\*\soutlvl2} heading 3;} +{\s7\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b\sbasedon3\snext2{\*\soutlvl3} heading 4;} +{\s8\sa120\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon2\snext8 List;} +{\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon1\snext9 Table Contents;} +{\s10\cf0\qc{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af7\afs24\lang255\ai\ab\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\i\b\loch\f1\fs24\lang1033\i\b\sbasedon9\snext10 Table Heading;} +{\s11\sb120\sa120\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs20\lang255\ai\ltrch\dbch\af3\langfe255\hich\f1\fs20\lang1033\i\loch\f1\fs20\lang1033\i\sbasedon1\snext11 caption;} +{\s12\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon1\snext12 Index;} +{\s13\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b\sbasedon3\snext13 index heading;} +{\s14\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b\sbasedon3\snext14 Contents Heading;} +{\s15\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon12\snext15 toc 1;} +{\s16\li283\ri0\lin283\rin0\fi0\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon12\snext16 toc 2;} +{\s17\li566\ri0\lin566\rin0\fi0\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon12\snext17 toc 3;} +{\s18\li849\ri0\lin849\rin0\fi0\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon12\snext18 toc 4;} +{\s19\li1132\ri0\lin1132\rin0\fi0\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon12\snext19 toc 5;} +{\s20\li1415\ri0\lin1415\rin0\fi0\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon12\snext20 toc 6;} +{\s21\li1698\ri0\lin1698\rin0\fi0\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon12\snext21 toc 7;} +{\s22\li1981\ri0\lin1981\rin0\fi0\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon12\snext22 toc 8;} +{\s23\li2264\ri0\lin2264\rin0\fi0\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon12\snext23 toc 9;} +{\s24\li2547\ri0\lin2547\rin0\fi0\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon12\snext24 Contents 10;} +{\s25\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af4\afs20\lang255\ltrch\dbch\af4\langfe255\hich\f4\fs20\lang1033\loch\f4\fs20\lang1033\sbasedon1\snext25 Preformatted Text;} +{\*\cs27\cf0\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 Footnote Symbol;} +{\*\cs28\cf0\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 Numbering Symbols;} +{\*\cs29\cf0\rtlch\af5\afs18\lang255\ltrch\dbch\af5\langfe255\hich\f5\fs18\lang1033\loch\f5\fs18\lang1033 Bullet Symbols;} +{\*\cs30\cf2\ul\ulc0\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 Internet link;} +{\*\cs31\cf3\ul\ulc0\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 Visited Internet Link;} +{\*\cs32\cf0\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 Endnote Symbol;} +{\*\cs33\cf0\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f6\fs24\lang1033\loch\f6\fs24\lang1033 Source Text;} }{\*\listtable{\list\listtemplateid1 -{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'00.;}{\levelnumbers\'01;}\fi-360\li720}{\listname RTF_Num 3;}\listid1} +{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9679 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} +{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9675 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} +{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9632 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} +{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9679 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} +{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9675 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} +{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9632 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} +{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9679 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} +{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9675 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} +{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9632 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} +{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9679 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid1} {\list\listtemplateid2 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9679 ?;}{\levelnumbers;}\f7\fs18\f7\fs18\f7\fs18\f7\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9675 ?;}{\levelnumbers;}\f7\fs18\f7\fs18\f7\fs18\f7\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9632 ?;}{\levelnumbers;}\f7\fs18\f7\fs18\f7\fs18\f7\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9679 ?;}{\levelnumbers;}\f7\fs18\f7\fs18\f7\fs18\f7\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9675 ?;}{\levelnumbers;}\f7\fs18\f7\fs18\f7\fs18\f7\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9632 ?;}{\levelnumbers;}\f7\fs18\f7\fs18\f7\fs18\f7\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9679 ?;}{\levelnumbers;}\f7\fs18\f7\fs18\f7\fs18\f7\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9675 ?;}{\levelnumbers;}\f7\fs18\f7\fs18\f7\fs18\f7\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9632 ?;}{\levelnumbers;}\f7\fs18\f7\fs18\f7\fs18\f7\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u9679 ?;}{\levelnumbers;}\f7\fs18\f7\fs18\f7\fs18\f7\fi-360\li3960}}{\listname RTF_Num 2;}\listid2} +{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'00.;}{\levelnumbers\'01;}\fi-360\li720} +{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'01.;}{\levelnumbers\'01;}\fi-360\li1080} +{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'02.;}{\levelnumbers\'01;}\fi-360\li1440} +{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'03.;}{\levelnumbers\'01;}\fi-360\li1800} +{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'04.;}{\levelnumbers\'01;}\fi-360\li2160} +{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'05.;}{\levelnumbers\'01;}\fi-360\li2520} +{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'06.;}{\levelnumbers\'01;}\fi-360\li2880} +{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'07.;}{\levelnumbers\'01;}\fi-360\li3240} +{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'08.;}{\levelnumbers\'01;}\fi-360\li3600} +{\*\soutlvl{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'09.;}{\levelnumbers\'01;}\fi-360\li3960}}\listid2} }{\listoverridetable{\listoverride\listid1\listoverridecount0\ls0}{\listoverride\listid2\listoverridecount0\ls1}} -{\info{\creatim\yr2006\mo6\dy2\hr15\min28}{\revtim\yr1601\mo1\dy1\hr0\min0}{\printim\yr1601\mo1\dy1\hr0\min0}{\comment StarWriter}{\vern6800}}\deftab709 +{\info{\creatim\yr2006\mo5\dy18\hr9\min0}{\author Greg Hendricks}{\revtim\yr2006\mo6\dy16\hr16\min44}{\printim\yr1601\mo1\dy1\hr0\min0}{\comment StarWriter}{\vern6800}}\deftab709 {\*\pgdsctbl {\pgdsc0\pgdscuse195\pgwsxn12240\pghsxn15840\marglsxn1800\margrsxn1800\margtsxn1440\margbsxn1440\pgdscnxt0 Standard;} -{\pgdsc1\pgdscuse195\pgwsxn12240\pghsxn15840\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\pgdscnxt1 Endnote;} -{\pgdsc2\pgdscuse195\lndscpsxn\pgwsxn15840\pghsxn12240\marglsxn1800\margrsxn1800\margtsxn1440\margbsxn1440\pgdscnxt0 picture;}} +{\pgdsc1\pgdscuse193\pgwsxn12240\pghsxn15840\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\pgdscnxt1 Left Page;} +{\pgdsc2\pgdscuse194\pgwsxn12240\pghsxn15840\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\pgdscnxt2 Right Page;} +{\pgdsc3\pgdscuse195\pgwsxn12240\pghsxn15840\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\pgdscnxt3 Endnote;} +{\pgdsc4\pgdscuse195\lndscpsxn\pgwsxn15840\pghsxn12240\marglsxn1800\margrsxn1800\margtsxn1440\margbsxn1440{\*\shadow0\shdwdist0\shdwstyle41\shdwfcol0}\pgdscnxt0 picture;}} {\*\pgdscno0}\paperh15840\paperw12240\margl1800\margr1800\margt1440\margb1440\sectd\sbknone\pgwsxn12240\pghsxn15840\marglsxn1800\margrsxn1800\margtsxn1440\margbsxn1440\ftnbj\ftnstart1\ftnrstpg\ftnnar\aenddoc\aftnrstcont\aftnstart1\aftnnar -\pard\plain \ltrpar\s7\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\qc\aspalpha\sa120\rtlch\af9\afs80\lang255\ltrch\dbch\af2\langfe255\hich\fs80\lang1033\loch\fs80\lang1033 {\rtlch \ltrch\loch\f1\fs80\lang1033\i0\b0 Bugzilla Testopia} -\par \pard\plain \ltrpar\s3\qc\aspalpha\sa120\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033{\field{\*\fldinst HYPERLINK "http://www.mozilla.org/projects/testopia" }{\fldrslt \*\cs45\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\loch{\rtlch \ltrch\loch\f1\fs32\lang1033\i0\b0\ul\ulc0\fs32\cf2 http://www.mozilla.org/projects/testopia}}} +\pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par +\pard\plain\absw6225\absh7680\pvpara\posyt\phcol\posxc{\*\flymaincnt69\flyvert15457\flyhorz46594\flyanchor0\flycntnt}{\*\shppict{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw415\pich512\picwgoal6225\pichgoal7680\pngblip +89504e470d0a1a0a}}{\nonshppict{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw415\pich512\picwgoal6225\pichgoal7680\wmetafile8 +0100090000036900000010001c0000000000050000000b0200000000050000000c020000000004000000020101000400000004010d0008000000fa0200000000 +000000000000040000002d01000007000000fc020000ffffff000000040000002d0101001c000000fb0200001000000000000000000000000000000000000000 +00000000000000000000000000000000000000000000000000000000040000002d010200040000002e011800050000000902ffffff0004000000070103000700 +0000430f2000cc00000000000300000000000000000000000000}} +\pard +\pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0\qc{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af7\afs80\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs80\lang1033\loch\f1\fs80\lang1033 {\rtlch \ltrch\loch\f1\fs80\lang1033\i0\b0 Bugzilla Testopia} +\par \pard\plain \ltrpar\s2\cf0\qc{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af7\afs32\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs32\lang1033\loch\f1\fs32\lang1033{\field{\*\fldinst HYPERLINK "http://www.mozilla.org/projects/testopia" }{\fldrslt \*\cs30\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\loch{\rtlch \ltrch\loch\f1\fs32\lang1033\i0\b0 http://www.mozilla.org/projects/testopia}}} \par \page\sect\sbknone\cols1\ltrsect -\pard\plain \ltrpar\s12\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b {\rtlch \ltrch\loch\f4\fs32\lang1033\i0\b Table of Contents} -\par \pard\plain \ltrpar\s13\tldot\tqr\tx8640\aspalpha\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Introduction\tab 4} -\par \pard\plain \ltrpar\s15\tldot\tqr\tx9206\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test Plans\tab 4} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test Cases\tab 4} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test Runs\tab 4} -\par \pard\plain \ltrpar\s13\tldot\tqr\tx8640\aspalpha\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Installation\tab 5} -\par \pard\plain \ltrpar\s15\tldot\tqr\tx9206\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Requirements\tab 5} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Steps\tab 5} -\par \pard\plain \ltrpar\s13\tldot\tqr\tx8640\aspalpha\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The Big Picture\tab 6} -\par \pard\plain \ltrpar\s13\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test Plans\tab 7} -\par \pard\plain \ltrpar\s14\tldot\tqr\tx8923\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Fields\tab 7} -\par \pard\plain \ltrpar\s15\tldot\tqr\tx9206\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Name\tab 7} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Product\tab 7} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Product Version\tab 7} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Type\tab 7} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Plan Document\tab 7} -\par \pard\plain \ltrpar\s14\tldot\tqr\tx8923\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Actions\tab 8} -\par \pard\plain \ltrpar\s15\tldot\tqr\tx9206\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Archive\tab 8} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Print\tab 8} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 History\tab 8} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Cloning a Plan\tab 8} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Link vs Copy\tab 9} -\par \pard\plain \ltrpar\s13\tldot\tqr\tx8640\aspalpha\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Categories\tab 10} -\par \pard\plain \ltrpar\s15\tldot\tqr\tx9206\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Name\tab 10} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Description\tab 10} -\par \pard\plain \ltrpar\s13\tldot\tqr\tx8640\aspalpha\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Builds\tab 11} -\par \pard\plain \ltrpar\s15\tldot\tqr\tx9206\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Name\tab 11} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Milestone\tab 11} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Description\tab 11} -\par \pard\plain \ltrpar\s13\tldot\tqr\tx8640\aspalpha\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test Cases\tab 12} -\par \pard\plain \ltrpar\s14\tldot\tqr\tx8923\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Fields\tab 12} -\par \pard\plain \ltrpar\s15\tldot\tqr\tx9206\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Summary\tab 12} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Alias\tab 12} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Status\tab 12} -\par \pard\plain \ltrpar\s16\tldot\tqr\tx9489\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Proposed\tab 12} -\par \pard\plain \ltrpar\s16\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Confirmed\tab 12} -\par \pard\plain \ltrpar\s16\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Disabled\tab 12} -\par \pard\plain \ltrpar\s15\tldot\tqr\tx9206\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Priority\tab 13} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Category\tab 13} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Requirement\tab 13} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Automatic\tab 13} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Script\tab 13} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Arguments\tab 13} -\par \pard\plain \ltrpar\s14\tldot\tqr\tx8923\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Dependencies\tab 13} -\par \pard\plain \ltrpar\s15\tldot\tqr\tx9206\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Action\tab 14} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Effect\tab 14} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Components\tab 14} -\par \pard\plain \ltrpar\s14\tldot\tqr\tx8923\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Actions\tab 14} -\par \pard\plain \ltrpar\s15\tldot\tqr\tx9206\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 History\tab 14} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Clone\tab 14} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Overview\tab 14} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Case Run History\tab 15} -\par \pard\plain \ltrpar\s13\tldot\tqr\tx8640\aspalpha\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Attachments\tab 15} -\par \pard\plain \ltrpar\s13\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test Runs\tab 16} -\par \pard\plain \ltrpar\s15\tldot\tqr\tx9206\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Creating a Run\tab 16} -\par \pard\plain \ltrpar\s14\tldot\tqr\tx8923\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Fields\tab 16} -\par \pard\plain \ltrpar\s15\tldot\tqr\tx9206\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Product Version\tab 16} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Plan Version\tab 16} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Manager\tab 16} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Default Tester\tab 16} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Status\tab 16} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Build\tab 16} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Environment\tab 17} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Summary\tab 17} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Notes\tab 17} -\par \pard\plain \ltrpar\s14\tldot\tqr\tx8923\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 CC List\tab 17} -\par \pard\plain \ltrpar\s14\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Overview\tab 17} -\par \pard\plain \ltrpar\s14\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Actions\tab 17} -\par \pard\plain \ltrpar\s15\tldot\tqr\tx9206\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 History\tab 17} -\par \pard\plain \ltrpar\s15\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Clone\tab 17} -\par \pard\plain \ltrpar\s14\tldot\tqr\tx8923\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Running a Run\tab 17} -\par \pard\plain \ltrpar\s13\tldot\tqr\tx8640\aspalpha\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Tags\tab 18} -\par \pard\plain \ltrpar\s13\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Environments\tab 18} -\par \pard\plain \ltrpar\s13\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Searching\tab 19} -\par \pard\plain \ltrpar\s13\tldot{\*\tlswg11820}\tqr\tx8640\aspalpha\ql\rtlch\af10\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Getting Help\tab 20} -\par \sect\sbknone\cols1{\*\swcolmnblnc}\ltrsect -\pard\plain \ltrpar\s7\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs32\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b -\par \page\pard\plain \ltrpar\s7\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs32\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b {\rtlch \ltrch\loch\f4\fs32\lang1033\i0\b Introduction} -\par \pard\plain \ltrpar\s1\aspalpha\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Welcome to Bugzilla Testopia, the place where all tests are happy. :-)} -\par \pard\plain \ltrpar\s1\aspalpha\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Testopia is an extension to the Bugzilla bug tracking system designed to track testing efforts for products. Though it is designed with software testing in mind, it can be used to track testing on virtually anything in the engineering process. } -\par \pard\plain \ltrpar\s1\aspalpha\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s1\aspalpha\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 As an extension to Bugzilla it integrates closely with bug tracking every step of the way. Testopia provides the ability to link your bugs with the tests that verify those bugs are addressed and visa versa.} -\par \pard\plain \ltrpar\s1\aspalpha\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s1\aspalpha\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Testopia takes a standard black box testing approach. The major objects of testopia are divided into three classes. } -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Test Plans} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test plans are the top level documents that lay out a testing procedure. In Testopia. plans are used to organize test cases and test runs. } -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Test Cases} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test cases are the meat of any testing process. These detail the steps to verify that the subject passes muster as well as the expected results. } -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Test Runs} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test runs are the cumulative results of running a course of test cases against a particular version or build of a product. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Each of these objects is set within the framework of Bugzilla (i.e. Products, Components, Milestones etc) and Testopia relies heavily upon them.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 There are also a number of other objects in Testopia that support the big three. We will look at each in turn as we progress through the tour. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 So, shall we get started?} -\par \page\pard\plain \ltrpar\s7\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs32\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b {\rtlch \ltrch\loch\f4\fs32\lang1033\i0\b Installation} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Testopia is an extension to Bugzilla. It goes without saying then that you should have Bugzilla up and running first. Instructions for installing Bugzilla can be found at bugzilla.org as well as in the package you downloaded. Basically all you need is to u +\pard\plain \ltrpar\s14\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b Table of Contents} +\par \pard\plain \ltrpar\s15\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Introduction\tab 4} +\par \pard\plain \ltrpar\s17\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test Plans\tab 4} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test Cases\tab 4} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test Runs\tab 4} +\par \pard\plain \ltrpar\s15\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Installation\tab 5} +\par \pard\plain \ltrpar\s17\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Requirements\tab 5} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Steps\tab 5} +\par \pard\plain \ltrpar\s15\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The Big Picture\tab 6} +\par \pard\plain \ltrpar\s15\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test Plans\tab 7} +\par \pard\plain \ltrpar\s16\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Fields\tab 7} +\par \pard\plain \ltrpar\s17\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Name\tab 7} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Product\tab 7} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Product Version\tab 7} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Type\tab 7} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Plan Document\tab 7} +\par \pard\plain \ltrpar\s16\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Commands\tab 8} +\par \pard\plain \ltrpar\s17\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Archive\tab 8} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Print\tab 8} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 History\tab 8} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Cloning a Plan\tab 8} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Link vs Copy\tab 9} +\par \pard\plain \ltrpar\s15\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Categories\tab 10} +\par \pard\plain \ltrpar\s17\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Name\tab 10} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Description\tab 10} +\par \pard\plain \ltrpar\s15\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Builds\tab 11} +\par \pard\plain \ltrpar\s17\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Name\tab 11} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Milestone\tab 11} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Description\tab 11} +\par \pard\plain \ltrpar\s15\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test Cases\tab 12} +\par \pard\plain \ltrpar\s16\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Fields\tab 12} +\par \pard\plain \ltrpar\s17\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Summary\tab 12} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Alias\tab 12} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Status\tab 12} +\par \pard\plain \ltrpar\s18\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Proposed\tab 12} +\par \pard\plain \ltrpar\s18\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Confirmed\tab 12} +\par \pard\plain \ltrpar\s18\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Disabled\tab 12} +\par \pard\plain \ltrpar\s17\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Priority\tab 13} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Category\tab 13} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Components\tab 13} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Default Tester\tab 13} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Requirement\tab 13} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Automatic\tab 13} +\par \pard\plain \ltrpar\s18\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Script\tab 13} +\par \pard\plain \ltrpar\s18\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Arguments\tab 14} +\par \pard\plain \ltrpar\s17\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Dependencies\tab 14} +\par \pard\plain \ltrpar\s18\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Depends On\tab 14} +\par \pard\plain \ltrpar\s18\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Blocks\tab 14} +\par \pard\plain \ltrpar\s17\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Action\tab 14} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Expected Results\tab 14} +\par \pard\plain \ltrpar\s16\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Commands\tab 15} +\par \pard\plain \ltrpar\s17\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 History\tab 15} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Clone\tab 15} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Overview\tab 15} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Case Run History\tab 15} +\par \pard\plain \ltrpar\s15\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Attachments\tab 15} +\par \pard\plain \ltrpar\s15\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test Runs\tab 17} +\par \pard\plain \ltrpar\s17\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Creating a Run\tab 17} +\par \pard\plain \ltrpar\s16\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Fields\tab 17} +\par \pard\plain \ltrpar\s17\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 CC List\tab 17} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Product Version\tab 17} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Plan Version\tab 17} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Manager\tab 17} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Status\tab 17} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Build\tab 18} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Environment\tab 18} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Summary\tab 18} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Notes\tab 18} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Overview\tab 18} +\par \pard\plain \ltrpar\s16\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Commands\tab 18} +\par \pard\plain \ltrpar\s17\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 History\tab 18} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Clone\tab 18} +\par \pard\plain \ltrpar\s16\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Running a Run\tab 18} +\par \pard\plain \ltrpar\s15\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Tags\tab 19} +\par \pard\plain \ltrpar\s15\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Environments\tab 20} +\par \pard\plain \ltrpar\s15\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Searching\tab 20} +\par \pard\plain \ltrpar\s15\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The Testing Life Cycle\tab 20} +\par \pard\plain \ltrpar\s17\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Create a Test Plan\tab 20} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Create or Select Test Cases\tab 20} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Start a Test Run\tab 21} +\par \pard\plain \ltrpar\s17\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Cleaning Up\tab 21} +\par \pard\plain \ltrpar\s15\cf0\tldot\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Glossary\tab 22} +\par \pard\plain \ltrpar\s15\cf0\tldot{\*\tlswg11820}\tqr\tx8640{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Getting Help\tab 25} +\par \sect\sectd\sbknone\pgwsxn12240\pghsxn15840\marglsxn1800\margrsxn1800\margtsxn1440\margbsxn1440 +\pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b +\par \page\pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b Introduction} +\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Welcome to Bugzilla Testopia, the place where all tests are happy. :-)} +\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Testopia is an extension to the Bugzilla bug tracking system designed to track testing efforts for products. Though it is designed with software testing in mind, it can be used to track testing on virtually anything in the engineering process. } +\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 As an extension to Bugzilla it integrates closely with bug tracking every step of the way. Testopia provides the ability to link your bugs with the tests that verify those bugs are addressed and visa versa.} +\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Testopia takes a standard black box testing approach. The major objects of testopia are divided into three classes. } +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Test Plans} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test plans are the top level documents that lay out a testing procedure. In Testopia. plans are used to organize test cases and test runs. } +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Test Cases} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test cases are the meat of any testing process. These detail the steps to verify that the subject passes muster as well as the expected results. } +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Test Runs} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test runs are the cumulative results of running a course of test cases against a particular version or build of a product. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Each of these objects is set within the framework of Bugzilla (i.e. Products, Components, Milestones etc) and Testopia relies heavily upon them.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 There are also a number of other objects in Testopia that support the big three. We will look at each in turn as we progress through the tour. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 So, shall we get started?} +\par \page\pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b Installation} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Testopia is an extension to Bugzilla. It goes without saying then that you should have Bugzilla up and running first. Instructions for installing Bugzilla can be found at bugzilla.org as well as in the package you downloaded. Basically all you need is to u nzip the package and run checksetup.pl and follow any instructions that come up.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 You can run Bugzilla on either Linux or Windows operating systems, though Testopia has not been thoroughly tested on Windows yet.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Beyond the required packages for Bugzilla, in order to install Testopia you should first make sure you have the following requirements met.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Requirements} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Bugzilla 2.20 (Currently the only version tested with Testopia 1.0, however this does not mean it won't work with other versions)} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Text::Diff Latest version should work} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 As far as databases are concerned, Testopia just adds a number of tables to the existing Bugzilla database. Currently Testopia only supports Mysql as a database. By this we mean it is the only one tested as of version 1.0 although there is no real reason i +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 You can run Bugzilla on either Linux or Windows operating systems, though Testopia has not been thoroughly tested on Windows yet.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Beyond the required packages for Bugzilla, in order to install Testopia you should first make sure you have the following requirements met.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Requirements} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Bugzilla 2.20 (Currently the only version tested with Testopia 1.0, however this does not mean it won't work with other versions)} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Text::Diff Latest version should work} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 As far as databases are concerned, Testopia just adds a number of tables to the existing Bugzilla database. Currently Testopia only supports Mysql as a database. By this we mean it is the only one tested as of version 1.0 although there is no real reason i t shouldn't work with PostGres (the other database engine officially supported by Bugzilla). We just don't have any table creation scripts for it yet. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Testopia has been tested on Mysql 4.1 and 5.0. Bugzilla requires 4.1 as of 2.20.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Steps} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f2\f9\aspalpha 1.\tab}\ilvl0 \ltrpar\s3\ls0\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Copy the testopia tar ball into your bugzilla's root directory.} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f2\f9\aspalpha 2.\tab}\ilvl0 \ltrpar\s3\ls0\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Untar } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033{\rtlch \ltrch\loch\f6\fs24\lang1033\i0\b0\*\cs41\rtlch\ltrch\dbch\hich\f6\fs24\lang1033\loch\f6\fs24\lang1033 tar xzvf testopia-.tar.gz} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f2\f9\aspalpha 3.\tab}\ilvl0 \ltrpar\s3\ls0\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Run tr_install.pl } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033{\rtlch \ltrch\loch\f6\fs24\lang1033\i0\b0\*\cs41\rtlch\ltrch\dbch\hich\f6\fs24\lang1033\loch\f6\fs24\lang1033 perl tr_install.pl} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The install script sets up the database tables, patches your code, and sets up three new groups: managetestplans, edittestcases, and runtests.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If the patch fails, you may want to patch the files by hand. There are only 4 small changes to the Bugzilla 2.20 code.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 You should now be able to See the testopia links in the Bugzilla footer. Make sure you set up your the new testopia user groups to include whomever is going to need access to test cases. } -\par \page\pard\plain \ltrpar\s7\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs32\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b {\rtlch \ltrch\loch\f4\fs32\lang1033\i0\b The Big Picture} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 We will start with the 10,000 foot view and zoom in from there. This section is called the big picture since, well, it is a big picture.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 As you can see, Testopia objects are arranged in a hierarchy under products. At the top are test plans. From a test plan it is possible to create test cases and test runs. Test cases are broken up by categories which are associated with products. Test cas +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Testopia has been tested on Mysql 4.1 and 5.0. Bugzilla requires 4.1 as of 2.20.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Steps} +\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120 1.\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Copy the testopia tar ball into your bugzilla's root directory.} +\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120 2.\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Untar } +\par \pard\plain {\listtext\pard\plain \li1080\ri0\lin1080\rin0\fi-360\sa120 \tab}\ilvl1 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f6\fs24\lang1033\i0\b0\*\cs33\cf0\rtlch\ltrch\dbch\hich\f6\fs24\lang1033\loch\f6\fs24\lang1033 tar xzvf testopia-.tar.gz} +\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120 3.\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Run tr_install.pl } +\par \pard\plain {\listtext\pard\plain \li1080\ri0\lin1080\rin0\fi-360\sa120 \tab}\ilvl1 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f6\fs24\lang1033\i0\b0\*\cs33\cf0\rtlch\ltrch\dbch\hich\f6\fs24\lang1033\loch\f6\fs24\lang1033 perl tr_install.pl} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The install script sets up the database tables, patches your code, and sets up three new groups: managetestplans, edittestcases, and runtests.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If the patch fails, you may want to patch the files by hand. There are only 4 small changes to the Bugzilla 2.20 code.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 You should now be able to See the testopia links in the Bugzilla footer. Make sure you update the new testopia user groups to include whomever is going to need access to test cases. } +\par \page\pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b The Big Picture} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 We will start with the 10,000 foot view and zoom in from there. This section is called the big picture since, well, it is a big picture.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par +\pard\plain\absw9538\absh7414\pvpara\posyt\phcol\posxc{\*\flymaincnt69\flyvert15457\flyhorz56834\flyanchor0\flycntnt}{\pict\picscalex101\picscaley101\piccropl0\piccropr0\piccropt0\piccropb0\picw629\pich489\picwgoal9435\pichgoal7335\wmetafile8 +89504e470d0a1a0a0000000d4948445200000275000001e90806000000e4bbcaf100000006624b474400ff00ff00ffa0bda7930000000774494d4507d6060214 +1821f8a7eb120000200049444154789cecdd79784c77fbc7f17756b1c61e4b6421b48fbd22b46910114b10a59458ab768de52154ac91a02d825aabad0ad528b5 +95a249446a27151a8d58132462a79208b2cfef0fbf99a72a0826393393fb755d2e3373ce9cf964929cdcf33de77c6f23954aa5420821841042e83563a5030821 +841042883727459d10420821840190a24e08218410c200485127841042086100a4a81342082184300052d40921841042180029ea84104208210c801475420821 +841006408a3a21841042080320459d10420821840190a24e08218410c200485127841042086100a4a81342082184300052d40921841042180029ea8410420821 +0c801475420821841006c054e9004208a16beeddbbc781030748484820232343e93885cac2c2021b1b1b5ab56a45f9f2e5958e238a88c4c4447efae92776ecd8 +417c7c3cb76edd523a52a1b2b0b0c0d6d616272727faf4e943bb76ed30313179e5ed18a9542a5501e42b34274f9e24383898f0f070121212484949513a52a1b2 +b4b4c4d6d616777777faf6ed4b93264d948e2484dedab3670f4b962c21343494acac2ca5e328cacccc0c0f0f0f468f1e8dbbbbbbd2718481ba71e306bebebe04 +0707939393a3741c9d616767c7975f7e49af5ebd5ee9797a5bd49d3c7992d1a34773e4c811a5a3e814676767962e5d2ac59d10af202929096f6f6f76ecd80140 +850a6569d9d2115bdbaa142b66ae70bac2959e9e4162e24df6ef8fe2efbf9f7c48eed6ad1bcb962da35ab56a0aa71386e4d75f7fa56fdfbe3c78f080b2654b33 +6c580fba7cd09a5ab56a60655541e978852a3d3d8384841b1c3f7e9aefbeddccc1832701f8e0830ff8f1c71f2955aa54beb6a377459d4aa562f6ecd9cc9c3993 +dcdc5c6ad5aac1c84f7be1eefe2eb6b6d5b0b4ccdf176e285252d24848b84e78f831be5eb191f8f8ab181b1b3373e64ca64d9b86919191d21185d069274e9ca0 +4b972e5cbf7e9daa552b316bf628faf7f7c4ccac689f9d929595cdba75bf327dda326edcb883b5b5353b77eea451a3464a471306e0bbefbe63e4c891e4e4e4d0 +bbb7078b974ca662c5b24ac7d219dbb6ed65f8b000eedebd4f93264d888888c0d2d2f2a5cfd3aba24ea5523168d020d6ac598389890901b3bcf1f1f918737333 +a5a3e984cccc2c162c58cb8ce9cbc9c9c961e0c081ac5ebd5a0a3b219e232e2e8e66cd9a71fffe7ddab469cecf9b1650ae5c19a563e9947bf792e9d17d3cfbf7 +4751a952258e1c3982838383d2b1841e8b8888a07dfbf6e4e4e4307bce68264f1ea274249d141f7f95ce9dbc397ffe0aeeeeee848484bcf43c3bbd2aea020202 +f0f3f3a34c99526cd8389f0e1dde573a924e0a09398c57af89a4a6a6e1efefcf8c1933948e2484ce494f4fa751a3465cb870812e5d5cd9b47961911f9d7b9ecc +cc2c7a7ee4c38e1dfba853a70ea74e9dc2c2c242e958420fa5a5a5f1f6db6f73edda35a64c19c2ec3963948ea4d392926ed1cca937376fde65f1e2c58c19f3e2 +f74b6f8abaa8a8289a376f8e919111bfee5c2605dd4b84841cc6b3f328542a15919191346dda54e94842e89459b3663163c60c9c9ceaf3fbbed594282145ca8b +3c7a948ecbfb03888e3ec7e79f7fcee4c993958e24f4d0b469d39833670e1e1e2eecdcb55c8e24e5c3c18327716df509969696c4c5c551a1c2f3cf37d49ba2ae +458b161c3a748859b3473375ea50a5e3e8853973be63fab4a5b8b8b870f0e041a5e308a133525252b0b6b6263dfd3127ffdc44fdfa7238313fa2a3cfe1d4b437 +254a94e0faf5ebf93e795b0880cccc4caa56ad4a5ada03624e6fa3766d1ba523e98d811f4fe5871f7e65d1a245fcf7bfff7dee7a7a31f9f0c993273974e8100e +0e364c98f0b1d271f4c684091fe3e060c3a143873879f2a4d27184d0195bb66c212d2d8ddebd3b4a41f70a1a377e1b2faf0e3c78f0802d5bb6281d47e8999090 +10fefefb6f3a74785f0aba57347a4c5f007efcf1c717aea717455d707030002346f62c72d30bbc8962c5cc1931b227f0bff75008019b366d02a0779f8e0a27d1 +3fbdbc3a00b079f3668593087db377ef5e00dcda34573889fe7174ac4bb972653871e204f7efdf7fee7a7a51d485878703e0eefeaec249f48ffa3d53bf874208 +888d8d05a05ebd5a0a27d13ff5ebd706e0f4e9d30a2711fae6ca952b00d8d9555736889eb2b1a90a3ce9bef13c7a51d425242400606b2b135fbe2af57ba67e0f +851070fdfa7500aa55abac7012fd53bdfa93f7ecdab56b0a27114ac9cccce4754ec7fffbefbf01285ffee5f3ad8967952e5d0280070f1e3c771dbd28ead4adbf +8adac4c2daa07ecf5eb77d5a6a6aaa36e308a113d4ed884c4cf46217a853d4d3be14f5366a455dd7ae5dd9b66ddb6b1577a2e0c81e4de469f7eeddb46ad58ab4 +b434a5a3082184d021e6e6e674ecd8910f3ffc10636363366dda446e6eaed2b10452d4897f090909c1c8c8884e9d3ad1a85123e9f5288410e2199f7cf289e676 +cf9e3d69dcb8313ffffc73a1157766a68de9fac1b313f18e181e80996963cdfd7e7d7d9f7aceeb1a3674e66b3fb7301589a2ee8f3f4ed3aeed301c6a75a4a67d +07dc5a0f2634f488d2b15e5b41fc70858585e1ecec8c878787e6b149932669fd7584280acc4c1b53dba113b51d3a616bd30ed7569f70f1e2f34f6e7e99e216af +3f79b8befc3112fac5dcdc9c65cb9669eec7c4c4d0ab572f1a366cc8860d1b0aa5b8fbf3cf73dcb8714773fff1e30c2222fe78aa95d68fc15f6ae5b5d6addba9 +95ed1434832feaa2a262e9d5730233fc461217bf9b4b9743983b6f1cbfeef85de968af4d9b3f5c616161b8b8b8d0be7d7b8e1e3daa79fc934f3ea17a75b94249 +88d775316e1717e376919018c6c04fba3e35625098f4e58f91d03fc3860dc3dedefea9c7626363e9ddbb37f5ebd767fdfaf5055adcf5eddb89b56b7768ee6fdd +1a4ee7ce2d9fea5291d7e8dceddb7fd3d1632435ed3bd0a07e37f6ed3bae59f6e38f3b79fb2d4f6a3b74a261830f090afa85da0e9dc8cccca243fb112426dec0 +e5fd01d4aae941cb161f9394744bf33a8b1707d3b0c18754abeac68f3fee7ce96b1504832fea664c5fc6fc401f5c5cded13ce6e4549f65cba7bef09b33c12790 +6a55dd9835eb1b06f49f42d52aadf9fcf3559a6d98993666ec982fa953bb334d1d7b71e9529256bfd9cf7bce3f7fb8de447878b8a6983b7cf8f053cb8a152b46 +4040c01b6d5f08f13f5e5e1d888d8dd3dc37336dccfcf96ba8edd0898b17139fd96f5cba944453c75ed476e8c4f061fe4f6debdf7fa4d4a378f7ee25f3518ff1 +d8db75a0564d0f162efc416bfb0b21f2626666c6d4a953f35c76f6ec59faf6ed4bddba75f9f1c71f35172769d32783bab126e817cdfd3541bf30f093ae2f7dde +28ef39f41fd0854b9743d8ba6d31033f9e466666d6ff2ffb9cddbf7dcdc5b85d1c3d164c8b164db818b70b737333424257327ad4e7f4eed391f84bbfd1a76f27 +c68cfe42b3dd72e5caf057cc56b66efb8a093e812f7dad8260f0ddab8f1e3dc5cf9b16e4b94cfdcdf1f6f662e5ca9f1933fa0bb66efb0a804e9d5b326a741f6a +d5f4e0e49f3fe31fe04df366bd99326588e6f9ed3bbccfe225beac58b191d1a33ec7d4d4e4b9db537fb38f1dfb8bae1f8ca15fbfce9a6f76efde1e5cbc98485b +f7a15cb8b8137373b3e73ee762dc2e8a5b34252474e56bbd1f111111f8f9f971e8d0a1e7ae3368d020acadad494949299421f4478f1e91919151e0af939999c9 +c3870f0bfc75542a15c9c9c905fe3af0e4eae482d859fedbe3c78f494f4f2ff0d7c9caca32b88b73542a152b576ea2458b264f3d7eefee7d2ec6ede2832ea39f +d96fa4a767f0c9a06e787b7b71f0e04982fef187eb79bc3f9dc35b6fd9b169f342b2b373484cbcc1f8f103de687ff1325dbb76a574e9d29429538652a54abd56 +1f4f6dfebe68735bb9b9b9af3d6b40416e2b2727476bb31268735bcf73fefc79faf7efcfac59b3b4beeddab56da85ab512fbf61dc7debe3ac9c90f68d8b0ce4b +9f1716769498988b04f87f0d40464626972f5fe3adb7ec1830c0930eed47d0b1630b3a78b8d0aedd7b4f3d77fffe13fcb0ee4921d7bfbf27937dbfd22c1b30c0 +138077df6d484a4ada4b5fab20e845ef57f58e2257f5d72b3fd7b2cc7bdcb8f97b9ecdbacb5a3a93901886a565291e3e7c8c75f536dc4f3e82996963b2b2a381 +279f821fa7473d73fb9feb3c7cf898aa555a636c6cfcd2edfd733b652d9da95ab5a2e6f1e4e407ecdb1fc45b6fd93df739ffbe9d1fc6460d0168d9b225070e1c +c8f7f3843074afb34fc90f33d3c638383c698394999945a3466fb17cc554aa56ada4599e746d2f565615f2dc0f6567e770edfa5eca94793225d1f3f63dff5c56 +d6d299c4ab619ae7fc7bb936a9f72942e457cd9a35313131e1e2c58b1c38b8f6a9a367af43fd7bb06eddafec093b4a2d871a942f6fc9e8d17d9efbfba2be5dae +ac335712c29e3b4dda8d1b77d8b72f8a1fd7fd8aa9a909db772c7deaf7ec4a422865cb96262ded1135acdd5ff877fe65aff52a5ab6f8984387fee4e0c183b8b8 +b8e4b98ec18fd43939d5233cfc185dbab8e6b95c5dd3be496dab52a9303333252727f795b6676404c722d717dafc7bff3c79343fca9429f3cacf791d254a94a0 +58b16205fe3a66666685d280dcc8c888b265cb16f8eb00942e5d1a53d382ff352e5ebc381616cf7e30d2365353534a972e5de0af3377eedc027f8db3e776bc70 +b9955505cded7fef37cccc4c79d12e44a5523d332a666c6cf4c2e71484faf5eb93929242727232696969cfddef152f5e9cca952b636d6d8d8d8d0d356ad4a07c +f9f280767f5fb4b92d6363632c2db53349ae36b76562624299326574665bdbb76f7fea4ad87fb3b7b767dab4690c183080d6ad5b73f1e2c5377abd7febd1a31d +933e5bc4d1a3a7381699bf76981e1e2e2c085c837f80374646461c3c7892860deb6069598a98988bd4ab578bdebd3d70717987771a7f043cf99dccc8c8c4d5b5 +294141bf306e5c7f56afde86ababd36bbf564130f8a26e86df48067e3c95aa552be2e4541f80e8e8732c5cf003cece8d5ee99bf36fbffd76080f0f17d6aedd41 +ebd6cdc8cece2e946fb6fa87eb55fbe046444470e0c001fcfdfd89888878ee7a03070e242828e895b62d843e298ca22ebff2fa23a152a9f8fefbad8c1f3f80c3 +87ff7cea107bf9f2961c3e1c8d8bcb3b0407efd22cebdcb915f3e6ae66f69cd1e4e4e472eedc65ead77778edfd457ec4c4c4686e67666672edda352e5fbecc99 +3367888d8de5dcb9739c3e7d9abb77ef92909040424282e61cdeca952bd3bc79739a376f4e83060d7072722a940f28427b542a150b172ecc73999d9d1d53a74e +e5e38f3fc6ccccacc032142f5e8c6edddcb87dfb6f2a54c85f41bf74d914460c0fa0a6bd07c6c646346efc364b974dc1d2b2145fafd84878f8318c8ca078710b +bef9d60f80eedddd716cd28b9dbb96d3afaf2f4b970453bdba15c1eb5f7c75ed8b5eab2018fce15780fdfba3f09bb19ca4a45be4e6e652a34615c6fb7ccc3bef +bc4d9fde93b87efdb6e69b63635335df875f070ffe90f0f06354a85096cd5b16a252a95ebabd7f6ee7debd64460c0f202aeacc53dfec6ad52abdf0f0eb2703a7 +71fc782c7fc56cc1d8f8e5d7baa80f95fcf35b7de8d021020202d8b367cf33eb9b9a9a72f6ec591c1c1c5ef5ad16422fbce93ee565fefdfbfba2e58989379ed9 +6fe4e4e4d2f3231feedf4fa54d9be6fcf0c3af9adfffb56b77e03b6911952a9563e0275d993a65098fd3a3484e7ec0f061fefcf1c7694c4d4df8645037a64c19 +f2cafb8bfcc86b9ff22277eedc21262686e3c78f131919496464a4a6559b9aa5a525ad5bb7a66ddbb6b8bbbb53a7cecbcf8d12cadabc79331f7df4d1538fd9da +da3265ca14060e1c88b9f9d31f245ab468c1a14387b472f8b528cacfe1d72251d4158497edb475c98b76c0870f1f26202080b0b0b0a71eefd4a9133b77ca5408 +c230e9e23e459fbc6a519797c4c4442223233976ec187bf7eee5afbffe7a6a7b767676787a7ad2bd7b775c5c5c0ae55410917f2a95eaa90f09d6d6d64c9e3c99 +2143863c53cca94951f766f253d419fc9426e2c5de7fff7d4243433972e4081d3a74d03cbe6bd72e2e5cb8a06032218421b3b1b1e1a38f3e62c1820544474773 +f3e64d82838319387020d6d6d65cb97285a54b97e2eaea4ab56ad5183e7c38616161d27356476cdfbe5d733b303090b8b8383efdf4d3e71674a2704851f79af4 +65942ebfde7bef3d7efbed378e1d3b46850a4f4ee02e884bd08510222f952b57a64f9f3e04050571f5ea55626363f9fcf3cf717474e4f6eddb7cfbedb7b46fdf +9e2a55aa307af4684e9c38a174e4224ba552b16ad52a162f5ecce3c78ff1f1f129948bddc4cb4951279ed2bc7973eedebd4b646424a9a9a9325a27845044ddba +75993c79325151515cbe7c99050b16e0ecec4c727232cb962da369d3a6346cd890458b1671fbf66da5e316295959596cdab4893163c614ca55f122ffa4a81379 +6ad6ac19dbb76fc7d6d656e92842689dfafcac9c9cc2693e6e48b2b2b2010af48ac67fb3b3b363fcf8f11c3e7c98c4c44466cd9a45ad5ab588898961fcf8f158 +5b5bd3a3470f9987b390989b9b53bc78f1577e9e7a1a9bbfffd6ce44cc45cd83078f005e38ed935e1475eaf97dd433348bfc53bf67af3b47920ca90b4354ad5a +3500ae5f97119e5775edda93f74ca9ded0d5ab5767dab4695cbc7891fdfbf73370e0408a152bc6962d5b68d5aa158e8e8efcf0c30f85d2a546bc1a3b3b3b00ae +5cb9a66c103d9598780378723eeaf3e84551a71e2d4a48b8fe9235c5bfa9df33197113e27fead5ab07406c6cbcc249f4cfe9d34f268fad5fbfbea2398c8c8c68 +d9b225414141dcb87183efbefb8e060d1a70f2e4493efef863ecececf0f7f79743b33aa44d9b360044ec8d543889fe3971e20cf7efa7e2e8e848b972e59ebb9e +5e1475eeeeee0084871f533889fe51bf67eaf7500881666ead9fd6ef563889fed9b82104801e3d7a289ce47f4a952ac5902143f8ebafbf080f0fc7d3d393dbb7 +6f3373e64cecededf1f1f1e1d6ad5b4ac72cf23a74e840f9f2e5090939ccc58b894ac7d12b4b973ce996d1af5fbf17aea717f3d49d3c79124747471c1c6c8839 +bdb5406646374419199934a8ff217171899c387182264d9abcfc49421401292929585b5b939efe98937f6ea27e7d99683b3fa2a3cfe1d4b437254a94e0faf5eb +85d276ef75c5c5c5b178f16256ad5a457a7a3ac58b1767f8f0e17cf6d96754ad5a55e97845d6b469d39833670e1e1e2eecdcb5fc997677e259070f9ec4b5d527 +585a5a121717a799a1222f7a3152d7a449135c5c5c888b4b243070add271f44660e05ae2e21271717191824e887fb0b4b4e4b3cf3e233b3b87c18366f0e851ba +d29174dea347e90cfa64063939394c9e3c59a70b3a00070707962e5d4a7c7c3c63c78e05e0abafbea256ad5a8c1933861b376e289cb068f2f5f5a57af5eafcf6 +db21a64f5baa741c9d9794748b5e3d27a052a9f0f7f77f6141077a32520710151545f3e6cd313232e2d79dcbe8d0e17da523e9b49090c378761e854aa5223232 +92a64d9b2a1d49089d929e9e4ea3468db870e1025dbab8b269f342cccca4f7685e3233b3e8f9910f3b76eca34e9d3a9c3a754aefa6b2b875eb16f3e6cd63e5ca +953c7af48852a54ae1ebebcbf8f1e35feb4a4ef1fa22222268dfbe3d393939cc9e339ac99387281d4927c5c75fa573276fce9fbf82bbbb3b2121212fedaca217 +2375004d9b36c5cfcf8f9c9c1cbc7a4d2424e4b0d291745648c861bc7a4d242727073f3f3f29e884c883858505bb76eda25cb972ecd8b18f8e1e23b97f3f55e9 +583ae7debd64dab71bce8e1dfba854a912bb76edd2bb820ec0caca8a050b16101717c7902143484f4f67dab469bcfdf6db040505919b2bd3db141637373756ac +5881b1b13153a72ca16f9f49dcbd9bac742c9db26ddb5ede7bb71fe7cf5fa14993266cdebc395fadf2f466a40e9ecc623d68d020d6ac598389890901b3bcf1f1 +f91873f3c29b2f4997656666b160c15a664c5f4e4e4e0e03070e64f5ead572ce82102f70e2c409ba74e9c2f5ebd7a95ab512b3668fa27f7fcf223f6a979595cd +ba75bf327dda326edcb883b5b5353b77eea451a3464a47d38a3367cee0e3e34348c8930b3fde79e71d162f5e4c8b162d144e5674fcfaebaff4eddb97070f1e50 +b66c69860deb41970f5a53ab560dacac5e7c98d1d0a4a76790907083e3c74ff3ddb79b3978f024001f7cf0013ffef863be4f77d0aba20e9e1476b367cf66e6cc +99e4e6e652ab560d467eda0b77f777b1b5ad86a5a56e9fe7a16d29296924245c273cfc185fafd8487cfc558c8d8d99397326d3a64d93824e883c2426263e35d7 +53525212dededeecd8b103800a15cad2b2a523b6b655b1aa5251a9988ab879e30e898937d9bf3f4a33496cb76edd58b66c99667e3f4312121282afaf2fa74e9d +c2c8c888810307327ffefc979ebb24b4e3c68d1bf8fafa121c1c4c4e4e8ed27174869d9d1d5f7ef925bd7af57ab527aaf4d489132754cecece2a40fefde39fb3 +b3b3eac489134a7f7b84d049494949aa8e1d3baa2a57aeacba73e7ce33cbc3c2c2549d3b775699999929febbacf43f33333355972e5d547bf6ec51e03b55b8b2 +b3b3558b172f56952e5d5a05a82a56aca85ab3668d2a373757e9684546424282eacb2fbf54393b3babacacac14fff92fec7f161616aab7de7a4bd5af5f3fd5ee +ddbb55d9d9d9aff53eeadd48ddbf9d3c7992e0e060c2c3c34948482025a568b51fb1b4b4c4d6d616777777faf6ed2b57b90af11c4141418c1b378e949414ca97 +2fcfb66ddb68d9b2659eebdebb778f03070e909090c0cd9b370b3929cc9d3b178049932615fa6b57ad5a151b1b1b5ab56aa569eb54545cbb768db163c7b265cb +16005c5d5d59b972256fbdf596c2c94461f0f3f363c992255cb972e5b5bb30294def8b3a5da03ec4296fa510ba27292989a143876ace9dfae0830ff8faebaf75 +76aeb2acac2ccccdcd31333323333353e93845d2ce9d3b19356a14090909142f5e9cb973e7326ad428399dc5802527276b3a354c9932853973e6289ce8f5e8cd +d5af4208f12a542a15ab56ada27efdfa84848450be7c797efcf1477ef9e5179d2de8001e3d7ad2b4bb4489120a2729ba3a77ee4c6c6c2c9f7efa29e9e9e98c19 +3386f6eddb73f5ea55a5a38902b268d122cded152b56e8ed513f29eab4c0dcfc49870b69202d846e484c4cc4c3c383a1438792929242b76edd3873e60c7dfbf6 +553a9ad013254b9664f9f2e584848450bd7a75f6ecd943a3468d080e0e563a9ad0b2e4e464162f5efcdcfbfa448a3a2d504f5c999e2eb3d20ba124954aa569ec +1e1a1a4ac58a1559bf7e3d5bb76ec5caca4ae978420fb56bd78ebffefa0b2f2f2feedfbf4fbf7efde8d7af1f6969694a47135ab268d1a26746e6f27a4c1f4851 +27843008090909b46bd78e61c386919a9a4af7eedd898d8da577efde4a47137aae7cf9f2fcf4d34fac5fbf9e3265ca101c1c8c93931367ce9c513a9a7843cf1b +95d3d7d13a29ea84107a4da552b172e54a1a346840787838952a5562e3c68d6cdebc99ca952b2b1d4f1890debd7b13151545e3c68d3977ee1ccd9b3797c3b17a +ee452372fa385a27459d10426f5dbe7c19777777468e1cc983070fe8d9b327a74f9fa667cf9e4a477b6deac37af99d415e14aedab56b73f4e851060f1e4c5a5a +1afdfaf563f8f0e1724eb51e7ad9689c3e8ed649512784d03b2a958a152b56d0b06143222222a85cb9329b366d62e3c68d7a3f3aa79e553f3f7d1e85322c2c2c +58b56a15414141942851826fbffd16777777eedebdab7434f10af23312a76fa37552d40921f4caa54b97707373c3dbdb9bb4b4347af5ea456c6c2c3d7af4503a +9a2862060e1cc8d1a347b1b1b1e1d0a143346bd68cd8d858a563897c484e4e262020205febe9d3689d14755a606afaa4f177565696c24984305cb9b9b92c5bb6 +8c860d1bb26fdf3eacacacd8ba752b1b366ca062c5a2d59f55e88e860d1b121919c97befbdc7e5cb9779fffdf7090d0d553a9678897f1774eddab5a361c38600 +0c1d3af4a96e2a7e7e7e7a335a27459d16942c5912f8dfa4a14208ed8a8f8fc7cdcd8dd1a347f3f0e143faf4e9436c6c2cddba75533a9a1054a95285888808bc +bcbc484949a153a74e2c5fbe5ce958e23992939359bd7a3500e5ca95e3f0e1c384868652a64c1900060c18c0952b57983d7bb6e639fa325a27459d104267e5e6 +e6b278f1621a366cc8fefdfba952a50abffcf20bc1c1c154a85041e97805423de26f6666a67012f12a2c2c2c58bf7e3dfefefee4e6e6326ad42866ce9ca9742c +9187458b16d1bc79730e1f3eccdf7fff8db3b3f333eb942e5d9aa953a7929a9acaecd9b359bb76ad5e8cd649512784d049172f5ec4d5d595fffef7bf3c7af488 +7efdfa111b1bcb071f7ca074b402256dc2f4979191113366cc60cd9a35989a9ae2efefcfe8d1a3c9cdcd553a9af8879e3d7b121a1a9a6731f76feae22e3a3a9a +d4d4d44248f766a4a81342e894dcdc5c162d5a44a3468d3878f020d5aa5563c78e1dac5bb7eea9f35c84d05503060c60cb962d585858b06cd932faf7ef2fe75c +eb907af5eabdf2734a972e4d8d1a350a208d7619a9542ad58b5658ff1a5f7c5133e6e245ee6565b1a4766d2ac82113215edb8dcc4cbebd7e9d0bff3f5ad5c2d2 +92fe55aa50b2084def71352303dff8786a142bc697b56a291d47bc81b30f1fb2e0ea551ee7e6f24ea9528ca95103732323a56389e708b87285f38f1e31c3ce8e +b7141c29eff3065750cb489d104271b9c0ee7bf798121fcf85478f28676aca041b1b4654af5ea40a3a6158fe53b22453edec286362c29f69697c75f52ad92f1e +4711e28d98e677c537a91c0dddb49a35b977f9329d4343b1b7b7573a8e107ae5dcb9730c1a3488a3ffdf47f3934f3e61e1c285942d5b56e164ca888989c1b761 +43cad6a9439fbffe523a8ed0826e67ced0ba756b4eddbecdcf356bb275eb56cccdcd958e25fee5eb162d387fe8106dd7adc3c5c5a5d05f5f1b474665a44e0bd4 +ed7cd4ed7d84102f979393c3bc79f378e79d77387af428d6d6d6ecdebd9bd5ab5717d9820ee0c1830780b409332475ebd665efdebd54aa54895dbb76d1ab572f +323333958e250c90147542884277e6cc19de7fff7d264d9a4446460683070fe6f4e9d3787878281d4d71ea2b25a54d9861a95fbf3e7bf6eca142850afcf2cb2f +f4e9d387ecec6ca563090323459d10a2d0646767f3e5975fe2e8e848646424356ad4e0b7df7e63d5aa55585a5a2a1d4f8802d5a85123c2c2c2285bb62c5bb66c +61e0c081bce45a45215e891475428842111b1b8bb3b33393274f26232383a1438772faf469dab76faf7434210a4d93264d080909a14489120407073365ca14a5 +23090322459d10e2b5ecdbb78f84a64ddf750000200049444154848497ae979d9dcde79f7f8ea3a323c78f1fc7d6d696d0d050befdf65b4d5b1e218a92e6cd9b +f3f3cf3f636e6ece975f7ec9d75f7fad74246120a4a81342bcb29c9c1cc68d1bf7d2a22e26268677df7d97a953a7929999c9881123888989a16ddbb6859454ff +489bb0a2a153a74eac5ebd1a232323468f1ecd8e1d3b948e240c8014755a60f4ff9349cab911a2a8080a0a223a3a9a2b57aee4b93c3b3b9bd9b367d3b469534e +9c3881bdbd3d7bf6ece1ebafbfa674e9d2851b56cf489bb0a2a36fdfbe7cfef9e7e4e4e4d0bb776f222323958e24f49c14755aa03e84a40f7de1847853a9a9a9 +0c1d3a148063c78e3db3fcd4a953346bd68ce9d3a7939595c5a79f7ecaa953a768d3a64d61471542e7f9fafa3272e4481e3d7a44f7eeddb976ed9ad291841e93 +a24e08f14a02020234b7ff39d756565616fefefe346bd68c3ffffc137b7b7b22222258be7cb98cce09f1024b972ea54d9b365cbb768deeddbbcb1c76e2b54951 +2784c8b78b172fb26cd932cd7df5e1d7e8e8689a356bc6cc9933c9caca62d4a851c4c4c4e0eaeaaa4c5021f4888989091b376ea456ad5a444646327cf870a523 +093d25459d1022df264e9c48464686e6fe952b57f0f3f3a359b36644474753ab562d7efffd77962e5d4ac99225154c2a847ea950a102dbb66da354a952ac59b3 +86c58b172b1d49e82129ea8410f9b267cf1eb66fdffed463f1f1f1040404909393c3983163f8ebafbf68d5aa9542090d83ba4d981cb22e7a1a3468c0dab56b31 +323262c284091c397244e94842cf4851278478a9ecec6cc68f1f9fe7320b0b0bbefffe7b162f5e2c576c6a81ba4d98b1b1ec9e8ba20f3ffc9069d3a6919d9d4d +9f3e7db87fffbed291841e91bd8610e2a5befdf65b4e9f3e9de7b2f4f474860e1d8ab7b73777efde2de46442181e3f3f3f5ab66c4942420283070f563a8ed023 +52d469814c69220c597272323366cc78e13ad9d9d9ac58b1824a952ab160c102b97a4f8837606262427070b0e63cbb152b56281d49e80929eab440261f16866c +ecd8b1dcbb772fdfeb4f983081faf5eb1312125280a984306cd6d6d6040505616464848f8f0fa74e9d523a92d003a64a071042e8ae73e7cef1c30f3f3c7779c9 +9225b1b3b3c3d6d6163b3b3b4a962c89a3a323b6b6b6d8dada166252c3216dc2849aa7a72763c68c61f1e2c5f4efdf9fa8a828cccdcd958e257498147542fc43 +4e4e0efbf7ef67f7eedd9c387182b367cf929292427a7abad2d15e89858505969696fce73fffc1d1d1918e1d3bd2aa552b4c4c4c5e693bfefefe346ad48852a5 +4ae1e8e8889d9d1d3636369a42ae62c58a05f415145dd2264cfcd3bc79f3888888202626863973e6e0efefaf7424a1c3a4a81302b875eb162b57aee4bbefbe33 +88363de9e9e9a4a7a773ebd62df6eddbc782050ba85ebd3a43870e65c48811585959e56b3b3ffdf45301271542bc88b9b939414141bcfbeebb7cf1c51774ebd6 +8dc68d1b2b1d4be82839a74e14690f1e3c60d2a449d8dbdb3373e64c6edebc899b9b1b818181fcfefbefdcbc7993c78f1fa352a9f4eadfe3c78fb979f326bfff +fe3b818181b8b9b971f3e64d66ce9c89bdbd3d93264dd2cc872684d06d8e8e8ef8fafa929595c5800103e44224f15c52d489226bcf9e3dd4ad5b9779f3e66926 +cf4d484860efdebdf8f8f8e0eaea8a9595151616164a477d65161616585959e1eaea8a8f8f0f7bf7ee252121813163c6909393c3bc79f3a85bb72e7bf6ec513a +aa10221fa64f9f4e83060d34876185c88b14755a50aa542900d2d2d2144e22f243a55211101040870e1d484a4ac2cdcd8db367cfb278f162aa57afae74bc0253 +bd7a75162f5eccd9b367717373232929890e1d3a10101020576e0ba1e3d487614d4d4d993b772e172e5c503a92d04152d46981fae4f39c9c1c85938897c9c9c9 +61c89021f8f9f9616c6cccbc79f3080f0fa766cd9a4a472b34356bd6243c3c9c79f3e6616c6c8c9f9f1f43860c919f5f1d216dc2c4f3383a3a327efc78323232 +183d7ab4d271840e92a24e14192a958ae1c387b37af56a4a962cc9ce9d3b993871a2669ec1a2c4c8c888891327b273e74e4a962cc9ead5ab193e7cb88cd8e900 +6913265e64faf4e954af5e9db0b030b66eddaa741ca16364af218a8c808000befffe7b4a942841585818eddbb7573a92e2dab76f4f585818254a94e0fbefbf27 +202040e9484288172855aa140b172e0460dcb8719a2970840029ea4411111616464040002626266cd9b205676767a523e90c676767b66cd98289890901010184 +8585291d4908f1023d7bf6a475ebd6242626ca4513e22952d40983f7e0c103860c19426e6e2e5f7cf1051d3a74503a92cee9d0a1035f7cf105b9b9b90c193244 +a63b1142c7ad58b102333333162e5cc8d5ab57958e2374841475c2e0cd9a358bab57afe2e6e6c6840913948ea3b3264c98809b9b1b57af5e65d6ac594ac729b2 +d47390499b30f1226fbffd36a3468d223d3d1d3f3f3fa5e3081d21459d16a8dbf9c8b90dbae7e6cd9b2c5bb68c62c58af1edb7df16c98b22f2cbc8c8886fbffd +9662c58ab16cd9326edebca974a422e9f1e3c780b409132f3765ca142c2d2df9e1871f3873e68cd271840e90a24e0bd49fa8d58db885eef8e69b6f78fcf83123 +468ca056ad5a4ac7d179b56ad562c488113c7efc986fbef946e938428817a858b12213274e242727872953a6281d47e80029ea84c1cacece66d5aa55989a9aca +61d7573061c2044c4d4d59b56a15d9d9d94ac71142bcc0b871e3a85ab52adbb76fe7c891234ac7110a93a24e18ac83070f929494448b162db0b6b6d6da76fff8 +e30fdab66d4bad5ab5b0b7b7a775ebd6848686bef03943870ed5daeb17346b6b6b5ab46841525212070f1e543a8e10e2054a9428c1f4e9d30134ff8ba24b8a3a +61b076efde0d40c78e1db5b6cda8a8287af6ec899f9f1ff1f1f15cbe7c9979f3e6b163c78e173e6fddba755acb5018d4ef99fa3d1442e8aea14387e2e0e04044 +4404478f1e553a8e50901475c2601d3f7e1c00272727ad6d73faf4e9040606e2e2e2a279ccc9c989e5cb9773f0e0415ab468c15b6fbd45cd9a3559bb762d000e +0e0e646666d2be7d7b6edfbe8d878707f6f6f6d4af5f9f7dfbf60170e9d2251c1d1d71707060f8f0e158585800909898c8fbefbf4fcd9a3535a36700a6a6a6cc +9f3f1f070707dcddddf9fdf7df35797af6ecc9afbffefa465fa7fa3d53bf87a2f0489b30f1aa4c4d4df1f5f505e08b2fbe50388d50921475c2609d3f7f1e80b7 +de7a4b6bdb3c7af4e873e7b9ab5bb72ebffdf61be7cf9fe7e0c1838c1b370e80b8b838cccdcd090d0dc5dbdb9b01030670f9f265b66ddbc6c71f7f4c666626de +dede0c1a3488b8b838faf5eba7e9c33a6ad428faf4e9c3a54b97e8dbb7ef53fd1eefdebd4b5c5c1ca3478fe6fbefbf07e0debd7b9c3871e28d4727d5ef99fa3d +148547da8489d7d1bf7f7facadadd9b973273131314ac7110a91bd8616a84755d2d3d3154e22fe2939391980b265cb6a6d9bb9b9b9cffd637bf5ea55ba77ef8e +9d9d1d6e6e6e794ee01b161686bfbf3f6fbffd369e9e9e64646470f9f2650e1e3c48fffefd0168d1a20526262600ecdfbf9f7efdfa014f76daff1c911b3f7e3c +009d3b77e6d8b163242727b36edd3afaf5eba779feeb52bf67eaf75008a1dbcccdcdf1f1f141a552c9685d1126459d16142b560c808c8c0c85938882e6e4e444 +7878789ecbbcbcbcf0f2f2223e3e9ef3e7cfe75958191919111919c9b973e73877ee1c376fdee4adb7dec2d4d414954a95e776d58fff7bb995951500262626f4 +eedd9bf5ebd7b366cd1a860c19f2265fa210424f0d1d3a948a152bb269d326e2e2e2948e231420459d30580531dae4e7e7c7d8b1639f3ad72c3a3a9afefdfb93 +909080878707008b162d222b2b4b5388999999919191818787078181819ac70f1e3c484a4a0a2d5ab4d01c423d7cf8b0e6f0ababab2b41414100ac5ebd1a5757 +d73c730d193284d9b36753bd7a756ad4a8f1c65f67418c720a210a56c99225f9ef7fff4b7676b6cc3359444951270c56419c17d6b2654bd6ac59c38409133453 +9a8c1933861e3d7af0e5975fe2e4e444e3c68d295ebc38952b57e6d2a54b0074efde9d264d9ab064c912ce9e3d8bbdbd3d356bd664d1a2453c7cf890afbefa8a +e0e0606ad5aac5dab56b35a37c4b972e65f3e6cdd8dbdbf3f3cf3fb364c9923c73d9dada52b3664d860f1fae95afb320ce4714f9a36e13666e6eae7012a18f46 +8c1841f1e2c5f9fefbef35dd4944d161aa7400210a8a939313fbf7efe7f8f1e3b46ad54a6bdb6dd5aa15fbf7efcf73d9d8b16335b7478c18a1b9bd66cd1acded +cd9b373ff3bc0b172e70f8f0612c2c2c3871e20461616100d8d8d870f8f0e167d6fff7a4c0717171a4a7a7d3b973e757fa5a9ea720ae1c16f9a3fe435cbc7871 +8593087d54a14205bcbcbc080a0a62fdfaf50c1e3c58e948a210c9489d3058fa34d7dadebd7b69d2a409f6f6f6f4e9d387952b57e6eb79b9b9b93469d2844e9d +3ab17cf972ad5d31591073fc09210a87b7b73700cb972f573889286c3252270c96ba9384bab38436bb4a68dbc89123193972e42b3fcfd8d89893274f6a358bba +9384bab3841042bf383a3af2eebbef72ecd8318e1d3bc6bbefbeab7424514864a44e0bd4e7bea8cf8511bac1d4d494214386909d9d4d6060a0d271f446606020 +d9d9d90c1932045353f9dc27843efaf4d34f0119ad2b6aa4a8d302f5b92f7252aaee193e7c38c58b1767e5ca95c4c7c72b1d47e7c5c7c7b372e54a8a172faeb5 +8b2e841085af478f1e942953862d5bb6909a9aaa741c5148a4a81306ad4a952a8c1a358a8c8c0c860d1bf6dcb9e0c49379f0860d1b46464606a3468da24a952a +4a472a92a44d98d086e2c58bd3a3470f1e3f7e9ce7c559c2304951270cdef4e9d3a951a3061111117218f605020303898888a0468d1a4c9f3e5de9384596b409 +13daa2ee52b36edd3a859388c2227b0d61f04a972ecdaa55ab30363666f2e4c9848484281d49e78484843079f2648c8d8d59b56a958c120961005ab66c898d8d +0d070e1c20313151e938a2104851278a8476edda3163c60c727272e8debd3b478e1c513a92ce3872e408ddbb7727272787193366d0ae5d3ba5230921b4c0d8d8 +98be7dfb929b9b4b7070b0d271442190a24e14193366cc60f0e0c13c7af48876edda111a1aaa7424c5858686d2ae5d3b1e3d7ac4e0c18399316386d29184105a +d4b76f5f0029ea8a0829eab4403dedc3bf67f917bac5c8c8886fbef986418306f1f0e1433a77eeccfcf9f38be4c5132a958af9f3e7d3b973671e3e7cc8a04183 +f8e69b6f303232523a5a91276dc28436d5ab578fdab56b131b1bcbc58b17958e230a9814755a50b26449001e3e7ca87012f132262626ac5ab50a7f7f7f727373 +f9ecb3cf707777d7f4682d0a2e5dba84bbbb3b9f7df619b9b9b9f8fbfbb36ad52a4dbf59a12c691326b4ed830f3e0060fbf6ed0a2711054d8a3a51e418191931 +63c60c424242b0b6b626222282fffce73f8c1d3b966bd7ae291dafc05cbb768db163c7f29ffffc87888808acadad09090961c68c19324227840193a2aee890a2 +4e14596ddbb6e5cc99337cf6d967989898b064c9126c6d6d69d3a60d0b162c60dfbe7ddcba758bf4f474a5a3beb2f4f4746eddbac5be7dfb58b060016ddab4c1 +d6d696254b96606262c2679f7dc699336768dbb6add251851005ccd9d999ca952b73e4c8116edfbead741c5180a407903048172f5e64e3c68d4c9b36ed85eb95 +2e5d9ab973e7327efc7856ae5cc977df7d474444041111118594b4f054af5e9da143873262c408acacac948e23842824c6c6c674eedc99d5ab57b373e74e060d +1aa47424514064a44e189c9d3b77d2ac5933a64f9fce860d1bf2f51c2b2b2bfcfcfc48484860efdebdf8f8f8e0eaea8a959515161616059c58fb2c2c2cb0b2b2 +c2d5d5151f1f1ff6eedd4b4242027e7e7e52d009510475ead409805dbb76299c44142419a9130643a55211101040404000b9b9b974efde9dce9d3bbfd2364c4c +4c707373c3cdcdad80520af162ea3e9d3201b4d0265757578c8d8dd9b76f1fb9b9b9d2b1c440c977550bd4bf1ceaf63ea2f0a5a6a6d2b56b5766ce9c89919111 +5f7cf1059b366da254a9524a4713e295a8a7d8913fba429bca972f4fa3468df8fbefbf3975ea94d271440191bd8616a83f51ab1b718bc275f6ec599a356bc68e +1d3ba850a102bb77efc6d7d757aee81442887f68d3a60d007bf7ee553889282852d409bdb675eb569a376fcef9f3e769d4a8117ffcf187b4b91242883cb8baba +02b06fdf3e4573888223459dd04bb9b9b94c9d3a951e3d7af0e0c1037af7eecd912347a859b3a6d2d184104227b56cd9125353530e1c38201d900c94147542ef +dcbf7f9fce9d3bf3f9e79f636262c2c2850b59bf7e3d254a94503a9a106f4cda84898252ba74691a376ecc83070f888e8e563a8e280052d409bdf2d75f7fe1e4 +e4c46fbffd46a54a95080b0b63dcb8714ac712426ba44d9828484d9b3605202a2a4ae124a220485127f4c6860d1b707676263e3e1e474747a2a2a268ddbab5d2 +b18410426f3839390170fcf8718593888220459dd0793939394c9c38913e7dfaf0f0e143060e1cc8a14387b0b1b1513a9a1042e81519a9336c32f9b016585a5a +02909292a27012c373f7ee5dbcbcbcd8bb772f6666662c5ab4086f6f6fa5630921845eaa5bb72e254a94e0cc99333c7af448ce45363032522774d6c9932769da +b4297bf7eea54a952a44444448412784106fc0d4d494468d1a919d9d2d93101b2029ea844e5ab76e1d2e2e2e242424f0de7bef111515858b8b8bd2b1842870ea +366165ca945138893054efbcf30e007ffef9a7c24984b6495127744a56561663c78e65c080013c7efc9861c386f1fbefbf53bd7a75a5a3095128d46dc2a4238a +28286fbffd3600e7ce9d533889d03639a74ee88c5bb76ed1b3674f0e1c3840b162c558ba742943870e553a96104218943a75ea0070e1c2058593086d93a24ee8 +843ffef883eeddbb93949444f5ead5d9b2650bcd9b37573a961042181c19a9335c72f85528eefbefbfa765cb96242525d1a2450b4e9c3821059d104214101b1b +1b4a9428416262228f1e3d523a8ed02229eab4a074e9d2003c78f040e124fa252323831123463064c81032323218356a147bf7eec5caca4ae968422846da8489 +8266646444eddab551a9545cbc7851e938428ba4a8d30263e3276f636e6eaec249f4c7f5ebd7717373e39b6fbec1c2c282b56bd7b274e952cccccc948e2684a2 +a44d98280c0e0e0e00c4c5c5299c4468939c53270adde1c387f9e8a38fb871e306b6b6b66cddba95264d9a281d4b08218a0c6b6b6b00929292144e22b44946ea +44a15ab16205ad5bb7e6c68d1bb8b9b971fcf87129e88410a29055ab560d7872d444180e29ea44a1484f4f67d0a041787b7b939595858f8f0fa1a1a154aa5449 +e968420851e448516798e4f0ab287057af5ea57bf7ee1c3f7e9c92254bb26ad52abcbcbc948e2584104596147586498a3a51a0f6eddb47cf9e3db973e70e356b +d664ebd6ad346ad448e95842e8246911260a8bba4bcfb56bd7144e22b4490ebf6a41c992250178f8f0a1c24974cb575f7d45dbb66db973e70e1d3a74e0f8f1e3 +52d009f102d2224c1416f5d451b76edd523889d02629eab4c0d4f4c980677676b6c24974c3a3478fe8d7af1fe3c68d232727872953a6b073e74eca972faf7434 +21841040d9b26501484e4e563889d02639fc2ab4eaf2e5cb7cf8e18744474753aa5429d6ac5943f7eedd958e258410e25fca9429436a6a2aa9a9a972c8df40c8 +489dd09a3d7bf6e0e4e44474743475ead4213232520a3a2184d051ea424e7d2ea7d07f52d48937a652a998376f1e1e1e1edcbb770f4f4f4ffef8e30fead6adab +743421f44a464606202dc244e190169786478a3af146d2d2d2e8d5ab1793264d223737173f3f3fb66fdf8ea5a5a5d2d184d03be9e9e980b40813854346ea0c8f +9c53275e5b5c5c1c5dbb76253636164b4b4bd6ad5b87a7a7a7d2b1841042e4838cd4191e29eab440fda95add88bb28d8bd7b377dfbf625393999ba75ebb26ddb +36ead4a9a3742c218410f954ac5831e07f87fd85fe93c3af5aa03eff25333353e124054fa552316bd62c3c3d3d494e4ee6c30f3f243232520a3a218410426185 +365267bbb8b05ea9f065df7ff2fff50786fd753e610465a663bd703a005140bdef954d24f443c258a513082184619391ba5790937a93d43d73c84d4fc9f77332 +138f737fdb3850e516603221843eb976ed1a274e9c78e6f197b5093b75ea94a6eb841042fc5ba19f53a7df9fd6abd0bfff397efdc29661c386e1ebeb4bf9f2e5 +494c045b7fa856fa7f5fdff1e3c799346912bffffe3b3ffef8237dfbea66fdfcf8f1636c6c6cd8b76f1ff5ead5cb739d5f7ef9858f3ffe98d4d4541a366cc8b6 +6ddba859b366212715facaf047af5f5db56ad5e8d8b1230e0e0ef8fbfb53bf7e7de0f96dc20e1e3cc89c3973a85dbb364b972e2df4bc4208fda09b95860e9b31 +6306292929cc9f3f9f0a152ae0ebebcbbd7bf734cb636262e8debd3bcd9a35e3f7df7fa76cd9b2f4ead54bc1c42fb66ad52aeedebd4b6464e433cb7273739936 +6d1a1f7ef821a9a9a978797971e4c81129e88478434646464c993285ad5bb7d2a041033efae823ce9f3fffcc7ae1e1e1942d5b96962d5b72e0c001a64c99a240 +5a2184be90a2ee15d5ae5d1b272727cdfdb973e7f2fefbef0370fbf66d1a376eccd6ad5b35cba74f9faee90dab6bb2b3b31933660c006bd6ac796a597272329e +9e9ecc993307131313020303f9e9a79f2859b2a4024985303c1f7df491e6f6e6cd9ba95fbf3ed3a64d039e4c31f1fefbefd3b66d5b52525234eb57ad5a5591ac +42bfddb97387dcdc674f0152f72bd7d5bf51e2d54951f71a366edc88999999e6be7a2a93f4f4f4a77e71eceded3545932efaf9e79f35b7d3d2d234b763626270 +727262f7eedd54aa5489d0d0507c7c7c94882884c1323636e6871f7ed0dccfcece66c78e1d005cb9728523478e3cb57e606060a1e61386e3e1c387b8b9b99198 +98f8cce3807c58372052d4bd067b7b7b060d1af4d2f57c7d7d75f61390bab5975a4c4c0c8f1f3f66e3c68d383b3b1317174793264d387efc386e6e6e0a2615c2 +70f5eedd3b5fa7334c9932854a952a1542226188ececec484d4da551a346ac5ebd5af3b87a14f8791d801e3d7a5428f984f64851f79aa64c99a299b8312fd6d6 +d60c1c38b0f002bda2d0d0504e9d3aa5b99f9d9dcdd0a143e9ddbb376969690c183080c3870f636b6bab604a210c9ba9a92993274f7ee13a9696964c9830a190 +120943a59e5b74f0e0c10c1c3890070f1e688ed0fc73a42e292989e5cb97d3a64d1b366cd8a0545cf19aa4a87b4d3636360c1932e4b9cb274d9aa4d34db9e7ce +9dfbcc63c1c1c1989a9ab274e952d6ae5d8b85858502c984285a060c18408d1a359ebbdcc7c78772e5ca15622261887af6eca9b9bd76ed5ade79e71d92939301 +b875eb1673e7cec5c9c9891a356a306ad4282c2d2df375444ae81629eadec0942953f26cbc5db56a55060f1eac40a2fc898c8c64dfbe7d792eab5dbb36d5aa55 +cbf3a45a2184f6999b9be3ebeb9be7b20a152a3076ac5ecf03257444bd7af59eeafc131f1fcffdfb4f66ce777676c6d7d797a8a828cdf2efbefbaed0338a3727 +45dd1ba856ad1a23468c78e6f1891327e659ece98abc46e9d4ce9c3943f7eedda953a70e0b162c2812adcf8450da279f7c92e795ad13274e7cee44c442bcaa6e +ddbae56bbdf0f0702a54a850c069444190a2ee0d4d9a34e9a9f3112a57aeccf0e1c3154cf462e7cf9f67fbf6ed2f5d2f3e3e9e091326606f6fcffcf9f33533dd +0b21b4af78f1e2cf9c37676565c5a851a3144a240cd1871f7ef8d2757c7c7c68d3a64d21a41105418aba3764656585b7b7b7e6fef8f1e32951a28482895e2c30 +30f0950eadbababa626e6e4e42424201a612420c1f3e9c8a152b6aeefbfafaca541342ab9c9c9cb0b6b67eeef2c68d1bf3f9e79f176222a16d52d469c1c48913 +0130313179aac0d335376edc60d5aa55792eab5cb9329d3b77c6dfdf9fdf7efb8dbb77efa252a9080e0e66ecd8b13468d0a090d30a51b4942c59924f3ffd5473 +3faf533b847813464646cf3d045ba2440982838375fa023ff172ba3989da6bb877ef1e070e1c202121818c8c8c427f7d3737374c4d4d59be7c79a1bfb6858505 +363636b46ad58af2e5cb3f77bd850b176a6eb768d18266cd9ae1e4e444f3e6cdb1b3b32b84a442e88f94949442bf6068f0e0c12c59b284a953a7f2f8f163cdc4 +e685a574e9d23a3bb7a6d08eae5dbbe6d93f38303090ba75eb2a90486893defff6eed9b387254b96101a1a4a565696d271080b0b53ecb5cdccccf0f0f060f4e8 +d1b8bbbb3fb3dcc9c98953a74e51af5e3d4c4c4c14482884ee4a4e4ee6a79f7e62e3c68d4445456966db57c2c489133547000a9389890976767674ebd68dfefd +fbd3b061c342cf200a56ab56ada858b12277efded53ce6e9e92923c306426f8bbaa4a424bcbdbd356d752a54a840cb962db1b5b57de1a4c086283d3d9dc4c444 +f6efdfcf8e1d3bd8b16307ddba7563d9b26554ab564db3de3fe72912423c919999496060205f7cf1c553edf22c2d2d31362e5a67a83c78f080f8f87802030309 +0c0ca44b972e2c58b000070707a5a3092d313131c1d3d393a0a02000aa54a9c2f7df7f8f919191c2c98436e8655177e2c409ba74e9c2f5ebd7a95ab52ab367cf +a67ffffe4ff5632d8ab2b2b258b76e1dd3a64d63dbb66d1c3f7e9c9d3b77d2a85123a5a309a193929292f0f4f4243a3a1a636363060c18c0a0418368dab46991 +bc48212727872b57aeb075eb56162d5ac48e1d3b080b0b232828082f2f2fa5e3092de9d6ad9ba6a80b0a0a9216740644ef3e86c6c5c5d1b66d5bae5fbf4e9b36 +6d888d8d65d0a04145bea08327875f070d1a444c4c0cad5ab522292989b66ddb121717a774342174cea54b9768debc39d1d1d1bcfdf6db444545b176ed5a5ab5 +6a55240b3a78328a53ab562d264e9cc8850b1718366c18e9e9e9f4e9d387952b572a1d4f6849bb76ed2855aa1463c78ea543870e4ac7115aa457455d7a7a3a9d +3a75e2fefdfb74e9d285df7efb4ddae7e4a142850a848585d1a54b17eedcb943a74e9d484f4f573a96103a23353595ae5dbb72fdfa755c5d5d3972e408efbcf3 +8ed2b1744aa952a5f8e69b6f58b2640900a3468d62d7ae5d0aa7326c494949ac5cb9122f2f2fead5ab47b972e5303232d2fa3f0b0b0bd2d2d258bc7871816cbf +5cb972d4ab570f2f2f2f56ae5cc9b56bd7947e6b8b0cbd2aeae6cf9fcf850b17707272e2a79f7e92d1b917303737e7a79f7ea271e3c65cb87081458b16291d49 +089de1efef4f4c4c0c0d1a34e0975f7e910f872f307af46866cdf201b4fc00002000494441549a454e4e0ec3870f7feabc43f1e6542a15bb77efc6d3d3135b5b +5b468e1cc9c68d1b3973e68ca637abbe494e4ee6cc99336cdcb891912347626b6b8ba7a727bb77ef46a552291dcfa0e94d51979292c2bc79f330353565f5ead5 +3a3dc1afae2851a2044141419898983c7312b81045557c7c3c4b972ec5c2c2825f7ef9054b4b4ba523e9bc2953a6e0e1e1c1b56bd7983f7fbed2710c46444404 +4e4e4e74ead4899d3b776a5a4f6ed8b081d8d858eedfbf8f4aa5d2bb7ff7efdf273636960d1b363062c408aa54a9c2ce9d3be9d4a913cd9a357b6eef71f1e6f4 +a6a8dbb2650b696969f4eedd9bfaf5eb2b1d476f346edc182f2f2f1e3c78c0962d5b948e2384e2bef9e61bb2b2b2f0f1f1a166cd9a4ac7d10b4646462c5ebc18 +53535356ae5c497676b6d291f45a5a5a1a83070fc6dddd9d13274ed0a04103b66ddb464242025f7ffd35bd7af5a26eddba942d5b56e9a8afa56cd9b2d4ad5b97 +5ebd7af1f5d75f939090c0d6ad5b69d0a001515151b8b9b93174e850196828007a53d46ddab409803e7dfa289c44ffa8af5adbbc79b3c2498450566e6e2e1b36 +6cc0d8d858a77b34eba2dab56be3eeeeceeddbb7090f0f573a8ede529f42b47af56a4a952ac5b265cb888e8ea66bd7ae063b858e898909ddba75233a3a9a65cb +9651aa542956ad5a45b366cdb870e182d2f10c8adefc04c5c6c60250af5e3d8593e81ff5c8e6e9d3a7154e2284b22e5fbeccd5ab57b1b7b7a7468d1a4ac7d13b +2d5bb604e0c081030a27d14fc78f1fc7d9d99973e7ced1b87163a2a3a3f1f6f636d862eedf8c8d8df1f6f6e6e4c993346edc98b367cfe2e2e2c2f1e3c7958e66 +30f4e627e9faf5eb004f4da62bf2a77af5ea0072059228f212121200b0b5b55538897e52bf6feaf751e45f4c4c0c6ddbb6e5debd7b787a7a72e4c891227bf8df +c1c18143870ed1b97367eedcb943dbb66d898989513a9641d09ba22e27270740da5bbd06f555c2afd346edd8b1639c3b774edb91847863376edc78e5e7a87ba9 +162f5e5cdb718a04f545252929290a27d12f376edcc0c3c3839494147af6ecc9d6ad5b8bfccf60c99225d9b66d1b3d7af4202525858e1d3b72f3e64da563e93d +bd29ea44e13a7af4281e1e1ef4efdf5f5a04099d74e8d021dab66dcbe1c387958e22c473e5e4e4e0e5e5c5b56bd770737363ddba75989aea653327ad33353525 +383818373737929292f0f2f2d20ce088d723459d78cae1c38769d3a60dcecece848484307dfa74d901099dd4bd7b776edebc898b8b0be6e6e61c3d7a54e94842 +3c63c992251c3870001b1b1b366edc88b9b9b9d291748ab9b9391b366ca0468d1aecdfbf9f65cb96291d49af1599a2cec1c141f3cfd8d85873fb750c1d3af4b9 +cbfef8e30fdab66d4bad5ab5b0b7b7a775ebd6848686be6eec4273e8d021dab56b878b8b0b1111119ac7e56a63a1ab8c8d8d993e7d3af0e4d4026767673c3c3c +888c8c2cf0d72e8cfd89a9a9a966bb363636b46ad58a8b172f3eb55ce8b65bb76e3163c60c8c8c8c58b7eeffd8bbf3b0a8cafe8fe3ef61130d143417965094c0 +8dc405b594c5051345c835705ff249254db34c2b35b1c5342397b4fa994b6e546ea1a6699ab88b9828b9216a28824528082222707e7ff0308f08022a7098e1fb +baaeb91ce79c39f787c330f39dfb9c73dfab79f6d967d58e5421d5ae5d9befbfff1e8d46c3f4e9d3f9e79f7fd48ea4b32a4d51171313a3bd99989868ef3f89d5 +ab5717fa7844440403060c60e6cc995cba74892b57ae3077ee5c4243439f267a993a70e0005dbb76c5cdcd8dddbb77e75bb66ad52af9e010155abf7efdf25d3c +b573e74edab76f5fe6c55d79bc9f3cd8ced5ab571931620483060d7ad2c842059f7df699764cbabc2b8745e13c3d3d19316204a9a9a9cc993347ed383aabd214 +758ff2cf3fffe0eded8dbdbd3dcd9b37cf37d2f59a356b707272c2c1c10167676756ac5881838303999999bcfcf2cb05b6357dfa743efffc733a76eca87dccd5 +d595afbefa8a03070ee0e6e6869393130d1b3664d5aa5545b65354aed2b07fff7eba74e982bbbb3b7bf6ec29b0dcd1d1517ae94485676060c0fcf9f30b3c9e57 +dcf5ecd9b35c874b28cdf79387f9fbfb6b87767a5051ef2d4646462c58b000676767acacac58b3664da9fc9ca278696969fcdffffd1f55ab5665d6ac596ac7d1 +0941414154ad5a9565cb96c9c0c44fa8d277c30406063274e850020202b878f1225dbb76e5e2c58b989898101818c8c9932769d8b02177eedc21212181989818 +4c4d4d0b3da47ae4c811ed20c90f6bdab4293b76ecc0cccc8cebd7afe3ececccb061c3b4191e6ea7a85c4f232c2c8c21438670eddab522d76bd9b265a11f964f +a35ab56a54a952a554b7f9380c0c0c549f12ea99679e51f59c1a232323cccdcdcbb9d5d6009c387102007373f352ed016ed3a60d0e0e0e85f694fdf2cb2ffcf2 +cb2ff8f8f83073e6cc526bf3514af3fde4418aa2f0f5d75fe3e6e656605951ef2d0096969644454571f4e851fcfcfc183c7870a9ffdca2a0d5ab57939696c6d8 +b1636528ae12b2b1b161e8d0a17cf3cd37ac5dbb5606087f124a31d6366daaac6ddab4b8d58a65f765eeed49014a09e29648952a55b4f7ab57afae383939696f +75ebd655ce9f3faf288aa2bcf1c61b8a8383833261c20465c78e1d4a76767681e73fc8dcdc5cb973e74ea1cb4e9e3ca974ebd64da95fbfbee2e8e8a818191969 +9715d64e51b99e44defe939bdccafb96f7b7af760e4069dbb6ad02283d7bf67ce2bfa58795d5fb89a1a1a1763bf6f6f6ca2bafbca2c4c7c7e75bae2845bfb7e4 +ad5358d627b16ddbb652df7ffaaa63c78e0aa01c3870a05cdb353434541a356aa4346ad448a95fbfbee2e2e2a2ecdebdbb44cf1d387060beed14e6695f43c539 +70e08002281d3b762cd3760aa3d6ef2c4f69d45b95bea74ea3d170ecd8b1427b70162d5a44424202fbf6ed63e1c2852c59b2a4c8f3e35c5d5df9edb7dff0f5f5 +2db0ccdfdf9f77df7d97a1438762686888a9a96991ed1495eb69ecd9b387418306153b1e909f9f1f8d1b372ed5b6d3d3d3b977ef5ea96ef371e4e4e4a83ebed6 +9d3b77c8cccc54adfdacac2c525353cbb5cdc4fffedbba756e8f5d6a6a6aa9cf1d9a9c9ccccd9b378b5deff9e79f273c3cbc54db7e5069be9f00251a23b2a8f7 +16a18ee4e4648e1c39828585052fbef862b9b7ff60af75444404bd7af52ad1b88e6bd7ae2dcb5825f2e28b2f626161c1912347484e4ed6d9f96f55531e95a3a2 +54dc9e3a7f7f7fe5830f3e5072727214455194fdfbf72bc9c9c98aa228cae9d3a7b5dfa6af5ebdaad4ac5953511445313333533232320a6c372c2c4c69d0a081 +121e1eae7dece4c993cae0c1831553535325212141c9caca52bef8e20bc5c0c040db6661ed1495eb493cbcfff6ecd9a3fd5652d8cdd9d9599b4988a7f1b47ffb +c5b97dfbb652ab56ad47be966bd6aca904050529c9c9c965d2d35456ef278fea29797879f5ead51ff9de223d75ead8bb77af02289d3a752af7b61ffc9de7e4e4 +281b376e545ab56a55e87245c9ff9a787059defd4b972e29ad5ab5521a356aa48c1e3dbacc7bea1445513c3c3c1440d9b76f5f99b7f5207de8a9abf4174a2c5e +bc9873e7ce616f6f4fc3860d090e0ee6ce9d3b002c59b2042727271c1d1df1f1f1e1db6fbf0572c7c76ad5aa15393939f9b6e5eeeececa952b79fbedb7b5439a +4c9830817efdfa3167ce1c5c5d5d717171a16ad5aad4a95387cb972f3fb29da2729586ce9d3b73e0c00176efde4d870e1d0a2c8f8a8a62d3a64da5d69e106565 +d1a2452425251578bc66cd9a7cf4d1475cb97285e9d3a797cbf994a5f97e52524141418f7c6f11eac81b7ae6f9e79f57a5fdc68d1bd3b871632c2c2c183d7a74 +9157581727303090912347121313c3902143ca6570e0bc232a9e9e9e68349a72bb1d3c78b0cc7fb632571e95a3a254ac9ebacaa8b8fdf7ebafbf2a2fbef86281 +5e8ebc6ffc423ca9b2eca94b494929f09aad55ab96f2f1c71f2bb76fdf2eb0bef4343d1dd97f25f3c9279f2880326ddab4726ffbc1deb6cccc4ce5934f3e51ba +74e952e8724529bea7ee99679e515252520a5dbfacb46fdf5ed5736fa5a74ee8bc6eddba71f8f06176eedca93df70990de3a51a12d5ab4487bffd9679fe5934f +3ee1ca952bbcf7de7b2a5ce52b44c5626c6ccc3befbc5360cc4645511e6b1b8fb37e69f0f0f00060ce9c39288a52eeb7078725d33552d4897c5e7ef965222222 +d8b16307eddab5232828a8dcffa0852889dbb76ff3c5175f50a3460d020303b972e50ad3a64d93624ea8ae56ad5a00859e16509e94ff0e85e3e2e2a27dac66cd +9adaf992d7ae5d5bece154777777befbee3b20771ac9f238fc9a77d153cd9a35cbbc2d7d53e9af7e1585ebdebd3bddbb77e7975f7ee1e2c58b383a3aaa1d4988 +7cd6af5fcfbbefbecbb871e3303333533b8e105a79e7d23d38ad5b79ca9bb2eece9d3bb468d122df55adf3e6cda35fbf7ed4ae5d9b11234660686858e4b6befc +f24bfaf7efcf575f7d45972e5d8a5dbf3444474703c8e7ce13d099a2ced0d090ecec6cb2b3b3cbe545a54feedfbf0fe476a33fae1e3d7a94761c214ac5e8d1a3 +313090830da2e269d9b2258686869c3c79b2dc3fb38a1b2e68d8b061f906a77eebadb70a7d6ede7d7b7b7b222222b48fe75de05356b2b3b33975ea14868686b4 +68d1a24cdbd2473af38e983722777c7cbcca4974cff5ebd781dcd1ba85d0174f52d0e55d01abf67885ba2a313177d4c1dab56bab9ca462cb1b9f2e6fbc3a5172 +79e3d3e58d57271e8fce1475cd9a35032874ee4351b43ffffc1380e6cd9bab9c4408753568d00080bffefa4bd51cbaeaca952b406eef8d285adedcd9ebd6ad53 +39896ec99b9f58a6b37b323a53d4f5efdf1f903f90271112120240bf7efd544e2284ba6c6d6d717676262e2e8ea8a828b5e3e89c9d3b7702b9e7dc8aa20d1932 +0433333356ae5c2947984ae8faf5eb7cfffdf7989b9b3368d020b5e3e8249d29eafaf6ed8b999919ebd7afd7f63c89e245464612121282b9b9397dfbf6553b8e +10aacbfbb0983f7fbeca4974cb810307080f0fc7d1d191b66ddbaa1da7c233333363f4e8d1dcbd7b970f3ffc50ed383a61c68c19dcbd7b97d75e7b4d2e7e7a42 +3a53d4d5a851832953a6909595c5c89123494f4f573b5285979e9ece881123c8cece66dab469f2472204f0da6baf616161c1f7df7fcf810307d48ea313d2d3d3 +79e38d3780fc27d68ba2bdfbeebb989999b16cd932f6efdfaf769c0a6ddfbe7dac58b102737373a64e9daa761c9da533451dc03befbc83a3a323c78f1f272020 +407b55a7282833339380800022232371747464d2a4496a4712a242a855ab163367ce445114faf6edcba54b97d48e54a1298ac27ffef31f4e9f3e8d8b8b0bafbd +f69ada917446ddba75b5637d0e1932847ffffd57ed48155262622243870e45511466cf9e4d9d3a75d48ea4b374aaa833353565fbf6ed585a5a121a1a8ab7b737 +b76edd523b568593949444b76edd080d0da576edda6cdfbe1d535353b5630951618c1f3f9e5ebd7a919898889797975c80f5089999998c1c3992b56bd752a346 +0dbefffe7b1952ea314d983001777777ae5ebdcaabafbe4a6666a6da912a94cccc4cfcfdfdb976ed1a1e1e1eda1e61f16474aaa883dc411577efde8db5b5357b +f6eca159b3662c5fbe5c7aedc81d8f6ef9f2e5383b3b13161686adad2dbb77efd60e442984c8656868c8ead5ab79f1c517b972e50a1d3a7460f9f2e5e4e4e4a8 +1dadc2387bf62c9e9e9eac5cb912333333366fde8cb3b3b3dab1748ea1a121212121d8d8d8b077ef5e860c1952ec5872954556561683060d62efdebdd8dada12 +1212225f1a9e924629660ea875ff1d4a64e0537e93adbf20f7dfd8379f6a335a717171040606121a1a0ae41e52717777a77efdfad4ab57af741ad1110909095c +bd7a95b0b030edf42abd7bf766f1e2c5daf1fd84504b69ffed97a68c8c0cfef39fffb07af56a009c9d9d193e7c386ddab4a17efdfa54af5e5de584e5e7fefdfb +c4c5c5111313c3a64d9bd8b871235959593468d080cd9b37e79b6a4a3cbea8a828dcdcdc484949a157af5efcf0c30f54ad5a55ed58aab973e70efefefe6cdbb6 +8d1a356a70e0c0814affa5a154ea2da5186b9b3655d6366d5adc6ac5b2fb32f756da76eddaa5f8f8f828c6c6c60a50a96fc6c6c68aafafafb27bf7eed2dfd142 +3ca1b2fadb2f4d3b77ee545ab468a1fadf7045bad5a8514399356b96929e9eaef6af476f8487872bb56ad55200c5c5c545b974e992da915471f1e245c5c5c545 +0194dab56b2be1e1e16a47aa104aa3ded29969c21ec5cbcb0b2f2f2f929292d8bf7f3fb1b1b1dcb87143ed58e5cacaca0a3b3b3b3c3c3c8a9c00392323035f5f +5f2c2c2c707272a271e3c6383939e1e8e858a97a248478d8cb2fbfcccb2fbf4c7878383ffcf003111111c4c6c672fbf6ed72cd71fffe7dd2d2d23036362ef7ab +d58d8d8db1b5b5c5c1c181debd7be3ebeb4bb56ad5ca3583be737575e5f0e1c3f8f9f9111919898b8b0b9f7efa2963c78ead1453dee5e4e4b074e952a64d9b46 +6a6a2a4d9a3461cb962d32c76b29d2f9a22e4fad5ab5e8ddbbb7da312a345353537af5eac58409130a2cb3b2b2a271e3c6383a3ae2e4e4449b366d7073735321 +a510ea69dbb6adaa63b06ddfbe1d1f1f1fba75ebc6b66ddb54cb21ca4ede080e6fbef9262b56ace08d37dee09b6fbe212828085f5f5fbd2ceeb2b3b3090d0d65 +e6cc99444545a1d16878edb5d7080e0e96a1b64a99de1475a2645e7ffd75828383b5d3fde449484820212181df7fff1df8df2c144208214a97999919df7df71d +83060d62ca94299c387182debd7b636b6b8b8f8f0f9e9e9e383b3b636d6dad93f39f262727131f1f4f545414fbf6ed63ebd6adda39c8dbb469c3bc79f3f0f4f4 +5437a49e92a2ae92313131e1a38f3e2a720a96214386f0eaabaf96632a2104a0bdf22f3b3b5be524a23c74eedc99e3c78fb363c70e962e5dca2fbffcc2d75f7f +cdd75f7fad76b452656868888f8f0f63c78ec5dbdb1b8d46a37624bd25455d25e4efefcfdcb9733975ea5481650d1a3460f1e2c52aa41242e41d8a4a4b4b5339 +89282f1a8d861e3d7ad0a3470fe2e2e2d8b66d1bfbf6ed232a2a8af8f878929393d58ef8d82c2c2cb0b6b6c6d9d9194f4f4f7af5ea858d8d8ddab12a05fd3b78 +2f8a656060c09c39730a3c6e686848fdfaf5653a1b21845081adad2d63c68c212424843367ce70ebd62d144529f5dba79f7e0ac0d4a953cb64fbb76edde2cc99 +338484843066cc1829e8ca9114759554f7eedd0b9cd3d0b3674fc2c2c2f0f5f565dcb87132bfae1042e821e911d65f52d4556273e6ccd19edbe0eaeaca4f3ffd +c4fcf9f331313161e9d2a5b46ad58a13274ea89c5208214469927337f59714759558bb76ede8ddbb37cf3cf30c6bd6acc1c4c484b7de7a8bf0f0709a376fce85 +0b1778f1c5179933678e4c9f2484107a226ffc41391aa37fa4a8abe43efef863162c58906ff0c7175e7881e3c78f3371e244b2b2b298366d1a9d3b77e6ead5ab +2a261542ffc987ad280fc6c6c6003267ba1e92a2ae926bdcb831a3468d2af0b8a9a929c1c1c1ecdcb9132b2b2bc2c2c268d1a205ebd7af5721a51095837cd80a +219e861475a248ddba75e3f4e9d3bcf2ca2b2427273370e040060d1a444a4a8adad18410423c81bc9e6099064eff4851278af5ecb3cfb279f366befdf65b9e79 +e619d6ad5b478b162d3870e080dad18410423ca6bc9ee0bc9e61a13fa4a81325367af46822232369dbb62db1b1b174ead489f7df7f5f0e150921841015801475 +e2b138383870e8d0213ef8e003003ef9e4133a74e8407474b4cac984d07d7993b9cbd5e6a22cddbe7d1b80ead5abab9c44943629eac46333323262f6ecd98485 +85d1a041038e1f3f4ecb962df9e69b6fd48e26844e3337370720353555e524429fc9e157fd25459d78621d3a74e0d4a9530c1e3c98f4f474c68c19839f9f1f89 +89896a47134208f108b76edd02c0d2d252e524a2b44951279e4af5ead559bd7a353ffcf003969696848686f2c20b2fb073e74eb5a309218428c4cd9b3701a859 +b3a6ca49446993a24e948a01030670ead4293a75eac48d1b37e8d1a30713264c20232343ed684208211e20459dfe92a24e949ae79e7b8edf7efb8dcf3efb0c63 +6363162d5a44ebd6ad898c8c543b9a104288ff4a4a4a02a056ad5a2a2711a54d8a3a51aa0c0c0c9832650a478e1ca14993269c3d7b96f6eddbf3f9e79fcb157d +4214c3d4d41480bb77efaa9c44e833e9a9d35f52d48932d1aa552b4e9c3841606020999999bcf3ce3b74ebd68db8b838b5a309516155a9520580cccc4c959308 +7d161f1f0f80b5b5b5ca49446993a24e9499aa55abb278f162b66ddb46ddba75d9b3670f2d5ab460c3860d6a471342884a293939999494142c2c2ca851a386da +71442993a24e94b91e3d7a70faf4697c7c7cb879f326fdfbf767f8f0e1da0130851042948fd8d85800ead7afaf72125116a4a813e5a24e9d3a848686b264c912 +aa55abc6aa55ab68d9b225870f1f563b9a1042541a57af5e05c0cece4ee524a22c485127ca8d46a361ecd8b19c387182d6ad5b73f9f2653c3c3c983973265959 +596ac7134208bd273d75fa4d8a3a51ee1a376ecc912347983a752a393939040505e1e6e6c6a54b97d48e2684aaf2ce714a4949513989d057972f5f06a061c386 +2a271165c148ed00a272323636e6d34f3fa57bf7eef4ed3a98a3478fd2dcd18581353fc5dd6c88daf144699a985ba8acb29742e571c8fe826157e444fed276e6 +cc19009a356ba672125116a4a74ea8cac3c383d9d68768f74c5f3272d258feef7816fd3384b49c9b6a47134208bd23459d7e939e3aa1ba6a0635185bfb3bc67f +d39bc0c0404ea46c2521eb04ab56ada26bd7ae6ac7134f69c682dc7fa5d7a564866b72ffadccfb4b7a29cbc6ad5bb7b87efd3a969696d8d8d8a81d479401e9a9 +1315c6a041833875ea146e6e6ec4c7c7d3ad5b37264f9eccbd7bf70aacfbedb7df72f1e24515520a21846e925e3afd27459da850ead7afcfefbfffcec71f7f8c +9191115f7cf1056ddbb6252a2a4abbcef9f3e799346912efbfffbe8a4985281b79b34a14f6654688a7f1e79f7f02d0bc7973959388b222459da8700c0d0d79ef +bdf73874e8108e8e8e9c3e7d9ab66ddbf2e5975f72efde3d060f1e4c7a7a3a1b366c20222242edb84294aabcf95f333232544e22f44ddefb659b366d544e22ca +8a1475a2c2727575e58f3ffee0f5d75f272323834993263160c0004e9c380180a2284c9d3a55e5944208a11b0e1e3c0840c78e1d554e22ca8a1475a2427be699 +67f8faebaff9f9e79ff1f0f060fbf6edf996efd9b387ddbb77ab944e082174c3cd9b37898e8ea666cd9a383a3aaa1d47941129ea844e707777e7afbffe223b3b +bbc0b2a953a7a2288a0aa9841042371c3b760c455168d7ae1d1a8d46ed38a28c48512774426060a0767a9b87fdf1c71ffcf8e38fe59c48082174c7d1a3470168 +dfbebdca49445992a24e5478ebd6ad63ddba7545aef3fefbef73fffefd724a2444d9a95ebd3a00b76fdf563989d027fbf7ef07728f7a08fd25459da8f09e7bee +39e6cf9fcfebafbf8ea7a72756565605d6b974e912cb962d53219d10a52befd0989c52204acb9d3b773872e408cf3cf30c2fbef8a2da7144199219254485e7e6 +e6869b9b5bbec76edfbecd850b17888e8ee6dcb973444747b365cb16468c18a11d12a230494949ecdfbf9fd8d8d84a370e98a9a92976767678787850b3664db5 +e30821ca49585818f7eedda34b972eda7110857e92a24ee8a4ead5abe3eaea8aabab6b89d6dfbd7b370b172ee4d75f7fadf487698d8d8df1f6f666fcf8f1320d +9b1095c0ae5dbb00e8d6ad9bca49445993a24ee8b5b8b838020303090d0d05a056ad5ab8bbbb53bf7efd4af78d35232383ab57af12161646686828a1a1a1f4ee +dd9bc58b17636d6dad763c214419c91bf6c9cbcb4be524a2ac495127f4d6891327f0f5f5253e3e1e2b2b2b3efae823860c1982b1b1b1dad15475fffe7d56af5e +cd071f7cc0e6cd9b397efc38dbb66da3458b166a471380898909009999992a2711fae0afbffee2ecd9b33468d080a64d9baa1d479431b95042e8a5989818bcbc +bc888f8fa74b972e9c39738691234756fa820e720fbf8e1c3992a8a8283c3c3c888b8bc3cbcb8b989818b5a309a06ad5aa00dcbd7b57e524421f6cdebc1980de +bd7bab9c44940729ea84dec9c8c8a067cf9edcba750b5f5f5f76ecd881a5a5a5dab12a9c5ab56ab16bd72e7c7d7d494c4ca467cf9e32dfa8107a66c3860d00f4 +ebd74fe524a23c485127f4cebc79f3888e8ec6d5d595f5ebd74bef5c114c4c4c58bf7e3d2e2e2e444747131c1cac7624214429898f8fe7e8d1a3585b5bcba0c3 +9584147542afa4a4a43077ee5c8c8c8c58be7c39d5aa55533b528557ad5a3556ac5881a1a1219f7efa296969696a47124294824d9b36919393439f3e7d303090 +8ffbca407ecb42af6cdcb891b4b43402020268debcb9da7174868b8b0bfefefea4a6a6b271e346b5e308214a811c7aad7ca4a8137ae5a79f7e0260e0c0812a27 +d13dfefefec0ff3e08843acccccc00a4c7543c952b57aeb07fff7eeceded656ab04a448a3aa157ce9c390340b366cd544ea27bf27a36fffcf34f9593546e8686 +8600646767ab9c44e8b2152b56a0280a23468cd04e3d27f49f147542afc4c7c703c860ba4fc0c6c60680ebd7afab9c4408f13472727258b56a150606060c1b36 +4ced38a21c495127f44a5eef465e6f8728b9bcab842bfb346a42e8ba3d7bf670f5ea55ba74e9829d9d9dda71443992a24e082184d023cb962d0360f8f0e1ea06 +11e54e8a3a2184a8408c8c72676fcccaca523989d04557af5e65d3a64d585959c955af95901475423c427878385e5e5e346ad4087b7b7b3a75eac4afbffe5a66 +ed191919e1e0e0808383030d1a34a073e7ce5cb870a1ccda1315d333cf3c03c09d3b77544e2274d1575f7d45565616e3c68dd3ce232c2a0f23b5030851114544 +443060c000d6ac5943c78e1d01387efc382b57aee4e5975f2eb3761f9c7f35242484214386101e1e5e66ed0921f4c7ddbb7759be7c392626268c1a354aed3842 +05d253274421a64f9fcee79f7fae2de8005c5d5df9eaabaf3870e0006e6e6e383939d1b0614356ad5aa55d67cd9a35383939e1e0e080b3b3332b56ace09f7ffe +c1dbdb1b7b7b7b9a376fcebe7dfb4a94a17ffffe9c3b774efbffbcc372794c4d4df32d5bb06001cecece585959b166cd9a27fcc98510ba6af5ead5fcfbefbff8 +fbfb636565a5761ca102e9a913a210478e1cd10e64fcb0a64d9bb263c70eccccccb87efd3acececeda61030203033979f2240d1b36e4ce9d3b242424101818c8 +d0a143090808e0e2c58b74edda958b172f16796824272787254b96d0ae5dbb1267b6b4b4242abd58ec3c00002000494441542a8aa3478fe2e7e7c7e0c1831fef +871642e8acacac2c3efbec3300264e9ca8721aa11629ea8428444e4ece23e74abc76ed1aefbefb2e172e5ca04a952aa4a6a66a970d1d3a94975f7e991e3d7ae0 +eded4db76eddd8b56b17515151cc9a350b807bf7ee71e5ca159c9c9c0a6cbb71e3c6da36dcdddd59bd7a7589330f1d3a1480f6eddb93929252e2e7092174dfea +d5abb97cf9325dbb76a565cb966ac7112a91c3af4214c2d5d595df7efbadd065fefefef8fbfb73e9d2252e5cb8906f4cbc458b16b17fff7edab76fcfc2850b79 +e59557d068341c3b768cf3e7cf73fefc796edcb85168410768d7993b772e376fdec4c2c222df7245514aef871415925c28211e575656169f7efa29003366cc50 +398d50931475421462e6cc99bcf9e69b1c3f7e5cfb5864642443860c213636166f6f6f00828383b97fffbeb6d88a8a8aa26eddba040404f0cd37df70e8d021bc +bdbdf9fcf3cfb5eb1c3870a0d89eb4c0c040dab56bc7f0e1c3b5cfab59b326870e1d0260eddab5328d949e92214dc4e3fae1871fb878f1221e1e1eb8b9b9a91d +47a8488a3a210ae1eeeececa952b79fbedb7b5439a4c9830817efdfa3167ce1c5c5d5d717171a16ad5aad4a95387cb972f03b064c9129c9c9c707474c4c7c787 +6fbffd96c58b1773eedc39eceded69d8b021c1c1c125ea85090e0e262d2d4dfbcd7bdebc79f4ebd70f676767fefefb6f9935430841565616b367cf06722ff012 +959b9c5327c42378787810161656e8b237df7c537b7fcc9831dafb4b972e2d74fd0d1b3614dbdec33d338686866cdfbe5dfbff61c386e59bc7f1adb7de7ae473 +3332328a6d4f08a1fb962d5bc6850b17e8d8b1235dba74513b8e5099f4d4092184103a283535950f3ffc10803973e6a81b46540852d4092144059277585dce99 +14c599376f1e7ffffd377dfaf4a143870e6ac711158014754208518198999901909696a672125191c5c7c7337ffe7c8c8d8db557be0a21459dd02bd2cbf1e4ee +dfbf0f80b1b1b1ca498410c59932650ae9e9e9bcfefaeb383a3aaa1d47541052d409bd626d6d0de47e8b158fe7faf5eb00d8d8d8a89c44085194bd7bf7b26edd +3a2c2c2c645c3a918f147542af346bd60c803367cea89c44f7fcf9e79f00346fde5ce524428847b977ef1ee3c68d4351143ef9e4136ad7aead76245181485127 +f44afffefd0158b76e9dca49744f48480800fdfaf553398910e2513efffc732e5cb840dbb66d79fdf5d7d58e232a1829ea845ee9dbb72f666666ac5fbf5edbf3 +248a17191949484808e6e6e6f4eddb57ed38955ad5aa5501484f4f573989a8682e5dbac4471f7d84a1a1214b972e7de4fcd4a2f2925784d02b356ad460ca9429 +6465653172e448f9602c81f4f474468c1841767636d3a64dd35e7d29d461626202fcefc2152120f7e2afe1c38793919141606020ad5ab5523b92a880a4a8137a +e79d77dec1d1d191e3c78f131010201f8e45c8cccc24202080c8c8481c1d1d99346992da91841085080e0ee6e0c183d8dbdbf3d1471fa91d47545052d409bd63 +6a6acaf6eddbb1b4b4243434146f6f6f6eddbaa576ac0a272929896eddba111a1a4aeddab5d9be7d3ba6a6a66ac712423ce4cc99334c9f3e1d03030356ac5881 +b9b9b9da91440525459dd04b0e0e0eecdebd1b6b6b6bf6ecd943b366cd58be7cb9f4da917b586ff9f2e5383b3b13161686adad2dbb77efc6c1c141ed68428887 +dcbf7f5f7bd875c28409787878a81d495460466a0710a2acb46edd9a63c78e11181848686828a3468d62ca9429b8bbbb53bf7e7dead5aba776c472959090c0d5 +ab57090b0be3e6cd9b00f4eedd9bc58b176bc7f713ead3683400288aa2721251117cf0c107444444d0b871633ef9e413b5e3880a4e8a3aa1d76c6d6df9f9e79f +d9bd7b370b172ee4d75f7f65f3e6cd6ac75295b1b131bebebe8c1f3f9eae5dbbaa1d473ca47af5ea00dcbe7d5be524426dbffcf20bf3e6cdc3c4c484efbfff5e +7b65b4108fa2b3455d6464242d5bb6445114fefefb6f3c3d3d3977ee9cdab14405e5e5e585979717494949ecdfbf9fd8d8586edcb8a176ac72656565859d9d1d +1e1e1ed4ac59f391eba5a5a53178f0609c9d9d717575c5d5d5152b2bab724c2a84b87af52a43870e455114e6ce9d8babababda91840ed0d9a2ee4175ebd6d516 +7467cf9ea5478f1efcf5d75ff9ee3f8dd2da8e505fad5ab5e8ddbbb7da312a343333339e7beeb97c57d83df7dc73b8babad2b66d5bdab66d4bebd6adb53d4a42 +88d275fffe7d060e1c48525212afbcf20a13264c503b92d0117a77a144666626b1b1b105ee97d63685a80c264f9e8c91d1ffbef35dbb768d4d9b363175ea543a +77ee8ca5a525cd9a35e3871f7e5031a510fae99d77dee1d0a143d8dbdbb362c50aed79964214a7c21475a9a9a98c1a350a4b4b4baa55ab868f8f0f57af5ed52e +fffbefbff1f1f1c1d4d494860d1bf2f3cf3f6b97454646a2d168c8cacaa265cb9640eec9c60fde2f491b8b162dc2d6d6161313135ab66ca96de3e1ed64646430 +79f264ead5ab87898909ad5ab562fbf6ed001c387080debd7b53bb766d4c4c4c68d3a60d7ffcf147b16d3c4dbec23cb8bf1a356a44505090367fdefedab2650b +356bd664fefcf92425253160c000cccccc78f6d967993c793259595905f6efc3fbfcc1fb8b172fc6c6c606333333468f1ecdbd7bf78afa958b0aac4183060c18 +30e091cb737272303232a257af5ee5984a08fdb76cd932162c58808989093ffef8231616166a47123aa4c21475a3468da25ebd7a44474773edda355e78e1857c +1f1883060d42a3d170e5ca15f6efdf4f545454a1db8988880072bbaf1fbc5f5c1b717171bcf9e69bac5cb992e4e464162c5840ad5ab50a6c13e0b5d75e63dfbe +7dfcf6db6f242727b368d122eda4cab76fdfa66fdfbefcf9e79f242626d2a64d1b468d1a556c1b4f93af300feeafb0b0304e9f3e5d609d850b17121919c99831 +6318366c18e9e9e95cbe7c9963c78eb16bd72e3efef8e3227f670f8b8a8ae2e4c993fcf1c71f848787f3c1071f3cd6f345c53265ca9447f610585a5ab269d326 +aa55ab56cea9f45fde58811919192a2711e56dfffefd04060602b9c55d9b366d544e24748e528cb54d9b2a6b9b362d6eb562d97d997b2b4c525292a2d168943a +75ea2875ebd655ead6adabd4ae5d5b0194d8d858e5c68d1b0aa04447476b9f73f2e449252f7edefdfbf7ef17fa7849da484c4c54aa55aba64c9d3a55b97cf972 +be7c0f6ee7e6cd9b8a81818172e2c48912fddc478f1e550c0d0d1545518a6ce369f23daca4fb2b343454511445f9f7df7f1540898a8ad2aeffe38f3f2a767676 +05f66f51db7b70f9c68d1b957af5ea95681fad6c90acac6c905ca27545f9f2f6f656807c3743434365d1a24525de46517ffba2a0254b9628803276ec58b5a3a8 +a632be275cbe7c59fb9e3f65ca14b5e308159446bd55217aea12121250148523478e10191949646424a74f9f262121011b1b1b12131301b0b3b32bb3369e7df6 +598e1e3d4a6262226ddbb6a57dfbf684878717d84e7c7c3c393939346ddab4d076222222e8dfbf3fcf3fff3c565656f4ecd993ecec6c8022db28ad7c4089f797 +b7b7b7b66d80468d1a6997d9dbdb131f1f5fe4f38b626767475252d2133f5f540cefbefb6e81c7dcdcdc98346912c1c1c12a241242ffa4a4a4e0e7e747626222 +bd7af592f1e8c413ab10459db5b5351a8d866bd7ae51af5ebd7c37434343edf24b972e95591b00cecece2c5bb68c848404bcbdbdf1f3f32bb01d1b1b1b0c0c0c +387bf66c816529292974ead4097b7b7b7efcf1478e1f3f4e484848be751ed54669e503b4c34f94747fe50dc21b1313a37d2c3a3a5a3b20ad8141eecbe4c1c341 +39393905b6a33c3058eae5cb97b1b5b52d51fba2e2f2f0f0a07dfbf6dafff7eedd9b0e1d3a909d9dcd5b6fbdc5c08103494f4f5731a110ba2d3d3d1d1f1f1fa2 +a2a270767666f5ead5daf77c211e578528ea2c2d2d090808e08d37dee0d4a953dcbd7b97c8c8485e7ffd75121313a959b326ddbb7767e2c489c4c5c5111717c7 +871f7e58e8b69e79e61920f71cb4bcf37de2e2e2b0b0b028b28decec6c962e5dcad5ab57c9ccccc4dcdc5cfb87f5e0366bd4a8c1d0a14319356a14515151a4a7 +a7b36fdf3e424343494a4a222d2d0d3f3f3f1c1d1d898d8d65e1c28540eef97845b551dc3e28eab90fab55ab165e5e5e25da5f90db83d8b3674f264d9ac48d1b +37888e8e66d6ac590c1f3e1cc81dcec2d8d898b973e772fbf66dc2c3c3193b766c81edbcf1c61b24262672e1c20566cd9ac58811238afec50b9d3075ea54001a +376ecc8a152bf8e8a38fd8b06103e6e6e6ac5fbf9e975e7a89cb972fab9c5208dd939d9d4d404000070f1ec4d6d6965f7ef9851a356aa81d4be8b00a51d441ee +49a15dbb76c5dbdb9bead5abd3a74f1fccccccb485cbca952ba952a50a0e0e0eb8b9b9d1aa55ab42b7e3e0e040b76edd70727242a3d168ef5fba74a9c836eedc +b9c3b163c7707575a57af5ea2c5fbe9c55ab5615d8e6a54b97f8faebafe9d2a50b5e5e5e5858583079f26472727268d8b021d3a74fc7cfcf8fba75eb326fde3c +edc9e6a74e9d2ab28de2f64171cf7dd8aa55ab3032322a767f3db8bea5a5258d1a35a27dfbf6f4e8d183e9d3a703b905e7fffddfffb17cf972ead4a9c38c1933 +98387162816d346ad488e6cd9bd3a64d1b3a77eeccb469d38afea50b9dd0ab572f5e7cf145366fdeacfdc0e9d3a70fc78e1dc3c9c98953a74ee1eaeacace9d3b +554e2a84ee501485d75f7f9dd0d0506ad7aecdae5dbbe4e886786a1a45297a82c175cd9a0130f0cc99a76aa8fe82dc7f63df7caacd882774e8d0213a75ea4466 +6666a96f3b6f768ffbf7efe71bdbaca456d9a70030ec8a7c43ada8d2d2d23033332bf0f8eddbb719326408a1a1a1181a1a121414c4b469d3f25d352b7ffb8f67 +ddba750c1a3488810307b276ed5ab5e3a8a232bc274c9e3c992fbef8826ad5aab177ef5edab56ba77624a1b2d2a8b72a4c4f9d285d53a64c61dbb66da4a4a470 +edda353efef8633a74e8a0762ca1a30a2be820779ed22d5bb610141484a228bcfffefbf4ebd78fd4d4d4724e2884ee78fbedb7f9e28b2f303131e1a79f7e9282 +4e941a29eaf494b5b5353367cea46eddba3469d2048d46c3ca952bd58e25f49046a361faf4e96cddba150b0b0b366dda44bb76edb870e182dad184a870de7efb +6de6cf9f8f8989091b366ca0478f1e6a47127a448a3a3d3571e2444e9c38414646066969696cdfbe9dfaf5eb97495b2e2e2e288af244875e85fee8d1a307c78f +1fc7d9d99973e7ced1b66d5b424343d58e254485f1ce3bef680bba9f7efa49666411a54e8a3a2144a9717070e0f0e1c3bcfaeaabdcbe7d9b575e7945ed4842a8 +2e3b3b9bc0c0403efffc736d41e7ebebab762ca187a4a81342942a333333d6af5fcfbc79f3b4631c02242727ab984a7754a9520540e64ed6139999990c1c3890 +254b9650b56a55366cd820059d283352d409214a9d46a3e1edb7df66d7ae5ddac7dab46953e81cc4223f99fb557fa4a6a6d2a3470f7efcf1472c2c2cd8b973a7 +1c7215654a8a3a214499e9dcb9b3f6fea54b9778e9a5970accb222843eba71e3069d3b7766cf9e3d58595911161686bbbbbbdab1849e2bf733dbf3c6ac12426b +62ee585433e4b5a1d7860f1fceca952b090808202222823973e6c8c535422f9d3c79125f5f5fe2e2e270707060d7ae5dd8dbdbab1d4b5402d253278428172b56 +ace0abafbec2d8d898f9f3e7f3f2cb2f939898a8762c214ad5c68d1b717373232e2e0e7777778e1c3922059d2837e5f635594693178f5219468f17b9c68d1b47 +8b162de8dfbf3f7bf7eea54d9b366cdab489d6ad5bab1d4d88a7a2280a1f7df4113367ce445114468f1eadfd12234479919e3a2144b9ead0a103111111bcf4d2 +4b5cbd7a958e1d3bcac0d80f3037370772a76013ba213939993e7dfa3063c60c0c0c0cf8f2cb2ff9f6db6fa5a013e54e8a3a2144b9b3b6b6e6f7df7f67ecd8b1 +6464643062c408020303b97fffbedad15497370c4c31d3728b0ae2e8d1a3b8b8b8b065cb166ad7aecd8e1d3b78f34d393425d421459d1042152626262c59b284 +efbefb0e535353962c5942a74e9d484848503b9a10c5521485e0e060dcdddd898d8dc5cdcd8d93274fe2e5e5a5763451894951278450d5c89123d9bf7f3fcf3d +f71c870e1da24d9b361c3e7c58ed58423cd2df7fff8d9f9f1f6fbdf516595959bcfbeebbecddbb171b1b1bb5a3894a4e8a3a2184ea5c5d5d3971e2049e9e9ec4 +c7c7d3a95327962e5daa762c210af8e9a79f68debc395bb76ea54e9d3a6cddba5586e7111586147542880aa176eddaecdebd9b499326919999c9b871e318356a +54a59b5921efe47a39bfb062b979f3260101010c1830807ffffd973e7dfa10151545cf9e3dd58e268496147542880ac3c8c8882fbef88275ebd651ad5a35962f +5f8ebbbb3bd7ae5d533b5ab9a956ad1a00e9e9e92a2711797ef8e1079a356b46484808969696ac5ebd9a8d1b3752a74e1db5a309918f147542880a27202080c3 +870fd3b061438e1f3f4eebd6add9b76f9fdab1442513131343b76eddf0f7f7e7c68d1bf4e8d183d3a74f3378f060b5a309512829ea841015528b162d387efc38 +ddbb77273131112f2f2f828383d58e252a817bf7ee316bd62c9c9d9dd9bd7b37363636fcf4d34f6cdfbe1d5b5b5bb5e309f14852d409212aac9a356bb26ddb36 +de7bef3db2b3b379ebadb7183870a01c9a1465425114d6af5f4fe3c68df9f0c30fc9caca62e2c4899c3f7f9e7efdfaa91d4f886249512784a8d00c0d0df9f8e3 +8fd9b06103e6e6e6ac5fbf9e975e7a89cb972fab1deda95cbb768df9f3e793969656e2e71c3c7890499326c9c0c46560dfbe7db46fdf9e810307f2d75f7fe1e9 +e9c9f1e3c7090e0ec6cccc4ced78429488147542089dd0a74f1f8e1d3b86939313a74e9dc2d5d5959d3b77aa1deb893df7dc731c3e7c98060d1a3063c60c5252 +72e740ce2b201e2cf60e1d3a44870e1d707373c3cdcd0d8d46a34a667d74faf4697af7ee4da74e9d080f0fa769d3a66cdfbe9ddf7fff1d171717b5e309f158a4 +a81342e88c264d9a101e1e8eafaf2f376fdec4c7c7874f3ef944677bae66cd9a45525212b367cfc6c2c282e9d3a76be77ccdcecee6e4c993f8fafad2b163470e +1f3e8cb5b535afbcf28acaa9f5c31f7ffc41efdebdb5537c595959f1edb7df72ead4297af4e8a1763c219e88147542089d52bd7a75b66cd9425050108aa2f0fe +fbefd3af5f3f5253530b5dbf229f7fd7bc79739c9c9cb4ffffe8a38f78e9a59700f8e79f7f68ddba355bb76ed52ecf9b305e3cb9c3870fe3e3e3439b366dd8b2 +650bf5ead523383898989818468f1e2d83080b9d26ef0e42089da3d168983e7d3a5bb76ec5c2c2824d9b36d1ae5d3b2e5cb8906fbdb367cfd2a54b970add93f7 +f3cf3fe72b24f28ad08c8c8c7cb91d1d1d79edb5d7ca3d9f3ec8cccc64ddba75b46bd78e0e1d3ab07dfb766c6c6c58b46811972f5f66e2c489daf10185d06552 +d4092174568f1e3d387efc38cecece9c3b778eb66ddb121a1a0a404a4a0abd7bf7e6e8d1a36cdbb64de5a48fe6e4e4c4a041838a5d6fdab469181a1a964322fd +111f1fcfecd9b369d0a00183060d223c3c1c272727befdf65b2e5dbac41b6fbc81a9a9a9da3185283552d40921749a838303870f1fe6d5575fe5f6eddbbcf2ca +2bcc9c3993214386101d1d0dc0679f7da672caa2cd9c39533b3d5861eceded65c0db12ba77ef1e3ffdf4133d7bf6c4cece8e19336670e3c60dbcbdbdd9b16307 +e7ce9d63f4e8d1989898a81d55885227459d1042e7999999b17efd7ae6cd9b87818101fbf7efcf772edaa143873878f0a08a098b666f6fcf8811231eb9fcdd77 +dfd58b73bdfef8e30fce9f3f5feadb551485a3478f327efc78acadad19306000bffcf20b66666604060672fefc797ef9e517ba77ef2e570e0bbda6fbef124208 +41ee79766fbffd362626264c9a34a9c0f2b973e7d2b16347159295cc071f7cc0aa55abb877ef5ebec76d6d6d8b2cf874414444044141419c3973a6d48abaecec +6c0e1e3cc8c68d1bd9bc793371717100181818d0b56b57860f1f4e9f3e7da85ab56aa9b427842e90a24e08a1376262629831630639393905966ddbb68d3367ce +d0ac5933159215efb9e79ee33ffff90f8b162dcaf7f894295374f650617878381f7ef8213b76ec0060d9b265451e662e4e6262227bf7ee65d7ae5d848686f2ef +bfff6a97356dda147f7f7f860d1b869d9ddd536717421749512784d00b77eedca177efdeda417c1fa6280a73e7ce65d5aa55e59cace4de7bef3d962d5bc6ddbb +7701a857af9e4e5ef17af4e851828282b4c55c9e61c3863dd6765253533972e408bffdf61bbffdf61ba74e9dca57b0b76edd9abe7dfbd2a74f9f7c43c3085159 +49512784d00ba1a1a164676763606050684f1dc0ba75eb983d7b7685edc9a957af1e8181817cfef9e7004c9e3c59a70e1f1e3e7c98a0a0207efdf5d702cb56ac +5851e47981d9d9d99c3b778e63c78eb13a693f97ee1d67946534d9d9d9da75cccdcde9d4a9135e5e5ef8f8f8d0a04183b2f83184d0591aa598019cd6fdf750c5 +c03367ca2590a87c56d9e7f6ac0cbb5243e524421fdcbe7d9b888808c2c3c3397efc38e1e1e1daf3ad00264c98c082050b544c58b4c4c444ead4a983919111b7 +6eddd28979470f1c38c0ac59b3d8b3674fa1cb1d1c1c3877ee1c464646dcbb778fd8d858edf9757ffef927e7ce9de3fcf9f3da1eca3ca6a6a6b46edd9aae5dbb +e2e5e545bb76edf4e28211210a531af596fc750821f44af5ead5e9dcb9339d3b77d63e969090a02df2ce9e3d4b5a5a5a91c552525212fbf7ef273636b6c0850b +e5a153a74e989898f0d5575f957bdba6a6a6d8d9d9e1e1e141cd9a358b5c372c2c8c61c386111b1b5be47a16161674e8d0816bd7ae919090f0c8f59e7ffe79da +b56b07bfbc40a32a6d783fb6e3539d83575124272713191949747434b76edd523b4ea9ab55ab160e0e0eb8b8b8606161a1769c4a4d8a3a2184deb3b2b2c2cfcf +0f3f3fbf22d7dbbd7b370b172ee4d75f7fe5fefdfbe594eed10a3b8c595e8c8d8df1f6f666fcf8f174eddab5c0f2193366307bf6ec126d2b222222df766d6d6d +69d2a409cd9a35a371e3c6383b3bd3b87163cccdcd81fff5deeb7241979a9acadab56b59bf7e3d870e1dca7718595f191919f1d24b2f111010c0e0c18375a297 +59dfc8e157a13a39fc2ad4161717476060a076368a5ab56ae1eeee4efdfaf5a952a58acae9ca5746460657af5e252c2c8c9b376f02d0bb776f162f5e8cb5b575 +be75f7eedd4b404000fffcf34f91db7cebadb7e8dbb72f0d1a34a05ebd7ac5ce5fabcbef09fffcf30f9f7efa29df7df79d763e620b0b0b5c5c5c707474c4d2d2 +52e584a52f292989989818222323494e4e06727bcc478e1cc97befbd47eddab5554ea81b4aa5de528ab1b66953656dd3a6c5ad26c4135bd9205959d92059ed18 +a2928a888850acadad1540b1b2b252befbee3b25333353ed58aacbcccc54befbee3bc5caca4a01145b5b5b253232b2d07577efdead74e8d041010abdbdf0c20b +4a4e4e4e89dbd6c5f784ecec6c253838583133335300a56ad5aaca98316394b0b030252b2b4bed78e5e2fefdfb4a5858983266cc18a56ad5aa0aa098999929c1 +c1c14a7676b6daf12abcd2a8b76446092144a515131383979717f1f1f174e9d2853367ce3072e4489d3eec575a8c8d8d19397224515151787878101717879797 +1731313105d6eddab52b070f1ee4d75f7fa57dfbf605969f3e7d9a2d5bb694476c55dcb871034f4f4f264d9ac49d3b7778edb5d788898961e9d2a5b8bbbb579a +397b8d8c8c70777767e9d2a55cbc789191234772e7ce1d264d9a44a74e9db871e386da11f59e147542884a292323839e3d7b72ebd62d7c7d7dd9b163875e1e1a +7b5ab56ad562d7ae5df8fafa92989848cf9e3dc9c8c82874dd6eddba71e4c811b66fdf8eabab6bbe657dfaf44129fa6c1f9d74faf4695ab56ac5810307b0b3b3 +63dfbe7dfcdffffd5f8143d5958d8d8d0ddf7df71d7bf7eec5cece8efdfbf7d3ba756b4e9f3ead7634bd26459d10a2529a376f1ed1d1d1b8babab27efd7ae99d +2b82898909ebd7afc7c5c585e8e8688283838b5cbf478f1e848787b375eb569a376fae7dfcc1f978f5417878381e1e1e242424d0a95327fef8e30fdcddddd58e +55a1787a7a12111141a74e9d888f8fc7d3d393f0f070b563e92d29ea8410954e4a4a0a73e7cec5c8c888e5cb9753ad5a35b5235578d5aa5563c58a15181a1af2 +e9a79f92969656ec737c7c7c387dfa34a1a1a1b46ad58aa0a020bde9ad8b8989c1c7c787e4e464faf5ebc7ce9d3ba955ab96dab12aa4dab56bb373e74efaf4e9 +c3ad5bb7f0f1f129f430be787a52d409212a9d8d1b3792969646404040be9e245134171717fcfdfd494d4d65e3c68d257a8e46a3a157af5e444444307dfa74bd +f8304f4d4dd51e8ef6f5f52524244467e7e72d2f262626848484e4db6f25f962201e8f147542884ae7a79f7e0260e0c0812a27d13dfefefe006cd8b0e1b19ea7 +d168f0f3f3e3f9e79f2f8b58e5eacd37dfe4dcb973b46cd992f5ebd7579a0b219e96b1b1b1f630feb973e7983871a2da91f48e147542884ae7cc7fc7816af6df +71a144c9e5f56cfef9e79f2a2751c7debd7b59b97225e6e6e66cd8b0410edd3fa66ad5aab161c306cccccc58be7c39fbf6ed533b925e91a24e0851e9c4c7c703 +54fa2b149f848d8d0d00d7af5f573949f95314852953a6a0280a73e6cca161c3866a47d2498d1a35e2d34f3f455114de79e71dbd39cfb22290a24e0851e9e44d +d92487cd1e5fde55c215611ab52771eedc39c2c2c29ee8b93b76ece0c48913b468d1823163c69472b2ca65dcb871346fde9c88880855a7c3d33752d4092184a8 +341c1d1d79fdf5d7e9d4a9d36317774b962c0160e6cc99c54e75268a66606040505010f0bffd2a9e9ebc2a851042541a8686864c9f3e9d7dfbf6e1e9e9899b9b +5b898abbb8b83876ecd881adad2d7e7e7ee59054fff9f9f9616363c3f6eddb2be5e1fcb220459d10423c21070707edcdc0c0407bff498c1e3dbad0c78d8c8cb4 +db6dd0a0019d3b77e6c2850b4f13bbd2cbbb8217e0e0c183787a7a16db73b775eb56727272e8d5abd763f5d23df8fbcbbb3dd8fe93183468d0533dbf3c3ceaf5 +fc200303037c7d7dc9c9c9213434b41c52e93f29ea8410e209c5c4c4686f262626dafb4f62f5ead5c5b6f3d75f7ff19ffffc872143863c6964416e6fdd9a356b +f23d96d773f7a8e22eef310f0f8fc76eefc1d7494c4c0c2121214f16fcbfd6ae5dfb54cf2f0f45bd9e1f94b73f9ff43c47919f1475420851cafef9e71fbcbdbd +b1b7b7a779f3e6f9866d58b3660d4e4e4e383838e0ececcc8a152b70707020333393975f7eb9d86df7efdf9f73e7ce69ff6f027af2f700002000494441546464 +946fb9a9a969be650b162cc0d9d9192b2bab02854c65e6efef8f93935381c71f55dce5cd59fac20b2f946a8e47fd8eba77efcefefdfbb5eb050404f0f3cf3f6b +9ff3e0f3e7cd9b87838303172f5ea443870e346cd810373737e2e2e28a6c236fd9e4c993b1b2b262f6ecd90c1932847af5eaf1c9279f0045bf961fb5ddc7793d +57f621724a9b51f1ab082184781c8181810c1d3a948080002e5ebc48d7ae5db978f12226262604060672f2e4491a366cc89d3b77484848202626065353d362af +02ccc9c961c99225b46bd7aec4592c2d2d898a8ae2e8d1a3f8f9f93178f0e0a7fdf1b43efbecb352dbd6834ea4640070e333d362d67c3a2e2e2e8f3c949d57dc +d9dadab266cd9aa71a06a771e3c6f9feffd5575fd1a54b17edff0bfb1d8d183182d5ab57e3eeee4e6a6a2a478e1c7964efd7bffffe4b4c4c0cbebebe0c1c3890 +c0c040befefa6bc68f1fcfe6cd9b1fd9461e1f1f1fc68f1f4fc3860d3979f224414141b46ddb96f7de7bafc8d7f2a3b65bd2d7f383fb336fff8aa7a3518a1920 +66dd7f07e71cf8dfc13a85286dabec53001876a586ca494465a1d168004a757c2c5353533232728b911a356a606565a55d969c9c4c5858184e4e4e8c1f3f9e9d +3b77d2a3470fbcbdbde9d6ad1b060606f99effa0bc73b200ae5dbb86bbbb3bcb972fd76edfc8c888acacac427314b5ec69e4edbfcae8715f330fff0e8a5b9ef7 +3bba77ef1e4d9a34e1ecd9b3ac5fbf9ea8a828bef8e28b02cf313232e2faf5ebd4ad5b971a356a70f5ea556ad4a8c19d3b77b0b1b1213939b9c4af91071fcfbb +5fd46bb9a8ed96f4b596939383a1a121060606daa1862aabd2a8b7a4a74e08214a9946a3e1d8b163d4a851f08bcaa2458b48484860dfbe7d2c5cb890254b9614 +7b92f8f9f3e781dc1e9eefbfff1e0b0b8b7ccb154551a5d07af7dd77cb64bb7f7e7d0f80e663aa94c9f6f39c3d7b96ad5bb716b94e5e4f9d9f9f1f292929a4a4 +a414fa7b2d6d55aa54a17bf7ee6cddba95d5ab57b360c18247ae5bb76e5dedfdbca2b3b4beb014f55a2e0d2929b95feacb639f560652d409214429f3f6f6e6f3 +cf3f272828088d46c381030778e18517a851a306515151346bd68c8080003a76ec888b8b0b903ba8efbd7bf7a852e5d1854c606020172e5c60f8f0e1848484a0 +d168a859b326870e1da263c78eac5dbbb65c7b3be6cc995326db5df5c37f7befe794dd077d76767691d3c4797a7af2e1871f6a4fe4b7b6b626252585f8f8f872 +2b40468c18c1b871e3d06834383b3b17bbbea7a7272b56ac60d2a4492c5fbe1c4f4fcfa7ce50d46bb92825793d83ccee52dae44209218428658b172fe6dcb973 +d8dbdbd3b06143828383b973e70e903bd0aa9393138e8e8ef8f8f8f0edb7df02d0b76f5f5ab56a454e4e4e91db0e0e0e262d2d8d19336600306fde3cfaf5eb87 +b3b3337ffffdb7cc925142212121859e4fe7e9e9c9be7dfbf8fdf7dff35de99a778144de05138fe3498734717575e5eeddbb0c1d3ab444eb2f5ab4880d1b3660 +6f6fcf8f3ffec8c2850b1f3bebc38a7a2d17a5a4afe7bc0b24f22e98104f47cea913aa9373ea44792b8b73ea2a93b2de7f65fd9e909d9d5de0aae1877be61eb6 +74e952c68d1bc7d8b16365068452346edc38962e5dca92254b183b76acda7154551af596f4d4092184a8541e1c27ae63c78e85f6cc3d2c6fd0e1bc4188c5d3cb +1b74386f1062f1f4a4a81342085169646767337bf66ced61d603070e946840615b5b5bbcbdbd898b8bd38e17279ececf3fffccf5ebd7e9d9b3273636366ac7d1 +0b52d4092184a834a2a3a3f9e69b6f8aed992bccb871e30098356b96f4d63da59c9c1ced79a179fb553c3d29ea8410954edec504957d5cac2771fffe7d20f7ea +465dd4a44993279aea0b72af046dddba35a74e9de2ebafbf2ee56495cb92254bf8f3cf3f69d3a64d89669e102523459d10a2d29151ec9fdcf5ebd7012ae5e132 +8d46c3dcb973d168344c9d3a95cb972fab1d49275dba748969d3a6a1d16898376f5ea51eccbab44951272abdb367cfd2a041830ab31d51f6f2c6273b2357f53f +b6ca3e0445e7ce9d193e7c38a9a9a9f4ebd78ff4f474b523e994f4f474faf5eb475a5a1a23478e2c95b1f4c4ff4851272abdcccc4c6263632bcc7644d9ebdfbf +3f00ebd6ad533989eec9bb72b45fbf7e2a2751cf82050b68d2a409274f9e242020400ee397d0fdfbf709080820323292264d9af0e5975faa1d49ef485127744e +6464241a8d862d5bb650b3664d860c198246a3c9370761de3a0fdeffedb7df68dbb62d55aa54a159b3661c39720480962d5b02ff1b7b2b35359551a346616969 +49b56ad5f0f1f1e1ead5abda6d2f5ab4085b5b5b4c4c4c68d9b2a5f64ab887b7f3b0bffffe1b1f1f1f4c4d4d69d4a8917684f6c27ea6f9f3e7939494c4800103 +303333e3d9679f65f2e4c9da9f316ffde27ee6c58b1763636383999919a3478fe6debd7b4fb9f7f543dfbe7d31333363fdfaf5da9e2751bcc8c8484242423037 +37a76fdfbe6ac7518db9b939a1a1a1d4ae5d9bd0d050fcfdfdc9cccc543b568596999989bfbf7fbefd666666a6762cbd23459dd0590b172e243232923163c694 +68fdbc793313121278e18517183e7c3800111111c0ff4e001f356a14f5ead5233a3a9a6bd7aef1c20b2fd0ab572f00e2e2e278f3cd3759b97225c9c9c92c58b0 +805ab56a15ba9d870d1a34088d46c3952b57080b0b2b7464fa077fa661c386919e9ecee5cb973976ec18bb76ede2e38f3f2ef90e02a2a2a23879f2247ffcf107 +e1e1e17cf0c1078ff57c7d55a3460da64c994256561623478e94436825909e9ece881123c8cece66dab46995fe03d9c1c181ad5bb7626161c1860d1be8debd3b +4949496ac7aa90121313e9debd3b9b366dc2d2d2926ddbb6e1e0e0a0762cfda414636dd3a6cadaa64d8b5b4d8827b6b241b2b2b2417289d73f79f2a40228a1a1 +a1f9fe7ffffefd02eb3c78ffdebd7bdae5478e1c51341a4d8175939292148d46a3d4a95347a95bb7ae52b76e5da576edda0aa0c4c6c62a8989894ab56ad594a9 +53a72a972f5f2e3457616edcb8a1004a7474749119f37ea67ffffd570194a8a828edfa3ffef8a3626767f7583ff383cb376edca8d4ab57aff81d5c49dcbd7b57 +7174745400c5d7d757c9cccc543b528575efde3dc5d7d7570114474747e5eeddbb65dadee3be27a8e9d4a9538a95959502287676764a585898da912a94df7fff +5db1b3b35300c5dada5a3975ea94da912aacd2a8b7a4a74ee82c6f6fefc75adfc0e07f2f775353d342a7384a48484051148e1c39426464249191919c3e7d9a84 +84046c6c6c78f6d967397af428898989b46ddbf6ffdbbbfbb89aefff7fe08fe3d4d18e2c9574a98b159f8d5b3eaeb6ec3b97a13aa21821a10f6d2c6ab20b6b66 +1f1a566c7efb8c3636d64298664ce982d29636c4b4b67699f221119f84b07072bc7e7f6c9d15a9d039ef533deeb79b9bd3795f3dceeb3c6f7a7a5f62c0800138 +72e448a3db2e2f2f0700383a3a36e93395959501005c5d5db5d35c5c5c1eea6a4d474747ee49a8c5c4c40429292930373747525212542a152e5dba24752c8353 +5151012f2f2fed61b3949414989898481dcb60f4ead50b797979183468104a4a4a3074e8503cfffcf36dfecaea3367ce202424049e9e9e282929c1e0c18371ec +d831ed33744937d8d4518b57d3acddb87143fbde83de18d4cece0e32990ca74f9f868d8d4d9d3f35f736737777c7860d1b50565606954a057f7fff46d76b6b6b +0be0cf4bf99bc2c6c60600505454a47dafb0b0507b2b8ea67ee6da8deb891327e0e0e0d0a4edb7156e6e6ec8c8c8809d9d1df6efdf8f9e3d7b222e2eee9e87d0 +db92eaea6ac4c5c5c1dddd1dd9d9d9707070404646060f9bd5c3c6c6065f7ffd35de7bef3d74e8d0011b366c809b9b1b42434371e0c081367321c5ad5bb770e0 +c001848686a25bb76e888b8b43870e1df0de7befe1abafbed2febb46ba63d4f82c4486ad6bd7ae303636c6ca952bf1ca2bafe0b7df7e437878789397efd0a103 +803fcf97b3b7b747606020c2c2c290909080eeddbbe3f7df7fc7dab56bb16cd932585858e0e38f3f86afaf2f3a77ee8c8e1d3b6a9bbd3bd753fb82094b4b4b8c +1c3912111111888b8b03002c59b2e49e993a77ee0c5f5f5fcc9f3f1f090909b872e50aa2a2a2b4e70136f53387858561d9b265b878f122a2a2a23063c68c268f +4b5bd1af5f3fe4e6e662eedcb9484a4a42484808162c5880c18307c3c9c9a9cdfd222a2b2b43494909b2b3b371f1e24500c0b871e3101b1babfd4f05ddad5dbb +76888888c0942953101d1d8d4f3ef904ebd6adc3ba75ebd0a95327f4eedd1bddbb7787b9b939cccdcd759ae5d6ad5b303232d2fead4b972e5d424545058a8a8a +909f9f8fcb972f03001e7df451cc9e3d1b0b172e849595954e33502dfa38c64bd490073da7aef6f962f1f1f1c2dede5eb46fdf5e787b7b8bad5bb736787e59ed +f3cf6edfbe2dbcbcbc8452a914c78f1f1755555522222242d8dada0a232323e1e2e2225e7ae925515151212a2b2b457070b0e8d2a58b90cbe5a267cf9e223333 +b3def5dce9ecd9b342a55289f6eddb0b676767111515d560c60b172e8809132608a55229cccdcd454444c47d7fe6152b56882e5dba08535353111616566779ba +dbbe7dfbc4e8d1a385b1b1b100d0a6ff181b1b0b3f3f3f919191a1f7efa1259d53772f57ae5c116bd7ae1583070f1672b95cf2ef531f7f8c8c8cc4e0c183c5da +b56bc5d5ab57a5fe0a5a9ce6e8b76442d47362512d5bffba49e714dea4937464a34b250020f8bf661227d1af6fbffd16c3860dd3c9ad10f2f3f3d1a74f1f5457 +57ebfc7feaad514545050e1c388053a74ee1dcb97352c7d12b5b5b5b383a3a62c89021b0b0b09024436bfb37e1f2e5cbc8cfcf476161212e5dbaa4b37337abab +abb17dfb769c39730672b91c1a8d064e4e4e080808d01e51686ee6e6e6b0b4b4849b9b1b7af7ee8d4e9d3ae9643b6d4173f45bfcd79e484f6a0ee90d1a340857 +ae5cc1f2e5cbf1cc33cf481d8bea6169698971e3c6491d835a894e9d3a61e8d0a13a7d7a825aad86afaf2fce9c39034747477cf6d967983871224e9d3a85e3c7 +8fe38b2fbed05963478683174a10e9899d9d1d162f5e0c6b6b6b3cf1c41390c964888f8f973a1611b5701a8d0693274f46666626acadadb17fff7e3cfdf4d348 +4d4d8599991976efde8d3973e6d47bc53fb52e6cea88f424222202c78e1dc38d1b3770edda35a4a4a4c0c9c94927dbeaddbb3784103cf44ad4ca09213073e64c +ecdab50be6e6e675ae50767777c7debd7ba1542af1f1c71f63e1c28512a7255d6353474444d442cd9b370f9b366d42870e1d909696067777f73ad33d3c3c9098 +9808854281989818ac5ab54aa2a4a40f6cea8888885aa037df7c136bd6ac41fbf6ed919494040f0f8f7ae7f3f5f5455c5c1c6432195e7df5556cd9b245cf4949 +5fd8d4111111b530efbefb2e962d5b06232323242626c2d3d3b3c1f9838282f0fefbef430881e0e060242525e92929e9139b3a2222a21664fdfaf558b06081f6 +622b3f3fbf262d171e1e8e850b1742a3d1203030103939393a4e4afac6a68e8888a885f8ecb3cf101a1a0a21043ef8e003040505ddd7f2cb972f47686828aaaa +aa3066cc18141414e8282949814d1d1111510bb067cf1e04070743a3d1203a3a1aa1a1a10fb49e356bd620202000959595f0f6f6aef38c696ad9d8d411111119 +b8afbffe1a93264d825aadc66bafbd86c8c8c8075e975c2e474242023c3d3d51565606954a85f3e7cf37635a920a6f624506a3e6d1404444f4b723478e60ecd8 +b1a8aaaa42686828a2a3a31f7a9d0a8502bb77efc6881123909b9b8b912347222727076666ade3d16c6d15f7d411111119a89f7efa09a3478f46656525828282 +101b1b0b994cd62ceb363535457272321e7ffc71141414c0cfcf0f555555cdb26e9206f7d491e45acb43bb89889a53515111542a15cacbcbe1e7e7874f3ffd14 +edda35efbe182b2b2b646464e0e9a79fc6810307101818889d3b77f239b12d14f7d41111111998d2d252f8f8f8a0b4b4149e9e9ed8be7d3b8c8d8d75b22d0707 +07ecddbb17565656484a4ac28c1933f89cd8168a4d1d11119101292f2f874aa5427171313c3c3cb07bf76e989898e8749b3d7af440727232944a25366fde8c05 +0b16e8747ba41b6cea8888880c446565257c7d7df1d34f3fc1dddd1da9a9a9303535d5cbb63d3c3c909c9c0c85428177df7d173131317ad92e351f3675444444 +06a0aaaa0afefefe387af428dcdcdcb06fdf3e585858e83583a7a727366edc08b95c8e850b1762c3860d7add3e3d1c36754444441253abd598387122b2b3b3e1 +e0e0808c8c0cd8d8d8489265f2e4c958b3660d841078e18517f89cd816844d1d11119184341a0da64f9f8e949414edd5a8cecece92660a0d0dc5d2a54ba1d168 +10101080acac2c49f350d3b0a923222292881002a1a1a1d8be7d3bccccccb077ef5e3cfef8e352c702002c5ab40873e6cc815aadc6b3cf3e8bbcbc3ca9235123 +d8d411111149e4d5575fc5faf5eba1542ab167cf1ef4e9d347ea4875c4c6c622282808959595f0f1f1e173620d1c9b3a222222092c5dba14ab56ad8242a1c0ce +9d3b3170e040a923dd452693212e2e4e7b13e4912347a2b4b454ea58740f6cea888888f46ccd9a35f8f7bfff0db95c8ead5bb7c2dbdb5bea48f7a45028b063c7 +0e787878e0e4c99318356a142e5fbe2c752caa079b3a2222223ddab87123e6cd9b07994c86f5ebd763fcf8f152476a9452a9446a6a2adcdddd515050001f1f1f +3e27d600b1a9232222d2939d3b77222424044208bcf7de7b98316386d4919accc2c202a9a9a9707272426e6e2e020202a056aba58e45b5b0a9232222d2838c8c +0c04060642a3d160c9922598376f9ed491ee9b83830332333361656585d4d454cc9c3993cf8935206cea88888874ece0c183183b762cd46a35e6cf9f8fc58b17 +4b1de981b9b9b921353515666666d8b2650b5e7cf145a923d15fd8d4111111e9d00f3ffc8051a346a1aaaa0a21212158b56a95d4911e5afffefdb173e74e2814 +0ac4c6c662f9f2e5524722b0a9232222d299c2c2428c1c3912959595080808c0471f7d04994c2675ac66e1e9e989c4c444c8e5722c5ab4086bd7ae953a529bc7 +a68e888848074a4a4a307cf87094979743a5522121210172b95cea58cdcadfdf1f1f7ef821643219c2c3c39198982875a4368d4d1d11115133fbdffffe87e1c3 +87a3b4b41483070fc68e1d3ba05028a48ea513b366cdc2db6fbf0d8d468369d3a6f139b11262536780f2f3f32193c970ebd62da9a31011d17dba7cf932468c18 +81a2a222f4ebd70f494949502a9552c7d2a9c8c848bcfcf2cb50abd5f0f3f3436e6eaed491da2436758df8e5975fe0ecec6c30eb212222c3555555051f1f1f14 +1414a0478f1e484b4b83999999d4b1f4e29d77dec1d4a953f1c71f7f60cc9831f8f5d75fa58ed4e6b0a96b845aadc6a953a70c663d44446498d46a35c68c1983 +dcdc5cb8b8b860efdebdb0b2b2923a96dec86432c4c7c7c3cfcf0fe5e5e5f0f2f2e27362f54c274d5dcde1c3f8f878d8d8d8c0dada1abb76edc2d2a54b616161 +a1fdb9464e4e0ec68d1b072b2b2b28140af4efdf1f79797975d695999989a79e7a0aeddbb747cf9e3d71e8d0a1262d0f00e7cf9fc7e8d1a361626202575757bc +f5d65b75ae3eba7af52a424242606e6e0ea55289d1a347a3a4a40400d0a74f1f00d0cedfd0bcc09fcff37370708042a1409f3e7db07bf7eebbd653f399626363 +616f6f0f5353533cfffcf3b879f366bde3f9b0e373af4cf56968ac6ab6f5e5975fc2c2c202ab56ad42454505264e9c0853535374eedc192fbffcb2f6b0717d87 +916bdeabfdbaa9e3404464a8341a0d020202909595053b3b3becdbb70f0e0e0e52c7d23bb95c8e6ddbb661d0a041282d2d85979717cacbcba58ed566e8744f5d +6e6e2e7efef967cc9c391313274ec4ad5bb7505c5c8ce9d3a7232222423bdf952b57307efc78fcf4d34f282f2f47fffefd11121252675d1f7cf001366dda84b2 +b232f4ead50bfffad7bf9abc7c505010643219fefbdfff223b3b1b3ffef8639d75878484c0c6c606858585387dfa347af5ea853163c60000befbee3b00407575 +75a3f396969662debc79888f8fc7e5cb97f1fefbefc3d2d2b2def50040414101befffe7be4e5e5e1c8912358b46851bde3f830e3d350a6fa34365600b07af56a +e4e7e7e385175e40707030aaaaaa70e2c409e4e6e662dfbe7df77dbfa2a68e03119121124220383818494949e8dcb933d2d3d3e1e6e626752cc928954a242727 +c3dddd1dbffefa2bc68c19833ffef843ea586d8368c4961e3dc4961e3d1a9bad8eefbfff5e00106ab55a0821c491234744ed4de5e6e60a994c76cfe50f1f3e2c +e472799d75ddbc79533bfdd0a1434d5efedcb9730280282c2cbc2b9f104254545408994c26ba74e922acadad85b5b5b5b0b2b21200c4a953a7ee6bdef2f272a1 +542a456464a43871e244bd6352fb757575b576fa175f7c216c6c6cee39fd41c7a7a14c776a6cac6a5e272525092184b870e18200200a0a0ab4f32726260a4747 +c77b7e8efb190722a29660ce9c39028078f4d147c5e1c387a58e6330cacaca849b9b9b00203c3d3debfc9ea2bb3d48bf75279deea9ab39cc666c6c5ce77d8542 +51e75971df7df71d020202d0ad5b37d8dadac2d7d7171a8da6ce32eddafd1dd5c4c4a4c9cbd7ecf6757474ac376359591984103874e810f2f3f3919f9f8f1f7f +fc11656565b0b7b7bfaf793b77ee8cc3870fa3bcbc1c4f3df514060c188023478e3469ac1c1d1d51515151efb487199ffbc9d4d858d550a954daf10000575757 +ed341717179c3d7bb6c1e51bd2d0381011199a850b17e2c30f3f8452a9c4ae5dbbe0e1e12175248361636383b4b434585b5b232b2b0bd3a74fbfeb7717352fc9 +2f94a8acacc4b061c3e0e2e282c4c4441c3d7a149f7df659b32d6f6b6b0b00282e2eae77793b3b3bc864329c3e7d1a36363675fedc7993c8a6ccebeeee8e0d1b +36a0acac0c2a950afefefef7cc5ebb313d71e244bde75f3cecf8dc4fa6c6c6ea4e3636360080a2a222ed7b858585b0b3b303f077a379e3c60dedf4dbb76fdfb5 +9ea68c031191a159b16205a2a3a3a15028b06ddb36787a7a4a1dc9e0b8b9b921232303666666d8be7d3bc2c3c3a58ed4aa49ded4555454e0dab56bf0f7f747f7 +eedd71ead429ac5ebd1a40ddf3cf1e74794b4b4b8c1c3912111111282d2d45696929962c59a25ddedcdc1c818181080b0bc30f3ffc80ebd7af233f3f1fb367cf +467979393a74e800e0cf73d33a75ead4e0bc1a8d066bd7ae45494909d46a353a76eca86df66aafa7a689090b0b437979397efffd7744454561c68c19cd3e3e0d +65ba53636375a7ce9d3bc3d7d717f3e7cfc7b973e750585888a8a828edf97c5dbb7685b1b13156ae5c892b57aee0c89123080d0dbd6b3d4d1907222243b26edd +3abcfefaeb90cbe5f8f4d34fe1e7e727752483e5eeeeaebd57dfdab56b79deb42ee9e218ef9de74ad53e8faabe9fdf7cf34d616969293a74e820fcfdfd454e4e +8e90c964e2e8d1a38d9e97d5d8f2420871f6ec59a152a944fbf6ed85b3b3b3888a8aaab37c55559588888810b6b6b6c2c8c848b8b8b888975e7a4954545488db +b76f0b2f2f2fa1542ac5f1e3c71b9cb7b2b2520407078b2e5dba08b95c2e7af6ec293233338510a2ce7a3efffc730140ac58b14274e9d245989a9a8ab0b0b0bb +c6abe6e787199f8632d5a7a1b1aa6f5b172e5c1013264c104aa552989b9b8b8888883ad3e3e3e385bdbdbd68dfbebdf0f6f6165bb76ebd6b7df71a0722224394 +909020e472b990c96462ddba7552c7693176efde2de472b90020626363a58e63709ae39c3a9910b58e7dd5636bcf9e0080293fffac9bae5202df7efb2d860d1b +06b55a2dc9f6f3f3f3d1a74f1f545757c3c8c848920c4da5cbb16a49e340440400494949080808805aadc68a152bb060c102a923b5289b376f467070b0f67550 +5090c4890c4773f45b921f7ed587050b1660cf9e3da8acacc4e9d3a7b17cf9723cf3cc3352c732481c2b22a2fa65656561f2e4c950abd558b870211bba07306d +da34ac5cb9124208cc9c3913a9a9a952476a55da445367676787c58b17c3dada1a4f3cf184f6c6c874378e1511d1dd7273733176ec585cbf7e1d73e7cebdeffb +71d2df5e79e51544464642ad5623202080cf896d466df2f02b1111515315141460d8b061a8a8a8c0d4a953b169d3a63a4f25a2fb2784c0ac59b3b061c306989b +9b233b3b1beeeeee52c792140fbf121111e950515111bcbdbd515151017f7f7fc4c7c7b3a16b0632990cebd6ad839f9f1f2e5dba8451a346e1e4c99352c76af1 +d8d4111111d5a3b4b41423478e445959193c3d3d91989878cf5b42d1fd93cbe5f8fcf3cfe1e9e9a91d6b3e27f6e1b0a9232222ba43797939bcbcbc70f2e44978 +7878203939190a8542ea58ad8e42a1c0ce9d3bd1b76f5f14151541a552a1b2b252ea582d169b3a2222a25a2a2b2be1e3e3835f7ffd15eeeeeed8bb772f944aa5 +d4b15a2d333333a4a7a7c3cdcd0dc78e1dc3b3cf3e2bd92dc75a3a36754444447fa9aaaac298316390979707373737ecdfbf1f66666652c76af5acacac909191 +0107070764656521202080cf897d006cea88888800a8d56a8c1f3f1e393939dae6c2caca4aea586d86b3b333525353616e6e8ea4a424bcf0c20b68e4061d7407 +36754444d4e669341a040505213d3d1d565656c8caca42d7ae5da58ed5e6b8bbbb232d2d0d4aa5121b366cc0c2850ba58ed4a234f9d94cbf7cf2892e73101111 +494208817f6fdc889ddf7c838e8f3c828fe7ce45f58103f8e5c001a9a3b5491d01ac7afe79bcf8c107888989c1ade262ccf0f6963a568bd0e49b0f131111b534 +d7341a7490cbd1d09de5369f3b87f48b17a168d70e0b9d9cd0ed9147f4968feeeddbca4aac3d730600f082bd3d0636706ee3a55bb760de4a9e21fe30371f6e74 +047a84843cf0ca898888a4f4f9c18370b1b6467f57d77aa7afdbbb17e9bffc0263b91cab9f7b0e1eddbbeb3921dd4b0f008f7efb2d6276eec4476565f887b737 +86dc6347d35b898998ab52c1b26347fd8634308deea92322226aa9468d1a051b1b1bc4c5c5dd35ed3ffff90fe6cf9fafbd09eeb871e32448488d59b46811962f +5f0ea55289b4b4340c1e3cb8cef46bd7aec1d6d616b1b1b1080e0e9628a5616053474444add2b56bd7d0f1af3d377ffcf1479d7bcdc5c5c5e1b9e79e0300c4c7 +c763faf4e99264a4a69933670ed6ae5d0b333333e4e4e4d4794e6c6c6c2cc2c3c33164c8107cfdf5d7d2853400bcfa9588885aa5cccc4cedeb5dbb76695fefd8 +b103b366cd821002ab57af6643d702ac59b30693264d42656525468e1c89a2a222edb4e8e86800407676769bbfb71d9b3a22226a95525252b4af376fde0c2de8 +3c4300000ce14944415400484f4f47505010341a0d962e5d8ab0b030a9e2d17d90cbe5d8b469133c3d3d71fefc79a8542a9c3b770ec78f1f4759599976be4387 +0e4998527a6cea8888a8d5b97dfb36f6ecd9a3fd392323033b77eec4f8f1e3a156abf1ca2baf60d1a2451226a4fba55028909494040f0f0f141515c1cbcb0b1f +7df4519d1b14a7a6a64a98507a3ca78e88885a9ddcdc5c0c1830a0ce7b262626b871e30666cd9a8575ebd641266be8462764a8cacbcb3164c810fcfaebaf3036 +36467575b5765adfbe7d71ecd83109d3498b7bea8888a8d5a97de8b5c68d1b37e0e8e888fffbbfff4345458504a9e8615dbb760d070f1e44fffefd2193c9ea34 +7400f0fdf7dfe3ecd9b312a5931ef7d4111151abd3af5f3fe4e5e5353adfdb6fbf0d3f3f3ff4e48df60dd66fbffd86b4b434bcf1c61bb87efd7aa3f3c7c5c561 +c68c197a486678d8d4111151ab72faf46938393935f961f032990cd3a74fc7fbefbf0fb3069e5a40fa97959585a8a828e4e4e434f9fb0c0808406262a28e9319 +261e7e2522a25665cf9e3d4d6e00de78e30d9c3c7912f1f1f16ce80c90a7a727b2b3b371fcf871040606c2c4c4a4d165f6eddb77d761d9b6824d1d1111b52af5 +9d4f57c3c2c202b367cfc6c183072184c0b265cbe0e8e8a8c774f4205c5d5db175eb565cbb760d29292908080840fbf6edeb9db7b2b212b9b9b97a4e681878f8 +9588885a8debd7afd779720400181b1b43a55261ead4a9f0f3f3bb6733402dcbc58b17b175eb56c4c7c7df75c5ebabafbe8a952b574a944c3a6cea8888a8d5d8 +bd7b37c68e1d0be0cf8b25a64d9b86c0c04074e9d245e264a44bc78e1d437c7c3c6263630100bd7af5c20f3ffc20712afd63534744440fada4a404dbb66d4352 +52128a8b8b71fefc79a923e9958989099c9c9cf0e4934f62ca9429f0f2f2825c2e973a9624580bd2d5029b3a22227a60656565888c8cc4962d5bdafc73376b73 +7676464c4c0c264d9a247514bd612dd44f9fb5c0a68e88881e4872723282828270f5ea5574ead411b3664d809fff30b8ba7685b5b5a5d4f1f4eac68d9b3875aa +0c478ffe84f51fef404ece9ff7c8f3f7f7474242024c4d4d254ea85b77d6c2f3b326c0cf7f689bae85ef8efeacf75a6053474444f76dfdfaf5080d0d8546a341 +60a00aefaf7e1d9d3b77923a96c1d8b56b3f66cf7a0b172e5c42dfbe7d919595d56a6f9952bb162607aaf0feea48d6422d5feecac2ec5951b870e1b2ce6b814d +1d1111dd97acac2c787b7b43a3d160d9f270bcfefa7352473248c5c5a731da772e7efffd24468c1881f4f4f456779edd9db510f97a88d4910c5271f1698cf10d +d3792df03e754444d464d7ae5dc3f4e9d371ebd62dbcfe7a081bba06b8ba764546e67ad8d874466666263ef8e003a92335abdab510f97a081bba06b8ba76c5be +cc8f755e0b6cea8888a8c962626270e6cc19a85403b17459b8d4710c9e838335b627be0b994c86c58b17a3a2a242ea48cda6a6167c5403b1745998d4710c9e83 +83353e4b7c47a7b5205fb264c992665f2b1111b53a6ab51a93274f8646730b49c9b1b0b4e479534de1e4648bff9e28456eee8fb0b5b5c5800103a48ef4d06ad7 +c2eee435ac85267272b2c58913a538a2a35ae09e3a22226a92f4f4745cbc78113e3ecfa05b373e5aeb7e84bf180400484848903849f3a8a9056fd6c27d0b7f71 +0a00ddd4029b3a22226a92fdfbf703003c877b489ca4e5e9d7af07cccd1fc5b163c770e9d225a9e33cb49a5a18ce5ab86fbaac0536754444d424274f9e040038 +3bdb4b1ba4857274b405f0e713175ababf6bc14eda202d94ae6a814d1d111135c9c58b1701001616adf37e6bbad6b1a3120070f5ea5589933cbc9a5a30672d3c +105dd5029b3a222222a256804d1d111111512bc0a68e88880c9eb151ef46e799f5fc12edebd01796c2f531150a0a8eeb301591616153474444adc2e6cd7b6abd +4ec6ef857be0eede4dc24444fac5a68e88880c86b1516fcc7b3106ddbb8d46ff7e9370e244699de9393979183c28188fff630c5c1f5361e3c624004037375fa8 +d5d5f0f17e01dddc7c71fdfa4d3cf1b81f4a4aca30f099e9707d4c85c18382515a7a5ebb9d77de894737375fdcbca986b1516fbcf2f2bbb0b3f5c4d2a51f61fa +b485b0b51986b7dfdea0f73120a0a4a40c839e0986db63a33064d0bfb4df9bc2a80fe6bd18837f741b8327fb4dbeab3eeeb42521054ffcc30fdddd46e39feee3 +11ffe99718ed1b86afbf3aaa9d67d2c457b12739fb9ef3b7246cea8888c8a078fb3c83c2e37b3033e4598487bd5d675a8f1e8f21356d2d7efb3d19077236e2a5 +f92b0100c78b52a05018237def3aedebe34529080f7b1b815346a1f8441aa604f9e2c5f068edba2a2e5cc2f1a214b46faf0000f88e1e8c838712b064f18778f9 +95601c3c9480ffbcb7497f1f9cb4c2c3a211384585a213a97f7d6f31da693e3ecfe0f7e3c99819320ee161d10dac05089bbb1c29691fa2b0680f0e1e4ec0c041 +7d316bd6787cf2c92e004045c565e41dfb05aa5183ee397f4bc2a68e88880ccaa8bf7ec10607fb212727afceb4d3a7cf61c2f897e0e2ec83e19e21b87af58f06 +d7959d7d0c53a78e06004c9b36065f7d75443b6dfe4bd3ebcc3b6cd8537076b68342618c7ffef31f7071b1c7d5ab55cdf191e83e1dc8fe0e417f7d6f53a78dc6 +d7b5beb79a066c7ab01fbeb9a33eee346dba1f54dea18898b702dfe4e4e1b1c71ce03b7a08720fff88cb97af2261f31e044df5855cdeee9ef3b7246cea8888c8 +200921606c6c54e7bdc0c90b3069b20f8a8a53f1dbefc990cbe54d5a4fedbf6b585b5b365f586a76f7fade6a4fbfb33eeeb47a4d24be3ef029060ce885d5abb7 +62dcd808c8e5ed303950856d5b53b1313e0921cf3ddbe0fc2d099b3a222232286969df0000366e4cc2b0614fd599565676012ad54000c07bef6d4675f52ded2f +7d636323dcbca9ae33ffd0a1fdf1e95fe745c5c5edc2d0a14fea3a3e358321439fd49ecff669dc971852eb7b4bffab3e366d4cc2d0610d7f9f0505c7616d6d81 +c9812aacfbe84d1cfc361f0010f2dcb358beec63d8d97741d7ae368dcedf5234dce2121111e9d9ee2fb3101ef6362c2d3b61c717ffafceb4a8b7e6e2a92703d1 +a95347cc993b195dba58e0c48952b8ba76c5f8f123d0afef24fc58f08576fed56b5ec794c0d7b066f516d8db5b63cbd6983b37470668f59a4804054662cdeaad +b0b7ef82845adfdb975f7e85f0b068585a9ae1f33beae34e6b3fdc8efd99b990c980471e31c1471fff1b00e0e4648bc71e73c0ecd9139a347f4b2113f7daaf49 +444454cba04183f0cd37dfe040ce460c1cd84727db3036ea8dea5b2d6bef48530d1e148c6fbef91e393939183870a0d4711e4a4d2d64e7c4ebac16eaa330ea03 +f5adef1f7a3d4545259832f9351c3eb205eddae9ffa0e59041ffd2492d704f1d111111b558dddd46d7fb7e61d19ebbdebb7dfb369eea1f883ffeb88ef84dcb25 +69e874894d1d1111198cd6ba978e9a477d7be9ea6bdeeea55dbb76f82e6f7b73463228adab45252222226aa3d8d411111111b5026cea8888a8492c2c2c000017 +2f564a9ca465aab99171c78e1d254ef2f06a6ae1126be181e8aa16d8d411115193383b3b03004e9e3c236d9016aaa4a40c00e0e8e828719287f7772d9c953648 +0ba5ab5a60534744444d327cf8700040d6fe5c8993b43cc78efd824b97aea05fbf7e303737973ace43aba985fdac85fba6cb5a60534744444de2e3e3030b0b0b +a4a77f8be3c74ba48ed3a2ac59bd05003075ea548993348f9a5ad8cb5ab86f6b566f05a09b5a60534744444da25028101a1a0ab5ba1a11f362eef94c4eaa2b27 +270f9b37ef41a74e9d306dda34a9e3348bbab5b082b5d04439397948d0612db0a92322a2268b8c8c84bdbd3dd2d2bec19b8bd6481dc7e095969ec7a489af4008 +81a8a828585a5a4a1da9d9d4d4427ada37787351acd4710c5e69e9794c9ef8aa4e6b814d1d11113599a9a929366dda0423232344477f82e8e80d52473258c5c5 +a73172c4f33877ee02468c1881b973e74a1da959d5ae8598e84f1013fd89d4910c5671f169788d98a5f35a902f59b264894ed64c4444ad928b8b0b6c6d6d919a +9a8accccc3282c3c8921439e84526922753483b16bd77e8cf59f87d3a7cfa16fdfbe484949c1238f3c2275ac6677772d9cc29021fd590bb57cb92b0be3f4540b +32c103e14444f40092939311141484ab57afa253a78e98356b02fcfc87c1d5b52bacad5bcf61c6a6b871e3264e9d2ac3d1a33f61fdc73b9093930700f0f7f747 +4242024c4d4d254ea85b77d6c2f3b326c0cf7f689bae85ef8efeacf75a60534744440facacac0c919191d8b2650b341a8dd4710c86b3b3336262623069d224a9 +a3e80d6ba17efaac0536754444f4d04a4a4ab06ddb36242525a1b8b818e7cf9f973a925e999898c0c9c9094f3ef924a64c99022f2f2fc8e572a9634982b5205d +2db0a9232222226a058c6abd5e21590a222222227a18af41fc45ea2444444444f460841082f7a9232222226a05d8d411111111b5026cea888888885a01367544 +444444ad009b3a222222a256804d1d111111512bc0a68e888888a815e01325888888885a81ff0fa6f43a73b09a3fde0000000049454e44ae426082} +\pard +\pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 As you can see, Testopia objects are arranged in a hierarchy under products. At the top are test plans. From a test plan it is possible to create test cases and test runs. Test cases are broken up by categories which are associated with products. Test cas es can also be associated with one or more components. Test runs are classified by builds which are in turn broken into target milestones. Runs also have an associated environment which can include a platform and an operating system. We will take a look a t each of these in turn starting from the top.} -\par \page\pard\plain \ltrpar\s7\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs32\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b {\rtlch \ltrch\loch\f4\fs32\lang1033\i0\b Test Plans} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Let's take it from the top.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 As mentioned earlier, test plans are kind of the filing cabinet for everything in Testopia. Test plans are divided by product and act as the dashboard for everything you will do as a tester. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 To create a new test plan, click the New Plan link in the Bugzilla footer. You will be taken to a page where you will be prompted to fill in a few fields, Lets take a look at those fields.} -\par \pard\plain \ltrpar\s8\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ai\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\i\b\loch\f4\fs28\lang1033\i\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i\b Fields} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Name} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The plan name is a simple text field. Plan names can consist of any combination of letters, numbers and other characters and do not have to be unique. In fact you can have two plans of the exact same name if you like. This may actually be desirable as we w +\par \page\pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b Test Plans} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Let's take it from the top.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 As mentioned earlier, test plans are kind of the filing cabinet for everything in Testopia. Test plans are divided by product and act as the dashboard for everything you will do as a tester. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 To create a new test plan, click the New Plan link in the Bugzilla footer. You will be taken to a page where you will be prompted to fill in a few fields, Lets take a look at those fields.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\i\b\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i\b Fields} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Name} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The plan name is a simple text field. Plan names can consist of any combination of letters, numbers and other characters and do not have to be unique. In fact you can have two plans of the exact same name if you like. This may actually be desirable as we w ill see later.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Product} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Each plan must have one and only one product. This comes from the Bugzilla product list. As a tester you must have access to the product (i.e be a member of the product group) to be able to see and create plans for the product. } -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Product Version} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Once you choose a product, the product version list will show you available versions for that product (Javascript must be enabled to have the magic happen). This will be used as the default for setting up runs, which we will see later. } -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Type} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This is where you choose which type of testing this plan should represent. the default list consists of such things as Unit, System, Integration, Acceptance, and Performance, however system administrators can customize this list to meet their needs. Each p +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Product} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Each plan must have one and only one product. This comes from the Bugzilla product list. As a tester you must have access to the product (i.e be a member of the product group) to be able to see and create plans for the product. } +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Product Version} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Once you choose a product, the product version list will show you available versions for that product (Javascript must be enabled to have the magic happen). This will be used as the default for setting up runs, which we will see later. } +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Type} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This is where you choose which type of testing this plan should represent. the default list consists of such things as Unit, System, Integration, Acceptance, and Performance, however system administrators can customize this list to meet their needs. Each p lan type will represent a different mode of testing.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Plan Document} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This is a place to write up the test plan's procedure document. Depending on your organization and requirements, this can be very detailed. or not. This area shows up with a WYSIWYG editor to allow you to include formatting easily. Again, Javascript is req +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Plan Document} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This is a place to write up the test plan's procedure document. Depending on your organization and requirements, this can be very detailed. or not. This area shows up with a WYSIWYG editor to allow you to include formatting easily. Again, Javascript is req uired.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Once you hit submit, you will be taken to the plan view for your newly created plan.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 At the top of the plan page is a table containing an overview of the fields contained in a plan. You will also notice some buttons.} -\par \pard\plain \ltrpar\s8\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ai\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\i\b\loch\f4\fs28\lang1033\i\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i\b Actions} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Archive} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 As products move through their lifespan you will often find plans associated with earlier versions to be obsolete. Plans can therefore be archived to hide them from your basic searches.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 To archive a plan, click the Archive button at the top of the plan page.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If a plan is already archived the button will Unarchive the plan instead.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Print} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If you would like to see a printable version of the plan document, click the Print button.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b History} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 You can view the history of changes to a plan, as well as view unified diff comparisons of versions of a plan's text by clicking the History Button.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Cloning a Plan} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Plans can be cloned or copied. This is especially useful as you move from one version of a product to the next. You will likely need to carry forward many of the attributes and test cases that you created for an earlier version. Cloning allows you to do th +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Once you hit submit, you will be taken to the plan view for your newly created plan.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 At the top of the plan page is a table containing an overview of the fields contained in a plan. You will also notice some buttons.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\i\b\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i\b Commands} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Archive} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 As products move through their lifespan you will often find plans associated with earlier versions to be obsolete. Plans can therefore be archived to hide them from your basic searches.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 To archive a plan, click the Archive button at the top of the plan page.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If a plan is already archived the button will Unarchive the plan instead.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Print} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If you would like to see a printable version of the plan document, click the Print button.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b History} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 You can view the history of changes to a plan, as well as view unified diff comparisons of versions of a plan's text by clicking the History Button.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Cloning a Plan} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Plans can be cloned or copied. This is especially useful as you move from one version of a product to the next. You will likely need to carry forward many of the attributes and test cases that you created for an earlier version. Cloning allows you to do th is in a few mouse clicks.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 When you click the Clone button, you are presented with some options for cloning your plan. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The first couple are pretty straight forward. Give your copy of a plan a name. There is nothing preventing you from using the exact same name, though it might be harder to distinguish from earlier versions if you don't give it something at least a little u +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 When you click the Clone button, you are presented with some options for cloning your plan. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The first couple are pretty straight forward. Give your copy of a plan a name. There is nothing preventing you from using the exact same name, though it might be harder to distinguish from earlier versions if you don't give it something at least a little u nique.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Second, choose a product version for this plan.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Next you have the option of copying the plan document. If you select NO you will have a clean slate for your new plan.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 You also have the option of pointing any tags you have set to this plan to the new plan as well. We will cover tags later.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Link vs Copy} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Lastly you have the option of moving your test cases forward. You have two options here. If you choose to copy the test cases you will, in essence, be cloning those just like you are the plan. They will be exact replicas except they will not have the same +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Second, choose a product version for this plan.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Next you have the option of copying the plan document. If you select NO you will have a clean slate for your new plan.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 You also have the option of pointing any tags you have set to this plan to the new plan as well. We will cover tags later.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Link vs Copy} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Lastly you have the option of moving your test cases forward. You have two options here. If you choose to copy the test cases you will, in essence, be cloning those just like you are the plan. They will be exact replicas except they will not have the same ID. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The benefits of copies are that they are now unique test cases which can be edited at will without the fear of messing up other plans that might have been linked to them. However this means you now have two test cases where one existed before. This will in +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The benefits of copies are that they are now unique test cases which can be edited at will without the fear of messing up other plans that might have been linked to them. However this means you now have two test cases where one existed before. This will in crease the workload if you need to update test cases across versions of a product.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If you instead choose to link your test cases, what you get is the equivalent of a symbolic link in Unix. That one test case will now be pointed at more than one plan. This makes updating your test cases across plans a breeze. However if you need to branch +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If you instead choose to link your test cases, what you get is the equivalent of a symbolic link in Unix. That one test case will now be pointed at more than one plan. This makes updating your test cases across plans a breeze. However if you need to branch information in a test case for a different plan, you should clone it. You will see that you can clone a case just as easily as a plan from the case page.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If you choose to copy or link the test cases as you clone your plan, you have the option of only taking those cases that match a certain category or categories.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Once you have selected all the options for your copy, click Clone to be taken to your new plan.} -\par \page\pard\plain \ltrpar\s7\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs32\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b {\rtlch \ltrch\loch\f4\fs32\lang1033\i0\b Categories} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Before setting up a test case you need to have at least one category defined to put it in.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Categories are buckets for test cases. Each test case can belong to only one category at a time. They are here to help you organize your test cases into useful groups. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Categories are actually defined by product, meaning if you define a category in a plan for a given product, it will become available for all plans in that product.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 To create a category. Click the add link under the categories list in your test plan. You can also click the Categories header and then click add on the page that comes up.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A category is very simple, It consists of Two fields, only one of which is required.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Name} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A category must have a name. It can consist of any combination of letters and numbers and must be unique inside the product you are creating it for.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Description} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This optional field is for you to provide a verbose description of your category if you like.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \page\pard\plain \ltrpar\s7\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs32\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b {\rtlch \ltrch\loch\f4\fs32\lang1033\i0\b Builds} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Builds are similar to categories but they apply to runs. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A build is a particular iteration of a product. In software a build is often something that represents the compiled results of all the source code committed during an interval of development. That interval can be as frequent as every hour or as little as o +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If you choose to copy or link the test cases as you clone your plan, you have the option of only taking those cases that match a certain category or categories.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Once you have selected all the options for your copy, click Clone to be taken to your new plan.} +\par \page\pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b Categories} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Before setting up a test case you need to have at least one category defined to put it in.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Categories are buckets for test cases. Each test case can belong to only one category at a time. They are here to help you organize your test cases into useful groups. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Categories are actually defined by product, meaning if you define a category in a plan for a given product, it will become available for all plans in that product.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 To create a category. Click the add link under the categories list in your test plan. You can also click the Categories header and then click add on the page that comes up.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A category is very simple, It consists of Two fields, only one of which is required.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Name} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A category must have a name. It can consist of any combination of letters and numbers and must be unique inside the product you are creating it for.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Description} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This optional field is for you to provide a verbose description of your category if you like.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \page\pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b Builds} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Builds are similar to categories but they apply to runs. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A build is a particular iteration of a product. In software a build is often something that represents the compiled results of all the source code committed during an interval of development. That interval can be as frequent as every hour or as little as o nce a week, Regardless of how often a build is done, the main thing we want to track here is which builds get tested. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Like categories, builds are product specific and will show up in any plan for that product. Since builds can happen very frequently, you may wish to automate build creation using whatever build system you have devised.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 To create a new build manually click the add link under the build list in your plan, You can also click the build header and click the add new link on the page that appears.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 There are three fields for builds} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Name} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The name can consist of any letters or numbers and special characters. It must be unique within the product.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Milestone} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This is the target milestone from the product. Many builds can use the same target milestone.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Description} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This area can be used to put notes or a description about the build. It is optional.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \page\pard\plain \ltrpar\s7\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs32\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b {\rtlch \ltrch\loch\f4\fs32\lang1033\i0\b Test Cases} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test cases are the heart of Testopia. A test case is a set of steps and expected results that should be applied to a subject in order to find out if a product is sound. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 All test cases need to be associated (linked) to at least one test plan. The easiest way to go about creating a test case then, is to click the Create Test Case link on the plan page. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Let's take a look at the fields of a test case.} -\par \pard\plain \ltrpar\s8\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ai\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\i\b\loch\f4\fs28\lang1033\i\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i\b Fields} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Summary} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The summary is a short description of the test case. It can contain any combination of characters and does not need to be unique. This will allow you to quickly identify test cases in a list.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Alias} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Like a summary, Aliases are used to help you quickly identify a test case. Unlike summaries however, they must be unique in the system, meaning no two test cases, regardless of product, can have the same alias. Aliases can be used in place of ID's in linki +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Like categories, builds are product specific and will show up in any plan for that product. Since builds can happen very frequently, you may wish to automate build creation using whatever build system you have devised.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 To create a new build manually click the add link under the build list in your plan, You can also click the build header and click the add new link on the page that appears.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 There are three fields for builds} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Name} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The name can consist of any letters or numbers and special characters. It must be unique within the product.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Milestone} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This is the target milestone from the product. Many builds can use the same target milestone.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Description} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This area can be used to put notes or a description about the build. It is optional.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \page\pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b Test Cases} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test cases are the heart of Testopia. A test case is a set of steps and expected results that should be applied to a subject in order to find out if a product is sound. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 All test cases need to be associated (linked) to at least one test plan. The easiest way to go about creating a test case then, is to click the Create Test Case link on the plan page. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Let's take a look at the fields of a test case.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\i\b\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i\b Fields} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Summary} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The summary is a short description of the test case. It can contain any combination of characters and does not need to be unique. This will allow you to quickly identify test cases in a list.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Alias} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Like a summary, Aliases are used to help you quickly identify a test case. Unlike summaries however, they must be unique in the system, meaning no two test cases, regardless of product, can have the same alias. Aliases can be used in place of ID's in linki ng up test cases. Their main purpose is as an aid for automations that would like to refer to a test case by name rather than number.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Status} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The status field for test cases help you determine which test cases are actively being used for testing versus those that are only in development or are no longer relevant. Status can be one of three options.} -\par \pard\plain \ltrpar\s10\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs23\lang255\ai\ab\ltrch\dbch\af4\langfe255\hich\f4\fs23\lang1033\i\b\loch\f4\fs23\lang1033\i\b {\rtlch \ltrch\loch\f4\fs23\lang1033\i\b Proposed} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test cases with a status of proposed are currently being defined. They should not yet be used for testing as they are in flux. } -\par \pard\plain \ltrpar\s10\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs23\lang255\ai\ab\ltrch\dbch\af4\langfe255\hich\f4\fs23\lang1033\i\b\loch\f4\fs23\lang1033\i\b {\rtlch \ltrch\loch\f4\fs23\lang1033\i\b Confirmed} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Confirmed test cases are those that are actively being used in testing. } -\par \pard\plain \ltrpar\s10\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs23\lang255\ai\ab\ltrch\dbch\af4\langfe255\hich\f4\fs23\lang1033\i\b\loch\f4\fs23\lang1033\i\b {\rtlch \ltrch\loch\f4\fs23\lang1033\i\b Disabled} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Disabled test cases are either no longer relevant to a current version of a product or have been taken out of the current testing loop for whatever reason.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Priority} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The test case priority is determined by how important a test case is in relation to others in a product. It can also refer to the priority of any bugs that are identified by the test case or for which the test case is designed to check. This list is identi +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Status} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The status field for test cases help you determine which test cases are actively being used for testing versus those that are only in development or are no longer relevant. Status can be one of three options.} +\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Proposed} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test cases with a status of proposed are currently being defined. They should not yet be used for testing as they are in flux. } +\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Confirmed} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Confirmed test cases are those that are actively being used in testing. } +\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Disabled} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Disabled test cases are either no longer relevant to a current version of a product or have been taken out of the current testing loop for whatever reason.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Priority} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The test case priority is determined by how important a test case is in relation to others in a product. It can also refer to the priority of any bugs that are identified by the test case or for which the test case is designed to check. This list is identi cal to that of bug priority. } -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Category} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 As mentioned above, categories are buckets for subdividing test cases. They work in tandem with product components to allow you to quickly find test cases.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Requirement} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This field is optional and is used for tracking a requirement number if one exists for this test case.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Automatic} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If this test case is meant to be used with a script or automated system then choose automatic. This then allows you to set the path or URL for the script that is used. The default however is manual. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 It is important to note that Testopia does not automate any tests of its own accord. This field is just to help you classify which of your test cases are automated versus which are manual.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Script} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This field is only available if Automatic is chosen above. This is a place to store a path or URL to an automated script. Testopia does not run the script for you however, this is just to display where a user would look to find the script.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Arguments} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If your automated script takes any arguments you can store which ones apply to this test case in this field. Again, this is only active if Automatic is set to Automatic.} -\par \pard\plain \ltrpar\s8\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ai\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\i\b\loch\f4\fs28\lang1033\i\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i\b Dependencies} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Like bugs, test cases have a concept of dependencies. If a test case depends on another test case it would be prevented from being passed if that parent case fails. Dependencies set up an order of operations for running test cases } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 There are two fields for setting dependencies, Depends on makes this test case a child of another} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Blocks makes it a parent.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Action} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The action is the list of steps to confirm the subject under scrutiny passes inspection. The successful completion of which would earn a Passed status in a run. This follow general testing guidelines and be concise, checking the smallest unit possible. An - example might be to \'93click the file menu and choose save\'94.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Effect} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The effect is the list of successful outcomes that the action should produce in order to pass a test case. Meeting these objectives would produce a passed result where failing to meet them would produced a failed result. To extend our example above, an eff -ect might be \'93check that the file is saved on the file system\'94} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Components} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Once you have created your test case, you have the option of associating one or more Bugzilla components with it. The list of components comes from the products that this case is associated with via the plans it is linked to. This is optional as some test +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Category} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 As mentioned above, categories are buckets for subdividing test cases. They work in tandem with product components to allow you to quickly find test cases.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Components} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Once you have created your test case, you have the option of associating one or more Bugzilla components with it. The list of components comes from the products that this case is associated with via the plans it is linked to. This is optional as some test cases will be independent of component. } -\par \pard\plain \ltrpar\s8\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ai\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\i\b\loch\f4\fs28\lang1033\i\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i\b Actions} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b History} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Just as with test plans, it is possible to view the history of changes to a test case by clicking the History button. You can also take a unified diff of any two versions of the action and effect on the history page.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Clone} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 You can clone a test case in much the same way you clone a test plan. By clicking the clone button you have several options. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 First you must choose whether you are making a copy of a case or just linking an existing case to another plan.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If creating a copy, you have the option of copying just to the existing plans or a list of different plans or both. You can choose to copy the document (action and effect) or leave it blank on your copy. You can copy the tags and components as well.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Overview} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Once you have set up a test case you will notice at the top of the screen an overview section that details many of the fields you saw while setting up your test case as well as a few others. This will contain such information as the author of the test case +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Default Tester} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This person will be the default assignee for the created case-runs.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Requirement} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This field is optional and is used for tracking a requirement number if one exists for this test case.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Automatic} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If this test case is meant to be used with a script or automated system then choose automatic. This then allows you to set the path or URL for the script that is used. The default however is manual. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 It is important to note that Testopia does not automate any tests of its own accord. This field is just to help you classify which of your test cases are automated versus which are manual.} +\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Script} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This field is only available if Automatic is chosen above. This is a place to store a path or URL to an automated script. Testopia does not run the script for you however, this is just to display where a user would look to find the script.} +\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Arguments} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If your automated script takes any arguments you can store which ones apply to this test case in this field. Again, this is only active if Automatic is set to Automatic.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Dependencies} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Like bugs, test cases have a concept of dependencies. If a test case depends on another test case it would be prevented from being passed if that prerequisite case fails. Dependencies set up an order of operations for running test cases. } +\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 {\*\bkmkstart comment_text_0}{\*\bkmkend comment_text_0}If test case B \uc3 \u8220\'e2\'80\'9c\uc1 depends on\uc3 \u8221\'e2\'80\'9d\uc1 test case A, then whenever test case A} +\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 fails, test case B will be blocked from passing (it will receive a status of BLOCKED). So, A should run before B, and B should not be run if A fails. At some point this will be automatic, meaning failing a test case that blocks other test cases will automa +tically apply the BLOCKED status to those dependent test cases.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Testopia will check that there are no loops in your dependencies. } +\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Depends On} +\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Makes another test case a prerequisite for this test case. } +\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Blocks} +\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Makes this test case a prerequisite for another.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Action} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The action is the list of steps to confirm that the subject under scrutiny passes inspection. The successful completion of which would earn a PASSED status in a run. This should follow general testing guidelines and be concise, checking the smallest unit p +ossible. An example might be to \uc3 \u8220\'e2\'80\'9c\uc1 click the file menu and choose save\uc3 \u8221\'e2\'80\'9d\uc1 .} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 In the case of performance testing this might detail the list of conditions the test was run under.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Expected Results} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The Expected Results is the list of successful outcomes that the action should produce in order for a test case to be considered passed. Meeting these objectives would produce a passed result where failing to meet them would produced a failed result. To ex +tend our example above, an expected result might be \uc3 \u8220\'e2\'80\'9c\uc1 check that the file is saved on the file system\uc3 \u8221\'e2\'80\'9d\uc1 .} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 In performance testing this might contain the list of acceptable parameters.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\i\b\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i\b Commands} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b History} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Just as with test plans, it is possible to view the history of changes to a test case by clicking the History button. You can also take a unified diff of any two versions of the action and Expected Results on the history page.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Clone} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 You can clone a test case in much the same way you clone a test plan. By clicking the clone button you have several options. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 First you must choose whether you are making a copy of a case or just linking an existing case to another plan.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If creating a copy, you have the option of copying just to the existing plans or a list of different plans or both. You can choose to copy the document (action and Expected Results) or leave it blank on your copy. You can copy the tags and components as we +ll.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Overview} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Once you have set up a test case you will notice at the top of the screen an overview section that details many of the fields you saw while setting up your test case as well as a few others. This will contain such information as the author of the test case and when it was created as well as links to the test plans it is linked to.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Case Run History} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Included in the view of each test case is a table with the history of test runs that it has been run in. You will see the status it received and who it was assigned to as well as who actually ran it if it has been completed. There is also a link to a bug l +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Case Run History} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Included in the view of each test case is a table with the history of test runs that it has been run in. You will see the status it received and who it was assigned to as well as who actually ran it if it has been completed. There is also a link to a bug l ist of any bugs that were identified during the run. You can click on the run number to be taken to the test run page.} -\par \pard\plain \ltrpar\s7\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs32\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b {\rtlch \ltrch\loch\f4\fs32\lang1033\i0\b Attachments} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Both test plans and test cases can support attachments. You will find the attachments table near the bottom of both of these pages. To create an attachment, simply click the browse button and locate the file you wish to attach, type a description in the De +\par \pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b Attachments} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Both test plans and test cases can support attachments. You will find the attachments table near the bottom of both of these pages. To create an attachment, simply click the browse button and locate the file you wish to attach, type a description in the De scription field and click the attach button. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Attachments are treated very much the same as they are in Bugzilla. The size limit will be determined by the max-attachment-size parameter the same as it is for Bugzilla} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 To edit an attachment click the edit link. This takes you to a page where you can set the description, filename, and mime-type for the attachment as well as view it if it is a viewable type or download it otherwise.} -\par \pard\plain \ltrpar\s7\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs32\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b -\par \page\pard\plain \ltrpar\s7\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs32\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b {\rtlch \ltrch\loch\f4\fs32\lang1033\i0\b Test Runs} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test runs are the work horse of Testopia. A test run is the application of a list of test cases against the subject to determine if the subject meets the standards laid out by the test case. Each test run is associated with a single plan and a list of test +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Attachments are treated very much the same as they are in Bugzilla. The size limit will be determined by the max-attachment-size parameter the same as it is for Bugzilla} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 To edit an attachment click the edit link. This takes you to a page where you can set the description, filename, and mime-type for the attachment as well as view it if it is a viewable type or download it otherwise.} +\par \pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b +\par \page\pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b Test Runs} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test runs are the work horse of Testopia. A test run is the application of a list of test cases against the subject to determine if the subject meets the standards laid out by the test case. Each test run is associated with a single plan and a list of test cases. } -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Creating a Run} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 To create a test run, click the Create a New Test Run link in the plan you are creating the run for. You are taken to a page with a list of test cases that are associated with this plan. You can select all, part, or none of the test cases to be included i +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Creating a Run} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 To create a test run, click the Create a New Test Run link in the plan you are creating the run for. You are taken to a page with a list of test cases that are associated with this plan. You can select all, part, or none of the test cases to be included i n this run. Later you can search for specific test cases to add to the run if you like.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 For each test case associated with a run a record is created for the history in the test case for the result of this run against that case. } -\par \pard\plain \ltrpar\s8\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ai\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\i\b\loch\f4\fs28\lang1033\i\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i\b Fields} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Product Version} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Though a plan has this information, you may wish to mix test runs of other product versions for comparison. This allows you to set the actual product version used for testing in this run.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Plan Version} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 It is possible to set which version of the plan document you mean to run this test against. The default is the latest version} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Manager} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The run manager will usually be the person responsible for running the test cases. } -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Default Tester} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This person will be the default assignee for the created case-runs.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Status} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 There are two options here: Running and Stopped. If a test run is stopped, none of the test cases in the run can be passed or failed. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The default is running.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Build} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This allows you to set the default build for the case-runs. This list comes from the builds defined for the product on the test plan pages.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Environment} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Choose from the list of defined environments the one used for this run. Environments will be explained in detail later.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Summary} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This is a short description of the run. Much the same as that of a case summary.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Notes} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This is an area for you to make any notes about this run. This field is fully editable meaning that if you remove text it will be deleted. } -\par \pard\plain \ltrpar\s8\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ai\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\i\b\loch\f4\fs28\lang1033\i\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i\b CC List} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Once you complete the creation process you will have the option of adding and removing people from the CC list for the run. These people will eventually receive notification of changes to a test run in addition to the manager and testers. Notification is c +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 For each test case associated with a run a record is created for the history in the test case for the result of this run against that case. } +\par \pard\plain \sb240\sa120\keepn\f2\fs28\i\b\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i\b Fields} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b CC List} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Once you complete the creation process you will have the option of adding and removing people from the CC list for the run. These people will eventually receive notification of changes to a test run in addition to the manager and testers. Notification is c urrently not working as of 1.0} -\par \pard\plain \ltrpar\s8\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ai\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\i\b\loch\f4\fs28\lang1033\i\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i\b Overview} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Once you have created your run, you will see an overview section detailing such things as, which plan this run belongs to, when it was started, which product and product version as well as who the manager and default tester is.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Below the overview section you will notice a table of numbers detailing how many test cases have been completed and what their total outcomes have been. There is also a percentage bar showing the completion rate.} -\par \pard\plain \ltrpar\s8\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ai\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\i\b\loch\f4\fs28\lang1033\i\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i\b Actions} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b History} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Just as with plans and cases, you can view a history of changes to the run. This does not include changes to the notes however.} -\par \pard\plain \ltrpar\s9\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\b\loch\f4\fs28\lang1033\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i0\b Clone} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 You can clone a run the same as with other objects. When you clone a run you can choose to copy over the test cases from the run that meet the criteria you specify.} -\par \pard\plain \ltrpar\s8\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs28\lang255\ai\ab\ltrch\dbch\af4\langfe255\hich\f4\fs28\lang1033\i\b\loch\f4\fs28\lang1033\i\b {\rtlch \ltrch\loch\f4\fs28\lang1033\i\b Running a Run} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A test run is the area that most testers will spend most of their time in. This is where you will pass and fail test cases and log bugs against them.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 When you set up the run, you selected which test cases will be included. You will see one entry per test case in the Test Case Run Table in your run. By clicking on the black triangle next to the case ID you can expand the case run form.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The first step in running a test case is to set the build if it is different from the default build. Testopia is designed to be flexible in that it allows you to define your process. If you have many builds and they come very frequently, you may not wish t +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Product Version} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Though a plan has this information, you may wish to mix test runs of other product versions for comparison. This allows you to set the actual product version used for testing in this run.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Plan Version} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 It is possible to set which version of the plan document you mean to run this test against. The default is the latest version} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Manager} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The run manager will usually be the person responsible for running the test cases. } +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Status} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 There are two options here: Running and Stopped. If a test run is stopped, none of the test cases in the run can be passed or failed. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The default is running.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Build} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This allows you to set the default build for the case-runs. This list comes from the builds defined for the product on the test plan pages.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Environment} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Choose from the list of defined environments the one used for this run. Environments will be explained in detail later.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Summary} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This is a short description of the run. Much the same as that of a case summary.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Notes} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This is an area for you to make any notes about this run. This field is fully editable meaning that if you remove text it will be deleted. } +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Overview} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Once you have created your run, you will see an overview section detailing such things as, which plan this run belongs to, when it was started, which product and product version as well as who the manager and default tester is.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Below the overview section you will notice a table of numbers detailing how many test cases have been completed and what their total outcomes have been. There is also a percentage bar showing the completion rate.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\i\b\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i\b Commands} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b History} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Just as with plans and cases, you can view a history of changes to the run. This does not include changes to the notes however.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Clone} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 You can clone a run the same as with other objects. When you clone a run you can choose to copy over the test cases from the run that meet the criteria you specify.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\i\b\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i\b Running a Run} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A test run is the area that most testers will spend most of their time in. This is where you will pass and fail test cases and log bugs against them.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 When you set up the run, you selected which test cases will be included. You will see one entry per test case in the Test Case Run Table in your run. By clicking on the black triangle next to the case ID you can expand the case run form.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The first step in running a test case is to set the build if it is different from the default build. Testopia is designed to be flexible in that it allows you to define your process. If you have many builds and they come very frequently, you may not wish t o create a single run per build but would rather have a parent run and set the build on each test case that you tested against. Once the build is set you can begin your testing for that test case. Upon completion you click the appropriate button to either pass or fail the test case. In the case of performance tests you can choose to set the status to RUNNING while you perform the test and PAUSE it at anytime during the process.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The status of blocked is used when a test case has dependencies and the parent case failed.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 You have the option of making specific notes for each test case as you run it in the notes field. You can also log and attach bugs to a test case. Clicking the NEW button will open the bug creation screen in a new window. You then copy the bug number into -the bug field and click attach. You can also reassign the test case.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This format uses AJAX to make a more dynamic user experience. If you prefer, you can use the Classic interface by clicking the link here. You are presented with the same options but in a more static view.} -\par \pard\plain \ltrpar\s7\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs32\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b {\rtlch \ltrch\loch\f4\fs32\lang1033\i0\b Tags} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Tags are a novel approach to categorizing objects. They have become very popular with numerous web tools and have met with much success. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The idea behind tags is that each user can categorize each item to his or her own liking without destroying other users categorizations. Each of the big three (Cases, Runs, Plans) in Testopia can have tags associated with them. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 To tag an object simply enter a string in the tag field and click add. You can search and sort by tags by clicking the Tags header and then clicking the appropriate object of interest in the list.} -\par \pard\plain \ltrpar\s7\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs32\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b {\rtlch \ltrch\loch\f4\fs32\lang1033\i0\b Environments} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Environments are definitions of how a test run was run. In software testing this might include such things as which Operating system was used or what hardware platform. Environments can be as broad or narrow as you define them. The basic environment consis +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The status of blocked is used when a test case has dependencies and the prerequisite case failed.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 You have the option of making specific notes for each test case as you run it in the notes field. You can also log and attach bugs to a test case. Clicking the NEW button will open the bug creation screen in a new window. When you submit the bug, it will a +utomatically be associated with this test case. You can also reassign the test case.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 There are a number of filters available to allow you to display only the case-runs you are interested in. You can also sort on virtually any field in the table. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 If you wish, you can update multiple test case-runs at one time by clicking the link at the bottom of the table. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This format uses AJAX to make a more dynamic user experience. If you prefer, you can use the Classic interface by clicking the link here. You are presented with the same options but in a more static view.} +\par \pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b Tags} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Tags are a novel approach to categorizing objects. They have become very popular with numerous web tools and have met with much success. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The idea behind tags is that each user can categorize each item to his or her own liking without destroying other users categorizations. Each of the big three (Cases, Runs, Plans) in Testopia can have tags associated with them. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 To tag an object simply enter a string in the tag field and click add. You can search and sort by tags by clicking the Tags header and then clicking the appropriate object of interest in the list.} +\par \pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b Environments} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Environments are definitions of how a test run was run. In software testing this might include such things as which Operating system was used or what hardware platform. Environments can be as broad or narrow as you define them. The basic environment consis ts of an OS and platform chosen from Bugzilla's lists of these objects. However it can be much more complicated such as a suite of applications and other products or a browser. It could be a temperature range or a certain list of physical characteristics t hat your test must be conducted in. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Because there are so many ways to define an environment, Testopia allows you to insert an XML document representing your specific needs. At some future time we hope to have an environment generator application that can be used to generate the XML for you. +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Because there are so many ways to define an environment, Testopia allows you to insert an XML document representing your specific needs. At some future time we hope to have an environment generator application that can be used to generate the XML for you. Stay tuned for this in future versions.} -\par \pard\plain \ltrpar\s7\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs32\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b {\rtlch \ltrch\loch\f4\fs32\lang1033\i0\b Searching} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Testopia incorporates Bugzilla's search engine capabilities for searching on test cases, runs and plans. Each of these has its own set of search parameters which can be found by clicking the corresponding tab in the search page.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Search results are displayed as a table which is sortable. Clicking on the column you wish to sort by will return the results sorted on that column. Currently only single key ascending sort is supported. } -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The results table is also paginated. Clicking the navigation links at the bottom will allow you to jump from page to page of the results. Sorting will reset you back to page one however.} -\par \page\pard\plain \ltrpar\s7\aspalpha\sb240\sa120\keepn\ql\rtlch\af4\afs32\lang255\ab\ltrch\dbch\af4\langfe255\hich\f4\fs32\lang1033\b\loch\f4\fs32\lang1033\b {\rtlch \ltrch\loch\f4\fs32\lang1033\i0\b Getting Help} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 There are a number of resources for getting help in Testopia.} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Mailing lists} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f2\f9\aspalpha\f7\fs18\f7\fs18\f7\fs18 \u9679\'3f\tab}\ilvl0 \ltrpar\s3\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033{\field{\*\fldinst HYPERLINK "mailto:support-webtools@lists.mozilla.org" }{\fldrslt \*\cs45\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\loch{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0\ul\ulc0\cf2 support-webtools@lists.mozilla.org}}} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f2\f9\aspalpha\f7\fs18\f7\fs18\f7\fs18 \u9679\'3f\tab}\ilvl0 \ltrpar\s3\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033{\field{\*\fldinst HYPERLINK "mailto:dev-apps-webtools@lists.mozilla.org" }{\fldrslt \*\cs45\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\loch{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0\ul\ulc0\cf2 dev-apps-webtools@lists.mozilla.org}}} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 IRC} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 \tab {\field{\*\fldinst HYPERLINK "irc://irc.mozilla.org/testopia" }{\fldrslt \*\cs45\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\ul\ulc0\cf2 irc://irc.mozilla.org/testopia}}}} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Wiki} -\par \pard\plain \ltrpar\s3\aspalpha\sa120\ql\rtlch\af9\afs24\lang255\ltrch\dbch\af2\langfe255\hich\fs24\lang1033\loch\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 \tab {\field{\*\fldinst HYPERLINK "http://wiki.mozilla.org/Testopia" }{\fldrslt \*\cs45\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\ul\ulc0\cf2 http://wiki.mozilla.org/Testopia}}} } +\par \pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b Searching} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Testopia incorporates Bugzilla's search engine capabilities for searching on test cases, runs and plans. Each of these has its own set of search parameters which can be found by clicking the corresponding tab in the search page.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Search results are displayed as a table which is sortable. Clicking on the column you wish to sort by will return the results sorted on that column. Currently only single key ascending sort is supported. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The results table is also paginated. Clicking the navigation links at the bottom will allow you to jump from page to page of the results. Sorting will reset you back to page one however.} +\par \pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b The Testing Life Cycle} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Testopia can be made to fit a wide variety of product development and testing models. This is just one suggested model. Feel free to to tailor Testopia to fit your needs.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Create a Test Plan} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 As covered above, everything in testopia revolves around test plans. A typical test plan would be used to encompass a single product and product version. You should also set up categories, builds, and environments to match your testing scenario.} +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Create or Select Test Cases} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 When just starting out, you will need to create test cases for each of the areas that are to be tested in your product. The number of test cases can be in the hundreds or hundreds of thousands. Testopia is designed to scale to meet the needs of large and s +mall testing groups alike. If you are creating a plan for a different version of an existing product, you can link the existing test cases by cloning the test plan, adding test cases where appropriate to cover new features or old bugs. } +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Start a Test Run} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Once you have test cases created, you can start running tests. Create a test run and select the test cases you wish to cover. If you have multiple environments to test in, you may wish to create a run for each environment. Each run has an associated build. + Depending on how often builds happen, you may want to have separate runs for each build. If builds happen more frequently than test cycles, you can change the build on each individual test case-run as you go. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test cases have an assigned tester which is designated when the test case is created. As you go through the run however, you may wish to reassign particular test cases to different testers. This can be done individually or to a group of case-runs at once. + Though the default tester is responsible for setting a status on a test case-run, anyone with rights to edit a test run can update the case-run. The actual person to do so is captured in the tested by field. } +\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Cleaning Up} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Once all the test cases are given a closing status (PASSED, FAILED, or BLOCKED), the test run should be moved from the Running state to the Stopped state. } +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 When all test runs are completed and the product is released and reaches it's sunset, the test plan can be archived. If any test cases are no longer relevant they can be moved to the disabled status.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \page\pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b Glossary} +\par \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrt\brdrs\brdrw1\brdrcf1\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrt\brdrs\brdrw1\brdrcf1\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Action} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The list of steps that a test case must complete.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Alias} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A globally unique string that identifies a test case in conjunction with the test case ID. } +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Archive} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test plans may be archived and hidden from regular searches.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Arguments} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A list of parameters to send to an automatic test script .} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Assignee} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The person responsible for applying a status to a test case-run} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Blocks} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A test case that blocks another test cases. } +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 BLOCKED} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A status of a test case-run indicating the prerequisite test case failed.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Build} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 In software testing, a string denoting the compiled results of a period of development. } +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Category} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A property of a product that is used to classify test cases.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Clone} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 An exact replica of data between two objects. In Testopia you can clone plans, runs, and cases.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Component} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A Bugzilla component. An attribute of a product.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 CONFIRMED} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A status of a case. Confirmed test cases have been approved for use in test runs.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Default Tester} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The default person responsible for applying a status to the test case-run for a given test case.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Dependency} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test cases can be dependent on other test cases. There are two types of relationships, depends on and blocks. A test case that is blocked by another should not be examined before the prerequisite test case as success is determined in part by the outcome of + the predecessor.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Depends on} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Sets up a dependency between test cases. Depends on lists the test cases that a particular test case requires to be completed before this case.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 DISABLED} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A status of a test case denoting it is no longer used for active testing. Similar to archival for a plan.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Expected Results} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The expected results upon completing the action of a test case.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Environment} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A list of the surrounding conditions that a test run is performed in.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 FAILED} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A status of a test case-run. Denotes the test case failed in the given run.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 IDLE} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A status of a test case-run. Denotes the test case has not been examined in the given run.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Manager} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The person in charge of a given run.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Milestone} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A Bugzilla object. A property of a product that implies when a given bug or feature will be fixed or included. Testopia builds are associated with milestones.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 PASSED} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A status of a test case-run. Denotes the test case has met the conditions of success detailed in the Expected Results of the test case in the given run.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 PAUSED} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A status of a test case-run. Denotes the test case has been under examination in the given run and is on hold. Used primarily for performance tests that may span long time periods.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Plan Document} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The information of a test plan detailing what the test plan will cover for what by when. Depending on the level of scrutiny required it can be very verbose.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Plan Version} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The version of the plan document used for a particular run. } +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Priority} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The Bugzilla priority. Test cases can be assigned a priority similar to bugs.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 PROPOSED} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A status of a test case that denotes it has not yet been approved for use in test runs. } +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Requirement} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A field of a test case provided to capture information about a requirement. Typically an ID of a requirement in a separate requirement tracking system.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 RUNNING} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A status of a test case-run. Denotes the test case is in the process of being examined in the given run.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Running} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A status of a test run. Running test runs can have case-runs updated and implies that there is further testing to be done in the run.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Script} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A path to an external automated test script for a given test case. Testopia does not run this script, the field is only provided as a way of informing the user where to find it.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Stopped} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A status of a test run. Stopped test runs can not have case-runs updated. This status denotes the run i complete.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Tag} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A user defined string used to classify test plans, cases, and runs. } +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test Case} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A list of conditions and expected results for success for a particular feature or object under scrutiny. Test cases are associated with one or more test plans and with zero or more test runs.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test Case-run} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The union of a test case and a test run. Each time a test case is included in a new test run, an entry is made for it in the test case-runs table. This captures whether the test case passed or failed in the given run. Each case-run should be associated wit +h only one build for a given status. } +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test Plan} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The defining object in Testopia. Organize the other objects in Testopia.} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test Run} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The instance of performance in Testopia. Each run is associated with a single plan and environment. It contains a list of test cases to be examined and stores the results in the case-runs table. } +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Tested By} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The person who examined and applied a status to a given case-run} +\cell\row\pard \trowd\trql\trkeep\trpaddft3\trpaddt55\trpaddfl3\trpaddl55\trpaddfb3\trpaddb55\trpaddfr3\trpaddr55\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\cellx2311\clbrdrl\brdrs\brdrw1\brdrcf1\clbrdrb\brdrs\brdrw1\brdrcf1\clbrdrr\brdrs\brdrw1\brdrcf1\cellx8640 +\pard\intbl\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Type} +\cell\pard\plain \intbl\ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The plan type. Plan types might include System, Unit, Integration etc. Each plan can be of only one type.} +\cell\row\pard \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \page\pard\plain \sb240\sa120\keepn\f2\fs32\b\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b Getting Help} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 There are a number of resources for getting help in Testopia.} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Mailing lists} +\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f5\fs18\f5\fs18\f5\fs18 \u9679\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls0\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\field{\*\fldinst HYPERLINK "mailto:support-webtools@lists.mozilla.org" }{\fldrslt \*\cs30\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\loch{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 support-webtools@lists.mozilla.org}}} +\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f5\fs18\f5\fs18\f5\fs18 \u9679\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls0\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\field{\*\fldinst HYPERLINK "mailto:dev-apps-webtools@lists.mozilla.org" }{\fldrslt \*\cs30\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\loch{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 dev-apps-webtools@lists.mozilla.org}}} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 IRC} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 \tab {\field{\*\fldinst HYPERLINK "irc://irc.mozilla.org/testopia" }{\fldrslt \*\cs30\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 irc://irc.mozilla.org/testopia}}} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Wiki} +\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af7\afs24\lang255\ltrch\dbch\af3\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 \tab {\field{\*\fldinst HYPERLINK "http://wiki.mozilla.org/Testopia" }{\fldrslt \*\cs30\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 http://wiki.mozilla.org/Testopia}} } \par } \ No newline at end of file diff --git a/mozilla/webtools/testopia/testopia/doc/Manual.xhtml b/mozilla/webtools/testopia/testopia/doc/Manual.xhtml index 9cc59fe8b55..930775ab8d6 100644 --- a/mozilla/webtools/testopia/testopia/doc/Manual.xhtml +++ b/mozilla/webtools/testopia/testopia/doc/Manual.xhtml @@ -1,13 +1,13 @@ -<meta name="generator" content="StarOffice/OpenOffice.org XSLT (http://xml.openoffice.org/sx2ml)" /><meta name="created" content="2006-05-18T09:00:03" /><meta name="changedby" content="Greg Hendricks" /><meta name="changed" content="2006-06-02T15:25:40" /><base href="." /><style type="text/css"> +<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="content-type" content="text/html; charset=utf-8" /><title /><meta name="generator" content="StarOffice/OpenOffice.org XSLT (http://xml.openoffice.org/sx2ml)" /><meta name="created" content="2006-05-18T09:00:03" /><meta name="changedby" content="Greg Hendricks" /><meta name="changed" content="2006-06-16T16:44:48" /><base href="." /><style type="text/css"> @page { size: 8.5inch 11inch; margin-top: 1inch; margin-bottom: 1inch; margin-left: 1.25inch; margin-right: 1.25inch } table { border-collapse:collapse; border-spacing:0; empty-cells:show } td, th { vertical-align:top; } h1, h2, h3, h4, h5, h6 { clear:both } ol, ul { padding:0; } * { margin:0; } - *.fr1 { vertical-align:top; } + *.fr1 { vertical-align:top; text-align:center; } *.fr2 { vertical-align:top; text-align:center; } *.Graphics { vertical-align:top; text-align:center; } *.Caption { font-family:'Bitstream Vera Serif'; font-size:10pt; margin-top:0.0835in; margin-bottom:0.0835in; font-style:italic; } @@ -28,6 +28,7 @@ *.Heading3 { font-family:Arial; font-size:14pt; margin-top:0.1665in; margin-bottom:0.0835in; font-weight:bold; } *.Heading4 { font-family:Arial; font-size:85%; margin-top:0.1665in; margin-bottom:0.0835in; font-style:italic; font-weight:bold; } *.Index { font-family:'Bitstream Vera Serif'; font-size:12pt; } + *.IndexHeading { font-family:Arial; font-size:16pt; margin-top:0.1665in; margin-bottom:0.0835in; margin-left:0in; margin-right:0in; text-indent:0inch; font-weight:bold; } *.List { font-family:'Bitstream Vera Serif'; font-size:12pt; margin-top:0in; margin-bottom:0.0835in; } *.P1 { font-family:Arial; font-size:115%; margin-top:0.1665in; margin-bottom:0.0835in; font-weight:bold; } *.P10 { font-family:'Bitstream Vera Serif'; font-size:12pt; margin-top:0in; margin-bottom:0.0835in; } @@ -42,8 +43,17 @@ *.P9 { font-family:Arial; font-size:115%; margin-top:0.1665in; margin-bottom:0.0835in; font-weight:bold; } *.PreformattedText { font-family:'Courier New'; font-size:10pt; margin-top:0in; margin-bottom:0in; } *.Standard { font-family:'Bitstream Vera Serif'; font-size:12pt; } + *.TableContents { font-family:'Bitstream Vera Serif'; font-size:12pt; } + *.TableHeading { font-family:'Bitstream Vera Serif'; font-size:12pt; text-align:center ! important; font-style:italic; font-weight:bold; } *.Textbody { font-family:'Bitstream Vera Serif'; font-size:12pt; margin-top:0in; margin-bottom:0.0835in; } *.Sect1 { } + *.Table1 { width:6in; float:none; } + *.Table1A1 { padding:0.0382in; border-left-width:0.0133cm; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-width:0.0133cm; border-top-style:solid; border-top-color:#000000; border-bottom-width:0.0133cm; border-bottom-style:solid; border-bottom-color:#000000; } + *.Table1A2 { padding:0.0382in; border-left-width:0.0133cm; border-left-style:solid; border-left-color:#000000; border-right-style:none; border-top-style:none; border-bottom-width:0.0133cm; border-bottom-style:solid; border-bottom-color:#000000; } + *.Table1B1 { padding:0.0382in; border-width:0.0133cm; border-style:solid; border-color:#000000; } + *.Table1B2 { padding:0.0382in; border-left-width:0.0133cm; border-left-style:solid; border-left-color:#000000; border-right-width:0.0133cm; border-right-style:solid; border-right-color:#000000; border-top-style:none; border-bottom-width:0.0133cm; border-bottom-style:solid; border-bottom-color:#000000; } + *.Table1A { width:1.6056in; } + *.Table1B { width:4.3944in; } *.BulletSymbols { font-family:StarSymbol; font-size:9pt; } *.EndnoteSymbol { } *.FootnoteSymbol { } @@ -51,4 +61,4 @@ *.NumberingSymbols { } *.SourceText { font-family:'Cumberland AMT'; } *.VisitedInternetLink { color:#800000; text-decoration:underline; } - </style></head><body dir="ltr"><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><div class="Textbody"><img width="429" height="425" alt="" src="file:///home/ghendricks/workspace/bnc-2.20/testopia/doc/" class="fr1" /></div><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="P2">Bugzilla Testopia </p><p class="P3"><a href="http://www.mozilla.org/projects/testopia">http://www.mozilla.org/projects/testopia</a></p><p class="P4">Table of Contents </p><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Introduction</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Test Plans</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Test Cases</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Test Runs</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Installation</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Requirements</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Steps</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>The Big Picture</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Test Plans</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>Fields</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Name</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Product</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Product Version</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Type</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Plan Document</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>Actions</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Archive</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Print</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>History</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Cloning a Plan</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Link vs Copy</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Categories</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Name</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Description</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Builds</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Name</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Milestone</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Description</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Test Cases</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>Fields</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Summary</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Alias</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Status</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P8"><colgroup><col style="width: 5.4102in" /></colgroup><tr><td>Proposed</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P8"><colgroup><col style="width: 5.4102in" /></colgroup><tr><td>Confirmed</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P8"><colgroup><col style="width: 5.4102in" /></colgroup><tr><td>Disabled</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Priority</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Category</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Requirement</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Automatic</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Script</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Arguments</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>Dependencies</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Action</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Effect</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Components</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>Actions</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>History</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Clone</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Overview</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Case Run History</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Attachments</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Test Runs</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Creating a Run</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>Fields</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Product Version</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Plan Version</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Manager</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Default Tester</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Status</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Build</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Environment</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Summary</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Notes</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>CC List</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>Overview</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>Actions</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>History</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Clone</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>Running a Run</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Tags</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Environments</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Searching</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Getting Help</td></tr></table><h1 class="P9"><a name="Introduction" />Introduction</h1><p class="Standard">Welcome to Bugzilla Testopia, the place where all tests are happy. :-) </p><p class="Standard">Testopia is an extension to the Bugzilla bug tracking system designed to track testing efforts for products. Though it is designed with software testing in mind, it can be used to track testing on virtually anything in the engineering process.  </p><p class="Standard"> </p><p class="Standard">As an extension to Bugzilla it integrates closely with bug tracking every step of the way. Testopia provides the ability to link your bugs with the tests that verify those bugs are addressed and visa versa. </p><p class="Standard"> </p><p class="Standard">Testopia takes a standard black box testing approach. The major objects of testopia are divided into three classes.  </p><h3 class="Heading3"><a name="Test_Plans" />Test Plans</h3><p class="Textbody">Test plans are the top level documents that lay out a testing procedure. In Testopia. plans are used to organize test cases and test runs.  </p><h3 class="Heading3"><a name="Test_Cases" />Test Cases</h3><p class="Textbody">Test cases are the meat of any testing process. These detail the steps to verify that the subject passes muster as well as the expected results.  </p><h3 class="Heading3"><a name="Test_Runs" />Test Runs</h3><p class="Textbody">Test runs are the cumulative results of running a course of test cases against a particular version or build of a product.  </p><p class="Textbody"> </p><p class="Textbody">Each of these objects is set within the framework of Bugzilla (i.e. Products, Components, Milestones etc) and Testopia relies heavily upon them. </p><p class="Textbody">There are also a number of other objects in Testopia that support the big three. We will look at each in turn as we progress through the tour.  </p><p class="Textbody"> </p><p class="Textbody">So, shall we get started? </p><h1 class="P9"><a name="Installation" />Installation</h1><p class="Textbody">Testopia is an extension to Bugzilla. It goes without saying then that you should have Bugzilla up and running first. Instructions for installing Bugzilla can be found at bugzilla.org as well as in the package you downloaded. Basically all you need is to unzip the package and run checksetup.pl and follow any instructions that come up. </p><p class="Textbody">You can run Bugzilla on either Linux or Windows operating systems, though Testopia has not been thoroughly tested on Windows yet. </p><p class="Textbody">Beyond the required packages for Bugzilla, in order to install Testopia you should first make sure you have the following requirements met. </p><h3 class="Heading3"><a name="Requirements" />Requirements</h3><p class="Textbody">Bugzilla 2.20 (Currently the only version tested with Testopia 1.0, however this does not mean it won't work with other versions) </p><p class="Textbody">Text::Diff Latest version should work </p><p class="Textbody">As far as databases are concerned, Testopia just adds a number of tables to the existing Bugzilla database. Currently Testopia only supports Mysql as a database. By this we mean it is the only one tested as of version 1.0 although there is no real reason it shouldn't work with PostGres (the other database engine officially supported by Bugzilla). We just don't have any table creation scripts for it yet.  </p><p class="Textbody">Testopia has been tested on Mysql 4.1 and 5.0. Bugzilla requires 4.1 as of 2.20. </p><h3 class="Heading3"><a name="Steps" />Steps</h3><ol style="margin-left:1.25cm;list-style-type:decimal; "><li class="P10" style="margin-left:0cm;"><p class="P10" style="margin-left:0.25cm;">Copy the testopia tar ball into your bugzilla's root directory. </p></li><li class="P10" style="margin-left:0cm;"><p class="P10" style="margin-left:0.25cm;">Untar  </p><ol style="margin-left:0.75cm;list-style-type:decimal; "><li class="P10" style="margin-left:0cm;"><p class="P10" style="margin-left:0.25cm;"><span class="SourceText">tar xzvf testopia-<release>.tar.gz</span></p></li></ol></li><li class="P10" style="margin-left:0cm;"><p class="P10" style="margin-left:0.25cm;">Run tr_install.pl  </p><ol style="margin-left:0.75cm;list-style-type:decimal; "><li class="P10" style="margin-left:0cm;"><p class="P10" style="margin-left:0.25cm;"><span class="SourceText">perl tr_install.pl</span></p></li></ol></li></ol><p class="Textbody">The install script sets up the database tables, patches your code, and sets up three new groups: managetestplans, edittestcases, and runtests. </p><p class="Textbody">If the patch fails, you may want to patch the files by hand. There are only 4 small changes to the Bugzilla 2.20 code. </p><p class="Textbody">You should now be able to See the testopia links in the Bugzilla footer. Make sure you set up your the new testopia user groups to include whomever is going to need access to test cases.  </p><h1 class="P9"><a name="The_Big_Picture" />The Big Picture</h1><p class="Textbody">We will start with the 10,000 foot view and zoom in from there. This section is called the big picture since, well, it is a big picture. </p><p class="Textbody"> </p><div class="Textbody"><img width="735" height="571" alt="" src="file:///home/ghendricks/workspace/bnc-2.20/testopia/doc/" class="fr2" /></div><p class="Textbody"> </p><p class="Textbody">As you can see, Testopia objects are arranged in a hierarchy under products.  At the top are test plans. From a test plan it is possible to create test cases and test runs. Test cases are broken up by categories which are associated with products. Test cases can also be associated with one or more components.  Test runs are classified by builds which are in turn broken into target milestones. Runs also have an associated environment which can include a platform and an operating system. We will take a look at each of these in turn starting from the top.</p><h1 class="P9"><a name="Test_Plans" />Test Plans</h1><p class="Textbody">Let's take it from the top. </p><p class="Textbody">As mentioned earlier, test plans are kind of the filing cabinet for everything in Testopia.  Test plans are divided by product and act as the dashboard for everything you will do as a tester. </p><p class="Textbody">To create a new test plan, click the New Plan link in the Bugzilla footer. You will be taken to a page where you will be prompted to fill in a few fields, Lets take a look at those fields. </p><h2 class="Heading2"><a name="Fields" />Fields</h2><h3 class="Heading3"><a name="Name" />Name</h3><p class="Textbody">The plan name is a simple text field. Plan names can consist of any combination of letters, numbers and other characters and do not have to be unique. In fact you can have two plans of the exact same name if you like. This may actually be desirable as we will see later. </p><h3 class="Heading3"><a name="Product" />Product</h3><p class="Textbody">Each plan must have one and only one product. This comes from the Bugzilla product list. As a tester you must have access to the product (i.e be a member of the product group) to be able to see and create plans for the product.  </p><h3 class="Heading3"><a name="Product_Version" />Product Version</h3><p class="Textbody">Once you choose a product, the product version list will show you available versions for that product (Javascript must be enabled to have the magic happen). This will be used as the default for setting up runs, which we will see later.  </p><h3 class="Heading3"><a name="Type" />Type</h3><p class="Textbody">This is where you choose which type of testing this plan should represent. the default list consists of such things as Unit, System, Integration, Acceptance, and Performance, however system administrators can customize this list to meet their needs. Each plan type will represent a different mode of testing. </p><h3 class="Heading3"><a name="Plan_Document" />Plan Document</h3><p class="Textbody">This is a place to write up the test plan's procedure document. Depending on your organization and requirements, this can be very detailed. or not. This area shows up with a WYSIWYG editor to allow you to include formatting easily. Again, Javascript is required. </p><p class="Textbody"> </p><p class="Textbody">Once you hit submit, you will be taken to the plan view for your newly created plan. </p><p class="Textbody">At the top of the plan page is a table containing an overview of the fields contained in a plan. You will also notice some buttons. </p><h2 class="Heading2"><a name="Actions" />Actions</h2><h3 class="Heading3"><a name="Archive" />Archive</h3><p class="Textbody">As products move through their lifespan you will often find plans associated with earlier versions to be obsolete. Plans can therefore be archived to hide them from your basic searches. </p><p class="Textbody">To archive a plan, click the Archive button at the top of the plan page. </p><p class="Textbody">If a plan is already archived the button will Unarchive the plan instead. </p><h3 class="Heading3"><a name="Print" />Print</h3><p class="Textbody">If you would like to see a printable version of the plan document, click the Print button. </p><h3 class="Heading3"><a name="History" />History</h3><p class="Textbody">You can view the history of changes to a plan, as well as view unified diff comparisons of versions of a plan's text by clicking the History Button. </p><h3 class="Heading3"><a name="Cloning_a_Plan" />Cloning a Plan</h3><p class="Textbody">Plans can be cloned or copied. This is especially useful as you move from one version of a product to the next. You will likely need to carry forward many of the attributes and test cases that you created for an earlier version. Cloning allows you to do this in a few mouse clicks. </p><p class="Textbody">When you click the Clone button, you are presented with some options for cloning your plan.  </p><p class="Textbody">The first couple are pretty straight forward. Give your copy of a plan a name. There is nothing preventing you from using the exact same name, though it might be harder to distinguish from earlier versions if you don't give it something at least a little unique. </p><p class="Textbody">Second, choose a product version for this plan. </p><p class="Textbody">Next you have the option of copying the plan document. If you select NO you will have a clean slate for your new plan. </p><p class="Textbody">You also have the option of pointing any tags you have set to this plan to the new plan as well. We will cover tags later. </p><h3 class="Heading3"><a name="Link_vs_Copy" />Link vs Copy</h3><p class="Textbody">Lastly you have the option of moving your test cases forward. You have two options here. If you choose to copy the test cases you will, in essence, be cloning those just like you are the plan. They will be exact replicas except they will not have the same ID.  </p><p class="Textbody">The benefits of copies are that they are now unique test cases which can be edited at will without the fear of messing up other plans that might have been linked to them. However this means you now have two test cases where one existed before. This will increase the workload if you need to update test cases across versions of a product. </p><p class="Textbody">If you instead choose to link your test cases, what you get is the equivalent of a symbolic link in Unix. That one test case will now be pointed at more than one plan. This makes updating your test cases across plans a breeze. However if you need to branch information in a test case for a different plan, you should clone it. You will see that you can clone a case just as easily as a plan from the case page. </p><p class="Textbody">If you choose to copy or link the test cases as you clone your plan, you have the option of only taking those cases that match a certain category or categories. </p><p class="Textbody">Once you have selected all the options for your copy, click Clone to be taken to your new plan. </p><h1 class="P9"><a name="Categories" />Categories</h1><p class="Textbody">Before setting up a test case you need to have at least one category defined to put it in. </p><p class="Textbody">Categories are buckets for test cases. Each test case can belong to only one category at a time. They are here to help you organize your test cases into useful groups.  </p><p class="Textbody">Categories are actually defined by product, meaning if you define a category in a plan for a given product, it will become available for all plans in that product. </p><p class="Textbody">To create a category. Click the add link under the categories list in your test plan. You can also click the Categories header and then click add on the page that comes up. </p><p class="Textbody">A category is very simple, It consists of Two fields, only one of which is required. </p><h3 class="Heading3"><a name="Name" />Name</h3><p class="Textbody">A category must have a name. It can consist of any combination of letters and numbers and must be unique inside the product you are creating it for. </p><h3 class="Heading3"><a name="Description" />Description</h3><p class="Textbody">This optional field is for you to provide a verbose description of your category if you like. </p><p class="Textbody"> </p><h1 class="P9"><a name="Builds" />Builds</h1><p class="Textbody">Builds are similar to categories but they apply to runs.  </p><p class="Textbody">A build is a particular iteration of a product. In software a build is often something that represents the compiled results of all the source code committed during an interval of development. That interval can be as frequent as every hour or as little as once a week, Regardless of how often a build is done, the main thing we want to track here is which builds get tested.  </p><p class="Textbody">Like categories, builds are product specific and will show up in any plan for that product.  Since builds can happen very frequently, you may wish to automate build creation using whatever build system you have devised.</p><p class="Textbody">To create a new build manually click the add link under the build list in your plan, You can also click the build header and click the add new link on the page that appears. </p><p class="Textbody">There are three fields for builds </p><h3 class="Heading3"><a name="Name" />Name</h3><p class="Textbody">The name can consist of any letters or numbers and special characters. It must be unique within the product. </p><h3 class="Heading3"><a name="Milestone" />Milestone</h3><p class="Textbody">This is the target milestone from the product.  Many builds can use the same target milestone.</p><h3 class="Heading3"><a name="Description" />Description</h3><p class="Textbody">This area can be used to put notes or a description about the build. It is optional. </p><p class="Textbody"> </p><h1 class="P9"><a name="Test_Cases" />Test Cases</h1><p class="Textbody">Test cases are the heart of Testopia. A test case is a set of steps and expected results that should be applied to a subject in order to find out if a product is sound.  </p><p class="Textbody">All test cases need to be associated (linked) to at least one test plan. The easiest way to go about creating a test case then, is to click the Create Test Case link on the plan page.  </p><p class="Textbody">Let's take a look at the fields of a test case. </p><h2 class="Heading2"><a name="Fields" />Fields</h2><h3 class="Heading3"><a name="Summary" />Summary</h3><p class="Textbody">The summary is a short description of the test case. It can contain any combination of characters and does not need to be unique. This will allow you to quickly identify test cases in a list. </p><h3 class="Heading3"><a name="Alias" />Alias</h3><p class="Textbody">Like a summary, Aliases are used to help you quickly identify a test case. Unlike summaries however, they must be unique in the system, meaning no two test cases, regardless of product, can have the same alias. Aliases can be used in place of ID's in linking up test cases. Their main purpose is as an aid for automations that would like to refer to a test case by name rather than number. </p><h3 class="Heading3"><a name="Status" />Status</h3><p class="Textbody">The status field for test cases help you determine which test cases are  actively being used for testing versus those that are only in development or are no longer relevant. Status can be one of three options.</p><h4 class="Heading4"><a name="Proposed" />Proposed</h4><p class="Textbody">Test cases with a status of proposed are currently being defined. They should not yet be used for testing as they are in flux.  </p><h4 class="Heading4"><a name="Confirmed" />Confirmed</h4><p class="Textbody">Confirmed test cases are those that are actively being used in testing.  </p><h4 class="Heading4"><a name="Disabled" />Disabled</h4><p class="Textbody">Disabled test cases are either no longer relevant to a current version of a product or have been taken out of the current testing loop for whatever reason. </p><h3 class="Heading3"><a name="Priority" />Priority</h3><p class="Textbody">The test case priority is determined by how important a test case is in relation to others in a product. It can also refer to the priority of any bugs that are identified by the test case or for which the test case is designed to check. This list is identical to that of bug priority.  </p><h3 class="Heading3"><a name="Category" />Category</h3><p class="Textbody">As mentioned above, categories are buckets for subdividing test cases. They work in tandem with product components to allow you to quickly find test cases. </p><h3 class="Heading3"><a name="Requirement" />Requirement</h3><p class="Textbody">This field is optional and is used for tracking a requirement number if one exists for this test case. </p><h3 class="Heading3"><a name="Automatic" />Automatic</h3><p class="Textbody">If this test case is meant to be used with a script or automated system then choose automatic. This then allows you to set the path or URL for the script that is used. The default however is manual.  </p><p class="Textbody">It is important to note that Testopia does not automate any tests of its own accord. This field is just to help you classify which of your test cases are automated versus which are manual. </p><h3 class="Heading3"><a name="Script" />Script</h3><p class="Textbody">This field is only available if Automatic is chosen above. This is a place to store a path or URL to an automated script. Testopia does not run the script for you however, this is just to display where a user would look to find the script. </p><h3 class="Heading3"><a name="Arguments" />Arguments</h3><p class="Textbody">If your automated script takes any arguments you can store which ones apply to this test case in this field. Again, this is only active if Automatic is set to Automatic. </p><h2 class="Heading2"><a name="Dependencies" />Dependencies</h2><p class="Textbody">Like bugs, test cases have a concept of dependencies. If a test case depends on another test case it would be prevented from being passed if that parent case fails. Dependencies set up an order of operations for running test cases  </p><p class="Textbody">There are two fields for setting dependencies, Depends on makes this test case a child of another </p><p class="Textbody">Blocks makes it a parent. </p><h3 class="Heading3"><a name="Action" />Action</h3><p class="Textbody">The action is the list of steps to confirm the subject under scrutiny passes inspection. The successful completion of which would earn a Passed status in a run. This follow general testing guidelines and be concise, checking the smallest unit possible.  An example might be to “click the file menu and choose save”.</p><h3 class="Heading3"><a name="Effect" />Effect</h3><p class="Textbody">The effect is the list of successful outcomes that the action should produce in order to pass a test case. Meeting these objectives would produce a passed result where failing to meet them would produced a failed result. To extend our example above, an effect might be “check that the file is saved on the file system” </p><h3 class="Heading3"><a name="Components" />Components</h3><p class="Textbody">Once you have created your test case, you have the option of associating one or more Bugzilla components with it. The list of components comes from the products that this case is associated with via the plans it is linked to. This is optional as some test cases will be independent of component.  </p><h2 class="Heading2"><a name="Actions" />Actions</h2><h3 class="Heading3"><a name="History" />History</h3><p class="Textbody">Just as with test plans, it is possible to view the history of changes to a test case by clicking the History button. You can also take a unified diff of any two versions of the action and effect on the history page. </p><h3 class="Heading3"><a name="Clone" />Clone</h3><p class="Textbody">You can clone a test case in much the same way you clone a test plan. By clicking the clone button you have several options.  </p><p class="Textbody">First you must choose whether you are making a copy of a case or just linking an existing case to another plan. </p><p class="Textbody">If creating a copy, you have the option of copying just to the existing plans or a list of different plans or both. You can choose to copy the document (action and effect) or leave it blank on your copy. You can copy the tags and components as well. </p><h3 class="Heading3"><a name="Overview" />Overview</h3><p class="Textbody">Once you have set up a test case you will notice at the top of the screen an overview section that details many of the fields you saw while setting up your test case as well as a few others. This will contain such information as the author of the test case and when it was created as well as links to the test plans it is linked to. </p><h3 class="Heading3"><a name="Case_Run_History" />Case Run History</h3><p class="Textbody">Included in the view of each test case is a table with the history of test runs that it has been run in. You will see the status it received and who it was assigned to as well as who actually ran it if it has been completed. There is also a link to a bug list of any bugs that were identified during the run. You can click on the run number to be taken to the test run page. </p><h1 class="Heading1"><a name="Attachments" />Attachments</h1><p class="Textbody">Both test plans and test cases can support attachments. You will find the attachments table near the bottom of both of these pages. To create an attachment, simply click the browse button and locate the file you wish to attach, type a description in the Description field and click the attach button.  </p><p class="Textbody">Attachments are treated very much the same as they are in Bugzilla. The size limit will be determined by the max-attachment-size parameter the same as it is for Bugzilla </p><p class="Textbody">To edit an attachment click the edit link. This takes you to a page where you can set the description, filename, and mime-type for the attachment as well as view it if it is a viewable type or download it otherwise. </p><h1 class="P9"><a name="Test_Runs" />Test Runs</h1><p class="Textbody">Test runs are the work horse of Testopia. A test run is the application of a list of test cases against the subject to determine if the subject meets the standards laid out by the test case. Each test run is associated with a single plan and a list of test cases.  </p><h3 class="Heading3"><a name="Creating_a_Run" />Creating a Run</h3><p class="Textbody">To create a test run, click the Create a New Test Run link in the plan you are creating the run for.  You are taken to a page with a list of test cases that are associated with this plan. You can select all, part, or none of the test cases to be included in this run. Later you can search for specific test cases to add to the run if you like.</p><p class="Textbody">For each test case associated with a run a record is created for the history in the test case for the result of this run against that case.  </p><h2 class="Heading2"><a name="Fields" />Fields</h2><h3 class="Heading3"><a name="Product_Version" />Product Version</h3><p class="Textbody">Though a plan has this information, you may wish to mix test runs of other product versions for comparison. This allows you to set the actual product version used for testing in this run. </p><h3 class="Heading3"><a name="Plan_Version" />Plan Version</h3><p class="Textbody">It is possible to set which version of the plan document you mean to run this test against. The default is the latest version </p><h3 class="Heading3"><a name="Manager" />Manager</h3><p class="Textbody">The run manager will usually be the person responsible for running the test cases.  </p><h3 class="Heading3"><a name="Default_Tester" />Default Tester</h3><p class="Textbody">This person will be the default assignee for the created case-runs. </p><h3 class="Heading3"><a name="Status" />Status</h3><p class="Textbody">There are two options here: Running and Stopped. If a test run is stopped, none of the test cases in the run can be passed or failed.  </p><p class="Textbody">The default is running. </p><h3 class="Heading3"><a name="Build" />Build</h3><p class="Textbody">This allows you to set the default build for the case-runs. This list comes from the builds defined for the product on the test plan pages. </p><h3 class="Heading3"><a name="Environment" />Environment</h3><p class="Textbody">Choose from the list of defined environments the one used for this run. Environments will be explained in detail later. </p><h3 class="Heading3"><a name="Summary" />Summary</h3><p class="Textbody">This is a short description of the run. Much the same as that of a case summary. </p><h3 class="Heading3"><a name="Notes" />Notes</h3><p class="Textbody">This is an area for you to make any notes about this run. This field is fully editable meaning that if you remove text it will be deleted.  </p><h2 class="Heading2"><a name="CC_List" />CC List</h2><p class="Textbody">Once you complete the creation process you will have the option of adding and removing people from the CC list for the run. These people will eventually receive notification of changes to a test run in addition to the manager and testers. Notification is currently not working as of 1.0 </p><h2 class="Heading2"><a name="Overview" />Overview</h2><p class="Textbody">Once you have created your run, you will see an overview section detailing such things as, which plan this run belongs to, when it was started, which product and product version as well as who the manager and default tester is. </p><p class="Textbody">Below the overview section you will notice a table of numbers detailing how many test cases have been completed and what their total outcomes have been. There is also a percentage bar showing the completion rate. </p><h2 class="Heading2"><a name="Actions" />Actions</h2><h3 class="Heading3"><a name="History" />History</h3><p class="Textbody">Just as with plans and cases, you can view a history of changes to the run. This does not include changes to the notes however. </p><h3 class="Heading3"><a name="Clone" />Clone</h3><p class="Textbody">You can clone a run the same as with other objects. When you clone a run you can choose to copy over the test cases from the run that meet the criteria you specify. </p><h2 class="Heading2"><a name="Running_a_Run" />Running a Run</h2><p class="Textbody">A test run is the area that most testers will spend most of their time in. This is where you will pass and fail test cases and log bugs against them. </p><p class="Textbody">When you set up the run, you selected which test cases will be included. You will see one entry per test case in the Test Case Run Table in your run. By clicking on the black triangle next to the case ID you can expand the case run form. </p><p class="Textbody">The first step in running a test case is to set the build if it is different from the default build. Testopia is designed to be flexible in that it allows you to define your process. If you have many builds and they come very frequently, you may not wish to create a single run per build but would rather have a parent run and set the build on each test case that you tested against. Once the build is set you can begin your testing for that test case. Upon completion you click the appropriate button to either pass or fail the test case. In the case of performance tests you can choose to set the status to RUNNING while you perform the test and PAUSE it at anytime during the process. </p><p class="Textbody">The status of blocked is used when a test case has dependencies and the parent case failed. </p><p class="Textbody">You have the option of making specific notes for each test case as you run it in the notes field. You can also log and attach bugs to a test case. Clicking the NEW button will open the bug creation screen in a new window. You then copy the bug number into the bug field and click attach. You can also reassign the test case. </p><p class="Textbody">This format uses AJAX to make a more dynamic user experience. If you prefer, you can use the Classic interface by clicking the link here. You are presented with the same options but in a more static view. </p><h1 class="Heading1"><a name="Tags" />Tags</h1><p class="Textbody">Tags are a novel approach to categorizing objects. They have become very popular with numerous web tools and have met with much success.  </p><p class="Textbody">The idea behind tags is that each user can categorize each item to his or her own liking without destroying other users categorizations. Each of the big three (Cases, Runs, Plans) in Testopia can have tags associated with them.  </p><p class="Textbody">To tag an object simply enter a string in the tag field and click add. You can search and sort by tags by clicking the Tags header and then clicking the appropriate object of interest in the list. </p><h1 class="Heading1"><a name="Environments" />Environments</h1><p class="Textbody">Environments are definitions of how a test run was run. In software testing this might include such things as which Operating system was used or what hardware platform. Environments can be as broad or narrow as you define them. The basic environment consists of an OS and platform chosen from Bugzilla's lists of these objects. However it can be much more complicated such as a suite of applications and other products or a browser. It could be a temperature range or a certain list of physical characteristics that your test must be conducted in.  </p><p class="Textbody">Because there are so many ways to define an environment, Testopia allows you to insert an XML document representing your specific needs. At some future time we hope to have an environment generator application that can be used to generate the XML for you. Stay tuned for this in future versions. </p><h1 class="Heading1"><a name="Searching" />Searching</h1><p class="Textbody">Testopia incorporates Bugzilla's search engine capabilities for searching on test cases, runs and plans. Each of these has its own set of search parameters which can be found by clicking the corresponding tab in the search page. </p><p class="Textbody">Search results are displayed as a table which is sortable. Clicking on the column you wish to sort by will return the results sorted on that column. Currently only single key ascending sort is supported.  </p><p class="Textbody">The results table is also paginated. Clicking the navigation links at the bottom will allow you to jump from page to page of the results. Sorting will reset you back to page one however. </p><h1 class="P9"><a name="Getting_Help" />Getting Help</h1><p class="Textbody">There are a number of resources for getting help in Testopia. </p><p class="Textbody"> </p><p class="Textbody">Mailing lists </p><ul style="margin-left:1.25cm;"><li class="P11" style="margin-left:0cm;"><p class="P11" style="margin-left:0.25cm;"><a href="mailto:support-webtools@lists.mozilla.org">support-webtools@lists.mozilla.org</a></p></li><li class="P11" style="margin-left:0cm;"><p class="P11" style="margin-left:0.25cm;"><a href="mailto:dev-apps-webtools@lists.mozilla.org">dev-apps-webtools@lists.mozilla.org</a></p></li></ul><p class="Textbody">IRC </p><p class="Textbody">        <a href="irc://irc.mozilla.org/testopia">irc://irc.mozilla.org/testopia</a></p><p class="Textbody">Wiki </p><p class="Textbody">        <a href="http://wiki.mozilla.org/Testopia">http://wiki.mozilla.org/Testopia</a> </p></body></html> \ No newline at end of file + </style></head><body dir="ltr"><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><div class="Textbody"><img width="480" height="592" alt="" src="file:///home/ghendricks/workspace/bnc-2.20/testopia/doc/" class="fr1" /></div><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="Textbody"> </p><p class="P2">Bugzilla Testopia </p><p class="P3"><a href="http://www.mozilla.org/projects/testopia">http://www.mozilla.org/projects/testopia</a></p><p class="P4">Table of Contents </p><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Introduction</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Test Plans</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Test Cases</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Test Runs</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Installation</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Requirements</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Steps</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>The Big Picture</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Test Plans</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>Fields</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Name</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Product</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Product Version</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Type</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Plan Document</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>Commands</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Archive</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Print</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>History</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Cloning a Plan</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Link vs Copy</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Categories</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Name</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Description</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Builds</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Name</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Milestone</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Description</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Test Cases</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>Fields</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Summary</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Alias</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Status</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P8"><colgroup><col style="width: 5.4102in" /></colgroup><tr><td>Proposed</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P8"><colgroup><col style="width: 5.4102in" /></colgroup><tr><td>Confirmed</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P8"><colgroup><col style="width: 5.4102in" /></colgroup><tr><td>Disabled</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Priority</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Category</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Components</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Default Tester</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Requirement</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Automatic</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P8"><colgroup><col style="width: 5.4102in" /></colgroup><tr><td>Script</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P8"><colgroup><col style="width: 5.4102in" /></colgroup><tr><td>Arguments</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Dependencies</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P8"><colgroup><col style="width: 5.4102in" /></colgroup><tr><td>Depends On</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P8"><colgroup><col style="width: 5.4102in" /></colgroup><tr><td>Blocks</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Action</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Expected Results</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>Commands</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>History</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Clone</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Overview</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Case Run History</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Attachments</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Test Runs</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Creating a Run</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>Fields</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>CC List</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Product Version</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Plan Version</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Manager</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Status</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Build</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Environment</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Summary</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Notes</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Overview</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>Commands</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>History</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Clone</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P7"><colgroup><col style="width: 5.8035in" /></colgroup><tr><td>Running a Run</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Tags</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Environments</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Searching</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>The Testing Life Cycle</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Create a Test Plan</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Create or Select Test Cases</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Start a Test Run</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P6"><colgroup><col style="width: 5.6071in" /></colgroup><tr><td>Cleaning Up</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Glossary</td></tr></table><table border="0" cellspacing="0" cellpadding="0" class="P5"><colgroup><col style="width: 6in" /></colgroup><tr><td>Getting Help</td></tr></table><h1 class="P9"><a name="Introduction" />Introduction</h1><p class="Standard">Welcome to Bugzilla Testopia, the place where all tests are happy. :-) </p><p class="Standard">Testopia is an extension to the Bugzilla bug tracking system designed to track testing efforts for products. Though it is designed with software testing in mind, it can be used to track testing on virtually anything in the engineering process.  </p><p class="Standard"> </p><p class="Standard">As an extension to Bugzilla it integrates closely with bug tracking every step of the way. Testopia provides the ability to link your bugs with the tests that verify those bugs are addressed and visa versa. </p><p class="Standard"> </p><p class="Standard">Testopia takes a standard black box testing approach. The major objects of testopia are divided into three classes.  </p><h3 class="Heading3"><a name="Test_Plans" />Test Plans</h3><p class="Textbody">Test plans are the top level documents that lay out a testing procedure. In Testopia. plans are used to organize test cases and test runs.  </p><h3 class="Heading3"><a name="Test_Cases" />Test Cases</h3><p class="Textbody">Test cases are the meat of any testing process. These detail the steps to verify that the subject passes muster as well as the expected results.  </p><h3 class="Heading3"><a name="Test_Runs" />Test Runs</h3><p class="Textbody">Test runs are the cumulative results of running a course of test cases against a particular version or build of a product.  </p><p class="Textbody"> </p><p class="Textbody">Each of these objects is set within the framework of Bugzilla (i.e. Products, Components, Milestones etc) and Testopia relies heavily upon them. </p><p class="Textbody">There are also a number of other objects in Testopia that support the big three. We will look at each in turn as we progress through the tour.  </p><p class="Textbody"> </p><p class="Textbody">So, shall we get started? </p><h1 class="P9"><a name="Installation" />Installation</h1><p class="Textbody">Testopia is an extension to Bugzilla. It goes without saying then that you should have Bugzilla up and running first. Instructions for installing Bugzilla can be found at bugzilla.org as well as in the package you downloaded. Basically all you need is to unzip the package and run checksetup.pl and follow any instructions that come up. </p><p class="Textbody">You can run Bugzilla on either Linux or Windows operating systems, though Testopia has not been thoroughly tested on Windows yet. </p><p class="Textbody">Beyond the required packages for Bugzilla, in order to install Testopia you should first make sure you have the following requirements met. </p><h3 class="Heading3"><a name="Requirements" />Requirements</h3><p class="Textbody">Bugzilla 2.20 (Currently the only version tested with Testopia 1.0, however this does not mean it won't work with other versions) </p><p class="Textbody">Text::Diff Latest version should work </p><p class="Textbody">As far as databases are concerned, Testopia just adds a number of tables to the existing Bugzilla database. Currently Testopia only supports Mysql as a database. By this we mean it is the only one tested as of version 1.0 although there is no real reason it shouldn't work with PostGres (the other database engine officially supported by Bugzilla). We just don't have any table creation scripts for it yet.  </p><p class="Textbody">Testopia has been tested on Mysql 4.1 and 5.0. Bugzilla requires 4.1 as of 2.20. </p><h3 class="Heading3"><a name="Steps" />Steps</h3><ol style="margin-left:1.25cm;list-style-type:decimal; "><li class="P10" style="margin-left:0cm;"><p class="P10" style="margin-left:0.25cm;">Copy the testopia tar ball into your bugzilla's root directory. </p></li><li class="P10" style="margin-left:0cm;"><p class="P10" style="margin-left:0.25cm;">Untar  </p><ol style="margin-left:0.75cm;list-style-type:decimal; "><li class="P10" style="margin-left:0cm;"><p class="P10" style="margin-left:0.25cm;"><span class="SourceText">tar xzvf testopia-<release>.tar.gz</span></p></li></ol></li><li class="P10" style="margin-left:0cm;"><p class="P10" style="margin-left:0.25cm;">Run tr_install.pl  </p><ol style="margin-left:0.75cm;list-style-type:decimal; "><li class="P10" style="margin-left:0cm;"><p class="P10" style="margin-left:0.25cm;"><span class="SourceText">perl tr_install.pl</span></p></li></ol></li></ol><p class="Textbody">The install script sets up the database tables, patches your code, and sets up three new groups: managetestplans, edittestcases, and runtests. </p><p class="Textbody">If the patch fails, you may want to patch the files by hand. There are only 4 small changes to the Bugzilla 2.20 code. </p><p class="Textbody">You should now be able to See the testopia links in the Bugzilla footer. Make sure you update the new testopia user groups to include whomever is going to need access to test cases.  </p><h1 class="P9"><a name="The_Big_Picture" />The Big Picture</h1><p class="Textbody">We will start with the 10,000 foot view and zoom in from there. This section is called the big picture since, well, it is a big picture. </p><p class="Textbody"> </p><div class="Textbody"><img width="735" height="571" alt="" src="file:///home/ghendricks/workspace/bnc-2.20/testopia/doc/" class="fr2" /></div><p class="Textbody"> </p><p class="Textbody">As you can see, Testopia objects are arranged in a hierarchy under products.  At the top are test plans. From a test plan it is possible to create test cases and test runs. Test cases are broken up by categories which are associated with products. Test cases can also be associated with one or more components.  Test runs are classified by builds which are in turn broken into target milestones. Runs also have an associated environment which can include a platform and an operating system. We will take a look at each of these in turn starting from the top.</p><h1 class="P9"><a name="Test_Plans" />Test Plans</h1><p class="Textbody">Let's take it from the top. </p><p class="Textbody">As mentioned earlier, test plans are kind of the filing cabinet for everything in Testopia.  Test plans are divided by product and act as the dashboard for everything you will do as a tester. </p><p class="Textbody">To create a new test plan, click the New Plan link in the Bugzilla footer. You will be taken to a page where you will be prompted to fill in a few fields, Lets take a look at those fields. </p><h2 class="Heading2"><a name="Fields" />Fields</h2><h3 class="Heading3"><a name="Name" />Name</h3><p class="Textbody">The plan name is a simple text field. Plan names can consist of any combination of letters, numbers and other characters and do not have to be unique. In fact you can have two plans of the exact same name if you like. This may actually be desirable as we will see later. </p><h3 class="Heading3"><a name="Product" />Product</h3><p class="Textbody">Each plan must have one and only one product. This comes from the Bugzilla product list. As a tester you must have access to the product (i.e be a member of the product group) to be able to see and create plans for the product.  </p><h3 class="Heading3"><a name="Product_Version" />Product Version</h3><p class="Textbody">Once you choose a product, the product version list will show you available versions for that product (Javascript must be enabled to have the magic happen). This will be used as the default for setting up runs, which we will see later.  </p><h3 class="Heading3"><a name="Type" />Type</h3><p class="Textbody">This is where you choose which type of testing this plan should represent. the default list consists of such things as Unit, System, Integration, Acceptance, and Performance, however system administrators can customize this list to meet their needs. Each plan type will represent a different mode of testing. </p><h3 class="Heading3"><a name="Plan_Document" />Plan Document</h3><p class="Textbody">This is a place to write up the test plan's procedure document. Depending on your organization and requirements, this can be very detailed. or not. This area shows up with a WYSIWYG editor to allow you to include formatting easily. Again, Javascript is required. </p><p class="Textbody"> </p><p class="Textbody">Once you hit submit, you will be taken to the plan view for your newly created plan. </p><p class="Textbody">At the top of the plan page is a table containing an overview of the fields contained in a plan. You will also notice some buttons. </p><h2 class="Heading2"><a name="Commands" />Commands</h2><h3 class="Heading3"><a name="Archive" />Archive</h3><p class="Textbody">As products move through their lifespan you will often find plans associated with earlier versions to be obsolete. Plans can therefore be archived to hide them from your basic searches. </p><p class="Textbody">To archive a plan, click the Archive button at the top of the plan page. </p><p class="Textbody">If a plan is already archived the button will Unarchive the plan instead. </p><h3 class="Heading3"><a name="Print" />Print</h3><p class="Textbody">If you would like to see a printable version of the plan document, click the Print button. </p><h3 class="Heading3"><a name="History" />History</h3><p class="Textbody">You can view the history of changes to a plan, as well as view unified diff comparisons of versions of a plan's text by clicking the History Button. </p><h3 class="Heading3"><a name="Cloning_a_Plan" />Cloning a Plan</h3><p class="Textbody">Plans can be cloned or copied. This is especially useful as you move from one version of a product to the next. You will likely need to carry forward many of the attributes and test cases that you created for an earlier version. Cloning allows you to do this in a few mouse clicks. </p><p class="Textbody">When you click the Clone button, you are presented with some options for cloning your plan.  </p><p class="Textbody">The first couple are pretty straight forward. Give your copy of a plan a name. There is nothing preventing you from using the exact same name, though it might be harder to distinguish from earlier versions if you don't give it something at least a little unique. </p><p class="Textbody">Second, choose a product version for this plan. </p><p class="Textbody">Next you have the option of copying the plan document. If you select NO you will have a clean slate for your new plan. </p><p class="Textbody">You also have the option of pointing any tags you have set to this plan to the new plan as well. We will cover tags later. </p><h3 class="Heading3"><a name="Link_vs_Copy" />Link vs Copy</h3><p class="Textbody">Lastly you have the option of moving your test cases forward. You have two options here. If you choose to copy the test cases you will, in essence, be cloning those just like you are the plan. They will be exact replicas except they will not have the same ID.  </p><p class="Textbody">The benefits of copies are that they are now unique test cases which can be edited at will without the fear of messing up other plans that might have been linked to them. However this means you now have two test cases where one existed before. This will increase the workload if you need to update test cases across versions of a product. </p><p class="Textbody">If you instead choose to link your test cases, what you get is the equivalent of a symbolic link in Unix. That one test case will now be pointed at more than one plan. This makes updating your test cases across plans a breeze. However if you need to branch information in a test case for a different plan, you should clone it. You will see that you can clone a case just as easily as a plan from the case page. </p><p class="Textbody">If you choose to copy or link the test cases as you clone your plan, you have the option of only taking those cases that match a certain category or categories. </p><p class="Textbody">Once you have selected all the options for your copy, click Clone to be taken to your new plan. </p><h1 class="P9"><a name="Categories" />Categories</h1><p class="Textbody">Before setting up a test case you need to have at least one category defined to put it in. </p><p class="Textbody">Categories are buckets for test cases. Each test case can belong to only one category at a time. They are here to help you organize your test cases into useful groups.  </p><p class="Textbody">Categories are actually defined by product, meaning if you define a category in a plan for a given product, it will become available for all plans in that product. </p><p class="Textbody">To create a category. Click the add link under the categories list in your test plan. You can also click the Categories header and then click add on the page that comes up. </p><p class="Textbody">A category is very simple, It consists of Two fields, only one of which is required. </p><h3 class="Heading3"><a name="Name" />Name</h3><p class="Textbody">A category must have a name. It can consist of any combination of letters and numbers and must be unique inside the product you are creating it for. </p><h3 class="Heading3"><a name="Description" />Description</h3><p class="Textbody">This optional field is for you to provide a verbose description of your category if you like. </p><p class="Textbody"> </p><h1 class="P9"><a name="Builds" />Builds</h1><p class="Textbody">Builds are similar to categories but they apply to runs.  </p><p class="Textbody">A build is a particular iteration of a product. In software a build is often something that represents the compiled results of all the source code committed during an interval of development. That interval can be as frequent as every hour or as little as once a week, Regardless of how often a build is done, the main thing we want to track here is which builds get tested.  </p><p class="Textbody">Like categories, builds are product specific and will show up in any plan for that product.  Since builds can happen very frequently, you may wish to automate build creation using whatever build system you have devised.</p><p class="Textbody">To create a new build manually click the add link under the build list in your plan, You can also click the build header and click the add new link on the page that appears. </p><p class="Textbody">There are three fields for builds </p><h3 class="Heading3"><a name="Name" />Name</h3><p class="Textbody">The name can consist of any letters or numbers and special characters. It must be unique within the product. </p><h3 class="Heading3"><a name="Milestone" />Milestone</h3><p class="Textbody">This is the target milestone from the product.  Many builds can use the same target milestone.</p><h3 class="Heading3"><a name="Description" />Description</h3><p class="Textbody">This area can be used to put notes or a description about the build. It is optional. </p><p class="Textbody"> </p><h1 class="P9"><a name="Test_Cases" />Test Cases</h1><p class="Textbody">Test cases are the heart of Testopia. A test case is a set of steps and expected results that should be applied to a subject in order to find out if a product is sound.  </p><p class="Textbody">All test cases need to be associated (linked) to at least one test plan. The easiest way to go about creating a test case then, is to click the Create Test Case link on the plan page.  </p><p class="Textbody">Let's take a look at the fields of a test case. </p><h2 class="Heading2"><a name="Fields" />Fields</h2><h3 class="Heading3"><a name="Summary" />Summary</h3><p class="Textbody">The summary is a short description of the test case. It can contain any combination of characters and does not need to be unique. This will allow you to quickly identify test cases in a list. </p><h3 class="Heading3"><a name="Alias" />Alias</h3><p class="Textbody">Like a summary, Aliases are used to help you quickly identify a test case. Unlike summaries however, they must be unique in the system, meaning no two test cases, regardless of product, can have the same alias. Aliases can be used in place of ID's in linking up test cases. Their main purpose is as an aid for automations that would like to refer to a test case by name rather than number. </p><h3 class="Heading3"><a name="Status" />Status</h3><p class="Textbody">The status field for test cases help you determine which test cases are  actively being used for testing versus those that are only in development or are no longer relevant. Status can be one of three options.</p><h4 class="Heading4"><a name="Proposed" />Proposed</h4><p class="Textbody">Test cases with a status of proposed are currently being defined. They should not yet be used for testing as they are in flux.  </p><h4 class="Heading4"><a name="Confirmed" />Confirmed</h4><p class="Textbody">Confirmed test cases are those that are actively being used in testing.  </p><h4 class="Heading4"><a name="Disabled" />Disabled</h4><p class="Textbody">Disabled test cases are either no longer relevant to a current version of a product or have been taken out of the current testing loop for whatever reason. </p><h3 class="Heading3"><a name="Priority" />Priority</h3><p class="Textbody">The test case priority is determined by how important a test case is in relation to others in a product. It can also refer to the priority of any bugs that are identified by the test case or for which the test case is designed to check. This list is identical to that of bug priority.  </p><h3 class="Heading3"><a name="Category" />Category</h3><p class="Textbody">As mentioned above, categories are buckets for subdividing test cases. They work in tandem with product components to allow you to quickly find test cases. </p><h3 class="Heading3"><a name="Components" />Components</h3><p class="Textbody">Once you have created your test case, you have the option of associating one or more Bugzilla components with it. The list of components comes from the products that this case is associated with via the plans it is linked to. This is optional as some test cases will be independent of component.  </p><h3 class="Heading3"><a name="Default_Tester" />Default Tester</h3><p class="Textbody">This person will be the default assignee for the created case-runs. </p><h3 class="Heading3"><a name="Requirement" />Requirement</h3><p class="Textbody">This field is optional and is used for tracking a requirement number if one exists for this test case. </p><h3 class="Heading3"><a name="Automatic" />Automatic</h3><p class="Textbody">If this test case is meant to be used with a script or automated system then choose automatic. This then allows you to set the path or URL for the script that is used. The default however is manual.  </p><p class="Textbody">It is important to note that Testopia does not automate any tests of its own accord. This field is just to help you classify which of your test cases are automated versus which are manual. </p><h4 class="Heading4"><a name="Script" />Script</h4><p class="Textbody">This field is only available if Automatic is chosen above. This is a place to store a path or URL to an automated script. Testopia does not run the script for you however, this is just to display where a user would look to find the script. </p><h4 class="Heading4"><a name="Arguments" />Arguments</h4><p class="Textbody">If your automated script takes any arguments you can store which ones apply to this test case in this field. Again, this is only active if Automatic is set to Automatic. </p><h3 class="Heading3"><a name="Dependencies" />Dependencies</h3><p class="Textbody">Like bugs, test cases have a concept of dependencies. If a test case depends on another test case it would be prevented from being passed if that prerequisite case fails. Dependencies set up an order of operations for running test cases.  </p><p class="Standard">If test case B “depends on” test case A, then whenever test case A</p><p class="Standard">fails, test case B will be blocked from passing (it will receive a status of BLOCKED). So, A should run before B, and B should not be run if A fails. At some point this will be automatic, meaning failing a test case that blocks other test cases will automatically apply the BLOCKED status to those dependent test cases. </p><p class="Textbody">Testopia will check that there are no loops in your dependencies.  </p><h4 class="Heading4"><a name="Depends_On" />Depends On</h4><p class="Standard">Makes another test case a prerequisite for this test case.  </p><h4 class="Heading4"><a name="Blocks" />Blocks</h4><p class="Standard">Makes this test case a prerequisite for another. </p><h3 class="Heading3"><a name="Action" />Action</h3><p class="Textbody">The action is the list of steps to confirm that the subject under scrutiny passes inspection. The successful completion of which would earn a PASSED status in a run. This should follow general testing guidelines and be concise, checking the smallest unit possible.  An example might be to “click the file menu and choose save”.</p><p class="Textbody">In the case of performance testing this might detail the list of conditions the test was run under. </p><h3 class="Heading3"><a name="Expected_Results" />Expected Results</h3><p class="Textbody">The Expected Results is the list of successful outcomes that the action should produce in order for a test case to be considered passed. Meeting these objectives would produce a passed result where failing to meet them would produced a failed result. To extend our example above, an expected result might be “check that the file is saved on the file system”. </p><p class="Textbody">In performance testing this might contain the list of acceptable parameters. </p><h2 class="Heading2"><a name="Commands" />Commands</h2><h3 class="Heading3"><a name="History" />History</h3><p class="Textbody">Just as with test plans, it is possible to view the history of changes to a test case by clicking the History button. You can also take a unified diff of any two versions of the action and Expected Results on the history page. </p><h3 class="Heading3"><a name="Clone" />Clone</h3><p class="Textbody">You can clone a test case in much the same way you clone a test plan. By clicking the clone button you have several options.  </p><p class="Textbody">First you must choose whether you are making a copy of a case or just linking an existing case to another plan. </p><p class="Textbody">If creating a copy, you have the option of copying just to the existing plans or a list of different plans or both. You can choose to copy the document (action and Expected Results) or leave it blank on your copy. You can copy the tags and components as well. </p><h3 class="Heading3"><a name="Overview" />Overview</h3><p class="Textbody">Once you have set up a test case you will notice at the top of the screen an overview section that details many of the fields you saw while setting up your test case as well as a few others. This will contain such information as the author of the test case and when it was created as well as links to the test plans it is linked to. </p><h3 class="Heading3"><a name="Case_Run_History" />Case Run History</h3><p class="Textbody">Included in the view of each test case is a table with the history of test runs that it has been run in. You will see the status it received and who it was assigned to as well as who actually ran it if it has been completed. There is also a link to a bug list of any bugs that were identified during the run. You can click on the run number to be taken to the test run page. </p><h1 class="Heading1"><a name="Attachments" />Attachments</h1><p class="Textbody">Both test plans and test cases can support attachments. You will find the attachments table near the bottom of both of these pages. To create an attachment, simply click the browse button and locate the file you wish to attach, type a description in the Description field and click the attach button.  </p><p class="Textbody">Attachments are treated very much the same as they are in Bugzilla. The size limit will be determined by the max-attachment-size parameter the same as it is for Bugzilla </p><p class="Textbody">To edit an attachment click the edit link. This takes you to a page where you can set the description, filename, and mime-type for the attachment as well as view it if it is a viewable type or download it otherwise. </p><h1 class="P9"><a name="Test_Runs" />Test Runs</h1><p class="Textbody">Test runs are the work horse of Testopia. A test run is the application of a list of test cases against the subject to determine if the subject meets the standards laid out by the test case. Each test run is associated with a single plan and a list of test cases.  </p><h3 class="Heading3"><a name="Creating_a_Run" />Creating a Run</h3><p class="Textbody">To create a test run, click the Create a New Test Run link in the plan you are creating the run for.  You are taken to a page with a list of test cases that are associated with this plan. You can select all, part, or none of the test cases to be included in this run. Later you can search for specific test cases to add to the run if you like.</p><p class="Textbody">For each test case associated with a run a record is created for the history in the test case for the result of this run against that case.  </p><h2 class="Heading2"><a name="Fields" />Fields</h2><h3 class="Heading3"><a name="CC_List" />CC List</h3><p class="Textbody">Once you complete the creation process you will have the option of adding and removing people from the CC list for the run. These people will eventually receive notification of changes to a test run in addition to the manager and testers. Notification is currently not working as of 1.0 </p><h3 class="Heading3"><a name="Product_Version" />Product Version</h3><p class="Textbody">Though a plan has this information, you may wish to mix test runs of other product versions for comparison. This allows you to set the actual product version used for testing in this run. </p><h3 class="Heading3"><a name="Plan_Version" />Plan Version</h3><p class="Textbody">It is possible to set which version of the plan document you mean to run this test against. The default is the latest version </p><h3 class="Heading3"><a name="Manager" />Manager</h3><p class="Textbody">The run manager will usually be the person responsible for running the test cases.  </p><h3 class="Heading3"><a name="Status" />Status</h3><p class="Textbody">There are two options here: Running and Stopped. If a test run is stopped, none of the test cases in the run can be passed or failed.  </p><p class="Textbody">The default is running. </p><h3 class="Heading3"><a name="Build" />Build</h3><p class="Textbody">This allows you to set the default build for the case-runs. This list comes from the builds defined for the product on the test plan pages. </p><h3 class="Heading3"><a name="Environment" />Environment</h3><p class="Textbody">Choose from the list of defined environments the one used for this run. Environments will be explained in detail later. </p><h3 class="Heading3"><a name="Summary" />Summary</h3><p class="Textbody">This is a short description of the run. Much the same as that of a case summary. </p><h3 class="Heading3"><a name="Notes" />Notes</h3><p class="Textbody">This is an area for you to make any notes about this run. This field is fully editable meaning that if you remove text it will be deleted.  </p><h3 class="Heading3"><a name="Overview" />Overview</h3><p class="Textbody">Once you have created your run, you will see an overview section detailing such things as, which plan this run belongs to, when it was started, which product and product version as well as who the manager and default tester is. </p><p class="Textbody">Below the overview section you will notice a table of numbers detailing how many test cases have been completed and what their total outcomes have been. There is also a percentage bar showing the completion rate. </p><h2 class="Heading2"><a name="Commands" />Commands</h2><h3 class="Heading3"><a name="History" />History</h3><p class="Textbody">Just as with plans and cases, you can view a history of changes to the run. This does not include changes to the notes however. </p><h3 class="Heading3"><a name="Clone" />Clone</h3><p class="Textbody">You can clone a run the same as with other objects. When you clone a run you can choose to copy over the test cases from the run that meet the criteria you specify. </p><h2 class="Heading2"><a name="Running_a_Run" />Running a Run</h2><p class="Textbody">A test run is the area that most testers will spend most of their time in. This is where you will pass and fail test cases and log bugs against them. </p><p class="Textbody">When you set up the run, you selected which test cases will be included. You will see one entry per test case in the Test Case Run Table in your run. By clicking on the black triangle next to the case ID you can expand the case run form. </p><p class="Textbody">The first step in running a test case is to set the build if it is different from the default build. Testopia is designed to be flexible in that it allows you to define your process. If you have many builds and they come very frequently, you may not wish to create a single run per build but would rather have a parent run and set the build on each test case that you tested against. Once the build is set you can begin your testing for that test case. Upon completion you click the appropriate button to either pass or fail the test case. In the case of performance tests you can choose to set the status to RUNNING while you perform the test and PAUSE it at anytime during the process. </p><p class="Textbody">The status of blocked is used when a test case has dependencies and the prerequisite case failed. </p><p class="Textbody">You have the option of making specific notes for each test case as you run it in the notes field. You can also log and attach bugs to a test case. Clicking the NEW button will open the bug creation screen in a new window. When you submit the bug, it will automatically be associated with this test case. You can also reassign the test case. </p><p class="Textbody">There are a number of filters available to allow you to display only the case-runs you are interested in. You can also sort on virtually any field in the table.  </p><p class="Textbody">If you wish, you can update multiple test case-runs at one time by clicking the link at the bottom of the table.  </p><p class="Textbody">This format uses AJAX to make a more dynamic user experience. If you prefer, you can use the Classic interface by clicking the link here. You are presented with the same options but in a more static view. </p><h1 class="Heading1"><a name="Tags" />Tags</h1><p class="Textbody">Tags are a novel approach to categorizing objects. They have become very popular with numerous web tools and have met with much success.  </p><p class="Textbody">The idea behind tags is that each user can categorize each item to his or her own liking without destroying other users categorizations. Each of the big three (Cases, Runs, Plans) in Testopia can have tags associated with them.  </p><p class="Textbody">To tag an object simply enter a string in the tag field and click add. You can search and sort by tags by clicking the Tags header and then clicking the appropriate object of interest in the list. </p><h1 class="Heading1"><a name="Environments" />Environments</h1><p class="Textbody">Environments are definitions of how a test run was run. In software testing this might include such things as which Operating system was used or what hardware platform. Environments can be as broad or narrow as you define them. The basic environment consists of an OS and platform chosen from Bugzilla's lists of these objects. However it can be much more complicated such as a suite of applications and other products or a browser. It could be a temperature range or a certain list of physical characteristics that your test must be conducted in.  </p><p class="Textbody">Because there are so many ways to define an environment, Testopia allows you to insert an XML document representing your specific needs. At some future time we hope to have an environment generator application that can be used to generate the XML for you. Stay tuned for this in future versions. </p><h1 class="Heading1"><a name="Searching" />Searching</h1><p class="Textbody">Testopia incorporates Bugzilla's search engine capabilities for searching on test cases, runs and plans. Each of these has its own set of search parameters which can be found by clicking the corresponding tab in the search page. </p><p class="Textbody">Search results are displayed as a table which is sortable. Clicking on the column you wish to sort by will return the results sorted on that column. Currently only single key ascending sort is supported.  </p><p class="Textbody">The results table is also paginated. Clicking the navigation links at the bottom will allow you to jump from page to page of the results. Sorting will reset you back to page one however. </p><h1 class="Heading1"><a name="The_Testing_Life_Cycle" />The Testing Life Cycle</h1><p class="Textbody">Testopia can be made to fit a wide variety of product development and testing models. This is just one suggested model. Feel free to to tailor Testopia to fit your needs. </p><h3 class="Heading3"><a name="Create_a_Test_Plan" />Create a Test Plan</h3><p class="Textbody">As covered above, everything in testopia revolves around test plans. A typical test plan would be used to encompass a single product and product version. You should also set up categories, builds, and environments to match your testing scenario. </p><h3 class="Heading3"><a name="Create_or_Select_Test_Cases" />Create or Select Test Cases</h3><p class="Textbody">When just starting out, you will need to create test cases for each of the areas that are to be tested in your product. The number of test cases can be in the hundreds or hundreds of thousands. Testopia is designed to scale to meet the needs of large and small testing groups alike.  If you are creating a plan for a different version of an existing product, you can link the existing test cases by cloning the test plan, adding test cases where appropriate to cover new features or old bugs. </p><h3 class="Heading3"><a name="Start_a_Test_Run" />Start a Test Run</h3><p class="Textbody">Once you have test cases created, you can start running tests. Create a test run and select the test cases you wish to cover. If you have multiple environments to test in, you may wish to create a run for each environment. Each run has an associated build. Depending on how often builds happen, you may want to have separate runs for each build. If builds happen more frequently than test cycles, you can change the build on each individual test case-run as you go.  </p><p class="Textbody">Test cases have an assigned tester which is designated when the test case is created. As you go through the run however, you may wish to reassign particular test cases to different testers. This can be done individually or to a group of case-runs at once.  Though the default tester is responsible for setting a status on a test case-run, anyone with rights to edit a test run can update the case-run. The actual person to do so is captured in the tested by field. </p><h3 class="Heading3"><a name="Cleaning_Up" />Cleaning Up</h3><p class="Textbody">Once all the test cases are given a closing status (PASSED, FAILED, or BLOCKED), the test run should be moved from the Running state to the Stopped state.  </p><p class="Textbody">When all test runs are completed and the product is released and reaches it's sunset, the test plan can be archived. If any test cases are no longer relevant they can be moved to the disabled status. </p><p class="Textbody"> </p><h1 class="P9"><a name="Glossary" />Glossary</h1><div style="text-align:left"><table border="0" cellspacing="0" cellpadding="0" class="Table1"><colgroup><col width="178" /><col width="488" /></colgroup><tr><td style="text-align:left;width:1.6056in; " class="Table1A1"><p class="TableContents">Action </p></td><td style="text-align:left;width:4.3944in; " class="Table1B1"><p class="TableContents">The list of steps that a test case must complete. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Alias </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A globally unique string that identifies a test case in conjunction with the test case ID.  </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Archive </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">Test plans may be archived and hidden from regular searches. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Arguments </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A list of parameters to send to an automatic test script . </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Assignee </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">The person responsible for applying a status to a test case-run </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Blocks </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A test case that blocks another test cases.  </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">BLOCKED </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A status of a test case-run indicating the prerequisite test case failed. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Build </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">In software testing, a string denoting the compiled results of a period of development.  </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Category </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A property of a product that is used to classify test cases. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Clone </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">An exact replica of data between two objects. In Testopia you can clone plans, runs, and cases. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Component </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A Bugzilla component. An attribute of a product. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">CONFIRMED </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A status of a case. Confirmed test cases have been approved for use in test runs. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Default Tester </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">The default person responsible for applying a status to the test case-run for a given test case. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Dependency </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">Test cases can be dependent on other test cases. There are two types of relationships, depends on and blocks. A test case that is blocked by another should not be examined before the prerequisite test case as success is determined in part by the outcome of the predecessor. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Depends on </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">Sets up a dependency between test cases. Depends on lists the test cases that a particular test case requires to be completed before this case. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">DISABLED </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A status of a test case denoting it is no longer used for active testing. Similar to archival for a plan. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Expected Results </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">The expected results upon completing the action of a test case. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Environment </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A list of the surrounding conditions that a test run is performed in. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">FAILED </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A status of a test case-run. Denotes the test case failed in the given run. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">IDLE </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A status of a test case-run. Denotes the test case has not been examined in the given run. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Manager </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">The person in charge of a given run. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Milestone </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A Bugzilla object. A property of a product that implies when a given bug or feature will be fixed or included. Testopia builds are associated with milestones. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">PASSED </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A status of a test case-run. Denotes the test case has met the conditions of success detailed in the Expected Results of the test case in the given run. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">PAUSED </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A status of a test case-run. Denotes the test case has been under examination in the given run and is on hold. Used primarily for performance tests that may span long time periods. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Plan Document </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">The information of a test plan detailing what the test plan will cover for what by when. Depending on the level of scrutiny required it can be very verbose. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Plan Version </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">The version of the plan document used for a particular run.  </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Priority </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">The Bugzilla priority. Test cases can be assigned a priority similar to bugs. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">PROPOSED </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A status of a test case that denotes it has not yet been approved for use in test runs.  </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Requirement </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A field of a test case provided to capture information about a requirement. Typically an ID of a requirement in a separate requirement tracking system. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">RUNNING </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A status of a test case-run. Denotes the test case is in the process of being examined in the given run. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Running </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A status of a test run. Running test runs can have case-runs updated and implies that there is further testing to be done in the run. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Script </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A path to an external automated test script for a given test case. Testopia does not run this script, the field is only provided as a way of informing the user where to find it. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Stopped </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A status of a test run. Stopped test runs can not have case-runs updated. This status denotes the run i complete. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Tag </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A user defined string used to classify test plans, cases, and runs.  </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Test Case </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">A list of conditions and expected results for success for a particular feature or object under scrutiny. Test cases are associated with one or more test plans and with zero or more test runs. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Test Case-run </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">The union of a test case and a test run. Each time a test case is included in a new test run, an entry is made for it in the test case-runs table. This captures whether the test case passed or failed in the given run. Each case-run should be associated with only one build for a given status.  </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Test Plan </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">The defining object in Testopia. Organize the other objects in Testopia. </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Test Run </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">The instance of performance in Testopia. Each run is associated with a single plan and environment. It contains a list of test cases to be examined and stores the results in the case-runs table.  </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Tested By </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">The person who examined and applied a status to a given case-run </p></td></tr><tr><td style="text-align:left;width:1.6056in; " class="Table1A2"><p class="TableContents">Type </p></td><td style="text-align:left;width:4.3944in; " class="Table1B2"><p class="TableContents">The plan type. Plan types might include System, Unit, Integration etc. Each plan can be of only one type. </p></td></tr></table></div><p class="Textbody"> </p><h1 class="P9"><a name="Getting_Help" />Getting Help</h1><p class="Textbody">There are a number of resources for getting help in Testopia. </p><p class="Textbody"> </p><p class="Textbody">Mailing lists </p><ul style="margin-left:1.25cm;"><li class="P11" style="margin-left:0cm;"><p class="P11" style="margin-left:0.25cm;"><a href="mailto:support-webtools@lists.mozilla.org">support-webtools@lists.mozilla.org</a></p></li><li class="P11" style="margin-left:0cm;"><p class="P11" style="margin-left:0.25cm;"><a href="mailto:dev-apps-webtools@lists.mozilla.org">dev-apps-webtools@lists.mozilla.org</a></p></li></ul><p class="Textbody">IRC </p><p class="Textbody">        <a href="irc://irc.mozilla.org/testopia">irc://irc.mozilla.org/testopia</a></p><p class="Textbody">Wiki </p><p class="Textbody">        <a href="http://wiki.mozilla.org/Testopia">http://wiki.mozilla.org/Testopia</a> </p></body></html> \ No newline at end of file diff --git a/mozilla/webtools/testopia/testopia/doc/training.odp b/mozilla/webtools/testopia/testopia/doc/training.odp new file mode 100644 index 00000000000..b4e9c333c54 Binary files /dev/null and b/mozilla/webtools/testopia/testopia/doc/training.odp differ diff --git a/mozilla/webtools/testopia/testopia/dojo-ajax/dojo.js.uncompressed.js b/mozilla/webtools/testopia/testopia/dojo-ajax/dojo.js.uncompressed.js index bc2909956ff..4b96189de0f 100644 --- a/mozilla/webtools/testopia/testopia/dojo-ajax/dojo.js.uncompressed.js +++ b/mozilla/webtools/testopia/testopia/dojo-ajax/dojo.js.uncompressed.js @@ -6,7 +6,7 @@ * @author Copyright 2004 Mark D. Anderson (mda@discerning.com) * @author Licensed under the Academic Free License 2.1 http://www.opensource.org/licenses/afl-2.1.php * -* $Id: dojo.js.uncompressed.js,v 1.1.1.1 2006-06-13 15:09:50 ghendricks Exp $ +* $Id: dojo.js.uncompressed.js,v 1.2 2006-07-18 17:37:33 ghendricks%novell.com Exp $ */ /** diff --git a/mozilla/webtools/testopia/testopia/img/Testopia_pocket.eps b/mozilla/webtools/testopia/testopia/img/Testopia_pocket.eps new file mode 100644 index 00000000000..906a5637939 --- /dev/null +++ b/mozilla/webtools/testopia/testopia/img/Testopia_pocket.eps @@ -0,0 +1,59 @@ +%!PS-Adobe-3.1 EPSF-3.0 %ADO_DSC_Encoding: MacOS Roman %%Title: Testopia_pocket.eps %%Creator: Adobe Illustrator(R) 12 %%AI8_CreatorVersion: 12.0.1 %AI9_PrintingDataBegin %%For: Todd Purser %%CreationDate: 5/22/06 %%BoundingBox: 0 0 300 102 %%HiResBoundingBox: 0 0 299.7168 101.3907 %%CropBox: 0 0 299.7168 101.3907 %%LanguageLevel: 2 %%DocumentData: Clean7Bit %%Pages: 1 %%DocumentNeededResources: %%DocumentSuppliedResources: procset Adobe_AGM_Image 1.0 0 %%+ procset Adobe_CoolType_Utility_T42 1.0 0 %%+ procset Adobe_CoolType_Utility_MAKEOCF 1.19 0 %%+ procset Adobe_CoolType_Core 2.23 0 %%+ procset Adobe_AGM_Core 2.0 0 %%+ procset Adobe_AGM_Utils 1.0 0 %%DocumentFonts: %%DocumentNeededFonts: %%DocumentNeededFeatures: %%DocumentSuppliedFeatures: %%DocumentProcessColors: Cyan Magenta Yellow Black %%DocumentCustomColors: %%CMYKCustomColor: %%RGBCustomColor: %ADO_BuildNumber: Adobe Illustrator(R) 12.0.1 x5205 R agm 4.3861 ct 5.530 %ADO_ContainsXMP: MainFirst %AI7_Thumbnail: 128 44 8 %%BeginData: 9524 Hex Bytes %0000330000660000990000CC0033000033330033660033990033CC0033FF %0066000066330066660066990066CC0066FF009900009933009966009999 %0099CC0099FF00CC0000CC3300CC6600CC9900CCCC00CCFF00FF3300FF66 %00FF9900FFCC3300003300333300663300993300CC3300FF333300333333 %3333663333993333CC3333FF3366003366333366663366993366CC3366FF %3399003399333399663399993399CC3399FF33CC0033CC3333CC6633CC99 %33CCCC33CCFF33FF0033FF3333FF6633FF9933FFCC33FFFF660000660033 %6600666600996600CC6600FF6633006633336633666633996633CC6633FF %6666006666336666666666996666CC6666FF669900669933669966669999 %6699CC6699FF66CC0066CC3366CC6666CC9966CCCC66CCFF66FF0066FF33 %66FF6666FF9966FFCC66FFFF9900009900339900669900999900CC9900FF %9933009933339933669933999933CC9933FF996600996633996666996699 %9966CC9966FF9999009999339999669999999999CC9999FF99CC0099CC33 %99CC6699CC9999CCCC99CCFF99FF0099FF3399FF6699FF9999FFCC99FFFF %CC0000CC0033CC0066CC0099CC00CCCC00FFCC3300CC3333CC3366CC3399 %CC33CCCC33FFCC6600CC6633CC6666CC6699CC66CCCC66FFCC9900CC9933 %CC9966CC9999CC99CCCC99FFCCCC00CCCC33CCCC66CCCC99CCCCCCCCCCFF %CCFF00CCFF33CCFF66CCFF99CCFFCCCCFFFFFF0033FF0066FF0099FF00CC %FF3300FF3333FF3366FF3399FF33CCFF33FFFF6600FF6633FF6666FF6699 %FF66CCFF66FFFF9900FF9933FF9966FF9999FF99CCFF99FFFFCC00FFCC33 %FFCC66FFCC99FFCCCCFFCCFFFFFF33FFFF66FFFF99FFFFCC110000001100 %000011111111220000002200000022222222440000004400000044444444 %550000005500000055555555770000007700000077777777880000008800 %000088888888AA000000AA000000AAAAAAAABB000000BB000000BBBBBBBB %DD000000DD000000DDDDDDDDEE000000EE000000EEEEEEEE0000000000FF %00FF0000FFFFFF0000FF00FFFFFF00FFFFFF %524C45FDFCFFFD08FF762752525227525252275252522752525227525252 %275252522752525227525252275252522752525227525252275252522752 %525227525252275252522752525227525252275252522752525227525252 %275252522752525227525252275252522752525227525252275252522752 %525227525252275252FD07FF27FD79F8FD05FF7DF8F8F827F8F8F827F8F8 %F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827 %F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8 %F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827 %F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F852FD04FF27FD7AF8 %52FD04FF52F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F8 %05F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8 %F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F8 %05F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8 %F8F805F8F8F80552FD04FF52FD04F8FD0D5259F827FD0A527DFD04F827FD %0552F8F8F827FD0D527DF8F8F827FD0852FD05F827FD0A5227FD05F827FD %045259FD05F8FD0852FD0AF852FD05FFF827F8F8FF7E53542F5453542F54 %53542F7E277D7E5453542F5453542F545359F82752FF545453542F7E52F8 %F8FF54542F5453542F5453542F545A52F827A8A9535453542F54537EF827 %F8F827A953542F5453542F5453547D27F8F8F8A17E542F548527F827F8A8 %A87E53542F5453547E27F8F8F827F8F8F827FD06FF27F8F8F87D7E292929 %2829292928FD04295927A9282929292829292928295AF827FF5329282929 %29282F28F8FF5429292829292928292929285A2EF87DA929292829292928 %29297EF8F8F8527E292929282929292829292F2EF8F8F8A85329292984F8 %F8F8A87E2928292929282929295A00FD06F827FD06FF52F8F80552A92954 %2F29292F292F29542F535A27FF2F292F295329542F532985F87DA82F2929 %292F2929297E00FF5A542F53292F292929542F53535327FF292F2929292F %2929292F2953F80552A8292F295329532929292F297EF805F8FF292F2954 %5905F87D7E2F292929532929292F295A2705F8F8F805F87DFD07FFFD04F8 %2E592E5953530629295A2E595259F8A8292906535A592E59525953277D7E %0629295A5A7E2929295927592E597D7E0629297E2E595259277D7E290629 %53855A53292906295AF8F852532906295A59535329290629532EF851A829 %06295353F827A8290629297E5A7E292906292F59FD06F8FD08FF4BF827F8 %F8F827F8527E2F292F7E27F8F8F8277D7E292F2985F827F8F8F827F8A854 %2F29535A27F87D292F7EF8F827F8527E2F292F7E27F8F8F8277D7E292F29 %852E27522F292F298527277D7E292F2985F8272753292F295A522752A929 %2F298527277D7E292F297E5A272754292F295A5327F8F8F82727FD08FF52 %FD08F8FF2829295AFD05F8527E2928295AFD07F87D7E2829295AF8F82754 %287EFD04F827A82829297EFD05F8A8292928535AF8F852292928295A27F8 %A85329282F59F8F827532928295359F87D532928296005F8FF292928535A %27F852292928295A2EFD05F87DFD09FFF8F8F805F8F8F805A853292F2F53 %F805F8F826FF2929297E27F8F805F8F8F87D5429292F7EF8F805527E5A27 %F8F8F8527E29292F7E27F805F8F87D542929295AF8F827542929298527F8 %7D5429292984F8F8277E2929297E2EF87D5429292984F827A92F29295A59 %F8F8762F2929298527F8F805F827FD0AFF27FD07F87D5329062959FD05F8 %A85329292952FD06F852A82929065405FD09F827FF2929067E05FD04F87D %292929532EF8F827FD04295A27F8A82929295353F8F852FD04295A27F8FF %2929295353F8527E0629298427F8F87E062929535AFD05F827FD0AFF76F8 %F827F8F8F8274BA9292F2985F827F8F8F8A1542F295359F8F827F8F8F852 %A92F292F297EF827F8F8F827F8F8F84BFF2F292F7E2EF827F8F87D54292F %2F59F8F82754292F298527F8FF54292F5359F8F85254292F2985F827FF2F %292F5A59F87D532F29536027F827532F292F5A7DF8F8F827F87DFD0BFFFD %08F8FF2F28295327FD04F8527E29292884FD07F8A829292829292EFD09F8 %FF2929287E27FD04F87D292929532EF8F827FD04295A27F8FF282929542E %F8F8A82829292F5AF827A82829297E27F8A8532829535AF8F8522F282929 %8527FD05F8FD0CFF52F8F8F805F8F8F87D5329295353F8F805F852A82F29 %295A27F8F8F805F8F8527E2929292F5327F805F8F8F805F8F8FF2F292953 %2EF8F8F8057D53292F2F59F8055253292F2985F827FF29292F7E52F85253 %29292F537EF87D7E29292F850527FF2929297E52F8F87E292929535AF8F8 %05F8F827FD0CFF52FD07F84B7E2929067EFD05F8FF2929295427FD07F87D %532929062953FD08F8FF2929295428FD04F8A12929065352F8F852292906 %295AF827FF2929067E52535329292906852EF87D542929295AF8527E2929 %2953595252532929295359FD05F87DFD0DFFF8F8F827F8F8F827FF2F292F %7E27F827F8F87D54292F292F292F2959F8F8F827A82F292F292F5327F8F8 %F827F8F8A854292F5353F8F8F8277D54292F5359F8275254292F297EF852 %A82F292F292F292F292F297E8427F8FF532F297E59F87D7E292F292F292F %292F292F298527F8F827F827FD0EFF27FD07F8A82929285427FD04F85253 %292929282929295AFD04F8527E292829292FFD07F87D292929542EFD04F8 %A82929285A53F8F8522929282F59F827A9292928292929282929535A53F8 %27FF2929295A53F8A8FD0429282929292829292F5A00FD04F827FD0EFF52 %05F8F8F805F8F8527E29292959F8F8F80527A9292F2929292F297EF805F8 %F8F8A85329292F295AF805F8F8F8057D53292F5359F805F8F87D54292953 %59F8F8522F29292984F8767E2F2929292F2929297E8559F80527A9292F29 %852727FF29292F29532F542929292F535AF805F8F8F87DFD0FFFFD07F852 %7E2929295AFD04F827FF290629537E5A7E5A27FD05F8A9292906292959FD %05F8A15329065352FD04F87D292929542EF8F8520629295353F8527E0629 %29855A8560855952F8F8F8527E2906295AF827A829290685595A7E542929 %06842EFD05F8FD10FF52F8F8F827F8F8F8FF292F297EF8F8F827F8CA2F2F %295A522E272EF827F8F8F82727A9292F292F2F27F8F8F8277D7E292F5359 %F827F8F87D54292F5359F8F87D2F292F2F59F87D542F29545327F8F8F827 %F8F8F8277D7E292F5384F87D5A2F29545AF8F87D292F29538527F827F8F8 %27FD10FF52FD07F87D7E29292F2EFD04F8767E28292959FD0AF876542829 %29295AFD04F8525329285359FD04F87D292929542EF8F87D2829295353F8 %7D5428295359FD09F8A82929285A53F87D5329295359F8F87D2929292F7E %FD05F87DFD11FFF805F8F8F805F8527E2F292F5905F8F8F8527E29292F59 %F8F805F8F8F805F8F8F827A853292F297E0005F8F8527E29292959F8F8F8 %057D53292F5352F8057D29292F5359F8A85329297E53F8F805F8F8F805F8 %F8FF2F29297E52F8FF292F29852705F87E292F297E5205F8F8F827FD12FF %27FD07F8FF0629297EFD04F827FF29290684FD0BF8277E2906292F2EF8F8 %F8527E2929532EFD04F8A12929065A2EF8F87D2929065A2EF8A853292953 %52FD08F827FF06292985F852A829062960F8F852292906296027FD04F827 %FD12FF7D27F8F8F827F8F8A854292F5427F8F8F827FF53292F5A27F827F8 %F8F827F8F8F827F8CA292F29545327F8F852A9292F2F7EF8F8F8277D5429 %2F5352F8277D2F292F5352F8FF2F2F298527F8F827F8F8F827F8527E2F29 %535A27527E292F5384F8277D2F292F5384F827F8F8F87DFD13FFFD07F87D %5329295328FD04F87D5329285427FD06F8525327F8F8525328292959F8F8 %F8277E29295359FD04F8A82929285A2EF8F87E2929287E28F8FF2929295A %27FD08F8527E28292F5AF8A85329287E53F8F87E2929287E53FD05F8FD14 %FF52F805F8F8F80527A9292F297EF805F8F8527E29292959F8F8F805F827 %FF2F7EF8F852532929545AF8F80527A9292F297EF805F8F87D7E29292F53 %F827532F29297E2E27FF292F2985F805F8F8F805F8F8F8A85329297E5927 %FF2F29297E52F827532F2929842EF8F8F80527FD14FF7DFD07F8FF2F0629 %5AFD04F827A829292959FD06F8FF2954F8F852FD04295AF8F8F851A82906 %2959FD04F8767E29292959F8522906292985F851A82906295AFD09F8FF53 %29295A2E27A806292985F8F8522F06292984FD05F87DFD15FFF827F8F8F8 %27F87D532F297E2727F8F8F8FF292F295A5253525353277D7E29532F2F29 %2F295A59F8F82727FF292F297EF827F8F852FF292F2953532F292F29545A %2727A9292F2F84F827F8F8F827F8F827FF292F2985057D7E2F29545A27F8 %7E292F297E5927F8F8F827FD16FF27FD06F84B7E28292953FD04F87D5429 %292829292928295A27FF532929282929295A59FD04F8FF2928295AFD05F8 %A87E29292829292928295A59F8527E29285359FD08F8527E29292F5AF87D %5428295359F8F87E2928297E2EFD04F827FD16FF7DF8F805F8F8F827FF29 %292F5AF8F805F87D5A2F2929292F2929297E277DA95A2929292F5485F805 %F8F8F8FF29292985F8F8F805F852FF7E2929292F292F5A8527F8527E2929 %2F59F8F8F805F8F8F805527E292F535AF8FF2929298527F8275429292985 %F8F8F805F87DFD17FFFD07F8AFFFFFFFAFFD04F852FD09FFA82EF8A9A8FF %FFFFA8852EFD05F8FD04FF5AFD06F87EA8FD05FFA8852EF8F87DFFFFFFA9 %53FD08F8A8FFFFFFA95252FD04FF5AF8F87DFFFFFFAF59FD05F8FD18FF52 %F827F8F8F827278459845A27F827F8275A845A7E59845A7E598452F8F859 %5984598453F8F827F8F8F8595A7E5985F8F8F827F8F8F827598459845A7E %2E27F8F805845A7E5952F8F8F827F8F8F827278459845A2EF87E5A7E5984 %F8F827845A7E5953F8F8F82727FD18FFA8FD66F8A8FD19FF7D27F805F8F8 %F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805 %F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8 %F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805 %F8F8F805F87DFD1BFF7DFD62F87DFD1EFF7D2727F827F8F8F827F8F8F827 %F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8 %F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827 %F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F82752FDFCFFFD93FFFF %%EndData %%EndComments %%BeginDefaults %%ViewingOrientation: 1 0 0 1 %%EndDefaults %%BeginProlog %%BeginResource: procset Adobe_AGM_Utils 1.0 0 %%Version: 1.0 0 %%Copyright: Copyright (C) 2000-2003 Adobe Systems, Inc. All Rights Reserved. systemdict /setpacking known { currentpacking true setpacking } if userdict /Adobe_AGM_Utils 70 dict dup begin put /bdf { bind def } bind def /nd{ null def }bdf /xdf { exch def }bdf /ldf { load def }bdf /ddf { put }bdf /xddf { 3 -1 roll put }bdf /xpt { exch put }bdf /ndf { exch dup where{ pop pop pop }{ xdf }ifelse }def /cdndf { exch dup currentdict exch known{ pop pop }{ exch def }ifelse }def /ps_level /languagelevel where{ pop systemdict /languagelevel get exec }{ 1 }ifelse def /level2 ps_level 2 ge def /level3 ps_level 3 ge def /ps_version {version cvr} stopped { -1 }if def /set_gvm { currentglobal exch setglobal }bdf /reset_gvm { setglobal }bdf /makereadonlyarray { /packedarray where{ pop packedarray }{ array astore readonly }ifelse }bdf /map_reserved_ink_name { dup type /stringtype eq{ dup /Red eq{ pop (_Red_) }{ dup /Green eq{ pop (_Green_) }{ dup /Blue eq{ pop (_Blue_) }{ dup () cvn eq{ pop (Process) }if }ifelse }ifelse }ifelse }if }bdf /AGMUTIL_GSTATE 22 dict def /get_gstate { AGMUTIL_GSTATE begin /AGMUTIL_GSTATE_clr_spc currentcolorspace def /AGMUTIL_GSTATE_clr_indx 0 def /AGMUTIL_GSTATE_clr_comps 12 array def mark currentcolor counttomark {AGMUTIL_GSTATE_clr_comps AGMUTIL_GSTATE_clr_indx 3 -1 roll put /AGMUTIL_GSTATE_clr_indx AGMUTIL_GSTATE_clr_indx 1 add def} repeat pop /AGMUTIL_GSTATE_fnt rootfont def /AGMUTIL_GSTATE_lw currentlinewidth def /AGMUTIL_GSTATE_lc currentlinecap def /AGMUTIL_GSTATE_lj currentlinejoin def /AGMUTIL_GSTATE_ml currentmiterlimit def currentdash /AGMUTIL_GSTATE_do xdf /AGMUTIL_GSTATE_da xdf /AGMUTIL_GSTATE_sa currentstrokeadjust def /AGMUTIL_GSTATE_clr_rnd currentcolorrendering def /AGMUTIL_GSTATE_op currentoverprint def /AGMUTIL_GSTATE_bg currentblackgeneration cvlit def /AGMUTIL_GSTATE_ucr currentundercolorremoval cvlit def currentcolortransfer cvlit /AGMUTIL_GSTATE_gy_xfer xdf cvlit /AGMUTIL_GSTATE_b_xfer xdf cvlit /AGMUTIL_GSTATE_g_xfer xdf cvlit /AGMUTIL_GSTATE_r_xfer xdf /AGMUTIL_GSTATE_ht currenthalftone def /AGMUTIL_GSTATE_flt currentflat def end }def /set_gstate { AGMUTIL_GSTATE begin AGMUTIL_GSTATE_clr_spc setcolorspace AGMUTIL_GSTATE_clr_indx {AGMUTIL_GSTATE_clr_comps AGMUTIL_GSTATE_clr_indx 1 sub get /AGMUTIL_GSTATE_clr_indx AGMUTIL_GSTATE_clr_indx 1 sub def} repeat setcolor AGMUTIL_GSTATE_fnt setfont AGMUTIL_GSTATE_lw setlinewidth AGMUTIL_GSTATE_lc setlinecap AGMUTIL_GSTATE_lj setlinejoin AGMUTIL_GSTATE_ml setmiterlimit AGMUTIL_GSTATE_da AGMUTIL_GSTATE_do setdash AGMUTIL_GSTATE_sa setstrokeadjust AGMUTIL_GSTATE_clr_rnd setcolorrendering AGMUTIL_GSTATE_op setoverprint AGMUTIL_GSTATE_bg cvx setblackgeneration AGMUTIL_GSTATE_ucr cvx setundercolorremoval AGMUTIL_GSTATE_r_xfer cvx AGMUTIL_GSTATE_g_xfer cvx AGMUTIL_GSTATE_b_xfer cvx AGMUTIL_GSTATE_gy_xfer cvx setcolortransfer AGMUTIL_GSTATE_ht /HalftoneType get dup 9 eq exch 100 eq or { currenthalftone /HalftoneType get AGMUTIL_GSTATE_ht /HalftoneType get ne { mark AGMUTIL_GSTATE_ht {sethalftone} stopped cleartomark } if }{ AGMUTIL_GSTATE_ht sethalftone } ifelse AGMUTIL_GSTATE_flt setflat end }def /get_gstate_and_matrix { AGMUTIL_GSTATE begin /AGMUTIL_GSTATE_ctm matrix currentmatrix def end get_gstate }def /set_gstate_and_matrix { set_gstate AGMUTIL_GSTATE begin AGMUTIL_GSTATE_ctm setmatrix end }def /AGMUTIL_str256 256 string def /AGMUTIL_src256 256 string def /AGMUTIL_dst64 64 string def /AGMUTIL_srcLen nd /AGMUTIL_ndx nd /thold_halftone { level3 {sethalftone currenthalftone} { dup /HalftoneType get 3 eq { sethalftone currenthalftone } { begin Width Height mul { Thresholds read {pop} if } repeat end currenthalftone } ifelse }ifelse } def /rdcmntline { currentfile AGMUTIL_str256 readline pop (%) anchorsearch {pop} if } bdf /filter_cmyk { dup type /filetype ne{ exch () /SubFileDecode filter } { exch pop } ifelse [ exch { AGMUTIL_src256 readstring pop dup length /AGMUTIL_srcLen exch def /AGMUTIL_ndx 0 def AGMCORE_plate_ndx 4 AGMUTIL_srcLen 1 sub{ 1 index exch get AGMUTIL_dst64 AGMUTIL_ndx 3 -1 roll put /AGMUTIL_ndx AGMUTIL_ndx 1 add def }for pop AGMUTIL_dst64 0 AGMUTIL_ndx getinterval } bind /exec cvx ] cvx } bdf /filter_indexed_devn { cvi Names length mul names_index add Lookup exch get } bdf /filter_devn { 4 dict begin /srcStr xdf /dstStr xdf dup type /filetype ne{ 0 () /SubFileDecode filter }if [ exch [ /devicen_colorspace_dict /AGMCORE_gget cvx /begin cvx currentdict /srcStr get /readstring cvx /pop cvx /dup cvx /length cvx 0 /gt cvx [ Adobe_AGM_Utils /AGMUTIL_ndx 0 /ddf cvx names_index Names length currentdict /srcStr get length 1 sub { 1 /index cvx /exch cvx /get cvx currentdict /dstStr get /AGMUTIL_ndx /load cvx 3 -1 /roll cvx /put cvx Adobe_AGM_Utils /AGMUTIL_ndx /AGMUTIL_ndx /load cvx 1 /add cvx /ddf cvx } for currentdict /dstStr get 0 /AGMUTIL_ndx /load cvx /getinterval cvx ] cvx /if cvx /end cvx ] cvx bind /exec cvx ] cvx end } bdf /AGMUTIL_imagefile nd /read_image_file { AGMUTIL_imagefile 0 setfileposition 10 dict begin /imageDict xdf /imbufLen Width BitsPerComponent mul 7 add 8 idiv def /imbufIdx 0 def /origDataSource imageDict /DataSource get def /origMultipleDataSources imageDict /MultipleDataSources get def /origDecode imageDict /Decode get def /dstDataStr imageDict /Width get colorSpaceElemCnt mul string def imageDict /MultipleDataSources known {MultipleDataSources}{false} ifelse { /imbufCnt imageDict /DataSource get length def /imbufs imbufCnt array def 0 1 imbufCnt 1 sub { /imbufIdx xdf imbufs imbufIdx imbufLen string put imageDict /DataSource get imbufIdx [ AGMUTIL_imagefile imbufs imbufIdx get /readstring cvx /pop cvx ] cvx put } for DeviceN_PS2 { imageDict begin /DataSource [ DataSource /devn_sep_datasource cvx ] cvx def /MultipleDataSources false def /Decode [0 1] def end } if }{ /imbuf imbufLen string def Indexed_DeviceN level3 not and DeviceN_NoneName or { /srcDataStrs [ imageDict begin currentdict /MultipleDataSources known {MultipleDataSources {DataSource length}{1}ifelse}{1} ifelse { Width Decode length 2 div mul cvi string } repeat end ] def imageDict begin /DataSource [AGMUTIL_imagefile Decode BitsPerComponent false 1 /filter_indexed_devn load dstDataStr srcDataStrs devn_alt_datasource /exec cvx] cvx def /Decode [0 1] def end }{ imageDict /DataSource [1 string dup 0 AGMUTIL_imagefile Decode length 2 idiv string/readstring cvx /pop cvx names_index /get cvx /put cvx] cvx put imageDict /Decode [0 1] put } ifelse } ifelse imageDict exch load exec imageDict /DataSource origDataSource put imageDict /MultipleDataSources origMultipleDataSources put imageDict /Decode origDecode put end } bdf /write_image_file { begin { (AGMUTIL_imagefile) (w+) file } stopped{ false }{ Adobe_AGM_Utils/AGMUTIL_imagefile xddf 2 dict begin /imbufLen Width BitsPerComponent mul 7 add 8 idiv def MultipleDataSources {DataSource 0 get}{DataSource}ifelse type /filetype eq { /imbuf imbufLen string def }if 1 1 Height MultipleDataSources not{Decode length 2 idiv mul}if{ pop MultipleDataSources { 0 1 DataSource length 1 sub { DataSource type dup /arraytype eq { pop DataSource exch get exec }{ /filetype eq { DataSource exch get imbuf readstring pop }{ DataSource exch get } ifelse } ifelse AGMUTIL_imagefile exch writestring } for }{ DataSource type dup /arraytype eq { pop DataSource exec }{ /filetype eq { DataSource imbuf readstring pop }{ DataSource } ifelse } ifelse AGMUTIL_imagefile exch writestring } ifelse }for end true }ifelse end } bdf /close_image_file { AGMUTIL_imagefile closefile (AGMUTIL_imagefile) deletefile }def statusdict /product known userdict /AGMP_current_show known not and{ /pstr statusdict /product get def pstr (HP LaserJet 2200) eq pstr (HP LaserJet 4000 Series) eq or pstr (HP LaserJet 4050 Series ) eq or pstr (HP LaserJet 8000 Series) eq or pstr (HP LaserJet 8100 Series) eq or pstr (HP LaserJet 8150 Series) eq or pstr (HP LaserJet 5000 Series) eq or pstr (HP LaserJet 5100 Series) eq or pstr (HP Color LaserJet 4500) eq or pstr (HP Color LaserJet 4600) eq or pstr (HP LaserJet 5Si) eq or pstr (HP LaserJet 1200 Series) eq or pstr (HP LaserJet 1300 Series) eq or pstr (HP LaserJet 4100 Series) eq or { userdict /AGMP_current_show /show load put userdict /show { currentcolorspace 0 get /Pattern eq {false charpath f} {AGMP_current_show} ifelse } put }if currentdict /pstr undef } if /consumeimagedata { begin currentdict /MultipleDataSources known not {/MultipleDataSources false def} if MultipleDataSources { DataSource 0 get type dup /filetype eq { 1 dict begin /flushbuffer Width cvi string def 1 1 Height cvi { pop 0 1 DataSource length 1 sub { DataSource exch get flushbuffer readstring pop pop }for }for end }if dup /arraytype eq exch /packedarraytype eq or DataSource 0 get xcheck and { Width Height mul cvi { 0 1 DataSource length 1 sub {dup DataSource exch get exec length exch 0 ne {pop}if}for dup 0 eq {pop exit}if sub dup 0 le {exit}if }loop pop }if } { /DataSource load type dup /filetype eq { 1 dict begin /flushbuffer Width Decode length 2 idiv mul cvi string def 1 1 Height { pop DataSource flushbuffer readstring pop pop} for end }if dup /arraytype eq exch /packedarraytype eq or /DataSource load xcheck and { Height Width BitsPerComponent mul 8 BitsPerComponent sub add 8 idiv Decode length 2 idiv mul mul { DataSource length dup 0 eq {pop exit}if sub dup 0 le {exit}if }loop pop }if }ifelse end }bdf /addprocs { 2{/exec load}repeat 3 1 roll [ 5 1 roll ] bind cvx }def /modify_halftone_xfer { currenthalftone dup length dict copy begin currentdict 2 index known{ 1 index load dup length dict copy begin currentdict/TransferFunction known{ /TransferFunction load }{ currenttransfer }ifelse addprocs /TransferFunction xdf currentdict end def currentdict end sethalftone }{ currentdict/TransferFunction known{ /TransferFunction load }{ currenttransfer }ifelse addprocs /TransferFunction xdf currentdict end sethalftone pop }ifelse }def /clonearray { dup xcheck exch dup length array exch Adobe_AGM_Core/AGMCORE_tmp -1 ddf { Adobe_AGM_Core/AGMCORE_tmp 2 copy get 1 add ddf dup type /dicttype eq { Adobe_AGM_Core/AGMCORE_tmp get exch clonedict Adobe_AGM_Core/AGMCORE_tmp 4 -1 roll ddf } if dup type /arraytype eq { Adobe_AGM_Core/AGMCORE_tmp get exch clonearray Adobe_AGM_Core/AGMCORE_tmp 4 -1 roll ddf } if exch dup Adobe_AGM_Core/AGMCORE_tmp get 4 -1 roll put }forall exch {cvx} if }bdf /clonedict { dup length dict begin { dup type /dicttype eq { clonedict } if dup type /arraytype eq { clonearray } if def }forall currentdict end }bdf /DeviceN_PS2 { /currentcolorspace AGMCORE_gget 0 get /DeviceN eq level3 not and } bdf /Indexed_DeviceN { /indexed_colorspace_dict AGMCORE_gget dup null ne { dup /CSDBase known { /CSDBase get /CSD get_res /Names known }{ pop false }ifelse }{ pop false } ifelse } bdf /DeviceN_NoneName { /Names where { pop false Names { (None) eq or } forall }{ false }ifelse } bdf /DeviceN_PS2_inRip_seps { /AGMCORE_in_rip_sep where { pop dup type dup /arraytype eq exch /packedarraytype eq or { dup 0 get /DeviceN eq level3 not and AGMCORE_in_rip_sep and { /currentcolorspace exch AGMCORE_gput false } { true }ifelse } { true } ifelse } { true } ifelse } bdf /base_colorspace_type { dup type /arraytype eq {0 get} if } bdf /currentdistillerparams where { pop currentdistillerparams /CoreDistVersion get 5000 lt}{true}ifelse { /pdfmark_5 {cleartomark} bind def }{ /pdfmark_5 {pdfmark} bind def }ifelse /ReadBypdfmark_5 { 2 dict begin /makerString exch def string /tmpString exch def { currentfile tmpString readline pop makerString anchorsearch { pop pop cleartomark exit }{ 3 copy /PUT pdfmark_5 pop 2 copy (\n) /PUT pdfmark_5 } ifelse }loop end } bdf /doc_setup{ Adobe_AGM_Utils begin }bdf /doc_trailer{ currentdict Adobe_AGM_Utils eq{ end }if }bdf systemdict /setpacking known { setpacking } if %%EndResource %%BeginResource: procset Adobe_AGM_Core 2.0 0 %%Version: 2.0 0 %%Copyright: Copyright (C) 1997-2005 Adobe Systems, Inc. All Rights Reserved. %% Note: This procset assumes Adobe_AGM_Utils is opened on the stack below it, for %% definitions of some fundamental procedures. systemdict /setpacking known { currentpacking true setpacking } if userdict /Adobe_AGM_Core 201 dict dup begin put /Adobe_AGM_Core_Id /Adobe_AGM_Core_2.0_0 def /AGMCORE_str256 256 string def /AGMCORE_save nd /AGMCORE_graphicsave nd /AGMCORE_c 0 def /AGMCORE_m 0 def /AGMCORE_y 0 def /AGMCORE_k 0 def /AGMCORE_cmykbuf 4 array def /AGMCORE_screen [currentscreen] cvx def /AGMCORE_tmp 0 def /AGMCORE_&setgray nd /AGMCORE_&setcolor nd /AGMCORE_&setcolorspace nd /AGMCORE_&setcmykcolor nd /AGMCORE_cyan_plate nd /AGMCORE_magenta_plate nd /AGMCORE_yellow_plate nd /AGMCORE_black_plate nd /AGMCORE_plate_ndx nd /AGMCORE_get_ink_data nd /AGMCORE_is_cmyk_sep nd /AGMCORE_host_sep nd /AGMCORE_avoid_L2_sep_space nd /AGMCORE_distilling nd /AGMCORE_composite_job nd /AGMCORE_producing_seps nd /AGMCORE_ps_level -1 def /AGMCORE_ps_version -1 def /AGMCORE_environ_ok nd /AGMCORE_CSD_cache 0 dict def /AGMCORE_currentoverprint false def /AGMCORE_deltaX nd /AGMCORE_deltaY nd /AGMCORE_name nd /AGMCORE_sep_special nd /AGMCORE_err_strings 4 dict def /AGMCORE_cur_err nd /AGMCORE_current_spot_alias false def /AGMCORE_inverting false def /AGMCORE_feature_dictCount nd /AGMCORE_feature_opCount nd /AGMCORE_feature_ctm nd /AGMCORE_ConvertToProcess false def /AGMCORE_Default_CTM matrix def /AGMCORE_Default_PageSize nd /AGMCORE_currentbg nd /AGMCORE_currentucr nd /AGMCORE_in_pattern false def /AGMCORE_currentpagedevice nd /knockout_unitsq nd currentglobal true setglobal [/CSA /Gradient /Procedure] { /Generic /Category findresource dup length dict copy /Category defineresource pop } forall setglobal /AGMCORE_key_known { where{ /Adobe_AGM_Core_Id known }{ false }ifelse }ndf /flushinput { save 2 dict begin /CompareBuffer 3 -1 roll def /readbuffer 256 string def mark { currentfile readbuffer {readline} stopped {cleartomark mark} { not {pop exit} if CompareBuffer eq {exit} if }ifelse }loop cleartomark end restore }bdf /getspotfunction { AGMCORE_screen exch pop exch pop dup type /dicttype eq{ dup /HalftoneType get 1 eq{ /SpotFunction get }{ dup /HalftoneType get 2 eq{ /GraySpotFunction get }{ pop { abs exch abs 2 copy add 1 gt{ 1 sub dup mul exch 1 sub dup mul add 1 sub }{ dup mul exch dup mul add 1 exch sub }ifelse }bind }ifelse }ifelse }if } def /clp_npth { clip newpath } def /eoclp_npth { eoclip newpath } def /npth_clp { newpath clip } def /graphic_setup { /AGMCORE_graphicsave save def concat 0 setgray 0 setlinecap 0 setlinejoin 1 setlinewidth [] 0 setdash 10 setmiterlimit newpath false setoverprint false setstrokeadjust //Adobe_AGM_Core/spot_alias get exec /Adobe_AGM_Image where { pop Adobe_AGM_Image/spot_alias 2 copy known{ get exec }{ pop pop }ifelse } if 100 dict begin /dictstackcount countdictstack def /showpage {} def mark } def /graphic_cleanup { cleartomark dictstackcount 1 countdictstack 1 sub {end}for end AGMCORE_graphicsave restore } def /compose_error_msg { grestoreall initgraphics /Helvetica findfont 10 scalefont setfont /AGMCORE_deltaY 100 def /AGMCORE_deltaX 310 def clippath pathbbox newpath pop pop 36 add exch 36 add exch moveto 0 AGMCORE_deltaY rlineto AGMCORE_deltaX 0 rlineto 0 AGMCORE_deltaY neg rlineto AGMCORE_deltaX neg 0 rlineto closepath 0 AGMCORE_&setgray gsave 1 AGMCORE_&setgray fill grestore 1 setlinewidth gsave stroke grestore currentpoint AGMCORE_deltaY 15 sub add exch 8 add exch moveto /AGMCORE_deltaY 12 def /AGMCORE_tmp 0 def AGMCORE_err_strings exch get { dup 32 eq { pop AGMCORE_str256 0 AGMCORE_tmp getinterval stringwidth pop currentpoint pop add AGMCORE_deltaX 28 add gt { currentpoint AGMCORE_deltaY sub exch pop clippath pathbbox pop pop pop 44 add exch moveto } if AGMCORE_str256 0 AGMCORE_tmp getinterval show ( ) show 0 1 AGMCORE_str256 length 1 sub { AGMCORE_str256 exch 0 put }for /AGMCORE_tmp 0 def } { AGMCORE_str256 exch AGMCORE_tmp xpt /AGMCORE_tmp AGMCORE_tmp 1 add def } ifelse } forall } bdf /doc_setup{ Adobe_AGM_Core begin /AGMCORE_ps_version xdf /AGMCORE_ps_level xdf errordict /AGM_handleerror known not{ errordict /AGM_handleerror errordict /handleerror get put errordict /handleerror { Adobe_AGM_Core begin $error /newerror get AGMCORE_cur_err null ne and{ $error /newerror false put AGMCORE_cur_err compose_error_msg }if $error /newerror true put end errordict /AGM_handleerror get exec } bind put }if /AGMCORE_environ_ok ps_level AGMCORE_ps_level ge ps_version AGMCORE_ps_version ge and AGMCORE_ps_level -1 eq or def AGMCORE_environ_ok not {/AGMCORE_cur_err /AGMCORE_bad_environ def} if /AGMCORE_&setgray systemdict/setgray get def level2{ /AGMCORE_&setcolor systemdict/setcolor get def /AGMCORE_&setcolorspace systemdict/setcolorspace get def }if /AGMCORE_currentbg currentblackgeneration def /AGMCORE_currentucr currentundercolorremoval def /AGMCORE_distilling /product where{ pop systemdict/setdistillerparams known product (Adobe PostScript Parser) ne and }{ false }ifelse def /AGMCORE_GSTATE AGMCORE_key_known not{ /AGMCORE_GSTATE 21 dict def /AGMCORE_tmpmatrix matrix def /AGMCORE_gstack 32 array def /AGMCORE_gstackptr 0 def /AGMCORE_gstacksaveptr 0 def /AGMCORE_gstackframekeys 10 def /AGMCORE_&gsave /gsave ldf /AGMCORE_&grestore /grestore ldf /AGMCORE_&grestoreall /grestoreall ldf /AGMCORE_&save /save ldf /AGMCORE_&setoverprint /setoverprint ldf /AGMCORE_gdictcopy { begin { def } forall end }def /AGMCORE_gput { AGMCORE_gstack AGMCORE_gstackptr get 3 1 roll put }def /AGMCORE_gget { AGMCORE_gstack AGMCORE_gstackptr get exch get }def /gsave { AGMCORE_&gsave AGMCORE_gstack AGMCORE_gstackptr get AGMCORE_gstackptr 1 add dup 32 ge {limitcheck} if /AGMCORE_gstackptr exch store AGMCORE_gstack AGMCORE_gstackptr get AGMCORE_gdictcopy }def /grestore { AGMCORE_&grestore AGMCORE_gstackptr 1 sub dup AGMCORE_gstacksaveptr lt {1 add} if dup AGMCORE_gstack exch get dup /AGMCORE_currentoverprint known {/AGMCORE_currentoverprint get setoverprint}{pop}ifelse /AGMCORE_gstackptr exch store }def /grestoreall { AGMCORE_&grestoreall /AGMCORE_gstackptr AGMCORE_gstacksaveptr store }def /save { AGMCORE_&save AGMCORE_gstack AGMCORE_gstackptr get AGMCORE_gstackptr 1 add dup 32 ge {limitcheck} if /AGMCORE_gstackptr exch store /AGMCORE_gstacksaveptr AGMCORE_gstackptr store AGMCORE_gstack AGMCORE_gstackptr get AGMCORE_gdictcopy }def /setoverprint{ dup /AGMCORE_currentoverprint exch AGMCORE_gput AGMCORE_&setoverprint }def 0 1 AGMCORE_gstack length 1 sub { AGMCORE_gstack exch AGMCORE_gstackframekeys dict put } for }if level3 /AGMCORE_&sysshfill AGMCORE_key_known not and { /AGMCORE_&sysshfill systemdict/shfill get def /AGMCORE_&sysmakepattern systemdict/makepattern get def /AGMCORE_&usrmakepattern /makepattern load def }if /currentcmykcolor [0 0 0 0] AGMCORE_gput /currentstrokeadjust false AGMCORE_gput /currentcolorspace [/DeviceGray] AGMCORE_gput /sep_tint 0 AGMCORE_gput /devicen_tints [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] AGMCORE_gput /sep_colorspace_dict null AGMCORE_gput /devicen_colorspace_dict null AGMCORE_gput /indexed_colorspace_dict null AGMCORE_gput /currentcolor_intent () AGMCORE_gput /customcolor_tint 1 AGMCORE_gput << /MaxPatternItem currentsystemparams /MaxPatternCache get >> setuserparams end }def /page_setup { /setcmykcolor where{ pop Adobe_AGM_Core/AGMCORE_&setcmykcolor /setcmykcolor load put }if Adobe_AGM_Core begin /setcmykcolor { 4 copy AGMCORE_cmykbuf astore /currentcmykcolor exch AGMCORE_gput 1 sub 4 1 roll 3 { 3 index add neg dup 0 lt { pop 0 } if 3 1 roll } repeat setrgbcolor pop }ndf /currentcmykcolor { /currentcmykcolor AGMCORE_gget aload pop }ndf /setoverprint { pop }ndf /currentoverprint { false }ndf /AGMCORE_cyan_plate 1 0 0 0 test_cmyk_color_plate def /AGMCORE_magenta_plate 0 1 0 0 test_cmyk_color_plate def /AGMCORE_yellow_plate 0 0 1 0 test_cmyk_color_plate def /AGMCORE_black_plate 0 0 0 1 test_cmyk_color_plate def /AGMCORE_plate_ndx AGMCORE_cyan_plate{ 0 }{ AGMCORE_magenta_plate{ 1 }{ AGMCORE_yellow_plate{ 2 }{ AGMCORE_black_plate{ 3 }{ 4 }ifelse }ifelse }ifelse }ifelse def /AGMCORE_have_reported_unsupported_color_space false def /AGMCORE_report_unsupported_color_space { AGMCORE_have_reported_unsupported_color_space false eq { (Warning: Job contains content that cannot be separated with on-host methods. This content appears on the black plate, and knocks out all other plates.) == Adobe_AGM_Core /AGMCORE_have_reported_unsupported_color_space true ddf } if }def /AGMCORE_composite_job AGMCORE_cyan_plate AGMCORE_magenta_plate and AGMCORE_yellow_plate and AGMCORE_black_plate and def /AGMCORE_in_rip_sep /AGMCORE_in_rip_sep where{ pop AGMCORE_in_rip_sep }{ AGMCORE_distilling { false }{ userdict/Adobe_AGM_OnHost_Seps known{ false }{ level2{ currentpagedevice/Separations 2 copy known{ get }{ pop pop false }ifelse }{ false }ifelse }ifelse }ifelse }ifelse def /AGMCORE_producing_seps AGMCORE_composite_job not AGMCORE_in_rip_sep or def /AGMCORE_host_sep AGMCORE_producing_seps AGMCORE_in_rip_sep not and def /AGM_preserve_spots /AGM_preserve_spots where{ pop AGM_preserve_spots }{ AGMCORE_distilling AGMCORE_producing_seps or }ifelse def /AGM_is_distiller_preserving_spotimages { currentdistillerparams/PreserveOverprintSettings known { currentdistillerparams/PreserveOverprintSettings get { currentdistillerparams/ColorConversionStrategy known { currentdistillerparams/ColorConversionStrategy get /sRGB ne }{ true }ifelse }{ false }ifelse }{ false }ifelse }def /convert_spot_to_process where {pop}{ /convert_spot_to_process { //Adobe_AGM_Core begin dup map_alias { /Name get exch pop } if dup dup (None) eq exch (All) eq or { pop false }{ AGMCORE_host_sep { gsave 1 0 0 0 setcmykcolor currentgray 1 exch sub 0 1 0 0 setcmykcolor currentgray 1 exch sub 0 0 1 0 setcmykcolor currentgray 1 exch sub 0 0 0 1 setcmykcolor currentgray 1 exch sub add add add 0 eq { pop false }{ false setoverprint current_spot_alias false set_spot_alias 1 1 1 1 6 -1 roll findcmykcustomcolor 1 setcustomcolor set_spot_alias currentgray 1 ne }ifelse grestore }{ AGMCORE_distilling { pop AGM_is_distiller_preserving_spotimages not }{ //Adobe_AGM_Core/AGMCORE_name xddf false //Adobe_AGM_Core/AGMCORE_in_pattern known {//Adobe_AGM_Core/AGMCORE_in_pattern get}{false} ifelse not AGMCORE_currentpagedevice/OverrideSeparations known and { AGMCORE_currentpagedevice/OverrideSeparations get { /HqnSpots /ProcSet resourcestatus { pop pop pop true }if }if }if { AGMCORE_name /HqnSpots /ProcSet findresource /TestSpot get exec not }{ gsave [/Separation AGMCORE_name /DeviceGray {}]AGMCORE_&setcolorspace false AGMCORE_currentpagedevice/SeparationColorNames 2 copy known { get { AGMCORE_name eq or}forall not }{ pop pop pop true }ifelse grestore }ifelse }ifelse }ifelse }ifelse end }def }ifelse /convert_to_process where {pop}{ /convert_to_process { dup length 0 eq { pop false }{ AGMCORE_host_sep { dup true exch { dup (Cyan) eq exch dup (Magenta) eq 3 -1 roll or exch dup (Yellow) eq 3 -1 roll or exch dup (Black) eq 3 -1 roll or {pop} {convert_spot_to_process and}ifelse } forall { true exch { dup (Cyan) eq exch dup (Magenta) eq 3 -1 roll or exch dup (Yellow) eq 3 -1 roll or exch (Black) eq or and }forall not }{pop false}ifelse }{ false exch { dup (Cyan) eq exch dup (Magenta) eq 3 -1 roll or exch dup (Yellow) eq 3 -1 roll or exch dup (Black) eq 3 -1 roll or {pop} {convert_spot_to_process or}ifelse } forall }ifelse }ifelse }def }ifelse /AGMCORE_avoid_L2_sep_space version cvr 2012 lt level2 and AGMCORE_producing_seps not and def /AGMCORE_is_cmyk_sep AGMCORE_cyan_plate AGMCORE_magenta_plate or AGMCORE_yellow_plate or AGMCORE_black_plate or def /AGM_avoid_0_cmyk where{ pop AGM_avoid_0_cmyk }{ AGM_preserve_spots userdict/Adobe_AGM_OnHost_Seps known userdict/Adobe_AGM_InRip_Seps known or not and }ifelse { /setcmykcolor[ { 4 copy add add add 0 eq currentoverprint and{ pop 0.0005 }if }/exec cvx /AGMCORE_&setcmykcolor load dup type/operatortype ne{ /exec cvx }if ]cvx def }if /AGMCORE_IsSeparationAProcessColor { dup (Cyan) eq exch dup (Magenta) eq exch dup (Yellow) eq exch (Black) eq or or or }def AGMCORE_host_sep{ /setcolortransfer { AGMCORE_cyan_plate{ pop pop pop }{ AGMCORE_magenta_plate{ 4 3 roll pop pop pop }{ AGMCORE_yellow_plate{ 4 2 roll pop pop pop }{ 4 1 roll pop pop pop }ifelse }ifelse }ifelse settransfer } def /AGMCORE_get_ink_data AGMCORE_cyan_plate{ {pop pop pop} }{ AGMCORE_magenta_plate{ {4 3 roll pop pop pop} }{ AGMCORE_yellow_plate{ {4 2 roll pop pop pop} }{ {4 1 roll pop pop pop} }ifelse }ifelse }ifelse def /AGMCORE_RemoveProcessColorNames { 1 dict begin /filtername { dup /Cyan eq 1 index (Cyan) eq or {pop (_cyan_)}if dup /Magenta eq 1 index (Magenta) eq or {pop (_magenta_)}if dup /Yellow eq 1 index (Yellow) eq or {pop (_yellow_)}if dup /Black eq 1 index (Black) eq or {pop (_black_)}if }def dup type /arraytype eq {[exch {filtername}forall]} {filtername}ifelse end }def level3 { /AGMCORE_IsCurrentColor { dup AGMCORE_IsSeparationAProcessColor { AGMCORE_plate_ndx 0 eq {dup (Cyan) eq exch /Cyan eq or}if AGMCORE_plate_ndx 1 eq {dup (Magenta) eq exch /Magenta eq or}if AGMCORE_plate_ndx 2 eq {dup (Yellow) eq exch /Yellow eq or}if AGMCORE_plate_ndx 3 eq {dup (Black) eq exch /Black eq or}if AGMCORE_plate_ndx 4 eq {pop false}if }{ gsave false setoverprint current_spot_alias false set_spot_alias 1 1 1 1 6 -1 roll findcmykcustomcolor 1 setcustomcolor set_spot_alias currentgray 1 ne grestore }ifelse }def /AGMCORE_filter_functiondatasource { 5 dict begin /data_in xdf data_in type /stringtype eq { /ncomp xdf /comp xdf /string_out data_in length ncomp idiv string def 0 ncomp data_in length 1 sub { string_out exch dup ncomp idiv exch data_in exch ncomp getinterval comp get 255 exch sub put }for string_out }{ string /string_in xdf /string_out 1 string def /component xdf [ data_in string_in /readstring cvx [component /get cvx 255 /exch cvx /sub cvx string_out /exch cvx 0 /exch cvx /put cvx string_out]cvx [/pop cvx ()]cvx /ifelse cvx ]cvx /ReusableStreamDecode filter }ifelse end }def /AGMCORE_separateShadingFunction { 2 dict begin /paint? xdf /channel xdf dup type /dicttype eq { begin FunctionType 0 eq { /DataSource channel Range length 2 idiv DataSource AGMCORE_filter_functiondatasource def currentdict /Decode known {/Decode Decode channel 2 mul 2 getinterval def}if paint? not {/Decode [1 1]def}if }if FunctionType 2 eq { paint? { /C0 [C0 channel get 1 exch sub] def /C1 [C1 channel get 1 exch sub] def }{ /C0 [1] def /C1 [1] def }ifelse }if FunctionType 3 eq { /Functions [Functions {channel paint? AGMCORE_separateShadingFunction} forall] def }if currentdict /Range known {/Range [0 1] def}if currentdict end}{ channel get 0 paint? AGMCORE_separateShadingFunction }ifelse end }def /AGMCORE_separateShading { 3 -1 roll begin currentdict /Function known { currentdict /Background known {[1 index{Background 3 index get 1 exch sub}{1}ifelse]/Background xdf}if Function 3 1 roll AGMCORE_separateShadingFunction /Function xdf /ColorSpace [/DeviceGray] def }{ ColorSpace dup type /arraytype eq {0 get}if /DeviceCMYK eq { /ColorSpace [/DeviceN [/_cyan_ /_magenta_ /_yellow_ /_black_] /DeviceCMYK {}] def }{ ColorSpace dup 1 get AGMCORE_RemoveProcessColorNames 1 exch put }ifelse ColorSpace 0 get /Separation eq { { [1 /exch cvx /sub cvx]cvx }{ [/pop cvx 1]cvx }ifelse ColorSpace 3 3 -1 roll put pop }{ { [exch ColorSpace 1 get length 1 sub exch sub /index cvx 1 /exch cvx /sub cvx ColorSpace 1 get length 1 add 1 /roll cvx ColorSpace 1 get length{/pop cvx} repeat]cvx }{ pop [ColorSpace 1 get length {/pop cvx} repeat cvx 1]cvx }ifelse ColorSpace 3 3 -1 roll bind put }ifelse ColorSpace 2 /DeviceGray put }ifelse end }def /AGMCORE_separateShadingDict { dup /ColorSpace get dup type /arraytype ne {[exch]}if dup 0 get /DeviceCMYK eq { exch begin currentdict AGMCORE_cyan_plate {0 true}if AGMCORE_magenta_plate {1 true}if AGMCORE_yellow_plate {2 true}if AGMCORE_black_plate {3 true}if AGMCORE_plate_ndx 4 eq {0 false}if dup not currentoverprint and {/AGMCORE_ignoreshade true def}if AGMCORE_separateShading currentdict end exch }if dup 0 get /Separation eq { exch begin ColorSpace 1 get dup /None ne exch /All ne and { ColorSpace 1 get AGMCORE_IsCurrentColor AGMCORE_plate_ndx 4 lt and ColorSpace 1 get AGMCORE_IsSeparationAProcessColor not and { ColorSpace 2 get dup type /arraytype eq {0 get}if /DeviceCMYK eq { /ColorSpace [ /Separation ColorSpace 1 get /DeviceGray [ ColorSpace 3 get /exec cvx 4 AGMCORE_plate_ndx sub -1 /roll cvx 4 1 /roll cvx 3 [/pop cvx]cvx /repeat cvx 1 /exch cvx /sub cvx ]cvx ]def }{ AGMCORE_report_unsupported_color_space AGMCORE_black_plate not { currentdict 0 false AGMCORE_separateShading }if }ifelse }{ currentdict ColorSpace 1 get AGMCORE_IsCurrentColor 0 exch dup not currentoverprint and {/AGMCORE_ignoreshade true def}if AGMCORE_separateShading }ifelse }if currentdict end exch }if dup 0 get /DeviceN eq { exch begin ColorSpace 1 get convert_to_process { ColorSpace 2 get dup type /arraytype eq {0 get}if /DeviceCMYK eq { /ColorSpace [ /DeviceN ColorSpace 1 get /DeviceGray [ ColorSpace 3 get /exec cvx 4 AGMCORE_plate_ndx sub -1 /roll cvx 4 1 /roll cvx 3 [/pop cvx]cvx /repeat cvx 1 /exch cvx /sub cvx ]cvx ]def }{ AGMCORE_report_unsupported_color_space AGMCORE_black_plate not { currentdict 0 false AGMCORE_separateShading /ColorSpace [/DeviceGray] def }if }ifelse }{ currentdict false -1 ColorSpace 1 get { AGMCORE_IsCurrentColor { 1 add exch pop true exch exit }if 1 add }forall exch dup not currentoverprint and {/AGMCORE_ignoreshade true def}if AGMCORE_separateShading }ifelse currentdict end exch }if dup 0 get dup /DeviceCMYK eq exch dup /Separation eq exch /DeviceN eq or or not { exch begin ColorSpace dup type /arraytype eq {0 get}if /DeviceGray ne { AGMCORE_report_unsupported_color_space AGMCORE_black_plate not { ColorSpace 0 get /CIEBasedA eq { /ColorSpace [/Separation /_ciebaseda_ /DeviceGray {}] def }if ColorSpace 0 get dup /CIEBasedABC eq exch dup /CIEBasedDEF eq exch /DeviceRGB eq or or { /ColorSpace [/DeviceN [/_red_ /_green_ /_blue_] /DeviceRGB {}] def }if ColorSpace 0 get /CIEBasedDEFG eq { /ColorSpace [/DeviceN [/_cyan_ /_magenta_ /_yellow_ /_black_] /DeviceCMYK {}] def }if currentdict 0 false AGMCORE_separateShading }if }if currentdict end exch }if pop dup /AGMCORE_ignoreshade known { begin /ColorSpace [/Separation (None) /DeviceGray {}] def currentdict end }if }def /shfill { AGMCORE_separateShadingDict dup /AGMCORE_ignoreshade known {pop} {AGMCORE_&sysshfill}ifelse }def /makepattern { exch dup /PatternType get 2 eq { clonedict begin /Shading Shading AGMCORE_separateShadingDict def Shading /AGMCORE_ignoreshade known currentdict end exch {pop <</PatternType 1/PaintProc{pop}/BBox[0 0 1 1]/XStep 1/YStep 1/PaintType 1/TilingType 3>>}if exch AGMCORE_&sysmakepattern }{ exch AGMCORE_&usrmakepattern }ifelse }def }if }if AGMCORE_in_rip_sep{ /setcustomcolor { exch aload pop dup 7 1 roll inRip_spot_has_ink not { 4 {4 index mul 4 1 roll} repeat /DeviceCMYK setcolorspace 6 -2 roll pop pop }{ //Adobe_AGM_Core begin /AGMCORE_k xdf /AGMCORE_y xdf /AGMCORE_m xdf /AGMCORE_c xdf end [/Separation 4 -1 roll /DeviceCMYK {dup AGMCORE_c mul exch dup AGMCORE_m mul exch dup AGMCORE_y mul exch AGMCORE_k mul} ] setcolorspace }ifelse setcolor }ndf /setseparationgray { [/Separation (All) /DeviceGray {}] setcolorspace_opt 1 exch sub setcolor }ndf }{ /setseparationgray { AGMCORE_&setgray }ndf }ifelse /findcmykcustomcolor { 5 makereadonlyarray }ndf /setcustomcolor { exch aload pop pop 4 {4 index mul 4 1 roll} repeat setcmykcolor pop }ndf /has_color /colorimage where{ AGMCORE_producing_seps{ pop true }{ systemdict eq }ifelse }{ false }ifelse def /map_index { 1 index mul exch getinterval {255 div} forall } bdf /map_indexed_devn { Lookup Names length 3 -1 roll cvi map_index } bdf /n_color_components { base_colorspace_type dup /DeviceGray eq{ pop 1 }{ /DeviceCMYK eq{ 4 }{ 3 }ifelse }ifelse }bdf level2{ /mo /moveto ldf /li /lineto ldf /cv /curveto ldf /knockout_unitsq { 1 setgray 0 0 1 1 rectfill }def level2 /setcolorspace AGMCORE_key_known not and{ /AGMCORE_&&&setcolorspace /setcolorspace ldf /AGMCORE_ReplaceMappedColor { dup type dup /arraytype eq exch /packedarraytype eq or { /AGMCORE_SpotAliasAry2 where { begin dup 0 get dup /Separation eq { pop dup length array copy dup dup 1 get current_spot_alias { dup map_alias { false set_spot_alias dup 1 exch setsepcolorspace true set_spot_alias begin /sep_colorspace_dict currentdict AGMCORE_gput pop pop pop [ /Separation Name CSA map_csa MappedCSA /sep_colorspace_proc load ] dup Name end }if }if map_reserved_ink_name 1 xpt }{ /DeviceN eq { dup length array copy dup dup 1 get [ exch { current_spot_alias{ dup map_alias{ /Name get exch pop }if }if map_reserved_ink_name } forall ] 1 xpt }if }ifelse end } if }if }def /setcolorspace { dup type dup /arraytype eq exch /packedarraytype eq or { dup 0 get /Indexed eq { AGMCORE_distilling { /PhotoshopDuotoneList where { pop false }{ true }ifelse }{ true }ifelse { aload pop 3 -1 roll AGMCORE_ReplaceMappedColor 3 1 roll 4 array astore }if }{ AGMCORE_ReplaceMappedColor }ifelse }if DeviceN_PS2_inRip_seps {AGMCORE_&&&setcolorspace} if }def }if }{ /adj { currentstrokeadjust{ transform 0.25 sub round 0.25 add exch 0.25 sub round 0.25 add exch itransform }if }def /mo{ adj moveto }def /li{ adj lineto }def /cv{ 6 2 roll adj 6 2 roll adj 6 2 roll adj curveto }def /knockout_unitsq { 1 setgray 8 8 1 [8 0 0 8 0 0] {<ffffffffffffffff>} image }def /currentstrokeadjust{ /currentstrokeadjust AGMCORE_gget }def /setstrokeadjust{ /currentstrokeadjust exch AGMCORE_gput }def /setcolorspace { /currentcolorspace exch AGMCORE_gput } def /currentcolorspace { /currentcolorspace AGMCORE_gget } def /setcolor_devicecolor { base_colorspace_type dup /DeviceGray eq{ pop setgray }{ /DeviceCMYK eq{ setcmykcolor }{ setrgbcolor }ifelse }ifelse }def /setcolor { currentcolorspace 0 get dup /DeviceGray ne{ dup /DeviceCMYK ne{ dup /DeviceRGB ne{ dup /Separation eq{ pop currentcolorspace 3 get exec currentcolorspace 2 get }{ dup /Indexed eq{ pop currentcolorspace 3 get dup type /stringtype eq{ currentcolorspace 1 get n_color_components 3 -1 roll map_index }{ exec }ifelse currentcolorspace 1 get }{ /AGMCORE_cur_err /AGMCORE_invalid_color_space def AGMCORE_invalid_color_space }ifelse }ifelse }if }if }if setcolor_devicecolor } def }ifelse /sop /setoverprint ldf /lw /setlinewidth ldf /lc /setlinecap ldf /lj /setlinejoin ldf /ml /setmiterlimit ldf /dsh /setdash ldf /sadj /setstrokeadjust ldf /gry /setgray ldf /rgb /setrgbcolor ldf /cmyk /setcmykcolor ldf /sep /setsepcolor ldf /devn /setdevicencolor ldf /idx /setindexedcolor ldf /colr /setcolor ldf /csacrd /set_csa_crd ldf /sepcs /setsepcolorspace ldf /devncs /setdevicencolorspace ldf /idxcs /setindexedcolorspace ldf /cp /closepath ldf /clp /clp_npth ldf /eclp /eoclp_npth ldf /f /fill ldf /ef /eofill ldf /@ /stroke ldf /nclp /npth_clp ldf /gset /graphic_setup ldf /gcln /graphic_cleanup ldf /AGMCORE_def_ht currenthalftone def /clonedict Adobe_AGM_Utils begin /clonedict load end def /clonearray Adobe_AGM_Utils begin /clonearray load end def currentdict{ dup xcheck 1 index type dup /arraytype eq exch /packedarraytype eq or and { bind }if def }forall /getrampcolor { /indx exch def 0 1 NumComp 1 sub { dup Samples exch get dup type /stringtype eq {indx get} if exch Scaling exch get aload pop 3 1 roll mul add } for ColorSpaceFamily /Separation eq {sep} { ColorSpaceFamily /DeviceN eq {devn} {setcolor}ifelse }ifelse } bdf /sssetbackground {aload pop setcolor} bdf /RadialShade { 40 dict begin /ColorSpaceFamily xdf /background xdf /ext1 xdf /ext0 xdf /BBox xdf /r2 xdf /c2y xdf /c2x xdf /r1 xdf /c1y xdf /c1x xdf /rampdict xdf /setinkoverprint where {pop /setinkoverprint{pop}def}if gsave BBox length 0 gt { newpath BBox 0 get BBox 1 get moveto BBox 2 get BBox 0 get sub 0 rlineto 0 BBox 3 get BBox 1 get sub rlineto BBox 2 get BBox 0 get sub neg 0 rlineto closepath clip newpath } if c1x c2x eq { c1y c2y lt {/theta 90 def}{/theta 270 def} ifelse } { /slope c2y c1y sub c2x c1x sub div def /theta slope 1 atan def c2x c1x lt c2y c1y ge and { /theta theta 180 sub def} if c2x c1x lt c2y c1y lt and { /theta theta 180 add def} if } ifelse gsave clippath c1x c1y translate theta rotate -90 rotate { pathbbox } stopped { 0 0 0 0 } if /yMax xdf /xMax xdf /yMin xdf /xMin xdf grestore xMax xMin eq yMax yMin eq or { grestore end } { /max { 2 copy gt { pop } {exch pop} ifelse } bdf /min { 2 copy lt { pop } {exch pop} ifelse } bdf rampdict begin 40 dict begin background length 0 gt { background sssetbackground gsave clippath fill grestore } if gsave c1x c1y translate theta rotate -90 rotate /c2y c1x c2x sub dup mul c1y c2y sub dup mul add sqrt def /c1y 0 def /c1x 0 def /c2x 0 def ext0 { 0 getrampcolor c2y r2 add r1 sub 0.0001 lt { c1x c1y r1 360 0 arcn pathbbox /aymax exch def /axmax exch def /aymin exch def /axmin exch def /bxMin xMin axmin min def /byMin yMin aymin min def /bxMax xMax axmax max def /byMax yMax aymax max def bxMin byMin moveto bxMax byMin lineto bxMax byMax lineto bxMin byMax lineto bxMin byMin lineto eofill } { c2y r1 add r2 le { c1x c1y r1 0 360 arc fill } { c2x c2y r2 0 360 arc fill r1 r2 eq { /p1x r1 neg def /p1y c1y def /p2x r1 def /p2y c1y def p1x p1y moveto p2x p2y lineto p2x yMin lineto p1x yMin lineto fill } { /AA r2 r1 sub c2y div def AA -1 eq { /theta 89.99 def} { /theta AA 1 AA dup mul sub sqrt div 1 atan def} ifelse /SS1 90 theta add dup sin exch cos div def /p1x r1 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def /p1y p1x SS1 div neg def /SS2 90 theta sub dup sin exch cos div def /p2x r1 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def /p2y p2x SS2 div neg def r1 r2 gt { /L1maxX p1x yMin p1y sub SS1 div add def /L2maxX p2x yMin p2y sub SS2 div add def } { /L1maxX 0 def /L2maxX 0 def } ifelse p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto L1maxX L1maxX p1x sub SS1 mul p1y add lineto fill } ifelse } ifelse } ifelse } if c1x c2x sub dup mul c1y c2y sub dup mul add 0.5 exp 0 dtransform dup mul exch dup mul add 0.5 exp 72 div 0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt 72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt 1 index 1 index lt { exch } if pop /hires xdf hires mul /numpix xdf /numsteps NumSamples def /rampIndxInc 1 def /subsampling false def numpix 0 ne { NumSamples numpix div 0.5 gt { /numsteps numpix 2 div round cvi dup 1 le { pop 2 } if def /rampIndxInc NumSamples 1 sub numsteps div def /subsampling true def } if } if /xInc c2x c1x sub numsteps div def /yInc c2y c1y sub numsteps div def /rInc r2 r1 sub numsteps div def /cx c1x def /cy c1y def /radius r1 def newpath xInc 0 eq yInc 0 eq rInc 0 eq and and { 0 getrampcolor cx cy radius 0 360 arc stroke NumSamples 1 sub getrampcolor cx cy radius 72 hires div add 0 360 arc 0 setlinewidth stroke } { 0 numsteps { dup subsampling { round cvi } if getrampcolor cx cy radius 0 360 arc /cx cx xInc add def /cy cy yInc add def /radius radius rInc add def cx cy radius 360 0 arcn eofill rampIndxInc add } repeat pop } ifelse ext1 { c2y r2 add r1 lt { c2x c2y r2 0 360 arc fill } { c2y r1 add r2 sub 0.0001 le { c2x c2y r2 360 0 arcn pathbbox /aymax exch def /axmax exch def /aymin exch def /axmin exch def /bxMin xMin axmin min def /byMin yMin aymin min def /bxMax xMax axmax max def /byMax yMax aymax max def bxMin byMin moveto bxMax byMin lineto bxMax byMax lineto bxMin byMax lineto bxMin byMin lineto eofill } { c2x c2y r2 0 360 arc fill r1 r2 eq { /p1x r2 neg def /p1y c2y def /p2x r2 def /p2y c2y def p1x p1y moveto p2x p2y lineto p2x yMax lineto p1x yMax lineto fill } { /AA r2 r1 sub c2y div def AA -1 eq { /theta 89.99 def} { /theta AA 1 AA dup mul sub sqrt div 1 atan def} ifelse /SS1 90 theta add dup sin exch cos div def /p1x r2 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def /p1y c2y p1x SS1 div sub def /SS2 90 theta sub dup sin exch cos div def /p2x r2 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def /p2y c2y p2x SS2 div sub def r1 r2 lt { /L1maxX p1x yMax p1y sub SS1 div add def /L2maxX p2x yMax p2y sub SS2 div add def } { /L1maxX 0 def /L2maxX 0 def }ifelse p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto L1maxX L1maxX p1x sub SS1 mul p1y add lineto fill } ifelse } ifelse } ifelse } if grestore grestore end end end } ifelse } bdf /GenStrips { 40 dict begin /ColorSpaceFamily xdf /background xdf /ext1 xdf /ext0 xdf /BBox xdf /y2 xdf /x2 xdf /y1 xdf /x1 xdf /rampdict xdf /setinkoverprint where {pop /setinkoverprint{pop}def}if gsave BBox length 0 gt { newpath BBox 0 get BBox 1 get moveto BBox 2 get BBox 0 get sub 0 rlineto 0 BBox 3 get BBox 1 get sub rlineto BBox 2 get BBox 0 get sub neg 0 rlineto closepath clip newpath } if x1 x2 eq { y1 y2 lt {/theta 90 def}{/theta 270 def} ifelse } { /slope y2 y1 sub x2 x1 sub div def /theta slope 1 atan def x2 x1 lt y2 y1 ge and { /theta theta 180 sub def} if x2 x1 lt y2 y1 lt and { /theta theta 180 add def} if } ifelse gsave clippath x1 y1 translate theta rotate { pathbbox } stopped { 0 0 0 0 } if /yMax exch def /xMax exch def /yMin exch def /xMin exch def grestore xMax xMin eq yMax yMin eq or { grestore end } { rampdict begin 20 dict begin background length 0 gt { background sssetbackground gsave clippath fill grestore } if gsave x1 y1 translate theta rotate /xStart 0 def /xEnd x2 x1 sub dup mul y2 y1 sub dup mul add 0.5 exp def /ySpan yMax yMin sub def /numsteps NumSamples def /rampIndxInc 1 def /subsampling false def xStart 0 transform xEnd 0 transform 3 -1 roll sub dup mul 3 1 roll sub dup mul add 0.5 exp 72 div 0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt 72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt 1 index 1 index lt { exch } if pop mul /numpix xdf numpix 0 ne { NumSamples numpix div 0.5 gt { /numsteps numpix 2 div round cvi dup 1 le { pop 2 } if def /rampIndxInc NumSamples 1 sub numsteps div def /subsampling true def } if } if ext0 { 0 getrampcolor xMin xStart lt { xMin yMin xMin neg ySpan rectfill } if } if /xInc xEnd xStart sub numsteps div def /x xStart def 0 numsteps { dup subsampling { round cvi } if getrampcolor x yMin xInc ySpan rectfill /x x xInc add def rampIndxInc add } repeat pop ext1 { xMax xEnd gt { xEnd yMin xMax xEnd sub ySpan rectfill } if } if grestore grestore end end end } ifelse } bdf }def /page_trailer { end }def /doc_trailer{ }def /capture_currentpagedevice { //Adobe_AGM_Core/AGMCORE_currentpagedevice currentpagedevice ddf } def systemdict /findcolorrendering known{ /findcolorrendering systemdict /findcolorrendering get def }if systemdict /setcolorrendering known{ /setcolorrendering systemdict /setcolorrendering get def }if /test_cmyk_color_plate { gsave setcmykcolor currentgray 1 ne grestore }def /inRip_spot_has_ink { dup //Adobe_AGM_Core/AGMCORE_name xddf convert_spot_to_process not }def /map255_to_range { 1 index sub 3 -1 roll 255 div mul add }def /set_csa_crd { /sep_colorspace_dict null AGMCORE_gput begin CSA get_csa_by_name setcolorspace_opt set_crd end } def /map_csa { currentdict/MappedCSA known{MappedCSA null ne}{false}ifelse {pop}{get_csa_by_name /MappedCSA xdf}ifelse } def /setsepcolor { /sep_colorspace_dict AGMCORE_gget begin dup /sep_tint exch AGMCORE_gput TintProc end } def /setdevicencolor { /devicen_colorspace_dict AGMCORE_gget begin Names length copy Names length 1 sub -1 0 { /devicen_tints AGMCORE_gget 3 1 roll xpt } for TintProc end } def /sep_colorspace_proc { /AGMCORE_tmp exch store /sep_colorspace_dict AGMCORE_gget begin currentdict/Components known{ Components aload pop TintMethod/Lab eq{ 2 {AGMCORE_tmp mul NComponents 1 roll} repeat LMax sub AGMCORE_tmp mul LMax add NComponents 1 roll }{ TintMethod/Subtractive eq{ NComponents{ AGMCORE_tmp mul NComponents 1 roll }repeat }{ NComponents{ 1 sub AGMCORE_tmp mul 1 add NComponents 1 roll } repeat }ifelse }ifelse }{ ColorLookup AGMCORE_tmp ColorLookup length 1 sub mul round cvi get aload pop }ifelse end } def /sep_colorspace_gray_proc { /AGMCORE_tmp exch store /sep_colorspace_dict AGMCORE_gget begin GrayLookup AGMCORE_tmp GrayLookup length 1 sub mul round cvi get end } def /sep_proc_name { dup 0 get dup /DeviceRGB eq exch /DeviceCMYK eq or level2 not and has_color not and{ pop [/DeviceGray] /sep_colorspace_gray_proc }{ /sep_colorspace_proc }ifelse } def /setsepcolorspace { current_spot_alias{ dup begin Name map_alias{ exch pop }if end }if dup /sep_colorspace_dict exch AGMCORE_gput begin CSA map_csa /AGMCORE_sep_special Name dup () eq exch (All) eq or store AGMCORE_avoid_L2_sep_space{ [/Indexed MappedCSA sep_proc_name 255 exch { 255 div } /exec cvx 3 -1 roll [ 4 1 roll load /exec cvx ] cvx ] setcolorspace_opt /TintProc { 255 mul round cvi setcolor }bdf }{ MappedCSA 0 get /DeviceCMYK eq currentdict/Components known and AGMCORE_sep_special not and{ /TintProc [ Components aload pop Name findcmykcustomcolor /exch cvx /setcustomcolor cvx ] cvx bdf }{ AGMCORE_host_sep Name (All) eq and{ /TintProc { 1 exch sub setseparationgray }bdf }{ AGMCORE_in_rip_sep MappedCSA 0 get /DeviceCMYK eq and AGMCORE_host_sep or Name () eq and{ /TintProc [ MappedCSA sep_proc_name exch 0 get /DeviceCMYK eq{ cvx /setcmykcolor cvx }{ cvx /setgray cvx }ifelse ] cvx bdf }{ AGMCORE_producing_seps MappedCSA 0 get dup /DeviceCMYK eq exch /DeviceGray eq or and AGMCORE_sep_special not and{ /TintProc [ /dup cvx MappedCSA sep_proc_name cvx exch 0 get /DeviceGray eq{ 1 /exch cvx /sub cvx 0 0 0 4 -1 /roll cvx }if /Name cvx /findcmykcustomcolor cvx /exch cvx AGMCORE_host_sep{ AGMCORE_is_cmyk_sep /Name cvx /AGMCORE_IsSeparationAProcessColor load /exec cvx /not cvx /and cvx }{ Name inRip_spot_has_ink not }ifelse [ /pop cvx 1 ] cvx /if cvx /setcustomcolor cvx ] cvx bdf }{ /TintProc {setcolor} bdf [/Separation Name MappedCSA sep_proc_name load ] setcolorspace_opt }ifelse }ifelse }ifelse }ifelse }ifelse set_crd setsepcolor end } def /additive_blend { 3 dict begin /numarrays xdf /numcolors xdf 0 1 numcolors 1 sub { /c1 xdf 1 0 1 numarrays 1 sub { 1 exch add /index cvx c1 /get cvx /mul cvx }for numarrays 1 add 1 /roll cvx }for numarrays [/pop cvx] cvx /repeat cvx end }def /subtractive_blend { 3 dict begin /numarrays xdf /numcolors xdf 0 1 numcolors 1 sub { /c1 xdf 1 1 0 1 numarrays 1 sub { 1 3 3 -1 roll add /index cvx c1 /get cvx /sub cvx /mul cvx }for /sub cvx numarrays 1 add 1 /roll cvx }for numarrays [/pop cvx] cvx /repeat cvx end }def /exec_tint_transform { /TintProc [ /TintTransform cvx /setcolor cvx ] cvx bdf MappedCSA setcolorspace_opt } bdf /devn_makecustomcolor { 2 dict begin /names_index xdf /Names xdf 1 1 1 1 Names names_index get findcmykcustomcolor /devicen_tints AGMCORE_gget names_index get setcustomcolor Names length {pop} repeat end } bdf /setdevicencolorspace { dup /AliasedColorants known {false}{true}ifelse current_spot_alias and { 7 dict begin /names_index 0 def dup /names_len exch /Names get length def /new_names names_len array def /new_LookupTables names_len array def /alias_cnt 0 def dup /Names get { dup map_alias { exch pop dup /ColorLookup known { dup begin new_LookupTables names_index ColorLookup put end }{ dup /Components known { dup begin new_LookupTables names_index Components put end }{ dup begin new_LookupTables names_index [null null null null] put end } ifelse } ifelse new_names names_index 3 -1 roll /Name get put /alias_cnt alias_cnt 1 add def }{ /name xdf new_names names_index name put dup /LookupTables known { dup begin new_LookupTables names_index LookupTables names_index get put end }{ dup begin new_LookupTables names_index [null null null null] put end } ifelse } ifelse /names_index names_index 1 add def } forall alias_cnt 0 gt { /AliasedColorants true def /lut_entry_len new_LookupTables 0 get dup length 256 ge {0 get length}{length}ifelse def 0 1 names_len 1 sub { /names_index xdf new_LookupTables names_index get dup length 256 ge {0 get length}{length}ifelse lut_entry_len ne { /AliasedColorants false def exit } { new_LookupTables names_index get 0 get null eq { dup /Names get names_index get /name xdf name (Cyan) eq name (Magenta) eq name (Yellow) eq name (Black) eq or or or not { /AliasedColorants false def exit } if } if } ifelse } for lut_entry_len 1 eq { /AliasedColorants false def } if AliasedColorants { dup begin /Names new_names def /LookupTables new_LookupTables def /AliasedColorants true def /NComponents lut_entry_len def /TintMethod NComponents 4 eq {/Subtractive}{/Additive}ifelse def /MappedCSA TintMethod /Additive eq {/DeviceRGB}{/DeviceCMYK}ifelse def currentdict /TTTablesIdx known not { /TTTablesIdx -1 def } if end } if }if end } if dup /devicen_colorspace_dict exch AGMCORE_gput begin currentdict /AliasedColorants known { AliasedColorants }{ false } ifelse dup not { CSA map_csa } if /TintTransform load type /nulltype eq or { /TintTransform [ 0 1 Names length 1 sub { /TTTablesIdx TTTablesIdx 1 add def dup LookupTables exch get dup 0 get null eq { 1 index Names exch get dup (Cyan) eq { pop exch LookupTables length exch sub /index cvx 0 0 0 } { dup (Magenta) eq { pop exch LookupTables length exch sub /index cvx 0 /exch cvx 0 0 } { (Yellow) eq { exch LookupTables length exch sub /index cvx 0 0 3 -1 /roll cvx 0 } { exch LookupTables length exch sub /index cvx 0 0 0 4 -1 /roll cvx } ifelse } ifelse } ifelse 5 -1 /roll cvx /astore cvx } { dup length 1 sub LookupTables length 4 -1 roll sub 1 add /index cvx /mul cvx /round cvx /cvi cvx /get cvx } ifelse Names length TTTablesIdx add 1 add 1 /roll cvx } for Names length [/pop cvx] cvx /repeat cvx NComponents Names length TintMethod /Subtractive eq { subtractive_blend } { additive_blend } ifelse ] cvx bdf } if AGMCORE_host_sep { Names convert_to_process { exec_tint_transform } { currentdict /AliasedColorants known { AliasedColorants not }{ false } ifelse 5 dict begin /AvoidAliasedColorants xdf /painted? false def /names_index 0 def /names_len Names length def AvoidAliasedColorants { /currentspotalias current_spot_alias def false set_spot_alias } if Names { AGMCORE_is_cmyk_sep { dup (Cyan) eq AGMCORE_cyan_plate and exch dup (Magenta) eq AGMCORE_magenta_plate and exch dup (Yellow) eq AGMCORE_yellow_plate and exch (Black) eq AGMCORE_black_plate and or or or { /devicen_colorspace_dict AGMCORE_gget /TintProc [ Names names_index /devn_makecustomcolor cvx ] cvx ddf /painted? true def } if painted? {exit} if }{ 0 0 0 0 5 -1 roll findcmykcustomcolor 1 setcustomcolor currentgray 0 eq { /devicen_colorspace_dict AGMCORE_gget /TintProc [ Names names_index /devn_makecustomcolor cvx ] cvx ddf /painted? true def exit } if } ifelse /names_index names_index 1 add def } forall AvoidAliasedColorants { currentspotalias set_spot_alias } if painted? { /devicen_colorspace_dict AGMCORE_gget /names_index names_index put }{ /devicen_colorspace_dict AGMCORE_gget /TintProc [ names_len [/pop cvx] cvx /repeat cvx 1 /setseparationgray cvx 0 0 0 0 /setcmykcolor cvx ] cvx ddf } ifelse end } ifelse } { AGMCORE_in_rip_sep { Names convert_to_process not }{ level3 } ifelse { [/DeviceN Names MappedCSA /TintTransform load] setcolorspace_opt /TintProc level3 not AGMCORE_in_rip_sep and { [ Names /length cvx [/pop cvx] cvx /repeat cvx ] cvx bdf }{ {setcolor} bdf } ifelse }{ exec_tint_transform } ifelse } ifelse set_crd /AliasedColorants false def end } def /setindexedcolorspace { dup /indexed_colorspace_dict exch AGMCORE_gput begin currentdict /CSDBase known { CSDBase /CSD get_res begin currentdict /Names known { currentdict devncs }{ 1 currentdict sepcs } ifelse AGMCORE_host_sep{ 4 dict begin /compCnt /Names where {pop Names length}{1}ifelse def /NewLookup HiVal 1 add string def 0 1 HiVal { /tableIndex xdf Lookup dup type /stringtype eq { compCnt tableIndex map_index }{ exec } ifelse /Names where { pop setdevicencolor }{ setsepcolor } ifelse currentgray tableIndex exch HiVal mul cvi NewLookup 3 1 roll put } for [/Indexed currentcolorspace HiVal NewLookup] setcolorspace_opt end }{ level3 { currentdict /Names known { [/Indexed [/DeviceN Names MappedCSA /TintTransform load] HiVal Lookup] setcolorspace_opt }{ [/Indexed [/Separation Name MappedCSA sep_proc_name load] HiVal Lookup] setcolorspace_opt } ifelse }{ [/Indexed MappedCSA HiVal [ currentdict /Names known { Lookup dup type /stringtype eq {/exch cvx CSDBase /CSD get_res /Names get length dup /mul cvx exch /getinterval cvx {255 div} /forall cvx} {/exec cvx}ifelse /TintTransform load /exec cvx }{ Lookup dup type /stringtype eq {/exch cvx /get cvx 255 /div cvx} {/exec cvx}ifelse CSDBase /CSD get_res /MappedCSA get sep_proc_name exch pop /load cvx /exec cvx } ifelse ]cvx ]setcolorspace_opt }ifelse } ifelse end set_crd } { CSA map_csa AGMCORE_host_sep level2 not and{ 0 0 0 0 setcmykcolor }{ [/Indexed MappedCSA level2 not has_color not and{ dup 0 get dup /DeviceRGB eq exch /DeviceCMYK eq or{ pop [/DeviceGray] }if HiVal GrayLookup }{ HiVal currentdict/RangeArray known{ { /indexed_colorspace_dict AGMCORE_gget begin Lookup exch dup HiVal gt{ pop HiVal }if NComponents mul NComponents getinterval {} forall NComponents 1 sub -1 0{ RangeArray exch 2 mul 2 getinterval aload pop map255_to_range NComponents 1 roll }for end } bind }{ Lookup }ifelse }ifelse ] setcolorspace_opt set_crd }ifelse }ifelse end }def /setindexedcolor { AGMCORE_host_sep { /indexed_colorspace_dict AGMCORE_gget dup /CSDBase known { begin CSDBase /CSD get_res begin currentdict /Names known{ map_indexed_devn devn } { Lookup 1 3 -1 roll map_index sep }ifelse end end }{ /Lookup get 4 3 -1 roll map_index setcmykcolor } ifelse }{ level3 not AGMCORE_in_rip_sep and /indexed_colorspace_dict AGMCORE_gget /CSDBase known and { /indexed_colorspace_dict AGMCORE_gget /CSDBase get /CSD get_res begin map_indexed_devn devn end } { setcolor } ifelse }ifelse } def /ignoreimagedata { currentoverprint not{ gsave dup clonedict begin 1 setgray /Decode [0 1] def /DataSource <FF> def /MultipleDataSources false def /BitsPerComponent 8 def currentdict end systemdict /image get exec grestore }if consumeimagedata }def /add_res { dup /CSD eq { pop //Adobe_AGM_Core begin /AGMCORE_CSD_cache load 3 1 roll put end }{ defineresource pop } ifelse }def /del_res { { aload pop exch dup /CSD eq { pop { //Adobe_AGM_Core/AGMCORE_CSD_cache get exch undef }forall }{ exch { 1 index undefineresource }forall pop } ifelse } forall }def /get_res { dup /CSD eq { pop dup type dup /nametype eq exch /stringtype eq or { AGMCORE_CSD_cache exch get } if }{ findresource } ifelse }def /get_csa_by_name { dup type dup /nametype eq exch /stringtype eq or{ /CSA get_res } if }def /pattern_buf_init { /count get 0 0 put } def /pattern_buf_next { dup /count get dup 0 get dup 3 1 roll 1 add 0 xpt get } def /cachepattern_compress { 5 dict begin currentfile exch 0 exch /SubFileDecode filter /ReadFilter exch def /patarray 20 dict def /string_size 16000 def /readbuffer string_size string def currentglobal true setglobal patarray 1 array dup 0 1 put /count xpt setglobal /LZWFilter { exch dup length 0 eq { pop }{ patarray dup length 1 sub 3 -1 roll put } ifelse {string_size}{0}ifelse string } /LZWEncode filter def { ReadFilter readbuffer readstring exch LZWFilter exch writestring not {exit} if } loop LZWFilter closefile patarray end }def /cachepattern { 2 dict begin currentfile exch 0 exch /SubFileDecode filter /ReadFilter exch def /patarray 20 dict def currentglobal true setglobal patarray 1 array dup 0 1 put /count xpt setglobal { ReadFilter 16000 string readstring exch patarray dup length 1 sub 3 -1 roll put not {exit} if } loop patarray dup dup length 1 sub () put end }def /wrap_paintproc { statusdict /currentfilenameextend known{ clonedict begin /OldPaintProc /PaintProc load def /PaintProc { mark exch dup /OldPaintProc get stopped {closefile restore end} if cleartomark } def end } {pop} ifelse } def /make_pattern { exch clonedict exch dup matrix currentmatrix matrix concatmatrix 0 0 3 2 roll itransform exch 3 index /XStep get 1 index exch 2 copy div cvi mul sub sub exch 3 index /YStep get 1 index exch 2 copy div cvi mul sub sub matrix translate exch matrix concatmatrix 1 index begin BBox 0 get XStep div cvi XStep mul /xshift exch neg def BBox 1 get YStep div cvi YStep mul /yshift exch neg def BBox 0 get xshift add BBox 1 get yshift add BBox 2 get xshift add BBox 3 get yshift add 4 array astore /BBox exch def [ xshift yshift /translate load null /exec load ] dup 3 /PaintProc load put cvx /PaintProc exch def end 1 index dup /ID get exch /Pattern add_res gsave 0 setgray makepattern grestore }def /set_pattern { dup /PatternType get 1 eq{ dup /PaintType get 1 eq{ currentoverprint sop [/DeviceGray] setcolorspace 0 setgray }if }if setpattern }def /setcolorspace_opt { dup currentcolorspace eq{ pop }{ setcolorspace }ifelse }def /updatecolorrendering { currentcolorrendering/RenderingIntent known{ currentcolorrendering/RenderingIntent get }{null}ifelse Intent ne { Intent /ColorRendering {findresource} stopped { pop pop systemdict /findcolorrendering known { Intent findcolorrendering pop /ColorRendering findresource true } {false} ifelse } {true} ifelse { dup begin currentdict /TransformPQR known { currentdict /TransformPQR get aload pop 3 {{} eq 3 1 roll} repeat or or } {true} ifelse currentdict /MatrixPQR known { currentdict /MatrixPQR get aload pop 1.0 eq 9 1 roll 0.0 eq 9 1 roll 0.0 eq 9 1 roll 0.0 eq 9 1 roll 1.0 eq 9 1 roll 0.0 eq 9 1 roll 0.0 eq 9 1 roll 0.0 eq 9 1 roll 1.0 eq and and and and and and and and } {true} ifelse end or { clonedict begin /TransformPQR [ {4 -1 roll 3 get dup 3 1 roll sub 5 -1 roll 3 get 3 -1 roll sub div 3 -1 roll 3 get 3 -1 roll 3 get dup 4 1 roll sub mul add} bind {4 -1 roll 4 get dup 3 1 roll sub 5 -1 roll 4 get 3 -1 roll sub div 3 -1 roll 4 get 3 -1 roll 4 get dup 4 1 roll sub mul add} bind {4 -1 roll 5 get dup 3 1 roll sub 5 -1 roll 5 get 3 -1 roll sub div 3 -1 roll 5 get 3 -1 roll 5 get dup 4 1 roll sub mul add} bind ] def /MatrixPQR [ 0.8951 -0.7502 0.0389 0.2664 1.7135 -0.0685 -0.1614 0.0367 1.0296 ] def /RangePQR [-0.3227950745 2.3229645538 -1.5003771057 3.5003465881 -0.1369979095 2.136967392] def currentdict end } if setcolorrendering_opt } if }if } def /set_crd { AGMCORE_host_sep not level2 and{ currentdict /ColorRendering known{ ColorRendering /ColorRendering {findresource} stopped not {setcolorrendering_opt} if }{ currentdict/Intent known{ updatecolorrendering }if }ifelse currentcolorspace dup type /arraytype eq {0 get}if /DeviceRGB eq { currentdict/UCR known {/UCR}{/AGMCORE_currentucr}ifelse load setundercolorremoval currentdict/BG known {/BG}{/AGMCORE_currentbg}ifelse load setblackgeneration }if }if }def /setcolorrendering_opt { dup currentcolorrendering eq{ pop }{ clonedict begin /Intent Intent def currentdict end setcolorrendering }ifelse }def /cpaint_gcomp { convert_to_process //Adobe_AGM_Core/AGMCORE_ConvertToProcess xddf //Adobe_AGM_Core/AGMCORE_ConvertToProcess get not { (%end_cpaint_gcomp) flushinput }if }def /cpaint_gsep { //Adobe_AGM_Core/AGMCORE_ConvertToProcess get { (%end_cpaint_gsep) flushinput }if }def /cpaint_gend { newpath }def /set_spot_alias_ary { dup inherit_aliases //Adobe_AGM_Core/AGMCORE_SpotAliasAry xddf }def /set_spot_normalization_ary { dup inherit_aliases dup length /AGMCORE_SpotAliasAry where{pop AGMCORE_SpotAliasAry length add} if array //Adobe_AGM_Core/AGMCORE_SpotAliasAry2 xddf /AGMCORE_SpotAliasAry where{ pop AGMCORE_SpotAliasAry2 0 AGMCORE_SpotAliasAry putinterval AGMCORE_SpotAliasAry length }{0} ifelse AGMCORE_SpotAliasAry2 3 1 roll exch putinterval true set_spot_alias }def /inherit_aliases { {dup /Name get map_alias {/CSD put}{pop} ifelse} forall }def /set_spot_alias { /AGMCORE_SpotAliasAry2 where{ /AGMCORE_current_spot_alias 3 -1 roll put }{ pop }ifelse }def /current_spot_alias { /AGMCORE_SpotAliasAry2 where{ /AGMCORE_current_spot_alias get }{ false }ifelse }def /map_alias { /AGMCORE_SpotAliasAry2 where{ begin /AGMCORE_name xdf false AGMCORE_SpotAliasAry2{ dup/Name get AGMCORE_name eq{ /CSD get /CSD get_res exch pop true exit }{ pop }ifelse }forall end }{ pop false }ifelse }bdf /spot_alias { true set_spot_alias /AGMCORE_&setcustomcolor AGMCORE_key_known not { //Adobe_AGM_Core/AGMCORE_&setcustomcolor /setcustomcolor load put } if /customcolor_tint 1 AGMCORE_gput //Adobe_AGM_Core begin /setcustomcolor { currentdict/TintProc known currentdict/CSA known and 3 1 roll //Adobe_AGM_Core begin dup /customcolor_tint exch AGMCORE_gput 1 index aload pop pop 1 eq exch 1 eq and exch 1 eq and exch 1 eq and not current_spot_alias and{1 index 4 get map_alias}{false}ifelse { false set_spot_alias 4 -1 roll{ exch pop /sep_tint AGMCORE_gget exch }if mark 3 1 roll setsepcolorspace counttomark 0 ne{ setsepcolor }if pop pop true set_spot_alias }{ AGMCORE_&setcustomcolor pop }ifelse end }bdf end }def /begin_feature { Adobe_AGM_Core/AGMCORE_feature_dictCount countdictstack put count Adobe_AGM_Core/AGMCORE_feature_opCount 3 -1 roll put {Adobe_AGM_Core/AGMCORE_feature_ctm matrix currentmatrix put}if }def /end_feature { 2 dict begin /spd /setpagedevice load def /setpagedevice { get_gstate spd set_gstate } def stopped{$error/newerror false put}if end count Adobe_AGM_Core/AGMCORE_feature_opCount get sub dup 0 gt{{pop}repeat}{pop}ifelse countdictstack Adobe_AGM_Core/AGMCORE_feature_dictCount get sub dup 0 gt{{end}repeat}{pop}ifelse {Adobe_AGM_Core/AGMCORE_feature_ctm get setmatrix}if }def /set_negative { //Adobe_AGM_Core begin /AGMCORE_inverting exch def level2{ currentpagedevice/NegativePrint known{ currentpagedevice/NegativePrint get //Adobe_AGM_Core/AGMCORE_inverting get ne{ true begin_feature true{ << /NegativePrint //Adobe_AGM_Core/AGMCORE_inverting get >> setpagedevice }end_feature }if /AGMCORE_inverting false def }if }if AGMCORE_inverting{ [{1 exch sub}/exec load dup currenttransfer exch]cvx bind settransfer gsave newpath clippath 1 /setseparationgray where{pop setseparationgray}{setgray}ifelse /AGMIRS_&fill where {pop AGMIRS_&fill}{fill} ifelse grestore }if end }def /lw_save_restore_override { /md where { pop md begin initializepage /initializepage{}def /pmSVsetup{} def /endp{}def /pse{}def /psb{}def /orig_showpage where {pop} {/orig_showpage /showpage load def} ifelse /showpage {orig_showpage gR} def end }if }def /pscript_showpage_override { /NTPSOct95 where { begin showpage save /showpage /restore load def /restore {exch pop}def end }if }def /driver_media_override { /md where { pop md /initializepage known { md /initializepage {} put } if md /rC known { md /rC {4{pop}repeat} put } if }if /mysetup where { /mysetup [1 0 0 1 0 0] put }if Adobe_AGM_Core /AGMCORE_Default_CTM matrix currentmatrix put level2 {Adobe_AGM_Core /AGMCORE_Default_PageSize currentpagedevice/PageSize get put}if }def /driver_check_media_override { /PrepsDict where {pop} { Adobe_AGM_Core /AGMCORE_Default_CTM get matrix currentmatrix ne Adobe_AGM_Core /AGMCORE_Default_PageSize get type /arraytype eq { Adobe_AGM_Core /AGMCORE_Default_PageSize get 0 get currentpagedevice/PageSize get 0 get eq and Adobe_AGM_Core /AGMCORE_Default_PageSize get 1 get currentpagedevice/PageSize get 1 get eq and }if { Adobe_AGM_Core /AGMCORE_Default_CTM get setmatrix }if }ifelse }def AGMCORE_err_strings begin /AGMCORE_bad_environ (Environment not satisfactory for this job. Ensure that the PPD is correct or that the PostScript level requested is supported by this printer. ) def /AGMCORE_color_space_onhost_seps (This job contains colors that will not separate with on-host methods. ) def /AGMCORE_invalid_color_space (This job contains an invalid color space. ) def end /set_def_ht { AGMCORE_def_ht sethalftone } def end systemdict /setpacking known { setpacking } if %%EndResource %%BeginResource: procset Adobe_CoolType_Core 2.25 0 %%Copyright: Copyright 1997-2005 Adobe Systems Incorporated. All Rights Reserved. %%Version: 2.25 0 10 dict begin /Adobe_CoolType_Passthru currentdict def /Adobe_CoolType_Core_Defined userdict /Adobe_CoolType_Core known def Adobe_CoolType_Core_Defined { /Adobe_CoolType_Core userdict /Adobe_CoolType_Core get def } if userdict /Adobe_CoolType_Core 60 dict dup begin put /Adobe_CoolType_Version 2.25 def /Level2? systemdict /languagelevel known dup { pop systemdict /languagelevel get 2 ge } if def Level2? not { /currentglobal false def /setglobal /pop load def /gcheck { pop false } bind def /currentpacking false def /setpacking /pop load def /SharedFontDirectory 0 dict def } if currentpacking true setpacking currentglobal false setglobal userdict /Adobe_CoolType_Data 2 copy known not { 2 copy 10 dict put } if get begin /@opStackCountByLevel 32 dict def /@opStackLevel 0 def /@dictStackCountByLevel 32 dict def /@dictStackLevel 0 def end setglobal /@_SaveStackLevels { Adobe_CoolType_Data begin /@vmState currentglobal def false setglobal @opStackCountByLevel @opStackLevel 2 copy known not { 2 copy 3 dict dup /args 7 index 5 add array put put get } { get dup /args get dup length 3 index lt { dup length 5 add array exch 1 index exch 0 exch putinterval 1 index exch /args exch put } { pop } ifelse } ifelse begin count 1 sub 1 index lt { pop count } if dup /argCount exch def dup 0 gt { args exch 0 exch getinterval astore pop } { pop } ifelse count /restCount exch def end /@opStackLevel @opStackLevel 1 add def countdictstack 1 sub @dictStackCountByLevel exch @dictStackLevel exch put /@dictStackLevel @dictStackLevel 1 add def @vmState setglobal end } bind def /@_RestoreStackLevels { Adobe_CoolType_Data begin /@opStackLevel @opStackLevel 1 sub def @opStackCountByLevel @opStackLevel get begin count restCount sub dup 0 gt { { pop } repeat } { pop } ifelse args 0 argCount getinterval {} forall end /@dictStackLevel @dictStackLevel 1 sub def @dictStackCountByLevel @dictStackLevel get end countdictstack exch sub dup 0 gt { { end } repeat } { pop } ifelse } bind def /@_PopStackLevels { Adobe_CoolType_Data begin /@opStackLevel @opStackLevel 1 sub def /@dictStackLevel @dictStackLevel 1 sub def end } bind def /@Raise { exch cvx exch errordict exch get exec stop } bind def /@ReRaise { cvx $error /errorname get errordict exch get exec stop } bind def /@Stopped { 0 @#Stopped } bind def /@#Stopped { @_SaveStackLevels stopped { @_RestoreStackLevels true } { @_PopStackLevels false } ifelse } bind def /@Arg { Adobe_CoolType_Data begin @opStackCountByLevel @opStackLevel 1 sub get begin args exch argCount 1 sub exch sub get end end } bind def currentglobal true setglobal /CTHasResourceForAllBug Level2? { 1 dict dup /@shouldNotDisappearDictValue true def Adobe_CoolType_Data exch /@shouldNotDisappearDict exch put begin count @_SaveStackLevels { (*) { pop stop } 128 string /Category resourceforall } stopped pop @_RestoreStackLevels currentdict Adobe_CoolType_Data /@shouldNotDisappearDict get ne dup { /@shouldNotDisappearDictValue known { { end currentdict 1 index eq { pop exit } if } loop } if } if end } { false } ifelse def true setglobal /CTHasResourceStatusBug Level2? { mark { /steveamerige /Category resourcestatus } stopped { cleartomark true } { cleartomark currentglobal not } ifelse } { false } ifelse def setglobal /CTResourceStatus { mark 3 1 roll /Category findresource begin ({ResourceStatus} stopped) 0 () /SubFileDecode filter cvx exec { cleartomark false } { { 3 2 roll pop true } { cleartomark false } ifelse } ifelse end } bind def /CTWorkAroundBugs { Level2? { /cid_PreLoad /ProcSet resourcestatus { pop pop currentglobal mark { (*) { dup /CMap CTHasResourceStatusBug { CTResourceStatus } { resourcestatus } ifelse { pop dup 0 eq exch 1 eq or { dup /CMap findresource gcheck setglobal /CMap undefineresource } { pop CTHasResourceForAllBug { exit } { stop } ifelse } ifelse } { pop } ifelse } 128 string /CMap resourceforall } stopped { cleartomark } stopped pop setglobal } if } if } bind def /doc_setup { Adobe_CoolType_Core begin CTWorkAroundBugs /mov /moveto load def /nfnt /newencodedfont load def /mfnt /makefont load def /sfnt /setfont load def /ufnt /undefinefont load def /chp /charpath load def /awsh /awidthshow load def /wsh /widthshow load def /ash /ashow load def /sh /show load def end currentglobal false setglobal userdict /Adobe_CoolType_Data 2 copy known not { 2 copy 10 dict put } if get begin /AddWidths? false def /CC 0 def /charcode 2 string def /@opStackCountByLevel 32 dict def /@opStackLevel 0 def /@dictStackCountByLevel 32 dict def /@dictStackLevel 0 def /InVMFontsByCMap 10 dict def /InVMDeepCopiedFonts 10 dict def end setglobal } bind def /doc_trailer { currentdict Adobe_CoolType_Core eq { end } if } bind def /page_setup { Adobe_CoolType_Core begin } bind def /page_trailer { end } bind def /unload { systemdict /languagelevel known { systemdict/languagelevel get 2 ge { userdict/Adobe_CoolType_Core 2 copy known { undef } { pop pop } ifelse } if } if } bind def /ndf { 1 index where { pop pop pop } { dup xcheck { bind } if def } ifelse } def /findfont systemdict begin userdict begin /globaldict where { /globaldict get begin } if dup where pop exch get /globaldict where { pop end } if end end Adobe_CoolType_Core_Defined { /systemfindfont exch def } { /findfont 1 index def /systemfindfont exch def } ifelse /undefinefont { pop } ndf /copyfont { currentglobal 3 1 roll 1 index gcheck setglobal dup null eq { 0 } { dup length } ifelse 2 index length add 1 add dict begin exch { 1 index /FID eq { pop pop } { def } ifelse } forall dup null eq { pop } { { def } forall } ifelse currentdict end exch setglobal } bind def /copyarray { currentglobal exch dup gcheck setglobal dup length array copy exch setglobal } bind def /newencodedfont { currentglobal { SharedFontDirectory 3 index known { SharedFontDirectory 3 index get /FontReferenced known } { false } ifelse } { FontDirectory 3 index known { FontDirectory 3 index get /FontReferenced known } { SharedFontDirectory 3 index known { SharedFontDirectory 3 index get /FontReferenced known } { false } ifelse } ifelse } ifelse dup { 3 index findfont /FontReferenced get 2 index dup type /nametype eq {findfont} if ne { pop false } if } if { pop 1 index findfont /Encoding get exch 0 1 255 { 2 copy get 3 index 3 1 roll put } for pop pop pop } { dup type /nametype eq { findfont } if dup dup maxlength 2 add dict begin exch { 1 index /FID ne {def} {pop pop} ifelse } forall /FontReferenced exch def /Encoding exch dup length array copy def /FontName 1 index dup type /stringtype eq { cvn } if def dup currentdict end definefont def } ifelse } bind def /SetSubstituteStrategy { $SubstituteFont begin dup type /dicttype ne { 0 dict } if currentdict /$Strategies known { exch $Strategies exch 2 copy known { get 2 copy maxlength exch maxlength add dict begin { def } forall { def } forall currentdict dup /$Init known { dup /$Init get exec } if end /$Strategy exch def } { pop pop pop } ifelse } { pop pop } ifelse end } bind def /scff { $SubstituteFont begin dup type /stringtype eq { dup length exch } { null } ifelse /$sname exch def /$slen exch def /$inVMIndex $sname null eq { 1 index $str cvs dup length $slen sub $slen getinterval cvn } { $sname } ifelse def end { findfont } @Stopped { dup length 8 add string exch 1 index 0 (BadFont:) putinterval 1 index exch 8 exch dup length string cvs putinterval cvn { findfont } @Stopped { pop /Courier findfont } if } if $SubstituteFont begin /$sname null def /$slen 0 def /$inVMIndex null def end } bind def /isWidthsOnlyFont { dup /WidthsOnly known { pop pop true } { dup /FDepVector known { /FDepVector get { isWidthsOnlyFont dup { exit } if } forall } { dup /FDArray known { /FDArray get { isWidthsOnlyFont dup { exit } if } forall } { pop } ifelse } ifelse } ifelse } bind def /?str1 256 string def /?set { $SubstituteFont begin /$substituteFound false def /$fontname 4 index def /$doSmartSub false def end 3 index currentglobal false setglobal exch /CompatibleFonts /ProcSet resourcestatus { pop pop /CompatibleFonts /ProcSet findresource begin dup /CompatibleFont currentexception 1 index /CompatibleFont true setexception 1 index /Font resourcestatus { pop pop 3 2 roll setglobal end exch dup findfont /CompatibleFonts /ProcSet findresource begin 3 1 roll exch /CompatibleFont exch setexception end } { 3 2 roll setglobal 1 index exch /CompatibleFont exch setexception end findfont $SubstituteFont /$substituteFound true put } ifelse } { exch setglobal findfont } ifelse $SubstituteFont begin $substituteFound { false (%%[Using embedded font ) print 5 index ?str1 cvs print ( to avoid the font substitution problem noted earlier.]%%\n) print } { dup /FontName known { dup /FontName get $fontname eq 1 index /DistillerFauxFont known not and /currentdistillerparams where { pop false 2 index isWidthsOnlyFont not and } if } { false } ifelse } ifelse exch pop /$doSmartSub true def end { exch pop exch pop exch 2 dict dup /Found 3 index put exch findfont exch } { exch exec exch dup findfont dup /FontType get 3 eq { exch ?str1 cvs dup length 1 sub -1 0 { exch dup 2 index get 42 eq { exch 0 exch getinterval cvn 4 1 roll 3 2 roll pop exit } {exch pop} ifelse }for } { exch pop } ifelse 2 dict dup /Downloaded 6 5 roll put } ifelse dup /FontName 4 index put copyfont definefont pop } bind def /?str2 256 string def /?add { 1 index type /integertype eq { exch true 4 2 } { false 3 1 } ifelse roll 1 index findfont dup /Widths known { Adobe_CoolType_Data /AddWidths? true put gsave dup 1000 scalefont setfont } if /Downloaded known { exec exch { exch ?str2 cvs exch findfont /Downloaded get 1 dict begin /Downloaded 1 index def ?str1 cvs length ?str1 1 index 1 add 3 index putinterval exch length 1 add 1 index add ?str1 2 index (*) putinterval ?str1 0 2 index getinterval cvn findfont ?str1 3 index (+) putinterval 2 dict dup /FontName ?str1 0 6 index getinterval cvn put dup /Downloaded Downloaded put end copyfont dup /FontName get exch definefont pop pop pop } { pop } ifelse } { pop exch { findfont dup /Found get dup length exch ?str1 cvs pop ?str1 1 index (+) putinterval ?str1 1 index 1 add 4 index ?str2 cvs putinterval ?str1 exch 0 exch 5 4 roll ?str2 cvs length 1 add add getinterval cvn 1 dict exch 1 index exch /FontName exch put copyfont dup /FontName get exch definefont pop } { pop } ifelse } ifelse Adobe_CoolType_Data /AddWidths? get { grestore Adobe_CoolType_Data /AddWidths? false put } if } bind def /?sh { currentfont /Downloaded known { exch } if pop } bind def /?chp { currentfont /Downloaded known { pop } { false chp } ifelse } bind def /?mv { currentfont /Downloaded known { moveto pop pop } { pop pop moveto } ifelse } bind def setpacking userdict /$SubstituteFont 25 dict put 1 dict begin /SubstituteFont dup $error exch 2 copy known { get } { pop pop { pop /Courier } bind } ifelse def /currentdistillerparams where dup { pop pop currentdistillerparams /CannotEmbedFontPolicy 2 copy known { get /Error eq } { pop pop false } ifelse } if not { countdictstack array dictstack 0 get begin userdict begin $SubstituteFont begin /$str 128 string def /$fontpat 128 string def /$slen 0 def /$sname null def /$match false def /$fontname null def /$substituteFound false def /$inVMIndex null def /$doSmartSub true def /$depth 0 def /$fontname null def /$italicangle 26.5 def /$dstack null def /$Strategies 10 dict dup begin /$Type3Underprint { currentglobal exch false setglobal 11 dict begin /UseFont exch $WMode 0 ne { dup length dict copy dup /WMode $WMode put /UseFont exch definefont } if def /FontName $fontname dup type /stringtype eq { cvn } if def /FontType 3 def /FontMatrix [ .001 0 0 .001 0 0 ] def /Encoding 256 array dup 0 1 255 { /.notdef put dup } for pop def /FontBBox [ 0 0 0 0 ] def /CCInfo 7 dict dup begin /cc null def /x 0 def /y 0 def end def /BuildChar { exch begin CCInfo begin 1 string dup 0 3 index put exch pop /cc exch def UseFont 1000 scalefont setfont cc stringwidth /y exch def /x exch def x y setcharwidth $SubstituteFont /$Strategy get /$Underprint get exec 0 0 moveto cc show x y moveto end end } bind def currentdict end exch setglobal } bind def /$GetaTint 2 dict dup begin /$BuildFont { dup /WMode known { dup /WMode get } { 0 } ifelse /$WMode exch def $fontname exch dup /FontName known { dup /FontName get dup type /stringtype eq { cvn } if } { /unnamedfont } ifelse exch Adobe_CoolType_Data /InVMDeepCopiedFonts get 1 index /FontName get known { pop Adobe_CoolType_Data /InVMDeepCopiedFonts get 1 index get null copyfont } { $deepcopyfont } ifelse exch 1 index exch /FontBasedOn exch put dup /FontName $fontname dup type /stringtype eq { cvn } if put definefont Adobe_CoolType_Data /InVMDeepCopiedFonts get begin dup /FontBasedOn get 1 index def end } bind def /$Underprint { gsave x abs y abs gt { /y 1000 def } { /x -1000 def 500 120 translate } ifelse Level2? { [ /Separation (All) /DeviceCMYK { 0 0 0 1 pop } ] setcolorspace } { 0 setgray } ifelse 10 setlinewidth x .8 mul [ 7 3 ] { y mul 8 div 120 sub x 10 div exch moveto 0 y 4 div neg rlineto dup 0 rlineto 0 y 4 div rlineto closepath gsave Level2? { .2 setcolor } { .8 setgray } ifelse fill grestore stroke } forall pop grestore } bind def end def /$Oblique 1 dict dup begin /$BuildFont { currentglobal exch dup gcheck setglobal null copyfont begin /FontBasedOn currentdict /FontName known { FontName dup type /stringtype eq { cvn } if } { /unnamedfont } ifelse def /FontName $fontname dup type /stringtype eq { cvn } if def /currentdistillerparams where { pop } { /FontInfo currentdict /FontInfo known { FontInfo null copyfont } { 2 dict } ifelse dup begin /ItalicAngle $italicangle def /FontMatrix FontMatrix [ 1 0 ItalicAngle dup sin exch cos div 1 0 0 ] matrix concatmatrix readonly end 4 2 roll def def } ifelse FontName currentdict end definefont exch setglobal } bind def end def /$None 1 dict dup begin /$BuildFont {} bind def end def end def /$Oblique SetSubstituteStrategy /$findfontByEnum { dup type /stringtype eq { cvn } if dup /$fontname exch def $sname null eq { $str cvs dup length $slen sub $slen getinterval } { pop $sname } ifelse $fontpat dup 0 (fonts/*) putinterval exch 7 exch putinterval /$match false def $SubstituteFont /$dstack countdictstack array dictstack put mark { $fontpat 0 $slen 7 add getinterval { /$match exch def exit } $str filenameforall } stopped { cleardictstack currentdict true $SubstituteFont /$dstack get { exch { 1 index eq { pop false } { true } ifelse } { begin false } ifelse } forall pop } if cleartomark /$slen 0 def $match false ne { $match (fonts/) anchorsearch pop pop cvn } { /Courier } ifelse } bind def /$ROS 1 dict dup begin /Adobe 4 dict dup begin /Japan1 [ /Ryumin-Light /HeiseiMin-W3 /GothicBBB-Medium /HeiseiKakuGo-W5 /HeiseiMaruGo-W4 /Jun101-Light ] def /Korea1 [ /HYSMyeongJo-Medium /HYGoThic-Medium ] def /GB1 [ /STSong-Light /STHeiti-Regular ] def /CNS1 [ /MKai-Medium /MHei-Medium ] def end def end def /$cmapname null def /$deepcopyfont { dup /FontType get 0 eq { 1 dict dup /FontName /copied put copyfont begin /FDepVector FDepVector copyarray 0 1 2 index length 1 sub { 2 copy get $deepcopyfont dup /FontName /copied put /copied exch definefont 3 copy put pop pop } for def currentdict end } { $Strategies /$Type3Underprint get exec } ifelse } bind def /$buildfontname { dup /CIDFont findresource /CIDSystemInfo get begin Registry length Ordering length Supplement 8 string cvs 3 copy length 2 add add add string dup 5 1 roll dup 0 Registry putinterval dup 4 index (-) putinterval dup 4 index 1 add Ordering putinterval 4 2 roll add 1 add 2 copy (-) putinterval end 1 add 2 copy 0 exch getinterval $cmapname $fontpat cvs exch anchorsearch { pop pop 3 2 roll putinterval cvn /$cmapname exch def } { pop pop pop pop pop } ifelse length $str 1 index (-) putinterval 1 add $str 1 index $cmapname $fontpat cvs putinterval $cmapname length add $str exch 0 exch getinterval cvn } bind def /$findfontByROS { /$fontname exch def $ROS Registry 2 copy known { get Ordering 2 copy known { get } { pop pop [] } ifelse } { pop pop [] } ifelse false exch { dup /CIDFont resourcestatus { pop pop save 1 index /CIDFont findresource dup /WidthsOnly known { dup /WidthsOnly get } { false } ifelse exch pop exch restore { pop } { exch pop true exit } ifelse } { pop } ifelse } forall { $str cvs $buildfontname } { false (*) { save exch dup /CIDFont findresource dup /WidthsOnly known { dup /WidthsOnly get not } { true } ifelse exch /CIDSystemInfo get dup /Registry get Registry eq exch /Ordering get Ordering eq and and { exch restore exch pop true exit } { pop restore } ifelse } $str /CIDFont resourceforall { $buildfontname } { $fontname $findfontByEnum } ifelse } ifelse } bind def end end currentdict /$error known currentdict /languagelevel known and dup { pop $error /SubstituteFont known } if dup { $error } { Adobe_CoolType_Core } ifelse begin { /SubstituteFont /CMap /Category resourcestatus { pop pop { $SubstituteFont begin /$substituteFound true def dup length $slen gt $sname null ne or $slen 0 gt and { $sname null eq { dup $str cvs dup length $slen sub $slen getinterval cvn } { $sname } ifelse Adobe_CoolType_Data /InVMFontsByCMap get 1 index 2 copy known { get false exch { pop currentglobal { GlobalFontDirectory 1 index known { exch pop true exit } { pop } ifelse } { FontDirectory 1 index known { exch pop true exit } { GlobalFontDirectory 1 index known { exch pop true exit } { pop } ifelse } ifelse } ifelse } forall } { pop pop false } ifelse { exch pop exch pop } { dup /CMap resourcestatus { pop pop dup /$cmapname exch def /CMap findresource /CIDSystemInfo get { def } forall $findfontByROS } { 128 string cvs dup (-) search { 3 1 roll search { 3 1 roll pop { dup cvi } stopped { pop pop pop pop pop $findfontByEnum } { 4 2 roll pop pop exch length exch 2 index length 2 index sub exch 1 sub -1 0 { $str cvs dup length 4 index 0 4 index 4 3 roll add getinterval exch 1 index exch 3 index exch putinterval dup /CMap resourcestatus { pop pop 4 1 roll pop pop pop dup /$cmapname exch def /CMap findresource /CIDSystemInfo get { def } forall $findfontByROS true exit } { pop } ifelse } for dup type /booleantype eq { pop } { pop pop pop $findfontByEnum } ifelse } ifelse } { pop pop pop $findfontByEnum } ifelse } { pop pop $findfontByEnum } ifelse } ifelse } ifelse } { //SubstituteFont exec } ifelse /$slen 0 def end } } { { $SubstituteFont begin /$substituteFound true def dup length $slen gt $sname null ne or $slen 0 gt and { $findfontByEnum } { //SubstituteFont exec } ifelse end } } ifelse bind readonly def Adobe_CoolType_Core /scfindfont /systemfindfont load put } { /scfindfont { $SubstituteFont begin dup systemfindfont dup /FontName known { dup /FontName get dup 3 index ne } { /noname true } ifelse dup { /$origfontnamefound 2 index def /$origfontname 4 index def /$substituteFound true def } if exch pop { $slen 0 gt $sname null ne 3 index length $slen gt or and { pop dup $findfontByEnum findfont dup maxlength 1 add dict begin { 1 index /FID eq { pop pop } { def } ifelse } forall currentdict end definefont dup /FontName known { dup /FontName get } { null } ifelse $origfontnamefound ne { $origfontname $str cvs print ( substitution revised, using ) print dup /FontName known { dup /FontName get } { (unspecified font) } ifelse $str cvs print (.\n) print } if } { exch pop } ifelse } { exch pop } ifelse end } bind def } ifelse end end Adobe_CoolType_Core_Defined not { Adobe_CoolType_Core /findfont { $SubstituteFont begin $depth 0 eq { /$fontname 1 index dup type /stringtype ne { $str cvs } if def /$substituteFound false def } if /$depth $depth 1 add def end scfindfont $SubstituteFont begin /$depth $depth 1 sub def $substituteFound $depth 0 eq and { $inVMIndex null ne { dup $inVMIndex $AddInVMFont } if $doSmartSub { currentdict /$Strategy known { $Strategy /$BuildFont get exec } if } if } if end } bind put } if } if end /$AddInVMFont { exch /FontName 2 copy known { get 1 dict dup begin exch 1 index gcheck def end exch Adobe_CoolType_Data /InVMFontsByCMap get exch $DictAdd } { pop pop pop } ifelse } bind def /$DictAdd { 2 copy known not { 2 copy 4 index length dict put } if Level2? not { 2 copy get dup maxlength exch length 4 index length add lt 2 copy get dup length 4 index length add exch maxlength 1 index lt { 2 mul dict begin 2 copy get { forall } def 2 copy currentdict put end } { pop } ifelse } if get begin { def } forall end } bind def end end %%EndResource %%BeginResource: procset Adobe_CoolType_Utility_MAKEOCF 1.21 0 %%Copyright: Copyright 1987-2005 Adobe Systems Incorporated. %%Version: 1.21 0 systemdict /languagelevel known dup { currentglobal false setglobal } { false } ifelse exch userdict /Adobe_CoolType_Utility 2 copy known { 2 copy get dup maxlength 27 add dict copy } { 27 dict } ifelse put Adobe_CoolType_Utility begin /@eexecStartData <BAB431EA07F209EB8C4348311481D9D3F76E3D15246555577D87BC510ED54E 118C39697FA9F6DB58128E60EB8A12FA24D7CDD2FA94D221FA9EC8DA3E5E6A1C 4ACECC8C2D39C54E7C946031DD156C3A6B4A09AD29E1867A> def /@recognizeCIDFont null def /ct_Level2? exch def /ct_Clone? 1183615869 internaldict dup /CCRun known not exch /eCCRun known not ct_Level2? and or def ct_Level2? { globaldict begin currentglobal true setglobal } if /ct_AddStdCIDMap ct_Level2? { { mark Adobe_CoolType_Utility /@recognizeCIDFont currentdict put { ((Hex) 57 StartData 0615 1e27 2c39 1c60 d8a8 cc31 fe2b f6e0 7aa3 e541 e21c 60d8 a8c9 c3d0 6d9e 1c60 d8a8 c9c2 02d7 9a1c 60d8 a849 1c60 d8a8 cc36 74f4 1144 b13b 77) 0 () /SubFileDecode filter cvx exec } stopped { cleartomark Adobe_CoolType_Utility /@recognizeCIDFont get countdictstack dup array dictstack exch 1 sub -1 0 { 2 copy get 3 index eq { 1 index length exch sub 1 sub { end } repeat exit } { pop } ifelse } for pop pop Adobe_CoolType_Utility /@eexecStartData get eexec } { cleartomark } ifelse } } { { Adobe_CoolType_Utility /@eexecStartData get eexec } } ifelse bind def userdict /cid_extensions known dup { cid_extensions /cid_UpdateDB known and } if { cid_extensions begin /cid_GetCIDSystemInfo { 1 index type /stringtype eq { exch cvn exch } if cid_extensions begin dup load 2 index known { 2 copy cid_GetStatusInfo dup null ne { 1 index load 3 index get dup null eq { pop pop cid_UpdateDB } { exch 1 index /Created get eq { exch pop exch pop } { pop cid_UpdateDB } ifelse } ifelse } { pop cid_UpdateDB } ifelse } { cid_UpdateDB } ifelse end } bind def end } if ct_Level2? { end setglobal } if /ct_UseNativeCapability? systemdict /composefont known def /ct_MakeOCF 35 dict def /ct_Vars 25 dict def /ct_GlyphDirProcs 6 dict def /ct_BuildCharDict 15 dict dup begin /charcode 2 string def /dst_string 1500 string def /nullstring () def /usewidths? true def end def ct_Level2? { setglobal } { pop } ifelse ct_GlyphDirProcs begin /GetGlyphDirectory { systemdict /languagelevel known { pop /CIDFont findresource /GlyphDirectory get } { 1 index /CIDFont findresource /GlyphDirectory get dup type /dicttype eq { dup dup maxlength exch length sub 2 index lt { dup length 2 index add dict copy 2 index /CIDFont findresource/GlyphDirectory 2 index put } if } if exch pop exch pop } ifelse + } def /+ { systemdict /languagelevel known { currentglobal false setglobal 3 dict begin /vm exch def } { 1 dict begin } ifelse /$ exch def systemdict /languagelevel known { vm setglobal /gvm currentglobal def $ gcheck setglobal } if ? { $ begin } if } def /? { $ type /dicttype eq } def /| { userdict /Adobe_CoolType_Data known { Adobe_CoolType_Data /AddWidths? known { currentdict Adobe_CoolType_Data begin begin AddWidths? { Adobe_CoolType_Data /CC 3 index put ? { def } { $ 3 1 roll put } ifelse CC charcode exch 1 index 0 2 index 256 idiv put 1 index exch 1 exch 256 mod put stringwidth 2 array astore currentfont /Widths get exch CC exch put } { ? { def } { $ 3 1 roll put } ifelse } ifelse end end } { ? { def } { $ 3 1 roll put } ifelse } ifelse } { ? { def } { $ 3 1 roll put } ifelse } ifelse } def /! { ? { end } if systemdict /languagelevel known { gvm setglobal } if end } def /: { string currentfile exch readstring pop } executeonly def end ct_MakeOCF begin /ct_cHexEncoding [/c00/c01/c02/c03/c04/c05/c06/c07/c08/c09/c0A/c0B/c0C/c0D/c0E/c0F/c10/c11/c12 /c13/c14/c15/c16/c17/c18/c19/c1A/c1B/c1C/c1D/c1E/c1F/c20/c21/c22/c23/c24/c25 /c26/c27/c28/c29/c2A/c2B/c2C/c2D/c2E/c2F/c30/c31/c32/c33/c34/c35/c36/c37/c38 /c39/c3A/c3B/c3C/c3D/c3E/c3F/c40/c41/c42/c43/c44/c45/c46/c47/c48/c49/c4A/c4B /c4C/c4D/c4E/c4F/c50/c51/c52/c53/c54/c55/c56/c57/c58/c59/c5A/c5B/c5C/c5D/c5E /c5F/c60/c61/c62/c63/c64/c65/c66/c67/c68/c69/c6A/c6B/c6C/c6D/c6E/c6F/c70/c71 /c72/c73/c74/c75/c76/c77/c78/c79/c7A/c7B/c7C/c7D/c7E/c7F/c80/c81/c82/c83/c84 /c85/c86/c87/c88/c89/c8A/c8B/c8C/c8D/c8E/c8F/c90/c91/c92/c93/c94/c95/c96/c97 /c98/c99/c9A/c9B/c9C/c9D/c9E/c9F/cA0/cA1/cA2/cA3/cA4/cA5/cA6/cA7/cA8/cA9/cAA /cAB/cAC/cAD/cAE/cAF/cB0/cB1/cB2/cB3/cB4/cB5/cB6/cB7/cB8/cB9/cBA/cBB/cBC/cBD /cBE/cBF/cC0/cC1/cC2/cC3/cC4/cC5/cC6/cC7/cC8/cC9/cCA/cCB/cCC/cCD/cCE/cCF/cD0 /cD1/cD2/cD3/cD4/cD5/cD6/cD7/cD8/cD9/cDA/cDB/cDC/cDD/cDE/cDF/cE0/cE1/cE2/cE3 /cE4/cE5/cE6/cE7/cE8/cE9/cEA/cEB/cEC/cED/cEE/cEF/cF0/cF1/cF2/cF3/cF4/cF5/cF6 /cF7/cF8/cF9/cFA/cFB/cFC/cFD/cFE/cFF] def /ct_CID_STR_SIZE 8000 def /ct_mkocfStr100 100 string def /ct_defaultFontMtx [.001 0 0 .001 0 0] def /ct_1000Mtx [1000 0 0 1000 0 0] def /ct_raise {exch cvx exch errordict exch get exec stop} bind def /ct_reraise { cvx $error /errorname get (Error: ) print dup ( ) cvs print errordict exch get exec stop } bind def /ct_cvnsi { 1 index add 1 sub 1 exch 0 4 1 roll { 2 index exch get exch 8 bitshift add } for exch pop } bind def /ct_GetInterval { Adobe_CoolType_Utility /ct_BuildCharDict get begin /dst_index 0 def dup dst_string length gt { dup string /dst_string exch def } if 1 index ct_CID_STR_SIZE idiv /arrayIndex exch def 2 index arrayIndex get 2 index arrayIndex ct_CID_STR_SIZE mul sub { dup 3 index add 2 index length le { 2 index getinterval dst_string dst_index 2 index putinterval length dst_index add /dst_index exch def exit } { 1 index length 1 index sub dup 4 1 roll getinterval dst_string dst_index 2 index putinterval pop dup dst_index add /dst_index exch def sub /arrayIndex arrayIndex 1 add def 2 index dup length arrayIndex gt { arrayIndex get } { pop exit } ifelse 0 } ifelse } loop pop pop pop dst_string 0 dst_index getinterval end } bind def ct_Level2? { /ct_resourcestatus currentglobal mark true setglobal { /unknowninstancename /Category resourcestatus } stopped { cleartomark setglobal true } { cleartomark currentglobal not exch setglobal } ifelse { { mark 3 1 roll /Category findresource begin ct_Vars /vm currentglobal put ({ResourceStatus} stopped) 0 () /SubFileDecode filter cvx exec { cleartomark false } { { 3 2 roll pop true } { cleartomark false } ifelse } ifelse ct_Vars /vm get setglobal end } } { { resourcestatus } } ifelse bind def /CIDFont /Category ct_resourcestatus { pop pop } { currentglobal true setglobal /Generic /Category findresource dup length dict copy dup /InstanceType /dicttype put /CIDFont exch /Category defineresource pop setglobal } ifelse ct_UseNativeCapability? { /CIDInit /ProcSet findresource begin 12 dict begin begincmap /CIDSystemInfo 3 dict dup begin /Registry (Adobe) def /Ordering (Identity) def /Supplement 0 def end def /CMapName /Identity-H def /CMapVersion 1.000 def /CMapType 1 def 1 begincodespacerange <0000> <FFFF> endcodespacerange 1 begincidrange <0000> <FFFF> 0 endcidrange endcmap CMapName currentdict /CMap defineresource pop end end } if } { /ct_Category 2 dict begin /CIDFont 10 dict def /ProcSet 2 dict def currentdict end def /defineresource { ct_Category 1 index 2 copy known { get dup dup maxlength exch length eq { dup length 10 add dict copy ct_Category 2 index 2 index put } if 3 index 3 index put pop exch pop } { pop pop /defineresource /undefined ct_raise } ifelse } bind def /findresource { ct_Category 1 index 2 copy known { get 2 index 2 copy known { get 3 1 roll pop pop} { pop pop /findresource /undefinedresource ct_raise } ifelse } { pop pop /findresource /undefined ct_raise } ifelse } bind def /resourcestatus { ct_Category 1 index 2 copy known { get 2 index known exch pop exch pop { 0 -1 true } { false } ifelse } { pop pop /findresource /undefined ct_raise } ifelse } bind def /ct_resourcestatus /resourcestatus load def } ifelse /ct_CIDInit 2 dict begin /ct_cidfont_stream_init { { dup (Binary) eq { pop null currentfile ct_Level2? { { cid_BYTE_COUNT () /SubFileDecode filter } stopped { pop pop pop } if } if /readstring load exit } if dup (Hex) eq { pop currentfile ct_Level2? { { null exch /ASCIIHexDecode filter /readstring } stopped { pop exch pop (>) exch /readhexstring } if } { (>) exch /readhexstring } ifelse load exit } if /StartData /typecheck ct_raise } loop cid_BYTE_COUNT ct_CID_STR_SIZE le { 2 copy cid_BYTE_COUNT string exch exec pop 1 array dup 3 -1 roll 0 exch put } { cid_BYTE_COUNT ct_CID_STR_SIZE div ceiling cvi dup array exch 2 sub 0 exch 1 exch { 2 copy 5 index ct_CID_STR_SIZE string 6 index exec pop put pop } for 2 index cid_BYTE_COUNT ct_CID_STR_SIZE mod string 3 index exec pop 1 index exch 1 index length 1 sub exch put } ifelse cid_CIDFONT exch /GlyphData exch put 2 index null eq { pop pop pop } { pop /readstring load 1 string exch { 3 copy exec pop dup length 0 eq { pop pop pop pop pop true exit } if 4 index eq { pop pop pop pop false exit } if } loop pop } ifelse } bind def /StartData { mark { currentdict dup /FDArray get 0 get /FontMatrix get 0 get 0.001 eq { dup /CDevProc known not { /CDevProc 1183615869 internaldict /stdCDevProc 2 copy known { get } { pop pop { pop pop pop pop pop 0 -1000 7 index 2 div 880 } } ifelse def } if } { /CDevProc { pop pop pop pop pop 0 1 cid_temp /cid_CIDFONT get /FDArray get 0 get /FontMatrix get 0 get div 7 index 2 div 1 index 0.88 mul } def } ifelse /cid_temp 15 dict def cid_temp begin /cid_CIDFONT exch def 3 copy pop dup /cid_BYTE_COUNT exch def 0 gt { ct_cidfont_stream_init FDArray { /Private get dup /SubrMapOffset known { begin /Subrs SubrCount array def Subrs SubrMapOffset SubrCount SDBytes ct_Level2? { currentdict dup /SubrMapOffset undef dup /SubrCount undef /SDBytes undef } if end /cid_SD_BYTES exch def /cid_SUBR_COUNT exch def /cid_SUBR_MAP_OFFSET exch def /cid_SUBRS exch def cid_SUBR_COUNT 0 gt { GlyphData cid_SUBR_MAP_OFFSET cid_SD_BYTES ct_GetInterval 0 cid_SD_BYTES ct_cvnsi 0 1 cid_SUBR_COUNT 1 sub { exch 1 index 1 add cid_SD_BYTES mul cid_SUBR_MAP_OFFSET add GlyphData exch cid_SD_BYTES ct_GetInterval 0 cid_SD_BYTES ct_cvnsi cid_SUBRS 4 2 roll GlyphData exch 4 index 1 index sub ct_GetInterval dup length string copy put } for pop } if } { pop } ifelse } forall } if cleartomark pop pop end CIDFontName currentdict /CIDFont defineresource pop end end } stopped { cleartomark /StartData ct_reraise } if } bind def currentdict end def /ct_saveCIDInit { /CIDInit /ProcSet ct_resourcestatus { true } { /CIDInitC /ProcSet ct_resourcestatus } ifelse { pop pop /CIDInit /ProcSet findresource ct_UseNativeCapability? { pop null } { /CIDInit ct_CIDInit /ProcSet defineresource pop } ifelse } { /CIDInit ct_CIDInit /ProcSet defineresource pop null } ifelse ct_Vars exch /ct_oldCIDInit exch put } bind def /ct_restoreCIDInit { ct_Vars /ct_oldCIDInit get dup null ne { /CIDInit exch /ProcSet defineresource pop } { pop } ifelse } bind def /ct_BuildCharSetUp { 1 index begin CIDFont begin Adobe_CoolType_Utility /ct_BuildCharDict get begin /ct_dfCharCode exch def /ct_dfDict exch def CIDFirstByte ct_dfCharCode add dup CIDCount ge { pop 0 } if /cid exch def { GlyphDirectory cid 2 copy known { get } { pop pop nullstring } ifelse dup length FDBytes sub 0 gt { dup FDBytes 0 ne { 0 FDBytes ct_cvnsi } { pop 0 } ifelse /fdIndex exch def dup length FDBytes sub FDBytes exch getinterval /charstring exch def exit } { pop cid 0 eq { /charstring nullstring def exit } if /cid 0 def } ifelse } loop } def /ct_SetCacheDevice { 0 0 moveto dup stringwidth 3 -1 roll true charpath pathbbox 0 -1000 7 index 2 div 880 setcachedevice2 0 0 moveto } def /ct_CloneSetCacheProc { 1 eq { stringwidth pop -2 div -880 0 -1000 setcharwidth moveto } { usewidths? { currentfont /Widths get cid 2 copy known { get exch pop aload pop } { pop pop stringwidth } ifelse } { stringwidth } ifelse setcharwidth 0 0 moveto } ifelse } def /ct_Type3ShowCharString { ct_FDDict fdIndex 2 copy known { get } { currentglobal 3 1 roll 1 index gcheck setglobal ct_Type1FontTemplate dup maxlength dict copy begin FDArray fdIndex get dup /FontMatrix 2 copy known { get } { pop pop ct_defaultFontMtx } ifelse /FontMatrix exch dup length array copy def /Private get /Private exch def /Widths rootfont /Widths get def /CharStrings 1 dict dup /.notdef <d841272cf18f54fc13> dup length string copy put def currentdict end /ct_Type1Font exch definefont dup 5 1 roll put setglobal } ifelse dup /CharStrings get 1 index /Encoding get ct_dfCharCode get charstring put rootfont /WMode 2 copy known { get } { pop pop 0 } ifelse exch 1000 scalefont setfont ct_str1 0 ct_dfCharCode put ct_str1 exch ct_dfSetCacheProc ct_SyntheticBold { currentpoint ct_str1 show newpath moveto ct_str1 true charpath ct_StrokeWidth setlinewidth stroke } { ct_str1 show } ifelse } def /ct_Type4ShowCharString { ct_dfDict ct_dfCharCode charstring FDArray fdIndex get dup /FontMatrix get dup ct_defaultFontMtx ct_matrixeq not { ct_1000Mtx matrix concatmatrix concat } { pop } ifelse /Private get Adobe_CoolType_Utility /ct_Level2? get not { ct_dfDict /Private 3 -1 roll { put } 1183615869 internaldict /superexec get exec } if 1183615869 internaldict Adobe_CoolType_Utility /ct_Level2? get { 1 index } { 3 index /Private get mark 6 1 roll } ifelse dup /RunInt known { /RunInt get } { pop /CCRun } ifelse get exec Adobe_CoolType_Utility /ct_Level2? get not { cleartomark } if } bind def /ct_BuildCharIncremental { { Adobe_CoolType_Utility /ct_MakeOCF get begin ct_BuildCharSetUp ct_ShowCharString } stopped { stop } if end end end end } bind def /BaseFontNameStr (BF00) def /ct_Type1FontTemplate 14 dict begin /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] def /FontBBox [-250 -250 1250 1250] def /Encoding ct_cHexEncoding def /PaintType 0 def currentdict end def /BaseFontTemplate 11 dict begin /FontMatrix [0.001 0 0 0.001 0 0] def /FontBBox [-250 -250 1250 1250] def /Encoding ct_cHexEncoding def /BuildChar /ct_BuildCharIncremental load def ct_Clone? { /FontType 3 def /ct_ShowCharString /ct_Type3ShowCharString load def /ct_dfSetCacheProc /ct_CloneSetCacheProc load def /ct_SyntheticBold false def /ct_StrokeWidth 1 def } { /FontType 4 def /Private 1 dict dup /lenIV 4 put def /CharStrings 1 dict dup /.notdef <d841272cf18f54fc13> put def /PaintType 0 def /ct_ShowCharString /ct_Type4ShowCharString load def } ifelse /ct_str1 1 string def currentdict end def /BaseFontDictSize BaseFontTemplate length 5 add def /ct_matrixeq { true 0 1 5 { dup 4 index exch get exch 3 index exch get eq and dup not { exit } if } for exch pop exch pop } bind def /ct_makeocf { 15 dict begin exch /WMode exch def exch /FontName exch def /FontType 0 def /FMapType 2 def dup /FontMatrix known { dup /FontMatrix get /FontMatrix exch def } { /FontMatrix matrix def } ifelse /bfCount 1 index /CIDCount get 256 idiv 1 add dup 256 gt { pop 256} if def /Encoding 256 array 0 1 bfCount 1 sub { 2 copy dup put pop } for bfCount 1 255 { 2 copy bfCount put pop } for def /FDepVector bfCount dup 256 lt { 1 add } if array def BaseFontTemplate BaseFontDictSize dict copy begin /CIDFont exch def CIDFont /FontBBox known { CIDFont /FontBBox get /FontBBox exch def } if CIDFont /CDevProc known { CIDFont /CDevProc get /CDevProc exch def } if currentdict end BaseFontNameStr 3 (0) putinterval 0 1 bfCount dup 256 eq { 1 sub } if { FDepVector exch 2 index BaseFontDictSize dict copy begin dup /CIDFirstByte exch 256 mul def FontType 3 eq { /ct_FDDict 2 dict def } if currentdict end 1 index 16 BaseFontNameStr 2 2 getinterval cvrs pop BaseFontNameStr exch definefont put } for ct_Clone? { /Widths 1 index /CIDFont get /GlyphDirectory get length dict def } if FontName currentdict end definefont ct_Clone? { gsave dup 1000 scalefont setfont ct_BuildCharDict begin /usewidths? false def currentfont /Widths get begin exch /CIDFont get /GlyphDirectory get { pop dup charcode exch 1 index 0 2 index 256 idiv put 1 index exch 1 exch 256 mod put stringwidth 2 array astore def } forall end /usewidths? true def end grestore } { exch pop } ifelse } bind def /ct_ComposeFont { ct_UseNativeCapability? { 2 index /CMap ct_resourcestatus { pop pop exch pop } { /CIDInit /ProcSet findresource begin 12 dict begin begincmap /CMapName 3 index def /CMapVersion 1.000 def /CMapType 1 def exch /WMode exch def /CIDSystemInfo 3 dict dup begin /Registry (Adobe) def /Ordering CMapName ct_mkocfStr100 cvs (Adobe-) search { pop pop (-) search { dup length string copy exch pop exch pop } { pop (Identity)} ifelse } { pop (Identity) } ifelse def /Supplement 0 def end def 1 begincodespacerange <0000> <FFFF> endcodespacerange 1 begincidrange <0000> <FFFF> 0 endcidrange endcmap CMapName currentdict /CMap defineresource pop end end } ifelse composefont } { 3 2 roll pop 0 get /CIDFont findresource ct_makeocf } ifelse } bind def /ct_MakeIdentity { ct_UseNativeCapability? { 1 index /CMap ct_resourcestatus { pop pop } { /CIDInit /ProcSet findresource begin 12 dict begin begincmap /CMapName 2 index def /CMapVersion 1.000 def /CMapType 1 def /CIDSystemInfo 3 dict dup begin /Registry (Adobe) def /Ordering CMapName ct_mkocfStr100 cvs (Adobe-) search { pop pop (-) search { dup length string copy exch pop exch pop } { pop (Identity) } ifelse } { pop (Identity) } ifelse def /Supplement 0 def end def 1 begincodespacerange <0000> <FFFF> endcodespacerange 1 begincidrange <0000> <FFFF> 0 endcidrange endcmap CMapName currentdict /CMap defineresource pop end end } ifelse composefont } { exch pop 0 get /CIDFont findresource ct_makeocf } ifelse } bind def currentdict readonly pop end end %%EndResource %%BeginResource: procset Adobe_CoolType_Utility_T42 1.0 0 %%Copyright: Copyright 1987-2004 Adobe Systems Incorporated. %%Version: 1.0 0 userdict /ct_T42Dict 15 dict put ct_T42Dict begin /Is2015? { version cvi 2015 ge } bind def /AllocGlyphStorage { Is2015? { pop } { {string} forall } ifelse } bind def /Type42DictBegin { 25 dict begin /FontName exch def /CharStrings 256 dict begin /.notdef 0 def currentdict end def /Encoding exch def /PaintType 0 def /FontType 42 def /FontMatrix [1 0 0 1 0 0] def 4 array astore cvx /FontBBox exch def /sfnts } bind def /Type42DictEnd { currentdict dup /FontName get exch definefont end ct_T42Dict exch dup /FontName get exch put } bind def /RD {string currentfile exch readstring pop} executeonly def /PrepFor2015 { Is2015? { /GlyphDirectory 16 dict def sfnts 0 get dup 2 index (glyx) putinterval 2 index (locx) putinterval pop pop } { pop pop } ifelse } bind def /AddT42Char { Is2015? { /GlyphDirectory get begin def end pop pop } { /sfnts get 4 index get 3 index 2 index putinterval pop pop pop pop } ifelse } bind def /T0AddT42Mtx2 { /CIDFont findresource /Metrics2 get begin def end }bind def end %%EndResource Adobe_CoolType_Core begin /$Oblique SetSubstituteStrategy end %%BeginResource: procset Adobe_AGM_Image 1.0 0 %%Version: 1.0 0 %%Copyright: Copyright (C) 2000-2003 Adobe Systems, Inc. All Rights Reserved. systemdict /setpacking known { currentpacking true setpacking } if userdict /Adobe_AGM_Image 75 dict dup begin put /Adobe_AGM_Image_Id /Adobe_AGM_Image_1.0_0 def /nd{ null def }bind def /AGMIMG_&image nd /AGMIMG_&colorimage nd /AGMIMG_&imagemask nd /AGMIMG_mbuf () def /AGMIMG_ybuf () def /AGMIMG_kbuf () def /AGMIMG_c 0 def /AGMIMG_m 0 def /AGMIMG_y 0 def /AGMIMG_k 0 def /AGMIMG_tmp nd /AGMIMG_imagestring0 nd /AGMIMG_imagestring1 nd /AGMIMG_imagestring2 nd /AGMIMG_imagestring3 nd /AGMIMG_imagestring4 nd /AGMIMG_imagestring5 nd /AGMIMG_cnt nd /AGMIMG_fsave nd /AGMIMG_colorAry nd /AGMIMG_override nd /AGMIMG_name nd /AGMIMG_maskSource nd /AGMIMG_flushfilters nd /invert_image_samples nd /knockout_image_samples nd /img nd /sepimg nd /devnimg nd /idximg nd /doc_setup { Adobe_AGM_Core begin Adobe_AGM_Image begin /AGMIMG_&image systemdict/image get def /AGMIMG_&imagemask systemdict/imagemask get def /colorimage where{ pop /AGMIMG_&colorimage /colorimage ldf }if end end }def /page_setup { Adobe_AGM_Image begin /AGMIMG_ccimage_exists {/customcolorimage where { pop /Adobe_AGM_OnHost_Seps where { pop false }{ /Adobe_AGM_InRip_Seps where { pop false }{ true }ifelse }ifelse }{ false }ifelse }bdf level2{ /invert_image_samples { Adobe_AGM_Image/AGMIMG_tmp Decode length ddf /Decode [ Decode 1 get Decode 0 get] def }def /knockout_image_samples { Operator/imagemask ne{ /Decode [1 1] def }if }def }{ /invert_image_samples { {1 exch sub} currenttransfer addprocs settransfer }def /knockout_image_samples { { pop 1 } currenttransfer addprocs settransfer }def }ifelse /img /imageormask ldf /sepimg /sep_imageormask ldf /devnimg /devn_imageormask ldf /idximg /indexed_imageormask ldf /_ctype 7 def currentdict{ dup xcheck 1 index type dup /arraytype eq exch /packedarraytype eq or and{ bind }if def }forall }def /page_trailer { end }def /doc_trailer { }def /AGMIMG_flushfilters { dup type /arraytype ne {1 array astore}if aload length { dup type /filetype eq { dup status 1 index currentfile ne and {dup flushfile closefile} {pop} ifelse }{pop}ifelse } repeat }def /imageormask_sys { begin save mark level2{ currentdict Operator /imagemask eq{ AGMIMG_&imagemask }{ use_mask { level3 {process_mask_L3 AGMIMG_&image}{masked_image_simulation}ifelse }{ AGMIMG_&image }ifelse }ifelse }{ Width Height Operator /imagemask eq{ Decode 0 get 1 eq Decode 1 get 0 eq and ImageMatrix /DataSource load AGMIMG_&imagemask }{ BitsPerComponent ImageMatrix /DataSource load AGMIMG_&image }ifelse }ifelse currentdict /_Filters known {_Filters AGMIMG_flushfilters} if cleartomark restore end }def /overprint_plate { currentoverprint { 0 get dup type /nametype eq { dup /DeviceGray eq{ pop AGMCORE_black_plate not }{ /DeviceCMYK eq{ AGMCORE_is_cmyk_sep not }if }ifelse }{ false exch { AGMOHS_sepink eq or } forall not } ifelse }{ pop false }ifelse }def /process_mask_L3 { dup begin /ImageType 1 def end 4 dict begin /DataDict exch def /ImageType 3 def /InterleaveType 3 def /MaskDict 9 dict begin /ImageType 1 def /Width DataDict dup /MaskWidth known {/MaskWidth}{/Width} ifelse get def /Height DataDict dup /MaskHeight known {/MaskHeight}{/Height} ifelse get def /ImageMatrix [Width 0 0 Height neg 0 Height] def /NComponents 1 def /BitsPerComponent 1 def /Decode [0 1] def /DataSource AGMIMG_maskSource def currentdict end def currentdict end }def /use_mask { dup type /dicttype eq { dup /Mask known { dup /Mask get { level3 {true} { dup /MaskWidth known {dup /MaskWidth get 1 index /Width get eq}{true}ifelse exch dup /MaskHeight known {dup /MaskHeight get 1 index /Height get eq}{true}ifelse 3 -1 roll and } ifelse } {false} ifelse } {false} ifelse } {false} ifelse }def /make_line_source { begin MultipleDataSources { [ Decode length 2 div cvi {Width string} repeat ] }{ Width Decode length 2 div mul cvi string }ifelse end }def /datasource_to_str { exch dup type dup /filetype eq { pop exch readstring }{ /arraytype eq { exec exch copy }{ pop }ifelse }ifelse pop }def /masked_image_simulation { 3 dict begin dup make_line_source /line_source xdf /mask_source AGMIMG_maskSource /LZWDecode filter def dup /Width get 8 div ceiling cvi string /mask_str xdf begin gsave 0 1 translate 1 -1 Height div scale 1 1 Height { pop gsave MultipleDataSources { 0 1 DataSource length 1 sub { dup DataSource exch get exch line_source exch get datasource_to_str } for }{ DataSource line_source datasource_to_str } ifelse << /PatternType 1 /PaintProc [ /pop cvx << /ImageType 1 /Width Width /Height 1 /ImageMatrix Width 1.0 sub 1 matrix scale 0.5 0 matrix translate matrix concatmatrix /MultipleDataSources MultipleDataSources /DataSource line_source /BitsPerComponent BitsPerComponent /Decode Decode >> /image cvx ] cvx /BBox [0 0 Width 1] /XStep Width /YStep 1 /PaintType 1 /TilingType 2 >> matrix makepattern set_pattern << /ImageType 1 /Width Width /Height 1 /ImageMatrix Width 1 matrix scale /MultipleDataSources false /DataSource mask_source mask_str readstring pop /BitsPerComponent 1 /Decode [0 1] >> imagemask grestore 0 1 translate } for grestore end end }def /imageormask { begin SkipImageProc { currentdict consumeimagedata } { save mark level2 AGMCORE_host_sep not and{ currentdict Operator /imagemask eq DeviceN_PS2 not and { imagemask }{ AGMCORE_in_rip_sep currentoverprint and currentcolorspace 0 get /DeviceGray eq and{ [/Separation /Black /DeviceGray {}] setcolorspace /Decode [ Decode 1 get Decode 0 get ] def }if use_mask { level3 {process_mask_L3 image}{masked_image_simulation}ifelse }{ DeviceN_NoneName DeviceN_PS2 Indexed_DeviceN level3 not and or or AGMCORE_in_rip_sep and { Names convert_to_process not { 2 dict begin /imageDict xdf /names_index 0 def gsave imageDict write_image_file { Names { dup (None) ne { [/Separation 3 -1 roll /DeviceGray {1 exch sub}] setcolorspace Operator imageDict read_image_file names_index 0 eq {true setoverprint} if /names_index names_index 1 add def }{ pop } ifelse } forall close_image_file } if grestore end }{ Operator /imagemask eq { imagemask }{ image } ifelse } ifelse }{ Operator /imagemask eq { imagemask }{ image } ifelse } ifelse }ifelse }ifelse }{ Width Height Operator /imagemask eq{ Decode 0 get 1 eq Decode 1 get 0 eq and ImageMatrix /DataSource load /Adobe_AGM_OnHost_Seps where { pop imagemask }{ currentgray 1 ne{ currentdict imageormask_sys }{ currentoverprint not{ 1 AGMCORE_&setgray currentdict imageormask_sys }{ currentdict ignoreimagedata }ifelse }ifelse }ifelse }{ BitsPerComponent ImageMatrix MultipleDataSources{ 0 1 NComponents 1 sub{ DataSource exch get }for }{ /DataSource load }ifelse Operator /colorimage eq{ AGMCORE_host_sep{ MultipleDataSources level2 or NComponents 4 eq and{ AGMCORE_is_cmyk_sep{ MultipleDataSources{ /DataSource [ DataSource 0 get /exec cvx DataSource 1 get /exec cvx DataSource 2 get /exec cvx DataSource 3 get /exec cvx /AGMCORE_get_ink_data cvx ] cvx def }{ /DataSource Width BitsPerComponent mul 7 add 8 idiv Height mul 4 mul /DataSource load filter_cmyk 0 () /SubFileDecode filter def }ifelse /Decode [ Decode 0 get Decode 1 get ] def /MultipleDataSources false def /NComponents 1 def /Operator /image def invert_image_samples 1 AGMCORE_&setgray currentdict imageormask_sys }{ currentoverprint not Operator/imagemask eq and{ 1 AGMCORE_&setgray currentdict imageormask_sys }{ currentdict ignoreimagedata }ifelse }ifelse }{ MultipleDataSources NComponents AGMIMG_&colorimage }ifelse }{ true NComponents colorimage }ifelse }{ Operator /image eq{ AGMCORE_host_sep{ /DoImage true def HostSepColorImage{ invert_image_samples }{ AGMCORE_black_plate not Operator/imagemask ne and{ /DoImage false def currentdict ignoreimagedata }if }ifelse 1 AGMCORE_&setgray DoImage {currentdict imageormask_sys} if }{ use_mask { level3 {process_mask_L3 image}{masked_image_simulation}ifelse }{ image }ifelse }ifelse }{ Operator/knockout eq{ pop pop pop pop pop currentcolorspace overprint_plate not{ knockout_unitsq }if }if }ifelse }ifelse }ifelse }ifelse cleartomark restore }ifelse currentdict /_Filters known {_Filters AGMIMG_flushfilters} if end }def /sep_imageormask { /sep_colorspace_dict AGMCORE_gget begin CSA map_csa begin SkipImageProc { currentdict consumeimagedata } { save mark AGMCORE_avoid_L2_sep_space{ /Decode [ Decode 0 get 255 mul Decode 1 get 255 mul ] def }if AGMIMG_ccimage_exists MappedCSA 0 get /DeviceCMYK eq and currentdict/Components known and Name () ne and Name (All) ne and Operator /image eq and AGMCORE_producing_seps not and level2 not and { Width Height BitsPerComponent ImageMatrix [ /DataSource load /exec cvx { 0 1 2 index length 1 sub{ 1 index exch 2 copy get 255 xor put }for } /exec cvx ] cvx bind MappedCSA 0 get /DeviceCMYK eq{ Components aload pop }{ 0 0 0 Components aload pop 1 exch sub }ifelse Name findcmykcustomcolor customcolorimage }{ AGMCORE_producing_seps not{ level2{ AGMCORE_avoid_L2_sep_space not currentcolorspace 0 get /Separation ne and{ [/Separation Name MappedCSA sep_proc_name exch 0 get exch load ] setcolorspace_opt /sep_tint AGMCORE_gget setcolor }if currentdict imageormask }{ currentdict Operator /imagemask eq{ imageormask }{ sep_imageormask_lev1 }ifelse }ifelse }{ AGMCORE_host_sep{ Operator/knockout eq{ currentdict/ImageMatrix get concat knockout_unitsq }{ currentgray 1 ne{ AGMCORE_is_cmyk_sep Name (All) ne and{ level2{ Name AGMCORE_IsSeparationAProcessColor { Operator /imagemask eq{ /sep_tint AGMCORE_gget 1 exch sub AGMCORE_&setcolor }{ invert_image_samples }ifelse }{ [ /Separation Name [/DeviceGray] { sep_colorspace_proc AGMCORE_get_ink_data 1 exch sub } bind ] AGMCORE_&setcolorspace /sep_tint AGMCORE_gget AGMCORE_&setcolor }ifelse currentdict imageormask_sys }{ currentdict Operator /imagemask eq{ imageormask_sys }{ sep_image_lev1_sep }ifelse }ifelse }{ Operator/imagemask ne{ invert_image_samples }if currentdict imageormask_sys }ifelse }{ currentoverprint not Name (All) eq or Operator/imagemask eq and{ currentdict imageormask_sys }{ currentoverprint not { gsave knockout_unitsq grestore }if currentdict consumeimagedata }ifelse }ifelse }ifelse }{ currentcolorspace 0 get /Separation ne{ [/Separation Name MappedCSA sep_proc_name exch 0 get exch load ] setcolorspace_opt /sep_tint AGMCORE_gget setcolor }if currentoverprint MappedCSA 0 get /DeviceCMYK eq and Name AGMCORE_IsSeparationAProcessColor not and Name inRip_spot_has_ink not and Name (All) ne and { imageormask_l2_overprint }{ currentdict imageormask }ifelse }ifelse }ifelse }ifelse cleartomark restore }ifelse currentdict /_Filters known {_Filters AGMIMG_flushfilters} if end end }def /decode_image_sample { 4 1 roll exch dup 5 1 roll sub 2 4 -1 roll exp 1 sub div mul add } bdf /colorSpaceElemCnt { mark currentcolor counttomark dup 2 add 1 roll cleartomark } bdf /devn_sep_datasource { 1 dict begin /dataSource xdf [ 0 1 dataSource length 1 sub { dup currentdict /dataSource get /exch cvx /get cvx /exec cvx /exch cvx names_index /ne cvx [ /pop cvx ] cvx /if cvx } for ] cvx bind end } bdf /devn_alt_datasource { 11 dict begin /convProc xdf /origcolorSpaceElemCnt xdf /origMultipleDataSources xdf /origBitsPerComponent xdf /origDecode xdf /origDataSource xdf /dsCnt origMultipleDataSources {origDataSource length}{1}ifelse def /DataSource origMultipleDataSources { [ BitsPerComponent 8 idiv origDecode length 2 idiv mul string 0 1 origDecode length 2 idiv 1 sub { dup 7 mul 1 add index exch dup BitsPerComponent 8 idiv mul exch origDataSource exch get 0 () /SubFileDecode filter BitsPerComponent 8 idiv string /readstring cvx /pop cvx /putinterval cvx }for ]bind cvx }{origDataSource}ifelse 0 () /SubFileDecode filter def [ origcolorSpaceElemCnt string 0 2 origDecode length 2 sub { dup origDecode exch get dup 3 -1 roll 1 add origDecode exch get exch sub 2 BitsPerComponent exp 1 sub div 1 BitsPerComponent 8 idiv {DataSource /read cvx /not cvx{0}/if cvx /mul cvx}repeat /mul cvx /add cvx }for /convProc load /exec cvx origcolorSpaceElemCnt 1 sub -1 0 { /dup cvx 2 /add cvx /index cvx 3 1 /roll cvx /exch cvx 255 /mul cvx /cvi cvx /put cvx }for ]bind cvx 0 () /SubFileDecode filter end } bdf /devn_imageormask { /devicen_colorspace_dict AGMCORE_gget begin CSA map_csa 2 dict begin dup /srcDataStrs [ 3 -1 roll begin currentdict /MultipleDataSources known {MultipleDataSources {DataSource length}{1}ifelse}{1} ifelse { Width Decode length 2 div mul cvi { dup 65535 gt {1 add 2 div cvi}{exit}ifelse } loop string } repeat end ] def /dstDataStr srcDataStrs 0 get length string def begin SkipImageProc { currentdict consumeimagedata } { save mark AGMCORE_producing_seps not { level3 not { Operator /imagemask ne { /DataSource [ [ DataSource Decode BitsPerComponent currentdict /MultipleDataSources known {MultipleDataSources}{false} ifelse colorSpaceElemCnt /devicen_colorspace_dict AGMCORE_gget /TintTransform get devn_alt_datasource 1 /string cvx /readstring cvx /pop cvx] cvx colorSpaceElemCnt 1 sub{dup}repeat] def /MultipleDataSources true def /Decode colorSpaceElemCnt [ exch {0 1} repeat ] def } if }if currentdict imageormask }{ AGMCORE_host_sep{ Names convert_to_process { CSA get_csa_by_name 0 get /DeviceCMYK eq { /DataSource Width BitsPerComponent mul 7 add 8 idiv Height mul 4 mul DataSource Decode BitsPerComponent currentdict /MultipleDataSources known {MultipleDataSources}{false} ifelse 4 /devicen_colorspace_dict AGMCORE_gget /TintTransform get devn_alt_datasource filter_cmyk 0 () /SubFileDecode filter def /MultipleDataSources false def /Decode [1 0] def /DeviceGray setcolorspace currentdict imageormask_sys }{ AGMCORE_report_unsupported_color_space AGMCORE_black_plate { /DataSource DataSource Decode BitsPerComponent currentdict /MultipleDataSources known {MultipleDataSources}{false} ifelse CSA get_csa_by_name 0 get /DeviceRGB eq{3}{1}ifelse /devicen_colorspace_dict AGMCORE_gget /TintTransform get devn_alt_datasource /MultipleDataSources false def /Decode colorSpaceElemCnt [ exch {0 1} repeat ] def currentdict imageormask_sys } { gsave knockout_unitsq grestore currentdict consumeimagedata } ifelse } ifelse } { /devicen_colorspace_dict AGMCORE_gget /names_index known { Operator/imagemask ne{ MultipleDataSources { /DataSource [ DataSource devn_sep_datasource /exec cvx ] cvx def /MultipleDataSources false def }{ /DataSource /DataSource load dstDataStr srcDataStrs 0 get filter_devn def } ifelse invert_image_samples } if currentdict imageormask_sys }{ currentoverprint not Operator/imagemask eq and{ currentdict imageormask_sys }{ currentoverprint not { gsave knockout_unitsq grestore }if currentdict consumeimagedata }ifelse }ifelse }ifelse }{ currentdict imageormask }ifelse }ifelse cleartomark restore }ifelse currentdict /_Filters known {_Filters AGMIMG_flushfilters} if end end end }def /imageormask_l2_overprint { currentdict currentcmykcolor add add add 0 eq{ currentdict consumeimagedata }{ level3{ currentcmykcolor /AGMIMG_k xdf /AGMIMG_y xdf /AGMIMG_m xdf /AGMIMG_c xdf Operator/imagemask eq{ [/DeviceN [ AGMIMG_c 0 ne {/Cyan} if AGMIMG_m 0 ne {/Magenta} if AGMIMG_y 0 ne {/Yellow} if AGMIMG_k 0 ne {/Black} if ] /DeviceCMYK {}] setcolorspace AGMIMG_c 0 ne {AGMIMG_c} if AGMIMG_m 0 ne {AGMIMG_m} if AGMIMG_y 0 ne {AGMIMG_y} if AGMIMG_k 0 ne {AGMIMG_k} if setcolor }{ /Decode [ Decode 0 get 255 mul Decode 1 get 255 mul ] def [/Indexed [ /DeviceN [ AGMIMG_c 0 ne {/Cyan} if AGMIMG_m 0 ne {/Magenta} if AGMIMG_y 0 ne {/Yellow} if AGMIMG_k 0 ne {/Black} if ] /DeviceCMYK { AGMIMG_k 0 eq {0} if AGMIMG_y 0 eq {0 exch} if AGMIMG_m 0 eq {0 3 1 roll} if AGMIMG_c 0 eq {0 4 1 roll} if } ] 255 { 255 div mark exch dup dup dup AGMIMG_k 0 ne{ /sep_tint AGMCORE_gget mul MappedCSA sep_proc_name exch pop load exec 4 1 roll pop pop pop counttomark 1 roll }{ pop }ifelse AGMIMG_y 0 ne{ /sep_tint AGMCORE_gget mul MappedCSA sep_proc_name exch pop load exec 4 2 roll pop pop pop counttomark 1 roll }{ pop }ifelse AGMIMG_m 0 ne{ /sep_tint AGMCORE_gget mul MappedCSA sep_proc_name exch pop load exec 4 3 roll pop pop pop counttomark 1 roll }{ pop }ifelse AGMIMG_c 0 ne{ /sep_tint AGMCORE_gget mul MappedCSA sep_proc_name exch pop load exec pop pop pop counttomark 1 roll }{ pop }ifelse counttomark 1 add -1 roll pop } ] setcolorspace }ifelse imageormask_sys }{ write_image_file{ currentcmykcolor 0 ne{ [/Separation /Black /DeviceGray {}] setcolorspace gsave /Black [{1 exch sub /sep_tint AGMCORE_gget mul} /exec cvx MappedCSA sep_proc_name cvx exch pop {4 1 roll pop pop pop 1 exch sub} /exec cvx] cvx modify_halftone_xfer Operator currentdict read_image_file grestore }if 0 ne{ [/Separation /Yellow /DeviceGray {}] setcolorspace gsave /Yellow [{1 exch sub /sep_tint AGMCORE_gget mul} /exec cvx MappedCSA sep_proc_name cvx exch pop {4 2 roll pop pop pop 1 exch sub} /exec cvx] cvx modify_halftone_xfer Operator currentdict read_image_file grestore }if 0 ne{ [/Separation /Magenta /DeviceGray {}] setcolorspace gsave /Magenta [{1 exch sub /sep_tint AGMCORE_gget mul} /exec cvx MappedCSA sep_proc_name cvx exch pop {4 3 roll pop pop pop 1 exch sub} /exec cvx] cvx modify_halftone_xfer Operator currentdict read_image_file grestore }if 0 ne{ [/Separation /Cyan /DeviceGray {}] setcolorspace gsave /Cyan [{1 exch sub /sep_tint AGMCORE_gget mul} /exec cvx MappedCSA sep_proc_name cvx exch pop {pop pop pop 1 exch sub} /exec cvx] cvx modify_halftone_xfer Operator currentdict read_image_file grestore } if close_image_file }{ imageormask }ifelse }ifelse }ifelse } def /indexed_imageormask { begin save mark currentdict AGMCORE_host_sep{ Operator/knockout eq{ /indexed_colorspace_dict AGMCORE_gget dup /CSA known { /CSA get get_csa_by_name }{ /Names get } ifelse overprint_plate not{ knockout_unitsq }if }{ Indexed_DeviceN { /devicen_colorspace_dict AGMCORE_gget /names_index known { indexed_image_lev2_sep }{ currentoverprint not{ knockout_unitsq }if currentdict consumeimagedata } ifelse }{ AGMCORE_is_cmyk_sep{ Operator /imagemask eq{ imageormask_sys }{ level2{ indexed_image_lev2_sep }{ indexed_image_lev1_sep }ifelse }ifelse }{ currentoverprint not{ knockout_unitsq }if currentdict consumeimagedata }ifelse }ifelse }ifelse }{ level2{ Indexed_DeviceN { /indexed_colorspace_dict AGMCORE_gget begin }{ /indexed_colorspace_dict AGMCORE_gget begin CSA get_csa_by_name 0 get /DeviceCMYK eq ps_level 3 ge and ps_version 3015.007 lt and { [/Indexed [/DeviceN [/Cyan /Magenta /Yellow /Black] /DeviceCMYK {}] HiVal Lookup] setcolorspace } if end } ifelse imageormask Indexed_DeviceN { end } if }{ Operator /imagemask eq{ imageormask }{ indexed_imageormask_lev1 }ifelse }ifelse }ifelse cleartomark restore currentdict /_Filters known {_Filters AGMIMG_flushfilters} if end }def /indexed_image_lev2_sep { /indexed_colorspace_dict AGMCORE_gget begin begin Indexed_DeviceN not { currentcolorspace dup 1 /DeviceGray put dup 3 currentcolorspace 2 get 1 add string 0 1 2 3 AGMCORE_get_ink_data 4 currentcolorspace 3 get length 1 sub { dup 4 idiv exch currentcolorspace 3 get exch get 255 exch sub 2 index 3 1 roll put }for put setcolorspace } if currentdict Operator /imagemask eq{ AGMIMG_&imagemask }{ use_mask { level3 {process_mask_L3 AGMIMG_&image}{masked_image_simulation}ifelse }{ AGMIMG_&image }ifelse }ifelse end end }def /OPIimage { dup type /dicttype ne{ 10 dict begin /DataSource xdf /ImageMatrix xdf /BitsPerComponent xdf /Height xdf /Width xdf /ImageType 1 def /Decode [0 1 def] currentdict end }if dup begin /NComponents 1 cdndf /MultipleDataSources false cdndf /SkipImageProc {false} cdndf /HostSepColorImage false cdndf /Decode [ 0 currentcolorspace 0 get /Indexed eq{ 2 BitsPerComponent exp 1 sub }{ 1 }ifelse ] cdndf /Operator /image cdndf end /sep_colorspace_dict AGMCORE_gget null eq{ imageormask }{ gsave dup begin invert_image_samples end sep_imageormask grestore }ifelse }def /cachemask_level2 { 3 dict begin /LZWEncode filter /WriteFilter xdf /readBuffer 256 string def /ReadFilter currentfile 0 (%EndMask) /SubFileDecode filter /ASCII85Decode filter /RunLengthDecode filter def { ReadFilter readBuffer readstring exch WriteFilter exch writestring not {exit} if }loop WriteFilter closefile end }def /cachemask_level3 { currentfile << /Filter [ /SubFileDecode /ASCII85Decode /RunLengthDecode ] /DecodeParms [ << /EODCount 0 /EODString (%EndMask) >> null null ] /Intent 1 >> /ReusableStreamDecode filter }def /spot_alias { /mapto_sep_imageormask { dup type /dicttype ne{ 12 dict begin /ImageType 1 def /DataSource xdf /ImageMatrix xdf /BitsPerComponent xdf /Height xdf /Width xdf /MultipleDataSources false def }{ begin }ifelse /Decode [/customcolor_tint AGMCORE_gget 0] def /Operator /image def /HostSepColorImage false def /SkipImageProc {false} def currentdict end sep_imageormask }bdf /customcolorimage { Adobe_AGM_Image/AGMIMG_colorAry xddf /customcolor_tint AGMCORE_gget << /Name AGMIMG_colorAry 4 get /CSA [ /DeviceCMYK ] /TintMethod /Subtractive /TintProc null /MappedCSA null /NComponents 4 /Components [ AGMIMG_colorAry aload pop pop ] >> setsepcolorspace mapto_sep_imageormask }ndf Adobe_AGM_Image/AGMIMG_&customcolorimage /customcolorimage load put /customcolorimage { Adobe_AGM_Image/AGMIMG_override false put current_spot_alias{dup 4 get map_alias}{false}ifelse { false set_spot_alias /customcolor_tint AGMCORE_gget exch setsepcolorspace pop mapto_sep_imageormask true set_spot_alias }{ AGMIMG_&customcolorimage }ifelse }bdf }def /snap_to_device { 6 dict begin matrix currentmatrix dup 0 get 0 eq 1 index 3 get 0 eq and 1 index 1 get 0 eq 2 index 2 get 0 eq and or exch pop { 1 1 dtransform 0 gt exch 0 gt /AGMIMG_xSign? exch def /AGMIMG_ySign? exch def 0 0 transform AGMIMG_ySign? {floor 0.1 sub}{ceiling 0.1 add} ifelse exch AGMIMG_xSign? {floor 0.1 sub}{ceiling 0.1 add} ifelse exch itransform /AGMIMG_llY exch def /AGMIMG_llX exch def 1 1 transform AGMIMG_ySign? {ceiling 0.1 add}{floor 0.1 sub} ifelse exch AGMIMG_xSign? {ceiling 0.1 add}{floor 0.1 sub} ifelse exch itransform /AGMIMG_urY exch def /AGMIMG_urX exch def [AGMIMG_urX AGMIMG_llX sub 0 0 AGMIMG_urY AGMIMG_llY sub AGMIMG_llX AGMIMG_llY] concat }{ }ifelse end } def level2 not{ /colorbuf { 0 1 2 index length 1 sub{ dup 2 index exch get 255 exch sub 2 index 3 1 roll put }for }def /tint_image_to_color { begin Width Height BitsPerComponent ImageMatrix /DataSource load end Adobe_AGM_Image begin /AGMIMG_mbuf 0 string def /AGMIMG_ybuf 0 string def /AGMIMG_kbuf 0 string def { colorbuf dup length AGMIMG_mbuf length ne { dup length dup dup /AGMIMG_mbuf exch string def /AGMIMG_ybuf exch string def /AGMIMG_kbuf exch string def } if dup AGMIMG_mbuf copy AGMIMG_ybuf copy AGMIMG_kbuf copy pop } addprocs {AGMIMG_mbuf}{AGMIMG_ybuf}{AGMIMG_kbuf} true 4 colorimage end } def /sep_imageormask_lev1 { begin MappedCSA 0 get dup /DeviceRGB eq exch /DeviceCMYK eq or has_color not and{ { 255 mul round cvi GrayLookup exch get } currenttransfer addprocs settransfer currentdict imageormask }{ /sep_colorspace_dict AGMCORE_gget/Components known{ MappedCSA 0 get /DeviceCMYK eq{ Components aload pop }{ 0 0 0 Components aload pop 1 exch sub }ifelse Adobe_AGM_Image/AGMIMG_k xddf Adobe_AGM_Image/AGMIMG_y xddf Adobe_AGM_Image/AGMIMG_m xddf Adobe_AGM_Image/AGMIMG_c xddf AGMIMG_y 0.0 eq AGMIMG_m 0.0 eq and AGMIMG_c 0.0 eq and{ {AGMIMG_k mul 1 exch sub} currenttransfer addprocs settransfer currentdict imageormask }{ currentcolortransfer {AGMIMG_k mul 1 exch sub} exch addprocs 4 1 roll {AGMIMG_y mul 1 exch sub} exch addprocs 4 1 roll {AGMIMG_m mul 1 exch sub} exch addprocs 4 1 roll {AGMIMG_c mul 1 exch sub} exch addprocs 4 1 roll setcolortransfer currentdict tint_image_to_color }ifelse }{ MappedCSA 0 get /DeviceGray eq { {255 mul round cvi ColorLookup exch get 0 get} currenttransfer addprocs settransfer currentdict imageormask }{ MappedCSA 0 get /DeviceCMYK eq { currentcolortransfer {255 mul round cvi ColorLookup exch get 3 get 1 exch sub} exch addprocs 4 1 roll {255 mul round cvi ColorLookup exch get 2 get 1 exch sub} exch addprocs 4 1 roll {255 mul round cvi ColorLookup exch get 1 get 1 exch sub} exch addprocs 4 1 roll {255 mul round cvi ColorLookup exch get 0 get 1 exch sub} exch addprocs 4 1 roll setcolortransfer currentdict tint_image_to_color }{ currentcolortransfer {pop 1} exch addprocs 4 1 roll {255 mul round cvi ColorLookup exch get 2 get} exch addprocs 4 1 roll {255 mul round cvi ColorLookup exch get 1 get} exch addprocs 4 1 roll {255 mul round cvi ColorLookup exch get 0 get} exch addprocs 4 1 roll setcolortransfer currentdict tint_image_to_color }ifelse }ifelse }ifelse }ifelse end }def /sep_image_lev1_sep { begin /sep_colorspace_dict AGMCORE_gget/Components known{ Components aload pop Adobe_AGM_Image/AGMIMG_k xddf Adobe_AGM_Image/AGMIMG_y xddf Adobe_AGM_Image/AGMIMG_m xddf Adobe_AGM_Image/AGMIMG_c xddf {AGMIMG_c mul 1 exch sub} {AGMIMG_m mul 1 exch sub} {AGMIMG_y mul 1 exch sub} {AGMIMG_k mul 1 exch sub} }{ {255 mul round cvi ColorLookup exch get 0 get 1 exch sub} {255 mul round cvi ColorLookup exch get 1 get 1 exch sub} {255 mul round cvi ColorLookup exch get 2 get 1 exch sub} {255 mul round cvi ColorLookup exch get 3 get 1 exch sub} }ifelse AGMCORE_get_ink_data currenttransfer addprocs settransfer currentdict imageormask_sys end }def /indexed_imageormask_lev1 { /indexed_colorspace_dict AGMCORE_gget begin begin currentdict MappedCSA 0 get dup /DeviceRGB eq exch /DeviceCMYK eq or has_color not and{ {HiVal mul round cvi GrayLookup exch get HiVal div} currenttransfer addprocs settransfer imageormask }{ MappedCSA 0 get /DeviceGray eq { {HiVal mul round cvi Lookup exch get HiVal div} currenttransfer addprocs settransfer imageormask }{ MappedCSA 0 get /DeviceCMYK eq { currentcolortransfer {4 mul HiVal mul round cvi 3 add Lookup exch get HiVal div 1 exch sub} exch addprocs 4 1 roll {4 mul HiVal mul round cvi 2 add Lookup exch get HiVal div 1 exch sub} exch addprocs 4 1 roll {4 mul HiVal mul round cvi 1 add Lookup exch get HiVal div 1 exch sub} exch addprocs 4 1 roll {4 mul HiVal mul round cvi Lookup exch get HiVal div 1 exch sub} exch addprocs 4 1 roll setcolortransfer tint_image_to_color }{ currentcolortransfer {pop 1} exch addprocs 4 1 roll {3 mul HiVal mul round cvi 2 add Lookup exch get HiVal div} exch addprocs 4 1 roll {3 mul HiVal mul round cvi 1 add Lookup exch get HiVal div} exch addprocs 4 1 roll {3 mul HiVal mul round cvi Lookup exch get HiVal div} exch addprocs 4 1 roll setcolortransfer tint_image_to_color }ifelse }ifelse }ifelse end end }def /indexed_image_lev1_sep { /indexed_colorspace_dict AGMCORE_gget begin begin {4 mul HiVal mul round cvi Lookup exch get HiVal div 1 exch sub} {4 mul HiVal mul round cvi 1 add Lookup exch get HiVal div 1 exch sub} {4 mul HiVal mul round cvi 2 add Lookup exch get HiVal div 1 exch sub} {4 mul HiVal mul round cvi 3 add Lookup exch get HiVal div 1 exch sub} AGMCORE_get_ink_data currenttransfer addprocs settransfer currentdict imageormask_sys end end }def }if end systemdict /setpacking known { setpacking } if %%EndResource currentdict Adobe_AGM_Utils eq {end} if %%EndProlog %%BeginSetup Adobe_AGM_Utils begin 2 2010 Adobe_AGM_Core/doc_setup get exec Adobe_CoolType_Core/doc_setup get exec Adobe_AGM_Image/doc_setup get exec currentdict Adobe_AGM_Utils eq {end} if %%EndSetup %%Page: (Page 1) 1 %%EndPageComments %%BeginPageSetup /currentdistillerparams where {pop currentdistillerparams /CoreDistVersion get 5000 lt} {true} ifelse { userdict /AI11_PDFMark5 /cleartomark load put userdict /AI11_ReadMetadata_PDFMark5 {flushfile cleartomark } bind put} { userdict /AI11_PDFMark5 /pdfmark load put userdict /AI11_ReadMetadata_PDFMark5 {/PUT pdfmark} bind put } ifelse [/NamespacePush AI11_PDFMark5 [/_objdef {ai_metadata_stream_123} /type /stream /OBJ AI11_PDFMark5 [{ai_metadata_stream_123} currentfile 0 (% &&end XMP packet marker&&) /SubFileDecode filter AI11_ReadMetadata_PDFMark5 <?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> +<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="3.1.1-111"> + <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> + <rdf:Description rdf:about="" + xmlns:dc="http://purl.org/dc/elements/1.1/"> + <dc:format>application/postscript</dc:format> + </rdf:Description> + <rdf:Description rdf:about="" + xmlns:xap="http://ns.adobe.com/xap/1.0/" + xmlns:xapGImg="http://ns.adobe.com/xap/1.0/g/img/"> + <xap:CreatorTool>Adobe Illustrator CS2</xap:CreatorTool> + <xap:CreateDate>2006-05-22T12:02:18-06:00</xap:CreateDate> + <xap:ModifyDate>2006-05-22T12:02:18-06:00</xap:ModifyDate> + <xap:MetadataDate>2006-05-22T12:02:18-06:00</xap:MetadataDate> + <xap:Thumbnails> + <rdf:Alt> + <rdf:li rdf:parseType="Resource"> + <xapGImg:width>256</xapGImg:width> + <xapGImg:height>88</xapGImg:height> + <xapGImg:format>JPEG</xapGImg:format> + <xapGImg:image>/9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgAWAEAAwER AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE 1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp 0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo +DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9Na7r2kaBpF1rGsXSWWm WSepc3MleKrUAbCpJJICgCpOw3xV4rN/zmb+VccrImn61MqmglS3tgre453Kt94xVZ/0Oj+V3/Vr 1z/kRaf9lWKu/wCh0fyu/wCrXrn/ACItP+yrFXf9Do/ld/1a9c/5EWn/AGVYq7/odH8rv+rXrn/I i0/7KsVd/wBDo/ld/wBWvXP+RFp/2VYq7/odH8rv+rXrn/Ii0/7KsVd/0Oj+V3/Vr1z/AJEWn/ZV irv+h0fyu/6teuf8iLT/ALKsVd/0Oj+V3/Vr1z/kRaf9lWKu/wCh0fyu/wCrXrn/ACItP+yrFXf9 Do/ld/1a9c/5EWn/AGVYq7/odH8rv+rXrn/Ii0/7KsVd/wBDo/ld/wBWvXP+RFp/2VYq7/odH8rv +rXrn/Ii0/7KsVd/0Oj+V3/Vr1z/AJEWn/ZVirv+h0fyu/6teuf8iLT/ALKsVd/0Oj+V3/Vr1z/k Raf9lWKu/wCh0fyu/wCrXrn/ACItP+yrFXf9Do/ld/1a9c/5EWn/AGVYq7/odH8rv+rXrn/Ii0/7 KsVd/wBDo/ld/wBWvXP+RFp/2VYq7/odH8rv+rXrn/Ii0/7KsVd/0Oj+V3/Vr1z/AJEWn/ZVirv+ h0fyu/6teuf8iLT/ALKsVd/0Oj+V3/Vr1z/kRaf9lWKu/wCh0fyu/wCrXrn/ACItP+yrFXf9Do/l d/1a9c/5EWn/AGVYq7/odH8rv+rXrn/Ii0/7KsVXw/8AOZv5VySqj6frUKsaGV7e2Kr7nhcs33DF XtWha9pGv6Ra6xo90l7pl6nqW1zHXiy1IOxoQQQQwIqDsd8VeMf85kpdN+VNmYeXpprFubnj09P0 LgDl7eoV+nFXxvouha1rl8un6NYz6jfOrOtraxtLIVUVYhEBNBhQyH/lT35rf9ShrH/SFP8A80YE u/5U9+a3/Uoax/0hT/8ANGKu/wCVPfmt/wBShrH/AEhT/wDNGKpZY+RfOd/qt3pFjod9dapYV+u2 MNvI80NDxPqIoLLue+FATP8A5U9+a3/Uoax/0hT/APNGBLv+VPfmt/1KGsf9IU//ADRiqUeYPJvm zy6ITr+j3mlC55egbyCSHnwpy48wK0rhQoaH5b8w69cta6Hpl1qlyo5PDZwyTsq+LCMNQe5xVO5/ yl/NGCFppvKWrpEgq7GxuKAeP2MUsVEUhl9IIfVLceFPi5VpSnjXFDLf+VPfmt/1KGsf9IU//NGB Lv8AlT35rf8AUoax/wBIU/8AzRirv+VPfmt/1KGsf9IU/wDzRiqS6/5T8z+XZYYte0q60uW4UvCl 3C8JdQaEqHArTCi2tC8q+ZvMErw6FpN5qkkQrKtnBJOUB6cvTVuNad8VTv8A5U9+a3/Uoax/0hT/ APNGBKR675Y8yaBOlvrml3elzSDlHHeQSQFgOpX1AtR8sKEviilmlSKJC8sjBI0UVLMxoAAO5OKs s/5U9+a3/Uoax/0hT/8ANGBLv+VPfmt/1KGsf9IU/wDzRiqVa95J84+X40l13Q7/AEuKU8Y5bu2l hRj4BnUAnbphVJcUMps/yr/Mu9tILyz8rarcWlzGs1vcRWc7pJG4DI6MFoVYGoOKUo17y15h8v3S Wmu6bc6ZdSIJEgu4nhcoSRyCuAaVGKLQVpaXV5cx2tpDJcXMx4xQRKXd2PZVUEk/LFWVL+UH5qso YeUNYoRUf6Dcf80YEoPV/wAuPzA0aye+1Xy3qdjZR/3l1cWk0cS1/mdlCj6cKscxQ7FX2r/zhqLk flTeGbl6Z1i4NvXp6f1e3B4+3Pl9OBL1D8zvKY82+QNd8vceUt/auLUVC/6RHSW3qTtT1kWuKvgX 8rvNR8n/AJi6FrszGKGwu1F6SGJW3krDcfCvxVETttTCh7Z51tG1DzTqWoaB5ks30i+mNzak36xU EwDsoQtsFZiB7Z0On1GMQAlV/BwZz32v5FiWqjzXpU0cOoyXds80YmgLvIBJExIWSM1oyNQ0YbHM yBhMXGipsJtaaD5huLC2vn8w2trFdqXhS5vXicgEqdiOxFNsqnmxxNH9DHj3rf7WR+T54LL83vLV vNqFtdN5j0S70DUpbKYSnlEpeN3YENyYLGAT4e2aXWSj4glFv0xuwwOSfXo9TbTpL6eO4Sc2785Z AFcPwPLfahzoAI1dNVm6T+byv5ggleGfzPYRTRni8b6g6spHYgiozHOpxD8BgMl9/wAilnnfTTF+ W2tQ6hrdlqE8c9pdWEUN2J3DrIYpaBqH7EnbwzB12SE4en9DPHI8Y59ehZtqt1L+V/5ZeXPKegMb HW9atU1TX9Qios7GYbIJBRtmqgI3Cr7nK+zdNGdyluA5OaZGwYjZaR5zu9L/AEyL9oLZm/cS3F2Y mlcEj4C7DeoPUjNtOeOOxpxPE3q92L+ZtCu9eg1G6uQ48y6VE1y0sm008cB/fRzFviaSNPjRj8VF K7/Dx1+v0keHjh9jdDKQaL1j8y9e0nzjrNlrnl/zZYQ2k1hCs0c979WYTBnLUiPxL8JX7W9a4NDm hCFSrn5IyzJO1/IsC1mHzTpEkIvLqf0rlPVs7lJnaKeImglicH4kbsc2eOUJi40WBsIyz0rXLjTL fUZvMNtYQXRcQi8vXgZjGxVqBtj9ByGTNjgaP6EcR8/tUfOWjPrPljy/5YttZstV1u/12KGEW9yL kqtzG0YZqfEEVvtbUzU9oZISA4WeG/E5Hl+ll3n7zNF5Ohj/AC78jytpuk6Ooj1K8tyY7i7uyo9V pJFo3XZh41H2QMyez9HHh45CyWzLkN0GL3uh+c7LS4dQubt4luByitWuSLgoBy5CMtU0BqQNx3Az O8THdbOOJ2aBSf8AS895bNpmsSy3+jzn9/ayuX4E7erAX5enMvVXHyNVJBGfSwyCiN2cZkMS0Xyt d6V+b2keXZv3sses2UCOoA9SOS4jMcgBqAHRg2/jnMZIGJILlwlxC3qX5p65qT/mJ5g9O7mSOO8k iVEkdVAi+DYA/wCTnTaSA8KO3RxckjxFDaroXmPTGeGfXrZr6OnLTkv/APSakVAETFSx8ANz2rgG oxXW32NcZk8r+1JbbzHq8IkikuHurOccLuxuGaS3nj7pJGxoR4HqOoIO+W5MEJiiGQmQwHzh5RbS fNa6VYBpbe/EE+lc6FmiuwDEpI6lS3AnuRnMZ8XhzMXKxT4hb3L859SubLzmuiWN08dpodjZ6dCs LsqgRQh+inqDJTN72diAxAkc2nNL1MC/OuS7kh8m+X1WSe+Wy+sMm7yPLeuoCdyTyjIGa3tGXrpG l3Mj518meR29h+Tejx6HoyxTfmDewq+v64VDmzWVQwtLXkNtiCW79fAJZoNCJ+uX09G7LkrYJRJp fnu901tevdRlRJyDC13dss05b7IjDt8Rb9kE1btXNqZ4obbBxPEs1e6SWPmfzFYXS3NrqVzFMnf1 WII7qykkMp7qRQ5bLFGQogMuIsM/NTy9aaR5igns41gtNZs4NUitUBCQG4BMkS1/ZV1PH/JIzmdV iEJkDk5GDJxD3FhyIzsEQFmYgKo3JJ6DMdufpJ+WPlMeUvIGheXuPGWwtUF0Khv9IkrLcUI2p6zt TAlk+Kvz8/5yH8n/AOFvzZ1q2jj9Oy1CT9JWVF4L6d1V2CAbcUl5oKfy4q82wofQL3K+YvyQ8pa2 CHu9Amm0C/I6hF/e2oI8Fi/Xm37JybmPxaM42th3ni3+v/l5ZXQq02h37wMAPs298nNST/xlhP34 e1cfKTXgNSrvH3f2sE8p64+g+aNI1tK8tMvILui7EiGRXK/SBTNO5b3L849Nj0/8x9Xa3blb3rpf wSDbkLpFmJH+zZs6fQz4sMfl8nDyipPMfzltyPOh1LiFj1mztdQQL0/exBH/AOSkbVzQ6yHDkLbp z6a7j+PsYNmM3vpb84rsalH5M1mMUgv/AC3ZMg8GBd2X6PUGb7sk/uyPP9AcbPzea/mxey3flvym Y2raW8V1bvGOi3COhbl7tGyEZidpgiY7kacby+CdeTPzD8jelo97rlzNZanpdqLC6hEDTx3caI8K Scl+z+4ZYyCP2ffBp9ZGOPgkjPjkTsPteOTiITyCElogxEbEUJWuxp8s1rlvobzenqfll+Wd6NxJ pMlvzJqSbeRQV/2PPN32QfTIebj6jowf8zAH8geVnAp6VxfRse55Mjg5T2oPUPx3McH1H3D9KX/8 4/0/5XL5VqK/6Z3/AOMb5qXLZrqK/XPzHuluCZBcaw4mJ6tzuiG++udbDbEK/m/ocCX1MS8563qO p/ncHMrc7LVbe0s1J2jEEyovGpNKuC3zOczqJEzLfpYCOMJ55ot7S28y6tb2albSG9uI7dT1Eays EB/2IzqMRJgCedNEuZTmLT45/wDnJrynAVpIhsZZgBX44ITJ28BGM5rWf3hb9N9PxP3oXXWGrfmJ qDChF/q8tADUUluTQA0/ys6PGOHGPKP6GiR9TC/zJMms/nLfQW78JJr+3s43BpxdFjgr9DLnM6k3 Mt+ljWMMr86NaN5x102ahbQ6hdfV1UUUR+s3Gg7CmdPgvgjfOg0T5lNbrRE1X8//AMv9DNXNha6e Lleu1kZbplNP+K0zntfK8jbpBsf6xQvmSc+Y/wAw9QkjPw6lqbpCT2SSbgn3LTN/ijwYwO4NUzuS mflyG08xf85PSXdwwfSfK0T3k1RUImnwDoP8m6cHOc1HqyUPc3aUVjBPvSnTvrPmzzykt5+9k1K8 a4ux4oWMsgFOnwAgZ0tCEKHQOPOfMpJqurXXnv8AOyx095+GjWWoCCBVP7uKzs353EygAbmOJ38e g6AZzOeZyT+wOTpsfBDzO5RFwZNX12VreMLJqF0xhiHQGaT4VH/BZ1I9Mfc45O6Sfnve20nndNMt t4dEsrewDeJRTJXYncCQKflnM6yfFkLdpB6L7zap/wA48eT/APFP5s6LbSR+pZafJ+kr2q819O1o 6hwduLy8ENf5sxHKfoHirsVfNv8Azmj5OW58v6N5tgjHrafMbC8YAljBcAvEWPQKkiEfN8VfIuFD 2v8AIC6/S3lnzx5KclnubFdY05CKgT2DAuF/ypFZR8hmTo8nBliWMxcSo6Xb/pLSNe0M1J1DT5Ht 416tcWZFzEP+SbD6c3uvx8WMuCDRB8/2PGs5l2D6I843P6b/AC+/L/zTz9SSfS20u7elG9bTZPTq 3u3I/dm77Jn6ZR7nHzjkWB/mVYyXvlXyzqkMbySW5utNupACQODieFdv8iU5j9qQqYLHTncj3H9H 6Hm0kM0dPUjZOXTkCK0+eaxynu3ljVV85/k7a2CN6mv+RHk9SDrJLpNwQfVUdWEDgK1PsrueubLs zMIzMT/F97VmjYtjTQ2l7ZTaXfErZ3ND6gqTDMgIjnUd+HIhh3UkbGhG31WnGWFdejjQlRt5rqem 3mmX81heJ6dxA3FwDUHaoZWGzKykMrDYjcZy8omJo83NBsWhcCX0Fdy/WvyG/LmanxWz6tbs3h/p VQP+BUZuOyDvL4fpaM/IMT8/qX/K7SZD/unVZo18KPDy3+kYO1RuGrAfX8P0pX/zj9/5OXyr/wAx n/Mt807ms0nBP5kSAbk6waD/AKOs62P93/m/odfPmWD3aG4/PPgPhM3mKMDvTleAZy+b6z7y5eD6 I+4Mj16R7jzBqMnH45ruZuI8WkJp+OdXjFRHucWXNmnlS1S5/wCcuoeVfR0+FpTU0AVdM+Hf2Mgr nMar+8P46N2kN4wff97GfKrrc+c7CeVwgN2J2dyFA4t6lSdvDOmntFxp7g/FLfL/AJfuX/Ni/wDN 2tW8lloOkanNqnKdTE1w8c7S21tAGAMjSOqg8RRVqxpnNRwyy5KA5lzIHhgL6BE6HYT655itrWhd 7uflNTslecjfQtTnTSPDFxJSrcst8gagt3+e3nfzbEVMHlrSrySGVtwJ4IktVA/1iHpnNTHiZq7z Tk6ccOIe5Jfy3tkn8220039zZpJdTMegEaGjE+zEHOjzyqLh5D6S3+VNzInkz8y/PMx4XWsyJpVo f2i17KZrpf8AkWyn6M57RR48wJ97nyHDCm/I9wNPi1vWU4ve2FhL9Qt6cpJLiQHgEjHxN9mhoO+b zVyIhs4MomVDvP2MS/LLSr3RrfzHrmowSWl0tl+jtOS4Ro3eXUH4TOnMAnjbJKrEdOQ8c02h08jl FjYbudklUWWfl1b2/wCn21K7IWy0i3lvrhzuAI1oDt3BPL6M3monwxcDJdUOZ2+bxHWdTuNV1a91 O4/v76eS4kA6BpWLED2Fds5WUrNuyjHhAA6Pqv8A5wt8oC30PW/Ns6D1b6ZdPs2NeQigAkmI7cXd 1HzTIsn0rirsVY3+ZPlRPNvkPXPLpAMmoWrpbVPEC4T95ASfASopOKvzZdHjdo3BV0JVlPUEbEYU M1/JTzQPLP5peXtUdqW31pba73oPRugYJC3sok5fRil6NrNmfJ35k3NtQrFpl+Sg6E25bkv/AAUL DOrxT8TED3hwMkdyHjnnTRP0H5s1bSgpWO1uZEhr3iLcoj9MZU5y+SPDIhy8cuKIL1z8urk61+QW uaaWD3HlfV4L+MH7S216no8R7epybM3sydZa7wjMLilOj6Fq2sTtBptubiVBydQVWg8SWKjOglMR 5uESBzTLzR5H1m1/LfX21Ww9OS1e1u7GQtG5UrJ6c1ODMRWN9/lmr7RMZwsdGWLIOMUXlXknzhq3 lDzJaa9pjAzWzESwPvFPC+0sEq/tJIux+/qBmjc9615w0jSfSsvM/lyr+V9fVprENu9tKppPZy06 PC+w8Vpuc6XQ6rxY7/UObiZYcJ8mHeYtG/Temc4VB1bT42aIj7U9soLPF7vHuyeI5Lv8AzG7S0tj jjz6pxTrYvOc0blPftMT1v8AnHLy3OAWFprV5blifsmVWl4ge/GubXsk+uQ8mnPyDHPOiqfyehYm rL5hCgdwpsmP3E5b2ryH473Hw/3n+b+lJv8AnH7/AMnL5V/5jD/yafNI57OoiB+aaE7Aa4Kn/o7z rB/df5v6HXZerCtMgF1/zkPZ25FUbzVFGwrQ8V1AKT9wzmM31n3lzMH0R9wTuFXufMCK1Wee7ANO pLydvvzqztH4OL1Zj5EmeX8/vPmoqSRpuiX0hbY09GKCHvX7s5qfqzf5wbtMKxD3ML0bRdS1m9Fl p0QmuSpbiWRBxXqeTlRnTSkIiy4xIAssiP5UedQKm1ip7TxH9TZX48WHiw71PWtc0f8ALXRbpIbu G987XqGGOOEh0s1bqz+46/ENzQU41Oa7WawAUObKEDlP9D70J+UEf6P/ACc89647E3GrXdlpMDmp NUJnmFf8pJN8wez4cWYeTn5TUW9Hn/RnkfzhrRqGSxFjC3+VeN6df9i3E5tu0J1jLgVcojz+5Hyw foL8ivJui7Jca3Pda7eoOtCfRtmJ/wAqEj7sw+yce8pfBy852AQOl+QvMGo2EV9EIYracEwtNKqF grFTQdeozbTzRiaLhnJEGiUF5j8s6n5euoLbUfT9W4hW5jETiQem5ZVJp0rxO3hhx5RMWGxX1e7O g/lDql2CUuvMVwlhbkUr6KVMh8aECRD9Ga7tLJUaRjHFkA7t3iSIzsEQFmYgKo3JJ6DNE7B+kn5Y +Ux5S8gaF5e48ZbC1QXQqG/0iSstxQjanrO1MCWT4q7FXYq+AP8AnI3ycfK/5s6xFGnCy1Rhqlma AApdEtIFA2AWYSKPYYq8ywofRv5lXI17R/KPndKMfMGlxpfOpqDfWX7m4+W9B9Gb7srJcDHuP3uN nG9vMfzbtfVudE11VouqWCRzuTUtcWJ+ryE/7BYz9Oa/tDHw5PenTnYjz+/9tsk/5xmuRd+YvMPl J6FPMui3MECHvdQD1YW/2K8zmLhnwTEu4t5Fikb5RW5nu9R0qAlLjVNPu7SEglSspiMkZBBFCHjF M6XVx4sZdfLbfuLxubWNXmjaKa+uJInFGR5XZSPcE0zl7LsOEIPAl6V+TvnXT7Oa68m+ZJeHlbzC yg3Df8eN8PhgvFrsAPsS9Kp8qZbgzHHMSCJRsUner6XqvlnzBNY3P7nUNOmFHXpVSGSRD3VhRlPh nUwmMkbHIuDIUaYN+Z2hwaV5qke1iENhqkEOpWUS/ZWO6Xkyr4BJOage2cxqcXBMhysE+KPu2eme SZhcf843XMVKtZeaeXyV7JQD97EZldln96fd+pc30pF5qAf8pZ+NecWsxM/hxeBgPxGZXao2H472 jD9fwP6Em/5x+/8AJy+Vf+Yz/mW+aNzWcBS35n0Aqf00T9AuqnOtj/dj+r+h1ubkfixnylGj/wDO StvzIVI/M00rM3QCK6dyTXw49c5fN9Z97m4Poj7h9yZeVl9TzPpKtUhr235U609Van7s6vJ9JcKR oEsl/LqUR+ZPzo1Nt3isruyDGtB9YuHioD849s5zEL1A/rfpcrH/AHQ/qpR5TZoNN803oNPq+iXn Fv8ALKgr9J47Zu9af3ZcSXMf1g8LzmHZOxV9AxwvpH/OP/k/TyOD65f3urTJ3IiP1eJjt3jYEZtu yYeqUmnOdgEo81w3C/ldpOkWu995l1cCKLoXSP8AdBT7eqE+/J9qT6OPgF5PcPvZL+crRx+b7fy/ ZkPa+XrGz0m1VBt+6iBIp48nI+jMrs6HDiB792zMbkwf86knvPOGheT7A+pJp1rbWUcfQG6uSN/9 mvp75qNdO5rpBYMu8/YnHnR7dvMtxZWNHstNEWmWPAbGGxjW2Qgf5fp8vmc3ukx8GKI8mOQ3JJPz 3vEtLrQvKkJXhotmHuePT6zcUL1+hA3+yzSa/JxTpOkF3LvP2BCf848eT/8AFP5s6LbSR+pZafJ+ kr2q819O1o6hwduLy8ENf5swHMfoHirsVdirsVfOP/OZ/k/635Y0jzVAlZtLnNndsBv6FyKozHwS VKD/AF8VfIOFD3b8ubr/ABB+RGtaSxD3nlHUotQtwR8QtL4GN0X2EgZ2zYdm5OHLX85rzC4sd802 n6R/LedwvKfQr+OfkTuLe8X0XAH/ABlSP78y+1cewk4+E1P3/j9bGPyl8wf4e/Mvy3qxIWOC/hWd iaAQzN6Mpr/xjkbNI5r1fzPaDyt+a95EVMUFnqfrKvhbyOJVH0xOM6nDLjwg+TgZI7kPFvO+k/oj zhrOmhSiW15MsSnr6ZcmP/hCM5nJGpEOXilxRB8k+/Jbyb5d85/mBY+W9enuLa1v45hDLasiP60c ZlQEyJIOJCEUpX3yDYhvPvkmHy7DYXEMjH6w9za3ls+7QXVo4V0J/wApXVhX3zK1enGMivpLTjyE kg9HoHmrVk1S38uXLyerfLoenxai9QxM8cdPiI/a9PhyrvXrm57NiRi3asx9TGfzlgP1fyldMatJ pQi+iKVqfg+avtEfvE6Y/V7/ANAZV+Vq+v8AkH5vQVb6nq9lcEdlEirFy+npj2aazD3FtzfSlWtL 6n5Ua4tP7i+s5a/6xKZndqD0hxsR9Y+LG/yKu4bT83/Kcsp4o2oRxVO3xTViX/hnGaFzno+pxrpH 5s3SXTcI7bWZOcjfCPTNwSHPtxPLOrxnixA/0XX5RzDCtCuHsvzt1bVLgBV0++1S5mB6cv3yxoBW p5yuqj516A5z8MRnmofzv0uVjIGMe5knkG2a584aXGv7Mvqn5RKZD/xHOkymolwchqJ9yZ/l66Se Sfzh1sNX69fWcMT16h72R2+dRKDnP6P1agHzP6XNIrHXkk8Uhtvy086XY2Yw2luG9p5ijD/hhmz7 SP7v8eTix+uI8/uDxPOedg7FX0d+bEK6YfK3lpD/AMcHQrK2nHT9+yc5Gp/lVU50HZcKx33lxs53 RenaOmo/nD+Xfl6ZVFn5dsf0xfkn4Y5EBlYt/wA9YE+/Nd2hLinQRpR9R8/uSfRJH8z/AJl/X5el 1ey38lRUBVZpgpHhsFzeGPBjrypoyz2JYn5P1Aa5+cWq+bHYSWuj/XNYiZxy/wB5h6dgPD+/aAb5 zkI+LlrvP2OZjjwQA7gn/kHTf0j5sshLUxW7G6nY70EPxjlXsX4g/POmyyqLg5JVEl5L5015tf8A Neq6uSSl3cO0PLqIlPGIH5RqozlMk+KRLsMUOGID6f8A+cLvJy22gax5unj/AH+oTCwsmIIIggo8 pHYq8jAfNMrbH0nirsVdirsVY7+YnlWPzZ5H1vy64BbUbWSOAsaBZ1HOBj/qyqpxV+bEsUkUrxSq UkjYq6HYhlNCDhQ9W/5xo1SJPzBm8u3TlbDzVp91pU/dVZ4zJG9PEGPiP9bJY5mMgR0U8noVr+S3 5hW9hrNrqWkqlhe6fcQPN9ZtnVZAvqQPxSRn2ljX9nN5qNTiyw4Qd/cXBlEx9Xd+PufMvxK3cMD8 iCM0LnPrDzh5G82/mBD5f846BYC8XWNHs5dQYzwRFbpU4yCksiE7Ab5udBrIQx8MjW/m4+WBJsMc u/yH/NC8uXur3QIru6loZLi4uLCaRqAKKvJKzGgAHXL5Z9KTZr/Sn9TARmOSleflh5t8k6Feea7n RIdO1PQ5bbUdJvIntjSS2k5Sxuts7MyPFyqDttmJqvAnH93zHlSRKUZC+ppkuv8Akuw/NOxTzt5E e3uv0nxfWtAmkjWSC8C/HUSUStf5qfzLUNsdLq4cAhlFgcjVs5x32O6QH8kfzFSVX1GyjsoHb95d S3NvJSvX4YpJHY/IZsY63Gdom/gXHmOEXJ5l+d2uWF/5si0zTW52Gg2yafG4NQzx1Mhr7E8D7rmi 1eTim3aWJEbPOW7Of+cd9L1HX/y7/MbQNOh+sX0/6JktoeSxhmWeVm+NyiCgjru2+DR5BDKJHl+x vyC40iPOnkLzX5Y/KrzP/iCy+prO1g1pSaGXkyXSq/8AcvJSgcdc2OtzwyYzwm6cMRIyRvz+54HY 3t1Y3tve2khiurWRJreVeqyRsGRh8iK5pXOfVOq6FD+cOiWfnrygYTr0kSQeYtEaVI5EuYl4c1Ls FAIX4eRFVoetRm20OtEI8M+XQtGWFnbmx9/yN/Nd3eR9GBeTiZXN3ZcmKDipY+tVqLsK9szY6zTg 2DufI/qazCTr7T/+VX+W7/XNXmh/xDcxNa6VZxOsvCV+5YckYrszcTQKKVq1Mq1WrHDt8HH4eOXC OXVR/Jfyp5h178itettFtjdXd5r0YMZkijrHBbxuzcpWQbM47/xzW6HJGGTilyp2GUXGgl/5keWd f8nflVe2Ot2v1S81TULdViEkUtYkUyK3KJnX7UbbVr7Zl6/PGcLibDiwj+8APQEvBc1Dmsg/L/RD rvnnQNICc1vtQtoZV6j02lX1CfYJUnFX01+YX5Yeftd/MPUdbm00foWW5QG6+sW21pCFj5+n6vP+ 7StONfaub7S6rHHGIg+r3Hm4mYGzLog/IWl6xr3nD81fMOlWhuL+K2Hl7SwzogMjgRXBV5GRQyei H3Pf3zW8UfHuW0QfuZYI1iA6196Sy+U/M/5e+WvMWv69a/UJxYPb6cVlhmJlnYIG/dPJx4uU6067 Zs9Tq4SxnhN0484HijE9T9zG/wAlvy+81az+XnmC/wBCsjdT6ne22ntWSGGltaqbmb4pnjryleHp /Lmt0E4QycUjVBzcoJFBO9b8va9+XfkfzHf65brZ6nf262OnxiWKRuNwxR2Bhdx/lUr+zmw1eqjL GeEuGYEzjH4vnZEeR1jQFnchVUdSTsBmidg/Sb8tvKieUvIeh+XQAJNPtUS5oeQNw/7ycg+BldiM CWSYq7FXYq7FXYq+N/8AnJr8itV0bXL3zroFs1zoGoyNcalDCpZrOd/ikdlH+6ZGq3LopJBp8NVX gFtc3FrcRXNtK0NxCwkhmjJV0dTVWVhuCDhBpBFsx/5XT+Z3/V9k/wCRUH/VPL/zOTvcf8rj7mFy yPLK8sh5PIxZ28STUnKHIZJof5l+edC09dO0rV5beyjJaODjHIqljU8fUVyorvQbZbDNOIoFqngh I2RumH/K6fzO/wCr7J/yKt/+qeS/M5O9h+Vx9yhf/m3+Yl/Y3Fjd6zJLa3Ubw3EXpwjlHIpVlqqA 7g0wHUTIolI02MGwEj0LzLr+g3JudHv5rGVqczCxCuB0Dr9lgP8AKGVxmY8i2zhGWxFp5efm7+ZF 5bPbT67P6Ugo/piOJqf68aqw+g5YdRM9WoabGDdMQylvTXy95p8weXbp7rRb2SynkXhIUoQy9aMr BlPtUZKEzE2CxnjjIUQmetfmb561vTZtM1TVXubG44+tAY4VDcGDruiKdmUHrk5Z5yFEsI4IRNgM XyptTLQvMeu6Ddm70e+lsZ2HF2iagZetHU/Cw9iMlGZibBYzhGQoi2Sf8rp/M7/q+yf8irf/AKp5 b+Zyd7T+Vx9zGtc8xa5r159c1i9lvbgDirytXita8VX7Kj2AyqUzI2S3QgIigKRvlzz15t8txTRa JqUlnFOQ0sShHQsBTlxkVgD7jDDLKPIscmGM/qC/zF+YPnHzHZx2Wtak95axSCZImSNAJApUN8Cr 2Y4Z5pSFEohhhA2Ax7K21Vtrm4tbiK5tpWhuIWEkM0ZKujqaqysNwQcQaUi2Y/8AK6fzO/6vsn/I qD/qnl/5nJ3uP+Vx9yTaJ5582aHeXd5pepS21xfEteMOLiRixbkyuGXlUneldzlccsomwWyeKMhR CJ138yfO+vae2natqsl1ZOyu8JSJAShqteCqdjhnmnIUSiGCETYCH8uee/NvluGaHRNSks4Z2Dyx AI6FgKcuMisAadSMEMso8inJhjP6gv8AMX5gecPMdpHZ61qT3ltFJ6qRMsaKHAKhvgVamjHrhnll LYlEMMIGwHrv/ONH5F6rr2v2XnHXrZ7by7pzrc2CSrQ3s6GsfBW/3SjDkzdGpxFd6VNz7OxV2Kux V2KuxV2KuxVgWtfkN+UGs3jXl95XtPrDmrtb+pahj4lbd4lJPc0xVL/+hafyQ/6liP8A6Sbz/qti rv8AoWn8kP8AqWI/+km8/wCq2Ku/6Fp/JD/qWI/+km8/6rYq7/oWn8kP+pYj/wCkm8/6rYq7/oWn 8kP+pYj/AOkm8/6rYq7/AKFp/JD/AKliP/pJvP8Aqtirv+hafyQ/6liP/pJvP+q2Ku/6Fp/JD/qW I/8ApJvP+q2Ku/6Fp/JD/qWI/wDpJvP+q2Ku/wChafyQ/wCpYj/6Sbz/AKrYq7/oWn8kP+pYj/6S bz/qtirv+hafyQ/6liP/AKSbz/qtirv+hafyQ/6liP8A6Sbz/qtirv8AoWn8kP8AqWI/+km8/wCq 2Ku/6Fp/JD/qWI/+km8/6rYq7/oWn8kP+pYj/wCkm8/6rYq7/oWn8kP+pYj/AOkm8/6rYq7/AKFp /JD/AKliP/pJvP8Aqtirv+hafyQ/6liP/pJvP+q2Ku/6Fp/JD/qWI/8ApJvP+q2Ku/6Fp/JD/qWI /wDpJvP+q2Ku/wChafyQ/wCpYj/6Sbz/AKrYqj9G/IT8n9Hu1u7LyvaGdfsm49S6UHxCXDyrX3pi rPgAAABQDYAYq7FXYq7FX//Z</xapGImg:image> + </rdf:li> + </rdf:Alt> + </xap:Thumbnails> + </rdf:Description> + <rdf:Description rdf:about="" + xmlns:xapMM="http://ns.adobe.com/xap/1.0/mm/" + xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#"> + <xapMM:DocumentID>uuid:1D5AD7E5EB1D11DA9AE8AF786C667F62</xapMM:DocumentID> + <xapMM:InstanceID>uuid:1D5AD7E6EB1D11DA9AE8AF786C667F62</xapMM:InstanceID> + <xapMM:DerivedFrom rdf:parseType="Resource"> + <stRef:instanceID>uuid:1D5AD7E4EB1D11DA9AE8AF786C667F62</stRef:instanceID> + <stRef:documentID>uuid:3340611AEB1C11DA9AE8AF786C667F62</stRef:documentID> + </xapMM:DerivedFrom> + </rdf:Description> + </rdf:RDF> +</x:xmpmeta> + + + + + + + + + + + + + + + + + + + + + +<?xpacket end="w"?> % &&end XMP packet marker&& [{ai_metadata_stream_123} <</Type /Metadata /Subtype /XML>> /PUT AI11_PDFMark5 [/Document 1 dict begin /Metadata {ai_metadata_stream_123} def currentdict end /BDC AI11_PDFMark5 %AI12_RMC_Transparency: Balance=75 RasterRes=300 GradRes=150 Text=0 Stroke=1 Clip=1 OP=0 Adobe_AGM_Utils begin Adobe_AGM_Core/page_setup get exec Adobe_AGM_Core/capture_currentpagedevice get exec Adobe_CoolType_Core/page_setup get exec Adobe_AGM_Image/page_setup get exec %%EndPageSetup Adobe_AGM_Core/AGMCORE_save save ddf 1 -1 scale 0 -101.391 translate [1 0 0 1 0 0 ] concat % page clip gsave newpath gsave % PSGState 0 0 mo 0 101.391 li 299.717 101.391 li 299.717 0 li cp clp [1 0 0 1 0 0 ] concat 11.7164 lw 0 lc 0 lj 4 ml [] 0 dsh true sadj 44.6758 95.5317 mo 38.2314 95.5317 31.2729 90.5361 29.2124 84.4307 cv 6.44043 16.9595 li 4.37988 10.854 7.96631 5.8584 14.4102 5.8584 cv 285.291 5.8584 li 291.735 5.8584 295.332 10.8574 293.283 16.9673 cv 270.665 84.4238 li 268.616 90.5337 261.668 95.5322 255.224 95.5322 cv 44.6758 95.5317 li cp false sop /0 [/DeviceCMYK] /CSA add_res 0 0 0 0 cmyk @ 44.6758 95.5317 mo 38.2314 95.5317 31.2729 90.5361 29.2124 84.4307 cv 6.44043 16.9595 li 4.37988 10.854 7.96631 5.8584 14.4102 5.8584 cv 285.291 5.8584 li 291.735 5.8584 295.332 10.8574 293.283 16.9673 cv 270.665 84.4238 li 268.616 90.5337 261.668 95.5322 255.224 95.5322 cv 44.6758 95.5317 li cp 0.74902 0.678431 0.670588 0.901961 cmyk f 160.848 76.3174 mo 160 74.8833 159.59 73.1943 159.623 71.2451 cv 160.238 34.0518 li 160.272 32.0176 160.801 30.2876 161.828 28.8623 cv 162.861 27.4385 164.08 26.7251 165.477 26.7241 cv 166.125 26.7241 166.721 26.875 167.271 27.1636 cv 167.217 27.0767 167.169 26.9873 167.113 26.9019 cv 166.16 25.4805 164.963 24.77 163.524 24.771 cv 162.127 24.7725 160.909 25.4858 159.875 26.9097 cv 158.849 28.3345 158.319 30.0649 158.285 32.0991 cv 157.67 69.293 li 157.636 71.269 158.058 72.9805 158.929 74.4272 cv 159.489 75.3652 160.128 75.9912 160.848 76.3174 cv cp 174.544 19.979 mo 174.543 19.9805 li 174.549 19.9854 174.555 19.9897 174.559 19.9951 cv 174.544 19.979 li cp 178.01 23.8306 mo 177.537 23.105 177.031 22.4731 176.495 21.9316 cv 176.496 21.9316 li 174.561 19.9961 li 175.09 20.5337 175.589 21.1606 176.058 21.8779 cv 177.906 24.7446 178.699 28.1465 178.451 32.085 cv 176.187 69.2324 li 175.939 73.1714 174.835 76.5811 172.893 79.4619 cv 170.976 82.3438 168.813 83.7959 166.385 83.8159 cv 157.423 83.8159 li 155.724 83.8301 154.193 83.1323 152.817 81.7539 cv 152.802 81.7593 li 154.755 83.7119 li 154.757 83.6953 li 156.137 85.0815 157.671 85.7827 159.376 85.7686 cv 168.338 85.7686 li 170.766 85.7495 172.928 84.2979 174.846 81.4146 cv 176.788 78.5337 177.893 75.124 178.139 71.1855 cv 180.404 34.0376 li 180.651 30.0991 179.859 26.6973 178.01 23.8306 cv cp 0.368627 0.043137 0 0 cmyk f 1.30182 lw 1 ml 160.848 76.3174 mo 160 74.8833 159.59 73.1943 159.623 71.2451 cv 160.238 34.0518 li 160.272 32.0176 160.801 30.2876 161.828 28.8623 cv 162.861 27.4385 164.08 26.7251 165.477 26.7241 cv 166.125 26.7241 166.721 26.875 167.271 27.1636 cv 167.217 27.0767 167.169 26.9873 167.113 26.9019 cv 166.16 25.4805 164.963 24.77 163.524 24.771 cv 162.127 24.7725 160.909 25.4858 159.875 26.9097 cv 158.849 28.3345 158.319 30.0649 158.285 32.0991 cv 157.67 69.293 li 157.636 71.269 158.058 72.9805 158.929 74.4272 cv 159.489 75.3652 160.128 75.9912 160.848 76.3174 cv cp 174.544 19.979 mo 174.543 19.9805 li 174.549 19.9854 174.555 19.9897 174.559 19.9951 cv 174.544 19.979 li cp 178.01 23.8306 mo 177.537 23.105 177.031 22.4731 176.495 21.9316 cv 176.496 21.9316 li 174.561 19.9961 li 175.09 20.5337 175.589 21.1606 176.058 21.8779 cv 177.906 24.7446 178.699 28.1465 178.451 32.085 cv 176.187 69.2324 li 175.939 73.1714 174.835 76.5811 172.893 79.4619 cv 170.976 82.3438 168.813 83.7959 166.385 83.8159 cv 157.423 83.8159 li 155.724 83.8301 154.193 83.1323 152.817 81.7539 cv 152.802 81.7593 li 154.755 83.7119 li 154.757 83.6953 li 156.137 85.0815 157.671 85.7827 159.376 85.7686 cv 168.338 85.7686 li 170.766 85.7495 172.928 84.2979 174.846 81.4146 cv 176.788 78.5337 177.893 75.124 178.139 71.1855 cv 180.404 34.0376 li 180.651 30.0991 179.859 26.6973 178.01 23.8306 cv cp 0.368627 0.039216 0 0 cmyk @ 236.682 17.5757 mo 222.922 83.8159 li 214.029 83.8159 li 215.982 85.7686 li 224.874 85.7686 li 238.635 19.5283 li 236.682 17.5757 li cp 0.368627 0.043137 0 0 cmyk f 236.682 17.5757 mo 222.922 83.8159 li 214.029 83.8159 li 215.982 85.7686 li 224.874 85.7686 li 238.635 19.5283 li 236.682 17.5757 li cp 0.368627 0.039216 0 0 cmyk @ 254.912 55.3833 mo 255.456 53.4189 li 245.832 53.4609 li 238.078 83.8159 li 229.116 83.8159 li 231.069 85.7686 li 240.031 85.7686 li 247.785 55.4136 li 254.912 55.3833 li cp 273.957 23.7759 mo 273.526 22.7217 272.979 21.8647 272.314 21.2031 cv 272.316 21.2026 li 272.303 21.1899 li 272.301 21.1885 272.301 21.1875 272.299 21.186 cv 270.363 19.25 li 270.362 19.252 li 271.025 19.9136 271.574 20.7695 272.004 21.8232 cv 273.133 24.6543 273.068 28.0142 271.832 31.9033 cv 255.932 83.8159 li 247.04 83.8159 li 248.992 85.7686 li 257.885 85.7686 li 273.785 33.856 li 275.021 29.9673 275.085 26.6069 273.957 23.7759 cv cp 253.621 33.8804 mo 254.166 31.8677 255.129 30.1577 256.514 28.749 cv 257.905 27.3394 259.302 26.6348 260.699 26.6338 cv 261.102 26.6338 261.467 26.6948 261.804 26.8042 cv 261.801 26.7988 261.8 26.7939 261.798 26.7886 cv 261.203 25.3828 260.184 24.6797 258.746 24.6812 cv 257.35 24.6821 255.953 25.3867 254.561 26.7964 cv 253.176 28.2051 252.214 29.915 251.668 31.9272 cv 247.789 46.2388 li 250.273 46.231 li 253.621 33.8804 li cp 215.012 21.5903 mo 215.029 21.5854 li 213.077 19.6323 li 213.07 19.6489 li 213.682 20.2573 214.244 20.9839 214.739 21.8613 cv 216.326 24.7178 216.807 28.106 216.199 32.0293 cv 215.088 39.2134 li 214.48 43.1377 213 46.5308 210.666 49.394 cv 208.357 52.2598 205.908 53.6973 203.301 53.709 cv 193.678 53.751 li 190.544 83.8159 li 181.582 83.8159 li 183.535 85.7686 li 192.497 85.7686 li 195.63 55.7036 li 205.254 55.6616 li 207.861 55.6499 210.311 54.2124 212.619 51.3467 cv 214.953 48.4839 216.434 45.0908 217.04 41.166 cv 218.152 33.9819 li 218.76 30.0586 218.279 26.6704 216.691 23.814 cv 216.193 22.9302 215.629 22.2007 215.012 21.5903 cv cp 198.781 26.6958 mo 203.896 26.6909 li 204.443 26.6909 204.947 26.7949 205.407 27.001 cv 205.383 26.9551 205.361 26.9077 205.336 26.8623 cv 204.514 25.4448 203.381 24.7368 201.943 24.7383 cv 196.828 24.7432 li 194.469 46.4697 li 196.634 46.4629 li 198.781 26.6958 li cp 0.368627 0.043137 0 0 cmyk f 254.912 55.3833 mo 255.456 53.4189 li 245.832 53.4609 li 238.078 83.8159 li 229.116 83.8159 li 231.069 85.7686 li 240.031 85.7686 li 247.785 55.4136 li 254.912 55.3833 li cp 273.957 23.7759 mo 273.526 22.7217 272.979 21.8647 272.314 21.2031 cv 272.316 21.2026 li 272.303 21.1899 li 272.301 21.1885 272.301 21.1875 272.299 21.186 cv 270.363 19.25 li 270.362 19.252 li 271.025 19.9136 271.574 20.7695 272.004 21.8232 cv 273.133 24.6543 273.068 28.0142 271.832 31.9033 cv 255.932 83.8159 li 247.04 83.8159 li 248.992 85.7686 li 257.885 85.7686 li 273.785 33.856 li 275.021 29.9673 275.085 26.6069 273.957 23.7759 cv cp 253.621 33.8804 mo 254.166 31.8677 255.129 30.1577 256.514 28.749 cv 257.905 27.3394 259.302 26.6348 260.699 26.6338 cv 261.102 26.6338 261.467 26.6948 261.804 26.8042 cv 261.801 26.7988 261.8 26.7939 261.798 26.7886 cv 261.203 25.3828 260.184 24.6797 258.746 24.6812 cv 257.35 24.6821 255.953 25.3867 254.561 26.7964 cv 253.176 28.2051 252.214 29.915 251.668 31.9272 cv 247.789 46.2388 li 250.273 46.231 li 253.621 33.8804 li cp 215.012 21.5903 mo 215.029 21.5854 li 213.077 19.6323 li 213.07 19.6489 li 213.682 20.2573 214.244 20.9839 214.739 21.8613 cv 216.326 24.7178 216.807 28.106 216.199 32.0293 cv 215.088 39.2134 li 214.48 43.1377 213 46.5308 210.666 49.394 cv 208.357 52.2598 205.908 53.6973 203.301 53.709 cv 193.678 53.751 li 190.544 83.8159 li 181.582 83.8159 li 183.535 85.7686 li 192.497 85.7686 li 195.63 55.7036 li 205.254 55.6616 li 207.861 55.6499 210.311 54.2124 212.619 51.3467 cv 214.953 48.4839 216.434 45.0908 217.04 41.166 cv 218.152 33.9819 li 218.76 30.0586 218.279 26.6704 216.691 23.814 cv 216.193 22.9302 215.629 22.2007 215.012 21.5903 cv cp 198.781 26.6958 mo 203.896 26.6909 li 204.443 26.6909 204.947 26.7949 205.407 27.001 cv 205.383 26.9551 205.361 26.9077 205.336 26.8623 cv 204.514 25.4448 203.381 24.7368 201.943 24.7383 cv 196.828 24.7432 li 194.469 46.4697 li 196.634 46.4629 li 198.781 26.6958 li cp 0.368627 0.039216 0 0 cmyk @ 18.2988 24.8945 mo 20.2515 26.8472 li 29.1294 26.8398 li 28.5698 24.8857 li 18.2988 24.8945 li cp 0.368627 0.043137 0 0 cmyk f 18.2988 24.8945 mo 20.2515 26.8472 li 29.1294 26.8398 li 28.5698 24.8857 li 18.2988 24.8945 li cp 0.368627 0.039216 0 0 cmyk @ 40.7334 26.8301 mo 51.0049 26.8218 li 49.2417 19.5278 li 47.2891 17.5747 li 49.0522 24.8691 li 38.7808 24.8774 li 54.3364 83.8159 li 45.4443 83.8159 li 47.397 85.7686 li 56.2891 85.7686 li 40.7334 26.8301 li cp 0.368627 0.043137 0 0 cmyk f 40.7334 26.8301 mo 51.0049 26.8218 li 49.2417 19.5278 li 47.2891 17.5747 li 49.0522 24.8691 li 38.7808 24.8774 li 54.3364 83.8159 li 45.4443 83.8159 li 47.397 85.7686 li 56.2891 85.7686 li 40.7334 26.8301 li cp 0.368627 0.039216 0 0 cmyk @ 90.7246 78.4995 mo 88.772 76.5454 li 90.043 83.8159 li 67.6914 83.8159 li 69.644 85.7686 li 91.9956 85.7686 li 90.7246 78.4995 li cp 80.7324 48.8525 mo 78.7798 46.8999 li 80.1538 54.2886 li 70.5479 54.3306 li 75.1357 76.3481 li 76.686 76.3701 li 72.5005 56.2832 li 82.1064 56.2412 li 80.7324 48.8525 li cp 69.0068 46.9326 mo 70.5513 46.9277 li 66.3594 26.8096 li 81.7354 26.7979 li 80.4639 19.5278 li 78.5112 17.5747 li 79.7827 24.8447 li 64.4067 24.8569 li 69.0068 46.9326 li cp 0.368627 0.043137 0 0 cmyk f 90.7246 78.4995 mo 88.772 76.5454 li 90.043 83.8159 li 67.6914 83.8159 li 69.644 85.7686 li 91.9956 85.7686 li 90.7246 78.4995 li cp 80.7324 48.8525 mo 78.7798 46.8999 li 80.1538 54.2886 li 70.5479 54.3306 li 75.1357 76.3481 li 76.686 76.3701 li 72.5005 56.2832 li 82.1064 56.2412 li 80.7324 48.8525 li cp 69.0068 46.9326 mo 70.5513 46.9277 li 66.3594 26.8096 li 81.7354 26.7979 li 80.4639 19.5278 li 78.5112 17.5747 li 79.7827 24.8447 li 64.4067 24.8569 li 69.0068 46.9326 li cp 0.368627 0.039216 0 0 cmyk @ 115.955 71.0776 mo 115.609 67.4888 li 115.256 63.812 113.992 59.8911 111.8 56.689 cv 99.4316 39.376 li 98.2632 37.7417 97.5591 36.0186 97.3237 34.2056 cv 97.0015 31.731 97.2075 29.875 97.9463 28.6362 cv 98.6899 27.3984 99.9658 26.7778 101.77 26.7769 cv 102.477 26.7759 103.125 26.9351 103.715 27.2515 cv 102.71 25.6343 101.413 24.8232 99.8169 24.8237 cv 98.0132 24.8252 96.7373 25.4458 95.9937 26.6831 cv 95.2549 27.9224 95.0488 29.7783 95.3711 32.2529 cv 95.6064 34.0659 96.3105 35.7891 97.479 37.4233 cv 109.848 54.7358 li 112.04 57.9385 113.303 61.8594 113.656 65.5347 cv 114.002 69.1235 li 114.385 73.0913 113.824 76.0444 112.338 78.9458 cv 110.877 81.8491 108.925 83.7959 106.459 83.8159 cv 102.01 83.8159 li 99.4351 83.8364 97.2817 82.9619 95.5396 81.1475 cv 95.5337 81.1465 li 97.4868 83.0991 li 97.4868 83.0952 li 99.2295 84.9146 101.384 85.7905 103.963 85.7686 cv 108.412 85.7686 li 110.877 85.7485 112.83 83.8032 114.291 80.8999 cv 115.776 77.9971 116.337 75.0454 115.955 71.0776 cv cp 105.711 20.3496 mo 105.708 20.3496 li 105.716 20.3574 105.726 20.3638 105.733 20.3726 cv 105.711 20.3496 li cp 97.7358 75.0298 mo 98.0869 75.3682 98.4399 75.644 98.7939 75.873 cv 98.2041 74.9399 97.8057 73.7842 97.6094 72.396 cv 97.5679 72.1011 97.5093 71.6875 97.4346 71.1563 cv 95.4819 69.2036 li 95.5566 69.7339 95.6152 70.147 95.6567 70.4419 cv 95.9399 72.4468 96.6343 73.9761 97.7358 75.0298 cv cp 112.447 34.1807 mo 111.691 28.7261 110.121 24.8018 107.744 22.3926 cv 107.754 22.3926 li 105.751 20.3892 li 108.152 22.7935 109.734 26.7397 110.495 32.228 cv 105.474 32.2363 li 107.426 34.189 li 112.447 34.1807 li cp 0.368627 0.043137 0 0 cmyk f 115.955 71.0776 mo 115.609 67.4888 li 115.256 63.812 113.992 59.8911 111.8 56.689 cv 99.4316 39.376 li 98.2632 37.7417 97.5591 36.0186 97.3237 34.2056 cv 97.0015 31.731 97.2075 29.875 97.9463 28.6362 cv 98.6899 27.3984 99.9658 26.7778 101.77 26.7769 cv 102.477 26.7759 103.125 26.9351 103.715 27.2515 cv 102.71 25.6343 101.413 24.8232 99.8169 24.8237 cv 98.0132 24.8252 96.7373 25.4458 95.9937 26.6831 cv 95.2549 27.9224 95.0488 29.7783 95.3711 32.2529 cv 95.6064 34.0659 96.3105 35.7891 97.479 37.4233 cv 109.848 54.7358 li 112.04 57.9385 113.303 61.8594 113.656 65.5347 cv 114.002 69.1235 li 114.385 73.0913 113.824 76.0444 112.338 78.9458 cv 110.877 81.8491 108.925 83.7959 106.459 83.8159 cv 102.01 83.8159 li 99.4351 83.8364 97.2817 82.9619 95.5396 81.1475 cv 95.5337 81.1465 li 97.4868 83.0991 li 97.4868 83.0952 li 99.2295 84.9146 101.384 85.7905 103.963 85.7686 cv 108.412 85.7686 li 110.877 85.7485 112.83 83.8032 114.291 80.8999 cv 115.776 77.9971 116.337 75.0454 115.955 71.0776 cv cp 105.711 20.3496 mo 105.708 20.3496 li 105.716 20.3574 105.726 20.3638 105.733 20.3726 cv 105.711 20.3496 li cp 97.7358 75.0298 mo 98.0869 75.3682 98.4399 75.644 98.7939 75.873 cv 98.2041 74.9399 97.8057 73.7842 97.6094 72.396 cv 97.5679 72.1011 97.5093 71.6875 97.4346 71.1563 cv 95.4819 69.2036 li 95.5566 69.7339 95.6152 70.147 95.6567 70.4419 cv 95.9399 72.4468 96.6343 73.9761 97.7358 75.0298 cv cp 112.447 34.1807 mo 111.691 28.7261 110.121 24.8018 107.744 22.3926 cv 107.754 22.3926 li 105.751 20.3892 li 108.152 22.7935 109.734 26.7397 110.495 32.228 cv 105.474 32.2363 li 107.426 34.189 li 112.447 34.1807 li cp 0.368627 0.039216 0 0 cmyk @ 145.658 26.7397 mo 145.535 19.5278 li 143.582 17.5747 li 143.705 24.7871 li 133.434 24.7954 li 135.757 83.8159 li 126.865 83.8159 li 128.818 85.7686 li 137.709 85.7686 li 135.387 26.748 li 145.658 26.7397 li cp 112.952 24.812 mo 114.905 26.7646 li 123.344 26.7583 li 123.223 24.8037 li 112.952 24.812 li cp 0.352941 0.101961 0 0 cmyk f 145.658 26.7397 mo 145.535 19.5278 li 143.582 17.5747 li 143.705 24.7871 li 133.434 24.7954 li 135.757 83.8159 li 126.865 83.8159 li 128.818 85.7686 li 137.709 85.7686 li 135.387 26.748 li 145.658 26.7397 li cp 112.952 24.812 mo 114.905 26.7646 li 123.344 26.7583 li 123.223 24.8037 li 112.952 24.812 li cp 0.368627 0.039216 0 0 cmyk @ 45.4443 83.8159 mo 28.5698 24.8857 li 18.2988 24.894 li 16.0439 17.5747 li 47.2891 17.5747 li 49.0522 24.8691 li 38.7808 24.8774 li 54.3364 83.8159 li 45.4443 83.8159 li cp 0 0 0 0 cmyk f 0.650912 lw 4 ml 45.4443 83.8159 mo 28.5698 24.8857 li 18.2988 24.894 li 16.0439 17.5747 li 47.2891 17.5747 li 49.0522 24.8691 li 38.7808 24.8774 li 54.3364 83.8159 li 45.4443 83.8159 li cp @ 67.6914 83.8159 mo 52.4341 17.5747 li 78.5112 17.5747 li 79.7827 24.8447 li 64.4067 24.8569 li 69.0068 46.9326 li 78.7798 46.8999 li 80.1538 54.2881 li 70.5479 54.3301 li 75.1357 76.3481 li 88.772 76.5459 li 90.043 83.8159 li 67.6914 83.8159 li cp f 67.6914 83.8159 mo 52.4341 17.5747 li 78.5112 17.5747 li 79.7827 24.8447 li 64.4067 24.8569 li 69.0068 46.9326 li 78.7798 46.8999 li 80.1538 54.2881 li 70.5479 54.3301 li 75.1357 76.3481 li 88.772 76.5459 li 90.043 83.8159 li 67.6914 83.8159 li cp @ 110.495 32.228 mo 105.474 32.2363 li 104.493 27.2935 102.605 24.8223 99.8174 24.8237 cv 98.0132 24.8252 96.7373 25.4458 95.9937 26.6831 cv 95.2549 27.9224 95.0488 29.7783 95.3706 32.2529 cv 95.6064 34.0659 96.3105 35.7891 97.4785 37.4233 cv 109.847 54.7354 li 112.04 57.938 113.303 61.8594 113.657 65.5352 cv 114.002 69.124 li 114.385 73.0918 113.824 76.0444 112.338 78.9463 cv 110.877 81.8501 108.925 83.7959 106.459 83.8159 cv 102.01 83.8159 li 99.0439 83.8408 96.6362 82.6802 94.7734 80.2588 cv 92.8916 77.8364 91.5684 74.1611 90.8159 69.2329 cv 95.4819 69.2036 li 95.5566 69.7344 95.6147 70.1475 95.6567 70.4424 cv 95.9399 72.4468 96.6343 73.9766 97.7358 75.0308 cv 98.8325 76.085 99.9448 76.6079 101.077 76.5996 cv 102.67 76.5879 103.743 75.9473 104.296 74.6753 cv 104.854 73.4038 104.992 71.561 104.704 69.1465 cv 104.482 67.2769 103.828 65.5562 102.739 63.9834 cv 90.2451 46.1812 li 87.855 43.0278 86.3643 39.5781 85.7925 35.833 cv 85.2432 32.2339 li 84.6357 28.2544 85.1162 24.8164 86.7041 21.9189 cv 88.3179 19.0229 90.5723 17.5747 93.4492 17.5747 cv 98.6401 17.5747 li 105.185 17.5747 109.142 22.46 110.495 32.228 cv cp f 110.495 32.228 mo 105.474 32.2363 li 104.493 27.2935 102.605 24.8223 99.8174 24.8237 cv 98.0132 24.8252 96.7373 25.4458 95.9937 26.6831 cv 95.2549 27.9224 95.0488 29.7783 95.3706 32.2529 cv 95.6064 34.0659 96.3105 35.7891 97.4785 37.4233 cv 109.847 54.7354 li 112.04 57.938 113.303 61.8594 113.657 65.5352 cv 114.002 69.124 li 114.385 73.0918 113.824 76.0444 112.338 78.9463 cv 110.877 81.8501 108.925 83.7959 106.459 83.8159 cv 102.01 83.8159 li 99.0439 83.8408 96.6362 82.6802 94.7734 80.2588 cv 92.8916 77.8364 91.5684 74.1611 90.8159 69.2329 cv 95.4819 69.2036 li 95.5566 69.7344 95.6147 70.1475 95.6567 70.4424 cv 95.9399 72.4468 96.6343 73.9766 97.7358 75.0308 cv 98.8325 76.085 99.9448 76.6079 101.077 76.5996 cv 102.67 76.5879 103.743 75.9473 104.296 74.6753 cv 104.854 73.4038 104.992 71.561 104.704 69.1465 cv 104.482 67.2769 103.828 65.5562 102.739 63.9834 cv 90.2451 46.1812 li 87.855 43.0278 86.3643 39.5781 85.7925 35.833 cv 85.2432 32.2339 li 84.6357 28.2544 85.1162 24.8164 86.7041 21.9189 cv 88.3179 19.0229 90.5723 17.5747 93.4492 17.5747 cv 98.6401 17.5747 li 105.185 17.5747 109.142 22.46 110.495 32.228 cv cp @ 126.865 83.8159 mo 123.224 24.8037 li 112.952 24.812 li 112.336 17.5747 li 143.581 17.5747 li 143.705 24.7871 li 133.434 24.7954 li 135.757 83.8159 li 126.865 83.8159 li cp f 126.865 83.8159 mo 123.224 24.8037 li 112.952 24.812 li 112.336 17.5747 li 143.581 17.5747 li 143.705 24.7871 li 133.434 24.7954 li 135.757 83.8159 li 126.865 83.8159 li cp @ 158.285 32.0986 mo 157.67 69.2925 li 157.636 71.269 158.058 72.9805 158.929 74.4272 cv 159.793 75.8735 160.842 76.5918 162.082 76.583 cv 163.356 76.5732 164.465 75.915 165.412 74.4575 cv 166.365 72.9995 166.885 71.2837 166.964 69.3096 cv 168.408 32.082 li 168.489 30.0503 168.059 28.3237 167.113 26.9019 cv 166.16 25.4805 164.963 24.77 163.524 24.771 cv 162.127 24.772 160.909 25.4849 159.875 26.9097 cv 158.849 28.3345 158.319 30.0645 158.285 32.0986 cv cp 158.532 17.5747 mo 168.987 17.5747 li 171.82 17.5747 174.184 19.0098 176.058 21.877 cv 177.906 24.7437 178.699 28.1465 178.451 32.0845 cv 176.187 69.2324 li 175.939 73.1714 174.835 76.5811 172.893 79.4619 cv 170.976 82.3447 168.813 83.7964 166.385 83.8159 cv 157.423 83.8159 li 154.991 83.8364 152.896 82.4312 151.122 79.5977 cv 149.321 76.7642 148.399 73.3418 148.375 69.3315 cv 148.162 32.1348 li 148.138 28.1245 149.135 24.6948 151.171 21.8452 cv 153.233 18.998 155.694 17.5747 158.532 17.5747 cv cp f 158.285 32.0986 mo 157.67 69.2925 li 157.636 71.269 158.058 72.9805 158.929 74.4272 cv 159.793 75.8735 160.842 76.5918 162.082 76.583 cv 163.356 76.5732 164.465 75.915 165.412 74.4575 cv 166.365 72.9995 166.885 71.2837 166.964 69.3096 cv 168.408 32.082 li 168.489 30.0503 168.059 28.3237 167.113 26.9019 cv 166.16 25.4805 164.963 24.77 163.524 24.771 cv 162.127 24.772 160.909 25.4849 159.875 26.9097 cv 158.849 28.3345 158.319 30.0645 158.285 32.0986 cv cp 158.532 17.5747 mo 168.987 17.5747 li 171.82 17.5747 174.184 19.0098 176.058 21.877 cv 177.906 24.7437 178.699 28.1465 178.451 32.0845 cv 176.187 69.2324 li 175.939 73.1714 174.835 76.5811 172.893 79.4619 cv 170.976 82.3447 168.813 83.7964 166.385 83.8159 cv 157.423 83.8159 li 154.991 83.8364 152.896 82.4312 151.122 79.5977 cv 149.321 76.7642 148.399 73.3418 148.375 69.3315 cv 148.162 32.1348 li 148.138 28.1245 149.135 24.6948 151.171 21.8452 cv 153.233 18.998 155.694 17.5747 158.532 17.5747 cv cp @ 194.469 46.4697 mo 199.334 46.4536 li 200.703 46.4492 201.954 45.7363 203.096 44.3149 cv 204.243 42.8936 204.949 41.1997 205.209 39.2319 cv 206.158 32.0259 li 206.425 30 206.152 28.2798 205.336 26.8623 cv 204.514 25.4448 203.381 24.7368 201.943 24.7383 cv 196.828 24.7427 li 194.469 46.4697 li cp 181.582 83.8159 mo 187.152 17.5747 li 208.063 17.5747 li 210.895 17.5747 213.127 19.0044 214.739 21.8613 cv 216.326 24.7173 216.807 28.106 216.199 32.0293 cv 215.088 39.2134 li 214.48 43.1372 213 46.5303 210.666 49.3936 cv 208.357 52.2588 205.908 53.6973 203.301 53.709 cv 193.678 53.75 li 190.544 83.8159 li 181.582 83.8159 li cp f 194.469 46.4697 mo 199.334 46.4536 li 200.703 46.4492 201.954 45.7363 203.096 44.3149 cv 204.243 42.8936 204.949 41.1997 205.209 39.2319 cv 206.158 32.0259 li 206.425 30 206.152 28.2798 205.336 26.8623 cv 204.514 25.4448 203.381 24.7368 201.943 24.7383 cv 196.828 24.7427 li 194.469 46.4697 li cp 181.582 83.8159 mo 187.152 17.5747 li 208.063 17.5747 li 210.895 17.5747 213.127 19.0044 214.739 21.8613 cv 216.326 24.7173 216.807 28.106 216.199 32.0293 cv 215.088 39.2134 li 214.48 43.1372 213 46.5303 210.666 49.3936 cv 208.357 52.2588 205.908 53.6973 203.301 53.709 cv 193.678 53.75 li 190.544 83.8159 li 181.582 83.8159 li cp @ 214.029 83.8159 mo 226.309 17.5747 li 236.682 17.5747 li 222.922 83.8159 li 214.029 83.8159 li cp f 214.029 83.8159 mo 226.309 17.5747 li 236.682 17.5747 li 222.922 83.8159 li 214.029 83.8159 li cp @ 247.789 46.2388 mo 257.581 46.2056 li 261.791 31.9102 li 262.383 29.9009 262.387 28.1943 261.798 26.7881 cv 261.203 25.3818 260.184 24.6797 258.746 24.6812 cv 257.35 24.6816 255.953 25.3867 254.561 26.7959 cv 253.176 28.2051 252.214 29.915 251.668 31.9268 cv 247.789 46.2388 li cp 229.116 83.8159 mo 241.543 31.9521 li 242.523 27.9922 244.379 24.6055 247.129 21.792 cv 249.904 18.9805 252.721 17.5747 255.559 17.5747 cv 266.014 17.5747 li 268.846 17.5747 270.85 18.9912 272.004 21.8232 cv 273.133 24.6538 273.068 28.0137 271.832 31.9028 cv 255.932 83.8159 li 247.04 83.8159 li 255.456 53.4189 li 245.832 53.4604 li 238.078 83.8159 li 229.116 83.8159 li cp f 247.789 46.2388 mo 257.581 46.2056 li 261.791 31.9102 li 262.383 29.9009 262.387 28.1943 261.798 26.7881 cv 261.203 25.3818 260.184 24.6797 258.746 24.6812 cv 257.35 24.6816 255.953 25.3867 254.561 26.7959 cv 253.176 28.2051 252.214 29.915 251.668 31.9268 cv 247.789 46.2388 li cp 229.116 83.8159 mo 241.543 31.9521 li 242.523 27.9922 244.379 24.6055 247.129 21.792 cv 249.904 18.9805 252.721 17.5747 255.559 17.5747 cv 266.014 17.5747 li 268.846 17.5747 270.85 18.9912 272.004 21.8232 cv 273.133 24.6538 273.068 28.0137 271.832 31.9028 cv 255.932 83.8159 li 247.04 83.8159 li 255.456 53.4189 li 245.832 53.4604 li 238.078 83.8159 li 229.116 83.8159 li cp @ 53.8027 81.7944 mo 38.7808 24.8774 li 49.0522 24.8691 li 47.7612 19.5278 li 19.8325 19.5278 li 21.4854 24.8911 li 28.5698 24.8857 li 29.0044 26.4019 li 31.6074 26.3999 li 47.4692 81.7944 li 53.8027 81.7944 li cp 0.882353 0.768627 0 0 cmyk f 69.8291 81.7944 mo 89.6895 81.7944 li 88.772 76.5459 li 75.1357 76.3481 li 70.5479 54.3301 li 72.5649 54.3208 li 72.5142 54.0767 li 80.1084 54.0439 li 78.8164 47.0972 li 71.0654 47.124 li 71.0244 46.9258 li 69.0068 46.9326 li 64.4067 24.8569 li 79.7827 24.8447 li 78.8525 19.5278 li 55.4873 19.5278 li 69.8291 81.7944 li cp f 114.002 69.124 mo 113.657 65.5352 li 113.303 61.8594 112.04 57.938 109.847 54.7354 cv 97.4785 37.4233 li 96.3105 35.7891 95.6064 34.0659 95.3706 32.2529 cv 95.0488 29.7783 95.2549 27.9224 95.9937 26.6831 cv 96.7373 25.4458 98.0132 24.8252 99.8174 24.8237 cv 101.18 24.8228 102.326 25.417 103.257 26.5977 cv 104.929 27.2441 106.15 29.126 106.921 32.2339 cv 110.495 32.228 li 109.848 27.5601 108.6 24.02 106.766 21.582 cv 105.118 20.2178 103.111 19.5278 100.74 19.5278 cv 95.8608 19.5278 li 93.1563 19.5278 91.0371 20.8887 89.52 23.6113 cv 88.0273 26.3345 87.5762 29.5664 88.147 33.3066 cv 88.6631 36.6904 li 89.2007 40.2104 90.6021 43.4536 92.8486 46.417 cv 104.593 63.1514 li 105.617 64.6299 106.231 66.2471 106.44 68.0049 cv 106.71 70.2749 106.581 72.0068 106.057 73.2017 cv 105.688 74.0498 105.068 74.5933 104.208 74.8452 cv 103.634 75.9995 102.595 76.5889 101.077 76.5996 cv 99.9448 76.6079 98.8325 76.085 97.7358 75.0308 cv 96.6343 73.9766 95.9399 72.4468 95.6567 70.4424 cv 95.6147 70.1475 95.5566 69.7344 95.4819 69.2036 cv 93.5801 69.2158 li 94.3105 73.2773 95.4849 76.3643 97.1055 78.4507 cv 98.8564 80.7266 101.12 81.8174 103.908 81.7944 cv 108.09 81.7944 li 109.5 81.7827 110.731 81.0981 111.788 79.9512 cv 111.979 79.6309 112.162 79.2959 112.338 78.9463 cv 113.824 76.0444 114.385 73.0918 114.002 69.124 cv cp f 135.677 81.7944 mo 133.434 24.7954 li 143.705 24.7871 li 143.615 19.5278 li 115.687 19.5278 li 116.136 24.8096 li 123.224 24.8037 li 123.317 26.3247 li 125.921 26.3228 li 129.344 81.7944 li 135.677 81.7944 li cp f 169.805 33.1636 mo 168.445 68.1577 li 168.372 70.0142 167.884 71.6274 166.987 72.9966 cv 166.47 73.7935 165.898 74.3291 165.279 74.6455 cv 164.361 75.9658 163.298 76.5742 162.082 76.583 cv 160.842 76.5918 159.793 75.8735 158.929 74.4272 cv 158.058 72.9805 157.636 71.269 157.67 69.2925 cv 158.285 32.0986 li 158.319 30.0645 158.849 28.3345 159.875 26.9097 cv 160.909 25.4849 162.127 24.772 163.524 24.771 cv 164.911 24.77 166.072 25.438 167.008 26.7607 cv 167.596 27.0947 168.121 27.603 168.586 28.2944 cv 169.475 29.6318 169.879 31.2544 169.805 33.1636 cv cp 170.348 19.5278 mo 160.52 19.5278 li 157.852 19.5278 155.539 20.8652 153.601 23.542 cv 151.687 26.2207 150.75 29.4438 150.772 33.2134 cv 150.973 68.1782 li 150.996 71.9482 151.861 75.1655 153.553 77.8286 cv 155.222 80.4922 157.19 81.814 159.478 81.7944 cv 167.901 81.7944 li 170.043 81.7769 171.961 80.5591 173.679 78.1733 cv 175.131 75.5786 175.976 72.6006 176.187 69.2324 cv 178.451 32.0845 li 178.652 28.8745 178.152 26.0269 176.962 23.5278 cv 175.205 20.8638 172.995 19.5278 170.348 19.5278 cv cp f 207.457 33.1118 mo 206.564 39.8853 li 206.321 41.7349 205.656 43.3271 204.578 44.6636 cv 203.506 45.999 202.328 46.6689 201.043 46.6733 cv 196.469 46.6895 li 196.493 46.4629 li 194.469 46.4697 li 196.828 24.7427 li 201.943 24.7383 li 203.333 24.7368 204.434 25.4048 205.25 26.729 cv 205.805 27.0615 206.284 27.5688 206.684 28.2578 cv 207.452 29.5903 207.707 31.207 207.457 33.1118 cv cp 209.247 19.5278 mo 189.592 19.5278 li 184.355 81.7944 li 190.754 81.7944 li 193.678 53.75 li 195.703 53.7412 li 195.726 53.5327 li 204.771 53.4932 li 204.859 53.4932 204.946 53.478 205.034 53.4741 cv 207 52.9683 208.876 51.6147 210.666 49.3936 cv 213 46.5303 214.48 43.1372 215.088 39.2134 cv 216.199 32.0293 li 216.693 28.835 216.454 26.0005 215.496 23.5137 cv 213.982 20.8589 211.895 19.5278 209.247 19.5278 cv cp f 223.341 81.7944 mo 236.276 19.5278 li 228.549 19.5278 li 217.008 81.7944 li 223.341 81.7944 li cp f 249.758 46.4717 mo 249.822 46.2314 li 247.789 46.2388 li 251.668 31.9268 li 252.214 29.915 253.176 28.2051 254.561 26.7959 cv 255.953 25.3867 257.35 24.6816 258.746 24.6812 cv 260.143 24.6797 261.141 25.3481 261.742 26.6758 cv 262.242 27.0054 262.637 27.5078 262.926 28.188 cv 263.479 29.5103 263.477 31.1143 262.92 33.0024 cv 258.962 46.4399 li 249.758 46.4717 li cp 271.832 31.9028 mo 272.837 28.7441 273.053 25.9399 272.5 23.48 cv 271.412 20.8472 269.537 19.5278 266.889 19.5278 cv 257.061 19.5278 li 254.393 19.5278 251.744 20.8486 249.136 23.4917 cv 246.552 26.1357 244.808 29.3193 243.887 33.0425 cv 232.205 81.7944 li 238.596 81.7944 li 245.832 53.4604 li 247.869 53.4512 li 247.918 53.2593 li 256.965 53.2212 li 249.053 81.7944 li 256.551 81.7944 li 271.832 31.9028 li cp f %ADOBeginClientInjection: EndPageContent "AI11EPS" userdict /annotatepage 2 copy known {get exec}{pop pop} ifelse %ADOEndClientInjection: EndPageContent "AI11EPS" % page clip grestore grestore % PSGState Adobe_AGM_Core/AGMCORE_save get restore %%PageTrailer [/EMC AI11_PDFMark5 [/NamespacePop AI11_PDFMark5 [ [/CSA [/0 ]] ] del_res Adobe_AGM_Image/page_trailer get exec Adobe_CoolType_Core/page_trailer get exec Adobe_AGM_Core/page_trailer get exec currentdict Adobe_AGM_Utils eq {end} if %%Trailer Adobe_AGM_Image/doc_trailer get exec Adobe_CoolType_Core/doc_trailer get exec Adobe_AGM_Core/doc_trailer get exec %%EOF %AI9_PrintingDataEnd userdict /AI9_read_buffer 256 string put userdict begin /ai9_skip_data { mark { currentfile AI9_read_buffer { readline } stopped { } { not { exit } if (%AI9_PrivateDataEnd) eq { exit } if } ifelse } loop cleartomark } def end userdict /ai9_skip_data get exec %AI9_PrivateDataBegin %!PS-Adobe-3.0 EPSF-3.0 %%Creator: Adobe Illustrator(R) 12.0 %%AI8_CreatorVersion: 12.0.1 %%For: (Todd Purser) ($) %%Title: (Testopia_pocket.eps) %%CreationDate: 5/22/06 12:02 PM %AI9_DataStream %Gb"-6rK8G8OXKo,q%!32c(r$QD+"@)+EVC7QM$BHZ_D&BiokR:`l;[DZ7,CEX'==pN`PoHk<K!^=.lS!W]>D_gZ]t61Q_[miGa"N %3uj&0^:=13_u"B0^Al+DL]@%jj6X\2D<^844Kd.\pu753qY%DmhtM8rijtf>eJ9>YLFXHEU))4C>Ebss[i`?[iSje7Vr)n"nBLq+ %hqrg+pYk0,^HCBNp!*BoYM]8/IX-#4+8>6\IJD"UqV@WZrcIqpoXF/<kI9pJcQ>>7]_QYC<tia=jm24ShS/m\ms]NVrVacD*nOt, %;=;0\/q<UYogR]rZP<H,qet?inEp0mW71W^s7V"mrZ4;BYPIckpRaXs3!^1VmH3%#j&\0(I/iHK"*["aqYJl0rV$4$Dnl>En]du@ %+5[%hca@XR(o]XFlXt_=m_eMN]K>!,huENIebpF*ck#kanp_[XX$d]bWm]dP]YAqL5>(84dr0^1Gg?N@[TuQ*=\*->k,-"6n%[+! %YL_j6YQ!\qDnc83c\4^cE<#FjGAf\$o45E]:gLQ4pffpt9puQ[ncf&qgI;iPg_$</OBQ4qn,N(JrEk"FoD?eepRaWss$rKPhn8nW %B(trfdoUJf?^e,_S],H.dbk&nmf)88hS9"WPJTbX2#Hs$DsuRt&[sp<H\70E11g*]<;;5-+9-<[M0S^2],r_@^HAAbIj3bFo$(P1 %5K^&0^u,1frr#'/pjX.8?hguL[lK#.CC8+->1_dI\Gpf4:&t['BB^#qdFu0k7/,RMHi<o`[srZ"rg/LAr;(=q^AYLE>[3:\r\33e %NVrfgrsOE8ek_q+h^cPh"?4(JrK*9BqC;U9%t>k8GlQpn43S9^nOSl7`AKC=qqF'%hYcrSXc#FCfDGSj]`.4E8A[dpSAX4qn9<XV %pZBIfS\r'\pshD&lC@cu5,5Nm$3@P$^pakO.g4?/iI&'t[gdJg%<XT*LXt47>2+d8pk6D\F`W1=2`GDqF+[h;DG]MD`inQH#\\WM %j7i.Jg'G]MYM^W:j]AgrhjliVJ\S.;1#Xd#@8&RWq$eRc?duoJn/(+C8k<0F$%MIS,Jmg[,]o3@0d?P7\FGSWN!V1lRK=S=0J<8l %Sb!_12F"u^BIm*s.cIS<P`Z@IK"Kqfd"/aPOk#PCW.jd#07&d!PYoVB11PQ!/WA"f=K!E\0g>NS2iLMo++FH8Pi+30@=7i#ZRB'& %F;=S$BKQ:=NIPci"@&S@C'i^T/i%I`*gd=A!`s]Vq2uZi%s9Qej%PCAX_$#Q/&m@ZW$VA$nHhpc/cMIS7X+XE387t6-moRZ]8_T* %=,bma\T!GqK#r_kWR+qT'<2FFTc5\p)6pFQm\j^DV0?W,^WSjX>U37X=lrt&,<_RmTC?c]G%l$m_PFS1QI2]$^2UROIGmDt/j*[- %?=qlh>il&()(!\A:r@60Hk!7N.kTq0idZ1hXZ5X]AW^?B]DV8,^6a'>GPGWQV51cI^DQ'ZH'a"0anM#.G1(l<PPe>8jkoa=HnXsZ %n*n<`Xd#&oq0.$1hoiY0S+8ekkEn@/Q$JY`p.aCXI#Gc0lhU5_HJVE]I#_VY$P9N)h@Esu>''<GfWT)dDZcIu+4'*rSo<Y4:@rBL %>27ORH;SDL:)qrP]]:*8?e=ju2f,@J=.5WZgIgZm&Uh1WV=2?b05OM#$g+Y[iQ$XX;$$.DQ!<7@NTkUJS^rMiL4@$`^]qK:Y$AHq %/!;p\B.^7]IEelWpWY"pp??Cqc?\!dnSWKM?d>^]GFC8c'^q>)Ds;K'f:[?-RsMt2DtSZ9O./eS(@lo@SL'lUBgZ&!4l-o[UYiN] %9HS24f1n-k69,K(b%OOh5>jQaN+'c'[o6]6jR3rEZJe7++j$Vc2"So!DSW'4QM:'j4e5YejjY3@c:a>jpFYHS4Y:l.H0WP_o`c=j %$lMfG&*HAsS.\2d=7X@H)#GB:8h1.-30.>>$N(&Y0]1B`oZmImoc.BIc":P4apI(M,=p7?0phTe5Lp+/A$'J,g*=;@cWn2SA_[JW %Yt>a)=+1BsR%H1+`2VLul5U_DWWgC=b9T__j>Djp[bT7=e,R4"$:6?Dc>q$OCf:<c[,-DG+r)A5g1!4uCk5rh->LWjoUE:RG3BN; %>?tF3XV2Pg;4)WnaEPHNs6_T8lO9it2LZBDOrAj^\FB5KCOdNGi-b7M+pB<'b%FDm>#&$@c8*kVr".I/[jZ_;7A][R4W_>1.X05Z %``Zu\LIj@nc(V5H-fMI!$]LNYptW_$fV0t6oe^Q6!rjO63RNm;D+RBpnrqV_??k6N?`'NRk"-kbq[d'Wq0"ZW78jK:<FQWfMY*mZ %6aUR?[I7W9)jb?$YZn\&'eXPa/D+k=;.sU`*TgRT=i*0lW_gc?&9Q<%3gYpqTrY<p=XWIX9$?"mU6Or><Q8<Z5Z9BrggqJnl5l*b %<j`&)?XT(7H*7#YfWsq%SKW'?,tHS#9QTj7La8pBJQ-ur"55'O8Q8/7]?1Q&>LQ7iG7)[NI%F$DZ4*2PA&"V]V)<],m6j:)QP%ko %k*OhK4>HL%R_M%'H[.`ud&P)KV&Xl3b.:hYeTM*A4`J\%RX`q7!9Su&I?DpiWgsSCkpkTKF]NpN'u2et0as8IdIJ<mf/>DUn27R. %kr"ULZcIjI]]-Um4MnFAo#?1JA00_$8L\_ZcJqj0Qo0G%mVE??Pu^r\,3Q!+S4]kSq:SeuVNKP92n$je''<qh&^;Q$.&a![jVF*j %E#*lQ=d`of'8L_SIShM+R6sNMl-VU`.`9%4^FH.Q`<+66&H+Sj\c*rKcRH&>8cc8\H0dJ)h+$n$X[As/Xf'\cM8^rHf!h`OX^7/N %4O&-l?A`WkJl&S7?]<':IL91mH6$R=jjoGnjs=dLB=`_@o%*GJ,sa"@Ut>%YmOYYBrYGl<%a*nA/f"3%MQ/Gnb%b)&)>fi982JG5 %WaQWF=7(#D3?r9TGt)kgCp+Sa:-+Qml)s7!]V>3GKpc-pl`uXLPoZ@O4Hju$ETLM&VDkolZ])<$MiH=bRo_o9%PBc@S_dSmC@h9W %.T!74T-@W#=5\;OZqG%QRW_M&3=@L**_l'5cJ#Z<<&9N%=#0!::or5W6'G<Y[CD$1.C..NbWH;bH)gNGNVInP3P`/r3)>qhB9P?\ %(g6Th*OD.rauV"OUUA*Q$#K:7(YuDMGs/4Z4)bS/gpDeBj"d/RZo>$e/6J$9WcMXqDA+NZH*_V<\+<S+W_):I>is/NDbc4n6u4rJ %S1`&9=NrUsH"Ws_%Z?"Kd`<Xt(CeR&Z7f,1S0_WBqW&O/>u+Z$Uj_KT(,&_agdYN7;8HB]M0UK%/A\ZR!?+o8Yt?XfW`75$QoY#7 %b06iuQEi-u.S[]6=05t:*eUUECgjC<S7cN]>3:]\+C88f<LU>Ia&9\n[YDW5Hq\k&WKe/M,*c:t[N`D@&G2&0C*?KRCL*b]Gtc33 %=:/q&c@rA`eXG[-H"+1_0lMEIEn(('s%I#)Y\cL=VmNM].F1rch8[=CAW`5kYggfPgOeC;WEqIPh)%06.Z^5j<k<Fqf5%!VpLLp? %4NU4h[T4HfF+_+>)&8QK9@HHpaJ;G[pbPQTZTd'SE=k^?:08NP$*/E9mmSbPm[R?*ZTMXAR9Z\dG`@oCm-#;)mPA_om9h_^P#^R2 %B2!/C88;_fS<R6:MpnEOVKn!;T;=^*7\TuJXP>^s>4bsXO:52LSaSZSB(qZN)Y[3QO*Hi@MJ)sk`,i_8^$Jc4[i+NV@ATm_MZq9Z %jZ/4$'"+5e@Zo?Hm!W#aK/l]HAG3_%QW^,7=+dX'SXDBtMb7_rP8]1aM)Aj*(#qHR;Hm1DoB[s_=%?@]T4`'JG%8:5@@[J_98#te %cF(t6o+6sTiu'r9%WPTT8^,5<Gm3OsX63Y1Z=N(mK>&&Q6;.".Mq6YJ#jNDZ;@I=+lPbptaleIn[`g"kW"r@@+)P$q%u\9&pMLU? %pE=T)eu$Sr]8iC\^<8!<ZBR3.O=`hY69NXfURs-8Bi7gZD6q!Aq]k+1lcI9]Mai,!rCu9MZN_W5?M/DpFd2RQVHU6f=a;Z(Nj3?Y %+a)#J?tW5nVXmQgH$;HCbqbC%&b.s6PO6:c$a,WED_bZ8HPRusl$.F#4YEi]RT92qN@_De^8+HsaJ=m.p:9NbbSHabCp`8)P,Yb< %cmV]b%Sj+^`?PNP9j>,R`DCn:cU!,Dl^qRo/3+b`IJ9%>K+ko?42\m8_;*J((,@pI/HkTFk06q2RGALHHd-n#h_0KZnR+/V?&R8D %MgiF)OVZ.6ot-+[qu=AN:#>![SaObErq@4Qn%V:LQ$g1=n:5>amk)lN2]k8sqsXjd/Uuni^:O@:_k/5`N5'l@G9<dWg\48!3rC#u %P.pq?]-$77^\RZ`LHkh+qsQ]gIWkS]_sd&T^NoG8O2pR1p[>lqroZd'PHRJj6)@r&rRZBF]6a)BcTcob^OQ$7UqAo3s8McmErXB3 %C9.U#doScHrH/'e7pg[sbd<GOl]48Xs2X.aI/*1`j4F9pdF;VX7K&h_N8JT,pOE3L.(tD3'm`EKO.UlA:oO*J&Eq0,Epkr*hS":5 %LQ?BQr5Z;(MuX98c]I4s(B?P3Hh6dA[-+XdIK<[Pp#5WehS&meTl=LAns_Q[5J@$Xh>LE)rVk:E_t1RthLG:Yj$Q6n0"lW3YP7KL %r4,-LQb7VDmI@s+q=s-N]#HRTp\+Qp,U"_bKo@)prer,jj&^_XoB1HipX:51>k>!(f_F9lpMW5:\NG'BogAXMqQ*[g;O0CM^F$p% %X1hs=iX).mNn<a#TE"'6Rr@2I[f,=XB<:@c^HMR^HN--KTQ_]PY^??9iL^V[q*9i7NaK8sc#:nZoK(B84,^K]knWEid`^+_d0iG8 %9WnaUDN94UoX['<h:u<-lU7q9?AW!N?\)N6]fa%L]u[ptS,"qt9t-&`HK!)L)h)'7DQi;IU=[Dg7'F\8^os#0SmRLb$bp;&9aJK) %l],?-j+73N^MA:hppK?:nLNlTk\J_8f9at<K%GS2k3=hSYNrO-%f_7(SYe5Rmj+#7T%4TR9IXgh!F6Ak>9_UCS$n`$<k!AF_nm1u %Zu+Q3]-cSmrk%QFRSNHg3Ot><XbTh7+_q4HlKNCb,Io,3T<BVgc.C.H]CskBFeDgK:=n7nM::F$Lno7HB?"j:g`6h1_[AEn^uO=. %,1fM`>9Y!uO@VAf@3#pu,S)^4R#6m$k*d`G9/B'o899V*?$M,&JYmbTWK571@#5OQ#c?[K3JTSMGmQS:h?&ahf>)Ic4n'S=&NmTE %Qp$/#1:tC_GP]a;7.,n<oC7aBY<O(?U-3N5Ve'n4T@PGbED"\<SVU0&`$]a3*N>%Alt/JcF-u!Xk&!<,f0#sA[LmE+1,$i1(/OXN %304RS+7-@>'*I#&0:s9XmUipfk<-;F_*s^Gk"b?5q;mnjEqY]hrSjCBIeA7ud3l^)PJ99mCYc:8SB:)eg$qKLdCP&iY&(Jol^DGN %QGa'9RDKr0i6Y,!6O5CX98+sf0]V-S5QYuH"J"Hk@</qMi8RAC4ssH%iidTa`#R"i[k+F"p=,7d)&KAibR=+J"+u<D`0&M(2eHVT %o/4_=/[P'i:YisJ4gRLF,WQEcK>YOci,\=4i_8AGF8IhQUN$,Ok+0"'Hk4L-mt:L#a?]k-&Vp[WJkZkD=V`+hOG>p[(m,+q"lo`J %!SK0kJ:'UK+<rE`#?DAE/1PkfCa(JfMn<Jm0sM%d/OXV;egK'PIVr<]&=X`6O'"&l+?A"V,#!PFRL#.7PR5klX$dON'.k!&"7+>l %McVK<[>8*>A;;^I-=S<..Tjn0\nKmi@WCC=,4YfoH"iXk8\f@c_lLSmqEM4@GHC6\f(.2Wf<!QPJ[P<r3ZP_X@Z>fZ.f.(U3O0:k %XE%t)WHUb')k*W;bug^n$T+'=Ap'dbSdpGR*Du?]k4/X&Si@u,YB]&rKm8D9Hm7#k:"D1AbXS*=M$mDE84W#,Dt)?HBJsaa-VhUI %ks-40Ltb(4r^'L:&[h%?b&3#T:;ji&Ua_C1H'5CcA8NNJhU/^e&9FCu_\7l=+;+8lX:#@%F<ImHdG3Uj#9ounOb<t&FO'ukH(AV` %mYF)FLeCMh.Z*4EO>?=$3#5C7'2@@)n^%_bnqlEV*D"cbdQ*n@cU'[+66)O5m=s9l`)3,9"B&HqeCR$%Ca)'Q,A+S3OZ8J2-;o)> %'V?`V\<%m[ks&ZT`X5207jK7;)+\f]B[WVG#QHHbJrhO'f!*N+d'D$)U1p<:7GE^6'ocui=1#-p?.HTCXF+rmnu^Fq.:C]@[0@Be %C`9h2_$A'Z:'mC.c:XIHn85(ULDos7-t#ugU3plIo;^Yi=m%-^\"[Y,ci3)08EJ.n]$m"u1M1C+`cA0Ugr;!\iQ/4<0?GKXOPGBt %o.8)jGk$0#h"6VPig0BAS8lg/@BmD^>QR(qbU_Ten;BAADZ:-b@FdGsfuB4s_b:1k![DR+9OOd>ZahhiH,0V(@)<H4'JU\ta_o's %@TET;D9O\r=Y;BI0o_Rn(1sn0)/q2Z3:SJ@JQtA`RC-ED?6bkb[%>a5O(umFB<'NFLtZB432leVR^:G5VEIY'RKdnLXbmm*4aKq) %.`t`?W@1_CW=(AL'35:fX1,aO?E88*Gj13h@n"T;"*<bEb')nr4gW;Ej!FYY(%4"5od=)<'<C'4C,iG#i;"\3:98^P`nH)),S%f: %*?,m*@^`W%EQoiOM=ic5p+PPE)bC:ckP"KBjf6q\^#n-d.^)5<jfqn1)uk#IY2YnrBWfer-V('`i9.9R?[Vh)ce%&Q(HB&W^UWZG %,'c<u.WT70ek];.*qVt;*lE"e;GoI0s$gk$_qFPLnL@3r'm,5GU)fr5XS,T&+u/UXf:r.Q*UP*O4C=3lnAcCoWoI?.nQ6Oo5u4C" %(Es*(&q/%WpHMN5leCcpRu9H']"e)`J,eq]o@J1+.NkY$/"l==`om>FoBG/WVoalF2V5ne5-p*[Y]1/j4L$bmc$&lQ=Q%cqa07e\ %UXNVhiJ#[8/f)9P=;-EKFA[i,K.%=f&q:2R6<WN'!tQ;nOIu^O8-b,6>[+Rd*?mI1&nHgbs.!gJ$-0+ViEGAkOuG&Rb_*-3%AKQ` %0$I8G]I3b7#X8`m%qPJWL;AXBkb5D0+16>(-04R+r)SmUhmMDB=^&&RrBF^>LOh]oYZeT>6qn?k(:PfGd2400.@VR:*,&IN_gE3. %@`+.SjAm*E?X5r^OEEpbi_-?"O4#L(idU]3oiF!L[;%So;%0<:Jfm:>'t08s<7sos+1[ZoLfmdS@0qlkBf5aL>>:\99tMX^LW$g1 %bsjo5>#-0(?Y9<8mf!#A&,4s&s.Dg$c&iGl.]&0=)+*[c553e2F3Vmpf3qhR/*JMGQPf7^^=YGC%p7idiYUKD'S.K>dt(NabQ3EO %SSG?:Kp@)Sa>u5aQZ?P0COt>Hp>O?!F%,D8[,JejiChrbZ'th1>Ql0J&[qdK;ob@3+B0R-i#`K(^tV+/5A(>mJp"kd`DMKV-3**T %?Q?[<aBO,(h9.a\[<[Jk($0Sb\5Lc=P.aWdFfhjQ)fr'`4,H2DbKrB(eHYkj)OBs,,-MoVOq:XSof;O\]lE8r`'KK#h#u`9eU_3U %&os9,Q#Up)h8685UkM*o3K5c>#L;:Wna'NMn)(XmVtoAIfAVu(QcEDq6b_WhB3om)p^^t,ULTqn3nrss5$%$WIm'u!<G`fNg/E:% %=.lr.NE%fGCK9UBCX]"T9rFF\XYd)mk"<=UMH(sL:d)F*Ho(%<AW=<94S1]#h&D?BhO4(;r<j&s+#$"a@*A\#c5M"s0dQ?s,+^+7 %fnMO\TX0;3gE:,=EJgF(Pi&+!8p$K=_##6nC4a5:!p1VENW=8Xi0pIf>-cJ/>['#Xn<b4Hj"UBa#[orXIu.SURP8n7@;M?f>1R&a %3?D$^[A!c1B;5Eqb!@$6!N^%4\@`9T^b)Y]!d$AOpB/S1+WS&<)]=rCEsd^EP!cg"<0"'D\[U3EWQS?,]Hk$7N]ta(UgM4\T4UJ, %@?cuSS%F'^.egG@g]9@1)"9GcNmX5G!%*ns"KA]O0<6^KGJ[J';K=lF1<6@S;;6hI'r%<N9DkOLT4^amTdB(F93MdddHeAiPoLO` %OD.dbZA9Lkb0_+Wlcr<EROL61@Q(RgTJ;:b/`pLqX0%mDA[b<m)!oHeG+jeXD<!ZXnOU%H3?.6=;kc'T%n#*ZZW\lS[5V2lA!P9f %6aft_)G@Ir;i?cAS#EH7\euk8C?s@r5$JM.`bWK!RdH_tjnWh.-pB]DT49:D3El^XU=We6.DN=fFf6Y\EIk;^^)$THpmDX&"4M:$ %7d`G.8"B!7AM1DtpZY7";-'Rc^R_409SYZHeJiD6l.-el([k9EMA>kh473uEXq@/[XQrTlhOppoU"U>u[dt"JdpjW$SrV,+K_BE4 %6Ond`.L`mI*tQ\O6,gdB%BE?(7?pbJR8Wp@$Di&aO,iSkTQ9Uf9j/n'p5nI3:TeBtdLn;QHDN9C*P-hEg!JQC]5$gjYnruc]I'5Y %1JcgI:Z&9dhd5n2Sp2_Dh6uLR7Q))C@)hq8M@n&^8n'bYcEer;2T<CZ4L[f5i:%^.[$J(+'&/g_p2"kh;/G?*?qF^%="J'nNMhbb %#`27/Pq6Hi79j2f]2."h^jc"#ea2R,rQD3^cXHK&gVBCN1@mH6XSre6qSN(^Z(V-o+5_OYs,V2+3gn:<=/*n/n([@3B5Tst[gdiW %[aaJWQ.5_Vr%/YuH.R&8Pp.+-hjO/pR<?`T:GLmNN;P*1^>oP45L_rYG08c+@W#H3J,Jg8Lj.kDjsu\,7ncG0BL,fKI3Wt8Mm%WW %1b?a2qo?JBfDe;^s+Lg[EqICZ+91StVrP6krf=h5OIH_%8r7_;r/uq@3-C?arc6U(9&;@k^R(M?-2Nm:>kVV"gP!i.5B3g_.Y30L %Y@Lctrh]8P_A2L)Y7^Eu<H>ER1Tsliihn50OT)\AURSGlm)o*O%T8$UDDsLc*E3aOT)Rp@-To%m^cB5cbEdJ,g^72/V25#G"q8]$ %D40D%9nB?\ML(X!/k\PK/ZOZcit^4].9iR#*G`Mo=\XQl\QZG=Uk<B[0JBr%/:7@%nS3ue+\RPnOeol^Bb6T28CgXDeAF+J[!)__ %L;t.bpn]ULhAKEs`^kfL?g=p,C<nQ#Kf)%T8]EGGm\Oo3&lS#;.`faeF\r[Wj-Z8l>#^^%32S=73N5S[AMn#WQlRg&N\EA<2.;_Z %C*FM<N4?>DbQo$HRC]>PC=jC#fk`l8,+Tr-2GSQr&R#M+qML1\R"e6[FGe12+@^rm'3E$+lR"-]0PM[K*h=X(N[.kXH(:EqWbJY1 %#3t[OHguTG-oEV%%N7$i(=fo'FAC(2``G$+)D*\*hpEo2>0O>Z>e7>u;F;kf;WBMHbCR`n(5BjWWQ&L&j;#F78f":AB_eLP63G36 %=![t1=7OJ1A>sQ'I_!]!WGrg>)rO&+N96()c1JHGonR7=aZHq]k/XQoOeN]VPA+!ik3)1C@YU#=^9R>gcQ%k!!D'.02D?WSl=$>Q %*j](:!=G1@UQ\5VP2$d4,C:r6-,a<%_N5]-(+)-VMg1^V+*hF1<#CBsL**!iX)#]GW(#G)K^T-9q=)VV=2T=+_!Br%$73.TWfqn> %(dB_9k@WAdH1eBH2XU.h3]L:q'obUh&HN7?(fagc29Ub>%2QLC/-@,;H>F<9/XD!D,8'FhML#28p-$l7S[Kf,\[NtWl?Ju0Vrqm7 %QcN\Hs%tkYLAmQO\-u3DL_--*X$gu@A@6N(bS2!.j$as1i*FO"4-RB_D&tS5X8ZGKWAQl7Q"78]4CrI*q#'Q!-QrTIs!.Vt@0khm %:N&FGr9NmR5Q-jC;<9IOGp-`<QK-s1^^S1"O<d0849-YpYBinOU$MBF.^P/#p)UZOeCoC4kS%NM4Fs-TL5FSG1FVbuQ5.[gRG>5% %,.i9T&!(i2\`aC0Ca;C^"F.g6!cD01fJ+-m_3^8c$Vob\cbWm]5&PreTs2J'1tV#rju@4uGH<WW"enXh8j=tCPu?$V.8di9ER/BR %fW/u]$DB/U's:):#`a+1DI'XgTq0%iT!M'kbIf/RSJ@/\`/i4/@cmhd4gis65c!.oKRfK2?c?k^7!F90Vdofna6$!E(o^;+eX`JD %o=AC0-0c'$Q(.8Nb]T*h+<0^R3n0_(k%&.!b>f[b'#lm\TJ^F%(F^R(1<f[H[c4QdDS<pdM[b8Q&[hQE'k^L%="ub^V9.E;5T=%a %#l]_%dCpP/bJkK&RXU<QHP1T0L,cYq/0=MqTjK*@nAM=M*B+P]$cV."A(firdJ+GQfSEEH7lI5$aZ*e')'H>T#^;_(/k\S9qLX#B %/M`p)YXsQ*U78Mr+qA$LemLr!k9BT6iL&dPaR)H*_h1^A)r02%n03S`+LU`M^#Klbj(FcRP*l:XCn=0=-KVR)RQ]'n[fqO7KP7.j %2]j#/PG5E1Ee1SH+Iar-Zm8F"!HGag`h9#O*9*W+E=U*F2c%73'31Nf9SJn%MWh_J7EbO)A8\5-'0*dYbDf__SIhlmOls.kZdD<% %,jIZ+Gi]7+/aAJZXjIHRNTr)/1$(e2nuO^jK&@MThHi*k:FgT\Zqph''c;#:7.LApS;F\DF:$'[aSl0'PDb%=Z<kM(KEFp7[Rp;- %+-)>E@*L7*Zu4<dmpqsH0aK'-<M?)YanlP,6i=MVQ./r="gYC%ST.gjW-fm?Q9)sHJ`I8oa_#^nT#$TEL0Qql>G+J!L.LW>eB&h- %(-U-pOne3@&mhs1K'#Ip<FpG7PbNGZb@Y2f>$LOX:=VJs.ZmSJ,S`\jUV]]0^6.@4b]J`>G)2gL(V^R^"tNrsoHRi7_'k^p0.4Y/ %c`TS(LUL@$Q-_R&pLk_4CK^3&lDn0PXKiS)8-j2t<k9RQX>F:[>iObNF[)H[:r:46(coTObGLK6J/]0-5.AM-X@cc/]?=X]0`B)5 %\k!JrdbK-(EA/e(a_>Wd1'OnX*1+VkH%A[]$a:jAau*n)Ak20LV\toR1<p2/T!W)]8VMd'io$jKPqph^_m+2j)(&\NV/'@Z6Gn]* %DX]%<=KdB)>-8fY61drf/=OHKe*NL9QW4;cX-Kag$TNI]MR;_e=GBADGQhY=E&&Z2lSSF^oX.4;,UQ:3<)j9_Ok6E]_T7J?E9Kc& %HT.P/L6*NOM)h$$9+=K0YS]Ht+jA&Mk6.7m25`n93K7`G:bE7"!L#5%RRd^h>X<#d3YF-/4=$AnTSf&nOMm<r+rs+:EOH-i1jN>I %%D(Ucl`\YDUiE8r(GL$<!IL<$S,;/T^4f14@=fO9dK(8ikL9d18sYPo,crUY:C^%0N/<cifPj%UQuGoN"jOp+&#<qU1PH)GM^o"n %Q=M<FBdd<UTp95"8Rd+<lXSJ22NrnrN?6/%WRPa:,[+-Ve--Mah5JJ@]e&0UOLS":5H;K"%$?d39=eqIS_c9e5pBjDZ2)I%hEdHL %^pO"_IiMrCq6U`07PN75dh4ENAA:039h740@>&3X*lrHsH,tQ)"#c#-R5h:_J\g>$);A"'"\e1`PecY%<dRZ\M:^TYfi0d4!^hVn %(?s)5iC1UTg@i&$89/]Q$0&KQ`rnc[>P"+L9Cod30=(i9X?!;KFT?C9Lt3M)`b(a*/Xn>r`6t/r7HA)&2],SZea*K>7LDMQBL%ct %/G5[Dq'#I]Kf?_Y[_ft#X)+ZcTJgfs@2G3:AqBtR$Ngj\4.AN4NsUME4i3`:$CFl&HF>R/m"qKL>dH"TFtZQ>%=]REQg)G#+q;:B %rOW)A_Z@puX[,d\`/EW%'6je!J;*$i0gi:R@K?jK_biRg:XV\=hTI=@bqP\jI5YA-Z&nk-,@Wo-ibUL`:F=V%mSOp3,>+-)B;S.\ %T4BDRR+<Xc`\SL:d-@.q_oT_g12PC4ChZ"&?$Q<]T59'(e\9uF28#KIAfD(Q+q8hfatZ9gSjOD'S*W`O-4Q6F-`6ZlPn`Rg/\$Hm %0uaWB9hB!JK>Adi>Z)Z+;!.!eY\jiLPr6I`iK8QKdKV?6VUd$Dq[,uMrMpAt[:OmLDpC)RbG307Rhm+fXHAoIGI&n(X-XP1?=I0( %bm=q5<e:4]2!Z%i$YP&`5nih;D.-W(Z>cGmoE!/WVu`PZY+J$.HEFFNW/s6V)iZ6VFV>@X@0!i0(/_)kX#SaGbH;$-m?'bkRP\s. %7O<p%pmG*_]ZrKsS)c#l&LsVbJ%CTibY&Ul5-+)pr56*<lg1HXUei]mN%jOV-:!CDUKLd4n^IYH$#?"$5d#k/GALgY_t[d,dLg>f %UlX/h/N-&>_r,[a[-Cr4"t"f7/O"a`63GNA!3pTEcnIW"`mqBV#-#MI;0OY2`N0Y0eHlu*W#NfMJ_1X!j_`5t0XB(bZe%shOC1=: %86%Re@._Ym<1$fH[p`PXL;>*X0Og(KJB_lhJM;Y^RLj'[/iIdaPH0XCQ$L4b"uRsf8WA_f`"/TJ@Zuoi,d3/4"I$N:&2lESY9LPL %15$0E_OM89KpH]bMtdLY-ZeTcnIDhfd7De^N8d[/0Iq.q?qZU#H:i62A?>p.-[MVH_m8T=XcL%G3.qB7\7KUe]r@u2.T1n0qMYh7 %dMiTVg03GH2h7]4)7'(nNMds'_Ru&I3g6F/aD;<B[(9.eVUo>0#qfVGq83&5eLD:h&>)^]R/#?;AMZ<'Pt#Q,@K^1XajD,M)i1ks %QtJ%1C5'I*#d_m9]ji(R?TB=7A8Bo8l'W3O3L^&DQW!u@,(/ou1mUef@J4YeM/.r0BmlL/3'fHn_jWh5-8R%]#RiQ_LtnEa9kt!G %)pi'&:iKeBM\RFm`oqrZ+crrQ11UTO&'P5W1"emQ3#S"Q<`A]_&X5skS648tfS,D,em9bu\.gXAE%^8WNmEEIG;jon;&XJa]U/uX %%)M]cm&E=OR7[N,n8&b7-i8*1fn>p<FV6$GGGq%_FfJ\nO&.E"!E!Bs-D(O!B5sVWb0YtZE<X0k?]tnEDM9$rVktEZ`>l/Hi^p9m %9o@7':D9oGA._L-Cf:,a`bW^D)\+9l`Kd>seh`jH1+fAZ=Lb9$@l/qO_NSh^4j0,rLJi@I\E9!JNXJm"$Q?o?JU8m4XqH,IE6ZU" %TQt;NJ1g!k/7hXP0^40XqH[36aipGr=q_[=_['5F?KE&?/+q4=XtuX63>Uq*b]q.9+?2*$`.gk*9PA/O%HA$[b>Laj,2D&*M_$>$ %S</[4+iH]&f$aabl_88ZQZ>KG:V;KZWt>th"]uBK8mA%Dh2$roeOI&Ek");@])^;\<fs`rqAbf+Q(9hO/QY>aBpN0uF!6Ml!VQY6 %dA;o:MA6m^qK-?;P5iHA"&S"8*>^?n2p^t)P5smfF"oam)PD_\l`"*^"9M3J`h(]o@0iZs3:)O$D%<J-NXjgd_96Z;,]'I.P[i(p %V!_TAVM1^'`Sut'INO4*TPohuOjf"!Rd,1%:A0E6Ar=D/EJ7jAL*bJt^"SJ/EYYj8`s?8;emuMZUt\-UcG/WkU&]u23$qdq>A[s8 %dWmaS+$1m4/M\?<(6poa!lIak21c9J?qXHb=JJV5rr^T\E.L=9`SIYr4O@aF8?kboU&Vnt&iGYfh.m)%7)bJ1PGLb7RZZe?NAH %]L=uI6p%*;h.#X\RpZe&X:K3O,0$iQZ'8enL]]>f2r$+WTnG.d/SlCP/.3,NP?h/;AY7Fb_T.9?-_*mbKRWDP#`%bbmRL<6EnU0I %"ssj?oJFJ^=0Z0=RnWf*27.HLXA$bu)\WMi[tXeSA/91mZGhm:6tb?>J06B^>:_c9Zj#.2`#bE$+knJ#81bIj<HCDI#VOS:g=sgI %MQ=b@ipMP0<$3m]:Bm*W#H>kk&'':PPJLjq8#1Mansa%#cQ(BSc4[*RSoSXWg,<Eo,enF)4/?E`EeD_K1Vla*P&m/SkDNMVjWR%e %T_78.4(U^>!=g4LO.]-a57SVSCeJRH@`b+uCpKVu<%l/<G8fl,+LnLiVN!,bNV,D:`!j7U'?jW<E7Q#&iKt6r(GFJenY)?JhFeEI %$R^tBoA6TA1]8k.G[3`kW:eA^K#/MogPs4-l(OANq'/'7/5?j8ndC&HR,&e=5c;")>Pr*^,LD"h04#I07<TGX%Ca.u,,j8UUsFZ2 %osb9Yon7VW#e1#g7?A6!B@slLY<a<bGF9Qn=?n97c%=brCnM>LGhfY7:qr2D.dV($2Osmp:A$G1A@t]5(;j`g0t&G5&s<@VZ3@:k %(q>K9lUHk$_aIb2=!Si;Me/em#m_"Q#(TGSB!S'gE!,SZ;0'EC?jEOEDrqUQ"3VpDHbq9H2N)EbdKanWYs"4SZ-Huer\k'+n3!$\ %F7(.6Y]u)<,#!`Qk:CsIL)UnX%c1TGFE/6Xfbf7%kA1b$RooH%`3(#,7hpje+fLMjlC\[V(Bh[=Cjk]+<lRhW:OY%r&NCJ>]ESL) %=^'<1^to/f&H!mJW6%HCAH@T<OB+<@Sp23:R4@?TgBo=65)>ma[q,$Gqq/Ie\pD5a>nQ*f*9p?`!@o$j(-^KW7*Tse:WD1^D?Ml' %`Q>9iWW*4&bBecoDdN*MA0Z[b>B:nj-Wf8'gBK+E`h!T6p%ZZO_m7NkZGl@N>+IWgG-T8H=cGWKU*cLt+@hk4EDF)+JHjcdnoM)4 %qdE`EI)Sh$6Ggc<(FMkk-VV0`0UqY&$0DlQ+m!9jb5u]\N\"m:UfC*&O$L%O'>BHR@K1as/h^P$Y5m.Y23P%G(<oi">$J28nW%bE %W\"WrXjTT50jJO+V,`Nc+a=9bs$8^+eH?A[l):Ps'LY*$/W9*BO^dRn>NR\W0>QsM3OaWS)$39r,QU@(jY-p5718K1lqZ%#m.Cj4 %*W:XS@^'+;W.]C)fQbu?G<_%E%IXU-)H[XcdRNeA,ZkRZN$G-#:#ojN.CQljo,!QD"`u::SSQ6\PRrlG\9#c4SB)i[Yfq@b1]rjk %=,/k:U"I7t<\rN/2S1tH.uTLU,U?7-VV@3C+f-gWX8T8!HG5%UfQZ9s"PCpYg]-o_?upu(X)54O.hP%&^F,YeV9)@k*pJLIST<ct %gBWpSpQ,u`-%<;h!s0[\)h_kY8g59[U?qWdSAsT#p16*f1>OqB6e3<EU662;Np+I;!C$hJVM7+(P;>uaD_.01R9:c"m8Du'Kf:`6 %`u)m+MegKQ%_IJ8!LYULX"!MF.T\l0Y1`>DVHC9!"o"e&=@m$1_Kp2^Ju($W&54kj6!8e]okKsdaq:G@D:-H&i(@mWncND`[+m?X %Cu?TiZ/^G:L.]YnE7C2DT\'_4@NGg-DVqZc>Ok%MA?M`=A:](#))ql*jFAk'.KqP-Rql4!BTds#\nf;h6P,?.@Mtik/'$3TZ9N/` %'`62qY..SlIcOTl3JD/sae&sC!G'cX\]Xj:#''1W,8s?iG)@Rr1e=9'/L;d/'K`4G+s9f>6>7Gc\W!NKK/tQ5KG$$g/NcT<mYR4h %>l5p:307T=.b2H<GqRb4^`%%[`D<]\09jV"*[kJ:Yh*@tkjN\)-pta'',]Iom$KZ`L)^]\V&PT*KS75ihiKc0qh.=[/<D8Z-QKu5 %h.I_Q86+B?*:h8%k8Zh)abeb5kn*/\>S,V'Z4;*=b(_ML*98,L.G?'h_HNNV4fZdi>h;:,+Ym$OjMNj7Z4HIFQ9P6Y$@SOr3.o7q %$&EY-"rW6o;-g7(<qu4+[V>m=L_ro\(Vtk;.N,.,#bP`KgD3Kl+'tErGYJa!eIZ:2`J8(3`R0D0Va2;ph&.'FD'5HuhJMX)q7E>+ %^*[54*XO$5/0APY\I7PP7i'B@W2'1$l&M]<'@$j]e<@#pq*aP3P`TCH*0]&EoT;PN$g@ab-hM1`qNL8i[mBt1A1uLNlSe5H&M-9H %X*,4<1..]QB+aYUGbqgWaLjdVBY?j_q9Z^<]*L.Eq2=V'6YTR2j3632NQ6k&%U@"jlncMmA#7U7NMK2/V=b`]rGp,bFrOMYd38Co %nf)!iF3[YC3.aR\^Mt2PNo2MA'"-oDL,+Qk]8fPp4cWT'X<5aLk.r<Gac1_!_a,,SD'35l3NUk8#Y9g99SCq,C]rN$90Q^",=&I( %W+mOXUD#&@PlTEdF]E9*5icp(UpUlIdC_^b,[Odr94?8-\&q[#dc61&C^%>S]s08\[p3,FE#5_^e!^Z.SB@ht"VG%t)@SFbA@p>n %%%);M;V*6_2k!C-_':HFVc[!UL>_qJ#_NDRLo@l=E]Sq+*f(f[)QkHB,atnLaL('do@74]g3#tuas.%?6t&WF#r#,RER'Dr)51@a %mkBQTbb59C;&o-PN;R/#=&rp<R&5u(Zidn,*tUHfq!8ROX%E\!@N1r'RZ4r#qVWV?c:j_W<5<Cnbf!Y93\!s]I)LS7e!5ku&'sb5 %OsV.]'ZlU2Y'>:Q5r?D#JXc%L!C8sP8!9:hdS^[96]dhc3EooJRS+MB+NT2V3nP#7b=U]"5-qQ'_bO<jVBE-B;Tq-m>Y^$HT;\iN %%2;QK6bM5X!nXHO77\ba3g@E'@L4P8Ns*^g6'!0lf)0(+;%gX:)_jYMZIkFKI0S/\k@/mJq[JiG0"NCcR#_CnQPV>l8s)+=cAot^ %[p4EPd_P)hRNuL("+!!QUM'@,B^5i&7kdNmMl^t(4Za!e(i2545:"0,fFFN0_-lV%9Ns*mh-aQ*,%tATI<Mq.Cr67bNm=BH[U674 %Pr4Zt$]n2N,O/l8<[#7n]AT^-)tIm_>jGtU/4`ca[d=ePh!1((d]ERem:JGR)c/F+/=Ojs'(dGQhC(YWGZ"4H:I)($Yar589n5'9 %3u:rb&l]'(fd)Z,DSo*?#c>`b.U*$U^ng<.OSiY,<At2F))E"CVA[`R<<89>U2MmiUAQJ&>Z4Z+3('B4Pc4['J$Ii'X9G=DQ8M87 %M0j<A"7!g1<<@P[ZI8h6c='"B;ZV]LjS[/<(b\niS7dpM,QAb#df!mFJ%4$@6(7Sd\Y!0Q[$BFmC1^38(HkgH$GUht[HoPH1:G<= %*VugJ+)Dk=Z(knJ2L_rOpe2oW#0@Cg,qn#P=F:"H.pGF:$+k+XF)lR6!KCFV!JmLliI]QT?H;36Q-D%(:39<s'%5ePoL.3Y%Ke#T %r!^DH6JcckgC"kO(3;g*kTjB4@BoI1DD[\83=`Qr<KbUmUimldR!;gHG)*PD'(Q`]LR"ZtQmC@Hj^8]6*Gt[,-:nWcONFu]R_8>c %_?V\ZZpNVC!$RYAO]a&W$(S^GQV7\IkZJD1'oKtuJ]HG!YkeB+bjX:;O\e`H/pB9"6DB1I,s0V4r='U!<44cG8`4t)_A>2gCPMtR %'ErL:")aF]29Sl>I:69S.n%'Z+f][ul1RdZ<Dk!Q?miHtLh4J,D9o.s3J4"G`2.98&Aq1BB>fh6%=XU*5FD4#k.EDa0KeW<1Oe-/ %l47nBPKT[Gk!i^$Ma0t/%R8!c]\>!MbQ/io@h=b,qqu:rA_q<2nlR*!2I`Q=N*WG#Mo3o&j5S0NA-X/*B<,-$4:qQJ/pKgnV<BpH %/kfiK%0D=F1cSKs<"m%[75Sje-0+`j5iC`/Su)[Ui)=.M7U3m_"9_C\Dqir;M8LD#_AP,0V8@5@"$o1C_/eH10jHd8HmjUm1+Xa= %(D[8'*kRV23?LgN;=<,YannVCaiAk\b_')VEg'*ZfE5$SEqUp7&R"lC3$,W5-0g,]$+(ugkL`stKHFb'XjsSuWdFGA<2NX?+On<= %Gj]QD%_:eP/p!(I1qqfpQ+?(f/K^h1P<U:r6%"F2*LhGH!.aBdr#hJVj9=P+CLjU&jP0)&de@SKOlRR/1WCa`b<'/fQ3tN@ZZsA? %Q-&J"ETuQEoJ=dppo-qNX=(qo[PIZe\`K_Eq8cQ(q@Ksto$Lt?c#FA4.ePdS'P02uC7mRg-1U83)+Za0]-UcMN_!<Y\He+uV$?tJ %k.VqV`H+7ZQ6\fiS>5TsKB:>9:%u<>N9!oW)aZl'QR8C:VqkO47rCkJ^7$X>ZcO4/\-QP"I_^d^dW*oF["DJn$\X^t;%*IE(F#tP %@&oH]iSEITlZOms2i<N+J!Tj^mqSXIo0.>h2E=-BZc[h+gcD^[>fbUk>H3F=,SWYA6=-M(3Jal6aH"X\J;FeUk1!sEG&cPs>951& %k-(A;Kj&(2'.NH6A-23(EUiDm7<<&H3YFjQp<Jq>>X%_CcT3E#[P!gC8`Zg:"X26\;U.VH(&^)s`@2p7VAic"]k+W&C`qfsi6Y?D %=`'\_ldfOBH5oqT(mTA!fl&[,!4jXg\KAhfZgY/f@R#+$r>Q2pnI"Q=SUp/T,e,(eco_pBQ,ja'1Sn$1ONfb8M:CXMJ1#GkOY^W\ %EBF;ld.rnEVqu7FF>FLpE,>&lY\l2G$6mlL.I+_4gC<._dJ%t")'@L"&m*],=W2J06dB@DD]VY,*n[9bnFP9AQqFqS)CE"[+B5>^ %!.sTM^6ZRH&n7G!OLd0eQk9I/$[=-J&FVW9$,"@$0I[Hobs'`@'"a93aq9$D.*>g[_%L&82BO5:>4!jsd$PV@9V(cmRaV^4"9_Yl %1\LP$m*$uG00p2DW@PCe3g6M9X3T[D=q2133*G,"o0"%>gaMfQjl[bj.&lWU\S5J2Y00fJ/7)Qg2=lGI6ppgH#Q?(fEuJBWX3;\. %=`AOL-q]4E?Zfb3:,0ElXFQcM]EpZ;,XMjdK`*7B?p_NXnVtjS&R?8[aI#GhG$8jmb6FhG1*]j0Z_NV02eR*`!F9Lgc?B%nj-5T0 %m>Og`iM8olXZ&5DfO1;T<k9j,]EO;ERCm?IOhc*1^6js;]NQ#4U<A8-.MMAlenep@IcSGPibW2L>-Q/U4#4Vp%T=d4JGjEo).qZ3 %ad8u:oO*['Y3cl<@7c%G_)HkjU-gK8BdQ[m4.KhPc;&*c.nee6aca!,_a:C/Y=D(RY*`-%OX3iPL"YSk1tWc`<86JO(t?dOd4@qQ %K8QWRq65<W$&2`$J_QS'"X?$s8iNC641]uKX?0fC:93Fe9F(h>8bbsai]a4_*BtKJ/jkI!CdrELMbf^^&7W@]-tL9h.R+>^Fsc6O %J0ZWQV_q^&SYW9l+]8eenk!nrIA*0T13]e.F!eLb]oZ%F<mjHhSg-atM!^@^Q(mZGd#_WW_<*Q^%\[DkFn4OK>prrXZ;mfsS/R"# %?F*:8Y[$/DS_A2&^(f=qWEc"4Wu5mr0X5I-/3<:B@/sI2XrkX%(5=.To+`_",oaRjq7me[=Dk!fI>tP_Y2&!8'C8=C4ufjeEXrYG %"P=_6iY8sZ;d#P6)kG*6FYGEb%CcM[.=^mHMD[7J`aXX81M.imq_-Z3]T`^HP:t'n,=I@)"5'\0*s:@CGT^Zl"dd&A`mmuDN,_r7 %i.8*J[/hEQ%tr)_!'c)@JmOsX'Eo!M'd0=f;`Q,;Tgu.<$Xco`SB5XWQZ<'KJokFb,S(nW1B9bJ_6=LNMKd-O*iL39aUX"k5V,IO %[N``_+$t%j#L>VdhjK6W0,sdTG't-:#P6:6NL=ZHruksVlc/G2fghiaO\;^k\nT1XUaLZJ;XNBg?,U_DaLcgk'H\B<F#c@?HtHX2 %^utRF]H7^\^&WqI"-(5O]"*Qs6Skf`R2#(#7?;g^X4E6>,*DCu/:W-"'HDn'fr@mGd9Og"dI+l)cbHDm)>3J6+?6.5`ohjH#iD.j %CK0Z_U7+A"3@bCdH-'#nr^!4g._aOb61g"pr(S>A1+%Qt3$Obq'&j[1B56Dq\ND7E>U\9cje]s!9I!_NEIJ?4dY!jjm=<:JA.(WI %`56W3@DV;R9M$c?>euZ.*13H;%QJ<q1M:[d(k>McNftZ`'nVU#gp:QLfl"T"QMH%ZFsaI@-Q(RGGZ.>F)K:G`c3<nD]%CVF&W5\8 %Y>\%B;Z\9J0%aE<)'2HUK\Ck"5#7&B.VU.N(^pTgcd!TbPk=7u.-Djl*,I5MiSN=l-jGHp:%a4B+9S^!QJS*u$V>pfmma(OaC$qI %:[DB6#?jW;`5qj/]rf\!ZMg9eQRB>VA]Y7/S<H7]'+8E_o>/Uf"DcS9(//r(pq0r_j,H-\0Ud'j9(3Ho=cV/Y0p]/PWk/phGF%]i %:M%ia2)Qqr7'i`diFG:="j#hUo>WF!W^ZS)[q'#IF`4$dcaY7h#",Q%JSS?;jKNLFQ`J1J)&pU(97E/XCc4K5(lO<t3ut8f\(Q26 %*qQod-4]`,!IESE'bno3/tRGsoD!u&,2F^O]PYb\lD*1ELQ"/epu.]@Q^laEl59?(WhBOI'^?0r[jAA607$(#XRdeG^nY4:"@49t %gnA!e#+^gV3'a>V\P'VQ!0\G0nnuK'RX"nq$SnXnT2Bp]Q:UJ[M2?WO&WT&]8\W>=:+bOb#^o92KfOd-;SM1!Ed<(@omoFcjFZ5m %Jg%>[H=/Vlr*?\<_lPgjR(K`kA=,?_!fnc`M!\k.QhhsN/f(.VL*>srjEgnMdlF6eaA']qcGlBLW&`T<6fgiD@LGcQoIp%,:!suN %QZ=Vp-W23'$Q&,2N]Cu1i[n/3*O+>[r]?E*bJToOV6Y>?0#r:m!=e-3@73:PNrsE2[?/"2p\9p-!tRBV`R?*kGnVNs35VHeN')Kq %.;,8HVO2<g8!%#";W$=<3R!@X:R38[GX#R&K'$\Ci0*!QVcd\,+2,l@V)=I2*RMb6J/!Bk<Wlrc0=.3"k:@WaHo[*.i+t9@j02S( %X$n+m5/&Z2c7.$\$J7sLIhc0]I&B?iI5>NE[-[?.>9t6'?;Fu7?ZouU^*V#aVn$-8VHiSuij;+fK<H<AB`8$6'"NUqZ$P*^Zm5[7 %cQP<nro@>YR*)?T,u;60f'*2a5+HGu<oXf\^,@38I-[<tg_f](b_7<rMPNp`^(cX(oGMKeHoZbjR1A)5k].,_^^a,k,@rcK!2h:h %:0$/U;\]9QAD'jU2*feD"lN>^Yk%E4.h*C>,e9.6b#AIN]l;Gj.jB6rCaFYTWVf-2D,mfojZh=/.JhF#`LjUOBJq('-0^6Y[`)>p %pi&V,ndk=T0CV`u+)Xri0[#/t[;ipIJqHIQJ*?f0;2d.g7&Ef;a5l#^Z=nkq^1)`??"R$UWV?R?^<35jcfN$IpT%C!?S>X9Ju%Gi %>W$cGnGSJ7A?pu`5iBN[d;1H%:%:[!XrJ\eJ)KiG?7tC",$`l[j53tiau'R>o*@Kp=k7D(OmMnOCj@c**+KUta1<A3:u[Z[0b/5^ %TZ-umlu3ua#a.d"-C89ULO;?1+!':?,%q^HI;IO435%0XA]pTRC4%@hDk8EQE]P$%fo\m#X7g1"mke5Y?um`n)ofiQNUmi(R)J:' %lHRe65BDQ72H;T<aT6`P>J0GM@,=I<)Sadkm5B]aDuY$o6aYNlj`P1!&M^u@0&^%d(O[e1f'B'".=N]^<9%pn$t9\XlH*edE#[JL %L_aIg7l-TS!+$IE;M0^UfDIIal:P;lCq<=jo"M/VOEC\q=uk[JcLiGe9/2_A'!W!FB_V$@Dguc4/QZid6j!!+QOCc[Q_c3\B%@38 %-JMG)=DU3pbH6-)1_pJFA8.9uc\_NN^"q>!kg]ePB.4GI!7(kPhH[KIg!iI=m8hGP=Lnd+i*<HgV&ZPiGagQt%MeWH"ha4bA^d7K %!Pu`1[@m+LliAc9?9aCrUa&RN^70"_lVQ];;PKdpN:B@4.3A;6bi7A"mh`He>*^XiI+U5A1rb\jK%c&$Tin[pn)D9pMWSk%PWfR9 %nm`*ZS2&/9#A'e/5SEEf\YZl&^)P)RX8/i@(koAD1r?WA%?^a]i-'Q]8ofq$[[3Bo]G%\m!`KRbU5TPM0UI`.No9E_bIC;,5EQ+^ %6T2YTfp=':@/Nbqg=R=$bN\dV#^TL6ouW\6_,V"]kf,D`cN+iN2g>Wk4]k@;h,ZW6*0"E[_j@K?gg>i;7prKSr87h`^i9nW;B;]( %BSK%uQKg^MJhZE&^-r..=jNaQ2C@QhOsED;Pb%t=0JM0\hFc.q):&\L3F)'qa'`;NGU8'--V!Ssdd1t(#9>2,@kGn$@Z-27e+dE2 %:M.46_3Kol?lL>MRL`,=bC=.lJ!!s1K1/R5=-!m^`M0mm9+0dFYN^hebbdR%&i0Uf\Ai]_f;k-;(bp2<4/06(kP<n<W.lDU)2!=3 %h3R$(Yk!2]5$OhHAC^5W`&1b)MaV]tFNHGu,"H5?pgs/JSZ_ut2eM[5gDs>/liBGbkm^Brag[i7,J0<hE81TJ3N)/R6pqf`i_jGH %1Zu7+K!Zh8c-1NO\1,Cu/SlBaXA^U,:n6Wrm,Z>6&Js-cTPDja@Dl=.Kk\6+,r%$8YtLHpV&T)"Mc>:_r?+S9%u<2jOJ6t"&)%Mk %4qd;]%sai7I\i4d#VRP2@[n*El5Qcuo&V#_=K/Oa;-C.#ngq)=.TMJ+LEJ^==k*c^+!9##FMRu<OADFuP.fEWio4ZYoF;lOKdAl4 %,*.0)3.b+-HT&S+"ECq'k'L?EhZ;'>nTKc;UmDj[50EV,i'>C8'tsE_aG6:1iuBGl<K$DC+,SuOPAZa1T5LrrQ8s!,-(QpgQ->BF %NFt*03;(5Q&8#9%i^$5Of+-VRH$Bg%>7rf_EhRBo]+XVd1kQ"AFI<HY=)(&H+_6p;VSg'lH98t.Ec,:;3-<9a0UWKKc]Bn.GS?9l %-R3k#Sne+o3@Wug^\GTSH0EE5Ka*MZ"QG5bXC:.S;4f`ohnM2@\Ja(:.Wr<t>RO+BjYA$Z4-j2>#:U?X)&o^<qbI&1&mt=ABro4W %epQ\=r9?8ZJ@Pjf$R^b5p,d[k:KnHMY12+s:d`VW>/\f(DPV]^/X3YpU3K4gXm]]Q6/gQ>NA][Al<THN&L3,!7D@:dRk'N$D#7Lh %o*t]3'?N\df(DiU`8!b=U**S7Lb4j):^S7EU[=`oM[e&Q1&:>Td?<4())Ic6]P`0R`5YRp'aj8NFN1:rR"S@Mf1?'9)s&he[bM8J %HWi_`n(L=:Yr\lQ,jccFAU1><?sAOj;O-e$>S[e)Dn8)dgO/d?rQ_b0AMS9Hht>r4382Bppc\AVG&Z">No<n$[!f$&38]Q`96i's %eQdk#$"PUl]bCqmSY?VDJH!jO<M'PW<l]?2\/()R/hLS6/GB`<33e'F\<K$k++=`U2:/-0f(!=A\]bA?fK+cJDbg.(RN-/$d2+]Y %YsVmKl2,/PBH&I3*-349KB!n1Jr>pppi@PUG\im@hValc-?4/MW\S`p$-,#`:^"Hh%(;5rcJQAK98A5%Wmg^i^sP&@`].-DEGFIb %GAY7-j>orca0LK<\k)W7\P#\9F0*MHdN?-E7*l<0]ZQ4^B*G!7Q0\4J&)Y7O2H$Em<cT:eK+fapL.eMpp9F&EHmcLUa1oVLT=IX, %$TDOHL9$nG?M$-[qp,&S$/DOUha[c=gK5?>7IDCDE+/o>E3VI<lbi2Mn<7pXVS8MFWf6+M<S@+-=0(Tk?d7c63[E<s>p$5'UMZf# %k9BX44#kc<Am@s![L^-.UC[7/:fJKK<Q7!B[tk\E<.<UJFLLYLKZe;1:>\PD8)$S&hUe=q=?8E7"%R<51;(&VGn5\nF-Wu_Op^+/ %Z7%hj^]L81Mt.3>E(bZ+r.OZeLuhZ[g-0ll8)%,`o3C].F`:4^a)J:ECY-V<LEk+W>X]8%X\<D6aKr^nlMOWV9l61f*H*J'L7<Hg %%TTW:57KGb`eCH?''4SnWInddekAIhf38'#eibj:GTum;gp]'&;OEU.`1OP]_hh$GL6Fen/_BaW>%lJ\$Cr>UrO<o;lU]5Z\W/MC %+2<TNK:_bhI!f8GCl#*5(67HDEje!u^^5;=8'hL.=UCiY#=G2b\*pAOBe=D*`3W'Cb7<[__Go<2]t!C/+(r"soi?[Pda;&4:KGi_ %YH3Tm?Ze!9k=NJ,rudA&S[OTiKqiL\9_E2h,Be#U*M%2T3_S)FZA2BE/q3GWCK)*7Rhh$OkmMr6QcgjI^XejSeED5J%?t%9aePqh %4-i'r(<Vf6A3?[-g@qi>TR<YL%i<QNgd>"n/SW6ERrV&9k$1u+aN7L@K]EV1Xl9*t>Q]\L<(/<UgZC]^(<TlJ;*:r"Y(n'U4U3f. %5pt@g:TH7B"dI(a[BXB(q"nkbZo;6ra\Gj='6_'B#*u[F@+?ND;>S,JT/A1qrf(A8plmgf06%6?T&;-%lr*/I;JJ7(RP_gbR,46Q %iQigE.W&Iilg=Ra@9UiZ.QXEu[Hq9R/PO,8f:-u4p#@S;0YLSBe=&]60(>i$H*iS7bYTFnZAP[(=YQLRe_55s^pA3pO@'FV:SEO[ %)L..)eI&pK_B,:2R6m6$^,*#dMTpj,YBLbO8HQc`,D<IT&b3:d<jhWA2=R\Q/ei\+:Kn?JCZ%&^UBY`*aRA)EN&tSXhR8@<WQ)JF %nAWpAX?s-b!/)Bk[fR.)bo<Tsoc5V94DU8k"lIbWd_f9=GSr$4j`VZT4ZpH68?]\)a'G#d[](3g>#\@"K216io?BY5PGNu/NH,os %RC_o(87f<1)f:S;FQ3"UKY(<r=>oE;mY@s,'Dc=Oqi>s):l081\UkTEUGB[>[BA&&j',pBbR-?`U%IAlBYK4u.-4':hp&_;VU6m` %2RX6HXNL=8,91GpO+eC8Zt6Ef7g7A-4Wg`RoML$\<?!IKlc!ld>6edkE&'%L<oM2Lo]+%lCZd78[;mOm6?*!eC'SK,VF^OA>>h5` %p..$hd&5HPI6XujB$I,*Vur.Y#sGXl6Sk74>$X@,%o"\"e(@s-@`rm;#DR4n>p<bs3Td+7>b_WZcfQ_.[<DL*d&`WMC3Gm8ZhDbs %(7O/l[488#>C>-l'-Xdt[F8),;,s<!X(:$E_aB9qD)E@q7AX&?FVJ&)eh.d(aqDt+Rrn0lB)e-%KT&o:X7%J(iL-khl2a"hKmEgX %kAe\OE$q9u?)DIZH/)THp&2B9RPcVFOUnT'gTe$BbHQmRj3+[/<o9%s_\6s61,#q8hfY@>c-p;(W*%X"AmT8X^8Dq[a`[<je?H$> %P\%HepS4$sL/hC6)'>uE1![ISj2qb8)5Yli5-(E.q_-E/SL7Z%T$.8%YH3)q9[5M=4k*<8M&'rKR]H(c[8=:=MW,d:k.ZUr#DM!n %`JU_0U/Iq@jE7oVFXLjn%=r9+BUoUS;JXl[$Vd,P64(isIUWg>2UE-cX0qTuoOFrqa/$IA2e!i>_F8[ijC+UCDT;khF6<V\mts+\ %V42"$5H]X9c#R7@IBo4BFtL)/JsLC+[CUh`YuLf9(%XHdP)Cjk,(%D[XFZ/[IP1^5fnZ.M!7LPu)^sE.Mb3t;qcI#MFT=i"YSpdX %lOF9jX!E]'<"[?SN9pf(Em*ttND/nqh<"BI#B3r%YB?DEO4_=s2H$Cqa4uI9i)G9NN/Q4X>p!bkL\Y"MVm+c6ks[F/)'@fCH8ZRp %>>Q]g;sX#KDkmh,<[63f>p$&"_ei!`5L(\OiB'$5JKq[h3di)334`HM*f"]nmFUO,!+1KL*00U.B<5a("ip942pt6hbFs'+hhc7p %EMHdY%-ikLQaMIQerUT8>\D[1%[*oqRM2<n9r,?sXBhWtZB(/kj=J`CWdQ/<i+96D/urL6cdY:fAl>T)5c(*LLK4ZW1JUrPY+KtM %NAo-VNosk9en+3L\uZ;cPi1+*bVKU;XAZEcmlU%k,]/dhf\XfbbYnm`/nSV5VUXik=ne$E3c.X]ju^5h4g(rP+q8OU%ruY*<]Ik: %j'jsJ_^43=EtNCD>uRrqC[,;2b?VV2bH^>Ifn!CCO;YH2Dsk7&7p-[VP6WXIB@`Qs>SZfQn(B<I`-DbO9<3iVX?]l_D\"A+;Vt8b %Tij0%PXONdO7/e<)OfVaea!"ap<^NPM"5ZRFftJ*Ep7+]6BTUbTce:47&s4&ogCgsf@8Q!eUk/o\MS42Bj^HAk1mffe8ht(l`)%< %f&.<C>#LW+<>G),L<F''*Tj3E[O2]gCoH%\9hMOjT=KTOc#Oub7U,^\4gZ]];K/pF9A`N02B-bfj?9=1fT]TCZ;d;fe-H:gW",t- %f&&:F@hNpKl_L\EeABTk<[Oe(g;c+ZE41Y)%%!thgW-aX,OW<aGH[8F>ft!/olAf;f?h?MHeii&!iGGQ9-)XWiEA4p7`p</6>@U9 %K+mMMM;hFu[!h^4*-E(YJDsfSAh%@3RXf)SG4E.Q#2Koumq20DnZ"We+0L<mD6-E/M6)cKK/6SJ$l>u)]0?-6%eFPi#:QW.`\E3+ %5T/1%J.dpjXTOf-mJ9rZJ]"LHEQiiI*LnT)O`@WeU$Epc&tn=\cGE'^W_A1GW#5r+RPf@0*q>A(b68k2e\#-;6d2FqV>;762H$DV %f"$jo"02(.$T_:iVOQDG1B4AX)=#+aV9F1F*D;FQ$XZVSKm)E*F[L2?V<_W*iFj/\Z]eM>L[3m.7SX)Q;Q&p"mGV`eG%1kDe7I:G %p3\WW+#]MY=V8Y(p752JmmjL&S\C/Ua^(/dDRkh=K/5H*";`Yjn<]BABb*_qFHP`_9`/;dLTZS[+(C<:DX[gb'+8*Q$M^bj-[0Hn %3aF+K$V;<!1-T_bHC6icF+KR\d5mui,jZ[glDm<'=)=ojhJuu2OS@Tlb@k&?A6D/D*9j^8>ei>_1Df=[D)ZM@93^LEmo)?7DIO,- %<kpI_<bpssksr2:9&R`/oih`!m`eda8P'E[f:nM=!:!b"IMunE<e=mhQ[\djMpQ<G#YnF$_RePqW1h>1;(+GMH-fQb+R<"gY6FuN %")Br*AK0jm;:k+0=^,RjbR4$=K_;\Fcl,QqE6>RThbVllP<l77i`s/q<XNu)9D?l*mCYM<IU&EHB4'q-]7(Z3ek?Fam;Q2m^5(iT %BS'0cjnjN)*h)o@Ou8c06!&bl/1s"\6UT<3-DA*fQmZ[H7]t;71UYT2R2"A?Y.:1,LK:<nAt3nD\aO1f6i0W(96igAW.*r'q$&X> %LfWHG_f..d#9g20)eBXn[Tq/IqXPY#CRIik1j[^([Y)-@0JdTH]tU\!S9Zd,ITTK>DQ(]'0>W5jm,IP$:r,N6o1"K=Brm?`47OmJ %D3W3h0-U(Q3_1Q2VI5VRFIfL[83GWF\(tekhoa/;f@[8e?*hP+CWC8B(iiWSm3B&Y[#L?-Df1!I*Ltj&2dEFZlM=%u3'=*b<tC6L %b6Q@)Mk6KekPk[5kRDE>eDG>=G1'UAX#bYN%304pATIdiqJ[Gpf>%u'XA8'W8:*>/FeVHWYmOr>A\=gXSuXu+LkTPCV_V9b$sk*5 %l#N?&lXOejBH&J^pY8:(i)C1g`hh1!qZqO.4O0IM(\8D><?rMG[a2JQ0uGk]r8iQe3V>Mdf_&'.d3`%]FFtt8O]j04JtdK\NOeLd %hEeshIs8CaHu]!ep\!A>Dh%B@e#3)(n)aH>r?'n1f90J^J+gMKn)$7_Is]\.j8AMdT^5336\ZTZ7pZ.6^o?O#cUIlo?hs#;UQ>FA %Kmu,Zj0+ODoZu"V>;#rrhgur2qQN!PnKhD!eYg>-P.hTu?iL@]R#e`3_r'K-bqEt&`M4n1LTi9]E[2F_'?W;550L?,E-T;CJoSdN %nt(hhU0k[ZotEQ@&arroTN41B`pT\/YP^dILOCb'j<G_^$fB%[-h_L+3BF611Hus=2moiI.5$"c'eX0/9l[-P[_f\*d`jZSW^VZ+ %[B396H2eDi6aMa,_bUKI(X_gd-G\-WHkjK'iN\$rVp7#A4LfJG[ZIi[`WWdY9r9!+]B)gLohqu)!bg_R$1_.d)EF?'dcC.%8E4,h %'qP"p*S/`S$8qIFdE7n-.G%DFfmmh"iFHdUPT(qta?BH3OF%R&T@3pA>&`dd*`KreX_mNrAuU9A:L7#D<'KYj6X^!`7tIFP>hR_' %j^m!D08sSM%nsJgBF(&gbM!j(=Noia<JNfopiG9aQA_c[@NY(;$Rhj4__*`p2M1JCR:@pmBuX#rcC(o(>AS-Pl%@,_*s'/dM8j %Wc;i,J(c?(1@'1bBf55PX5]'gcmkRa<$Mj]\"^*J%>jJQ&Au42WN<'sP5;<%Cd@C.d#tq+\XEAIgqunl\JNZbZNNKe`WRa63u*uU %3q[4@1BE_9`<?";+s#8>l+#56f,B^-9Nc,ZU-#pRg<eNA(+ie=fmqe;WMOZiEl/"`\VHdcE\F0MB:/`DokF`C`H6P([*oM344$c_ %*QT4)fe),qZ!6j!D$Og<>#X#%^.u)8AO:!'<<i!_8@LC_[)d3l[M?ru*N5>fr+(n9&Nr?O'8Y/=*N2p*;tXk&*VOZL1-tp)>.[4# %-2t'/Y#Sja[B+(>VNn,l[*"grX6#5a##pKhVcpotR%PSrn<60+7J-L/Rm<cUm6LMDbeO'aV]5>QT^Ke[YHbKE^s?i9k_I:je.OL: %E]]JX@W>tq<:_Q=`MFYkMbAs`1/ht.<P'br#:^2o567il6G_!U"*MobJofE5jjQsBm-R'/p&$\UG)N(els(]>CV4+k=js*,.oRrK %f$I6]qQ7hT5jcV=P.<oi[f`\as(NVM,'n\R';Wa;+D#i=KqS7*:48T)9ONU4D8W4dBsV"X<O,gYV!IM?0t")s$)COt<fXJ]L<`?4 %.WdSAp1%k%>bTs-JJAjr1m!%r4[1kHW/p>A:QqdSr*cKBp/YR9N'LEHQ-h@61KsELD$4U9.EB!(ZVkXPH+=nU2j?E,oI?JJ.nbf+ %)5[("B68J&:pG9?8Kd^N3dtrX:hQ@`9r@@MLRgcaRsq?Ar![)A<"r,=4qrtA!(\iIXD*]j<48&i.5qqZU=V`i$rVtgm3GC6]"QWq %c2@VALqSV)mpE6b9mJm$Ar.:kh2sR^Ddnn*Ws-H)-75/GOJHe>l"qQVM5*!A</\Po9'7[QqVC+NLB^V=1<LS'=dt+(_[Od<o@LBU %GV't!e\e`t?]3DRYbq,:WGR@%Z@lhk"m%Mlb@WR`ojDj>?u6YrK509YVu1[S(Dn/g>jB/VI?ZV:RbHAi?5%B>,rL<,-s)&786`pr %h==s[9>!+lFnWT:HY@N$79/oeb[NW@MQ5afI&WH_*1;d\3&igITPW"mAgLE-TT5#(>a44'Q,.(aDeg?5*.D([_<.q*X%%1nfUGud %lI^]I>;KCY)JZZm9sU7Y.s6J=-3glpd3@$ffl$MCo:*M+<oL"#Rqgj4(LbSr-b!jm2N=bTY+ARG;`X+rO[5ApAX(kKGE'J]0LIY= %r7/1^`rZcM4j:KuU2[35I@Y,,PPporN4#>V;RVNW4kOS7\jkZ.R^!cIrp![@UZ72(4kNq*(PQ?nMrLfP:=cGE)/MV7'adIM]2gm, %op].V4b*3c_D1XFa8[Jb30j;GpJDW"%KXKpmLU=u,?p_L;WVo2:uPB+c'Ck9'MbbJX23r%YuNbESi,#MXYk2t38)p>lG;2`WDtoH %"n)YBW?nA&=KRs&b?Sp92#E^[[?UUjC[4tP<<emFMCkm*gobfFC0T+)#qi3c,[Y3g<?o`H#:[f!7mVlUK_@"P]ri4r3qbY#Ud_07 %k=-bo=sKHU':NnVFC/GW<<LJu[M3;4,=(X3C=JASS(i6f8(Bk?ZacqYCRT+k8fO1LT:1<HFD[\Sbs?B&*$k:Mj*J-.NW8R+>CJ7W %^W1;<9ib0Jha@CG4\BOhL!l2W].^dF/;$O-QhD;i1Ph=kRBM-b50,%'SA!Ggj.JB'Cu#hA+*O>[haq0m^%CF?NW%XVe!Jh`^7;R5 %O2qOFo+6b@4[848T6WSV/2J@]GAkDAng8"2jLHTu]L'PB6(t;&]dp>$^>)"0\%ZSP:^T#rTVHD>4TW$3:02na4<E[[nf-q0.A41p %U9X7u(P:q)k_sYU@Z;mNc\I5\Mrs!M71%,2DDr]V%dEr%HDHL'D9[hVKo?DnDbi[!#r[ueZ@YiXf;GE+BY]<Zh\N(7$hbnXVlEjR %TDK?A9(9ak;J_50Z>j_@?o6.lNr*g,&Zj]/GT"V,Q149RG="25i"Df,hl;60Q\2#&374$c078Pq!7#i5<0nRj"7WQ=lsQ?1o_6-+ %(riKb8?S%l!L?8\XcoUi'S4g7Z>&,n@<"(5=5dRFY^VWH5K7gYHOru[W>1Rg;Pat!gaWnFTj5'1^$n#oX//dr&_\JB)q.%Q[Rasr %?-N[3Mhs;sZW[Z7/Qn:FMQmcCEa''je4r.2dlTG,ek]3kW&;KM'59^(D-.6aT[sD%c]G7Ip>[]G>3pN79=Chd&Os)t_Oi;8;R<"[ %O_2U4Ojo"(d;su%[B7dsW2btH;tX$G1eFeG\$?n_CKfcQO0r%jQ#SP,5[%-r[[*\oWp.\QdaWrDs7")`8*$n_("Gd2k]);[O2b?] %,OCLJ3f6ng<md/HmFB]r>+oi]&.YdH7,HtJ7t)plAPb-tfp.5*fO<dk7]dMWeB4\D]Z4TEmmu&5pWE&6mdYV&K]]\Q)HX@@X+?[Z %W(1G\U`P;r8lI(<dL]tc]"pY5@5Zi&VAs="N,R7T+)@R8Z^=Jd&4h-0`0M']i_KZ^4?V&gJZM.uPhnr>(ldghffZ3@A1+&p?uB2r %fjHY<VRSHoL3(mg`!3V9X-NNXI;)gna4cQr*jmbp'2?pmLA\q6"<%k-\#fp"e4NO#id*<0[M`J.?`VSugT<;)m/U?&LoEhEbC*T: %Oa=#(ICV59b(iKn2B'pHrT/80Hf05R7p<2#BOip5X9k6:.[gbo2aFP7D+C(RHqr3k2/PgOE253_;q8cBUh[c,&:L'UlBWH27Roh? %VIM6ZLc2!p#arEASs#F#U]&O].d^2r@&1brg.m@)DJR#=6lKJu)WbXI^)Ko:iK6<r$?A!rA#)8qXIb9rN&B>\U7dXJW1&9mWpC&j %r>[JLW8>ED9CcV<Y8d0P&A9qQ<Geg2a5<n]$:c[[ibVbK8`a<![Is<]_p2n@3/lY/a*kt*@mU!BdGn*#)Vj21qn5N0fcsF'3iMgA %q_3:tqa(P9.re^#md]WrFYnR[a7WMhSS(n0f/%=%^cQq\LO:Em1^G'1I(%ok;nKmN!#suhj]62J2Z0rC@cVDr&1,f/%Qc?5U!aGd %.\dj*+L:Q+r8ef_Eo_N6rDO`NRIOU,fZ*7'-1^W-_qoci3"2qUJLs'+4Wa>oSr$VZ@N-Q0?7!D)#/S)8'SDP$==8*4N<N!RFN*+< %@Dr8\+^RgWF2#N4Vg-AYGV5F>ML(4$L#9?QS/EK$j`ckA=U8E?T0pd(_k>4%TJ;6.N1BL;SG;:FR%_8Nn;EM6@OCS%Atf\lH+0L% %Ni'8r8X5("Z*akeObA:>1pE_Zp?30%lSIts^aU=-N&LFS^sMYPe!'>f48#HgZDhEY+HO1E53n2jk8_7!KD:ZUq4'<(Z?f$lEQ@rP %)ZuG+JDN/23/h.MVd-dqXN@0dq1NnEq!8+7'kDRVrb`S>mtRGVB0:BN$iH$cd;TK)'Zc(*n=!Y>^=S.O9KQ:sH+Hu0IlZ`!2fYDa %'5H`]m55boJe#.4lGPh)hoS#WL7+>fioE[XhFNWbMlc$,KAJ)qol2/9*;Ol@L6^:CnaP;Rb%dStIg(tXaC=PG4ZYF>*U$AR[`;uq %OmrP-qZ6*?JG="IrP$%)W?2>o%g2+#"7!&llM(7jPknfar@joD3hZJ`Vg]I]57XV6#Lj7dlA#E5qu/4Fr\gGK2P>L;:d5DfhtQkC %l>M%7DZf:&!VOp5qV.D6GS8n?nOt1P1K$@\h:)+c6#$-U:iTpIcNZi(5fKk/<H7=i`J&k()jRN-'t6]oALbt7FIXH:ZVd,0-oq$X %Q<OSt/dsSjW,*Jf\JJ%,(ed139Y`]VJ9<OHI=JHNEc.Q4r'7*<b1o8.ob.lA'+bB^&-`dZ"r#AXpL6S#%MW1c.()q*3`'q%SUbQ2 %!S^u`dU3.)?ip3(G.MQ3l+/RqCSS1XV!IlNRs%C+>pnhnMJZ1S#.cG#<nF1!Y,buC>A6p"#.e]5aNJ[2)!JOjctfD^0[Ot$&RC_- %\um*L)pmIO-D9hr`O[Z2FBo>t*DF70R"2ocfBTq$cuj?$f1'=[T^2F\Lk?"iK*_g9#mc.ikkf_3Y"Jk&<s)0L#tT[Tkkf_/XpY>; %(C,8'<#,\LY+L6GRF4XX2>Up\K18J3n'OC3Ku/g1-VYM%?J;@)>(8Qrd3+,DUbID-NZbG+8:?O'BcB=k7Zc%(;AqgcHRt,>PPSnG %"5@XUUcJLKHV#4BR!$<fnV0mfX)Q5!@I/m;c\%sCJQij4\20#3I!)AG:G3X'\jpl'[>n]#R@a[iB8`ei;,Bu6<(ARtaMA@5<7;]7 %pnOKCc[/o<flR/V[R[dp0CqFNr-BBpIH7>=f6,E/K;.Pg:c6/e+,+.ZJ7G3m!Cp"n;;A&2g!@REO%[trqjbDXMDC1N*&ZK"*k%K] %gk]m@F"^"&R9bk8cM]kaqg^rV\S9BeK;.PG$T7+e+,+dRJ9.>=kXWINOY:$^mcS$54.8%i5%jhS+pT@5[H?8j_`%*h(ietb`o>(e %hY"D=gs<mJGOK:l<S4E>0IV:n?#7^fgGJ^gk,m$:8*FQc?rZokHdrr@T8.CS4Oj;`i"ecfO8QhV449K)T8.At\/OD5nCQ<0,Et\> %e?7-2iUA8Dc_e`:dZPY_0$HM`;FeO3I8J_sS:+Z(Om#(7_@JoA!=ZFBil==D*_77N#m2;Y%j[0d'SgVb"?*V)d;)"Okn,n`?SIi^ %^Rp*DOW.!;@hEN9Ql&&TKMe-VbfjRJ=uVff5F@4'R2\iFU[^l6RN=\\MG]c\c-Hla"ZZf$'_epg-jkS5H7\Cu"qq[UP;+NpK*ciT %\eG>^'F0gV.LUk8H8LEj7M?I@P;+NpUC#Y*1;Tsl%U$!cYltfj6!543kkj-![L/$:_/U\bD?-[)EMq_E89"b]N$*fTUqXm_QE,j$ %%B293hhZ`0T*FYiGqO)uk7W9)8%;<Cj%$XTX$1sQV]bH_lg?Olqg>?bZsR%VCKO<![Jb-m+3N;)#aR0JVdGTm^f"Mp'>X,89S[1P %jo,:NpX1b[@\MT-NX&U_!j-lQYOnM]\]<e=8PBUi,a9[30EA%:^Qn7H#IY)23n=HCFAMB!h'd;BJ]W$GiK[Vt\.>?0%B$DYU"YOg %`n7ejU-bQ:>a[AQm:)]F_EB+9[&6n:hsfjuD(,Q,%CiU*nVUE>7e<,&@IdKK+rg-N7U@UaX(<bJR2Q(mD`\X<o_e,t5$Jgi+>![Z %]BlVX[4conH^)WV'B,:i%rtdN7^fF,Xc7bqHVKU9%\D4`L8S1bYL@"7%-*$u1jB*t1`AFH1L`Pa]5M'&JX+nFH[eJ![Er>MQbH57 %9:=#<2k7CYjK@8PSn@f4:64aT!a\,fCGsOf?pGup3m.uWWO!f-Fn<J5\O2d$iu9L,-!mA$f<P'Y>8,N#%`!eo.H^*"FI9L(Gp+%? %ghXI+_tKc<fegbFC.a`q*n$jb@n8&Xl.:Y7].3,95LH8k`VFqQ%ab=9?U2Y\h1+ZUe$IXn<G!*=@&K_c5S1CNhi+kEPS$hdARhO5 %AmZuSHt(P#3]h-_!qQJFRS)P,gm1W1/*D\O:;3u:=FWi5bnb)1WlDd)ArDpcGZ\\BJN;+Z:ijS/gCd`.kj.kcp1*?hQD0mU,*P/: %[EW/9@.oCAfFPFh4dus-VqX<lch]\3O@]8JlFAP)@5X_:/'O6LAZ?D!/tX\@U4(9i<b>8WL58,lSPeG%<lcZqe*JZBY(Be!:N:8Z %B89qTN)poI46A=^[d5XXgpaHL+ID=LRgC8Mp,$K5cZXmqf$FZdl_s4@(jia,p\9`(rX-hZc\=G,S!S_$"hG&_ecr-oTp=:F2hpe0 %A6iDLgt0Y]$)d0mL;&7C*Dc0N?_p9!+3NncP8tl?k"h6_PX%>;a-VPp[HLYWM+t<Z*Rat<*mO.c*[ldQXG*g3JU*3tgYY*J#/ktE %1%MpKUM$IX'Zi7t=rF?\bn)>!CF`q"5\W$[%Ji,n>rJ.Cp@fSZ",V8Vog/$d`d0*.=o16bPl"F\^ap%L@;<isf2dcoAW$TNDJVW* %l6nd\_cGG/:1'p>[3*^&a_;l5Sb<tcVOih'Vs8:Y=U`<+1jpD1K3+RSCrH!h`.5*6VPaCe[iL2*_S<t#)=XHXn$(G]/o/!+@2FWs %Gr#,.Q7?)l#!oXnNGi#ERi9Fa,L`EkA*1s5Cu<jtU"Kn:PpXeJ*A<9joGH1<Nm4ub0EtuSRD+^S@@T5t>P^AfmjYF.lh%]IB&FEt %c6^%WQAtKVb>8rG287:_l@`6TAD7W-oj4EKf?)U!1>^(jg!rrXjp;@XX7W@a_g.g#1XM@u1V.rXg/rE/p!coK*U71)<FZ#`<9`\$ %Hrh?[gqYo6C=JRAA),tnl0oZhrY63qCDWM4^M4]9#<(,Nam.`aTR)iN-0rJt26p0W3d&C5Ypo#)m#W4n9H@lHL%"I?eNVK@[Rm?. %A]AIe[RUbCaHYoSA?;g%Ic]q^aP(Dm9MPQSD]O9EpK+LA2<eE\d@Zj27$+^N_>53)G^Z-A:M&VRm)ct:AXY_>3IRG6dkZg4.D",/ %:Rb.fNY@@FHWeZ>L"t97A?)k8VgQ&oFi`jQ$0ph5=D%J<WS%JtHVpG]C35p&ABHA0MJ9GD<.1U%:qaj$Bpub2]eB36'_QT0<:_dn %qW1A%MVZ+=oHS6s^G+#6X4TJ?s5M;iQNq'94$9f_pko%Hce-FI3QW*4XPH$VO);3f7\ZgMHu,;NJpm,9H0=cXY[84eC)+U%Uk;pu %Fq/XK[kHURIX.mb]>JU>mhHf6YMG4cEi*/0Q)Cj5Cn(>_NrMuMQ!YF:H\n[1k3g4cb:ej6IWlWIE5#rar%kc%T4FH.d,iC:rUEq^ %1L0mRD/-d/3cKYM)=8idAoI8uiO=+NCGqGa\psVB4eF+Tjs?gK'XdJjI_i2N72#WqChpc%_1.<QY0$F,rQWrId]/S6#63*\gt-E' %>VpLTU!BD=NgKOejng-8Qh!#=NXI\p?s[3H=o%VR=M<57csOF)qs*RN93/SrkjnL4nS%TFL?!cjrNKAA04*[pe8`7Tm#A\*TN/1; %c.9`^p&I<%jF>QtG6r\h_XB3Pi45tq+(YuK'qq-6pgZ0q?F,^cR]p,+Ph"]!Z!$hTT_q6Zr$A.a$G4>Zq<,9aa4asJ9c32YWHl`@ %d`[9/okIGnJ'D$ICNgV%0_d#>lGcKe1S"9^aeBO-^](hUmsjs!mJB[thuDXO^Q;ngE)cjVpq&cNQR'=NJ,J:&5?^;IkRj0@!7K1( %e+#j+s5RGr59--`7H;icI(&5T0dV#YYZdohM!XrJJ\R"\F)\'`.K-P(NHi#e8][68(QT9n52IBc[tFWII7VkXpLLC:P<?6;Tn`qU %/(6OT*Rh+"Bk?@%SG68u0#e(g.%H-ri[0Alr_&sZ8S\rJQlIP][T2Wks40:\.(75#d'brON[FmAF$(0\B_+KJVffncBV@q`GW:5C %"'FSJSN_M6IJ_9e[iaJAq=rS%0<+/J\8F@H&:T*+:LAMo%f!s3B@kb5Dnc&+iO9mm]g:2@+9*Qcr4hKG`aZJ^&dKL42E,JFS-=bH %8W/Fg>.3,Bk/D%;7@IeVF_lt@0eUF/H*(;*0umsud_pGPgD!;-RdaT_8$f4LlYN,8q#?/WEE=S+LH'`HMNem8rNZ`I,fK;O#eM[k %=u_4-WPGurhe35ujX'\pF]Y;t(!bBGMnkB7mt%jns2Wm+XkL3/gL4Gcs0,i=[U9hq^H>+]HE`gW`c)DK(h:KJ.UU,q#?_;j^NY`p %elq4+A#rtQ*1N\$=g@hESis8sC!d!_0>%/rigDdHD9R\gSiq-pk;/U[`O:2Dqu';D6EFL_iRqOKmq.!VbT5@ESm6V`PO6'_BOL5\ %1cPeQYk'GT@%X:<Ac(l\s8NqhSp:[e`dt7E.sdadSf7l\pSi_G)MV7aDs&aBpthF^rr;oFWhH]q4>5#f72mG3RR<OmDO@/'Hm,U3 %.SU1QZbl,WXJ8h?gN/]7j4-*Y,E8sBIpUf($[^K=Z(pXicOp^/V>Y\jQe8V(TZ"tj*6>$XSaYUb6euK7o-g6$LdsR+NT&^>,+L/e %F_fZ`G+Q8(AAW!H@=C]4()P;fdFgS6X'Y>nlCaITf&"!(mc\d^#G0+sQViCVeb6K[b&bp;=@\5>G4+b:"X&9T^P*4hM@$baQR48[ %AW2N2Bl)_?5:9`ABm4LR\\brGU/cQ]I*d!PU01:Aj\ej@X_1U7irFI46iUuGdhI]t\c5aN76c"nF".Q1Zha>_<a56LlI!Ufao-iV %g)iCan8(%I22$%1YM8ES\Y#q8@@M+DG)UEgej8^EmC#.HCeZF8nCbD]_T2:P+`&BC,+b.G:]OnE5T$9^^%I#p)bBn\?.MsW"m=\t %s#El&DCZC;kN%S>4]foM'2P(RoFmuZTE78lV:C018**>()XcAMrb%cp?\U9F;)CAQAS-n)CZ$@PF],a!\R0_ih\F&cCT`%#f9,Hg %V;[h^\o,-r:'3(LMX+jb8lrL]W4;NUD-Bh7"5$U#Y.O_Rc`M#VQLW_a1&,BDb3*gm-FE1'5b-ptN0+Zi^FXGd1DL:,qVh-ME6hh8 %L#*c/njcs^^uD=F/NhcWdI>E^i>>gtXnC-CNdZ9->SYS&23;HUFSWI)EoRp1"Xe#%dSfgLDbWDWB#h5ljpL)8%H!W@b_cUr1SEpM %BB.KfKTF-`q6Dh"/A8>n"Y1k:?/i9bls/>_km4anTsEZ5H,Pa^`%bqZ4fG][[rn;a9J'LRc0R_;4GANtMshR3G(t0O6\%A&q/hk) %:UOVCk+:pSSsq+K3$7hmodt;-D9p_ig"lrPGTQ5`cEd5AcO*\THa/.b\r5ekf,gt5%?,NbegiUDHa[m54UN\Elcf)Lr'_.-#-4,G %b4"'UgG8^","PmlHgt[oPjW,8YB=[\CAr[&^#28=nb!kDYmKSL;m[fnU-A7+rU\=Z&AhWIA-83`)(3eA`I:;Z4(Wk>7R*5,atY/a %;`M!7T"AuCVur**%ea:j54IpF*VjL^IGtk,h)!SjIJtI_V-NCSfW!$*m0mFVo?rTJ!3Z5iB8I)e$u_gW1WSntG$]!&.)aGK4`b.H %MU<m[7;Q8;Ie4E^>rdPO4j^th?5d_T[2eYPNi#.q-BHb@fRl[V,*CPBTt/TZ_R]?FB2SU#pNUl5bhF!n<[hXBo6=JJ1-EEWGC+U< %M'pSK's0)O4(5$j\'-ek_G.GW`+:<pL!M;.%*c&t@(Q/QEP)"/rV]O,HLu'D^O6'N^:sQG?]G+Vp,QDn4Si;p]CkL;&0@Z\Cp*P2 %j0f:VF\RniUI!6BS)GjlFU-bsf@u.1=Tj5a@(n4qJ,%JG(ZO0qqhsS7[+cDj&oF-$'3a8BSpNMN39`OBcQpG^5LYkV3h+H(&Ct!4 %:>J#T>U/[8p<6uQ&3d,pY(kMe;[_ST+nMsUce"sP[`<Hla19[DQPJC8ir&HRqPJBj:$]"^\`<L,`c5C?h-q/^Za`ncB6#AK_L+2" %'rkf(/t-`L!AkTVC4lu>XMoSrf;9)<_TPTtrpjW9Lq5h%i$1=m6Q`ZOT,&O'_"U<X*lknKO9d'`g`P,F$7#%SBl3e)]li`h0In]0 %8iA3gNKrL"25-^`(Z&,`=8KCea,\HJ,fT.+X?XFlN2(EHMl7.9l`8dQ5elM@`pqe9oqkeClIGPn2KNm"4@46:HKQl9;Sr\\YsWBq %/6[<p%os&c6?W,Q[$muQPsm@.8]+_<Aak.rIUC6R';Wb(IJRT#*]JGj$/uF0dIq;__tFt"f!p-O=:6a_<3`l3\tlhGhW??>'7J_6 %E*C8^b&\6]H;!3iIDh-1J16T_F$4SR%osO>O74$69VD'e\,lM`\*YYME4*nl'r*TB>'>N7_pto25qi!f@$6t_/O+igZRHfP3g+`. %YBc@sV?Z`4eF?R\44RR_4XM>AU!'k/Mcgs]3gOBP1::l:f;:#,CWoC@:=rE._C/7$-<.WmOXR_0g2&TG*`J\[N+^JspZ<7IE4S.n %16d_a8$M[O=AZN`Cp:"4@PjaibW`*n+V>X>K[bBi\A1F5)+)DA:DN8c&Jd^'X?J8@?P6.8o.Os[=m6fU$o-9PCEU[5k$u:TC34VW %fYk%G[Q-/NpH\HI1-KQXd@7S]1,P]\0#.GN=3plGeR.t,D/\<\f=Nb^3gM#O@T-$O^(j&45O6uNF<5`=_o\0W.jPuZVPgNJ2D,Dn %@+#6:Tg#/QX7STQn4B^sFJ&k#N$s&(*0!2<qaeDH#CC>Fi9kK)/.FG?W7tNBca#<ZLaXh#dTC5alLlGT\2TW9+a!D!"1u[Yj8.N/ %C7o\f>RG(+2g_FLm-\2-CsI9*Z7X?f*1Q]X_DE1c@\l"men8On*m`D*V1ra%jmGiL\FpHQ>FmVaLQB]m[JLBa$j/H1)s9Xek<'2E %=*rGLN">gJ;>Gus2K+SGFlmq"mDTX6*Gh"DMNVL`2hW-Z@V=gdJ.D4j?.4)\gkO[1`em]rK69;b([Ybb(hmY*a,8n'6<LPcR%ZnB %gF)pucSI\5(X_W"o@JKi'&3C=%XJ)?s'H#EH`/(9a[L^'7h'e<8_aRprV.k5?3km%Yhe2/oLhT_;;1+rGY=+#S\f#%,1?#gEEO#K %C[0GU^5pXS?_PRO^Dfk6B85n87@.l@c?>+m**ejTLAO*fqh4H!5+oAK3`AlX*m8LW_M0CjNq*JMW,/le:kcs[\(DPFO(5Gbg+d\* %Zm-C!9#M<IQIHYLql]J#&U.nFZ-rX=le%[/X.Ir1<RJUW"uWg#/&0B;#PR.;=fAD\IRfI3*,@N]!BrP+Z!Yh.V9p/*VYebGV]Y"Q %>[[W?E1Wh)\1$(;$n?_@9GsT^*3f/#arH&a>K?Ze=rUO0T;R6#.`<q!d?-C#WNGjJgBD11BDVoiT]:9G[&/Gras2<C3D>Lk-3<U, %TfU0FXPJpsZpS%C4bo4`Kf:MoGXUG4MD/FcgP4*ci]ab@nB'6r$\s6Qf"F?T--Cn1X3@.e8UFo9&$eWs3=r5Xk!kKVgs`#.BR'G. %2S*:&qJdKARVgA9:.BH!!?8h0fP59.'$TN6qm:AjmID:QWHP+Z-9&Y^:d9)rH4XHn?O=DZ-*3ft59Iq,[/aqI=.._*Ye=:$$\\t; %2&G_?q/S:U"!<ioJs]uIL&36`8')IVQ57?K[b>9uV?QVQK<N0"HRu:R1Lt8A4Ot01fMmDjps;W3,E@cDBqUi^&RWnZe*kjHfDWlH %o#0X$B&YhXq)3G"(b^BC,Mt_4[<dM`-h8p0J7.3%P$G4=9jD0J>^$[cYB>RG:!8:[eqA2=961U/qAI#Q)5McKo=1;a]G/^_"QZi+ %f`uR>L!-3YS`t$b7l]RMBJrpi`o,-hKT=01B7$S5O3m>7`19D!"!.T'B5Mj@5eI/uA09UE$u9/<K>cEO5M>;Io@Q4\?#'t.=%BkI %%/)q4'Y`rpV+Q>jq!=&u\'7%gKuVO=2EdEd2krm<U5EY@"0P1K?f?Ag"&=T%4&G\t]pei/o&(*0@<%'Iq)Pru0LONJ2sP_p\=c=0 %AWBRM'4RnbAs8]kK>Z/RK"*,Ngk\24:<h`rHYo*&XQGrgZ"5jZK90QcmthXZ[gT?mb&5(0R!q%Ji&q<'\0!sX'%_,[.<LWkG@A4> %C,Zs;Rfha1MgaR>iX!;H(d>Gg?LR4V@$:e`C$@Tu+f;uq62(X,2+hb]NXthra.t]eD%lV'?5iUm!HbDHpaC$A'[@Qa=l"XQGf2VZ %g)gl)Fi_L84YhU/EGC/GQ'es!0!V&DrM/]<fsl#DM_?8h0%33*!2ZsJ`"U;M<>3<b^12bYPgHKPi(_-1oW6+T?Fc@G.-*_dmp^lI %.*=_j"Xp%EA**NTJ3@'H>,X4<kgBB<,>]\@&+1=]H4Vre0]Yr1fg&3:W.?c45/DXZ+7H,j,Nd7jW[D$]g$IltMHbi3im,(FM)V%r %r5tMM'Un@aD7`$Y$e'V9B8XXbGb7Jij6A)p]sB?tkH24tpM]Mh4\*pdL3Z%M8(+aBGVnm7Z_u;AG?h(DDpP"^TC&N>'HGeeb#Qf? %8*6QS^_=BSlWhS\9Ur56qgSOl'r1_Dc@(VmlUKV9Ac^NHpIW3s^/DI1?XLj;VM9im]AH!F4DJg;52sjTTlTYIRuOJhr:-=*79r.p %=T]/G&&0pofHWfNb?W84ro0_>\'fk`HAp-:/Srjh=@G=Xo?+rO46uVs:aaFO=YW9>!u:Z%&#WM8!W.7tdbl_Ni7b[O^iM-4#;rrl %`<5sKX2P.l0nOTBE<'Ar5@Pb7i`tUH4:sZZYqG![mkMWE6*D:birOcS&LlClPQ5$$_O2qOWZdnkTSmC_XR&k)U<@EP#hp9mX@81E %T5f_"VkK0eXkTmK6UZW1aZe5'n4CRe7moI+$E&#*.k)J<<pF;$rrY!QbLp:_$q1f;eHa"pX)LV%k\s&1\,aY?N8RI$0"4\;Y\1s= %ck/So^0M)G$1Y,hE.%OCoJPrB*p?XceK<ViiQ&>3<be+^.rc@b/gf<&AS5H]%3i<jLp1=-=n7RHKLN<"4?F$2X*qh4l;"kE4!9Ns %AO=`IN.#79dIADoDNBmhe7Tn)(]tgoRi&i\'p'.R_7:Vh5+6D2b_CO[`cAO*8AgJ\lP[RLBWY8dU$"1le'Nh&a$'&#I@nQlE[]=r %Y`+PO1rG/<",XJCJq)^6a*qGp/]NCQ-Up@GGkD#&SXk"(Gr@JNO(#;B+IdKbO6>G7Lp%f:8t2M0X;_?!%!86Ebo46YG3Sa\_?M"F %jC3i`*ap+KI8P9'(,9H\W=Ag=Q\Fo!1HL2+Ctqro]ku/rAd4jRo5.!f,2NjD];NH5q10"DMU-dNKm!Z<SZRrtA4BD#dKQ[R/NhB^ %J>r');hMS^F"Xslh"?I-l@b626'(4_hEmbEMJh)P"Td,=q(>aJ6cNW4L5Hn9gUqI&YEpTcXI_%t]>L%#.Gg$@bu-N1*h\FF['@-) %7J=:'9Zc9T0"l)(YL'sVR.o\<$7*`/%sZKgE2L\M%H(c&N*F.QpQKs:Pf[P?AGY]8XOFP$5ob]c)K"9Yb\U\[5G!i"g"n]X"Y82N %qqKj934`J;bb`*4;"oUSc,3_Q\f^J>8I5Bo&2"0p*44#oTN25Res;o;l*Fdihd//qU-F):YlUj_aUf%H'r\?=9F22aQVTTu#%+e8 %=E;s$Q-!-?2kL,sVPDgf+:FWi/1um?JTlDh`07tJCr1p20"N`kL?r]j\BL74m2\Lj:Pdti2#YnieIOj'bJ]ngYtPRs<u=ZMQ1r]V %?e=Bi16j]X@jr4.WlNJ/+-CK$9DtXZB#9"&VLsZ"hb:Zpi<?FfPrE.]<&&9D_B".X*YTTkY!aq<h$s.;`T.8qFf="9Cq$L()X3n< %Ur1CB;&kCXbb@cE5uP;W4S$[Wqp[3#6PfnMe%\))gi".XVQb-2)=SLo&"$d@'W5d;alUj04".KjP>!rXV9rI#-T[f0XoNMGW)Mg) %@.:G[e8g%:>em5%7+B[o'DZ;fCJCo/*T;\h/K/pj(igJV/faI\C\Be*nE0\3/%pj/*S[Er3O>kHl2FdIqLS!W[B+7o6DptE3gGe; %j2U1`-I5#5@nkdERoTX?"bA/t+IWp9:sJS`"4,P!n1o2)Eeb[6cd_Eum5s*RVOV>oqTeu6GSIZ+4gc"s8!:)Gr7H[V7m]Fppq4o. %Wr`!(^,GJ_#Bj/GMgt:ubZs&pTFF!I59]GN!Kko?<LGPE5qODNV.Ph3^;"G/XjEiMW]&BP*"bCh@rH7r+p"jU*ZUf]9b,FmO`Qd< %Z=7#q.OsjBUi4TJ_&r(Oi#1$>\CEb$!CV.=*Ce9dWsZH=_m!:T98!*$4-6Vh4BpqAL3i?2[SNo!"8MX]=;nA_GL5s!&4a$9C_"$> %MtBo.HJhf-l\ZRjq>t1;fV:7qDi`HT`*s![79WdI_#UX\!V_rrh=H0pRa#)NnsH$PLC:>=BEANbq[sS\*85&id;%kRgem0mgG6VB %dR')9]t-:/Fgp_JJg]8h8M2N.pFUgtV'/^Jc8qS'lei"(0rDc:>.6H-9Gp*V^@d$>8.GFsT)ahrdk+[=V@::)X5TQ,?DV[>AbDLK %Uj6WP#"m<_:V*O-"$d+"qtEhp'9A`@!CJo/nBAG"([OVa?/.]6p],pB9c3E\"ag;7+=0':OML92hM-<HNc%9qn6%B=SLHh,JpFAr %FM&Mo"LGc";S*XGI\lts.Y9=hJ>\6$W=H+A=,+&P#-r2rALIZnSo='`@fm5;E$7#Q:(Y@&I+q:TO>)2_;U#U[Ol&`M*'P,lh+:VE %=Uk^+/?C=FA\JWf2[.RHU<lo;\*(,hiVBs4NNU)ZD?"9RSqf:R-!2:;WGc_!]+->]^O9Ar0CAVTnTTITra*d-FF-7!'fMr5)C<,1 %`I8/UTX^C-/2g5PNgM3q!C&bXM)]-,Bm.*$*6TE^a^*6-`kqhXR\BXu6S>g1jhlZsID+IVPc40S&BKnTnajstYh'IlciDM/OV %HamlS=qRc/.DhP7nG9h8(\./]jjc7Jn6h^J'S=QIM9I-,[\ATpL3+&nBqkoTM[9XKH>ZmcI/c7k2b$=?\-3L55:Nag+2D6S93e8F %Rl*cnfO0\m6&>"7i1qi!Ob%]d+g@-5*B6taE(1?('rM2$Q\htc?-!;=&sS:5WTML,\:Hg%V/Nd]mSX]BeMFg<pku\0gFiu3ATj;q %J++E?P@?DUU#.uLQ1MJHSI#OrF,6?]!Hbh"(iI49YLmfA^\6T`]%6GlZ?!kc]7rE)`$6mhZB^?r_?C?V*4<4p$Ld-/Ftjd*\R#&" %Qu=B:<t.tAO<`!%#K4,1B2R76e&4`1L,Y/$lEsn%EYG#0[LUR=q1KU1a]UulKJ4B?-3QH?VRY:j;l:sIP@2-@iot]P@)=RVId6uX %H;PN$#/SD/`!l!.nt*?&b@6VX-%rPl+T0=c8t;h9_DiY+?h^7C!)p_,,l<^E!er1H$U]KU+#]jVF*.ai%=X<)r#F+B*.SYmJScnL %?hjKpQhP"T%%=jB(6LKP8L_ZW.kN:m5[]qfb-9i].7N[O+YpY?VE*&[AO7Q=jp8B`V$!6u``-mJR%"-!$hCeQ"m7[oV;k^Q:5scI %ZHYM.!VmE.XGgP3*;jAB08o/V9b1"N^9pY#!%M`;i@GdGAZQ$aa=.N!cK<E2EK^5?A.m3HV;q$h?GITQp=nRr8]jHC_&i/=EDK7p %J4&4IPE7;UU4a'shh3eVP`;5in)BJo%1J!%_%lOp"--P#][Fm@$85[Q,?CHi;ge4AcmH,M=DEiR6K:k"?ML?YM1jrum=NIuO>8@7 %>A?(h`)dQOf6GjMRWP:S[b7T,*P/=+mFZERZ(h.9hL*pIe<]#eE.DSqcIQYF]6I8hb@0OYYOEeJL(k]\G`5^u^Bl%[)G2O<L,pVN %c4j.cXMGRif/n^NP^j'XM8B[h$!7e"[m$`qQ>mDP&s53O<ZjD>]$Z-GJOQ5<!@p!,4ImoHR'fF>i!5=P#e@O,2:Slo!67eG8N,Nm %ME<poCj,jigB5R8G&sWBS2B2mJLH<Lme2FVmY("P+QiC#:>"gfd'6s/r4///V;m$XZ,um9(-8_u=QHm,W.mHp1Wqf".-.Za!_&p3 %P^^>rh5)SH`h],Vk`b"#(R/k9%uT>XW1cM1OC#"\Ds_>HkI^I2`L:00T+\V;bjQl(DUDl,_E)"W?e_Dl@PBb&;VJ4#8kc,nm&Uch %oB$HCf7^L%;s6gD7q[0soEanT^N=uhX0Hh7ZSYnZ;rUfVS;)O7KmS8K@neqZgGUKT/M;8rVr?ep@B.gZ@s,NM_*)K(ZX!q!/OgBY %79G70H2#E65JNcnVSH%e^V,%Y2<h.=3$>Fh.Gh_-k`74-)!T__,N8+]X:m[K(dO<=c]/V=ldqK.(S,cn!e8#KHgq?[JL*60ZF3G/ %#@`&grr(7KPJS@:o2k=6lF,q2F#Y;D=;-l%YrHl;a>ssX9+48q+'"04(Tu5Y"URatLsHuFJfZ,_o%JY1rI!9S>!;tE[*o*uS(`Pm %`^p8@A?!*=3.i?lT09(b9SW^QXX=5JFjn@[-2NCe:l5:mOoc(1@dp%UP@:`'&P]3_6`UfV3D()('Oe0Kfmi<,h*K5PA1SYkf8e6I %YeuK'6#D9SJB3cuEJ2DNN4)4"9hZegOmfN+/LR)gDWmqB%T\uhIF*G5HHW,0SV&^9pp+O$cR=cl0e-qN%5@71JYeO7e>%senHl+! %k]kC';FkIea64`f;fnY])LMrK3EQi"[RZ7##g%\*orT_GSfI@nHTEtR5ma^ppr/EsKRk>1^NZ;C4=Y^3RjC(So0Ij'C5*l9G]tV7 %=&'s%EQ:XO`7i<!,bJD*3RY$>?%>8MEDXEQURt^thpr#K=;;a],M81`eo=$c.H.GhBU\3&_JpoV;oh&tN=bOF!f`e.ONLK\\68Dp %2+br\2PK\\$+M]JUdhc6kONgR:h&9D)d/t=*bRnD91c6mHU&iF$RE'mR<Vp;P'7o(59^lO(dS;Ac/W:RS4!>J.V@IRp;N_9'W;Yi %jl<BUQ6_p0K+iLo/ME3_/>3qXJPV0^ns[FQ)DNQo%]6J)WQEOIK-]\/)VDHK,_[.-C*]f5i=;)uEg%S,dkQ8c+EJ@BrG]?U(l*D8 %!j8(?K4'COi"P)f!"ET9:#p>hhe*,RjUVj'-%Fn]5Qc[rk6l:2Y<DZ[;2;S8_.LM\8!N#mH@(<.Ob/Vk5,g9pDo_c=lEtRQ')IjH %7@6TNLX_,IT-/Sq"8$YQZ,>5;_C+;A4sW_up''X.;SY$"@7J0KdRGAIV\9ch^X4^G_tP<srRtj^"(0r87I+=SL@TcpC!2E6Bfh4m %H#C;fN!"#j_f&P3VsD.6$6:I7*EtTlo7M5k]U'DMrm!cFM/S#N+STkBEPNc<Dgn?^&F94J_9#W-nKOD%Z\o!q6qgi!\K!0)eTa.f %Ut7m#iPJn8Y=Gm`4XkO3BjbL)Sd[M_bBQmn)#?qPk``/@'W)A%.-0&['L1o.fQ"W8#W"=Sf4m<$Urch]EVU/B9mV9,#)`-D.f"T& %#Rc:Q_P)A^Cf4]baoRuZ(0TPPNc/@%>.MEq:2q+X"sm]SR,/YuK&]bqPJ7t8X`qQ$6GSY5#f4\&+gQQs7Ct"3JKo'S&9)+<Vh'C; %@f&_^L2tV.TcT'),5BkiT,(^rZkP&[BibAr\gWhA]Z5)iR,g[I:'m.JI[pbXilP6qKm5b,D-[M(Q>lK9ZNt\76n4j\p8[VOX`@=! %]`A-0ji-mlW,P/O"q)SL)lIX`8u.:k=e-/UWDha@U>8[J?s(u]7%$1gO0N%8bf4)r7(KqFXG.@Eq&uPR=b:>I-\aN(?)5J^r]oaM %a)hu1j<IS+'^GOC;SHK=P+uoX'Y#51OVA1\Z!1T,$qs+)Wh=C`fg]@KL.YQJ-fbXTVCp<8?7A6a"c?mqp*S;*3j3oK.I:'q"V0UP %,\;II^jbWXZ*?;'VYaoOfWumKDl[qc==(J,>mM-`NJnr;:kIN?EL8a:"IF[9W3X%ZLF-sek^hVPej9cQM7@9rlYp,iQT.H^$71;6 %CC%s((g"kt,:5=^KI[cF<9^hRd-Sq6=gq1-X9BEX).hfT7LTu37>M^$`e%8lff-<odj,h3SCN9P-#07Cs)=HWC<55Uc3@1EQmE5W %-V'8H/g)V9^lW?e2Jcc6in*,qGKrH!Mc]-g[0p)D"*DWh**"#C"1,Z6b?$Zb!9jsjG$H3gq6`1uZ[T\-!r<(5K1g6>/8d3!f^IU0 %&9m7bd))h2VsN\a'1f?6^sd&f1IeVTqlIU.a,0n%D,oNu)f?[<-*Gqb(Y$<:-Uu&k&E[:.366#$[dV\\Tj8l]VrH9aG>4V#LF)Ca %]r6Ya%N\U>/:$!3km\e4BE8#d5eS(kb@-q`&3KA;`1)nf4h6N=P>\j;cN(Y$$e:mQb"a(?5WO%%rA1s7X&>5M_8GQKL"\VR$-H;m %YTBB0dmA>)-$%3Eo7uZo;rn*jG\m:G$D11`Q`j0QRYn#ogJ'TjK^])2RZ*)W\)n/N6`D1SO<,QU#$M?%*8;c]n6h66:cFu6$Qn]/ %ZbiKPggana0B:?<45W41K92k7+XG&\7?f3L58]28mKhgCLA\SbM9%"PDhjZL8>cKcnQ>i-?K*-*^(aUM#Z!#8pnCMi7Z+7+cKAA+ %N%"=Y@U9N76+cIE7rV3m5fC$E/VJ9pW.7"@FP7H;6.-kD][V%0*t"+$i)q'G@5hL(AA"6pXG<idQhMH[83Si:cUs89"lb@kbf&6g %!PiRN)U*p,p!75s;!hN^Ou8[`3=NI4HWW<-UgG#[R4Q(8&[?Y#+B*XS0Z.]8V7e@pnr^eOCceGNp_,!1$+XLRZH!?Sj_J6CF..Mh %3%dlG1*B9PE8?X.Jn>>q6bhDb(A3chm/12T/c`6>cTn+,e-&>h3<4^LQ_mY.Ma==?Y:Ko6RiA?33)fn4GS@Pp"&=1_cZXGs+jd=& %]i5c0ElLT"8h!bjbTcPe&IKWBO=g`NRN'VnU'F-l6.K`QGF5l'+feL0bk8;eZ(2$KMnHE##p&A0,@GAAi")"Kc`jb8oV8=,.Y4gW %$hG_a3;V9\3b=hY+H&CKJ^M&(;RQ@=M[&TJQ0FU[nu%HLC0Y9:=1XDr'@?f!'49%"'3:P;PVB;lmZ1%.;R6QGmi\HJ=oF)o2+t,M %/pD1aE,#,C+V:0``'_JM[ZEZq"\7-)WL:<\*\E%<R'6mBF-9&[fa+DeO;%$Da<_5mFljo48l?9RWcRrC1GnZ/nfH%a5r0Fg4*0Gl %&COI$^)Z:[X]2cMAKH1XO7X%b.sS)p`FfA\dZpFTCl4(cSEG6@ncOWPpmB_'%et[;<FREM"+(fL=A`nZ0LgihH-nK\4b/DfP^_dP %UPBpP';.gi.pktCBe%(=@I>4'gaU)ia5m5=ilrh>P<6=M!Q-%"%d<;bU/2a]\cPT^7(n!<5IeUqgVuO4*tYWplbZ6,.6`au7i>2u %gObi2k+(8_:^%"5bU6_qA6$1Llt&eV"Y6!&g..FI;VC?89UBm=8#).`WU4Kkg"L.<1Joa[4+@j@jm>gZ,?TN"$TqebYpIJp?<YqM %L7;28(S/stHoVBuZHI.eo'\VT1gi3N9caM8dVVG65[1-Q4=Y3Cpq7ufF1@$n90'0OF3^UU8>El30\\AE8<A^9,NNUI)`)moW-`'l %,T7>g$T:8;A!LblZ5,4d8^XGdMXeDn!u8`[2$!%f4R%?S"K)rRn.;VV<asU;L#PT6FrF5\-iX:?7FHdW/)bhGpV(;2;b@iV]\gqa %=gF]8`u29H]2]ZlDP#>/n$.Pufs@seCYM8@T@IChiWX'JFK2mYUpJR,qKtPU>VJ\s1*N<A^:OC$]H(=!esMh)bNaZUR0Bm``>/cL %Q8h-_B$i/sPWl_=f&b"O+>N\5*?K389>4>4kQZ[p-Y:e\4?(E&B:>4@6Ucs-epmb%PP@PPNA`qaFRj_gTJOr4p"q]g\;J5<]SRYr %LTY%$[..%-NRtDH;G>a)rQS)D'+ZiG-jOuLRdK[<A6*A3d5=78#lusmJ@Jph1;F*-jI=&eo%@0E1L.%[5:Itbb\O(MWG&R,]GB:q %DbR+DVM+/R4?2j^Du:*<GIp>FY0C;#C.3:/pjKbR(8+^2$m[/l6^UlQE:qZ[IHC:_&fV4)X<QkC=5a/?]^kea/6BVm"mhZoX.ZLn %'9g>,M[$1\FVK1XYfT*I6ns/k\`R0*mXkKQ1?"k^!/I*TC,ZsGoTt*QeqkEZ5cR?A,NW\Q>uLe.)1EVMY*Hm!MlpZ;"&KNYJZgab %d\6\\\Gp$n$Up*rBaq/8TpR5q'ZFQ_3dYE>3F\WoH$`PhRK?eN._ed5Vgh!De8.DEp4@FB)?$SZI/F:!E9.B"7(Ncf=&gj)F=J4( %i^cYZ%pUeRA@ZMn#`k=j4kDpK/J>c*lWgD5)bWR_CNHaORFcFj"2$lsKV^o;]Xt-/O^.:o7OR;0/LY^#_Y^foO>NLAJtrY95[?k_ %>!f/4:)'J([rZTP`I_nS(uj^b(?K2G1,-d)@;Q>h\QBuZQ?dT(bt<Z%<C]$<j1-LEr4%V-.d_3Ge@WbD0V7R"-[hMc@rk`b.jRmc %1/_X#iheh;/>d9g!T"%ffOVU.8SsaV`Jj[Un\K93/U=?/.uKa6:*P!R&@]2N&F!\[-iiWe]#?-rjc9Ji\@k0RC`fl!l<`(B:Wi5+ %B;,t8X&RU[0bG'C.GKQ?$3Y7<YNp<\&H\(l?E#2+7U\P5U-WaVNoR9Us#L<(I(_'HK<iG7%pkJ#"jYc8\9eP`gOgD0MoGbCR4"p* %^bZ?S*1Tt3cT:D)%1Jp_7.Yd9#Y-htXqQC8,nps\o,,q16eCF>p+(O%E(\3IpEM]N'-*`$,Xa5])5G95&Hb&8lg)S'H>BQb(Z9#X %pHKT>n8nm$2hW;2o.79J2\Oe_Z!-NEdnOq8!Ne3\Aq2rSI2IWVGqoM[K8c#bIGL5bjINX24_15>d=jO6*!C](bub?.G\#GZHAb+r %,:Gr'"D3+Q)FcnMK>kD5p2W#u.et;\AH6SnliBl/@R@Y&5Nt@3$a2;;i!l?P+Xi#>ZukGT&(]:5,-=jcSR4=>"Tu]2k"@q>1-fIZ %>SS\OM!Y'6\Cg5l!1jZqT)(KHeo`jS(qULT0%=V`6$2JLV)7@_]#>(]nPQlT=NRd2"'"tPofQObotXI[3/Ad`H$O-QCX`jJL6fr' %pA%Mpc>@=3s#"S^ODt9+`bc/jMW\Fh8P.K([%GL'DNRm5_G`t`Wh]L8%.YD'ZRpj<GrE"O6mJ\1op-l@2T[=t]]#Ap;<[!rRkV8N %,J"F69r"K)h_du94\/3-_cW9;V?5$&l7D^!gof$]$>nf.5.4!Df#e9ukPE&(!&hbt>\#_(<J8A"X&!5:.[BS=c6r8RqQg3;/g)M& %d+$Xn7-B[fV7Q;'SH-R?V&JKkGp)omFs>91hG)3Lj1_"7L\9\*GLJd(?/DS6j2Od5Su=PX]j90^>f?t!cC'NgU==.1HgM>K2G8;1 %Fta#<mrJsHGJ`rflc^fRi\MGXoBgNH:5%XV.GTS<R)(=&4B%XLp9>U9O+.qrOI)_Ke=.*($D_:;3:3H<9.IK(eUBuf!@BpO]"5N[ %rFY_eHFAds90+<`V@utbLUOPulUrs33j0f]I;<;(HaL#;i)`6'IQu_u<?8D7A<K,)THTgj?4F[\kk.Ru]ndD7C3r?okcocZUGPsM %IFXnijg5CSF%AgQqg#dq,#!&&U/5cnoA,(b8*;$CpCSOmL"st2?d*iAl2>7ddYBp)r,pt&SX#$hrZi&N-DX1cpm6$,M=\!]dlQB\ %%^4L@@"BG>d7a@+_QMfN^9gqYKeRaMSofZ)F!;\M&p=dEPRVaY2hEA6'/;DYXLk?J[`WY-j?r2$Q37!)8P'cJP8BIDG#a2lH%a[P %.t)a3>t0C")ZDt4XGJ('Odd"NZHO;I9WG+'<:8\"ij&1`aGi!Z4cZ)UjBf$$#%2>.e!G%Vg'T_8f6A&\6m7i"aWfm3oFgH)?qfZ+ %/kPf^<E+nD0Us-V`AGYKBKK]QpbHqV=C;;PK,J:p+rN\f7cuAXWhsr3)=C?n-R)C27IM^8p+)#R/]4ThJquhr$]b>JG:g**M?KII %CuEfPE\l\WnM1YpHS4q18">sCY4>+)M,X'J65oI;a):NYRZN:$9okRGejiXV6#/`3!BGIH%V3^[#okig-+/W`mR.n)("\tB;J\C) %<"UpC*p#ZOnk%!-b)\8#'$4lVO#`:qe8)F<m9-1%%jCAE;^Rp(>Js0I%:kcD:]NY8(SepK;ih^K1$+Y!cQZW"W&h5\1?mJ/j+q-e %"q`J=U9mt%hhfM7j^rp#<Imd\-d%<sO6oj-CRM5e'h(lm/3."Rlbj:o^h6>/&fLZq93$u2PnH_39jBO5RZ<]=UF`JVKt)eOSO*%. %/Q!]Y(;_>W,\ZHT`UEX"WFT"*`>IW:"$8tJ!H]RjpGWs"aCoFo)q;Qghe=+cjEbiGL&.j>bW5V-7USZG()R:6JT>^H)fUJQU(VX9 %cUdEIa8S"_d6U`nTBK5hc73]sS*,Po1>lTIm8'<BPBPfPN\pN](qc?E;=cO$d4.e`N7g!(75i=7I6]t_#]K\#prS-YHERJ8kXn"; %6KD]t.,RP>OEl#iDt?feb,QF3CLFH>O)*AZ_@eC#SGRp[i1s\AZ&dA>am:PjDW_T'b\J7c8Xl+[1#SI6,PuS$Yr)hT<#M0tL\s4m %\N^QiG&GGGXjIl7D&Tg["sO%of;+kdOKeJ>)[t%nME0R;#7mCiJ?%Am,6rRIq*o/+nka@W(flB+lhJ:<j15GMjWs\)8P^@LL%.FK %2JKt+.G<4(s)t!PIOc,D851F2/WVFLh')f7Q;r]4pne>Ninc?9@6RD$YXmY-.+Y9(V4uL-WbDbYJ\<HmhGKXoWc=5TCie"P#,lOI %nE6l1<_mGl.@m2jlL>HaM_8(+ZrQljH$XF8o5hANd/o1m"0Ns8r0\WgFd(>h-aS!BW]@J5nm^=UCV?1[F]G_V8qlFGDsgOh:%BX. %`(l1g-[]:8Pq.c^2ci'@keq/0),p/QRCFVbm4b`?,cT$g%)H'H/UdbJ5g/IiiFeu,bp(Z:p%=^+_PZ)N<a$BRHT.pXB+YSD4pGsd %"^<MiIZ2PURZp0G.ti>5d=?N(jg`0T>Sbq(7TH1G<0B)YD2p9/1pREt78j34:0)P+odVZG[d#Y5W_MbX7G1!c<e5=8)l8XhTW>5] %WXL-:2SS*G<ilW>SfNOhQ`*jI$^Pi&b6@[bW`\5U)2#`K)MnDr`%[Wmk]/X.oEg:5!=/_/m]sCD$T(N29KMOCc_Y+kHAOOY@Y$:C %4-u<JZL6,Z:n^[EPc&ZKR%qA[0]E7JI26Ib/ai]$bq,NYm1-58Hp$H'5EH[d,.AhNc8Pj%X:f!##afseKJG/2O_rhg)IP"on^_T> %n!7bfW*,tR=rk\?%/HB^D#6]=cmE&Gj+6OtOK>PH8^:2EO9p@giB`F['0r,qjgB#,VN$G/@F3L\@;S'N!n^Y]'XrC`V_]"D/et3n %'cBJ$3BkRXXjfLd3Q$nXi[XtY(o:/Ifd[6U]?C)'`<FFn2EVC'#.7K#]46fPN.JM3lk*`@Kl9/5RD[#Z>T*>&VhR:?*0e)5pbn.8 %[qcSU_2\XRMImm93Nc5>_dOX0TX2Ys-j2;'Ho8q"@W4A'4.QrbV>Z;:[$%?a,''t$K/9;k6%U0Z`(tK&*8kTmr(a_qj%t,hSFm;R %+-Db<lR&YrQDGf_.3:h(pPU\bl$J_A0R;FB>V(j@>';\.=BCsV<EFbH$<#J&WY=>O?.^?/oNoYg"Unl)/-Fk$7?csQ[&UB`p&!#W %N>lu`HoPG$U.[(@VU3W<B+5FYf+[2(C`AgV<+7F0j`37sp6N8bn/#bG(EH4;rg;-p(5(.*0ra,,m1#Nh`;?gI6?mC78Qp)ZW0"h) %i2C3d,_k4ib_o@V?f3U"2#7e!l;69Teu>?5Z,p5F:XK+lJH].PIl)/fOB6/1-RQ'>C$%Q@5TDBf2gL3k0fOq)>$!VbO#Oaea0fV; %%]-N;,X3W7A;3gDRpN(pUOgN4:,a10o@X-,4_3;"Cnrl#QLZ<TcTH0#^IO1"ChMKUGpZ_i=nm?peHV0hKICBTcCtEu\[/&:!\R<H %J;JSfno!tP$Lo(Pi"-!B4IZ\l=:/G9'G)a==dQ>\eA-DL372g'd"`*6"PM)lgZ/^lM,Mek+N]J=l12tOEStT)*kY[<$I_R@B:Z@6 %O)HD_4/Us"/Njk,gmfPSkD%4mOnQC,gTdWs=H8R`X>'=M!B]66Y$#t+l)Ms\c,?iUmWNRg_c^^*(5F0!@[a!n+Hl0&/RA>6[#QP( %m8lV%8Ms/WB9b&pa'9YEFL8^#A[,c3T]WWCO>a,A?e2)E@W3nSrGoa,aC7]GS4m`/:`o<'1WiTU+no@W/5haF3W.k5RV9MW]\Q=h %e"ViC5[PY66cRJS\S*oQs)ZO743F8/Vh`%.#./G:rXY=U0]Ah&j&FM^^3g)]Yq7M,FfSTB[TG)'IUVo[.u:sdE_(/O=TcGcQKoXp %0uDON*J/GMjj)UD3N5D,`0p?Qm?EgSiJF#Qnuq[]A@U:8OAKjCI$,Cl[/?WM4J9&2,`oMB&CRg@"?/tO)9T7]2!+lUoMs7I';jtQ %F0U#1VBEkgiBR[OS-,Z;/dc@XfUSsKBBpBk3jn1G/oc_5=S]WXl_=5Jj.;`fPj#MfDo%]R$1X.-C*.VD1VkpLoebN4'd#*gafAG) %eSX_S<SfPGNZG(X\&sS-<Nf4Y0nb>0UhM3SYS]\t9M0?OnIJGMnAI<:CTGTIc&;OrMdSLb!ed6a;i[5I1b]VZ94?3h3nhm00oqP8 %GRj>6*#lOcE^U]m7O8n_rBb`q2b46q7M#?%*/!hr^X&oP^2N.n'=VO&E?3c0=jGp)b\^7ir_ru(#ONc;5;2+3B6qV@+(D%jq6RH% %Cad-a<"<<lB&cb_kRL!t;kp*9Zk#auBY4uYA!X1:bVbq[d04:coe;8\McPI_dU+l-elr6G^(-;4eIu0flp"P8cCEg40%%h;aNNOA %/T$lM])[A[Q)J*AIp`AW/p.\M%An(MeUd2%\a7rC4p3@<G1ja`X.YiIjXOhV?a,@&a@elsjX8^MQ^\P[hf`:.`niF@L!FF-[?L+: %1c[$%>nDU2d>ODPTBK:I=re#4<^f"5!M)/0o'=XG?EYVNgQO]Rpl$u9^3)3)59pp]Qhl+SXL<I+<EFBiEVC5n,n@Yd/oA_1H9BJ5 %e)]"dfX%0-ZRSLMO0W'QATUNe:<ohGCZ;1h)VJQM"YhI1+e0@+Y<&1AMb3^8,`nM"cjS1k7hc\+NUR$`DUc`b%,o&4>EKKUZH+kB %HZ:*]T.V\tDJ!\UKX3t">F-Onjli;U8u6lJMa#J^ZG;ZJW`U0@e<WG.)l^A[AK8QahVN-C<s6pS6?/T.<fdmChT92?V`&=&H$2XW %I\MCROE_.5nOF:4ROeHsNg=pQAlq4(I%6?PF)eHuB?RR_mB3:e!P*?bnlibldOm;b.k!s^^.dC?GsO>o/2p'fi7fbpdJhe"MjNP% %J?$ftLf>u62OY3@i=]<E#.m\\F<*k7.(gPu'0eHdEoXKhFh54`%-s<X:,ib'ElK!q="]oIdE*]Z"Qu(mr8rMZY^pkqZbk]Fh+]Be %C^btN!Rl1@f^Idb7puf7,$amj<W<Z.b'HJXs8"dH.ZT/`ise"bES"alnKA]ck.?q'(,dEgA980@\Mg2tJ%jjZa),[N&=sibKVFL) %T;Ebd%[q,m<.t`&k/4Z1jX3Yd&GdV"ARRBk]0Kj>bA\(/7B;<IVGgu&[7KZu`$s6jAK)3$d[[9D._N8;].s]:;4q'.nqc?4-En1/ %$MN.,P(pH0?cP@>@,IH#1dOo"83di,2F)YK<C[/uBi:WVYKoaNoaiQS)*l\36.+\:p>YaXp%9Uuk%:-/)IW1L2.o9I9N;k+\eQF= %RQKcom:?/0-2X>*MXsIApS(%NiXqcXJTQfN]rd4D1Ynp/.t03pG.?2kbM]tVkF>^r4_Kp`\';!c^FE3=E9WmHfbTd`0DGQ1R?)/Z %L@Z5EFpfi25Q"=TrdluBHXsug$a6iClVaH]$/i.eVGQk/3O3e90nN$YjY[)spjUQ1$@QJ'kT:A"R2D&'M@Tnb>oQ*4=qdtj^4;1l %p\,.Q(,B]YAIB4.Z"R@V_tG8r\oq"4B6@:uB+Z]J[TI)8Rde\Kp'Y-75XAtup>+eDmIHu"LW5AX_'c0h[)5P,JWjcf/BO7=[A!S! %Lc=3Zh=oP?`Yt@\Vsf'E)5Iht8ZbmH9a.2%^6`IW[C@4tPpW4GMqA@n&0&-.ilR=]SK'lP[@>EgbBMGTh:3e9PX:,I'%frLD5*1a %9SX57$;@+EZ,_[sZ3h!jZtRO;R`j?BlNqS$)]8K7pr<)4qNiaL_.JUe'4c'iG7@^ur2t@>6j.lk.JCt/'YX9fgYF3WbI!IMGh"Kj %TWB%3GEWDiWgtbC1HJcY?Q5C(/-FD]F\lCS2./)-JS4:Oa0aLA5'Q<V-6'SDj<gg6#XAYCFcC2qDE@&!ore28dKY[KY#03te+nKX %B.Og`1,]XlSad*;.op\[Lf"bfZmh9BC/$7a?45QW#:pKggP&+299I<]op\?V55a?JhR[=fP*g)nAPjCVE)pXY=aM,dWt\os!N3on %e!72(#*5IL"?A\Pkikif"-p9\KV,=N-8MQL4T>k96N1Z#10mkC5$&2P:dX!^*$Q_#B\uSc^PQ4,QS?)49llg7DumAVlJl#.r!k#U %cZ0W*aOk&+-W&l4Il%/+\4a0n7J4k#jYlA$hVl:c=fqS@?!ID'miMI=,kWuj"hHcjJDLuRDn>sqQe$JL-gj>%Oj8pVkAT=Rm'6t2 %9OECpp8^SWT2uYo?[]Z$Su9]$56?R4n]V\Z[S*[*Mja>PdK2<+$XU5O&TqY`oL71kb8T:aIL/ctbe!Z##Qa68PaSQ/B#:\g3<"Xr %<U@*uJ%Q)sTI>?^KFj)j[P/Cq)G-1[:$"jV74.9/i\oFdbqGB5_@M(<qq&^'pcu.oe2JO68%L2EU(l$HAD^h:PheAj5m"?9A:Zt7 %N3?(]JnoqgM$C7n),6-B;&"9CZIZ/.boF)oY6G8Hl=*i&#-bkSn=[[%qNrP&aHA\J\70I!N[b#s'=I*R=8q^B8&P%5iFjBh1Q(`j %9U0@+PhK>+1`@\FiKF*%63/&R)nqGLaG!0[BI=-JWepn%h+seOR*11o\^AK;DN2eO5.U`c#7rSjE$%HmKE2QM#uJ,N_oUl6jE@5< %*oVYq&6M&\&qp<?NWp8%61&6;hY"/7bNV=GZ,TgV=_D^HOYL1n09^SG=O==8-BF:/P"nbTGI'YpP!fm^0kF5hLKOU'2e79K?AA`< %[A]7Z'[%Y8be5A,E%o.I2K*'.8-M"P'NL,^8\nrsdWk&>>L8$a[bs2(M`DTLnd>Y9MDL-KO&Ol^57>$"6_SlLJlqRgDH@<5!YrM% %la`pkK@/Ub]B:W,3Q)cu?A_<4!GpJX8bd-C'.DO"Fou(`_3A*`$_%`U$m?.5H(dgo`JaHm5fYi\]F+AIRnk!Q$-J98o2N"4TfINd %b^adO".tX*;JeATp>d7fbB)hn3`ugRZ^D%:aNDLL,E'Q$>X?Oj4cWsfj_%(Sj6sg>[X=XcaZ1so-B>^XnW&67*gkV'?1nsEQP](# %%*qkZ\IQ<3;%1[1CSV?>?rMYEDTIZDPT2CMa5q',WZpA+'a(@bYpZ4N;(#8nQp))A*=B2W_3%kd"EJ`tNO9XCj[!/23jiB$X-^C/ %+cC=@UV/Er_=*dHA+W]RF;q#E?)%%^isI1rQO[=*>L(l<J1;Cu,`h[%?T#Op$\-DPTID_!O^X/#K\u7:Cn[oRaCL56Z>@?CLQN1J %_IGI_UI481o@^D=qbu'X7/\SK<iN>k%,P$5!m+^=.SIKTDVCrscopQG-^@>?EI0=C()uY!OFlffd=Cp<KT%`_nWeJ"6OpqhVlb8F %Zt&H><O,'Hb@'D6.Ka0dq&%,9#d01&3mIuK*:\G;SB+^k7lMM8\J?]YfpdN$?_K8pX@WG8bT>fA;l)en;;/?D,ZN,!9o'0o?]]r+ %0A8-M(2RD)eN#_.;ZZ4:ZJP,'#2I#hOB>4"fm)c\>=h[>YPHVfc"27^GAL$)9:_n2B$o7^OE7rH5P7ZbK1P;r&c@)%moY\J/\bL\ %:r^S.mF+bKW082TSZdm'Cd<`"SR[tIUH)o&.6b5BZ]I08*>VT[),K#hJ,?e%[;lWDR-N3]1NY-m/=/2;%(eNoG273V%9/HgV?hJ, %NnCEq8:6"r*+TL?e`/b:8mGc.7a/h.8Wh"QFGKI"?V*H?\+1]]CV'G@ee._,m7'KlP]THR6Aa-W+m.c&+'0EqV2(I;g^%3hiL:nQ %Zsg4s/u<]K_;'^;/1b0OUOb^(f>S?=*C`dQ:-:L<8&&-<AmsIn:)E@9GC@gMG,Dq[C?3+Wg[/Q>Q03,1O01#+/<8,]lC(ArISBA% %g^$)R*u#NW@)M4nR])gDWg4(`8Fh_8PqdBRY]B"g.#k4,I]/LQ>Z\l$)dr':M,;Xi`";?U=IN5=4ZelOrgrnO/arW_m*K]OAoCXG %U[3L@nFsJVS!!]5;.Ve)h>c%,YjJ;<%G0<n/\XKrnH&7M*3#`7+3-CJ'\O<n_qlcE?t;\@Fo\=)Gl#re^;lhp)0:&67ge?.3WK0+ %8.),1\\puN1ie?^RLRV*Z^%b+63Ih.5Zd)"JB%m"lL43o<-XY:?n-S[.JRIZ]#oubG\=&O-JmN6E<EeNFFL=h8?=\Xj$M\MlSuB" %VSd's1ql5c\;kpY3!9iZm=XLPD\>AM09etP%OSLr59T*^S@Rd.VtjqcQ8g(7%gL9$3E>`1HT%)lHX"]f(M(a$RuO#Y9p/G=@XD@X %;=@2/E[;C6+'8,]\#f@-U^PoaYh?Xq1lq^g].gja@!7'4P4=rpcIpr@a@_58=6WS0.K,8Pd8+dd<T6ZQs/:c_NmAh6n7eRpgcVl0 %1m"rLc$-dr.R6#_=[pFA#caE8M3j!uV]QJ6rbj;Yh42oM7:0;^$t6?81Hgl_Slg8SDWQ?@"%PS`(qkJ'mF!XV2?:<q59fL:#,Y#J %IPKJlhcus<8^(<jH:fM.[RD1>(W4@RZ(c9c"G79'"]a[7Kk&ab!!9ZZ4LnEMGb.J'l?p?:-U5tXCD.k/=#:[-ls5SPZsYBG[oMb> %_CDLDQ2[id%2P`K(SB1IimGlXV-A,2D-$4fT&"7E-LOW8b3b:&PO$h2X::@'"^=BIZh1@gBLJ?&]a"pXp7UT.05WO89WSVY353tI %ZP[5h/j)45TAQ9k>u*.6/_3K@8QP.4]_4doi6AQFXIa9$)a2e`4%4sL>^[$_XfQ9@5ZT#K!Bl!N16^s'g$R0Z:#<3O)=ZtXB]=n^ %G87IOW"a.^>/]1h%2ilsYjGA=[9ZseVYa*HkJ+f-@W'MP>iJP:c]eGHAO7YTT.+!"f4A;]OGOX_7R_3c(mQ$SDr:Tle$8i*^U?V5 %<ZDh-))obe`.W2*q10"E5,u7*!%8Z27a0&\=UQbR4^t;><@c$BgXh(chY!/K<48Q[@^EAQ_j88qbSm3]Ok/9;0JkYWeiUV(KAW0/ %Hs$Ton\$J1/Z`WPYA[``@+I!`.tIEQ_bf09b1rsr0L8?63LKm)"rroDCUm-Db^/EZ."-L/K!HX*l-Bc'e\ef+Y7)DO`<Unh(,E33 %Q>W*pF_`SL@8Nd7O,YMdctEO%D`l/g`KJe*+(4D!@@7j!EE62Sr43B"mQ,J2/I%rd^;Ot4$DI,MYN&j!+(oFLVg,+p`b$@99d`sB %1iXm8E^;iKer-:@4-jY\6-]HZnlYroP.1a`$G0K:37:hU@f/@knOjH(l`71(B(W`b!03;0'LW*J1r"uL\sM4$Fbe?U6::q@AgJ@. %M,p(g^=7Ws.YoTL1ZLh\;M2(^)Z#/An_,_if\t2Y#j/[VT+L%-oo$-iPYM5UB$"d@UWUdL98^_<*DXep$D&HEZbood_Fo(c#F1.R %PuO2o.TLSG6OcA]F@g2%6Rg@5<ZI5<q<\9U'B7lir&lN3>^D^PqK3Su%EkIE6[)s!<G1Wp5/Z03Tu(@iJ.hY(:>JY2f004d5RQU' %7"A+E8BCJ-ds#Zs<2fcJJi4SB'B3O"__t(4q"A2d_a(Vm5)kN[mB@WQ#N^im27uT=$XQNHcrkTppi&V'LX1%@Eit\Bff[T*q&:V/ %fEZT0D63i:`,)da:R\mM;J$h1:c;+G)d=?Ed$2Bh]e7jfqNY&n*S.=Bl4IGa!0jYhqt$=qW@Qm]_p%q0)#Cm,S&q8a%$3Sch*W,J %g:F5*pESs#!E_;@1l+mc&N!0:97&OpORO6r@T8'OP"CO=(N8t=$2@*K6Z_]]5tk;&C[9=-q`O4IlUk?h@T'MS8Xbpg&!PBhTbJhA %k/Ri#m<:BPPAH([+G%N<2ea6]WNjm]9tG?G;H4)'5"),FXA#*Oi$K^6lFp.CD$UNm,FjR_]hV!(5ah#V9]$,"<)rS<h"X!5P+5Yr %(;b/n=ql,aeBAd4Mi*ihl).a<IU01t?=R@j6e73_`F>e5?7uC,Y&iZ]@M)<UCqT5=d[9<tphtUj`Nf^;os.=fA@%o$+8_6(:F:A' %]j4n]#gh5td+s;25pe.p^.qC(1>5XgX1_30er@&e1mD(K0/Q3<XN'=V!qVb<9spp*(=#!Xfo&hj-D[6@,2"j-SImY_[iZ`pb9P*X %[rbN;/3kr_q^kg18u6Z<ng6b*N6>acb:T6]aG]bcjB\e@W^7lS]=PLf[Vd\c.jHmB5lC_'Po8G0cSpm8^he<6#t<&rlSGViq/t/` %JRE8]FUC(`kURbGgT<f8kpm4B(74frpJo"QCqB&_<`/JL[t#M@e-AP1CNUZ*Doj5iY"2c/*8YC+3A]AHLS8Q>H.e!s#7k<M/@tW$ %KoS"-1pmHuGXVQQcdFnL$5Y%"')[[gp"PB/3o-c/D"1[j,<dPWb>+$:\`Hi5]CXAR'N(K`_[CTrLa)tOrcR>`k0-2oP*Kf<:0$+$ %P&upp@fmuiI?Yn@Zd.QDm#b:`_A$.chWf+PPUm["LnJcNb6e5:WK,!."o>'@Q(^..2Oo7A(tX4e22kO$?r%Vn?g"o0hA<ps2%t@> %j0ODl$q7HrQj"Eg,e)>D4P:?M#`73&VoC7Hk91PJas\&Ff1.'Tm1=:4<$HlV.9!#^cIf,_VA7*3\IJG1q:#BLn3.7@2@DTN=l!Zr %S,=ab&XqhYp]#rnhSRe"]IX/^Ya"V:hb,URch+:OI10%C"7@#EbNP0GiM<_L"42`0_NQZgA<b_(;g2&=nSV:G.VMPg#Wr*UM$?_. %):M6!fq\Bi-@FsY8C+r/7Aj!/+O%14,VD2ski+HD<)!1R6BmrP"6UCb1?.&NV5]':e.N\,8<HbW22<\^dZXm-bN68(=:>Laa`4G? %4O3C(K^h/5M'q>'?El3u2qfma0]oI[\S.!Aft5@9Ysb\S<6e2m,k?X1.f'nD'D/?1;,Iqf5P*;tLC6"u+pA9Wpspi]3DZ#'(\u?. %/SaVGX38WePF)Y8>pP%BO+s38T.Z/EU:_qYb":UH+s2XYaj$eU]>oip6j$FCZ[K>\lW(SM,7'T2eK2=.&">.N]&V^fqIT(7k"f>0 %^W-;@[2FeH>o,;hM)X7kN-\\'Cb1PZS]jghF$$*S^N2?-!+@)L/h;Lk_g".W41DPck"MX0nHi>UmUt+e9SX@s'8>FS)3%9j2/<q0 %o:6u+CDub`FC8OGihN/55*R.YotbN,?g(MR!N8t@!5m<=c4KHn2F$0q%Rh!m"FlJo+ZjYr41;T:#;"33C]5$#qe[XI@eL7`ECZ2_ %RBWuoho1R<<-'eu"VBEW0%#N\*b&'O5DK>Xad]iEjghRF$%8q$W=F!,RjXd1]n!de*,ER2)CG-Re/F5q8uO,&!R?4.*W(j+m%CGc %#(!dA%MQ#P8J>`n!?(b*8N/:oYua<FQc%J^O-j!1+)KQXYbDG=Bdrfu>j/>Zhl.*Z7'q6HWD9/T!O6>%Q\sOI)&X\.X<PmqiPP@Q %&s]$ZQ=XnDMU?*U<I^<Wg%/h,MD`a;ZLC<9Rq0RlaJ&f`;(s,2>);LKk1[$Jeil7eHP=<,.08c6ps[h\XNFHtSMIO+](hi_U+%M\ %HkPt/::%5i0f)Bo\qEal.d8E`RoT!rFR\3EpLj5gnl*LCB::t%8%"\':S_#SV<h!07EMWFB<*6dl2-srU'@b6N<1erY8RZ&!/(/2 %e;Qq!68HiP?p?uR2012_*\"hr1HU-B*BTOI'iJ#ko6?d"/9_=V"rkLZXL/]"`(jZFYS!&^$5<B)/4R_fmu:tn."3`pJB^c7.1r6< %Y)[Wq<U2!SaGhj]8hula36`(3K=MNQii05:6V*s]n+KYLVdN`I0h9gM'*d5.RE`^o$<J.&2sZ;B!VTBZP,4Hm5`4hWS)Q@[r_kSO %9N;ZYQ;#hAj?`TVUsaR[,"@1I,-4k`,83E0YmrL`.:VG3:[s8E',>9SDNf']`Ya]h<'ZRU&/c(LI)16,6R?s3d>ONZ6hP/S$e2^> %=ne6Y>?OW>]A-r:`@'L%">l[DNrY8A`3BU"q8"[#73S\#Vc2R*Ghi->ci\'u*e'6R2JWd`,@G?o`3+rN-5ZfA5](,PdWK4SC8NMu %q`;e#f2RmbUO`c":85'_s&H4m:2E`1&HY.>S.IUV55#RmHq3;H.%%&4&*rj&Els`Gj.>o#nRY@US:QXNR^I=JXHQg?\)OZSC_X1& %cE-?ri_&A`C2UWp<mMCa]a6XFSph]d?/i,M,uQP"kKYAG(7Ugcm/+1)Z@&$D)pmh-q.0lJjdH=Wg/j_C:!/p\/CO=$!?Qpe,ff8p %"(k5ZM,?I&2_h2G,2b4]>r@I3BucrG"-&BUKi$#ISHW!=C_c9e#P$eND3N!Ij!7*2W^=6IQ"0\_%Cj4lqf0e[?7JcJDW!8j,Y#Y\ %NnkjRhL1*Ur61"'%brdU'V5S^_($dHN4)[2@_=<?cZPJcI>*#DAq5;]XB4P+gR/2'f!3<=;OuVY["dq`F4edAMls-sb"8gOGRYS& %^0>k21<o)PE!im0@$=YMb/uO+aqJhSdD@#nM@hnA.,?=W?7#ehd2*tdD=H5`?.)Bk6`)lI'Go+U)TCp''4Y?ba!^)RU)K6J:cI_O %TBXtnm=o+%-%FKB2a/ZS[,0.r>^/fkN_gIlcFEbXj@-8[lM"G@G-\.h14bW1pY%9QF8Us2q\*]NUPQ`KI5Wfqe':m9(n?1$>c>>= %BS<lgoFs).Mru?Xh^^H0j]A]tpe(iYPOKp[Qo8u(G)V9Z1C/K`LC2X2MhnG,QGmS#TsaMG"-k<-M13*cgBW%u6ts7;c#EN4\>lWW %AJruk[DcVl2<p!p$OhEJ;,+l3*:]Aafjt@kdet1Ojfa'Q>HNJ4WSYN/k,ifA-r-l[6KC%$\Ru!mE,$DO<"=7X(Ihn/$,;J9:CRg) %3R,u.a#aN]-0K8nIS_$B=1;jBRm"sKbAf:e]Pj8q,3t>T7%Y/h;L25R1^$,he+!XLbt<0qf'PH=2>1ip.1.D;)V3g\?7W+Uq5jbG %I@VC7<=+&kI/dRLRSaYPE[@2o@3os.6V-i5EYdLiMta'M)PfM-.=kL'pcLPh-MSV0\u7R/k@"tK:5Y!/CF$_rmN9]4alI>1Ulm'L %S^OK`F-F)JG3hRZ-Irb[;sa%R]7=)?;3?qsKc,=pM^2>(3:IOlHsnM!,i"8h1/YO;Ti86!f8)-ZI,?[P\-JF%R/B9k)Xnus8,!qK %9qOJ)/$JMVfk%@(TQ,&DWnVEcImQj$''^gCG$Z=,p0g=<D</'!ODThkpbuCVL%njsB4*t@\PTPc"+s#&"`@l]!DHhGY<9_qXUR2& %F=*e#40B7,..)C=`J=P4B\4Y$.S^WN^I-Eeo)7,jG#E2bTTqe>J&9Z,K'X,\iq-Xm!`ADaMG4t,j^N7YD4C-\L#jsb'Bg*=!ouus %,t#`nJZIj1()l;31&k5UW-Yi]]DH@S3$+A$/uYB'8T6eR^drGNpT`[[A$h0UFGJ"-f/8KHDUQ:'UQ`5WjQV$Y^u+M3&:jfG);.MU %U>BYc6;I3LGYqBF?qd:mkfs'Kf;?WkG47&16;/S+,S>FfBqjO1A9gI&\ha>\[=IXVEeaJ:(b[1dh$u@rKM<,E'QrPd[t?e2dG7NA %[_?u9o4Z6YpDWU&",a5/AG;E>`.hfg/3KqZJ+AGC'23k<L[u2pP4_j5rOra.!D<i`P^AXQ@#8t27fb`\C,+_VP>eCeRgXI.=9MXO %s&7+6W^q%lKs@X7N%^Fo-oJ`5\/=KX<&#:A/a`35pgl)fImQi`0InHGS:[!'^d(bVU)_!AG)QRLq&#W%^;iU[qX2P:"c4"qOVXb1 %!MJJ!Q(YG0(u4./<rC#87W9iCIZYA:%K;1JdE;SmQ,AiTM$Pa4WpOfgZ\rrVBs!\b]pD/mqYL3K2'Fj+A`Mo--\N5J(@0V>EhPqf %:k:4\*39OqB?s>(/YR"V/8p)lZrFe_J4jJ/Wiu5/k]<T<oVs;@cB5W4G%*&%\QI)SWpY%si_6Fs2WV/,m#8,2\A1dpLj7[%gn*[o %0nYcgVPR5N.baU0#qhI:,fL\ba="oZ=GgPBMWZkRLapJF#\R=+5Q=\9)U+>c+Aj;*Fe'/HFrjV_F]7t1cOO6PREp)bJ8J=!PIu@[ %g%sSEk"5a?M2BQP1_]t#1tbWrnEH<ZaX^\#mqSieO#(QJ<)eJ=jhq'!%oh$NI6l?UQ/#$8?P=1V-TMUMFKI8pkbNHmE%r?G\M%8M %n5H4h^DI^h:CT9DWA_#U)@rGQ+IcKN4Ut?@VGo_`=l)&V@OW`n$*Ga"?<"Vi*_!N4]a5"boa\@AFSAC/.\oK*&-F_7:5M:#pinhd %Hrecc&S*QR_IG=QZRj47W^$f@JZg_:>05_b9C^*d+2,r0LSWWRS`M:qAJIPI?ea]7XgiOTKOu,dgPY(=Bag3U4Fkiqab4.&5>e"o %EEJY;;+(j&.K6Nbc+!0)8/sh%&g?:2LhhZ@-R.%^I!UtMo`2d6)rYTDE=goLSS-YiQt1AB;MhF8*7@9Z'LC/lGM7JXDu2no"P3/J %`_kkF!`c]JA'e9$U[um!<FR3n$*,*Sf8BD-0!2%/7>kpR/gc&9V"NEI8VKN>4=t(cr-[C)Hpp7nIjO[V4s<+DBGfV^,0r`-ER-.c %;"_tgTZTEUf;Jsgf8BWta*=n;G3!1uX'f/XJe\CU'rgMSB!j&:i(_RfJMHoSH'Xj^7>#qf/`@T_,sup>:%p/ZSIFW'!m*[S!Q$'S %6qBYc6n]ZJU/aZOb*D^2i_tSuoTi(RW=gB9+$i*F=[N$GfIY?T9_Dp]BOH[!-q1]j4=&KbfZY5,b:J"kp/M<pS46Y8-AV>`^E6?p %ktu2NK.p52BNo%G9\CC5H_3k:q'u'n"G?5r;d'&+:QY&(642V<G^uBkUGafo[Gr*&m7E]<,\tA"&QWP%3lGibHnP4+qds1%1W^)F %;:;0uek^*$QDBO,pu!3WD.I%#8QCZlTo`hMWNYQ&0dG`A-b/W$05HCb,L3aTQO$`>H6Lkc3hY6V(iWK@cN0^]'JGcl-02WrBad!m %$6^Cr":r%?Do,cAi*(k3"XV)udH"HO&W6/a7T(omC_%/g4pr%[XU#OXGtXkp"/O\j/"=HNa]:u#<.s2n><]!e&s1-(;RdZAd^SbZ %Lf1t)^"Tq8Tg]m98?/7Yij)u'BJ^K)1p[Bc?JT+2&7Xt_FU7hE(4V;`J03&C"+\/iYVq045XQbqcD3f9r5bNb_I%6iJ@n$u4M5F) %`3B@*a?pI_s3)orch_S"&"F1-qBRRc.Ql1gZBk@gjOYMn+T]hi,R[,aJprTgSpEjHXN&Xnj]%VWYY_`_hmgPfr@W]3)qbU,lUHJ5 %aYM+WC7(RG3G3XR=/bZ&<,nC/:`ib*rk.kuju2>_@f8`r<QkB1LjE&-,/o1WCU1=NfM['Y=\s^5K5<3QZL3b(]e/ThCE&SlX"j\J %mI`+0jE[^kD=hl%<Mo=Q9_di9Wq3[]3H+4[WB#Y&^!Ul8lPGoX?a-Ao<"psScTaNWLA#ooA*?Hb_,1hN]X5i*p8'7g3Nf#NLj;R' %-(Yqk9U7kF)Cb'q]pE7!njXl@$@"LS,GkGoc)fj1Z.,`+6U.RPo<n.g!<(VWBRNtHP2p$J:J.=?T3@\#C].i'G(+kEs6;DKMFJfU %b^,6&4t57LV-cI;?^t=9Ug8(<>2S<T?I2$881;$tch*:mNDKl*X:i'?V!!pkCa@mW6kZR-VCE4O"m02;=XlgV%:N41Ds5DbS^^83 %>K^KsMnf;cqOd$hp@H-%Wd\f/C9;ZO_-%ff\:m-'2hJ4S/Jd7W8E,hB"_C(mhQGRW,S;(FRCZ^pc/Ud[Wgn574[fIB%=IKXg!kF/ %>uQBf3n(Fn(L8?_g*n9P:e,1+XIUiVr]'S_:jnVL!^5WT&V)\g^6.I.TU=6A7FCLb`SO`3+WX]cZ+utOSL@QmPVeRn%6mg1&jZr$ %OdA`<ct=8RqP9/9]9)*$Hh/a_d5?8s,p#e%e2DnD.E\G%Y?+FIGgUsCHXs"Vn"A6FG)C4M";OEhbK:_LLu1ODKiJM)LTs@LDGVP/ %A\4r[[1&5;-EpFZkpMrKmZ/B#%>=OnG:b3FN"9r??L3=&p<a`!S#BaDp.,p@p)F3m=gope$isk@]%SDj2O6aF?ER:Lg,R&@q&e>% %c-E2D`.T/g(0jQ]05i[%HkbN]LV+)&.Lbib?_Or:^o<4YNNDcLWfhD+qsPX`L5]jpO8l#cZfGL0I:+J6'Z6%%8M'f#R0h.5f'[f, %FoH\UDeon1f0o'D;)uG+Npt\&5MgUF>i02!p^:Zi"&hCApd`M]8:BkFN`MUKYlsD'@BZ0#_W%M'GpkLTaK82UOa=6,rma9A<0bS3 %"qjRKZFZK3pT1uJI.Gk(-30'+5hm\t/Kj1]\AOLlYmB:^qI.$1VC4,kjBI!u9TKbo*hFDuegLdUoVRc"qR:(h3k+!0h'Nm=K63\` %1!:3BmNH+0O5%["fBMM=\pt)nWT"S#AlBdQf@XP=/9*\)n>bJ#X6d7Mo0VRVQV6]`lVb@,b+l^e-H+pY/I-F9,@nd4+pQ-?fDX4o %IiE(pK*cMYPiGltKgSec?Ir0NI%KeUq]0UPoe3P\QkX.c.l9R2nP()(RE*;dR7U#2O/<aOn(g2X\)R.Zq9$N7DMCqJ.bG;A"BPq` %_4e6]ES#t4B#p86aTd?VJ"6YXp9KMRX`GGop41j?#]uY&HGF&T+bm=;Fi?Y++#ZaNX=c7lEs@;%C%Xiqd[--`R[Dj3HkDORXt!I. %a9Pspq)9[X&/M;'TE/R-2$SB<MM&%N04S?N`)j&aE)*NYgfcN!!CmA)`U:7qJMO`j;Hlp#h-Wn%UbT:&3G[XfV+B1JIZ:1J1V`=A %_<fI*[A.5*QS@;k:oQ'#N[S%\:IgqQS-+5V#er(U)bXe]'YdoV>TJUuGD)g`a\OE!PoZSfoBK)Io@[D,?jji0;-"9Dl^E85=1eG1 %bkSXWn1_tAEUQG3rhNjOO:a-P.p+''?MY:(\_*mfnjl8O!rTbtnYY5<nZ2f'C4-X2i1*6QY8o\f<^P'$Z:0642JP0Tfp*dha]4#P %Ir"Zp*&4sM`0>1%0X-#-%[)`T>jH;l!ocKI<&3.;O@281<4)MQK:c%Vnkk@*l/n1=3V*PVnes^r2[R1:k%^7Kc\[jb;iiWqg`feZ %B+^mf1B*U]Y\X-9rTM8a-cAO*49S0GG=$C9;eS0Bd0*(s]JN:,e8eDO="]=U0$9GY/SUK>],,`=%VQE:>h"[=T*<>k[jnC0pm,5I %nGDJ&f7p&5Q.=m='`fgnU$-a.!J=p>#)ooi5LI8+/riUjm]&3Q5]3Jh#`i!/6L$-$!>"XaaS0Qprplu%qpU&f0E9f"^]'_;ro:ci %O8nj%rU9dH^\^h,l/2N]^P;5brVQW^s7kmrnULL]J,S]Jqu$3gpmXp+Hc3[as5m,A[t"5OpYYu55Q0(&5P_eLs7s/(p[`n6]B>7T %o+CrahqE#KrGV`-s,qj.7sjfVnt(3+@m6f=7bE^!ds=Ro5%dEY;uG]VikP?Ue+Wh2Vg*Xhm6@8/Q,HUeY.&O#e07V!H5RQ_1r+lk %pWNISObF?T>s=*5MC%`!c]@Pkf@M5R@1<E,c'd-K"RKSD=NI[Ri^Z@H>(J[O5Me>NCkH;,HLeTALOMQpq^->AS41cDHNkVA;&ADY %$#<7K?nTf9R/"4'5X41eTFZk-*,'p97[&!eYo0YOO5UL+h[7ubS*k<]2TbRWnk"Jk@G.QD):IIM\'0pjR8R2jL2'MYo[c\?,Ne"2 %=^fU6$Ulop)Pmfh3AFYmaeY^$n,Xbj$O,aSS?t3sE5([S]DSm:H#u"Mkf_TSon=Rd<PQ7?R=/PI:9mId!WNIG(%[*Z9-4_S7eUSn %dj/L8D^;3*Z\>m%QbYdV5.hUja4mrbRB;M.H0s5*d6XGQp6&F]@Y`;"/6HLp/$Wq:C3hOr8597er2/;B)POTm`h-c=XVX0Z<_%/R %P7&nl3s`Cp$R\lY`TQ7,-M"FCWZ`FX+rM;mDuD^;/pLUq[b9QY%-(pG;W/hL\W<O,Ira#-:OC"rd,Ll-E3h4aWPT#$Bmb@/:E;T. %%q,#,U>sY='^cTa^^l5o,ADl;,<g3GOkp.`ZO(7kECXCXhRr7:i>lm&>>n56S!h1iCe#i3Fn'7!f%Ph1/#DFQr3O7J[?ED>L7IE/ %2V-`8ZeYF#@Mf7,hfS5WptH20@qM4+:nIL"k9SC*6AA=9raYBlWt3T!l`<%nGFr&*/Nhn(N$lBeYmej/9BsPj,<U##`AY98ZL!P. %M.u<^-]Z^];U'hsO8)ouVt!:QjWL!RkS)r)mS6_oS\(rPUhQ2B<r^Xa@Ta>q,[tr/BqA#dXrY8qp#MfFFtt*S!<`=73OP@1^p>>n %/f3dd^%hY'9'8EXc$VjjR^bPu"_,?4jH!b8J'bT9=?2UJMC0l]k**CRXTRpX,n_3_97T-1giPmRQo0Ds1hJ-Sg[l_R6^4:'c:X>" %[u3eGMf\(O^%$*m9J;PIL%Y#6A#IABo/q0?mdlKHpfu?c-8:l8gprT./,\Q_<5Rr<e#=>H;:9!*qSjI+U@UF*Id>VMn2]jk$c!79 %'1_0_r2\;WRH?/XK$TTW#.u'l'j^EuceBLG8[BftPQcoQZ\:Y7j5SaG-X?H89m9:`Kk<^CTN>5DEhG@O&&>mVftBrc2!.Bi^,thr %`iNdlNW%qgZ!!PULN:tNajlqXL:=u9q*#qSr5ge"9&/k2q>PLYBC9pf8'tFOmTuL*dqt;(G#Q_:D<+()6J9l<ga0dHJHhh>?=<f6 %d[]IRFuhX7<&c_[$<\qYS9HEE_e&/4a_OO/:BS/64OkF:4\4;&Y'n(`J=emF;$4^:S<4!F..<N:YCMR!Z^:N:LDd[Z(\1u'`Pn83 %0\<;IiO&^(=oQhMp2&TnL_pSBEN3i#m9&6:MsZ9s2qE%Z&f)oR>Wc.Ql[F#?qYTO+Q;IJP9\W4\c76r,1tbXY_6Mdb(*3P>-3WYW %!^A8iqDQA#F"hg3IdQsgQtC=ZUBKX"X:o,Uq9'OT6t1/Ci6HZ?!LsOu[9.=Sl]^>$GZf%gRIHH7%*u&tMY+VXdPr'3j6d4:di'6; %&4;]V9aAu?mH^!`.VHtd+q;sX(Ja5=JV8+'37Nsg6U!97Yp6V(9["d=K>MOIpmXDcP8,5FfG^2e_0I8Z489=%_fMbt'63tTcU?+i %J'&jLc/*]OPGP$[QKs(_qs.$^QL;cf!^1HK#)fR:FE6Kg6F@BJ$Ykn&Po2uGMfWM3:#isnN^qh8:#.@MCMRjo?3%_4<JVR_el@6& %m,fPuJVfqW/$s,_kQ^cTYgdi.S'5k#6(5fcPL?H6.hgVFGhujp1gtqjQ;<UuTA<2L,!h%4q+rDa%L[c0j@K&?p%/+jHr(fFKiQHb %=pFIb!"R*ODeA^5`^pQVd>pBjG+ica.]nkJIW1n+&JFZV'epf?OF245Kh>V>3R]0j!JGZ*(V(CM\R1rU8WK]KH9!#Cq@t)5i(@Q: %93TO^s-%.-U[]`6-1T+\Oi7&@<m?RI4sj$abas`a1+T/,BX;j;g,gD,@hppUlGA-ha$uG1E(.\CARA89:h$Q4:(J*nIeSQTAY%.n %b4-Q'.H&C\Dt7<Z8"CeGUA=I*TBK&=9D<uG:6:D0\82o,gjA8Z=an'E](dHj5s#oMSqA9LG="?Q9g%VA)Q.)UB.;d8Ye3rmH_`GV %kHZ,'lWq.8a-c^*]kFKqNJjMAe:tuN8W4tk\(ATecf/]Al-M(%fg-8SV)nUK#EQjBcF/#4i&L>8\:-;gkLk3lH[R\)Ds-iMnR:MW %r!',YSnY1+>Lo:+OaG^91JGu6!'RFshWgCP,)8u9Pa/s.,kJ/4JE@KC[d7.7ID^;0EksC(T"]@*oZTHIE?2>aOGe,#-s=F#AXc@4 %e>1="4'B[8X(V&CIJH#.=ll$<^\kI144ADan-Vf!3X<q"eg5\DCM.pnPpsOEJfoEDkapj$;_S#gdU>F+A<+5B[.Y>P2i.ImcN1\# %T;?pkhhLgT_E.U,rjfDk!;p+&T$lZ,<p"&I"YMMZhNn4(:u$[hb^..l]#jk&XSDIc(RL8jkb!#$orF4=#^^^m6Dr;OOnI/DL\.sI %P.F$N)\WHRJ6f`HD7.(rDf,4qI(XBN\9\7D`THQMmM%X'd1EB#d=;a`T4*JA"_CA`GebQj^tZW2943.56aoS>h^?C!_"PQZIm?[J %U5/=Z6JR`0."Kom%lqgN?.@kiiu)?O;4t4r9ZD'S.->/14V)%(jRJNFQ2)*.J*qF(f,A0o>5+ja&sG`eog5+fgO:mKfQ,UkeABW> %>Gt;=62cj%0luh1KF3R+AeRohk"8E,Bd/Rr*8&g-P7n^d">M8;jm(b%nB10%!R"8UOLUOXl]V>@q>od&(_Q-9,N>%E2IcG3o$87R %.eJq%**6WB>n'%F-UrF:m`E>uP:L3#,3<O*CB,g5Y+uU!opIWZ:l2"Zf2,'0f2bJd2Fqn6HTSm!:eaWW!4F-joAl-k8+ii&%@'^9 %<DaZY"i7\Nr+.(BB17U-*rOMO5P2^Jjd>f[c@k_s+qltpnBHWC*m(LH>h6'f``YjNKN/0NGtIe=#9:-s"W;[P,[,8jWsjDU9J]"2 %\HJ"6CZVmGdc&3Yk9NZrQ#o\:nXUX5*Xhmu@CKm-@To6S)c@L\\2[eZJN0:I>[BK^o-=I<ZU1FZUB/"^i?So]D0?1N`nU[bo90X! %Q.!eHDmI2L_sVsErX08O0dQLmOs81s_cX.Y%=o(NIN6(i_Ht>3moa<l"EDo5;"k0[Cn6B]^$,P?6-3&2kdJU7IVG_blF@&tUjO=Q %gk("Lqk%e2rQs;jo,?nNPF1l_oZUH57',_HV*G-=@?ZSk\cP0ZR#/k<g/Yp5DSe:KI\#-400S5Y!$iBDW,hW+4NY+Kr4fVX@8bFW %4HX:_J$OX*#1hA3R*Q\iAD[%<Vag&%ndb3A,ZX46A;DV.f-X7k,9P6bMZ.rbS>.uhe$FtYSh8!9pt$RWY)O^,on3=,5;-(gC&1Pk %k`'N]H3g-'iXnK1<>RUJWcbJHB*ClETY5Gt4Y+)pdtPe;Ncb2RQa>d7"jQ@:C;1Um<CDiQ--:fV$;V')(L(CtNSVD0A%cWa(<JZ5 %q?=VA"\Sf"M_5PE$L1G$[mCYhZ_)2jo6Z8UC(1GO=3I;."4A71SdXLMCH%.C>6d\Q;hUA';+TYEim]F&,\nl>!-Ct&_P3P<'3=O> %Is1D9$=5H&2*S,uqn!Pn4Sjc!IdP`q[mK=q;gB`e.4-)^@jlM#km1IOO5cB"ro4g',t=1d3k!Yl3CWR)WT^g*dtPrQD<Xk:L7Fc. %%"=7Vj:!%K<NR@n--$TS!\=t!K9qFL`jTi*5L7VEAY7NJRd,,Q&V,_TH"W(XYK0^%Ep<j2G6._\'1J"`FaL.i0G8Y<WH>QNO;T6D %[*7E%gLB/Y1eJ;OFsq.O[E+($!^5T_UTS%&h3j?LYkFb_6*YT7!gKhq?fO-A"m4Pl(tb%?@l_2I6a^KJcRqVr.BLatY\c5$!1hbt %.J^:qT\q[YSp\kfJq(^mE)_%H-8K#d(op#cd7r#YR'0C'\O.F5'['Pa!f(cts&ilXeud6r8tpM+IH0&Se9*l6-T^aE.iYG0Y3AfY %Qim]n/-G$)>7sBfctq'@(iKJ0*]k&>!]EAHV8I2DRu0)d=I]rRQJ$$5D/A4e\<<QZ=`t>2Y[%B4]ubu]")Q7(J4&!;;P,WTQ*]un %1BUoirT9X>$mQf18<*!Ab0^^@a/PfgNYBrG<H_K,mBD7#MZe+]js3\:J4=l2=@E=8HLW\:Zk1Yt0Tau$]%dhCA+88m(^GO$Ss'=e %a:F)f'>hj_.;#6T7@kg)4&EW,EaY86d`m`f&uEXd8Ns)P?P?jWjr?CQN)V#.+hVkq=p@UNC*KS(<;eB&,U3&PjH"Ci$5d-)eE:UC %:P%J[dn8m!:`I!ia*sa^?'`tb7-QnM%*6E<Qh8A%3iu/YZFIno>$KS-BUCS':1/A[bI\4_X;s/\I9^OF2sn_tR5T2f7.j8RR*B0% %2/`%G;9n";OLuT<iQ$C6.*f%!YkeVlMeF7+_.=9^1D:hY9$BYgTF^B`%n7LMin)SCO[aqpF(;LTpdjs(p8co/k:JL59V?LR`.o_K %WsI+oUp)Pd-YFkqR@E*IpV3I('\kR4$7qH^+3b)dR#h@2*l(LI?Dj@H!";/k&kIDY;XpL!X*J;@'fU^O>&^b<"/n"86,>2g2gdlo %=r`IhB:uNKiqic1K*f:0Qm(u#Ok%"B/;[5+=4-\<jSKa=??$sh!W$Mi1hn,`Js*[Y$F<0Z1/f(lHmYZ>gEU)Fm8dAU9fmiLeIJqn %^:dB8_Wi%K5AU[7MXdd\\27L4"-DiqWmb$!LMLkNg#7Zm,GBG9q9:`kA6h/N!A8nKWiHW.PUf:QK4Ars7d6G0+?19FStU?&SF"Y+ %A5/k^gAB4<MZR8Zrlsl'>.qi0_dk9N0kf>NAa+`^b-hB&$'Xbhp<eC*`ZDKY6=i&q#T/b"DNA5H3N51WA?fd>;2:jX2oaa4W@]lq %KSRlo`YVcRUr\KV#PBdr$pu$dqDCcO\&KE1+e?i&VK]1M6sF.-*7bW``=h+4M$\'%;4C.P.eArD7_6iW=UK:f)*]]>IN`NeS,8;X %RMaH@(:!$n?F(l>e$-[9Di&Il.u*5>F5UW#3UNWsD.mE2nf^SZ_!lIo-&<40j_n2UCiUWq5O?)JEhpfs/bfJI%eW>(P3`7/I8U"g %Mipaii*pLpUMF@L1c,Qa`[+Gp<M;slSpnPCit2SC=G]q"+VUD&7U<CQQglX>iShuMiu/Aj@FO4d'k?g1FqtSNU9Zh$08lnVDunt? %p<]7a@tk?sQaPu;:f>XP$'?(J9=naJ=$-J/q9c.t_VTUm=1SE511qX_!(sKFME"OSo+aUq0H8M]+K#X_;X%@8mim-7APoYM[_B2J %IB<UidWGP,NQb+gibE_#O;OSljue:WNnPq9BQGL=Kc<kKg8%`JeBQ)Dk_3QA;V`gE?aZB6BWFm<)Y=/Ee$e8u'22mTn5?Em1n.If %**VCJ_lEf36>s;;&pd1WKmGON&h;'m$kFrC\"t?b_TA*bLCf;Dg,W9FgaTVbg"u4F+7WU`KQ-gO6u-Cj(?Z$Nm=MuNN_>A?F2ndG %.0>@I@Y`tF;)>ee_5>$E7bT\oB4nV>KIqnT#mSt^B.E%_>8*fm\,&i1FE>p8)r3HHd;1MR)7m.EoakJW#&s]hXCt^kCL&K?XW2DC %#IUgS]OcXRk7$u!c=+jT4%-&\MgNSd<g;5^-->5.AS=?.-">:X#e6U#/P]M5im#g`[cZ]#-uti3eM,jn:SeURYi!.3[DCjZ>aZ%4 %BDj4FfW2Ye=-P_pA^E2!m7F&(#'=fNS6QaYZ:[T$7"rbm#ud]J&DcanTEI-'@O<MaQgt;>pR'mX37<sq)\]po9'H'jWB(=qW!fJt %Bj&I[c"H:h9jGDVd(+/[+c"BtEt9rgMO>B^L_<'4D_:kM33I,S,<37^.60q:ka6Po]d*)>*T`E>C!eKCR</("RkM3;XdGI[NYdF9 %U=PtUe'g"#P(>UriBd/R4:?)D:pSR`qA$?3IA&Q1/][u3B,:_l;/k:JZR+T;_0W@RY9^H>S:GXq"]h`#27E^>3%"^>'mInhB>U[U %#nb+Y9m_<+L5t)Gnj%]E%$u_*9;&=(LJu+e7`_)JZR.K#-Gu6AX0*sPKZUfrF%]jK!#8&_f=Z>E_7I"JC7TV`lsaUg$_q6XgorUT %0-s:9XgrX4cGgH?^aKen,e(slhK\QNM!>%!bC5UM'^0]gr$Af?BCUp?NqiQ>T1!E%+.'SbT;f#s<3iHo3tX@aKtgbV$^9#KCsNY> %T1TS&X&M]T.?Y>bnr7>ASMLP"RO5<lSeS8QJ@XbU:Q!u2"po'c#cmQW&0^g?U-o&;XA[M%N*>ito+^5$5jRMo27"*o)1a[KID&%# %N!i0*^o0B@+V$R)X/1=a)MAWM+jcp/Ggh1'cgWX2P-hQSn?Sc2aH_H$4JL%.6mrc*p=SS4N$1=?:gi(]*&7$k4EDXk:Q6ieEQBL< %3mt"YOC(a_>/6'mBdm2J@H_N3184g`=c6*VePZN%@b8!/3aNUB"G3kW/p;laff4%MU1M#HWKGhFOkERW1o8XES1l3,MtJ&Eo\OhZ %Z/<-$&1"oYU?2*)49_jB'!YPHH890^K8'-7jinkPF!rF+qSg>RH],$/bQ6M0QYmf\J5]TFJ5-ILn5e0,!Vn(9$`9%!+;`-;4PUlm %B6'<1SF#$fc@+2n0KTLD8Ceaopl=!n67@@`L2`Hg!!>e5;nMLa2O1Zi4'GUI%Thh@#\V[?]<E+P;4"h],56%X>ZmBt,I'i+A,0/; %%++GPFFo$ajS!eJj!k('A4ABX&hX87he08^,AIsuoS(Zu9r&is+GcJc[9/dL6cL.?gOs@p9aV3(?5#%3-qt573*j[G3ZC)GV-8JE %dP>VsGeW]^O:YMgU\g!NmRp0HgOp#U#&'6Rbih9B_jgdZ8Oq-&;GAS\76&P:KdDR8BYK=Df[b6m)Jb't+Ug<QB[s7[BPW/Q&Wq/X %D+opc\eT!1Y?;93s!"(94gMRaEB#?o!sFP=GiN4jIW;<l#(NB?UYl4b)91mVp;o7Oes5%g$gZm5NRo^4WB>e,("dY4+l9H_3KS8* %/\X#u1HF\#&E-TfBZ(HpcI8.gW8Z&J>R3L;<nQ6PWMD34%'43gF%HWKU_D)H66C^siQ:LaUQk23XQ12.r,*B/Kpps$Gk((%b@k$8 %_%Il;$SrI_;$AT3A7PgVB@\Z<-Kjq+GG[[K__(](cn$Y/>=JbU-"ML-7DPht"Y2oK@n2Z-$0mh/K&pBFHdkAPMVXcqMjN=f`FNc< %_BgJNQVO)A4ms(SirpGN"%3OI&hYZ/D&&^^IVj$='(#.J?<4jD"TDGP0pL24)Qr:W2pYj5&g\]qN8".<n-Hu"]^^snPTkVt#aE$= %>J3C+Cud9o$Q\qk=3r9Noo]kk$8XTI]J,mtBTnD!5]?pdp/4L6G?YU#@D,*7gMt[8Cqhojr,fQ'>Ng[GLjOLmOOV]/W3P<n*VF;N %7?MgsJ=*Vf.;n%efPpOf^+I&s1:PrG"V_6]5D6Sb6,c_I"Eqthd_Gk9lBdrKT4uf2C6k[^Zo!:6E$nSkT650re9YN1A%-bU4b"Q* %]eMd>V2E7g^,F`jg8b%'iSMiUL3Mh-*cmJuEDJb9[k93B9)c^1'[RtrM9\!j\R)<XPZ>-_W-,,SJ/4itMLm/`Ku=-eWi=N>67[s! %gHGqWOf2BlLp+c6l^Et,Fl@)QpTE(,=_.='oYoL%(L]'`"^lK<72kOe!Sc:o"ddGnn;4T""cZ+*5+^9#f)Z^JWKMZbPaN2BDA`FG %o@[9%RKCMI]7?XIal'\SkVrI91@k_Dn:]61(?b=V$kVfK(Y0MibM;9\<Cb[H"$eh]1[#-?MBX[UIt"L%GRnO=7Wuk_hEJK5<0GV% %b_O8E]XUe@08j]Pnm*'lBC`<`&@DKJe[4+hgS9(EJ]q#:$X>pVnBpXaR^a@n'+4\X`%@EpKmR4m[fXC(9r6Hn>`p7uiF^R6@>bm$ %.>t`*DORM-BdqAn(<Rk^1-quN@+c<WNUA1pDq-2WYNjP6d2r`/cYfRK@Fe!^:'MnQKcD+e<`L#&k3Bf]=O"[]1EBQ/!B7&'j_GM< %5NIIQA9cO!$-%rFB.TASSuF]:99/GM/tf7#>OYge^jSRiU*o.3(D]s&]$>Z_@@EDB/beRaQ;i</KR"tlD=cJG_)_Z[N<b/DA>9\< %TQRe$r"9C^k:.gJAbTfb3GiQ;@6_%/.j$Cq2UjLbc$$4qCMh3/j3KAdPTHOkq>4P-Tc&g"U!=(38<78MB1[5@G4!p`#-KTZf-?LD %KS<\9fH>5c>&3(4.]q><K'[=$Hbo&WJ7=5FRZ=B'>$X#OF@3obL9(fI1]UluFqV^l6l6POU_PaX65M6>;2fLUJcp&*'a[FJBuH`k %T-L9nlnimd0gMp]V`f<FB4'SN@=W&7h_@>%/A7Q.@Et=QdiTD&o;2d<1*BSf3!8ONV+G3#J/,7>h=\YiCrFarWVY^tTo6dnNi*[a %5]B_/!M$HAXd)$dC-=-/R",Q(lO(LfWc>1%coOa`)4mli'Vq/fUDRZ7ham.G7)K3;4*A@j7O1c65<".6MT0>Wk//JVm'esZEhpC4 %0q,.q7,$B$(!pWP[!,!pFuoD?YC[Upp?WAG![YZXD3q=n`4.^-doWS]2S[@&F/X`%pnZ?/EJ_,a!Dj*eQXcX/bYC9L?@=W'RA<t: %JtR7>6aboYDoYI.+>qERUpTo56m`(C=^=LH!VTZ(el$LV`tq+b-.Q>dl![ke=bc:XF$LYj3M%ra+R40iJi_E06E<a+Ma<Rq0F!%X %PAK"'"k(PqE(/t<6BmL4q0fY[r@$Sl*RrO-b)OH&WW<-HJ7u]ic%BFiF7EB;;a#5P>sK-.6E/Q@n@YOmdFG'78FZ[ZV&%Hm25;#n %=]2*[#6^-YXKIl4]aqWLn41EQ)b4kJZEPQ$W7a["kq3)%fu0D&)(JC,Yt,-_6A0s_>kA(oM'3Bl=ji&H;o3:qB"LfgK3R<Z4\\h] %NWD`WFK)<)pS?Lt!,B2<BUIpo`gQQ&-#5"^g3]mJ:KEE>=#sa3bZ*NX44LfS.W/ALj')R6;@BRM(BMaJ?klJg(6CdY\$9"8*LU#` %L=33*Fa<_1RfB$:#m*O/+dcj>oJhIT@P>F@iKkZ5&O<;`WPqfec],H5T@=+'>K-c<#UrP&//jicJJH_ING&jJGkEg6!(ER&lp[NT %YaQ$:iX'i74P2Wl0gIL=!?oV4p!ccsSr@0OgdC`@P4dTRk:dhfhi&BbC[=8'1sdU)Fk[7*Uer?LKSGETH.g<D6\d$NQ(`W/@X6rq %p\3[=&dJK$as>7\#Qj;AB.NPuAcRoHqZkpt`nf:RQPg0E*T/C4"lL+\Btfr@O=eN;MfC4Y@@"^=]q>K3D(B;L=m6OCb6L@b0O?'X %!87&OU4,9ZZlNg2lj9a$a.'OT^0'dT%*mQ^q7It6X$PrsZ/?8*/;Se+X!LnW$:QFb.*D\(+-oKa';_plce,j5$bSl-ZmFN@Z%?)O %jWnpJMZ_2]qZ=rYf"d"AF:Q)MT.FI%Qd(.hb.aWX)3*s!>`^RN.;M@/YYC4WlIFf.7&a87&mZAOB0,#*'T\2<27joO,(`i`b.(HQ %9Y/dU6gV2EENm`[FLIVu7WD>4kF-k)i%1.XKS!L5P^[>*N4)"9%,`HX*!.L5U$X\<9P4?oqXfL^E`h;f?qgp^((7$:LCChQH&]:[ %1]OeL^(eG%J4u]GpoukKDn*GjTg0Nh,N0-/7WIf&HKgN(]KTF@On\?[8?BFfcG>#b^:/GLKnPOA_\DA9d*V4h.RT!%/+\p_#:pbD %0C[Y'=!B[@ZJfo5h;4QWa&/F9NB%EpRTWQT=&C-NL>H`U7nE!N7o;5\MFF#sM%d0T7S11)=b\3;oKor[-ruq1_.lXm(0?u>$%'!f %+:m1MEgVX4FOb%-aYIZPo;b3_>/On8G08rh=;Xn6PbHedbR9pc<+4P.X]UZnihk\?jR<JFC#u_or>Xa&XI@<WE#GVI&5EEDKTRsV %ip]LZ!@*m5)g.jhT6qa]GgR`Q"r^K4oEG?nX.!rs@W-Q[F'm/t5,.N`n[H[)X>T<%`g'Q/XO/#lcn24kjGT1RTPS!i"LhMSdFhZd %`5Xi:0u+c3b5WXQ9)OdHC_``oDAE71,]<]ZTIlaoKZ+Mr6\>NdIsR#BU^8^D@eRsX3ga3#6q'K0EFt7Lfd<%8P'+l'-SYM(0EZ7= %c3+?-I5^69$o!ZE<Caj2H\BCNi]a)%LfA$t]$`+OLP9B^.`PB5l:B6eS^EiK6%CQ.TT+Ok[de^;G6/&"=_M@C8B3m9UJnS6D6R1Y %&h7HtOHsXk'8W_L!/E4p/C%eNFSWNM7tH;Q^2%fd?(Jt8\'af'(qec=gda(MH8!d"agt!o"(8uJ7&GqTF_2JC=`.u67I.;%jU;dO %MU;F@=`P?E9E9+%-f?/>RRsUR(bnWgSNKrjq%]Y^K!U'oaJDD,U:Gi;#j4cBKAM`+-uf(e)dnsO^p9XaXWZE_4BWY4Ee/([KFYCu %]]iFpT(lL!+1(K/A;Mo@3.mBFD!5e(ds,qY1n#$J6B1(^'H1D(*6K]=l;W]j/6`YK=N=0*mI[L-)e*[5c6]7ii#gl8MH+PQ/%$dj %+]%kj8ftAW@>$eLig5l1I[\eGo:.+s;ao5kTm<*O6'96N#SCHP$H-HWJ1`bg#Mb`)k:re65fR_FXcIW=A5nqa_KPdp^(g)aFTR>; %1*\(33AuPhL!*BSa9*]sX<WtN&R):o/^%c,L^<MWb$sH'\.(i,:;!=^bVq)9GS_M917;irnb\p5lGB+VF#?n[R'=LW)P-;jnCQ`\ %d?+pSB^^Y*CUP:8abbp&CX_6>!EMid;EK/6GL5q''QH)oOs,/H?7;@YC,RFm>>8t5@`&8:S4moLL,;9^6m]Ek^eojfMK.`HB@M&< %:pj$XX%B'Z[VHUV](1kpq'5jnN/6-upE?^]L7P$(W!NXA(,b61AZ'4#V&C,2E?j`,Id_nXF7>*YlU_KXG_#$lV.=m->=sO$%SUTX %QP6/P)A<5L@Z_M@0o>WJ!Ymf%7:eYbYnTsAo:@C&"J.=;\#='o+93c4nchNl]-iQN"efO2l3&0ba,mm/6??hEC'\ST;ZM^9+0qdU %/WE\D'o/q=XR*`UaGmCmGr1$a].abrXu6D5:rc]Gk\^28Nu/?SgAVgUT3[8I+$K[LqOD9#,kRE^.\8rZOMDSj9g9jFFG@n.;JZle %-gG?6[Q4lOnR1i(+$KZQPi@91Tq^qDHas`"=bdPj,W$!BTf$G$J@ddu-j'(BKY*b0O%;*J#]JH"d"<cINf-AiU.?^q>mM:fK(dti %h9&&F#"L$OI:UN8)89D`W'uO71pjNW[&Qa2LB.t=oTo5Z^.9A_n8[kZs0>b;)a%N'*0n370g_2S;T.jD'!aiSEL1?=i^SR6AQZP, %5Q3`<>)T%0^^G7H-t8XMAer8&B6WP"Dn-tjete/"-6X?ZPf#V2Jq[=TN_!ZU'eq-33:Wi^$o82)DHk54d^jKWOc_!K21r&V.g+na %Vc$8=8d0I<+`HbP4_8oTWhG5*Jp\fgJ7\Cu.`*Jf_poq)S;7:mL3gcKmuRE@G^Q1DHoJ>h\%i\;a)@sL"sab[`^sjJ(8\h0EAo&W %8;;HnTLCHCFAiQ.SA#N+CGsRjjWB13`$k7@U4;B<<sYp]A6H=[)T*^#@I!2j7pH2u3Aa^R1=^fQRVG\6*HU^cI<S)ZABT&QJ\/_A %Rt+,5$Xbp^J\)9&;?VYBg4D_>'LGYn>c8q#.^"MAm0:g#obl[('-k*a>:X3jN[*A3\mDsKD123T<YIp=V3lKXSF%AO)N=D]<\8q^ %+O)#4g4*3GXcY@sI"0"KEW*@O)^7Js]dK0uJ'ie<'c__>_NN3SCe<8VZ,jun'h2T`QjO-:.?44DmkK[HOLhnF)K7mq^]44@@![fJ %;`*LQaVnY;ep!?BHq,m+=c9fq@n[N[>TAR?X`l^T9FN,])+_Z:W8kgq5QH_T#C1Wt#"Y/mb%fT6![/GZ3b$h@$m=>)#l_a)RO"$i %#):tPC=`gbJG)8L!+"<O?YTS?\McRe[7Ih0F\79ibq/e'D/X#)d3BUUi;u+Zl;46T+[[KKF>toKS;2`)U9^3_8hgj2@Si6l.9f#h %=K,2MjYI3IU!Cf4YbA!U&l[)5RHSf7<B+8I;+Ec!n<#^*]Cj#04d*YF1kB\B@as1$o^--s7k0LF/;Oj49UoF]9:"@2I)+G/]?LkA %A@dLID]nIUXoX@7bs"Y>>]$r^$eX[Y(Rh<0j!1/f^r]\I+$9Puc)DBl!Du&\DH%SpElkRjVN3F$L@(rG.mG!VQ9uTA!u+o)mE+Q3 %@9:e%T\++$!C=arl-2?4bM!"O2a/eT@?CS<`6EmsnI_5H,P0h#nhfuH_%L6a6BfXNm`kDZo`)U+G\unmDe-L"9J[In-/Zs,6lM6& %JXN#AW5XjGGg]kb\Kku,k!1PAbF8euF'@LhN7kg?EUq[tSPkE>c'WoBR^(X2*9>=5Y9$1U#7`J7mB_.C"aL;%1^m.+dS^rFltcUk %N0o,Y!7U;nS`!m66Z<`"F`&>Qi(/u&&W=_EBhje<OpL$;(#c\_@Fpiea!.TXV!m1-d/>(ZlYHJ)jpONM"5#2Z0kk<MJ>@X[>gM*s %0edj[85#'fpPk&-IoHheR>OEI$8Tb'4`")n>eTe+n_[CM\k[R`LC`m,oVt]ZgoEUVd99[7c:08RTAm2(@Qb=KmLA`CfEQWRaduXM %$4o6,UVE4T4B_1tm53jE"%I%977*VW'h95]:g*i1[1uU5nE.'lM(^hW3'*#t-=G0Ai:Q/D;DVB%\6Ehl;B8*!i4.lDA?I/f$Homs %#=,SL1eio63Lj\sTY?*U]X3P26Z',(.G?s:Udi!;@'qcD8)C`u>"SAj##6mnFYXqu*n;<O*0ROjD>&)V1f1fT-?"+8[S(<qJn4n3 %Kl5PcD%;Z.9lNQqAgV2TZTnsn6;"a71ETji$j)Pg'$cQ28TpF'-8,nfr59Jn?n?E>0'K/N<C^3:JUeC;`BC@pVi)m)\3(q;'6AdS %,hX4Fkr+H1O_ogXRkIg\RF0JV:$X/%NOG_MgfPNsMo/[D_t4=LIh!+2q_WD4/hTFHi:g**GA,*Er#U!?o1Z#2UcrM-g-g2&"\cpI %6ZCJ6G_ptu#mP8EM@CG@&pp)L%h9BDKug_pG1(>rgiulW2Bmg;*5_-6%fl/V(Jm4L2'p9([Z53!(Jt_i@O6U#cNcI:g-#ia&b,k( %_)t\/kSZUd6+Xq]G65b$SfBsfY_(-G#GDEoGEZI1_56h"SL@6SAqi&PSL?G>Zb7Pa[9;_9/>41@l*b1R#SNTg9]fJZQYdqZ":>F& %kE99(Z9r>7C1*a)Gu(S0"C.Z+"5Hno1G&ck.-4&/Jq/fjB[C.fI-'S$aOI+6F#4i]Zic*#-p@kYMiqdQ262i]/d%c#8QppAL6s&[ %[SF.Yg$V-RkY^k@;$o]*B0b*j]f@E5M`41oY]ZH+nbTu8j-a'T")u+C"t0]C6W<IX>ePk[%>mMNB=t^R-3tM,-di_?2(U;+(1TW9 %:6rJMg)FFJ;bs\k4OKU2peo[qRPBKO+@8=AO]-.qNV;EV>[Su$b%p.)&:cr0q)JG*B`Qp\M84^%aEosJ<_\`Oh/0rBJf==h$4mri %W'&ff_0QH-^3Di*$kS*.=1<p8"_5>s@JoZqen^[_;bn;PQ\(RG(2QoP[[pj_MY;cA<'KT[kdAR90Me=FStHM[_#W;I2?A@78P8)d %$#!U,j6)Q[KMbNQ_253h;LX5tol0pE&t9R(BYjH]"/.P42N/G[7`\V[1pb#W2;C1+0L,peGiYkb5S0@X;p54nEhJnE@+r!2,*,sQ %@e#1Ob>OJ6ES`JSd;g+>*YDMZ!p_euaU!Kc@;(6V3g>=6e15B+W.rr(9V,YuUTn*?MiCQ0IB%`7V<Or0Pq5LK$rFQ_i06#41JC*Q %J2(*2Q*h9[#eQW`b`RQuHSp`kd$Y"JWKq6WrX1>feoN_,gU;f'+/g'/p*G*TX:s/9:nNFa!Pb8/'V&W=#ao?r]@V.HBZ@BQ0MWL9 %BQf"s!i-HrKH@[6CHU#k0Vq*(Jf/TbcfNMGQ"`Z:i6*_j"%i!%q1p4_YmMe*ZaX@UWJ!tTQ15[ps!0Ztb!q`:A&83c[[3$\@ZmGJ %,6BVh/)9,8!F;+7M8mLq1k7]GKNc*W%F7Zm/e'-<g[Q+gbU?:KC?@8Y&EXttJ-d$Yn@]^@@,OKXj:mKQ"'pbN!g.GFCU"\Xs&Lt: %,;#7J#L``-!linr!L#PKWJZuB-Is\<&?r:X!kQs6[iO$B#sEIKA/Zc(?,6MS>sZ>D/LHR(ViX$dOBKb#iWtX(_3^l6eV(=CE!Kh@ %["q`Z:&o7RKOF@Y>/(YNIe*V?<KobGc;uDP_"\l)<YQHIgeFZIfl%J]1jLF]/;^JO64;59Ees>:K&r3CEe[RM,&EFrJ_;Sp)RGQj %kD<'\d^6J8)-`7A/>HAbLKMc31q[88k<i*]bS!g?hjV(iB;a3p[G6niRBB<rJmo?2"*QQ88^Cp.efMP%Iru0mVDutFAQ[@glEsa; %`,&aE%:H:/TF?n82b0Jt:AV0R0e'O8WE?*,"[G58V5qf#r?5QWJ3p,UWmaiO\tS(AZp5hN@]J`q&>A\/)i.9oV.O?-,8#M;X-er6 %FD2clGT9$`a-b)d9mNF*!s(`[7!)EUF`SJdU894S+BJ<`]'K%DciIlS)cU=tHA0c$ei!cs*Nb9jY[B4OE\:,/Fqa%D5^SOEUa`_u %F:Z[TfU#,R4>"E4g5`3imb/I!&gT.6AQ#sk,,@4H!dZ=]l*?<PA.YTt=aVh63]#rLP&NleRMSSBqRlo2J[HiSPANFdW=fiLA&U:j %c]KQ"]f,gL;3Jf+l>@4-N&TZM?ir!(J-/(B:I:,^8M/)RATT-!lipT`7#kfuC''J/+ie&.,/h/34O,c?T-lA/6[=AE14t[g@h7'9 %A#],rhL7[.D8B"UE$Bt.HQW`+"&ahUlnC]h[^c5:O(9jZ4fEli$o)51.Y04[,.?E*1U`].$-T[:-A_cPC`DGM'3.;1rE>ESMdV>m %Q-BQTL1i$UZBDN(lg$j)Aq,^i<4='QB#=VG9AmZr\oS)H8QAuY-njagg1]KFa^T]#fV].RR8;aXd7YU67Wgu!_?j"s'ufl%-@'o@ %LGb!_#D!hX.7D]JoEkf2B)2SH7lH!j-@K(?"ToD(X0`82eo2PL-jp=aM-[K*QSC`s#+3h("D's%?Bm=?Q4;6a`A2djP;oPt=fgtM %nf\Gc1%b;dTpaAWFCO$9NlJpV>Il\%blQn1'I@):S.*c1Y1UkM/MP`AK:UV[a<#m(6Pq#kTOL+a_eVQ(4'+5YP=6<Me>G1HDT6a\ %(Jn@OMrfeJJY'\m,--I0kZ/I<<)=R+(E\DOP3EY4H%k6hIKJ8cC&U;!lR5l<_u]44B>a?^_?FL`%L@4Ao*?aD/[QX/9Qmd'E"dS0 %X=P!TYlW'-[*2^?p7'<g_'4g=..1Y$G,kel`j!J-!tc%2C']pJX92Lr2LmaII@X0gX]_lko?^tN.-hb;)rfQ*!V=jd+P6/h&QWPQ %?Si<P3JZJ:iJ%RcFpdioW-=+QaNa?P1L.smDg'\i1QV3fM<C:B&)5=R?U!EW)t5VQE6/;_6ksA^U7\[$Fs9=bYXk^J#G>[e'ds:] %mFa)-!0DS=V<?=H%@]19CDi]imj<G;1QFFr@eS5L:*-L2ZQje;OMcpj&rUbBnrghn8?u+39\0jl)bp:*V;EMMh0%5OoP[T"KG_D/ %<?AN#%ZFf/<8E>e@s]F!P_4\UVJDZR\KGWLj6,5"'_Yh-L$4H2a7HB$==k[/X*mmIcO1&3A`&,_:P;GL,ek`00H:+#)nl1!BP1c% %TIgbh2l,;uQsKuiQ&`s]@$U0a_%9@>W3BHI+Bt2L,)p&SBc;^(liND.iK]87#*B>K>U6]_T$?r@Zl&[3jtdePMt,E[=diTSJ;;hl %##ks^_W`[KRu+]l7_f_beUjq56%pJUP9FSQA6phm7[Mh3\[4[+KKL1fSpD/q$cSKjc;grm],*LZ/h=gFn#436T!gpTgHo<7$b%Dq %);!$QW()G7ieC,)CjR"iBiD4[=ITH1jsbo`Ep4EBcd^`DQ->s@C63*NQ4q.k!2WiB\O@YW2+(%cM6W&eXc65`Sh"no"9N+D=P2J! %R*&1"Rpn2pWUY4JHWViAe?"QI(#d$BZ<gtUEc>U`-Of=qY2/oBH8T9ubXjrL3i:Lfl_E'+8"dl5:iaom>XQ;J;[bXP+:k/`+'PF; %$l)566stBn)SkG?[RJ`>jlUl>,mDOD;)O!SXQpg5!19b)H?IX9)V$:r%\@LDpFB,JL&m1^o\!;>QEMg:)OI6p.eWq0^SgLK^,CB- %Nh>noDn\KBE,/V?WMpPhm9DiZc;]bpjP6R'Z5+r?C?a3RHA)91jLunm66bi*bG<l-9@'S4UN)Cub197@@8/<6P24`Ns-t2P`\ul) %\7RemZen$qI#bj*5`;)$9qSBu=Z@LXm:D5@90:(DW-]\H"dZ#;2_#k,gG6eEr3LT#$;4#M1sQNr;;Xa9$(-Jl5<q*h<n'?>lQUM= %H;u7E\mT[`/(k8uMJ+m[@L45W<4#5g/f1#`O8XHn-b,FRfZS)(=4S63*s,%Q7X*h&423nY#XR`V,]kL<'ME`f93d]tEO$ItUB-ZV %kiVqRF",,+6HpUQ1IZoQVZqp)p*VE1N1aYI`Ca9W[sCDq83C:%LY5V48H3P7@Dq'"SkL2K8O`A#Zo$<e.6k":cX.O9Ff&';_U^;8 %Xk]ROmYj1n/O@6k6NUapJ35&bf2\A!,tOa5`F9S/ZdGs-rFVb2@Z1hoaWWNS%6*\qFpIlr/N6/'X/pK[N6,o6*"?X%[H>u,Y`>I] %f>)-mR0+'LB_heiP0t*r*SCtgcS`m:Zb9ADHd/>p\*O5W&KSGSBYBk.HC?/AMf:B0pW^NMR0_]uV;[MP*UJq9kHrOI[WNL;A["L' %CWfEMaHV0IRr_tB(D$b.)P3aofn+t76fZm7k:KXt`3E_AJ1cW2K3!?V@Ln32W'sN9(]\Xp`L9[?8heNm0<5NOJ[/f:BNT<U-3H#[ %bqhXZT'mE_=a=RZh%eFhSO`uF1Xgk7TE_;'PHLl:^+eh?QM'ucTNn9!]a.QTd/qXo3eLDR#0-,pU-it(3l+%]r[DN(QVApQ"\o0P %P!OIn)Q^ef:c)">[6%r._5V>FfaF6P;X;nCc7N1Bkl!OcFth`cj9?U34g,ZT<g-&uNYf:8,#TI=-r_Q?<u10L_A!H!?q\-f;`o09 %Z?'&bSX,/0gFK\Yb\^+Mr'"4VBUQ-0QoH(&'d;RO)bXdtb)8!Qf-$Vc<-`0'dpU;%Z4KpaYY:JX@L\W:0!ccSU$1FBc7fP8@%']] %-T,'tb.5Qn1<24m/2.&?e#;Z_E3h<p]F"eCZdYcU<9so`\ec]dC]3VQXGp_tr+HFKJ@G_\!GJ1POTpkIhG]S_KZ.R'GnN3FhR(^k %5$'9N:(bgAmZcZj)\miKVBGcL')0oka_37`af7;3@5bZU#6--8>ukCN+f;IWQ9id@>TO@?ER8`&r_19RCbAW^">QRS73YttK]\BD %U_C9r7EirG-G;e*1-04Bl#;0gYG)Ujr(o+FC:&T;,4QoeMJn([]Q.Mg`G3eI>:IPX.TVaA.uQ^clYOpI"H042G&qba>(Wob@"P@p %\llE`NTAu4P4YU;!5k;XA-&61psc<'c-78jQG#&I.F`(^]Yu_^Y9H*4Vu;JGDoG3u(-U\aYOgi&Y0^^$ff*^a'MOHSnsoK'p$KJR %cV*gSH0`q:D,I+A(^%:.O>i'NC,2g6+qQ%8>(U007&p*#,$#m6r`mPEW0pAcAeeEH$RP+M5-`9gRn5_.D:Cj5@V16=(q?iZ&bF4i %\I4'V_g`q*J1rNX-lX%82OaZ7(Ru>h.^^fC'S@$/!*VLN]iQB_&pefRE$&h$#\KFci^Kg(F:uOOX$rbFRgXMoobeipSn<+*VQJfq %?"<TN3a:ojlHBOt&0hjfCb$\<hN#,.0u+3SAIF@B!"J6*.4Mhd>(N%:X!I$Ib-Cqle/>pD.$J31l"OA:YKH/D"eQgRkQs"R=%_IU %B=)YF!_DO;k+B=QWO)@^[l!;GX2.7Q(mV82NA.E\\-mSjF]d%p]\)5^=jRVMUU`_e4U(M_#f-,^SF"c8UPd1sNJMSoTt-d!%R+-R %p+b7o0pMbdi*EEe-rGV!.0Tb_gkfXOL+a*5HE_(kH!;jk<`!If5&De!F)mHa6\K6"8,=&>^^)S^'\FOiSRibqBZ0+p)Fg:EAL+5% %N_^_>,A]eX"&>QaAFiGGDVo-dNk2/!gP>"sJFP4[THMM`,KO:i\d4F=<qs05&?OGST,(/G-h8f<@lG32)[EJ>Ph[eF9PDn0gq"MK %A/nB+;t4+J*&o[X6'>(G`'h4lTqD;;HNfsg:KXu'KH0O(AiVV*=[6O2>*^qY-L.h"OIj!$;7+`P^l4"*lkJBf<,6A;2*buGRi^** %8gT$AL(spHJ`S]5=q!$f2_&9lP5c:,+-VYtR@Z[M6A5%J%u'6l;.R^R1$0:&bCi\$P:d]oHO0=E`S6*[cehqa$!O4RlGt):$`R6P %HY55)FtdtX-.)$eYboD'!?h]o-a-@r.F)Zj&nd#eS'@BVPbXmQh>J^o)CXAL\-f5\%]BouEXC8F3X&Q`KZ6H%Bo+M\Rq#<7J(#2+ %1>.CaV/*2&OF::I(@57E9Lrq:CC1'10Q\A"S*:77['-r$<gnn$UMb$k#."43[I#5dj^(dfo]FMWWt;>$3c5*t)D*jG[mN-CVQ7tG %q&;Xa,"4IcSgMGPqJEi^><:FOb8R;U=bU?[-b$u'nYS8mKmt]?G=]PDf7ru;?rjC4BPQX$Ekl)mk)OI2!.;lbn2<P(^:(=SY(Yir %BkHSD:r*(OXt"UiN>lE9aRmEif0qtp1tZDGG91d?2(W*9:SA\c[9"ke&?nEe4BWT*HHXi8it)s:V,bh-<^n5R7072l'80i)317_m %+t8`74T^."+hc[_Dhs3QYaYY168:c]nha=:;c#29:X66L%ZOX^'ZJ`8+a6*cU$`L"fG]%W"?o](f7T4jTdpIWCE6S8i\l[XLQ&F% %/87,T3j`Gt7.N)>`4r-l9DE5r3sr4BP(RM]7^:GhWYc.a&g`6X+rSf;Os]ZLkADg^E>!G]8^/%t\:H1a>g[4%91fJ*T+:]'!Q,DD %Md\2\QEBC.]g\'f9l=`r-+3@n:[PATAr"YTp-tsCZQ-n/['iVR?rL+?'`D?:XYYb5bUZPIcNnFHnGmQ\+NB+K2q.[-4J8i(9&B,4 %`C5&7l$YFE:Vm<BB_;b=B%TOc3N"uDC.)Q1b^%l#BYp:G'rf0?i5f*K._f%\1+*IiL'_@Gd[OJ_eIhpdG@iWh*t^8R\)'be"?B)U %S;#2/K`TOb2Hl!"JN"U60,i<__&S(5l89;<HuZ>bhZE`/*5EE>g!Gra]^bnhalbiK.\W+^Mi;tG!Lsn$:EJmHS-KF&#G^:_n%uqo %;/HqR+!egDkVj3W*>sgg#A,ih=X9`S!Cf!ddB*iXJ.sSA*/,G"KP5-C(DL@9=#Nh5fL]okdG?nJCrlS"3@#/Y_Y*t>2ds3H<Y;:n %M4un2j"0NA:#_2X!P3*AW)Zr,Pg`ol[=T[HaL)d'H5(&B$)?5e_4>A*.>>*FAQ2M=kWWM&E99rL_+=6]&l*>t8(lg=1iC=CgkbMh %8WA^V%&G.RP(YSURq2i[N`2ba%&u>4ASeHj8DS#j3>nJm_.fFI.boU[Wt;qFH$q/(X(#8@IBp.$'I$'3cla,K!uE7LK&<=ET(]o= %X<\3fC'HbD.=m@LOFe=p"1STP9,3YU#UZ=)MeST3=kcRA<Z)@^X?%dJni+j7*AUQdGWF5)"2qU6;*`+Qd\B7k4>@aGahl@m;U$K* %Komq3Ud:6HgBgs;_#oR,lP#n'JSAQ)SglTJG)(6tjI0Fk!lW+5$.h\nDCA-g$"nBW@;Xs*$t6@KStDk'6&IdL!'e*-7OtG`Tu/et %g;/@8%k8J4/AtW;30b`0>Y-i?T`SB1G&EL0c#VrA>NjJ53)h)KkZD#-$%+Ep=]c"a\C[+1_J*o=4%"c+KBuMM3VA]T!Yfk7/DOV: %"se"u$Nq]3#&'l-h9osRrK;d9,L.E,?kDDs#K4G]CBcK3FX'bXWYLS-5kZ<O#.7Bc)iJ.E&7_pWTLCA`,&3X*%Z.O9K);3M/SgDQ %-=0C0'<.[-@AU=3ctf2o4X4bq7;`YuOLJPD($n2L1eDhC$kSaP7d?[c@3,1T,7"ZMn/tDV0K)qlHKEa%?'\<<T"974aTCsG!QqX1 %i8Nf7@nI(;o]t/W&"c+D_^[r<$lMc3oEO;HZ)\.QNrL"W=W`WV)8I(JPH<<'jqOe]3n]>H:*:>Z$c%G@+<#CRWtu.3<JI7K2;[:< %hg5I<=tqt1#_h7I`"hMRH\euc,LBA`(5kMDV4GrMEL!/T'/G;HU<)DTMQ=R=CIUp.FqijAV@uZ<K`WDmNge1p.oq:&P9K^ZiS5J< %^h\9P3+[t?_3;]m0bbnP!=[6m[:N=6V206\XMpCA'[dC\@a9/QKra(=hB*7t4d?'3jVbRZf]0f4E4o/+3ARIth"-80/>mVW'P8]@ %0H"1h4doc*&g.PUDQhBo!EW,:6^!.\,d9(c^H3+/d7b[O4;#]>+XfBZ@$M.R;O=*bH!%TSZc^$R.ur4cSdMiL@Hih-=jg5NgOV2' %V'iNF.r^1"D#5>f7U6O6Y:MRGW9^/2B,tW,$O0>AS'bBkEha?"M%ul!hLXg<(9JdOp[A3*N^@"9lI[f*J[cYC"P"up^KPE/gi:9q %D#5>f56Rfira\Vc.)M\m]![h-LX+nc9egW+<?V%jG00[Hb2Gj1&u"irb/-0)@Tge93Q'#Y0J>*j.e75+SS*XIc"ODQbJI=R@d0hW %MflFsWHY?ud-N(oHgpQtgDX$B@Onp-\d<;c4KPiSQe;Y9+@qZ;/`^gn7Rb]hBkEO?=bkN7C,-Nh=25X?I=_hNlR,BH/#L@[s#V:@ %)=aEHI-a\S4V!fjhJQ:$WX(Hl&\5DL!nUTS>?O)MZ<m<'WENW/YF=F<8Z;P%S1ijG8k&8NNl/-mTE>1,h%IMt<7jE\6oQ2oq@[VI %#ti>Ha_,dKY.E!t\e=CA%n%n$`@LCSWYSNkN^DP'B$X3\*CR]4FCJ#$>&Mag.Vs8@Fi9?>-8i1Kg33U\TP@]MhGXVZo$o0\_4J;i %ek/iZZ?<jXpF6`L=If;Jbj'a_X=0g-?1Y(kEp+A))-q!!ZeCP5fdbL4:SX(?EUif(&YS6M"Wtgm;WPhi-CL=+BVQfpn&Vc#Wbk$o %:5dA_MU8S12Fdak<._0(0:X\,&!+H6f8M;,73)3$.a`cc.Q\cSBddjeq.9M2?+sCL1R;?K\pbdgKE7Uii6t#[l!a8k=;Wkq%U*+? %8*8_l>`!bd'h0\#57i">JT\U>\A`TFh$>Of]F)K;8Z6Zd+V7DnMNnJK/kLs>B8'"o6]2;rXRR4HY1^+[BjjH)fXcGdK"gGT/r]HO %,".PiO]qW*>E;9@Y_T*jDa"6i^AL/R]Rb9%L!_ObGdXR9>1b-sRQ1RL29^(b[09G;6l6dQpIiIjcj)oRP]+Ru&ETC=LG0K-,Uu*? %!O*bfW]ECDMFa<m2XEu5V".c0^ns:%ak=2>'1cefEaEJaEchI7$I4Yt`g_cq$lM<VU.CnU+B1b-i+*b57$M/ZY=oI'B-E%'o!KrN %(fE4f.sh(21.kt3CK'[:%Q.#Df/sG-XN>3O(AN9eMD&"QgdE/q.PJYOVQY!7dbpEKKlToDno]+qVSZ*%Nis@@I'!JZ7m_D"O?0qF %SsthP_9*+U'_cVP&5Hmk_I>8!R/!?fE1E7CNf&:`iq2#tmJ(>q8t;N4N$:]="E##nBR7H"6uin1&WW.:KFb$4TR'ed4j[]>h%?bV %2rR]3P6rT:/8e45@VI3OB7jAW1lI3PXSY"dT0'1a=JpiG(2ZFr*I'AL%X34J86Ip9a=1#OhI;!Nr53;-XMpssr&5\4Rm!%<7#aBg %'EZVhKET1_F/^FT:diL>Atm%V8FpRpT:?#gXhqrt,%m;o)k`%>SfCgR1T?n>9G";,JBV'>1H8OJKkD"`00-/gC5>1lDbtSV`fSV9 %g.J\dX.d:.Z)3c)=@(+5=H^Ca`%Q!(TenBD$0l`.<9Gf:;eeE5*G%-`O/.@-qgsMN;3Ha_\\37BES_P_.?>>`;bh,8=9>P@e6lC` %V=oclDX1if@JdX:>+7n`o\if0=5fO.c)nf-dM_lfZZ1!:[H`Sa^GNs-!/F%]Bpjh,blEBT;)^A[C-@TPl;*oKaY5%KSP\=j<"NtF %O$4p"g<D[[&7(WU8B.BcZX=%RWeST!(=:><.q"Nea%0[(37OJ,$-D*1THL`6Ek$dgmr>*#*8Qs*95N2Zc;g9hnZ3FDe:t^Pl'-ua %AVRQp3`?a!*PkH$Mop/?8?PFKMU0qmjGF30ZX@Lp[.*a3Zgnga.0F[s<5bHY!^@m09g#CCA>+6]CB%,`bYMCX,Qe_\eVP(c>&[`_ %Eg3r\ClG:f9PXEH67Uq-.'lJ0"r4&>Q%BL]&3m^G*#)OU0"G^P#?@F9U9R[146@a;CY=>%&RKJA$'F97Y"5)K)R%?<anLI``C_+> %=p,FF/)r89CIeZnJA>+F[&a=h(<\8UIMV3)&o':%M%`<K_-RR[(Cu:pFpB!3e_j)ZMAEL@qW=P(Mq5%iEHeFj]g.W/a!RPGbV#p. %2QK$_b,!'R5X(7QDDn"'D*&39&8+IsQ;\=gil6unqh"#h-.<g.$nUA%MA\hBi=kIS0(EUm;Of*0.]^2FQO50N3L*K&l3V<%`k0UM %LMd*)l;8rmmQt.4^Npa,6kua!Q$=H@h_KJSS8Qh]fujK-ajLc\YF,;E)U9l:Vt?o#B6s@PZULT(E#5AC5R/d@Qn6(bS<49j\gThc %iA-9i$!6,'%lC)QMO2hcCcKs4`?(?:6aD.j*_aL@a<#''X(1@]19AR)XWeRY%Bp\!@Vo*r?_4=:r_>GnVT0Vr1L8omFJ\3fX=[IU %$Z*R9K:P"ub%RCnMoYuW6Tk,Nen3bUg@HX7ikn:rA_kXNk\.S4<?q$4='1J//,*kccfHL;FhfIRL+S<0KE,<l-8-#GJbc9j_%M/7 %]'aZ^]r&-/7K!?0[P,%+etSY-?I^p1'Y+E(HpS3ImLd#M"r\_[k/k/;+.S)TNil,a:bj!A!XSYX!l3k,g=]H9S-?9_[H<gCl7;S5 %FVjNNosld_=8'bYVG.A7;#3X\<=ngOHmGS`AfE6qF@WR<;)G5kL*+kS>;aN'S[2mW5-gH_D>?\d"'N@>8#YI]VVn0`a3fuDI-2>D %ld"(7`NbWZ]511A8J8URA?o#B,0?)@-AZLFN_indJhGL"g40@t=UA*'R5XmW?I%?1o&C)&2(Jd&]KVg-]S/0E6T!%&#KnC5#^+t@ %8raLNXUku1L'^0J<t8C4P[NPm&@A.<)YjQlgfdjF-c$(NE!n<0'BIdZ7*r.!Af`\ob:Y9r)?c3\UQ+_tDJ[ntS1Ga2dOa7tI>If. %Ep?&eU5_"OC(V[T8>toB[8;u:D".QddsK1a/D9OT?H`2$H:pj9m[6unTTNV%D(OAXjP+?uNM-]lKW,mC&rL#c8h<G'"DMmbMPJU4 %FCb_cYc^`eUC:P<alG6$,N#:`KmfDm1d\>fbsREmUo5rr-H91hNO=X)]grT.R76hp99=ZgN*58tY"#ER=WD5X(N?L>NBTI!2f''\ %7^cE9k^U+]_V8f5DRCE*Yq`^kUQ8T]>HQ\9p@'<8o6*3BX%!#DotJu)hs(k;i]h8P27@fWO*E?_S=Qcgd3B.N<aY/)YAC6E=$]#? %k6q,,)Q+Vs,T8?+<`^!CWN*U]*W'q..)iG%-j(T#Lp3ecSXNanfW@[6,KKMd'7Qu2n;,c%e\p*TN,5n+[[K21NM/iNVl`G>2KS3s %dqu^b\()UK`-C'PB`=(;f<%O4,6mcu>C3DJreLTi`R`r3'KkMCCiqYEGpQZom\B&mX!3$]krUnD,o5YGHM_H^1,CbtqR:k9XoA#p %c[:We5>R93+nCEOlOAg.LM--%VtS[TI]G?1eS]WM`n4m`4CYd9ZZ3G-6ea2j8$&eo(>2aCm1DEuX%g+SHJECPDDOno>Hcf*go^;> %2Ttn..sn<c^=@CVbg,,2'5[=_[Q>BF^%AfFMY:HAbO8:V:=s_]>qk9hLhJ@V9m;k/ic;/k3Fl/=J$O4+LiKDn@gk95<!bBXJ/;:Z %MV,h[R!8`j#eYnU2Q5RL5k"gM4YnG2p'Q-42bW^1D,hj&BVZ6qSV#ZaZ@#hAa,).-%65@8<fBS=1Z;hG&C>GRVK#;plR6FuF>Nc$ %ctaq4=Q^S>jt&El<a8L['A\Aa!o1/=KSl*1AqI`)&_8=@EoGSp7-pj!%F*'W._Vm7\o@!d>)`N%J1;r)Ppg4=o`^BoqHKMBXmX(B %=(>*pU+_piMc2a6G:5`XTUVs#1+Di8-W27A!;^TOZ@nj6p3.bb2[AG@,kXR=[ZD\5UGY^Xi=\EucB1DJA;hh6,$Du.%'\Fk*7pcQ %mS]uDBZ\dN(#iLsaGV6AE^>[L[Be0G5:mbHgu1F0ppio_P*ks,&IWfL'Wuu3$Oj`t)%*aN[SHr&OU8CJSe;JD)8Zuabt*SX+?g+C %8`1TAC)+*A"E&?_(,.WecY,6@^drl>&,Lu=RsO]TMkaX+(F^#Z1[\3LW\c?P,8(,0</Xf3844$3`CAQb[U8,C$S#*7;^rNQ>Fh7s %lf!`@D:,:*aYX$h\-(V5*F]K6jJX5SbUet:(:9;C)cH:B)9#-gL,?l(E'R\5@"neI0jN,G"4k5R4HHH5r#JU=ng8sRb#s-e<8%OZ %"\M]g>27<"bh:4t+I&:[c<Nk;6u&d$;R''9V+RoGOcKl#1Irr;U'qFS?:('KY=:#AE#W`^oblZ%Vpk_-gnFcj;3b@ml?3?D9iF9N %e/p[N[N6/fO-Qh;d+6*Lqn]`>&DVG4DEh74+2X'[f3=;Z-gR5?Jk.8_!%M-=bVj.I-<LOlN#k[d!;/*7qiZWL[oJe-dt(=Z5pN8c %FRRqDSj-c6.9)%FJ3]Sk?#"%DB1eLol?&plJ2DJuQ7P_X_+/[ler@(S$U1k%[r:Z99&L;8nVD5=WeRs]XKCc)]-;VjBl;D'gD'0& %8t0#[8W?rFM)(MGg%Dc+;hY:6R&W(hbS0F;#\3s\7>F+#2&g$*k3PFD9=9Ig1C_1&3Es>K-A3\Rfg8p1VX5/M(2I`d2a7nu>jBS2 %#Zj(h_5pVdIV'K)C+%"`4e+Ib-qts`Mc=1gVp?]TLOm=+!fa0-4(j7ON!1E3H34!_^Xn8l),j#";`,.;O/r,.L6*]L_Pf@nPCBYs %DXVkV-KuKSmB:K'X@_ckKj_\o&f0=-'Xa>42J%]tcR(jf<+?fQ(P0rSdBMG0#06k:B;NEaJl+ZWDT"+BTiQY>$`dm`g=j!%'U\QI %)eY)_R;!;9&ATW3jW3_UV10A+<0]Ku![s3$`(rXRMpt_gajEM]-OGEF!IBCF9@"kEV7\Ysa>fuR2a.csZkpK_UoCf.PS*1M#$DBa %c7YJDDinD,V%Cj/:"$*[<lYnVI!B49L2.h%,"fFE2a;SgQ+,9fghJo7@V9Sb8[hm,O'&ttXlAaAo6+&ZX&ZmYI"0YoJ*7V`ocG7H %27E?-&,hj^NfHqZl6]!-&GRgm#43o2:ciOX0_NI-/i(7f5-c<?/DWg^q:7.&D=]lqdC*u9XkS's<o9nm[O[G0Pg*7JZrMfCU@'KR %L=A5.Ep>)0@OQsMUJ38$5rq,LSHhHF8g-6W[)@Kg]huTtkZh2kAH6ip27=/"pD3a7[)lN?h9.K!Zo/&SDL/K5O;S,O)\W]MoYc3$ %'.6s\mR\1QMl>-))i)#g-*,%b39$+-IOQQ/\/$Zqkkl2HNJ'JkY/$b%3')gjKo,nLL\RtJ8/h9CDdg@qVF?.V_b@mKE,%\*_\>t5 %-fQBp%2Kb-.P5I2d5hBWq5usN(4[Z68:@=F6kK"^KYSd@-X>RYc@`Fl][eB2Zl1459h"7q07["s-^1QN3tS7.63F9\Y#uEm)XVlp %WHo2N7Nf$AfQIP6XH&U97Rs\1K<qk!i]U>/at72a2(TIY$HZm>Xp84UE4\_5R/NgoU!S&kRNtl[4A$B)Nc_^J/)5cH0C6Pmq-#YX %-5_Z,iLd>=XEC+G2Q*;+05;ANH"Bi^e1Hp@/>fIcpCpq6.MPa>;3/L8$sGVA[(d`_BFS`g`o_&6#E")rari,2g$&dWX[\V=,E>RR %#MRut;c^l:EP=:++a+%RKArsBNP;2BK?sXj[FGgU!2Bgp&bD,e-r[&s8oo`OqF^=Uh8m)tF"8sZ3DeR]T3KbL0TMdI/F0Ah"MLk& %13R5+_](9P;6C'm&(-@"SMZ<sM0/tRGJSUKcNE)2AC.&LOeum4;F7]=%jFJ^Y/3WoJk*#hlIlR8T@a.C?1d(4GQQu+OY78.jq-S] %["3#nFS#.!+7KVPD,C%mddkf7(,-qPio>\T=#=QK$PdcT4].u:3cIe-W5u!16*(Pa`5MrtqK"=c2PT;HgAT)1,@)!j:5!:5PErR3 %h]JAL?8EqhAK,t:aN,g2gH^`XBpQ8MT%@UDYqdI4>ZXr5Zmhg501)-^oLcN/Ga.k)\H/^Z'-k]I8Z$TKl"i/B\!tt'N::Zgq[ZNU %>Q8>i^$:loL]\^#qkf$u:t24S(@OGOn?:D8?>i93>SFrf2JiI/V.Sto:<-WtRKu>/e1qmr'1KV,pDd+ZXTK!t<NkM[k8D9VW8#2B %91>f-etPoWH`:O+9>ILNXN/=:c/0_Yn_fs'*C,,c3MiK]7rM@s>u$=Qm"(NkD\,uaJO:`X$<pr@d=@6BMh22C_fIYr/1+r\\l&"m %>6cn>_["eNYdYC77t\L3'qnY>!XIFF'LP.0KjOA=5B=.F,<J?[?WFWL'Xh,iAdmk2Y"O[f#TkSmGZ!k"7\#7F@KAis'L`]9b"A*i %l8k?*0W1n$(m;mU<_2Qt#8cn=@QE_)MOVH)*(i1Cj/Pq7m.I]g64Ws^T?mt)5EJC:P6o]PI=pYU&#T,JH?s(f$KBp,`o\Y/;KdEY %@-TZ4hmqA]/E@%gSCqaBhpu`$P^nA.-1)uPIA>duKJ(OfV`Zj,n\PUs-!;?W"gr;42-`io<uDmhF\='ab66ZGNM05@)0oVQ[6,DQ %9Q?F6RRItl&^Dk4M_^sJZKiekJH;dP@OaGL!R4hH"J6B[G]"\(RLcWB.48N=p5.?/HFFP:a33#j]9bHKq=V:aC\8^pk@HWKH8Q@1 %h7oME32sP/8<BC8;moH^Ki+6$Qd".a%l7Gm^E8q/&iAUV;cUXO+C?<BcqkEbjie2cgmq=`!J]Bd:oQ]/n"l&g>W3AFYu87F#@F=k %,bu^V3A4+Ol'4E3+D34-NZu9?lj!5u\g"FXW'.fICMJA\.`qM(N0;H#gA8otIq8"gNF>\K-tf(>Ob*;UJOHF?D4A#aDXr'aMjq&q %kYhq,D4S92<g,k]1isZ<$`6+i:q5UY'"kkDRdBLd]omYQo[1T_,p+;VN`/!2C#R".!@g]9QYX'Xo`sCDonMbCs,9YLCS09]/J<e6 %_gTJ_\i;U_dcO1t.6flIPC[W0;=RnL9Z%ek8hkf79C]iFLmGcQS!Df:I1d&kK.Q\URlZ*e&OL6u-"j5ED(_Rjqm?oq9BqGX5*7[C %9_T6*dFM"cFXn2]64AZb.E5iZ/Tk,S>SeJE_7WfUi=+`nY?+rS7?.H6dg"(r(#gq3q?4.Jp@;TI%)PsE6.I:FH67T?W65=dF<\)b %;"Ta);\_9^'+4QAc+0KBfL,^nk*s%3bq0"9>fbE;3eVWtjM3Rm;67=Y`jctse!VH,DYDJQLfDRl7^c)gO(R/`:>.niEH/JQ>C>oU %X-fOHiC!+jc8J`SV.LYb*"WuQC@-T)SrUbQ.(Ba!$2(fN6Iare'K0hI+Q;ONTKE[_bR?;M)+gVR6),c(H0beUeXa\b-3`mZD)3.3 %JZF/j%gKf_k`ltbf/=$"ClCE5_3cZt?7<Q9NgN7[VLp@2!*Oa[m#kPk:abgt5j_GN^gZ(T+_*gn#`(p:,?QdM[b=#P=dF4KhP8O8 %O^ffKO/FULE"ib;k$U;LZlV2D#B`_1,L0!rae"re[Nj*e70I)X:olNse?LE4JXPhT(iY`"2CtEF-u[N3[uO(aa8m&].0ECD9@fRe %fM7*'$A+b<0`JYoTYf@_b%WV#hCPGgUtRaqB?N_GQ_'/]HD$BZV/:"&YZlV[CWMY:eMYQ0BlRAZ8qrieZ80^)XH!TG[^#Z9F^MCf %oZH$5!:KE1ERcKbXsIonjg#$Q,hAmk!`Yg98-CP77]^hHcU5h%8(&&>.>V7a`dU'H0Jh*$r.`4WDA#gm@qJ*\%5."Gh-[_UKZs8S %%PeZuFp5IFXSll:UJrtuP`f$d$r5:G,#\Phn#WKu'^#AG]"/J&N'b[.VL&@AQU.ho&?B51&O9NV&1\M9KBNab@ZZ*[%j?80KV]@P %14ZqkZ?(HbqAQ$lTF(jB.eS4poB2r4Tk@_K?9HI<+,n0fq)YiZiqdeqVBY%CC[HnV,b43K.*(QGf9]:aMbD#cQ$%.*hB)eoe&*Cu %XT2i%=6F1<R]+3<ns`?hH:,bsl_\WDRKt?AHJ12J.FI*H=KK=P:36&f)Ap1$foMG,Wq*Z43pq5Q^HCt;ERi:2H5'q.=WNLWJC3Ap %"gTo;,RTlq&4LUY^Xk*CB)]rL=rBU]eK;tu/f+6%G>X5F+omkK,h^IK=sHnQ>+33BITKu("/QMe>nWhhQ%;T8F_90o+CdlR/5&"W %NJ>$F3`+MnD^bUeDaoru^lPM_R?br'U%4k@2H@>jM,8PH;Dp&cpM/kHh2;<f3bVi?22kG-R17<%LcWdKSsGUQFK*,BY[<$ke0RJW %ES5Z<0(hdr=tNc\MG>qUHtO%4;q<`>(CB;F3sr?V+Cr(4!Yan-i6@,&K&PG[^#qdsoTsTP%;9iU<d%pL;=U'325j4q7E?i*8L+[: %!/f,pMS:K[4$J^lPuj]R9F,LUR]St>pbm$.^jt&2SlU=?n>S7:3`jbLSa]Ha!@]Q1'nk/tCi_1m@&636dDtYaeIQBZP7l.m.k5(Q %4&*&aa[m/1'@,"(rB`qA?5$,&=uP]F$c\HnGFW=lE2.UL,(up2.o#.XAi)mV>.*(@78-N!\/NJ8:mTdPCjCcW-C$!s>W#O:F.)'g %UJ9"sM`%H[cmedK>";*iIY$`!@?)#^CR!-u,Z!,R3$lL^.>jhXn`?`2o9eIRW3&HRc724-WPC^L91@F-%4oJnXJZJ(>7-o5'lQq0 %m7\mD*26<5Ag#EVk.0,)//)nhN%SR,EDLTTDO)TD@MsABRP$*eKNc\p6?NkU@1uJr4gbJK<iD>p1@&RhnF\\nWi[Zd@WD;,H-+;; %%j&2_n"sZL.\NHZc_-iqJ^5ieC6]+cSqC(=@:#O*<X4(;XCD/(oRrPCM?&GjcA$Jhc.=F\]:,^4Zrnil@eV:LA=Oa+$I=To+)5N] %1.:9Yl:pZ@9tp%r.das-@=eF$*#'2<O_7bOO^.Se1&'OfrN#'>B;qZW%_tnjW5_iPc\%6>"1i:RXhHXd_"2]OW+LIq\n-38SiIXU %/R];#g)mOjI.>1q-=#9`Ub'ZDD/*J0L/?\VmK$n'r+*ah8bc7DZiG4KFfL=eq-I4F-QkKbp\6'UhZJt)WhG9)>eRk^c<=A9K.Z@H %pTGJ8TJj7oimD:`JrJm7djA(4l>W8]+'Vdp_n#SFjEoR6]%h3FLcN2%kCtm?<6TubD'/Xn-aTcANh,8Ol+;3`7Mh1TPmTM2Xle', %q*^(&p3Q[V!43%>YV$_:JKSgPQ*D5F.7aec4o.)AopS*jp]e<DLrifG(H$8O<36$GLgQ>G_e1H"lkRGd>ROI=H%jQUaWci+n$pm# %C)nuMhM?>DlM`>u1uY?p>EsrXR2Di/]J58![rFB_q@as4u0Zkp5;P.g,MCqH!@Pi<?BMor0/U6\-*7cd0hFp-4$Z(soAJRaQf %CHE47:fgZ7=_UX1N^Jb+N/LIf<lfSKN2s\iqRd]&](L>?#8FpX.H;2J_enW8=HL^0$mVJWGL6.>N0^<5QITbV$CXPa3dcu@[j2_2 %R4@""b:O/H>-Z;#UCUG_jPAF\$[#g\phP\!,"JV-mJ%81!T*8O,JlX/k,dbn5pZo0h,]>S!$tooQC/-^e@Lkd1jEf/2;?#X@L:"< %`@Jm[GAqO(XZi+!baiglr"WBc6?t'@^Esj6h*2&?Ptsm%DOo$iC7GVqeC*g&3%>"IP@^:-@1n<pjIfP]b=*G!AWV(R1'!_G+9sd< %OsZ8`5rjNQVLpV"7R;`8Cq`6dVMo.;<[C!j:gFM%'kB&Kfi0:X.ll#Y?L+LX">Ula;"//T`&u^=ARIZ\_Y/oF.tG6$PWWg(cp2V= %Qn,+OL_i@_kBPgBAPd#&hQd]fYfGCbP>4I:ALR\;Xq4^/K_Y]U+E1tqW++R1)aZ7ND[:W/?L%S?,S`gJgU)*fDOK);X3Cn@edD94 %cMQ6C*G?g#j_X';[PuhO\bTg-@Ac(.H,.sCgB[O?H=XD_Bo`\"KO@j6`mcqr&YEotX/_9gTmJ2U5:'jrn''Y`^W0]2;-tnHLI37" %V_IG](LMU\GCTD@cemRWo'56&lLsW@]C0,*dh)KVM584ms+aZ?qs*V*e_<=&qYOXtio_*o+)ZOOHZr6:rkkf:26Qjtr!tuFTMq7I %SS.5C)13)DkiH(uE@%T3MUrU\j0^II>j,RM>'36NdE@BJMQ4q;=BVr,TaZdJSeN013+oXHgX<Np2N+Le2U>5t7&V(.N7Bh_>e2e. %Zoi4@\2Od5Hd+c.N9gar8.it^2XZ+:JLcjq>88f:.:?uJHn<6hF)?H<*SKDu7'EeO3gl@s^nM#kH6F$[CDZ+W9c6a:"B0)pRWTRs %*NnV&+qCLj'j6cXne"`^(nH(eHeNH^7"O68,HPX;;k[:G+;.X?'@8VLb]nV+:7@9[eIiAeU9eDhA[DjP4aXs@@b53[^I!_Hi(eS- %27O;pT.ORk.^0VOGg]b2b,&4DBMEMG"#iqK:^3/s5Pfc__Tb0]Lhd50@Z8m(OBg>a\dC<U6HN!ggH_1%L@4_J!tqsC\0TQ\BH!A9 %!dT;ips'7i)OINLd+$oU!DHjd!r^OsVC!`@5XZQQr\sq#*iX?1l'Ef"RH4\'e[(oLX!1/(7qL25&-m9I>7;d!]MU0GWd,uFJe^-d %oX*oA:hE>N;,+C+N92S"BtD*+,F/mT'!96LNdqk4Bb7PuY05`RTD2.7pCUs<LiBgG-$q2E$HV=XP8ON-`^i^Jb9:5Qn&P5WV[6># %rC8j[=`gpmZn+N="?TE2l?;8Y/oj;)!r6GFKW=_ee,_shU0MS`mhK`57*jZ45%=UlcWC,<PddskMk8c=]$*nAZu2t7V:_+5oXo+R %+qr<tP;tmkk'j!hObT.6=@=6Vb/a`cH(`J46PHSF7!h>K)cS*AB"N54>6.#@#Z<\kXSN)L6iPG(Zc"XX7fSU4#ddB%@hmpNP\H#< %f%l#?^<-6=e71iZ]uVJIpT.])oa7*0d'S@TAnuPoA:)9p@BC1k]Gh,W9@FjS-I]W,\(j]!pu$6$Ti.u0je-CsG+r12Lq\U4lm-S3 %['\7_OO0GjJrG4m1hoXNdnCSY.<LSD@*(gDkd1]<->>7J>0C?WogeK<AGGZaM0)EA<MU!7I%1'S8EsS;oQ_rM*.t*L=BP3hPaq2L %IOL\#S!!<[%8K*a=0r@E3_'&K:*u\VE*-cRr"*11N@O;[N$>YOk1R2sY-BTOK_Z=Y&B1=CMj/>B3S@k"s7qGVF30Wi#2=#\]/tnm %A:P[GnjLO/K(#_FRf6+oo!n:S8be'JhnK'V(uoKBF)iI6p1`*-pu9o_dD'oRs7Fikr9M+&?&rF.pmM(@*pmV?q5^i/hnHXs5<#20 %d=:r^e_gE"k5+K?Vj$XQn#jD(E-M,LSpe9F]CUAN>^Um@rT;o^^KYsUZ[[=K2uem:ce\?Q?.-Ld^&,G3@K-5me\r*ZqlCV5q>C)A %>l"?U^6%,0\o'XKp\\!_pH?1DrCt#>]_^ZtG<<PL0&Pu=qTIEY]5MnB-,'/]^X;K<o@KPjjfd#"*k,MVT?E/)?eg*TqdqtE05a#F %[.C]>iVbtn]mINc$Z>n)ZbPeOs6U=]^]*ZUo0<"Uhsp!VU2(ir-bAGimI8'kU*f=m]_hQCp#Xqdb?_l7r,ft.`dL&FFrZhAY4(uT %q>8?bH$B'k+3$h'r@#2MX3^d"Df<D%]=PWLLh</qq4=ehrRLT&me_(c2kU$X_lg3:p;>-n0(.$br.I"5J+D9"N4.NEn+Q2?rJ0^p %:NTjUM["LgdJ_sIo^1@N3<Usa^T*L4rNLe3]78rLq<I[k]8Oj^I<Y\H[oXA-*sQY-Ss?@cc`kPUp3cI+DSNf2GCFc5DWgb^5M5;8 %F7o5O.V*%H_DCVKf=*]rh7gY8gL\k3(_=E*fLPE/ZX7$foBOMo\$n#^dF$]1H@&/#n#>/MqC-c<hn2#mB(,DrDm/$40Rn"R-iW>t %mAIS*o=d>uHUi;KkjBJI]q`46drkC[_M`F/dL10lT(#L1iUB!A^$W;P2uK=U>lOQiqQ"P\hq\4mVk*\t6\+"0QXU/HIJr+L#Q#$> %D!n?:nG_k#0/*?QV:_-*]q4mecXmjglhQ>1n#t$or^%t$:i,BoXLEW841F*poD\=K(I."%oOdj8lcjL@?G!tnmT/57n"4USs+].\ %!H%UIZ7-)+G]A(YqsL*Unu]DV46l"tYBLL'lIC60K^QHEHiMp``G[qf6phud52-t0oDZY>DpC!g^UcCSb/2p.dHC7qG(-tV\KA!# %hn?aPqu6$]mI'T>n;#>O'7B(LrpsL3]7#&%$#_hRGY#Qjn2SJg\*HQ\n"%59Im8__m%<i$q]2k#a\R/H-\_\oaThS.mFBt'1CYp! %7m-A5/)@4<C0Va?4nQZ+G2Ea`Q^L><Ud37iZO-NBnd[7Zplm&G^*nUMR9;Y%GBNZIc/mdLDfeOMiQ:qChpoU:e_P/iY<HPG+.gff %ZWm("h.PqIcS7_t^I[/Y7H-,9aNeDeT0Dhgl\kPOIZ]]0+4h<#LOOCfNj&BQ_#9JCgh3(s?X:DCj!B,q"#>J"H2tXs\bP\9i!:4s %eA0<B5UlRNJpNQ@+ogOE6[@i2g2FpV:TI%Ip$M/>0A]u@rqF]@c'O6Fnu"QN?b\[PF7iu9$-))!5E,-.q:s@=H1MFtncD[(Dm$7h %GD?bM;Kup=.6=j*m&t<aIJ<-rp$Ej959SS="feudb9Q^cXW<\[hCGoK>K1iJb3\Gl@JBM@lT_)]CVR@XmSe-S=dP<siqBqWq+IjC %s*A<^D"%&Km[ACH'q!b35X+`e4SFf]bG29t2YtdF'R&(ELLtuV,`BP.G)gITrq?9WgWSod0!?o]T&Susr8HfL#k+9<qUCjZpqtGW %Oro7C/B[HrAJEHi5OnElmrPidp.oo$5JV12olXs2cnDTZIs6<iEHuX$p?l#Fh]:'PFE9X#g,Um5&Dkg`Gj>!*Ms[[.pK`^E4=>ms %hE`Y\pZg:]5Q/To]=p<*[C\q[bF]@rH%#SX=&9uoU@5hQfur,smBF3ogNW%ho:-eXG1aJ@q=>0$m*"hok"5?@Dm$7HT7VR(IYO9) %^3Y-O^,((]3-H+Q\p^os%5iY)q86V_3K'1+`lI#tCBih:F#`GH/"!s'h9F^/B6]QJ[r6KI53LGCm)-kBlH;8k5Pb4:L?lUEJ%tTL %)nQ"9r8!R^!kJ<:^Xp(jp'l5;[Pr--m]QQeKLrKlI/Y&"SWBu9rG_X@o.02(P+05?h\5sXGIKNC+'O'^kBC6UhIU%m^V\fJ<-%Xf %\Kp?VYAVXXN>hLeH0?l@@$lB6LN];Q6h,q,g(=bbm&ns`"N+KW(bj/I2"@.fY[\?gLN/nQ6c8991O!MOR,'X>TqronE1!d!EeM>X %SsS6ca?'eibf,Kk_n6u4iX+2mhSWcF?XJS3%NXL^>A!!-r1b&1LO"J8hKLRFo&2;%#_tDCI<Y3ji%RsRF8N*\Nc:@-)%O")q4GPj %o/o<a4E\h1di9DQCZ#j;NQ52sd:V@X,N1V48bhfsi0eJ3pnWm6s0k5jP3GsFn?aUp:8Zk+*)X>'=:U"lkX?-GIn&FikL-5'iQ4)p %[(i`jb"l08mJQNFNHWfb7uat?)XX0S%DgF[4"@Uc=(mr-:lkJ>W6]Y7B1E'kW6^M#m&85??_=GlSNf4G8b'[Ig<MAO'?]8S\'6P[ %VZ)ghc-@tlgbqCeD3NeV]JDT@hY24i!(\]Vq!?#O:TG)UDm0.dH2ZL`oC)_K[*mYEVYT(ShV<R=`Sdu1?J^0%CbNE7d33MCptZeg %p7L^5-$,ke]mXttc.1RLh/`tm0#,"\^\d++Ao7@_B7IZ@#E4%b"6+jad1eT_!gk(#1Z`\Yr)`m@i*Q4Ari^Z+rqGOLHi1WcNdl<H %1-tcK'?'6q%JBBm3cjaM5lV"2?[U#g*"#aH(pJ6.l<qs4cGuOF#Kjb#7]pRr99jF6^:SeX]T1lspkT8=gnNo^GfKna#bNk*qlUd] %hd,&dHZOJAqu/T<"n=u2k`F<3MrUtpq1\gTq_\993G*""(\n=^DgdcC*3T(^0Ck6,?=1Y>oo"2CqnBd83qP6#E)I[JV"]lQJ5:H@ %@ljFQ:;6aC5LjlHe!Nmkl/Y!'-bnHf+ie]q0qE\c-QggZa)plJ-CrBC-7+n/qsm=Uk:q\'7ld>S$@/8Ak>3A"`t\+DWe363hgG$( %pC8>CXq=u<7f8*AF"#c#qoe<kgV<+O<nCE&r:Y%+qoK$3WUB\-pOBWdaVC5!YF`[_^[[flI5P<GYA`;.^Zb(Q9Cp!g5/6d%o83/! %h)E7AHJ8".rob2@3sOMiP\p8[)YP5)DTAF)1$J<K[GpUTf.lj)?]d:PYJ:"q]?AC,?OhSLo#m_7Y5W\Cje&_oY:o@YI!>DKbM.7( %Du[?=autL?IcQ^(m2R-0s6m"X%sK+01Uq<T>lWKD@G1II0!E<F4=T?tr8QDh4hnX=kN%RYj`;SSIOU<*R;2$i>4O<q:@nIsbDTdj %^AAmPps3j;HmISC!Wk6Of@U&haGZVH:06tLUGWR3\Bf5p&,X\&rGHkETCA0<LW?pL0lD&kgDo63a10AKDKCck*9/qAJ3'APNPoZj %Lr82@A)-3i5FpGBp&/5#EoIph3X29Ako%35cfbA(:nJ<0g%Sn(9;^*]@9)lj1N)t]qWSPO1gX^>K9o<,nPg(chQ)CsX1R8\?[XIf %H$K.<h$FSbS3(6T(YNltN87&jNnbMmZh&t'>K:7F3KME\EdnS\kWJE2mH`GNjIJ?'SVM0-*_q%]aZAn33VAUAGc$rP53LEkMjWb0 %DpR=rroL'6jQBX-Ih9'LcHK_;MYn\UqL<McI.PV[b<)/CGF*6>U_OAN-gf[np!#u:^D3dCf=cWqmrs8Dn"4Uss+].^:W!5.oR6EG %4b8$LQ-YXc4Fd_u\n6<PR[s6OGIoKLh%fq`cZ!k!k]VE=D_F<bfiqbfQ[f!Y9"Vje?`r6J!K3jWJ+bgIb'Mgu;L/g?kpI@updnCY %++kI:iJNn1:h+E<iF>^EOEONK.7&sL?fW'RfXkYf(t@2.9n!Lc*.o1,)V"P=\Rp'K:B2`U7*"Y`GNTcdkL[J_^"OM)00e<5NcCuC %r*C18F1:nRWq>;kK-Yk_N83[C,Vrf"^VB]5GF/@&iUZBTmWR^*?[_VaI!bb@h::?#7m`'5(JS!2rp'=d-0?/]q>=+?ST0[.5MZ0K %BU1kIiRQMOm'4G&&M".]j]"4&*?>XCd7`I[Ei1uX3k;lYh#t9:QF#L?gN96.HK7=NdPh'NYP&*On_dQ>FuQ22H$=VAqoR%umlbg@ %NtO;GrJ,T(J%-P8kE+\Z:[iAugbV&jY'bP8kVL2'T2HbS%(1!'j+$eicsuJIU;rkp:5=BAg\lP\fWkBH:e\L^%j.e3IbAFm]@B)l %0hD^rlAcJHgV]&-mu3;f["(,Q\NL4T+5OV+R?42]GBEV/i&u.'pl5jAdG[/JHq/t\1HBhE]*9q9iHqQ61j?Me9>Js8gJ<lKk6X7s %Hq07dkj]ZV^AARdo_<kb*oDg(0g8rnJNhs)hWZ_A^8J'AUXut>?Jkd(Hi)rdn'6,A,@@1gpS7lb4YPN7OWACI,3-YfcJ4QPigHgu %?]%H8noq`;]s-u'*Cj#Uk>l*M>S$-qg.D=nf@T1%J,8`$Li0sh^UUlPrh#bn'7PH*rUoS5DS>o<f2=f/FnWQ8m3fTkTnPr8KbiYK %mA9R$V>'g6]>"!p0R0!_hZ!nAd_7[;H3R=9!5dFdU@4]-Q?CMrh+R<iSiAT_iqWH5gF&5.?YdRUP8t.<jlPq1m.3aHT/LIl?(=-q %lJD<\rk=i(hq,>UhqsuSXP`7,r8%D/B7ImkJPkl#]_gjhippg4\+udd$D@"!H83'6541PZkPosQoAL#?3P59s^JrmS5O%`br5Y"Q %c-%c3c,TVA'e=to9`RB_C1'.+/#Y6eA.H]7HV*AI-ZhgARRhd9,(8<8G$g4SXPtU38Ip=G$mc?YIER->lZ]gV00eDIk78*K?94NJ %7s!oBD(^75Hh[U.V,+<Mp>'P2R/us+"-_UAeTVFi+/*nNoMXl@Y3s$;\U4H]r?8.qVe.s_?8Ytph>R'Fl=5S@iH`.!Rq$s%I>7an %*##^VMgU2$Bml,Rc^sKq5'#c],(?_.j<J'3ogR=!m/0`Rf(%C?c=?I0gn3WSq)h11mYZ>:O3ZQgAC$=^h+sR$d<U74kMa@QO'NZR %P.&^<bf,Y;!!fkB?7H];$gbuajO:g:QA<M`oQ!%;rVjnYeq]PD3(T4/S+AAacL_a)T\,mNd.UbKs6KIEqi:i<%PTC%b3Ar@m4X[i %qV(l!mck@M5GOutIJ`G6fRSaO0j^O3F=cPR?Up!7B@ohK-0Xlehs!'QSfHeO`NWjBm-HAHkqVnN[bLQTs"YaFT<?`<5NbT5#(!W5 %^L.-(6\H\3b.R)QG$*X9k??+t0b"!JXbi+Yp@4sW+nj?6IWP>Q?`r8Q6VMW0k5"HCleUb!&-A<Ze]p_eIeWke=r;)92pY"5p#5;W %mg_mX]XUsb>$ngA5E0gZYK(eZN9e^f<7KSSSdT#Ec41R7s8LjMg\9Ulcp_Dnf))?^2>_9i^!)SZ-WZZV68V):D,9N`@m!.lL66OA %^V8QW3SB`pnnF$TLt-mq"$G&WT@El)msb7ShYlE*hnH?R:aF1/q89CShu7d-_/q^c,6#RC+0XP(s7""2^XFq4T>(1$k3Ldf0E1t6 %n'8\^I/dOq/mk0^)R>jUnLPL>fDk>oHhI"#^]45T(E^Bd`t.2nIl[Mo2da)D'RT?2PrfH&`u;u?D>_`1Pl7XII5/PYs7uWgO8j"n %nUH;W0<`g)?bQ;cs$-8C%1W0G02?9Ln[)@>?FASeBeCRD\m]S>os(H_U`t^?[,k0t-Jt!mds.Yrrcp_NY0s/+rnW9JBliCcGo)7? %QI@`5HH:Iuc)L5eit\)"r;.8HC!4ecfUpaM)dOER\::J'UjoP(L$c7WP4VLth!$[,:elA$EU.=SY3Q'FZET*_5Q4VjnhlUbTB=pd %5/DtU?C%3+-5P1]*.35.^V<mi`C9VAEjL'q3dlV>g1`$rD\i:cmr#d)n`.=2GZqgaV!l,%pi5%4:Rf@PI:ltKodTDEj>ajs9iplT %FKC$;YKPq4MRNrgC%HT';Y_3IBr5#O_W&U.lB.[HTD"LpElrWo:h]or`tRBC24R.&B`M41rO@`fXo1)&q$,liA*+XN;c7r$Dr>/t %q/qJ&]'(=2Y9;l7-/&3Ep%J8:T'nOc+8@)9]/I%o@*k8_gqUI"mn:X+H@FO%UH[bOnQ+JBZ&V2_pBCD\;;]DFX^A.+EG^h0[-u_h %e;[1bQT:]dk[EhhZ+i3Z[`@pE>f+K1kcrQBcWDp^^%_p%M0X_j&^l@,2#\_S^9J;t)Gf+!DJdWnTri7I)2WbMb?d/<E?)=Nqo3gE %.@d7Le&KDnC$b5K_nAc:j*F4fI+ck0Q.'_QhUqZfoeDcIY9nRh8#JA>)Pu&Z*!8FU<'@p,h);=",,od_D^[FTNeNd#bt#((HX8>C %mgCcd(@-Z3'JGUdEUW0j&Xgs6(,:kQ6q*-<PK&&41U66i%]t'45ImT,Z2#Ma4c%Gq*MO'%T%\<.@'$lhl7;[,Tk&J(RSLoSiE=9E %@.:8IHJ3)ln,Qr"`]oTSXmL3YB`>#AY/aKUR/gT_XN`IMWI($t8,Gj.B$d*99=#KQ]>K\022%AuBk.Z1Nepde]iQ7V[^"4jJ&]r@ %=\fQJn%+iWd0I89crI6,nhpZ699K<D6-sqYAb0)oXW6bg>/pB%X2"Z;6UumroB+L3/R;X1)t2=o(gsH4Hf'@6KGJhJc0n*!>,o5o %k*MnX0P4XElR^CkktBg%Yq`fL]j0<Z><7=@O=+/]!?^ZUe1>BI3UQ"p@UTRW=c'>)!1cT\gG=Y&3Qi$_=`YHM`2g"P`PiYN%&;jL %?\hUEkoib=gA#8=/0<tSaeYiI_esWS<AB;1m]*.=/oKOPW_RZ%WB(oh/A%9;m%#eWmJ*+@?1_ACa,]B%TcdQrHnpX*ft!p$>0`eG %e5*+rr%Vj3pEmIi9Nb6s?;H@0V&s=iEM@s'$T+:D7S8>FA#.*_U!^CiFcQrja:HR_(-MX1Io%/m<S:o>Zqt<[Q,YaWH3CL_V+#d? %?$uTIg`135SLCNn+`TLo=?:W[=IJ^pa%js`7%"6\$@f3L#"nSE?f#r(1sr9(V^&Cm9?MgP!h\PF%XQY3&(Ub5&i+mTH'7rnLGnTR %aoWFriV9EIGIqX,s-9:rprW+%.on=8HCW<q"VHd&h.9BASL!NUe3XX*WSs"&/+K;Y`tmc23VKa"6D]dtaei-Sa^-g>fEE=^:J.]A %4`,>-[BVmJI'-s(A?U.t.sIUR=esPMK8aYS.pK5fdm-olrB2KgkCtfmW;6LVbb-<B>'V/\(k#%djZ"&2J88Fb+4_P)"QR%6coj.3 %#PeMpV\f\]:<(H6E*,D'Cp,P,@FlkD0A`08MXIjM%6\;PAm(l<[b(9k@rAnpS.r$h[39G*16o>./N(5Ma,5R8f%3(D37:A??iUqN %EDUqo)(h&RMQuEEj&'#4C.Y4e<4@o+%A"*Zg13^;E'-gMH5?'K8]%_@"8auDR.?Vh)1^!H2F`G2ps)Zs4*1^U@^4iIl.CSTF(fJT %>T1fj=p83WO`@L=iphsnMqpU]V9W*L=TrjG+`:o9N(;K8a2n<c`/2N&_T84!KP!H0h,>46A7H*9E+4-TG^Q<[;kr4rP>U(7k'U+$ %DdA&a"5q(/FTHN<q[d&3@NX09_Ju`(&XML8IFGI&oX'3A5;quWpd&NB4I%YOZ<tYRQ<:0si"J5mEB\O<C;uUJ$&J@)aa5[-=+dZV %Yl_p/itX8LP&ZlQdtZ*DNCHp-1GiKL>tQ%hf`R<W@JaT:93r\a*1Kd,\J0AG'R$d$mH5#b;0a@eO_mMWa*e8tE$KV)bPfJ]&d)q9 %_3">"<>_-7CABkC^?a()oVP_*@LA7MH[UK#_<Sjr'a3&@Q;s[*9#BO@5W-o''ZIk24"mUB5E1jcb7jZd^X#9ZlCo1E\U(<UP!7;) %^g7A_(5YEOMjT18fQ/#=(oj8TGd_^mWmN\!rGcq[eWu)kL7sBKn`kmjVslHs53T_:A8+K_$q1S\2Opf+#k;fY@c2)dT]G/X]3lUh %p"meZ-?8Of&a(9YIL\joCtt%u\?Q&&4W444hg^JH9Mb-F]l"?;5+@B+BlnC;N!V,>TCE>U=Q-m^9^nchgF1>rb:o\H401QV=]CN> %3M(dn(ZDk?Q:I,]$!CoY!6A86^8cZGcG.)ujuQ^b&DI!IA>g67*EpX,:j9Kf%=Ma:P>D<&Rlb0YXRpmY2pq.6IGN\&MfA+2.@b`f %DT/3eh"@3Z3u2K8nn[>s-.,#:11=*^4J8ZrkQ?i2mqX<aQPBCQ2Br;aZsGZ_*XTe@'-3Lj?$9M6r)KB;W5H+2)k**72&(MA<D2p& %"Ff((d95\Ppr@l>.#M[u*BK\T\Sdo_,TImYX[`lCC6FcS:T)h@p3]ugZg:B)@k%24F,u"]rjn\_/?H(Ym544%CmTG:MU>-.Lh$=! %*ml8*bP0WKSA&_I+fm%U9gFYcdmTi6LsEDTjofO[Z/!f_kqNt5U)VTQTuE>(dfmZc,n%&90rr;i?kk\,`M"XdbbX/UKc;Ah,+dp5 %7=\:Ue>PqrDWPqUpPh3@pXWSNqi;e!!^Va<838'gh!Z2IlrluNDAo1D^ZZn\R&]1X@e(&Rg*%NkUYR_WZatT)`c<-/&,XlrL,Hqr %1'\F-,Ffe7?8p.%:>:^<Y78s04RGsfBu:<$f<1@Nkq7ob*?WbfG:i%QT''L$6\_0^+`9=lU^*ZmDn+c]cn\:G[G,eVL;Q-4por^3 %D)n??lPbhRX#M]k,LOhTo[<q_77`oI@77]$(KHsb:jTM]N9M$h`8m(jM`GWZ8rL9#&7HT#Cq@i/Mu1]Qd]42_i2,S5%U*uf*Z:T^ %qS)b*oY&AAIBAE;*"i#'[1jG8Q+W.Ri!\bHM,B7-F*7<-N"^G\[V`o6VSIZj&J"Hc=;sU%g(G^3A%P<?F`HCiVh$P'[gbLg2>g\g %/sK?24%;9k`>DpU$Y8ioV]cU;-B$'gk\.ndX=GsWPKl)"mcS#O<SqmFX#`4-+-`9R+spjkjV[7q?$WOn8kW0nma,f:9hEoh1MZM' %?\gk;@`o]&ShYfV$BEJ;.#8pZlu%kt6.Cm\`jtEhAn7USiVKAj2I[5%-BVp7+9*@L22S.=oqpoDUSWKWR'&?)FHb#o_QdnTEifWE %0ZE]8#<a:[+-nDYi4NSq35daTIM'O`4ooH4i5@H\*RF/<Un]Kh4][$1ig`l-YtM#X>3pmC_A]1#$!)a^C6Dhp,n[b"PJ[+=Em2oc %YF1n8C2^B#;P!g74gA*b,]lf+01X"a&n3&^A^NA_3`^C]i!H5'3e^aO:+5;Q0W>rd4MiM?<![CNSS9tt-ttH<@I]h$h6eF_h47$e %=j1;W'5nU0+Z=.V04IFS%p@S5'(TL'\Z=c?HRa&0'h%UA+4`Ce81PN-Y]@a8j!<ZiPP?_>7R@DI/S!iR=BrP.`\,I)a$Md9rPei^ %#"ZgjOgLC/QZh`IA^KZ#K*S'E[O$ui9jJ3YdNqk'YJg]Ml0[=T+F@b"d("NVMYNMdF(h22*0)cHI@1-CVc*0DDb_m<;ggo3<#5SS %;k5EJ$YJ%qiZN)q-,K+J-kT4s?b3bP&1JDQNp=9^A>de?2tC"e">%_s3)af>)gL15PW3Yh_XP#&37-D?!42)j^0UD[@m>08d95gW %g\I)F@=)N`92M(TWtAeZKb@i-Z!2;\-')TkD!3=nB[meUF;bJM;f-3_?H8OjP*RV0J749(U1(</E[7/([?e*)boCB.qm?pL+.D!t %3YsY*7^m/1`FME<cln+_\P[Y+nIJ'A_[+X)<[gI?23p)c:j*/de.PQd;YHIe?i%2N;IIs8;3X>o@RG]m[bE4g)mO(h(jO:s852GJ %)P<]O12S@@Tu3VnCc>5t<MtD./;\8'j)s,Y54,SE/Q#M)lq$W(`6(,bMhY*OVf7Ht:u4u%&Z-kqlJhnOX!&4)cC<G61^&#@e?NO0 %(V]\JR?C_nq3k+&nWCEQ<b.I(1T]L2!dr^Da\:F?U4[<-X_Ia8PS+pN.,LEo3\RPDYB.-eVau0hS6%no>>P"E!/pZW=k:c:jNj+1 %6A`$Y'u&6"7&Sb-4bMCQZEA+8b@lXOG/>$l@SMb\SKCa2Pk2>jfJ)ZdAG*4,LUB?Y0l'Nke^aF[Yr3'ZF7('?Z`C6c\9R]9fgH?c %U5^6d>&<so;32M,-']M4X$uS@faE0\6KkeV0p_+)V8^"kW]A;!C3[BVP'Ltb0.EYQS-$*'Rt_JgmgNQ)-c>710XTs20Qg1q[u_7& %s4MbJ-+T$\:%Z."hBC.`F:F`PL_G-RaR0Q?&mOXP6s`bh9."GL'adO<R^Jfh$D>aA5N0fK<@B-rtnWf]j5D^baF1S6.r05QAB' %)2$d6a[COQ^r1@.5<CD[h%r^TR"W,s1'iKLTf=nt9O6++GHYe1.7'X]M>[,?C0AH)F;SV7Dh?GdSF"au^^.f.1p;uOmm>bKS-L8i %f$/jj(E'df,:Z`8f%$?q&Jsi_p\.MF2E1k.pfQMb+OVTnW0BuFDBJSs[iqcj7jDg:HR+28H59A"Ls/iQ=C`AqXhTSB+/D1"iIjb# %i_8b*=knh?K_r(,/"Z+q<Aod_dtV@GZ46MS34=`oKE5\laGgR`+J;l'^A#a'K=rF"SWeoCF<\p8/U8!iek7K?i_^n<O!J&1L-e*W %^$Ks2N$7X(3($Q>Vs;%cp9iU^#)_]pfukXXAqNq`/AaJ/`<JJBFW-LD9k"QcO@0[Z?iB__ck/C^^9>t6[>hoY\,&#MjQmDWPQD,Q %IAW:fB[st/V=7p9DQKR62YK_J4^eqmDVVV#DQIH1H9+ufH)uTfYf7LGmbY#AT=37*;\L<s'"\A6#<nY1jL[&5*UIj2-g9<eqY\u" %6sQglf?^3pJ`EGr$rM`Wb,p[3Z_0>(,@03YGgpsT5l_op,jN6Ua+2/_X%S83Q+l$qWa\_GWIgGIe7'f4gW?QPi+c"oQ\18\VD6a# %-oQdL6Yb1b$:0Sq'BdP2Pf6i)*0?plIaq7th[#Bg5Y/_-Q4.18A4g.[7rtaD+m5;KcQZgrM1YHd>INprh\D<n?aIWh1fI&]Y(T4U %F&l5B72_C7m).h(:m_,+jpSCO%15#@)i">iNU"Se4TM3HeQdW-D0at>7\!D;1NlGE@E]+0!^4@RFAWac`6kqA=;:_BVcUBW:_-(; %&rU)5q"TrD(sV/26Q,5sQeSLgR?]56-!m(TmMbL-c1":U`kHu8FCZJV/dhmM+=^D2No.4b:>W+]-*ZQhiYEFb%N\_Yg*K*=()H5U %=-Z5@`-rg4lsXC*=jeh\h>oL.@L<g=%PGbX<F1PM"U2l&`6?8_d7)@F/hfF*)&?r\,q(7/V/OE?;H0aD!:(P/p12)UJU*q.T;`tL %'mYlqn(BO$Cs;Me7"H,7S%I!scuJu;]c%`20uJn)o"1'$ENsuaD4"')@A-5rdV7RceN4SgCl4BK4b]_A2Ttu\O#SoEHH^^G*sbh_ %?6^``$Z<YL33Lf#Rhsp4S(?dK*pZsX94AOBns_a#FpYb;+u7ZGX^CHDe1EDp]%VKL)d/nXCf;;T'0sUjd7@@C<]B_9ZC1g@U&](" %BWBqo"BRGR<)V'r"(AV7EkF0'h4:!iVBL9D/IXO&(:sD7pQsmj#6d]r>^!/(Kr+i:/U$uP0KAtoT2`&a94"J_%AC$jD/f[J2@I,K %eo41NhZNBFG*Z%-X/Wk=$E3G+#DPTs^JRd?C0=$p)aM\#LeEblT@&$Z=ka5["M"Sg$@@@O5VB=EC_$l2@<[6a6??GK?A-+iVm;[h %o+e-`S9*c2aYCV&8p)_UmAWZ<9J;9Q3KHI'H]",VGC'N7DsbBCN'DVjE<f3M@cIh"hsaYn-!dTmn8%WZUG9`i%93c*/T&h4V576& %-P$;=gVn(dQ#jEagn%YClWccGP6oNYf](K%3o,Q3+'pJ8SfE[1L\2sDnYg8R:=fXf%juRbq.e:m"6,;U82L1k\?JfUG2kdQ>]+4l %$\3?1#Z4]_*LcSbC&a8]=KDfqT0_Tlk%%o*lED*63'^m/W%3-:_">bie&^D`#"Ua,YU%WIn9M?@MY9)[?T`lJDh%T&(Q%#3*5%F2 %N?X_"a&?/+!VL]\lB(7YhZ"44g=G,-DHH.1+!<8WNnZJ[]%f6<^KP]-FY.5*Irbo4BR)HKg1C/\7_h>&&*n=sk@>\-a*Lt=FPmCS %j86aq^o&hW((U'?`Poj"L-TsY',Cs]I26@$AVm.cHR$<.('r<cCV'PEgh1^^S"1l7dZ\@0qH(TV$jno;N-m$_]2Ck[1q@K&XO_a- %2itJA6'RVU6/kqj+LW8222=J8()`<Lk2]e2HTf3po#_EH5Dg?rqpU1)I.@!,bNi/[jY+@C<WD5JgH>CAo9Xrr1?'RGm6GjLD_J'S %ige2h8Sm3RXd$cTX_:=3l[.7CaP44PV]7VOJ2?YN"EV_gkR+GX%T=4",eHHQE!duWW.UQN(t!+1b+bPNKQX=P8mfL!/A2gq;mT_" %fo=0f@.k;P:/I&K@D'qhphZl^B29'S_b0R3+8D99aCA%S=a:.IJpR64Y&P</PF3noZ2G`:&Ni$t%lm@gYF6p%n]?uUNfRP<I<KUI %PZKogC:!]2fhr6Z5>uQ2T1oO<6XD%HWg7_ADTd!g-pkXnTm*6O'%>[7Y>/JK$%#]`B6FPpdeQuI^h6pmbMmYqW:u;bY$+1.<g5ZH %r@qgdRWIiLbk)O+"J`Ul/A39><cVqV!MF84$f5+^dajlane^,(UH2>QA;0N$;F/H9Tf%S2P&V[:MM<ZJg-F?I@Fbrb4VI@3/G$t8 %[Ac;Sd<ZB/NF$W4SkZm<WqL:0&4<5!'R5%GF'#prQ)nc!&:3SC/VfY)L1Q]LSXq&("@eP_OmDYrqnK&3V9;]/]/uE'rN)e7fktAb %-_2kP[,^da7L*#?)?PHbU=6_MeH@6#4#0U^S-T]LL.$:$;k6Lf<]/E@!u5OuFFhZ'SN\#)2bC(:]*3go+P(WAYK;["[eurMSZMQa %*?YZc0Z&AF6cAr/;nShJ.+&Jbr8NTU4J+;Om\`o5$M0p+_l7OCh,[GO$864OA)^0OH7_0g6qm=]Y@7tkTs_g*8P('fe>Z3$kS$uP %9e2$Hk=6+;kZ-'eD)X><q7_*R(XBa#kTS.se1%9mdaZrbrQ!p_F@TJ'\+[]d@P-[UK67L)on6fAJ$RWD![2q\F(9#e;s3fOb[%^R %kiDolGbocW6:"\@aX,EEcR3=tGkO(`P;L%"#W.*:Yb"RO3K)`cl#]^(4&kh2G]VpO*7&^gHlRdnFTM!"-3p)PD"@6f]e^YH"=Sii %qUj[cnVa;q=!*+%UUEBfa;&tchFCjNm-YSl=jnaCC:Sr)93N$2O`72Ge<>lo9Pt\.ItQZ'Wnfu*'n"BL=k*VOG>W+*VIW*4S^ZLH %/K4i,.IuVRr`1Qk_UT41[lmD_r+R?OMSBQ\WMjpFr'kW#[:*@HkOAtIs6@aKAu_UN,KVuZSBbF[;DPZ#ktICRd&%^ATYA<Q-YMNB %S4D$c*@FA_GCI^j:l()mYJ;tYZBKJn/#uc:F<HcEN14%u6^KFX$Tn^#aJnorh7DJIn#cV.[fkqj*4+7b6:Te!8eI<iSeObOrI3eg %:_]6l_d*T-(qsrJHREgE'"TV$Va(gWQ^kj3ruiP4"Q7$#9@]:35<T*W/^m?GAd##M7A!s281[Gj(8HI#3=Mko>)ohtWlibQo]8(R %`(Ua(03CWD%[8)[&qX6/"f`<VcEa\5I`p;O<"NG9'O[\h,S&<9dR]3%p:C9Z>CR%oG"lCC$qNF+J71=.<7/1aZ^`/"RSD=>dhRYF %e`pO.&`+cU5d/g<3ihnQR+,SVgL%E]b,;=Nr%"Zfnjk?aQD;o4&H[A'-3';Q5cnNOb6/BX?C'aH;M[kB;[9;gSfo%JHJJ`hnG6Y0 %+CFm?oq05Sl6[@,;1UAk)&Brf(W)X*YsJsB7+=^b:HMBOQ3K"V2Ehh<g`S,E21%f(&X2TOK7sCQE^V5fbQYNl:#du,E9uVUOC+cV %Ag.n^F7E@L_VFq,."VIA@Sj+X['FW0?k<0sB+TX(K:8qO6UphI/E"e\PdfEeq.<"MYPAru*4,uG7[AkQ1!V\6auP'^^k^h9`2p<O %?<i/gnGUrNg3dluJAN0hSPkSk_RP1?h3[%8Ve6=iV[UEucb.%.I5!8VRT6Yu;0$p.P`rd5G^o[QlUt218YeX[JQK]1EWS\#.Z>#L %<F'U/8=X4/XchO^W\[QU)/+F*X22>Lr(NB#NmuIYJfUAZ)TG/\h;!>V8Y-O8l,,!;0$9aTrFSfG#V8I+[dTO&2l]kFT(I/GAtQ3E %Yo@bK9S"<Vn"4X,(eX9A+n51o0,!n$FPnPBM8]h"`8XBn:l(WK1iY-.EE@RprudPo@Vug%,)J99]/cgWJ$C>K5"]X58hAG.-K&"U %P[eZLn*iR-]=9D)_8u$)P[gW[bnlY[l3h?Yp0Mt,,r1A6$up9=jpcq6HV9tPG]=U=gG4)Q;,h0,")f59gpnTR&uu."A@N;YWa_5a %RuERXAjnHXWa7V5VmgmcZW1tE/l]OB&e(*Nbdc`5e!XlDCe_/0aoE+Wpl^!b'RhN'2C1hiVKZ(d)j:tcHGF2iZM-D%-T(6Dq1!WJ %]m)IX$*8d,>!^I!1OUeH\l52SL@llB-'Aqo6cArmB7'(onOc=%rRQGeR6H"j-$cu)8QV@;2*c'+2i))e">&,*R=DGCVW4\]8QV?0 %Qa):SLh@aPJ)L$LO;:sPHb(A+CMmkfh'AS7:o(,%Yks(6Zcafa2E'elZ^LACM,u_f5]c65Cq>>%)k1s#bktMP]L=sI?r02P4_t$_ %"u$<4Gh(HBZjm?Y]VG9,EUr+4fmW/'i`XCQ9fIm[9#_D^(9`s]0u$#e;DQLp_rA':S%pt==%]@/EEKkO103EEig#[@V&pJVP`2a+ %#4Ym=fX;9J=%`<LV?+IO`2a>^BCgL/0\+XjU6LOCLGG[d_nkS!9t)([U18Di6MffhF;qtS938.6,eQE*IW8`dZOrk]8N?\.,b7q2 %;tC4`oS\'bnV^mlcG)?7Zg)8AhB8D>EEBLGi\Y)A?_!pul=h0o+J+%%:UC&[1l\D?S>7[c@rgHLSpkZTo.u63]%bu/X5N1d`a<Jd %5m`/;3n'MOA5j_$[MDrMZB05jPh[B&9"qt2[=kKG'KMgk+7`qF4'IK5Xi6P<bmKCH;f[M8-t-></bcZh-*J>R%k(*?rbO1S;h57Y %0M2\W]KlrPcOT7^S'_*.Mtm6)H\GGB`6WVFhl.-@&m:tNN&jD$l"<*;\`4"-(S#u5=Hu!1XF"bPg4&^lPB_QMU#m]lgb8Q9a.%Ch %Y,pNFL`@^QZ[2=:]R&&#j9G/"S(\,52]^oRQ,\mA,[S1KSo1&MN0'Dgltf0SX-jaP%H@1dp3#Cca&8J?GI1_"mj(*0Y\t/X]6>fX %e[@2hk9$6QJfDZ"O7)?5mMiCs"?CP+&gPhUC?ESEA!A)OF.j]?.I/V/R7m+,P^DH^Sp4'*jH-lg9S/eFHnR.+DXcMS:B2#dmm9hY %WOC;&S6IY-X8p8'$/^>V131AB+]>292Za@[Cs)--Te.]Z:HKItF<k`q=Bhh:.m.9ZZSE41$<"F/6AZ,5<fW/q!m4/Tq?0>^+j]e4 %-YW!n'8)'Z]n'gKno5t8ZX<G?Qq!<.L_GmXTR7A&@mhOB!!G)ZPu="+$-<"tD4*i`DTU_s'h;>_n:^QcbG@+VBbTXSd$"H1n15]o %p>G]d5PY"s+c-Q3$-IR2/rkS0i?2cR5b46-Y_C$$&qSo"WT\HF)=PkeT8&%5)MhuNW("Rr=Y^](0PFoSG*HHp+Y#dg:>OnA;UBMe %!^Aa5OU/6nc4+`I8+"K"+.rn;.1,l*@)l,JE98N??tgdmMl1;l=(0`4K,0!I9I*i,VF8NqE)JEdK3=r^NIk*!CC:NUlBR[CGU!3] %Q>HZp20rYN$$[jHe&CMY.9<2gj!DKiE"m$aA^@<kl0*fe@%%9G%,`a28g29ZWKRT=5/[WRK_Uo'Z\TH1nc?mA^IWg(.&_i`TI@cK %H]5=(VFf?p/[As+ZVFsS;2cDJUjg\)aW0>;$5s-3+7$'G4aWfXpeIHHR!ji=(aEK]68-s+11^iu=Rm$0J90e\1d*!0`2os",5E@G %c]s(W-Hk2$hh-.bn6=m-V?[)W&916!hO'+0ZGl>8?M4fMYu?/d-VS)WnVkg-UUoo;.L^`JWrhkVa9!6t`KY?ZK&WVh0ZAu;8]SdM %Y5C+:6*3PB.61%7[Ykf,N!P]$O1$F&n,Pme\U6FpLZGNZ\\:1_U^IJSm6)3j+]2ACD(Q(<VdQ5PdE%Foa>'YM"JJIm"P?s7K$M$C %1nU:a-2Vu)UTYO="JKXm[lb\!"gmJ[Apa[r;9hoM<,Dt>g:,\q)>sWdY$bjeW!85,+]u$F!FuIt!m(tK/:!0s>q;p%dq1g"cBPDd %mThX-VUnOp(Tb&=;--DrYWL_p$TMn_-mt]b,7D(H%A?V]Amm$=Jg:S8jtdn)-W/N'#d'W%1l';\m!3=R5r:/VL&TK-8PE=e\>Tgr %gG1`:=Nhm6hH[kmR=XOu]h(a$H"'FH(DG0(BT"8k9m7CXn^Y(,$3k$aeuR-*b%CQN-fJIS$99=!=8B5H!ZJ+EN%1C(?^GFhcqbRX %-b$;DI4ZZ1DDk%=.#Erg\*/.CbYe3gfn`98r]f3XWl*epGRc&VL#Jr?jr`n6e@Ok-2$/l26+hHU-\>!L[L-FP.9TItO!Lbg8LK`O %9:>Q@MIuO+0Bcts2s@>UukF_o^W19qo=Et;%&cp/tUI.-t\c"U>Ii2L8Yi;f_`=ZLg;),"ip%>V7";8Ft6UiO+:$kpE,(mqir %d?`4c7"i&/MA?TR2:t/p'4YLV+CRo?[iJ/&8d&(!VbnDop;s1U1nrZ<)>#3ndr!>:X%]f"%hhEV;\6J1YR'2XnR?:VYgsT^pD);$ %3s2k!Nri9-DBq";0R5LqVaR<U,E%u3Mn&)<?^3PLCf`I!%Zg:s/GM"Ze8keGM:Pq).4cSP(,#A2"pA?--mLP<T'5<-,U8H_?](T; %3'##2g9>0s@]1Q+h%Z(\K@=m`(PkP_74j3VTD!f3f\D<uD$ORbAK"tob<Yn0d=E1>S2BlC`=`"#mKak/J5-![6AHO$G>#E3EZ-P` %.G;VN8"=Gu"fE>u7B"nS,ZN&@&n[Z^bZTdl5_up=+g\6X4XVDoY2ei>OM-DLLCGu2i/N"^Z+5Mf"mYc8&.4:s@-b8=MoA=qKu/C+ %;^$e3M4%R&D6tl$Q/H+b-"1c'm6![uS3".22OEQ-n$Np7+0<FP-!?U`#X+)VfEF+2,Ri-PUkWaCW*:(7aV/*(-Hp<>iX%H1^2D\G %Kk463T$.dN,/+S-0EtualDn6'H0sV!CuTg2)KQ]o4m8b*jfE)_&44EC@32MUZT(kNV=mQ4gUeCYGc_NrTjo5[BJSSYXc(hW6WbI9 %MI!&^NI17F8.gJE';SO]3Xo'+aq=^uAob2pIVKgTg5iG0VKE0b[:pok0-76lJB_</N`apXL1X]6M%IT_N'aim';BsLBc,>5qhY[M %"HkUJC.iH9L:altc'+6.fZO7F%WMLGl-R#qV07$hj4S^uS"lgDopZApjAP!8KI1M:7#r#ApX3kZ*9+pt6d.SbnMq1N[n7BE/uagj %g@>AFQ35UI(@i-kA2J9?db\+W_,@#bGle`7Y3<)bVmbX!,,g%dqVZTWG&l>)VDdEcd*79jB/ojV'$DO9U%;St7M0o4@[;-.-f.lr %Rte+8Bsl$3dQ$KL2cp5a:I6qHi+j4i+:3Gn@m[N<eMtM'7-R_Qe?dO0L6*'^=jgX2DGmM:34qda@'D=l1L?b7S7ki*jhI4j'$5[] %rV\?JEjg*`aYfICC*ai_YSQP1Wj-1U?&0d$OfokGi-C2-BK1:!ZqCaZ[[)WaY"D$i\4MK(d+dWmD(`ih-4&210TA3o=_rBY$b4jb %4EB"-$#G'NDIZJE%ks!)B2/<U6<m."(j9FUY)%=Q+h$3hNfAqVaOt?#^530@jW!.S7pDDb3XB6EVWjfbo,r70h,tGj\6$V->B%[e %3rh"aBAD3CLaQ#2b&pp")(raCD(?bkpRtuN>;a0peqg+c/Dc&++EIk2@^"]6QFI#m@7)=M^7Q)jYHaQJa9H(fWQ/mcD(-PH]89=1 %,3Htbf8#`3lFT*T*GT4GqsF^5eDG"BSaD7K36XbP0u#U+Pm>pL8JYbPqX9Z^[RrQmeiJIrn?'Z52K5cu.2:B0^d9Fd:HPs)mknh8 %l%?Si0^N2J=KK%NhIP7D./?c'Zc,7RPuV;ri%qlN>rd.\Gtor)X1/l;J>TOu$l7$SV,iA736'4CD[##/l:m[PAOK6+9AF;5X<"CM %67H@E;97S_![VKggU,YZAi`(\/DK%Mqt\5ig>Wl+^""YR*AC.F2Q0<tL^qXe#m8J8;)3mEk,:V,:dpP7lkN,2iiPm\6jgAYLD_nU %*B%,c/'M1!#aGl'6_$E*m(n]T[gIeFOE#'0'YDe?>[`jkN6;C_<mjJgljFiZ\!7e*&K7$O%[=?Y[GXJT+XW?4.'2,`o,[YcBQ+`D %n7"KHc6A;W)p^jQE8rMk9Cm:g)iP-o"A0oQDN!Gb2c'DuPj11%rfDI!%[4-V!].AjI)H2C)3XLo8f^H3jbY3j^]apdMJ4S<Tfg/C %.+d6tZ'&G0mN3r&V_pfW&;+nBd^n/*FuHZgS1gYTaWq2?2T-bnohXEn];*:?VpWc!^p"@PU%uoR>Da#IZD2OXne5Cd%l&=`-`q+r %XIhb3G_.mp%AW<8Y=\%T+5H[>+bhJ)S2*CVR>QV#Q<C:U"`+TZqGBVAK]XSU[Yn)!pnD(MVSa%94r[;[9'FMm[LsgV=IRq8fpqqm %HP'jG#bdoe-1/)T)?rZ2W0`J,=uE[Y-0Bb[BY!q]>:P-/`#Yt&&K^/dmun]ui!$!D8te8YeOhfI?mQ$W-]u/Xr&Tm;K<>>O4grA\ %c=5n%c:Gc]@1#i(N43q,h?+GFb"fa;9Pp8f5t!Ajp1,%)ZF)Z,;)2$QJW^AmEYjs4,9_GFdKKo0Ga,HVr$<>Ji:^:[#7]lBNl"Sh %,?#1..+MYIX"Re5:uH(`HYid-:_1/FKf>KR#G=5KAe?Ig+$X%`SJ`LYAJ:;&%RSD"EJp@@$:BAL/PRaKPTVfbU`icJBj""UpYqs5 %o>GoJf5(0&W,9EbpNd3Xb4;QBldbI3g.f6UaNAIW9Pl6FLtr2rjcqNhO)-+3KqO^^Boh!$cbB8g1\Gu*nCQ?b=KAro&6JL7'lRc1 %D5.O/Omri/Trd"s]F29Q[B>/d5-hR5Krl](fa?"u:S:#_"J0eeG.\Wume=QRO-jBDP34'efFa=fn.e#oni1*9*AMh'@Yu0\AK3GD %Nf>fSQruBh0sfMmQsrQZ)954O,Gr[T9X,gSeJ:YK)+RB*,Gr[T9X2iNC0U(]RC$!X@TL6Nm>+oQ`3D&1eL[5:?l%dYks?@E`JtcJ %l4Hsl,DO-_`"Y:B8=34Mek">l*AM+d@[QekKtXoS2_pD\Q#%Ep.l!&$;Q<5\[NgM79u9R@7gsTmRh&j@lEQK=Lfk&)&Mo9-*AKB+ %HGh'j2J<LNgcLN5/dRcl?<\C(ac72NH39Fm,A,/o1ldr47naiA7^40bbstHq(AlU)*#j(>$t5`gQs"5q9X,fhO!COS&X2B&VUuKE %`t;8:Lrn]0R!4bYLadKa9Pq*V)gNDXZZ%s7B!E@2ZdriOg=ag?E5[\Vcgq`)MsZ<Le#$tP9URg6EQ$34Z,=B2<]`2dXg;sd0e9LL %#"*/Da2W@U1*872Bif/lH^WHu5.L1r6^UG`Tf&SE5(gA46T/Ki(']L>$D44''pZm`4q.ps0XEP05][#j-Fnbn`apH,iiqGJ]4*@7 %cbC3F#dfKH$uX7P&83E*KY5npK]+s25fI20Z%0\M`$4[KITpC8?Y^[2[ac$JO&q_6P7LJ7hJ4DWIBX?*16Dngm^e>reXpRtO[7np %=Gj@`#78:^1VW8c:pr?:B)J%DZNG;aX)uXNHX[U;m5,LcER(>tHN6O3T*=ph(=$Mm`i%Ai:_:J>n*H8L`b)dt)DlU`G.KR(DUH8- %[pU><@<AiB$Y,Pko6Y=QKQ@9]gGkBkheKEbL=7DWDF;pEn$?Ad<is/-W5BVG,fD`W)%+_K2s#JH+&b#I9$!8nTjWZkPopHKG]L+4 %RRO;%"gY@q[IWOs9(;Be/d)dk;h1tq$pGY+T_&Gs(i?[`022L5Q=hA3AGH.c[MJB7:qGAQG4r61I_8AQX^uLup;Gmrk(6ZhXAH&E %)I.3!##ZA21KKQYC7?`D_irXpj<q1"=IVahCcCp(DgU!+)%WB,Hlik\g.nh_9)!\jmY;0)C^$=1<WJEKZ^piS=G7XlHN[R[,.o$X %bH[A2ctdM)(HpKlV;T$ab'k*1,7.S2XW.YI'XGJ>%3\>3:hK&R@99Bq>,Z/5/KpHdh)VgiKEpTf-a,cFKj=?*.`KJ4/(/05:I(0Z %nHr3!i=B/+f.<Hg?mWg,9P1LL,i3PR[,)d31O')J0UP0b,`I723o0@0=Rm`U'=<S*U:&6<2k))J48h;JT<`ig(*bq:$8Y$*>d%I` %]Ie;]PQ@2U%^C9>Sn4s&a.)2S<"j:W`qn$"-uDSOU50:tM)mJF"ecPE630u[=)GV\J<q4e$6:g.>a&T?%f)5uP714E%FpuD+j3i@ %=cB(KX0sHFB[s'[,Rd"("pI@&A1S#ph"f+DaZj?V($6g_9%N8O*&@ur@m8-lZh7Y!69Kf58)7nF'[7KYQJM7fKCNn,7X;jBlY;4/ %g!/r(]Smn5K$CVbERk*o%9gU_#IHCqJ'q%XbU$e.XkH7HLcB+>Kgpt`MrU<Y!j0j8L=6gS$'7,0mF6<lf;*Pm&+4n^Ucs4,VMVRi %iXC0DO@uu;01J\Z!+lAGQ/GQQ[;r*R@:e9$aausr8^V9*oUtW8Q&r')TJM??X!/F5h[M@g9po'6`9*ps]B?Ve"Hc\M^K=Z3R3INY %YV/+="is,8[0;Y@V%jAWk6Z);XP+lCC:r+KRsJHX.n5n[HKmOFJQ(Q*6GYkjUuDP3S"-248Z7rJ)g1DN?)CUM%oDUDT%Xfa,80)p %D07EeUA7s)=FcpKC52"_&2\\bLYQ`!=7XkP5UOl6.ZSYFmNILB7Fslh7S;,@1D..2Y.AKe+V5;1:gM8C:rEGg]_^s&0R]7,1FJNE %=05LFH(IL$5l2\Y7>81\$K9umRtPrSH<5=EP3%9h.g59A6I&LJ<Y!&=);q?E7*r"A_6fHuU9?iX(hTNo"_0?S1Am/j<0ps1,q?8h %=qe,@D7u/H/;q%J=2Ft@SA\0Y>1ZqZ)q</FG),[#FL[NMkh4fPfIbNdZh%_Ir,gKGCg,*Q8'W]Mk3c"pLJWIAh]H<PMC57G.[<]B %Y<oQ0/(UZ,S_qu)mWH=Y%MpiekY[Q"?BWlh0X4A%!P[[S4le0QUm]3<dYUMG+I#I!-l]T,V79>Cq2;R5a2r?Dir'LRZq2j5ko.tq %[.?]tb&^bg(.<SP3jr9pOR:.44kgeV>In^Q`Hg'=fb_F#qaJ@ll]tPf8+Ts0_PmcP1%89B[A4=EH.6qt2'&(JVAIT95DZSR"t4G6 %kZ'ns6YPY@k.=B*MioiZd'?B$BM!Aq)<,0,B@87(AD4J^jfhe%-hFcZf9_H/9G55ZS)M6C]u9bi&fS?*,n<Nc9&1]R"PkZLND.Mk %6YNBU!0l)P'dZWPhFNCq!`14PZ0TT#6tuF8k[*F/`u[up^=OrV&n2kp"DlmP$0[b*/6Jn%+lmY\AuD&a=mWDTZ3mKM?SdGhN:_B4 %M?6W:1F;$'d!_Ea7GHU?1J(LbP5@G/]s^[Da'"=4lj?7*oh!A!Z?QFa?#<G#gY&-X(\Dt7gsEC@ET#iu3bBEh]P)I=F"Q%6GoHtq %.u(@]2@A_oeiJKT!&bQdlBS#i;ORd<]mbJo!PPCdS_D@BCKbq/5YA:WKOJ\[S)IJ9Adg^^@PI_=]C$eG,QC[6qr0cpHe`2A:@cVp %&iF/,8?D$m&\"NU4dn;dYQZ:O5N.PQ+9h$`*nZ(1%5L&M"Y8PfXKTRp`p(N+_YmRaKA(8ZgMbc.4BHB^j>l]2,h+*c)-]@k"Z/5X %C0N72F4+5Ca`I+X`KE>bD3;=g^"4g*qHt'@>sLa$0-'0WqPh&X&`=Ccj>kQjUgR=+#p@/:%!2L^oI*OVeJ=RBL+ZTM#.e1g`c[]6 %C6IaF([u46:>nGSE#7"Ago/)E(c]kG/)``09]CUUTRP96c[cq+;7&IbJM*U!5+:QCC5X@`JM*T%UIh%5\mUss"'s9Z\`*g&J>R,a %'u3'N:lU/3W7fZ9M44TQ0F;B6_+G,X!Ni0uL+],,8>o+O1V/+T)Clcj!j9t;!;o+Ak.I;pF90pknCUO<D6h+)JM(%2#J+:h#.e3= %FkW[8G-j=VH&`r<d02$TDue/88LD@UD(2nn%Wh_G)o(I)[`&k<-`s^oTF4e0huG++"#2Jm_2L"6Sp&Y-]U*?gl[q9+Tr8l##!cfH %GrG5+V_Es-Qr+eB8Y.LO?9:kQSm5jFJW:=2jcU4-,`C2J_E=_Uc=0G%,jQ.,%@/uAZl4]+TqImfDQbYEg[\`09;nE*1aZY\l)!BK %HYo7S6ISO:QR2)`!?nW9$<,^?#M$ajpOlHeXMd[$,ZDjQlB(."3sIH4V_l_YMWYO\`rNH8V/Bli]1@"3B==pleJ<6IBr$%"_C<`N %(0d5?2R8[c2T,D2&>W6n-hi0AYV]-r=+Db0Bq@[-k;:Lf>c.JI!%!rnRHFu32g#.]Ni?kNZG\_Co4^;eEZSqddl`MRk"-4@,1G)" %5UZ.9`p"[<9<:Fqe@+,WGQRONY(S%EF!X;kW6L!p8FrXL1?A$to;&f0LGI:?8Z9K'A>u'!rFD^L;MD01rP[DZgu]J8]dF`Ls%85, %c]udiO4r:5mVp+'r_?C\k=U][@nXhQP:Uk*.X[`4%S@nuTA.d[$,RA)3X\HHk=U\db`u5)DQ]R=Uj9,7G%s+qCXTfC#BrCAWj/'K %*Ka@lAI+5d<E:U96ki.dRVL-n#F(CK[d#fC$n#Kdb6G?_EDJQWU/p8kUnJ>^@'&$PrMW,]dN[kb(2F)Ift&bEfi]-t70n33EZM#h %YL$#9h6p9hD$`:-)k;<A-Q!QLX1%:%Rbqlr:44gSD0I=O]L+&E7\pB#"?S.j`B7-(0`e;r@L-BRg>.Q_f^T;"`"RZ%GL[JA?^+r` %nrAf4p='=74L#R]>!^+]-q4CRR#g:*ed#$UU<rrI:e3&&#sHX2.k,_Tg.3`N_L\V[BG=m-(lp13qln[q=mRug%9<,;30<4D[l]Z1 %bfGAD9,sb1IEFU@ALtbn7M<S<X\V7WQ,P*@OE%N1I")d<C>WrQnlI>V(C!A6mI,9%UcTj^^`s#O'Zuo-/`qrF*=M6i>:ihYD2SEc %FPkgfNa12$f_BfKep3<[mq-c'?g<kVaFVO@4`L[U1=`\=g"C0Y9#8EN&Aul[:.sSZ#]</q/0"u:P;l4KaB@\JRifD:VhF6t8QTb! %HHW+*kPak@Ikr$q>XRfc@O:85W(0HHWI6@>07[UD=ntVrP!"GM%-&b9`DgHm4)7aj9$!pnnUk+eMp?cFPHV=_,h&SM2E(q2_/N+B %D998<;]2Df8N<kV@3eSJ`4Kb&16O(6V=;"]49-5'=)E_2`*R3p:0fQ3\brW<o3uJjRt:eM+aeLL/*pLi+LFS>G9RY<G9[LW#q2\S %I:-o+!TQp3-.!&D-`o`:`.O>2Zl6OYlqW!_JF#oJBjA=ZE;<>ZMGdW:0$uAL/)eS)R)MN)=siGsE0N2:$#G5tXAd&c0.M<cEA<H] %?dj[BL1R9`hX3K-(CTh\iY58<=EZcYZ@ZUh"h8Hr/[Ig=4Q+L8@C!4^--htI76IkNFb3\br?+@SQ%BjCfMtIiNV<5W@($4iY,bd$ %8(`DHr_(mZldYApTY2Z?#a:@S6bs?2L3J@"e`O6FOkh2NB(U6Z>O$$C&3u@NitX7(qgu[GFMZhX!N!ZD8hKJ=9acKnVKE0nAE9l2 %`fW?iV@PO<2a'EpBQ(qtNgB:KR``;R\3%&?)]FkD%brnbD&h@WI\\]$CqrtgCHRO$H!lXd,LZYiB2gQ7abh1DKP<a]%;Df]p^Ce% %)@4H$!@egf>^L1%Veof%&\](>`l`Ddk=Wcjp%uQMd;LiFmW,-[q\B_?Ie@r:WGQEq!ILkMQmUJ<O;c9F(sd(<?ieu//#Gk-?@XMV %9O\`?&iLAJ=GSnDTfbV*'O34OD<^&9F,a*>f>8qK0GFpMMIgj+'2+fbXM%<kIh#E1.l9N$;[%/'mZ#+UZk>,C1*0hZR:fm=bICnF %\O2"J(<]Ct6ZhnHki>7gBOo/<q56VPUConuOa._]R1S6p8H=Pb$$'IAs(-rANUt`TcKr>S93qqB"KiTiW:qfK7gYE=.(*I$lSt:A %T43S[1!4-eBG&2:@j,;3;;jcQ7(:e!(QWVCpr?Oi#39NT#?C2fFgXO&Ch@kk(5r`!JoEs/)[?JD;a:s/SEl-tkQ[R3/AtLSXD??E %2:+Q^=s;BCYdnFVOE=9%P@^C]:QQo(p??:h[e&h]!I38]"7!ok*A.TA<M%t-i<Pjer7cj2I.TM0I.<]t(SAH&H[]t7It+d&lJu1r %%tAg&ji%IH;Y>P=o'HNB[$Jra$=;Ac&%?BS[K#2M]'.mCh#)Wm[sqaC0BgTOl'\U&+c&[H]EW"1@]&RQC=2agJNJV=#;b!ZE9aH" %Y3HB%iBiLOL7j5B.[l,/AGWQ&W"15$:#*CGKm:$N%R_BcXs!VH7ene?e;sH6&;gd-Y6"1"#HLpt</f+jIV]Y^K0;BQ^BX=tTI/2# %!R8fape8Ya,O8h2<m=/dU!bmX:ec`V6ca>W;XR>(4)I>Dd!8^\64TGH&fre/AkM_f-ud7nn)ChkE(VQ/M24,aF))q]"P/DT%q;Y] %,JkjaF!^!DJHENTp"-(UWe0)sSh48XY$[-W5KKD#(98TY3AH``)J2:kM1P^l-23p0=ej2/WNnuG#Gmc``5IV_LfMR",-^(F]jJ"I %<_?(s"//VK,_ELrU"EU>%K8="MF3G>X!MR1<%:_er]pDJ_.nA^k>5ZE,*#QK3tGXb63sg_8?*"LK9bFhI$RYp.!2X>d!*j4WffnL %'>WJS[m!</1HhE^)&<AjBd:dT<2/QSp;1;#cql&0*\,/U<>)9YCE=^oGTNlF[9tcP`_f37h?:aG/.?.>Xi*X`WbOdbV+.gk`h'B5 %;oIPXNQ0ISJ?!rb<*@9WZK<,fbKJ[k&04t$fJ0imF;cS3'bd"m8VMQr7iQGAET5aDB\VV59mjk(QTZK&QRHNqHL\6LnL;CSq5A:: %]6#6ZI2#u78L'u,)pPW'1s@@<;hHXYZNo\c=hZA7[Nfr;&h*b4NXh2C*nIFcp>48LphY<Ljj&GP$.kfI;P[9n,'1_\ms$J5JPs1I %-#7o[eG2^nK*&ccng>lY\$W#?8E9*7.iR1'H,34G`'r#`[4cb3(U4#o-I3W!$KSs8XFLZpBJnq,8PEUUI[<CD_+DU(.ZVJ+?Kq_t %N5@>V"OZ%ZNoHdE4Maoq6-5%lNH3/#9&Q.]`pXWGYtQ^8&[_SVXB5Kq[=W210A8'P;n)m?$qYQ'W:8MKV(Rl^A`?r^S9hBRhZt:0 %hnA4hhTRLQPr&8Rg^?Cu#,VPbB=hm10-(XeitU`SbH>#[[MB%(bJJ/p%<rLIT"C@J]`84qMTg0N,Ff&Ag5Q"BXldZ?)Q=:](Am5] %PEktY%9u6pW@fH7:)OTK7q&n[T$$@FWP0SaK&NK72A[kl,Np(P9d7O#Oq8>7;0O2>[2`!TN:A%3):^M\:rU/4HP+:e]F0C?j%(jQ %W7aPZ!+crB&S<TRWF,lL<tf!h+@$`h9>KV_JY!Ud\Hf0'F'0Ii,-;9`j6pd;%u$pe]W.a]eJ).WZ&%$9B9=HbfnG7:'sCU@j3>H[ %_cEP7]j"W;0G&AT3IJg*S-jioI?N!)/p'5c&6<6]jd'M/EHqhu2G)\bFVLc^f3]?BQ-K_\Y`#msBnj)oiBi<B#r$jR"Z!fKK`&2$ %A6bb6oJ,'79oc.@ijE_?([bDHWlnAD,C5U,BKUbXPnAhI-38n4=;oY?TAiKk$TZ36TiYZC3SX"<AgU<C'_&33WFaq\\$D2*?U&6Z %0.=D!Z[rF?c7trs71G/W(e"l-2uI/lo$G<_/m:>i8EJoc-;RB$#[_XW2>^LW>:pWjOorFkC'O(-SC>i=jO"M%Qn$"i@PrO(6%;6L %$C4r$3NLK7$TUb2NLXEDWdsgJ3XKPeNp.KX@\@DD1h97F0d)C9'f[57bk]'H<BVuR=$XZ)H&#rS:LO!u'6Ga_X%_KT:C<JnYdL>` %/kmS:e$R%rErc:PINgd)S6gC9XE*fKP#/`HKIPpT($ruhihZ:-UH8n[4>YTC.1ifV?D_I<?Z1!bTJ8?%Y_^9IBT&[.E1,ugHaJTG %bsF0(jnhK:B.U/[#0IP"Sh+]U@/t1IP:iKHBqdt9jI>23MH?&W;scokp@8QD*T0bXOdBWsG_&%rZl"#un8^@J:sYf;2<_Vl6rR5g %8BjSS-_%!u-K6>cdHKqle0Gg8dD=##Mn'n,W/rP`;BYRlhi)mI2=u3/l]=_+$3VJb]qAP]oHB2Q`n!4C,*JX^lQp9,Ue`%$V\W#D %EWJ%g73u*g0ZarcV33Jh/M:g;$n].Y$2?^2.O8VMX"4A[i0$uEd'AOe$g:cN*7E!Rp@D%e;KYj-gI>:6],9[B'-p-c&rJm,pR,<B %V4,oVZS426KPV:FQQguL(Ad*/C+`uROf@@KAl0+Q:lFA)MHEKV@H(b=ds.!:H_=1u(+5F\j.4TJ"cFns1@?*5Mof"t(H1UAX@>&" %.Y[i8j9`m:6<T%jq%8[]/m?)5d/?V>8MUW`+6UcYY,Y=L4M(iG)#I5I"<1WT`Uh<>YAd%[`Af73\7IsCq1aPV10o%:a9Bt+nMI5S %:<`IG%rc3dmuZ:=ePn^Q.]6BfdC2:\3&G_--8K[+Gl'%U9j^N/6!0&XJWp!lD#+PYBA6Jq#d]-,^)(B#`i6j8=tu20fb7'c>$)c& %Piq<n^VY2Oo\;I^.J,SHb4,Z4hBF8+jnEn;dIe`Ps%SPf[g;G]#T&udMk&Di!*-KVg-G:-V'7+?JfJ=NcGl]=oh%J<l#gSu@41&M %K'gN`[l5oF:Ad!E4r7-us.M%t@Ybh\K4[%\Vt=KIZ;kfj=*9Gt-.O)56JnLu2FGP[L$[P,@7?G/Vfen*!DX[;/S>g(NUTElAnAES %EZ<LU:m><%2LsEU?t/?ibqeRHXS-c_XFD`1Dl-HcS;[!.WBnD;I#J-=%9^]b0C@Hsa\pFGaX1,k$n&J#0A+&iR120WO:=2c)Kgmq %,>]U>B"Qb8p+R2o)`K2^=!a3OgY>9?Fh5EaXP`4%D[H5bO.Ds?$FnM4ak%e'U&eY-7\Kj]XL/AeU9en73LN0&G_lD;LpOO1=_"Z8 %Os&6X6Qq_DBf?2Q)8IkkWZ)7pl-Y6)U%A?SZ1Q9X]2ll8Aniue"(]kAYcKZGlJVmK6B"Tg@L<C$Sq,4RRft1r-p\L'QdOL.EcfBi %!=:gYmE$YVY%9poiapkTEGEWB:_uj^M!tKXZ!4S>[+qAgfB+XeXY#8/fCk5NiJg_=<%8'\"9l&Vc0B+"#?)2q9V][/;@"dQ.&og[ %f4l!Oi:Q%<;nK:=fl&]Q<<8lr<eW4]3>JP79q4\=s5&?\93LW3?eg7oLU43G.oY>G<ai:=So0\qaiY,L%oas$S*XQ%P#1oJX;3T+ %Ge%+&ESj!L[Uk=+D-PqWd5.1oRSU:N.p20a:+/F^.j:B.:;VIZW$4oaWfL0A"OE"q22Y5C0r3@qW3W_5lS1'Pr5A@,S5)mr`Mki% %RGC_TXblY506aBf8J(EK<[!Xiiau[cjbMoq-`oD&i"NG<ah,QlZrE-/C+@\2:hNPLWN=]$r?ZHHAT][l5mRW$!pWUeH^;^64%l*I %9kZeu(K^.37X6uPKI6d3FHpZ<Tb-]/q5.OiABP`lTn)`U=fh#kp@KumKfKX`HBI0NRbb@]"[u/hd,D*VN3H33mj;I3T):?.JU5nh %"0*cd>&YlfL,Bt*"U5MO5$0@hTOsjE:lb[ibCf:\A-Pr4N,OaIIH-U=P!LPS&*fT:Jq`6uKT@Gpl9_N/Q4u&lq7L_3egoTt:s&L* %:Jdmh\a4[g\q!nm_23ghmhBn1V_fpmZkOOH.5^%c"!cq>>=2`QYGk[(&@e#([$O\Ll\([WfM!H\V6D.?jbF6gj1$ddMRK$1TN?H2 %o^B+\5sk-U$<mU<oa5FiA%aslR%b]I!(dPFCCtL0(m9YK8fJ`2![l`,5p`D&G.L@lV/Rh(#;%s`Wrm2iZS8Z2S,]d5kq<dhf3,ag %,-j%IIj?AAYs2iqq/pXkA7liQ/qObth8S:g"U7e<19q+qauis#]K!,n2=5=faPGdc_R%t\bChTQGM),p*N.\EIFCQ..0i/,ZB0T$ %o(=,u0U<oE7&Na/\iguOB7TrGg'fqJ0Psapog2r[!=RUp4bUD[dT5-1kSk<1l`rK#Mh\PQ]@apI)'mMIbdABThr'0E=N8^EK%+0U %,e=]3ge<$"jCdjmV!b'N,EmEj-r8YC[lp9Nas=:F@la&dg(W,oaB=ZAl,U`"U_icg6q9Ha(T^;361%%.,rr$5"U0R(CMJkY&rI&h %VIm+g:nm"j`["f.A]R0?,!#pC-;[,e_mqaRJ7)JiRROfQ:k<lsE^dD'Bp(=&?m6d-Nuc@WORF[!Jqbm'WsWYq,>?9F#25;U`aaYC %[M=m\kHc36G0+5n:4]p0JY!Q3Qp):=1TePG[R9j%E>69a8ST=ln.p!%o)?nN'Gg1.A%%MXf"ed*d5Vb?-,cfA=q*ZXb(#YA9me.Z %J:c'AaZZj:R"J<iT&_A`m>]=[n<XTF2^\l^[1ID0G.k72WL-\2n<7QmD$7FPk<P`aK-\_t1>M/V.dE!,H%=9%1KkJHp/l5r?4Gor %="'gk91>6SG!<3N&<`?V&I,sCqM87'>G;<.eL<kZA;sJbi%H6TLgoa/l^`L@iTC@$cSnp)A*.(Kl]&WE6*6u98<*n)*s3\f>_,I? %qlEfd`-i;92ta[<&TC5l^oSO-lp3rF'eS*L1%HUo;c)#p'*a6@!gBKV1o]OKAXjAV,SiZ%qGpM2U2@G]]sLf*K0UZ-4/%u"-=Ae8 %i0Ueeq5iSU3TP9?8?fZpft(03(*m<Q$LGW/UmN0LggHNs/t8[3'H\@(@s6<-E5mo;3\nV[;j4I^VJP[tCqs/1L5XZJ9XtM:,$A0> %/PeBT;O4jG5SU%e9$)gb85)Yj,Rp"nW^qDs;q+Vo.8Zp19`[-L#W^iE\`dMYbpp?to_[#R$mU[QT7RMhPCq;tDrQ3jk:)VY<[=%< %3e6=DPSSM%\El!=-YX1lAc[*H9SjJI'@?\NT8MFk=g;/U?6D/:Q3lV>6ccOlr1uY]2co*9*ujYJF9tqt3-fLkYV6Wui:R0a1Cd@U %2JXe^+h=1%<L$qrM:&IO,kiQF7Ssh@@Fcs_(bUE6l2%'HFc<dU2g#<[2J(Ru=Y-Q34C'4c8?]G>SZe7O&:&(@Mpmi:*dYRn7Bjh4 %;4J/r9MTWBQt'msR7q'C+Q-4=d*mD+/S;!cFK/JZA3S)Sa\Dh!;4WHG)7*6t$jA<]!+"/-nVZar92^OmG.'PuPdR]im^miuNPI&& %A1_AJX$iGY$BMNO7kiR2BeuE:@4piR79u;Iqog%qhoG_\PuF-*0\+gOW;?,a7DP8p(hS82ji!kY@otPhb^#m9Qgn#b'9J.\%?-J5 %dTP:U7[s?eD&6VfPHf_IhV_)#.#6DRU]mfaIgA&95t\%GlpG3)PcWdf+DNKg'G`tb;M5T;J4c6;"Sc<2&udqE<RW2Mkl"3.IB31W %q9C:4Z.`OMK1VjgRequC^e..68hfjUb;CR`K__BEad*ORA"-$aN@CePnN/Ag+X$oEFpAlS9VpH"#`_4bFHc;)^S[s`@S\+3#SO"t %8$.h%:.0uiJQ9!*Im6@5',[[K&Go%@GVJ,Y%BOOX;ctF"(6a"+@^o#c!SKP-/_MZi"\fGT&o2l";Gn86=O^G)o0KT7'Sa$,_Lsi1 %NKh@>&$'#A"l^,VquM17S4VtGcrdWaWNelq'hq#R.N(]t>Qi96Vo/b=,0.3_-'(,`dI!(D.-f,$e!Z27&f+t0bDK:2PY:T*V3DNr %?A9?BNYodl/7^$(E?"$DbTNC2HUQ6jP1i[Q*sh#\kpDVqI9M@qL1t45Eb:2I.8>^s9kFG*%$q+a-1(USZ,W&Re)8]:'hjr-?HN[= %MJfYf18T]_N##oD<M`"N;JL$j?r7WYS2tbU$3K)LQ>a(?$?C?'o[P'YQ:j+ZWg5Um+g^o<UqnJPffio1=O8<T\oG!eP_@_Ge$<#' %?qAqE%Q&L1$3ac7j5eGEZWIpo%^3u#MEX].1!Tr39H<4]][;KL^CnB?Ge91]/3[Ti!]!\\A)e=1T?Aa2<*=5U(*BLmJnsEP0TTp# %2@/rW?ti_Z6..i:Rh"[\_']s%i,H`FiJ(W2$]tlhmK;rm=5cAP+bOO656uZG/'.RmNL6NIN%><M;\9f.!K%h!dgNB41l]XkX$7@i %`[A!a4>d1JnR\u98[k^/G=6j1Df0XM9q?C-3[Si:'W[84.7DpPMfb:(D'J%%n,gE^o7>1$L1r?IYNgQT1tooA&Nd2IA)K52Z;o>0 %)M]TC!\Hqk/jis&](9r;(h6hk<O+*lk:!Tb;GadrAHLqVTmc449Tfq*)pI4C@FdQW$WRK`M_O?I:Z0!(H,h44h4ZUd@52jLKaAQr %kpGA*hVrWp:klLH0FV(!'osh2/qO3W7]Xg7)RJjo;.8Tll*W#)YVi(;\b'uD^#le@_X5Ic6rV9`Y/*l?-Lkid#SFNIM5Tp]@Tq4= %K5"/I<*ujuG/($%c<;\:LZ7(kon^au'm9cZOoYp"eihn#8;n4U#0"C)8ZA@K&dlp9O^(r]K9@)DpfZrYcD^Z>!'*#k#tlI;TN:,e %Yil=%\]?a.$:9V-/P\)-f^8Q*S(<bQ>YpWJ@T@.n7(G/D-:\la<4!/OA]IpR>bq_3JpD@"UIiZnUo,,t'3>@0;a:gSI4JJ+E2'V2 %lL^God<ee70iMEPRVP1_-ea<OD(?0,GrdZ;Sg(PO<8C6,29;a)LNXnr>#7ksO(gO`Nrp*+)Y?iTRb#f)bbdHL_Za&]robo[,PurL %cp.!4FYlh*AmMiK4.O>:Da<M;e-p$#Top6mlR3;pMh;^WTVB9gb(l#mY9:/Thgji[L&r>oeM>i+X\E8g:pB.61uK?6QH])#'#K2d %6?_%EO@+@kY_.+sj9Yl&'/I:<aOCDL4uKkTMAM)cP@l@_!\>MPNlL3@R)(+-q3Eko7P2S"8XVKSN*$3T/,1MpJpP0ImoHf2U0J>@ %@@lHkEi5p9jZAMK!ckL'U=tm`T]djPe;&VubiuJh"g_\AVoT@^`N!!-oe:ECbAj4PTH/#]["af*Z$R4l_m5)C4?4W&2\M/c4@j%+ %Fk.5W-p#=Ne:J*#!H9gL`-_`b^_'X;8lpQm.kCf@r`D0o)!iuW(Fgkhphn&VKI#G9f0H%`8IFIN@OLbMm86f7pB^!umD6ml:,a9b %mL`L;Wcp:miCI-(Z8LXRk"VZs&ON'I0VtOpPBhrs//,_KF*o\c\ecpKdP$!uhEV(M'J2T^LcQcTD*rP%_EUVP'5u:3W.pZB:'6:t %'[B3I&)8tk&.&]Z`*"Z23eosi.O9AJ'EF;Yab\kUA<7bU.DAtV3#Fr)RSQ?W&XI7`dn*"Z0-`s3Z,S6s?S"gQCP-HOVPdMC;udDZ %/=+mH0EpM]eHEMn!%!]#9T>M"oAZ-J7?fhP1hI:/P?.3@1#OD='qB(NX<<Ou<jD:E%FSdt@XU4Y9S"uU.r5PgckHd#c0Ij(q^?EK %361jFV9Kau$n+qgC]Z:o*9ZM^5[n)L!)fL_YrnHoGp",pHVLA7EBoE^<oJQNjIoQbN>%AnZ.]B&Sm'>rC<-\>#\?k"m_rLjbZc=P %>N"kG==#Y-$Xs8Z'9>E6kRPF4h15DW59c$Eb@,Ic@P-m4WJsH\)\]cm.2nZH^`6nk;(IZ##b?b)negPq_cfP'/t_i;`rJ#1_]=BW %&nE1O!AFe!`d"JPR[0]9-7$fc5bL_8ZS2pq1E1:C3MD6tf'TsT2>E.T),QtI?&hMePaf)*"$<E(B\*#0U4Dq@.?770F#R[T#)0+b %#,R7=NmLMONmqZ+6#p(ZP[/hi,q3R]@)J^c@I^,e&Y7-(g%e'6!hLFaCrB5O>6(JJkaADZ$L.fe)m(FT'NAdY&2=&"JJT,R*tZ.R %i6"^"mrMsFA-=3#C!eGdHp;ECf#1_4BfZ\s)%,Y::hKlUKj1pg+c5fB;c^5[8:ed<R,ZN#MSD_rgN#+S5(YOma-r*ed=GV#8b>!9 %-\G,+Yuo#W>#QIGD<fL(>"4'?X[`?TECV8W/F]9RWDRcH_g3sRA^qWP*KjSOdHf1O@_O@K=CJ1^Y`Bo5f7QS4get:MO)\)@5r`KP %d[\iqn`[uC7Km6+,CPB6ck1p]:%6gKNb5,nP;A5&+TBZJMkg>OQJ^7(J9SuM.Pc_e5ibL]Ub7`?@75hs$f6WbkRFLl3otoh?UO(E %!A>\&:+g.W0\F(58*_@U3=;5la:eU@dl`GL2p?JUQZU#c+j^nt@Xqs8"&##Uqk?@2q/1'`:(LKRJC:Y3OSRf[ER(Gd5ht&"DR*q3 %/@[`]I29=e3V1)!@OjGH$A\C$`:HU%*`fq?d$\ED"FuNRE^kp@S^Lj5+^>66[B>SS&S%,b3[_QH=LQr_arl+lN7<uu.QIHE.IdlJ %o9^ffYel77I97<1m^(0.@GfKh;W]-4448@D_Nfb,C25Q"\kROA-L=QV%iM5ObTJ]nY2"Vs*Z7%M'*-0,?7=+n+d64.`BqN(Q-]\, %i=(^6&NV]o#YS'&#I!UV#J4HQbNR!HbTj!VD:lIYAp@M$$5W3HQhb-eD5s4rZJL1V/"+0cK:*(7P*kbb)XOEt,u0_i[Ws`a,c]8s %bGa&rS0R>U(eL3N3]-S:8:1O!(Wh[t%6C_+b^dr42`T+G"[RDK@ouWQWDDU?%I=/nr!F9LGX@6'MLss?*&A";?uO;!NYtUX'[P'D %CFkb`=_GBfdHk3IFq,()BGt*D**u'83'3f6<NX?c+oUJRKu6LrW@77k+3PG]-\#1sdqc@nPnT^fL)m3T"J3LC2MFb&jNGn4i1h-l %4JW\sbYI;=i?0<>pAj7t'Q!A[7Tu'Kc:PnJ7U-Io6B8#]@.3Z@QW;+W2CRK5_9uiY$=#D5bT9OP_/uC"r(em]L5S*?P_Bu+*\"36 %A/ltGXj1G='4Z%1lihEZf;+T?Q-f<s*AiVCYe@Qnb#-2TT_Etg>S!G!RQb/Y-glM8>)YmN/Z4m!fBMk/amMpl\8SaNHLdB@8.b#t %W6<3&%8DLX1^]9`nIc/i/`oCZ@)J]N>pDLT\/nL8f1H\f:/.Y;i9NZd<S<EL'*8/A[9qEb+c[Eie=\\1km<^^JbESJXl4_gfVHt% %Fs&_,b'.C#6E(ke2sT-GN0$,/'lk!j>X'Z>TfV6]n^>7:UCAe(<=bbXRPZK"!-3,'*$VJKpok\-bloL$nehq8b/h#s!:(3PLdNTq %[#Oq%I1@bW^s=!S3)(*S@PM$iZ$<%X[V2W;Q5.m/SO.c3A0N#'PT([#;;*p!W(`9n$QpR\F%$Y%nH'c">_H2+0d$lr"uHOK:[Far %qP`bYJ-,CXn9@AM:l%-Bd1ohQY]@"mRXtTk_ZBOmnFd=Z;8jlEX[,8,f@h"u]-<s%7u,m&bZqGH5i\C)Qft!-5`fF$QUi5ikYH/k %_lPG%`GgeERC16W%*3'Kni`=#;m]sh8/`e".;!%b1@`o2NCtu=0!fP<21p<2nZ6J2">)16"D<!>9mK_urt&`;%XBbp51<a`:f8Ra %:r"!EfRc?g99Za'6et2%qheL)qTPcG->M*Mk70EF0(%G))P3oFMX26-4C[;@BSQ5X_^T,lJcOS5(M'LC9NW=d`IfigF%)=jqat3e %ReOW(,rd%?e7D+hL_L;LBs;))A;&j1@\oQ5</`2<Gh?Jmg9AAD#`FGmpPRICP8BStUO)J(#5G4O>h6_6CCIXni8$534`+NAfW,V3 %=YTkK)9H>/ct\Gc2CmlYQbEX6Y6puV+0[[tQO")"=)V58ruC?sf3&'0GnL)Ii^!bLfGCaf5=Fbds*\i)r8NVR-3?B@qc$r4pR;Sm %idT?b4N3j=KW)E4PRnT(RM7M"\"+;Lpu9Krc_$HImEfHp><4]Xf;Fk>rIfA/!k7k&Cq(%&h=-,kl*fT:abnR8SKHUDk2m4C6fZ;< %6Msr.(b8;J^8S@`#+Vs;,D28cpKB2(>hBZR+_QSm=V<\pI/hCkC.3`6-&nWOc,cBn7Ebj=J<nDgDNReZ-JXd>"=,4b)<=9BL'5oN %gdt8s'AM(G9dLo<D@re9+8FD:eHNpO,T[YghO784\%2c_.)Slo]!jr'9Sin((aU]+>,J4/_auiY4?7UgKYjZ1.@oIFY/&.6YWjJ% %8]recAhs`J3'm#<OTResMRu;S^am,`*4N?0>i1r%[m.\-3Rdsfe)&tU]CYQ<?lJ&"]Z3F)_s^o1O]C1P15^g59h0JiHVI$NicguW %U>S5!;Dd0A>!g-o-Kb.)^[\tMo-pgjW(:[H[&6fR^0GXS9Os$D1L3hu)KR_*9_7]:\\eJ54b0opV4,6B6k^3$EC.aHVNO1LaR8VJ %YZ?fq0]q#MW<K6\@On,p(Roj<7f,t&/*GFH#OjbTAe]0PNH0`Y9l!\#^6.@[n2MrLd,=Xml3[k0Q?qSNm^3Dd?H0W/)C=n<*p,db %)<aXoMT,fm(Nlj-6b@roJ(d)Fi0:<CM<3:mROQPRe7???52h,=W%>p39jZ@E_UVQ0$rA(?]W(=t7k.>8m`sEDEA`0,P"R9D#(kAJ %B;j6f%G(\P-:$"sU%2;C$,^6@6"pB;/3,H,LmOU(gS7MZ0M9h?"LO48cnB)UY"Br[,Wgq"5WMLA#7_a%8LdHI"t2bt'nbUmdlUB( %MKnD`r\XuD5Z2=?JO<lUR5%N07#Q"VdCta%T10KIR,K9Lqjp:=M=gq[PS*#ZUY=JZU4WLMIuAl_p.,%?:'D.LjJ#G$W;on)1"Td= %"L@=4SHI5fL-Scu_IbY@Fl.3X\jipSI@;F(<62V%qC_Bt?t.,KNOr1UO,:V).HRV"L`%Xt/q2cVCa^FcP/PG[Lhak"Q*?+CQ1:e& %&;F!)MP??(f143O@d^W4.Sncg'ZS7dn"`g*UpDmNf:t^jG]*519ua(:Lp0G<cG;6Amq\r5iiN\#itu-G!lOg?8#`R=('b#8"N,\M %QP$=&TP:AM7R\J=`OHNm$DROFW89#&QPjn<OI/'AMFlT>7Ooa=?jE,K9a60SPW;AJ/4qX-!G`h]iA97;peh4mF_h4YCn2So<F.@H %/#!5QG><e+@rNp73>>[,d1f9-\dT(2mgI/eo54k>NeCn_'`8N?a^Lfl]qI\[&NZc2;1tJm`W\.FK0Ap_M6o4u@j:7fZ%]>m;_d>Y %+l6aO1Rh*R_1n]2eR\)"NkYt\:'$cYi:@`gVF?[T!A3oke3%EFF:\FN'qo5R&d/ZbmKMjq"E3qU:]MVI2L9gEjqbTK`PG`c(Qd22 %-/<8h+J^@F\,hBp8:2J`@"<BmT<#'`j.-Xdc89#mSc.^<-a1uI+qLMNR4%pu!ih,HafbusPIqNA%,)u@918H)JRLW!j!l:<Vkmj: %%#k7=`]@uDI8$D6'&oi].G,'9-%Kc^6PbLhaV-M)533"WJtaEp,Uu/iYgW,R7sOP#/^8mm"o7P-GL.7,gl\Q8at+u[>n=n_pL"[+ %XTtJ^b^A[G`<bt(nET<,WYT6d#!hr'/b?oVNJm@-i#,-T:kp/Ti110tAE48`Ch[lK3rMPkd"+lF!&%O=KeiZcZY"_S'BOoaN?g,! %7&JI^k)>UJC;js"V4>nY<MT-HT+^$sjkAMPYY]c`H@R;G4M>@2AQ1IqKq"+jUH&h4'sPm$!F?&ikf-=lVL^BqDfNuZ"G_9OD7(>- %5%+-<)6DX%qnX0fJ,0-*Y-h'iT_J"]OuiNk>2P@k6%8Gi`"&O#?ITIZiZ@.j:iL&n#>oF^Jd9\r$%tq@@'`q>D2bW@#]=_*#,QPm %"@7Y&6ZY)Q!]F&WrU*.PWjf91<"rb=d/1)j1E]>SnDjlZXACPC&5.\T\.;@<*hp6I!I[V=k<G]GcR''$a,6V]j#scd/K"mIj7f!* %"DW^)Sr5W[3KO[bA>0dNTXQLJ9uj-_;\AHe<C"A`(b8".d7X!8$aQ(g"7&IufeVBkm!oefG\S-6YG>)C!j\NDD7#Uk@R[\J$OA@O %*HQgQ9u2TnTSm8j(?kU4lit)G):3>HmL8W_h2=E`<&Dke:8"V7,VD!O/BU;Fn7Y.H0dMNjp8@&7>:SoonXnli"GOr?X?2(C_M]C! %&KSe/m3.Z]_*Jda6+kYICm:l#C]c/QHV^c-$qHEcSEP+4T1q-^@BhgiN7!^/\D[.(6A-UN`Pt_R;5cNI8E]/4d;Pssh&:_R"<T?: %E,6%0Aj*DS-p*5J4+pOrM+MfB.,eS,5,i[%=PT(!G9a_5_E>9^.N*7.Y69nO"1nR[)&Iq['opDYO2Yob.#G*AGmckQ1F`frO:BT- %LCefrMMB\)>9ajpccdd5T<37alu51(I$,X"N%"cI;2=@-YbLSP=CQ].B?CiL`'$XaT].$"-.lYp:0[i0pRj,N(&&n*)(3C/ktCLW %G:,(qL:^BOLk^8=QpAW-BMAD?O*iH%'D1fXW(_$IhO2Rj$h#-Y-J1TO6"kj;kT5s8:iR"D'1<f.6#-N:pE2?pi9)02-;\]+EYAR, %mm1k9.df`E+tE"LE<8Mr*[E*eoQ!24Jk)-u+t&PlfT[JAX/,rqoAF^+fS[%%B?`uH;C4jUi)u6O[#u@)^VZ^3cGghRE-*FXAr1I\ %YZ-=>*?n,g(&+Fq&Jb$a9G&#(>V5]>,c$]d,X1L7`HBclpW8=P?'!>KQi_(_&(5b4WY:`pUVge"Ld^\ZboBE\fh]Qf)NDD.?>3Hu %?t,RiUe>X'=`K?@hd]]kfGf6sdB#_P9UMje=%"_%)=C2k10!%slt,,GmS*@1<8<c.ASAS0ji^J?B@7Tp\-MEE:iR$*(T>u]I_c9` %.!7!hmT&Tf.dgX2<&EC*i$fAqUZADQ\6%'VW45@N;c.Oq_P^4LO4'r#U<,U!`D9L2+C<'WBP<(E#<f]*'V\K6nIV"k4Z7p2A@(JJ %p!a`SSe?K//[?ZhZ@.K8gs_.FJeqkC.YU;d?kMhW?mQQ^XMP;ZpSbtZ.dg/j(!gi[>-)t'HW4Lo>`1cgO%Lp3E'76FoMc3KM_HQ% %2@n4QdNp$;e$PG!67`4X5dI<KL6QJ!O^rA%,[!ebbcrQi,Cu9"&4U32&9@cLWlU@Fa6keW*cj5a6jF#ms1o&HU4ED!76^2h:.D]^ %V_5E6pS]4ak?Q'mm3/KS.HCSZ%GFY;cAM`\4.*^!&#&#\?u3'OGkJ<B`Bqi\+/#?1OFTQWn_ab^hTFE(kTO4#*]pcGU#KD/Cg"__ %le0FImo.V71u,"+X_>4G<Ei=?T=VJ*iBEND7DlfRgPUl8<OZNS\#aNF=)EB?$Fco0mPSnPKD2<bMb^j1SQibISL`OU&aiuk()lUI %m1pB/*qaEEiZ8hQZ$,S5o+ihD;=t^:fKJNVb!o&b=Fs))5if.'3lOBA#<nG)O^XD)eP@+[F%(K7U:0LAGZDr]P"19U?%r^D!^;-3 %;NMM\1lJ;MR6aA1Ljbs&',>%i$-FH>Lf8.VL!]+%4;^_^2&h+UBH0SO:.tl,(aL^d=V3AsER5X>'&k3qIBp@$IZVBUnml(5p&hPT %#O2I[`I03?j(Q,Qc![(1Xe9F5Z53dn:][KAP!DU7`&T*E.8:?#Iniul<IrY.N@IoON>-TuYVQU70VPH[XRRV$V3?T2-DCe\4?X`+ %XBc5DpS_D7.dgKT=KRg7<%s&]Hdja(X`BIP`hMI9Fc??8X`%:_(lrm%>/jBYpM.][&`13m0h0=9!9UXt,\\l2YcQeH4Q>YMZ.=FZ %i"'?gkG$$,G3RF)oEJshCV/qMG`e.?Kt/)s=>CLQEKfn7/#_^UN3L2Zn!gDY[_lqo,-i]:G/ZH)Ft5(17?M%*-%YoEKb98f>(VKQ %$=P5jTj(e7.[]iB\KXAej!gPI+XT?ccjUnW@iMMJff\[d9-''sRlu:eZQdu7.Kuh$Yb;fY&g3>B$U!0dc(T59HBK8m$H5_Op5r0Y %Mg[\IWeK]+XB,4%\5_7up';,pK\r[l4@k]]J5fBF*2Ht)`79*_ee)4APdRAnG@cn1L_l;,=s3u#,b=;D?l%fH.fu%o#SA)Z\Q#Ek %<0&)-osNlF,"DUr#aD3n!ip\ga<7A\G#MN];BsgelIM>"$A)"oN++PnptZQCAKo>EX](RV]^YP-P$1D$8<DY1h(gI2VRGCq!!$L# %>TCZ?-LOa=<7m>4BObs86nV5o7!['A6$Fe`Y0Ia1qj"cN`dPVUh593"e[qO7*qd.i8UgC@hGAd'WtG)Tc>eXH_O0h+>V&X'V9Z7? %:r#T%kCc[X2RFM[LD:ouUqhVp(1cQLQgn3Un?G]MN1`DSVVIO=I&P0m@Rs'g71BKTlVcfjE0"Jh:sk=E0-;V!RK?+gbeecIJHh,S %&)hbmrqab^S4:!obd\n@Q=<c&&&A:R&X$'[3fcn$,d\cO`isi`-9>,]UFJ<(@'MBEMc6<O2,bf)8m82H6H+J$E]/gaa<FP`KfV#V %&L'<PoF)J27"+3j0I"eJ@Itn3Mou:'-[cM'<bMgZNe_Q_^LudC9i.rqT3Ysc#O8W?e=.ZI$?NeWZtAJ(lZJ(\+lSUVEVl.^7uR8i %Y4[BtZK038e!\1a0+mX!D@[I.TjBAo[jm>'?LB@/YlXqS_HQ,i[E#AV*!,3Df=?L'RmX%3Tn7>A7CSS8XIA)klcDXrRs3O92a*ut %N/(LNeB^VS9$2G+IDpSWLD\5I^";"+p*10YJA-pK$UuNm<RPQn"@A`LL1DZ7f!:g1Rie/;(!`agG"^CR"iG$KK;rU$8h&/90Gn&N %_$3K?4H:@S:E_=l::Kdjd17JgRY/t!NspJ`O^78I)bB,c#jJ&B+FX2sUAJ4oHrJF3]VRG5oS\>uj"/uV?kSq&:%$:qO%hkZksaYk %cc;mu#KS=<bJLO?ONXUMe7_YlJh$j]'i(PjHfY9%`I9OmK4P8tPUO>*TW1Df/79+QWn^8T/?#)JVre>?<QAm.^g-(+U'&')c^\7) %Y6edeX6*U,<1.]djF@h,'-5*oq.iu'BR@kO'Hp.K^TrkJj"k,tX$pAU`>45Y98^E_8-dCkdY3Eb"ge.-4cq2+?k3W7=U@"a227>G %5'oF-)UeI27h,97)II-+We-L?"r=d<KZKNnYl_tCVEYG'+34<WW4G:l)H6iM5Z*LNYm:Z3(Ikrf!B/P=",i\[GR\]$2uN^gIC_8R %;*DT2;lURNf.+_9U;Bs8Wp3#op(LNFnWjA&Q`Db"4,']m1=N0QD^c2cge`$S%R@1[NUsFBAdrKg;D;5rSIm.0<'a[5*u&U*iKR-& %K:&Aa:X2=[Ec"`hBV!foU_<=(HsBDr.ZWLL.`p]l<Md!f#W3cU:@hKj\9Upc"+R!!(tiWeMk<=W-M"*f6<1&k%n_"GG^V<p:9k>i %6:(EH8/>2)3'ZlU7$ai(/,fO&=(pU77=6konm[ZWaoBggfPCQr*;uNF\+#i48j<nq3hueFVg4J7X>[aQE4K<A$%V3c)GXeRVJ//W %?\`]_,)Z/q?S,%[<t835Pl;R*iftQV+!QZFM26CPN^a4=B:h/uZ=\GM7=p_\2C>@.MVOOJ)$q&-Rr1J_b,RftV!OZu+!@22f^@8' %f"@JBRXHIATsm5A.CaJ]9DG0+CL-W2ai2'j4%4mY$K^KF&"5(J=/u7m=uKMD_-,@8WVI_6V-?_+og^h7].KI&Nb]?.'dj`5,Vtrp %WFP.";\W49KQ/WP7($ZM'iZ>X`GW(cJX/?qV&/4eP&SpXFnT<]3'9&55$DeN]lXkS=u,MJ=96FmP$)n`:8s!O`f<c=%lG-AaY=qh %59\/Yd2tACJ?+f+a@7embDC*6dg!gH_i5iV)`]-448,J2_]tG>++Wg9:D@fX%>1-U<^h)Tfjcs?^iSm>.>,nJ/QY_<7Wfh[*o<&@ %c0aN8(JWL^K76JkKc])^S>1[!@h0L:mD_/TIDZ9n-YACuh[-`:*30#b)@fdU4'5SN5RfJG6+^,qh[qt$`7Z3J7Y-PN&u,Q]LaO;[ %I3>L.6@PV?'YX161_E`o0Imfa))'(pMTRfgPbJ.`Z'aR_(`)mC/N<#s#:dJ/X:]ZLSt)`==FKUl3d#d,m@[q'!8aDAH&&Ebg$*L\ %#2c+hI6/.l:JF9D/8:-9C-"+=Pn8=Sd)M][[=IfBK-L"3R1eLuTc\BBdB*'gN&[E^>j-=+R\XP[9$)%SWFC]]TtSP`9;nmV+#J+U %V//H1Co$1ReP0FjWc]/eah4[u<%8)F<rmcR.ZmG&Tp:)jdOQRqU;F4`l&r)t[1j@<R[?<6q7VCqAC9^-<!:<LOskd1"p'!*@8[l* %E!d6rQrZs>%JE(bB0`c>+&kR+^fWHGfYuPg*b)'M1d-`^5%J[&,XBUGLaUrP&g.Y%cusqh@+d[Ah>-a+iCCY(bNATZm,c3eo,!ms %YE*"-2eNp[[NB=7fj"ETs3q#BQiGV9`GOG/8(ZAIbO\M9?([^YDa1tGr;>[<d@9Obe/lg=^ED?>r9!prkASY;?_$E=T5;8'3EO>? %:G0EYE:`_fUW_uJUWq8GoCMA>ou6"t&!kI16j`VTK3&T_k:<6mA,a",_?h_se?V'Y=(LTHZ^"XkGcI#,W"en4\f4dDg]a/pdZ.n. %<F1BZ'JE7U+;AB]:XuCi*LkK!/0mLf'Bhd]8PO6bSgkgn&80;D[b1"R/<QPeGqFca#GBj*7.@n@#btB3S;)fW(6Kk;2Te@Q*_9JD %`2(sicOT[n<@C!iWuaGK?gglrra>?moBXS`o<1%_T02r5q"WCmB,B/ie9790s79#Fd:7RUM=c(c2J8MWV\cOC>cjlabam'$:`bQ? %1-r'<ZOl7P&[gQZs/[T4lP%Fs32%7'&M`XO8Oabg=c/l*)&6M?LtQ\QR`Yg-kJB6i8mT6skYIK'VN6=\ThpH&4E<%>m\<Wf-H[%[ %#N8ZLPbD_(>KqF+T<ajM$g8Y1cQJ$&5N>E`2B@]l-qSS9f'Bsui-\gI/(e?[Z_hZLh_e1O4F'\4Ndj)S5<@Q5fR.geo\sE92k:^K %i9kL4o1g)[rVO]<%j(D;U&T0Q?f^3;(CSBRe.4MAkd.sh^@#@Rm&PRK.Aakol`5";#Kr=k5/(L5Vg&)COs%W*ZWhp5C\0L[#.Y.H %2_!Y\%0@o_>N3bKIO._k+HEW(9$\USc''MUFWi5TJWH9Vn6=!<JtRhe<O!;#-D?[C+QPlDBhL!4C>MuG48qihqig^kmU^2On'Hc> %C^D6mO/?:j3B('.NOtlX8[<4H5?"hj<LL0-60oI8Y?Pl[2ZlDgF&SQr@okFNalIROZ;\17MMTji)@mD8mW[=RNDhjmAh*OFGD(_7 %2ck")lR0?66Jd.HeQ`UG<o4@EUk8,I:41_En,0jC5,;neop;=Fg?"m_/SZf>^YAK>=s!/-0!D!Iee@tImtpj!B)!BBO@4TsiXZjg %TCu4K\fXn4*f691Q2-%;Is=PW<;GV(doZM*T03.7DQ5gDpsG"XkM+7Fb?%bPDgm1XIe;1aEq@E7Mf''=rNhK2q"3eBoV>9[QX?@) %CWeqK>b""7K[%^+c"CRN4[.6bK?^0o@W%g;rPtg+f:,.p=&$<?fA!Tg)h28oKg];CjRppb\ga[>d,$F#R!5QB'k,eGhad:%o588k %]kZ?i`7&W_T-%F34F_gk79`f4itj>/09/f>D>E_1J%30Squa%[^mG&qou[$a+6hfe0B>E$`Jr,kGM\th-!SYRlXL[ZqY*LHht3o= %LrTIqYM]<Zs)un7*abFD;#<K"Mjtc:Z[)Jbk!PQDI?q(6m!G?#2[jPqi\Ji)MUC<phXUX,T<V<IDgU!GrN]."q;FaA9+1\OoD`p= %Id]K`Aj666s/VJFmJC)eT>'iBs4OX*d@4\&>l0$70tsQW*_R;&*;Q/KU:p!/VcOr:*WL(Cludb?U=Xg8bBJE-$fTJ/m*E,sZtPKl %*?&OC[-V/R\AoQd5L#A3)t#_1mmV9g;siq12a3Z0d@Q<*h]!XfrihGP)uWLW17j/:PQY>ASdfef^_?U_@l_!4hZo^4RN).,r31UY %50n+oWqsUseb\@f6hA;f9CnoU5c,0h`-6RFn%@7/q4p7SkLXWI[oX(]s.An@DpS54h88P0jlC0'\pa+bk4'Pio59$Qi:0=n!e.gO %MoSWDXnVA-Bn'4[cI'c07N.(^XtPjDaY+0Ql1=59hDoNQdZ^H,PN1n?0$[h:3k;tuorfEQ*e-d7^\ohZ5FoOeQY%b_^\Ge@BA;I) %DH+C7+81FbqV_'_g=>mUYIE\e]Qc`f-MmG8G08t@[4&Q-b2ZiI^YJa%o3h1:P`X$pD>6CTo;gZG[s-\9B'^mPIX/?7VO@2O#Q2*l %$P2>TqWPhlPF$^aAY/Q!>Fbp.='pITa-5i<mCR\iX#Kf<cECU'q`X5Nqm1.sKcaWKH$)iE#f53Yak9BoYk'cF?XI,eZ[HToGlI=! %-^WQ\*RFO`RZ5-/a'QNl2r8c]D75-\QumN\]<4;U[bi0D[l`<mn(dJFA`u=,oj@alVH`Okhs?=BJ+T3`^[1j6NC/K=pm/h[5"lfZ %c]2>%cqWZ\Zi5?Ml%e4>BVN)6a%-0U%<Jl%k+Budr9ld-j$1o7X:c3RFc"UP+4cqEVggoEoUj&#'--_U(Ci5/krnE,ruCa)^p#UX %(+"n.TEi&thD"<TkAqJg(iEt:m69m#e*Zsh]AH1$oCkcT'=@I6(Qd%\6c2,)ePCBd<<3eY$5Y<-=!NC\9e5PmA*3SK>XEmmC]>bl %j'/6qI@P?QSa052hC%g<Oo"b4`QQNh?QZtkpi^SSkVN%u`fXGQrH=sD@'#rl^1,HTdma$/o_cZ5ZdjNpo'#iNq$&c;^:HG@TjMTo %P21[=0J$*\Jo_OqI6.,fplljSfd"6k])5#>;$Qs[d0Vbr,O<b@l\isdg6KA.?=*Y6gO4AI]D[B&^\Rd#p_>ppJ&'stFUq5gA+TN8 %Qe+Gf2rP:O1Z-U5pYC&MT<ue*egTWO'&d#g6FmQPp\hSVs5LZa^V63)D1V,G>G1]I&$t)Gh7YH=p`&&VhYR1hF2'_^IW9L!d@/OJ %o:JE%jF(.g5EO,^kUN^>]tD<5q0b<Js*/g2IeDgAjk8Me[ngmHrmQ(0D>_II]#HZDc@2UV$XVpJ:X22<3'"bQ@/e1-p<1p&2#h,u %,+W#PhZ!>/:Tps&9s9S<::JPEcF5?RZtfQo^"04YYHt3Nrp&k7`QOGs>0?Rm#sc3&in)qg0":D6WTKiNo+rJj0moQV=dITNrHG`; %a'3hgh%0NJJ%5AsACDWk+8ED(:-U\ok32`^`S&@_rD6SG+)IW=3^(TdF^G(?,HR.Prj80s9K/T1-%5OZOt$Wh%<IubJ(,(PXMXGb %$k;Yh6f%/Jl>CTrrhJ1shc%VnkAOZ(p?;)6ir%'`l,DoOd9#(pJpHn444JU<3e!HSQ_b+hV6P%21X<Rsrr6n8lG1/Q?@IA_ZL?W* %iR@[2W]uD]%mTN&&-!XCK>X:1k/72EjaMI0bKkOjlh<C*5C^";i5Ql;kGtB&+1@CGrSQ#(UjKMIij&rIjDs&B3M;Im9uN=SbJ!`W %HHeu\)#,uSgKrA-K>2"Bl4\J<k>Jqf2?!9&EVtCE1/j$&I`q5HQON<j./.4[KSZaeh_OfY^#:j/qg$53+BRJQ46HDXr;V4Xq[^)W %;7aDX?1-iPc2SWUqU<34s%iqR;.&q2gM46D=N`qMY^W4>qG2V7ItN["hn&IDe`lbA:KNS&:X3:<g6H.ac1%/#m7)p$J`h3&?2_/! %$J3bEE)P_7c<lNp`cpQ6IX6+Im2'MdLejX-E11eBn8Frl:TpoSR8N8,Be97(ojCkti7$`N>os""f-f2)8P!B$]k@5mBPpE#XD^QL %o'.I:ZT\4&c:;5UU7rt+d778FYG?`&T:be)6c9s0oG$ehW#'mWN8+U30JeHDEe(0;qXj"5X5i6(o*]CI./"K.B=[P]d+eKtiqVi7 %\PXXNaic"/_bdItIdT'DTDn<hBBNT<523g(q34)>m+(\dqE@9$QI8\]rUeXnbASe5><fA'54<^Nd4(eq5'V4!p%?H&kXEsB\_[1+ %H[:#.m<GAql1X]/`Po6614AZYjI3rRT>/%OG]g^qQcndiI,.?Np0WkeTY&DDPMahorRY,KgR%iKZ_u@"Iri'34?@mFJ&oe*j3P2) %e'D2"IWuo*+op7:SSt*i^=o:jAgY:bdl0e_0?\"C4o4m9jCIG3+54bbr:Ye''#)(dIpT3B^\_C3/a3eXD&aJlHFnU9TuXVQjm/+j %O"[tD?Z2MVoaR>RCXC'q0C\OSCHZS+O3Y2c?ba._SgTkRo\%XBo5/t4Rp^;Er;Po\mJ406fI+W/,E);_)d0<_/E"XB7Z9tJnH#b] %WWm8A:VP[c[UF^(l$(L2DiBJKr-Gt<m/olj,b,9%WnM/L[.#F"O,M?\[eZG&oP[a9gR@bBYWr0Mc#)6sF*%?W^\$'al/r<MpJqW% %?^Q%pL];C@nbhU82\nD.B]gA@ogXL.FLTp$_KlkuI:M+dG/(K#Q.2@CbC\RKhJ*r"s0"9M3^*7BdgC9!n#_r/mW\CAi29B;AAeND %?)RgroeUPNlhBGlq_#rQ,i&J(n\dGlGF%i=hM(*"c/_E1rZC-@3dSNRqTi6tc(e#5T^O(k-c\n9o@o1)='Ogtpp(ud&"d^"^AQo$ %*ml!7a;l0Qq6?D2>.aIZ(WW`)qKDMsU['/a)T1I#Ao)&PdGOupqe(DgGd0F,iNG-Ms*f-;hEQJ=ci&;:]Xek$(GhFa*rRcBhLkg, %ea_6=V_9[39'_<J*dgT[\pj6Kl!tn8^ZS[*>^cG8Y9nG>\`N-%?6@sejB":IUJQlsLi1T/QTo$\hY@*<Xmc;X\%Xmd3SrWT[=A#$ %*T]P_fQ.4flD@X2F.:!oo>/&roQu!([h'eH'&N:>?Z4'%]$2b!jcB=G\7jdl6I.<fY:n1mD83a_jRT,8K"$$5rU9Zo0Bl]9\u5!8 %]5LJOE0B3BhbP3ja<MKWQ%NuCHE4g<C@h?U)s?t-l[=6PlLK2sKKP1%h#P4)#Q"#GJ*]=c:YOG!CB"r2C4F1YH/:..ri5B%S^T[j %oBl2m\/X;\6Z_Q8GFNi%IW9hc,L>h&H?&ilPDHpDh9b`U@;5Cs3]VM8qN#N1nNoHhFk+gomq\p&,OJt?qt7'uNgfqMcG%p1qs&tW %n8u;/>K;eRoO2%tBDDisb)bC2BA;aI(O_,-q],!pcga5+W;#7/o6b:H&gXu8oXi,u\_#SWqYpNplKIm$qT\0Up@\,Y-iVC@\$0+U %H*q^E\9`FoqEp!3qXWj(*Ye=m1T$oi;8JuVnaba.&LA\2?(>6Tdsq#%bt"t?0/fFC?!VA%25b9e@4FdRq=J]S[Cpt$h>D9ipZp(B %?CY7B4[5XlZ(FOS)n.QB9qP7c?>c>TSU^=tkc=+5du0Qr?EX#Il68t9I!O4smeG&h/+Rdgbn"7MN\7N-?Q<@cfJ&en^6#6b6oVO, %ps!k!dW[VJ9"^CtC3td>3[^qmF^n''4hs.KRaQt@qu-6-afDbmBA9JFdoRH7Z[$eoPBEI604gr^2o@OW<We2X](tL$gDL^Eq<IMP %_fA,nPPu7dfA$9W>IN^:Cdnah^!?'qG(DZlOhp;PFlG$SDg_-@qIT^*[sr%:UpbPooWl6je]HLFe#C@34$.U(fm-UORkLnq?=J@j %]\Zu/,kpBMI[A8c\<+j,S*Rd0hQ@bKY8GrcC<Lk[<T?a?N(:))Z+>40FF&%XHsf7c?TC;5H-)nZ::G`AF6K[]03<q<Qh<B9q=aHi %8(W/14hE[;3i2Xm`Le55PHA\Ok3_:!IQb015Q2mu,P8&3kj]@Xhg(mNi;G`%[`S,c(_Da(cG)BQ])Jr6a+&>UH@:0e)*[gJXW@=8 %R4;XZrB&uU0/'g7q2.)1osT(n:RkZ1T=t'_2Jnd\>:T3-CO#a*/-hd/D=-0UN?<UqH#^L1]$`j%m4L?rf_N1R]Y0Y4j7%QOHdD*? %Q"<hb$$Z\b)]MIK%ZY'>E5jo$*'OT]i4[G4F.W>0<D+__$%^e(f,\qVDr=Zs6fk>N;WGHPMTelM$RgkX:,kd)U2,>L-Ur8rf0&Yp %Zt"R]*=GeCT$a%RW09[UF(6n%[D@4Pm!B5QCd&gn\%:I/c0hB-n?,aoG'/`o9]uo)6Ea%K]=880^DG75HMRMW9uS<.dua1bh!4m! %;3lJk3aka7PHY+Nl%D(R.4sct[h+jh"G3M;<U<4/;ZW)OL:fq;<^Yk<155HjQ?.o*al:UReVl7\Jka4\/iok'UBt.JN'C0/3\VMc %)K?[5FUfCS"K#,>;E,9K=@HWDn7l'qD1@.1&fBjh'DX)Y+;!@5#f@Wk3)UPtU`LZN7KB_mDE%nn;]%F*Rp3j'9+$S1_(H^[7hseu %Q/meUe/CDNN="QF/3;`[fo$NPk`?GsL+e>VQ!bZQJn:HJp+h>Ur*GItC%k/sD\69;U>_!"fj0`FY/\_p$g2]:M"Bq4+*h"4a,.A] %pG%$:4Jm_JA$UH[XEW4-;6]TH2I+fU-^DAu*uVrm:$<l1J@JtG?&LaeH')MtqXVaR=CAJ\rm78'8<$JZ^YKuB3oB/9[J`NlDifNM %U$qddEmDGWs64++]g4#bo,$<QX_tc2-(Wue@*qO*[snKA(^>]35nE2"h"0HqTC9H"CMIu^,E-[m5gKbJ&M^o;EVTK#OC#WsI5_n` %5!<9/4laBJ-Xpb:J"%$?D]M0XfU7OMl:'htZZ+H/!`_.55]$2bo;go8qo$AO#f.1_^;'s;^:\q"+9;7?2eIDRPQkQ)S1a]EDBQ2g %.aJc2XH12Y-GmFV3_Tp?hAKHm5&3*DB'F;*R6V=&\tAc^1-hEu)N7BG(k.)+V\)MoQk5X8CjaLkD_YObGC",Ea6.[17J5B.#A7R) %HG`Ysp%f0`o9p]s(pb0d6=00B9^$-43`1%W?M:`Ms0:Fq)R#^UBBNjU'>IBbfQl+,A.)`1m-P6aSbpt^<6`mFYkkYAThpikQR5*` %=tWYIGHsRc@&P]+^jP-LY&<8>L:ue!_8"=2DA/sWnG`:?E!2Ok3tb1CNAR&[*Gr)4Y[:neHlmep!n7L!AUUEigA#-]ec\'TOpHa_ %VEP-d+COBbEtg-C14R?RDnhk-p<i5q!-df)!_V&A=IaMCjmL[bJrOOfbCa\Gf%3S<Tc/@Y-SUX4^$&[Zk#`;orD2o(#Hciq.j.a* %qR!sA5m.^HL@:b0iu%gp!L>ng]ub4Iq?<t6p\OOp_FVUO"1*l&ZI$GU9TWIP']pDYp`Y)ld<(?N:CiGrJdt%1_C;t,(Cke]\@GYT %)o0;>V$Eah*L#Z=]Cg$+FH\&je#[/V57#'"[0)MW2Z4;`o?aqB8U^IL,eLCl>lf6:2=1=mk^O#2Wt*O&[-A3ND6"/ogV.DU*e!i* %B%ilnifs-#oj>;f6*_3:%=Xe!J/C8U%\HeYJ<+KsHq05NYfh7R[=Osa$1*>#M4f5#_).#I5k07-O7gWTBFQb?_-:lQ>PZi`GPYno %?t5FE!8;!-Dt^P,06mB)n9<JF[p=7YVUJ@@&8$)nYWM4=h2oe!bN'W"Y6">KFrPhApHSn2#H0oSecu?O#9@IHbd/[#r!d`?:0?k, %Rokm7%1+750JU#qm,f<n@=:I4='532_^k)UWT#GJg0F`F#q5Ma*0,/>W]V;F^UpVWIeTmAlMft9AVhG?Ig>0;o?@pkO1g[7p\)>G %^.":Cec]Js%R/UiI(eBds2#.mYO([I^iY*_s*AP&kFIJ*$D%=JS;c8i;umO3'*$GJIhX6N:AZN!QEW)!UdD_L$O$a6^\rU=^DlX6 %!Q*B7kH+94!1[afF]6HhJsSdgKB#+:^[fY;rre,go@3ml9AkF&&Roo@@YAl.g6Aj%=dcY,3Z(u^A(akR0JFA\E`X14%unC:F-<LA %@%OsH!O35G-J44nQ_dtbaq9)Ej*b1BGeHr=%#45p>s.A#^'>s5R'0a'3[C`k2WHo+J*RM($\5@5iEKs2#Y?QIQ!kQk@,X=gSaV7u %j*u%,NUMS7cd,t($:3gK9t\gi?o.[B3Qs3Mc,qTQCcE^<lQ#9+h;<o-88BaqmbhtkA=T(tpPL&UH$;rH>(F^aYC6Rm(PZ38U=ECk %-`u*)ph]jE1WC?H*e8k(CCP_sDn*Hnmh0osehCpKDnt6`XKMG0:&dCZq#13-04nb3Tac`op"t,47e2@"5\45DR[<K6s+D\nZ\_#6 %Q>sc.P^D:>J=;B?]T17V22mMf/=@L%\&]ag[[kq&F-8dOAqVN&i7Be)_cl*8*Ri3!MQ\]om!ED2kpS5"@D3"FXOf9,/Xo2fll.Fd %E&*kLW$PWsq%*ss7_e=GM?7m35h_gUmXoQe]jq%-(5j+M+VA@7alU9-_,3FpRL45bI'mWY/i1u`#,0gG(;bCfc\;j[W+fQI-?GPY %gJ,&W*%Y\8\7I"PMiAcNV1.k9*u5&jdr$)>F*;qE4"gjbW,loA!EJ('SKVprJm=3^]\HQrGj#OLgJc.h5dM>"4jZG"``&QcP9:e^ %#^^D"B^[VCVSa0cj#a@\59FJEq.Zc*pmp4jR.&.Z*BcsEq4KQ/+)BKf"!8n?R[!7@5,*ZZjOLhA^D,CZ0Q"?FHhdk.A*d)5J]en^ %1:UEk$orLQ$lQQ2-,;0@3+e4fL\BE<]BPL@c\m-sRU#.91@_'FF1cO[gq;?Eh.U&kp;N<WF<T8>I_DkuIRj,_d8YM$ptj(#QBdBa %ZEgj/];TTh8iu@HqpiShs0nh*b/0hfj!ADris)?0V:QEjSD/;4XQ;?=]g6OT+Cl_%gdWmL2`pC;$a71?[G7Y/3A8*bD7<-*bj+NH %<42E/bbpaVZ$#`J3\:5V-qLi3<;rq&)s$b=LMt:OAa-[%P*W9Ys#sMf,-fQ(\)6ftCg#:qeB?=Qqg?)E\b)NDhJ`?9\+rmHaK5t. %?cc1qp03ATgFn[+!NYc"gerHD\5E^,\^0U7QbqL]pnlp=%WFP6PZiJ%-b$XmHH!mT,nGloYE)ua[IR8MC[X\"C$jeur]Imdc.6ji %B`CP2qS.9\<GopVn`$&1['?$[M(?]b;<g00/$<2XMOiY4mE>I)[uFFhnU\I3PNA.b)k38YZ445A^APYCrj^i<I)^>1e,AA+Dn^D/ %nq67(j>Q_h`(3ST\9uBZ^K[aGafWI?XSR(Sorb=J_2F]L\+]UXa#ZF'YuTL">QWR-eW+r%Ep`Po@^Z=4jU\i[ku=SMWLeLB*Sf.R %\`2K.dT&<(b6,Q'hOUsZXVSO0aj&$&h7Cs<HD"]U^LOLAD.RPj;0&R>.Au&/VsV>k6:i,lH.f??r56rk.GNK[WC2rZI@NaB#EL\K %Fc"&Hk2Mt#^Q[E;:#jjf<V_/f0;cn<CbXg;fE9R8k*"KRjciTqH/16q\_>cmB`C/?,YX46%-&?EA7HD=<7i9Ei5&Rs+5],s:*#2F %jCk7Z7%aa=hiX.-j^0NF0E"P0?Esf#j[Na&\Y(c4:A'h'ogSki=?%bCSA5*bINI'I,I)iB;h&8l]N*[pjX36;=cffXa-G)fX/FtS %5:*r3neHMR'OTF9!9!RWWh-W1epQ3IcdtJ^\@-QW.4*[Q$oTH*)=7P"LV:oGEp'au_`"m(BT:e:ICPZJmgjog\)r:D%1X^/Y5;(; %W,pmej5Ma*/)RdFYJTnn:5Q%,k<pMFc0*>D$)h>cPq7%M7lRT@OL6=a6j09TS[ZEg5md6oLXU^SRXa&SM./B,]oD2Ir8f&bk;MY8 %6=Tb1P:a]Z%d!FYmo89s]gVBb3Vt3PCRL&KWPAKm?'I&+jYg"M%[cNs"h(k(.)*E\#O4eEi[h:i$<M*bSEt]23lYL-QIDh1mY);P %UN97j`:ET=FqQ(E[U(H5DEb^690I.jW]02N0MP^.KW9,R:-$4U9&eoQUJd7nL#dFM3?<rZqgr+]?7P'"X;7&mnKeL3%)7.WU.J#2 %kMBD$hm!&Zq#%kmk3Hs;b:plNg1Z"C3Rp8*.P#6+/q<Tc[L02YXanu[^B;6T+W<kM8n+0)P6eY>89k$0)QQ'c$s<2Vl^Lp^=ZrkC %a%I:?^ZGcYd8T.^]=rn44tg,$"aGOh][Zqn]?Bl6Y(r=e-Bs$3rGL9W;W%N)bH6ht'a%QNCJ8:84p@AP=m<YF54>-3*p)_)=U"kR %[AKRt'Q/fS+/Ks(3]n6s<LuB1_u0?!np@oM0?7Lb<tD-[^$,:UC"B*@@BEF[:'[Ru7(X/W?g5\'X5p%%p9NBb&pr#r:_jFMU%H;= %K]d#0:VZ[(]Vl47h61\Sl"`.hCO9A$$hQn6B(+DZ@kS2NW)@.Z5)X_aW"cNboT&IM3<:(S%CWfO&M!I51SMIi=e[N<kAhGQZ'L09 %m,QGD+;A'JfG6\tK5]Qp-+4`#,[;=KJnom>fJ[G3>ZBf.Injis0\R82"lFKSaBGlbdcTlO-A)bfLCcNfm+C/a6,L+Z?TWWc\"'pY %P,9ng/a!Nj*lt5p#T,Z[S"E3j-tfT+$aPn^$W3LoSJi(m1lQ%W3j#^<i^-f&dqs$XJ<L'TXIo/5%7]*KR6B-Z]pCE$TcL@Ek(q#m %N^&@O!&&eSiD15W[HEuq<u.c[!/ho6/7-,d]eW-Gi3;Sd4*q$oBYt#_'7_FJ>eA""N;5q13*0U";TADiT/A'Wa!QM<\/,NW:965' %iJ>u(+lUBi#".Bca8e+BV*Q!mg%21/4c*JNj@#H@[1SCX&9#6LoAPT`O<HuJ\Qsk*EAGgFd1aR?0*4@UKC*b2YG2B,90\j=4QsIX %(X2M;>hQiQNq.Mi;mRp3@;YHmf,r$$bH9YJ%1U]"csllP?8_AGrcDF*^#t\SH[EmG\1)'Ub#9M\L8o'loU8PA0LO)=*19[pj]$Mc %I]ojlq+ta/]"P'7Z=PXKF^3AW\FG9N:B'TA;(T0Qg\6u=G.)1'8DUeX<UpdHZ@9`YhT6SGgiCWU/`eTdj4/2@W8$073nrA-4Y;&1 %2Y,#@h8=PQIk/+sEm5!plTV^l[pYbW8V3^7s0;8YAo&0MYGKNJq97eG3X9>hSJ7kM@DaqJPVqr:2a9(>NTU),MRI(BfC-I[8F)%4 %4(QNLnp=a>ZRq*,"Uqi%h"m"38tUK^gR$ONT.9SQ>1CgbT8iG5bX%rFg;q7h5`bVk=gcRjHjPe3mqQdG.BU(o5+WW%/Gj,)Z`jlB %&nZIiD0kX[D9HYl\#I&"Y`ln)PFEUG_JQj*D6B-brI0XiS8<&$E92c%mX=>mTWA3G,aq-pS?Ppt29F\T)pm5*V]ot0"Kd1,cJ8[_ %:(01uLj^*KE8<N,<Bjq50RQYT!AA+`E\H`[?2$\5:"e/<FC0poK6IKheA?S&mB2h,2'+rB%m/oL(gUGahb_0pG7I6uleNS+FIEhD %Nil-:kM6kJrV16$E4(=1%g5s;nE$\[DJ.uI?&g-'U)3P4m/Pq\o#JG\0$a#li:tg@@,u>lA,n9,O*Q06+?b$),'NU@lY@M+dt_IT %qo4$A\shA5\6/sgIu>4O&qYTR_^NS$o4n/0A[B&"(NL<hSN4$Ujm:f(r)`(rG3^Y3m(pb#eNPef>uDmMD0bW!<cH=-\C*P7]P!8C %9Ti?^0[>)Y1kAhUHrsUQPeV^?Kp_k9=^u5^X0u@p4is6#M4:[n)\,W(c7b%8N!EGa7+2qcdd,`K?Kq&"W8f_*Y88iEb)PT9A?pT. %]k\70F]c?%5'JOIKBbNBI\5@JrtKH1U*Z?r9lAc&G0`A^-X9L=/#B,m3@>^aUDQ/-rK;6mYC3X:ghUUhnAH^Emr#_Dhd:`%be:H= %\9rMIQ%dr@S*B%h7][@hQ.J*UdB&/YqS&&O]8!_7Du/m<"A]>7`7Y.O=E7,]YuF]6pJcC]>qQYCN;0gkl9D+]7EdO5+1fr&0U]!e %:j:R>>JJi[JeKU0;Kd%9m>d4LPu:4GY4GihW04YN);6t!<BFt0qV:#k.XtJphNsk"h@P28ZeI0-@Pcp?Q0IV"]@B'/aj2Vg]C%S' %-HiO?`"iR3)XpLCSJ*s-=%\aClk-W?5./poD0l2SfrgQ4#n_tM="iqO:/`)b]?Ss_qGm4rj"R=][ClA*R]r209VEl(nQ\;\s+7NG %H%fO!^gg_Wo2pAUN05*<Edr=?WnufC8d>TD^5u[ioZ4NsH(QXEqTAASj_8Gj&^Zo3a!]^C/S35]l.l-_^CQf[6X2'uQ1(FZh_j,& %l(@R,1(`1(0@3g@G:@-NeD37G8!pG^qN^OT=A?FD?XI00H#XZa!Q]m;(uLdqT;6CS"87@/ajo-YO"Pb;1E4T5`Gpa>+;lCL12OG4 %=HMV:+-U_7&n[YknD#2?H:Ojc/2soE4V-6H@hK&k1W_'nq;_/=6#NIEZWW%f72/[Wgr@7N$#/IBG8pj6*9cJE0t4,Mml%27=<AEs %"qn?<6DOIKIf0BqF-%h82U5+hB.oi5"T!h.:6YPo=*3AplmUK9i_f6/[k)H-AZr?L+:ET0A?rQE"KUCD?=$A1%sWuBc#g<oWZHXp %U3m+Nj!9q;CKTf7ZSu&M/8@fi/LhVACg@/Fr,T@>Ok\[ZPsC">B][uLo6-o[8Ok1%MnhcPf:4n_Y,_<,6`C\mI,'!jdG?daMu:QG %+M"n0CRJgZqFA8)c`?oq.k%1X^\koJiG`TK+I8ic7/UKPlZcVD[o:2gF,of"IYXS9ZFm/eI]8j=J!c&G:$4,>Y2;O"]\WaYMI.2E %/_Z!4rqQUbH]@0:G$5p,UoV7UXkA'/nJ\^6g-:O3O]XJA?5%26h`;<Ygtl=Ze*&fLVpi2u&bl+.]lLj;hb;jBVY%@pV-`Cos5da7 %lWt4ZoHKgFht&4>g\2i2c@>/pL8h&?Eog>;RkK0gCO_9SWo_PkF4pJrri-\D1O#LZi_Ru^_;;&N2,bbnEDXbd+6L>2EA1YBD/OdO %JbjRIAU-!Le,TA'c;:Q*ULVcH(i4K-Z55BRIFe#1(V>t1=a00\0CNa7ksW\Y!&>*R@[k!+Vo!%T3S"8\OBYSJQ^VB[R"'@_'R)GL %)_[XlOCC$6E!R#>28Gj,^$>XoX4Q47@&IpdE3iR?^@:'ce\$4BZ<qq"Qbei0H.j/Af$[&phL4&"T.II39+UJM94"qE`q/BA;q5N: %Q!sZ>WOST#hHg#XCfX_l0V%DRH]j[YKKfgXZ_N-'e^!9fn6F^!*B_ij9"]MngH4`s08sd%)lAF2Y]p3""mVHHGH*jtg:#R_)$]?R %hVRo\\e:X3cK=.rrcB`=M$F/VBI*+g07?^'hQXOHLV!kqnG1aaAjME=fkA_L!(KBVoO=Z(p\!B26Z1Flcl+,Ylp:WWd2>[$!KGWa %V:>$2RlhnaLH^/W5lF3UJo-g=EbeNt!8`P*Sad2E61nmbX@>^*)_YPK/)Z]l;t:/PkMImcO7`9Wks[7<5WWNjT"8rQ.r8IUPK0`G %_Pd6t%dLNO==Ls(/Ao\sN7Z9]o:'f.jYf=R#qp<@Fh'<RS&'@kVo@p4M=f8i`U_lJI29gp/&/b-H"GbppsQV'"UXe(\CN6ZB$-a" %J,`8aV7lTeYd>L5=-03OEgQI4#3(MRCs=+E%''UjE_*g?f3`7pJOh44\YiK)f_XUp6?`BQkUU0gZ1W:P<F7t:D#RJ,+,)?Jn;]IP %pY5UkZhM<<1r<;V@SG_Jf$B4DV84`uLr.0JEp:;;afk'o2Kt&s4'+cCq^'V7"V#!L\jX0=3Cp#XPX)[jo^ZYPfp/]:dX'LH)`p#C %h7Q.V7r%*@g;g8[23@`KhtL8b]m78Rf;aHH9/S]02nh5OTAP1"O*99d"*#oa:ju3dXo[Aq.?%JsoA''=Q]5<FWB)^QZBLPa,drt2 %^M,B%W`m*dlM$qrnlMYhH0%3HI61cA>`Or.1?HtU0JR!J+JMOH+D"c)]A*7_jA0g#QhA84Dq>lc<0SJ25:a.!NK;NAHa]bgMWIV/ %p1:Ei$L(ESF0JQf/!V)5Cui!GAe?&ZWd2I,Ei[c`GI*R_Dk<LEs#UD7Z3iSec6&dgSg\u&Co.XBk8NkJpPFd3D.RHAL-8fnaGENt %gg2Xbs)S%G8PeSMPb-Kn._4))I0@.iPY]WJp.s\c(:Q[[D\Z;3CZX&5+U[ZF(.oFJ2H.Bbn*o&bI]7VK3<KcGh?E6)k,J)K(>t!_ %HltX?%Q!]aP9?YN96dVM;gMU&=TLM['^SIRN=RQ0]uDBam,Fh3-&S\?q"Q?P:o^lEIGr2XpNYfjk9\I(H`X*Iqi1PY=h/tZ0"l?K %Oqbkh@i);0[#KiuKmNDNdsK:\ga4icqkO>:Xl%)fm<D^6lXFUYU[jY\>^+D)N.V%X^"`d:R(dPPg1[!hnEha,T\d8Kf+@c<Sl3gW %Ig0$d]jCsuP'SFhEj3!dhmbeUp?r9AT7VWB=BVcG._B(hQ5X/5Bja]cYEgu@rT',XTD<Q<>])DtD2_Ze(i<W</!1Ymri,P,h/57T %0+Vf8j"^Lj%`B$ZOnK,1k]A',c$(YE4B`^D7uZUicl"=3hg9L[o^M]"0K[Z!l5;^Br(.k&msPj-m*IuYb"B(mZgs/4d1uUX;>/mS %Q$W;h<[^JeL$[Q<]<SHP?M.a/]6MG#JM4`-moIWR[FS-1>>BZH$onraUW#)3S;o8l#]D>a<=D:8Gk(fOO"/VK\SiejGVeGUX/bh% %>ur[0R=/SX=Ne:ldWm,QjoD]fU9I,2HkrF25^SE%[U!oX/q(O,T!u9(b'B$Hgt$\9s&flNJgP4TKt_F`e'F:3V-;PYgO8?$qu,oa %Aj4a,g<Uf'K5GILo.!]'hFa-rrr"DR536YCVI%ruDmagD'#"BkM,S+2/n;8nRH:`r6UBEg?/H3;lGE[j,h3D6Cc-`DDRN&2L#ggQ %neOrU]3E[)G4c:)cGsNRf&7.6WOIB?OVfuU11Et5+'ZFG0u;U@h!QIHHa)T004W+`Z\%`5H%1VCP0"3p+8C!8)s[S&)ebN*\e*J3 %Q9e<T=*WH8Z*gP0rSU\.RC1r5Fu?iT%>;Qk3NQ6rY;V\Qi6U[9]R*R4pKS[0q\t1Brklat0pe0Nj0VjU'P:e&<r%+,qQ6(SSFkdJ %Yj4BM,5fVRr?cCT+1''>R)M(f1$MOYZ#nCjXEdN$=F*pRIZs2;T;pe8Y"<UKRT<$c-T>5LLL-2<J"P?QCU).JZe)!XL"k;QR8d<m %ei$iVU1B=u8iQKLV-Z.Sh!&:E[iRV[5<SP-[(=bh\L'3/Kr//3Y=XLu!5@[S[tK1"1bf3klJe'GPD?4.Ra`@ql2!/ChjF+JFk)1G %WNK8dBi8?7B%]3/6iZ,NH0-pIqNH<SIa)&[7Uif?+4Km-hauAbbPA14Umob"J$>LaGY`X[5/JiTrJp8fYe#8#qb/KS,utDEWqW;e %iZYkCnR^H(AIVjGD9,@7b3u%UUg3$>[,<a>Z4rK[H,jRGRjXli9"/.$h!8ElH#'8-H+WR9[!J`XqLNj7,ot7CYt<.5*u1G'4+J+\ %K@O4a!5(3Jl0d#er3Ou7?rFDqT!YqMoO(@=PE*7u)MtG6-?Ersle(N?JZF3iWnrs-/cKLmS!N1sl1&D!f:!ECigf]bo@$A.9R<&d %c>,YZhNK":O0qSk-gEQ<i2+0^^?<,[o0]ARlo/X8]At#Umn%<ZV0`#QD1a/]SaY4sjl=q-GLFZZkGdW'kok89hC3\D)Mu;;jlBE: %lPD\bI%.-#qG-m*Z!JsU9R<m]%uo`t9o:dig?[/*qo=$L.-3JRj5]frn"edb:AiXXdRXeE4li3X[?<J!.i8-Cp$d(LCXR\3.(s.b %g(Y2QVFg&gAW\=!`;%@3Yj.HFlht1qaPiqoYt:"ci]iLclPrU0eTX`V>jpOFN(H8+2/?*OaZ+/(j_g3[EhRHiml:Qi)-9#5X5]r> %ELhE??N(^!:12N0cjeiPq-Sk'7D-R^.@2GfD'odl,VH8:&"KAuPMFTHmVpV@pnUMuEU.4\(FIt!>*HfSA4[)]j#=EuSb:Hj$c)eR %>NHARl-;`"jod=[p>9)@F=NYS-Umo2@JCQPf"[]/FYWmnG9n`I^O"a4V$&Ks[bUD"g';(HI(,\.V589T_Nd'@bO#%l/TA>@eT.BL %:WEY:m1*2ZgQB.?&gcGt\Q\kqnU%mh*Cd4h^SbZ2\@$PCp[j;(07F<=LlFX696'-]92WI%)6TPmN;Gc'\VoZI`d6pu02\nP)c_m\ %j-"/D]=`r;Z);ItPOA.TbLcBHf2I:R?&cI"f(4?/+)t@S\`ie[KY(Mf+8h`0iuY@Af1_![4hk(/LOUs+^Sa-eGd/Fg4j@tBb*-^+ %Fj\i?T?jSZa?FN$ik57A*;Vd70(FX\a,2OgRcjUbl/KG'gT<)XoHCmE4DcJ@RstYnhG<7Rn+t&dnCA+Z_Vc]NRb0j!Vo%_BI+S0N %+3j07[b4Tgj:d9?d7n?TTCim@<_T]fffcQa]:LQq#=hJS1&jp>SY9"4!8Vc)?EU3b>jh*d>^!V\XOMID)tG:J\)kk."C&E/Z&iZ7 %MhUL`ddFk5a$+K+,+Hn:o9-UUXrp:roQ0FOad50?^/ql3f(C\:`Z5?*QV@kbLJ-=pX_%XEBX'\H:=i8]!k5omXDXT)R2S@Ua!Tp8 %PKIh-kB(!n,$nqdl/nG3opg-/da%\a8q)fHUgVo.T@:%!A+mT.2pVMg<n"Wsde:i+Ou4[ks.`.SRZtH1"2JUKDjZ_h590`1N8#_F %cBkY)_&q_o^6=`QDmRJPf3Zl$^\==!]".F''YsSl\0d3Rli77Uhfhu*rnDmcG5N`<N_Zbup6]p)A5i7sWpQNTn`2XnW=,Vd=S@/W %4_60pIMnBa5)+LSIN'I,0rqJnC.'Lj_YQ!$+k.3=5fgdOQ!a$f=7;$A#YF'X5W0Sq/gbBdNmI6p$U-HEkK`Ls"1/Z=4ZbSc-bjYO %ZdB[dOciL@]"#DI'd'b+7,5KrMpXbFcmu^?CeSe1>"o<O^C#+'`L\9YD7t78!Y$Y7j.F?!c!iTJAL?G(kIV@6IMc%$gDqj`;c$uD %5H2OQK8o,RRGulQ!RP6%!C/a-$e`!a.>Ij&61/]=_+ULT9Y^?R.TK6KIggSm?BN$%"Slsia<NDIo#;0]YP-c/8TaP&kasXIrYut$ %@1_ed6SAl%nb;[fAhK\N1g^(FN_h9qEL=ibo\&+k1'E"p*5Dmu/G0fg2tt21]mA.s%qT`6r8N\>GNA_U+[;E6!p;s<!/p^VY^4U9 %eT7VR&jA!jWooaW7!DRe*jk`O)cbW([U?jEoH[In0"k\;P8XY/`m?C2Nr_<LS9huRI"*%,'AMAKaW)61Y(TjTT_?F.V3bFk)r\a: %C<SnJ@AaDQ:knA/HqiJJ$JUiR(FQaXQFY<!j6EhXl<,$WEM_knl.(D$Q`][@;^iZ;!XUF!0E-KIo%2;pB6]Or-tbribWkWpjD&c* %LV]K1TC7bZ>uUN,rl^r0Y(As84^Un2.F7H4fQr=PO]7588ARbaGk`j1N4/&):Ai.73X\<INqC%qLJB;^(bA[C)b[K?/*XYum\Q;] %1X9@I[s<AdAVC;]7/@cgabSHF?.%o+\#^#hH=0h+"$a33/4Q`"$a:L#r)VWOeZG-hY\X!PTR4;n2jRNhk?pH$kY[7a*@JKX?u7d] %'1o?4'ahGH^A!d[X209:IdpdpP-;$q:`#'T_r_2[IOk^B(/(@kk@)^T&.=%T(U1DEj67a=1"afY]a+Gd\X\eflqqP.0W.7*D(mlt %bNdFHg`Yadli%0pQhC.@g`V>,D<AZn\<\"f)/fIVN[p62,UO5.++;,T1tM3_Y-0>mM2f%Yh?nQF:KVd-3]:kK_;rbUouH&s\8iD3 %5Rmj0Cs5aOpd.JUhDhHfEg-S_7N?#V4lP3\:HJnko9>XgPAN43hd.W9"iisBrI%pCGd#)1+X8FDq(FP>6jUC9)d^ON'$U&ecZ&j' %><r_-#KW1EqTd83Vdi;2P*,Q0R[.K<ZXG`kp-8sAb(1-;f*"9'%H1ab4X$a9EJY2j#5P_eam9::P2/c_71GUG+oq=A!l3.>%jM)R %m=c8TOU7-qiF/*YSOR(8/rB3.:r3?>_+h=l/aoRjSTnkiY8.%:>l1:dX6GK+/Mog5]Pi)WD@CDamsk<F/-6RQAP*^K!1#9jHg&Ul %?o_@P1X=ueqo%L.:0M1U!h\\>\@fPc3)qNGJt8_g^\.d-]P3mn*M.rk-:^TRLLah/r+aldq+CXiI<"GUIQ5Fk%LR-1bPDb4ngaeD %*.HJf50S'#%C)TtbR7W5g2Yfse&Ql[q#+RDLTsME)$(sXMY4Mi+?gC,rP3Z;QRK(,)BpoF0tjoB13=D_im'tD6nm$GPd^@`GMk<T %B7\ma"X!>>%EpT0,!9gK_VPu8=+e6bdQ;Ct_V)B+Q(Y7=cGZWB9%H>ab0Q-o,I%5@?U'N22;`3hMFjLNI=VIX?qf=7K-_-;0J5fW %$()i>f$sR&*N,q/JPIUtFqnUq>.'B")'p)m2'*ss4kYP&55.+/nFH>UA)>b"YN`IN-j&ilfPL(YYG!/F5;OB:%3J1h#LY)2/J8!j %`EUtjXSnE*BU#=E.-C@)']Z!d?]Fq6M8i+_(]3sSHSe\KP][T+U`tp<[l:MVed6tCO1Bs6k]e'U2Hej(6MautZ@G:amk_]*m`4kG %?4fMp7+of1+Gg;_Mk"1>Ht:J'Xm7,=\I]D@_NJS]GR5VB0"YO<g>iN%%e`t\2Y&A,YW57]_1suThT(9D)'mTHNK%R8bTbGR'Uo5F %S;U*':+#=Br6J\`S?/nuT7-#P[nJ:B[KZ"pCID;\kYT?DFI;a.;N+!sK2p:Y=W<9Y@quoL9KmtY_Lk!I+_7q!-X137Qb`p;^-^E: %HliQ^g8amS(ZmpVT"Tjn1H2uY^3!lu4!W=X[&+^pJq<kbS+^Y45A/7Zm?p)^C_!it6A"6N9g&hq6T3GM#t*j9"_trp@Q!E$KoO'? %c)5PLXf'^(=(/FrJil6hZ/u_E,"dU+k%3H-s*3cpNu2[eU%+$S@P6WH=C^l?%U'91EM$@X3mJ^#LhIcG0"^+Krr1-q&.t3<N$hE) %%G0VhQSuc?Il"m3#9,uK_F![FTi.ei1^r$MpIQR3bhjRdJC7mt^XG,\'en*c0!T.2ba5f0P!9A!5P7BH\dj&VLR9h=k7TIoR@YTq %bssHp#DTB!7?"N56S0c57>rsf&[uj2-D>C,PBJCPZ-8%Re<2?FlM;hu0nm_S4*I^k/a=Duok,pr;CQ3?IA9rND/ldVWl=#b``Xa, %$oTa_0&/"\KS_('SdgWeEanUArCl"%fpdVejBF]7pb'[G>LK8D"2ggR<@rX=ALgPlhO]FP"84I8j1"=:A`KbseG_%$o]=k<V7q@U %p8XeoY+Ti?IC%MOg$=1./*O(<2uKe40"?Ln:93PS6Piunk>NrlFU_V3Y_$al/bm@)3hK!'$9Cg`riLo-\:W#+(AqAGSc>Kf60DH( %3+WP)E!;dGqm4o$"]s'1lM1?\6Piuna!)dYYFu?,TX116a!Wp2G9sG'QQVpFVuuV3JNm<5#u5XM]qeME^s<Z!CF<),TJOOIQZ?iI %PPl^$G9s0c3uLfmOku;Pk^;=L$o*%h.><J>9@8g`R5l6>o?/`BAU'5WS^@#i2&,>B@,_U.^OWo+OU^@'U$n^&eeE?^BtX#aI@)f& %ke9]Y*4ZE,P>g%c.[_7!;[Q%!O6*?=6%#\JbP0&k%eir%+CtluLPYSW#TH!oK0@pZR!9?^m=&cT)s/5DVbBW4FpjWF183@F04#V^ %dYl(^TatC5+XUFLCH4d<aM\/c!/j>sLuhcmE^]8H3NF#!I2Z_h3sKcV1GjfgbD:*@MnS=:UeGY5^VMl8?"2MiHs2JRAn$HB13G?Z %-+JI;cc)dNm4eqs9HQ685g1**6sDV3%$OX&0]`l.7#2MWFu;Ok3U4C,<e4u&3S*^`rW[/6C$PI?fj8IfTTs"YNZ@iEXc@<39F+SN %;488b"+P^\;53;^)`9&LI[W;]s6t;9r)n/iQg$^F2B"(*)TkG9LEFb?`8!6"W+mG_YR0t\dm8qb+2lsfrdTNepc"!h"2F19OcED= %fA0$,]#/=ehY/b/G:+3oR`mt#>0a>J.Dud]":jr[+/8>rFna5-hT/S5mS)\ZdrtGaU=r`V*[!4`M!]aLM]`#KILnf)4K3dQ,)0>M %,@:4XACUC?\4pMcM84)no?RDsaec7XOYE1.\05RTBRnipFSM+_nP\7U7g]cZfARE]VCs6Jnsh1G0gg5V]p?_$Y523fKa[@&YfHb1 %c%k<k8h6+mZ#F[Q$LbK\1_L0"Vs2&[^6'q\g,T+'6bnl)+u2';0/Qt?,u#&8$*LM%.O#P1Urdb_!H<'KA@@6\L^]Rp:!/%t(QnOI %%hXqlPbf]ZYK*"0*0F[7nbp!EnpToO+bL'/-H2kn4Li\T^\7[KO[5ML+u6TjOf?LM-6.WL+u5b_qtou@aC'.^WC-hE\gNi5,BQ6d %k6,I/Vm2a42jSdq_0)[l7iN%/5@aNIn)"T/=[.m?b#A]5BS\_dWdj8H,W8@nk?u<uL,gY"2OBe$q:Jg7Jm6!CX/h``]4'a_@T6Df %LDn7$/`C6km(n=9,pZ-4ED'AQSUV2m,57,WD+4pLA`Tlg,Sf#[&48EGGC;ZAn+BDVLPnii;`Ab\SB';5$o[R#\=#-PVlGL[aAAF; %4l"pF;T%#%Kru3h;a$XFNnGoAk$8L1bIOY!=K:>rL@0@I]9b?sWCH)t\;4cdS/X,2XbRimnu)`m/)mG/LRW8JCTeQOZW9Bbk.,,O %]iaKg8/Q/03NW[>oIXbF03[:Ar[0a*<.(6l3jB$p<OrI,#s!:$:nP-$52i>XSF6!M]CIl>VlSmiR.4CVSt8A*p`%!lapD<H85\^? %2)cJ?mu,!^%$u>BBHSY/ATc:#=Z)le_hdo>8kiXj$,noRT9XEJ=A@s3HK*F!Z!hro*(pM!nMO\mkAP0MNaa^$?bY>^j+R!"K>2Or %j+KAYI1:NM@4oSa0f/'0;aK(GYWl1tbGZ3blV[sKe6%?Fk#oDPSK,81B1;+9r$kUJk#7Cgs"g"!<.6PbQ\n`ZB+>ZU36F?5;K84P %<2="%>.DmDHWRC2&SCjj?DjN]1R?g4ps^BYm_cIF'Dd.-4<,;p/VS7\1#H`:5F0/HUSCr+p:jH3(\f$G\Wt$c3_B6j.@f4t*)@iJ %="0YVQDm&H5@#^C,g7&tAh/SA)2@4cqO3/`6%FGC`>@L$7_Wkl;#"sOFW^$)+c`,-L!6R6_1$usIr+(R1H+Y75fUWp+l'J%2U%0X %,Ju;Y0!GtsnH0blYA"/gSJR!*2F-C"-jSY5Bu-NKhtiqIY0KiRp6t^WIG;YL55SpMnZuelD?n4o_/%H*Q@=^o*Gk5m<9`a!R_!l/ %O/AN&p#oRBYMcStlrT.C&"[>(P-.#K6QL#d5O;$$cWZjXDXi6d\!&@ULTt!)B&(?c=C(@K00jXq]>^8_B-0<[B8QMYlf&u7:;-*G %Ft4u]5*IHhNj:'WZ.ibrKj?PcHgT@n$b>!+),9D!`<s,cD);%HXKcf2J=YiJCm2Gfh)7GMNdN1=hpugLCH]E>46blSW7^L&o:;,H %4RDoGfYp%[QVIJe]10T3<GpW:df/0IJ&sRI]tuCJ^SG-0!B:h$e%HJ4:6Ai21d1dmZ*,2H[Y&oFrJm4*@JVPsDag4bO?Pi)^J>sF %.WX>9Qm$3"0"d[2]@:Qa\'ub&gq#&hPEdeFR_1GJb+bXef$X,;_bRA58Vh_pEl"A_%^RF(;dOr;V..0rag#lhk&llX=*2RYVS!3o %ab<.=lJcnG<rr&i9tYJaQ.PcN9B>GYEXZOR.mmPc(OCSV%jH@J#Mt`5+0[tRHFWF,=EHB5;%o-B6S+(ijeVe6_S`?"h0U_fFL.ce %]'BdTFC$K)<M[p>Ra).IF0;D3Z:=f]igdEFc>.3*?e+pm24[f#SaUjcbggf6<Be]59kQiB.,+TcW3ph,SX8qVUZ=F8dnS&<SkCr3 %T15Dj2-lTJp"uh7]P?\E06=7m$cq_'@l<(%q6[2RFlG2Wds:2=d<?>f<__a'>!5YMs&;_U=HZNSB8_eqWLD,5QB"sdbd3b`$\-Gm %ml[W7]P?^/DZ-'<RVq7$hPmO>6I])^Tpj9-QL=2QRrESsF:\gc:$2tjGurI?*MY=15L4(*Y5oiPGurI?n[9/QSQ@\>="R^nQRMcd %Qr$N?21SWBbbLWPX-V%ZkMtI#l+Ccq*5"M&C-&Qh)kX=\pk!!:#LN-t6g'29YGQ@ma`IN\X%7@oJEqimigk>9e&63;gk@;To=LmJ %\&QM<]%EKo=/?<&rjSF9\(,b-(Os$"cKg(fYkKJ<^99/fB$GKO[Q!I%b0Y*RF0"a9?e"W'g>mToD+b5W[g[7V?.^I.m#L!sBZ%^/ %T:%jWEY\YQM7:fW/nnS-^nR&27&KSA,3#p-OgY*1ZhDZ*&WPrqKaED-??8&*2Uot&gj.DaN*gZc<Bd-eCW85UIu.Ha^ZLPV%8=:q %mLR,NG0Sj8o92OIEu,-_@JJGimdO8SM&5!%r0XVd20Wq1%[D`-oegqlHl!:b_U=C]@+-b6F/uY2*OmSWr+\Yf'XY'9cCpQe+B0u5 %UnYmX4oJTf2<$_l7WW*\+l/bhn9YE#\oK^E9WgtqG7b$G8"Gch=U`k];%t*rPjrY&fbL'q;X-*14Kgf8[]iDFa+e6PL*E+:?J/.S %rVtJ3Ff]ug1\5&7I;feqa;PRDcEoI:?I_h*cCaQKAYY4Uh^nLI:4LZ%^cdPG.BGBh$]Hs]`sQV^FXEV)KeN?"fAXTs=&-3nE3M3, %@HMpcKQ$#0q0+5`g>0iGo=e:M%e\rYOY4(:?-(r.rKR3FG87>)COS2Z?Hi!F_i#Bs&E)RHbO1uUWhsR`]F#OR]jh>gRD+bkr!iuN %B--`98b^iCB,rAXC+VrYC1K(=!eUXNh_UelK'bG@L=#YGH6VAr<o6",VC_*)1$<C6,[oAFL)]Q.n#\M9\GN&d1iBi#Hf\b))t$&K %PkX?e,4h\E5I4eV%<kb-PW.V3G946;3:=;GC+rj!kbrfZDR^Y#mr^7>(6kV(Tj`+)#0,JPP'"mkRIo<4*%Y&@CnR2+`qa$sl-HL? %5eH&ZHSK[)j0XNJUKF.8SA,lk?Fa<Vs*GA+Nt_L;<W:G;.e(&hdhOUrQRCV221MZFpIMD8;VoA]YQ>3SL/7c`qT:80R#Hp,BoA>a %@_NRc:&j_=<,Oc`ln(W:@#/>E>h;IoXpf:VfCec)9YPu;;a8cUk^n_[f&IXrZ[R4M\f+XP;IC*#m<dk:CL!?=-a(r7BGa4Uf=2U! %gV82:1>tDXc[4RKQ=oC9Ub13pY;NI:=Q$*V*&c$:)V=+ZqWf4$+Z=+\EZC9=)->A($oP1HJL\uGoc.^D+Xt943LCD'Mgr4t_f*ls %$lmb$rOssj2N%/#oc(""X5cFTBX3oVa0NE'eb3RmR_EV0O]Pf21O_>Ve+s/1f!k7Ko,b>/@9rW<k&,/b'([]mli0.]dWX>`??<S) %]_^MFkIOk.nD^AZ]+(e=qoAS/b#Mc.c@%("`)c[3Vj:]W?T[Hm[_fRl;J0^t@-Oe'X+s'FF9$R_BDH>M='%Oi_S6?e^q8]XiuDIA %U2tdkJ'-41fpD3l=+p;Z<"CpL*-SWgp90p2^@[t<[1cX!r/0u!^6;#q0Pt[WGH^t]`HKaTdV/%l?$G56URT`]0*;ZG=JC&prX.%/ %nbE"S4gCWbo^c2!5'HTT:(nU1jYqh[$oNla484#ed:l'\ia62qZgujpM'MonMl#]dj2=].e`/LMY2kj+3SQ,t-`[uS&<ga[ABi`g %^FN$F>33LE0R')F;4P&JWY54eT("\FPX;0Hq1`rr*oC7;]$r3:3&uuR5?4P^q)VU+<i&O#mpMZW]S<._*tC1tSlXeK4R[LacQ3KE %ELSFN$^TjX`OR]X*BibPMOD*PnB6Q9@dBu0DEL#3.BX<Dip*d2<K,W2cBRl>5"Bs`Eo6gPHSn^sr\E,mN^^fG^u`+so%^$R9rW+H %]6VH)VM^FC(#VbUf$:?9X9/<8A/T._h&ku'b8h#sQmk8QkT>R/qrVUHN0!WO<o<=$5CU&i'RhB_EPk>77V.$4E`63O?;`'@WAhg" %BDpJJa1%]B=90M]%hZ*g`Df%.*_I:4[5..Mj34LZ<Qf:Or6!]7f<S,XgZV,8E2A'u^2ku.NE(%gmi;,['Y!:0dZi=m@nFsbB2BbE %TofFL!M/e1[Sfl+PhOZE\))cjjm7>Zl*rj6.0c8@h.7[c1igB>'5u8)[4]B*%Q9a;_eq4t/Pl/X-CnC:"gNpYktD2aJ:b/5Ea`>@ %d(]e3EFLeh7hhg)E:b06RAp8)ec8IL`[=^d>(?p^!LtL.4St+a,>+Q,$IH&4J/Z5n>Km"Qns:<g7^\sH<<:ef6!t/[=I"k!3<!rn %*_H@!WrP:@jB4D%mj!Ue!q`]j0"c@]p6_oMi.']`53k\Hs3444Jtd5U]9LW#$9-R0q')Md`e7O45kAOa,k6BE;Ej8l8cN"]nqHk) %g)Ma,Rud_:Vb?jLrlW[Y&!uiIQdkQd?7(kWCd!tSK*1Q7$heU.HlFQb]mc.q\`Rn8+04Ikhm];ln+E/*gNLS`rISt\S*A[(*r#L7 %Dob!E48ljASnOS9\"W0_q?<db9["IdH*:RoY*;Xaromb(5_K#C*qtTO]mc/S8mrb<i-YESo9gT/eqMfGolG#qI?E7mED+W)rIX:_ %lZS"cme-1O\sl'AWp=!+@)`YUYFNet+/>:C\Wn94hWd&qrlT3Sq?:qGpo:^9>S#c(CLH:OrOg]mBtHT/F#9IT?-F&C5/,CO^qmMV %c07F+$,rO1n)KmVY@$cI7a9#Hn+C`Sa^(J#/M3m8f5JSfT""R,^Hj^B]mdfZ.4d[VpNujT]#t2?-=6[tY@$e$IV-RG?gmZo8u90o %pDL!Z-LBF/NpsJ/Vn^h:pf>-in35[o(Zr+$n+ZY^O(-qcp\26(s',H!^Q3<!bIQHZ*96eic!L-PI@8dc)r8up4Ts[-kO6/ZGH]o] %X4"l?lPFB_O",n`Gd!`\?#FS##&E#c?GGa,nQG;Qo,6Yqqe,BJI]m,J-mA$=RtV;WUC`DZLk(12-Lnk$Dl,2QGhhVO%(t,/r+%(W %fY[Ah^T"9^k&l*Wm8cHdb5,i@oaA3r-@W?OjLp#9mc+[PLE#@s4hk[][.j+8(;V!&O71EP[.:`W:N1W-Zet*3EN0`4gZd2DlPCPm %1*c:<^":T2k/fuKrUF2Yf-Xd@]>o,uB"HSIfPQ\nl!D-_dnC_!rcG?9"-[6(q??\[5(^uL?GBXL#H,2c0A%sh?IIa"oa<M`Rfgn! %S]AEmgOZj1O_6D(Hi8OlCrdNe_nCMM#A.(D4-t<m[KCI@F.O]&I]oANUsneU/[O:!kJ&99bP/^;GPXs>4(IH4eE4nPE\<boL'\qV %j^'RjZgQ0m[(2UXRA3<jqBb"1aqc#ie8rU5!')Dqb9(icjZ3-R#6L.sN(T`]Mr-r*T&sG#CJUL1^V>3jT$%U&p[c%@FY9b50:&OE %<`<EY:]7*:O2gUO.o?]Y79:RThkHO@J,/0Fp5bg#gc2o;f&&^'>e0bcbE`+(f=B&?Bo/m4heQKi<)7SC]qZsXp@\"!*Ii7h\FW'b %kN[E_Qe]R<m=i15L<,XHO'BBS<VeJrh52e;gd?/QR!X4nIc6mD`$+k+?E\CqL[iiB^L,:[#P[&6r\+;"g&HKKie(6R"V$'i+]`ch %VVg.?a1Fk<9CDB0p,0Fi'"^>1ei#_.lAM4'=8,eQ5%9G.HM/c$o\#,h8c$SLoA=\)F3Q6>N;f]#da9kEKU'74/+n4I>OJklmA0%s %5n(EU5[)#S"p6D)X[U]m)p*7,UiDIRHGKhglOna.pP4+PHqa208*Qi<:2q$uELkl!=*%WCE)>IB0<KZ*H@5?B=F*r8=M#J/k1fka %-b$IX4"a`_MIK<>.9F5_TBM_./plAF\[]aj+1(Cc:2'/N/)G$qR\bF%O?dW`6kc%[;DaqM]u5f_;KTIFAYZ4m/r+<@dH'QO;'^mM %[n$4,-^r>=m:beSH8iG/ZNPVlr+H:/=+9\P>tC^F>isXqr'p4iOl^Ra:UuHgZqncBP_DI6I\$6.eEcEYr4;e\ir!'T@kg>hMp(tK %OQ5>g/H(Dl0lHpcf3*`MFqa5RcBm(R,lX2gr`kM^n^"T4B2(,c!%BTQ[m#7_S42;pnmC5,+Fe?Qo`.ltW#H-#<YO$dq[U'DP-tUT %jl2U%TU<//#_h#k*I<7BD!tr;7pp\Wk08+1q9agb5ZmB:b>u+'X>]t"eRH\p^c$7V013<+[0EYt4pg7#-%q&i^L)5-`m^R>c:&HH %4NU`95EUd.D3YfY=T]VT;]oe+JkuPP>15_V*<TbHNjBR*:6D^W=b_Y=)Kq)`-[Tk]Ae33P7!Q<Ri*Y2C_P]tm+S3Q`De^%qT$:E0 %!V+<L\s.&JY,oBeY?k0dbL/To-(F"`ea$/Gj6Cbp-Id-9D?^O8)Di'70rug4C"UA<G,f?.8oD%80C?0,CFWbBf=X\sFWjm[`I9?- %h7YrpnbKO+M%Q^QVhR#06GlQ3c/UV^.g5oR^Z!Ls/?o3Q]&rd"D(bq)mW`@BAt+ju[_=*hes[&1IZ:'/L(5cgPoe;9>l]iYEs_rP %M8/cST,lj<Ooq\UhQaNiE8R:W?,<Y^%=\FI['>VNc5Q3s.,4>Ng-(9$r-gZ<=&e<q#]]%-go*=]mLG?G1W[j]G0so7n:<%6]5%Up %o8?bFPeKcl7rP4tC`r2!\H$Kc%%8Qqba4'6&gKJ@Y%54u,9Rjti^:"*B`iT\MPCcUiS*hs]#i"Y[#I%PIU(begN"a;YpHb+c@2F[ %P-G=LLI(O,n@A="iD[E6=5)QuEoZ]j>]5?X&.1PP""5CTP(Y^U#qoF1BYdlNh;7F"l(1;gZ9(Ngrjh#D?c\a.DOm-K>W_XblM%bk %.o%%<N02?ek!2dfTic5*Q2sHlGeNR>3Q1OA!5HdB+&IF?0>"lBj]:#XA9UjcFR/)41`-E5NXm6TeOhbJp*&L7`BAa]G@qA(DVcgY %R#:qX,Tqa8.Sm*3iiA^rKuWrRj"#mASM8b95ANaCa'o\O-R[*(f=Qj>[KGqgqlj_[qnLHbEB5]nDL_^\<nK>T:^>F$7""1cdq68@ %A[Ul?&Z*>>kbAE.$a[Q\h/J=r>\)F)NUt=)E>("Jd^"1b3:a_rfXLtq!Q.)Q@9=[\k%pXA/_$ZE7K%gOr-ckI[LL26UKqZkluPt_ %lZQQ:SJi*bgY,q?Cmqff3q'A<l%0OO*XuNr8XgZ+B;U*A\AebH*k+<@R%Q>+>'2+1VDSq$B7(:7maR"s=@B[G@/0Wc7!A4aO3nLL %p*!V[LL*@#cB;u_G77m7-gnSR2?\I<mk8ILHK5ZQB,ZB@4T[nUHO8I3]9m&TL^+a`gHe"uL:/L8g^`)3&Zsm<*U9C1L>9?9=Y#/. %`^ZId0l2XXa`4qhoB'_dDeHff.[F':qcot(3;*9.$%U:^M]*Ya#VQ_+omId<G:mVfCGkae*Fd='j$pCg"K0*G^M!G-`[7G`D"Xm' %b-l150/!A!rj7-koNhUrMWT#0_Xq.9g&+eF$.F5-OkB;T_Xq.9Gns?T$.F5-#dJ+BK^$/QMY'[.-VWtT6t4XB$.F5-`Z5W>p^%*3 %FX0.E]6sY%GR[>`k-6i\pIW4I8*=@&E^2]([%7jjpB,f7*EbZ%n>?U=+S/;+_EV6fperKV(feqnAFS,qr5[m!>adj#KNqZDDS]Mk %m'Bu?:=Mub3IhS-4>RXX*cq'#K77BR9NL4QX)F@uI?:[@bbt(Vm6s30g08>ajS]2#qg@[+m?gf7!/=<'GDjchq)4-':M-Z*QhT@\ %/k:b\+^X*-[D`Q"+@sW)>S:n@6SjBTpqPPq<R^"4:"IgJm+Li?VgmKOIsq?'84>E\g&)o;?[T>pQ%#W0n,/edWS@:Jl?j*YeebXf %oA\Vu-C6cqDS*6:Ea2j`$beZRKjm=]2<@m7]%p%E=1[[^aL0&UM2guhkN0HjiVDt"T20n,%i[V.V,gc7s-=n7;K;I1JZ-g<(ejA8 %#-+[iks_e)ln4iG2+fOWc*km-+QIgV=9$,+g+J,>@aW\(q_"<M.d,4SmJus4%6)M<A+#41jGG/=MU/lZ,K[jU<as&*dVYh%:$XDq %<6q_4ULJS4U85?dTY1qo<V3,KPO_^KI,)66I;d$+YOD(p9!h0#D>D=r]Zqlh<;\f/c(g-Y_f&0dNp-EZr6WcKiOcD]R'u)qK6jlA %3#\&X6\DT'bc:JsO-=^)n?Is9p3Pf3d[qXHn+u+RR]f_s,W]V)?-Z3^X)B4Wl)+6qk^eZU>GDF;qZE&[)5Ca0O*\dsd6##.6+-37 %g@].(hKBKLNd)g\J++qq7h7@7$WmDef&eq=F`u4K<";D\A&mDr1]6jo5'HNTM3'kpYqE.iFkn_u^sQebfLg(UcZP\Q8-+PEf$5>Z %gf%_8f'*>I/)!tLmSc?i+qfa>KHd+][L;;igr>00cO-;4f<tNJl_RWCfSc>B[d,Y<l'Fj%&X6?H83of5<]5ScFU]7GKc9Zl[Uo!, %4?Qd7<$-"cfDPI5npC2@IDXtBG`.`=LYp.BTkA6a7Gnt\91_#aP]kOgfj$7_.?mSc-u#ljL'X*K@-m"XB(TF"VW,+[GZ,E.M<pQR %fuaoF[R/WD!#Y7h'EV\@iOBg[?PO&:'c.LTr=]_Hb&3osAa8:W?mK.h!O-=WXRk-qfgOs\::^W_?@OY]Ptl2<!l`$C`KQRL%6?2n %>DB[OL&iSn$)SWapGr.m4_]XmG#O\JKf:Ur6b=3sYf>\%$lL'NajnE?Q7hQ:I?$<R176"h@\XCjff7PKs6qK*qg$-#CPLCj`^]<@ %5l-1<0?>e1aOm?)lW2RF<7Ns'DBA.ha9)U%n+E%SL$b?^aiFV^[%AQPC1=uAaE]<[e&4EXP#u-/;E)e\7sPg73H]bGPCf<WZoq[D %dLO:V9uHa61rRL\]P4L:O`p>'AlPhCjqS_++5-d+EW&@K"NH\&BWSFCZ=7TZ!u/&L!Vjf[Q+*#r(Q>m#ekM[A;tbY:U.c8iI8?t` %'2=s5QTo*:9gAN(r1+Og2`I?XUake;*Z[4Rh`Rp--.p))3KF`68#QU\iXp"3h"Eu\3tX*P`V8QrR73/Xm2L(oJ+Z1pKaDVlKJ2cL %++d5AJm0qIZgF6Y`YkWN(2kgth1Nk:WXL4aQ+(8(*eb797,.o5^$$r^E/8J,_9cX.>Yg_SbS7ep(OOCHJ2V9eJ3H%R.Ir3*rT%>: %J1efe4S?1#'Jnu]:f<*.E#Y$ri%YA9TkC-KYh%BQaj?V9MW-Z7C;^LO/KT/3SP=E[!>kY+MOYEaG)t8]JLbi"G[mc=DS_bKiUgXG %#Ke2u"HqI4MFTg>dS]8^=dZ,>s8:JGm6IdF>P:9'F$'()XhLc0LiM=@rQeYf_uAho\n1p5F_f_c9#+J?!A.QRQ^<48Am.E-H7si0 %WMfA%VY:]cS`:$*_Xq.9bVHSu0YNeQ&nYlC@<sSX+?$'g0YNeaM,!Fd9^a9X2*SF?0YNf\QD@47-_SVGV`IeS_ht^/j`qpt'3C27 %/'n)hff26?*@oJ5:mi_Wlra)`DFZT/0apc>Q+u)IYZ)k`K9l,Sn@+/njJP?-p&2MRpi!&Pi>:-r*;kTlWqlcMBFBDC_]LYBes_^\ %oj-Jh$T/K6:YC,F=F+lphn.d*rdPa8Z0D+hG-P+P=C5HaT:kYm66'%D4[F"2Pe^DR'<L[P_Caj-s6K^#5A(RGJc0d(iJ_?`U]81Q %qs`Y'!mbLY?BH$&ZQLh>0&/U/$Z1:c/Ag_#7M8[C6/n]!-7J/r=+o2$N38##e]+XnL(bgQ>'+Ei6th]=\fsE^*e*#IXU$S<).",P %9bT=WY3?=dd)K^COk67#cc@*=^rm@l72$I_?-:4r]E0)fJN*RE73kaOE0C%l'E6Q<P,=ZWOp$h'aVYOpPIM#Kb(;>scf5SLRXtLl %g-eNK;;e@NBS*Jk#r`:Qo"&`,&g-W]?'Q/*V<%`Mcc?)OG9#QsWha^Q!gcb`9bMaJ_9&,M5BMq;'n5*Dki+i,5DWqPnOmE[(P#Qg %.)V.(TE7qu`Or,^AUcD&[lkCIJQE6ii%lRt_`Ic!S8];W"TX:/93%79/>sJ;+56omLTROj7Z[W]U*+&I9baNpdq"SE?k_/tFs/9f %68?@21omS[9e[S@!7Wi1&)`GTBbFlC2'=%L6:M)s:^aJE,-XMrFG5^NEJPE9Q6IOV!VHdQ@P9_daZR!;)1gsnC(WEJ2bDCPJdP/k %AI3ki%FuX'V?M[>+Cl1W#:'XkL=^AJHq)[$^]j.*"_<P(ScSD6[fe=YkmFNmd&IF&[.-DA4Q'3BXNCnDiW4E6C_X)RoVSRg7=l:W %!MBqd<OCIf$(R*>#hR]U!',oVY_Ii#K4tGh3(2,E`"ZLQq%QT@Z)A,OTJfpX/E'^8H;;k$/4EIt;4Gkn<"tHRk0u5IdA<MQG&_)t %AaBT-Xi^VM:&uJgKVfMZ-cA>q%Y'MmC'4p4<u#IKi$j;GWjA7;$K-l9W[$oJ>'8aJ_P.;Y!3#H8mNiOlYU351W(#/q(g-iR:^*D/ %#^DLI=Jqm(7"JjT"\cqpg/SX(<(E[9Xn"T_Lp1N"`GtHd7@HVqJhHAJ.TKauU;o16C]aYSeB9"@;Ob23)AL.5B7k.kShgZm<`AW- %^4qhl.cLiF,ltLG3%)LF7EL+&XNEX+?R44<r@3uXU(V\N(d&`Zg-E0I$lHLE)N>4.;Bit*?D@7'b6/k]V&#^@%7QQi1'L*#TED!P %_@mK392HPCDDI1$!J[>)S,gbZ+TG7G84MYCTHlq,fn<lH6a.=4A[_qe_$MO.<KtW=,:!kS[\cokTE/At7Gr9&&QM4:ZtP?@(*L^' %j5Juo7]R0IMlT7:9u7)o:t$[n2pepB[&=W):4qu'DR@MH6%p_>N<IZ0Ta>1kXV9>_V>!6lE(GQ\("`Z'#:uP=#-mEebZ[Eb&2d"- %N7!3^FV6R%,"mS,.3iRU[K(rq-PA-S'5i>3+uPfbj&D`U*Hk(k:dCJDE!(F6Fhe9kBGr6q$]#X.@>q(@5\OpLhW>K\OPTdT14*`/ %ec"cUJ%s_GK===RZgcL^G9"V$.3a@)P=-!s>l`h:TOJZOA8tIf#VlR*]uE-fRf]dLUms#f!CWgkMPE`FSZ&6`e<&fPP#5`<,4k_T %6\`;h,p3<;,]6irlq%E16rFKb<`E6e)@a8/>&DodkW4&(";/'J+Hh[!;-$9=@%/Q!qBjl`/W@H+RK:C[_J(KpG`rMDF?r3(!*#qM %qH1O5nY3h_>=%Wc_nlao:"[<+Z@VU@N^f9>9ET's?n;=m$*5;5p,2+?^c'ngRJ&TE$^+Cq%B55`P2]IVNPlO>&VdP""YrCMFZ8"[ %J3"F1Q.Z@&T%Z0[U^dKtYTXMP)d7@=2Ca%dD)f8*P8X[;YH%d<70J(gN1EPUMV',*Nb6F?"tL4`9IKLo1(P1"UpXq]W[]jk,dmgU %Lko**X>7lT6:pSh1dGY<"57P[&jW"H8jnLElNM/0Oc\OD9d.G($J;_KU_qeh\oT-+Ym&?=64%I1d#BqY,nV9"L-i,LL]D3[l"FiF %6*t;R;/@d-l5?mSD,"DgMAiWu6A%h'2C'a^B>?Erfj8(L1=6SK+TH$,-AP%tY)UXA=_C'&P!Cqq4NTe*2@%A1/1ZgDKHCc`)A%l2 %0EDQGiBfu]QZZnZ,N+,na_XGCUbWlW!>=F<eI\1RH>EWRb[;trUQHgYZin6sJKF>2&Z#S5";%-V,&3o"1gi@@4QCO@U/0d9T#NWY %ABSG?Nj)EC[#cfR0%/BKYU5B67$IFs`t@E@^iKcbPq`N!!Zbf)-]:[5W<*\haBldZ`"mkM^'<`)/BV!4)YjGQBKRud=Gn`RCa?=I %M@nDdQu0FfMq8A_K*D=a8@mKKCW:b;btOTEScdUL,2rt*7R^MlF:3F))cXZ+*Uoe4[%UV+Q6AUV%E(%^1!?,b,E2i'-[An:J`(<p %FOS(/".Pg28SH$Xk0tNh;3M#pT\h"<6,BqdqB9G6BWe!KLi!35M&U^gNmRQ%$!BM6)Q`(ZR_Y"pe=eQh)q\:])iWj5aBHA3P*eT[ %bG^n5Rl5$!$)gQf?OY['9cg\KAfGX,d6c$M(=Q\hM#kt<kBZV#61U\(=>SZm.B#rqgW78tM't**+2o&mIkVen1-2hAZHVN<7d%'G %lN0/'+]:a?:G(Ml&3`A6)Er_lN'I^6!_EcqQ6n'k6),CcCN"ej--7<WL^=oKXYt^DbcDk1(G&<r"("r`LH4JtPBAN.9ZM]mbIf5. %,$W!g^i3uKU4gtB!</_cU4&(H8f*m*d06s/BEGN,RP]j=%/)7Q>Vu#Um;9Y#!\ZU:%`NC!D/Dh<Zn5O>,dHaK='(lPFiC*eACL^_ %WIT-e"`;$dS7+"%bX>0c+V%4&KI+\@`FoAR_K]-.o4WM6>U[+i@#3"GM!/6`/AQEO,n(Y8P32gg%[r_/,E0#bF->3aU2"cPgQQp? %P,>!%%nZjl+i_;U";'33@,5K+]`oAV["KVagOS`=c(Wd?PhE-=e+b6q#JUiO>Z)<S8Z9O88<icKE0eS%9Wq)s)rm=LNghXEkXq:6 %0EX?]g,PMS5Xk:MAqttg*iXbO=^V6E*4@E'/^$7l"(-`%,X,u'GT(L:ICO6d7FKO8QI.d\&b@u?/Fq"CP@RBGB$iW,E<2skk[7?i %FXXX(.bb7Z1R,sos7;aOD7FkN+rRs]&-IuH=\MB.S4[B;!^U=$Ki2%g$m7Nr7uIT;"kZja>RcM*7>nB`oS[Z(,Z/eh"L]KZg;:,q %Qt4q,h?N\)mdL;]&]C69]%YrGcADF[GfX\e!=2#N#@WQQOu:]"!O`f\MA9Y52_)/CAJnMMq?k^[)%%ilHc69!adaPYD6S+9`]uBG %,gUU%-d^"L*[+^[+6[d:L6ja90SM1d-(oZ9iKccWoACqCpum+K7N::?(lMHQA,-JN(WNpPVutfVV/,-nK#NTG%^p'qEZY%A@*]2< %$1L"%>/7,'W(!"_ejB:9V"\9g4H!5?lRuWR(c$mk^of-ne,kr(8=lrd#\Zh-)io(kTUuVm`>7q["DUe1.prb+2\tKd3.\"'@-=9* %Htf1?\_%*M4j42/1(94Z&==u,/\m/T[=GBTdTAP+nH3T+fFD=q4BOcKGsnTP@I9d9YZ3\lKdmGg0.?s\j_u?qLfCV'C8i(&RV9(u %$e1h)q`raZKf(PM"tc90479?[BBVEuD#&\&d=c34&m.R'<#f%;fETnW9HbTqJS?:#,>K^.>n@/?/X'=o*X`mY3^Y.=#MB4CLM<R" %&`"S<:oOPe5SZ"AU*9iC?:9!0@$6/]SA<:p#caiY7:pF6#R+GJc]OVYLf#:Gr"0:iJrq/]!kegA,U#'"k(L5Eahb$4<misDJV=KE %@=2fP_kCt%Tu_o&(,H4b5tjSaN>q-lbUoCZX!<]PZ>@?Tj(WI=OdPf7`YC*kAmm-V8U!Y4i5P1TRjcYG8F\D^>u6@,^d1j8$Y+^R %OW$`p=P+VO#!.>5U*(YqKUd2O_P<TZ/Bu9`JVqZl;aALSk![*g!u+QCR+Ol=8-0HsGQ_O_MuQ<b'-JA<Ofmt34/a9#*!l_E5or>h %Qo+l%?iuuLJ.dL.OEtH%r?AhrP"mjR)mO5/NXD.DfSdVb'S8YhPBA*,$t<C,TYP/)NWE9UbT+S=ZlkR)TikfE!L+V0X"@#*Lge,' %S$jG[24=Xp@5sBCHkk0;P5k[O(UY6mm&'-r.(HFdK7R3ZJPS)=lS9>3c8JYpN#?_sB*V'BC/Q5m;)&JK7Fd7A=S0uJP2dT4A8>7U %(*kS)NhD`d`&DL3`!O;Jgh'Y;C&\sR2VC-S@.:j[d1?^,P&-isQ]RS5i")%sR.)j^),KUDG#66)P]5a.m6HCkJb);5!hQaW\*>1) %)8j_1iSQ+)"n`!eB,3>QV35S,/E_7'rH+:\\nYru05:T7X>k#PSR^UlRqW($P&+6/.^M]#kbK)dY-8\kc'fl/.F;%oi,$:s3/?N: %JC>Yj]]<nHLn>7_<-XGAl.@'>A@h[OIdl.=35ba"T54TV3/jTZ.CP#Zr>!=tO<eQCTX"Y.S,GQ9Qf-?A,p3b]C%!qud;dPO,41]k %I'*"^G.>]]CSr2u$u@RYgh@rgWZ&4+5<WlE&LbXM_Cm!h&7i3p0h'$CFU;fDK$m>@iF*oZ3F2R_<65HhCg%=$3Mr6\R;.a@e=8Lq %jTJ=6ZlJ)^WT@)XbE;&JdW3dGQ:"#hP*Y.K[@A"-bI%a1-TIq3lq8?&M"+H0fr(Vo</fiD"CdccAc`<ASM[I)LX^"]#m+%d,)27W %C]WXL[h"B0<Mm+Tl1YGoP>#c0Z:;'[APH4:e$9Hn=S&!9YZ;LV"9_&Q$,UdZO5rl`CH@"Ok7_#QG(V<>(/6TD5hN,JSC:t$[/&(c %-<C@Ur<6^9:;S"ZGcE)GA79/<Gq-C!p,JG7'&!p!&e`p$cm"U%K;=&V"+/8m'ImL^9ug"6OJk.E89Ena6H$Yu_&%RbG`G);9pPP* %,$Fs`&d,]W;2N-)i-6KBkQHl4>R;qc:>CB0`j'b*9BH\,Q^AWK!OQG](24j/=QkZbWBat"c!X'V_e:V78/+_4@&,3n'%)F^82_&0 %8/N'(D(Q/tQp>,gI1fq0&KS=-Rm?lo2jeXpX<Mr"ZRnhSNN(\ddn!:^)$u6>[5$KuB@VJj#<k;q!H[(A:b-2n/2JXLU?i.ce/aa2 %-kfRrecoAn"Qg<m&tUI2F'Ns(4NE0H,:;N^kk*a3;N;-fgm-pZOlFg[8T@$;'5Y\#Nq6+cM2EYefV2i6`J>$T*7:79\eZ#BVMaS. %c!Y48Hcie6nL1*9Kb!M?TH,G9hD<GP#qgHj;kl6FVZTgajPcRHSN.pJnN[<1TF6>`D!.4X^nVC!Z9\Ip$AXE1+T*Jl&=OFVUBRH3 %3bEQ3##J3_.lDhe;?)^r!-5pbcUbX0#[g(!<7G?@qB25YP!fUg8C50U[:up3=VLp56J!nX0[kW!0fU2o&TLYV'c@&h,u^h)BUfLh %_GuHSEMsR9`U-5BXH@IH3\VjH-0E0)QIULu"X$\l:ILrd)U,T#NNrJL1-cPqSH2'F*4'1+k[PJQRSCRp#)2r1(T7>p1-6eiaU/md %+N_nePpLHRe:rbEZk9*)=UK4b:8dKC:X*)e:<fKIo@+a7k<(WR`_XkPE2VhMpSk^cI;8cGF_YfugfW,0!#lAh9_uR`J3#bS=4t\4 %CBMTdo.!^7@EMb>HWn@tP(`*8lqTe]d3%e=e1bbY2iB[8.]H#K]qU.1/\6Oh>RCdGp)_Ya_#n(QZg8=_-aFDJ#LFNh?:5Q"D5r_7 %0V9nYel\4D.WDRB&I7]`Ab?$cagp?"K^)7_@;TLW6D'iP66i<fG&R\-Bpt0ELI[aP.;Mf0J\NXg8u=&q:.Nd(A)%O##s>2Fk4(V@ %F$'NDF)(rS'^QO"#uqQ*/6gA(2'+gtH$giF%UodY,KJXp.)]"%7rP,Q:5A)0.T@S@l)c^aHE4VQDcoCmW70MCLShZGU$8K<TrGk* %mSj!93Y3Vg$_&gS>[s00&rU<&cO86uRn6FeJ]S;$75O:1dOpPj#'?reOr9K%P8U_=aUIa!faJ5$2jV]RKR?)Mlr7-7N[P;*`5;1I %`!k7*69HZBi;<bcF')a,$`e7e1Nj*%'NOa\Tm2;qE$7=I5cfTB4I%;/b2*?(,T6njF=uKmN(c?E*(]<LAaj*a4ii&nB[b2#>>bah %MJM7AW't%l*::Uq6<QZE4b=)'<g(Bop8PaB/7.9PYHSJ?+<XZsD5+%tB;Gs8")+GD<>Geecj7QJOm,@C(K!4"qY1C<f]*t@L='U$ %(F\*,Oc2YA(8CO15C%s^]Y[h8e8e:m$cr=k"0pS8d$kD8`kj*1Omt+u/M\B*)%Y?/@lhTMGj)%@nHohe#EcYc9jRiL=3Sf;YVdL$ %)@qsU"k$@,c:;M>$AAXC<Ag#K6pW(\jjP)sOfq\oE=&r=n\bbjK`j.7k]"a"^bCQI>UrtiJ>,PAYXVJFMRVUM<S[pO!>oec5e!K- %`aW*JPffsr`Z"&;O]""^NicSc6lS;JrkR0n-&Jin('X$6lr5?a:o0APd@4O_WN;Hi&)tCC6REQs[8+P:IgXL%l%!)P?mf_/>==#n %=cTj02J?4@,@RGXB#YRBpE_(7"ckT"6Q50o^eQh6F>YMe6&B1\ZN2Le7[?2@J;>$H!`>[*14UlJ*0CDji=GW(35g'sNL1lU8sEFQ %M*U`'jO58HP+d\Km(?0uFDE'.!g;,&gD-uE")/Ha@oWt+5^4%qU8Gc2)*T=QYY^q8-r;$JRq&?],l)HAS/H4.Qu>HV?\s.d,W"70 %O>\.t)\:&9"n'CJHfH87cT'm.0QAZ#kR:'-M.'LV?qh8tSJ#iH"H3MWJ7C5N>L@RSi<<4H_/E-Q3iAED/93;gmSZGV36!#$4&A79 %%)0qc0gm?]n'E=GZn!+=,XF=L@?;=O&M,#i'aTuK3-T"d=tj\.RPZ6X&`XiJ?GRDJQWUC1a+D8O60>FCZtHVs.?f\]ORsI6BjIqn %hsoou7u.TVEJgJOKRuOtm;C@Z;8A>@;0^([n1[]o"bXlQ+G_sFV0EHXaYY'[&pEJPiQ8ccGpkqaNW>;)H+0P#I8L0.T^iT3N8Ya! %#[87&OT\T$ZD%giE0X!7C-4L-!h,Yoc%@$gg/f^m77I<86QK+7WJ0[[OGCJG)Q"EE`upCeN?_/VD3S4X8T3gKinu@>>em]goU0Y) %*7Z4k.0@IC6n1V^P>'*Mi_WkeL@'[lC8t)BFP4Ye(sGifdEXD<(!SNfNTG1gE)bp.L/E(Cgu;GQ*j,Le?f%`U!X`A@.8UMU.$0-0 %"\`D_aoi_n:OLD-*N`2.`8#,Ldo(:f$Src?FD5\k-jP$[AZ-Lc%[Xt+Z?:?1J,rSH=Va3A-ipl>4D6e7-P`bhqBm%.VGeAN&1*sT %L_t'o$VKD)(lGV=1a0/^-l-41pm]-97SF<9>a=DWiJAXGa:t&L!ue[1/)4UUp8C9%<_/!X-H!QN;14.mAfUVG'G\OiG_?PiieuhO %8?YSGGWaG*k37h`(-Nk?[>9#,c5i_P$K[6Pr5O>??D0`XB8)PX!2G'5MZU6Ld#'.!aJL&;E<4&]U1E=2#ms,J,pSUM^qbIg+a"?. %/-Cc>5me[$$->W4Jf7#cm"L$1+;fBmbY:r*C\,[E+K6\t-EunLC3ZUEfq^O"L:i7p/N+Zj6UiOiZ'r<LH>".WLQ?:'kEO\"Q.;[D %TM$)'q3=XMK@m'*Z6lrC.?W4u@jP7rM_%b3*/3H1_fl39;+[?1ZDaUQq*H'U+48t2fONi8U<oo1*7Gqo*"Rh9A#@5dG\FK#@0J8= %P<H9%C_8)RLpBN?Sq-Q;iA<)),=+a60;Ak8P!(iAmq?<(fT\O:I#UN)==mKNW>JsY(P+k?m=L(tUp>#K=YpUlE+m(dBk*!.==Jot %"$nD7bQu%^)o0:9>I4cLM+%Y'@`hQ$&UbB'<t!qu;P.-'ZW_2[Es-i\6o28C7QbinRH@ekk)<_XRlf2(UU>*1C^Z&..3B9X+j\<* %&R+:TN#b2Clh20.+j9.Q(lba3'uQHf.$0Gf].=nVXrPE4#geanV'm#k#@Squ4Gu^1A%7m>c\ds!-"o1=%:cXWfs!7_#("K+B!Y2d %KpK][ma:01/<,?@^F1#C$=,@=RQ&[PJ;+#1CM/jc0F1)*'BBYVA/WM!fYFpn]!Bg[HN9icX&<M1Ng3qcoA2_I'/-uA"GHRi%j*q# %fM+J6D"Z/d:'u8";.AQA5(lbP(o<OE<C*UU`RY_=Z$3MU$85b(+ioWC,\ZO-7j74L_SiTC^qm]NVs89ZF.ig7.\VqfB\TtU&6^qq %;OL"'M+&0mjIO``ip6D0P6L\=5c+>-\rCD/g'6n9)"hU:;4e.6Pt@:hLLGTB^L.d%2Mi;/?'cN'Y66,7(j'8fqe%<p,kTe#3Y-Kn %#AlHcSV:;DBcc>@2)eN>9il*3]>nX[B^R,8h8-sA6G$[H31/'-2Guit^_&Pti2#'j9CY?RJ_'s05PY_kI><pgc+GRQm<GkO,(NK! %RLCQ/>?Z8X\VGj%cl;e>q?!a&:g03\:;@.qQ/(!955^JbGd$B(n>o^a>c&$<W,k/_'5MS]DbL$+9$:YU``kLDBq!Y`VJl:n3%jI, %c:a<Ejr[\N91aRn?!^kJ^ZMkOa8~> %AI9_PrivateDataEnd \ No newline at end of file diff --git a/mozilla/webtools/testopia/testopia/img/city.eps b/mozilla/webtools/testopia/testopia/img/city.eps new file mode 100644 index 00000000000..d36c86c5e0a --- /dev/null +++ b/mozilla/webtools/testopia/testopia/img/city.eps @@ -0,0 +1,64 @@ +%!PS-Adobe-3.1 EPSF-3.0 %ADO_DSC_Encoding: MacOS Roman %%Title: city.eps %%Creator: Adobe Illustrator(R) 12 %%AI8_CreatorVersion: 12.0.1 %AI9_PrintingDataBegin %%For: Todd Purser %%CreationDate: 5/22/06 %%BoundingBox: 0 0 589 727 %%HiResBoundingBox: 0 0 588.2227 726.5215 %%CropBox: 0 0 588.2227 726.5215 %%LanguageLevel: 2 %%DocumentData: Clean7Bit %%Pages: 1 %%DocumentNeededResources: %%DocumentSuppliedResources: procset Adobe_AGM_Image 1.0 0 %%+ procset Adobe_CoolType_Utility_T42 1.0 0 %%+ procset Adobe_CoolType_Utility_MAKEOCF 1.19 0 %%+ procset Adobe_CoolType_Core 2.23 0 %%+ procset Adobe_AGM_Core 2.0 0 %%+ procset Adobe_AGM_Utils 1.0 0 %%DocumentFonts: %%DocumentNeededFonts: %%DocumentNeededFeatures: %%DocumentSuppliedFeatures: %%DocumentProcessColors: Cyan Magenta Yellow Black %%DocumentCustomColors: %%CMYKCustomColor: %%RGBCustomColor: %ADO_BuildNumber: Adobe Illustrator(R) 12.0.1 x5205 R agm 4.3861 ct 5.530 %ADO_ContainsXMP: MainFirst %AI7_Thumbnail: 104 128 8 %%BeginData: 18942 Hex Bytes %0000330000660000990000CC0033000033330033660033990033CC0033FF %0066000066330066660066990066CC0066FF009900009933009966009999 %0099CC0099FF00CC0000CC3300CC6600CC9900CCCC00CCFF00FF3300FF66 %00FF9900FFCC3300003300333300663300993300CC3300FF333300333333 %3333663333993333CC3333FF3366003366333366663366993366CC3366FF %3399003399333399663399993399CC3399FF33CC0033CC3333CC6633CC99 %33CCCC33CCFF33FF0033FF3333FF6633FF9933FFCC33FFFF660000660033 %6600666600996600CC6600FF6633006633336633666633996633CC6633FF %6666006666336666666666996666CC6666FF669900669933669966669999 %6699CC6699FF66CC0066CC3366CC6666CC9966CCCC66CCFF66FF0066FF33 %66FF6666FF9966FFCC66FFFF9900009900339900669900999900CC9900FF %9933009933339933669933999933CC9933FF996600996633996666996699 %9966CC9966FF9999009999339999669999999999CC9999FF99CC0099CC33 %99CC6699CC9999CCCC99CCFF99FF0099FF3399FF6699FF9999FFCC99FFFF %CC0000CC0033CC0066CC0099CC00CCCC00FFCC3300CC3333CC3366CC3399 %CC33CCCC33FFCC6600CC6633CC6666CC6699CC66CCCC66FFCC9900CC9933 %CC9966CC9999CC99CCCC99FFCCCC00CCCC33CCCC66CCCC99CCCCCCCCCCFF %CCFF00CCFF33CCFF66CCFF99CCFFCCCCFFFFFF0033FF0066FF0099FF00CC %FF3300FF3333FF3366FF3399FF33CCFF33FFFF6600FF6633FF6666FF6699 %FF66CCFF66FFFF9900FF9933FF9966FF9999FF99CCFF99FFFFCC00FFCC33 %FFCC66FFCC99FFCCCCFFCCFFFFFF33FFFF66FFFF99FFFFCC110000001100 %000011111111220000002200000022222222440000004400000044444444 %550000005500000055555555770000007700000077777777880000008800 %000088888888AA000000AA000000AAAAAAAABB000000BB000000BBBBBBBB %DD000000DD000000DDDDDDDDEE000000EE000000EEEEEEEE0000000000FF %00FF0000FFFFFF0000FF00FFFFFF00FFFFFF %524C45FD1AFF7D275228532752A8FD5FFF522E855A855A29292E52FD5DFF %52538584857E855329295352FD5BFFA828855A855A855A852929062F7DFD %5AFF27858485848584858454292F2952FD5AFF287E855A857E855A852F29 %282928CAFD59FF278584857E8584857E5A292929537DFD59FF285A855A85 %5A855A8554292929287DFD59FF2785848584858485847E292F292F52FD59 %FF275A857E855A857E85542929292852FD59FF52857E8584857E85848529 %2F292927FD59FF525A855A855A855A855A2906292952FD59FF527E848584 %8584858485292F292F27FD59FF7D52855A857E855A857E2928292928FD59 %FF7D5984857E8584857E852F29292F28FD5AFF27855A855A855A855A2F29 %290628FD5AFF5284858485848584852F2F292F28FD58FF7D7D27857E855A %857E855A532929282EA17DFD54FFA827592F537E8584857E8584852F2F29 %292E592F2E52FD52FF27855A8529855A855A855A855A5406292F855A5A29 %287DFD50FF7D53848584548485848584858485532F29858485842F2952FD %50FF7D52855A852F855A857E855A857E5428297E855A85292927FD50FFA8 %5284857E5A7E857E8584857E855A29298584857E54292EFD51FF27855A85 %545A5A855A855A855A5A29295A855A85292927FD51FF528485847E5A8584 %85848584855A2F2985848584542952FD51FF27857E855A5A7E855A857E85 %5A5A29295A857E85292928FD50FF7D277E858485538584857E8584855A2F %297E7E858453295352FD4EFF522729855A855A545A855A855A855A850629 %5A855A852F292E2FF8FD4DFF277E5A848584852F85848584858485842F29 %7E8485845A298553537DFD4CFF27857E5A5A857E545A857E855A857E8528 %295A855A852F545A5A297DFD4CFF527E855A857E8554857E8584857E8584 %2F295A84857E5A53855A537DFD4CFF52595A5A5A855A545A855A855A855A %8529292F855A852F2F5A5A287DFD1AFF7D27FFFF277DFFA827FFFF5252FF %A827FFFF5252FD1EFF7D53855485848554858485848584858454295A8485 %845A2F855A537DFD19FF522727FF2727A87DF827FF27F87D7D2727FF27F8 %7DFD1EFFA82E5A5A7E855A5A5A855A857E855A8529292F857E852F537E5A %287DFD18FF52F8F852F827F852F8272727F8F852F8F827F827F8CAFD1FFF %2785548584855A7E84857E8584857E5429547E85845A29855A2F27FD17FF %27272827F82759F8F87D27F8277DF8275327F8275327FD20FF275A5A5A85 %5A8553855A855A855A852F2929855A855A2F5A5A2952FD16FF21000629F8 %275A59F87E5A2727852E275A85F8285A52F8FD20FF27855A858485845A84 %8584858485845A29548485847E2F855A2F27FD14FFA80027282F29275385 %2E278485F87E8452278584277E852752FD20FF527E845A857E852F857E85 %5A857E852F2929855A855A2F5A5A2952FD13FF7DF82729292829F8855A2E %27855AF87E85272E7E59F8857E2752FD20FF2785847E7E8584547E858485 %7E85845A295484857E7E2F855A2F52FD12FF77F828292F29292905848527 %528459F8858427528552277E85F8A8FD20FF7D538554855A852F855A855A %855A855A2929855A8554295A5A0652FD11FF52F828292906292928F8855A %272E8552275A85F8595A2E27855AF8FD21FF7D59845A8485845A84858485 %8485847E292F8485847E2985842F52FD10FF27F82F292F292F292F282784 %85F8598452278584F884852752845927FD21FFCA278554855A852F855A85 %7E855A855A2928857E855A297E852852FD0EFFA827F82928292929282929 %2800857EF85A8527285A59F8855A2752852727FD22FF2E7E5A84857E5A84 %857E8584857E8529297E8584852985842927FD0DFF7D27002F2929292F29 %29292F27287E84F8857E2753852E278485F884842727FD22FF278553855A %85547E5A855A855A855A2929855A855A295A852952FD0CFF7DF800290629 %292906292929062727852E275A85F8595A28278553F85A85F87DFD22FF52 %847E8485847E5A85848584858485292F7E8584852985842F27FD0CFF7D27 %2F292F292F292F292F292F0053845927858427848527538453278584F8A8 %FD22FF27855A857E855A5A7E855A857E855A29295A5A857E295A852952FD %0CFF7C272929282929292829292928275285272E7E5AF8857E2752852727 %5A59F8FD1FFFA85252A85284855A858485538584857E858485292F5A857E %8529857E2F52FD0CFF7DF82F2929292F2929292F2929F87E842827855327 %7E85F8847E272E852E27FD1EFF7DFD05F8595A5A5A855A545A855A855A85 %5A2F065A5A855A295A850652FD0CFF52050629292906292929062929F85A %85F8525A52278553F85A85F8595A2827FD1EFFF827F8F8272727855A8584 %8553858485848584852F2F5A858485297E842F28FD0CFF52272F292F292F %292F292F292FF8858427538527528459278584277E85277DFD1DFF7D2727 %F8F8272EF8595A5A857E545A857E855A857E2F285A7E855A535A85282EFD %0CFF27272829292928292929282928275A85F87E5A272E8527277E5AF885 %7E057DFD05FF7D7DFD16FF7D5252F805F8F8F8525A857E8554857E858485 %7E855329538584852853522827522752275252597DFD04FF522729292F29 %29292F2929292827857E0584850059842E278553277E84F8FF7D52272700 %2E2727F82752FD12FF7D517DFD05F8275A5A855A545A855A855A855A5429 %542E2E2752F827F827F827F827F827F827F82752A8272729290629292906 %29292900275A53F8855AF85A85F8525A2E27852E27F8272E7E5A855A855A %85532EF87DFD11FF27FF2727F8F8F8525A85848554858485848584855452 %522752FF8427F827F82727522727F827F827F827F827272F292F292F292F %292F2928278553278484F8858427538527528427277D5A59275227272752 %28598484F87DFD10FF5252FF27F82727285A7E855A5A5A855A857E855927 %52FFF82752525259597E59857E7E597E53532727F827F827282928292929 %2829292900527E28278552275A85F8855A2752272752FD0CF82759F8A8FD %10FF2752FFA827F8845A8584855A7E84857E85595227537D52598484857E %8584857E8584857E8584857E7E5227F8272829292F2929292F2927528527 %2E7E53278553278485F82E2727F805F8F8F805F8F8F805F8F8F805F82727 %FD11FF5228292852528554855A8554855A855A275252287E5A855A595252 %FD0727522E595A855A855952F8272829062929290629F8535A272885272E %5A53F88559FD14F827FD08FFA8A8FD07FF7D2F292F5359847E8485845A84 %858484F8525385845928525927F827F827F827F827F827F82727597E8584 %59F852292F292F292F29F88485275984282E8527528459F827F8F8F827F8 %F8F827F8F8F827F8F8F827F8F827FD07FF27F8F820CAFD05FF7D29292853 %278553857E852F857E855227538552522727FFFFF827F827F8272727F827 %F827F827F8272E7E5A522729282929292829F8855AF85985F8597E272785 %2727F8F8F826F8272752275227522727FD05F852FD06FF7D27F8F85227FD %05FF532F29292852845A7E85845A7E85847D52842852FF52F87D5259537E %598484857E7E597D52522727F827277E59532929292F292928278485F885 %8427538527597E2727F8F82752FD0BFF5227F827FD07FF2752F8F8272752 %FD04FF5306292929278553855A852F855A855A592752F87D27595A855A85 %5A855A855A855A855A855A7E5352F827F87E2829292906292928F88553F8 %5A85F8855AF85985F859F87DFD04FF7E545A2929FD05FF5226A8FD07FF7D %7D27F827F84BFD04FF532F292F2952847E8485845A848584852E52595259 %858485597D5252275227522752525353858485847E27272753292F292F29 %2F27278459278559278484F88584277E27A8FFFFFF7E535A85292F53FD04 %FF4B27FD08FF7D5252F8F8F820FD04FF532829292928855A855A852F855A %857E27F8597E8553522752F827F827F827F827F827F827F85252855A8428 %272829292928292927278527275A59F88552277E5AF885272752FFA8292F %8554292829A8CA522727FD0AFF27FF76272752FD04FF5329292F2929537F %84857E5A84857E8527537E7E2E52F8A8FF27F827F82727522727F827F827 %F82727537E852729292F2929292F272E7E522785272E8452278553277E59 %F827F82F29855A53282929282752A8FD0BFFA8F87D52F87DFD04FF532929 %0629292E5A5A5A8554855A855A525A53F8A8522752532E59597E5A855A84 %597E52532827F827F827595329290629292906272E8505525A2727852728 %5A2E27852727FF5406547E522727282929FD10FF282F2EFD05FF282F292F %292F297E5A85847E5A858485525952275952528484858485848584858485 %848584857E7D2E27F82E592F292F292F292F005984275385275984272E85 %2752845252A9295384AFFFFF27522953FD08FF52F8277DFD04FF2F29297E %FFFFFF7E2F2929282929292E5A7E855A5A7E855A59F87D27597E855A8452 %5227282727272827522E7D7E855A855327F85229292829292928F85985F8 %597E275285F8535A275285F87D29297E85FFFFFF27522928FD08FF270527 %27A8FFFFFF282F2953FFFFFF7E292F2929292F2953548584855385848528 %27527E7E7E52525227F827F827F827F827F827F827287D7E857E28272F29 %29292F2929F88584F87E85F8857E057E85F88484F87E2F53AF84FFFFFF27 %7D2F29FD08FF52F8F8F827FFFFFF29062928FFFFFF532906292929062929 %535A855A545A855A5227845A52272752FF2727F82705272727F827F827F8 %27F8275285592706292929062928F85A7EF88553F85A5AF88559F85A7EF8 %5306A87EAFFFFFFF27525329A8FD07FF2752F8F8F8FFFFFF282F292F53FF %FF7D292F292F292F292F2885848554858485527E592752A8F8525259537E %598484857E7E597D52522727F82752852E2F292F292F2928008553278459 %278553278459278552282954FF85FD04FFF87D532F7EFD07FF277D522727 %FFFFFF2928292953FFFF2829282929292829292953857E545A857E535952 %2752525359855A857E855A857E855A857E855A7E5227F8272E5228292929 %282928275A53F88528277E2E278527275A2E28297EA984FD04FFF8FF5329 %A8FD08FF27525252FFFFFF2829292F29A8FF532929292F2929292F29537E %8554857E85FD0552847E857E592E52272E2752272E2E5959857E857E5327 %275229292F2929292827852752842E2785272E7E272E85272F29FF84FD05 %FFF8FF2F2F7EFD09FF29287EFFFF7E292929062953A828522728272E2728 %275228595A5A5A855A7EF82753855A5227522727F827F827F827F827F827 %F82E53855A59F85229290629292900285A27278505525A275285F8595A27 %067EA985FD04FF5227FF5306A8FD09FF282F53FFFF7E292F292F29532852 %53848485848584845952277D54858485842759855252F852FF7DF827F827 %27522727F827F827F827277E8459282F292F292F29272E85275984275385 %F87D84277E85282FA9AF85FD04FF7D27FF2F2FA8FD09FF29282F7EFF7D29 %2929282F27595A85848584857E855A857E7E28527E855A852E7E2752FF27 %277D5259537E5A855A85597E53532727F827F8595A52292928292929F859 %7E275285F87E5AF87E5AF8852E292FFF84AFFD04FF2752FF5328FD0AFF28 %29297DFF7D292F2929287E8485A9FFFFFF7E8584857E858485535284857E %7D2E52277D527D7E8584857E8584857E8584857E8559532727F87E282F29 %29292F29275285F8857E058459F88553277E53297EFF85FD05FF5227FF29 %29FD0AFF2F292928A95329062929275A85A8A9FFFFA9855A855A855A855A %85277E5A852827525259855A855252FD07275252595A855A7E2727275306 %2929290629F8855AF85A53F8852E275A2E27840629A8A97EFD05FFF87DFF %2929FD0AFF282F292F535328532E52278585FF84FFFFFF84858485848584 %85845959858452F859848553525252F827F827F827F827F827F827527E84 %855227292F292F292F29F8845905855227845227852752542F53FF85AFFD %05FF277DA9292FFD0AFF2F292928532752537E59525985FF85FFFFFF855A %857E855A857E85527D7E8527527E59272727FF5327F82727282727F827F8 %27F827F8525A842729282929292828F88552277E282785272E5A27522F28 %7EFF85A9FD05FFF8FF7E2929FD0AFF282F2953278484A9A98559597EFF85 %FFFFFF85857E8584857E85847E528584525A59F8FF27275253537E59847E %85847E597D5252F827F827597D2929292F29292827842E2785272E7E2753 %85F87E2929A8FF84FD05FF7D27FF7E2954FD0AFF290629277E84A9FFFF84 %7E2E8584A9A9FFFFA95A855A855A855A8559535A85525327277D5253845A %855A855A855A855A855A855A592827F8275329292906292928F88527285A %275285F87E59F82F2928FF84A9FD05FF52F8FF532929FD09FFA829532852 %7EAF85FFFFAF845284AFA9FFFFFFA98584858485848584842E858459277D %277D8485847D52522752275227525259598584855952F852292F292F292F %275284275285F87D5A27845927542953FFA9A9FD05FF2752FF54297EFD09 %FF52272853285984AFFFFFA885278584AFA8FFFFFF7E855A857E855A857E %2E5A852E272E847E5927525227F827F827F827F827F82727525A857E2E27 %292929282929272785F8535AF87E53F8852727282952FF5AFD06FF2752FF %292953FD08FF52527EA9A97E5285A9FFFFFF7E527E85A9A9FFFFA9858485 %7E8584857E8527857E5927845A522827FFA8F827F827272E2727F827F827 %F82752855928292F2929292F00537E275959F8852E277E272829297DAF85 %FD06FFF87DFF2F29A9FD08FF285AAFFFFF7E275AFF84FFFF852E7D5AFF7E %FFFFFF5A855A855A855A855A275A85525959277D7DF87D2E53537E59855A %85597E52522727F827278528290629292906275285F88552275A2E2785F8 %2F2928FFA984FD05FF7DF8FFA80629A8FD08FF527EAFFFFFAF2885A9AFFF %FF847E5285A9A9FFFFFFA984858485848584852885847D5952277D527D7E %858485848584858485848584855952F8275253292F292F292FF87E532784 %52278527538427292F27FF85AFFD05FF7DF8FF7E2F29FD09FF7D52AFA9FF %A85359A984FFFFA95A527EA984FFFFFF84857E855A857E855A525A855AFD %0452847E8553522827272827272752527E5A857E5927272E292829292928 %F87E53F88527285A27525AF8292927AF85A9FD05FF2727FF54282FFD0AFF %2E84AFFFFF595985AFAFFFA985278585AFA9FFFFAF7E8584857E85848552 %7E84852752598559522E7DF827F827F827F827F827F8275285847E275229 %29292F2929F8852E277E275285F8855328292F52FF84FD06FF2727FF5329 %2FFD0AFF2784A8FFFF842785A9AFFFFF5A285A85A9A9FFFFA8855A855A85 %5A855A5359855A2752852852F8A8FF27F8FD0527F827F827F827F8595A59 %27292929062928275A2E2785F85953F85A2E2829287D8485FD06FFF87DFF %292953FD0AFF7D59FFAFFF842884FFA9FFFF85527E84FF84FFFFFF848584 %8584858485535984855284277D84275253527E59848485847E597D5228F8 %27F8597E53292F292F292800852752842784592785272F2928A8A9A9FD05 %FFA8F8A8A9292F54FD0AFF7D52A8AFFFA9287EA9A9FFFF84595285A985FF %FFAF855A857E855A857E7E52857E5927FD04527E7E855A857E855A857E85 %5A857E592727F85928292929282900275A27527EF88527275A28292900FF %7EAFFD05FF7DF8FF7E2929A8FD0BFF27A9A9FFAF7D53AFA9FFFFAF7E527E %FF85FFFFFF84857E8584857E8559537E85522752527E857E7E5252275227 %2E275252595A85848552272753292F292929282785F87D53277E2E278527 %2F2927A985FD06FF2727FF54292FA9FD0BFF527EA9FFFF59527EAFA9FFA8 %85278584A9A9FFFF855A855A855A855A8527855A52F8535A842E27F827F8 %27F827F827F827F82727535A855227292906292929F8525AF85A520585F8 %595929062927A97EFD06FF2727FF292906FD0CFF537DA9FFFFA92785FFAF %FFFF845284AFA9FFFFFF8585848584858485845284852E52847D2727F827 %F827F827F827F827F827F827F85259852E2F292F292F2927537EF8852752 %84275953292F287D84AFFD06FFF87DFF2F2954FD0CFFA82EA9A8FFA8525A %AF84FFFF85527E84FFA8FFFFAF7E855A857E855A8527855A525953F827F8 %27F827F827F827F827F827F827F827F8275959292928292929F85952275A %272785F885282928287D85A8FD05FFA1F87DA9292953FD0DFF53A9AFFFFF %5984A9AFFFFF84847DA9FFAFFFFFA9A985A984A985A9845985A9537E2852 %27522852275228522752285227522852275228527D5453542F5453277E7D %27A9277E59278453535427FF85FD06FF7D27FF7E54537EFD74FFFD045227 %525252275252522752525227525252275252522752525227525252275252 %522752525227525252275252522752525227525252275252522752525227 %5252522752525227525252275252522752525227525252275252527DFD0A %FF20FD5DF852FD08FF7D05F8F8F805F8F8F805F8F8F805F8F8F805F8F8F8 %05F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8 %F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F805F8F8F8 %05F8F8F805F8F8F805F8F8F805F827FD08FF7DFD5FF8FD09FF27F8F852A8 %7DA87DA87DA87DA8A82752A87DA87DA87DA8A852F8F8F87D7DA85227F827 %7DA87DA87DA87DA87DA87EF8F82752A87DA87D52F827F8F852A87DA87DA8 %7D7D2727F8F8F87D7DA8A852F8F8F82752A87DA87D27F827F8F8F827F852 %FD09FF27F8F87D53292929282929292829537DFD0429282929295AF827FF %532F29295353F8FF2829292928292929285A00277D7E29292829297E27F8 %F87DFD0429282929537E00F8F8A829295353F8F8767E54292928292F84FD %06F87DFD09FF7DF80527A9292F2929292F29292984527E292F2929292F29 %7EF8FF5329292F29292F27FF29292F2929292F29295327A854292F292929 %2F297EF8057D53292F2929292F292F5905F8A9292F5353F87D7E29292F29 %29292F5352F805F8F8F8FD0BFFF8F8F82E592E7E29290684525953277E29 %065A53592E595327A82929295A5A292959535259532F29295A59525927A9 %29292984532906292928F8A12929297E59530629297EF8515329067E2727 %A82929295A7E2929065353FD04F827FD0BFF2727F8F8F8274B7E292F5AF8 %F827F8FF292F532EF827F8F827A9292F5359F87D297EF8F8F87D532F2985 %F8F8F8525A2F297E52F8532F29545327FF2F295453F8522F292F7E27527E %292F7E27527E292F5A59F87E292F5359F827F8F87DFD0BFF7DFD06F8A829 %285427F8F8F87D2F282F52FD05F87E29295327F8527E5A27F8F8527E2929 %5AF8F8F8527E29295A27F87D28292959F8A929295352F8522829297EF87D %29292884F8A12929295AF8275329287E2EFD04F8FD0DFF27F805F8F8F87D %29292959F8F8F87D53292984F8F8F805F8FF292F2959F8050527F805F852 %532F297EF805F852532F297EF8057D29295453F87E2F295A27055229292F %7EF87D2F29535305A929295A53F8522F29297E27F8F8F852FD0DFF27FD05 %F84B54292959F8F8F8277E29295AFD05F87D2F06292FFD07F8277E06295A %F8F8F8277E06295AF8F87D2929295927A806295427F87D2929285AF8A906 %295352277E29295A27F87D0629295AFD04F87DFD0DFF7DF827F8F8F8277E %2F297EF8F8F827A82F297E05F8F827F852542F292F5327F8F8F827F8527E %2F2985F827F852542F297EF827532F29542E527E2F2985F8275A2F295459 %277E2F297E277D532F2985F827532F295A5327F8F8F8FD0FFF27FD05F8A8 %29292927F8F8F8A82929292EFD05F87DFD042952FD05F827A828295AF8F8 %F8277E28295AF8F87E29295352277E28295A52532F2929532E4B7E28295A %F87D2F292F5352522F28295A27F8F8F827FD0FFF27F8F805F8F85254292F %5305F8F852542929292F297EF80527A8292F29530005F8F8F8277E292985 %F8F8F85254292985F8F8532F295A277D5429292F2929292F2F85F87D5329 %2984F8A9292F2929292F29292984F8F8F8057DFD0FFF7DFD05F852532929 %7EF8F8F8525329292906295AF8F8F8275406292954FD05F8A8292953F8F8 %F8277E29295AF8F87E062953275253292906FD04298527F87D2F29535327 %7E2906292929062929532EFD04F8FD11FF27F827F8F8F8FF292F5427F8F8 %27A9292F297E5385F827F8F87D54292F297EF8F8F827A82F297E27F8F852 %5A2F2985F8F8542F297E057D532F297E5A845A7E05F8F8FF292F5352527E %29537E857E54292F5A52F8F8F852FD11FF27FD05F87D2F295327F8F8F8A8 %2929542E522E27F8F8F8277DFD042927F8F8F8FF29295327F8F8277E2929 %5AF8F87E28295A277D53295353270027F8F8F8277E29297E007D29292959 %F85228292984FD04F87DFD11FFA8F8F8F805F852532F2959F805F87D292F %2F52F805F8F8F805F84B5A2F29295A05F8F8A82F295A0505F852532F2984 %F80553292985F8A8292F5353F805F8F8F805277E292F84F8A82F297E2705 %7D29295459F8F805F8FD13FF27FD05F87E06295AF8F8F85254062953FD08 %F87D2929295AF8F8F87D06295327F8F8277E06295AF8F85329295AF87D29 %065A27FD06F8525329295A277E06295AF8F85429295352F8F8F84BFD13FF %27F8F827F8F8A82F297EF827F8277E2F2984F827F8F8F827F8F8F87E292F %5327F8F87D53297E2727F852542F2985F852532F2984F8FF292F5427F827 %F8F8F8277D5329545952532F2984F8522F2F2985F8F8F8277DFD13FFA7FD %05F87D2F29292EF8F8F8A928295AFD04F827535AF8F85329295327F8F87D %29295327F8F8277E28295AF8272F29295AF8A829287EFD07F8A82929532E %7653285353F85229292F59FD04F8FD15FF27F8F8F805277E292F59F8F805 %7D53295427F8F805F8A92953F87D292F2F52F8057D5329542EF8F8527E29 %297EF853292F2984F8A929297E05F8F8F805F8F8A82F297EF8FF29295452 %F87E292F5453F805F852FD15FF27FD05F8A829067EF8F8F8525329295927 %2827287D5329532929065A27F8F85229292952F8F8F8FF29292953292906 %5353277E29297EFD06F8277E06295A277E29297EF82753290684FD04F87D %FD15FFA8F8F8F827F87D292F5327F827277E292F292F292F5452A853292F %292F7E27F827525429542EF8F8277D7E292F292F29537E52277E292F5A27 %F8F8F827F852532F297E527E292F5A27522F29535AF8F827F8FD17FF27FD %04F8527E295A2EF8F827A85329532953297E2784A87E29535A59F8F8F852 %7E535359F8F8F82784A92F5329548484F8277E532959FD06F85254295A52 %7D53535359F87D29535359F8F8F852FD17FF2705F8F8F827A9AF857EF8F8 %F8A9A9AF85AFA9AF8553F85384AF8559F805F8F82EAFA9AF5305F8F8F827 %84AF85AF8552F80552AF85AF59F8F805F8F8F884A9AF855284AF85AF27F8 %84AFA9852705F8F87DFD17FFA8FD4FF8FD19FFA8F8F8F827F8F8F827F8F8 %F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827 %F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8F827F8F8 %F827F8F8F82727FD1BFFA727FD49F827FD1EFFA8FD477DFD7AFFFF %%EndData %%EndComments %%BeginDefaults %%ViewingOrientation: 1 0 0 1 %%EndDefaults %%BeginProlog %%BeginResource: procset Adobe_AGM_Utils 1.0 0 %%Version: 1.0 0 %%Copyright: Copyright (C) 2000-2003 Adobe Systems, Inc. All Rights Reserved. systemdict /setpacking known { currentpacking true setpacking } if userdict /Adobe_AGM_Utils 70 dict dup begin put /bdf { bind def } bind def /nd{ null def }bdf /xdf { exch def }bdf /ldf { load def }bdf /ddf { put }bdf /xddf { 3 -1 roll put }bdf /xpt { exch put }bdf /ndf { exch dup where{ pop pop pop }{ xdf }ifelse }def /cdndf { exch dup currentdict exch known{ pop pop }{ exch def }ifelse }def /ps_level /languagelevel where{ pop systemdict /languagelevel get exec }{ 1 }ifelse def /level2 ps_level 2 ge def /level3 ps_level 3 ge def /ps_version {version cvr} stopped { -1 }if def /set_gvm { currentglobal exch setglobal }bdf /reset_gvm { setglobal }bdf /makereadonlyarray { /packedarray where{ pop packedarray }{ array astore readonly }ifelse }bdf /map_reserved_ink_name { dup type /stringtype eq{ dup /Red eq{ pop (_Red_) }{ dup /Green eq{ pop (_Green_) }{ dup /Blue eq{ pop (_Blue_) }{ dup () cvn eq{ pop (Process) }if }ifelse }ifelse }ifelse }if }bdf /AGMUTIL_GSTATE 22 dict def /get_gstate { AGMUTIL_GSTATE begin /AGMUTIL_GSTATE_clr_spc currentcolorspace def /AGMUTIL_GSTATE_clr_indx 0 def /AGMUTIL_GSTATE_clr_comps 12 array def mark currentcolor counttomark {AGMUTIL_GSTATE_clr_comps AGMUTIL_GSTATE_clr_indx 3 -1 roll put /AGMUTIL_GSTATE_clr_indx AGMUTIL_GSTATE_clr_indx 1 add def} repeat pop /AGMUTIL_GSTATE_fnt rootfont def /AGMUTIL_GSTATE_lw currentlinewidth def /AGMUTIL_GSTATE_lc currentlinecap def /AGMUTIL_GSTATE_lj currentlinejoin def /AGMUTIL_GSTATE_ml currentmiterlimit def currentdash /AGMUTIL_GSTATE_do xdf /AGMUTIL_GSTATE_da xdf /AGMUTIL_GSTATE_sa currentstrokeadjust def /AGMUTIL_GSTATE_clr_rnd currentcolorrendering def /AGMUTIL_GSTATE_op currentoverprint def /AGMUTIL_GSTATE_bg currentblackgeneration cvlit def /AGMUTIL_GSTATE_ucr currentundercolorremoval cvlit def currentcolortransfer cvlit /AGMUTIL_GSTATE_gy_xfer xdf cvlit /AGMUTIL_GSTATE_b_xfer xdf cvlit /AGMUTIL_GSTATE_g_xfer xdf cvlit /AGMUTIL_GSTATE_r_xfer xdf /AGMUTIL_GSTATE_ht currenthalftone def /AGMUTIL_GSTATE_flt currentflat def end }def /set_gstate { AGMUTIL_GSTATE begin AGMUTIL_GSTATE_clr_spc setcolorspace AGMUTIL_GSTATE_clr_indx {AGMUTIL_GSTATE_clr_comps AGMUTIL_GSTATE_clr_indx 1 sub get /AGMUTIL_GSTATE_clr_indx AGMUTIL_GSTATE_clr_indx 1 sub def} repeat setcolor AGMUTIL_GSTATE_fnt setfont AGMUTIL_GSTATE_lw setlinewidth AGMUTIL_GSTATE_lc setlinecap AGMUTIL_GSTATE_lj setlinejoin AGMUTIL_GSTATE_ml setmiterlimit AGMUTIL_GSTATE_da AGMUTIL_GSTATE_do setdash AGMUTIL_GSTATE_sa setstrokeadjust AGMUTIL_GSTATE_clr_rnd setcolorrendering AGMUTIL_GSTATE_op setoverprint AGMUTIL_GSTATE_bg cvx setblackgeneration AGMUTIL_GSTATE_ucr cvx setundercolorremoval AGMUTIL_GSTATE_r_xfer cvx AGMUTIL_GSTATE_g_xfer cvx AGMUTIL_GSTATE_b_xfer cvx AGMUTIL_GSTATE_gy_xfer cvx setcolortransfer AGMUTIL_GSTATE_ht /HalftoneType get dup 9 eq exch 100 eq or { currenthalftone /HalftoneType get AGMUTIL_GSTATE_ht /HalftoneType get ne { mark AGMUTIL_GSTATE_ht {sethalftone} stopped cleartomark } if }{ AGMUTIL_GSTATE_ht sethalftone } ifelse AGMUTIL_GSTATE_flt setflat end }def /get_gstate_and_matrix { AGMUTIL_GSTATE begin /AGMUTIL_GSTATE_ctm matrix currentmatrix def end get_gstate }def /set_gstate_and_matrix { set_gstate AGMUTIL_GSTATE begin AGMUTIL_GSTATE_ctm setmatrix end }def /AGMUTIL_str256 256 string def /AGMUTIL_src256 256 string def /AGMUTIL_dst64 64 string def /AGMUTIL_srcLen nd /AGMUTIL_ndx nd /thold_halftone { level3 {sethalftone currenthalftone} { dup /HalftoneType get 3 eq { sethalftone currenthalftone } { begin Width Height mul { Thresholds read {pop} if } repeat end currenthalftone } ifelse }ifelse } def /rdcmntline { currentfile AGMUTIL_str256 readline pop (%) anchorsearch {pop} if } bdf /filter_cmyk { dup type /filetype ne{ exch () /SubFileDecode filter } { exch pop } ifelse [ exch { AGMUTIL_src256 readstring pop dup length /AGMUTIL_srcLen exch def /AGMUTIL_ndx 0 def AGMCORE_plate_ndx 4 AGMUTIL_srcLen 1 sub{ 1 index exch get AGMUTIL_dst64 AGMUTIL_ndx 3 -1 roll put /AGMUTIL_ndx AGMUTIL_ndx 1 add def }for pop AGMUTIL_dst64 0 AGMUTIL_ndx getinterval } bind /exec cvx ] cvx } bdf /filter_indexed_devn { cvi Names length mul names_index add Lookup exch get } bdf /filter_devn { 4 dict begin /srcStr xdf /dstStr xdf dup type /filetype ne{ 0 () /SubFileDecode filter }if [ exch [ /devicen_colorspace_dict /AGMCORE_gget cvx /begin cvx currentdict /srcStr get /readstring cvx /pop cvx /dup cvx /length cvx 0 /gt cvx [ Adobe_AGM_Utils /AGMUTIL_ndx 0 /ddf cvx names_index Names length currentdict /srcStr get length 1 sub { 1 /index cvx /exch cvx /get cvx currentdict /dstStr get /AGMUTIL_ndx /load cvx 3 -1 /roll cvx /put cvx Adobe_AGM_Utils /AGMUTIL_ndx /AGMUTIL_ndx /load cvx 1 /add cvx /ddf cvx } for currentdict /dstStr get 0 /AGMUTIL_ndx /load cvx /getinterval cvx ] cvx /if cvx /end cvx ] cvx bind /exec cvx ] cvx end } bdf /AGMUTIL_imagefile nd /read_image_file { AGMUTIL_imagefile 0 setfileposition 10 dict begin /imageDict xdf /imbufLen Width BitsPerComponent mul 7 add 8 idiv def /imbufIdx 0 def /origDataSource imageDict /DataSource get def /origMultipleDataSources imageDict /MultipleDataSources get def /origDecode imageDict /Decode get def /dstDataStr imageDict /Width get colorSpaceElemCnt mul string def imageDict /MultipleDataSources known {MultipleDataSources}{false} ifelse { /imbufCnt imageDict /DataSource get length def /imbufs imbufCnt array def 0 1 imbufCnt 1 sub { /imbufIdx xdf imbufs imbufIdx imbufLen string put imageDict /DataSource get imbufIdx [ AGMUTIL_imagefile imbufs imbufIdx get /readstring cvx /pop cvx ] cvx put } for DeviceN_PS2 { imageDict begin /DataSource [ DataSource /devn_sep_datasource cvx ] cvx def /MultipleDataSources false def /Decode [0 1] def end } if }{ /imbuf imbufLen string def Indexed_DeviceN level3 not and DeviceN_NoneName or { /srcDataStrs [ imageDict begin currentdict /MultipleDataSources known {MultipleDataSources {DataSource length}{1}ifelse}{1} ifelse { Width Decode length 2 div mul cvi string } repeat end ] def imageDict begin /DataSource [AGMUTIL_imagefile Decode BitsPerComponent false 1 /filter_indexed_devn load dstDataStr srcDataStrs devn_alt_datasource /exec cvx] cvx def /Decode [0 1] def end }{ imageDict /DataSource [1 string dup 0 AGMUTIL_imagefile Decode length 2 idiv string/readstring cvx /pop cvx names_index /get cvx /put cvx] cvx put imageDict /Decode [0 1] put } ifelse } ifelse imageDict exch load exec imageDict /DataSource origDataSource put imageDict /MultipleDataSources origMultipleDataSources put imageDict /Decode origDecode put end } bdf /write_image_file { begin { (AGMUTIL_imagefile) (w+) file } stopped{ false }{ Adobe_AGM_Utils/AGMUTIL_imagefile xddf 2 dict begin /imbufLen Width BitsPerComponent mul 7 add 8 idiv def MultipleDataSources {DataSource 0 get}{DataSource}ifelse type /filetype eq { /imbuf imbufLen string def }if 1 1 Height MultipleDataSources not{Decode length 2 idiv mul}if{ pop MultipleDataSources { 0 1 DataSource length 1 sub { DataSource type dup /arraytype eq { pop DataSource exch get exec }{ /filetype eq { DataSource exch get imbuf readstring pop }{ DataSource exch get } ifelse } ifelse AGMUTIL_imagefile exch writestring } for }{ DataSource type dup /arraytype eq { pop DataSource exec }{ /filetype eq { DataSource imbuf readstring pop }{ DataSource } ifelse } ifelse AGMUTIL_imagefile exch writestring } ifelse }for end true }ifelse end } bdf /close_image_file { AGMUTIL_imagefile closefile (AGMUTIL_imagefile) deletefile }def statusdict /product known userdict /AGMP_current_show known not and{ /pstr statusdict /product get def pstr (HP LaserJet 2200) eq pstr (HP LaserJet 4000 Series) eq or pstr (HP LaserJet 4050 Series ) eq or pstr (HP LaserJet 8000 Series) eq or pstr (HP LaserJet 8100 Series) eq or pstr (HP LaserJet 8150 Series) eq or pstr (HP LaserJet 5000 Series) eq or pstr (HP LaserJet 5100 Series) eq or pstr (HP Color LaserJet 4500) eq or pstr (HP Color LaserJet 4600) eq or pstr (HP LaserJet 5Si) eq or pstr (HP LaserJet 1200 Series) eq or pstr (HP LaserJet 1300 Series) eq or pstr (HP LaserJet 4100 Series) eq or { userdict /AGMP_current_show /show load put userdict /show { currentcolorspace 0 get /Pattern eq {false charpath f} {AGMP_current_show} ifelse } put }if currentdict /pstr undef } if /consumeimagedata { begin currentdict /MultipleDataSources known not {/MultipleDataSources false def} if MultipleDataSources { DataSource 0 get type dup /filetype eq { 1 dict begin /flushbuffer Width cvi string def 1 1 Height cvi { pop 0 1 DataSource length 1 sub { DataSource exch get flushbuffer readstring pop pop }for }for end }if dup /arraytype eq exch /packedarraytype eq or DataSource 0 get xcheck and { Width Height mul cvi { 0 1 DataSource length 1 sub {dup DataSource exch get exec length exch 0 ne {pop}if}for dup 0 eq {pop exit}if sub dup 0 le {exit}if }loop pop }if } { /DataSource load type dup /filetype eq { 1 dict begin /flushbuffer Width Decode length 2 idiv mul cvi string def 1 1 Height { pop DataSource flushbuffer readstring pop pop} for end }if dup /arraytype eq exch /packedarraytype eq or /DataSource load xcheck and { Height Width BitsPerComponent mul 8 BitsPerComponent sub add 8 idiv Decode length 2 idiv mul mul { DataSource length dup 0 eq {pop exit}if sub dup 0 le {exit}if }loop pop }if }ifelse end }bdf /addprocs { 2{/exec load}repeat 3 1 roll [ 5 1 roll ] bind cvx }def /modify_halftone_xfer { currenthalftone dup length dict copy begin currentdict 2 index known{ 1 index load dup length dict copy begin currentdict/TransferFunction known{ /TransferFunction load }{ currenttransfer }ifelse addprocs /TransferFunction xdf currentdict end def currentdict end sethalftone }{ currentdict/TransferFunction known{ /TransferFunction load }{ currenttransfer }ifelse addprocs /TransferFunction xdf currentdict end sethalftone pop }ifelse }def /clonearray { dup xcheck exch dup length array exch Adobe_AGM_Core/AGMCORE_tmp -1 ddf { Adobe_AGM_Core/AGMCORE_tmp 2 copy get 1 add ddf dup type /dicttype eq { Adobe_AGM_Core/AGMCORE_tmp get exch clonedict Adobe_AGM_Core/AGMCORE_tmp 4 -1 roll ddf } if dup type /arraytype eq { Adobe_AGM_Core/AGMCORE_tmp get exch clonearray Adobe_AGM_Core/AGMCORE_tmp 4 -1 roll ddf } if exch dup Adobe_AGM_Core/AGMCORE_tmp get 4 -1 roll put }forall exch {cvx} if }bdf /clonedict { dup length dict begin { dup type /dicttype eq { clonedict } if dup type /arraytype eq { clonearray } if def }forall currentdict end }bdf /DeviceN_PS2 { /currentcolorspace AGMCORE_gget 0 get /DeviceN eq level3 not and } bdf /Indexed_DeviceN { /indexed_colorspace_dict AGMCORE_gget dup null ne { dup /CSDBase known { /CSDBase get /CSD get_res /Names known }{ pop false }ifelse }{ pop false } ifelse } bdf /DeviceN_NoneName { /Names where { pop false Names { (None) eq or } forall }{ false }ifelse } bdf /DeviceN_PS2_inRip_seps { /AGMCORE_in_rip_sep where { pop dup type dup /arraytype eq exch /packedarraytype eq or { dup 0 get /DeviceN eq level3 not and AGMCORE_in_rip_sep and { /currentcolorspace exch AGMCORE_gput false } { true }ifelse } { true } ifelse } { true } ifelse } bdf /base_colorspace_type { dup type /arraytype eq {0 get} if } bdf /currentdistillerparams where { pop currentdistillerparams /CoreDistVersion get 5000 lt}{true}ifelse { /pdfmark_5 {cleartomark} bind def }{ /pdfmark_5 {pdfmark} bind def }ifelse /ReadBypdfmark_5 { 2 dict begin /makerString exch def string /tmpString exch def { currentfile tmpString readline pop makerString anchorsearch { pop pop cleartomark exit }{ 3 copy /PUT pdfmark_5 pop 2 copy (\n) /PUT pdfmark_5 } ifelse }loop end } bdf /doc_setup{ Adobe_AGM_Utils begin }bdf /doc_trailer{ currentdict Adobe_AGM_Utils eq{ end }if }bdf systemdict /setpacking known { setpacking } if %%EndResource %%BeginResource: procset Adobe_AGM_Core 2.0 0 %%Version: 2.0 0 %%Copyright: Copyright (C) 1997-2005 Adobe Systems, Inc. All Rights Reserved. %% Note: This procset assumes Adobe_AGM_Utils is opened on the stack below it, for %% definitions of some fundamental procedures. systemdict /setpacking known { currentpacking true setpacking } if userdict /Adobe_AGM_Core 201 dict dup begin put /Adobe_AGM_Core_Id /Adobe_AGM_Core_2.0_0 def /AGMCORE_str256 256 string def /AGMCORE_save nd /AGMCORE_graphicsave nd /AGMCORE_c 0 def /AGMCORE_m 0 def /AGMCORE_y 0 def /AGMCORE_k 0 def /AGMCORE_cmykbuf 4 array def /AGMCORE_screen [currentscreen] cvx def /AGMCORE_tmp 0 def /AGMCORE_&setgray nd /AGMCORE_&setcolor nd /AGMCORE_&setcolorspace nd /AGMCORE_&setcmykcolor nd /AGMCORE_cyan_plate nd /AGMCORE_magenta_plate nd /AGMCORE_yellow_plate nd /AGMCORE_black_plate nd /AGMCORE_plate_ndx nd /AGMCORE_get_ink_data nd /AGMCORE_is_cmyk_sep nd /AGMCORE_host_sep nd /AGMCORE_avoid_L2_sep_space nd /AGMCORE_distilling nd /AGMCORE_composite_job nd /AGMCORE_producing_seps nd /AGMCORE_ps_level -1 def /AGMCORE_ps_version -1 def /AGMCORE_environ_ok nd /AGMCORE_CSD_cache 0 dict def /AGMCORE_currentoverprint false def /AGMCORE_deltaX nd /AGMCORE_deltaY nd /AGMCORE_name nd /AGMCORE_sep_special nd /AGMCORE_err_strings 4 dict def /AGMCORE_cur_err nd /AGMCORE_current_spot_alias false def /AGMCORE_inverting false def /AGMCORE_feature_dictCount nd /AGMCORE_feature_opCount nd /AGMCORE_feature_ctm nd /AGMCORE_ConvertToProcess false def /AGMCORE_Default_CTM matrix def /AGMCORE_Default_PageSize nd /AGMCORE_currentbg nd /AGMCORE_currentucr nd /AGMCORE_in_pattern false def /AGMCORE_currentpagedevice nd /knockout_unitsq nd currentglobal true setglobal [/CSA /Gradient /Procedure] { /Generic /Category findresource dup length dict copy /Category defineresource pop } forall setglobal /AGMCORE_key_known { where{ /Adobe_AGM_Core_Id known }{ false }ifelse }ndf /flushinput { save 2 dict begin /CompareBuffer 3 -1 roll def /readbuffer 256 string def mark { currentfile readbuffer {readline} stopped {cleartomark mark} { not {pop exit} if CompareBuffer eq {exit} if }ifelse }loop cleartomark end restore }bdf /getspotfunction { AGMCORE_screen exch pop exch pop dup type /dicttype eq{ dup /HalftoneType get 1 eq{ /SpotFunction get }{ dup /HalftoneType get 2 eq{ /GraySpotFunction get }{ pop { abs exch abs 2 copy add 1 gt{ 1 sub dup mul exch 1 sub dup mul add 1 sub }{ dup mul exch dup mul add 1 exch sub }ifelse }bind }ifelse }ifelse }if } def /clp_npth { clip newpath } def /eoclp_npth { eoclip newpath } def /npth_clp { newpath clip } def /graphic_setup { /AGMCORE_graphicsave save def concat 0 setgray 0 setlinecap 0 setlinejoin 1 setlinewidth [] 0 setdash 10 setmiterlimit newpath false setoverprint false setstrokeadjust //Adobe_AGM_Core/spot_alias get exec /Adobe_AGM_Image where { pop Adobe_AGM_Image/spot_alias 2 copy known{ get exec }{ pop pop }ifelse } if 100 dict begin /dictstackcount countdictstack def /showpage {} def mark } def /graphic_cleanup { cleartomark dictstackcount 1 countdictstack 1 sub {end}for end AGMCORE_graphicsave restore } def /compose_error_msg { grestoreall initgraphics /Helvetica findfont 10 scalefont setfont /AGMCORE_deltaY 100 def /AGMCORE_deltaX 310 def clippath pathbbox newpath pop pop 36 add exch 36 add exch moveto 0 AGMCORE_deltaY rlineto AGMCORE_deltaX 0 rlineto 0 AGMCORE_deltaY neg rlineto AGMCORE_deltaX neg 0 rlineto closepath 0 AGMCORE_&setgray gsave 1 AGMCORE_&setgray fill grestore 1 setlinewidth gsave stroke grestore currentpoint AGMCORE_deltaY 15 sub add exch 8 add exch moveto /AGMCORE_deltaY 12 def /AGMCORE_tmp 0 def AGMCORE_err_strings exch get { dup 32 eq { pop AGMCORE_str256 0 AGMCORE_tmp getinterval stringwidth pop currentpoint pop add AGMCORE_deltaX 28 add gt { currentpoint AGMCORE_deltaY sub exch pop clippath pathbbox pop pop pop 44 add exch moveto } if AGMCORE_str256 0 AGMCORE_tmp getinterval show ( ) show 0 1 AGMCORE_str256 length 1 sub { AGMCORE_str256 exch 0 put }for /AGMCORE_tmp 0 def } { AGMCORE_str256 exch AGMCORE_tmp xpt /AGMCORE_tmp AGMCORE_tmp 1 add def } ifelse } forall } bdf /doc_setup{ Adobe_AGM_Core begin /AGMCORE_ps_version xdf /AGMCORE_ps_level xdf errordict /AGM_handleerror known not{ errordict /AGM_handleerror errordict /handleerror get put errordict /handleerror { Adobe_AGM_Core begin $error /newerror get AGMCORE_cur_err null ne and{ $error /newerror false put AGMCORE_cur_err compose_error_msg }if $error /newerror true put end errordict /AGM_handleerror get exec } bind put }if /AGMCORE_environ_ok ps_level AGMCORE_ps_level ge ps_version AGMCORE_ps_version ge and AGMCORE_ps_level -1 eq or def AGMCORE_environ_ok not {/AGMCORE_cur_err /AGMCORE_bad_environ def} if /AGMCORE_&setgray systemdict/setgray get def level2{ /AGMCORE_&setcolor systemdict/setcolor get def /AGMCORE_&setcolorspace systemdict/setcolorspace get def }if /AGMCORE_currentbg currentblackgeneration def /AGMCORE_currentucr currentundercolorremoval def /AGMCORE_distilling /product where{ pop systemdict/setdistillerparams known product (Adobe PostScript Parser) ne and }{ false }ifelse def /AGMCORE_GSTATE AGMCORE_key_known not{ /AGMCORE_GSTATE 21 dict def /AGMCORE_tmpmatrix matrix def /AGMCORE_gstack 32 array def /AGMCORE_gstackptr 0 def /AGMCORE_gstacksaveptr 0 def /AGMCORE_gstackframekeys 10 def /AGMCORE_&gsave /gsave ldf /AGMCORE_&grestore /grestore ldf /AGMCORE_&grestoreall /grestoreall ldf /AGMCORE_&save /save ldf /AGMCORE_&setoverprint /setoverprint ldf /AGMCORE_gdictcopy { begin { def } forall end }def /AGMCORE_gput { AGMCORE_gstack AGMCORE_gstackptr get 3 1 roll put }def /AGMCORE_gget { AGMCORE_gstack AGMCORE_gstackptr get exch get }def /gsave { AGMCORE_&gsave AGMCORE_gstack AGMCORE_gstackptr get AGMCORE_gstackptr 1 add dup 32 ge {limitcheck} if /AGMCORE_gstackptr exch store AGMCORE_gstack AGMCORE_gstackptr get AGMCORE_gdictcopy }def /grestore { AGMCORE_&grestore AGMCORE_gstackptr 1 sub dup AGMCORE_gstacksaveptr lt {1 add} if dup AGMCORE_gstack exch get dup /AGMCORE_currentoverprint known {/AGMCORE_currentoverprint get setoverprint}{pop}ifelse /AGMCORE_gstackptr exch store }def /grestoreall { AGMCORE_&grestoreall /AGMCORE_gstackptr AGMCORE_gstacksaveptr store }def /save { AGMCORE_&save AGMCORE_gstack AGMCORE_gstackptr get AGMCORE_gstackptr 1 add dup 32 ge {limitcheck} if /AGMCORE_gstackptr exch store /AGMCORE_gstacksaveptr AGMCORE_gstackptr store AGMCORE_gstack AGMCORE_gstackptr get AGMCORE_gdictcopy }def /setoverprint{ dup /AGMCORE_currentoverprint exch AGMCORE_gput AGMCORE_&setoverprint }def 0 1 AGMCORE_gstack length 1 sub { AGMCORE_gstack exch AGMCORE_gstackframekeys dict put } for }if level3 /AGMCORE_&sysshfill AGMCORE_key_known not and { /AGMCORE_&sysshfill systemdict/shfill get def /AGMCORE_&sysmakepattern systemdict/makepattern get def /AGMCORE_&usrmakepattern /makepattern load def }if /currentcmykcolor [0 0 0 0] AGMCORE_gput /currentstrokeadjust false AGMCORE_gput /currentcolorspace [/DeviceGray] AGMCORE_gput /sep_tint 0 AGMCORE_gput /devicen_tints [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] AGMCORE_gput /sep_colorspace_dict null AGMCORE_gput /devicen_colorspace_dict null AGMCORE_gput /indexed_colorspace_dict null AGMCORE_gput /currentcolor_intent () AGMCORE_gput /customcolor_tint 1 AGMCORE_gput << /MaxPatternItem currentsystemparams /MaxPatternCache get >> setuserparams end }def /page_setup { /setcmykcolor where{ pop Adobe_AGM_Core/AGMCORE_&setcmykcolor /setcmykcolor load put }if Adobe_AGM_Core begin /setcmykcolor { 4 copy AGMCORE_cmykbuf astore /currentcmykcolor exch AGMCORE_gput 1 sub 4 1 roll 3 { 3 index add neg dup 0 lt { pop 0 } if 3 1 roll } repeat setrgbcolor pop }ndf /currentcmykcolor { /currentcmykcolor AGMCORE_gget aload pop }ndf /setoverprint { pop }ndf /currentoverprint { false }ndf /AGMCORE_cyan_plate 1 0 0 0 test_cmyk_color_plate def /AGMCORE_magenta_plate 0 1 0 0 test_cmyk_color_plate def /AGMCORE_yellow_plate 0 0 1 0 test_cmyk_color_plate def /AGMCORE_black_plate 0 0 0 1 test_cmyk_color_plate def /AGMCORE_plate_ndx AGMCORE_cyan_plate{ 0 }{ AGMCORE_magenta_plate{ 1 }{ AGMCORE_yellow_plate{ 2 }{ AGMCORE_black_plate{ 3 }{ 4 }ifelse }ifelse }ifelse }ifelse def /AGMCORE_have_reported_unsupported_color_space false def /AGMCORE_report_unsupported_color_space { AGMCORE_have_reported_unsupported_color_space false eq { (Warning: Job contains content that cannot be separated with on-host methods. This content appears on the black plate, and knocks out all other plates.) == Adobe_AGM_Core /AGMCORE_have_reported_unsupported_color_space true ddf } if }def /AGMCORE_composite_job AGMCORE_cyan_plate AGMCORE_magenta_plate and AGMCORE_yellow_plate and AGMCORE_black_plate and def /AGMCORE_in_rip_sep /AGMCORE_in_rip_sep where{ pop AGMCORE_in_rip_sep }{ AGMCORE_distilling { false }{ userdict/Adobe_AGM_OnHost_Seps known{ false }{ level2{ currentpagedevice/Separations 2 copy known{ get }{ pop pop false }ifelse }{ false }ifelse }ifelse }ifelse }ifelse def /AGMCORE_producing_seps AGMCORE_composite_job not AGMCORE_in_rip_sep or def /AGMCORE_host_sep AGMCORE_producing_seps AGMCORE_in_rip_sep not and def /AGM_preserve_spots /AGM_preserve_spots where{ pop AGM_preserve_spots }{ AGMCORE_distilling AGMCORE_producing_seps or }ifelse def /AGM_is_distiller_preserving_spotimages { currentdistillerparams/PreserveOverprintSettings known { currentdistillerparams/PreserveOverprintSettings get { currentdistillerparams/ColorConversionStrategy known { currentdistillerparams/ColorConversionStrategy get /sRGB ne }{ true }ifelse }{ false }ifelse }{ false }ifelse }def /convert_spot_to_process where {pop}{ /convert_spot_to_process { //Adobe_AGM_Core begin dup map_alias { /Name get exch pop } if dup dup (None) eq exch (All) eq or { pop false }{ AGMCORE_host_sep { gsave 1 0 0 0 setcmykcolor currentgray 1 exch sub 0 1 0 0 setcmykcolor currentgray 1 exch sub 0 0 1 0 setcmykcolor currentgray 1 exch sub 0 0 0 1 setcmykcolor currentgray 1 exch sub add add add 0 eq { pop false }{ false setoverprint current_spot_alias false set_spot_alias 1 1 1 1 6 -1 roll findcmykcustomcolor 1 setcustomcolor set_spot_alias currentgray 1 ne }ifelse grestore }{ AGMCORE_distilling { pop AGM_is_distiller_preserving_spotimages not }{ //Adobe_AGM_Core/AGMCORE_name xddf false //Adobe_AGM_Core/AGMCORE_in_pattern known {//Adobe_AGM_Core/AGMCORE_in_pattern get}{false} ifelse not AGMCORE_currentpagedevice/OverrideSeparations known and { AGMCORE_currentpagedevice/OverrideSeparations get { /HqnSpots /ProcSet resourcestatus { pop pop pop true }if }if }if { AGMCORE_name /HqnSpots /ProcSet findresource /TestSpot get exec not }{ gsave [/Separation AGMCORE_name /DeviceGray {}]AGMCORE_&setcolorspace false AGMCORE_currentpagedevice/SeparationColorNames 2 copy known { get { AGMCORE_name eq or}forall not }{ pop pop pop true }ifelse grestore }ifelse }ifelse }ifelse }ifelse end }def }ifelse /convert_to_process where {pop}{ /convert_to_process { dup length 0 eq { pop false }{ AGMCORE_host_sep { dup true exch { dup (Cyan) eq exch dup (Magenta) eq 3 -1 roll or exch dup (Yellow) eq 3 -1 roll or exch dup (Black) eq 3 -1 roll or {pop} {convert_spot_to_process and}ifelse } forall { true exch { dup (Cyan) eq exch dup (Magenta) eq 3 -1 roll or exch dup (Yellow) eq 3 -1 roll or exch (Black) eq or and }forall not }{pop false}ifelse }{ false exch { dup (Cyan) eq exch dup (Magenta) eq 3 -1 roll or exch dup (Yellow) eq 3 -1 roll or exch dup (Black) eq 3 -1 roll or {pop} {convert_spot_to_process or}ifelse } forall }ifelse }ifelse }def }ifelse /AGMCORE_avoid_L2_sep_space version cvr 2012 lt level2 and AGMCORE_producing_seps not and def /AGMCORE_is_cmyk_sep AGMCORE_cyan_plate AGMCORE_magenta_plate or AGMCORE_yellow_plate or AGMCORE_black_plate or def /AGM_avoid_0_cmyk where{ pop AGM_avoid_0_cmyk }{ AGM_preserve_spots userdict/Adobe_AGM_OnHost_Seps known userdict/Adobe_AGM_InRip_Seps known or not and }ifelse { /setcmykcolor[ { 4 copy add add add 0 eq currentoverprint and{ pop 0.0005 }if }/exec cvx /AGMCORE_&setcmykcolor load dup type/operatortype ne{ /exec cvx }if ]cvx def }if /AGMCORE_IsSeparationAProcessColor { dup (Cyan) eq exch dup (Magenta) eq exch dup (Yellow) eq exch (Black) eq or or or }def AGMCORE_host_sep{ /setcolortransfer { AGMCORE_cyan_plate{ pop pop pop }{ AGMCORE_magenta_plate{ 4 3 roll pop pop pop }{ AGMCORE_yellow_plate{ 4 2 roll pop pop pop }{ 4 1 roll pop pop pop }ifelse }ifelse }ifelse settransfer } def /AGMCORE_get_ink_data AGMCORE_cyan_plate{ {pop pop pop} }{ AGMCORE_magenta_plate{ {4 3 roll pop pop pop} }{ AGMCORE_yellow_plate{ {4 2 roll pop pop pop} }{ {4 1 roll pop pop pop} }ifelse }ifelse }ifelse def /AGMCORE_RemoveProcessColorNames { 1 dict begin /filtername { dup /Cyan eq 1 index (Cyan) eq or {pop (_cyan_)}if dup /Magenta eq 1 index (Magenta) eq or {pop (_magenta_)}if dup /Yellow eq 1 index (Yellow) eq or {pop (_yellow_)}if dup /Black eq 1 index (Black) eq or {pop (_black_)}if }def dup type /arraytype eq {[exch {filtername}forall]} {filtername}ifelse end }def level3 { /AGMCORE_IsCurrentColor { dup AGMCORE_IsSeparationAProcessColor { AGMCORE_plate_ndx 0 eq {dup (Cyan) eq exch /Cyan eq or}if AGMCORE_plate_ndx 1 eq {dup (Magenta) eq exch /Magenta eq or}if AGMCORE_plate_ndx 2 eq {dup (Yellow) eq exch /Yellow eq or}if AGMCORE_plate_ndx 3 eq {dup (Black) eq exch /Black eq or}if AGMCORE_plate_ndx 4 eq {pop false}if }{ gsave false setoverprint current_spot_alias false set_spot_alias 1 1 1 1 6 -1 roll findcmykcustomcolor 1 setcustomcolor set_spot_alias currentgray 1 ne grestore }ifelse }def /AGMCORE_filter_functiondatasource { 5 dict begin /data_in xdf data_in type /stringtype eq { /ncomp xdf /comp xdf /string_out data_in length ncomp idiv string def 0 ncomp data_in length 1 sub { string_out exch dup ncomp idiv exch data_in exch ncomp getinterval comp get 255 exch sub put }for string_out }{ string /string_in xdf /string_out 1 string def /component xdf [ data_in string_in /readstring cvx [component /get cvx 255 /exch cvx /sub cvx string_out /exch cvx 0 /exch cvx /put cvx string_out]cvx [/pop cvx ()]cvx /ifelse cvx ]cvx /ReusableStreamDecode filter }ifelse end }def /AGMCORE_separateShadingFunction { 2 dict begin /paint? xdf /channel xdf dup type /dicttype eq { begin FunctionType 0 eq { /DataSource channel Range length 2 idiv DataSource AGMCORE_filter_functiondatasource def currentdict /Decode known {/Decode Decode channel 2 mul 2 getinterval def}if paint? not {/Decode [1 1]def}if }if FunctionType 2 eq { paint? { /C0 [C0 channel get 1 exch sub] def /C1 [C1 channel get 1 exch sub] def }{ /C0 [1] def /C1 [1] def }ifelse }if FunctionType 3 eq { /Functions [Functions {channel paint? AGMCORE_separateShadingFunction} forall] def }if currentdict /Range known {/Range [0 1] def}if currentdict end}{ channel get 0 paint? AGMCORE_separateShadingFunction }ifelse end }def /AGMCORE_separateShading { 3 -1 roll begin currentdict /Function known { currentdict /Background known {[1 index{Background 3 index get 1 exch sub}{1}ifelse]/Background xdf}if Function 3 1 roll AGMCORE_separateShadingFunction /Function xdf /ColorSpace [/DeviceGray] def }{ ColorSpace dup type /arraytype eq {0 get}if /DeviceCMYK eq { /ColorSpace [/DeviceN [/_cyan_ /_magenta_ /_yellow_ /_black_] /DeviceCMYK {}] def }{ ColorSpace dup 1 get AGMCORE_RemoveProcessColorNames 1 exch put }ifelse ColorSpace 0 get /Separation eq { { [1 /exch cvx /sub cvx]cvx }{ [/pop cvx 1]cvx }ifelse ColorSpace 3 3 -1 roll put pop }{ { [exch ColorSpace 1 get length 1 sub exch sub /index cvx 1 /exch cvx /sub cvx ColorSpace 1 get length 1 add 1 /roll cvx ColorSpace 1 get length{/pop cvx} repeat]cvx }{ pop [ColorSpace 1 get length {/pop cvx} repeat cvx 1]cvx }ifelse ColorSpace 3 3 -1 roll bind put }ifelse ColorSpace 2 /DeviceGray put }ifelse end }def /AGMCORE_separateShadingDict { dup /ColorSpace get dup type /arraytype ne {[exch]}if dup 0 get /DeviceCMYK eq { exch begin currentdict AGMCORE_cyan_plate {0 true}if AGMCORE_magenta_plate {1 true}if AGMCORE_yellow_plate {2 true}if AGMCORE_black_plate {3 true}if AGMCORE_plate_ndx 4 eq {0 false}if dup not currentoverprint and {/AGMCORE_ignoreshade true def}if AGMCORE_separateShading currentdict end exch }if dup 0 get /Separation eq { exch begin ColorSpace 1 get dup /None ne exch /All ne and { ColorSpace 1 get AGMCORE_IsCurrentColor AGMCORE_plate_ndx 4 lt and ColorSpace 1 get AGMCORE_IsSeparationAProcessColor not and { ColorSpace 2 get dup type /arraytype eq {0 get}if /DeviceCMYK eq { /ColorSpace [ /Separation ColorSpace 1 get /DeviceGray [ ColorSpace 3 get /exec cvx 4 AGMCORE_plate_ndx sub -1 /roll cvx 4 1 /roll cvx 3 [/pop cvx]cvx /repeat cvx 1 /exch cvx /sub cvx ]cvx ]def }{ AGMCORE_report_unsupported_color_space AGMCORE_black_plate not { currentdict 0 false AGMCORE_separateShading }if }ifelse }{ currentdict ColorSpace 1 get AGMCORE_IsCurrentColor 0 exch dup not currentoverprint and {/AGMCORE_ignoreshade true def}if AGMCORE_separateShading }ifelse }if currentdict end exch }if dup 0 get /DeviceN eq { exch begin ColorSpace 1 get convert_to_process { ColorSpace 2 get dup type /arraytype eq {0 get}if /DeviceCMYK eq { /ColorSpace [ /DeviceN ColorSpace 1 get /DeviceGray [ ColorSpace 3 get /exec cvx 4 AGMCORE_plate_ndx sub -1 /roll cvx 4 1 /roll cvx 3 [/pop cvx]cvx /repeat cvx 1 /exch cvx /sub cvx ]cvx ]def }{ AGMCORE_report_unsupported_color_space AGMCORE_black_plate not { currentdict 0 false AGMCORE_separateShading /ColorSpace [/DeviceGray] def }if }ifelse }{ currentdict false -1 ColorSpace 1 get { AGMCORE_IsCurrentColor { 1 add exch pop true exch exit }if 1 add }forall exch dup not currentoverprint and {/AGMCORE_ignoreshade true def}if AGMCORE_separateShading }ifelse currentdict end exch }if dup 0 get dup /DeviceCMYK eq exch dup /Separation eq exch /DeviceN eq or or not { exch begin ColorSpace dup type /arraytype eq {0 get}if /DeviceGray ne { AGMCORE_report_unsupported_color_space AGMCORE_black_plate not { ColorSpace 0 get /CIEBasedA eq { /ColorSpace [/Separation /_ciebaseda_ /DeviceGray {}] def }if ColorSpace 0 get dup /CIEBasedABC eq exch dup /CIEBasedDEF eq exch /DeviceRGB eq or or { /ColorSpace [/DeviceN [/_red_ /_green_ /_blue_] /DeviceRGB {}] def }if ColorSpace 0 get /CIEBasedDEFG eq { /ColorSpace [/DeviceN [/_cyan_ /_magenta_ /_yellow_ /_black_] /DeviceCMYK {}] def }if currentdict 0 false AGMCORE_separateShading }if }if currentdict end exch }if pop dup /AGMCORE_ignoreshade known { begin /ColorSpace [/Separation (None) /DeviceGray {}] def currentdict end }if }def /shfill { AGMCORE_separateShadingDict dup /AGMCORE_ignoreshade known {pop} {AGMCORE_&sysshfill}ifelse }def /makepattern { exch dup /PatternType get 2 eq { clonedict begin /Shading Shading AGMCORE_separateShadingDict def Shading /AGMCORE_ignoreshade known currentdict end exch {pop <</PatternType 1/PaintProc{pop}/BBox[0 0 1 1]/XStep 1/YStep 1/PaintType 1/TilingType 3>>}if exch AGMCORE_&sysmakepattern }{ exch AGMCORE_&usrmakepattern }ifelse }def }if }if AGMCORE_in_rip_sep{ /setcustomcolor { exch aload pop dup 7 1 roll inRip_spot_has_ink not { 4 {4 index mul 4 1 roll} repeat /DeviceCMYK setcolorspace 6 -2 roll pop pop }{ //Adobe_AGM_Core begin /AGMCORE_k xdf /AGMCORE_y xdf /AGMCORE_m xdf /AGMCORE_c xdf end [/Separation 4 -1 roll /DeviceCMYK {dup AGMCORE_c mul exch dup AGMCORE_m mul exch dup AGMCORE_y mul exch AGMCORE_k mul} ] setcolorspace }ifelse setcolor }ndf /setseparationgray { [/Separation (All) /DeviceGray {}] setcolorspace_opt 1 exch sub setcolor }ndf }{ /setseparationgray { AGMCORE_&setgray }ndf }ifelse /findcmykcustomcolor { 5 makereadonlyarray }ndf /setcustomcolor { exch aload pop pop 4 {4 index mul 4 1 roll} repeat setcmykcolor pop }ndf /has_color /colorimage where{ AGMCORE_producing_seps{ pop true }{ systemdict eq }ifelse }{ false }ifelse def /map_index { 1 index mul exch getinterval {255 div} forall } bdf /map_indexed_devn { Lookup Names length 3 -1 roll cvi map_index } bdf /n_color_components { base_colorspace_type dup /DeviceGray eq{ pop 1 }{ /DeviceCMYK eq{ 4 }{ 3 }ifelse }ifelse }bdf level2{ /mo /moveto ldf /li /lineto ldf /cv /curveto ldf /knockout_unitsq { 1 setgray 0 0 1 1 rectfill }def level2 /setcolorspace AGMCORE_key_known not and{ /AGMCORE_&&&setcolorspace /setcolorspace ldf /AGMCORE_ReplaceMappedColor { dup type dup /arraytype eq exch /packedarraytype eq or { /AGMCORE_SpotAliasAry2 where { begin dup 0 get dup /Separation eq { pop dup length array copy dup dup 1 get current_spot_alias { dup map_alias { false set_spot_alias dup 1 exch setsepcolorspace true set_spot_alias begin /sep_colorspace_dict currentdict AGMCORE_gput pop pop pop [ /Separation Name CSA map_csa MappedCSA /sep_colorspace_proc load ] dup Name end }if }if map_reserved_ink_name 1 xpt }{ /DeviceN eq { dup length array copy dup dup 1 get [ exch { current_spot_alias{ dup map_alias{ /Name get exch pop }if }if map_reserved_ink_name } forall ] 1 xpt }if }ifelse end } if }if }def /setcolorspace { dup type dup /arraytype eq exch /packedarraytype eq or { dup 0 get /Indexed eq { AGMCORE_distilling { /PhotoshopDuotoneList where { pop false }{ true }ifelse }{ true }ifelse { aload pop 3 -1 roll AGMCORE_ReplaceMappedColor 3 1 roll 4 array astore }if }{ AGMCORE_ReplaceMappedColor }ifelse }if DeviceN_PS2_inRip_seps {AGMCORE_&&&setcolorspace} if }def }if }{ /adj { currentstrokeadjust{ transform 0.25 sub round 0.25 add exch 0.25 sub round 0.25 add exch itransform }if }def /mo{ adj moveto }def /li{ adj lineto }def /cv{ 6 2 roll adj 6 2 roll adj 6 2 roll adj curveto }def /knockout_unitsq { 1 setgray 8 8 1 [8 0 0 8 0 0] {<ffffffffffffffff>} image }def /currentstrokeadjust{ /currentstrokeadjust AGMCORE_gget }def /setstrokeadjust{ /currentstrokeadjust exch AGMCORE_gput }def /setcolorspace { /currentcolorspace exch AGMCORE_gput } def /currentcolorspace { /currentcolorspace AGMCORE_gget } def /setcolor_devicecolor { base_colorspace_type dup /DeviceGray eq{ pop setgray }{ /DeviceCMYK eq{ setcmykcolor }{ setrgbcolor }ifelse }ifelse }def /setcolor { currentcolorspace 0 get dup /DeviceGray ne{ dup /DeviceCMYK ne{ dup /DeviceRGB ne{ dup /Separation eq{ pop currentcolorspace 3 get exec currentcolorspace 2 get }{ dup /Indexed eq{ pop currentcolorspace 3 get dup type /stringtype eq{ currentcolorspace 1 get n_color_components 3 -1 roll map_index }{ exec }ifelse currentcolorspace 1 get }{ /AGMCORE_cur_err /AGMCORE_invalid_color_space def AGMCORE_invalid_color_space }ifelse }ifelse }if }if }if setcolor_devicecolor } def }ifelse /sop /setoverprint ldf /lw /setlinewidth ldf /lc /setlinecap ldf /lj /setlinejoin ldf /ml /setmiterlimit ldf /dsh /setdash ldf /sadj /setstrokeadjust ldf /gry /setgray ldf /rgb /setrgbcolor ldf /cmyk /setcmykcolor ldf /sep /setsepcolor ldf /devn /setdevicencolor ldf /idx /setindexedcolor ldf /colr /setcolor ldf /csacrd /set_csa_crd ldf /sepcs /setsepcolorspace ldf /devncs /setdevicencolorspace ldf /idxcs /setindexedcolorspace ldf /cp /closepath ldf /clp /clp_npth ldf /eclp /eoclp_npth ldf /f /fill ldf /ef /eofill ldf /@ /stroke ldf /nclp /npth_clp ldf /gset /graphic_setup ldf /gcln /graphic_cleanup ldf /AGMCORE_def_ht currenthalftone def /clonedict Adobe_AGM_Utils begin /clonedict load end def /clonearray Adobe_AGM_Utils begin /clonearray load end def currentdict{ dup xcheck 1 index type dup /arraytype eq exch /packedarraytype eq or and { bind }if def }forall /getrampcolor { /indx exch def 0 1 NumComp 1 sub { dup Samples exch get dup type /stringtype eq {indx get} if exch Scaling exch get aload pop 3 1 roll mul add } for ColorSpaceFamily /Separation eq {sep} { ColorSpaceFamily /DeviceN eq {devn} {setcolor}ifelse }ifelse } bdf /sssetbackground {aload pop setcolor} bdf /RadialShade { 40 dict begin /ColorSpaceFamily xdf /background xdf /ext1 xdf /ext0 xdf /BBox xdf /r2 xdf /c2y xdf /c2x xdf /r1 xdf /c1y xdf /c1x xdf /rampdict xdf /setinkoverprint where {pop /setinkoverprint{pop}def}if gsave BBox length 0 gt { newpath BBox 0 get BBox 1 get moveto BBox 2 get BBox 0 get sub 0 rlineto 0 BBox 3 get BBox 1 get sub rlineto BBox 2 get BBox 0 get sub neg 0 rlineto closepath clip newpath } if c1x c2x eq { c1y c2y lt {/theta 90 def}{/theta 270 def} ifelse } { /slope c2y c1y sub c2x c1x sub div def /theta slope 1 atan def c2x c1x lt c2y c1y ge and { /theta theta 180 sub def} if c2x c1x lt c2y c1y lt and { /theta theta 180 add def} if } ifelse gsave clippath c1x c1y translate theta rotate -90 rotate { pathbbox } stopped { 0 0 0 0 } if /yMax xdf /xMax xdf /yMin xdf /xMin xdf grestore xMax xMin eq yMax yMin eq or { grestore end } { /max { 2 copy gt { pop } {exch pop} ifelse } bdf /min { 2 copy lt { pop } {exch pop} ifelse } bdf rampdict begin 40 dict begin background length 0 gt { background sssetbackground gsave clippath fill grestore } if gsave c1x c1y translate theta rotate -90 rotate /c2y c1x c2x sub dup mul c1y c2y sub dup mul add sqrt def /c1y 0 def /c1x 0 def /c2x 0 def ext0 { 0 getrampcolor c2y r2 add r1 sub 0.0001 lt { c1x c1y r1 360 0 arcn pathbbox /aymax exch def /axmax exch def /aymin exch def /axmin exch def /bxMin xMin axmin min def /byMin yMin aymin min def /bxMax xMax axmax max def /byMax yMax aymax max def bxMin byMin moveto bxMax byMin lineto bxMax byMax lineto bxMin byMax lineto bxMin byMin lineto eofill } { c2y r1 add r2 le { c1x c1y r1 0 360 arc fill } { c2x c2y r2 0 360 arc fill r1 r2 eq { /p1x r1 neg def /p1y c1y def /p2x r1 def /p2y c1y def p1x p1y moveto p2x p2y lineto p2x yMin lineto p1x yMin lineto fill } { /AA r2 r1 sub c2y div def AA -1 eq { /theta 89.99 def} { /theta AA 1 AA dup mul sub sqrt div 1 atan def} ifelse /SS1 90 theta add dup sin exch cos div def /p1x r1 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def /p1y p1x SS1 div neg def /SS2 90 theta sub dup sin exch cos div def /p2x r1 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def /p2y p2x SS2 div neg def r1 r2 gt { /L1maxX p1x yMin p1y sub SS1 div add def /L2maxX p2x yMin p2y sub SS2 div add def } { /L1maxX 0 def /L2maxX 0 def } ifelse p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto L1maxX L1maxX p1x sub SS1 mul p1y add lineto fill } ifelse } ifelse } ifelse } if c1x c2x sub dup mul c1y c2y sub dup mul add 0.5 exp 0 dtransform dup mul exch dup mul add 0.5 exp 72 div 0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt 72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt 1 index 1 index lt { exch } if pop /hires xdf hires mul /numpix xdf /numsteps NumSamples def /rampIndxInc 1 def /subsampling false def numpix 0 ne { NumSamples numpix div 0.5 gt { /numsteps numpix 2 div round cvi dup 1 le { pop 2 } if def /rampIndxInc NumSamples 1 sub numsteps div def /subsampling true def } if } if /xInc c2x c1x sub numsteps div def /yInc c2y c1y sub numsteps div def /rInc r2 r1 sub numsteps div def /cx c1x def /cy c1y def /radius r1 def newpath xInc 0 eq yInc 0 eq rInc 0 eq and and { 0 getrampcolor cx cy radius 0 360 arc stroke NumSamples 1 sub getrampcolor cx cy radius 72 hires div add 0 360 arc 0 setlinewidth stroke } { 0 numsteps { dup subsampling { round cvi } if getrampcolor cx cy radius 0 360 arc /cx cx xInc add def /cy cy yInc add def /radius radius rInc add def cx cy radius 360 0 arcn eofill rampIndxInc add } repeat pop } ifelse ext1 { c2y r2 add r1 lt { c2x c2y r2 0 360 arc fill } { c2y r1 add r2 sub 0.0001 le { c2x c2y r2 360 0 arcn pathbbox /aymax exch def /axmax exch def /aymin exch def /axmin exch def /bxMin xMin axmin min def /byMin yMin aymin min def /bxMax xMax axmax max def /byMax yMax aymax max def bxMin byMin moveto bxMax byMin lineto bxMax byMax lineto bxMin byMax lineto bxMin byMin lineto eofill } { c2x c2y r2 0 360 arc fill r1 r2 eq { /p1x r2 neg def /p1y c2y def /p2x r2 def /p2y c2y def p1x p1y moveto p2x p2y lineto p2x yMax lineto p1x yMax lineto fill } { /AA r2 r1 sub c2y div def AA -1 eq { /theta 89.99 def} { /theta AA 1 AA dup mul sub sqrt div 1 atan def} ifelse /SS1 90 theta add dup sin exch cos div def /p1x r2 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def /p1y c2y p1x SS1 div sub def /SS2 90 theta sub dup sin exch cos div def /p2x r2 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def /p2y c2y p2x SS2 div sub def r1 r2 lt { /L1maxX p1x yMax p1y sub SS1 div add def /L2maxX p2x yMax p2y sub SS2 div add def } { /L1maxX 0 def /L2maxX 0 def }ifelse p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto L1maxX L1maxX p1x sub SS1 mul p1y add lineto fill } ifelse } ifelse } ifelse } if grestore grestore end end end } ifelse } bdf /GenStrips { 40 dict begin /ColorSpaceFamily xdf /background xdf /ext1 xdf /ext0 xdf /BBox xdf /y2 xdf /x2 xdf /y1 xdf /x1 xdf /rampdict xdf /setinkoverprint where {pop /setinkoverprint{pop}def}if gsave BBox length 0 gt { newpath BBox 0 get BBox 1 get moveto BBox 2 get BBox 0 get sub 0 rlineto 0 BBox 3 get BBox 1 get sub rlineto BBox 2 get BBox 0 get sub neg 0 rlineto closepath clip newpath } if x1 x2 eq { y1 y2 lt {/theta 90 def}{/theta 270 def} ifelse } { /slope y2 y1 sub x2 x1 sub div def /theta slope 1 atan def x2 x1 lt y2 y1 ge and { /theta theta 180 sub def} if x2 x1 lt y2 y1 lt and { /theta theta 180 add def} if } ifelse gsave clippath x1 y1 translate theta rotate { pathbbox } stopped { 0 0 0 0 } if /yMax exch def /xMax exch def /yMin exch def /xMin exch def grestore xMax xMin eq yMax yMin eq or { grestore end } { rampdict begin 20 dict begin background length 0 gt { background sssetbackground gsave clippath fill grestore } if gsave x1 y1 translate theta rotate /xStart 0 def /xEnd x2 x1 sub dup mul y2 y1 sub dup mul add 0.5 exp def /ySpan yMax yMin sub def /numsteps NumSamples def /rampIndxInc 1 def /subsampling false def xStart 0 transform xEnd 0 transform 3 -1 roll sub dup mul 3 1 roll sub dup mul add 0.5 exp 72 div 0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt 72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt 1 index 1 index lt { exch } if pop mul /numpix xdf numpix 0 ne { NumSamples numpix div 0.5 gt { /numsteps numpix 2 div round cvi dup 1 le { pop 2 } if def /rampIndxInc NumSamples 1 sub numsteps div def /subsampling true def } if } if ext0 { 0 getrampcolor xMin xStart lt { xMin yMin xMin neg ySpan rectfill } if } if /xInc xEnd xStart sub numsteps div def /x xStart def 0 numsteps { dup subsampling { round cvi } if getrampcolor x yMin xInc ySpan rectfill /x x xInc add def rampIndxInc add } repeat pop ext1 { xMax xEnd gt { xEnd yMin xMax xEnd sub ySpan rectfill } if } if grestore grestore end end end } ifelse } bdf }def /page_trailer { end }def /doc_trailer{ }def /capture_currentpagedevice { //Adobe_AGM_Core/AGMCORE_currentpagedevice currentpagedevice ddf } def systemdict /findcolorrendering known{ /findcolorrendering systemdict /findcolorrendering get def }if systemdict /setcolorrendering known{ /setcolorrendering systemdict /setcolorrendering get def }if /test_cmyk_color_plate { gsave setcmykcolor currentgray 1 ne grestore }def /inRip_spot_has_ink { dup //Adobe_AGM_Core/AGMCORE_name xddf convert_spot_to_process not }def /map255_to_range { 1 index sub 3 -1 roll 255 div mul add }def /set_csa_crd { /sep_colorspace_dict null AGMCORE_gput begin CSA get_csa_by_name setcolorspace_opt set_crd end } def /map_csa { currentdict/MappedCSA known{MappedCSA null ne}{false}ifelse {pop}{get_csa_by_name /MappedCSA xdf}ifelse } def /setsepcolor { /sep_colorspace_dict AGMCORE_gget begin dup /sep_tint exch AGMCORE_gput TintProc end } def /setdevicencolor { /devicen_colorspace_dict AGMCORE_gget begin Names length copy Names length 1 sub -1 0 { /devicen_tints AGMCORE_gget 3 1 roll xpt } for TintProc end } def /sep_colorspace_proc { /AGMCORE_tmp exch store /sep_colorspace_dict AGMCORE_gget begin currentdict/Components known{ Components aload pop TintMethod/Lab eq{ 2 {AGMCORE_tmp mul NComponents 1 roll} repeat LMax sub AGMCORE_tmp mul LMax add NComponents 1 roll }{ TintMethod/Subtractive eq{ NComponents{ AGMCORE_tmp mul NComponents 1 roll }repeat }{ NComponents{ 1 sub AGMCORE_tmp mul 1 add NComponents 1 roll } repeat }ifelse }ifelse }{ ColorLookup AGMCORE_tmp ColorLookup length 1 sub mul round cvi get aload pop }ifelse end } def /sep_colorspace_gray_proc { /AGMCORE_tmp exch store /sep_colorspace_dict AGMCORE_gget begin GrayLookup AGMCORE_tmp GrayLookup length 1 sub mul round cvi get end } def /sep_proc_name { dup 0 get dup /DeviceRGB eq exch /DeviceCMYK eq or level2 not and has_color not and{ pop [/DeviceGray] /sep_colorspace_gray_proc }{ /sep_colorspace_proc }ifelse } def /setsepcolorspace { current_spot_alias{ dup begin Name map_alias{ exch pop }if end }if dup /sep_colorspace_dict exch AGMCORE_gput begin CSA map_csa /AGMCORE_sep_special Name dup () eq exch (All) eq or store AGMCORE_avoid_L2_sep_space{ [/Indexed MappedCSA sep_proc_name 255 exch { 255 div } /exec cvx 3 -1 roll [ 4 1 roll load /exec cvx ] cvx ] setcolorspace_opt /TintProc { 255 mul round cvi setcolor }bdf }{ MappedCSA 0 get /DeviceCMYK eq currentdict/Components known and AGMCORE_sep_special not and{ /TintProc [ Components aload pop Name findcmykcustomcolor /exch cvx /setcustomcolor cvx ] cvx bdf }{ AGMCORE_host_sep Name (All) eq and{ /TintProc { 1 exch sub setseparationgray }bdf }{ AGMCORE_in_rip_sep MappedCSA 0 get /DeviceCMYK eq and AGMCORE_host_sep or Name () eq and{ /TintProc [ MappedCSA sep_proc_name exch 0 get /DeviceCMYK eq{ cvx /setcmykcolor cvx }{ cvx /setgray cvx }ifelse ] cvx bdf }{ AGMCORE_producing_seps MappedCSA 0 get dup /DeviceCMYK eq exch /DeviceGray eq or and AGMCORE_sep_special not and{ /TintProc [ /dup cvx MappedCSA sep_proc_name cvx exch 0 get /DeviceGray eq{ 1 /exch cvx /sub cvx 0 0 0 4 -1 /roll cvx }if /Name cvx /findcmykcustomcolor cvx /exch cvx AGMCORE_host_sep{ AGMCORE_is_cmyk_sep /Name cvx /AGMCORE_IsSeparationAProcessColor load /exec cvx /not cvx /and cvx }{ Name inRip_spot_has_ink not }ifelse [ /pop cvx 1 ] cvx /if cvx /setcustomcolor cvx ] cvx bdf }{ /TintProc {setcolor} bdf [/Separation Name MappedCSA sep_proc_name load ] setcolorspace_opt }ifelse }ifelse }ifelse }ifelse }ifelse set_crd setsepcolor end } def /additive_blend { 3 dict begin /numarrays xdf /numcolors xdf 0 1 numcolors 1 sub { /c1 xdf 1 0 1 numarrays 1 sub { 1 exch add /index cvx c1 /get cvx /mul cvx }for numarrays 1 add 1 /roll cvx }for numarrays [/pop cvx] cvx /repeat cvx end }def /subtractive_blend { 3 dict begin /numarrays xdf /numcolors xdf 0 1 numcolors 1 sub { /c1 xdf 1 1 0 1 numarrays 1 sub { 1 3 3 -1 roll add /index cvx c1 /get cvx /sub cvx /mul cvx }for /sub cvx numarrays 1 add 1 /roll cvx }for numarrays [/pop cvx] cvx /repeat cvx end }def /exec_tint_transform { /TintProc [ /TintTransform cvx /setcolor cvx ] cvx bdf MappedCSA setcolorspace_opt } bdf /devn_makecustomcolor { 2 dict begin /names_index xdf /Names xdf 1 1 1 1 Names names_index get findcmykcustomcolor /devicen_tints AGMCORE_gget names_index get setcustomcolor Names length {pop} repeat end } bdf /setdevicencolorspace { dup /AliasedColorants known {false}{true}ifelse current_spot_alias and { 7 dict begin /names_index 0 def dup /names_len exch /Names get length def /new_names names_len array def /new_LookupTables names_len array def /alias_cnt 0 def dup /Names get { dup map_alias { exch pop dup /ColorLookup known { dup begin new_LookupTables names_index ColorLookup put end }{ dup /Components known { dup begin new_LookupTables names_index Components put end }{ dup begin new_LookupTables names_index [null null null null] put end } ifelse } ifelse new_names names_index 3 -1 roll /Name get put /alias_cnt alias_cnt 1 add def }{ /name xdf new_names names_index name put dup /LookupTables known { dup begin new_LookupTables names_index LookupTables names_index get put end }{ dup begin new_LookupTables names_index [null null null null] put end } ifelse } ifelse /names_index names_index 1 add def } forall alias_cnt 0 gt { /AliasedColorants true def /lut_entry_len new_LookupTables 0 get dup length 256 ge {0 get length}{length}ifelse def 0 1 names_len 1 sub { /names_index xdf new_LookupTables names_index get dup length 256 ge {0 get length}{length}ifelse lut_entry_len ne { /AliasedColorants false def exit } { new_LookupTables names_index get 0 get null eq { dup /Names get names_index get /name xdf name (Cyan) eq name (Magenta) eq name (Yellow) eq name (Black) eq or or or not { /AliasedColorants false def exit } if } if } ifelse } for lut_entry_len 1 eq { /AliasedColorants false def } if AliasedColorants { dup begin /Names new_names def /LookupTables new_LookupTables def /AliasedColorants true def /NComponents lut_entry_len def /TintMethod NComponents 4 eq {/Subtractive}{/Additive}ifelse def /MappedCSA TintMethod /Additive eq {/DeviceRGB}{/DeviceCMYK}ifelse def currentdict /TTTablesIdx known not { /TTTablesIdx -1 def } if end } if }if end } if dup /devicen_colorspace_dict exch AGMCORE_gput begin currentdict /AliasedColorants known { AliasedColorants }{ false } ifelse dup not { CSA map_csa } if /TintTransform load type /nulltype eq or { /TintTransform [ 0 1 Names length 1 sub { /TTTablesIdx TTTablesIdx 1 add def dup LookupTables exch get dup 0 get null eq { 1 index Names exch get dup (Cyan) eq { pop exch LookupTables length exch sub /index cvx 0 0 0 } { dup (Magenta) eq { pop exch LookupTables length exch sub /index cvx 0 /exch cvx 0 0 } { (Yellow) eq { exch LookupTables length exch sub /index cvx 0 0 3 -1 /roll cvx 0 } { exch LookupTables length exch sub /index cvx 0 0 0 4 -1 /roll cvx } ifelse } ifelse } ifelse 5 -1 /roll cvx /astore cvx } { dup length 1 sub LookupTables length 4 -1 roll sub 1 add /index cvx /mul cvx /round cvx /cvi cvx /get cvx } ifelse Names length TTTablesIdx add 1 add 1 /roll cvx } for Names length [/pop cvx] cvx /repeat cvx NComponents Names length TintMethod /Subtractive eq { subtractive_blend } { additive_blend } ifelse ] cvx bdf } if AGMCORE_host_sep { Names convert_to_process { exec_tint_transform } { currentdict /AliasedColorants known { AliasedColorants not }{ false } ifelse 5 dict begin /AvoidAliasedColorants xdf /painted? false def /names_index 0 def /names_len Names length def AvoidAliasedColorants { /currentspotalias current_spot_alias def false set_spot_alias } if Names { AGMCORE_is_cmyk_sep { dup (Cyan) eq AGMCORE_cyan_plate and exch dup (Magenta) eq AGMCORE_magenta_plate and exch dup (Yellow) eq AGMCORE_yellow_plate and exch (Black) eq AGMCORE_black_plate and or or or { /devicen_colorspace_dict AGMCORE_gget /TintProc [ Names names_index /devn_makecustomcolor cvx ] cvx ddf /painted? true def } if painted? {exit} if }{ 0 0 0 0 5 -1 roll findcmykcustomcolor 1 setcustomcolor currentgray 0 eq { /devicen_colorspace_dict AGMCORE_gget /TintProc [ Names names_index /devn_makecustomcolor cvx ] cvx ddf /painted? true def exit } if } ifelse /names_index names_index 1 add def } forall AvoidAliasedColorants { currentspotalias set_spot_alias } if painted? { /devicen_colorspace_dict AGMCORE_gget /names_index names_index put }{ /devicen_colorspace_dict AGMCORE_gget /TintProc [ names_len [/pop cvx] cvx /repeat cvx 1 /setseparationgray cvx 0 0 0 0 /setcmykcolor cvx ] cvx ddf } ifelse end } ifelse } { AGMCORE_in_rip_sep { Names convert_to_process not }{ level3 } ifelse { [/DeviceN Names MappedCSA /TintTransform load] setcolorspace_opt /TintProc level3 not AGMCORE_in_rip_sep and { [ Names /length cvx [/pop cvx] cvx /repeat cvx ] cvx bdf }{ {setcolor} bdf } ifelse }{ exec_tint_transform } ifelse } ifelse set_crd /AliasedColorants false def end } def /setindexedcolorspace { dup /indexed_colorspace_dict exch AGMCORE_gput begin currentdict /CSDBase known { CSDBase /CSD get_res begin currentdict /Names known { currentdict devncs }{ 1 currentdict sepcs } ifelse AGMCORE_host_sep{ 4 dict begin /compCnt /Names where {pop Names length}{1}ifelse def /NewLookup HiVal 1 add string def 0 1 HiVal { /tableIndex xdf Lookup dup type /stringtype eq { compCnt tableIndex map_index }{ exec } ifelse /Names where { pop setdevicencolor }{ setsepcolor } ifelse currentgray tableIndex exch HiVal mul cvi NewLookup 3 1 roll put } for [/Indexed currentcolorspace HiVal NewLookup] setcolorspace_opt end }{ level3 { currentdict /Names known { [/Indexed [/DeviceN Names MappedCSA /TintTransform load] HiVal Lookup] setcolorspace_opt }{ [/Indexed [/Separation Name MappedCSA sep_proc_name load] HiVal Lookup] setcolorspace_opt } ifelse }{ [/Indexed MappedCSA HiVal [ currentdict /Names known { Lookup dup type /stringtype eq {/exch cvx CSDBase /CSD get_res /Names get length dup /mul cvx exch /getinterval cvx {255 div} /forall cvx} {/exec cvx}ifelse /TintTransform load /exec cvx }{ Lookup dup type /stringtype eq {/exch cvx /get cvx 255 /div cvx} {/exec cvx}ifelse CSDBase /CSD get_res /MappedCSA get sep_proc_name exch pop /load cvx /exec cvx } ifelse ]cvx ]setcolorspace_opt }ifelse } ifelse end set_crd } { CSA map_csa AGMCORE_host_sep level2 not and{ 0 0 0 0 setcmykcolor }{ [/Indexed MappedCSA level2 not has_color not and{ dup 0 get dup /DeviceRGB eq exch /DeviceCMYK eq or{ pop [/DeviceGray] }if HiVal GrayLookup }{ HiVal currentdict/RangeArray known{ { /indexed_colorspace_dict AGMCORE_gget begin Lookup exch dup HiVal gt{ pop HiVal }if NComponents mul NComponents getinterval {} forall NComponents 1 sub -1 0{ RangeArray exch 2 mul 2 getinterval aload pop map255_to_range NComponents 1 roll }for end } bind }{ Lookup }ifelse }ifelse ] setcolorspace_opt set_crd }ifelse }ifelse end }def /setindexedcolor { AGMCORE_host_sep { /indexed_colorspace_dict AGMCORE_gget dup /CSDBase known { begin CSDBase /CSD get_res begin currentdict /Names known{ map_indexed_devn devn } { Lookup 1 3 -1 roll map_index sep }ifelse end end }{ /Lookup get 4 3 -1 roll map_index setcmykcolor } ifelse }{ level3 not AGMCORE_in_rip_sep and /indexed_colorspace_dict AGMCORE_gget /CSDBase known and { /indexed_colorspace_dict AGMCORE_gget /CSDBase get /CSD get_res begin map_indexed_devn devn end } { setcolor } ifelse }ifelse } def /ignoreimagedata { currentoverprint not{ gsave dup clonedict begin 1 setgray /Decode [0 1] def /DataSource <FF> def /MultipleDataSources false def /BitsPerComponent 8 def currentdict end systemdict /image get exec grestore }if consumeimagedata }def /add_res { dup /CSD eq { pop //Adobe_AGM_Core begin /AGMCORE_CSD_cache load 3 1 roll put end }{ defineresource pop } ifelse }def /del_res { { aload pop exch dup /CSD eq { pop { //Adobe_AGM_Core/AGMCORE_CSD_cache get exch undef }forall }{ exch { 1 index undefineresource }forall pop } ifelse } forall }def /get_res { dup /CSD eq { pop dup type dup /nametype eq exch /stringtype eq or { AGMCORE_CSD_cache exch get } if }{ findresource } ifelse }def /get_csa_by_name { dup type dup /nametype eq exch /stringtype eq or{ /CSA get_res } if }def /pattern_buf_init { /count get 0 0 put } def /pattern_buf_next { dup /count get dup 0 get dup 3 1 roll 1 add 0 xpt get } def /cachepattern_compress { 5 dict begin currentfile exch 0 exch /SubFileDecode filter /ReadFilter exch def /patarray 20 dict def /string_size 16000 def /readbuffer string_size string def currentglobal true setglobal patarray 1 array dup 0 1 put /count xpt setglobal /LZWFilter { exch dup length 0 eq { pop }{ patarray dup length 1 sub 3 -1 roll put } ifelse {string_size}{0}ifelse string } /LZWEncode filter def { ReadFilter readbuffer readstring exch LZWFilter exch writestring not {exit} if } loop LZWFilter closefile patarray end }def /cachepattern { 2 dict begin currentfile exch 0 exch /SubFileDecode filter /ReadFilter exch def /patarray 20 dict def currentglobal true setglobal patarray 1 array dup 0 1 put /count xpt setglobal { ReadFilter 16000 string readstring exch patarray dup length 1 sub 3 -1 roll put not {exit} if } loop patarray dup dup length 1 sub () put end }def /wrap_paintproc { statusdict /currentfilenameextend known{ clonedict begin /OldPaintProc /PaintProc load def /PaintProc { mark exch dup /OldPaintProc get stopped {closefile restore end} if cleartomark } def end } {pop} ifelse } def /make_pattern { exch clonedict exch dup matrix currentmatrix matrix concatmatrix 0 0 3 2 roll itransform exch 3 index /XStep get 1 index exch 2 copy div cvi mul sub sub exch 3 index /YStep get 1 index exch 2 copy div cvi mul sub sub matrix translate exch matrix concatmatrix 1 index begin BBox 0 get XStep div cvi XStep mul /xshift exch neg def BBox 1 get YStep div cvi YStep mul /yshift exch neg def BBox 0 get xshift add BBox 1 get yshift add BBox 2 get xshift add BBox 3 get yshift add 4 array astore /BBox exch def [ xshift yshift /translate load null /exec load ] dup 3 /PaintProc load put cvx /PaintProc exch def end 1 index dup /ID get exch /Pattern add_res gsave 0 setgray makepattern grestore }def /set_pattern { dup /PatternType get 1 eq{ dup /PaintType get 1 eq{ currentoverprint sop [/DeviceGray] setcolorspace 0 setgray }if }if setpattern }def /setcolorspace_opt { dup currentcolorspace eq{ pop }{ setcolorspace }ifelse }def /updatecolorrendering { currentcolorrendering/RenderingIntent known{ currentcolorrendering/RenderingIntent get }{null}ifelse Intent ne { Intent /ColorRendering {findresource} stopped { pop pop systemdict /findcolorrendering known { Intent findcolorrendering pop /ColorRendering findresource true } {false} ifelse } {true} ifelse { dup begin currentdict /TransformPQR known { currentdict /TransformPQR get aload pop 3 {{} eq 3 1 roll} repeat or or } {true} ifelse currentdict /MatrixPQR known { currentdict /MatrixPQR get aload pop 1.0 eq 9 1 roll 0.0 eq 9 1 roll 0.0 eq 9 1 roll 0.0 eq 9 1 roll 1.0 eq 9 1 roll 0.0 eq 9 1 roll 0.0 eq 9 1 roll 0.0 eq 9 1 roll 1.0 eq and and and and and and and and } {true} ifelse end or { clonedict begin /TransformPQR [ {4 -1 roll 3 get dup 3 1 roll sub 5 -1 roll 3 get 3 -1 roll sub div 3 -1 roll 3 get 3 -1 roll 3 get dup 4 1 roll sub mul add} bind {4 -1 roll 4 get dup 3 1 roll sub 5 -1 roll 4 get 3 -1 roll sub div 3 -1 roll 4 get 3 -1 roll 4 get dup 4 1 roll sub mul add} bind {4 -1 roll 5 get dup 3 1 roll sub 5 -1 roll 5 get 3 -1 roll sub div 3 -1 roll 5 get 3 -1 roll 5 get dup 4 1 roll sub mul add} bind ] def /MatrixPQR [ 0.8951 -0.7502 0.0389 0.2664 1.7135 -0.0685 -0.1614 0.0367 1.0296 ] def /RangePQR [-0.3227950745 2.3229645538 -1.5003771057 3.5003465881 -0.1369979095 2.136967392] def currentdict end } if setcolorrendering_opt } if }if } def /set_crd { AGMCORE_host_sep not level2 and{ currentdict /ColorRendering known{ ColorRendering /ColorRendering {findresource} stopped not {setcolorrendering_opt} if }{ currentdict/Intent known{ updatecolorrendering }if }ifelse currentcolorspace dup type /arraytype eq {0 get}if /DeviceRGB eq { currentdict/UCR known {/UCR}{/AGMCORE_currentucr}ifelse load setundercolorremoval currentdict/BG known {/BG}{/AGMCORE_currentbg}ifelse load setblackgeneration }if }if }def /setcolorrendering_opt { dup currentcolorrendering eq{ pop }{ clonedict begin /Intent Intent def currentdict end setcolorrendering }ifelse }def /cpaint_gcomp { convert_to_process //Adobe_AGM_Core/AGMCORE_ConvertToProcess xddf //Adobe_AGM_Core/AGMCORE_ConvertToProcess get not { (%end_cpaint_gcomp) flushinput }if }def /cpaint_gsep { //Adobe_AGM_Core/AGMCORE_ConvertToProcess get { (%end_cpaint_gsep) flushinput }if }def /cpaint_gend { newpath }def /set_spot_alias_ary { dup inherit_aliases //Adobe_AGM_Core/AGMCORE_SpotAliasAry xddf }def /set_spot_normalization_ary { dup inherit_aliases dup length /AGMCORE_SpotAliasAry where{pop AGMCORE_SpotAliasAry length add} if array //Adobe_AGM_Core/AGMCORE_SpotAliasAry2 xddf /AGMCORE_SpotAliasAry where{ pop AGMCORE_SpotAliasAry2 0 AGMCORE_SpotAliasAry putinterval AGMCORE_SpotAliasAry length }{0} ifelse AGMCORE_SpotAliasAry2 3 1 roll exch putinterval true set_spot_alias }def /inherit_aliases { {dup /Name get map_alias {/CSD put}{pop} ifelse} forall }def /set_spot_alias { /AGMCORE_SpotAliasAry2 where{ /AGMCORE_current_spot_alias 3 -1 roll put }{ pop }ifelse }def /current_spot_alias { /AGMCORE_SpotAliasAry2 where{ /AGMCORE_current_spot_alias get }{ false }ifelse }def /map_alias { /AGMCORE_SpotAliasAry2 where{ begin /AGMCORE_name xdf false AGMCORE_SpotAliasAry2{ dup/Name get AGMCORE_name eq{ /CSD get /CSD get_res exch pop true exit }{ pop }ifelse }forall end }{ pop false }ifelse }bdf /spot_alias { true set_spot_alias /AGMCORE_&setcustomcolor AGMCORE_key_known not { //Adobe_AGM_Core/AGMCORE_&setcustomcolor /setcustomcolor load put } if /customcolor_tint 1 AGMCORE_gput //Adobe_AGM_Core begin /setcustomcolor { currentdict/TintProc known currentdict/CSA known and 3 1 roll //Adobe_AGM_Core begin dup /customcolor_tint exch AGMCORE_gput 1 index aload pop pop 1 eq exch 1 eq and exch 1 eq and exch 1 eq and not current_spot_alias and{1 index 4 get map_alias}{false}ifelse { false set_spot_alias 4 -1 roll{ exch pop /sep_tint AGMCORE_gget exch }if mark 3 1 roll setsepcolorspace counttomark 0 ne{ setsepcolor }if pop pop true set_spot_alias }{ AGMCORE_&setcustomcolor pop }ifelse end }bdf end }def /begin_feature { Adobe_AGM_Core/AGMCORE_feature_dictCount countdictstack put count Adobe_AGM_Core/AGMCORE_feature_opCount 3 -1 roll put {Adobe_AGM_Core/AGMCORE_feature_ctm matrix currentmatrix put}if }def /end_feature { 2 dict begin /spd /setpagedevice load def /setpagedevice { get_gstate spd set_gstate } def stopped{$error/newerror false put}if end count Adobe_AGM_Core/AGMCORE_feature_opCount get sub dup 0 gt{{pop}repeat}{pop}ifelse countdictstack Adobe_AGM_Core/AGMCORE_feature_dictCount get sub dup 0 gt{{end}repeat}{pop}ifelse {Adobe_AGM_Core/AGMCORE_feature_ctm get setmatrix}if }def /set_negative { //Adobe_AGM_Core begin /AGMCORE_inverting exch def level2{ currentpagedevice/NegativePrint known{ currentpagedevice/NegativePrint get //Adobe_AGM_Core/AGMCORE_inverting get ne{ true begin_feature true{ << /NegativePrint //Adobe_AGM_Core/AGMCORE_inverting get >> setpagedevice }end_feature }if /AGMCORE_inverting false def }if }if AGMCORE_inverting{ [{1 exch sub}/exec load dup currenttransfer exch]cvx bind settransfer gsave newpath clippath 1 /setseparationgray where{pop setseparationgray}{setgray}ifelse /AGMIRS_&fill where {pop AGMIRS_&fill}{fill} ifelse grestore }if end }def /lw_save_restore_override { /md where { pop md begin initializepage /initializepage{}def /pmSVsetup{} def /endp{}def /pse{}def /psb{}def /orig_showpage where {pop} {/orig_showpage /showpage load def} ifelse /showpage {orig_showpage gR} def end }if }def /pscript_showpage_override { /NTPSOct95 where { begin showpage save /showpage /restore load def /restore {exch pop}def end }if }def /driver_media_override { /md where { pop md /initializepage known { md /initializepage {} put } if md /rC known { md /rC {4{pop}repeat} put } if }if /mysetup where { /mysetup [1 0 0 1 0 0] put }if Adobe_AGM_Core /AGMCORE_Default_CTM matrix currentmatrix put level2 {Adobe_AGM_Core /AGMCORE_Default_PageSize currentpagedevice/PageSize get put}if }def /driver_check_media_override { /PrepsDict where {pop} { Adobe_AGM_Core /AGMCORE_Default_CTM get matrix currentmatrix ne Adobe_AGM_Core /AGMCORE_Default_PageSize get type /arraytype eq { Adobe_AGM_Core /AGMCORE_Default_PageSize get 0 get currentpagedevice/PageSize get 0 get eq and Adobe_AGM_Core /AGMCORE_Default_PageSize get 1 get currentpagedevice/PageSize get 1 get eq and }if { Adobe_AGM_Core /AGMCORE_Default_CTM get setmatrix }if }ifelse }def AGMCORE_err_strings begin /AGMCORE_bad_environ (Environment not satisfactory for this job. Ensure that the PPD is correct or that the PostScript level requested is supported by this printer. ) def /AGMCORE_color_space_onhost_seps (This job contains colors that will not separate with on-host methods. ) def /AGMCORE_invalid_color_space (This job contains an invalid color space. ) def end /set_def_ht { AGMCORE_def_ht sethalftone } def end systemdict /setpacking known { setpacking } if %%EndResource %%BeginResource: procset Adobe_CoolType_Core 2.25 0 %%Copyright: Copyright 1997-2005 Adobe Systems Incorporated. All Rights Reserved. %%Version: 2.25 0 10 dict begin /Adobe_CoolType_Passthru currentdict def /Adobe_CoolType_Core_Defined userdict /Adobe_CoolType_Core known def Adobe_CoolType_Core_Defined { /Adobe_CoolType_Core userdict /Adobe_CoolType_Core get def } if userdict /Adobe_CoolType_Core 60 dict dup begin put /Adobe_CoolType_Version 2.25 def /Level2? systemdict /languagelevel known dup { pop systemdict /languagelevel get 2 ge } if def Level2? not { /currentglobal false def /setglobal /pop load def /gcheck { pop false } bind def /currentpacking false def /setpacking /pop load def /SharedFontDirectory 0 dict def } if currentpacking true setpacking currentglobal false setglobal userdict /Adobe_CoolType_Data 2 copy known not { 2 copy 10 dict put } if get begin /@opStackCountByLevel 32 dict def /@opStackLevel 0 def /@dictStackCountByLevel 32 dict def /@dictStackLevel 0 def end setglobal /@_SaveStackLevels { Adobe_CoolType_Data begin /@vmState currentglobal def false setglobal @opStackCountByLevel @opStackLevel 2 copy known not { 2 copy 3 dict dup /args 7 index 5 add array put put get } { get dup /args get dup length 3 index lt { dup length 5 add array exch 1 index exch 0 exch putinterval 1 index exch /args exch put } { pop } ifelse } ifelse begin count 1 sub 1 index lt { pop count } if dup /argCount exch def dup 0 gt { args exch 0 exch getinterval astore pop } { pop } ifelse count /restCount exch def end /@opStackLevel @opStackLevel 1 add def countdictstack 1 sub @dictStackCountByLevel exch @dictStackLevel exch put /@dictStackLevel @dictStackLevel 1 add def @vmState setglobal end } bind def /@_RestoreStackLevels { Adobe_CoolType_Data begin /@opStackLevel @opStackLevel 1 sub def @opStackCountByLevel @opStackLevel get begin count restCount sub dup 0 gt { { pop } repeat } { pop } ifelse args 0 argCount getinterval {} forall end /@dictStackLevel @dictStackLevel 1 sub def @dictStackCountByLevel @dictStackLevel get end countdictstack exch sub dup 0 gt { { end } repeat } { pop } ifelse } bind def /@_PopStackLevels { Adobe_CoolType_Data begin /@opStackLevel @opStackLevel 1 sub def /@dictStackLevel @dictStackLevel 1 sub def end } bind def /@Raise { exch cvx exch errordict exch get exec stop } bind def /@ReRaise { cvx $error /errorname get errordict exch get exec stop } bind def /@Stopped { 0 @#Stopped } bind def /@#Stopped { @_SaveStackLevels stopped { @_RestoreStackLevels true } { @_PopStackLevels false } ifelse } bind def /@Arg { Adobe_CoolType_Data begin @opStackCountByLevel @opStackLevel 1 sub get begin args exch argCount 1 sub exch sub get end end } bind def currentglobal true setglobal /CTHasResourceForAllBug Level2? { 1 dict dup /@shouldNotDisappearDictValue true def Adobe_CoolType_Data exch /@shouldNotDisappearDict exch put begin count @_SaveStackLevels { (*) { pop stop } 128 string /Category resourceforall } stopped pop @_RestoreStackLevels currentdict Adobe_CoolType_Data /@shouldNotDisappearDict get ne dup { /@shouldNotDisappearDictValue known { { end currentdict 1 index eq { pop exit } if } loop } if } if end } { false } ifelse def true setglobal /CTHasResourceStatusBug Level2? { mark { /steveamerige /Category resourcestatus } stopped { cleartomark true } { cleartomark currentglobal not } ifelse } { false } ifelse def setglobal /CTResourceStatus { mark 3 1 roll /Category findresource begin ({ResourceStatus} stopped) 0 () /SubFileDecode filter cvx exec { cleartomark false } { { 3 2 roll pop true } { cleartomark false } ifelse } ifelse end } bind def /CTWorkAroundBugs { Level2? { /cid_PreLoad /ProcSet resourcestatus { pop pop currentglobal mark { (*) { dup /CMap CTHasResourceStatusBug { CTResourceStatus } { resourcestatus } ifelse { pop dup 0 eq exch 1 eq or { dup /CMap findresource gcheck setglobal /CMap undefineresource } { pop CTHasResourceForAllBug { exit } { stop } ifelse } ifelse } { pop } ifelse } 128 string /CMap resourceforall } stopped { cleartomark } stopped pop setglobal } if } if } bind def /doc_setup { Adobe_CoolType_Core begin CTWorkAroundBugs /mov /moveto load def /nfnt /newencodedfont load def /mfnt /makefont load def /sfnt /setfont load def /ufnt /undefinefont load def /chp /charpath load def /awsh /awidthshow load def /wsh /widthshow load def /ash /ashow load def /sh /show load def end currentglobal false setglobal userdict /Adobe_CoolType_Data 2 copy known not { 2 copy 10 dict put } if get begin /AddWidths? false def /CC 0 def /charcode 2 string def /@opStackCountByLevel 32 dict def /@opStackLevel 0 def /@dictStackCountByLevel 32 dict def /@dictStackLevel 0 def /InVMFontsByCMap 10 dict def /InVMDeepCopiedFonts 10 dict def end setglobal } bind def /doc_trailer { currentdict Adobe_CoolType_Core eq { end } if } bind def /page_setup { Adobe_CoolType_Core begin } bind def /page_trailer { end } bind def /unload { systemdict /languagelevel known { systemdict/languagelevel get 2 ge { userdict/Adobe_CoolType_Core 2 copy known { undef } { pop pop } ifelse } if } if } bind def /ndf { 1 index where { pop pop pop } { dup xcheck { bind } if def } ifelse } def /findfont systemdict begin userdict begin /globaldict where { /globaldict get begin } if dup where pop exch get /globaldict where { pop end } if end end Adobe_CoolType_Core_Defined { /systemfindfont exch def } { /findfont 1 index def /systemfindfont exch def } ifelse /undefinefont { pop } ndf /copyfont { currentglobal 3 1 roll 1 index gcheck setglobal dup null eq { 0 } { dup length } ifelse 2 index length add 1 add dict begin exch { 1 index /FID eq { pop pop } { def } ifelse } forall dup null eq { pop } { { def } forall } ifelse currentdict end exch setglobal } bind def /copyarray { currentglobal exch dup gcheck setglobal dup length array copy exch setglobal } bind def /newencodedfont { currentglobal { SharedFontDirectory 3 index known { SharedFontDirectory 3 index get /FontReferenced known } { false } ifelse } { FontDirectory 3 index known { FontDirectory 3 index get /FontReferenced known } { SharedFontDirectory 3 index known { SharedFontDirectory 3 index get /FontReferenced known } { false } ifelse } ifelse } ifelse dup { 3 index findfont /FontReferenced get 2 index dup type /nametype eq {findfont} if ne { pop false } if } if { pop 1 index findfont /Encoding get exch 0 1 255 { 2 copy get 3 index 3 1 roll put } for pop pop pop } { dup type /nametype eq { findfont } if dup dup maxlength 2 add dict begin exch { 1 index /FID ne {def} {pop pop} ifelse } forall /FontReferenced exch def /Encoding exch dup length array copy def /FontName 1 index dup type /stringtype eq { cvn } if def dup currentdict end definefont def } ifelse } bind def /SetSubstituteStrategy { $SubstituteFont begin dup type /dicttype ne { 0 dict } if currentdict /$Strategies known { exch $Strategies exch 2 copy known { get 2 copy maxlength exch maxlength add dict begin { def } forall { def } forall currentdict dup /$Init known { dup /$Init get exec } if end /$Strategy exch def } { pop pop pop } ifelse } { pop pop } ifelse end } bind def /scff { $SubstituteFont begin dup type /stringtype eq { dup length exch } { null } ifelse /$sname exch def /$slen exch def /$inVMIndex $sname null eq { 1 index $str cvs dup length $slen sub $slen getinterval cvn } { $sname } ifelse def end { findfont } @Stopped { dup length 8 add string exch 1 index 0 (BadFont:) putinterval 1 index exch 8 exch dup length string cvs putinterval cvn { findfont } @Stopped { pop /Courier findfont } if } if $SubstituteFont begin /$sname null def /$slen 0 def /$inVMIndex null def end } bind def /isWidthsOnlyFont { dup /WidthsOnly known { pop pop true } { dup /FDepVector known { /FDepVector get { isWidthsOnlyFont dup { exit } if } forall } { dup /FDArray known { /FDArray get { isWidthsOnlyFont dup { exit } if } forall } { pop } ifelse } ifelse } ifelse } bind def /?str1 256 string def /?set { $SubstituteFont begin /$substituteFound false def /$fontname 4 index def /$doSmartSub false def end 3 index currentglobal false setglobal exch /CompatibleFonts /ProcSet resourcestatus { pop pop /CompatibleFonts /ProcSet findresource begin dup /CompatibleFont currentexception 1 index /CompatibleFont true setexception 1 index /Font resourcestatus { pop pop 3 2 roll setglobal end exch dup findfont /CompatibleFonts /ProcSet findresource begin 3 1 roll exch /CompatibleFont exch setexception end } { 3 2 roll setglobal 1 index exch /CompatibleFont exch setexception end findfont $SubstituteFont /$substituteFound true put } ifelse } { exch setglobal findfont } ifelse $SubstituteFont begin $substituteFound { false (%%[Using embedded font ) print 5 index ?str1 cvs print ( to avoid the font substitution problem noted earlier.]%%\n) print } { dup /FontName known { dup /FontName get $fontname eq 1 index /DistillerFauxFont known not and /currentdistillerparams where { pop false 2 index isWidthsOnlyFont not and } if } { false } ifelse } ifelse exch pop /$doSmartSub true def end { exch pop exch pop exch 2 dict dup /Found 3 index put exch findfont exch } { exch exec exch dup findfont dup /FontType get 3 eq { exch ?str1 cvs dup length 1 sub -1 0 { exch dup 2 index get 42 eq { exch 0 exch getinterval cvn 4 1 roll 3 2 roll pop exit } {exch pop} ifelse }for } { exch pop } ifelse 2 dict dup /Downloaded 6 5 roll put } ifelse dup /FontName 4 index put copyfont definefont pop } bind def /?str2 256 string def /?add { 1 index type /integertype eq { exch true 4 2 } { false 3 1 } ifelse roll 1 index findfont dup /Widths known { Adobe_CoolType_Data /AddWidths? true put gsave dup 1000 scalefont setfont } if /Downloaded known { exec exch { exch ?str2 cvs exch findfont /Downloaded get 1 dict begin /Downloaded 1 index def ?str1 cvs length ?str1 1 index 1 add 3 index putinterval exch length 1 add 1 index add ?str1 2 index (*) putinterval ?str1 0 2 index getinterval cvn findfont ?str1 3 index (+) putinterval 2 dict dup /FontName ?str1 0 6 index getinterval cvn put dup /Downloaded Downloaded put end copyfont dup /FontName get exch definefont pop pop pop } { pop } ifelse } { pop exch { findfont dup /Found get dup length exch ?str1 cvs pop ?str1 1 index (+) putinterval ?str1 1 index 1 add 4 index ?str2 cvs putinterval ?str1 exch 0 exch 5 4 roll ?str2 cvs length 1 add add getinterval cvn 1 dict exch 1 index exch /FontName exch put copyfont dup /FontName get exch definefont pop } { pop } ifelse } ifelse Adobe_CoolType_Data /AddWidths? get { grestore Adobe_CoolType_Data /AddWidths? false put } if } bind def /?sh { currentfont /Downloaded known { exch } if pop } bind def /?chp { currentfont /Downloaded known { pop } { false chp } ifelse } bind def /?mv { currentfont /Downloaded known { moveto pop pop } { pop pop moveto } ifelse } bind def setpacking userdict /$SubstituteFont 25 dict put 1 dict begin /SubstituteFont dup $error exch 2 copy known { get } { pop pop { pop /Courier } bind } ifelse def /currentdistillerparams where dup { pop pop currentdistillerparams /CannotEmbedFontPolicy 2 copy known { get /Error eq } { pop pop false } ifelse } if not { countdictstack array dictstack 0 get begin userdict begin $SubstituteFont begin /$str 128 string def /$fontpat 128 string def /$slen 0 def /$sname null def /$match false def /$fontname null def /$substituteFound false def /$inVMIndex null def /$doSmartSub true def /$depth 0 def /$fontname null def /$italicangle 26.5 def /$dstack null def /$Strategies 10 dict dup begin /$Type3Underprint { currentglobal exch false setglobal 11 dict begin /UseFont exch $WMode 0 ne { dup length dict copy dup /WMode $WMode put /UseFont exch definefont } if def /FontName $fontname dup type /stringtype eq { cvn } if def /FontType 3 def /FontMatrix [ .001 0 0 .001 0 0 ] def /Encoding 256 array dup 0 1 255 { /.notdef put dup } for pop def /FontBBox [ 0 0 0 0 ] def /CCInfo 7 dict dup begin /cc null def /x 0 def /y 0 def end def /BuildChar { exch begin CCInfo begin 1 string dup 0 3 index put exch pop /cc exch def UseFont 1000 scalefont setfont cc stringwidth /y exch def /x exch def x y setcharwidth $SubstituteFont /$Strategy get /$Underprint get exec 0 0 moveto cc show x y moveto end end } bind def currentdict end exch setglobal } bind def /$GetaTint 2 dict dup begin /$BuildFont { dup /WMode known { dup /WMode get } { 0 } ifelse /$WMode exch def $fontname exch dup /FontName known { dup /FontName get dup type /stringtype eq { cvn } if } { /unnamedfont } ifelse exch Adobe_CoolType_Data /InVMDeepCopiedFonts get 1 index /FontName get known { pop Adobe_CoolType_Data /InVMDeepCopiedFonts get 1 index get null copyfont } { $deepcopyfont } ifelse exch 1 index exch /FontBasedOn exch put dup /FontName $fontname dup type /stringtype eq { cvn } if put definefont Adobe_CoolType_Data /InVMDeepCopiedFonts get begin dup /FontBasedOn get 1 index def end } bind def /$Underprint { gsave x abs y abs gt { /y 1000 def } { /x -1000 def 500 120 translate } ifelse Level2? { [ /Separation (All) /DeviceCMYK { 0 0 0 1 pop } ] setcolorspace } { 0 setgray } ifelse 10 setlinewidth x .8 mul [ 7 3 ] { y mul 8 div 120 sub x 10 div exch moveto 0 y 4 div neg rlineto dup 0 rlineto 0 y 4 div rlineto closepath gsave Level2? { .2 setcolor } { .8 setgray } ifelse fill grestore stroke } forall pop grestore } bind def end def /$Oblique 1 dict dup begin /$BuildFont { currentglobal exch dup gcheck setglobal null copyfont begin /FontBasedOn currentdict /FontName known { FontName dup type /stringtype eq { cvn } if } { /unnamedfont } ifelse def /FontName $fontname dup type /stringtype eq { cvn } if def /currentdistillerparams where { pop } { /FontInfo currentdict /FontInfo known { FontInfo null copyfont } { 2 dict } ifelse dup begin /ItalicAngle $italicangle def /FontMatrix FontMatrix [ 1 0 ItalicAngle dup sin exch cos div 1 0 0 ] matrix concatmatrix readonly end 4 2 roll def def } ifelse FontName currentdict end definefont exch setglobal } bind def end def /$None 1 dict dup begin /$BuildFont {} bind def end def end def /$Oblique SetSubstituteStrategy /$findfontByEnum { dup type /stringtype eq { cvn } if dup /$fontname exch def $sname null eq { $str cvs dup length $slen sub $slen getinterval } { pop $sname } ifelse $fontpat dup 0 (fonts/*) putinterval exch 7 exch putinterval /$match false def $SubstituteFont /$dstack countdictstack array dictstack put mark { $fontpat 0 $slen 7 add getinterval { /$match exch def exit } $str filenameforall } stopped { cleardictstack currentdict true $SubstituteFont /$dstack get { exch { 1 index eq { pop false } { true } ifelse } { begin false } ifelse } forall pop } if cleartomark /$slen 0 def $match false ne { $match (fonts/) anchorsearch pop pop cvn } { /Courier } ifelse } bind def /$ROS 1 dict dup begin /Adobe 4 dict dup begin /Japan1 [ /Ryumin-Light /HeiseiMin-W3 /GothicBBB-Medium /HeiseiKakuGo-W5 /HeiseiMaruGo-W4 /Jun101-Light ] def /Korea1 [ /HYSMyeongJo-Medium /HYGoThic-Medium ] def /GB1 [ /STSong-Light /STHeiti-Regular ] def /CNS1 [ /MKai-Medium /MHei-Medium ] def end def end def /$cmapname null def /$deepcopyfont { dup /FontType get 0 eq { 1 dict dup /FontName /copied put copyfont begin /FDepVector FDepVector copyarray 0 1 2 index length 1 sub { 2 copy get $deepcopyfont dup /FontName /copied put /copied exch definefont 3 copy put pop pop } for def currentdict end } { $Strategies /$Type3Underprint get exec } ifelse } bind def /$buildfontname { dup /CIDFont findresource /CIDSystemInfo get begin Registry length Ordering length Supplement 8 string cvs 3 copy length 2 add add add string dup 5 1 roll dup 0 Registry putinterval dup 4 index (-) putinterval dup 4 index 1 add Ordering putinterval 4 2 roll add 1 add 2 copy (-) putinterval end 1 add 2 copy 0 exch getinterval $cmapname $fontpat cvs exch anchorsearch { pop pop 3 2 roll putinterval cvn /$cmapname exch def } { pop pop pop pop pop } ifelse length $str 1 index (-) putinterval 1 add $str 1 index $cmapname $fontpat cvs putinterval $cmapname length add $str exch 0 exch getinterval cvn } bind def /$findfontByROS { /$fontname exch def $ROS Registry 2 copy known { get Ordering 2 copy known { get } { pop pop [] } ifelse } { pop pop [] } ifelse false exch { dup /CIDFont resourcestatus { pop pop save 1 index /CIDFont findresource dup /WidthsOnly known { dup /WidthsOnly get } { false } ifelse exch pop exch restore { pop } { exch pop true exit } ifelse } { pop } ifelse } forall { $str cvs $buildfontname } { false (*) { save exch dup /CIDFont findresource dup /WidthsOnly known { dup /WidthsOnly get not } { true } ifelse exch /CIDSystemInfo get dup /Registry get Registry eq exch /Ordering get Ordering eq and and { exch restore exch pop true exit } { pop restore } ifelse } $str /CIDFont resourceforall { $buildfontname } { $fontname $findfontByEnum } ifelse } ifelse } bind def end end currentdict /$error known currentdict /languagelevel known and dup { pop $error /SubstituteFont known } if dup { $error } { Adobe_CoolType_Core } ifelse begin { /SubstituteFont /CMap /Category resourcestatus { pop pop { $SubstituteFont begin /$substituteFound true def dup length $slen gt $sname null ne or $slen 0 gt and { $sname null eq { dup $str cvs dup length $slen sub $slen getinterval cvn } { $sname } ifelse Adobe_CoolType_Data /InVMFontsByCMap get 1 index 2 copy known { get false exch { pop currentglobal { GlobalFontDirectory 1 index known { exch pop true exit } { pop } ifelse } { FontDirectory 1 index known { exch pop true exit } { GlobalFontDirectory 1 index known { exch pop true exit } { pop } ifelse } ifelse } ifelse } forall } { pop pop false } ifelse { exch pop exch pop } { dup /CMap resourcestatus { pop pop dup /$cmapname exch def /CMap findresource /CIDSystemInfo get { def } forall $findfontByROS } { 128 string cvs dup (-) search { 3 1 roll search { 3 1 roll pop { dup cvi } stopped { pop pop pop pop pop $findfontByEnum } { 4 2 roll pop pop exch length exch 2 index length 2 index sub exch 1 sub -1 0 { $str cvs dup length 4 index 0 4 index 4 3 roll add getinterval exch 1 index exch 3 index exch putinterval dup /CMap resourcestatus { pop pop 4 1 roll pop pop pop dup /$cmapname exch def /CMap findresource /CIDSystemInfo get { def } forall $findfontByROS true exit } { pop } ifelse } for dup type /booleantype eq { pop } { pop pop pop $findfontByEnum } ifelse } ifelse } { pop pop pop $findfontByEnum } ifelse } { pop pop $findfontByEnum } ifelse } ifelse } ifelse } { //SubstituteFont exec } ifelse /$slen 0 def end } } { { $SubstituteFont begin /$substituteFound true def dup length $slen gt $sname null ne or $slen 0 gt and { $findfontByEnum } { //SubstituteFont exec } ifelse end } } ifelse bind readonly def Adobe_CoolType_Core /scfindfont /systemfindfont load put } { /scfindfont { $SubstituteFont begin dup systemfindfont dup /FontName known { dup /FontName get dup 3 index ne } { /noname true } ifelse dup { /$origfontnamefound 2 index def /$origfontname 4 index def /$substituteFound true def } if exch pop { $slen 0 gt $sname null ne 3 index length $slen gt or and { pop dup $findfontByEnum findfont dup maxlength 1 add dict begin { 1 index /FID eq { pop pop } { def } ifelse } forall currentdict end definefont dup /FontName known { dup /FontName get } { null } ifelse $origfontnamefound ne { $origfontname $str cvs print ( substitution revised, using ) print dup /FontName known { dup /FontName get } { (unspecified font) } ifelse $str cvs print (.\n) print } if } { exch pop } ifelse } { exch pop } ifelse end } bind def } ifelse end end Adobe_CoolType_Core_Defined not { Adobe_CoolType_Core /findfont { $SubstituteFont begin $depth 0 eq { /$fontname 1 index dup type /stringtype ne { $str cvs } if def /$substituteFound false def } if /$depth $depth 1 add def end scfindfont $SubstituteFont begin /$depth $depth 1 sub def $substituteFound $depth 0 eq and { $inVMIndex null ne { dup $inVMIndex $AddInVMFont } if $doSmartSub { currentdict /$Strategy known { $Strategy /$BuildFont get exec } if } if } if end } bind put } if } if end /$AddInVMFont { exch /FontName 2 copy known { get 1 dict dup begin exch 1 index gcheck def end exch Adobe_CoolType_Data /InVMFontsByCMap get exch $DictAdd } { pop pop pop } ifelse } bind def /$DictAdd { 2 copy known not { 2 copy 4 index length dict put } if Level2? not { 2 copy get dup maxlength exch length 4 index length add lt 2 copy get dup length 4 index length add exch maxlength 1 index lt { 2 mul dict begin 2 copy get { forall } def 2 copy currentdict put end } { pop } ifelse } if get begin { def } forall end } bind def end end %%EndResource %%BeginResource: procset Adobe_CoolType_Utility_MAKEOCF 1.21 0 %%Copyright: Copyright 1987-2005 Adobe Systems Incorporated. %%Version: 1.21 0 systemdict /languagelevel known dup { currentglobal false setglobal } { false } ifelse exch userdict /Adobe_CoolType_Utility 2 copy known { 2 copy get dup maxlength 27 add dict copy } { 27 dict } ifelse put Adobe_CoolType_Utility begin /@eexecStartData <BAB431EA07F209EB8C4348311481D9D3F76E3D15246555577D87BC510ED54E 118C39697FA9F6DB58128E60EB8A12FA24D7CDD2FA94D221FA9EC8DA3E5E6A1C 4ACECC8C2D39C54E7C946031DD156C3A6B4A09AD29E1867A> def /@recognizeCIDFont null def /ct_Level2? exch def /ct_Clone? 1183615869 internaldict dup /CCRun known not exch /eCCRun known not ct_Level2? and or def ct_Level2? { globaldict begin currentglobal true setglobal } if /ct_AddStdCIDMap ct_Level2? { { mark Adobe_CoolType_Utility /@recognizeCIDFont currentdict put { ((Hex) 57 StartData 0615 1e27 2c39 1c60 d8a8 cc31 fe2b f6e0 7aa3 e541 e21c 60d8 a8c9 c3d0 6d9e 1c60 d8a8 c9c2 02d7 9a1c 60d8 a849 1c60 d8a8 cc36 74f4 1144 b13b 77) 0 () /SubFileDecode filter cvx exec } stopped { cleartomark Adobe_CoolType_Utility /@recognizeCIDFont get countdictstack dup array dictstack exch 1 sub -1 0 { 2 copy get 3 index eq { 1 index length exch sub 1 sub { end } repeat exit } { pop } ifelse } for pop pop Adobe_CoolType_Utility /@eexecStartData get eexec } { cleartomark } ifelse } } { { Adobe_CoolType_Utility /@eexecStartData get eexec } } ifelse bind def userdict /cid_extensions known dup { cid_extensions /cid_UpdateDB known and } if { cid_extensions begin /cid_GetCIDSystemInfo { 1 index type /stringtype eq { exch cvn exch } if cid_extensions begin dup load 2 index known { 2 copy cid_GetStatusInfo dup null ne { 1 index load 3 index get dup null eq { pop pop cid_UpdateDB } { exch 1 index /Created get eq { exch pop exch pop } { pop cid_UpdateDB } ifelse } ifelse } { pop cid_UpdateDB } ifelse } { cid_UpdateDB } ifelse end } bind def end } if ct_Level2? { end setglobal } if /ct_UseNativeCapability? systemdict /composefont known def /ct_MakeOCF 35 dict def /ct_Vars 25 dict def /ct_GlyphDirProcs 6 dict def /ct_BuildCharDict 15 dict dup begin /charcode 2 string def /dst_string 1500 string def /nullstring () def /usewidths? true def end def ct_Level2? { setglobal } { pop } ifelse ct_GlyphDirProcs begin /GetGlyphDirectory { systemdict /languagelevel known { pop /CIDFont findresource /GlyphDirectory get } { 1 index /CIDFont findresource /GlyphDirectory get dup type /dicttype eq { dup dup maxlength exch length sub 2 index lt { dup length 2 index add dict copy 2 index /CIDFont findresource/GlyphDirectory 2 index put } if } if exch pop exch pop } ifelse + } def /+ { systemdict /languagelevel known { currentglobal false setglobal 3 dict begin /vm exch def } { 1 dict begin } ifelse /$ exch def systemdict /languagelevel known { vm setglobal /gvm currentglobal def $ gcheck setglobal } if ? { $ begin } if } def /? { $ type /dicttype eq } def /| { userdict /Adobe_CoolType_Data known { Adobe_CoolType_Data /AddWidths? known { currentdict Adobe_CoolType_Data begin begin AddWidths? { Adobe_CoolType_Data /CC 3 index put ? { def } { $ 3 1 roll put } ifelse CC charcode exch 1 index 0 2 index 256 idiv put 1 index exch 1 exch 256 mod put stringwidth 2 array astore currentfont /Widths get exch CC exch put } { ? { def } { $ 3 1 roll put } ifelse } ifelse end end } { ? { def } { $ 3 1 roll put } ifelse } ifelse } { ? { def } { $ 3 1 roll put } ifelse } ifelse } def /! { ? { end } if systemdict /languagelevel known { gvm setglobal } if end } def /: { string currentfile exch readstring pop } executeonly def end ct_MakeOCF begin /ct_cHexEncoding [/c00/c01/c02/c03/c04/c05/c06/c07/c08/c09/c0A/c0B/c0C/c0D/c0E/c0F/c10/c11/c12 /c13/c14/c15/c16/c17/c18/c19/c1A/c1B/c1C/c1D/c1E/c1F/c20/c21/c22/c23/c24/c25 /c26/c27/c28/c29/c2A/c2B/c2C/c2D/c2E/c2F/c30/c31/c32/c33/c34/c35/c36/c37/c38 /c39/c3A/c3B/c3C/c3D/c3E/c3F/c40/c41/c42/c43/c44/c45/c46/c47/c48/c49/c4A/c4B /c4C/c4D/c4E/c4F/c50/c51/c52/c53/c54/c55/c56/c57/c58/c59/c5A/c5B/c5C/c5D/c5E /c5F/c60/c61/c62/c63/c64/c65/c66/c67/c68/c69/c6A/c6B/c6C/c6D/c6E/c6F/c70/c71 /c72/c73/c74/c75/c76/c77/c78/c79/c7A/c7B/c7C/c7D/c7E/c7F/c80/c81/c82/c83/c84 /c85/c86/c87/c88/c89/c8A/c8B/c8C/c8D/c8E/c8F/c90/c91/c92/c93/c94/c95/c96/c97 /c98/c99/c9A/c9B/c9C/c9D/c9E/c9F/cA0/cA1/cA2/cA3/cA4/cA5/cA6/cA7/cA8/cA9/cAA /cAB/cAC/cAD/cAE/cAF/cB0/cB1/cB2/cB3/cB4/cB5/cB6/cB7/cB8/cB9/cBA/cBB/cBC/cBD /cBE/cBF/cC0/cC1/cC2/cC3/cC4/cC5/cC6/cC7/cC8/cC9/cCA/cCB/cCC/cCD/cCE/cCF/cD0 /cD1/cD2/cD3/cD4/cD5/cD6/cD7/cD8/cD9/cDA/cDB/cDC/cDD/cDE/cDF/cE0/cE1/cE2/cE3 /cE4/cE5/cE6/cE7/cE8/cE9/cEA/cEB/cEC/cED/cEE/cEF/cF0/cF1/cF2/cF3/cF4/cF5/cF6 /cF7/cF8/cF9/cFA/cFB/cFC/cFD/cFE/cFF] def /ct_CID_STR_SIZE 8000 def /ct_mkocfStr100 100 string def /ct_defaultFontMtx [.001 0 0 .001 0 0] def /ct_1000Mtx [1000 0 0 1000 0 0] def /ct_raise {exch cvx exch errordict exch get exec stop} bind def /ct_reraise { cvx $error /errorname get (Error: ) print dup ( ) cvs print errordict exch get exec stop } bind def /ct_cvnsi { 1 index add 1 sub 1 exch 0 4 1 roll { 2 index exch get exch 8 bitshift add } for exch pop } bind def /ct_GetInterval { Adobe_CoolType_Utility /ct_BuildCharDict get begin /dst_index 0 def dup dst_string length gt { dup string /dst_string exch def } if 1 index ct_CID_STR_SIZE idiv /arrayIndex exch def 2 index arrayIndex get 2 index arrayIndex ct_CID_STR_SIZE mul sub { dup 3 index add 2 index length le { 2 index getinterval dst_string dst_index 2 index putinterval length dst_index add /dst_index exch def exit } { 1 index length 1 index sub dup 4 1 roll getinterval dst_string dst_index 2 index putinterval pop dup dst_index add /dst_index exch def sub /arrayIndex arrayIndex 1 add def 2 index dup length arrayIndex gt { arrayIndex get } { pop exit } ifelse 0 } ifelse } loop pop pop pop dst_string 0 dst_index getinterval end } bind def ct_Level2? { /ct_resourcestatus currentglobal mark true setglobal { /unknowninstancename /Category resourcestatus } stopped { cleartomark setglobal true } { cleartomark currentglobal not exch setglobal } ifelse { { mark 3 1 roll /Category findresource begin ct_Vars /vm currentglobal put ({ResourceStatus} stopped) 0 () /SubFileDecode filter cvx exec { cleartomark false } { { 3 2 roll pop true } { cleartomark false } ifelse } ifelse ct_Vars /vm get setglobal end } } { { resourcestatus } } ifelse bind def /CIDFont /Category ct_resourcestatus { pop pop } { currentglobal true setglobal /Generic /Category findresource dup length dict copy dup /InstanceType /dicttype put /CIDFont exch /Category defineresource pop setglobal } ifelse ct_UseNativeCapability? { /CIDInit /ProcSet findresource begin 12 dict begin begincmap /CIDSystemInfo 3 dict dup begin /Registry (Adobe) def /Ordering (Identity) def /Supplement 0 def end def /CMapName /Identity-H def /CMapVersion 1.000 def /CMapType 1 def 1 begincodespacerange <0000> <FFFF> endcodespacerange 1 begincidrange <0000> <FFFF> 0 endcidrange endcmap CMapName currentdict /CMap defineresource pop end end } if } { /ct_Category 2 dict begin /CIDFont 10 dict def /ProcSet 2 dict def currentdict end def /defineresource { ct_Category 1 index 2 copy known { get dup dup maxlength exch length eq { dup length 10 add dict copy ct_Category 2 index 2 index put } if 3 index 3 index put pop exch pop } { pop pop /defineresource /undefined ct_raise } ifelse } bind def /findresource { ct_Category 1 index 2 copy known { get 2 index 2 copy known { get 3 1 roll pop pop} { pop pop /findresource /undefinedresource ct_raise } ifelse } { pop pop /findresource /undefined ct_raise } ifelse } bind def /resourcestatus { ct_Category 1 index 2 copy known { get 2 index known exch pop exch pop { 0 -1 true } { false } ifelse } { pop pop /findresource /undefined ct_raise } ifelse } bind def /ct_resourcestatus /resourcestatus load def } ifelse /ct_CIDInit 2 dict begin /ct_cidfont_stream_init { { dup (Binary) eq { pop null currentfile ct_Level2? { { cid_BYTE_COUNT () /SubFileDecode filter } stopped { pop pop pop } if } if /readstring load exit } if dup (Hex) eq { pop currentfile ct_Level2? { { null exch /ASCIIHexDecode filter /readstring } stopped { pop exch pop (>) exch /readhexstring } if } { (>) exch /readhexstring } ifelse load exit } if /StartData /typecheck ct_raise } loop cid_BYTE_COUNT ct_CID_STR_SIZE le { 2 copy cid_BYTE_COUNT string exch exec pop 1 array dup 3 -1 roll 0 exch put } { cid_BYTE_COUNT ct_CID_STR_SIZE div ceiling cvi dup array exch 2 sub 0 exch 1 exch { 2 copy 5 index ct_CID_STR_SIZE string 6 index exec pop put pop } for 2 index cid_BYTE_COUNT ct_CID_STR_SIZE mod string 3 index exec pop 1 index exch 1 index length 1 sub exch put } ifelse cid_CIDFONT exch /GlyphData exch put 2 index null eq { pop pop pop } { pop /readstring load 1 string exch { 3 copy exec pop dup length 0 eq { pop pop pop pop pop true exit } if 4 index eq { pop pop pop pop false exit } if } loop pop } ifelse } bind def /StartData { mark { currentdict dup /FDArray get 0 get /FontMatrix get 0 get 0.001 eq { dup /CDevProc known not { /CDevProc 1183615869 internaldict /stdCDevProc 2 copy known { get } { pop pop { pop pop pop pop pop 0 -1000 7 index 2 div 880 } } ifelse def } if } { /CDevProc { pop pop pop pop pop 0 1 cid_temp /cid_CIDFONT get /FDArray get 0 get /FontMatrix get 0 get div 7 index 2 div 1 index 0.88 mul } def } ifelse /cid_temp 15 dict def cid_temp begin /cid_CIDFONT exch def 3 copy pop dup /cid_BYTE_COUNT exch def 0 gt { ct_cidfont_stream_init FDArray { /Private get dup /SubrMapOffset known { begin /Subrs SubrCount array def Subrs SubrMapOffset SubrCount SDBytes ct_Level2? { currentdict dup /SubrMapOffset undef dup /SubrCount undef /SDBytes undef } if end /cid_SD_BYTES exch def /cid_SUBR_COUNT exch def /cid_SUBR_MAP_OFFSET exch def /cid_SUBRS exch def cid_SUBR_COUNT 0 gt { GlyphData cid_SUBR_MAP_OFFSET cid_SD_BYTES ct_GetInterval 0 cid_SD_BYTES ct_cvnsi 0 1 cid_SUBR_COUNT 1 sub { exch 1 index 1 add cid_SD_BYTES mul cid_SUBR_MAP_OFFSET add GlyphData exch cid_SD_BYTES ct_GetInterval 0 cid_SD_BYTES ct_cvnsi cid_SUBRS 4 2 roll GlyphData exch 4 index 1 index sub ct_GetInterval dup length string copy put } for pop } if } { pop } ifelse } forall } if cleartomark pop pop end CIDFontName currentdict /CIDFont defineresource pop end end } stopped { cleartomark /StartData ct_reraise } if } bind def currentdict end def /ct_saveCIDInit { /CIDInit /ProcSet ct_resourcestatus { true } { /CIDInitC /ProcSet ct_resourcestatus } ifelse { pop pop /CIDInit /ProcSet findresource ct_UseNativeCapability? { pop null } { /CIDInit ct_CIDInit /ProcSet defineresource pop } ifelse } { /CIDInit ct_CIDInit /ProcSet defineresource pop null } ifelse ct_Vars exch /ct_oldCIDInit exch put } bind def /ct_restoreCIDInit { ct_Vars /ct_oldCIDInit get dup null ne { /CIDInit exch /ProcSet defineresource pop } { pop } ifelse } bind def /ct_BuildCharSetUp { 1 index begin CIDFont begin Adobe_CoolType_Utility /ct_BuildCharDict get begin /ct_dfCharCode exch def /ct_dfDict exch def CIDFirstByte ct_dfCharCode add dup CIDCount ge { pop 0 } if /cid exch def { GlyphDirectory cid 2 copy known { get } { pop pop nullstring } ifelse dup length FDBytes sub 0 gt { dup FDBytes 0 ne { 0 FDBytes ct_cvnsi } { pop 0 } ifelse /fdIndex exch def dup length FDBytes sub FDBytes exch getinterval /charstring exch def exit } { pop cid 0 eq { /charstring nullstring def exit } if /cid 0 def } ifelse } loop } def /ct_SetCacheDevice { 0 0 moveto dup stringwidth 3 -1 roll true charpath pathbbox 0 -1000 7 index 2 div 880 setcachedevice2 0 0 moveto } def /ct_CloneSetCacheProc { 1 eq { stringwidth pop -2 div -880 0 -1000 setcharwidth moveto } { usewidths? { currentfont /Widths get cid 2 copy known { get exch pop aload pop } { pop pop stringwidth } ifelse } { stringwidth } ifelse setcharwidth 0 0 moveto } ifelse } def /ct_Type3ShowCharString { ct_FDDict fdIndex 2 copy known { get } { currentglobal 3 1 roll 1 index gcheck setglobal ct_Type1FontTemplate dup maxlength dict copy begin FDArray fdIndex get dup /FontMatrix 2 copy known { get } { pop pop ct_defaultFontMtx } ifelse /FontMatrix exch dup length array copy def /Private get /Private exch def /Widths rootfont /Widths get def /CharStrings 1 dict dup /.notdef <d841272cf18f54fc13> dup length string copy put def currentdict end /ct_Type1Font exch definefont dup 5 1 roll put setglobal } ifelse dup /CharStrings get 1 index /Encoding get ct_dfCharCode get charstring put rootfont /WMode 2 copy known { get } { pop pop 0 } ifelse exch 1000 scalefont setfont ct_str1 0 ct_dfCharCode put ct_str1 exch ct_dfSetCacheProc ct_SyntheticBold { currentpoint ct_str1 show newpath moveto ct_str1 true charpath ct_StrokeWidth setlinewidth stroke } { ct_str1 show } ifelse } def /ct_Type4ShowCharString { ct_dfDict ct_dfCharCode charstring FDArray fdIndex get dup /FontMatrix get dup ct_defaultFontMtx ct_matrixeq not { ct_1000Mtx matrix concatmatrix concat } { pop } ifelse /Private get Adobe_CoolType_Utility /ct_Level2? get not { ct_dfDict /Private 3 -1 roll { put } 1183615869 internaldict /superexec get exec } if 1183615869 internaldict Adobe_CoolType_Utility /ct_Level2? get { 1 index } { 3 index /Private get mark 6 1 roll } ifelse dup /RunInt known { /RunInt get } { pop /CCRun } ifelse get exec Adobe_CoolType_Utility /ct_Level2? get not { cleartomark } if } bind def /ct_BuildCharIncremental { { Adobe_CoolType_Utility /ct_MakeOCF get begin ct_BuildCharSetUp ct_ShowCharString } stopped { stop } if end end end end } bind def /BaseFontNameStr (BF00) def /ct_Type1FontTemplate 14 dict begin /FontType 1 def /FontMatrix [0.001 0 0 0.001 0 0] def /FontBBox [-250 -250 1250 1250] def /Encoding ct_cHexEncoding def /PaintType 0 def currentdict end def /BaseFontTemplate 11 dict begin /FontMatrix [0.001 0 0 0.001 0 0] def /FontBBox [-250 -250 1250 1250] def /Encoding ct_cHexEncoding def /BuildChar /ct_BuildCharIncremental load def ct_Clone? { /FontType 3 def /ct_ShowCharString /ct_Type3ShowCharString load def /ct_dfSetCacheProc /ct_CloneSetCacheProc load def /ct_SyntheticBold false def /ct_StrokeWidth 1 def } { /FontType 4 def /Private 1 dict dup /lenIV 4 put def /CharStrings 1 dict dup /.notdef <d841272cf18f54fc13> put def /PaintType 0 def /ct_ShowCharString /ct_Type4ShowCharString load def } ifelse /ct_str1 1 string def currentdict end def /BaseFontDictSize BaseFontTemplate length 5 add def /ct_matrixeq { true 0 1 5 { dup 4 index exch get exch 3 index exch get eq and dup not { exit } if } for exch pop exch pop } bind def /ct_makeocf { 15 dict begin exch /WMode exch def exch /FontName exch def /FontType 0 def /FMapType 2 def dup /FontMatrix known { dup /FontMatrix get /FontMatrix exch def } { /FontMatrix matrix def } ifelse /bfCount 1 index /CIDCount get 256 idiv 1 add dup 256 gt { pop 256} if def /Encoding 256 array 0 1 bfCount 1 sub { 2 copy dup put pop } for bfCount 1 255 { 2 copy bfCount put pop } for def /FDepVector bfCount dup 256 lt { 1 add } if array def BaseFontTemplate BaseFontDictSize dict copy begin /CIDFont exch def CIDFont /FontBBox known { CIDFont /FontBBox get /FontBBox exch def } if CIDFont /CDevProc known { CIDFont /CDevProc get /CDevProc exch def } if currentdict end BaseFontNameStr 3 (0) putinterval 0 1 bfCount dup 256 eq { 1 sub } if { FDepVector exch 2 index BaseFontDictSize dict copy begin dup /CIDFirstByte exch 256 mul def FontType 3 eq { /ct_FDDict 2 dict def } if currentdict end 1 index 16 BaseFontNameStr 2 2 getinterval cvrs pop BaseFontNameStr exch definefont put } for ct_Clone? { /Widths 1 index /CIDFont get /GlyphDirectory get length dict def } if FontName currentdict end definefont ct_Clone? { gsave dup 1000 scalefont setfont ct_BuildCharDict begin /usewidths? false def currentfont /Widths get begin exch /CIDFont get /GlyphDirectory get { pop dup charcode exch 1 index 0 2 index 256 idiv put 1 index exch 1 exch 256 mod put stringwidth 2 array astore def } forall end /usewidths? true def end grestore } { exch pop } ifelse } bind def /ct_ComposeFont { ct_UseNativeCapability? { 2 index /CMap ct_resourcestatus { pop pop exch pop } { /CIDInit /ProcSet findresource begin 12 dict begin begincmap /CMapName 3 index def /CMapVersion 1.000 def /CMapType 1 def exch /WMode exch def /CIDSystemInfo 3 dict dup begin /Registry (Adobe) def /Ordering CMapName ct_mkocfStr100 cvs (Adobe-) search { pop pop (-) search { dup length string copy exch pop exch pop } { pop (Identity)} ifelse } { pop (Identity) } ifelse def /Supplement 0 def end def 1 begincodespacerange <0000> <FFFF> endcodespacerange 1 begincidrange <0000> <FFFF> 0 endcidrange endcmap CMapName currentdict /CMap defineresource pop end end } ifelse composefont } { 3 2 roll pop 0 get /CIDFont findresource ct_makeocf } ifelse } bind def /ct_MakeIdentity { ct_UseNativeCapability? { 1 index /CMap ct_resourcestatus { pop pop } { /CIDInit /ProcSet findresource begin 12 dict begin begincmap /CMapName 2 index def /CMapVersion 1.000 def /CMapType 1 def /CIDSystemInfo 3 dict dup begin /Registry (Adobe) def /Ordering CMapName ct_mkocfStr100 cvs (Adobe-) search { pop pop (-) search { dup length string copy exch pop exch pop } { pop (Identity) } ifelse } { pop (Identity) } ifelse def /Supplement 0 def end def 1 begincodespacerange <0000> <FFFF> endcodespacerange 1 begincidrange <0000> <FFFF> 0 endcidrange endcmap CMapName currentdict /CMap defineresource pop end end } ifelse composefont } { exch pop 0 get /CIDFont findresource ct_makeocf } ifelse } bind def currentdict readonly pop end end %%EndResource %%BeginResource: procset Adobe_CoolType_Utility_T42 1.0 0 %%Copyright: Copyright 1987-2004 Adobe Systems Incorporated. %%Version: 1.0 0 userdict /ct_T42Dict 15 dict put ct_T42Dict begin /Is2015? { version cvi 2015 ge } bind def /AllocGlyphStorage { Is2015? { pop } { {string} forall } ifelse } bind def /Type42DictBegin { 25 dict begin /FontName exch def /CharStrings 256 dict begin /.notdef 0 def currentdict end def /Encoding exch def /PaintType 0 def /FontType 42 def /FontMatrix [1 0 0 1 0 0] def 4 array astore cvx /FontBBox exch def /sfnts } bind def /Type42DictEnd { currentdict dup /FontName get exch definefont end ct_T42Dict exch dup /FontName get exch put } bind def /RD {string currentfile exch readstring pop} executeonly def /PrepFor2015 { Is2015? { /GlyphDirectory 16 dict def sfnts 0 get dup 2 index (glyx) putinterval 2 index (locx) putinterval pop pop } { pop pop } ifelse } bind def /AddT42Char { Is2015? { /GlyphDirectory get begin def end pop pop } { /sfnts get 4 index get 3 index 2 index putinterval pop pop pop pop } ifelse } bind def /T0AddT42Mtx2 { /CIDFont findresource /Metrics2 get begin def end }bind def end %%EndResource Adobe_CoolType_Core begin /$Oblique SetSubstituteStrategy end %%BeginResource: procset Adobe_AGM_Image 1.0 0 %%Version: 1.0 0 %%Copyright: Copyright (C) 2000-2003 Adobe Systems, Inc. All Rights Reserved. systemdict /setpacking known { currentpacking true setpacking } if userdict /Adobe_AGM_Image 75 dict dup begin put /Adobe_AGM_Image_Id /Adobe_AGM_Image_1.0_0 def /nd{ null def }bind def /AGMIMG_&image nd /AGMIMG_&colorimage nd /AGMIMG_&imagemask nd /AGMIMG_mbuf () def /AGMIMG_ybuf () def /AGMIMG_kbuf () def /AGMIMG_c 0 def /AGMIMG_m 0 def /AGMIMG_y 0 def /AGMIMG_k 0 def /AGMIMG_tmp nd /AGMIMG_imagestring0 nd /AGMIMG_imagestring1 nd /AGMIMG_imagestring2 nd /AGMIMG_imagestring3 nd /AGMIMG_imagestring4 nd /AGMIMG_imagestring5 nd /AGMIMG_cnt nd /AGMIMG_fsave nd /AGMIMG_colorAry nd /AGMIMG_override nd /AGMIMG_name nd /AGMIMG_maskSource nd /AGMIMG_flushfilters nd /invert_image_samples nd /knockout_image_samples nd /img nd /sepimg nd /devnimg nd /idximg nd /doc_setup { Adobe_AGM_Core begin Adobe_AGM_Image begin /AGMIMG_&image systemdict/image get def /AGMIMG_&imagemask systemdict/imagemask get def /colorimage where{ pop /AGMIMG_&colorimage /colorimage ldf }if end end }def /page_setup { Adobe_AGM_Image begin /AGMIMG_ccimage_exists {/customcolorimage where { pop /Adobe_AGM_OnHost_Seps where { pop false }{ /Adobe_AGM_InRip_Seps where { pop false }{ true }ifelse }ifelse }{ false }ifelse }bdf level2{ /invert_image_samples { Adobe_AGM_Image/AGMIMG_tmp Decode length ddf /Decode [ Decode 1 get Decode 0 get] def }def /knockout_image_samples { Operator/imagemask ne{ /Decode [1 1] def }if }def }{ /invert_image_samples { {1 exch sub} currenttransfer addprocs settransfer }def /knockout_image_samples { { pop 1 } currenttransfer addprocs settransfer }def }ifelse /img /imageormask ldf /sepimg /sep_imageormask ldf /devnimg /devn_imageormask ldf /idximg /indexed_imageormask ldf /_ctype 7 def currentdict{ dup xcheck 1 index type dup /arraytype eq exch /packedarraytype eq or and{ bind }if def }forall }def /page_trailer { end }def /doc_trailer { }def /AGMIMG_flushfilters { dup type /arraytype ne {1 array astore}if aload length { dup type /filetype eq { dup status 1 index currentfile ne and {dup flushfile closefile} {pop} ifelse }{pop}ifelse } repeat }def /imageormask_sys { begin save mark level2{ currentdict Operator /imagemask eq{ AGMIMG_&imagemask }{ use_mask { level3 {process_mask_L3 AGMIMG_&image}{masked_image_simulation}ifelse }{ AGMIMG_&image }ifelse }ifelse }{ Width Height Operator /imagemask eq{ Decode 0 get 1 eq Decode 1 get 0 eq and ImageMatrix /DataSource load AGMIMG_&imagemask }{ BitsPerComponent ImageMatrix /DataSource load AGMIMG_&image }ifelse }ifelse currentdict /_Filters known {_Filters AGMIMG_flushfilters} if cleartomark restore end }def /overprint_plate { currentoverprint { 0 get dup type /nametype eq { dup /DeviceGray eq{ pop AGMCORE_black_plate not }{ /DeviceCMYK eq{ AGMCORE_is_cmyk_sep not }if }ifelse }{ false exch { AGMOHS_sepink eq or } forall not } ifelse }{ pop false }ifelse }def /process_mask_L3 { dup begin /ImageType 1 def end 4 dict begin /DataDict exch def /ImageType 3 def /InterleaveType 3 def /MaskDict 9 dict begin /ImageType 1 def /Width DataDict dup /MaskWidth known {/MaskWidth}{/Width} ifelse get def /Height DataDict dup /MaskHeight known {/MaskHeight}{/Height} ifelse get def /ImageMatrix [Width 0 0 Height neg 0 Height] def /NComponents 1 def /BitsPerComponent 1 def /Decode [0 1] def /DataSource AGMIMG_maskSource def currentdict end def currentdict end }def /use_mask { dup type /dicttype eq { dup /Mask known { dup /Mask get { level3 {true} { dup /MaskWidth known {dup /MaskWidth get 1 index /Width get eq}{true}ifelse exch dup /MaskHeight known {dup /MaskHeight get 1 index /Height get eq}{true}ifelse 3 -1 roll and } ifelse } {false} ifelse } {false} ifelse } {false} ifelse }def /make_line_source { begin MultipleDataSources { [ Decode length 2 div cvi {Width string} repeat ] }{ Width Decode length 2 div mul cvi string }ifelse end }def /datasource_to_str { exch dup type dup /filetype eq { pop exch readstring }{ /arraytype eq { exec exch copy }{ pop }ifelse }ifelse pop }def /masked_image_simulation { 3 dict begin dup make_line_source /line_source xdf /mask_source AGMIMG_maskSource /LZWDecode filter def dup /Width get 8 div ceiling cvi string /mask_str xdf begin gsave 0 1 translate 1 -1 Height div scale 1 1 Height { pop gsave MultipleDataSources { 0 1 DataSource length 1 sub { dup DataSource exch get exch line_source exch get datasource_to_str } for }{ DataSource line_source datasource_to_str } ifelse << /PatternType 1 /PaintProc [ /pop cvx << /ImageType 1 /Width Width /Height 1 /ImageMatrix Width 1.0 sub 1 matrix scale 0.5 0 matrix translate matrix concatmatrix /MultipleDataSources MultipleDataSources /DataSource line_source /BitsPerComponent BitsPerComponent /Decode Decode >> /image cvx ] cvx /BBox [0 0 Width 1] /XStep Width /YStep 1 /PaintType 1 /TilingType 2 >> matrix makepattern set_pattern << /ImageType 1 /Width Width /Height 1 /ImageMatrix Width 1 matrix scale /MultipleDataSources false /DataSource mask_source mask_str readstring pop /BitsPerComponent 1 /Decode [0 1] >> imagemask grestore 0 1 translate } for grestore end end }def /imageormask { begin SkipImageProc { currentdict consumeimagedata } { save mark level2 AGMCORE_host_sep not and{ currentdict Operator /imagemask eq DeviceN_PS2 not and { imagemask }{ AGMCORE_in_rip_sep currentoverprint and currentcolorspace 0 get /DeviceGray eq and{ [/Separation /Black /DeviceGray {}] setcolorspace /Decode [ Decode 1 get Decode 0 get ] def }if use_mask { level3 {process_mask_L3 image}{masked_image_simulation}ifelse }{ DeviceN_NoneName DeviceN_PS2 Indexed_DeviceN level3 not and or or AGMCORE_in_rip_sep and { Names convert_to_process not { 2 dict begin /imageDict xdf /names_index 0 def gsave imageDict write_image_file { Names { dup (None) ne { [/Separation 3 -1 roll /DeviceGray {1 exch sub}] setcolorspace Operator imageDict read_image_file names_index 0 eq {true setoverprint} if /names_index names_index 1 add def }{ pop } ifelse } forall close_image_file } if grestore end }{ Operator /imagemask eq { imagemask }{ image } ifelse } ifelse }{ Operator /imagemask eq { imagemask }{ image } ifelse } ifelse }ifelse }ifelse }{ Width Height Operator /imagemask eq{ Decode 0 get 1 eq Decode 1 get 0 eq and ImageMatrix /DataSource load /Adobe_AGM_OnHost_Seps where { pop imagemask }{ currentgray 1 ne{ currentdict imageormask_sys }{ currentoverprint not{ 1 AGMCORE_&setgray currentdict imageormask_sys }{ currentdict ignoreimagedata }ifelse }ifelse }ifelse }{ BitsPerComponent ImageMatrix MultipleDataSources{ 0 1 NComponents 1 sub{ DataSource exch get }for }{ /DataSource load }ifelse Operator /colorimage eq{ AGMCORE_host_sep{ MultipleDataSources level2 or NComponents 4 eq and{ AGMCORE_is_cmyk_sep{ MultipleDataSources{ /DataSource [ DataSource 0 get /exec cvx DataSource 1 get /exec cvx DataSource 2 get /exec cvx DataSource 3 get /exec cvx /AGMCORE_get_ink_data cvx ] cvx def }{ /DataSource Width BitsPerComponent mul 7 add 8 idiv Height mul 4 mul /DataSource load filter_cmyk 0 () /SubFileDecode filter def }ifelse /Decode [ Decode 0 get Decode 1 get ] def /MultipleDataSources false def /NComponents 1 def /Operator /image def invert_image_samples 1 AGMCORE_&setgray currentdict imageormask_sys }{ currentoverprint not Operator/imagemask eq and{ 1 AGMCORE_&setgray currentdict imageormask_sys }{ currentdict ignoreimagedata }ifelse }ifelse }{ MultipleDataSources NComponents AGMIMG_&colorimage }ifelse }{ true NComponents colorimage }ifelse }{ Operator /image eq{ AGMCORE_host_sep{ /DoImage true def HostSepColorImage{ invert_image_samples }{ AGMCORE_black_plate not Operator/imagemask ne and{ /DoImage false def currentdict ignoreimagedata }if }ifelse 1 AGMCORE_&setgray DoImage {currentdict imageormask_sys} if }{ use_mask { level3 {process_mask_L3 image}{masked_image_simulation}ifelse }{ image }ifelse }ifelse }{ Operator/knockout eq{ pop pop pop pop pop currentcolorspace overprint_plate not{ knockout_unitsq }if }if }ifelse }ifelse }ifelse }ifelse cleartomark restore }ifelse currentdict /_Filters known {_Filters AGMIMG_flushfilters} if end }def /sep_imageormask { /sep_colorspace_dict AGMCORE_gget begin CSA map_csa begin SkipImageProc { currentdict consumeimagedata } { save mark AGMCORE_avoid_L2_sep_space{ /Decode [ Decode 0 get 255 mul Decode 1 get 255 mul ] def }if AGMIMG_ccimage_exists MappedCSA 0 get /DeviceCMYK eq and currentdict/Components known and Name () ne and Name (All) ne and Operator /image eq and AGMCORE_producing_seps not and level2 not and { Width Height BitsPerComponent ImageMatrix [ /DataSource load /exec cvx { 0 1 2 index length 1 sub{ 1 index exch 2 copy get 255 xor put }for } /exec cvx ] cvx bind MappedCSA 0 get /DeviceCMYK eq{ Components aload pop }{ 0 0 0 Components aload pop 1 exch sub }ifelse Name findcmykcustomcolor customcolorimage }{ AGMCORE_producing_seps not{ level2{ AGMCORE_avoid_L2_sep_space not currentcolorspace 0 get /Separation ne and{ [/Separation Name MappedCSA sep_proc_name exch 0 get exch load ] setcolorspace_opt /sep_tint AGMCORE_gget setcolor }if currentdict imageormask }{ currentdict Operator /imagemask eq{ imageormask }{ sep_imageormask_lev1 }ifelse }ifelse }{ AGMCORE_host_sep{ Operator/knockout eq{ currentdict/ImageMatrix get concat knockout_unitsq }{ currentgray 1 ne{ AGMCORE_is_cmyk_sep Name (All) ne and{ level2{ Name AGMCORE_IsSeparationAProcessColor { Operator /imagemask eq{ /sep_tint AGMCORE_gget 1 exch sub AGMCORE_&setcolor }{ invert_image_samples }ifelse }{ [ /Separation Name [/DeviceGray] { sep_colorspace_proc AGMCORE_get_ink_data 1 exch sub } bind ] AGMCORE_&setcolorspace /sep_tint AGMCORE_gget AGMCORE_&setcolor }ifelse currentdict imageormask_sys }{ currentdict Operator /imagemask eq{ imageormask_sys }{ sep_image_lev1_sep }ifelse }ifelse }{ Operator/imagemask ne{ invert_image_samples }if currentdict imageormask_sys }ifelse }{ currentoverprint not Name (All) eq or Operator/imagemask eq and{ currentdict imageormask_sys }{ currentoverprint not { gsave knockout_unitsq grestore }if currentdict consumeimagedata }ifelse }ifelse }ifelse }{ currentcolorspace 0 get /Separation ne{ [/Separation Name MappedCSA sep_proc_name exch 0 get exch load ] setcolorspace_opt /sep_tint AGMCORE_gget setcolor }if currentoverprint MappedCSA 0 get /DeviceCMYK eq and Name AGMCORE_IsSeparationAProcessColor not and Name inRip_spot_has_ink not and Name (All) ne and { imageormask_l2_overprint }{ currentdict imageormask }ifelse }ifelse }ifelse }ifelse cleartomark restore }ifelse currentdict /_Filters known {_Filters AGMIMG_flushfilters} if end end }def /decode_image_sample { 4 1 roll exch dup 5 1 roll sub 2 4 -1 roll exp 1 sub div mul add } bdf /colorSpaceElemCnt { mark currentcolor counttomark dup 2 add 1 roll cleartomark } bdf /devn_sep_datasource { 1 dict begin /dataSource xdf [ 0 1 dataSource length 1 sub { dup currentdict /dataSource get /exch cvx /get cvx /exec cvx /exch cvx names_index /ne cvx [ /pop cvx ] cvx /if cvx } for ] cvx bind end } bdf /devn_alt_datasource { 11 dict begin /convProc xdf /origcolorSpaceElemCnt xdf /origMultipleDataSources xdf /origBitsPerComponent xdf /origDecode xdf /origDataSource xdf /dsCnt origMultipleDataSources {origDataSource length}{1}ifelse def /DataSource origMultipleDataSources { [ BitsPerComponent 8 idiv origDecode length 2 idiv mul string 0 1 origDecode length 2 idiv 1 sub { dup 7 mul 1 add index exch dup BitsPerComponent 8 idiv mul exch origDataSource exch get 0 () /SubFileDecode filter BitsPerComponent 8 idiv string /readstring cvx /pop cvx /putinterval cvx }for ]bind cvx }{origDataSource}ifelse 0 () /SubFileDecode filter def [ origcolorSpaceElemCnt string 0 2 origDecode length 2 sub { dup origDecode exch get dup 3 -1 roll 1 add origDecode exch get exch sub 2 BitsPerComponent exp 1 sub div 1 BitsPerComponent 8 idiv {DataSource /read cvx /not cvx{0}/if cvx /mul cvx}repeat /mul cvx /add cvx }for /convProc load /exec cvx origcolorSpaceElemCnt 1 sub -1 0 { /dup cvx 2 /add cvx /index cvx 3 1 /roll cvx /exch cvx 255 /mul cvx /cvi cvx /put cvx }for ]bind cvx 0 () /SubFileDecode filter end } bdf /devn_imageormask { /devicen_colorspace_dict AGMCORE_gget begin CSA map_csa 2 dict begin dup /srcDataStrs [ 3 -1 roll begin currentdict /MultipleDataSources known {MultipleDataSources {DataSource length}{1}ifelse}{1} ifelse { Width Decode length 2 div mul cvi { dup 65535 gt {1 add 2 div cvi}{exit}ifelse } loop string } repeat end ] def /dstDataStr srcDataStrs 0 get length string def begin SkipImageProc { currentdict consumeimagedata } { save mark AGMCORE_producing_seps not { level3 not { Operator /imagemask ne { /DataSource [ [ DataSource Decode BitsPerComponent currentdict /MultipleDataSources known {MultipleDataSources}{false} ifelse colorSpaceElemCnt /devicen_colorspace_dict AGMCORE_gget /TintTransform get devn_alt_datasource 1 /string cvx /readstring cvx /pop cvx] cvx colorSpaceElemCnt 1 sub{dup}repeat] def /MultipleDataSources true def /Decode colorSpaceElemCnt [ exch {0 1} repeat ] def } if }if currentdict imageormask }{ AGMCORE_host_sep{ Names convert_to_process { CSA get_csa_by_name 0 get /DeviceCMYK eq { /DataSource Width BitsPerComponent mul 7 add 8 idiv Height mul 4 mul DataSource Decode BitsPerComponent currentdict /MultipleDataSources known {MultipleDataSources}{false} ifelse 4 /devicen_colorspace_dict AGMCORE_gget /TintTransform get devn_alt_datasource filter_cmyk 0 () /SubFileDecode filter def /MultipleDataSources false def /Decode [1 0] def /DeviceGray setcolorspace currentdict imageormask_sys }{ AGMCORE_report_unsupported_color_space AGMCORE_black_plate { /DataSource DataSource Decode BitsPerComponent currentdict /MultipleDataSources known {MultipleDataSources}{false} ifelse CSA get_csa_by_name 0 get /DeviceRGB eq{3}{1}ifelse /devicen_colorspace_dict AGMCORE_gget /TintTransform get devn_alt_datasource /MultipleDataSources false def /Decode colorSpaceElemCnt [ exch {0 1} repeat ] def currentdict imageormask_sys } { gsave knockout_unitsq grestore currentdict consumeimagedata } ifelse } ifelse } { /devicen_colorspace_dict AGMCORE_gget /names_index known { Operator/imagemask ne{ MultipleDataSources { /DataSource [ DataSource devn_sep_datasource /exec cvx ] cvx def /MultipleDataSources false def }{ /DataSource /DataSource load dstDataStr srcDataStrs 0 get filter_devn def } ifelse invert_image_samples } if currentdict imageormask_sys }{ currentoverprint not Operator/imagemask eq and{ currentdict imageormask_sys }{ currentoverprint not { gsave knockout_unitsq grestore }if currentdict consumeimagedata }ifelse }ifelse }ifelse }{ currentdict imageormask }ifelse }ifelse cleartomark restore }ifelse currentdict /_Filters known {_Filters AGMIMG_flushfilters} if end end end }def /imageormask_l2_overprint { currentdict currentcmykcolor add add add 0 eq{ currentdict consumeimagedata }{ level3{ currentcmykcolor /AGMIMG_k xdf /AGMIMG_y xdf /AGMIMG_m xdf /AGMIMG_c xdf Operator/imagemask eq{ [/DeviceN [ AGMIMG_c 0 ne {/Cyan} if AGMIMG_m 0 ne {/Magenta} if AGMIMG_y 0 ne {/Yellow} if AGMIMG_k 0 ne {/Black} if ] /DeviceCMYK {}] setcolorspace AGMIMG_c 0 ne {AGMIMG_c} if AGMIMG_m 0 ne {AGMIMG_m} if AGMIMG_y 0 ne {AGMIMG_y} if AGMIMG_k 0 ne {AGMIMG_k} if setcolor }{ /Decode [ Decode 0 get 255 mul Decode 1 get 255 mul ] def [/Indexed [ /DeviceN [ AGMIMG_c 0 ne {/Cyan} if AGMIMG_m 0 ne {/Magenta} if AGMIMG_y 0 ne {/Yellow} if AGMIMG_k 0 ne {/Black} if ] /DeviceCMYK { AGMIMG_k 0 eq {0} if AGMIMG_y 0 eq {0 exch} if AGMIMG_m 0 eq {0 3 1 roll} if AGMIMG_c 0 eq {0 4 1 roll} if } ] 255 { 255 div mark exch dup dup dup AGMIMG_k 0 ne{ /sep_tint AGMCORE_gget mul MappedCSA sep_proc_name exch pop load exec 4 1 roll pop pop pop counttomark 1 roll }{ pop }ifelse AGMIMG_y 0 ne{ /sep_tint AGMCORE_gget mul MappedCSA sep_proc_name exch pop load exec 4 2 roll pop pop pop counttomark 1 roll }{ pop }ifelse AGMIMG_m 0 ne{ /sep_tint AGMCORE_gget mul MappedCSA sep_proc_name exch pop load exec 4 3 roll pop pop pop counttomark 1 roll }{ pop }ifelse AGMIMG_c 0 ne{ /sep_tint AGMCORE_gget mul MappedCSA sep_proc_name exch pop load exec pop pop pop counttomark 1 roll }{ pop }ifelse counttomark 1 add -1 roll pop } ] setcolorspace }ifelse imageormask_sys }{ write_image_file{ currentcmykcolor 0 ne{ [/Separation /Black /DeviceGray {}] setcolorspace gsave /Black [{1 exch sub /sep_tint AGMCORE_gget mul} /exec cvx MappedCSA sep_proc_name cvx exch pop {4 1 roll pop pop pop 1 exch sub} /exec cvx] cvx modify_halftone_xfer Operator currentdict read_image_file grestore }if 0 ne{ [/Separation /Yellow /DeviceGray {}] setcolorspace gsave /Yellow [{1 exch sub /sep_tint AGMCORE_gget mul} /exec cvx MappedCSA sep_proc_name cvx exch pop {4 2 roll pop pop pop 1 exch sub} /exec cvx] cvx modify_halftone_xfer Operator currentdict read_image_file grestore }if 0 ne{ [/Separation /Magenta /DeviceGray {}] setcolorspace gsave /Magenta [{1 exch sub /sep_tint AGMCORE_gget mul} /exec cvx MappedCSA sep_proc_name cvx exch pop {4 3 roll pop pop pop 1 exch sub} /exec cvx] cvx modify_halftone_xfer Operator currentdict read_image_file grestore }if 0 ne{ [/Separation /Cyan /DeviceGray {}] setcolorspace gsave /Cyan [{1 exch sub /sep_tint AGMCORE_gget mul} /exec cvx MappedCSA sep_proc_name cvx exch pop {pop pop pop 1 exch sub} /exec cvx] cvx modify_halftone_xfer Operator currentdict read_image_file grestore } if close_image_file }{ imageormask }ifelse }ifelse }ifelse } def /indexed_imageormask { begin save mark currentdict AGMCORE_host_sep{ Operator/knockout eq{ /indexed_colorspace_dict AGMCORE_gget dup /CSA known { /CSA get get_csa_by_name }{ /Names get } ifelse overprint_plate not{ knockout_unitsq }if }{ Indexed_DeviceN { /devicen_colorspace_dict AGMCORE_gget /names_index known { indexed_image_lev2_sep }{ currentoverprint not{ knockout_unitsq }if currentdict consumeimagedata } ifelse }{ AGMCORE_is_cmyk_sep{ Operator /imagemask eq{ imageormask_sys }{ level2{ indexed_image_lev2_sep }{ indexed_image_lev1_sep }ifelse }ifelse }{ currentoverprint not{ knockout_unitsq }if currentdict consumeimagedata }ifelse }ifelse }ifelse }{ level2{ Indexed_DeviceN { /indexed_colorspace_dict AGMCORE_gget begin }{ /indexed_colorspace_dict AGMCORE_gget begin CSA get_csa_by_name 0 get /DeviceCMYK eq ps_level 3 ge and ps_version 3015.007 lt and { [/Indexed [/DeviceN [/Cyan /Magenta /Yellow /Black] /DeviceCMYK {}] HiVal Lookup] setcolorspace } if end } ifelse imageormask Indexed_DeviceN { end } if }{ Operator /imagemask eq{ imageormask }{ indexed_imageormask_lev1 }ifelse }ifelse }ifelse cleartomark restore currentdict /_Filters known {_Filters AGMIMG_flushfilters} if end }def /indexed_image_lev2_sep { /indexed_colorspace_dict AGMCORE_gget begin begin Indexed_DeviceN not { currentcolorspace dup 1 /DeviceGray put dup 3 currentcolorspace 2 get 1 add string 0 1 2 3 AGMCORE_get_ink_data 4 currentcolorspace 3 get length 1 sub { dup 4 idiv exch currentcolorspace 3 get exch get 255 exch sub 2 index 3 1 roll put }for put setcolorspace } if currentdict Operator /imagemask eq{ AGMIMG_&imagemask }{ use_mask { level3 {process_mask_L3 AGMIMG_&image}{masked_image_simulation}ifelse }{ AGMIMG_&image }ifelse }ifelse end end }def /OPIimage { dup type /dicttype ne{ 10 dict begin /DataSource xdf /ImageMatrix xdf /BitsPerComponent xdf /Height xdf /Width xdf /ImageType 1 def /Decode [0 1 def] currentdict end }if dup begin /NComponents 1 cdndf /MultipleDataSources false cdndf /SkipImageProc {false} cdndf /HostSepColorImage false cdndf /Decode [ 0 currentcolorspace 0 get /Indexed eq{ 2 BitsPerComponent exp 1 sub }{ 1 }ifelse ] cdndf /Operator /image cdndf end /sep_colorspace_dict AGMCORE_gget null eq{ imageormask }{ gsave dup begin invert_image_samples end sep_imageormask grestore }ifelse }def /cachemask_level2 { 3 dict begin /LZWEncode filter /WriteFilter xdf /readBuffer 256 string def /ReadFilter currentfile 0 (%EndMask) /SubFileDecode filter /ASCII85Decode filter /RunLengthDecode filter def { ReadFilter readBuffer readstring exch WriteFilter exch writestring not {exit} if }loop WriteFilter closefile end }def /cachemask_level3 { currentfile << /Filter [ /SubFileDecode /ASCII85Decode /RunLengthDecode ] /DecodeParms [ << /EODCount 0 /EODString (%EndMask) >> null null ] /Intent 1 >> /ReusableStreamDecode filter }def /spot_alias { /mapto_sep_imageormask { dup type /dicttype ne{ 12 dict begin /ImageType 1 def /DataSource xdf /ImageMatrix xdf /BitsPerComponent xdf /Height xdf /Width xdf /MultipleDataSources false def }{ begin }ifelse /Decode [/customcolor_tint AGMCORE_gget 0] def /Operator /image def /HostSepColorImage false def /SkipImageProc {false} def currentdict end sep_imageormask }bdf /customcolorimage { Adobe_AGM_Image/AGMIMG_colorAry xddf /customcolor_tint AGMCORE_gget << /Name AGMIMG_colorAry 4 get /CSA [ /DeviceCMYK ] /TintMethod /Subtractive /TintProc null /MappedCSA null /NComponents 4 /Components [ AGMIMG_colorAry aload pop pop ] >> setsepcolorspace mapto_sep_imageormask }ndf Adobe_AGM_Image/AGMIMG_&customcolorimage /customcolorimage load put /customcolorimage { Adobe_AGM_Image/AGMIMG_override false put current_spot_alias{dup 4 get map_alias}{false}ifelse { false set_spot_alias /customcolor_tint AGMCORE_gget exch setsepcolorspace pop mapto_sep_imageormask true set_spot_alias }{ AGMIMG_&customcolorimage }ifelse }bdf }def /snap_to_device { 6 dict begin matrix currentmatrix dup 0 get 0 eq 1 index 3 get 0 eq and 1 index 1 get 0 eq 2 index 2 get 0 eq and or exch pop { 1 1 dtransform 0 gt exch 0 gt /AGMIMG_xSign? exch def /AGMIMG_ySign? exch def 0 0 transform AGMIMG_ySign? {floor 0.1 sub}{ceiling 0.1 add} ifelse exch AGMIMG_xSign? {floor 0.1 sub}{ceiling 0.1 add} ifelse exch itransform /AGMIMG_llY exch def /AGMIMG_llX exch def 1 1 transform AGMIMG_ySign? {ceiling 0.1 add}{floor 0.1 sub} ifelse exch AGMIMG_xSign? {ceiling 0.1 add}{floor 0.1 sub} ifelse exch itransform /AGMIMG_urY exch def /AGMIMG_urX exch def [AGMIMG_urX AGMIMG_llX sub 0 0 AGMIMG_urY AGMIMG_llY sub AGMIMG_llX AGMIMG_llY] concat }{ }ifelse end } def level2 not{ /colorbuf { 0 1 2 index length 1 sub{ dup 2 index exch get 255 exch sub 2 index 3 1 roll put }for }def /tint_image_to_color { begin Width Height BitsPerComponent ImageMatrix /DataSource load end Adobe_AGM_Image begin /AGMIMG_mbuf 0 string def /AGMIMG_ybuf 0 string def /AGMIMG_kbuf 0 string def { colorbuf dup length AGMIMG_mbuf length ne { dup length dup dup /AGMIMG_mbuf exch string def /AGMIMG_ybuf exch string def /AGMIMG_kbuf exch string def } if dup AGMIMG_mbuf copy AGMIMG_ybuf copy AGMIMG_kbuf copy pop } addprocs {AGMIMG_mbuf}{AGMIMG_ybuf}{AGMIMG_kbuf} true 4 colorimage end } def /sep_imageormask_lev1 { begin MappedCSA 0 get dup /DeviceRGB eq exch /DeviceCMYK eq or has_color not and{ { 255 mul round cvi GrayLookup exch get } currenttransfer addprocs settransfer currentdict imageormask }{ /sep_colorspace_dict AGMCORE_gget/Components known{ MappedCSA 0 get /DeviceCMYK eq{ Components aload pop }{ 0 0 0 Components aload pop 1 exch sub }ifelse Adobe_AGM_Image/AGMIMG_k xddf Adobe_AGM_Image/AGMIMG_y xddf Adobe_AGM_Image/AGMIMG_m xddf Adobe_AGM_Image/AGMIMG_c xddf AGMIMG_y 0.0 eq AGMIMG_m 0.0 eq and AGMIMG_c 0.0 eq and{ {AGMIMG_k mul 1 exch sub} currenttransfer addprocs settransfer currentdict imageormask }{ currentcolortransfer {AGMIMG_k mul 1 exch sub} exch addprocs 4 1 roll {AGMIMG_y mul 1 exch sub} exch addprocs 4 1 roll {AGMIMG_m mul 1 exch sub} exch addprocs 4 1 roll {AGMIMG_c mul 1 exch sub} exch addprocs 4 1 roll setcolortransfer currentdict tint_image_to_color }ifelse }{ MappedCSA 0 get /DeviceGray eq { {255 mul round cvi ColorLookup exch get 0 get} currenttransfer addprocs settransfer currentdict imageormask }{ MappedCSA 0 get /DeviceCMYK eq { currentcolortransfer {255 mul round cvi ColorLookup exch get 3 get 1 exch sub} exch addprocs 4 1 roll {255 mul round cvi ColorLookup exch get 2 get 1 exch sub} exch addprocs 4 1 roll {255 mul round cvi ColorLookup exch get 1 get 1 exch sub} exch addprocs 4 1 roll {255 mul round cvi ColorLookup exch get 0 get 1 exch sub} exch addprocs 4 1 roll setcolortransfer currentdict tint_image_to_color }{ currentcolortransfer {pop 1} exch addprocs 4 1 roll {255 mul round cvi ColorLookup exch get 2 get} exch addprocs 4 1 roll {255 mul round cvi ColorLookup exch get 1 get} exch addprocs 4 1 roll {255 mul round cvi ColorLookup exch get 0 get} exch addprocs 4 1 roll setcolortransfer currentdict tint_image_to_color }ifelse }ifelse }ifelse }ifelse end }def /sep_image_lev1_sep { begin /sep_colorspace_dict AGMCORE_gget/Components known{ Components aload pop Adobe_AGM_Image/AGMIMG_k xddf Adobe_AGM_Image/AGMIMG_y xddf Adobe_AGM_Image/AGMIMG_m xddf Adobe_AGM_Image/AGMIMG_c xddf {AGMIMG_c mul 1 exch sub} {AGMIMG_m mul 1 exch sub} {AGMIMG_y mul 1 exch sub} {AGMIMG_k mul 1 exch sub} }{ {255 mul round cvi ColorLookup exch get 0 get 1 exch sub} {255 mul round cvi ColorLookup exch get 1 get 1 exch sub} {255 mul round cvi ColorLookup exch get 2 get 1 exch sub} {255 mul round cvi ColorLookup exch get 3 get 1 exch sub} }ifelse AGMCORE_get_ink_data currenttransfer addprocs settransfer currentdict imageormask_sys end }def /indexed_imageormask_lev1 { /indexed_colorspace_dict AGMCORE_gget begin begin currentdict MappedCSA 0 get dup /DeviceRGB eq exch /DeviceCMYK eq or has_color not and{ {HiVal mul round cvi GrayLookup exch get HiVal div} currenttransfer addprocs settransfer imageormask }{ MappedCSA 0 get /DeviceGray eq { {HiVal mul round cvi Lookup exch get HiVal div} currenttransfer addprocs settransfer imageormask }{ MappedCSA 0 get /DeviceCMYK eq { currentcolortransfer {4 mul HiVal mul round cvi 3 add Lookup exch get HiVal div 1 exch sub} exch addprocs 4 1 roll {4 mul HiVal mul round cvi 2 add Lookup exch get HiVal div 1 exch sub} exch addprocs 4 1 roll {4 mul HiVal mul round cvi 1 add Lookup exch get HiVal div 1 exch sub} exch addprocs 4 1 roll {4 mul HiVal mul round cvi Lookup exch get HiVal div 1 exch sub} exch addprocs 4 1 roll setcolortransfer tint_image_to_color }{ currentcolortransfer {pop 1} exch addprocs 4 1 roll {3 mul HiVal mul round cvi 2 add Lookup exch get HiVal div} exch addprocs 4 1 roll {3 mul HiVal mul round cvi 1 add Lookup exch get HiVal div} exch addprocs 4 1 roll {3 mul HiVal mul round cvi Lookup exch get HiVal div} exch addprocs 4 1 roll setcolortransfer tint_image_to_color }ifelse }ifelse }ifelse end end }def /indexed_image_lev1_sep { /indexed_colorspace_dict AGMCORE_gget begin begin {4 mul HiVal mul round cvi Lookup exch get HiVal div 1 exch sub} {4 mul HiVal mul round cvi 1 add Lookup exch get HiVal div 1 exch sub} {4 mul HiVal mul round cvi 2 add Lookup exch get HiVal div 1 exch sub} {4 mul HiVal mul round cvi 3 add Lookup exch get HiVal div 1 exch sub} AGMCORE_get_ink_data currenttransfer addprocs settransfer currentdict imageormask_sys end end }def }if end systemdict /setpacking known { setpacking } if %%EndResource currentdict Adobe_AGM_Utils eq {end} if %%EndProlog %%BeginSetup Adobe_AGM_Utils begin 2 2010 Adobe_AGM_Core/doc_setup get exec Adobe_CoolType_Core/doc_setup get exec Adobe_AGM_Image/doc_setup get exec currentdict Adobe_AGM_Utils eq {end} if %%EndSetup %%Page: (Page 1) 1 %%EndPageComments %%BeginPageSetup /currentdistillerparams where {pop currentdistillerparams /CoreDistVersion get 5000 lt} {true} ifelse { userdict /AI11_PDFMark5 /cleartomark load put userdict /AI11_ReadMetadata_PDFMark5 {flushfile cleartomark } bind put} { userdict /AI11_PDFMark5 /pdfmark load put userdict /AI11_ReadMetadata_PDFMark5 {/PUT pdfmark} bind put } ifelse [/NamespacePush AI11_PDFMark5 [/_objdef {ai_metadata_stream_123} /type /stream /OBJ AI11_PDFMark5 [{ai_metadata_stream_123} currentfile 0 (% &&end XMP packet marker&&) /SubFileDecode filter AI11_ReadMetadata_PDFMark5 <?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> +<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="3.1.1-111"> + <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> + <rdf:Description rdf:about="" + xmlns:dc="http://purl.org/dc/elements/1.1/"> + <dc:format>application/postscript</dc:format> + <dc:title> + <rdf:Alt> + <rdf:li xml:lang="x-default">TESTOPIA_3s</rdf:li> + </rdf:Alt> + </dc:title> + </rdf:Description> + <rdf:Description rdf:about="" + xmlns:xap="http://ns.adobe.com/xap/1.0/" + xmlns:xapGImg="http://ns.adobe.com/xap/1.0/g/img/"> + <xap:CreatorTool>Adobe Illustrator CS2</xap:CreatorTool> + <xap:CreateDate>2006-05-22T11:56:36-06:00</xap:CreateDate> + <xap:ModifyDate>2006-05-22T11:56:36-06:00</xap:ModifyDate> + <xap:MetadataDate>2006-05-22T11:56:36-06:00</xap:MetadataDate> + <xap:Thumbnails> + <rdf:Alt> + <rdf:li rdf:parseType="Resource"> + <xapGImg:width>208</xapGImg:width> + <xapGImg:height>256</xapGImg:height> + <xapGImg:format>JPEG</xapGImg:format> + <xapGImg:image>/9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgBAADQAwER AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE 1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp 0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo +DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9U4q7FXYq7FXYqp3Nzb2 tvLc3Eiw28CNJNK5CqiIOTMxPQACpxV4ZqGu695+Y39zd3Wl+U5q/o3RrWR7aa5gOyz3s0ZWT96P iEKsFC05cjXM/T6UEXJws+qINRY7rf5WeVZNOmbStOis9TROVtcxg8yy7hWYmvxUpXr3zNhgxjnE U40dRO9ylX5cfnn5l8r3cVnrlzNq/l4sqzLcu0t1ap0aSGVuUkgUbtE5Nf2COjVazs4RHFDl3Odj zXsX1Va3Vvd20N1bSrNbXCLLBNGQyOjjkrKw2IINQc1DkKmKuxV2KuxV2KuxV2KuxV2KuxV2KuxV 2KuxV2KuxV2KuxV2KuxV2KsD/PSeWL8qtdEcphFwtvazSCv9zc3UUEw23oY5GBwjmg8mLoiIioih UUAKoFAAOgAzfujbxV8++ardLbzLqcMYoi3MhQDsCxYD6K5sIG4hy48n0n/zjfq9xffltHaTGv6I u5rGFt/7qiXEa79o0uBGtOyjOV1MBHJIDvdhA2A9Sylk7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7F XYq7FXYq7FXYq7FXYqwv86LJ7z8qfNKIaPDp812u5G9oPrApTev7rbFWGwyxzRJLGeUcih0bcVDC oO+b8G3RkL8KHhX5hx+n5y1Ja1q0bV/1okb+OZ+H6Q5OPk9y/wCcWZufkvW1r/d6y4A7gfULP+Nc 5ztAfvpfjo7DF9IezZhtjsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdiqUecbB 9R8o65p8al5LzT7q3RFBJJlhZAAF3Na9sVeO+ULg3PlPRbgmpmsLWQn/AFoVPf55vMX0j3OlyfUf em2WMHif5oJx84XJrXnHEfl+7A/hmdg+lycfJ6t/zik8QsPM8KgiT61bSuex5wlBT/kVnP8AaP8A fH4fc7DD9L3nMFsdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVeQ3/wCcPmzV HnufJulWUmiwtIttf6jLJ6l76ZKl7eGIDhGzKeDSP8Q34jMnFpZTF8g4+TUxiaYr+W8csfkfSIZQ A8MJiIWtAI3ZAPi32AzaY8ZhHhPMOvzG5kslybU8d/NuPh5ojatfUtY2/wCHdf8AjXMzT/S5GLky D8sL38xvKOmahqWkWVhNaajFDL6F6ZhO3oeqR6ax0A5rJtyP0Zq9Zpjky2CHIhqIxFPZ/wAq/wA3 NM89289u1v8Ao7XLNFe6sC4kRo2PH1YHohdK7NVQVPXqCdZmwyxy4ZOXGQIsM+ypk7FXYq7FXYq7 FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYql/mOzur3y9qlnaMVurm0nht2UgESSRMqEElf2j44q8 Q8jSxS+StAeIgodOtaUptSFQRt4dM3mH6B7nTZfrPvV/LgEdtd24HFYL25VVpSgeUyj/AJOZfP8A QxkmuQYvJvzhSmtWL/zW3GnykY/xzL0/Jvxcnq8QjEaCOgjAHCnTjTamYjQ8z/JGRrT85LGJGaL1 TfWrIK0KehJKUPtygU/MDKu1R6Yl2enL6xzSOU7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FX Yq7FXYqkfm/zjo/lTTEv9S9WQzyrbWdpbRmW4nncFhHEm1TxVmNSAAKk4QCTQQTW5eKfl3FPD5Ps YJ4nhkgaeH0ZKc0WO4kVFYAtQhQO+bnBExgAebqc5BmSEw0miajrEQFP9JSQfJ7aL/jZTmTLkGs8 gmmQYvMPzmjpPpUtftLOtP8AVKH/AI2zK03VuxPRtNcyadauRQvDG1PmoOY0ubUebyvybqb+XfzN PmG4sbq8sdHu7xr8WiI7xrJBcQ8jzeNKBnFfi6ZHtDGZwjw7n9jn4Jgc31b5a8yaR5l0S21rSJvX sLsExuVZGBRijo6MAysjqVYHvmgIpzUzxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2K vMfzrjWG68makzHjDq72hTt/pljcKrdezoo6d8v0xrIGnUC4Fj9iAs98oFFFxsP9aGNj97Mc3R6O pKHtQE8xagtf723tZabdeUyH36IMJ+kJPJM8ixec/nKlbTS3/lklWnzCn+GZOm6t2Jm3l1w/l/TH HRrSAivvGuUT5lqlzYv5fVPQ85xtQsbu7LD/ACXVqZbP+FsPRn3/ADjHIreQb5F29LVJVI7VNvbu af8AB5odZ/ey97tcf0h67mMzdirsVdirsVdiqW6Z5k0LVb/UdP068jurrSJFh1FIqsIZXBIjZ6cO Yp8Sg1XvTFVPR/NvlrWbC81HTNRhutPsJZYLu8RqQo8ADS/vGohVQd2B4++Kqdt5z8r3Plk+aYtR iHl8I8p1JyY4uEbmNmq4U05KQP5u1ajFWtR87eVtN8tReZtQ1GO10OeKOeC7lDrzSZQ8YWMj1GZ1 OyBeXtiqI1rzLoWiPYx6peJbS6ncxWVhE1S808zhERFFWO7DkegG52xVM8VdirsVdirsVdirsVee /nrBH/gVNRetdI1PTL0Adwt7FFJ/yTlbJ4zUgfNhkFxI8mJw7apdKOhihc/6xaRf1IM3x5Om6Idg U8zRntPZSDt/umVPp/3dkv4finomeQYsD/OGOug2ctfs3QWn+tG5/wCNcyNPzbcXNkfk6T1PKulN XlS2jWv+qONPoplWT6iwnzSPy9GDd+coOXxNcOa+AdHplk/4WcujN/8AnF8U8jar/wBteT/qDtc0 WuFZpO0xfSHsOYrY7FXYq7FWpJI442kkYJGgLO7GgAG5JJ7Yq+Z/zi/5yJvNVnuPK/5e3Hp2iExa n5mTua0aOyYf8nf+B7McnTaWWU7cu9hOYi8w/LlPOd35M13QtOuG0rym11cXeuashYXV0kcSqLON t/h4oWchf2t6/ZIjg4iSPpDCeYRodSo6c3nW+/JN7OeY6T5M0uOe4EURIm1O7lmYo0pNaRRsyrxF FPGtCfiWMcJMTI8llmAkIjm7zYvne/8Ayl0htamaw0HT0tbTQNBgqDPK/wBq7uB+0zrzKKeldqft JwkQ4iozAy4QjPzF/wAe3h8q6j5hBmuzdRQ6D5RtzSC3tbdV/dsAN5ZPgDN2HXsFMsBiBfMrHOJE 1yDMPLejeatb/wCcgPJ13501FtQ1l47nVLi3iIFvZxQRu1tBCtKALMvxkdfc/EY5cXBQPNOLLx2R yfWWVNrsVdirsVdirsVdirEPzg08X/5W+aYK0dNNuLiLv+8tozPH/wAPGMVedWl2l1c2V1FUR3lm 0oHtWNk/5OnOgibjbpCKsLb4lNc0t+0i3EB/2SrJ/wAyckORUcimeRYsL/NlOXlZT/Jcxn/hWH8c u0/1NmLmmnkBy3k/TCf99sPukYfwyOX6ijJzS7QFVNc84IDU842P+yjc5KfKKZcgzH/nFyQt5K1l afY1l1H/AEgWbfxzS6/++l+OjtcX0h7HmG2OxV2KoTV9Y0vRtMudU1W6js9PtEMlzcytxRFHifc7 AdSdhir5J/Nr87tZ/MOWXRtDaXTPJKsVlk+xcahQ9X7pDtsnf9qvRc/SaE5dztFqyZRH3sBiihto BHEoSKMbKOwGdBGMccaAoBxCSSz3ypIum/8AOPV7eN/eXVpfu3+vNJJCh6f6vXNFA1hJ77We+YD3 L/OcTWX5F6RpUQpLqEWm2g8echSVqfMoccu2EDvpGPfKT3WnP5mKkmreR9DjUehNq0c5i7GOyUEq a9RR8sz84x82GDlI+S7Xud9+cvlqzK84tK0+61BlpUAz1twx/wBkq098Z75YjuCw2xE95ZR+Utu+ p/nx5p1QhZINC0m202N+vCS7cXFB7/A4NPlmFq5XMuZpRUHvmYzkOxV2KuxV2KuxV2KobVNPh1HT bvT56+heQyW8tOvCVCjfgcVfPfkm5M3lTyvMQRKLZLSX5xQMr9h+3Bm805vGPc6jMKlJONYbhcaX L2S8APX/AHZDLEOnu+XR6tY6plkWLFfzNi5+Trxv99vC33yqv/G2W4PqZ4+a78s5A3kyxUD+7aZT /wAjnb/jbHN9S5ObXl5Uj86+aUB3Y2Tgd94WJ/FsZ/TFZfSGS/8AOK5J8la6T/1e3H3afZDNP2h/ fS+H3O2xfSHs+YTY7FUk85+ctA8neXrnX9dnMFhbClFHKSSRvsRRr+07nYdvEgVOKvjz8xPzI8z/ AJl6is2q8rDy1bv6mm6ArbEjZZbkinOSnSvToKb122j7P4vVPl3NGTLWwSIAKAqigGwA6AZvAK2D iofUZPT0+5k7pE5HzCnKtQaxyPkWUOYZ/wCZI2sP+ce9PsR/fX1vYxxjf7VxKk5FDv0qM0k9sAHf /aiG+YlPPzJhj/SHkXQI1rA+rQy8D3jsl6GgpTi++TzjeEfNhh5Sl5KusGS8/Ony/bDdNK0u6vmG /wAP1gm3J/4jhlvmHkER2xHzK3ywBf8A5vebdQVg0enW1pp6HfrIolcD/VeMg4498sj3Lk2xxDOv +cYrdLqx85eZgd9Y12eOLb/dFqo9Lf8A57MM1mSVyJdjjFRAe15Bm7FXYq7FXYq7FVK6ura0tZru 6lWC2t0aWeaQhUSNAWZmY7AKBUnFXjjf85cfk+urfUPXvjbiT0/0mLb/AEalac6cvX4/88q+2KsV 8o3emSaJKdMlFxYWWtXcVjcJ9mSCW+f0XGw2MFwubjRG4V73V6kes+ae6/QWMUh/3VdWr132AuIw x2/yScyoc2iKZZFix78wE5+T9SHgit/wMin+GWYvqDPHzS/8qZOXlNVrXhPKtPDo38cln+pOXmr6 PxHn/wAwDozQ2pp3NIwK4JfQEH6QnP8AzipLKNJ812pesMOqRui+DPaRKx+kRrmn7Q/vpfD7g7bD 9Ie6ZhNjsVeJ/wDOW7gflnYx03l1qzRT4HhK2/8AwOTxi5D3oPJ84Z2Dr3Yql/mCT09Gum8U4/8A BEL/ABzE15rDL8dWzF9QetfmBZpHo/kTy5IKGXVNPilXb+6t4+Mgp8X8w9s1eYemET3hqxHeUvIo 3zA7Xf5yeVrQ7pp1jeXpBpsZ1MNfvQZKZvLEeTGG2KR83eWl+u/nB5tvgax6faWdgp95VErAfJkN cce+WR7lntiiEu/L/UhB5Z87ebhs1xf6hdxEkMPSt4+UQ96GoyGGXplLzLLNH1Rj7nt3/OOujNpX 5NeWopE4TXUD3shIoW+tyvMjGvX9267+Gax2T0fFXYq7FXYq7FXYq8z/AOcifVf8tJrMO0drqF/p 9nfyLsRbTXcayfF+yDsK/Rir4g1+G78uefdRiubWIXOmalMsloyK0JMUxqnAgqUIHyphBpBFvTvy W82C71DzJpsFutnp7odZtLNDySB4XQOqGg+Fqp18M2Ghn6iOhcPVQ2B68ntHmRa6Dft3jgeVe+8Q 5jw7rmxhzDgx5plkWKUebovU8r6qvhaytv8A5CFv4ZPH9QZR5sQ/LfX9H0nylPNql7DZxLdycTK4 UsBHGTxBNWO/bDqpxidz0bZwMjsEDf8A5keXtD833mq3EV3JaX9rGtq6W7x+pwoCy+v6PJdqVGYk 9dj4QNy2jSzMaS38rf8AnIDTPIkGrRfoaXUP0ncJccxKkBXgnChHGSpzW6nMMkzIOfCPCKehWX/O ZPlt5VF95cvIIifieGaKZgPZWEIP35QyZdon/OUP5SanIY5r250ttuP123YKxP8AlQmdR/siMVY1 /wA5T67o+rflx5fm0q/t7+2n8w2oEttKkysEt5y1GQt9nktfCuXacXkiPMfexnyLwLOtcB2KoLVY frCWtoOt3dwQj/ZyDNf2kf3dd5Dbi5vZfOfC8/M/yPp5rSA317KNv2IR6R/4ND2zCy75Ihx8W2OR dpDSXf516/OalNM0q2sgew9dluKfTucY75j5BZbYh5lL/IV+sOkefvNaH+81G+liJp/dWkZaM9x+ 0cjhO05DvLLKN4x8gkt0G0f/AJxzt7ehS51KONUNOJY3lz6tWPvEevhlZ9OD3sx6s3ue46f+cvln TdGstC8o6ff+a20y2iso7uzjWCwLW6COhu7ho06JWsYfMOGKUuQcyeWMeZWv+a/5m3AVrbylp1kF qzpd6o8ruP5V9G14qfmSMuGjm0nVwVovzu16zflr3km7hs+jXOlXUWplfcw8LaWniVU5CWmmOjKO oger0Lyx5s8ueadLXVNAv47+yLFGeOoZHXqkkbhXjcfyuoOUN6bYq7FXYqkvnPytY+a/K2p+Xb5i lvqMJi9Vd2jcENHKoqN45FVx8sVfLv5h+StB8wai0H5gXU3lD8wLGFI7rWVtnvNM1iKNfThukEJ9 RJHVQHNKLSlK/CLceGc/pFoMgOaUfk/5StNP816qIPrRs7nTHi068u4hA11Ebj05Z0iVpAiiSLiB 6jHbr4ZWiBjM3zDias+ke97G4N/orClTd2x22/3ZH93fNnyLr+RXaTN6+lWU3+/YIn/4JAcEuanm wr8y/OU9rZ6pouktD9ftrBrzUJJtxHbvIkHBFHWVvXB+LYLvmFqNSYGo83L02Di9R5MOPkaXzRpv liXy9pb6bLZW4fWdV1AsBdXbcXrGnJnMaFeIoFG+w8cSOHJkN/aXLnnhDZmvnrQLHzRqdvf/AJge ZIPrFvCY4baH0bGONWPI8fUZ3YV7sTlw0sB9Umj8zI/TFjCaH+QVm5D36TuO7TSyD/kmOOPBgHVe POei86B+Qd+wWO/hgfoG+sPCP+SlFx4MB6rx5h0bn/JDybqiNJ5f1o/ANwrx3K1PSpQgjCdJGX0y QNXIfUGB+Zvyw84eWV+stELyxicOLi3q6Bh0Zk+0vWlSMx5YZ4jxdzkQzwnsoadfx3sHMDjIu0ie BPSnsc32i1fjR3+oNOXHwlFZmtS/SojP5x8rwAVP6Tgmp7QnnXbwzW9oHeA/pM4/TL3PVHC3v55R gH4dL0Isf+Mk0/Hx/kfMTnm9waeWL3lD+R7ww6x+YvmGX4o4r94Sx2BGnRMONfYNgxGjOXn9ycos Qj+N2NxOdL/5xxkkJpdamrcj3d7q74/8msq5YPf+ts55vcw7zD+aFlcpY2P1NNR03Rkjh0zT5iwt GaBBGLm5UcXmZgDxjqqqvXkSRlEs90Ogb44as9Skuo/m7+YN6FQatJZwIAsUFkqWyIo6KPTCtQe5 yJzzPVkMEB0Sd/OnnF5UlfXdRaWP7EjXc5ZfkS9RkPEl3ln4ce4Jlpv5qfmHp8okh126lI/ZuX+s qfmJueSGeY6licMD0ekflh+d0kXn/R9Snt47DUb64g07XHtw31e+tJ3EfqSxDkVnt2YSKy9RVenw kZMnHuRuuPHw7A7PtnKm1gn5z+d9V8oeS2vNHRDq9/cR2FhLKvNIpJVZ2mZf2vTjjdgO5pWvTFXz R+Wn/OTP5jWOpT3nmPVo9Y0eFllvrC4SGO5McjhZHs2RY6vGPi9MnjSuw6g0i32ZY3trfWVve2kg mtLqNJreZfsvHIoZGHsVNcCXzZ/zk+3/ADu+mr4aYh++4m/pm77I5S+DjajoxT8tNWb/ABNpto4J Itr23EhNfhkaGdEApsFMMp60+L7znx8Oe/5wacu+P3F6vpm1jFH/AL5rD/yKYx1/4XLZc3CKH8uH /cJZp/vlPR7f7pJj7f6uGfNMubzPVNK0vS/NnmHzTrsb6gwlZNN0tKs0wgt0mdnXp6cSAElqqB9A OrmIxkZS332DnxJlERj3blLvOPmPzJrvlrQLvRtZaXUNaNybjy7pg4taQxP6UYmdSZWaTix+LiPB ab5TPPOew+xthhhDc/amnnL8tz5q/RI8u+XovK1raQMLqa7kVri5kfj8Uqx+q4K8T9pz1wx0kz5I lqoDzSu1/wCcdr7rdaxEP8mKJj+LEfqy0aGXe1nWjubuv+cdrugNrrEZPdZYm/Wp/hidCe9RrR3J Lf8A5J+fNLk9fTnjuzGOQktpTHICN9g3A1+WVy0kxybI6qB5qui/mr548sXgsPMsMt7ajaWC7Urc KDueMhFW69Hr4bYw1M4Gpb+9E9PCQuOy/wAzaV5eF3B5g8usP0VrKM/ojb0p4yPUQr+yRyG33bZs dBGPikx5GP6Q1mUuGpcwUnzcNaZ+Q4RP+Z/l9WHJYEu5iD0r6DKp+hjmr1hvLAe9lL+7L0Typ6dz +avnbUOQ4WcdjZqTt1i5Sd9qMmY2PfJI+5qybY4hi2iXk1n+Q/mHWWNH1eW9lD7VP1qUWpP3jKYE jCT3/wBjbMXmA7lf8xNMuJPInknyhaj07y+ltIhQgf3FvRz4fbcGuHMPRGPejCfXKTCvyu/5x489 /mBarqdsItL0JmKpqV4WAlKNxcQRqC0nE1FTRagjlUZrnYPY1/5xD/LbQNOe+82+aL14UoPWhENm hY/shHW6d2PZVNcnCEpmoiygkBrTP+cd/wDnHjVNZbRLLX9WbVggf6o8iQvQqH+H1bRAW4mvEbjw y2elyQjxEbMY5Iy5IXzR/wA4UQ+jLL5W8xN6oqYbTUowQw8GuIaU/wCRWY7NgX5Ffkp5h1H82mt9 ZtzaW3k66juNW5cXVp4X5w26kckb1GXke3AHxFVX3BirE/zO8uX2t+WlbTIY7nWNIurfVdMtpjSK aa0fkYH7UmiLx77fFir4u84flHZw3F7rGgaxZr5bX1JHtb+X0NTsnU/FZT2TAztNG/7sFFIb7VQM NFX2n+VOl6ppX5a+WdO1RWS/tdNto54pKh4yIxSJg24MYohHamBXzx/zkLdvN+Zt7E3S2gt40+Ri WT9bnOg7Kj+7J83Fzndh3k7UItP80abeS09OOXizE0CiVGiZj/qrITmTqoWBL+b+C01YI73utgAo nh7xzyV/56H1vAf78zHLhlQ0M/6NcR/tR3d0G/2U7yD8HGGSZPNNf0fU9R/NHVLiS+Gn6JZ2Bhv7 pwoQW95bGGaMF/hDSKzfF2+jNXlx8WQ3sA5+LJw4xXMu1PzjH5X8mQ6r5M0aGPQprptPh1S4I5TT RqzswiUiQgUrykI/1cB1MYCoD4pGnMjcyhfP17r89poR8pear/zBqV7A8urw2EfoQ2xKxNEi+gq/ FV5AauTt2yk5ckjsS2jFjiNwGHR+QfzWv3Ly215Xu9xMQa/7JuWPg5D0KfGxjqFQ+RPzb04iW2iv VYGvK2uDyB+SuGx8HIOhR42M9QqJ54/Nvy1KFv5Lrhs7R38RlUgf5bjkB8mGHxssOd/FHg458q+D KtO/NHyh5xtl0fzjYpZyy/DHeqawqx7hz8cPbrVfE0y8aiGTaYaTglj3gWL6r5avfLOqXejyTGWw 5Lc2D/sssoILAdj8AB+XfM3s3EYykPcmeQSiChM27UyP8o4BP+Zc0h6WmlOy/wCvJMi/8RJzU6g3 qPdFOXbH8U98tXSReXvzL18PQSX2orCx2qtvCfTIrT7RegHXMWH0zl70T+qA9yXa1Yyw/kv5R0Jd pNaurCAx1pyFy5uaH/ZU65CYPhRHeyif3sj3Mp1/nffnH5ZsuPOLSrC71BxSoBnrbhj8mUU98unv liO4NUNsRPeUw/K/zn5+8v2Hmm30Sxs9X8keUr6aBLS6ufql3Cp5yyrDOUaN0RyfhkHLcAHNdLHc +GPe7HHK4glSg8z675/8yT+Zr6zuZdK0cH9FaRaRyXLCU0+wka1kkA+J2p/L0UZu+COnx116uHlk Zmg8z1vWdVt/PV9cNBdaXqtrcJdwR3UTwTopIeFuDgMKAD/ayzS6mGYGFf2MjjMKfSemeYvzi856 XbXOkWemeVdLuo0YavcynUbp0brJbWsYWJCKfZmc/LOfyw4JGPcXMBsWzHyT5L03ylpMljaTT3lz dzvealqN2/qXF1dS05zSNsKkKAABQAZWl4L+e355fmZ5T/MJdP0a5trDQredLUGWBJhPItvbXUzS swLBQLxVohU0Fe+Kvafyn/Maz8/+UY9bgRYrmGZ7PUIUJaNbmIKW9NiByR0dXX2NDuDir56/PaWS D82tVmiYpLH9UdHU0IZbaIggjN/2fASwEHqS4uU1K3015I8yR+ZfKmma2tA13CDOqigWZCUlUVqa CRWp7Zo8kDGRB6OSDb5Q/N3UX1D8yfME79Y7prbbwtgIB+EedF2dGsI83EzH1MQG2+ZpFii1PcPy /wBZGqaQ0rtyuVKC4JNTyWNY6k+LCLkfnmuojY9NmjNGim+l0W81VBtS6DBfZ7eIk/S1cMuQYHo8 2/MS51FfPmnaNaWf1+K/UXlxagD96yI0EQcsCOMTIXqdhWvbNXqgTPhHVz9MQIWeigmn+SfJOkQW vmS8m125sHEi6bEGlt7aab4ifSqsSs9Oshqw7YiGPH9W8lM8mT6dgm3nHzv5y8seVtE16HQrGx0j W0D6bHJMZpDG8azI7RwiJUBRxtyJwHWkfSAFGjB5kvPG/O38w7iU+hJAh3PpxW4bb/Zczlf5vJ3t n5XH3Lo/zu/MK1kBufQlB39Oa34gj/YGM4jV5Ap0sCn2m/8AOQXqqYNd0aOWCTaRrZtuB6/upeQb /gxlsdbe0g1nR/zSi73yl+XXn+2luvK1wlhrABke1p6dTT9uE9B0+JPhwnFjybw2KBknj2luGFif WVgTStW5fWdIZ7NOW5EankFr3CljT2zO7Lv1A9K/SyzAbEdVubZpZh+SUcf+I/NGoyHjHZwWsPI1 +y4eR+nh6eaeZHjzPdS5/piEFbu1p/zjrfXZJE+rzyOFHUtNeCIjbxRK5hjbAfNmd83uZV5psAPN n5c+XUYEWby3EnUACxgTgdh3KkDb7styR9UI936GqEvTOXer6BLFcfmz5w1WSQC30mztLLma7B19 aT/gWjNclA/vZHuCJ/3cR3sf8nahq+teRdK8m6U/O/8AOGrXWsaoQTUK0voostOw+rGZ/YKcOggI iWaXTl+Psc3J0iH0z+X3lnTNGsmjsIwtrbj6pauR8TrH/eyn3lkqx/pmLq8plQPPmfx5McMbJl8A 8V/NTSYNT/NDz9KELvp3luxcMAfgkF3FJWviYgforg7PlWYebdlFxL1r8iboXH5WaL8XJ4frET9d uNxJxG/+TTD2gKzH4fcjEfSGfZhNjwn/AJyB/LLSr62vdev0kfRrl4ZtQltiv1uyvERbWO7gSUiO aKaMRRTw8lPwRsG2bJ44GUhEcygmgiv+cWPKenaL5X1m90+4kmtdQvgkKzFDKEtolXnIEHFGkZ2b hVuK8RyY74cuOUJcMuaggjZ5Z+edylx+aWtuhqqtBH9MdvGjf8Mpzf8AZgrF8XFz/Uzr/nGvzrBa fpPy5fzLFBxbUbV3IUAxqBOtSan4FVqdgrHMLtTDUhIdWzBLanier6lJf6vdXl1IPrV9NJO3IgFm kYsxAPXc5scWXHjgASBs1SiZEqTWtyic3hdU/nZSF+87ZL87i7/vY+GWX/lR5ihtNYayaRWttQpG HUggTLUpuD+1Ur8yMpzThIiUSD0P6GGXGeH3PU7VeGuagvZ4raX6W9SP/mUMB5BxTyYV+YeuQaH5 lsJpGe3fVFtrA36fahtfrDNePG1GpIqMnH4TStc12qmYyscyHM00BIUeQKR+XPKOtXPkKXRfMN1D pXliXU21iS5noLyZjGkMfOR2CRpxUncVqcox6YkXI0G7JqADURZRt1rX5WaHY2lzLbXuuW9uBa21 9NFNdRLwWixJJcFINlX4VTsPDLeLDHpbXw5peSX/APK9fKtuSll5dYRf88Yv+FVWH44/m4jlFfys jzkvj/PbyncH07/y/IIT14iGb/hWEY/HH83A84r+VkOUlb9Lfkd5pPp3EUenXUlERpENqw/2aVhH 0nDxYJ+SOHNDzY/5o/KbVfL6r5g8qXr3VrB++Rom/fxr15qybOoHUj7qZVk0xj6omw2Y9QJemQop dqHmM+Ymh1OWP0714ljvqAANNGOBcAdOSqppm27NPFEy7z9zDJHh2QmbJrZR+XLi18heftXYgAm4 gRvFre2NB49ZRmhkd8h8yyybygETqunqn5afl5oJID6nf6eXWn+65Q00hPT7JkFcqlH93CPeVjL1 yl3BkxCX/wCeS9eOjaIT/wA9p5qf8m5Mu55vcGrli95Y3od9TyH+YPmKIH1dX1C8htiD+zJSCDf2 abK8e8JEc5H8fe2zHrjHuDNf+cd/LP1LSNT80yrzktIU0vSmIFfUZVWRwPEAoPpbMnUgREMI5cy2 cWxk+itNs1srCC1X/dSBSR3b9o/Sc0+SfFIlyMceGIDwvVPQvPM35436/H9XstMsYpN9uFmzTLvT 9un3Zdo/72PvTk+ksz/5x5/8ljZ/8xFz/wAnTl3aX98fcGGH6XpWYDawT88//JVa7/q2/wD1FRZk aT+9j72M/pLyP/nG3zj+j/MVx5cuZKWurLztgSaLcxAmgqaD1EqD3JCjNl2rg5THuLTgl0YD+Zkz TfmF5jZjXjqNyg+SSso/VmboB+5i1ZfqRH5ceVJNe1WZnuJLeztkCTCBzHJN9ZDxmLmpDIhQMHp1 Bp45RrDxy4D9MdyxM+AWOZfQPlL8tdKggnitY4tOFvK0EsUES8iy0JJeorWvU1zBnnjjrhHMIhhl kviPIoHUrQWeoXFqCSsMjIpPUgHYn6My8cuKILi5I8MiEh1fyt5f1cVv7KKSYfYuVHCdD4pKnGRf oOCeKMuYTDLKPIpTYrqOieZILS+unvrHUozb6feS09ZZYQ8whnIAD/BzKP1NKHfcxjIxIidweRZy qUbGxCXfmXJotlqGjazqqLMmmR3UltbMQFluJGgSNSTsACeRPYA5VqSAQT0v9DPTAkEDrX6WH3Vr rvm2DzPompWEl/5ng1JbWy1AFo9PsoLaUrcKgYgBnKUHwlyOp8cH15S5voxBk+oeUpJ/KOieXPOf mG2g0fR6m0tYRHbgsAw5NPMS7GjnsBl40gH1SpoOqJ+kJCmhfkFYuVk1BLh+nJppJR9Hpjjh4MA6 rx5z0VP0F+QmolYor6GB+zeu8HX3kCr9+PBgPVePMOile/kX5d1GB7jy1rIYAUUOyTxlveSPcfdi dHE/SVGrI+oMZtLjz/8AlfqaC5jaXSZG/eQci9tMtaEo2/B6U369K16ZSDPCd+TaRDKPNvXP0Q+q T3WkUGnXvG6gUALx9ZA7JQbAqxKke2bzs8DgJHIn9AaZ3tfNAZnME9012tf+ce9cuq0bUbyQxeL+ pcRQmnSuyHpnN3+5ke8tkt8w8gy/XrKMeefy70DtpsNxcSgdKQW6rF0p+3Ge2WzHrhHuaon0Tl3q eh6jw80fmX5kpvp6RwQt2H1K3cyDfbdkBxhL1Tl3LKPphHvSKMnTvyb8u6ZuLjU2N1Kvd0MjTAn6 Xjp8sytBiuIJ6bpmbyEvpfyn5cXRNB8seWuPGS2j+uX47+sBzaviPVcj6MwMuXiM5/Afj3ORKO8Y /FnOYDkvnGxntp/yv/NnzFGea6t5kukhl7NbxzwQwkf8G2ZmgF5o/jowy/SXpv5CW6xflXo7AUaZ rmR69z9ZkUH/AIFRh7RN5j8PuRi+kPQcwmxgf56sF/KrXK9xbgfM3UWZOk/vY+9hP6S+T9BGqtrm nrpB46oZ0ayetAssdZA5NDQIELHbtm/1sh4fDVmWziQNb9z2PQ/yDbVnnudVupby7lYSXTchaxh5 BzqoQGb4q1qXzVyy8AAMj8NlEpTPpA+KG0DQLDyv5wuNMsPUjt7+xWcRySPKRLaTFJCGcsRtcLtX LI7T53Y6tOSRlCzzBe5+X5w2qX/8tzHb3aD/AIyR/F+OYOcekeVhy8J9R86LFvOUPpa/OaUEoRx/ wIB/EZm6Q3jDh6oVMpJmS46Q+bqIuj3B/wB0apa0NOhmY2//ADOplObp/WDdh6/1SkX5q+XItch0 WG4lEFlFeM97OzcQkCwPJIa/6sZyrVQ4qbNNPhtjN/5v+saH5gsNFuj5bj0WG3XS7EIBfX81w9di TzSka8yFXn4sOmYk9QfphsHKhpxzluVjeSb7zJ5A0nS4/Lf6O8xrcm41fzNfygzTBfWVUCnnNxZZ EY9BVeh65GOmnLoylqIR6oS0/wCcd74gm71iIHssUbHf/WYj9WXDQy6lqOtHcuuv+cdrriDa6wnL ussRp96n+GJ0J71GtHckV7+Uv5i+XZTe6W5naKhWawkZZanbZfhfKpabJDcfY2R1GOWx+1M/Lv5p NfK/lnz7AJ7Of9yb10CSRt0BlFKGn8wFR3rk4ai/TPkxnp69UOaR3Olfom6uNMDiQWk0sSyDowEj UP3Zu9DDhxAe/wC9rySs2h539OCST+RWb7hXMnLKok9wYxG7KJbRj+TfkjSF2fVdUtouHSqzzyy1 Ir0qRnPEXiiO8sgf3sj3BmS8L788XJrx0nQwo9pZp613H++3y/nm9waeWL3lhUWoOv5Lea9YJ/f6 /qlw8TACri4njiIFO1FfMcS/dSPeW8j97EdwZV5Z0pNZ/NLy15cYq1noqwW7giqMLCL1ZQR/lNHw zaTPhafzqmOEXK/i+l9MP1nXNSuzukPC0iP+p8Ug/wCCOaXJtCI793Ix7zkfgi9c1SLSdF1DVZV5 RafbTXUi141WGMyEV3psuY7e+bWD6Z/zir5fjfa41i8M9w1alzNPPchj/sUXNj2XG8vuDVmPpe3/ AJQWrWv5aeX4yOJa1EtN+kzNIDv488o1pvNL3ssf0hmGYrN5H+cNxqPmjUv8B6dSCC3hi1LV75hy bg3q+lDFHVak+izsxNBQbHMnSxPFYNU05sgiOVsF1/8AKeHyEuj6+t3Ncyw3cPqszxlRFMwt5SQk cfRbivyzKObi3snhI5/JokJfSQPUOj27ylc8pIt/7+0UNX+e2cx/8QZcp1UdvcfvTppfaPuebfmH bnT/ADzpN1Sim9ntXI7JewNKv0epEgy+ErEJfBpnHeY+L0Hy1P8A6Zpcn+/7SW2PzgkLD/haZVqI 7S8iD82zAd4+Yr5Ib8wIeN/azU+3EU/4Bq/8b5PQn0kMNYPUCxXM5w0h88j/AJ1yWXobae0uQ3h6 F1FJX7lynUfR8vvbsH1JF+ctnqF75Ths7BS1xcXsMSovU+oHWn01yrWAmIA72zSECW/clNkbXQ21 mXTLWLzB5x02zk1HXb1iscNrFAgUqvc8dl4oKnfkVzH4o4uW82/hll57RSq+8y6xr3kCHV7PzHcn zZd3Rjg8t6XFwWKJXYM0jorybqAV5yDr3yo58kuvybRgxx6fNh0fkT81tRcyTW96W6mS5mYEk/67 csHg5D0LLxsY6hU/wH+bWmFZ7WK8VgftW055D6FYHHwcg5Ao8bGeoV7X8x/zS8sTiLU/WmjU1eDU Ymatf+LPhf8A4bJDUZIc/tQcGOfL7GTy6h5R/NTT3tvRXS/N0MZe3DUIlKjdVf4ea0HQ0YfIHLiY 5h3TaQJYT3wYVGtwsUaXBJnRFSQk1NVAH8M3Oh/uY/jquX6ihdZfhpV23/FTj7xT+OS1kqxS9yMY 9QelXloWuvym0dKfAgunQU62lrG/I9PfNOR/dhgD9ZVbDUFTzD+aHmD7DWMEdtA9aUNtbOGAPizo uES9U5KRtAMd1dE0/wDK7yBpEyVW8u4r+ZAdzAvO5k6eImByIhcYQ7z+PvZxNzke56F/zjfFJP5w 13XrgCRLGwZp5GpUS3UodWFehKwSCuZXakr4YD8dzZh2BL6D8sQvHo0Mkn97clriQ+JkPIH/AIGm avUG5ny2bNOKgPNiP/OQesvpP5OeZp43CS3FsLKMd2+uSLbsqjueEjZQ3PMfz2ifRfJfkTys5pNY WSpcR1rxNtBDAu42O/Ppm57Ij9R9zj6g8nvvlSzay8r6PZsOLW1jbQlfAxwqtPwzVZjc5HzLfEbJ plaXmHnxF0n8zfL+sH/efVrSbTrlelXtH+sRVPesUs4zJ0x3I7w4+oGwPcUx/MLRm1r8trqy6zxx Pb8x9oOoaEMP9nxbJxHrI/nD9rGR9AP80/sQH5aa2NQ0TR9RJoZGiZ1PUfXIaMD/AKskYB98ty+q N98fuasXplXdL70v/Pa29CxbU1qptPq9/wAwK72c6yP/AMk1pkMMv3R/om2eWP7wf0gnvl244wWM gP8AvPfqla9EuU4/d8OX5xZPnH7mjCdh5S+9NvzAg5WNrPT+7kKV/wBda/8AGmUaE+ohv1o2BYNm ydckvnaBp/J+txJ9s2NwU/1ljZl6+4yrMLgfc2YTUx70r/MLUpbfyLPrNttPbJFc25p0dyERv9gZ OQ+WV5z+74mzAP3lMI0Py7pVnYp5g8xTy6da6jYQQPo1u7+pfC3hT1HlSMB3VzH6jKNv2mPfMPHh iBxT+TmTyyJ4YJy3nXUrfyDeea/Kug2lp5asLhbQy3MgSSSQlEotvCO3qAlmk6e+TOrA2iKYDSk/ UXn0n53fmFcyk27wR9/ShtwwA/2fNvxyo6vJ3tg0uNdD+d35hWrq9z6EyN0Sa34g08ChjP44jV5A p0sCyLTPz502+j+qeZ9GVoHPxyQUlT2rDL+vll0dYDtINR0hG8ShPNHkXRZtPHnLyBdho7RhNJbw k1jMZryQH40K7Eqw9+mQyYRXHjLLHlN8Ewx6a7kvJXu5FCyXBMrqvQF/iIH350GmH7uPua580q8w h20qSJPtzNHGvzZwMo7RlWE+dM8X1PZ7y2Ev50aHaxf3Wk6JNcBa14iSQ246n3GYBH70eQccH90f MsKe/r+UfnXVhtPrmsziGlRyWWeJOI3OwXn3zH4v3Uj3lvr95EdwRH5pRG21zy3ooP7rRtLLKQdu UpFvv06rAcztPjvLEfzY/sYYz6Se8vS/yAs+HkbzBfof9I1bVItMiFP2LeJW6/688gyjPPi1BPSP 6P2ts9sdd76GiiWKJIk2SNQqj2AoM1ZNm3KAoU8f/wCci2i1L/A3lBq/7n/MVr69P+Wa3P77b/ns pwJYP+e0za5+blhokYqYUs7HgK7vcSep79RMudB2eODAZe8uLl3lT6azn3KdirA/zqsy3ko6sgrL oF3b6mNv91Rv6dxv2/0aWTJ45cMgWM48QITTRyNR0O7tvtG4gWVP9YoYyf8AkZCW+nMrL6Zg9x/H 2FxsfqgR5fj7Q82/LKV7aHWtIB+PTrq5EKdCFV1v4QPlFJxy8Dau6VfA/wBrQTvffG/iP7Gefmfp sWq+WwuxiuEktzUbcLmIjf7sx9KN5R7w36k7Rl3Fh/5dajLe+TI5WqLhrG3ncHqJrdlEn3EtmSDY gfh9jjkUZD4/a9I83otx5cklXcKY5V+RIH6mzE0prJTlakXjt5zm2dWoX9v9Ysbi3pX1onjpt+0p Hf55GQsEMomiCxKSaO8/KqyublDJCLGynu1Tr6cXpyTUqeyo2Y53wj3BvG2X4lh3k+581eYtefzF pksfHUdLn0/VprtWeC0E9xIjQ28fwAkWyIRuR8VW3JzCjCWWVubKccQpUS6/J3ylaJYT3cmuTQv6 hhVmuYxIQOTqgItwTQV3rltYYc/UWn99P+iFM/nn5RtWKaf5dYQ+NIYSadPhQOPxw/m4DlFfysjz kqJ+e/lW7fhqWgSeixqzD0ZzXx4uE/Xj+ciecUflJDlJVK/kp5yHpxNHpeoSn4Kj6rJUdBv+5avg DXD+5yeRX99DzDGrvy95h/K/XYtQD/XvL9ywguyBRZYmqGjlTs/Hdff6cplCWGV8w2xnHLGuqVOq qxVPsgkL22HTOlwioAeQaZcyofVxd6zoVifs3eqWkT/6pkHI5h9o7xiO+QZQNWfJ6hFdSQ/md531 cbjRdIgjqegLxfWQP+EzAuskj3Bqq8cR3li8Fop/Lf8ALzQ3Wjatq8U85HVovWkkckjqeMi9cpr9 3CPeW2/XI9wWfmJOs3njVpi1UiEMCt/kxRKzfdI75uNKAOKR/FBrh9ID3r8kNMeDyH5LtJI/Tkni uNZuKihb63M80Ln/AGLKAfDNJGR4JyPMuRMXOMe7d7DmI5LxrzG7a7/zk95W01Cs1t5W0e61O5jO 4jlu6wA0P7XxQsPoxV575el/xR/zkIl2rcom1Sa4ic/76swzxdK/swrnRZR4emr+j97iDeb6nznX LdiqE1fTbfVNJvdMuRW2voJbaYf5EyFG/BsVY1+Xvl3zBoujadbau0Ul3bQehcyROWDEKlGFQP2k J/2WZGTKJRrrs0QxmMr6bpRp/wCX2t2Pn7UdXiMJ0e/EDFOZEgeNpEf4eNPihZB17ZZ44o+YHzDX 4BseRPyLLLzRru58tLpzFDdRqioxPw/u2FDWndRkIZQMnF0ZyxE4+HqxDyP+Xmv6JHc2140DWzzX 3o8HJIguneSMfZH2TJT6Ms/MR4a87Hza/AlxX5b/ACZu2nXEvl39Hy8frH1f0qg/DzVaKa08RlHi AZOIcrbuAnHwnnTEf8C634w/8Gf+acz/AM5DzcL8pPyd/gXW/GH/AIM/804/nIea/lJ+THLf8pfM 6+Rp9BkNt9Ye1ubVKSHhSQOsdTx/lYVymOoiMfD5Fulp5HJxMK82/kR+bF7YQeX9DksLPy5aRrGI vrDo9wwFWkl4xnYtuFrT+GNky2OEfS5GPHR4j9TDf+hS/wA1P59N/wCkh/8AqllLdbv+hS/zU/n0 3/pIf/qlitu/6FL/ADU/n03/AKSH/wCqWK27/oUv81P59N/6SH/6pYrbNvLn5H/m1Fod95c8wPYX +jXMDpbVuXaWCUL+74sYweHIDau3buDfDN6TGW4aJ4vUJDYpaf8AnHD8xySf9B3/AOLz/wA0Zux2 lhArdqOGS/Sv+ccfzCg806Hf3H1MWVhc/WLhlnJYcFqlBw3+LMPV6yGQxq9iyGI8JHencn5H/mD9 U8/vGLT635kf09PHrUBgCNEC54fD8DnMTxx6/wCkjwT6f6KKT8jvN/6X8i8ltP0b5ZtJEuyJSGM7 W6xJxAG9HTlh8eNx7oo8GVS75MZ8z/8AOO35lajcarcWy2XK9kneJWuCCBMzEVPDsGzNnrsfhGIu yPvTDCQRb6D8reWJNF9CEsr29jY22n2hH2ilvGqEkU2qUrmslkHhiIbIwPGZFkWUtzy7QPIXm20/ Mvz752ult1uNUtYrLy2iScv3cMfGstR8HJ4YyevU5KFWL5KUj/J38m/M3lbzbJrOuG3MSW0kdv6M pkb1pGUVNVG3Dlm11uuhkhwx72jHjINl7bmob3Yq+e/+csvzU81eU7XR9D8u3UmnSaqs015fw/DN 6cRRUjik6pUsSxWh6b7nFXzD/wArW/NH/qcdc/7iV3/1Uwod/wArW/NH/qcdc/7iV3/1UxV3/K1v zR/6nHXP+4ld/wDVTFXf8rW/NH/qcdc/7iV3/wBVMVd/ytb80f8Aqcdc/wC4ld/9VMVd/wArW/NH /qcdc/7iV3/1UxV3/K1vzR/6nHXP+4ld/wDVTFXf8rW/NH/qcdc/7iV3/wBVMVd/ytb80f8Aqcdc /wC4ld/9VMVd/wArW/NH/qcdc/7iV3/1UxV3/K1vzR/6nHXP+4ld/wDVTFXf8rW/NH/qcdc/7iV3 /wBVMVd/ytb80f8Aqcdc/wC4ld/9VMVd/wArW/NH/qcdc/7iV3/1UxV3/K1vzR/6nHXP+4ld/wDV TFXf8rW/NH/qcdc/7iV3/wBVMVd/ytb80f8Aqcdc/wC4ld/9VMVd/wArW/NH/qcdc/7iV3/1UxV3 /K1vzR/6nHXP+4ld/wDVTFXf8rW/NH/qcdc/7iV3/wBVMVd/ytb80f8Aqcdc/wC4ld/9VMVd/wAr W/NH/qcdc/7iV3/1UxVXsPzj/Neyu4rqLzdq7yRMGVJ72eeMkb0aKVnRh7EYpfev5aea5/NvkPRP MVxCLe51G2WS4iXZRKpKSFKkniWUld+mBWTYq8J/5zA8ofpf8t4NdiTlc+XrlZGavS2uiIZQB3/e ekfkDirxz8o/OOnR/lnqGiQ3Gl2Xmaw1Bbmyl1CCzJnspk4yRCS7R0+CT4+te2ZWkjjM/X9LVlmQ NvuTS882+d7W1F4f0XPYl/R+uW2n6TcQerx5ekZYoGQPx+LjWtN82+PS6af0i/if1tHizq1WLzN5 wktILqa40KG3ulZokubbRoGdVYo3wvEjUqpGCen00DRFH3n9aPGl5/L9itp2oQ6N5H1qPy4NOkGj eYXiE621neg2GoQ+vbj1JY5v7t1ZNj7dswdJhxzyyjIWOjbxy4AUNa+a/OVxZLeG40W3t3doka5t NGt+ToAWAEsK1oHH35n5NLpoH1Cvif1tXjy7/s/YkX5gzza15NvBqt1o9xqNnNbyaStgdOScmWQR TIFswjMGVlJ5V+zmDq4YBD93V+9ljySMhd/Ist16Kx/L+4svI3lTTLGTV7aKBNX1ea0gu7m6vZlV yiGdZQqAuAq9unbe3RaGEocc2eXKQaDEfOVjdapM9n5mtLKKZWWNtQsbWzimt3YVHNrJYg5A/wB1 yncVpQ0YXy0WCYIhtL3tcc5O/Rk+laxHpP5eeXtE0260a08y6PNqNn5jivItPMhZLom3bneIS49P cMnWuYGkxYrPi/e2ZMp2q/kgNR86edtOmWG7isI2kRZoW/RemFJIn3SWNhb8XRxurLsR0zZw0Wnk LAse8/razlmE0TV9dGpDTfMd1oEdiz+jqdq8WjQyek20iHhGkqkqe1DlMsWlHKr9/wC1ic0iNr+X 7GN+TdA8veTfI9r5ovtNttV8zeY5JjokN9GJ7ezsYHMf1j0XqryyOPgLA7bjvXB0OkGUkn6Q5OSf CPNNrjzP+YNvp8Ooz21jFaXNTAzaZpYZlA5Fghg58aH7VKZtPyenuq395/W44zSPV575t0eHXbC8 1W3s7e21SxQ3N19UiS3jng5Krn0IgsSvHy5VRVqvKtTTMPXaGMI8UGzHlJNFmHku/uPLn5OaLfWE VqLzVtU1B5Z57O1uWMcCQRqtbiOWlGBO2VdnaeGQy4hdNmWZiNkyn81+dYLSC5kk0hRcossEBstH E7oxKhlhMPqNuKbLmedNphLhI395/W0DNI/2MW1q3bztytbq1tE1oo7affWttBaOZEUuIZVtkiSR ZOPEFxyU0INOStXquz4CBMBRCY5j1b/JgfojyT5v8zi3gkvBLYaZpc9xBDcKkkjvNOQkySJX0owO nfNdosIyZKPJvySIjYXfmZqtzrH5fadNqEFtJqk+qtFp5t7S3tnEKwj1eP1aOLlykZAQa9BmR2hh x46ERTTinKU9+5O7Ty3oX5c21tpMemWuuef7hI31K6u4lu4bCSUApaWtu4aN5lqObkNvsPY6LQCY 45/SzyZa2CJ1XzX580p0j1CHT4XkRX9M6ZpTMFevHmFgPEnidmzOjotPI0B9p/W0jPI7gvOvzB0i 2vNFi80QWsFnci6+pahHaRLBDKXjMkUwhjCxxt8DK/ABT8JpXkW12v0scZBjybceUk0WE6NpV5q+ r2Wk2Sc7zUJ4rW3TxkmcIo+9s1ze/THy/otpoWhadotmKWum20VrDsASkKBATTuaVOBKPxVLvMmh 2mv+X9S0S8/3m1O2ltZTQEqsyFOQB7rWo98Vfmfq2mXmlapeaXeoYryxnktrmM9Vkico4+grhQ9Q /Jm6/SflPzl5WclpUt4te09OwksH4XFPdreY/wDA5maDJw5R57MMguKV+dbb655KtrkAmXSb4xMf +Kb2Pkv0LJbH/gszO1cfKTRgPqpH/kVOLu285+WmoP0lo7XtvXcmfS5VuEVfdozIMwNHPhyxPn97 kTFxKH8zwNefl/dgAFtLvoLoGm4juEaCT/hxFmz7Vh6QXGwmpfj8d7zSCZ4Zo5o9niYOhO+6mozR uW+j/wAxdShtfzUGvw1ks7s2GqQFSDzimgilPE9PEA50miPFgAcPPHcjveSW3mF/K3m/XE1K2/S1 jqRdblTI0TSo8y3ENzFIB8LniDUr9lmFBXbSQySw5Seob+HihQSTzn5gtfMHmK41W2tWsop1iUW7 Seqw9KJYql6LWvCvTKsuTjkZd7LHExFF695xo/l/yHOFC8/LNkjeJMUkyVP0AZu+yj+7P9b9TTn5 vNvzfTj+ZGub1LypI1f5pIUdvxbNLnFTLbh+kPR/NsvPy55CVRxRfLNpRa1+L15wx+njm67K/uz/ AFv0Bqz80q1WWe7/AD9Fs7n0LaP0IItyqQDTixjA7K3Jq/M5rMkj4494ZYQOD5rtHjZtO8xMKUj0 W/ZvkYuP62zd67+6LjjmPePvRlwpt/yl/L60anNotTvGABr/AKRelFqeh+GEZh9kx2kfc35+iV+Y YzefnB5J0wHg9rHottKx6LV1mdjUCgUSVzA1xvKU6b6SfM/qTfyfJA3mtb1wI7a3FzdyU2CpHE7+ +3TN/nNYy4s+R/HND6PB+jfyQ0CEGja9qt9qTjuVtFSzj28K86fTmr7JhvIuVnOwCdaNp8N1+Y/5 e6VdpXT9AsZfMeoMKHioL3fxD5wRrv45T2gTPKIhjph9R/GyA0jWJlvtf843pD3FhbXN+HkFVa8n JWIN/rPJm11UhjxbdGiQ4jXefx9jF/LKTr5MudTvmM9/5g1L1TNKS0hjsY2Bk5HtLLdsCfGPMDsq BMpTPucnNQAAX/mPMmn+QdD0qn+k6rdS6nLv8SxRL6EQI8G5MwwdqZLIi14Bcie78fqTn/nEvyf+ nPzRTVJk5Wfl+B7xiRVTPJ+6gX5gszj/AFc1DmPuHFXYq7FXw7/zll5NXQfzQk1OCPhZ+YYVvVoK KLhf3c4+ZKiQ/wCvirCfyb8wQaF+ZehXl1vYTXH1K/Qmim3vFNvLy/yQsvL6MIJBsIZvq+gS21z5 p8qTAtKIbqGOn7U1i/1iIj/X9DiP9bOj1Y8TBY7rcIemXuLCfyY1uPRfzS8t3kwrbyXi2lytaAw3 gNtJX2Cyk5zgNOczDXLD9F3fmHy5dIWV/W0+Ug/YaGdWSUD9ri8QNNq+OdRlxjPiG9Xu4H0y9zBd R8ii30G91a3vTP8AUHh9aF4hGfTmYx8wQ7/ZfiKU7+2abVaE4o3duTHMCaZv5P1kecvJ8WiysD5m 8rW7GwB+1d6UhLvEPGS0JLKO8ZP8uWdm6nglwHkfvXNCxaSa3o51vT1gjBbU7QH9HgCpkUnk9v47 klo6ftVFPjqMztHS8Y4x9QasU6NPOM0DlPdNVc3H5b/l7eGh5aZc29R1/wBGvpkp9Fc3vZJ9BHm4 +fmHnf5tty8/ai9eXOO0bl1rWzhNa++arVf3hZ4fp+f3vSPNSKPK3kF/2m8uW4PyFxOR+vNt2T/d n+t+prz80p1GONf+chNSQPUQxXdHBp8UOkuQajpRlzWHfOP6wZYT+7+a7T5PR8vea5qKQNHmiBbs ZZYk2+gnN12gf3RcYfUPem3m6kXlvyHaA/3flu0lZRUUa4kll6HuVIPvlPZQ/dn3t+c7pVd6rYSe ZbvzLb2TRatcxCCF5JfUjt19AW7NCgSOjlAaFieNdhyoRMdnx8TjJtgMlRoK2oOPK/kPUtVvf3d/ r0Dado9uxo7RTU9efj1ChPst/wA1DIdo5wI8IYQHFMDu3Kbea9Plhh8l+V40Ec9jotjDNH4XV6Tc ybfOcVx7Mjw4ie8t2c+pEWlxCuq/mf5ki5KltDa+V9MY9KylUuUX5R2rfQ3vmFgjx6n3foWG2L3/ AKWJm8t5fLl/oVxFJ6GoSQyTzQyLG5EBLInxJIKcjXpm31Om8UVdNUSAQe5dCgvBpGjafCY4bWNL KzjZg7s0kzSMzsFSrPLMx6e3bHT4BhhXxTOfEbYr+cGqw3vni6tbZuVlo8cel2tRQhbVeLg/89S+ c9qp8WQlu00ahffu+pf+cQ/KH6H/AC0k1uZON15huWmDd/q1uTDCCP8AXEjD2bMZyHuWKuxV2KvD f+cvPKH6Y/LSPW4U5XXl65WYt3+rXBEMwA/1zGx9lxV8SgkGo2I6HCh9EeaNYNzqXlbz1HRv01YW l7dcNl+t2v8Ao92nb9uHf550HZ0+PDw92zi547+94f5p0s6H5p1GwhYhbO6cW0g6mMNyhcfNCrZo ckeGRDkQlYBe6edbqxufO2j+ZZYlbTvMFrp2ryxFQVKzRoLgEHb+8R6++dBoJmWDzFhxs0fU8588 /mRrjvrflafStJtYBO9pPLaWS28pFvNVTzVv5owc0+bUzNxLPFiG0rLBtE1rU9E1e01fS52ttQsZ Vntp16q6Go2OxHYg7EbZiuQ9h1j9G6xpdp5x0OMQadqLmK/sl/48dRUcpYP+Mb/3kJ/l26qc6LQa rxI0fqDi5YUbDAPzC0eOGSx1uAcY9XWT6yg7XcDATEe0iukn+sxA2GarX4Bjybci2YZ3t3PQY6Sf kr5FkA+KG41iBmPWn1iORQPYczmZ2QfqHu/SjP0YF+bSt/i1JafBNp9hJGfFfqkYr96nMDWj96U6 c+n4n73o/mr/AJRPyB/4D0H/ACfmzadk/wB2f6zDPzCTVjP58+ZJpfsrba0aUqOT6VPGvy+Jxvmt gP8ACB/W/SnEf3Q9ync1TyB5snCg0htISSenqXcZ/wCNM2vaZ/dtMPqHv/QWZ+bbJD548t6M1Git LDRLEg/Z4C3hr0rt8eOg2wX72ec0beba/wDm15tsfMGqWumy2kVlDeTx2yrZWhpGkjKm/p1Pwgb5 qZ6vJZ3Z48A4Rd37yxtb/X/PPnDTYNWvJLu91K5t7JHagCiaURhUReKqKt0A65jTmZGy3QgIig90 1i7tr785dTvXKix0y5mfmu6LDpkZSMinb9wu+dFj/d6ce79rhZzd/L9DHQ81r+U2hrNUXnmfUr/z Beg9SA31WA/IhZCPnmH2VCzKRb82wAV5de1TT/zH0DyrYSRxadptpDc6/CYIJGf0YmvrsF5I5GFY F4jwyrUZ5yy8MTz/AEsMMAQZHv7+5D+V7tIdS1HzJdKpj0i2uNRdNlVpQCI0HYEu44/LNtqZ8GNp nvt37PHNK07UvMPmG006AmbUdWukgQtuWmuJAtSf9ZqnOWdiA/S7Q9ItNF0Ww0ezBFpp1vFa24NK +nCgRa070XAlG4q7FXYqgPMGi2mu6FqOi3gra6lbS2s2wJCTIUJFe4rUYq/M7WtJvdH1e90m+Qx3 lhPJbXCHtJE5RvxGFD1ryTdtrf5M3NmSXufKOqCVBT7Flqq8T/08w/8ADZs+y8lZDHvH3NWYbWw/ 8z7Xnc6RrCjbULJIpm8Z7I/V2r7+ksTfTlXaOPhyk97HAdq/H4u2c2k51f8AJvytqVWebRbq80S6 kPZSRd2y/IJK4Hy9syuyZ/VH4rnHIsJ/MjRdTvfNMmp2dnLcQ6lBbXTPbxu6iV4VEwJUH4vVVq5h arDIZDQ2ZYT6d06/LX8u9E1jy95km16yu49V0cWl5HCecTNp8srQ3UkaUFWioG5Gq+IOQ0+ISmIy 2tnM0LDXk1W0Gx846LdM0trefVk02UA8JZra6qtwh/l9D1R/sgMzdBp8kctkUBbXkmDFT88W4P5b WNwwAKaxKkRoKkSWqF/en7tcn2sOTVgPrPuTzQJDcfkXo77EWWu39tXuPUt4JqfjkeyT6pNufkGH /m+lNc0mTp6ujWBA8OEZj/HhXMTXD96Uaf6fi9B8wj61+X/5e6pD8do2kNY8x2ms7mRZVP8AwYzY 9kyHAR5ozjcJBPOqfmP5m10IWs723njsJNqO15GieNfhjdyfBhxO+U4NLM57IoAoiRHGB5L9TjZf y11lSo5apf2Fjasa7yIzzMB9FMv7Ul6AGrFvMfF6F5j4z/npcqvxJaTqgNKbWNoFGw/4w5dp/Tpx 7v0rqDuXzFPM808kzkl5WLsSakljU7nOcc56B/zj/ZRz/mto91MnO10kT6pcn+VLKB5gf+DVcMY8 RA71ZPHdXEflfzdrBHq3M9stiq92k1KYRkr7gA50PaEuHFTgDeQHmyrzJpMb+f8ARPKKMJbXy9aW OluR0ItYRLdH58zJXBoo8GC+9nqJ0Se5gWiagdU1Pzt5vdi4vJV06wZuoW6lMtRv+xbWnpn/AF/l mBoY+Jn4u6y2kcGMBf5tu/0T+WBhB43PmW9C0Pe0sfiLDw/fMBmR2pk2Efx+OTThFz9w+9M/+cR/ J/6a/M79LzR8rPy9btckleS/WJqwwKfA/E7r7rmkc59vYq7FXYq7FXYq+JP+cuPJUmi/mT+nYYSu n+YYVn9RVoguoQIpkr05EKkh/wBbFWGfk95v0HQNa1K08xyTR+X9c0+WwvXgXm0b8llhm4b1KPHt seuXYcnBMS7mE+Sb/mjqf5XXPlSys/KmrXOoX1tevMVu4HiIimiCycG9NF+1EnXMjV6gZaO1j3tO KJEuVD4fjvWflJ5x8mWfl/XPK/nG6ubPTb6e1v7G5tovVMdxAJI5AQA5+NJB+z26jvXpc3hz4mzK LHK2V/pD/nHj/qZtU/6RG/6o5sf5TP8AR+1o4D/NP2KOofmf5F8pTaJqHke/l1qS0ubhNU0+/heF biwvYkWeAuY1XiTApGxo29CBTMLVanxCD1HdbPFEgnahXki5df8A+ccb91vI9U1fSRMOb6a0Jl9J ialFcRSbDt8TZlQ7SlW5H2sZQP8ANPzDzj80/Oei63dWeleW43i8uaSHFq0lfUmllNZJX5UO9ABU DvsOgwdVqPEkzwYzGyeZZJ+V3m38tovy/u/LHm+/u9PmGrfpO1mtoTKCrWwgKigkputWqo/ZoTvS Wkz+ESWWUE7VbGfzd1ryxqvmCwfy3eSX2m2mnQWgnmjaKTlE8mzKyp+yV6CmQ1OQTla4YkA2K3Tv 8qfzM8t6fot15M88QT3Hle6mF3ZXdsR9YsLqnFnjBDVSQfaG9P5TU4NPmljlYLKYsMp/SP8Azjx/ 1M2qH2+qsK/T6JzZ/wApn+j9rjcB/mn5hh3m78xfLt75k0Gz0iCWDyhoN3FOQRymuGEimWZlYoGb gtFDU6n7INBr9VqDkPk24cRjZPMvQPM3n/8AJmW/13zHpeuXs2uXsd5Ja2sttIIvWuI3VVDemCN3 oKn55k/nP3fBY5ebVOBkeR5ju73znmscx6R+SHmjyd5e1nWpPM9zcWkGpaVPpsFxbx+qUNwyeo23 Ig8FIHwnqemWYZcMge5jO62Fss1Hzp+Uenz+XrTSNTvL7S49btdS1p5IGST0bUEqnEpHyTlQ7b9d umZeq1XigD9bj44ESuuQTDzP+YH5SRnX9f0PXL688yajHdtbRT27oizXYb4lb00A4l9qnplktb+7 4NuXmxljMjy6+TG/y81v8ok8jW+l+ZdWv9O1KK9ubqdILf1Ef1VijQhlWSqqkQ60NS21NzTpNT4V 8t/e3ZQT0J+TF/zX8zaHrGsWVp5fmefQtJtEtrSWRWQyOxLyyFGCkMxIDbdR4ZXqs3iStcEDEEnm S+qf+cTfJMvl78tf0pdwmK+8wz/W/iBDfVUHC3BB8fjkHs2Yre9rxV2KuxV2KuxVJPOXkzy75x0C 40LX7UXVjPRh2kikWvGWJ+qOtdiPkagkYq+cta/5wklN4zaJ5oUWbElYry2JkQV+EF434v8APgvy xVL/APoSXzH/ANTPZ/8ASPL/AM1Yq7/oSXzH/wBTPZ/9I8v/ADVirv8AoSXzH/1M9n/0jy/81Yq7 /oSXzH/1M9n/ANI8v/NWKu/6El8x/wDUz2f/AEjy/wDNWKu/6El8x/8AUz2f/SPL/wA1Yq7/AKEl 8x/9TPZ/9I8v/NWKu/6El8x/9TPZ/wDSPL/zVirv+hJfMf8A1M9n/wBI8v8AzVirv+hJfMf/AFM9 n/0jy/8ANWKu/wChJfMf/Uz2f/SPL/zVirv+hJfMf/Uz2f8A0jy/81Yq7/oSXzH/ANTPZ/8ASPL/ AM1Yq7/oSXzH/wBTPZ/9I8v/ADVirv8AoSXzH/1M9n/0jy/81Yq7/oSXzH/1M9n/ANI8v/NWKu/6 El8x/wDUz2f/AEjy/wDNWKsy/L//AJw88s6Nfxah5p1E69JEQ0enpF6FryBP97VneUdDT4R41GKv oWOOOONY41CRoAqIooABsAAO2Kt4q7FXYq//2Q==</xapGImg:image> + </rdf:li> + </rdf:Alt> + </xap:Thumbnails> + </rdf:Description> + <rdf:Description rdf:about="" + xmlns:xapMM="http://ns.adobe.com/xap/1.0/mm/" + xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#"> + <xapMM:DocumentID>uuid:33406112EB1C11DA9AE8AF786C667F62</xapMM:DocumentID> + <xapMM:InstanceID>uuid:33406113EB1C11DA9AE8AF786C667F62</xapMM:InstanceID> + <xapMM:DerivedFrom rdf:parseType="Resource"> + <stRef:instanceID>uuid:33406111EB1C11DA9AE8AF786C667F62</stRef:instanceID> + <stRef:documentID>uuid:33406110EB1C11DA9AE8AF786C667F62</stRef:documentID> + </xapMM:DerivedFrom> + </rdf:Description> + </rdf:RDF> +</x:xmpmeta> + + + + + + + + + + + + + + + + + + + + + +<?xpacket end="w"?> % &&end XMP packet marker&& [{ai_metadata_stream_123} <</Type /Metadata /Subtype /XML>> /PUT AI11_PDFMark5 [/Document 1 dict begin /Metadata {ai_metadata_stream_123} def currentdict end /BDC AI11_PDFMark5 %AI12_RMC_Transparency: Balance=75 RasterRes=300 GradRes=150 Text=0 Stroke=1 Clip=1 OP=0 Adobe_AGM_Utils begin Adobe_AGM_Core/page_setup get exec Adobe_AGM_Core/capture_currentpagedevice get exec Adobe_CoolType_Core/page_setup get exec Adobe_AGM_Image/page_setup get exec %%EndPageSetup Adobe_AGM_Core/AGMCORE_save save ddf 1 -1 scale 0 -726.521 translate [1 0 0 1 0 0 ] concat % page clip gsave newpath gsave % PSGState 0 0 mo 0 726.521 li 588.223 726.521 li 588.223 0 li cp clp [1 0 0 1 0 0 ] concat 7.29304 lw 0 lc 0 lj 4 ml [] 0 dsh true sadj 244.819 154.515 mo 243.075 154.515 241.473 155.104 240.152 156.105 cv 239.251 123.084 li 238.966 112.665 230.86 104.223 221.146 104.223 cv 217.531 104.223 214.224 105.397 211.523 107.402 cv 208.422 41.3643 li 207.444 20.5254 189.772 3.64648 168.932 3.64648 cv 148.102 3.64648 132.86 20.5254 134.894 41.3643 cv 141.328 107.402 li 138.342 105.397 134.867 104.223 131.246 104.223 cv 121.534 104.223 114.646 112.665 115.868 123.084 cv 119.735 156.105 li 118.272 155.104 116.585 154.515 114.84 154.515 cv 110.157 154.515 106.9 158.735 107.561 163.941 cv 163.501 604.679 li 261.173 604.679 li 253.459 163.941 li 253.37 158.735 249.503 154.515 244.819 154.515 cv cp false sop /0 [/DeviceCMYK] /CSA add_res 0.74902 0.678431 0.670588 0.901961 cmyk @ 163.501 604.679 mo 107.561 163.941 li 106.9 158.735 110.157 154.515 114.84 154.515 cv 119.522 154.515 123.799 158.735 124.394 163.941 cv 174.769 604.679 li 0.352941 0.101961 0 0 cmyk f 171.387 604.679 mo 119.344 163.941 li 118.728 158.735 116.713 154.515 114.84 154.515 cv 119.522 154.515 123.799 158.735 124.394 163.941 cv 174.769 604.679 li 0.882353 0.768627 0 0 cmyk f 172.266 604.679 mo 115.868 123.084 li 114.646 112.665 121.534 104.223 131.246 104.223 cv 140.963 104.223 149.612 112.665 150.568 123.084 cv 194.805 604.679 li 0.352941 0.101961 0 0 cmyk f 188.042 604.679 mo 140.159 123.084 li 139.123 112.665 135.139 104.223 131.246 104.223 cv 140.963 104.223 149.612 112.665 150.568 123.084 cv 194.805 604.679 li 0.882353 0.768627 0 0 cmyk f 189.797 604.679 mo 134.894 41.3643 li 132.86 20.5254 148.102 3.64648 168.932 3.64648 cv 189.772 3.64648 207.444 20.5254 208.422 41.3643 cv 234.877 604.679 li 0.352941 0.101961 0 0 cmyk f 221.354 604.679 mo 186.362 41.3643 li 185.07 20.5254 177.271 3.64648 168.932 3.64648 cv 189.772 3.64648 207.444 20.5254 208.422 41.3643 cv 234.877 604.679 li 0.882353 0.768627 0 0 cmyk f 229.868 604.679 mo 204.55 123.084 li 204.001 112.665 211.434 104.223 221.146 104.223 cv 230.86 104.223 238.966 112.665 239.251 123.084 cv 252.409 604.679 li 0.352941 0.101961 0 0 cmyk f 245.645 604.679 mo 228.841 123.084 li 228.476 112.665 225.036 104.223 221.146 104.223 cv 230.86 104.223 238.966 112.665 239.251 123.084 cv 252.409 604.679 li 0.882353 0.768627 0 0 cmyk f 249.905 604.679 mo 236.627 163.941 li 236.47 158.735 240.139 154.515 244.819 154.515 cv 249.503 154.515 253.37 158.735 253.459 163.941 cv 261.173 604.679 li 0.352941 0.101961 0 0 cmyk f 257.793 604.679 mo 248.411 163.941 li 248.302 158.735 246.69 154.515 244.819 154.515 cv 249.503 154.515 253.37 158.735 253.459 163.941 cv 261.173 604.679 li 0.882353 0.768627 0 0 cmyk f 31.2988 386.679 mo 33.3477 394.086 29.5098 400.092 22.7275 400.092 cv 15.9473 400.092 8.62012 394.086 6.36426 386.679 cv 4.11035 379.271 7.9502 373.265 14.9365 373.265 cv 21.9268 373.265 29.252 379.271 31.2988 386.679 cv cp 0.74902 0.678431 0.670588 0.901961 cmyk f 437.919 609.321 mo 378.852 675.794 li 431.939 248.468 li 515.457 181.995 li 437.919 609.321 li cp 0.352941 0.101961 0 0 cmyk f 5.46978 lw 6 ml 437.919 609.321 mo 378.852 675.794 li 431.939 248.468 li 515.457 181.995 li 437.919 609.321 li cp 0.74902 0.678431 0.670588 0.901961 cmyk @ 424.37 609.321 mo 366.316 675.794 li 412.885 248.468 li 495.387 181.995 li 424.37 609.321 li cp 0.352941 0.101961 0 0 cmyk f 424.37 609.321 mo 366.316 675.794 li 412.885 248.468 li 495.387 181.995 li 424.37 609.321 li cp 0.74902 0.678431 0.670588 0.901961 cmyk @ 410.822 609.321 mo 353.781 675.794 li 393.829 248.468 li 475.316 181.995 li 410.822 609.321 li cp 0.352941 0.101961 0 0 cmyk f 410.822 609.321 mo 353.781 675.794 li 393.829 248.468 li 475.316 181.995 li 410.822 609.321 li cp 0.74902 0.678431 0.670588 0.901961 cmyk @ 397.272 609.321 mo 341.247 675.794 li 374.771 248.468 li 455.249 181.995 li 397.272 609.321 li cp 0.352941 0.101961 0 0 cmyk f 397.272 609.321 mo 341.247 675.794 li 374.771 248.468 li 455.249 181.995 li 397.272 609.321 li cp 0.74902 0.678431 0.670588 0.901961 cmyk @ 383.723 609.321 mo 328.713 675.794 li 355.717 248.468 li 435.18 181.995 li 383.723 609.321 li cp 0.352941 0.101961 0 0 cmyk f 383.723 609.321 mo 328.713 675.794 li 355.717 248.468 li 435.18 181.995 li 383.723 609.321 li cp 0.74902 0.678431 0.670588 0.901961 cmyk @ 370.174 609.321 mo 316.177 675.794 li 336.663 248.468 li 415.108 181.995 li 370.174 609.321 li cp 0.882353 0.768627 0 0 cmyk f 370.174 609.321 mo 316.177 675.794 li 336.663 248.468 li 415.108 181.995 li 370.174 609.321 li cp 0.74902 0.678431 0.670588 0.901961 cmyk @ 480.717 346.36 mo 475.8 323.569 li 479.402 302.329 507.679 285.11 538.965 285.11 cv 570.248 285.11 591.08 302.329 585.494 323.569 cv 570.77 346.16 li 0.352941 0.101961 0 0 cmyk f 3.64652 lw 480.717 346.36 mo 475.8 323.569 li 479.402 302.329 507.679 285.11 538.965 285.11 cv 570.248 285.11 591.08 302.329 585.494 323.569 cv 570.77 346.16 li 0.74902 0.678431 0.670588 0.901961 cmyk @ 480.717 346.36 mo 475.8 323.569 li 478.202 309.409 505.24 297.93 536.192 297.93 cv 567.143 297.93 589.219 309.409 585.494 323.569 cv 570.72 346.36 li f 574.382 340.663 mo 571.95 350.104 549.061 357.756 523.254 357.756 cv 497.446 357.756 477.866 350.104 479.521 340.663 cv 481.173 331.224 504.064 323.569 530.646 323.569 cv 557.229 323.569 576.81 331.224 574.382 340.663 cv cp 0 0 0 0 cmyk f 4 ml 574.382 340.663 mo 571.95 350.104 549.061 357.756 523.254 357.756 cv 497.446 357.756 477.866 350.104 479.521 340.663 cv 481.173 331.224 504.064 323.569 530.646 323.569 cv 557.229 323.569 576.81 331.224 574.382 340.663 cv cp 0.74902 0.678431 0.670588 0.901961 cmyk @ 500.555 552.345 mo 506.639 552.345 li 506.639 552.345 552.653 334.965 528.182 334.965 cv 524.44 352.273 li 546.106 352.273 500.555 552.345 500.555 552.345 cv cp f 446.006 552.345 mo 430.234 552.345 li 430.234 552.345 479.244 334.965 528.182 334.965 cv 524.44 352.272 li 481.104 352.272 446.006 552.345 446.006 552.345 cv cp 0.882353 0.768627 0 0 cmyk f 516.332 552.345 mo 532.102 552.345 li 532.102 552.345 577.125 334.965 528.182 334.965 cv 524.44 352.273 li 567.772 352.273 516.332 552.345 516.332 552.345 cv cp f 461.785 552.345 mo 455.701 552.345 li 455.701 552.345 503.713 334.965 528.182 334.965 cv 524.44 352.272 li 502.775 352.272 461.785 552.345 461.785 552.345 cv cp 0.352941 0.101961 0 0 cmyk f 31.2988 386.679 mo 33.3477 395.938 29.5098 403.445 22.7275 403.445 cv 15.9473 403.445 8.62012 395.938 6.36426 386.679 cv 4.11035 377.42 7.9502 369.912 14.9365 369.912 cv 21.9268 369.912 29.252 377.42 31.2988 386.679 cv cp 0.74902 0.678431 0.670588 0.901961 cmyk f 9.66895 476.706 mo 21.6279 476.706 17.6045 401.257 17.6045 401.257 cv 17.6191 401.257 li 18.8594 400.478 20.3105 400.045 21.9385 400.045 cv 23.5654 400.045 25.2197 400.478 26.8193 401.257 cv 26.833 401.257 li 26.833 401.257 57.8594 476.706 69.8174 476.706 cv 0.882353 0.768627 0 0 cmyk f 1.21551 lw 9.66895 476.706 mo 21.6279 476.706 17.6045 401.257 17.6045 401.257 cv 17.6191 401.257 li 18.8594 400.478 20.3105 400.045 21.9385 400.045 cv 23.5654 400.045 25.2197 400.478 26.8193 401.257 cv 26.833 401.257 li 26.833 401.257 57.8594 476.706 69.8174 476.706 cv 0 0 0 1 cmyk @ 69.8174 476.706 mo 86.0186 556.604 li 30.5801 556.604 li 9.66895 476.706 li 7.24414 467.447 18.9668 459.94 35.8496 459.94 cv 52.7305 459.94 67.9385 467.447 69.8174 476.706 cv cp 0.352941 0.101961 0 0 cmyk f 3.64652 lw 69.8174 476.706 mo 86.0186 556.604 li 30.5801 556.604 li 9.66895 476.706 li 7.24414 467.447 18.9668 459.94 35.8496 459.94 cv 52.7305 459.94 67.9385 467.447 69.8174 476.706 cv cp 0 0 0 1 cmyk @ 53.6387 556.563 mo 44.0537 556.563 li 22.7363 470.396 li 25.6211 469.318 28.9775 468.557 32.6738 468.177 cv 53.6387 556.563 li cp 0 0 0 0 cmyk f 40.3652 556.604 mo 38.293 556.604 li 17.124 473.112 li 17.7344 472.697 18.3896 472.303 19.0859 471.929 cv 40.3652 556.604 li cp f 19.9141 376.137 mo 19.3525 377.213 20.1807 379.394 21.7559 381.005 cv 23.3281 382.617 25.0537 383.054 25.6113 381.979 cv 26.1748 380.904 25.3564 378.727 23.7861 377.113 cv 22.2109 375.499 20.4766 375.063 19.9141 376.137 cv cp 0.352941 0.101961 0 0 cmyk f 1.21551 lw 19.9141 376.137 mo 19.3525 377.213 20.1807 379.394 21.7559 381.005 cv 23.3281 382.617 25.0537 383.054 25.6113 381.979 cv 26.1748 380.904 25.3564 378.727 23.7861 377.113 cv 22.2109 375.499 20.4766 375.063 19.9141 376.137 cv cp 0 0 0 1 cmyk @ 10.4287 375.805 mo 9.75977 378.008 9.7002 380.707 10.3994 383.632 cv 12.1709 391.039 18.0273 397.045 23.4854 397.045 cv 25.6416 397.045 27.416 396.097 28.6807 394.507 cv 27.6504 397.887 25.2412 400.092 21.9492 400.092 cv 16.5068 400.092 10.6484 394.088 8.8584 386.679 cv 7.77832 382.196 8.47656 378.239 10.4287 375.805 cv cp 0 0 0 0 cmyk f 70.9541 344.199 mo 73.0215 355.774 67.5811 365.159 58.8096 365.159 cv 50.0352 365.159 40.9834 355.774 38.5938 344.199 cv 36.2021 332.625 41.6377 323.24 50.7373 323.24 cv 59.835 323.24 68.8867 332.625 70.9541 344.199 cv cp 0.74902 0.678431 0.670588 0.901961 cmyk f 38.1123 456.733 mo 53.3516 456.733 52.3096 362.422 52.3096 362.422 cv 52.3291 362.422 li 53.9766 361.444 55.8828 360.906 57.9902 360.906 cv 60.0967 360.906 62.209 361.444 64.2344 362.422 cv 64.2559 362.422 li 64.2559 362.422 99.5283 456.733 114.769 456.733 cv 0.882353 0.768627 0 0 cmyk f 38.1123 456.733 mo 53.3516 456.733 52.3096 362.422 52.3096 362.422 cv 52.3291 362.422 li 53.9766 361.444 55.8828 360.906 57.9902 360.906 cv 60.0967 360.906 62.209 361.444 64.2344 362.422 cv 64.2559 362.422 li 64.2559 362.422 99.5283 456.733 114.769 456.733 cv 0 0 0 1 cmyk @ 114.766 456.733 mo 130.317 556.604 li 61.0186 556.604 li 38.1123 456.733 li 35.458 445.157 50.8115 435.772 72.4053 435.772 cv 93.9971 435.772 112.964 445.157 114.766 456.733 cv cp 0.352941 0.101961 0 0 cmyk f 3.64652 lw 114.766 456.733 mo 130.317 556.604 li 61.0186 556.604 li 38.1123 456.733 li 35.458 445.157 50.8115 435.772 72.4053 435.772 cv 93.9971 435.772 112.964 445.157 114.766 456.733 cv cp 0 0 0 1 cmyk @ 89.8457 556.557 mo 77.8643 556.557 li 55.0859 448.847 li 58.8262 447.496 63.1504 446.543 67.8896 446.069 cv 89.8457 556.557 li cp 0 0 0 0 cmyk f 73.252 556.604 mo 70.6582 556.604 li 47.7891 452.241 li 48.5898 451.72 49.4424 451.229 50.3486 450.76 cv 73.252 556.604 li cp f 56.8262 331.023 mo 56.0293 332.365 56.9697 335.091 58.917 337.106 cv 60.8604 339.12 63.0713 339.667 63.8652 338.321 cv 64.6631 336.979 63.7412 334.254 61.7979 332.24 cv 59.8506 330.225 57.6221 329.677 56.8262 331.023 cv cp 0.352941 0.101961 0 0 cmyk f 1.21551 lw 56.8262 331.023 mo 56.0293 332.365 56.9697 335.091 58.917 337.106 cv 60.8604 339.12 63.0713 339.667 63.8652 338.321 cv 64.6631 336.979 63.7412 334.254 61.7979 332.24 cv 59.8506 330.225 57.6221 329.677 56.8262 331.023 cv cp 0 0 0 1 cmyk @ 44.5107 330.604 mo 43.5117 333.359 43.2686 336.731 44.0049 340.388 cv 45.8682 349.648 53.1074 357.155 60.1748 357.155 cv 62.9678 357.155 65.3232 355.973 67.0635 353.983 cv 65.5156 358.208 62.2627 360.967 58.001 360.967 cv 50.9561 360.967 43.7158 353.459 41.8291 344.199 cv 40.6875 338.598 41.8291 333.648 44.5107 330.604 cv cp 0 0 0 0 cmyk f 127.202 291.099 mo 128.996 305.564 121.185 317.297 109.755 317.297 cv 98.3232 317.297 87.1914 305.564 84.8887 291.099 cv 82.5859 276.63 90.3994 264.901 102.337 264.901 cv 114.276 264.901 125.406 276.63 127.202 291.099 cv cp 0.74902 0.678431 0.670588 0.901961 cmyk f 76.8994 431.766 mo 96.4053 431.766 101.487 313.876 101.487 313.876 cv 101.514 313.876 li 103.73 312.655 106.255 311.983 109.002 311.983 cv 111.749 311.983 114.464 312.655 117.03 313.876 cv 117.056 313.876 li 117.056 313.876 155.513 431.766 175.018 431.766 cv 0.882353 0.768627 0 0 cmyk f 76.8994 431.766 mo 96.4053 431.766 101.487 313.876 101.487 313.876 cv 101.514 313.876 li 103.73 312.655 106.255 311.983 109.002 311.983 cv 111.749 311.983 114.464 312.655 117.03 313.876 cv 117.056 313.876 li 117.056 313.876 155.513 431.766 175.018 431.766 cv 0 0 0 1 cmyk @ 175.016 431.766 mo 186.939 556.604 li 100.32 556.604 li 76.8994 431.766 li 74.1855 417.297 94.4893 405.567 122.248 405.567 cv 150.011 405.567 173.634 417.297 175.016 431.766 cv cp 0.352941 0.101961 0 0 cmyk f 3.64652 lw 175.016 431.766 mo 186.939 556.604 li 100.32 556.604 li 76.8994 431.766 li 74.1855 417.297 94.4893 405.567 122.248 405.567 cv 150.011 405.567 173.634 417.297 175.016 431.766 cv cp 0 0 0 1 cmyk @ 136.354 556.543 mo 121.374 556.543 li 99.1309 421.907 li 104.016 420.222 109.625 419.029 115.734 418.438 cv 136.354 556.543 li cp 0 0 0 0 cmyk f 115.607 556.604 mo 112.365 556.604 li 89.5635 426.151 li 90.6211 425.5 91.7461 424.882 92.9365 424.302 cv 115.607 556.604 li cp f 109.729 274.628 mo 108.584 276.307 109.606 279.716 112.003 282.233 cv 114.39 284.754 117.246 285.432 118.39 283.753 cv 119.535 282.074 118.539 278.667 116.152 276.148 cv 113.756 273.63 110.872 272.948 109.729 274.628 cv cp 0.352941 0.101961 0 0 cmyk f 1.21551 lw 109.729 274.628 mo 108.584 276.307 109.606 279.716 112.003 282.233 cv 114.39 284.754 117.246 285.432 118.39 283.753 cv 119.535 282.074 118.539 278.667 116.152 276.148 cv 113.756 273.63 110.872 272.948 109.729 274.628 cv cp 0 0 0 1 cmyk @ 93.623 274.105 mo 92.1133 277.549 91.5439 281.765 92.2402 286.333 cv 94.0049 297.912 102.911 307.292 112.134 307.292 cv 115.773 307.292 118.938 305.813 121.362 303.329 cv 119.021 308.612 114.572 312.058 109.013 312.058 cv 99.8291 312.058 90.9209 302.673 89.1191 291.099 cv 88.0303 284.095 89.8838 277.912 93.623 274.105 cv cp 0 0 0 0 cmyk f 352.604 340.534 mo 353.521 325.582 li 354.598 302.461 314.437 284.646 266.696 285.78 cv 219.057 286.919 184.809 304.892 187.01 328.01 cv 188.204 346.901 li 0 0 0 1 cmyk f 352.604 340.534 mo 353.521 325.582 li 354.598 302.461 314.437 284.646 266.696 285.78 cv 219.057 286.919 184.809 304.892 187.01 328.01 cv 188.204 346.901 li @ 269.129 300.733 mo 222.061 301.87 185.793 321.534 187.985 344.661 cv 190.183 367.773 227.354 385.588 271.118 384.461 cv 314.973 383.314 351.498 363.648 352.604 340.534 cv 353.692 317.419 316.276 299.597 269.129 300.733 cv cp 0.352941 0.101961 0 0 cmyk f 269.129 300.733 mo 222.061 301.87 185.793 321.534 187.985 344.661 cv 190.183 367.773 227.354 385.588 271.118 384.461 cv 314.973 383.314 351.498 363.648 352.604 340.534 cv 353.692 317.419 316.276 299.597 269.129 300.733 cv cp 0 0 0 1 cmyk @ 350.744 368.877 mo 351.666 353.924 li 352.751 330.803 313.555 312.988 266.933 314.128 cv 220.407 315.262 186.995 333.233 189.185 356.351 cv 190.387 375.242 li f 350.744 368.877 mo 351.666 353.924 li 352.751 330.803 313.555 312.988 266.933 314.128 cv 220.407 315.262 186.995 333.233 189.185 356.351 cv 190.387 375.242 li @ 269.312 329.078 mo 223.357 330.216 187.985 349.881 190.17 373.002 cv 192.357 396.12 228.617 413.933 271.262 412.804 cv 314.001 411.659 349.632 391.997 350.744 368.877 cv 351.846 345.762 315.342 327.942 269.312 329.078 cv cp 0.352941 0.101961 0 0 cmyk f 269.312 329.078 mo 223.357 330.216 187.985 349.881 190.17 373.002 cv 192.357 396.12 228.617 413.933 271.262 412.804 cv 314.001 411.659 349.632 391.997 350.744 368.877 cv 351.846 345.762 315.342 327.942 269.312 329.078 cv cp 0 0 0 1 cmyk @ 348.889 397.222 mo 349.81 382.271 li 350.908 359.146 312.676 341.332 267.17 342.47 cv 221.76 343.608 189.181 361.58 191.362 384.696 cv 192.568 403.588 li f 348.889 397.222 mo 349.81 382.271 li 350.908 359.146 312.676 341.332 267.17 342.47 cv 221.76 343.608 189.181 361.58 191.362 384.696 cv 192.568 403.588 li @ 269.493 357.425 mo 224.658 358.561 190.18 378.226 192.354 401.349 cv 194.53 424.465 229.876 442.277 271.408 441.144 cv 313.03 440.004 347.765 420.338 348.889 397.222 cv 349.997 374.107 314.408 356.284 269.493 357.425 cv cp 0.352941 0.101961 0 0 cmyk f 269.493 357.425 mo 224.658 358.561 190.18 378.226 192.354 401.349 cv 194.53 424.465 229.876 442.277 271.408 441.144 cv 313.03 440.004 347.765 420.338 348.889 397.222 cv 349.997 374.107 314.408 356.284 269.493 357.425 cv cp 0 0 0 1 cmyk @ 208.146 302.487 mo 208.592 310.295 li 214.704 306.908 li 214.297 299.1 li 208.146 302.487 li cp 0 0 0 0 cmyk f 198.62 308.619 mo 199.135 316.426 li 196.931 319.177 li 196.401 311.37 li 198.62 308.619 li cp f 209.773 330.828 mo 210.222 338.638 li 216.181 335.252 li 215.773 327.446 li 209.773 330.828 li cp f 200.484 336.966 mo 201 344.771 li 198.85 347.52 li 198.323 339.712 li 200.484 336.966 li cp f 211.403 359.176 mo 211.85 366.979 li 217.658 363.598 li 217.252 355.79 li 211.403 359.176 li cp f 202.349 365.307 mo 202.863 373.116 li 200.774 375.867 li 200.243 368.061 li 202.349 365.307 li cp f 226.583 295.372 mo 226.911 303.18 li 236.458 300.733 li 236.195 292.927 li 226.583 295.372 li cp f 227.767 323.715 mo 228.093 331.523 li 237.413 329.077 li 237.15 321.269 li 227.767 323.715 li cp f 228.952 352.058 mo 229.276 359.865 li 238.369 357.419 li 238.105 349.613 li 228.952 352.058 li cp f 347.03 425.571 mo 347.955 410.618 li 349.062 387.498 311.796 369.684 267.405 370.817 cv 223.112 371.954 191.368 389.929 193.54 413.046 cv 194.751 431.937 li 0 0 0 1 cmyk f 347.03 425.571 mo 347.955 410.618 li 349.062 387.498 311.796 369.684 267.405 370.817 cv 223.112 371.954 191.368 389.929 193.54 413.046 cv 194.751 431.937 li @ 269.674 385.771 mo 225.954 386.908 192.371 406.57 194.538 429.696 cv 196.705 452.811 231.138 470.624 271.552 469.496 cv 312.058 468.351 345.895 448.687 347.03 425.571 cv 348.149 402.455 313.472 384.635 269.674 385.771 cv cp 0.352941 0.101961 0 0 cmyk f 269.674 385.771 mo 225.954 386.908 192.371 406.57 194.538 429.696 cv 196.705 452.811 231.138 470.624 271.552 469.496 cv 312.058 468.351 345.895 448.687 347.03 425.571 cv 348.149 402.455 313.472 384.635 269.674 385.771 cv cp 0 0 0 1 cmyk @ 345.17 453.915 mo 346.096 438.961 li 347.216 415.838 310.916 398.025 267.642 399.165 cv 224.465 400.3 193.555 418.271 195.717 441.391 cv 196.935 460.278 li f 345.17 453.915 mo 346.096 438.961 li 347.216 415.838 310.916 398.025 267.642 399.165 cv 224.465 400.3 193.555 418.271 195.717 441.391 cv 196.935 460.278 li @ 269.855 414.114 mo 227.252 415.253 194.566 434.918 196.721 458.038 cv 198.878 481.155 232.397 498.971 271.697 497.84 cv 311.087 496.696 344.025 477.033 345.17 453.915 cv 346.302 430.8 312.539 412.979 269.855 414.114 cv cp 0.352941 0.101961 0 0 cmyk f 269.855 414.114 mo 227.252 415.253 194.566 434.918 196.721 458.038 cv 198.878 481.155 232.397 498.971 271.697 497.84 cv 311.087 496.696 344.025 477.033 345.17 453.915 cv 346.302 430.8 312.539 412.979 269.855 414.114 cv cp 0 0 0 1 cmyk @ 343.314 482.258 mo 344.24 467.307 li 345.371 444.183 310.035 426.37 267.877 427.507 cv 225.816 428.646 195.741 446.617 197.893 469.731 cv 199.117 488.624 li f 343.314 482.258 mo 344.24 467.307 li 345.371 444.183 310.035 426.37 267.877 427.507 cv 225.816 428.646 195.741 446.617 197.893 469.731 cv 199.117 488.624 li @ 270.037 442.461 mo 228.55 443.597 196.761 463.261 198.906 486.385 cv 201.052 509.5 233.658 527.314 271.842 526.183 cv 310.116 525.04 342.16 505.374 343.314 482.258 cv 344.453 459.146 311.604 441.323 270.037 442.461 cv cp 0.352941 0.101961 0 0 cmyk f 270.037 442.461 mo 228.55 443.597 196.761 463.261 198.906 486.385 cv 201.052 509.5 233.658 527.314 271.842 526.183 cv 310.116 525.04 342.16 505.374 343.314 482.258 cv 344.453 459.146 311.604 441.323 270.037 442.461 cv cp 0 0 0 1 cmyk @ 213.031 387.524 mo 213.481 395.329 li 219.14 391.943 li 218.733 384.137 li 213.031 387.524 li cp 0 0 0 0 cmyk f 204.213 393.656 mo 204.727 401.461 li 202.696 404.214 li 202.165 396.407 li 204.213 393.656 li cp f 214.658 415.868 mo 215.108 423.673 li 220.617 420.287 li 220.209 412.483 li 214.658 415.868 li cp f 206.079 422.002 mo 206.591 429.807 li 204.615 432.559 li 204.088 424.749 li 206.079 422.002 li cp f 216.289 444.213 mo 216.734 452.015 li 222.096 448.634 li 221.688 440.825 li 216.289 444.213 li cp f 207.943 450.345 mo 208.455 458.154 li 206.537 460.903 li 206.009 453.096 li 207.943 450.345 li cp f 230.136 380.409 mo 230.462 388.216 li 239.325 385.771 li 239.063 377.963 li 230.136 380.409 li cp f 231.32 408.752 mo 231.646 416.56 li 240.279 414.114 li 240.017 406.305 li 231.32 408.752 li cp f 232.504 437.096 mo 232.829 444.905 li 241.235 442.459 li 240.972 434.651 li 232.504 437.096 li cp f 341.458 510.607 mo 342.385 495.653 li 343.523 472.535 309.155 454.719 268.115 455.853 cv 227.168 456.991 197.927 474.964 200.068 498.084 cv 201.3 516.973 li 0 0 0 1 cmyk f 341.458 510.607 mo 342.385 495.653 li 343.523 472.535 309.155 454.719 268.115 455.853 cv 227.168 456.991 197.927 474.964 200.068 498.084 cv 201.3 516.973 li @ 270.22 470.809 mo 229.848 471.945 198.956 491.608 201.09 514.733 cv 203.225 537.849 234.918 555.659 271.985 554.534 cv 309.144 553.388 340.292 533.722 341.458 510.607 cv 342.606 487.491 310.67 469.669 270.22 470.809 cv cp 0.352941 0.101961 0 0 cmyk f 270.22 470.809 mo 229.848 471.945 198.956 491.608 201.09 514.733 cv 203.225 537.849 234.918 555.659 271.985 554.534 cv 309.144 553.388 340.292 533.722 341.458 510.607 cv 342.606 487.491 310.67 469.669 270.22 470.809 cv cp 0 0 0 1 cmyk @ 339.603 538.95 mo 340.53 523.998 li 341.678 500.875 308.275 483.062 268.351 484.2 cv 228.521 485.336 200.114 503.308 202.246 526.426 cv 203.481 545.316 li f 339.603 538.95 mo 340.53 523.998 li 341.678 500.875 308.275 483.062 268.351 484.2 cv 228.521 485.336 200.114 503.308 202.246 526.426 cv 203.481 545.316 li @ 339.603 538.95 mo 340.761 515.833 309.736 498.016 270.399 499.151 cv 231.146 500.288 201.148 519.954 203.273 543.076 cv 0.352941 0.101961 0 0 cmyk f 339.603 538.95 mo 340.761 515.833 309.736 498.016 270.399 499.151 cv 231.146 500.288 201.148 519.954 203.273 543.076 cv 0 0 0 1 cmyk @ 337.741 567.296 mo 338.673 552.345 li 339.834 529.219 307.396 511.405 268.589 512.544 cv 229.874 513.683 202.302 531.656 204.421 554.768 cv 205.666 573.66 li f 337.741 567.296 mo 338.673 552.345 li 339.834 529.219 307.396 511.405 268.589 512.544 cv 229.874 513.683 202.302 531.656 204.421 554.768 cv 205.666 573.66 li @ 217.917 472.56 mo 218.366 480.367 li 223.576 476.981 li 223.167 469.174 li 217.917 472.56 li cp 0 0 0 0 cmyk f 209.806 478.691 mo 210.32 486.5 li 208.46 489.249 li 207.931 481.443 li 209.806 478.691 li cp f 219.546 500.901 mo 219.994 508.71 li 225.052 505.325 li 224.645 497.521 li 219.546 500.901 li cp f 211.67 507.039 mo 212.184 514.844 li 210.38 517.595 li 209.851 509.787 li 211.67 507.039 li cp f 233.689 465.446 mo 234.014 473.254 li 242.191 470.809 li 241.93 463.001 li 233.689 465.446 li cp f 234.872 493.788 mo 235.198 501.598 li 243.146 499.151 li 242.883 491.344 li 234.872 493.788 li cp f 21.8791 lw 83.4258 715.581 mo 71.3926 715.581 58.3984 706.253 54.5498 694.852 cv 12.0264 568.857 li 8.17871 557.457 14.876 548.128 26.9082 548.128 cv 532.75 548.128 li 544.784 548.128 551.497 557.462 547.672 568.871 cv 505.436 694.84 li 501.609 706.249 488.635 715.582 476.602 715.582 cv 83.4258 715.581 li cp @ 83.4258 715.581 mo 71.3926 715.581 58.3984 706.253 54.5498 694.852 cv 12.0264 568.857 li 8.17871 557.457 14.876 548.128 26.9082 548.128 cv 532.75 548.128 li 544.784 548.128 551.497 557.462 547.672 568.871 cv 505.436 694.84 li 501.609 706.249 488.635 715.582 476.602 715.582 cv 83.4258 715.581 li cp 0.74902 0.678431 0.670588 0.901961 cmyk f 300.363 679.701 mo 298.781 677.022 298.015 673.869 298.077 670.23 cv 299.227 600.775 li 299.291 596.977 300.277 593.745 302.196 591.084 cv 304.126 588.425 306.4 587.094 309.01 587.091 cv 310.219 587.091 311.331 587.374 312.359 587.913 cv 312.259 587.751 312.169 587.583 312.064 587.423 cv 310.284 584.77 308.048 583.442 305.363 583.444 cv 302.755 583.446 300.479 584.779 298.55 587.438 cv 296.631 590.101 295.643 593.33 295.579 597.128 cv 294.431 666.584 li 294.367 670.274 295.155 673.47 296.78 676.172 cv 297.828 677.923 299.021 679.093 300.363 679.701 cv cp 325.939 574.495 mo 325.938 574.497 li 325.95 574.508 325.959 574.516 325.971 574.526 cv 325.939 574.495 li cp 332.414 581.687 mo 331.53 580.333 330.585 579.153 329.585 578.142 cv 329.588 578.142 li 325.973 574.528 li 326.961 575.531 327.894 576.702 328.767 578.042 cv 332.221 583.395 333.7 589.747 333.237 597.103 cv 329.009 666.471 li 328.546 673.826 326.484 680.194 322.856 685.573 cv 319.277 690.954 315.239 693.666 310.705 693.705 cv 293.97 693.705 li 290.796 693.73 287.938 692.427 285.368 689.854 cv 285.341 689.863 li 288.986 693.51 li 288.991 693.479 li 291.566 696.067 294.433 697.377 297.616 697.35 cv 314.351 697.35 li 318.885 697.316 322.923 694.604 326.503 689.22 cv 330.132 683.841 332.193 677.473 332.654 670.118 cv 336.884 600.749 li 337.347 593.394 335.865 587.041 332.414 581.687 cv cp 0.368627 0.043137 0 0 cmyk f 2.43101 lw 1 ml 300.363 679.701 mo 298.781 677.022 298.015 673.869 298.077 670.23 cv 299.227 600.775 li 299.291 596.977 300.277 593.745 302.196 591.084 cv 304.126 588.425 306.4 587.094 309.01 587.091 cv 310.219 587.091 311.331 587.374 312.359 587.913 cv 312.259 587.751 312.169 587.583 312.064 587.423 cv 310.284 584.77 308.048 583.442 305.363 583.444 cv 302.755 583.446 300.479 584.779 298.55 587.438 cv 296.631 590.101 295.643 593.33 295.579 597.128 cv 294.431 666.584 li 294.367 670.274 295.155 673.47 296.78 676.172 cv 297.828 677.923 299.021 679.093 300.363 679.701 cv cp 325.939 574.495 mo 325.938 574.497 li 325.95 574.508 325.959 574.516 325.971 574.526 cv 325.939 574.495 li cp 332.414 581.687 mo 331.53 580.333 330.585 579.153 329.585 578.142 cv 329.588 578.142 li 325.973 574.528 li 326.961 575.531 327.894 576.702 328.767 578.042 cv 332.221 583.395 333.7 589.747 333.237 597.103 cv 329.009 666.471 li 328.546 673.826 326.484 680.194 322.856 685.573 cv 319.277 690.954 315.239 693.666 310.705 693.705 cv 293.97 693.705 li 290.796 693.73 287.938 692.427 285.368 689.854 cv 285.341 689.863 li 288.986 693.51 li 288.991 693.479 li 291.566 696.067 294.433 697.377 297.616 697.35 cv 314.351 697.35 li 318.885 697.316 322.923 694.604 326.503 689.22 cv 330.132 683.841 332.193 677.473 332.654 670.118 cv 336.884 600.749 li 337.347 593.394 335.865 587.041 332.414 581.687 cv cp 0.368627 0.039216 0 0 cmyk @ 441.978 570.008 mo 416.281 693.705 li 399.677 693.705 li 403.323 697.35 li 419.926 697.35 li 445.623 573.654 li 441.978 570.008 li cp 0.368627 0.043137 0 0 cmyk f 441.978 570.008 mo 416.281 693.705 li 399.677 693.705 li 403.323 697.35 li 419.926 697.35 li 445.623 573.654 li 441.978 570.008 li cp 0.368627 0.039216 0 0 cmyk @ 476.021 640.607 mo 477.035 636.941 li 459.064 637.02 li 444.585 693.705 li 427.85 693.705 li 431.495 697.35 li 448.232 697.35 li 462.711 640.666 li 476.021 640.607 li cp 511.584 581.585 mo 510.779 579.617 509.757 578.018 508.516 576.782 cv 508.52 576.78 li 508.493 576.757 li 508.491 576.755 508.49 576.752 508.488 576.75 cv 504.872 573.134 li 504.87 573.137 li 506.11 574.373 507.135 575.974 507.937 577.939 cv 510.044 583.227 509.926 589.5 507.616 596.762 cv 477.923 693.705 li 461.319 693.705 li 464.965 697.35 li 481.571 697.35 li 511.264 600.41 li 513.572 593.146 513.689 586.873 511.584 581.585 cv cp 473.608 600.456 mo 474.627 596.696 476.424 593.504 479.01 590.873 cv 481.608 588.239 484.217 586.925 486.825 586.923 cv 487.577 586.923 488.26 587.037 488.889 587.24 cv 488.884 587.232 488.882 587.221 488.879 587.213 cv 487.767 584.587 485.864 583.274 483.181 583.276 cv 480.569 583.278 477.962 584.594 475.364 587.226 cv 472.776 589.856 470.98 593.05 469.962 596.808 cv 462.719 623.532 li 467.357 623.519 li 473.608 600.456 li cp 401.511 577.504 mo 401.543 577.495 li 397.896 573.849 li 397.884 573.879 li 399.026 575.015 400.075 576.371 401 578.01 cv 403.965 583.345 404.861 589.673 403.728 596.998 cv 401.65 610.413 li 400.519 617.741 397.753 624.078 393.396 629.425 cv 389.083 634.777 384.51 637.461 379.642 637.482 cv 361.671 637.562 li 355.819 693.705 li 339.085 693.705 li 342.731 697.35 li 359.466 697.35 li 365.316 641.207 li 383.289 641.129 li 388.157 641.108 392.729 638.423 397.04 633.071 cv 401.4 627.726 404.164 621.389 405.298 614.06 cv 407.374 600.645 li 408.507 593.317 407.612 586.991 404.648 581.657 cv 403.715 580.007 402.661 578.645 401.511 577.504 cv cp 371.2 587.039 mo 380.752 587.029 li 381.775 587.029 382.717 587.224 383.574 587.608 cv 383.527 587.523 383.489 587.435 383.441 587.35 cv 381.905 584.702 379.79 583.381 377.104 583.383 cv 367.555 583.392 li 363.147 623.964 li 367.191 623.952 li 371.2 587.039 li cp 0.368627 0.043137 0 0 cmyk f 476.021 640.607 mo 477.035 636.941 li 459.064 637.02 li 444.585 693.705 li 427.85 693.705 li 431.495 697.35 li 448.232 697.35 li 462.711 640.666 li 476.021 640.607 li cp 511.584 581.585 mo 510.779 579.617 509.757 578.018 508.516 576.782 cv 508.52 576.78 li 508.493 576.757 li 508.491 576.755 508.49 576.752 508.488 576.75 cv 504.872 573.134 li 504.87 573.137 li 506.11 574.373 507.135 575.974 507.937 577.939 cv 510.044 583.227 509.926 589.5 507.616 596.762 cv 477.923 693.705 li 461.319 693.705 li 464.965 697.35 li 481.571 697.35 li 511.264 600.41 li 513.572 593.146 513.689 586.873 511.584 581.585 cv cp 473.608 600.456 mo 474.627 596.696 476.424 593.504 479.01 590.873 cv 481.608 588.239 484.217 586.925 486.825 586.923 cv 487.577 586.923 488.26 587.037 488.889 587.24 cv 488.884 587.232 488.882 587.221 488.879 587.213 cv 487.767 584.587 485.864 583.274 483.181 583.276 cv 480.569 583.278 477.962 584.594 475.364 587.226 cv 472.776 589.856 470.98 593.05 469.962 596.808 cv 462.719 623.532 li 467.357 623.519 li 473.608 600.456 li cp 401.511 577.504 mo 401.543 577.495 li 397.896 573.849 li 397.884 573.879 li 399.026 575.015 400.075 576.371 401 578.01 cv 403.965 583.345 404.861 589.673 403.728 596.998 cv 401.65 610.413 li 400.519 617.741 397.753 624.078 393.396 629.425 cv 389.083 634.777 384.51 637.461 379.642 637.482 cv 361.671 637.562 li 355.819 693.705 li 339.085 693.705 li 342.731 697.35 li 359.466 697.35 li 365.316 641.207 li 383.289 641.129 li 388.157 641.108 392.729 638.423 397.04 633.071 cv 401.4 627.726 404.164 621.389 405.298 614.06 cv 407.374 600.645 li 408.507 593.317 407.612 586.991 404.648 581.657 cv 403.715 580.007 402.661 578.645 401.511 577.504 cv cp 371.2 587.039 mo 380.752 587.029 li 381.775 587.029 382.717 587.224 383.574 587.608 cv 383.527 587.523 383.489 587.435 383.441 587.35 cv 381.905 584.702 379.79 583.381 377.104 583.383 cv 367.555 583.392 li 363.147 623.964 li 367.191 623.952 li 371.2 587.039 li cp 0.368627 0.039216 0 0 cmyk @ 34.1709 583.674 mo 37.8164 587.322 li 54.3945 587.307 li 53.3496 583.658 li 34.1709 583.674 li cp 0.368627 0.043137 0 0 cmyk f 34.1709 583.674 mo 37.8164 587.322 li 54.3945 587.307 li 53.3496 583.658 li 34.1709 583.674 li cp 0.368627 0.039216 0 0 cmyk @ 76.0645 587.288 mo 95.2451 587.275 li 91.9541 573.653 li 88.3066 570.007 li 91.5986 583.627 li 72.418 583.644 li 101.467 693.705 li 84.8623 693.705 li 88.5078 697.35 li 105.113 697.35 li 76.0645 587.288 li cp 0.368627 0.043137 0 0 cmyk f 76.0645 587.288 mo 95.2451 587.275 li 91.9541 573.653 li 88.3066 570.007 li 91.5986 583.627 li 72.418 583.644 li 101.467 693.705 li 84.8623 693.705 li 88.5078 697.35 li 105.113 697.35 li 76.0645 587.288 li cp 0.368627 0.039216 0 0 cmyk @ 169.417 683.776 mo 165.771 680.127 li 168.145 693.705 li 126.405 693.705 li 130.053 697.35 li 171.792 697.35 li 169.417 683.776 li cp 150.758 628.414 mo 147.111 624.768 li 149.679 638.564 li 131.74 638.644 li 140.308 679.76 li 143.202 679.799 li 135.387 642.289 li 153.324 642.212 li 150.758 628.414 li cp 128.861 624.83 mo 131.746 624.819 li 123.917 587.253 li 152.632 587.229 li 150.258 573.653 li 146.61 570.007 li 148.985 583.582 li 120.272 583.604 li 128.861 624.83 li cp 0.368627 0.043137 0 0 cmyk f 169.417 683.776 mo 165.771 680.127 li 168.145 693.705 li 126.405 693.705 li 130.053 697.35 li 171.792 697.35 li 169.417 683.776 li cp 150.758 628.414 mo 147.111 624.768 li 149.679 638.564 li 131.74 638.644 li 140.308 679.76 li 143.202 679.799 li 135.387 642.289 li 153.324 642.212 li 150.758 628.414 li cp 128.861 624.83 mo 131.746 624.819 li 123.917 587.253 li 152.632 587.229 li 150.258 573.653 li 146.61 570.007 li 148.985 583.582 li 120.272 583.604 li 128.861 624.83 li cp 0.368627 0.039216 0 0 cmyk @ 216.534 669.917 mo 215.888 663.214 li 215.228 656.349 212.866 649.027 208.773 643.047 cv 185.678 610.717 li 183.494 607.666 182.18 604.447 181.741 601.062 cv 181.14 596.441 181.523 592.976 182.903 590.661 cv 184.292 588.351 186.675 587.192 190.043 587.19 cv 191.363 587.189 192.574 587.485 193.676 588.076 cv 191.8 585.057 189.375 583.541 186.396 583.543 cv 183.029 583.546 180.646 584.703 179.257 587.016 cv 177.878 589.328 177.492 592.795 178.094 597.416 cv 178.534 600.801 179.85 604.019 182.031 607.071 cv 205.127 639.4 li 209.221 645.381 211.579 652.702 212.24 659.566 cv 212.886 666.268 li 213.6 673.677 212.552 679.191 209.778 684.61 cv 207.05 690.031 203.404 693.666 198.801 693.705 cv 190.492 693.705 li 185.683 693.741 181.662 692.109 178.408 688.722 cv 178.399 688.719 li 182.045 692.365 li 182.045 692.358 li 185.299 695.756 189.324 697.391 194.14 697.35 cv 202.448 697.35 li 207.05 697.313 210.696 693.681 213.425 688.258 cv 216.199 682.839 217.247 677.326 216.534 669.917 cv cp 197.402 575.188 mo 197.397 575.188 li 197.414 575.202 197.431 575.214 197.445 575.229 cv 197.402 575.188 li cp 182.512 677.297 mo 183.165 677.929 183.826 678.443 184.486 678.871 cv 183.385 677.129 182.642 674.971 182.274 672.379 cv 182.197 671.827 182.088 671.056 181.947 670.063 cv 178.301 666.417 li 178.441 667.407 178.551 668.18 178.627 668.729 cv 179.157 672.473 180.453 675.33 182.512 677.297 cv cp 209.982 601.016 mo 208.571 590.83 205.639 583.502 201.198 579.002 cv 201.219 579.002 li 197.478 575.262 li 201.961 579.752 204.917 587.12 206.336 597.369 cv 196.96 597.386 li 200.606 601.031 li 209.982 601.016 li cp 0.368627 0.043137 0 0 cmyk f 216.534 669.917 mo 215.888 663.214 li 215.228 656.349 212.866 649.027 208.773 643.047 cv 185.678 610.717 li 183.494 607.666 182.18 604.447 181.741 601.062 cv 181.14 596.441 181.523 592.976 182.903 590.661 cv 184.292 588.351 186.675 587.192 190.043 587.19 cv 191.363 587.189 192.574 587.485 193.676 588.076 cv 191.8 585.057 189.375 583.541 186.396 583.543 cv 183.029 583.546 180.646 584.703 179.257 587.016 cv 177.878 589.328 177.492 592.795 178.094 597.416 cv 178.534 600.801 179.85 604.019 182.031 607.071 cv 205.127 639.4 li 209.221 645.381 211.579 652.702 212.24 659.566 cv 212.886 666.268 li 213.6 673.677 212.552 679.191 209.778 684.61 cv 207.05 690.031 203.404 693.666 198.801 693.705 cv 190.492 693.705 li 185.683 693.741 181.662 692.109 178.408 688.722 cv 178.399 688.719 li 182.045 692.365 li 182.045 692.358 li 185.299 695.756 189.324 697.391 194.14 697.35 cv 202.448 697.35 li 207.05 697.313 210.696 693.681 213.425 688.258 cv 216.199 682.839 217.247 677.326 216.534 669.917 cv cp 197.402 575.188 mo 197.397 575.188 li 197.414 575.202 197.431 575.214 197.445 575.229 cv 197.402 575.188 li cp 182.512 677.297 mo 183.165 677.929 183.826 678.443 184.486 678.871 cv 183.385 677.129 182.642 674.971 182.274 672.379 cv 182.197 671.827 182.088 671.056 181.947 670.063 cv 178.301 666.417 li 178.441 667.407 178.551 668.18 178.627 668.729 cv 179.157 672.473 180.453 675.33 182.512 677.297 cv cp 209.982 601.016 mo 208.571 590.83 205.639 583.502 201.198 579.002 cv 201.219 579.002 li 197.478 575.262 li 201.961 579.752 204.917 587.12 206.336 597.369 cv 196.96 597.386 li 200.606 601.031 li 209.982 601.016 li cp 0.368627 0.039216 0 0 cmyk @ 271.999 587.12 mo 271.771 573.653 li 268.122 570.007 li 268.353 583.476 li 249.173 583.489 li 253.511 693.705 li 236.907 693.705 li 240.554 697.35 li 257.156 697.35 li 252.819 587.136 li 271.999 587.12 li cp 210.926 583.521 mo 214.571 587.168 li 230.33 587.155 li 230.105 583.506 li 210.926 583.521 li cp 0.352941 0.101961 0 0 cmyk f 271.999 587.12 mo 271.771 573.653 li 268.122 570.007 li 268.353 583.476 li 249.173 583.489 li 253.511 693.705 li 236.907 693.705 li 240.554 697.35 li 257.156 697.35 li 252.819 587.136 li 271.999 587.12 li cp 210.926 583.521 mo 214.571 587.168 li 230.33 587.155 li 230.105 583.506 li 210.926 583.521 li cp 0.368627 0.039216 0 0 cmyk @ 84.8623 693.705 mo 53.3496 583.658 li 34.1709 583.673 li 29.96 570.007 li 88.3066 570.007 li 91.5986 583.627 li 72.418 583.644 li 101.467 693.705 li 84.8623 693.705 li cp 0 0 0 0 cmyk f 1.21551 lw 4 ml 84.8623 693.705 mo 53.3496 583.658 li 34.1709 583.673 li 29.96 570.007 li 88.3066 570.007 li 91.5986 583.627 li 72.418 583.644 li 101.467 693.705 li 84.8623 693.705 li cp @ 126.405 693.705 mo 97.9141 570.007 li 146.61 570.007 li 148.985 583.582 li 120.272 583.604 li 128.861 624.83 li 147.111 624.768 li 149.679 638.563 li 131.74 638.642 li 140.308 679.76 li 165.771 680.129 li 168.145 693.705 li 126.405 693.705 li cp f 126.405 693.705 mo 97.9141 570.007 li 146.61 570.007 li 148.985 583.582 li 120.272 583.604 li 128.861 624.83 li 147.111 624.768 li 149.679 638.563 li 131.74 638.642 li 140.308 679.76 li 165.771 680.129 li 168.145 693.705 li 126.405 693.705 li cp @ 206.336 597.369 mo 196.96 597.386 li 195.128 588.155 191.604 583.539 186.397 583.543 cv 183.029 583.546 180.646 584.703 179.257 587.016 cv 177.878 589.328 177.492 592.795 178.093 597.416 cv 178.535 600.801 179.85 604.019 182.03 607.071 cv 205.127 639.398 li 209.221 645.379 211.579 652.702 212.241 659.567 cv 212.887 666.269 li 213.6 673.678 212.552 679.191 209.778 684.611 cv 207.051 690.032 203.404 693.666 198.801 693.705 cv 190.492 693.705 li 184.954 693.751 180.457 691.583 176.979 687.063 cv 173.464 682.538 170.993 675.674 169.587 666.472 cv 178.301 666.417 li 178.441 667.408 178.55 668.181 178.627 668.73 cv 179.157 672.473 180.453 675.331 182.512 677.299 cv 184.558 679.269 186.636 680.243 188.75 680.228 cv 191.725 680.206 193.727 679.011 194.761 676.635 cv 195.804 674.261 196.06 670.82 195.522 666.311 cv 195.108 662.82 193.887 659.606 191.854 656.67 cv 168.522 623.425 li 164.06 617.536 161.275 611.095 160.207 604.101 cv 159.182 597.381 li 158.048 589.949 158.943 583.529 161.911 578.118 cv 164.924 572.71 169.133 570.007 174.506 570.007 cv 184.198 570.007 li 196.42 570.007 203.81 579.129 206.336 597.369 cv cp f 206.336 597.369 mo 196.96 597.386 li 195.128 588.155 191.604 583.539 186.397 583.543 cv 183.029 583.546 180.646 584.703 179.257 587.016 cv 177.878 589.328 177.492 592.795 178.093 597.416 cv 178.535 600.801 179.85 604.019 182.03 607.071 cv 205.127 639.398 li 209.221 645.379 211.579 652.702 212.241 659.567 cv 212.887 666.269 li 213.6 673.678 212.552 679.191 209.778 684.611 cv 207.051 690.032 203.404 693.666 198.801 693.705 cv 190.492 693.705 li 184.954 693.751 180.457 691.583 176.979 687.063 cv 173.464 682.538 170.993 675.674 169.587 666.472 cv 178.301 666.417 li 178.441 667.408 178.55 668.181 178.627 668.73 cv 179.157 672.473 180.453 675.331 182.512 677.299 cv 184.558 679.269 186.636 680.243 188.75 680.228 cv 191.725 680.206 193.727 679.011 194.761 676.635 cv 195.804 674.261 196.06 670.82 195.522 666.311 cv 195.108 662.82 193.887 659.606 191.854 656.67 cv 168.522 623.425 li 164.06 617.536 161.275 611.095 160.207 604.101 cv 159.182 597.381 li 158.048 589.949 158.943 583.529 161.911 578.118 cv 164.924 572.71 169.133 570.007 174.506 570.007 cv 184.198 570.007 li 196.42 570.007 203.81 579.129 206.336 597.369 cv cp @ 236.907 693.705 mo 230.105 583.506 li 210.926 583.521 li 209.776 570.007 li 268.121 570.007 li 268.353 583.476 li 249.172 583.489 li 253.511 693.705 li 236.907 693.705 li cp f 236.907 693.705 mo 230.105 583.506 li 210.926 583.521 li 209.776 570.007 li 268.121 570.007 li 268.353 583.476 li 249.172 583.489 li 253.511 693.705 li 236.907 693.705 li cp @ 295.579 597.127 mo 294.431 666.583 li 294.367 670.274 295.155 673.47 296.78 676.172 cv 298.395 678.872 300.355 680.214 302.669 680.197 cv 305.049 680.18 307.12 678.949 308.888 676.229 cv 310.669 673.506 311.639 670.301 311.785 666.616 cv 314.484 597.097 li 314.634 593.304 313.831 590.08 312.064 587.423 cv 310.284 584.77 308.048 583.442 305.363 583.444 cv 302.755 583.445 300.479 584.777 298.55 587.438 cv 296.631 590.101 295.643 593.329 295.579 597.127 cv cp 296.04 570.007 mo 315.563 570.007 li 320.853 570.007 325.268 572.685 328.767 578.041 cv 332.221 583.394 333.7 589.747 333.237 597.102 cv 329.009 666.471 li 328.546 673.826 326.484 680.194 322.856 685.573 cv 319.277 690.957 315.239 693.667 310.705 693.705 cv 293.97 693.705 li 289.427 693.741 285.517 691.117 282.202 685.826 cv 278.84 680.535 277.119 674.146 277.074 666.655 cv 276.676 597.195 li 276.631 589.705 278.493 583.302 282.294 577.981 cv 286.145 572.663 290.741 570.007 296.04 570.007 cv cp f 295.579 597.127 mo 294.431 666.583 li 294.367 670.274 295.155 673.47 296.78 676.172 cv 298.395 678.872 300.355 680.214 302.669 680.197 cv 305.049 680.18 307.12 678.949 308.888 676.229 cv 310.669 673.506 311.639 670.301 311.785 666.616 cv 314.484 597.097 li 314.634 593.304 313.831 590.08 312.064 587.423 cv 310.284 584.77 308.048 583.442 305.363 583.444 cv 302.755 583.445 300.479 584.777 298.55 587.438 cv 296.631 590.101 295.643 593.329 295.579 597.127 cv cp 296.04 570.007 mo 315.563 570.007 li 320.853 570.007 325.268 572.685 328.767 578.041 cv 332.221 583.394 333.7 589.747 333.237 597.102 cv 329.009 666.471 li 328.546 673.826 326.484 680.194 322.856 685.573 cv 319.277 690.957 315.239 693.667 310.705 693.705 cv 293.97 693.705 li 289.427 693.741 285.517 691.117 282.202 685.826 cv 278.84 680.535 277.119 674.146 277.074 666.655 cv 276.676 597.195 li 276.631 589.705 278.493 583.302 282.294 577.981 cv 286.145 572.663 290.741 570.007 296.04 570.007 cv cp @ 363.147 623.964 mo 372.234 623.934 li 374.789 623.926 377.125 622.595 379.258 619.941 cv 381.4 617.286 382.72 614.123 383.204 610.449 cv 384.978 596.992 li 385.475 593.209 384.966 589.997 383.441 587.35 cv 381.905 584.702 379.79 583.381 377.104 583.383 cv 367.555 583.391 li 363.147 623.964 li cp 339.085 693.705 mo 349.484 570.007 li 388.532 570.007 li 393.822 570.007 397.989 572.677 401 578.01 cv 403.965 583.344 404.861 589.673 403.728 596.998 cv 401.65 610.413 li 400.519 617.74 397.753 624.077 393.396 629.424 cv 389.083 634.773 384.51 637.461 379.642 637.482 cv 361.671 637.561 li 355.819 693.705 li 339.085 693.705 li cp f 363.147 623.964 mo 372.234 623.934 li 374.789 623.926 377.125 622.595 379.258 619.941 cv 381.4 617.286 382.72 614.123 383.204 610.449 cv 384.978 596.992 li 385.475 593.209 384.966 589.997 383.441 587.35 cv 381.905 584.702 379.79 583.381 377.104 583.383 cv 367.555 583.391 li 363.147 623.964 li cp 339.085 693.705 mo 349.484 570.007 li 388.532 570.007 li 393.822 570.007 397.989 572.677 401 578.01 cv 403.965 583.344 404.861 589.673 403.728 596.998 cv 401.65 610.413 li 400.519 617.74 397.753 624.077 393.396 629.424 cv 389.083 634.773 384.51 637.461 379.642 637.482 cv 361.671 637.561 li 355.819 693.705 li 339.085 693.705 li cp @ 399.677 693.705 mo 422.604 570.007 li 441.978 570.007 li 416.281 693.705 li 399.677 693.705 li cp f 399.677 693.705 mo 422.604 570.007 li 441.978 570.007 li 416.281 693.705 li 399.677 693.705 li cp @ 462.719 623.532 mo 481.004 623.47 li 488.866 596.776 li 489.972 593.024 489.978 589.838 488.879 587.212 cv 487.767 584.586 485.864 583.274 483.181 583.276 cv 480.569 583.277 477.962 584.594 475.364 587.225 cv 472.776 589.856 470.98 593.05 469.962 596.807 cv 462.719 623.532 li cp 427.85 693.705 mo 451.055 596.854 li 452.886 589.459 456.351 583.134 461.484 577.881 cv 466.667 572.632 471.927 570.007 477.227 570.007 cv 496.75 570.007 li 502.039 570.007 505.78 572.651 507.937 577.939 cv 510.044 583.224 509.926 589.499 507.616 596.761 cv 477.923 693.705 li 461.319 693.705 li 477.035 636.941 li 459.064 637.019 li 444.585 693.705 li 427.85 693.705 li cp f 462.719 623.532 mo 481.004 623.47 li 488.866 596.776 li 489.972 593.024 489.978 589.838 488.879 587.212 cv 487.767 584.586 485.864 583.274 483.181 583.276 cv 480.569 583.277 477.962 584.594 475.364 587.225 cv 472.776 589.856 470.98 593.05 469.962 596.807 cv 462.719 623.532 li cp 427.85 693.705 mo 451.055 596.854 li 452.886 589.459 456.351 583.134 461.484 577.881 cv 466.667 572.632 471.927 570.007 477.227 570.007 cv 496.75 570.007 li 502.039 570.007 505.78 572.651 507.937 577.939 cv 510.044 583.224 509.926 589.499 507.616 596.761 cv 477.923 693.705 li 461.319 693.705 li 477.035 636.941 li 459.064 637.019 li 444.585 693.705 li 427.85 693.705 li cp @ 100.471 689.93 mo 72.418 583.644 li 91.5986 583.627 li 89.1885 573.653 li 37.0352 573.653 li 40.1201 583.669 li 53.3496 583.658 li 54.1611 586.49 li 59.0234 586.485 li 88.6416 689.93 li 100.471 689.93 li cp 0.882353 0.768627 0 0 cmyk f 130.396 689.93 mo 167.485 689.93 li 165.771 680.129 li 140.308 679.76 li 131.74 638.642 li 135.508 638.626 li 135.412 638.17 li 149.593 638.108 li 147.181 625.136 li 132.707 625.186 li 132.63 624.815 li 128.861 624.83 li 120.272 583.604 li 148.985 583.582 li 147.248 573.653 li 103.616 573.653 li 130.396 689.93 li cp f 212.887 666.269 mo 212.241 659.567 li 211.579 652.702 209.221 645.379 205.127 639.398 cv 182.03 607.071 li 179.85 604.019 178.535 600.801 178.093 597.416 cv 177.492 592.795 177.878 589.328 179.257 587.016 cv 180.646 584.703 183.029 583.546 186.397 583.543 cv 188.941 583.54 191.082 584.651 192.821 586.854 cv 195.942 588.062 198.224 591.577 199.663 597.381 cv 206.336 597.369 li 205.128 588.653 202.798 582.042 199.374 577.489 cv 196.295 574.941 192.55 573.653 188.12 573.653 cv 179.009 573.653 li 173.958 573.653 170 576.195 167.168 581.277 cv 164.381 586.362 163.538 592.4 164.604 599.384 cv 165.567 605.702 li 166.571 612.276 169.189 618.332 173.384 623.866 cv 195.315 655.115 li 197.228 657.876 198.374 660.897 198.765 664.179 cv 199.27 668.417 199.028 671.651 198.048 673.884 cv 197.36 675.467 196.202 676.481 194.597 676.952 cv 193.525 679.107 191.584 680.207 188.75 680.228 cv 186.636 680.243 184.558 679.269 182.512 677.299 cv 180.453 675.331 179.157 672.473 178.627 668.73 cv 178.55 668.181 178.441 667.408 178.301 666.417 cv 174.75 666.439 li 176.114 674.024 178.308 679.789 181.334 683.686 cv 184.604 687.936 188.829 689.974 194.037 689.93 cv 201.846 689.93 li 204.479 689.907 206.776 688.628 208.751 686.488 cv 209.107 685.889 209.45 685.263 209.778 684.611 cv 212.552 679.191 213.6 673.678 212.887 666.269 cv cp f 253.361 689.93 mo 249.172 583.489 li 268.353 583.476 li 268.185 573.653 li 216.031 573.653 li 216.872 583.515 li 230.105 583.506 li 230.281 586.347 li 235.144 586.341 li 241.535 689.93 li 253.361 689.93 li cp f 317.09 599.115 mo 314.554 664.465 li 314.415 667.931 313.503 670.943 311.829 673.5 cv 310.863 674.988 309.797 675.987 308.64 676.578 cv 306.924 679.044 304.94 680.181 302.669 680.197 cv 300.355 680.214 298.395 678.872 296.78 676.172 cv 295.155 673.47 294.367 670.274 294.431 666.583 cv 295.579 597.127 li 295.643 593.329 296.631 590.101 298.55 587.438 cv 300.479 584.777 302.755 583.445 305.363 583.444 cv 307.953 583.442 310.122 584.69 311.869 587.16 cv 312.966 587.783 313.947 588.732 314.814 590.023 cv 316.477 592.522 317.23 595.551 317.09 599.115 cv cp 318.104 573.653 mo 299.751 573.653 li 294.77 573.653 290.451 576.15 286.831 581.149 cv 283.257 586.15 281.508 592.171 281.55 599.209 cv 281.924 664.503 li 281.967 671.543 283.583 677.55 286.743 682.523 cv 289.86 687.497 293.534 689.964 297.806 689.93 cv 313.537 689.93 li 317.534 689.896 321.117 687.623 324.325 683.168 cv 327.038 678.321 328.615 672.762 329.009 666.471 cv 333.237 597.102 li 333.615 591.107 332.678 585.789 330.457 581.124 cv 327.176 576.147 323.049 573.653 318.104 573.653 cv cp f 387.402 599.019 mo 385.735 611.667 li 385.281 615.123 384.041 618.097 382.027 620.591 cv 380.023 623.085 377.825 624.337 375.425 624.344 cv 366.883 624.373 li 366.929 623.952 li 363.147 623.964 li 367.555 583.391 li 377.104 583.383 li 379.701 583.381 381.756 584.629 383.279 587.1 cv 384.315 587.721 385.213 588.668 385.959 589.956 cv 387.393 592.443 387.869 595.464 387.402 599.019 cv cp 390.745 573.653 mo 354.04 573.653 li 344.264 689.93 li 356.211 689.93 li 361.671 637.561 li 365.454 637.543 li 365.494 637.154 li 382.389 637.08 li 382.552 637.08 382.714 637.051 382.879 637.045 cv 386.55 636.1 390.053 633.572 393.396 629.424 cv 397.753 624.077 400.519 617.74 401.65 610.413 cv 403.728 596.998 li 404.65 591.033 404.204 585.74 402.415 581.097 cv 399.59 576.139 395.687 573.653 390.745 573.653 cv cp f 417.064 689.93 mo 441.22 573.653 li 426.79 573.653 li 405.239 689.93 li 417.064 689.93 li cp f 466.394 623.968 mo 466.516 623.52 li 462.719 623.532 li 469.962 596.807 li 470.98 593.05 472.776 589.856 475.364 587.225 cv 477.962 584.594 480.569 583.277 483.181 583.276 cv 485.787 583.274 487.651 584.523 488.773 587 cv 489.708 587.616 490.445 588.555 490.983 589.824 cv 492.018 592.295 492.013 595.29 490.973 598.816 cv 483.582 623.909 li 466.394 623.968 li cp 507.616 596.761 mo 509.492 590.863 509.895 585.627 508.862 581.035 cv 506.831 576.117 503.328 573.653 498.384 573.653 cv 480.031 573.653 li 475.049 573.653 470.104 576.12 465.233 581.057 cv 460.407 585.993 457.15 591.938 455.432 598.89 cv 433.616 689.93 li 445.551 689.93 li 459.064 637.019 li 462.866 637.002 li 462.959 636.643 li 479.852 636.572 li 465.078 689.93 li 479.081 689.93 li 507.616 596.761 li cp f %ADOBeginClientInjection: EndPageContent "AI11EPS" userdict /annotatepage 2 copy known {get exec}{pop pop} ifelse %ADOEndClientInjection: EndPageContent "AI11EPS" % page clip grestore grestore % PSGState Adobe_AGM_Core/AGMCORE_save get restore %%PageTrailer [/EMC AI11_PDFMark5 [/NamespacePop AI11_PDFMark5 [ [/CSA [/0 ]] ] del_res Adobe_AGM_Image/page_trailer get exec Adobe_CoolType_Core/page_trailer get exec Adobe_AGM_Core/page_trailer get exec currentdict Adobe_AGM_Utils eq {end} if %%Trailer Adobe_AGM_Image/doc_trailer get exec Adobe_CoolType_Core/doc_trailer get exec Adobe_AGM_Core/doc_trailer get exec %%EOF %AI9_PrintingDataEnd userdict /AI9_read_buffer 256 string put userdict begin /ai9_skip_data { mark { currentfile AI9_read_buffer { readline } stopped { } { not { exit } if (%AI9_PrivateDataEnd) eq { exit } if } ifelse } loop cleartomark } def end userdict /ai9_skip_data get exec %AI9_PrivateDataBegin %!PS-Adobe-3.0 EPSF-3.0 %%Creator: Adobe Illustrator(R) 12.0 %%AI8_CreatorVersion: 12.0.1 %%For: (Todd Purser) ($) %%Title: (city.eps) %%CreationDate: 5/22/06 11:56 AM %AI9_DataStream %Gb"-6H&j4@Fsm%ki]G(C"Jj^NVRr8,*K@l8OdQfMeoZg<Z[53rL-T9N--9'J6"O&q`VK0'IdaMY4fTui*+9.I=-+:3(3[B(n$Zlk %?[Qkdo`"CRS&b!#T)RbOqg$om]O+:aVmu*-pu9''q;'l]<K.C_.8mR3Bl[01?^.'DeINISo77h94M?(@E;0.qX66B^GAlAF5M\Oe %^\u^^qT%@2rGQVhUL.p5s*T$?s7DZVec"m95Bfgs:QOtClITtBT,tT'J%WC?IJ8'cnaPl+S(!l(]@57#_sP'!9a>79qr[2BS,:h; %q#95JGL+%X05arim_@^pr8B5e:K,)B.K9##X8DXpn%PNQgqE^["9&-55GW5mo@J3Th@\g*l:f[;rp;rMO6cOYh`X,A#?7Y*^\QpY %m_4&>p>,?-]/NNHs73X&[mtsJT'5i+It.LjVq_+Ic/%1dqlfI+#mp(hd,b5\:D]EKb[%'[J%iOAPTQ`Eqrt0UcZb=ID7aQ)57<p^ %_E:fmh;.DNnmWJcqYK++hnK'GjtpZ4(XLWhS!R5RZh=eQrr2?EL\ohMG>'0/MU\1M$i[T\>*Du\kfD^IU9ohH1pg%M5"MeF6$NA. %k3an;,-lLek4.9Vg[A\k^O#KD#iP4Mmcuh3McMZ4B;mj>rS@AJ]B;C@^&bW\;3>J*I<p<cY=77?FFT4VSLX4&Y>k;qmIPOGmt_"9 %mb_M[J$mUdr^>i?S(f%R5h>NX,CK=)h;dsrrZ@a"hhA`0b7(2l99-qIbHuI$&!6M,lU\<&ZZM&tBPm^&,qSnRf&8,'`\3tAI.udn %=$"+gc/1b#H//`_\UBc.$j%iVra5#AR4<ddmbQ^ZY@M<URHrb=I\uAh[pR;Y^]0n8kjeAk4kMsFHK@:AckfbOl]4!6mr#*aQf.T; %rU)oD=$OD$k=kNoHi/j8InRW8lYA$D*q.tG=7>[[p[[Y7K\"R$7b!;-hdT!U(f;g'e&hG;"a*F'SO3A'\eNXD"h!h+Io5P.)RZ`O %dIR,P^Kb-@cKU!h:T#&WqK0UCVj"KM)9[D=4u/l1MO*tJpU`*J(UX5Vrh:091.^Lc5_QnN",QF_E#U."/RZG&Hile3Mk1&IdPE#_ %?bhYFPQE1j.G0mT;%%@%0C#'&.'rT_bQZ%=7DTW98kX_?AhS4l\]O'&\ZM"EOFO24q!](_aU/C)nsc]thGF[Mfa8*fUb1NB?[Mrt %ZMsVL1IhcNU))\)?Wfgk'#CW-NtI?U0QX!2>;M\>?lcWXDh]'Z>\9%bbIh@jl.OW\C=kc#!H^f!J.A[bCAAV6i@epPI02[LM6t6/ %e,a['09!2rG6DtBJl&r(YgJ>*)eL^e,.(a*@;@?;Qe;\rAR*%jAo9,.YfYZtb=7iTV7ldZs((9/R6o0(k(4Q:iPbbLIN,ahS)"n# %Xc9Xq:Q>(%\rH+srLnA/+li4'b(f#d%[`Ae'!3*2Cp#[')cum$QLd6/5J2nRSFrLqnk4=rIj)o-p+HAg?S%,"[!2>4P'h3:nh4YO %T!OEIp#"^N^U/4\GBG4hgUmC<I;s<Q-1,";*KTd)^!"0irY'R;[DQ?S=8?akjIP4MiArNfS,%"aV&Pa:kORX&I`SFVL$DLV0e^]N %s1:V$j5T9h)em"\]O]I#$$A@Z?Te@;FZLPKbLTSja6urK1t(WC>18ik8c/5]&uaB<qEZd5OctfDn+_&"L!*FK?QZ4IC&O]b]^'BJ %4rB:FA=EhDel`0U7AJXs4gk==;.ela4=@"=_GE09I]kn+/RY`RO1b).:L#PUXWBiaB>RPD*,lp5cZ@cfd:R!sZC]JR7NCTFq8fXR %k#AC?QkG?u:K_\/2DYu9@pW>o`X3rfW6VC9OtdRtb%?9ob9rtsRb.'`1Y)ZW$CRQ?@DBY2ai5[M6gm?kY0GC[ok]u1pcJ$/K2;r: %1bnpb-uBCoc0U,?jL\84;9RI!=8M<h9P[F+Y4QG/3rpsQM,>O5o^E0H<f.%a*N@lM@&)9R0FZ<JX.H56[(3:F``c<!XC9FdN(4m] %=6@k.1q9?@`H5RR1l8Rn=F)E(@q!@);+e(P+rA+Y,t_of#5H42_qHsXAXY[.EmqPW#.%n).a>*+<N*n3"nTe46jeT_K2upuS?Mb@ %A^%fH0)-erZp""ia7X3h(]K^<ni0rh^9q;TH9;^$<_RbC6@\"bR=7k&6Zs+aDM2q'/>^/pj>uqjDs!hC43s*l-EQaVPeaW%Z%9)W %S*sU([1^K#l$uoIq0'othtE%KINp)c*0-#E)YFU<EAGW<NX+>H@E+,1f"ABR=5J3B/X:AS&*Z<b*b0YuPV0#oklSX;PSSrs%O*jp %,d$=-]ojYcJ5*`a][2K-rPhPUrrk0S<56k'-fJm*SjGfW-=j/:==?T!^`)r8T3,SL^d6Jqg4`!ANPuIpR*qU(p;l+mRE7:Kr21#s %QEXog!(tHd@D4QVNJ.-FS_?0QIDXU?!G#H_5*\?-9fhq#j".8QoZ-8F&te+C3_*J\"-6+X30Fs`s-esbA=65Y,/I<Eq0RW/FUV_# %RCFDKc*D(U=<8Y@P"9+$%FDCcG67Fd*u*IhDgIg)*87KfAjl^b.Iu,td'.1idGuQ1Za9q<17kR%U]IY$@tVdm9h1\;CXN\4g+8E\ %=l^Wb4UF'I-FWq1eep9aG\s9k:-ho!pgDgQdB=)#9g.Qho*Tb\)GHqR7\>\jO`IikoH!j([P5*LYn[I8'Y<HkGR^%\D]CV2d:Bo& %S*a&>Pp2u\'u\Jjm&(ebO$r6Dk1+W_4,Igr:oVYHY6bH\hpBUj),KjMX%)J.[#X.(82\E&[89!1TSOZTBE7KO%d2Bg17DV5`,ZE1 %=<,oH1n!V#dJd?YJ[o(K!'4IaJc8GON0j2QqH"U)XJ_=9@(16F31RGhbW7F^Zf-K5&'X%EEW57Z<h*7&n\%a">98mD/D\]&r"62O %$k$j?KC*`OLZhS&n^Oa6:D<,$A=ot)`YLSMSAi-ueM:E&^$2PffAN#V@5uuEJeO7S'5RV^l):;&a6G113_943-B(]1*hrU,0,dTQ %;Z5/n2iKK;"L69a0%@I1"]K17<b8&pj[63l=Bd;j!Ga`gULE>UFlh6\1G=9X-,\^WC/HRqVA,^>i=++rU+qg.%T[CLFD][r&1n9J %*T@GW-FUfPX%h[o>H!FW$sQ_FeGb6R`ZkVm?WXP0dPZ=d9ga:tZ;tPKB=nghah0<W6jW:_g(pQna<ii,'.`+5SHt2WhgjF=^8s6? %p4)QAj*%(USU#cdJCP3&>j9M$<at@?`i4S+oN5tM2L?%AJj$9_=e#VOK*LI@T0Q11:Vl^Ir]QMVPZi>JZ?o6L9HuKX,h=d.To%D( %%Qa@+XQMWJrdaB>`-)^kA"%p"?XUF#"i?lpB%5)>dtJ^J@'%8G;@'9S@(K0Hb$:q^.BJ]g(S]_?"4=D`Q*"n0RM1#>9`GO#8]A*p %DjD(%f=?q4;.VL2'sMft#CS)p)Mal1=6ZAYO^J9YCDKBf56t:q2G+&s=>@[G:rdRTSf*!`3VS^/"R^u.aJ*$DQO%^M[Y.e@:)Q"o %<i<kk9]A,TphINQ[BKa31s:YCk$L<rDceac"gN5-mm.%WX/iJ]3Aq1ZEa@NrVRDZ]c7l3[7GfG:66c@r%P;!=Cd2+j65b#,^Ws2X %V1*m6fNfrt^<4,a109l@6q=N%9^Gn]8`4(<D>Tr<cVfMSU\_>K2=Luf"+ipM0g[Ho$a]WiSYIojX\Q=4L">3U!p@,j"H_=PeuW&M %BEZI+4]`Sa/aOrS'HY(Lch0o+Iuf*N84BtcL@@Zpc&V.=#a%[;AN#G6U6<Fo/5oNbZcqX8#Os<,W27Ut[NZpU0IP8fChYT"&0.t& %5J22Emr2i7(rZR.4]eSR4>P2&ief4>.^fT,l'kZs(hHLSncRXGTGt9nphqP-d=u8UrtlOW[Iu`FM3qnb17gCp03hB5W&37UkbcB5 %CH19Uf)-W?V^f:gTK]7Ed:*^b5+,JjSu#O=.b>iW=c\F&LmEgDIAiZU&8dkFeH5kAV-'J`PPBaS:D+V<rEr#a+koa6eucgHdXpX> %b'i5nVm+\'J64NG8'^7.MCiI<B%o>53;tRYfk=2i+T</14]W"r2#uCF*j\r5nLX9)[67Wh@W";?ZZ25-#>^7#RhiGCCfQiqe?36E %LIa.HGHP)@l9tfdU[X.19rd;`^0(!KKG/SONr>2:S?7)*/=CD*Y*,1GkaduF#-f1i'Ud+,&AA_)5RrR56is&jQl@l.-It12/o(fn %B`(e??El@)4ZecDVSdq(Ze(`4#ITKsL)LZn_AT-1DGj#+9IpM!cLP,F(&M2U,j_-WohJtA<:6)q=F>g6YZ7Xb)TOd0?EaX:@%)(8 %HCr[@=We?hCi/!d1m3*KpoDkQSt_H:+q^:LK8!n%M</T6C7[7G9>:k:.V,4/d2sX8q9enK*Xo'(P?=nAo4_p-gM@,$rC*:fI:Hgu %Lr>[9.FO&i'e[PZ'5<5D'FL%h_&Q0ZR,0n6/&O.<,eH`f7Fs/QrW#tfo\`%5Kbrul[RQ<FcQ$"!RhV$b=fA>pf]L*n'<N#@"A:&% %fSRFR*gq#);6`rdgI/Bd=)@jflpg\"9])+!7^@L3m-UQO`6C6^bo=R`FDTB_,o?#+*=,":MpMqXs2Ho_kB1'pJe,EWO;6B'DdYa` %,bF;uKi^fUj&%\T;<5"3'otW<*r=,:B=?3(rl5pQ@GZV)LTq]ZR3e-"8.kctA*%^,>N.8'`(^jb7@rh:FVg/@"fmo8kUb"8*7&rt %W&;gtDgXO\',982H:2<]U+lt#N7VNQE<3?CGV+elL!WZN6O"N\!^&C)M'*^iBX-r9-)MrrBGP6cFIDqb\0T&o%qXZ1`Hou`J32T: %=:WkFPXFOCfjVaD<&hD.F;2GiWJE:YH>RuQkSu@bm?G`HMo<KVS$h+c\[CVE.lq>XPTa4/[Du/<&(J$s%"kQNAr5s9&V4f,WNs`1 %h/r4e85,Bd\sQN$m:CUu^L_\>e2;9@/'`Lkm%#UWXA)/iU@YibOkPY$>C#_Ib,WEo8m3_Z3pT/tF9]braId#\%\*E9Nekill/F7; %@C:?X;#G+^RhQo!42$Od`QmL")0Joh7.M,.@h))4-FWfiB!SsK/\sR-S_BIXs/%_FX%>D]OZ9R5AH+ts7JPk00e]UXb;Jfn=8qrG %h4R1oW\\@s"Q@sk":+TeZ.]Fh\Ink)-,VQE"Im&=!lNIL4.,1_'I.['MJDLAm4FcT2<o+>UkP)sSXX8#ZIU$RG/SJT1it.S&gg3I %Fg/q)nU=o(<Q[*LLijSL)k'FN60%PaYs`hdr@"oa=g=j7Rt\#MM8AL![0*-=_V(jgN?pX&A.n>c"GK-TT-^)U4k:SK'&s'@iJ!7U %?.?#t_P'(bm!Wt;HgC]7U=p+H`qu'XU"\ZRQ\t2h0Ed0rEM'6@(:ac:d'Ngi/YO9=OH;JXPKBUfa_Pf=#b7P4GjkF.*qhT)>kuF7 %An+6O4H!g:K9E$KhV%OgJO,u-2)sQ9c7'Bsb`EP18e-dt?AhbRhUhH4iejHR`6U90n3_@[s!E(!8(Jt*hci2O?3P722d:g"og.S3 %!e[jtIM;JhE!hjhI3<j;;:N)\D8*J_94jm(SU\^thC[15r,9!g]00o^SRYtSU)21:V/[:,FV#$o3(1WhFf/OM-@RZ;-p`fK>\+r" %H!AN0gsWas&YU";'^Q:[H,e_Wq%jRSMlO$g)8'n:E>%(C5%hF'I%`Ib,$#09-UdV\ZK)uR*O4c-qa<OSP<u]!daMs_.k<!3?<`KD %'!#:EN@'RMe*hp'e2rHsCceJn;j-C&#)@HU_VZ25\/=p"quVUVjc[tpYP1NcYfoA`7)<\[gRDsW\59>S,"64JdhZce2/^JRB0VoN %CCZo4Yc%gaKZI;8W:@79&V<RL5]jKWWPd;1EgDR$,8T+)3&WjAX1'ZQ#T:&D^Ps$ZD+WOI,WeT;gT"76Y%Z3>JfkGe0k[1,E.I#& %<o39(K,0G(Dbb`,grIurZV>fY/'EBTmrA(a!"B'qM`9h)8FE(E43;T+Clf=j*&0t1Ms@oCXIQ]c1h?Q1[?k"0Mp9TEg53PH\HT(: %U!L[J&:8flAXf8Fhcb6d19<[5+E/a)*_LZg6A:!gI%_K]gkKh=HE[ItIGB.4>q,\(Zjk2bi]15hg+nhE#67-[[ECb3=C3p$HdE`Q %cBr4#1NIM5M0+IEQ8p$H1T73soZ320)*,8%"mXs&'5_4K.+-GJ&)?Mi=g9,F?G1*5??D;1Q)R><dF`GYJS/Wm(;RM%0hYT&-Aufh %gItfZ89,-kEq!n)*k-=XTVL&SEl4KTfWsj*3*>&N)-j74;U;&^?eT7tJqk'nP*<.9Qkqoo[Zqtt7d2Q))gi+YK_%91Ri$Y.`0iSc %/sITK3Ap)L&ftZM)72.ts0ZB**n[(G>Sbb]LT6]#LIFBI2E$`W?DPSrE5%I0N7ZI$(/6?,F!<h+ie5u<9]s4WN;4PfPs@:D^.D"T %cIk.t%p9_!ea,jI\;%Z&^0pdR.p&K'mSiS1JfpZ.q6s&b@c\Yglp.c`nm!E=[iCm(J2X's"<=bdOI^aY\BfZ6N.mnT_bV;BU\G'X %D_U^L$e[8rIBJXu\bGRZ`P/;5\Tc_Zri&&.I-e:Sa!XS4etbCD#L4_e`c:nUT_hAlR73iYYKFSAnFsLOs*qE3>UqT@<Q;ClBPk&L %p"dXQHSDV/h0If]Y->.C*k7@2&MJJfXctCmc:>=VDbrE?fpf(AjT']5X1";:5,Q9lqOYM2Uu>E+GJ3,Qouqu5+L%LMe("([1Dq"k %\lI=Oj"/XO%LgAuo!haM<jLKP!3RYrL/opQ$p>`&CX@GA2(G7;[4<)K$@`k!PJ)"31XUW^2B9u-(/s9B7Sun&H]hk(3QVe&LUnt( %jiAedppZHQ(Wcb>f[rVf3jdPT@?trU3KS:,J=WO.7+jP8?cTJ*0mndd$C>#j\Q(89/&==r`q7nT,AZ^\e7e.PW+<)+W8I;5Y]hVq %Xnc;/ZcQBWZkpc[:A1+9#!@dqi9\.$hdf3>bML5r*Y9ap4UNKU-<=e"js4:$,WA+F@69C1q'Rt`?hjP$mRs>[ocmFBPZHl+8[b1U %`&VTK_rb4U\`Z2S4,eV&r/1bIcULj@Fcj!3NPdckc_R("q[:,rT---I`ns,IP$-:5553:r(1.\n@K/XW>Bihb(-s7qE\KOk/#9I9 %YYu\Vq`KWaiHh!,Dudd/R(kokX-8?PP2CQbj^?Td8p'//)rMVe&%WB'X0<3L8!a(1EP;"GgHk>R'QV[r3c)GU*L+"=I$[i1X"@G$ %H'HA#3\Ou;gF3aBGAPC1HGU8PmOH@4^h_u%Y4\KJ8b5.a^*StHV3q7"gof<6<E^@'1MkaK/,UuE5Dnp);0=BJ)Ie^eZ@'a%@U4/H %PPDB@ra_F--du(I9u[^m)X+4P;->E6W\Tb%&4^5#C)UVUO:qQTNM^.EXn9K0qDTs(R6/a[*of&rh5STAG*ZWIP[YrMLNoco4"/ng %>:78DJFh3./j#.P66r-oE#]&Gq,&ogf=Ui0QW9Vj[VVdXQ/!hqe]P9^'5o_NGR4iZ,8Z_`Pl1-1lX2ha1b8Agcni7>*G($h(LL/o %K9Mlk;E:I-Y>W6uZV\&!/XVUSZ/],r7XB;p9>e*XF/*"%1W:fESWUWodko1!'f-0"HfHt>q2h(F2Eh_PX>1.QQ;_]Zi16\)_)/ii %$a0$%mg8M"Zqq3>Pb]'elVZhnP1(/SC66M:ig7f=Huc5rqUe_!\4L?Gf!FpkBp<?F[E!3$Y@k3QdRpS^*[`j@@GLTo6IVZR+[9r> %Ec005CkKhl:mIhb[#M-a&hCGtO"Ju3A9/f24E?:L2\>7`.cE?bX3G[fnpsX]Appll;j3-$_a;1.AZXTkZB%h%<bH3q\W2-F=V!tV %8d/@=9WE2#5&uOdql0EqCp[*:_d]p]V])<>:lE-DjRkh#QL8H;-.dI`Ag>Ec>_VCkak*O_NFLXW.^sF6=LILId5FXOV:Tm"f8d.< %1?UZ(SW0]#cE1-<dW!G\ddLA#Z_;d,IA,:_Vqj"@_nj2K3PbIR99TM/3pCfpq[<pg&1<LNX''r:BG"u>:$Ra.=(?-'AG;HKgf%s+ %kr!fjpM>abS&CS)amJ63^TAP$`[:?fLW2?1DfZr&40tpr,cdYBHAKd!e8fF^#S-ZWWDYuV1HM3eCCbgcIIYH-ajR6DLpKW_o`7#2 %5ofCCr">lOc<HNL1UZ&!o"3Qn_V\7LCGJ%_-O&Bh.@IH)Y<=tJ00ZU."G&P3akSO2E]8PZ%<EEOTtONgC@fVAhY[!Fr:b2I:r&#` %>5f5SS'j+DoUTPs3_3NDMrWi5>RVpNY+HbSM:YtD1?tq'Vu*C\jL=uRJ,/s/h>8:;J)'j?q/>_ohVGknoD%/?h7ghNn"+Itr=1b^ %>om=e\U12\hHh7pl0$7U=*Lk*gu%!q*cGE!Is6,4O71r\^V7>Xd]2[es%lqT8sNWKmIKu$S**lA+25G'qiAqT<_(m$Ep'X-o/gj# %]=a?)G?r\0g@UAHs$l:dl0>p\FWS*jh;sjMI?M0;?/;D^pIV7Q?E1`+Wpa0Bh<"N;p\!othq^G&^8;4nh-I`=HsaU9GP?Iq.,Ngo %_S'NIIsQToJ+rC%LYHHLi.pbSWPudBj6Jqc':,6cjuVepp#W6P++ATdoA0000&JhL^:ns(IK&i7bb5MjnbDbEp"d*DLZ@K_DsqW% %I_VpP5MX#'qs`b<IB-oI5MeP05.k5=ml'k*rTX.N[s-?PS&[U<I^jh'lMWl[=G9s/f?sWcrS:ZXq>0>/O-b(jn`p,IJNjci]m4aI %:CV'>Dss<3EOXElmQE/ph8@^Rqn$e([;UYR]DMIa5618`5MWua]0+/D*0f+Jm<JF0)L6^);nBVgi&;un68<\!?_gKsf#jiYop^G\ %!s5GmX#U.BqWZbt>?TA6qr]>u.<A+P2h0lUG*h+#+b5h?B]R>YBUl!P+:qlF`b0e4I=#$CaBtn2]C2BK^EjNG>ol$>4a*G.65dg) %\YGh[f2DV6Sm6bN/,`X$I4:Gqm.rNJ^Q]XdO;`W4]D7*WoGT7Qp?e?mY-fh!_sOL;d/3F*<4dRt$m@/R*5/u^rr(l$\'OLbmVh!t %,<gL$]_h<^X'9>Jqu)Y\i`lE@S):u/s)@_5rBJ_kE[)`cWT3$>-X;?#X8Ou)$)Lrsq8Z/(H7=PgS)Ec8?YN':cC4-Ms8;lapHSXr %\,52*B4]cpSGX[aIeRdLDsup`]R9>G/Wp%E+$52Y\6OUGiS?($&79U%T#"LHfC.SOhS4O2mC/E=mg$R[o(%S!Vq:BE&_Fdk*oB84 %h;c)\b:at*^:W4ik-A5)PClC!F%M_-5>["4crlT\H#n30mWS']TS,lFotTo9^Ur740VS&#Om4l4s7l)]Vu(BbjaDZ,&X7]2./\tl %O37]Ns7c\FakqJgs.4]9qramO5Q(BJgS`lb**tl.l#-OOmCVi]=80X&DuY!aAb'ss/ZA;#DuT]1at@Shr:%0;mI0eq\2EihrKi$1 %<t^29=:<i\YM[*?GPC?^^4(e5&teo"cgTb?^]48]ds[eEpf!`\(3:qis"_UhMAn[,q'_WeNhdE@,9<B5rSg;?g)hAeIf(MdIXOj] %Kf/Ci=6BcIo6VKLIf#)?:A;6DGHF#X[J(K!-$/dL[h"H:]99??H!]=aIJkBn&.bE$mH3ikVrrgFD-VC7r:di#V]WKAee6Crqu:s= %r56Rd`\N[pHqbTtr7oZoo^Dsc0&D*VrTt,>4Pb5=T=F%80-K<PgW/(34dXbQ+b#5r8Y1nc8]keG$cIKIqYopO4sC[#rp$ccq<oJm %8T"E@s#2LnmU#@38%np/\*\'*pd3Z7f46uCf,^:;7t-RhI_)E.'to\W<DMO,-$i"+/bBDBo(7O?51=;aMjrba%DAoga6Vb#^CKlc %oZHfhF%h^&$bZVV4M>\`A*2BbS8NQ]k_3p_]]RhrmcKC5#C7,6AU5YO7=Hi\$N0JmEr;C%2'Ig-?UoQbO$!1_s/u->i)e<-k#]u4 %eCUFuTJ*K%LY%RDk3b,"YH*l"G5mQKSYnRp7\8]k\!U+>\`?,lU1%sG<MqU;\[^Wl+O;s3<,sGKNF(#n!<9<o%b"iM\:[#!_m2AB %6TRaZe)>77OPCE(:KJ4CjstZ;YJSh1($V!dnl<4]n.gr7K[So2M<?hHgc^2knD\TE1&Q_ZElC#L+g_g_$'d:kee=d/njj.=V'ru5 %=,bfO=ufbP>"brqitW%c>3^g.4u"L:,S!Kj=HXW#*24RQ-.!?>$T&&k"3lDj5_G^uct(faGm[;XFbOdpqU0kHmYP9Arek]tSp*!L %*qsADDXp`A<@1Y5nl2Ig@Hs<Fj@H'+\kP-\3Qqla>)=f,1*>X/?;klNBl9-(STEWk\%&rsgt%+i+p,QjaHNOYrTp*L55<)eT7$@O %+8cl&b7.n@'W*Ph(OQKs$'AOCjA<]:>j[?SDO<FZbI#K`mNskRa!E<\<9T3?lA!ps\=)=r?1d>,/ht?[M54U;#HW0_h@YA[)1b_T %3T\[:)D3Tjb,(_ekURYd&I6e^%J)$14cSZ8_?K0Bn_+9lO>)JMnPu9:8K#Ho`I)dF,^naMS!^Em%ZV,nG!t5\E6pSC*-@eJp=f[J %q\?H4;#Cpk:/hb8#N^U362c@1:.8cGZr8S*E]GT?!k8:/E+Fh<ScDiB0>JI`%H@rf#<2iK_HaBVnSlCIEb&VmG+"cS4Yr)&9k7r] %S5WO]>ZLd6@F7GQ\q<+S\Km-p=_\7!7@%W(:rZDQ<&Z?@Ks?TER(7Ak8!hA)4bNDYp0oB'<A$'C1\O_d@]E8$EPorY^hP'uJdAFr %Al]47#M6$\$HrIjEo449T306'_I'QMcT@HT$d3M1mYN7`%?'EP$g#;n33^Jp=f*5H6.`J;#?nB+Wu#Ir"0JSu'qTS*s!(tBRb%%[ %"?*!98@0"cDB.'N6nfYge(:t`#GSb&oG<?""-KH*,+SuM7p:mfU58saB&4,R8']<L7/q>"#[98YHqf98+R74i9p,3#&;N:*[>?S` %Uh.4di]7X)B4B+V//j=I*AQrg,IAP,mB;?JOcY]^_rJ%AnsCZYT4hr!6m(#KV$CIp9RIdN(^(HkNWdEkbBG3M\gC$5&3o7sadPaU %-]m\7,_L'"fT?I,R`M&g4X9Z],dmc201TJf,!%[r0jYMd*/H=*$+rf\09?0U,RB8(:Jf3\@)RAE&sAWE,UX$q;A<1Hs0l<"aN_[T %@3K,(AKb\TdR)NBZk[j:'%^Zs86qFk.X?5<ptf!/gP]DO_"A1i-@nSiRfjdCn.%Rq&],lLWt8k\I']!PB-m%b&ATWA7JL2IjAibV %X3Ag<Dai67SGfWQTZWo!Fjuc11M1C+`:>JSI,Pm;E8js[QUJIeP2Gd5o8`&804#1G=#r*2gb<#a19R!*oYt<qG0[scr*#Ik5VISa %pJ&sV*%%5?Qu0Jqf1\RT,7ma]@KJP9?Hn1\.`b<1!>^%f8eLZWM<m]*,pkJ\>@E+T9QH9;LiLA/kEsI?-G[0Si5Aga"ap+PcKlEi %pJX%m40;<#b7@4h[EMUL\J)6iQ>fh#=!_K,4&($ir%n`FeQN\:b&VU%U/ZfFLf4na,#TF3c3[[*jm!:*f.3,hKiN&#)(STCm$LZk %$eq)9oY_sJa=@.W"n*2,q?&8HbT]$O(liDJ"F^ZZ'5?lfY_pe^lnblW@jC#'b]Ym,Y1Nk;Yh[7Arh]I#,AG3hgg6\gI.qZ^f=ZB' %mBu8pI-<H9`ZKER79\tD7$_PJ8"31N`6VfZ^A-hX5@;+#0(8iVq8J\YM>24cWQ=73XZoiTHI*bOZB+F*\>4&SrJfN%LU55QUl.3d %gnoGl=1"a%\A`oS(W7Y/n&O[A[#XiWJ"A;a%YXd#01&?Rho1ANE"Dg;PeA;`&1,`eg2d'([CEfIY.;*qkIp;ehqd,En#q5Rk>21> %h5^VBXpdMg?d5L`RST+b:Md1l2gf'Jh6Cr0_`Y7_I`6L*;(Q[%otSED@#n'8&\HAJ7]^&2m"Z$YLtsNfd:*Y=!n$!<O^0@C4`K=F %_[[<$+<P<q&Vhlp2R#OOB1RU_M>a&6O!LEdAO,$AS0+TP(K'<i8@'CI_!NJme(8tE!9-]IiGA.;/Do::i5<+P_eAXjd,NlhOMfD@ %[iXtP9#:P6UgRF(5=1XQ5ThN.Bl5FudtGH3E^=1D7S-\(k"(mbJYbTT(TB51k5::q$=LFn5EL"TX:e^;F$E9tS;I+(LF$1:r(GZ, %b`?3e/RS_WJZQ)09VTg=3qFT*$AF:IOWRih3OMoNIcOO.TLI>taR15FmVK4N5;lbB.kH1Aq=BB^a4lB]fDG$DBO<mT5j(b=j'[TQ %qidXuD?'Fj(#!FN=5.J35[LG(`/$)C@cp-B@#<p%?[S(d!_:>/*K/F8!t('ZlC_R>KmiC-1,cJ*EaVISJ_h@>iD2"G7I"p#@E4FA %C2r.TD@T'R(O/bB49g=1*#B&LW'oLY5<]_a/nY=YVb@+l=?C1IN_3!;o5FWlMdn\-H)iU5H%k4b%'S<sP.YrV=3;FeZIbeaY4U7f %@rCp]Pk^HTCmmG4gm5[eL8=rej@-sb&u&""T/5fs_P*"m#=5M7'8WDa4-#FoaAp)Y7a[3=)mL<D2?Gbq1r;BB5aS+X3\U:&TA8DG %l/P49h+qkN54i"ljQF1a`(R9Ss2!u6FR82):A3DLNu^5t?_8++.Q2KTl)D&"(8/>H9jKTON1tDqV.l-l-<!X=G*5j4F!k9g`2\pT %WLR6N^7"VYX2HS.&&"u`pKF>h8!CY:Ij'C+*?[`M`[oJ4=[Sfo%*?)iLhDWhNhO`6k\O\Q1!!KbSAOK^9CEtc8p"4R^tTuN*eM0C %!p1VEN<$.k^cb:SButfZj>ra7]+<T"!f,&#"X34CcbIH'G=*3/[kP6A7*k0`?#k<Xr:GRNUO=?_?^))LR6?'hXV>-O!?Bn3DD+8! %"*d&'/K_ilb?W,m]U3b.oT1%ja&+k&U?Ar'rfXj/Q-M!PM'lWRo9/<=1<-40O[U,KAH1455@'P$FK+acVGkFfKEk6#1o;Z'P=\H, %eCit;X"JR>"tX:6Gm9,LEGA8$2NTP#$?Kj:^Sq"TZ_YKA90*KIZl1(M?<>s`jeujIbc#6E'%p:00cDOb`_\[2VUS:qg!&TL`[#$$ %R%(dj[W8d?r?aPabg,!]'<9.(2XY&i+,EsFb(b51.BtX8G@tdEQ.=S+X_WQ31fh^lh,R,@3*<2oRG*VLhF&C/dpeQGl`F)iphDgr %(%2U\DRFrpQKNalU%lI3r],]WR^6Re?M$:ba&HEBJ*jh$r@l.`/Dmf4aS\^:]/->G3AY^AH%3WohK@u?k]It2C*eaL3rS5EC2Vbu %EN?M+esgPmj6ah_e@T>3rDYlH',KE>2J]X:D:5Nq]&"FlNM0cBJ#>"a2M1eeppkt&FW>L)"/.q.%(\;<GFo4pMM]k&<p,Vq\s/)t %PhK_K.+Un8oUJ&bPtsSUPI?1Tg"!K4-W^_"Ba^?!oh%IC[9FCDD`2\rk,oW8N,6NBL=aAeG2f>[o((UMp?`SJj+3Q&kdEXP26t'6 %!Af0/\er77U*PILeNB=e@FOT/&*MLl)=0OU#GWRc>\6&Rc@N+CP/LCEB.W9`e.kV[D<%VB%l'8>]9%a508SmTF8)H;?=5u&G;8uD %=8uj^\`^JUR;LltONdXI]-Vj?J::r*c`s/CkP&oOh>Q7.X8CXQIjWWipe#dNJ),kZ5B?ql;qpdphNn"`>9uEqmXIaG\+_C&[8J9F %r0:Ca9!%34ojbr8.74"VZ$st1UisaX&*FOEs8DPYfDDJd4l2$qLT_9O!APU?,DG2*I3Wt8Mf7Hf)O=p*rR6i*ocNDX^Ja#tp0n!U %r?)&Ng:ue@J,10N*]e[^-/.V_2cMVodhc`[he[U*aWh>fV<j_`'Gc^KfnVSP$(JVXk$#Mu"Cq0*6e'ih0<J:t0-[^q\d=,e,5YMT %1G9P4kK?]aOT+D%hTm!%XigEeN`(U+DEeYCX&2ad-i0IITB89Ik@HPVk'F8B'sd=4&bf!/GcWT[AND2VMRiSWBKbK3(H3I+Mg?Y% %F91qSb*F;]`uZs9eg"UC(Tn/mX"eH@9FH;;bEb>$\gT!:BW7bMBGkEV3/HuHO`f.iXiIfZB^\(9&jJe27PB1Xp!/2lb'6g(UmJf3 %2<pW:YR4&"i$'&TCoE]Y_BS'R.dKQ)MWp&MUTQ#B7u\;WBJ>>.bA9n!e6#j<Z;AbW/oH:Y>J2(48hiIAN+C42Di^9,F&ACjMq4ZW %ClJ:.[3%TJS`dN8.-[LYcq7+nFB$bLBliO+:1nU-+jMg&/R17&<]4)P2j85LS&\,6I0q9*h0kZ\c\\O$0KCBWrj68::EcR,b;fnj %6YKZQcfL,0l"S-#W^k8U--l#K3A#AKR;!83[#EM_O3ji%T?CBG4Mrr;'Z5\BWLqA"aZFfo.9[S#EMSpe$Cqc&>>]E1piZ6";RH(; %0m\,5p!_7KN4cu3aH"Z<Z&>%,gsU\>VNc^G$Y]O$[<#)>S<52J\I(J_J%H@MN"#Brf%3$*/0[MV6LD!57`ACjS<4s:Z<Q+P.D-'2 %.uqPAZG.MpA8;@-M"m(6E#'C6M,VEFLB9$n=gR^!GReL1Ie\T!mKLoA/^fnXq">,G5(#]ip#CGD^fukP.$WB@M_=j[1O<HQcNDfh %Gs0emCte,@HLRH9e7iG3((mbf0r'a904t%Lk;,`58';bpEr(k54Js`A*hHIV0IbTGVpu<:O(BeD3-/k4SeK.WV"XF0)t@uoZ60+! %G#gj(LFbf:AdU1X`(K69/@dL@7Qc(>'K_)/c_=5WhN&A^1$Mcnk(BO\fABB#e:'UE1s%b;o.bT=4eFt*NqIQG%2bTE+aj7VpA+O) %rRZPuO\\j)0DjFbY`3Ph4:Nu3E(2+0O>)_4&iU[,PSh9;f8$NQ3`b%>L)WdfrGU!RM6]=::j<cWKGp4CM*@S53/;&8`Auo5Fk7-G %kkaI;=/_r,'2;lm!\FIgE=l=eTGEqK:C8@,O\7i-IkcXVA6(MjQY)Cc9=UA<<;-&;1l)9tcW!M$]=^Z`ac`0nhjLEUYsReWpiM'` %R+@-2`%a)Dn/$OVZl2Y#a$QB(cPLJ*ZBics:<5hahWeS5"0.sH'OhX<[La*+nUug"(7jXnW-^r@#4u`77'MgMjAar^C-+'V2H>ol %O=pHqWKX/L%Zj!B(6?&u`LLc`PIlX(<LPY&$><.;7OLXC?T,60;/#V.i8k%;0*VR0,&E#<,0mES/lM7k9=$S(J/d'V2#`YOjmUNH %AalRNQCj+uGp;n-(uj?!A1-Z:TO1,_$q.*MmgG3r"QO2C=A%:[JmSb?KeO6\A7NcG^mQCK!/\roF/L>FZ:nAn0;t5D'6pfmP7"uL %5A@f)'Z(MdU(q+/Mo:+]0i'0\gH]3*5piE0pX[a)8Dl[&m2/LLQUDNPb@2+16s*jg7/S_fSL'HcRG]_.LF34=,RmD&*misnD$aK5 %D2u\LWtWAAa7b?<4pYR.Vu_Z5W*5X"2XoiXL4,q6PH.fQM5U^+/iYFe6W'hJqTPT4%k9MQ-#u>VE^lYT@`1`t'I;s0%KrU7_Cb$b %k:Og!:ke2FM260rKfj-FZ64B\R'p:_nO[6NJatq&"Z,;0RJ6lC3>6:gF:$6`aSru&-D+g4DRi;uQifbCbG96o#05YtZ"@TLd[R') %]tapm"&nc`aqUYD67?4`U=[@7Vp7UYi/NnA`CXiAq*J=;Fbh4dnJ_hAXmA_EK-X)UY+Lq=aH6lB8M;Dr%$G-M0J5MnY:_-GMmP*U %:)I0!QT(Qoa[9#c'/>SdSOtWYP:eU.'mgQJG_DLm'9WsGGW7LMPDL;H.-MrkU>KX<:/!l="s8eeAIif:SE0#LFoII\%TEb66["M+ %'"T(Q_Ep#q.[!f??kI*>*06@;#sSg"(C?GhK!o"';ZW`J":mkTLs6Z?9F#=VaSII5k:0)P@_9fNJ!bWE@pL@:4\>(AG<?;V5^Z`S %'2N%=&rt8j,!4GAUjtT_;QWOV1jdY@JQ?;b)OqJH4@s1rXN\KdnaKNa99j2Bi#%t\_aKEa\s>c$1bRGI#(;Yn%>ni9,p!)s8,jjS %OpTntc%4!k/V7Za<h]g=.(X(\;L8R^Lj4e7..`"V'`hX=.27ut_O]VP1jKa73U2QTWjW$T)q)Tu)s-Gr4B7.J,>=LSR^l'#8fsac %4jjo(CpJ,69oYU*;gD+lPmlX2OW6%]OY6G2:E:7>Tm@tn+W2P/Vl535`Z^?gGssKG0]Pk6'j<`&\O9FXOST>1"%f"3<s?T=2T@AU %;Y(fs9",@g0MKiG,8m0EH;9I8<65bNJgAU8lf=bn"XXj+Z/C'4&><$J"j+X'%jYn[R6i_AZR^Rs/t3/5&rP4&Usa')8YhDgI4X)m %0n*6SkQ.lN8?Fd@-Cr#M4rQe*TPEs#;<"ZJHr8(JlJnRjge79BeHYYf.85AIaCqf3`%p2%QP<h*J&i]:CrDqMnRMnM#r9%nVagB\ %B5Ku@\Ub@K/3T*Z*%K$lM$#Ym%i%)U^G,iR.iLpVRK+])!DHno@&lGhiP`=:.%,t25[]DF$RK)1).(7O,]39e7Zr\564in@mkYC& %@*KL>QI`O\0/EcKef<5A1&uAHK^/\sYn\Wpb@V,5Yrq2Q&c%jl!lJcYRO`n,UbK^n#IG=A;@cqm@:?-n@!'_*KnV+:Co/%GKj6ss %78;Anpn+?!#cQZu"bAg+'Q3T"F.H@MZEi"Z)?AD'8'SD?>F+V^>#YQQ,&p]S`+C3EhjOHoJ?%Q.F[eCt_N\_2HuBoE$l`X6KPJ`X %l7>b>d;1eBa6Q=&M"JAG$#,.UK_?jp:nbrt$&BF[OZ8iT_i%+ZR!R7O."k/)p.Wsa$Bm#P"OVs?eT`Ab'WnP6)N5#0(9gAbZDI(6 %FlE"gI5V7#U:oIf28#KEB*3i(O[+(U.>H3bCIk,&af];be5.$0@QL-kOFUUtKhM"a_O,nW.I3u<&9pO(cfub'P^3(<=C:&sAHNbR %*n`J9(O0XJ[3i08(K`0R?POR2(')J6S5Y0/7uLq:00DF#,;W'Mc`.28+;t\q@WG*'1_;+:aSoJ:<JSK/R35DSKY2D*9T++Tq[=e^ %@.lho?qTMVl0*f("kFb1nq[*`&62PbYilJtaA8NuWA^p=@&L-<(,YK1*'2TFFn5g&#Wg2U\7/l0j#M!TQ\6J\9Yp`#F]pT%-L,tZ %fgG@lb9F'hQOZP0?;R"se/M.:+aQprBl2em!F9Bi[-!KU%GU>"AFIG2AF<?O8g*OHnmdSPV\EP.H:V64/mnbp4l@*J8:I6AcF*_8 %F4-ajHGm\NWoXGf_m3-`4sjpn#b1*9Q/L.$A>)9L$-ik^o*UFkoZca1'/O/9:_-Hh9edJJZSE7rQHa8KQ]5DB&.h)H&-9"XbmXk& %8?3&+>][0<lFgG6Zma8LXC4rCd[en?LgL!%.Vgp[8O;pifL7LN>6/0:=a1\/:#[=D#SQ9afIs%ZcVWU);GYlpcf,s3kn0`V-73`2 %;-8N3CbQYo=\j=GKe-53oVA-^nPHi(FF@'#i"6H$i0M22$mqheWCRK(aYP]Z88dqLa`N5,g]3iK2.Z$`JYtj<_Ru&I3g6@-aD?^$ %Uq1#eQ8`4'#qfVFq83&5e1)1i&=lR[R/#37AMZ<&Pt&@$)8]KZEcf@W#!smJk*ZU@=s7i8i[jk6moZ7k$V(>)[AH*WSiLk[[hU$5 %Gr6-H_ADt0@!O1]bQ2T7;(YWml,QqZ'4fR;kQDf514oXZ^dq+ZaITluUc[5bJ.se._1;V8.mt#0cnS9]+Cd]Ja:+dSR1-$'2FWTb %)3seo;tWZnPfus!b\A'_6:_Tt(IBO\2Tu0HMlD9fF)g?uNK@n>L>8mR-:0RW!8iH8'hC1q8\bJ#!XS-lrsgHHYVWg`63R%pc=pR] %cF"/geIiZ07`mQA$6Yp%KpoQ4:8g\k&3bjjAWUs@gpjpP.sPAo&PeT=\T5&*TdDlrX=;47Qk\4!oLiV`;ImZGKqqt!q*^k>;NYZJ %-,dY&rLB#_'X_+4T2j'e6RfY_gs\ho`s%pbK#Vb(i1>h_<J3"<Y*iDrR]!RukiFW%<<ghRP:g%7ha]%DZ\H%_-TIL2#ZTj3EJfR? %>apF)XuDae3#:ftAitEF-9*`+`.lCe9PA/O#nmk0X'A'T,2D$$#VRYO]V(3#+f9uLQI@[:Psm3J?:keI5-Ycn<[/mZ$D8"C8omSk %DF?qHC88=8k"+R3])YcD=sPaVI1An&8koP0b6?:!>%JQ!>Y$P[N'2_q<:uATZ+r[qTAIdtnt4QE^m$g'a+[:ejr#4LQ@W*+]U0[r %#3b"0#3o5CJUeBAZ"N_tGQa1'*-Od#[YE7&7`VfRn?SK<)-a,Jj8cbblMb?c=r<,qC(;]PpF-:VqUW.f3F1"Y<%eAsZ3qG90a8T8 %2iM_nQH$*(C'2f*7>)>8&]2UBfmM7?[t+UNJ!E`]!=m@o9X58>g<,MRo5%_tG#5tYA3(:UgZB-l&VPJ9OTdh6+<1OXGjA$q(YPcQ %[hZld%+r.#Bl9Z,rU.ar4f"M2T%+a`Qcf^k(_RO5.(*;p`0?NJp<.K\W+VE0-Y0T.-4[9e#3LSfn8fC#L(+Ji;V`Q-^gu;@_nsG0 %`c*4>%MC\=6u]GiMRr.q)G^'P&E8AL0o"TsIL",kqO:^1)H'nM4]t&2&Vlri=T?N%lsQ%!hmeD?-c4"O]W3cL&TMmY[qE%/F-J8* %ga,#I7L'dH't.4Z"K4`Ad_m2rfcaph0h<i._GtVA*lqT`aeX+lrJIYqbi2r[@9B12fUn,FlOQmYSKEjqX!`PEW.7G7deGc=HCm3n %;4T!GUV,[?`jBU$>U7(+!BK4Wo!3f1Z'f!s%e2PSo(,;PZdKC/I$"3oT=pC1ciAh3r^Tr<]8"5]K5HH^5cD=5c6h;f?KEq)IBV$. %%YBUV1MLC)C$>/)&MrcG9e^A9^fbE*L1<ig?0npgU-g[26]`EE(JYrckIk*]B)5Z+n?RjT;!XP6"GJ_c[t2Q7%$8W9r"1$,(8m!- %q#s*+WpYmbTTa94(;JPp#]p&m(KC2jfi]"0DSRJ@W8$;Wc_DBN\-RZIKR)ni\3uWOi"]g9fY#k?5p<;@M@^7K+I&m<_$1q_'Pn2= %S(%H24/nmircVo&.>$SZ:*W0HqrD9B'\eMM4Xm%c*"ZI/=H187>r5bEBcJ$<U9e0gGQ94ZSU*^I-q"=@1*N+.K&/a%Qrf3/LE_9i %Pf?PD+]nbG+bk?\RL,J&[PJeq3hFuqaM(g?1G8]s,9_<')p"QH#<]M(EE@h8&Fu?&Doh&Fjj1a^ClhE+c:p2$@,uT36D93hcUR8q %d<AQPQk4if25C`[n:!Yk*6Ij=)RK])&O6*1n42D5W::c<"D)IJb5cl"Zp=,Me>"?(!LEs4Z9V=DXEpUX6tX#t,Ao$%aSI$2[bMK3 %K_DZn'ifUtSQufea;jJA3<:WJ=Vd^bY_:9.B2?P&T+qJ5RId^7D;tR]lEZqQp*HXW9l*5eAnqjOi8c@-C>0lmZ*>[/;a$iGa.Tkd %9=?ied++PjAt<Ksb\I&!&2f.k"?FnhLiZVa"<:g-/'Q9'?\@lHj!tj1$S`_b?(<GHT.mUo?nu<_BhT>r+_A(!AJ$pNHfd.RdNYQ1 %5bM9!$/\5?fRGR2=67Es$6UA<O_!Q/CG+o!R_He]47oaWF$/1)V2)-\Gd3O!(HFO0i$!LI#O.2T#ol^(;+ZBhLjGLB9CO-f@d1j9 %jt^a+_!TE)[tAW;,9Y6oJ>2Ys0F(9?$ghTn:6Tu6HAB+!5@KTi,aUSD+^P7+Si,`F#33[WpOk+-k_+o%Oa7oPecV.V!Z.noS5#Vb %bBksn+U_.4`o<]:Adh?NiM_8gQRp16*0LTNN4#Q$Lh+&Bgn>(k*Z)/OiKge&c&#VhKn:QnM)[EHL<L)Uoi5=8_*[DN,m;&u$O7h? %B&;;AB+P-6'0'*2,DWBh$psSLL$C6a6.59o7TAi@,>ZrUQo)F1N$p7aZXk6*+QC"aGtMe-FDQf>hsY>!:QX*CD<rb/37pUL*`Q"[ %M&7E4D!HPCK5f:)*0A:--C$JoB4=oiaDJQ=.)YR%7T^6,EnJeq&r+H0Ti"(OMfLQ&]iLs:LrlJSIS(<WF<Yr=c&79D`?;5u?R&ZF %&g"kGo+7-386.CPH))-?in9PcV$Gmuj-1V#drD1<Bgi4lZ4^5<E%taWW;qsIWsOY6&7/$4&_l[V41$RMe4\prSm)tD@%W!k!*]r3 %P>`odZ.`BFcD*gcTujGT\qW[>qMAd6@]pbU;onsB/Q1q"(L1sb2#54tFE.`[e<3$:kl<L)o%[f*Y(1ceas.g#Ap-p$.l9kk5.d*o %8qNU464o;n)53i2M(_eFq4JeoO/@R=8deGCJd3L]1cN/U&ItV(O[q?Q5b8AW3M;"a^\A*NjFpK7bl^CN"87&`1A^qRL'IJ^1P)fZ %`/`N4D91]*9tDKN91V#^ndTjhELh'iNWg&LqLh5gU"bOD)6$5tPXF"ql^U<J3&u!5-QPN\-&9jmOEJ'aWuAQ+i0h5FW1m#G+fscs %d\HZ__dtilHAE![1&5e1kHYWg*0taD+U%X"s)81%D\<WEjN_9YDP;B]"BaU&,MQr=i$2\n\Q&bS5,`"^p*"fiD/<Db0mn4_int83 %r'`u;@h^#V+U#h8N'Ekij0LfL"*b78PL!I!FX2G=g<4U?2WBiAd`:o5NB"+nq4J>?)$t^JT/YR<obkXB^n5qYI6=-@h3&Ccb`cNl %Rts7kkVaT49[X=JL7%rcqqYaYIg+M<98o^;nIuQd6N!m.'fe$:6Oh<bi]lp)HZ,$\JWMU4M^7m;FZXdZCpNRIg!PT%ll=$5ZaU1# %&^[+h)9[;t&b[4QQ-j:k;)5c2CW,ee0tZ:Z>`_F1m*j6uKXo;e7t]h-&mb<mjc&4*g4Cp(H]Dnj"6mMbaQV"2G`BSki4Ri-Qm=2- %YRb\4#b^kq!Z%9CMM$V5P_bT]Y_4ej!q(agT<G^9+P.L2hFIWg1.l1*^boM&eXHkQGoReAm=Z32T-4\"X4P0cQo*j*1DM&)Gi8m3 %!NteC=I@?;m]?Z&$eU%Kc%S_aj`L3JY\k9eL7*+gI3'pDX?6`eH]qkAbtEm:+=e2)=;K_Ii;4I,"pm$s;0-)Z3ef$n6k3f<f+UF_ %c5-dtRedPB240&?I9)pH#XKS1(`[#oN)OJ]EtVkMW7T-Q$mHm2kQ*`%6_6-0i,%n:Kc(]h.FrK.J6kn[L`@0o4,!C/@Y0;9iH%o' %;&<@WSA`=5Bp4tmfI`L/3A.>,!cc:O*&of]d2;NF%.>f__BFm_R<$,&D\"4O-5\"IZ\'_="=.q3R40`"%Ug?/jG_C;$3t6N8e;S# %*^nRFL>ZE6&eFQ$Ks_qEJgQq\`(ilXf-G>r)1m=#Ou>3p30asCG&I[lMl%75R4p'<O[I&"<`U,qRNI/'A%&K7aeGQKISi%5U?6$l %/%pTsbQuOQl%/4\=N7l7RUfnk(4]XrN+#A:bW/LC6>!jkqV.0&:B/Zd0d@[rdi02-O3`NW03C>g80VDO>r1]t;..;7eGT?6&`[7\ %I'*a-Yq%PG[4jPTI("m)JT^\>bsJWD"7/'pMalHMJX\]9T^EU=Tr^`5c'mucJDGCb7>j+Sh1E2(bI1Q8]Bj@g.mUU%A/e(K$F$pB %m=Z3>eP*2\3hK!jPA#*6!4h,ah!7-)\\?I7g?LQsd]Dh@=LUrM)&-qO5k;I&<jG4LFm`)\,3T(TD23Z:V])_L6%I1HWED"Z5bBP6 %OS"jU-j^IHc`-&qZ66q#$<9qM#&sLZG2'&38<R(5#QZ4=bps[Y-gmuGi%pQI)1^`e(8Nf"J2g0GY?ZYKf`H]q%!!?_T0l_l5HXho %\(WB(@t-K4Z`fe*P5Eq7X>.K=@hg6[MmqI4^?^reNVDhe?dJTle'sBu%:C%NAE30I7aMR,+*^Fb[SrlH_kNSO+oI#L2s?d#SjJ(, %+Sc"*dC%=Eooo($gpXLK7a?i#3i.f-GQ^/A27:=efdf4<0jUl-%W$K#7^g:+OX*!0Q>1N-?FGIJV*p=GY'H.?1RHW%6l$GS$c;<; %[S9)[!q3?+2\M6`"'H*\+jn]Gs&,0$@":qbV:K25-OCm)"ORR%1BE;NaWe&tne*p10=crGVW_.m^GUtHR0QNoARMV@H83+"=X'PA %7TFXl,=8Jc]d5biM#@c"LK*EK`[#Le#2oq0n$PN68;[J\nGtRAn!Z\qVpIsMkmC"#=@d14(YtZSYtHR"([P]c)Ib-TWuZF7V.ME? %5eN<iBZ)loeX<Z%CV\8Zk6DYbV4'?_%#.:.'r/gD<e$?4Qs>q&0fOfp>6JJGlL8jGaBN8MAI\^>*J9/)a9Q@A/b?CRa^[n5g.2s" %1No`qC(A-"NYa?4,!59j3EsH8iX#XAEPX02/]GO$EcGjkCg]4BVno?aXHERL.&(G!+rS/i1'4KuGa]CEJklj+NOXf/"9_C"Dqg\W %`*n_GEJD\HWGnBi5U.DI@(G`A(gafKHmjV,1:ieF$]BXVO53C2P`I)Z,kl-)jF*i2e767.k!:OE\OiV=liARP3I@"XLb*o\*04?j %(A0uC"O[p<F%fX[i<NM89=HFXkajr%b*:WuKH?'gY<>Y&+W!;cD=*IB`n)0k[e:]MjeEN4nRht_LsD*m@uHB]!,t)_+(U:j]Kf_B %NQcNLI+oZ,qOT9&P2$^h`n99<]d";&WA%R8M`:!D>Pp>i03rsqI`Ap`0X\lTon4/UBo?o!>@D9)O'G,L%jA!V*^*Q]*%/S"<f`G= %;.b`i#+G9l'!GW-JV9f0>7r4BLm02iHf,06C@ElnmFP1IGjT.gP!l7?F#4p@=O%m=]&tYW,bKrE#RQo)RKYpGG&&6B\KM"EC:75> %OZP[E&O\@"^kj.rES+R(K35boKTh*]$ittgO]Ea3FihqumdS;?3u>>Vil.r_973(M2=a^\+$37ecB-e\EhEKC:+W@[EculQ*V`/l %5r:&l/Hs9_HlYY!N0X[8p]+r$?%upW$9'LN:`R\d!ZqfXbWnWqk&mU.h>m**eIPDrAnZ93M!45s$e`%;jJe_nbT^nPD#9F;;2#9B %TJPc"Kn_,SE=Rk)5e'KH\8Zc;Cff7SaMG]dUKk.Z347?kbtJR+W]9NJk.,'<br>dg]7f9'(b]1n!,[Vli$/%W)Z4%RlC4>qm3X*g %,FQn@&fN6`/^.j"V]$_JE<$ZOb:N`jn-1+MY*6ip#])iZ;ehhK;n-Nr(-uo`"[6&O9XFjmUbG4W(k,OO]U\YI*cK%'G*0_nol?@Q %h=F`)g=2UIdu+GhBdrsBFp"V-mZ3**DC(*EC,-"0Fu*Ju&:=j?:GGJt<+F,X!jDhj2%tf?SAYPRE\^<\UL^^WrJnf#ZBnGlT/'#Z %f2&bA=1QRG;3D_WbD^/Z:(gLg\sqi)K+J("SEGbm4ubX1`X4:G+uo8?ej3p]2>#]b4AO'ciY!W^qg,uSYfDa?i%.(tJON.QTA*'J %)n93,,%0s#;Q-!*1a*JeA3KEH_3i^@@T[.Eq8e/s"%#R7>ktB%4*6AAocOFnF:aDaE?c&nO='<QBa,71]q0.i`eip)kX*9GqR"_' %Md84pV3W"0BUBfojL][VB*@G;B&[X)0++V)4D8AT!XU5+P&@tLJ].ib"C:7B2tIeA;J3#`W[r_eO?t`FB6^g4,XGK>KiBD[i@NO% %QMnm]A&[!@(1"/cZTBYR^^a:ZM1BA\)B*5C@*+b7"+$%uZ"s5i7$pn\IdkT(Ui_FR29dD'ZGT7gm-USQOg5*ROXrLs3\7(Q%!lHk %mYZ:\,-h>T\hMm/(_&BY"kALc%>1*,3LY4BEDSC!,Ti=Jbe^N!/T<fCTjT-Y;eZOq^LIH"Me*.[`G(GSJdK6n6OBCL5hsC*UuuBC %b@N*$%9oaom,A[J*LN3I(lEIqHBfS&SA"GP'Tcj:iO">XW0:2'2FQ8m9g38D\8R`B?Ij!#G0XV#e7[3d0.h#dl8`nWM:aGK=?5'; %$@r?W#WAS`E!RbrWDf'0G+ikT8a/u=Gr5_e]k3VP5[E@*S_eJ*^(f=q\QtcEg5Ms>1U1d0-lr*D0E<[)[t`n](5=.To+`_2B*1BB %I,GAlCc>;/^.-db=75S+am<1_4ucG<]*AQj!Hpt!S3f(hQ/t$2d?uRh#B7Lm^`>+8l&-'R/:##cPSKq;=G^;O^DOf^>Tu^t^*ME% %OH>,"YZYI"#/!=M5h)#*/q_i9X/1Ccj01!u"*&$a"&&n;Ln,7]H3OgH]f=+f$6"`C5`.)3Em/nuO&fa'^o"+lP:IJV8c]b@W/F*- %4;;rc!/+sZbsM=YhB>Z0:mi.94#RLU@Sq0SF^i#_0b0OtnG4C)?"mF4ZEZ&nf4TYYYl9U=<:Ruo+*49i'b$_FqM8*4\YL]-75MA" %4o+DL[tC#IM;r\SnF_qm5!8&lG'F_sbdaBuch/l459TKE!?N*`)MrUJ\V@1Q1TYSa'^fO$O*j6oekERtOltaUIt#r_*06lJ.T"aD %]T`tjh1Z0-hl1=Xo^ESbn:lY6kC<74hct)8eCi)@1]ps&<YAH=X&rd+6",Sl^=Xo$oSJY,9sJ"[-@pG%+r+AriYGd#CuOop]I'U` %-oo08\]+_F,LWhV^BP)16-Io(5id/F`K)g[0HG+7YdtiR(<Z_[0\%ZYVBglu:)hg/)4W\+5WNu-8WhF.7`eNqfs7&_2rH%+H9`0+ %PL.DhL:/OLWl\9Dc4Ja@^bnA1[M`J+6G;r48i]sH^gt4aRk?Sf?nrkS*btCof'2:^7KS7Z@)2=!lB+eDYPq7::;YpsErcUA_0/6J %**+ul(UaASYSK]U(GQ`3">fJl6.;ODDE=BA]:]\17rcJgr%>[bd21L8Xo$;*>i+IT![-Z:ORRq?Cj/&Gfo9C]>0hfbmM__lCLt.u %`t:d^Xqh=M_CDT@4!_gdG#ig2!q4G*rU[Se3MNC*79qZQC(3p,KO01Fr\ncn6;]b.MqjICPIl/\/UPKMH+,NhC)a[+>tkg`VL#e1 %glYGn?J+hLJnD@Zl,M4XFPc7Ic+;.@U@hX7'esa5YDJs>d]T5[^j5J0Zd.SEqM95D'C`FV+/r%Zh]=Q038oX2:3AG#J]0A7BiRJi %O=A*g12gB/$"*=^H<'*'&qEKc.L;b<e@@rY-4DXO=`G:H>1>1t[K.q&Wks+9jkS!g@(mb9.e+CQ#Ao=i%\/ob2]q#B1RmH`SE/0d %^5+JM,ZL-e813L\%OPQU",d[(RNWL?h@b@OR-Ocib5&Y_D2286QEYOHf?#^eAfX"qWXq[6?I&4H6<q`$=UdaR+isBZJ>[0TH'FeY %jd_;j7nId1&Vd<J%`B-gSEY7jlqQ%MS6\4BN"[Y'M1pk1/B8a>(\*fkmg`G8\c7[McLS2P'rfD`PHV7J&YQIXO"_cMV8iVI\6-gX %Z?np]mXYV5o\sTEn@Ap):E8=jI>/fWg6Ap>-50(_THhT34,NE6KcF\.e<;1M+l:OH]:c\P5Ifd`p1Y9\j$taYaEab`(]eq;!?_Q< %UD4Boi,5uEjd`0"N%]*("IuTKEu^OlGdZ`[d`30Um[W;7Tnog-oiJE;`-471hDb%<9?SqPZ;mpp)tXhf$uJM#mp"51F'<?l2<B.n %"fE[3*IK(okLLa88g7=N*NPMI:+j^$oc0.HlqboL:UrbS.=19=Z!Ir3n_n#j[2PASo!K@?UKd3+k6BFW1`);X.ZuQt\SE6XlSI3T %KQ[F-Qjhh:oPt7g^^a,k,A";U!3[Rh9jQV\<tPEMAD'je,sX#P!:VH==EoRdPm.O+ZWtX"AL[_R0DmZYMF_'5V'Sr`jaRQIdKNjB %s&4E5@L^Rbp?-8q>)gII8ID`Z[[=W/+-$VXs'`WC"n.`Vi>0rOZ[AiU)qTEc3(O2OLWn'b`qY]aA.$k89[<#OM`/`>.gC+_ZC3g\ %fcPjuX%ZR`]U\fjIMIe!lX^GM8ihFG<J+omh]E.m`d7su6p;$@biZe!'OM"1gHbnf#9KKMjC0_o_R6L*rXH9dY$'\R8'"iVZ=[$n %GV:UbbDVMGGp^p^XOg:=jnPoIN2,/PW%e9445<=\U1D]Wa^nVnYoZ`?7gJgh#h%_:O6q68YIB7[bfr#B`b4l;k*\,7:?Or,4&UoH %ec(Nk]k5GrfG]WMJaq`b`d%n$9L=(ZHLiuQc^^\f9be+REkn9m(-?sJbe;LNpnch`[kTF]qnM;7U13;NQ^LQ;`:PCgK[X'VqUG5@ %(T3`O_6jZNEO[Ab0aDCWfkSfO)qf1$(1LW<F)K)SnDZj47L]MSok>9!Q+4ofoL18#^8h_eH3B^@2<>"eod!a7.CBTtYn0cGp[KGG %hg*n@CH$Yc!IBpPKi5V-d^MCjklX/6D5gYhFq)gAXa@`<(5cb11eQ'V`;Q"<DX9gaC4_B(>/W>9Z[o/9\#i@_FcgcMRX#B9(EjH^ %lSY`-@o\5l=mP0G;4h(.gWi_TmE$H3\QG^EA7!(nY\Wp_@%:GCKPB(_e#dKk<A#aIr)q#V?^.23T's^9^('X^EEfAQW?TE=4X3@) %/86H2S]DB]<t0SM-GEKeL(ba&EO_,QA$FIA;&2/?1XQGl@,K,=mK32!(baM'Zef+)QgW6,;ir"E,<!C*r61De*#i]I1F%,lWc/#< %%5X`;%@T8cN+7n+nD29t::NKM"_U10?`4suP8+)4f98+i6ZG+,56aEW9!UX+P:ZRu@1=`3cK]J0$cs??"J-[9--'o8*IWr;Z,%%+ %<]0<K_potc=(?Yt"9RMk#MO;*.M8*m<(GO\W'V%"h=nBl?u2,bW*,+:H'T_tfH$gO^^^cH[ZsJnH4B@kL,"Gk55?$(N0L!6nFFL' %5"Sp@%a^m3jEKgn\hE1KDGK4feNB8e3X+Cn:4R2?1ho32)(bfY%=KV57RrB.U95OZiep6@<TY'g=1tIQ2D^j!84flr=Mo:<Xp]Q@ %ncC&UDJM`V([aDXRu8<^8Y.ZX2qjNX%PoWm[h5W/3_<@(T0QY]e`A'V_kjNiHqo^Eo'sogrHd#o>W5[S2qT-OU$VkI]'0Z!dFHuH %f9!\5,]MNAf/`$^\jSq%+Q@D],W"VmiIWnQX(:A+2VaO+eeY\'E7QHs-'W#P+$57T,a+@n%]Yi]&4W*7?C7&e;i/Uf`\,N3$JhLZ %>3$GU>Q\t`oe@Xc*onRf^k9)5WK3!"s'l4sh65Th*9$!IR2G,*RJ;NFae:kN#au)=O343QQY2HZgkfc.4Ts_XXK"`Dq"UM*V[<[m %5X'<s>5$YgL_h_NdlVY2'UJEnLckC)E!3/:p(Y4/"ECr7l92;UmssTZ"M7'9dRss>*nC-@E1ga-MS]3Mj?l\TEK1^q.`M2\O$rN8 %8N0>):H)EIb8`P'P0P!Db3$c^i&S:-3;(5Q&E_=li^$5Of+-W%$D'c=Q:/up>,^3H^'/nAB$fJ%/i-r38khi%K^<`^GaOh#D^SY7 %bmfVc6^O;O;\@FRN4EDL2_fUIC^=Ccdk1SI:<E^)0-N)%&$*"h&^UeM+HFO`)@C7LIG13=J$n<X1U>]`lE!&:j%.n&Q4Zaf^@`+? %,K2Q=SW22,lV><?,eiQKBWT+Xe9k@5KuJ+f!E0F7*%-Opp,d[k:F1oXf4o,JkXX#I>/\f(DPV\3j![PZMU"S(P][LJ1CE%5BVYsl %;t#&!MKja*?K><bZ+8lIb-p2ME5'/\G9XT=PuS?C6)mYd.*2Tr+))]@fdL\Y<b(K)"cIpK%%7$<Me#Cr[>]qoBO3V^)5?WL7g6g, %*M%1")]#-tflT!.UlB+,'3jjXmlg&-ddPm\An,uS\s'cIM(d%V"9i@N?:e5<:NLLo\hCWXL>.+NGQ#gf'4`h4SZqB(N8nRj/*$BX %a0HUrl,L!=ZoV\=bBBCoKr(V.[BOBt_taG@(8G1CLPno)#@]rJkO0lrA<'^2YPRbK3$u/BN30D>7p:n9\oDO=Xj5QhfT*i^B[R.O %KEc'@o.igP*J<sAQbKdQ#MXIpKoK='d!'W`I15.L)_9r/eiprcS1omHF4%:2rnPO4*eP-J)gjHi,d-Q&=2ljBbq[J['N&cXKC,GK %oCl<qkqI1$Fk1sLj(KA^j#L9bBc>$sn(NNZ;X:hm+)X.Mb9Ecqj=Y_kc*8c,8:Lof'2^Co$-G4#SHX];<im$9I=uS[D'NV<Co-if %<o]un*1KU%1\S(ia8&bH!Q2[J[[sm#GmcQ?!f)]*<H`\XXaOjXi+:]HcFT'F*,T1s]G@o9Zl1;$j2bK,:0@0$[c?k@EtkOG>L0I2 %f4%V6&%Yf"b(n?GkFs`-f(#e)r&B_FOYU4#g.,>+e#d8R9<0lB&[p``_`fXd<T3;eG`Kisie.X"+$U('mCTB;q5r1MpG%W%D59ko %l`PZGeMqF`8*8grG[hieFrXi77D`Xh2nH,&8SATb"[rB]dL&3X97F):K_'JFj`Ydd5/K:>[]qTb\_9P[NK^toCbAb$=nT%9a-#Nj %/g?*=Ba`W2nnN-H3^4@nW6I)sj)"t'\62Yed+-kB1Q5qj\8]h`U>!pKX[]VuCF6,dCG"k$QL/AZn3l[T\Shr@<`g`mM*K+a^e(]$ %L6k)-/\g_oO/#i6.J,N$lc62!o.(OHSGW^OXe2g<NId\ofmJ0Rc>8<>F;Bbp6uo^rn\>HVfLOErQrs_kAWA[&Y26UjED1.N9-p1[ %qJr&[h)M:WXk$.7^=I7(>>];b=?7>UQ18<PIJh6^'B6(<jnH=lGk`BUZ)]\S0ot@.)_"_]>5LjkEB4tCk@/ShWXlQZVjC]ekUA`P %/q,]1*&3Wnr0T*D7>cQ]-!..Pl6-S2oR]^WAJP0Xp#3nf>TKZd6Y\1<*gY&!hl>AI`A:<X@49!Y[-*EC3@$M(Y%t8`a]C?Qj:4PZ %iR^6f@2*V-'eR(8>Pjf.;<Da1SVPbJoWTCUSc`/gTTe_nVd11D!_VOAg=S4Or-c!lg)I3JA>cHYM47i20UB,p@+?N<dJC\uTD_m_ %rKYZ)k0rUsHV'^3lj:Dcb.:nC[8N2;e"d!SB6%W_`Eu8+<17.WlYZM;a0_/?<+JVebAG7@j-Vm:>&W9i[>)"r^uSr@;B#s'\A5$- %jO$"$0LLE4atB\@B>H:`Y1C%V@6A=,$TZ/Pob?$<`F1m"Q.:b]NoG4EGqt)R3kdDT98]j*1>h"A2Nq^.@#klM!hMq:e_&F+Fu5.j %m:r?=\+N_Oj-=&c+_!9%>WW;InV"rr&d<4.V>=0O=t'!]eNPNNTI)@G*W<GK@6MjSk\I:^EoVDqXqo0->>K-"T'OCsZa*b`duiOJ %a7g/0PnuU=I2U?hYFs09"_@p\?GTlb*ibd@E?oC#bBTV("`G?ZJX]`fp=#:%r,s?ZmR8aoc$H>c@9(ATIC%`-a1GEO`&Zd]5mq!J %:U"s.CTY/Sj'^H^$99c5ob5oOKmkkL;Q[=-]32RpBs^LFNRFP^>oDOAKL646Z*7-JV0Y!V.[Wm%I&tW?8,(h`D6/]"(TVtKeMsCb %;s0ldh-@LO2*?"qm@:"W3_,np'F+W;G/1OB6-9_qOrDTP8"uE+5.+EppQNVEXI0blFT?/@EBRLl8$b3u[9!7em:^NCT#U1r(L-;8 %3A?D5l4Ou`a>"duk8IWNGrAa/YI3V-(sSLPTk7A/5KeA[AK4G,A@9!OlaHSq*DMpR:=N$;VkUahSZSWo'Usk%^Qa0g\jWZ$g2rS! %nZ6"J<6^TM[$t%jA@)<i/jc+/?YeIphMu6_EpNgO=;C*-r(u@<BAlUZ_VLMpneH&Ejk'J+EAVI^YTk6;"5C/e&K9<HPR.e8X0q@D %Cr[3-Gqq%Y=l4XqfZd>LIoIubWL2;kXRE,X6Y`0/0E##(9$40i>l.CA\rP<DhfV+dVp;gGZ@],,A2?iiB74ql&bfYpaZ@bXE'0Tn %/72QRR[IDrCjP;8d3`$rj>9s(UPtt4DA8Xse<niNbaVJ^/Tt1Mm1m#q%4!U5FfmelbA7jU[YpI)-J<-NqADfPB!kIPEj_OH*\@hr %l("i@>PGIYXkOq]r[-HWGuteBh'%u;F\]Lg'/e!>$Zs-6e]<tmP-+TNX3n:W/^1e%Q>43Q*,Xq0X)i$`<rK+.lN/3Ok'[6*(0LW* %p5l1T!tVa:h?"h*%m=%qACX$a7aWPde,gcHLDrbJ"!BW8X0Lqufo3fF.Tp7G>m.Ja@s\6cgiE<`,Er%5GPSr+!?@F994)>u,E:_s %)_'6tA*q1;`p!PkFY6]BYPQ>pEL;24FUEJtP?pZ+Q15HHW+U0k\-7#L4LM>@IjJt,Yo:#F?M0H$EO\^nj2W%f5/M')0T75tBm&!T %CrXm$HLWtJ@VifnQ::R(I-5I3-U'ni3=Cl3pK,d6T?EpN_RbpbNl6ol)&&t+[pGBN84u11cDK1GFKucUFK=QBkACs40,/1<.B2[/ %<#I\(pZ-36M)0D0XIku*>kKn4UKKB%e:""@O'@[r#Q*hW\lu.`k3ZipEFsS\2uBj5@qX=n@3D6H^U.C?@F/)<U34>aP;&#mNG9?c %HaT2c)Fp6cfiVn9lE!$L[NjIJg77*GGBa@>>[8jK)Ieg>EcDjO>Zg',Z,Q!IaX_Kd'!A&MlE0rP<b#=V>.Q]&n%*P/+^I<CSQ`-S %YIdt*fa,73".$/I)pDp^$MfeXC_mrJ4GKB&eO*PA+=*koLUC<2h+o(^ZY!5dM8ZfoYT>CgUY20K>-!+pG-l117!ZB:1ACZ=[</]; %Tu:U>:f+W?P#^bTHBK9:)sV:P)Mb\c[BsfXBj^IDb]t1,VH0bZ9il*YWs#o)P07.R<EI8N)EMO.*Tj3E[O76LCoH%\9j4Z!5P&VH %D,q&?2VQ_X?B<Z+=k]CIQ<X*iL<Y6DR_4Dt*a<Y8bEcmA7#Z(-L?d\8Ac9;O5%P<r[8('$OiMIKNKm)8NV65HELbHSQ-H/+1\O\S %j,!T9gYGNc"Lg/V?%^oj&2\J_gKo(G\:Eg*LK;I!qXEN)g.'5Z,sl>gEA^MX"!fpo<bLbDCr]Cs5n5<gh-m0]`h<^+2B\?Z)DgZE %R!go_+,&7r)>ip`382Bp,aHIIQri=lh)I;/WtSN^K^C`m[rE@[m)jR5.?4GOZtoi/G`6M^TM3P/O(B7im)jR5[?%U3V[H)G\QGE4 %l6Ca#5frO:a%$ZO9SZZI)%)Rr20BiZnI\i;!=)1R0A">XZfui$^8J,nPj+KVm3A_<lLqpGFLkXC2]JtNrMm%=qnmZ\b\3%X99/$? %>toX!G,$R16Y[XNlGJVABH&J.P??7g?]F(N5*<C_3b'7\4-!og&#Sh`?\[D&^aB6[@=q^T'k+IYhc]UCIalft=nf0U\[sVg>O>p, %NAD+*aBZ*RS%kb8:"sZP:RsV'@c@W65HN"PpE;tNi!*P-3&/l.X+9Z]FE6PFX0_)%)+W+E[>^0:[pJ4I895`Lc:7-<FXM/jP,>rc %ZuX!k\dOi$WeJ+[c<3VSOcs>gQ#NP>.W>F76(b^7f,D8h=(>sF=r9S$qpnJF&!jfClBJB9>PGIYCpTDBO#L6\,s\sN>7&:q27VPM %;V_E<CMinc7N8cK/G$IGZei3JX,RLTPL\r14`2S<UWKB1CcQbUkcR`/lW*"!2?<.Leo\^Q2GiM_f37jRN2'N3/(Baqf$CWCD6QEE %::4,-pCk$2$.*F`Gi.tS[6i^.d_0a@47?L8+5\H^fpBG(VOq9RCF4bOG.=WGYT>BTUWK$@Xg%4@Ce$9G=L*[&#BX#qPJq)<C1q:l %_'HP"!qTsIe>TcUrCl6bek?G<9%Vcm=c_.3En38$>4]=tGrs`h8m=mqH:.AC\s.+e6]">;^,lbDJnkq78mWs/.'_<K@FJ:[NG0t[ %.A')uqC7sh90[$Z>?>b!f,DrGQXW1hgl`Vf1<E1ni!R)@Hk99>U#1-j_h'^G-`fB9j%.n&Q:YCLm3Sr*C.U3u2RUi1P@ZfgYI;Gf %9CMIVRCVQ#q_b9ef(a4QR*?O:mcoaZUi@Ak@qFYh>9EHOSDM5o\QGE8l6C5fiAK/tH=4Zo5'SZ#H?McMrtG(!2n4iEJ$4.O=`6Up %lE'k"`mH\F-Kf<K&&0%'&*(`9XA3*pOgjB?eqkaPV(RSOQ*Es?4BHe4&Mqn1:1`]7(p"m:k\?Z"e]0G*UM[)kheO<Z2,<=be[`%J %@io\P%`;G5n5A'dlAB,)a7^Ak+#@/:`a:lb=B!O]ND0r^.,%(IZ>T0]54U[*mRGTL8<%oN_n6ij+T>engjO2;[K#Caq"h&GGOOsk %+6ECMh03cY[H(Ed^\Pe-j6ab?lb/VNkJ,iD.GGN\O<I-o;:k8\3#+UB\`eP>Oh^ktIJd.rr6%:jJ%Pa@^J+OV>lIO6"$Q)F@<:Ym %2f(?pT/(o;qG,N;k.b;[H%3^pI#5VF^:7_iO/e^4_QLDiO[tj8.-$us/CuMji=UPF`Yj!AHT(SSIf3!CpR@]on\,SGC;GO:ls;1= %b"m-Nf[o+Q52m0en;W$J@Lm+7UVg7loCGgp;u>iRE8_b=E'Y.QMG*'8'c-/"DRT).>%D][[b[0bh>bY?d&^"1i>4;\cbeiML]C(4 %o2Ppri3@pqVp6^q4LfJGZB2EW7Kg4.9pQjp]@B]goMTTQ!_DI6#jPK^1ibXh8X&&\9c=NelgV!:lEI/Z<Nr1S$s2"Z;7XUdcSh^; %fpo-\2s#Srg>j<(0pDJcI""[#9\JCUD`jnO+'Lb_2pGV-+J47AQDo;baG*.cLlPr)[W,kcMt5&m!'?cc[L\>,"uI/kct2SQH-Bmk %71lTF'^aR;aJOWLB$Yn1aZ-o4T[%[^q`:d5?bia,#D4+-r/u%e-5KrQ7!iCJ?;L.Tb2dTIhj,2$f'9/m0PIMIVj_e0?GGcqE<TN) %k:lRmL>1Hkf_Y]gp/R2_h\9)A<&$uCG%e<MmDh2\\XW/ophb$^^R3,k(-[3`j6+O?+BO#iK(_d&5#5B,JFMfZTRPE_Ve)6;ErDe\ %M+9u]/@B2USQp@Vn8(gg'^kI,KA)B3`,dm!JI'uj*e#i-q^d-o//(:Y?L:#H9\-[K)sOT7"2ctJJP<>>h#`HL]1"sWG+]VM2.]ML %ldVD-`amY"Gn:LIoG^_%Mel/>[[ZjA%b-n/r*h#I=nqntP!HN`m6FtROLn:-l*.PtPmHYV5M@\M<MJr"d_,p&VNs)V_R),,$s-I" %<jCH=f`otNRo:uucOiI4gqtdWEhA'3T4JZAf;fo_s,$PQ5AXlJedg3CR//\"<Xe2[XVh#`fn!<NAlW\\*7QOBb*Zp--+18T6Z6sY %;4Yof>$TnOMV<VBLPK6PX?HlA5M$Cp2<P@m:"$LH)e#tY"*N/[f/2253`RBeDUQ5:CSmCTD6gK([AmVo".#qD%a?o1r>8$]G>hi& %J_fVk1+)`uq#"8_O=)9)>koBVK%<`/oQf.'JJfrG%@bC0S)'f;-+g"CF<CKqVNs)VJX"I0W_o'Ei#,*h%F6r2rKp);G>hi&JK5@# %1+)`uq#%\m5^dGrI@<jZf+/hRYdFQ(?j*dVlAV#hR*hY#H6Z7E9K:=MSX"OX/'-i![@uY!TNCs=>?P-/bp^8,\k[Hd!9u*VIM!7j %/3Npe+J>l"I@<jbf+/gOYVlCM@/8K7bu2r7,4hMQ\.=*Hj3!hA84mN!.@+^9_'+,A#d-Ne;72sjBq+PElK_LMs8Rq((*4P^?eV"= %HK`Qc/Mar59!C"f,jSM>LsJF^1A;s60LjL25l)$^+!RX!JQii7?2X?Lh9-fW6qJ;]22&7DMRST`#:SoiAQ6;X&"\)$:#TlMRKM-j %^:N0%W1#"BYdPu>?sg@:an<I#:r+n8(`V#>l^[7lAQ1>j:NAV&I3202>#Y=`HC\0U.<tp%9t:B"7FDNLDlLNQQadG6FnNN9HQ6Rr %79/W]N&-mU79-?GGJ+?^OkDREK@:A;WYSkp/"m=RXiU:48f?Jk"1GdiAT/W)prNu\eurX!,74tT-JV'1>EH)u^tRDmM`kiRh;haR %"`-(TkQQt^R7+#tEu:G)qULW.7pY!,qnAaYEtp[Bh%6e.>]k,\]F(1S;?%UWKK7n^XL>\^"ATsn%T(`[IM=aWGaNe2q`^IaZ)75; %l30rUBAro,S+>a*ATBr<eL'sA_!*.T#AjA(7tIH),hE.Q9B[^AXD&?<S\V4&2%RL2.K9O%U[6eE*/jYfU\S62LI'jcq-N*2P6mc) %I.-rG!iLbQdL^UnK?$ikc<@4=3'L:!FMLr#,7O^PQ])rhokPHLNl&-@*nXdc2h=nUh9lC@hkj9/1_IA$p8+(:RUa$=ROrT+YgD`P %*lLtL#HVc=Z.'Y)TaA.WQ>4%gNTb4NCF!uC]d<KB<_s$0%6mB\Pr^s:lli`SeaE)4K]kC37$8=RBV,NlP^A6t*`!d6Ct&=h(/P6L %Fg7dA8fS_u^?.^$fkbHY@,e*eZo<o433oF3B'lCV)>JIWZq]-PrM_eJr_*fbs4dKmiBlM<I,^G6%*S)gmX@c/;W$A!rN8:UChOf" %.$Jhh=nQ8B9^9<McN'MeXN]"<`H\;O>XHNb>@TAtMW;h0X((J6/ehN6Z7`Umf&bVFrOhQ1?#JQOjWnt968gNhLId(<pefZ>bj.iF %RH^*;]+BD3S")d-kF*fD%>gR+L/jf:VSN')c"85Bl\Cc:X[%L>$MF2],NB9Zl,(c6a5^EhJ"o.Y"W.bV,Z_V;6DjT%11Q`MeBaDd %kMq'qVg8&c;22==gRUXKB$snnerqk*NAVe9(c!QX^O9po*apiB-O]E##CT4ULBM]Mq+@0_.-r,gVs6g-TDK?.9^osmEZ0gSZ>ga1 %i#J9A3H!fS/D.@7c-&pAMM-bGFsgrj!\P)-l<=LLFa9kJ"-iT\nb-k4Q7^4$fGE%%e;F@9i&]$X`I9"hHEaqK$PZ-n0FWLpA5b=i %>=PY4K`9ga,0#G_2-93O<VmaTNQ.rTb*=cdO`;DX-aVI9P;7Ycb"UWC,H_?;riiV^Gs2c=q;[5Bp5T3rgRoWQ\1DJY:C?!q#h].< %iRdg(83':_Pn^82l1]8G19SIS6)eP(1F1bON?dr(D-'7]AXto0d6&#L_Q)u*H62S)S.5tsEDXAG5K+d-.iV,f;b7R%HV'D_Mr>*< %Hb3()ChK@Bq9D05p@CPUTfl*LH'&S0M'$V647KW[pZ#Yj+5Z1keg[k1<H=Lb-&eSSKR_h1aF='.7ilg^N+ARIBg#8PiGZ26+'@'M %Tn0mn5NGPoq^65&#Cj=GpHI1j]@qpr'*eSQs##:OU2<-nnJb%X_;W/C1!S0fn@./PSJ]c/%!A0OJ,(e9gYfT%G,ohd./;\kg!j52 %@K4<a_T>Y]=2%5NLKA'A"A1g\KHu4Y-Q?D7fF#sFc@#==5EFoO]I.%+mW%;pT#^N!2q6aID-ei_DA+79fOmYpZHn.njah#6j^D#X %QgQO>rc"@pM,U!*WfMB$m<u-QXYO`OreG[QSiB\iOu)X3LLkaZUJ$&Vs7D04SJVR_B`G2m#MV1B8_=g*J%Mg=^[Z9m0U;q^a1VBE %F:<>I[PRS$qZ:X7%Y&i"]d[N?lY;SmE:C&L/C8)SrO:O5+1]f]]Qg%WJ,:q9g\;gM)R\C\U[/=A8[=^+.5*?8V!hbGHbVctc%>cT %D!D*-jJ6/.;gA<:o)MQko(G@%)pdW[E),0=jKNZ[_;0Hb>+>!/3Ph]g[5i6D'?;Arg8E%Ym0e7ZkhG93s5e*:>Xo95?Uq#2Mfr:Y %dpVVBh,j1EPgTBX?T7D[ceua\Nnb,2DZ;<gI:&f!kYJNID9Zu0/,/m0TC3Z.*gjs(H\/]p`+d75\EA&RNQ@jf"+4Wjn*odaSV>Om %hnQdpjM5ce.6[s@hNCNKNg9,0YAd/%6m[^Mdi"N1rX3RD5QBK9-_9Mpdn(R->A&?@(A)DsHJ>I,J*pI#qZj_jQTPnLXokh&k9!#& %C#@M#i[[/l&bgBkdr*E+VRZWEV^K`&^KfYmq[V?=4$)F]/4'TZd6VFBLPN"6+p5n@n5?gO0p(:+[H&Xp:+cg<kq>4`Bn<H,J(TKr %ZI'XC/+;+t^7eGr1s]h5'[rrs?d-E2IXf)p^APsJBCYfjdo"7OaPnStj)#7e)chlLD;unois$3[6"JtiMNO<HY//Un*Wb+3]\&E4 %gePXj&DqEA[rd=f:@XqDnL\Oram*kD'`R'2KDco$3V#s)+j^@Rps8?t$lk6^-\KFT,&gH*hc&OLV8jSKSV(7%,qq&>@EaZJ9`$K@ %:60#G*sS);`7Y"qm$<<WKQN<N%eAgF@d>u&h1JUQOr1b(H@U^mK;T6MJ]Fl?B5g_+c_/S]/q*/JO`)[t-O'$'7Ij[2lq-J*8]S<H %s1U2VI4X<Z)SUY]X(^t$Eo3$,O&G.&dclD0ISa<])*[?CD$U)Yqp":PFa%HHrsCTOTV*7?rX_;B`63Mrol[1+A)*UKWVHG8U!L?, %S#K1Kd#hh!@%8?%O=BJHl'[FN*<Se9>/!aP5gT%2,A.X=q/Y\9'3sG/KGl'WT8,_dr_4hjq\F&Kke4_gORHBhrdI$AkF1G[Vba\q %4IZ(*QuZ=+E`i3d=T!PKrHj%O^&%-#qX(N`os";cYkn+nIWY8;oBNg&lIWr=fB:\&kLK$VeaJ:DDhlk]LXj06pYDl7&$%o*X$7)p %57X`Dn*`bJIm1(84KSNAXT!HNrHV^tWPnPTGf#=/S64*opY:,f:Oug_/?V/-ZNI0J=BteQMlR'uf+.067&pP.pH4NZ@r_=[j2uqF %SS7i7jRO6pXrb)X4)hP?XWG"-%rX]pCd:'u5WrpK4`%pI^Q3EGHsh$W^sYubI,K)?%HrQVk_BU\LCIpP%Cl0,_i1`>(gT3W[1fY` %(u7\@?lh46*]@CG2IIL_i83?)YH'$Wf+*2q7&q\AGFpq,dl?hX)r:[,4-7I5f8Yj^\oHYNq_qe]3mbltf0'Z*a*:lOn@F),CF<:I %n@J;tY8[^Q\'HcNeit67i83?%o=Ar"Fo+\p@0>e'"7H,9Ph3;FYNlG-G+uAHYIe^<5AWSLCd:'u5W`et]tYZOFlU:'p5b6O#)pG( %h#$ssYA4ALf+38r6u*$6GM`D`9]O(W*r+!:#G%7/]gmOo)2eFWVPMn+DHbbNaBu\%HK:FHiCiS1V0_u94acMN,JQ&G?^dlGNRO66 %iCindf>7!M^.9?uUm#=^!.Z^o9cXfUUT=qM?WK6;YFj+?3<&_=3XE578W5_Y]?,R%ZoLpsCC9`[TI6l7A2E`HFO3&jLK].lToS<0 %SlE@dK&*#R3mL+[^WKA_Hlf?;^86n9kJ?$Po.t>EIXQ%BGK\B_>jM"74HR9gLY<8Tq,Io@5+L8DWIQ@sfu\-<T@mR0g:LX"5IB=r %QVLSYPFZ2J[_HXcIa%BIgjVo038%l7H@.ca^MLi4K>;qVa7D#KOM5:4fM?Db<DIEnSD8#hoI".i8Jg8[mOoOH?.%G'm^K"LPNC_u %\F(a=Q]9SB=Z`20D[D=L7Jj()Vj%#$7XS;+p61DQ57.Mug:,SN#;Ld)P@&KXpYj]PE*XqQ&\k/K4U;G1Cqt8V@6_L;@r%tCTCfs` %3q=CKr3?A#J_N]-*r^S0o/,Nl#5-L/Zf(?8TYD?cUP$#E.&nuIL6^Qr5+dhoe8q5K.W8E"[SN.*-h?48q=u8sr/q!VOad'r4+*he %J#&]$Z4t$*')8[hVtE)%=ErjfoG8KjV*&\4JWp]"ns0G@+#]u92W7'ILRi_6:n%uB;\&\DU?0;T]P3GNVsPpgXZ4`!Bn)^<73gu( %KDP1W*(]J$6#W1Ig0oX1@5CZcG1`IsX@qrb62e#*-X&TJd$mLhG1rU<fSgKGSMo]r;nQ5%_85s$DHl$f4j\B$_S*]3hR7j1SA(1_ %+3K?lh0XNYE8-`UktCF9V0;X^]uOb<[kD&IY240o:@!,mP99[8S4c)b\b+cM$.i"NQ?!ELeVD:\p>>[#/;&;AY8[rLneL&sog%PU %?Om#@m4eou!V=B])$F@#6"ZQ*Gcg4lk#hB\P4&Q1Bqd&c1-KU"$KUY[r<YoZ]Z9Z.">OJe88+8UoE2r3b?TPsqFP89LGnKc"S?a5 %Q[e1UI,.!HD8a;,-pZJk=(hQY^!1DmO)t->@sm%*[6cCRdN\u'm'Eh`I3AEqO(s5a;Yka;28RapmqmGWrMMWYrUo1^b"j<g1?R2: %n7^=$8mtF?4FH)Whk#RI=O5lRs#I.E)Sen!F7t$m1Aq)3BATD#?6.Ym]_c<_6Mk.4)t;HA55b;l+SRclX1>\5O7L!/I?Y8kpq\iK %pC8R5CRD)6FO/lnrr'P9UiDksq<;@hCE619Ec:!u_BIss+&:foU\n%#mJS8ZDf[#eB`ifl4o)Ddmumi%JYJR;TcQ712gkZ$3g/?n %D)T]La^jE.E:7Z=hrAX#;=AA_F"P+Mq!Upp,CQ*)%k](jpX)ob)sur8ELV=Q.?'5g+4oT)L4d?W_d=K\jK2"Ef0<Q1rnbc3\%)t? %Yjal]Nq[bt7j"2snTs#)*2-+c//BE;P345(Zb/6fJRPB[(ti!^hT3J,cDKFP4H9&R@=DTMa\m4.BCZ3P?&Oo$nfY=gs6dkF(B0W$ %L4A+"(=N,-o$YI/3,rj:EJ2*i'>&bShW@#IqcrPeb@442E[U<#fjtrU!QlY\L$-QArk"(!f0,\p/=t\PQp>,q%pR@ArFo5d2>hul %E^)<`L.q<bU3D($+"bpNAL<6&$fDp"GTRn"OR1=V9+\Q:PX+(e\bA!X6bH.RK7_7pi?KF;cesB#^Y\_#C"R$T+SLNP20o+DQP4>B %N]P7p%:kO/Nq_SKhoBqEoFFJ>cc=CLZMkP3>j0EX]*kQ"Kqr^H*sCJhSCd0R^:3W@fh$OV)X\%WFhDeHmnN5f]MIX!ZH:Q][)ejk %3bZUoR5o^2-[Hd#-CJhB.<SbmL\5oeGDZVb@0^N*eq0N>l]aX5qe^/)`VtBAo!.rLI[G:U`+:>f);sNh7+U]G)n7GL[5l>5pGTWg %G1rP.It&BpiC82[qRHO*Aum(;IJj%]0(M1L'i4tj2op1;pK^B7bp<RfkHb<]e-=f?++.Yon(c[Qa*OB(%k]4o\b!1hLc#!PGb<pU %'Nt3je'd%+YRc/%dTMC<[kRo<4bSUi+91_BKSP9]J9Z,pPJhZ97!#=8%,o;8Z_'hXPEMq<0Dkm]cp$=,"tjZKW1?>;HQ.hqmiD:P %S#9]OVXd"bkP7)dQgN]pia'R_?;lU;-Vc15Do4b`dZ/(c]a_^MhPn9!\W?Ej"!<VK^5#e`jZ$Tq6^uJikL07GL2Y(BqSST3mmFgu %ETmQ1mj*lT[=La;c4.9B\I\?sSW=(?#>RjY0mcAHO62YUZYp"/`+DrJi<PCDEbj,DX%q!r5rcE_fHodk:B/#PD4HBHs*t7Ed0Ji` %^31C8%@[oKSD@*Ng1P\L`(mg?-TU;FB"+/A[:T(j:P1f8R,-8r?bX;Q[/$DEaA!9g?=nHlQ[=Bm3/J:B2En.#IXaBHD=$Y$&)j5^ %a+(^\cc?%$=(G[LO')%l_ZOA#imY]W:Cl<qNK7]cEh;@6H^d_dH#%KhD&u3YB(7TFpX.O/cbn&gCdd>jm.nS]mqk%Oc0TR_5.;<> %am,u;]!lr%V2tY/SF*Ou5@eF;%m8+V6tYNsKcFs%e\.(UBQnIQ36f.]m[&<:MsbG"6hP/0lfTBV9CC/joIDu7J'cQLZe4*@s23.K %+#h:?p<ssU_[lP.It986Hf>#honLrhQCIiT-$jL"Dn4Q9_[lb7g%j_>llS%o4Yh]3V3?6HR>6+@gE1THs1#'$\"A[e^CN<f5O+8U %GGfn#<Se\N>Aj"MSbQR2YPb/mYTLDjLV<Rns724S7Xt="m,7ets83\C*T'">5Hld/](aORlu/EZ?d5SG!UIOFYaUbGnKYcmO-nhu %BC*I6oV;E?&,Ub24Z5O11iElkr4%63=7j+Br3,,2r.'D!,OB_`^5r%J5@R7>?F'P$5O-&_QlG5#G4%k$kKO%!TD2c>mXHfAj[X,- %hncQ-qt^n;jc:@tp8;g.q@@p_5O@8'Slb?,f&^a5n`f`H`ej`Gr*^\O?[P6Rg$O51nVqt8TXDOV&$CTsp],epaoAuE]C/mppVurn %,k*BefrsDQqLC$X#P>9LBg1OsqM89mHcl'.J];5=&5^%1'e2"-FlX]PL+Vu#$90R^luou>R1`/F9J7a(`fg;!V!=4p),$pQHA %G<L*3Vt_2Yo8Utg.Y%IOJ,.uNpRcp70>ID%^\mMl^O.cA-62FQnEDV++8M73s70g;s5SV/YO';.O-D+#8AFs756'm?s1eNA:Oi<7 %OC*+T0%/OL07AfW;j5gRe8(2)ed_Q*qokd2k='fEUir`?HejdMa"H3kHQU$",eb;h-_a.2FIt*5e)JmV<I+oPXaIhR=3&pqjA9u< %666JlXCM@9(Lk%;<M)b1pYUe'%(*YO-C\N+1b79drU]1]T2M*$4u?olc_VfcIP+V4)LgPGK86mP-4l*&M2r>FqFQ^e^]2d?s5D<( %jl\l+bCBEFhuE\*I/[J*d[pg#o]WFUk4?@fc[WH"^d!>JP<\rN5Q1E@5JI-IJ,@.@9@MdGrh$BKs6K?-*C]fR%5g>jgiAcaS0WZ_ %"6=5D6(=BL9Gt3SBi9bS>;D"S,F;9SG"j4Tc;(R&/XTc+lhB"c5;g^;Y(Bb#42$XR='V6mdqCie=mMh"FcEo,Bk+b-EL[kbT"T^m %>/2U99))J0Y_JZOBkU_SeKHZQf>dpiWr(X*DM6IT<W=do&)?3nqS4$D)L8@Cg.g@3\NZX8rq&Usl'3:WjdC;Goj/h\A5-_tk2[hX %F1euddP`q"6>@Kf$!>jGW:JTtB)hnOb19*9cjLXJ2kK6<:3eBmlrgqRD"_EWq3jB`=iYo:9_8;UWF^q+;LY4?5:+&UZ/oZK(hUT" %`M<`Q6ka9n=Gdf9(Lh8BA)FGuHjHmhO>!W9:&/KkjVIEh<pW;t$Qbkka@bdK<fblEG*)(O1bRk>X7Q)Z;tFF_*6H>b2rZ%UODT:+ %FU7lK?<(2FU@9rRS:l-X4mYtNgS3am,6jW!7o_?oT/GiOLq/i:8%7#2C]N)I`Q+p-Uggr!"mKJQ=OrdshtB(<\,aSdrNd*P;M7#p %?OANa'!Wo1Vm1mIr>>Ik$F=IPf+V3`/K2/<9c)XC6?K8b\ie+9]617@-sV;C1\@^g:D#-IkPZJ7%t1)3ViV+-Ze5#3Q:k7JF\-(` %jShoDek6NejR&\I)R5@sGg3CXqg-BmY1XM"7pF%"*5l%.Di"p?Eu<;\fA.Gi?E2U2@VLB4EIFpX!!#Fl6sEq;XYL7N+E4bFNU@f4 %n@NK9A*fS#8KGa-F5!k$-YKlJQ6J89`@<d%5hB-f3MC<5jA[Vf*nU9jh+Knc[LQ=pgW6?aXKP7S7P)*63.,[`bc]6MAZn++[`*;5 %G@pX@FQ9N&?EhsGM4*Ee3J(4Y=N2h63Hp@FPe7+R.O!tX5BFE(*TY^6+4oFPAEEdLM#i#T+#%"b9c5\VeAj=6j/G!L?('HD_-Lt> %%sfg8jVKr/L;T3J(hd,Wo&]6J`7B0.9<"roY^Q=L*uSpnG7_ALFRaZ7@c8%3$(NgfQW!"CDfrL*]qTB-0nVH$_-DW^/F26R!At@q %26M'608Xc@A"eI@C?D`5:5G%5PK3=(IIIT!7@_YWd]gdQ,%"djf:XCL+SUQ:k.*t.rSYh4jp5E@(M_AOk1/+mRrfrLJ2*%4%@!Iq %\R9(Hll9d,P8pC#8Y&(Q67$EZ[K^SaD<Tnm>!_LhE2M4np($4m#M4$0gXW_oQ7G"0p0F1i8qPJLnShb8.i3!gpI9O?"P";=M1j#s %c$ha/D]aSha)DN;%$K%f%-r(s`EpgHGFfUEF=CQ5qli`GYFVC70a$O:MlbB307sjXWgt/<;n?tAonr^,%VCNe;oCYNL6Q1>ng(L! %?<hDYcO^=6Ec2p`Dmc;+FWK/DRQPR%kH'eTYttBDpQW+86*(d^<HeX%c+Zchh>s5G94kF:E%Q"&)UmHB,Z[*FW[QNGjZITqHa)$m %!C^g)[(bT;&61]B]\UrN7391u*,Aa/KkXg1Z#m;'fJnJ@ganRjVGL6*&7V:2Z0P56rYr583V%<INg5bUjCE2H</-<uo.3ZZ9@dQ8 %<S$L*[N0[o$qkCm8t6T"KUcY)=Es4B_9sl_%'#dL(U&`<fq1LBeb%MWS)6Ghof0!2=+DfJEL1K9YK(IF\huA)&pi9mM,2f2/(7Ee %kA"?:"EgteVLl8^E7h>R`]bDpG7VpbE;eUj2\4p<aM)Z,YC>fQ?(u4X9qfKsl+)PVLn2P<G&;hJppEi4T!Nl#"4PQd`H>YmEAW$; %b-d.MJ9[UdQl8R39J)>ZJP=\(>dFaV[bJdQNUKiOA_F_bnR([V:22.^V#IIED:]lAYlcHAB"QEn_\EM0P;@.brK9!lM3?PH.)]g' %d$/d3&P<bF(@NtOS%=CX+&=WVa+p0.b5OAQ(N$hq[8C;DHG">%]c5WoCu88^_N[#9In9=OPea>t1%BUueu=p"['43f=jMIS7PL\h %7#Ao(pengiWH3!E*Z\6OZIbqpGk=6-7V+@h;/I#u8!SLRHr4I7mC1WbS!nW$8+d21cInD&&_2i=K,5n-2BBH`%@+7UW9%;0(r_F> %=lH.&CSZWM#-G7!2/RW7`qT$"I7haD89&M@)P=Zf]^.W_O=N^e\Z<[`gM7*fiUrV9/LW>P`0sTgP2tEnRL_JU[!>$S.1r1Ef1Y>R %>;0:H74o8Z7#5[3lQ--u0MM;TLtC?j"(ei2(#Y!4j]:>kbGj6qBW7ZR1^gB%.X%p!HGGOAPuNQN-ju3S#4'e(8>>2cI0h@A4.)d? %`Z%A><&'e?gOpu40$gO=As\U,@%df4;^4fV2Ir/Y>0f%dQlbq>PQDq/LPV;9'*[tul%Q.[V<ZNiESYp<?Hf,W7[NF1RZNYF#aS=> %%19;./=+daZk!!cPDLRk,T[CC6qTYj9OL?6F<O&QVi#pl#r<bbX0)j&QU&hGp8."_<k+G<JkRmh3f(5KETqFn&tSLrff4.O-C6(; %*JiufVWFoo>184?L-h-Vjl]EX[=,+-2b%a+m;ZI127Ni+c/g-R:4'\h7&<'4\gTBVl3PYU'rWVc=%l"W)0Tk]BEl<2(K?2SKd+4Y %qA@F'0eB1(,FG>r8R!o+ISoDUjm$RD\^l>#].pP:d(uAk0*OMfL`jR00JlF4GR"eh064qA)+4t.WR!0#PP@0g^U<DKPY-YQSQXRf %*iUus\JLHh&YBDN`OUeAnsp`P7R:8&Zps\8XmFr<D%77p-micmhOoR<hcXm,S-dkbCgsN;CUq#*\A>:e=qnC=eUbnYQZs&rZ("2D %ms[-0NUSt`]Kl4c$W@mHVPtaC=0r@jNRN;g@Qf5MoO+i$HuaC!Y?bq_/U#.f0&;G3Z:^'T[$P2ij!BYOU<>:9RIGQ<dfo@N-\ %rXZd@`s:MqGItLP`t(8FX,.s)_*u-29+8E"M7j0aI<hW3/VMs=fWI`%rt8XUP]lk(mHKeAK@u3QH!4N?:*W,>%5k3.pEHX1b9Yc< %DhAU2O!$'Mk`C^+fl'cHK+`h4E3H^XFq?>#!P.ldR?Dce^'l=*D(%fn-l6m3b[,?L;7J3)Ml[NX39&-''hd.Q3`<8@6sS+_8R3[S %cYT4hp4c`e,L"JpCG,mn]KS8E7L,7s<4q+V3BNKI3/WX#:foB@8%#uLl.BeQ\iMWd>Sk<KeS3::qiY3rZ>q6$;h0`Ccd=7:']h@[ %)8@7;N0.iZ=D9f?f3m*+Z+iHb_NRgnlCbTpEf"J`!]M<f0g6ZiQrom?+%1Z<p3]G+$(dE?H7<me*dpa6^a#61A8<u5?"B-/jcIu* %7e0s</DK,qA"1<iJ2XkCV+8V7q]We?V:T/\!FaQeJ-[;jLm+`1g8<ePU>#sJGbDSY,D2jcOj_b-iref4d6Fnb!VK@DYn<tD>mo?M %h74<&+[/:hCU''G2L"GaR6)jYDrXQW-_3=Z1##1n</Ed?$eE[g:m7N)dJWajj>^:^TGhgGNggO798Pfo3+,fdnr23S<Kg`CZ&f43 %FB]3e5B].e,Z1Bp,N^_o?b0X&Kq>sHF#[TpVH(E!VOrK6HfB]I'Gq6#)PR%cj5O_j.(6#+%#PMjFM<%gT9bTZQ]IPrHh5E>H-8m, %H07YggMX\WidE&$$Ng[[XU*#TG>cN8ej3k['DkCu>>h85fPZD18)5G'e#on999W-I90]o+8]\diqXB#?RQ/>1`Zm9B'[\_e%!3)N %RiI=PPm_(Uk?UK8afr5(7)Y"^mg]3?/U@Ze"LGOW]3[`D(9/VnY,6r=lJVu!^2IjkC!T`84o6702NgR!^WdI9Mb6P<g;TmdJ:`%% %O,gF:fK"W%e\,f1p.a*$<[anUgI-Tc0#A,T^52pSMLc[BfTK:[Gs-GW#URs0NBEF9%P#[6[UG0,%tFnbR9sRZKO-s!LaP6ofJU0$ %2$]49^s4h7UZnc*Chh;pnq1(='@!]H7*m'T\FQt9L%B26.jhP0d5n.1NX'h&L't-mkf(ZSD.F:0ic-?cS`p$l`."HbH0AZYi*0IF %Vhnj![IAG`gOt8qd7hI2R1cdt`=6o*nIhVPCfE,tD;.+n->s9sp@d"PirCd;/FFa06%TtaFC]Z#]Yd0uk14t^RA*&ZSCU,=O<_8i %&P'-4Me3V!MVhdH0&#$;HYIli;,`p%KERq^FrJGqjBFWpXQS=r34KM<r<?pOp'+eMZC4dr"EOo!;=(pIi*_/BDHfFAco/+Mc,RUA %AH]t?RC)$gSQN4s&r@.%&T-'TC.'K@6HnehKV#i/ck<4K[YU:Ap:T%la]d5Fa!$?>r(;!d&7<pHpYt8Uf'm$\(Qh*?>p&tB\iprL %A2k/H^@=AZI+m&7/G)\L@)cF<@F!2sDAPrLO^[O:,tkhP+'J3:j?4q&Rc@)#3qAlOH+O>C#qYrd\Is3bcb'\fnH@1u>*!]@*P>BZ %hq.Uo(r+C+g_ZTq^M))e=buCmpEY=)O'nj4kKf:>A<X7jp8\RmX9L?97BU/.R>W`LCcjjiO0@UYGp'[h3mb*XZTI3->t"J%`5LI. %)k7,M$3M(/egd)Vl(eEq$>Tq?9&0M(qX;$bSI>hIZ5pM;aH/?\)9%PjYg86k'"mu\<#X?l\G-+qOR:bZ5G1dFR`'2_.k&&k$NO3& %+sW8npbE_+L[RLZ3gns?g&c<u2-9.'3Xi`iVe"4SK((65p6[j@?c$[b3pRQ4Q*pLCW,B&XLh/D:CX?Nh]05.gBrK;9f&]i0^n\bK %akD-<As9IV2tM82'h7L=>*9d&V:86"p`"TSS$>9#&V;9MWu$j::183hU;@mYl[hZ^CB\A/G,^M=Kj?dCNXd:3n?"=9$5%=g*f_m< %LV+r9N"*\)G5?&XdHnC&_$XcEE!>)"NJk&jrNR$A0+C%REen[Cg,eeYmt>qn7UJ(a3igJ4pur95gab]0ou\,FH=6).dn/;L+LtcG %`hcuL0h`H]='N`1Fe4-I*YRsblh-EgMoKSS9I#S0pco1(X?OrQg-[C(q@U:[F5r"\I*pfEMl?C*^(j@u^5/a_%%p.]Lij9-lODJO %^8UK:.b11FR!59-#S1)<)rb\SQdU#E+b)?=ocpcq)0*8*7tH/$7BD_k,/`'.TSis/\:\BM^.C-2rC(-")X=,/\f<>3D"N-QGUVQ+ %ViRf6s*7<@o26WH`6p!h.A#BOBN,WKc_K[H1d?\B+*)Q7(2KcU)qGb[IhN3D#>XHa(V)t\:iXoHXC;mM5iVj!_M06=nZ^$#n;O=1 %&KTpB,!CPCd3!ai.RPVaA03'V:eTlY<2;Djfh+.7eK236^J9iN-H)u([Kq'dB6kkLdXTkIiej^fc48:@i==l#kNNU&Ms!(M1jQf/ %p(Ci)S`e0?8Y/GfLH_+\h<*<#-`^dj&e]9CH,ikKChl>6\!GFPC!qSm+QG<$\q_?[_5Qg@`n%R6mUj>XQ-k%E:121m'g!3_Y(<l# %b\cXrMNn&V^E5Q=5QnqiVj7PSP6'b2NhS76:7S[od/,JgC(];Ej[8BbU.p`*#]^(U/E0T[_;T)8CMp@VX,SE;T3LUQAQH&RO>ec5 %[N`#M\<B@<Q8*?A90qtS%)F5@Gi``IXne,CNf1qo\>h^:M>mo<b`O*!MSAr(ep'm,Qsn$'U@T#2M0ST_HKF=igPSBE%<6+)aX,K6 %kc0V5YJqpg;0imbh&b$7-E/X3?URusKV@s*bSF3;(Er;Q+H&aG9;kKA9'^[Fr'c#(%;dt%m@EPYrLl\AW"Eb5&q(H&;3G'Ee&4UO %WocEaB#oD#P-!UQ"[(7Po-1Ts>2*G2D@m%9ioD7p=?6VP9tIn5q(`2/@VV&;Rm1W:(;u#(A!m\>>QMuHd3KQ&er3dI:U14-U_<9F %C=kpZ;TTarB7H@s_,cJOSgt5sP]J.Z^54^gX9X"@rJ6lm77J<@UGBBd.Q7,"1!'2'frnjfSj%j#=fk[2+[O\=a"ql/6FpYqgiYET %022$MW3e4P#dFf<\`V>e2OB)XWPOZTCk__-s8D?Ai<9qS`,Dj9]N:8#K)&GG>9S(k-YDrl$Sdbie>7uqNULa*^^ftg_/0=l/,n?H %[22]l-S/q*3;kAK[0K*1'kgT6N2'6BZ$30<87e?9M52D#PXb@>FV1,=%n,+:PGUkRf?4Gcc!*)]l=Pr/].#Mq=qqAoC,;Z&:Z&uA %C'c!n.a-YJQ>d4"f4[7IRNto[%KVGqO`ZoknOIL?9pr8Qbk[]PE"07!MGF]OnJ<np53$CNkJZ:K&iS;[c(<&=;Y>@o;pain.(MMD %A.D/Z*pTkA2Ff<a!*Z0,[B(4\Oh'E8Z_D^d+hsa--`T:<-NS9Sll`li^g/"O,)o6B*Be-HQ&[q`]_5M5=C6pldWei+7B^Hl>u,E0 %^EpD3MUHpX?U8?2PcgeQB9bM;@4&u.BLQF?7YiOHd%f>$a@EQ#&"!E-I'-mDCD1+^qH5`2%.>["MsOWNW(=W5V7V<lI(;>`e1q"l %#F>>_$4UK>QcFV/SVt#O>f["n,GJIC60ag;KDL:8ro8S)!)=X>)FT\&Xt&:]H6&;f7:ksL0!23,5d#]@Wj9fmfjYO]o7fhR'=d=n %nh6mH[K$Ur%J37m=<4GT3"%Za%9H>[]-,>gXWo7\5_D7baNU+7";)qemZK@O/>*BMU';Q.h]u]eQNg-);Kcpn/VLtN<d&OqgmEqu %!pF*TW$9]Q:C@\oTDoluK6:As;6E$L3,Ks$+T/0EDsY(l.uf")4:G$alGN/DT7VMnE[+TA\*+0%;eD"E^:`*H11E['](:@s+r.Hj %i%Ym"MarTu#aI@_r6,T2GTHn(i7'oFEOXq6j?+W4/oFBYU?pL:[71s'k$!/q\R0e>n_j/OjfYLLJZ6PGn,dVfPDsl=9XIC5@ni\# %rJpin^HT86[D`R0R-*'bJkX7:a<@+cU6#VGZnj11<Y*S06>Z;[WFl,%r&MhW!_@r_$RCPBP+3D=!./i^p5gc+kMSc'#.#<YL'UQX %S7HhC7)V/+&[@MF"'AdEi/D?S=54EN?:)ZF<?aS6StM>'T.9!9N#,S0?Ku(9AhFfB;E^dIKl?>6EElU<am;P9s.D$j/'6YmKR@hQ %7uTBnSIcaRF7>]p!t70"1L,a$Z^<Fo5EFa'&$<d,A#0bJ*#d[]+ZF`bde$e/@O>IoNRc1j8UR#"qo)b"lZK0IDSG94\L[bm(35'K %HN>#1Al##+G',Oe\&=cj"81G&*P$a@FZG5On%=5\j(-I_7tPE/-6XQq2[=]_i)?O!S:cUqMMnC,.>%pK3kYuQ2a+\jZl?g&/')i! %GN,2B&]^UZ+iT7\mm-fn%[(h]DJku2oB0G-*/LSe;j-/H0d)4nA.+4q;`h(+-2XV`NbnJ/<Ui(c'[ZtS5XfKn1B55On"7=TXcq,u %&TEQ%j&]-`51S-!_?pRMDQT)SnA(842<Z_L]/HNHdG-$9O.bd_`4i,ME9@R,]u=G5$7I";AWl\)5#GE3g+qqm!#R9A9N)jk5G;q" %$&6Db5?@\lp3[iLY_I>eR4&(Me.US?9$Em3@\H6u@:8&1C<U?Aa^9ZoXDRKLr&HbEQt).tZPOp4-;$,eOB7T\?kNMLqEjNW\Pb)< %&TR>pfY^>7R"=d5A=;.;URN3)+jVCkW^RH%'X4j\7i1$<@8WB--@H<VKG7faXY@7]nC)1fqWN)l6Lri2&!`>D9%0<kW6*UH^6/M9 %KtP^*8NV5MPFZI:U!aS&N\t_(:6b>.a`!/(BaN>n%Iadjfa@C],u;[-dF:9!'j?bT"LGUA1HpZl,m;n6'3YuckZkF480Z$gCcGl$ %]Z/<f&C>t[OdI<@&QT&.<Z?b9e.si6k*_FD,*Gm5)^?cn=@CXh_?r^G%r2OjbZZS9n:g5R>coPd2':Ie#fdD:8JYc&ME<@_m'e,Z %[TXpeqi*%W3VeD"3heITGF!I+DMRSf6HnOqQ!pS36H4I8oBT])R>1S^Cm4<R:,HE/>NE+WYD0CgcVb0,&p`i,#=ScZPeN_R[ttHC %4t21.H6mjb"Jlq7Kk/ggZ:PTsU_PE/>5R+BReLWO=OSYte]DAMF5@=^)`/BL0t1fTA%r^P,g=MS.:q+;SP5dhoIM5-HG,f>/&YaS %'j?d-BeRe,(NJp9@/q9M[^0J,V<Fq_:*,h?WS*&k3;]Hf/&^k]D/l8KfE2ZCeEhQL%%.a/S^,+Yp-kaID%e%91:gRbK\9j3:/cW< %q:6<9"WCtDq=o5-db46P&:sLHo&Sh!HW8G28B\`OKYKfW"a2RT!`:#m[U]m6kDsTsQ#FhGI_b9;r'I^.Op`.1>=-OC5/%'pI]=G9 %KfAYi>Q(#S2JFkoE'S*A67*%K;Wp`J<@!qZ>7;`_U(VtEELkMn+=,'7I+%9KcpKcrSd2KjT8,Mga2`cUKmUUEPDdJ0K@>?a=Xn/N %NW9@4[YlY%F]]ffH"CAJ?Wu3q5l6WE9$s?"Jji$F))u;DAQTAULdL`m6`CZT4UN,D'Z45jZN%oRm\%Kh0G\$fkCM#K0MRTF#&T#m %!6^EME.il"#],JF2_g;:>/%m.[%+?u\KR:h3`ou@onrJ'ek7?4XB_8ja-X/UGXe#*#JHj`gApnQ&6L\"9@_5\'iS656H2q,PXIbE %)FcAhlONY\WBo,Y&q^AeASISQLQEoTe)rd9iQ3ra^S`e2Xsi7;!IiT4!F^M7jR:X]@SL.#entdhUNhkRDs]7"#i6Tir_"c(8?h-E %Q5m;pfh&cg%d$<gNXPpif`\(!5"AuYJDJKU%p8O=cjFD]oO&[CFR)\lfeJr,NskA8Tu&4RK=q<&*=o*.bQ4\"Fb?#<Y#LVCRF=Lp %4Br*G#T?U7fVEli1HJ(8Djl[PTNLJl70g_o=s$8M8;^l=bW][ZgG0ms)?^"K^9Bm6+sPgl5K:ZFn3>60qX&SL>Y9<n1;gYEI6E91 %36^08'6kEI+->Jb6JXs3?:fmnX*^qH!+R55TR3bR-uN_b#*STn*R%agP!TI#'EV8?EE\TQ:mE+];e,[:K?.9`k(bgq5sNTb%!ZrM %.g3b+"0Whk$d__'h`r_?g3n^0]Y).hL>*As"Z1`HaBoe)qE0A5^?Ue\3m]FflL7\f=Do"\#"$ZKh^9+!r.WDaX.C!n+[_kgf`:UL %p(.SkcoZd8f`CKqe'VUb@qLp$-m+&:hIa!h(+^Fm4/PM1+Dh8B\ctGus2MQ^%\F-Yos)j&*B\e#o@?.^%F=pV86\9RT!gG2Of-p6 %PJI6S9DBf[iosQR@#5)O5*i?gY5-'r"4g-8@,DQP-1S,-$H1Ya.h8gT]ULS<(;Tcm@DI/O+^S7e5^!a[Q3.f`5V*.[C_aZZ%+6YV %pJ><nm]T-dQ*bXQi9F]<*hEWo?-.?]@F=`cY14n)P=(^PJ4(U,SpU"&Z\N8m*D74u\YrKNPp&iXE"eQj!QCl#8*hAo*?HZ4hu\Xe %6$D58?45=5YXQk=lYMK\mi2/t(o`\,?k\5R[$a3N(r<Z4QA34q_=#E(*M@\%\:]V,@ml".@tc)3b13TN@*-4H\"jBk0_&(nJI6f% %_#kS'^1S)OaQP,Y?VB\5TP9RXJtsg>beUaRO@m@'UUa8rnmW/*Z7((t3\^2`S1W&=icWANH+;lmRA&6d_UYV/;AL0!T/+%381W4m %4$Z'G>B)M8ap\m3_2JY;UC]%OM%jtXW\`Ek\U3ggo%T:^`NY<ALb`]1(1VbZR#T&nLpR\D=UiIco8Q<&1)\HY="J2V\k'9sr.<G% %MX>#WOfhCK5b[JX&"`6V&BU%^5ml*O&dX?u_-"+K^(r&*>hML+A?^c=;%Y!\p,X?-i@oNg-?`$"b/9reL;i#:310T/0B3+\G45PB %jKp1DD;(XI<hS*d*dUNSb+b$,.J2BZls$P(beHb<'QCL>+*N_Sh*U-U@rrMl7"dmM]h<0T*h3O]i1j`*aO$"c2beW>Sh%bma,5)% %&qSrjLi!0OHcj5pAo)cK;^r9UVq[B.ail)/[oZV33#BgV-02R:$kQI],?f1,'0_[e^WG#b-Ir47=bR,6OY(GMMsC5rQX%f%ll]8j %=lLQ*@Kaep&X&;Y(im(:L)nLZpiT]U'f-ECin7n+>Wo;T>L4ZXd&:^6*2qu0DRRE:"A%q<o.l$hkM+sWbPD9M#iHL5%5,.FAFPKH %`BK^=5d&=.TSAe7:>%PVi^&0A$TuZHIRYt+_`fkcr9_E&XYtOb"^,_UFNL+W)]-H0/0#mE"q5S!&idtC0&?9e@)9!#)CORqZ#=dS %qLt*AVdAFPHNtFR[3]]01;,tA'H.&Qkb&uNbGAX<0-G&gVi`>iqm5l20de8A:Hq51X_OdI9&SA/`">Q+%F%*<)`W2EZ8>gbT$sJ. %<b6k>h.N)k:8URUA6sg(F%P^AF3dg2!>uXlj[`u>8q"%rq7!s4;tFlRlSLpV"/[=gA<44^%84rE6'=Z_(m,\LafKRMQ_B$^ei7s) %NFq=i`]@e7;"$(+=;j(iHaE+aQ\f,_U(,\0N:@;<-*lDe3oU<)K(2U\mCCUXObIK"%P<_Q<X2=Y'*g(i`6FG@Jn\X_>eZkBMctBD %_4EP'T6"1",*P*O=>bm>XeqF<L,irX&Ws*l+I##T"lRM%;QgpVP(#DoWG0"O&0NjGZJ#T$0"<%FGYa=(*\*1eeo-'`l-<*i9@]C; %a;mY3JZi?E!4Rof0c*U25J+$%[BmP>dV4NU0]`&4VWDJaI5JGhdIBhtq<GA?8EmNK%?iYkl.$Fu0.ICPE^Qi/ImO;N,#=/Nm-t*, %EEh)4S7^RpXp^GK,S2;D\TZ:7K4Y_r6Qb/=nTq^DXS?*c>Qi9JT+HE'?5"TL6jk-U\eHf?1?arpH-:4NZFPK(4,+*Z2@b0TG+c([ %f!bE_klQkD[\q=n;Ms,J=t(nI5\BTFErct]a<B(GTW)fo)RC"](^*:2M7CG_*?Ht_Wed$k"s::=^q,)`AgsF+4":63Kd$5N+TL9i %/E;2d[!#4f9P20>M@Pq7efdcpVCB;iQY%AEY+8CkHJ>NRSZ=O%;GmGkiW'luOS_1H8$rZh!-&Y_]NU,ZWWaiqX-NE(&s-)"J\j@e %e%)9'_r-rZeL7:X2\pCIEDIbIE#KlY#H!c=oE$KrZGoM]N60u)`,H#+(6?+2aWo6b>cA.QZ$rJ0P*u7%j!$-".6&lY@eek:']NHi %*K?p^di14rF5qKV_Jo6s>0*2^;r,lfH*$Er_Fl"R6$l$sI&)B;D#(U_Rj)AckNO#SS3ZZs4si1X!e2n,:Fr>i+Dmg/-24N5N7#Li %*]-U5#U#ie:VThqd=i)O)5'Hq.rImNTmMYOgtZ6F\C1JZ1a_sT!cJhbISqE"FW`D0g]L`,UaVJ2(JTHI7&"#Cn/p.fb%mb<KJ+I/ %_<4-N]h)Ob$&p\cRCWPXh8D97H(biX*f*NQ;96mthNEqF_CSO*eBm'XCFkmeNm)TJQ$.Ni,!E>V%(=EG.Q%mi_LD(]"1>MnmbnbZ %5Z^*n54<:1+MYQ\=j%^9>(%AI7PjXI.1AK`^O_JrQ!(3kd:oQMcm]]Q/L"B*F\%H]V/BhYQc+)#(F/'/[&8BC\I]Y,-soco[LCOr %V!Q]P\Ou8/86ZJe*XOP\N/?s+4(+FcG1@p-5KLnn`L&2UN:/nka8e]N(>s)KQ2X9LE!YS22knpY$ESP.;#CU;8gR*kjM+&d,V>t+ %@^_&rhg6\7Ks78flcX*!9B&pQi)-h$=F!a1-D0.DO!DTZY*7sUD3GS.la4a"pj`\YS_%*b0!f*[qRh?k9JB!c&gBXEol_L#F#S?S %Ysug9>*`7"T4f@"=_sD..>\.ccqM.]6D_pZWHPhX'F7B]4bnq8b&H)a@d"`$gacr8Lu]LhR59Q@m%NKrU!eJsY]e#6MJb7bTqmfP %7f\s.HE7%ZE5fL]gs_TLJA0qK##lNnKi[sWX!pJneZHS`_/$+qF+U+icWRa-m3e#2)GtU9+hS3a(Cbn7]inut*DjioK2lO<SgZC2 %]i%$c/$Vc`VKE^&m,D_2\455?8+dTmLec-F@r;&$<s3i9D7/r%*#5k^</7p>QVD!VeB4).`'e;NUK8obF`frRH!G?GK`sV/o$GqP %K`dG.b25-J\O,):KjF:Yp!D7U)\Yr>ZOX:!l6u?9@WD:@!QD\bEm;'/fEW0caFo%H"#TAO;7bF)9]$92/=!JM>EJ+_q[!"d*3L^j %Jdak&(Y8qir7OoA>6@\4<<HU%C4lcjUZ)3)IP2BudR\/ll:D['C%.jqccUO:X$@RXO;W>U<N#+'GY,+:>\TfkK1rIOKC#]DlP;8P %<ge6d'2[UZ,MWC[/j-luqgf3WU4FAG&01Ir#6kcC8fJG^AL13soiE4N!T-&k3E&<]P_cipk$X<,XlIV8pj`Kg9>BD0=,4(OEj`34 %9$#8I;!>-OoktZiBil@,TEenZ\i+W:(suKV6]@%/(?^X/"kc^+7/:/2aNoBH+<eo:CNGi)P!)@;7'c5C=c&6DC,9A+[4<:8hmR!M %Sp&c.p%ENFoVX2$8T!eXQs>rm$AmSU)8WTenPUtf(6LN-!T/N[fOT8A$#LDj`O,A$Yi0%f__"l>'ubjY4!T'?!Oo%-@-M//-ij2U %R`.%WatEdgn9P1-==,`dl5n\Y:WW)%';H+\<aO;e4qSq^.9hY"!X)i$a7J"J&H\P$5,eZ@7U\P%U;l+,B?/Q9rF6Rad.9"p$q_-K %?hdGA.'VJ)`S6RnYh^].'^H1d3IU"rY40ZR$jQr96!FeF6jLu3/fa#!0aNbVkg_ZrUQeSC5l!.CTpr,VG4nsa]#Q6CP?qCtTdON0 %7WTbg0m-\h%ZE-(S[cDVN\FWsec#QO?M4<(!sY??$i;e*5g;+nXaVLW%1fMhXqKF++#$)u2%)4U)i-4*L2^i^"H%i=Q1DW%QO;do %U\DC95lF/"^21J;kjt1HAn9i@Y[<>)Kk?f?Lk:GMq6k#Tl/FN8l[mka`IRBu+2LAM_"RD8_'si#O=jL6\ki$P=6OJI%T(L`&4/"V %<9AEaf%&"T>3j:QqV60.$ujEI4o3PV"&u/5AI$0ZOIc@l&)1D.5h!Q+;kJDmr`h<#`p//%or-D5J7uR,_pb.9)AY,B*KO)e`(YjW %DF%jSe8tL(_uiRKiZ^9bjIrQHXAR`N)bMI+]'%=ZE->4`p91'I6Q-&;NSA9T'_u3U_3:s_B\tsC\l_jq&Q^!,XcDtA)<B2`B/p6- %OuK_i6m8M.N0YU(ZH4VJ]R\<B.s/&-%9Qg;,:X:qVU//8hs(?MD?M97AP>c'o)d0R)_CJI<3Ph/oOo1Tpp_MZBe.HpTAosi!,.13 %\;4n.M[5$^<o(d><%?5k>#VA3ok+Mo>Q@I?V9,R,Mb9;`?$*'X3!"\X8MuH"nj)b9YDbTmG;h5!N;'K%GZ\5uF]JCbetp(V@pGDc %=9HNsk[4)L:b#qA(8o6l'N)0(^:!Y>*h2-YJ7Z\.fXoHm9Y:[5gJXG<8AV4Q&Z4/i':]o"k=OW!S;%G!8`>fK'Oi05$MDe\i='E\ %l9Vs0&?Waels\\p7QOd"GA">S8FM'8:R.e0/OD[)4XI9^,P%#ha?40)FmMIU=q^-o1.41*,_LFoA7g0&duIg;68j9uF.6JVZ^>Bg %2CLs\."JsS!'?k)0?LRFAsB9sk2i;U%N:D+U$D*Qh\e[S.rd>"ZrR,i?hX_W.:ts^lHO3o(Le`W>i=\S!ee+'Za9N^H<tuFr^8BP %Y]I`hB=??^R9649&O@m7OrP$_'2Bn7I,sVCcDO$bkO!/k5S10`?2@%-Y(spYd2E0!6K:_LdM9(TM;&T(Ye.-5A>p6I&U[M%,K@<\ %Fnb:h-'Rd!HmgQ$EeHVs;ZbNljTU>a>pYP.\VQJT1MqGQ>t0C"D"^)^X;O<q/N:_+7%%141*LujUU3*Ig`J%F5]3)omD3s$PC'^' %)$4lcEF8POW%2Db?_]2@LdWY"Tpa5*i?`jONBWU:\0UDo=7TO2$fPWi08;qY6b+)PSM/5*KK*#j2s@,N%tYB1X]<*@-2Z8:(P\tj %dP27HF4%$)0ma9P@CfoJ]n2&b!>F,dj*/JK#D`M%IWhr10rZ)]!e2'f\2>)6[m^eN;YT`QlA>,t!t8n&.j)CMMCCqCmQ3O3N.*sJ %QP#Gl>V7-g:Q-'W1;!`"4.q\(*SG=U(jgG-3A%(0SB6"Ebi%t=/!MZhV#9TT0g\8P=Z5_'(QsW$KmKr0AX)rk`-j^YP3KO!ETs9O %a:]!N5S&m5OmLT.P8)Y(BpGZY%_*cjF_"-6_R%G)EJ,oH7$n+?VmT.q:/h^!46j_`$Ck!u?<0%5jH_Q.92(nX.'bmFam!VB-Oq8& %Hq&l=Om[.^<+RRdl"$,N!tPjFVQFLd-ul:T+AQNPV\;8S8gO"i))4*?&gVVkin&G<8l>iC&S(HIi4s"TJ;iR7rCMYE,$N1Q)J(Sa %GKR]JZ(<eP_T1sqR:?"I(kEDbMT%Q:N$npr[LnO]=]@`Enns;tEU!K9:p_DrLekCX$:cae5b7(rL1J*:-J+kLMaFOn2`9%A"_?P/ %p-QkkLeFaAJM^ub?kq?HPOoIX@745`(WK8C:gP0-#BWp@4inb-(EGkgB/RraZe^*MRocc:Sms&eFOp%\#oc9GK#n)WhAH>RorsC' %E6I6UB/4ZmQ_6f3o5I=Ec8>+npIH<-[sL/>PK+5GqW@YVs,P(C*t'2Q(=+/K2A?\1.?pD2J,nY7SRPbg_VPS<$uIfBgi%Ij)n?JG %e`HOkKAD*+j(C03.;=;L:57BO;9!P?3Z=>r-2L/(:M4g,r]lH[ncbqe,[4dPgV+<tV,6@u1ms8:Z#+4D)Y23l=`l-\D2LV`]_feT %bgt8JPKS:cMDZi"H-tp>U1lA'JYPc]hGKZeWc8])D">qN#KXnfpiG")bH!I@GF9X:eDiun'V2\&BW:K\o(9`/k&dLWd0,7m$![k& %q'.9Ar?]Y1:F?%C;mU63`5/fdQ$Rj3a&^<>.2A:a4F'^7C(_n(8q^-E3oP.dX__.qI(@B,J.D30MD@UnP)sH%edh:T;K/m$4$moY %!%grs,G=2,T^\_S*;/AiV_Zi"C3sd.9K,nni7g="/_lQ-JAe8aVcBri'&d&q4J9N3aE%Qj%O)fFY<4C8R'+Wjq2D7EP_,5INV8fN %VNs^&Tre#)^p4V:]1b\*1"C=0,:?JPAZFhE6F'W-kH$^:,!\He\lrEO(eM1pK*>C8bXK$Z(_0fD9]\&ISqEZDJC!Eo.hjh80ebCf %`.(RC0H.RFEaTMDKnZ%I#Q^Ob1jR+T,YP[AcKr"(dP)0A`%P%sJMN;R*0-O#r>co#($aA[n2.Qoe#;^OXE]>#+!%[^Njf2Rp#psM %E]\4Mj0FX0rBO\.ZJ6';.c(SeZHNkaGehhoj&*gQ-*lXd639j&CV5oqaEP40I>M)Umnt1ALa;OM(>%p]!CMdgMWt`5#S>,#HCi%p %V$WR+ccI_op3R"*7u$TW>WpP*a=^mteJ)IFcH[uF1IW,8nfBq7RJ=4I-n0J)@?csc9:g&th30O*fWgT&jY%aOFG_&Bcb\,io"AFN %_6f:5(P7U!>'i]MV2WKU!P!:.&OC)aD*C!9LTE#11@V3F^>('sT\SYPD&oCdY0!FWKI%1,1chCkp5F#4(Aas63r:rhJ\[Nb4cT0D %82qX!S]1pG8p^s21_Zd6"*0P>K/"WS6%Ua*L`^=*=FmYiiB-FYNeZQ"jK)sTI'K1M4?([R@nA^JEP]O;l0F'?a7MO:4Qq00a;7c` %JsO&C*a"bdf;m1<`0ZRsekqtDmJOeD!(Iuo>IkAuQn$9E-tZ=h3X3!,ggL/1V3=@`3bCQ,X!4<3-!;Qlch(p/#8#2(a(s?d<7*,4 %8lj)HCn)IsF7Wfnn:_l>1c;b_UuGu@BMB`c)K+*^ODTN_+'6XAlZMHF"kS\?=1Ai%.N&tP0":oS,%]Xbi"pGRPsq*#A8e^]Wd.NJ %nm_;+N.4K.5qJrm%GW`"<Jp1##qXUQo4f$`/f0&-e3u0\Rm[^fH8_q/2m$i<Zme'HTsRuo^24_'%#\2)HA8T2%Q]e5<HT;*B1"ZI %!o$ab+e7e?PWPZ=_uc;#H_a4)ZEF.Fb="'H$\-L6g5)O\+po3/YSb.r459UC^]hjp0Mub1^+Hoc7QpeV)]9g?]m.@08HI''"b[/Q %`b+O@2=RaYQM90AkQQb.!838$>MKqX*$p@L5a!(K_e,0DikX,2?L_b7.SM'ENHL+"ghn+jKG86tV8XXJRF?t7]s&(o_LADZ46Bog %bJpN4$Bt3&YRPdE*;rSD=d>DZOYQ2H]5<qT0NQ?&`?g@oR&6q-J>=]%9,2rdXj)`#l]Y-O;U&,/dE<;rOK4?\QBYHq/;@pOW&ZFi %UkPQ/_qA!b%%]nb?OeJ'd1MNe-PMgKd)Z'4\$As?aPE3dMc?OE(4Q&62VQ%g[,4J\e)V=-N]rB"2B#k.BnP6'r6Ij%CeG0(Seh=d %3hYsC[stV-LCcNV*NPohi8qQa("YcM<MtlbeJ=@Ec4?F/2$NOEd1$^NCXN7C'%=jV!0$EWXNa*oPNU6744u&NBo"S&?g9'jNC+@: %.HPL4T?(u6O!13'3.,["DFsZKIId`@og/_2QN/WY3C>L,"><-1V@/B'"UjTE.!>oL%@ju]jKZOOZ&RDoJkM$\,km2u>1tU,f<:BZ %$lGP*r1QmZLk(jQhj&>Hoq_-'FZ*h'g3'l48sP'Sb<M8K/_j$-9gChKmq;BU-ca?Pg%j1$mU`T7.4Q;BO<*4.\u.#nKu/ir>_j`G %DfROk_2+%A$#2L"!XK!NN)dPLHeG@3Tq>9h(_-oRTt-45RSV-gB^TXDVU7"Ug<.ml(R5MU2"d:S)gkDTGo'%A,oE*LN4<+O8-r0^ %&)(>H#3RLc+2'0"glXO]hj17[\bRh:DZ%bN\P6bhYMR*;7b\6bcUW9VR80^Y7Rl+%[\XH[9*n:iZi\fi2_K*2k!7ES'f_(=rK%SO %JieNkbd8+QfsW]IG<n8T4cJI@7C.Z"dU(I/XHsDDD&i`mb0.>GY^\a21NJ-&H:0QQ+ub-QQF()'mQ^b?cAW*Br<ILrl;IMBB1!"2 %d0FX2c/lIhI0mQrg858$W!m.0Vlc2_b[<+/,7\(4lumseHas^HqCUHc-0QA/;!>"3PUce'7?XEb;*BT*D"(n#NlucL]:TQo*OC)P %nd7E2DTL/KR<[SO5ikbd5j'rGeEYS@%/h?B:trqWj^FG/RjkqKac!Ve_()_LC\$sFRCsZ&@a5ZHC=)@9f>F$48Xl'NS__GeO?hTk %<PMSU_nBeQLDa<P8V.GG\5<+Q_B^$n_XB"+>_n5;Gk)r3W*n*\-U;f!>HXY3#@?&AKF"DWVMXSrI3JMfQSMr\Q9LWs)fW<4\>M&5 %fi(_Hr#M49T-nkd^r]e\/-RP=\j/([Tt,KH+$ua8[GMTT&#)7ANd2CC6,K>h<Xqc*[94`tZdT$G'cg8``/BJ0?`\cVB)quiZrfu$ %@<pDo;+S:>_o8@@-+Y-GD_5Z,O^#FHYJa-`XUYQE3<b8r(Pt6$[ua<1]9sn]nZA(_W..Ll`J\W1J>g[%(oa%\fdK6V%k!QEZ.On" %Tuo>YK#G],Vte+LF#-!1=bk6O7CSj"h$Bor6gcqIs.2l\BQS-TAqG(1c@2OB.^4QEeQH=#JaN^qmOSWs:]\K-I`UtdQ:G?l/0[d_ %.olTnL<Os4*rN)%Y^:@8'GrLE@C*Ei&s!R6BKbdk]VEN%7!BNN6=_Rjpk`?6=T3;#Rgo_M$RS8sNi/GF+>F@hC0FGfF<AMV\!YuH %'FZ,VMa>KPB*s!:`o8Da_4`8LG0ao*2($!PWD(,_V+TE_"3.S[7B1qFn(<fR1C:uri4E+H+qi.g^f$+>fI+j5(u@l4*LUf^]bg9R %J=O+n!JNYh!TR[c3[-g[K,<7iqMZ+h(Qa65!CWIl'J6c%)m2E+Y7F]FG/TfL"*u%dF4Q/+WJZ_8/qjT0bcUO-ZEeqB-i:+<MZ'6! %HZH!ri<XYE5cR<>UWnGF1X2dp.t5if[]nCpAh`&\`M\H[Sg2(Sb@K204r%C[E&aJDg1Hg9\*sK%1+ui"FQX2&mIXe+f\sU)pKL/j %X@GUYeF55oYRXHN9,@<h>E^K2&KFpX>Ne@ajQ3fOg$jIBb'N]FA>$\f9OqUW@Rsf[?p:s[d=BXKl\c:l`h\$sNJN:1gYg^.MJd.8 %V=&5J#9VZ;;d-iFHHKmkY[k:RQJj@4"ZKYpi48pp.Nt+ib#?Gp7I_?9AI0DA5lm`3>iLQ!M6bWo\/AT\l;&:Cnk53qQ`_L1_1?q/ %XGb1CKhsb:QU360!34*<GSWW($gYl5&VVgr.SrD^_"t=%/PnK2G/3K'Mu"35Y;_4%S*4)a)(NOVm@;]2$Aj`+&7A]Q-LcVl98RsS %"VN=BW5ptUQ_55Zjl58>kknZTNAb"pQc*aWDNdRc&A_A\eYn%<??qGAn\>C'im')?d1*:gm!Z1N9Ng&'>7FL?Pk>N:h5&!OeP6@M %)(dDK`t!E&`rNMl2(5Z4)R("&5hirs0f?Brf@r?Qb/PS=2\T_#"@.X&3a4K]0-0/4]\!*nBnO82="?9MC&D>T1Cf>01):6HNU[+t %.oLDW&YfiK;S%d&g!@TUe8#T_<sFS9eZqW=Pi84TmIQN,?b60N\"<TCmNjU2grc?,qV\0r]P$VO8Yo=4@LP4Rp):Au[F!!LC@I>V %21unAPW(j1CJ"<HH=.40<L;g^+AYOtk3T++f;+J\(WN5'Wi.q:Qlr&M>n6eli6jKNib`&fD%2"#W7Y$eD/&KDOCU5[M5XOr/j!0q %,'EdX"),[(-**KIITbLN-?[j#>d7I1lb;j(B8!*_Faqi'\iRnRFLR2/[CE!Fq"nF!9<EPdin?L[Ub\_CqQn42a^\o%Qo[?7[VdC; %C>Y3$o]aibFgWQ>I^:_5P'\H/Z<q@#eWG\A+uN3%^Yi&.259Bh'Qjt/:U127M%@m'W`e)D$:DV/"3P_hh^6;,40\&\[<o11CA@<c %S0!Q>E#p5*YtkjaH^.cR8G;')7]Ub\Bt3.[Qr_JXNe"_`l?)?!0br^Ph9o/-4OUQiX`?'e+gjT-*P+p)XMkMJ,(!Pdi6UE*=%aS; %="IOq3f"iC;;<kPOuo89C[9F7A.Deg>6bRNWfF53*T2BJNsBNZd`3UFpFJnj`Y/_,gTh&L'Sf_+C!.T)pSc449O'1EE*Di1&.t`G %3i2IL(Q=*1!P"p`3YMMJb(_R&)H%d-.*D+4[d:s6X1qH4Cb_7Ya`=KpiESEdRsD%Ui4/mjRM>1bbF)dh9qhb]S:tkA[Sh.H8*=-q %'p?AJi\inr#U.4=_&t5+Hn<[VhM0d*W^1fe2EeCJd^a\OkV'!+9&$3`BY-g+Co"2/P?$1>o[)YjU@>1=0^/n!d0#V4Of`p+*'3Rk %MsRg9@bG!*;sO_l39]<;SMtLeKS&R,MQ0jXKO>F5.cboo()3LL/XT:%@u^kpr#Q%kJhr:C[oM6]VhNpTk,s);!^#tt?<8aE!#33U %f2G=<"erhjmI%#KAokmU[8M+@$/j8*8AK-]Qj4pQOBoaTbaHnCgVUN^+,rf\d'm[d>4LtV#b[q7a?Be+?e)%\kQK4l++7.pBI5aQ %J4t`?FTam6"&H=qf\;[8=?"EoWoui"TZs@;cp1Vi()g%,g;418.d:p^"!0[8+bdZ9*nnt^C7MVI15rKM_Y#h,doVo>,@#D9+>,8$ %8KXP$B_*3Y)'`@Qk,+:+_$[Io?ujMO-j%Kk<PNCJf'ZN@'W[sZ)[La&M@`cWl3brEI([^0D,P>KB)mK6**GRE7_!JK>iJkn@2l86 %.M4:k[KT-9A^H+f1Lio4V\7rH#`C_`g98!1Tr_?Wp_7g16+9-Z6*hh^HlqlY?-C"Pf?=<]*XsW-fFA_7q(".gaXZ+%)6JPT\mV;L %8:XZJZ"c12,HCOODQNecQ*k=,^Ij=8`Rs;YhGSb'a]s6E90U#DZtp[JpCnF8:bJTslT#rm=C>Ju;K+0L)Sl=hOe0S\Gi`-/O@uhU %Bd7O2mHAm9R:oIg0dsRW]7McGHji;5"BNPs)<V06Y5$c\:;eV[f$/pPf4%0(q%D]SLWKs0CI19<[7@Ic]M]o(.&Cd%&1U5*6H"L7 %[uc7T2qTj2(?Aj+YB...Wrgl#ATco;*N4S[iahKZai;6U^Cf8eUbuKdZ+8q5r/AgUi)3!XZX"8e+QQc;pRg`G2$'M\]En?t&U2Ga %rJ&$<"=U$X61/G4@an![k_dt[5W2#bBUrY!OJ=i_`9qkfd<Qnq]VfI?7\i7gHLSE7Fe4juJ4E#2_O[B'8U\.&\YInR,AP95LXnb7 %E6;Q@:V7:'Pm82!TFV9)_cHFic%pBk0PD\?@d8V;iuY5:H#fthT?pYbJ`7Dor48LFir.#XM#&N.JJ=L`jYMP873t-h3$q6V;5\XN %Zj=NCN`=Xb4%5Xc3ZZ%ALaFY]`'@K2NLI#5c%XmTSC0.^?smho5OlGqD;TB&G[&qgK/V17j\l^8kEasW+)>2.%W&jZIo=nWBQ^AY %3P=(,8H+kj6$M[LjMV[Ii;Ti<eC3oe--^ETaWmcr1hS5<SD%#.7e`gpGq"q@2NPUr^tN-9Y,%qO+hZd\1pa+P9G<0UHcEfo\)(K1 %$45>-m'Z3,.+:Kfq"pG8bt*1QbH<m"J,a'[5hc`P)Qr^J=*t">is"`*@]>#]Dp(*rgp>CoKKWCC6&Y/2QkgfU`&4]LnibFLH-F.i %DS^uZ)ZTqa>&ZFsFH^qW*Z@&`#0dWkSXH(R,t'^'V[$La[/^sa0[u_'>KF#s:CgC'do=/=FfA\Z9\):'`#&"*SZru-8Z?a9DF\0< %\S2QUJ"GD@I3oCmh-K%COGdV:VZ]?u^>@RGhJriE'_4M7P`%8QVYC3JR<%AVX-Mt>1ekt6C,H,g"$-&>D:7!g"o4VS9_FK%V+l-E %%Q?[KKo53$EMH^*!2W"/Ic%U!or;/7>(d9QmU25sq9_G/=KNXNM[eeKW$VhBWQC[<Ck/TDaB(#XMODo\8.baX7]Xc.&fEoK@Yj!l %5S/$ABG;8@Ci^Fakh9LXSLuBW33U_pNbKZ8DEJDV4B+Fk!L`G,e!&;#-llF^70Q7-ekA'Pj_:lKQ,iangs<RKd8qnhm3"[*e45WA %!:EokUpM[<Wl449Md>J*7I$C2N:dZVa[F'&(rr\rE$B_3W#X<<+@LE>p@@Jia"Y1,#f?8:jm]jtI<jO:jnI:eq1;pQRP8d8]WnDC %Y@824$bH65VUrBm[gHk[KqH"CK/dSi`2BiPB\M^[<6[&$cV3-AFh=Jai9fU#>S_!2Z$qDHg+Zr$YaIF0]"Bm;)GrP&n&E54e_k^i %VM30KOSqIS*+,Za0*YO_'%`,4lhB^ekN**^K6>TKP#\M4??63Kcu)uFf%Us9)dUd#=[e.E4ahFSNTeo!&Qo,^#NQ$]a\8R;A='0] %P.YCtdc"9JP/Q1K?+lVB7AY8!d)+ZupQ1Ns0l1p]?S.aHi7iZ.r;9d_8^-RiQ:q-Jo%Gk;70sRJfk\dN_KD99&1$>PTi$mjb=AB9 %`UWgi?NZ4Ys'.UI>&b*e]=fo%+>]O_],auThHP0(!s4^N_aa:CYaH.Tp0D4+en$;Ld*!YDc$Om#LWXcs;+t#Vf<Ai,6=p\SlCQR4 %JWOP[(p0^\i.^c^4ME@uV"),L2!qQBeST__6N`Nl6!lp6%jm%rhVH_QS39PB&lr$[^hpnb#s>+['oT/+Ss-(5:Of#_8\sM$3hZ&\ %>+Jk%Nn!'@4ahWeAkjo5d\k^!PoPQKOj\5c1nfLn)_c`C.?>09>!G_Hc@<Va9CBb:VX\\M'g]E@eTDQJL_obr%/5>b)NT.a[sh]8 %fe*X%:(*'JJ<cT6X9'g2asb@4nRQ>e)U2B(>`0EZZlhfG7GpdWm(qY7?):K(ZseP'InrT4E"@__eXpVhoK5nL/>WJnU&kmp1Ll^< %iTBAe9kc:*]E*;`&riVRH^`.5`.)>5N%5?#@NlJb_(l4%qLO:h4>;^r_kC3F9QM(Y5mD\dLU/`aSH8)@-*+G4.NcQ`'TH*RS=5-G %4G@-TR^(S&S*]2Q<'p;ZjJ>G[Vi"5*W.F.V?1>5=jseX2<G[s;H(2Ug+ngi<hkPeB->,nP^V>In_pVB]k&4[3<G1p!4N#s1k(V!1 %"\N0sQ*QmS?g@nu"Hj'u7R@BGP!!d`EVm2f*>51j3RFM\^4O"^J*84&);`)uBIKfWd\dX2]I_RMAY:$/\qY.6on!^<+ESsE'tPC9 %_8>d`?9)*0hb<Ss55kUT$M8m`Am=Lb+Ya@I_3O.8Lm4#o%tr2-kseE<=tleW7upA$Q>o?sZOUhQC@sPo3!(M#(\[1SDP=YZURR_D %$8U[f2)Z+29bAMiC"5Oc7-_@^Fn`l?;'E0H)`Oue(C+X;7$cD=:duTMP@@LJrfU$4?mSSjPpbJp[iUEP#6JAUNk@9!,2VKL`u811 %Z4rLCXdl%e60p9;SMHErLrfK2VS<"f%]GO"`ter20u?Ru9I1BR)OF1m>_%o!"b/-IdHmf*P<e%m,X1MK;C5r]'?_UOO.^mGM\Z:J %>D\KN&`0JQhFB<\PHP*JAuSu?gQea8#S5"=3sHB6/W!BWYSuo?5`OUN5WD.'*D_=,:s4;o)G47)b8%u>l==^Yn"nI"f2'fOI)UqR %%H-V`Q'fXe5=%KaQ45Eu>J[^SIkorTOmCtE$Ru>e1!TX/2:[o<L1e6Ca5#0*OgZ0sk7u5n)C..?@oB2>r+//m:#7N2k:O(-5q$as %;U-2HltZKBo,3SE%M6Wl&S102=K,$ST]lCPl(TAU8f9nW98KYdV7@B0B&V)W]P&oghVj`(]hjOEXq'<Wl*$D5Po^i<TRHo%],Fuf %T._%`(:0uX,SVu&XNrT[B%IKU$A+dZeg[+GUQ;q#Dl4BQ%?E3=I^gB$H>Wn6gSF'd9J:-%oG-l8NUd'XIAO*Ahco)rL!A'^l%`=W %<:5_&RYB*HR(Ot8]8b%e*u9A$`Is7._pJ>fFL-f&%GK5kiY=)!a<^Ou%dN(A".=%,-5M*5n;(//]k<$g[bUH?ah)u;"sesfD[R@r %q%0#U!-NI!jlZ1=X:d\JUogZ.d6Z2XHArpVT_/qP=O&rg7Urj-=s4*nimhA%R3tE66Yba_[^N7;cofiU&@VYSe@.4*K$sr'f*lZd %$W+`C'a4Ad5kn@)<TQFA4fXoX@YJY:'%5R!/]?j]!t40j7Y@!Q&;?2X>CG%HL&]qa*a9qPMhU>h&C%XDE-V+F!bpo!86VCch6WT* %.I4o1XFoe:5raCTTt+SfENkk]D2-(X5Eh^qUA=f5GIH=aTcQB5&Z.6Ehacj&.kGsloFcRo;cs??(rXI.PS.H'Z:G-qM$(\]0IgIp %\2E+"T]jA,73'L$26@AHJY3nH@!S-E]`a[-U0h<FB<:Ocko3i+(f^cnC%dpX'A3gh]E3bDD=9(g`Su`*IIeQfn84(9W</Sh&fU\0 %,,7D<%VLZp.h+\>c#BGl(]sOHj4Z$S.)%J]N;Gq4>T&TNo8O'e:j;F:@u@i;POD?lH8fgpL'&qTP]Lgd'(J:)'`G9"'9&ur;hlQU %5Om,1$O\jR6jaR80NTbmfpA0h-F]O=>1E3%O6TmaOMlf3Bd.90Ga-i@NbQCU9V+2><B1@jS(pKmLu`#EUu%k8Ff^5^@:jRhUZS\' %?%`kBY,XYU&2#eDMKI%WU%$7<3R",P5^in:1&>HhI.#XKq1LkE?DZ7Pb%KaJ/FR+#%R)hrC\'?#'+,9TL>PEq+Ak'=Qu1r-<n3_^ %ZpJ(OX2=bX3ga?L_H04#W*@9nV0Y"70=%H6hb;X$jGe<?@#En&:5-2#5:5]Km;Te$X"XT?WD![.o+=s5Gd"hAKk3>fOPo9[n)cCd %!&f6qcF2a6]B*9DJ!,B]2M.u=15A?6,=2-YQs%mV_o?S#F#"R8&GnmKdIOOp?rO0l#DP.lRQ7k;3B)^"D67f&*Tg`_O0o,'J:,Em %ec^]W<9d2V'bj`6:_-k:3$LJ#l$)K%)J#+T:sJ(+OEcIMQoIYGLle61\p4YNH^+m6ZnNG-&^tLXNW!T1Q?>JB/K!>s'%KtQ1W:N% %L_bn,`@9;"?n<59ji-U/<X&j4,Iuk<GG4sVM9:^$bHeQ,MG[c"^&BSKZH((g($VCdb/+o??ZJ;!<Yd".P</m+UkUiEC9B*\A*qb, %^DAYiRq,s`0:s:%0mfL\aHVfEe/dF<*h%`pcRTT7i&!7U'/Ph/KoO0LVA-IJ[F$LRL^\0Gk1Y!]/RMLo_:,3ZZ"blN*XJmZ9%gBN %M\K=C:/4;m0(2TE71EK*)F_G0ghIgB#B]BtW<nZf'8\]<%/gI'f#XVVaAVZq7h,O042R8L(6Z>MkH[&Tg!(P%(h=5\ZIT9i-W^$- %KSpB]Xt\4Oa^ULin63p!*TC.J!k?J(QN@7ge^Q;hW+qo_1/d4l]b8P$/kiT:DU@Q5>[19p^k@*C@GN!mk=N0!`o`)G]A.pX"1-[" %=^aoIn7H#+,D:K@ilP*9+[D4B<u/WUDtp4u;X%LV5Ys5L4sLs,Z][rJ[6$&T//P1s8j"jrB[t_naCsure*3(/4Mcs`'mR2_^H$_$ %!c@4R,"j'l+?$\4f+o-dgbMA1@T#+f:V0;nMKR%P\!5du@,fgN-5.poQT^X%;^(uS!&B^I/AcMC@M]0A&Co%CWc0IJDKRY["(shO %I$*ZAk%J^'Lp^Y6Fq-&[5o5VCC*P6pNWipT,>Ab2ej^XhiY@=#)sE=.cKHg7s%;$?B5CBK&-=35Q4"XT+.:&h]VDi*'[5+K$[$c: %3Q4_@;+pc3R+ZFS:.*$:Ndc/LCF;,ZB#USiaXT]f3O>ldOu&)uW4B#uBKa8ll@h28mA\Ddqdhn`dR8+dp"V_NP!q:,1\Q5Y$IN^X %dk@B2D/s4hJ]g&uLt1;/XE*g3fuYFtNua;ok*6oB2[buq%0h.S=PcH-#*T9E_pjs(@jt,6<8KoLaGIN*`@`/o:d)*cS6K:;%7dgJ %Z5*4-"PV?5jg%jGgaDPU'i)B%drjd2"U`[!\4d!]J2!"[G;pr<gtYiNF6o2;m[-$B3J*%&\kc9:D7d9rH>Q3E@gRL'F8)i]!1AFS %YKZ5HSqIr_V3.V5F`rPV)KGrsZgEg//ra_k$*YlK)H:hO[ZW'pc"_NC'!aHhP@o']atmPN'2pa86mn?<,?-d&RT"IDKF#r!#9s+` %Yh?9g_FsS+VV/Em(Vi!;`9;.b7c2RQQdacKC37IMWa`a49HTn94WIsVnn0k#j-A[/lO>:2M$nEB&\WeH>'FgV>kFPms#tb,Q0;rj %9OO^;4c`7Q3W@iAImP_q'J\febX,oYg:lh^"&mR&"1:'$Pn5g0Y%#C=na)4_f8@ego;btKr+Q-X8SAoXQkjX[%ZH7Gh#MpbL()O/ %0orAoQGmS7K!j*r!Ql+Q6sks]Hbh*m;-KPW;4LrYc<f'bZOCTEfV6*<Cir.`((@j@;%87bD#Tb@3Fk0S_EJJujc?pe>GZsT.GhrX %VS-#&-jm(g7-$7&\7Z$pE%1sr<"A_+ob`\9STn@kYJ*!;k7gWd%.@F@QCQ"Uq*M@j^T'c`[Fq<jHdOhEbIMQZLhhd!,^LcI'@N(" %UI64-+rsI4[Ro`/`4?s>\OP:"QD.cmVSjCS_J=uC2/`SIm&T>8X@f-9VY>S`f<gEsQ7H*#/hC/N[h0LkO.:o6\+j9s?A#Ug7#Jr5 %Lju!5(EN8\@;O:0`:FP$B-fscW\kDs.b@6J@ksu#&uhZ-<i<1%hX'1fcNAOa&MquM-rV,UWk3dbgfBQ!0SL*^1@ZW%<]JG=&H#p, %%S8Y9S&n(S]Xppq%\1e]o^t=#Njp!pQ)X[&aXMc_`ZN`G5Vmhe/?V+`:Tg$IpOUW/aQp`E(&\kX7PCHQP1RuPKYh&/kg,g$hAKjn %ll(>JpG^1&:=d8^/omUo%2T5*a91);>QUk:RU<Ukldc;&+3kOOXW>^o9U*C9751Hg)\TT@Obselqd2_=l12N1MjkE=44'-ZqnL"r %8q?8=\`0u)1B\ojV%ei#]VQ(Zoso#/:\7cgA2SpE6"YXpZ:IP31.P_&q%Pt1AVW!iWrl>7)@PC"Gm%@_8IP8h4iroGH6@d$A0]Br %_m@?rFd1?h+r<u*/<2dus!jR_jq\Q,ms+oj**Mk5rbZ16+'j_LcOL4>WX&87'mB\ccDVF\F5J$BGAsTs3")o4'1`m1">AW#;/g&K %>0r;l$j=t8_fddq6Z$K.QP.)ORMcp[iYrTelcf*@)L.'bG:1;7IE()!O+uEUSmB(eJbrKIZKoQd`J.ohkjbTdrJA_dc!^+-4<1t# %+j"E2VVc6)=0P)6OE1#70j#VN^ek4U9=5VW[WA3?p=NW'2jd'rh>=s%).YDK)cpILlk7;?A3W\G%kB8e\d@%%NBJl\GljMh;oc'a %;`BZ,P*/j3b#MglH&\P3c:SS*!7#R5SCqb?$]=U61L<@:Me,NhEoqnFj1LYM'%[uEj4R3*bIJ:*`Dee#_KE[J1+dh"K<*Ee8r\c8 %:3EW)Z1bLbl;mD\RTB,gFPtU1n,M_nOs<[ZWZH4K=OCogNdXN(ZtO>`@#I#M@uKQ7[bZQf+`-Bq:Cds+UO!jZO%S.q?a7`"k":9j %<`'!e,PF[Q^fjQ_YaG;gh/+ga)-H:-\]K#g1Hpk-$YBa)LmQ<*la[ji.'sCo)U9Y;U2BWWGYjPN.;%TbY95X>dLjKqG[B?ekQR@e %_jL_'T>14N$Ik25-W+@>l<#?7Kcai_Fku@XY8]MZ1S<PS(:KVOR,iMolg!@gk",[=M3&NPC@2+t2d*YOflVm,ga\mumqR*t+%=a' %.<u6:Vht?f(9$6=pD02U\)^k)r<b86E0AE6VJ2$H67^#ZLkG-Zaa<P7J?R6U3+HV5j;K^m;J]f22):e75rNn@X"dJ:VS%9bZFjc/ %*2Oo<:N6!tiQ8.p8lK7^b*S2tS9IKHdr;d<V*mjRFYPSFB9a<eN/uQPifgAhmQoD:/nBlpSg?s?h$\>?)>O+aVNi^FZX?L6htrot %LZ#R?.a(blasmf#J*rZX2sf38k*d`d[M6iWd24@6=9)W1,SH!eruCU*3ejJu&07^C+N=B6[X%d7=(:-n-$'s=Jt1)Fg>S`S@I$\D %f+e;Zg^/2:3<m>!enM"@09`FWP#UGkEYdl5<f/#5]Gg0Dc@*J&P^n'DJ2k^,6q#Rb66ER6o;HJ/U6c]O6c-nP_DS)PJPu*>@Ss41 %]oj8J\'k,KD=GCc:n@ls&&+V?McnP`oTq*^mhOn`Lkbm\!V.e[(Y?;$&A;CQnkeEd*S2]bTNt85TXg:7a_++=7bS3Xe`^G\#ktXS %o`_[jgsr''d$fMCfA(Y;R9i=7C\1fIfd]T4E<D]5>NRsYb(hs>^L@0OO%e[Z0d7:E&-67RdOUKh]H8<#1;&:L%.9TWk#21fi3S[p %`0Z$Lo'@BrSd5T*-kQQX8103$`;0MZS0#8_Z=d`dAT6)_PZ;Ck=eGNek$fqp8nDEB7`l*MHC5HZ2VZC2B9GU:8pqKdK@,9LdDoga %+MG[L&AC;hJZc;RZ7qEKj60FD_.2&KCFaF_E&rX%+_CttF,::W2tC\O_9Ds!,V=m`IDrU&8SVI_(Z$muN?jnJWEtK+TTE_jWNT`9 %0`g=t'\%<EO-RM31![5qNsJU.C1=9:%)?4G6,<0!Hl<Rm6LnMu>_ZM8iY"U8O?sKt28KH6</\e%7`/C6d0iQ+Q:5f:68Vc6G0kh& %j%T1iJEq>31#*0bTn'TTl8+6<gMg`!ffn(>@>L(:E7F,1W9>NM"m%'#2Qiio_0L#kq$Q_.SSe^-/ePJKeME@O2B2a_`oIlZU]W9R %Y.ck,EV9&e"Ef#+J$p>I08^'g!.g0G=sL0O%>CKr6>_auNsl?rqusM/^tXi>k*7MENZBfD*c`+fB3*]3epe?\i4..c4&K]Y,#=]" %[9QcuIPq0B!mn;?Y],gXW2ll_Wb5:^C2Cf\S-gDe(91F0)c&GqhoS7@"mcD$lN2[1M)*=lC8d\PF4U$nSl!7Mac:50!I^IUnu&=. %,-NF;(E"lPc$o#gNQ>=h+@833YW>GS3a-8mXqi:8j<31"bcJG:k?\XAi3Nkelrb0Uq"FV$^62iLTf-)bj=0]k5tq'P@B8uXqVnup %H)Wg6o!QrRJ*W*7pp[b29I_f]c0MtMV"n:l5R_L<.l^.oMl0mLffm%UFgNO['kBL+d1]:Y$mrPJR0k,)M7j_mnFB!n((,">p`]nM %?L#q/dt1KXeK3ug'pu0><s@gNiBlha8s]Yi[XTS<deKi==f.h+k]&\&5O<;_@sZNnA=^hun_+5op3@S.=!'*jQ8iR`c''n@H\D^# %:_tB>\PmeMbIJ;/^l_V@#E&/d;M;I=HO5f;C4_8!%+#&rY^e8N7Vt#D;&-X81<6e$.eVM!i^4dbrU'2`I9a;.!t<]"2:\W_b0GX7 %>;0G#H9$2$=gqiFE-RJ_/'74DEBs*#e]&hiE*LH6H,FH9b:&Y3B\+q9F>2CaD$90&f3/$>C:r)ZQ3D^#1;VRC+ZT[JR&%OOW?/;$ %<rFXM?R8pLV-H@j5`P3hLrM>D-8]X]mrjVLhO3.dg7hZf!e.Ea,&JB!_Ft:nI.MZJE+0*3]UQ8EI&;FmGKQ;!$OP*;-YK]AY"@pk %aI83i/HC>S-kfcHD`+A!7JgQXOccr`#.7XDh=7q;6#g"2<n9eGr+<mlXdXJr"?k3!"pJIAQE?TQM#^[0*pf,7prVM,pIc$\%SV;: %[hb&+Jd4:[+83_4p/^D!l_n7Uk`K3$=`Y-FB&0b+@0ftVYH(Bj@mN\.a\/IFDB$&e+TG/>Qee&DOdNAJf7Ko7jlNo0#Tq1K+.HIR %H?M6cl!@f*5etM0gM>3cS$JBFHbOt[18DBXXl/`Q,Zg9ON"-qC68$AV,]j\5Vq`La1N*/o%oVQ9S+fDGT^tk,\cJ'@fN0:[ju/7k %n;-bN%Z>e_eU,6!pZ2+EBo>N1*ZS94<E2*^nqM,5`N-k-<O"Y#\k^1E-]CT&Ytd>q7($PYP:%@RQJuFt21=mqGA#UiV1Zki3*$&W %SWpO4R!55.:Ys%N!Ii?.j($LX!]*un`@K$:(d[+(pE6\0>(KD':0-hmDV.%ShnIo5p';)DH$8pb-Gssb+tJ!+3mMHd2N4mE->965 %=-/hE]hD^K3q?aca3f]I'mJ9PT)2e8A<(Z``1AkFZ+G=-oM[\<DQ@G2TGoL-.kW/=J:.@O='u!^6?=,?J4lp_a4MFQWe0fPicWTE %ReLeCLMcuAZn<\Z$/c/UOM^c>FoV*1j0crR-&ms4))^m553cb!He81+@i[Lb:KerEo8!u@.3KO`dTGk=2KtQ4=6_:t0Jrd6$4+hq %bkj?MC[aFf8r!Dn\c,DW9]d(#(n4!;5H*MX>"P5]*K3dQ!G5@NF[<(XiCS43OkZ^[&X'c7.TYB@#F)aO2`lR%#--RR"(VTN3dReB %#9/@Qj&dhQ>HK&V:5uR'>2AHEgAi#-DVP)?Y&H<qD-[luhqFSqASNb[/*gZ@8B,t)"f6Du^MT7PXGVonD.$&(&DN11W=CM?kVNZ2 %D8oA^#Fn(9].ipt8#FrT*tJBJa$TfCVQ%4KC<=,oc!f#,\l5VF40pTm!-(AjFUtkgc$p7&]DR-Fph^"A-II7sdh8*V.2R>m&Kb=. %=QI!)ZmE)dTi4J-,AkgAi9(ji0*4mmS5k6Faqu*,YkR4sa+:?)HU:HqY)Bs_2+fgVZR]88P,fFOJ*V2\*(OsLO"%iP_SGHb3X@@D %@BCUu!HKCb.Zs(^8>)Qc.U(XtnC<5]\--;-\p5UTNVNu^dMb=V0+"c"@VU,9T)pB=VBB-jH:=XLcX;^/KCM0cJ4#f1m71/??U8"m %joRNj]G!d/1PM.<@U5YFbu;*i9MHH/FQS]&N^Ys[=%aHGa6lB&M$>e],e68q5.1X9LA'n/>Hf\B%H-D,YfDc@A=;!-`=r>)@A)ho %o`9bW3"-X4XhLN^[S.['!P'HDGQG(N)BiXlP(ck<qu[_k/WoM/&AS29f:W&?5Q0KZJ,'Viqo:qur?)(:J,N/ms+`i:e*hd!`'=-s %J,Yel4co^)YCH;Y^OQ3[J,HCtcPQCuqTYr-q+n3os6[RLqW%7@pc7R<rq:hHJ,/!*5Q'CTl/+[kci<P,s7q.uci5CFs%5eaK=:aF %1(D\O;5\Q38GJ]CqQ/[(cP6?.n#jD)O&,KFq"\:Eb6X,,(:LDH-Ia56VJ@%dJi(8t\;s;L*0u:dDI'\=,/nNe[I0+4qWH0L$"5YO %6,f3l!<fK7:U"fMJrhVlO_Fu.A:-C]Jo$&__=YZcdttejSEj_HX;Qr!Mg$a<UnQ*/Oq;[Ekb&I%@gMmVAH4rfL7f?E6Z;1?*_)i( %VrBJS&2(p>B"h]NWP`\c8sA1Yo([mXH2PGD^$B\aa)s$2"FQ"#is:"P`[L9lo9V;>*'P=QKW+:u'.6O'5R]&M$Q.5-N%"Pe:T_gL %1)jNW1r^ffNG1IF%G+QjB2rNG>aKAWMlKPt.\n@':6d!*U80UQ%$e!FemHZ2N#7I/^'\U]=D1\*@SsG8JeJe\P=SjYP`IS_Yg<C+ %;NnQ[!9;0Za2N\M#h?a.TT,l2j%Eb46hB#rUABO0SR@Xh"b3Z6BZq-+/tK"%-*UHT3K:A&m&l%V4D_fIcRl@kOUk2UI,iN&oVbgB %f<[WD;59nC7bUMbaU/\&lIfR5;QYVW[8<'"iJchs:rOsF^9KV]R\B7e.3JH'A^QqrQLDc/W9[^q\bHI]9!XH&Ks,XW@qj=sEA8r+ %@W1Je]Z,VWrgLd61#KqZ_dSX3^`kVKY=1O#AOeR!rWk0ML-nhSc+L9]2-,f0j7_rV1"B3K;/@9qFAP+Ki=5np4B6Al+O/hT`2P18 %cs,_e9Z$'\g``&?Q!YJQGQV3ih@p=eWlOF1[Nc.LZLM][XYgIo<_E',ok+<IC*mT?*cbKrR*^1IKB53#,DOSkr5ustN:6]fArLI< %-cRrkE7*`q>0&2#;ZBXAIHWt5O(Ir&aZW^06:iBX]SnA4OKf4mK6&r3X[/V#d_n&s\lIDq_%XuDZY:EE%:hU4C)l5[@uS5?itjA2 %_Eld'Y/]:sh-"O>enU@!bTNs9)5*ZT$!S&5FYd0l..3*umn[rQTgL^f*Z>"\HtaG2Ro7XLK1B9$m8(+[!;Ir[It9IuXl>Y*lU*u] %,TK8Pg'm18VRF-<]LlIe,:c%IP>1f.">DV],T,$t$M%_I1(=OI9)r8(R+9RIA06@B+r%*AN'N6j\=-!!Z-Q8(>ot\^lNL02nQo6C %2J-2LoI4!ff0B7eb>F7-"J\Q*mN^r*,_"$*.sNYB16mJs$CVC"^>VA1d<U^;n',WAGURp!!arn'`3K#br7#VS9_H5'JSW(MUV%^1 %W_SOp5-$K,MIs9,O>f]mknX7>M2S8:BK1k+PO7RU(Qo:87;ll`WIaK;4r!G(fCf\`TMe8tpH4"JHY:_NDp4[%e7MCo3TRlQ9rr4s %._H)-Lu2,V)dhieXqLH?hQ6b4l1fEbJYT0Nna3cff;hgT%rI)m^HKZ;WJ/]-WGtH1C&nefo3UY[[n_#<X_F\c'?D)IMQSXo,nGFe %*&q37W>a[*$0rGDB=+S:-"7)(2CVkfWt4^><4V_<TG9t-5u?ZG^Bo*L<i)3O]YD>i?%`<j+Sil`%sF=3lf.Tc$WC?F2$(q&cFo$q %%:cZ$(qFclhK?a1e$i)RkJ/?":hm5EU4(U?D$BV,18f"VgUH4LD,"iJ&t_IRc*SL9QbC;SdtB^fQ$&oP5HP:[fbc)qQe;K-CTd]g %cYT,lg&gh8eqmF=nW,Q/#`%PU_O\+*!;I>ZCGF%Ff/:K5n^8ro7)I?+;BiRq$YK-EON+Q8O)U04R5ARXK:$7r=!fWPDf2?+;]+tN %(t)$f`klIKZQS4/=9c0CZr^Qr[P9#6+EXP-mKLIS'DUe88ju7+U219qYi%L',TQ_,Md]KJfL/jA1c$@if6GH!CsAJhZ@etu9qH,t %chHBgCK0_VquS'\,ZY[`9'Q,,SYb./W%KJulrR-tBjMc@9@5R9/'E6Q.Rm?<_oK3/#O@)\[l/ro".lBi+;R!u_*L=qB&aLS>;\IX %4e6n6h.'..3!:C!_sO,($Gsr]@gY>:YTT)_W%mF)P+AfD.(01C#grH5B(R(-rleOj_'dd&oe17kZ"+VR**]ET^fM1g=rad;AVW0e %[Qk].#S#,_I+&kiPuNWn6UsdALd/$So-kIgJ)(O,'e\u7ZULGg#g^A(jC7WA*n8T_!`(E/0IF7('W7hd6GtS&XI'(g-aFdcJgsYj %ioU7c&cH7ARU2KYOOtj5HT":7W0)CVc^*tJmXCNE2:qmT2I2DYp^#CbXCr&md1ZX>P\;YU0nY45T4;=+@i<m=amkE1.E[u7TB(\k %Ni#1.Lur+lmgr7?c-?E430da-hb1E_R_9NLhcj?(KJ#1$7;)op#X):[?P=W>9]CX@:`0r<fp`"[&*BASpF^?2RrR)HP3o_t,*l-o %@I8hBldL3cliX>_12RY58Ue(\3;lra.4%ph_;9!Z$_jaaIUiY@a+VR33hB^^o5&D0oErXHoBX\Ajhn0KgGSXijSa<-1MsYMd^F%, %.rWGE],[D.=XF77iK`>#V]l]\#l+O)aN]BG^?$6J>uI[S\e\MB0O>>rYg$WQpEhS+`fUrq%acb^`HoU-YlmS?3g_g58We3UWfg#a %R3?=PEBb(=@CV[85$IXtjh"W>!NcTpK4[O;S3?q!BCVo4-,E9,@/aK:EtX?W:B"fn^]JLH07?"Am31(V&H.@<'mRhT98atMH`aUh %Q8NR"Nsj9.J\Op1VhfT*k4':1J=BY&h?O'C5b*NoN+R\%3gojcd.(m_(6as2&>*P;osU(E!./;S_R.e1OgR'fWS)")>3ZmHhiLrr %!pJ#(Y1r.liRI"'_Wgn>^ss+.9K$gTE[S]&)\#*VOpsBNna`,KN.s)5e9o%Ub_ime)Ag26DZSZFAUi;CCBc[)?Md^@YT^:T^K%51 %A2Y.;p:,aFV5J.ZigRn4`pdAmb0W6fa43PN32?3=+Eg2P2c$Br2gYLEVW3$2!nO/*+,V0qBg>KR/b<)8(FkKFL97IY(_U3aObk\u %s.Lg;(VU#,+gn28KGB6PQ)Bep!Cm>(m)].I!=R?X0d[RQlL0#fb4Z_gQL@]PE@F6+UB#!)!QL<H,FSd*KI9-)K^`($T-pL8[82t9 %\.V_T9+"X-@\hOo7hnLs==G7..5&5K7?KoN.f'-P+%ZV;jj<k.'l-CT4Xt-u$>9q4BEu!YM@LpHMCihd4BX8QA,WAB$Pc`(l_7A@ %%YA^*n;eIG4?>N>cesfMo0NCl\Ju4m`u-T1'[0#>7efG>LPVb8Q<Z8LEK-`U#RR7<jSNQ+bo,HAeLAV->mA[p@pR@,f8aQ5k\21@ %Xgk5$=l#Kd6f#()8u:ZD9b?ic"XZ2Fp`lu5Xpp]GlM.Vn#%LI^NpT=:c6oBQQh75[J08EFBOj7U^`*nei#p]c=.td3B>OJX_#PBG %a^Frm=i$ropTFGn":1/1'$!s;&]_OmBNW'1J-\dh!FH@GNo6,a.Pr9"Y\D?Zk5h%I3g*EGR=R\V*1+5ZCu`qAP#)UlErl8[IR8dn %#JG<\S(1A3mFN,%Xl]qRR,R3>RA62V=k@Pd6%]ff3bp4g"p@2#,VEBIY+Ro:,YSC+f;]d8CBf"q$Bc&cC:/C6Y$bL"rL`Dq@1pVd %*1:IT^;0fs#&)hqeaFBPREXq)hUl$OL-.j$m3>'S#?i;=LgD#[Trdp3,dco&kJQi@C//qh_mO!tTcef2#%MDe):c=I";"pYTiTP4 %PL(Hk_#SQh0&Hpa!jo!Z:@M7nD;D?P8=I9"XU/BI_%'*sU%'-J*UhtKBXq/rk%.b3&%o7bN#Y]S,SEj#4BoT3ClO<+G#B(tRT4sK %#i<Db-TF%!.,o;>V>q=/;MUDp"b8S!rM2qCT!r[@<`(%:C,**%W&0F=a$Pc^V&;^JDZV&K$&4YidR`?N`%FFD6.Q`B;:%</$%pdP %O>(-no<f=b7cbA[;<?1\WkUnTO@PlRe(aI4lrMh$RnV\=W"]l2i:U+BBWWN;0eS3AbPfJ20K!?N.A12*r]-j3ra8I8adN\n[V8Bm %iD;)HR>et#&Jjic#1p$/Ms94i"Vh&rLtTR\U=E^gWjnC2CP&gPDLBS&GbP`LKu1QNIFC2kXYQ#;-\Z[JjhFMZ&]A9eml#\O'(K48 %FJ])#.7UI2Q+n?R79//7PTDa;@T@Jc75g^?U5.B1ZssqaG9k*GBRN^RBX;k?!j#X.@uY'L(Jnp0k_gIH3E3o^]:-1lm[4M]:'N3u %/8,t;?%>W8K9H-NS>+s/[;bY!SkA#f/CZq-[amhloNgA)+NVW7BNG(<+Z+.n/5E/s?Rl[)N,/6sOlaut1A35Sg?JTi[EGE4H=a3> %J`U#h5d]gF/3SkVJ<7f,5^bI(;.R>.Y-](bRfFVp%ZLNU2aXrJLRCCd;:cdtEC:Y-a/B<B0o:=q8li9ZWd?Q2RuP35-OX?p!LmR' %b+[$$dN5)s<fZ%'0f'sEQ"SAKXtYIEd*gQ/TH%[-I#K]#B`q;$<MbTiR0H;TU.d7!Y'7mbU7fmb"]dAYBeLmP`<lW_"qm>l]??`n %4U1N__`2VMnshN_L-/K+#XU4*.E"ca-)n3RFbb-YTGeX]Q"4p1FGV4$_'C,,e>EgC@alAPSd\RC:/cC)<Dium[abLUV/#t8BTj:T %:Bc4na&8/lV3q'@mHJ@npqjC9G/'ITg"aV1Z;fL>WC<bfqtMiF(KYKd7qV)9b/>b=CL"8)<DAaShi*C*:gShKDT,<#X?A]A]gT\T %dZq58Che'KarRE7qN>19376bW4*Q"+i9f`oI`s$j_@/L5<\HdQ+To5ZY\XGX7`++f)=nCSkUZ?R$_n.\nRK[AOTpE0EFPYBG]=Kr %bYttoY$4A\R=Wes&mllgfpWHe%gi]MHb;:IaCFg_o_r)#d"].H;Gg5dbc4eZ4sWOJ3=Bd>V:Vk3%%rV';[GEg)e!t7i0Cf-+,1_" %"\H5VnGod2R%W@<_bD3q7p?rB^Q1cmP/VX>Zj0Uk@`f+Y%j4lC/Xe%a!r=CP4f\2S_'6(_%PRnBZpYh_#AZWp=C2*ZU;8<X&cd;) %K\)\>@4UA-o.6*mr5)`$FB%AV.hO&.Ca%rWVP$U;>a6[l-4?LIYn!`pI=uUm$C2Y\2n`E'WXJ'0P]:Hg"Z$hU!>%bFeY4C%'2i2r %Qn5mI1;8YX*0k?&TeuP7kgF:dRT`0Q^HXQY2Ya$(n!O+<eQY!q%(8KF#)Sfm1fI5^ZDiD_duVbdp+cV*`\-aP`+138#^%JXKfodB %F&79gP(g&EhRYbj^$GQnAnhb`-PGC5RdgU5'/O1A>_>'SB*t=B)WI23?s9BBX!+UDGt)m.:IJE`))s/XHAZ<b^LU#WKpp^p3)q#t %9Hhi$>`2X]V47(?,ipDjPd%\'R4F+Oqjf#,/B)D#,4QP^EqE:=>f2GMIUEXJD`T8*EkAL*=H[u$O<G`pSO!S!KN%lA='(T>%l>1O %_ktNV/&pXAm497&7:gW(?5?[6hu^i\p!B.`@tk?sQaPu?:f>XP$'?(J;nHTR=%iV-r+K&J@;e<r/,]HK11qX_!(sKFME"UUo+aUq %0H8O'5Y`2GV:)bPhF2[#b+`4#D1-7sqaLgHV<\-8)O['W`S'`)+Yc.cI.Ic04)1Z-U4"iF.,9=kf-[UlV/B%?5YiX=Q0MDDql9U^ %Mmhn-VEm!lS$j%jAh]0\^e;5PdVMf5F(gOp&'kG6$,,#48a%`P'^Eq*8Z40R0g)gRn!9-8#q&s&*C;#XC$/m_Ei79%B7%Pp5%7jG %KQ-gO6u,8J(?Z$Nm=MuNN_>A?F2ndg;?RVp`=BolU1X&0#+G\[)emc[St4CA&[iCB-5]jkSuS0qD,$*QhWd0cd*5;&DY1OINFmeT %cHn4k<"JN,V[t5+a,5Uo\CSXYf?,iBE)7M>``j47F3[%#i>e_RZU9t'[(*$X@7?#I;Na`A=G@$E=s>:FK7GHjeDdjc,G#<,@;DH@ %N?ZDG=:O<HqbRX9!rLe8>T55caHbFTG1M/kNkNSnF[hcd>m;l*e=Iq3D*S=R`5tHQ,-,7M7T?>AO>(6\!n$DL!D60%-t\&tIOSWS %F,pW6N$Bq-[5$XbTS/o_OfBM>!Hl5#1bJ%'T_U-E\r"W-%f1#^HH>&fiS4NoO(+tU.\ajXc!/@T3f\!FpBZfI5tVWM)`m+%5jsMV %;Fc!X@TkUHDWI>$eE2\V:b+_'"31ee+AloNNTk.3J!,@C"Q;Z?(H`(D_,.Ge')E?LUOB:'AM(t))J9iiE`$f1i3O`h$,Lqm6a%cA %Q(3AF^]dc?q),VaJN,"W]bPb96>+08Zj@>_Y"a7k_hO3-M"3f\`XJ2ghFjNB=q7Hboo5%n;.^8L5#$bfO&hfQW!JT046MpD(]Z%I %^or%S/qS4[7FaHj-J6;_V@0/0RVnK2NgC@_Ok//H)JA)d4(+9Y<0H"t;/\Sm*(4q#RUn_)-OOrW'`Jg$pS2t&*(SdKd3k(1_TV$n %af"F)/!VZck>$]T7,`&bd))S80&%A_i)@ak@?jH!1.?5X6bX-a]Q4:N:X__?`KPmr%ktJ_i^pE0eKA9p%UjM:&L%?B8X)agL/htL %L/Ek8A=d8#%;<GFLM$6h1aCA%TWa\QODt:M"W3NF3Q+3RI^KkD6\FmE:BW^X%rW@?k7Jb)=d!ro&RJKP"M$;XK1D/oJI$t(gE%;> %M_Tn*)[_PYPp9m)J7fAQq5I4[1(O-@5t<uc)Y2(N8dfl@5:n0S1+YK@QAhcX7+NP]<OEN,MqBn(Y`@<A#D""6Wfu83E&Q!HP\=3< %=DB+iYK1OYVj^LtAkj0UNQ$4((j^+GQ=[gR_]VKp3CV-Y&U=^e%jb\i^urh48IlU!pQdaf(sJ\D`:FoY'C7<^%PS-,k?b`B?iWr5 %2$#`enAAI9Y6X-XKJ&W]8q:.lBCKkY[%5<AIWDZ6-T_!!#K#gI(a)t&9]/!AT*h7l;H\[J`!$uKlBp:R\$W-9jk.tTRWQ&#kDO:Y %mBR+X!>'AkRji@gGK#hiBeU0hZp'e"A]=`+DkIaHS0PMX!utAK?m7D$)3AeU5l!U5'cKrMLoE%d7VF"=?jB!I8?KileK-L6#i-h4 %_er@C0_Lljd6MDlLrA7ML=`2_F.'$S(b.,TAqT7cT*>UQeMOk`B]Zt(,eAE.7@XAsjWHAU:Z*q)5[`"P[$+Hf8k0I'1L=K]+qC&[ %U)^W7?&?RiiDBlubq`J1CD5E*+A>0K*Cq,J,F!)bR`]C]K@IZWX&Y33c;5Jjb/jY"U,UqRfV4uXWiX%/B`0@S^dEi2HE_hgO%&A, %DZ5?4Eq..b(8b%P_>=T+3irs3=RdA%3KY*7)9oDj\dW)PT_La2(s9JFucB+Q\KSjk6sDWXpH#B^5O[H>"F":3G4B6p]oi'qss %44G[Thb$r?Md1_?%%9N-0EGLm]'D+T((IJNaPOeT"FF+!M`;Rl!SWrabH&aqI);FgORd?h^+hI&$BLJb_0?:>+''!CWID^AOP&2_ %UgAYaje-!A(tTh:d#hf3VZ#N9r\BmX9j>,\AGOZIo;LiC_J$TTj(*[RTj#<%A[JQ@oZb\kY!R_'^<t+2(lQ2u$8@3t\llocSaaYp %X&Yl>7$LPq^B#C,\=GRm0nN:+O9:'>2gDBI#a:5f`bqKf*q0NjKVi&gJkKOjL8G3QEt3&MOVnGMJC.[qM<3@OK6"6R,-L;mBm[;c %%4"0nmbfG'+>)SZh@N4mkn2FtnD0+N2l`TC]NB^ZA4]\S^6u7bm'1r-I&1@kZYpL*&;krLjphV299Be</^I#k"(\H>C5RG:;'W)D %P-WQb!!^4Z9[S==ajEuOJ^oe:l6Z-$h$/49J1sS1MtML8[[X[)pBeaNS+R6ZcCmD`+CX9$HnoT1=<<_)LBf6#5sc6U2%[<)WudL* %[I^>>W4mctTuDn@"q64("\PeoeOW"WM[/!#$,)J"=La0j`>e-3On*YSC;]qOei6fC\:+/3m'hm,R@aPb3qX[+G(7;Np1;)eZQjjl %X^4;'d^>,`Fm4#K"qIYDT+#;nKVDZT5gk%%etJtVEPsK&k^5-FXu#oK5H)f=JNZ,hoWc@qr?VP6HeaIcLAE\"Z"hf$p;$_?cIr\Q %Js2pbMsI"mkQ'IlRYm4J19S)fXsB8XF=?`(1)DSrPj?em)hECg`V:<u/0[J6J3u1G\)R+[hObps']&oCcZ8gEG&g=4%f$_ErGfb- %RVdb*@-UgEi5ImVf7I7j+dq:Ye+glt/HAZaF,Sg-;74hMk*7:9,E=NFX:8Rj(6FOD-ie29-H`OWdT"U9$PLd'VFG"F8J)F:,%QBI %*JINo)*m?L_GjX^_5U?R=1\JlX!6Y@'+@+dKABp[dSL7iN?)X_QNs+^31*@!m^OmBX"moK>+NHW6ZJhJkR&+Q;q\b-HfJNQ+3e$X %f*O%.geWTK.!fajg6BE7"$;JIKjJ;b&-JSJ\MO-r$dIia-6$OjB$r\VCU.A5Z4JN.0%V"V):rK4f%IJ)aVEj^%q(VCU%NDTY_CF4 %`nXC'L.\7sZ-B&>3[_O_fiJB\0*'TKPNdaS>mAq(F":F0i?g%VfG0#)CsdUGlsYERKtNk7WSL``2=#?O_W;2o)('%t^=MWrLAcr_ %,h,@8C64*$>1TGciuS@1i-6abOG(N-7Ir]5:iG!#lrIVH?K"Y+o&<EZ^]VISdm1WWIM,b/3TG`PC[+ZE37loS,)jTn<-@1/ZkJZN %O_"Po]XDq6(E9Rj9/i^4Vq6VT$I_$W?6B9b<HSIab3HB8p0ail0TfiH0&Wf]#W&L#Z0"=;,ZSHD=*5o^1Z_+]d#Pi&g3&7,%2a9P %Jl.ItT!l@N!p(,UdA"m@9-Dl*EF@m!HRE;[<sOSh[h1*_d2$HbN4A7onEICh@_CF$8&P[t"?X"sZ5O>8g0dW^Xd7Z<-5Xq#%d)c7 %8pA9$g,]F'-)@/nI@?OoGW]>]181,3Y?1onlNi8\`OXicQ#&^#qVm[dij05b'Qdo/)>s`kB7X2Y`G$B3$mh6>H_mWqF_t_.ZN&2N %BgCj+`jYtG^FL)LTp?Ht>r#LjU*P=F!*kq&gSR`-<c3UA69c$UFMu?#eVa$pJ.m'%9?/PA*`#c<!]5IApQ+IQ0VGuO/;'oC]"_"5 %$8%t$CBJh<;>o_D<"GdL!3/qTkd6f+%"g+1;Y1+o85<2ebN7Rg>UfR_1#g1bgo;pla9cVTd1*\1!.$OX-XDIa;dM!f!fmnd+?^OS %!*!FK"&G5i@IfYeg9]J8+2G^pnE-;h.9aalV$"<Y<M+V9m2,i2?6h@$F#2k#H\%?f)&DVQe`\A27\D7P0P+iGnGNi>/t.Z%/Fqn. %!\%"TXEPH]bSae':Y$;C5Z,"q=&p@;YR1i9T<d&0h>:X[K?b_J'MX6gQM&/U%(:u*oKJ%;Js8Y'Tt[E?:K_$`ihClu+"2"E'0m.- %*aVr*/ft-FWcoE0*h;ccAP<(mTZQOhT+%rm%D^s0GR$@`E_p7rAFKXePbIEB*u[9[a$.%hl4YH/\O4YN2C-!S0dP?&Ikk]1:L`Ut %)6cZ,7O/6K(ZY+oP@95!T'T:.p:?.CM=]BWPC#nA#Y6G/327T%W)oUna?,jl5f2ls\iVIX`h'kkZ%1C+T!DZ&?3-;QMjXRuEh'i\ %Vd^ER$&mUH8l3mCJjpcG*mqWJ+;>+A<It[AD3#h)kOV*rJ]>Qu^q+KtH&LX@eW.o4X=]X^;kgT:K[(AA/s4>/p]n<4OqjijU`tRL %/[5+\R:J<T$Hr4']rSQV;cH1idS1<(L_X)g63j_S^^RqQYj>s2Ca_R3!:9=!,$'-G4QrX.48P5i\DG4/l#N)q<^[&E!-tSN%;nLs %H3GnJPlZ$)"0PAga9YbOlTma'd#(@3[u-GBf/d;qSMiV@f%H84<\qcE:29K-dl/&4V37!<Yj7S&09)+A(+:1(gk:>Ji$9t_SVEEo %$p[a`hN1)71V=a0$%^i?i=tR=JQFSPnTJj5Il>cB6J)a/8^nM?<2\phQ^96;8-<rZgnE4GY$F=H*V,$<#:h(j*aT;4FdLN:(_F^] %p0198+XG8cKfT2jFFQSfk[Nu&G=fdVQ43'qq!>48&KM84E4Xb@mo79L;4_0T3=O<(=]7Uf;'EH(rn,#HOP"!&U2VRrM`-P.-Y.:W %P'#*W$qZ!6Kkd)RX?8RseX05cXu=`Ap12--*jkCs0FtMSWmM*8A_9!)=+t+kL<7m2Pg/Hs0VYEm6a^Km-TFVp_R?.BYops&9uCPa %i>"9"b%^/<[toC9C+bR_AY@UA3#PO(7`&\n_]p0,N*$^/e@FF#pcniKU+$o`)HB?#"9JD#RVt]*DgFcl?d/j?U@9#i]?9?=2<m)c %/$!,^UH)_U>>gs3(F9;Pft^u$DR2BuZa2!8NHM71J2sp"s$PS,p`W5^.S*Fl-j"-Sh?'96><Ec0M]qF'%2(Mtkq*g9#/%a0fdjhf %_<g/+.N2cW,C@YU2RueLXAbuVJa&5L)0g4G-87^OUG8*IJ8*N53Wbo/"#Mn<pCRQqUdB.LQ!R<o/3H:#0p[Dl7s_Q/N6Vh<!c1., %D%n8$NVe:`#pB.WTon^e*VU\;:=]'H_.lt@W0D9f>,pPJ5\.h735!(<E@,IubO60*$640[?CTF<l8/^T7aE;gn:F/L+2oqu]hf)# %eigSc!#(YeAD.;dB8/..jegU2Zp'sac6,ET(_%UX-&2N>"<aUf!$:-81PrL\,=\Z5PA)nE?SP_/3%Lqf>^E1qRN!*#E1GE&kT.3g %!ln*@!Ck03//u1K$GqeJPJn+\(YCW:kYN5<RpLg6M9gnQ0cQ`QQKU)S1FO-^LAiMVNAlV_UDYd^e6"=jTb2IgTq&um:;r%+ZLra. %FkNamSK9Y7Mce`@EsZO]p]n<g@[.nUQ!0EpO=/hCd`6/n(h&K,pa'L%T18Lu3+iQ\<)L&3BV&hnTLe-7KEs7c"_+b<5aRso"7B.- %j-\6p+QKr4ejm=Y1+LLA@6=EsT8IlW3e<3.0I%k13OT2j$^[^0OU"Ep>":!',ICWi>*dJ7&/!n:Pf_#0E>s_8S9RKER;Z1QnLd-R %A2;Wnir5P)m)#=Y]UC9kI'CO;)ZAG[iNL?BUE^e0d@L^Hf5*SOP7na,eu$>a!EMil;EK/6GL5q''QH)oOs,/H[no-7e8.ld[[PoH %`J+OS3LSl#$u(IEM+Vm!`DMBkMK.`HB@M&<:pj$XX%B'Z[VHUV3qJAFq'4^57`8tr]?RC3@7R7BC-mKT7?'<:fdRhLWJ1Regdlb$ %hg8eZ*;j:/HI@C.*ags2.@HdOQI6nL"&g-/jTK:W`l*DA=<p@S9]CJV5fF4L;&L#tQGUaehD6I7^_6qO(3Q__"Q1OnhOmDUpOof\ %+Ohr@S\Xsf(fIhBBFYJP/]&FA'S%D'D>"[<V/],0im?5/PoZ5'\a^D@Ns8Ei(Zo/VeV7H8l8VE;]kq-:&]<QqgV9KHZO9Y&p&r1[ %k=f)+Tte6@nHd9l"KoOKqAB=-1JC9$@XD3@;.&(^eS3BjM8<i[ScC1'ie/)@U@%8n\IiCULCdQ51_+)j2.gfX]/YZr!qiUI]:=Y; %82P>mDf#P40r<$4d7@.L.>?H/J8m,Rc[F<F/>QcpFRmd->>EB2oh%J$6DUNQNSU7-<T6.MJAA%k]Ee$s!b$_JF)V',@c_LsJ;nSK %p0,E@=\;=!X4p4e$3A.PU/d$h%JIrKoUGm@J&A(i#W`(#5So8$V@dTU+^BD<G><V2"TbhS%5]pKiE2cnApX^qZ(rD&`^hUh;"/Ja %98+6q&h;[;aa_aOF#B)B#2h@kY'?4_EckF*.7L39%lNFM*O_js03C(GO[bFN`#5e\*_o/6A7i>4jIR$I@)Pm&Gl.6?T*^Ph<1NDH %f&e<H!pB>1Q/7#o6Ie%%%G%6fpcRsk,T+XBDZI/C-'rL_6&3p5HX<J("t]d&PT`Mimh,Lc0=sPa,p^[62:bkL1(^=C??X7e&<K7H %74_BnVlH^37F<gp^XdU!Ue4\MKaDsSR5Y/3=r4tlh?.s:HDLlQNO/kGp*bTgTX[fiYZ4p;f@g\&Ja,&,0*Xmfo3NqW[#QBeK">:" %<io,G4Ol]ZE%*-*$>6t@Ta'O?P#]\u%7i9GJbC1OWARSnL@7o_/?]#=CI?%`\i58XneVc!=i'VE/1g%EbEdf%'oS$P:gjK]NN&"i %Oj^`MpE#M8%B4\)U&jGprSJ]8$r!jEDMgor3*B`"`VPVCMsgoU3,:7X29$cdbf,-Xgj4/XaM]26S:NN`M)nD%$3[TSH]Y/WC4MP2 %X/qV(+:s]UW["CcErb0r6L_JI2+Sq[%1KqVW*Lq#"54!&!-Dq-I]3@Dk1];1f-9;`e0tiA27)f8et1)BU.7,3_ZcDFl;46T+[[KK %F?!%kSF&W3TsC*^8hgj2@Si6l.9f#j=K,2MjYI3IU!Cf6YbA!U&l[)5RHWfpWc5OqU5jP!i$EC4GBIA>+3@o4RR"Da0ktSMqY%1u %,F-83(.8EU-4[6*,ti,)52^P]f>`_910qe`f+<-[f)WbW7\?GdY-sh+"`/;=%?8kjnIZ:Xi+/p`>8%"O3L-<_+Nim)[>JH]/ie*u %oFZi,YWW_0jm>?A3OE@/J0Kob4W0e8m-5H,'Y@'l+R&SK]pT+N=doER`eVMq/2Da:pp$K&I"\Bka?6ta4:P"9=CTKIBTi2G]t$=] %rkJ15DsZ0FNJqM&C$(#@jLZ:b841fe0U$PX[2>&;:V(<iQ\<W#*6=tZ4IM9eV[8C*R([8M-Z@hl.E)SHN7$7P)9^k0+K%,Dof2e- %E/;nW+5PBqa>6Yd@;pgaVTRi9^?.B#L^D]90[7%U#nCQ'"@nSQk8Ie=NYJH,Z&"p9jqPobM%JNH&Y=moG'uAp/AaG:qX4;%\fX=S %IEd8XHpQtF!5#']-4S31OOVU>lT&5m"+s[5ZkNge?`P%:8&[`ZWE;Q^+JVW\_a[);eOsg%^:tT5FjSl[:Z*Vb<M)Ic=+)iu[5)rr %NDeh%`2E@JH6Sm9)rq%)%C4g3Sloe8&3:5p^E/:q=n*[&1uiWZ7V_dVKKdL-N]8eeZiD4`1Sejaa%(Um?Z:mAF;XsN^n-b+l-7JK %7]oL*\(j*A3eTu=EQaoo>XrfLQ>\VjJ7K+'RMZQU3/uKSI1#XmBb`.Qg0gIL[!e<4NHdP#C1Xc54E3ZoP3ND`S7:REA2k\pW]f?$ %,[i.Vm-=pjTQWC+hX5&oQdTgUao2;Kh-qnD0gMo8JMUaj,=.fh"_qEX;Sk;Zq;<H+&;Z:.E4c<JZF_A9H's3S"(rU+Z-XB#TGqWF %*G%)5!_sFDpUDE</t->0npn4[bRL;.A:#StgFSLV[M^DM*it/RUSjHIekP]SD,/]nAT7i(%VM%8__3#.3Ck"Ue'PY1\-130qkFem %d$"(3+*ES'9Vs;85%q^b5^:-L9ZCX2E70bkM1Hu[#&X9q%2j$rHi!pe*%]qSO`-HMUu<r:nZ4ok6jP)!K\\X1!9@cFTQk!^8rUr1 %*S[):U**(H8cnOT%s#=iHPe^diW3;:H)Ss61O`GYFG6^_"H%st3I[9%"e2+p64l8-9nnW3Qe%LHU,^D[)9P3dU>./Xp53,*At^`] %KS%.<gRP5c88&oK169#XC`gMeTR`,L/f@\A4-UMX"r=e4pZ*el^a4:\^g/f[do>gm;Q_i"#frBk"qA#`=,q`f9RU)"8$h/J4)cU, %ic>+*.%)tnZPrYu1]U^HUktIL&b?]JlSPZ*m2gA$*Yj_MV*IFg"GAqiS)]-8nHK:5[Vf#-?Jd,T4B'F2!)>Mp!6(UZBF6qSX65SC %6#fH\N;$B'"@3.M5e:E&MhQl:@Oqf$a\nI&HNU?fkXeg3-X%/m?cm[k1PW+Q6jO&EEm!dVd@NIR$Od2AH-Nu7!mh0#56h0B%=k'K %,-]u7nt'/<X!YrCmP\H15n3\k"c/%E<1`KD?p+ZQ?TdHr!sE'%eZE7f_&0C`(k;J`kd=*hW@*[c9>Se^$b!#c>L+s@7=0q0<'KT[ %kdAR90M\5oT:cV\_#W;I2?A@78P8)d$#!U,j6)Q[KMbNQ_1AX`;LX5tol0pG&t9R(BYjH]"/.P42N/G[7`\V[1pXrV2;C1+0L,pe %GiYkb5S0@X;p54nEhFN?^pIgB738q,`Sq?)QDGdJj1K"1U?+/[4<h"="kIUrP7[pP_pAO7F=7eSW)q]5:^s\/Qor7t7Us']()rr> %qc%u$9%-Y>.p8&!(nc'H^aZ02Ase1+!Fr3C.r-L@&U$6KQm2ptp1bE`TJHls;D$@8r"iVVXQO?6]584:5#=$<m7V[]=[-#p5^aE" %"Pc4F.6,;Z&2MXnG-C/od#;U+@@T(QdHh'q"@sgm#sE=Lep*u`?qQ-/">f*MYKNW).as8S^mA=^#*Rp)oFaTK@MMN3AoGSI;@34W %<5rD^r.F>].2uP.NsPo-fNql.Le/@F*taS`>2^5e$0]U'9/J9PT`O4O,h2D(Cj981EG7+PfT*uPb81=S8'P:.!Q(?o*AHI3'&GR" %'b&lrJ=JrgFeC5s;]l^uDCtRVp"tYHEMV^E1,1BM,%-q3'elUsOK)t3?sp[""9I89/>-c!GhZX9P0d\d%&QmRgD(-IeeKISem\]; %G7)IP$lQIs,`Vl8(jmd$;,(.C!I#(Z:Q&>_mfWW79F)sYe,#%`o:$PhWhKVOom;C%""\pk[hXUO'6fWhC\Ct#3)#o002#b)LsUa\ %W#XgpBu0@3BK<u1)%ebumD*NR3K;]_b4EEIAnfuRVMm+K%$jbmMaK&X1)f"'iq8un2.d/obIqL?`R3p,>:k&pF/J9i5u:6AA&,7E %2ec$a@r:djqQ"*+28tEL/&ROA:p7iA->)lGB`MY6#A&/0^,\7+39\,7a%*Bl8B!n!.fek.9O1p.mgfF,!u*Mm;uJ8$TGneu6OP.@ %/>bJC"VEd[Y^q&,<GH-c4q]%&Y_r5n7$lJuO-`4Ii#%Xq\1(3qBco[^K8?\Q8)=(OFje\?$kTJPBAN7WDWh).V%'H0C;%LJBknXi %oSusA:091f+?:48A@m\>/tbAJB[RUL'Y4N^E9pN!&Y9bH*c8sJ&U3W+%g`jcJhecZ6P7b:'*162TQF=,!]#S[nLQkj#b@B)5Y3p[ %.*WDO4l(%l<FDp8ojf!PCoW/AlrZ!eqK&Gu?E[(Q:6_P.cFR554lZjY%+mh'*T030_3<6@EDh_#Af7.q/%\(_&s4ElZ'kZ'7*)VM %Rg=!e#*1PLc0%Y,n5,_8NQ`N@lIZ3Ha]N<V-#`O=7U,?q(n:jTkT1"^fRQq0(-;q$\h,O!_'>Ak71Um+%7?(VYtCZ^Xb\S(du8,j %%Dq[P\Og8G1tr5Fg-c\&=l7dQr#ute94`/GfaoaS=B8<XGC;Y'e*(_4L$D]leSH)<F9u2S9QuL^5,i:4''85F9,gSf2-J-ZJ:5R* %RP=n_Md?Gs1o^Xu'i'!_X=1ND1!.m\*S)cn*X$@SV@Zbrcm'C[Rct1g+5%'GRWQ!&$O.m/=(rICXl2+";'ln]'"_i3/n9Ep$o"N/ %#g.m(]ddY]/K:FLMe2M\-ZN%rZWPm$j[0qQ@d*JR68PP8ket!Q*0#e:[WH<)RKLW@.7u_)3>nJa?*TU$>@=JaXe"(@a<#m(M_IPd %6,e6Lm;#"R4'"/XP=6<Me>G1HDT6a\-W"&_PN@XRJ`^>tO]=bSoMZNE<)=RsMjM<ja`I`1?D2V3B4)Z6NVepINe6@b*5E&-2GE!s %32,]_!MM,o*W^tpKbbqmac87aDITf.PsqE'2LtUXQ<EP%I^9nI=G/C/`B>fmDRI:5(tQ3B+Mts#%07*1Fhe@6#4RA[Y@G#sRKY3% %%o"Q>=c^)J+s+E<n@cCNjBDO*_WoA=M[%$FkKqsDgb=:gV_Fa&qF_D)\XD;gK^2b)NR$6ik-:L4nMkT,ZH_b6knT5_!AD=kQY\?E %<.SX*q?aKD-UL3*MhHD$!,ArEJRX/eT%t(h!6I`3H9PWiYXu1-QJl!;DSjFWieV(jAhQm?A7?:E*RR6/*)6X&=H):*QOJU;P)Ur' %\rJJtB^-C.r>ljCY+p`NIu@JS`9<bont7:N?j,ell9=!am>:U:%Ml2dY&+[2JuJ3ugUdV;m(Gjrd2.Frk>@-k>='T9qkR>d(D6qq %^'Etq#b/P!ISg;W3!.qpHMOPfcGHAC>9\B38A-f6]aR.V*?R@o<PB7P6T@Z2_J7JLCg@C+1lBh[Bb^99$W,9)=!mnb6o&S"OjkS" %p8uB3`RmsAT<[lmN5$^#dc=j?4OfrVTNZ"A%X33N9[pI(!iCLN(3FC!.LZWS$p!o*hplaTFK(gr;_(7$aKn1kWFoYK:lMC;>fF:` %ha3+;Bk8.?*ORlN_`$^l>6p19iO38@j'"G\eVLG$gi057D%EBtD<eMHCQh$93+Xd//fj!;R@9VEP#51G%2/'IEai,TTJVQe[j]1h %Ar$a>0t%\*[8AF)F+pcU5_*YZ$er9!;q["L;iIRu2',P1%uWlERWWVF,$^L:egi:R%^(ciKOK>`\N=.sYGP!a3N8oFa63-?qWN(N %&ZDrePT9<4f+@H,'EcW,a?uo\LXrC<6\Wnf&JuUJ#&lSSD,E0(\[`bh8O;r?<6_'mlhU`$!+ouN?C`p'7WjTuK-qW*rJFR+@=VfE %IJ+G?jm1')ND!.s'mfr(hc"_`?Q7jGa6iei2]j/F\@#$&eC9>oFtOk=V^b/^EbnX"=Gmn/[Ie19*hiTG\M$O_OGH!N1?mtZV<:gU %dC@6uASWX1YU1-+amPXRD^S)2Z-@MMXr38tkVl<pT-I,Cd%Vk"dq@r6(=%\DHPtkie./`+l<Xa+JYd)(NJ`M9[Z#4MJ+W.t@;3i< %`Yj=jl?d2$!TR#;#ukt`7K(]C/n0%(=&nge$V!(ZP-(CVLh7;DQ67qO7@WB&El!V%d-Za:JtLI"HPp\bb5;FaLObPBd9X9Mc;/Kr %+\:FHKMH*/@S+mTM2RNK:,W/u1r/_jr>5NN0#cIBW;0qGVFYZUC2hfqJ&5+-#V+D3XH\!SX#F"6_uiJQ(d0a7o\W[g7f6QWalHls %<-3%F92f,`EdP3?rka2g;jCN$[VgY2jT`\EB@IN.$5.M$&f?N.j;A99Y3N);5nYIl(9;s,NIGI'2[c`&@sf\!%]T!KnADrWmQ_l+ %l%]l;.^L-L@PSn3UHralesuR_XQ(_F26`N>k((AVR_F<^UpS698+qT3F,_s'Cen't[mj8M>BU(<L^r5dZsM!R4jB/\75u-(Irk*X %#/[ikBfIAB#J6eR3NZXpgH$p8A["L'CWfEMaHV0IRr_tB(D$b.)P3`HZNUfMLW6aNc<I5r&]]LJ"1fIe%pJ@GMbOW9:lCuQ0EC;j %MD_4]P[GI9?<.s'"(fVUd'2X4$jL5TRqI>?4TAHpBB>CUF]VE>FWqjabY/-$J/Xq9Hur)"nV'h)A=;mV"6C_$kXCj_NYZk?eJY/T %2DFP@M[mk>l3.-gqPU">>rJN5(,ub29*XoXBs7r66.%r?eF&QX"fJrbB.mq58Zc3T3O`PPU%dl'fYM[)OW/8h2IA*CXX9/u*%uDN %7AN%Z:oFjrXt8:"KIIi!^m94VVKh<PA`p/O3\;(>[o[=<RG7LqEdt<\d.G;oAE%R8<J61/D(M(e.PJf7?A!?+;<=K7:P0t2b!\d# %_t;'P(Mg6CEu?!4#t5*&FbE>2!7OmS4fQgi;N<nHPrY_0@t=ZjQptqbL*%ojb,[eC3]_+m5fI>3d_.=8?0b#,Ao/Ngj[VZd"2lXU %$:"uAN\l!fnt)#g,:kbLc]d"Loqn!toX\M:E/JnsoLg'nZVg6o@LBF<Q+4$C84IBo8QNOX%AV$^2#'k/m'6s3%P`[.YRG8ijRQtd %O+WaNnu!rA@<7RZ-\qe_/J@$j+Z+t5-Cr5[.:QV4C!\pU/u,a2T+2)3r$iVi_[dIqV+)uf/.taqTQhhD_(.H&S#dD(D(DG"?,^P6 %Ch5>WIN8ldMI7$=cu+l(;+o9D(/-Ei9g;Z180ds)RO!;142C@J2-E2B(d>>W:31I]UhR"@BF8lc2/b4/p8\JFlY1jCrEJeiMabt% %fBYDAZn!sN?1naI"pGZMOZY#ZYJ/iEnTd`u,]A*7Yq:it(LmHs&b8Cg>>7Sp=TkIp6;'"kKLf+X9uKZ"`30RE+#UAreuSpgBVAtM %bQi=%Ai#8KW/WiO7srut#mP:KD8\Q3?1%i(d-r+`'-I^I(<T*9R>p@Djp<C>Zq;p6"i[,;)1WK`Aabo*JV5)92;EtU-\C$N\Te]9 %3;j+ln^Si2aN]FOf_$+8G+</e3i9%<Dk1D3auWbmFR"ejkTWJC;V>)=(q^l/c!u89'$D%'UB):a+];3[D6s?toiF`;/X0cDor'Zk %)c7s(hU?:F^TYfG'EoR!`+T>mYq%,?XWuOZ+9<b[8Fqo!T[[+lS6Hp(W7>:N",oiRg-uq0B\\;(gH)G"='f]_i[j;Jcd?!kgeU4! %/-9eh1adWm_l0:b5pKhYEG4cQJV+ILU4#_DI8"4&$$[8%(/!(!<_@pn"*^IWXl0Y@K,uS4D;Jk4Oqe\bU(<_#opje_`t72JhN9u+ %"u*n]&Ht&uA4P;W2]=E^UP;VNF;YC"[,[?aH%`:jCqqLlSnrkU`U+Trgeem<@J_al!&2,U',8Bq?j&Iu8f&XKc3bY[!J8i_l"nbs %Hm$b013Ra/[;j!>:W^;uc%IulaK=2o8&k(p;\b@9aFP!<)^H:95YSP#)#DX`]iWS6pOkt.7E?(ECm6/cP6Fo4Tk,\ECSD;3$0dkY %&OdY`$I!0c_bL5m9=<mt<!1()\`lscU/VbM@p!04*LL0nW5[ZrH_Vd../@f/n1i&KRqW(q'dC#oGUQ6%M'>%TMXc)q\4d1Y0^41O %]SBn$.c)fEIGAbk,\WT8X!<62/Ylk3m@De?gVM*VPX)^1_3u.7#D='ZT=dKfV`:^H8=UipIVdMmTc=6LlL)uKC7t'+^f=2OEBnph %QV48Pd8+/88n_HdQBhf/YrNR'pGZqd0-Ap[X)tJo#dR7,_Ld1DNX9DO@ncth'8FeBnmctI2soo_dn2u)B%.8"c9TsqTXGkOYM:Y. %JDM8,E>E#+;oc!?8u'L?l?3F\dr_u82Le*88#-EGaj[%F?f,_PD+c7G@Th`15HAb)l,W1q6bFk.6/c1or#S`ie$Ym_#+/D+(7JF; %OrSFCK=Ra^$321=5.h?OLTdiHQS[S[H(#WI0,1WTZE&l=B]B;"/b42HjQiN_,8tC)c8uQI[2PpOX/Ac'`nIJY0F1c'9V*dE=2!^1 %W,[V#h:*oeF=X*tO!9.^pBa/@>b'#I"d,%cn/_VGTTELJo/f?./_H*b(d]rCL[m9$SPr?>6Vi`J"V-Mq7hiqq/jeuR/4//;'X0Ic %Oo]s)OKSm8%74,1^=G?PBZ+a%-P%)5.p:;@E-5j9re]]I&r;$1m?[7jn95RSX!J#$G)]t192mV_iZq,'ogCR2)'hr7=jGi*+Q=O1 %/q]TG8oOl8?FZ`W0U@q7eik,H&d!enPV.]ufNGY[e+=>C_D\sLrKYm\UHGs%()\,R(U5n[Q(6qY-D@hQdK>uEntkRI)JYg/"CPPm %8pj*I"-3c,!J4E+7(\lL#N,W*2,Wq1V^a=Aj%7Rt3IDGtn3X0_O>Xp.6H_CNd8D2-Rps[l^-NFpS?5=6NW_l'Jl]Eh4is3FN#Mt[ %+\HZnRAqP9ZL5qKCd'%Rno"CXM%SesZ#UU8-PltPs4D!663c:g:qgU:0*cP,,,j*mm-r$.3dh\2B6+&_87t:g#4TY()^V-Ri2D<0 %``H^#Rge5V."1Su0>__5@!+.Q%f7kP4;cU4!pkQ8p^MY,K!chU&c9AFL,=cUPW-DA7O,LP!<A4U`J^M<,DZnJmGik/N98:&5o_tb %%3jLf-iFtSqrSk2LcSskJ?bRtg_HjqeFQ(*S#gUqFlt)ka6!A-2GqsRX=q`\Y/4@.&nU--'+R/42!TbAm>0\\[E4ZMfsWZ9W!IL; %Z"H&f-c08eqFCo?2smAVn2D7E@pEn>H(q+S`]]&SOY03l)5)tp")c/Y;?mEVSAm<B<b8(E[BZ51d&c.^N`m086%`/C?Ih6bb0I#S %VJVs,/-psN;*$PTKuh%u8W_kZeAKc7Q\1QV!DUgHk>!="E=,ST_g)7V+F'kpZ4auaFE'$0hdFsB;S?(""#-cN8r!8'UKiSu'I[;5 %FNXZ(mU[)/0fJ]<d5Xp\7T)#3F-0EX$#sE"M^)pI-0o`k<Hmq_U=oC]k?21rfWM,Ec&1>N>p?iAf9u]EnTMeBdA%Z'e3h)U*E8D1 %p]*Yu/;*+U.<CRp%j&NIm]Or0.S8jn%YJqD+T@"N7KjIq<A[J4#VoJENFf%R<j/(KA5KV&\^M=?1b'!#a<!C.(0gn_$rIe;_@,ch %Au'C7S+Y(R+i,;ue3m'FV(_qh>rN-M=FgJZ)qkA0LnXp=.8r/_)FhL&+Mik4L_CU.3WB,"E7UHY9QAlZPc/?9@h-R$KZTm1$?9Q1 %bSXdt<W]XAAPbdS;pcb.PZ_rI<30ZuZ-1(D$%4!T'J$8L2?8'*1V%.Oc)&Jj@L)JTMm%^QBTOR?NfX;$eAOm@oG,rNIlDt`0Ei!( %+:)IU7BT^@*R\L*($MWtQ_#`.T-g3>3scsGIPI^qcp5@+*PFT<,n?sY"YjOE.FDpe#K<hie2dMDi+/As#r@)dDBrAc29dRJ06OQ4 %^E#Ql&f-!(SO#*tW)kVfLoLkR!G]9b9>:-'GdLpt6kKdFCPXLh0fFkDi?Q]JU)&YRPc:5"p:/7@`X*O#/Q$'L>/f%M]JUo[1HGk^ %"k/;TMF)k*-V$mCf+k@&WlYhM`Gf_L'6n"CK2\YW'[-tdN1h@C%Ua84W%Fbo/OcIN7kL;XVN>CT&p(GG/mS(XqYQWsoi)-gQbU<n %`#]Rj_Y$MIk/`onEmG\^Z+R4AU+e?jL<8p_lHoahP5nIip[^GL%Ch;D(m6FL,_;M3r8!c;NFi7>jFKjV%7/AB"05rTPe%Q/aCO9# %O"1/RXZ51=bR1_%@Hrn.=OL-8gOV2'V'iNF.r^1"FFB6LUTOj,<u)_^eFcZ*UQ..A$%o,5c0-]p\PW_"`/;uKmm(qYMH5kbgR`qE %UCa?73]>3c+n!>j6+%'`YLXU9G9$-5>p&/"VkE\*T1nJS79Gd@\(3=ncrkb-.4.fb$KQY?Q],-]%R5i7#`W1k(=$J?QALQl1VBdi %o*"ZX,(EYGGuTULN$c`Y9RO5nQB#^j=BE+sHD`e+c#-Fa#9WuVbsB;m[W5SI2rQ?TaXV(O)3*P\Jg<q>6N.a0<##:pAgY'XF]bc= %-<!ce"ao:c.l\o^I_p3>@X8IZpG*Ir`.pPJYsUDC3*_nt]2:;],1JS?jPic<>\EkNAau#.HJti$[CfOI28_56;#)V$?c&:tMW1`X %LL]F3#6<&\-%JF`Y^c.uDGFO7&o=]W9$.I^B6Jm0]%._0'('6@6n3o0/+6?8(/p-O6JV]TcV=lh7)5:6@SY`_DUJM7Cj$G6`/giD %274%MG63o"C0S[6;[-:neL=)+SihPS8lEX6FhO[8.M/@WSG\>il@E-?.&)r3o;\R+kSWP%?#'"A[3Ii@.b'e\UQRuarpTn"T]MCA %+3:fejMje=R@:<mUEdqMaK_)3D*^chMp7QFd'-Y27f[a4JuaPXS1eFaO5@@tN%K<D*;cQ^d=?0c4!:V=-uMHKAURokhH.0BQ6',= %IN\!1!M%Npdm=o9@J0t/(c58'>$P3#k2:'Z6p7%I,F.IG#WpVQ3aN0Ki]=qoKGAE3L#C#t<4TpY#cD:Rb(Kb]Ud^9<6DfX67>5@) %G`?.`Ct[;pYp*%]?/?Gb?Z[q;`d/=2U.D4RXo0H5O%2O@LSjf)++\U-m`u><i13eToFh@6X_PE_FpY-[N^6VRZ^aR'JQ)^`7L$g0 %;DA`)@`X/lO0LW3q53-pN.he!8s!N_X@Sk]%a^FaP!9d&FsL$bGqM'a;kJa(Cn+u>&mCruQWerFh8"o"ZX]*e-=Ri[#*>E)dO,b8 %'bMoTR0G5TV&8JJdfeqajD[]I<^dB`WWm3,J%gYr;Ad[4e9cm:NKa/qO2<2YZ<EFq5.=V`q5fUGW8gS57<m)L2Qg$ugpEqTY,PX> %N\8UVfI>>?<?mNBFF_>mclE+^:+iL.-=h"uZ9fqX]po+V':Oi`==eq=pn8=>S<kXaMS?"Jo\:MTph0\#S=bb!,"6n_DAR2(RU?7B %\Hr!:a3&D=#?5J84g!ifB\I3F7-i2opf-LR6:h08RhMGsg'QifTU$27@Nm)`ISSPYN[k4_.A=FDgX(9PhMdi>SR)Y$(="1GMA2nr %(n_&IIBA73Ggr75A-1WSWFR;ioNJ%%J0#gY(d=B]-/j@u>37[UrFJ?b=.B'I,VWmH(0222bI=bXROIC9ECE)=Q#i/rJs@(4fueRC %-S)[q/7SQ(Vc?q1;97`+W_V(];L1l<BiJq,oX?=$Pd2,VBGgeCdasZWV+n]QNH8BWqHbT#3Qfp;)NR?XR>p/MW?B"5?suZl,[tk5 %0A^lB2b%r4@g9r;di'g(_!3U2(fkIP]cr<f3nSW.^@&#P##PE7GZEd(3$r0WCG:TeL;(N@>hjJ)HD8A3NNjqJU![g_B&[ng^`[.: %9hdHKO3:Dnf1l9U0d[6u:u]`!&8tF,4spcmbrVp;?'g48Q:2s0_'2jW)Bs*&5Wam+!L);#7M;K7U#r^V8-V9Y"hBVZ_^2[;Ns"e4 %k]_<]`+Ju:>a6tIb`r6ig@1FQSJ!ZTb`F_UB8U0,,IiSA;44R/ajoTQnJQ\@>k+J8(+_&+-GJ>S<h;W>AUlD!MAUG=i(%=cM*EI% %=XY>[g-8Opo95IDaT)K0FlGiG(*$D[*$m0o)rp10-8k`_+dMO(PZ]8SK8S.48jN\iLn@q_*#)OU0"G`f%B;\P6t<4AG0ECTf<PX* %,.up`'-bKE?'.+u2-uWWPOAfJMj68\Zj7kk<lSFPf8pEf!J./kBitTZ/XES*qcTlD8>t'0,n:V4"a`+_>s'*]g)Y-k<.chY.U'pI %l'ma>/6]Y@`ndWFp&[C[*1Mba1V9UVg8t,n/!D%#J:&F6]%M%;[-]^*6C\oj>#&r'`Jklgp'&iZ8u=O:)-Fa)'jhN3LJO_@]#:AS %8T>[0X/t``T.6Xmj]"k6W$er0)=Kn%+1_KCWCNZS\-m.ks6=%N&lkmu=5noJIEU]>Ek5+hAM4^9K;Be2?SVN$BK3=0SC1@_cF!QJ %UICmmE#5AC5R/d@Qn6(bS<49j\gThciA-9i$!6,'%lC)QMO2hcCcKs4`?re(+^%#E',,?tZ:A*cl54iE$nH@8X2p!/""_Ha=BcN` %Qffj'^D"ntl1%6`9G]Ys>q%frCPu3D!peHMYVYH.)==b@&UAn=L^.;'g<:L'Hep#9Hl/iVXP4U&*Gp#$C*\8n$Ho\bjdo3?]%g]! %%Tp]gY[t(m&AW(ujCMdE0L%EJ=JASYf:@r)f5qe8W3;l3p8-?b>'.*L=*9KO7BXH8T?r1VH\>.LJ]:6ZH#g(=#H&`XUT;i[Pg%.X %!.nOd!&1s9FuE>QB*#,FXna9?qMK];h$&0lI;TJ1Q$kEoBiBU&PeI`0'gt1l+,QtqfuAmOh%?`('Fh(IiJ4eXW[:m!3@k!uJZZSn %jW@;/AGNMPToSl9Jr<YL7mf?-SRY'i4'N@6a%g+4Z8DY.8a+$Ra[/.H,ZE!X+LW^Y6>:iS\k#J0!uAsn,ufk9g?;ge3HN*^O"33A %X:0dQph\OO(=EU"d54oE/;"oee9MQT3C[Db69&Ko-3so_3FqqaJrt7Bd"]t`j;2cVCLp?a"=$=O/\F2>OCL)&TO5me4C[$2>u[sa %#UF1T)rE<[Z!#h&Z@&H=ZZn"p+nC-)W=t,G2UWkO7?%-eTsf$m6:J2a`=(TtInO*VabDbK>1Q3n>>de,c^`tpN<J9TA'#c=haR]a %$ru439\%4M;"TWH@PLJ!8<XE[*0i^_.mj;hF`ju0AH8c*-D(S^q'Hh+m*g'Q&TS%h*b$B;7=D<s1![(>XB!d77;@(i.'e&'Jcu!\ %bUVe!2,`PXia;kuJ8:EdFSdoNYXQJI=g?]-s)>ro>I=W9mD]BIbZ/HN6-FE$b2'L]+0_<fmHdi2quQ,3e^@gt#p/RX<dfs-YN,]p %B#WG+onjf0TN6KC#J@?B&$CM3Nm8I54#B\q3_2)6iiT@3C/\,X!'Bo=<)AH^+&E/,_@U-OXdto]#OL_Qr4oSNG/CGO!Y:Y-X!Yid %0sYQ'XI;-7`m=gBe#JP<Ar]#^\uhHIWs7Mb`oF(mq;4);=,l2E%-TQQHdsNo^jodsoiI]9LE)+MB4K1:=])^?WomANrd`F@Eo'D> %c3O"8eRE*%BQEddI-=R[HdsoZn`%Tg&MuniID0%*aPB%<+#pZ0:\[q*@+B.>^rBJ47inm=engjVHYD5UHGI[,[E)Bc[g294<L[sX %H<dp9f8S.#lZLIr?+#I>/E[8>lrAskeTQG`c<p5N<kX927jFdq*qqtJ*XmJ.+,/^-D3r`U,ArKseoK11X3sXGY*CeubR3H-[dFnc %:,R0Q_.K&aJHcJNip'GSHajk*O+7Fcf5T.B27rtr4s9SUA+F<:TZ;Mf,[]&%7IgnI1kN><YZjYa:FkWgd=eeKB4Jc8&SZ;5HjgYi %>(2EE*0^4[$CW*nN'8*N=:#epYm(tb()p:)Y,K<rm_WK8DH]Fp`CgOo6/RA%l]X*7E9fV1G#XZ[k%,QuhGljI3;+)h7Y!H`PnWXZ %Pd8^5Jqjd5<Ms6TI9:JH-A<oFP'OPs`C"s,&ek>WW<t#:6I0Wq<>#S1mm\j$pc3&<7m_09:_#ol:Xj.f.8i$,_]TOD&bP$%)0AEh %=HY.sL$ZVUX,Xo7m>9mVKpmX[>b+b9hBdlg-pf3reG)rm$dJ\"OqGhWmN[;;4`Zn-[%E:Z\@\PU"a"'Yn3tGqTN/CJ$L!OETI'5p %BRn/8N^.GN1=QHs8^L05kK$])TFE)aX0]*^A^g/cmA9k#WA!I$5Oi>aNuhkPoQ0IFAHHnlSOu25`eA\+Jma:Id:sVW#XZ)S86a:2 %X5%5OAP.>BV4qJ#F0g'R>g^&5)Dre.-D2#ri-V7eXJ)+'2.Ve%b@J*d/L?\lWVPG1@O+!%RUSWDTIp=#6\:mHY%Zhrleb@,7oXg6 %%O`rT'>[<&XM-#2D1enkV(!cDmU]A[D!#pQb",0<Xs5A>[8g2*=K(1V-!0NUa+]p!U_FA;L5BLqThN^4,F.0C`Z'8Q`:r^L2#oX< %']9(nE^d%3/)W9ZrI@dqhuHkB.TVUqeK\c#YZa9DedoU)drPCp>sEua4K_bHFslUE`I^W.T`?QFR*7I%]I$_dDi?"iH[pF1Tm]L! %iS,p-M!7/QYFlKVE4U718'`84knGU74$]I`Th[I%Ubei?/TnX',!c!JdZuEmd_Q03bNd)NgO]rPfCc8ZWWXA>(_8$]<Ah.\Z<#N1 %\fuMeBs-^P2+@Fnd\^&o;WCeJU5ZgLm/#FP<h[;RVWs-Ho7VHR!a,M0dD[3SRZ1kYk3PFD9=9Ig1C_1&3Es=9'>bAt[a;&1Zu0<S %=CX_3q12r9;K"H^\CqN#Au2O$,L]1[4#,l3Eo(K)1m($T;N5+U?COn8"q"-51o@#6S/#or(5U3"$1M`cY7XhkVMn!BC*H]UX87C% %O<m<3W&@\?I]beNms2,akr0%)?f=CUPLt-g_18@-/A)?=C,635as(F^S,>NJNFgIC"@=>'_ffZ1+:E:_Pm2:87eN"U&[tkq>5^`= %XI:kZCYN/n@+H-33Et"Y9S7#4!&fBYmq<dmrQAY?<N-'FJ.`_q49IWLUo#mXN[BWH8JmBocl7XEH7%#gjfO)!`Z\X#nUV7F^%dj= %%CMItN)2GgaD+7cG/;+BMu6I)Kj_@R,E7RhF\IA*LKB4B\CNr!U80;^o937X]N'l/eTQ>Uc<R\I=0:'Z/DX=,GhmgT2ml_hnhp%; %5tc^^.p2Hd*qD0hrK;$tA_k`Gb"gd2L_^',`PS9R7CKVQL(7.3CjV9N`q+`b\[$<!=QZYg@Vt^!YgM#\jm)PFhs.7W@9nFHTPRXD %e#Eb%5i#F*%&n=;i7(\;`)$k$7[mF&K62A#3Y$`iPsTR8Bo)jXH_Z0sd(-;_b5gfkC2>7#mOe@NBToo]\sLC'd+T%=]'6bo5\::, %DbN,)d1cE-%@h*#\L1N6/tu6BD&hi8Q`M+'ieU7QqPB:Xj'&gcU@VTj1_TXI\,mJ3a3co[.T?h$42aYF8(,13mY1J>R2-BL$o8&s %_5RTD%T>bqSqrS`1g"#PWjJuf7I(@MkI]U-/HAALOSVMiL`kpTKYSd@-X>RYc@`Fl][8$-Zl145O,D:a?3$t;*_`TVm6HmS'+M%W %\n4YRC:*`gV<UX*)M-+M@bW'uZ8u0,(`gH`%F3,!M>(+X.Q<WLf.^30-mY;@\/oTD_sJos@J5>JKgOrKBTc>_n0hG@3RZ<hX`+eg %^9A!SjVuaWRU@[ML4@)>Yh")cd@?)?^Sk`-jcMug;7BAFZ^@o,h,APuWDGu?7Qgg*0PKFLd/JWmU,B$;)4Rfu*@M,d.taMe8#ITe %>E(0Y7i\/.&%&rsVQ>YRj*YV66gP0.#K9gd)SJ^N#,),]CTAV5!(IPi,N^5U:o7&pPi`B'op+T0]9.)sk#Pq>EhL)$T3KbN(rss1 %Q?CaoJtCLc)8!2Qi<^?_.+a'GLM00LQSa[mM0/tRGJSUKm/_//12,(785lp*.A>FZ#8&1?=5b?H_5#UoFmT>-:MbR2/pd"WAtYYD %ncj]d2[&pXD'0bth)rC7#<[TA)cT"t[!X^b!_+G1I%7G(MWTk;U4U[c-YbJ9#Himb'j9'CLt.'4\G4ueDtfE5,?g,)h2e'\dRE]f %7#9t\BhCJYmt:5ZCW;%?Ch'XN)*)8N)lO>Rbn>6Go/]qe.hgpXF_.C7RmLlh,.%Z7?E)KbO0ZJB2aGo3@Up?;acm8fSMbJ6h6^KE %_Uf4iT:iEtrq?bHeLPbS#<Z2a%1*33W(#5bhVFLe?#q<q\"Zj)M-s\[[K)1_Zh.:rj/s:pKH_(E)2sr>U0`.1`t[Fp!/pNMf5f=2 %']V+$D;jiX,#i8l;$XSD<3hc<@+7Zs@q/9o?DKNgSdEmI"Se'W3_FSf>/f1V1l5#;`#O)U\4R,K.M5\5$>YV*F9Gb]D#G@9d6P") %P[Wl]`QOlr&E>q/\lOKt[5^kip*Ngn>!WE6BEqBC!APC:NB)LLC*uJoMUoPBE[<,MZ(B2Wc>?mS(=`s[<q>dTg-(ET%s>hmL/oa\ %-ifL"1l'S'1-]2pV?UL#)RiimZ$.0m`#Q^9e,pFM"tOal_JpJqKjnT=YC.1,kg00[?=<\^4C\;W0V.>RR-rl.`)jk*>BZtgmS.D3 %^>^PP\(=iVDWCUU(]2cMhAYJ)Ib+,:qMcRCTV-<s43;nXX#LfeMfZle:JH5LE'ekB(5PdQ/R2'\=-LX(7Rh=PP)8K[J[\0[B[hE! %-;:_28#)Iq%YI*Sa9!L$=iG/R##n`K]d+pY5a>>CA]GseGtX%QP<oi,9dE_K!ZRJH!X<J5B[*3bFs?$m\b^Zfjc*/eT%A(d4p1Yo %/.SXcbsYM)J'LWU<#uJoaA1)2Wupof-qs8-B'k,(03eTD+.GG,1ubrB<P]Oq?QpuH:_[@"bRQ2ZSPgI/L>7V^WB_p$V2ic%2\a]F %;S<PF?_us3Ua5Lk:JK*uOZf]e7k:a&,/C;H#'ajn,-k+FD-uZf2*`1IjSWFUalZs4^9T[>ft1L!=;3(()(3(-+MMq?&SaVdk"f_N %q)l"&NN^Lg;[mQFI_,?Q#)./5kV`PZ9V&:^\E-!h4?Z"Lm-iDA-1f@EV2;fV5!g;2Vt>>5M%cKcW$jNoY$H>=>OV(+L?c?77je5C %fBfOR$,`\"5%8M<*1Lk\o-&mRViLI]TGr,P4Ot_*nA];o^>Hq.gj0IXde@jiZMU[uik]AkV;?2j-Vu3X88Z'$9NA%9AQ3*Qd/e8Z %I8\`GP%Ka=Smj5(Rd%P(V8?&b!DtGf=NnFSmL"a8imnOX[JC0,(cQ`Rg3PAl'M)jU2#C@1_kcT,7[NLV@Nu;u;uo;8-0TZah_!>h %!bFD)>#6XD>/dHJ*6nkEr9<@QTMF--!/9R)]dM&V!l\Ece9*g*F`c][1WWFp\^e^0)aC6-N]ar$7unil/`.N#?9M$-\1aAZIDBsp %CXoo(ob=a"kI*M[rjC5"eOlgoL'@lN#*<$C'&2bDN/iM]&<TeMWuj_=DGO^$V?%<iIL40GONPd$UR[H7WY..'&s^LtYYj4jHsfbN %:Y.MB!>)c`VmJ;]AtW47!*n80S?js8-jF1Yk]*<O:E2*Qn5KWmc2b0J)V?@DMP1O@-\:!J"G"D&AO+7e\.K:10Lr?\ph[?j\?\fq %1;$,T/L&53DBDY[i8?"%&C&%9UhDo1g(*D83(KJX,a(;J/T""LMi%eY^nFkGlDS2ia9"0L"#8^^a)+p>T2FI>qemO@*g$OU\5EO( %U6_lF`aCk?C+0F;m"Fo\blniB%T#oa1%JimALH$b+Z`h&_E.@#FOgPR]I@]%ZO"/H33\,WfjA%&I"N3T-(neiaW`7q<5n-iE+9if %Y>Fs.RmsUJ>mK:?58[Im@cCS>`_\9\J50R%atH!`)M1B8@V!E7-h00\*5*U\;3Z[b'k?U^o)rDIHA(2&f[:3Ql>b$a#eRp,*OYbp %pRI?8]t&cS"KPgZDC0/6)Smh%9JrYW<?-Y?oY&>1JDNA'l555#s,F1!6jf]NnsnuO!<6UAX9QUX(fCKu<[,J>"ihb^K+9V,5`QX( %HF\^.'Cdo0\h^R4IId4OT^&0W"`Z$bH*Qt]V>NVT^Y$2DQk;M!MuE9k7\dotm1)iZ`^/20%oZ%ZfhYG)dI47lT<&iqMP2Nck%_On %"Iu@V,=JX6@e3[aAp0WA`Otc2%;U8WaEHmHE-@ZU.9(WI1eK4EiC]K=_%TRboSsh,^(T+[Q=-``\>MCUno0&Hn(,!`k#4F#1:PJf %7W-"TET.%&)/U"?91=X\\W-Ko9<=PrEiE)/OA,>f1t0PJhfpeHnO*M1&t($"\P$]`b#V1,Qd,7sN+AURiMK6le>>!?M,qBmRM05U %kSME?NcqOum]$ar2YnAMJ*W:1V#p.]C3sRSnj99;.&BY'DJLHG*hS\Ab.(gG>c)j&5[+K<9<O"H9(Z\IZ6Z/>1QeR]V&<R=0G*U& %TIk<.ctH[mSuP_;;N=e9<MuRTbV\3[`8$UM<5h9-HJFM^/L1Uim^0dJH7aA_,-t[e<o<ZH&/tMD>[[^QSW]7D(k5M4WaZEP;b7Sl %8P0W;_@hACFHW@Ob1r$/j(7>;BIFN\gTb?@d13mM+(AWnRsVK,qmU47q:)[42LYsr$55s=RT'i%MpoqY:kFr>0h3=t2cN#;WD?,G %\#cNidHrcM\gAe!:eiu?U\5'1'mWM9ASTo"UJ;Y-6Jc^VOhct1eVb!9>-'QJ\!YPS"_cG$-RLQ6H/NE_lTnZC]<Q&[K2!gmL:M'! %\E>We<C`OId2-RpTqPEU(U]9b')Vg[/]&JTaO_iD?V$cqEH"O+iDL@W_rK4I3qJ`s`Mfn,6-^rJ,cSRCf1SQ`U^\loUTC@%;-OBu %&J]4\jR#o2fQ)d;\XJ(3-^s4-kHGB)&M^kQ%E1KP!P"P`N/D3%Z"U_M5S7`o0+$/tR"S1!L%j(8`)r^>3loOKZ,,&H'WSU9@#2eh %VtlLF'=OdmXEW,M65<>Dk%i==p;#i+3OR"[EK<Ddd4e@;Q.:H?(TUYV+.hsY64j4F`n<%!](&m6DHAV.NA`<+>O3C7Q&P<e;W4f' %jbI$n4:RF`[X(mLBToXsW_0n,@T]<'1'bce9'"Z*G9iNg6Hm-PAH/\*bus>1[0&,4\(/"RpMnQ"B0_gNT[eh[*dGDZ("KC(=LUsW %g+rsYZR'Es62LaBM9irhfS!0bS<QJ<YY>SNg*0MjML.T+/3b$BEY:Rd%4sgc5b4oaB"h=^nc?g,g-*/Aa7fQZV.s]'+]kjcXKtr> %j^="XNW#m^!3".ZKm5H-*['K_o!C]JRlVO%k/We<[/Fi*(AXPFTe?**/MY:i0Q1Wg#K8gHl2'$sT$3qK4*Hp2V!iV&N%Q<2.MZpB %>Ks!7o8+)+mIb(<!43%>YV%:JJKSgPPqa3q.7aec55I2BopS+uIKJ=^`8n#_MjcZX.b=S4`32a_iDUIAp'TdmY(\<Z]Y\H?A._B& %GF[r7[18Q7Da_2]Fao^<1uP9o>Esr&$&_oZ2aof`T*TgI\h215nd$udm0,,(A8ccVgTDh>V>*I*U@M5d;+mTPUN3.o4+_/#=AgE1 %^bNfn[2fSVW2lrWX>HhSa!!o&`l4u]<lk2[(fu.[H+k/Q\p;#c",`_RP]7)`iAPe,/BDBsL(Vgg46V&/7ak73bNb'>"jNiA*PP%1 %>7ujT9GR!Ljd(W4X]S'-dI!2XGkX)Z6JWG/rYcuLaAJs94+7<%JG4E-Lp.Dd3@h[4:ru%:[hW?m5Y7<5AL9bE[4^PG%Gi":c1WiZ %=@2ORnHs:0*F.AbWt2'6F6B&IItcI2:nGi)YDG_;pC@:SjcpFd>JFc/2,8iIC?]qN*0gP`ag)D<0F:*HE_rgjje<7!1.]#9)1YC4 %OFnHY8JB1ATH(cce%qDLUS,KM2]n`.;oV`NWtHNpW%J:#$aLW7BIX[cPoT#gDtMR(!Z?tA.!RRe@\2qZ19d?>@Je%B$K/'!,u5I8 %1m$K(jpERWi^Jsq3?EBS):VNE2_DrrlnPs2UluA'=c,J=.g/m$@K$6.#i&Q5W`]#;L(Fdl)aaN`DfgLDP)?$6D;%$C[nQ,Ye`Of_ %[=[8lGoo,E"7;naSB]j/p)7-Z2a=E#lkCfm&%MIXI?:(s7n3CEp;gW6#\K?=9RYqKn`cp\WYu`d\o#R!Q&p-<1je84/V!V'IC1=@ %%Z+#P_Q;?rI.bHCr:q/D]Y448jn[`oc+C=:+("p;,5T=n8Wd$Q:To6;e_TWS]>)#Ta'\f1QfmNRY5``fG=L3`e#WMZ>l!LP%t"^M %V_X/kJ#T&Pn4f.?QY3#1Q)*t"?<^frf/A>&Tn=4teI`6\0.4%TW\t)lA]^Bq1*gmd;K,atSCR1I;qk4(/>Bl24@_gPTlL\u<nijZ %l.2r`o!h]XhCN4(2;_^Wfa[_<,*Ie"g]<N>=!E^6.UM[D^t?4Q/]E?`D1K/;g#::GYHNgER@')OU'<N%+VijL(Zlo9),IaF;eq>\ %FW8^KY3;]+%]:9]=d4d6&Q+].SUEtSg>tSU!l*bb=Oe+`6Ed[\,cHACTPJcinc"E91a.FN,olDD8'>_kBGhG/oR?PRY0DcOKb!4\ %Sb*h8E!Mms>KAR!?n!MoUpVb<9<hgNRcL=MDOR#e$n-CNo_Q(ORs0`%f+'4I(p,A5\Z2KK'l"eDP+C15JMK_)h<WGm,\RF%8Z6@M %1c@o/nc5*IS`f8p:0C#YWP,\@(qqO)qP@1c9i=l>Lc-CSE<,2b;X[<-02\l-aq(GOB0iY#7?iUgb,?U0%d#g](eEk8UK#rIo1lRp %.r%Ca[d)dIAkLWO9r#1VjsdiT]"iV:Q4RaCXiR5sJ/+Jd&@']ebMXlmpeBK:&S2$"E46r9HRu6*aQ7l7)$L2`84n3O+^^9(a8%Bd %#umi$7l_/aFKpe3/4'(74&=JnG3)1GE^Gfgq.=JsWqIL`!CVO6>]+rX'lK[4ceQ`.@f]NS=+9h,\$G[bT&'R\bY@c;DQK>(fV\Z? %]PkA*'@9I;3C&biI\B#hL6]DR6m$]sa9>OgT[,&S'<QFGHUQ3o<$^El]68L(!C9Bb;E>2eq?8<8IaL`n`$700s,iBKZr]t3(#XP* %Bo8))h1Xk'ankDS@m^pCa<]42XBr+'$CN$`["3ctCN]nmHc8rmXV3+q)[KJ;di8$.e%DZhgeDj7iH,F#;QRdtTPLrYU0@,DhM+Jc %,]SmP[*i$;d$g\\N.AZVe<D_dR4nV=kT$#+P)3l"Bbc_(dUj]1QGZtnO5AX5nDVP@dP7k'OY0&kD=hllWIr1:a%tsY(b@8Z_P35l %Ek^H/<&W9qOn7$2:-POVZjX?(7f<?_-DDQ#=D.^4&7/.l.dZGZ,.4%TDQC3]XHO9*5"-ngE@AUH-!g;8XI.7^qs!HPng(QX[N!T] %NhS9H?jDNNd;c>I];hs05Li.CG$Zp1s89KuGCN`7\6F\J3>""C2"P(%n[n8RDnM:KqWcu<of&4=b:m<$_Z%&=m2,fmgXG'9]Y0t& %DTqpm^\IBM5Q:WXlJ;#4-d/l70>IL*GO_9e^-),VftAo]^V.:+H[ETT(1-t!hqm1K^S?;7rUAVHrS9]LIop%$s*f0;^'O7XjpV34 %G4e/(r8G[L,WCad>:/kBcg#5:_n4`sjP,U9^O1C;oAed"]mcjI0AkW7]CR93ePH04]0FX!GCGjm5JqQtI/SOIcL64)oASN[ASSuk %q8dBm@su8lJ%>4>rQYq`ER0h5l7`2)cbI-hmb>'4qd#iao'N5g+*]-Dk'ueQj*adgG9:_;rc!#MmegPG[ii0JpkeN&:V@bb97,:R %q>0IV`G]WIrq"%u&p?JHmbRQs:\aA?X1QQeo8dS)nW`M<l9AQ\?0o9i2stt^-OdUNg:ImI^H]IpqqE?eCqf#Q+,mY`Y0V9<nc$GV %mO(%JhaIW10QmC?;d\.*dii]#VcfSgpgem8]g)#lq<I+[mJ4`9hO]/imH+/hLV^Tn^WPZMB38^eS)8IRS*qtIcgG[gGCH-'_d;f& %bBG%*+WI%%4QESiF*%<9c25\r>rKsR0`e`#55O$Kq";TbYJ*,FHi)e?*PK.][s.K<*p`3ice7(Mk4WUGH`qmBF8>fhq0P1bnOIeA %5Ma#DpZ9fY41]c/GOOb`*SnETfA/Lp0?2sD0@8[)`%rEg_tTPk[bi^piWoGIiboW7?[[:pp?)7u481%U!5!q<`=2P<lGH+%p7K.Q %gfMh[rS?48?i9:hYqJ1c4nDCoAeY+.fn]=j0@/MR8j;1,f[>g`Du77mDSGr/rPdTr53EsYG5&o?m;ne(]0FC)<o;XRSoNNbT%D`u %D>5We.1%;FIWKXQqp4/L.rNRkqY>oIh*[$Foj/`6ql\B(Is5o3q[Xdr:ktspG/j6gs)@k[g%iTgk@]iYGT/S)^%\o*_^uu)_q!H- %S""Wjn'9eWrnY#$I"n0LA"W=!rr1`u]8KI0b&QGbq'M$?\bt?f0Bp5pIOkHk*8\#Obd6Y[]]LJ(i_^a7$@!m:j:=29n*Wq.[.G@. %aG[6DX.H>2EBs6E,>Zs?2],k5)W?k]4cdl8m.\Xa[++)FOsKq!$smIVna,u?mb@&c]A9+COAs,mp%Q2$Kr`D/5Fc#.bYC>aT5SAO %kc_UJTt`e3#MT,BipI<iTA`(Z2M;&+O[kub`:*AOHmJ\N5=dj-Zh&-`ji7Vo++<98dtdkg`U."bkY3+[&bO]XkTt\9T5Od$aO$gh %DB8gNg$]L%MhDN7(C(i#4$V)@,DJCc,*=fC2cmc*]t!j@S[4b<&K0\;mp(9hHhR1(_sST`QTom8j&+]T7sj=a1H`_d7'4/9]K4df %7W:oWV4BiuTnR-/HZT)?[l7AIJ,/&R>a#u&eoi^-fQ4HD<+^K\b[,*'gHd<qY9/PUhrCj=L_?oihYOj6P!d@&S/`-Mcb7Y3C<cb0 %4544kYJ584`-\Z&h!PC;O[nB(B7+#,Kq5KrLW6*n]=p6]oCF)-'`PU`FSj=lBCF\_>^^a7F`IBt:M9REV[j(%S2'liLYTW6aWL'u %0U#'G5-Bk(RHc06hYDGWG/aIFmemCCmCp:Em2YuqjnnMLcH\)G0AbO`p?]Bn3fL5fQD&Is9HJk2oJiGRIF_l>lf3EF@QT('6OE4S %Q(iWuC?pq0j,^f93WEf;NrkY4,?47!k4Z8\+,?TZ^>@PdgO&=l]:Rc$mBH1@3>CkbHR873&?kHDmec-Dpn2OXYHAq!J%Br\07A!= %mc&%qo^q.qScAEGmHum^\Dc\i@37LfV?FoZi8\k_j25ptl8pM`]:7X$gRDi#OEWYPG2>DqeC!X#a&D9P1X3Bk4c\Ldqm.Af??D*C %^H9&Ue6*pG5P]BV?Ee@Xo4NFIp@@YBDia[,G/Me\!:G5^:!\TeruF>@Xq/'gfD_B*hq['nms\s?`D>s8m(CNUVLF62kG[J,B6$Sh %hHaH[4W?9FU%6R$+2KZ.jq$kY8Ii]]3b_)<bd4of0,"b8raNYsO3kglY/$&l,e)erLPCQ:SS.B;i%VcYN'g6**oSfRhrP-!H('ND %fuQ5`36_2VJ]#,?bMj,bhVQ.YG$eU3Fq,PO0IpMl\br3=",D/T52LK8p@@/rrWn9>"FYLn@c/r$cu])e*KG*+T,A-FfD2&V61[3* %Gs$8n4ju>P7+T.D+<$;JiFi#p59C3P!ITQmDZ\8Wj+gFapre0ao<4QWjj0!G@dR^[*R58)H\gcK=GpK2;>q4As#cW+I1/os;5=*" %7Ot+;7bdatNuIDad>f,^cSaFkgb+2RM0;j3ql\9uBV?L?fhnC/U<ei(g/4I_p"<37*PO_,P<+2B*0T<8WO89=r\M^U*Oj9GgSTGF %gLfW(5Alt:I+r3+.dr=VP3;f(,61Wj*D^QhI9qnprc%]-MlT'ISc/'@a-G5i0[4fgEIIF5(5'NaH?oN2Z+]N#7#/_Ricf#<fRL2n %QctS4q<mXh2j`tcGL%kr?@6s:G5(;mI'r4!-\&iT#E6<M"6+jad1eT_!goUN1ZbT9r[\"[E3FXqrp=#Ds*VBTH26>NQbRe<1-tcK %'?'6q%JBC(3cjaM5lV"2?[U)\3>ARo0jsN<eA7aFSWD%a-d'.C7]pRr99jFu^Und+GTFR!n.?CY\4+SZn;IUJ&3f3fm(6^d]=klS %pA3cdp\f/X$K@1KcloBD(WTgjo)nr6pWrK`kP.Z]5KH>;H1Q[,kA\CaIZTUQo)'VZY92gMg%Y;.d\3;,LQg`m,e\CQ!.;unNp5V7 %3r/cMIBMhqa"a,+e&cs.:4BaU6]UEl@ljFQ:-PP=O6P`O-CrBC-7+n/qsmU]k:q\'7ld>S$@/7.c_3a#O"'/g<<mFq^\R$0mN"Rd %>pI"XN;+V^c(Sg'+"j_!DSG$$WNIlRo'P9(pF#.BVn2KKh7mfVP:Q2E^3UIqrl.+uqe3QkhqYkKr1\DI0?pWrT&+eLq8E,Kqp",F %4mqoYhK01;*J85ob;Oc?%==.%[q!eP(j(*kXgl!nFc=!#=6**BlS&9YHZATDbJbR7pi94cQ[cRAno'jR<u6'fhHmkno&fZ4h-Y>3 %\]9fec[8X"SYMrms)iVciU.q-#3X6bl^rPBQCXZ4ibJ:M7tl>f4.\%\oBT%m:/4AZ4r5F*fA\3LWjY*a-3'.f2"/2k3+$LBgS_j( %5IlXBOa,ak#h1u=YQ*\)Mk-J8=7N&\2;:(Xo/G1@rla36><L&(Gfk$d0lD&kgDo63a10AKDKCck*9/rt\BRgB:+/^ZE>oAHE;8Q4 %\%10f-h^/\rtg6V3!Q(:6)[SJ_cQ+@*FKTH'-]C4*fPEe1`A$K9)^:"L<lZf%Zs-=7CG."fd%Js"gRL/C:Ljfqnq+Ka24$qQVZ8) %i*amA1Nn804m1,CSHS#pST-bRIqlZ>4>ri'f_d#hk>72a,Oa-rSt/C.WT2ZW#\W>ZV"Yt5o8]>>O.!d>rV5>m:46He9OE3pp@dYG %cb%<FYp02jCrr69_i>K-7qhOEk5b;>S+d_CoDrh_hEFO^*6M%1\IIiYNuWU)<:B:&r?+>krZFEfj7`L9YJ&9"!Vl;8p(BN>IJG?g %P=[le%rud:p<GNWnbF8M?';fMr#_Nhi:>:_r$:0+HlTFN4Us)oqI`F45L]@nD]aPLe#T,=M&s"[G.3^-_bg1\K,U@>eatSpE=f9T %3<hA7eeC:P2%F=J[?hNUf_n*r6&iQ>G)nqKIFR>uTZ/^bZ*-HQcce8Y4*q)anKg5.hqXfohjn'OmcJP6nA!bkj#=t24n3Ta5L/*A %j/UQ!T+@+We/5aJ4-Rm9IJ3["2n'V'q;L>hq<iFf]t9m6!T2^\Fa&+TrfL%:lp]CRJ%E:=7#C`Z4\m/"h&5DNm_e_d(X;N[7m,LQ %b8r0mT<Wue?VZ;"g!Sc?*PE`$,PQNI7ONC=]:0p%cZ0d@Bq(-i9b/3L8(si4qU$?m0HN>le*^i?2n(`t]:[;pn_R1\r@C705CL'? %qSUjhFq,s]p]qsccTT/jjiXJ;LH\Y,pG)>La&)*%*rh!3Jf\td&3]`CB0$Inf^@(,`/a4\Jn!@YJ,VtbpWH<1gs,QGMb-gVfBsIf %^H(Y:ps/Z%6OS_!QJ7%RpsIppPRheVpl5jA:V:>#%c>[m4$%aZL[XHr4d!XkZYT%C*PRkt967:\AdLGCI/E0umJI!G*oGB*4*l9E %O73('3dQ1GMoU&$?]<<t?_Ga>LhAaWTC4N#mHF61O4X,UhqYmCbO+!NBB2^-q&WPo^?7pH0<t]*94Y]ffpOoW?9D0ZqFaZl8,eMb %W>G9!^Z.jWqV5iPS#aN>PBPCSr:SUnq-Uma-)-mtcH\*3Ie`(r`.[%*rG]/kN*EK7qHD%^[*INP^&=mb3OH$SDeL:8csD%E>^C<P %g\%uCL;D&lo)<iHPkMfDf/&e7#8#2;(Oc&1[]FhYlX#_boZ0gL.#uXJh`dd9qaqgYTBpNQ9b2IJ[\o2a5OPS#Faj#iX*`lurI$M. %^Me#H]tZZ+=MN8:q7D.6P<\'P^o6uLDSJ1n^NePsgUud4!pI;!?4?:fO#qjSZi@VLrpYa9S6c0U%omf8:V+&>ro6klk37n=Za"t- %a\(Mk'>VqF)Hc.;$L1S$R00bg?BTU+$([3>-INs'85FTRm]2J'<W$M\C&>n_-u!qm;uXtt^Unc8nHhuODEKn*l"D[ic)&b?>l%(e %n,_69T3u0q]@lg3"6`M_PMZ>iG79l]Tm*.$:hR8(GMc_64G'[6OOV0XZQ+=q)Qk^]rc!&V0gkg,4Pu^SZ+o`+L&Uog+)(BRq$?B9 %r#g!O4k[T!jN@9ar*Fl8O+=(h#>)tBo4QTXa(+^$O3LI@Iu[%^o,O=5/*]8^3d6(84[1uO5B2]Rk5cWpLD,G,G%pk*D4q(,(-g[Z %%VR#u<%=UYfTZ9TVgIk]&!(#\j`[$ge"\q)%kV(+O<dKNB?O+5dn:[4@Xn;BgNU@1YKO':57TA.^o5%!VuOO*-^3onf_hZ'eKHPp %7Ruq4k4Z::J;9jR?D-8!/EQo(7uE@?fLepPoQ]A.qYc="a#J?!lkh*3qhmsjN.%tup3ltU9F0ORCUO,e3E!SBT'T6+QiQpni<Z(H %?1qPcbg3Y;Xlc;o#(H<t`(+>7GgcR*Hg*c/\[_U_jm>7M<;5K9hjo2/q_p]lJ7a&6F&IO\rSJ\5#2?ZNq5Cee]K?/R!GR`6\&r%/ %=74W%Z-N@A\B^[cSb^T#Sc.ia+=?IA:dOZEDU71Qs(7$=')T#l5K0SSG=1b/L."51dd.O>+nB;n@TOZ3+o5ae3VU^tX$-5)qsm?C %D6Y.eRZElP1]@*Dg->PR0E9;/5QAp=\(1b@7%#<MrnYi25:f/US^*(JIs(:JbBNPbI.=i;F:A/LYC="\qW@($J,JEqg".&/s7=.I %X-6VCm.t1ZbPBiA5CMKsrGq_s5JI0W_\`@5_t'>4?N09b?b"]:p>F+EpGt\aCL$kcQ@E.6ft[CL(B`I_+$V=VnUE-?pcj]#qcE%4 %DdWIXs.=Z2Q3R<J(FQWappsNK?FASelWcc*Fj8q<g;fpsP):fFd&'H)R!_[R9Zr[Gq=agA\Or2HqKj$E9:IH8STf&cf(-C(P?qe6 %^WrhKL!(]#fD,=\_X!MY-aA/,F)Q/;aNO%=8j`C?RTS3K(KZe!;I=n;%1c9ApEnqOfDe'^n%*:;Eh%tL6+t236\(E!8pS0Zi#h=V %#aSbN"sV,3@2K,ICiX(:kn\T6/bIdZ^PMY/F7$Z!;`oi^%n!cS=3&FRCTY7foo"V\_R'Vq(?/$ViqfPb9C*D3qQADsljYRXrE+>t %>_LbeeJ.>uDr.#F(,AoX+4f>WM'ZhD]IRj?_fC,`B3:eQiqfg`hGt\`YoYYd>`Wau[UhT\:*I&iYnVJ9Rb&He]3<GIeer/t\O%nr %q&rVl[][)V?/?a<X4X7;CiQ#ARIR`Wh(2PaVlc:W*>=+;hLH.&l!4c6'86?;Y#-%jkIV^V%G#mh.QbAQUs1*!&9OQ+Eu2BB*(c/d %Urh5?[X[20s$!RZHdCRs=bN9LC"0adF1lr"%.@YASaRKYA(Qa\<9rYHAglsbVfK*FF7!Y2CR<>sRW4=(\r"/(F)BaE'_U)\]YR;- %eueglg"VqHcY?+>;_W:5?*?@Flau3eDTHk7*Y>U8Z`O2JBjOQo/F./Nm]E,7:%\$/%g+iSFPMQ\6I'@jj1JWp=jjo[Ek,Gf=k;D( %2;MM8bSpYMr4(+[[!-:b]j1M=k*dgWZAI9(lIb^Q;.a1Z1!*X:eh_Z\CNFMF:h+21_U(PQ#HaSf&%#5I4U1KO9ob0oD.$-k.OA^k %]8+h!(2MAd/9<^\OmD:sFe:iW3D:`sd3G8j68@K2HmFH7PSb2IZ'SX4*MuN7:>?]b8J`kaMKe:Gh7>YQ.hr+QG,=qW'*h#S=<"LD %"?,#T]>^FS<S(Q\X_>9HYmijcCKJZ;\pjbT8C(nRRonG7*E]cqY#D`a'rNkrLK\.roT&C?CZJS6:%)_Df=UP:7@qur1)PGV_\TE_ %;jk*NLt[_]TF:nbXgdUulrHh>ZaM00C6,iBY]s^DZ!Q=2ETnNB]6r4$CP$];Dq4n4@:VAeHbCQP8sa%p<u)E&=#krs/jNOYQENBY %2KsRN(mhpi":e#\i&CrcfL=:0BBG<LqfE.LV/i*EpGRS>,L>`^P5RB+&I30+8gWK]Tj%!Vbo`8"n\;b7VPr5O:79+*ZY(F7H.=D> %<"-Fa!F(hQEoh"OC@U9qUTj"b=_@#2/QiOn-om%7AF0.qLf=+S?"-<LiaS"EAW[Bo,_o3T=fVs78,Z`FK>7+2a#TCYXXu'C_#(a? %G1kk+&Z>PNIDF3(+(-9Z>;H`I#Qo*+gDsE:;-mL^2A6'Z(=XZO>q]=]([Al5b$*8',"TeM*97Wkae/"C,Of\9.'m(rOq27Me90Ns %aja<q2nas3FW3Y_Z<S7S8r^Dh0hbf?*/oG9j:-L4$G;NiP",e(isBqm!/C]Wc]TYE^3O_i)6t<FV%Kk1*Hp2T&H/da-73Y3f=u?e %HE3B[N[#umSaED#C>C-u2dd"NeRFD/M8I1IP?_0g0'0[f-A5P)gSrJ"HE0n'^q']3RSPBL0-dX2d)NYgU-A<o&Sa-c:RHJ[at-/Q %_Elb\mp.d&F_SoHf)8pE-[Pq*Q+FXoL)Mn5gq2ntLcLKi>##?k'8/)7ob%1sDm8*1-G(MGG0hPN5?1""SBP9iE+qU@Fg&1'E7u84 %&"c3(`UL$u%_[$7=$<=2]%:,E[C9'f:<D>eg*2TSRHiDd;21($\b"a_o6!E*+s$T3',Z!G5o&cq3%!/mj02\<X,c%1P:31CDdPSp %U'T43oL=JC?7'6IKd&!4>fSOTD6o%pY)V$>+B(ZG=l^?r]Kr+L*EZe$i%'%gUX39$gP!bCg43*U<K=/c@Aq/O->ib[$;Fg5(2*mJ %r'_[0bcFmTYtHiK(C=h2JXGP>JEZk$\ijnd+Bs2S;GbmGjL%P#[`6mp6E-MF$ZR"<NbQGN!P#Aa9Ro0<53.g:lA*&7EQPVe`)]4r %2-n8FU_Qo+Fa4eD:V*TEWN<5QqmpsYjkbE;=D0EAq)$?r=Y&eWOLZbc`i-i&PF\as!nKMu'<nj,,u!ZB;jI67=cMGm%QK-.io1]& %!Up]K:Y*(@o:a*F#u-m>C%a&s6GrJgPF.Tr.C!O5&Rga@QCdjo>,K@3f;VXOCYcg+D6Z-e9W2-7mn90oZST=[Va=B,OCPXV=;u&l %gc@`3%I7+2/1ZP"?m'7#BiN(pHFk/sV*?QR>P/G7P2Fm1?0tH?8T**ol/5(?!+MeGB7ZS!4NJWtAM8ie@'PGeB\>_NRaSU>rY"%a %[?[Vj@I^&EU=nMk/Y_ZA9Qi'E1p(SaTrA)JQ;P$u+h?u?'tf;'8gP;GJgJM7NT>[`S>'9,4UL341/u]`ENnEQ!PE\6r-mLO`*B<T %$oae?'BU)G;3o3[(MZVNq-:oMeARe<9m/i5^$%q2DcrnT<Q/@2h6"hWPUueBDRpJ4ZZnTe3_?!8/Hqg<,fOZpooagrEos64D^>2T %S5@_(ljh=H$L3Jgp,"G#*^k-u>]7^[=e#*H2F5"<fWY&;+RU2[M>JpkUVtU5[sm>EF!HHj?)rl`PQr5Q6r[<sJ2Z#q!j5+53>BQ: %jETWq:ls.nmDAT_<6\*^A2/-c9GR@N5K0_I[[\/ZMcWVI53q:Xnc_VAG&qaK7TKH`h^L'#3i'Y-<PA*a,QVm:>WG4_BYC>i1[4Pg %^0ZKcQ=V.s]T,=ka?:[^g?U(/L"NA1]/6&j]#tl%WcZ,Y$)51O&Ii23f&+D+<jeii:<AP+aE_)l"M?u0@GIdp\/=PAQ](.6%cY;D %9M*'/X#8N1P./kl3E2D(jX1@m>c-N?'9-a)MHAe+V)l\%rIP9Q<,R\p<9mDdk&IHO_;3j]5P77RX?(qC71hI'brTd.8hmHt:U_'8 %n1Q?`79*V8P=rPeCDV89O)^or=#9e-b&Ue!O4_u!`>ZI^.ZT0L#oCL(p8bbgEQpmr>u^^o[Yr\$M\Q6@Y-iR5(Y5Xi`Jh:'"b%P) %%h:C+nYqiFeR/D"bRnW80lCq=9+p[$%A@>e0-ref/>`Xrb,hc=]!\TdZ5*a2Ha]bBC5RP2R:6;*0q5Gm-'XuRcBno&,<$Et/_>"\ %MF0PFM/^bN/mXaGjn!V5n`e:6]_+>05jL_l,AXi:SC\RmHGcJ*DhhhZLjCimIK;INkH&kX?qZ]i.@kAAb0hgI]I_fW0oP#cmjZ_9 %?5MooUogb*U;!e"3`Zb9*\e,8@A@2norM`fRWG0f0'elJj&Hs\]F3)3aOB@/JBAKS,<FtlJ9DYbH87pe\,3fPZlY"iA2aU'nUjlc %`FAt7YNF=Fn&g!`:e'\mFVeshVFh1Cgg6IW]hs3ljA@QOT!a,bKQu_:'nhoW[l`#BOR;%m-$R8:H58tVVI-=eie)K[M:gY!q'@8$ %l:Y@Jc/`3H;.)6):)c=OYW7rXDJ_MU.WI(@gf?G'N'KM,FumG#aLi6(hdZCU)?3kAiHcrOC*GcHbUEuk\YjeFr7'7VK9L;TX$"#_ %"'T-Z=c\6?667un0&T:]WR7NKQ<D0H`4SNZeuWrRWCM*c7lOu/Sj3_#e?8l6JH7JOj&eurT<;+``-Hqg`.Y0+H\.X*i20QGo1Yt` %Tb+aO[aUs%+DA'f@C;SEmRGZrT#&)*65I&3P91DT&6l_j<,t7R6Vk-]69-Tn:,AF&/5=)_UF./RYT^_GS7%r(/eJK]PH<@gC:C8b %8M)7;N#>+sEf[(9LT9?0Lajn7AV/kS'ZS$U*US=>jF'0<botuX!(?3&OY9q9.0+4bX2mLu'Xfp?bn<;!=Y)D%Ws+Q6bIWJCX=uWb %f$@h6e=?s8ICsGLgo3"_.Va_=rmVM5i.5#lX;XW2Z3E;VM<a%fr%d?V5t!8=M<]CIZCC'uRrPL*!k.,=Hn]Sm%Xd+["AV9_2n\$0 %EV*"G^moUJ*nTGbguetZ>ua,`RubpUkTa.]JM>D,-,_eN!b1H"4*V9f7s]#)HqGSd^#TPs!te1KiI8,:02J\i,B\U7Lrl>&Z>+D& %mZ?-NeVUGhMr+Eh-BNosEs-O2_I@cFa@:n"D8a4$R`%\gD:]ku&sj5?-`eO\g!,kjoM@7KTPCI&gCZRa`><;?/d5+c$bQT\(0_2( %MV\PmDs!aMWo/l0/i@e=RstWKA6^HEThD/QU,TrCC>/`NV;@1X?IpE8dk8nu"'*V$NdtIN@FfS42[gk%-8*Gq\=[4SS4c-5P6p*8 %,*cfCf<Nt_'Q.Mg7n."If/KW6C5M+h^TI9$qW4cNPq4e/hQ25uS#MNA?S)PlA[RhF=V29NB.2[(!9@]mo6'M&TCB4Klb85n+1'am %!?mB*3R5eko(U6=UAEPg$K'S@b#A8_IN[=)ZCPo"b?0G=Do)VTiXC`fgE3XM`4S5a[M6?T;12d9V<tHlX;98DG-r)6pL2?qM7qAY %%Qt4H[qHPkW9D?&[.PXQM_."</$]4_;S>r4]-i(p?]\n$Tej:U=F00P(7Q5@(,qG^iUm4?pO1E$6pt`,"fAg?F!9Q2/6g^a,FTTS %gi?Pb2Q;73^r2S]R*?7tMYR11PK,ugn<j.<Sua)D&;A@9#XZD%PT!06dOaOPm&l,8%16%m^W360$Ni^42L9:^1d2C42&e4N309O: %nr[CQ:Ckdf%Z;nr+fcag/!s2=d@/nb3kMt:_rC-qX#5,)6prR4""7Q?N(W?>=o.)d^6;DG&WJR3ifOX!R4L[H#\p@q(1j7XY-1\# %!u%Ut*/K9AcI@!/eW#A8]WSr9Gfnit15r3Q7Ug&R#+$?*G-OFP@7EO7/g>n'AdOCiWPKb7OD<(_$87q_>NJCa+s5'#V,+a;jR'(h %$VaK#i\DstCJ]a`1uJe:9(1#S^[u<j_&O/sNcWW93aDtX"K]s3H,Kn#=IfV,`me*X#El%TkaVVO+@a/1r:`ZdVJSnqcWY-GWpJ%i %.09cDI&7!b[,GGuhF3fh)loIM-9b#K-Tm!ePag@MNA]Nh&"->OA!I^[25ueOVe#4FYgc"=acJR)EDl\-%qcKneeR$b4u[nB`GWr` %-]0)-@bn\GM8M@p%neYl,;,27*#GbD9:SM=IbjO'nM!3.,Bos9`=g4A`@j`_N0<jVh<_*29J*8qQ58"\-fB/_2.i<>ppg_inX,X/ %hdb:Q3/:20D[8Y0H;dRKV<DJ2kmYWVPWp]u[MV<<"irR5cI,7RMG+mRHo)os+r'(En6'0nWZl+p^1Cq9b>tP_Ir1<T0R[."\gf@% %C!BVf=`dk+EG\?`fj+4U=U\[WRLO(B(5=td'Q[ei?@^Fui@_oX]"G7t*TpCA-B?30pUMCp0EHo:Q_Kr]LL\k[.@.AS-JT6`gCY&j %2^;#7LBb_:Q@jlH`4`>)Bsa)S&Dg<gc+8+_2T9ccP*!d%BM003+ka77^^d,K@oE6UTU^CDD'=i#$#p=\(["1;0=YP1h8<\pq&4R9 %UZrAW5WilB.][/:h?g,$'f2N8+h.Y&2WQ@U.1d3Z)Dg7]K-;%j$QLf(`M24<"JT@"f62WrU13EkpsRg&LD&&Nk/Cp0@#A&@j?_h: %(Y'r/Ss^=H5YIj5Sf/bo&q:Ls#.ImgYjPQkR\Y46Cg"K9a/LgF;ueF3c5fUIek,HX$C?(`@IQ,>pVKF*"DYWr]n?n1Wcm52OOo2u %hC".qbo+icGLDL5HB@lLen8\j_JfG'pEl5WIET^Y3k":i;6VUJP]>YF;j8i(FgEM'JLR7%F#4G`_Wj&JK@W_H(';!uTrDT4.'@7T %<(sNTJUHFj'!KOPQ;buX9L]PULVYmi_RRAY54j(7'VMV8*%s&N7t@9KQTcPSaQJJWU5%Q03.r2;A*_dq!_IhJQS(0F,iucsnbXq3 %&aPnJD]B*6Hn0d,h!&`6$&t'qYJ(,"@UNG]97B1uKmqPaj:0fc%$gYl%RB>k>]^L0`Q0'uUu8<nfF%sY]TpO5Af=Ws<6i=>dn6I" %<6(8Kl;Iq1X'UU3`PbJ*I0s%,`B/cK=F6&EjUX#Fm[upAS75<NKm-BC@9Bq-Y3MoQ@sYd;WX/-KH)K0Ol4(eU;ZUcRp`6AT>P_.. %;laoa27.Y-i*sUtGZE='%n@4<(W@GU`L?AJ#S9+ukb!X@JGk:=S"-@p$kC51B#o)ld5G+2Z:haS2oZ<p[K8u16O7*TEG1pje%LiP %=DTHR?U3bY[-D))&U>662up1$Z'u^5R(g(?-N&jKK9T$%-HWNQcT>c.Zo?/%ndT\ff>gZA,hADWn4)da6S?Q>f6ViIXS?VoOBHA5 %rhJ8-*Gb?-mAtMI^qc<sDWeHNASq#7Zl.?3//J9cN0OUSI[Ur+fR@`NYh[dHHC45clsp%IjEDLD58,$O%LrM'lUhM(],)"pgK]_h %mK*^<Mf(]d-s03=.,s+)oRLKqqWpt\LT3LI]^0a/#Y7ad<T[XcI4uVmZjH;sX6tjfme(PRr5uD@V/J&)_h';E_*J\ec61LSgMhp6 %RiWHrB]e8Y=M,\/[<?OWh!^s@`d[aG-boW7T7?V6-,K."^\uLEIrFJu:Oi*1li2-=`+^jYKC$&HrEFAL4EK1,M/=]@"%d<%Mal^[ %ia!_EgDKpa*&_6@9m@ji:+^Y$Tu5>f]&8[796:348<Sun\:MFDab!>1"bd4d>%uBlVU&CHXluK;2+Y]G.l+=T`3:a>W(Rs4]Kg4l %qMP7V3B1&KSc(*O6AEOR;mT()9P*hd;m&\/2*jsed+J:(?j@ckhG5FlE8?s-jmfCTIfAltT:Z)Qg[Di:Q0kmA/?)g]PecRVNEjG8 %dtmYC%k2Rek+'P1"`@8'.$bZNV^,S'j$)dP'!hu4=]`lg):F1c*1>`k74p_K]--7L6c.BDbebiE'B#Ln):2Vtf<2"FdPVl,oO[QP %aK1WUY"h78h%KY9Q5?X1Xm<03_kMH8Wb-s@4_Z$MBP:?&XADY+8MQVZ#R2dH%bH0jk^b;U=O0nSA"#T3BY>%b75#qjc];DU_q&uJ %Lg`W9'!JKVmK!]p2nM-lkbX?;3R!pC/0"GA-:O4'As-S(F8G>%s%5olA#R:gLC1=t-$!O_Q46VN$m'AX`FWk,<Rq-MQF\+*F]9l^ %"QIN#AElQ8">Nm6rBAn+)Io/7"pV*WC?Ydo0KX&38=l8N\[[?D?V%VIMIahdTD\QMU.;ocT59-:Qm)e@Cke+>Z."o1+ctp-3DtZ= %(LAAGP*\!Th-_9X)a5.o>e6*W=6*hS>cM<iij0b<PRMm_)-MP`*3HJB9[\KIqIIX@Uro0c@n#rlr1`8f<Q3`dG;Ef5m);b4E%Z<B %6<I3c:H\2VR^:Pr:WOb!7gXNFQ`qpO9<FNH91!GX:orti52&=G^h:m$pZ?L<55fWLDLD<V^V5hh=4kIm6!$4k]n,R/`6=$MrsR-u %cF7V@-#bBcEuHe]Qq[qP?CNOFji%OIPR*eLF;I,<_!Q:G7&HrVdu7!U?d(SV5tlkC`7?;cQc(O;!m,g$d7*GKXkX-PJ5Rk?WPmVn %'/W@SOJ<OPa+bK@=&CDFEV,L#otq4@q3r*81#)uP-_tR@ZXEoI/Q&'lVDLc[A$k/DXpkKjLqKR#cRM)?GhI\`)@t:2IiJTeq!4ee %M?1ok?d-Y7PP7s;O3]Z^8*l#T1e1&GP'(Q)cH-87R6"2+6^,_Pe05-"4'm(i.g'c4e*_<<+<@c_Zfsq62BJ%_dmR`u'^\j0eUAX& %TbPsrb9h=>?jCuhoTE_WRGE2("FmiPs0=-\S%,h9-O!,uZV_U*,+b#jLWdD'.MUFp1MJ?o*$Y[^oP[X*/'qirCC4U+I]3HNqZfOZ %#ge'`_m#V"5J7&*4k%R_1Vi6f[l4SC`);;VV&6^>_N6[lCkXq%0Nnq95$lZ'>QqD/"[U8m5fmc)!+N&7eEhp\(#l$;/)"Ge&E#AZ %i']np"R:LoZ9e_=bQ%$TrraSeVno/3OS&I*gZh&'DI;k<*"YZaVHTT0HXtjqLt&)J2ouKT)n$Hdb"Tch)QW*$`[6gD3VNF_8O8T3 %$At.%Zo3TQg.9Kg`=&&V%(/b0_<,<sac&PUR\i)9Q$_ZU39f`Ar&`e#nI(5b^W_2o="u%h]qU)q8<"P%hA9SE9W[0kZ]`nb[Y"ZV %X4!*Zf-WhXWWbD-XMluqQPd:Q2N%X4849<Uk/,o2C%7Q:*7oX@k1<_6)9"ud(I+?`fVUb>&IeLIZY:GI<I>Gj=5_t7"p)Z59m%0f %17(3_"a:HN][^m6b6H..q%cL2$<edOBgh&-AXc0N,+pO[i@g[&-LH[,=(:E's$i[+6hCi;RK6NT_421T'kCUa9"-e:-/4jq#gY[* %$<KpSCE_V8.:Y_cGd`j#]-[7<XZt's@U>4L9b9XsJj42U'g!ms'?n@!EC_@Xb$0XupO'91Bn6\Qr^<k3`fp>:-:niLK2j')c;,4q %A/<u]qYj2Q!9EciW6p=SRC"MdS0:ofK%k`g*rf]U>0%@ALGSi'8hNc)6S\gt*,C!!kK06I+-Nt7076;K6g2?2jc*7J7q1ug$d(p/ %MiO6!;;G7PErR?)9Q<"J30BGqVcsX#Q7%]-mt\j$BSC#`c9rY1WH&'C>mpW^qj,l6(@9gO8NDh)h.!>\`]h`^[-s<uN6%`>1W_d0 %RPubBn'A*"K+HT$G*]BK%8iPb+2U-^]A$kdV$mf^k]U$><L'8?2VffXbUQElL7+OPl0ZU6U(r&2(TJ@_JDh]h9I%lRc7!JfG='e\ %!MBGN$hq^iqPc=)'G[%5frU>qVCDLh_;]BRpGoGa]lobA^[uCjokqKD=GNQWZHDHFq^V3K,L=6DH3Y1Aj8aNTGmSuJpHD*]bV>(6 %q?&t7bHFjmD?i8r1,Gp7W!3,;ni6r*`V(bD"1r2,?3WLa1,Eqg8,b=*Et51!&FUZr$Wc`QDH!_p:XahX7m?*$Uh[nsq`srC>0XO/ %SU-^W<Vat'067PRk,o5b`^6h\SU/R4orVEt1ZW$U!@9S]=m#kj^n@Xab@%7-*WR%)1\58#26#?lp8oF#cUj..q@*0\akhWijNAfq %cTae29QHZ$a5lP3IXjXM^.`QPNlU5(,l9KKL4#EM\ET'rQUs)Nq$d'[a_"b<ad5Sb*4#Y'B?1knFi-=+CeXMAY`MbF>ptmD*tG.9 %ESN`Fei@W//?+-/3H"_N-hT7f5(oOOmjHu<r*]i/m1:=74K.Gma3jenq0:oTb^AD6Rcb>Copkk<Yb*)2:V<7OSp27-j,"$6SGG4b %T-5:P]URTGGT>c(M$N]/ofh0'+WjLmS,%\+>N;(9S!W's>JXZMZ9cfopNj934*=Urrbs.oBN\"jh335@]I3Nm(Rl^!`FR$jX7`0) %#2%=Wr8C6h82TX3@XO?bOS:#pCPh2&<Oh\-Zdf.m)SCR6P1NQmJlg_RK33SWbXju\SpN8eoC[b4rHNXrW0WW3glVQ12;",V*DNW6 %dg_cFHp^(6*mhS?e"7f<,Te)R]igJW^O59352Ucao/ZBP0)'GU025oY>e^u,*&V>LH1ur=q9hFJB?3#=l@6<mkpE$pZlf-)o&WO5 %k,)r,KZ(E/cSsp+Rc?/OL4$_YrS2ea^8gAemdZY*4ii[;p?0NKjkZ9]_DVnpq9Xa+I"m#4oR?5CS,k,fBMEN4"HcGYZU@gsUI;Df %$VR;IAmA:jQh2#TH^!/(q/5W<+n;B`#rm"F0(2%aUu_!B!"$Jc0rW&j>:bWlf'=h*J?_&k>F8.iB=o!JC5@0lYRnsag<KrW&d`lm %d*/3dGuh'$3](("Xa$>;6=EBG.X!%OA-fM6Cd]X9?:)"X?s3n"dt)Ekl0h(F&$>NE3ZH/\eMPQ_mT3F-Yp)MtLsuamdo`"\)?Bh7 %bhTFc_Y>H%n&NjfK'(n+h3JI>f=TT?8Oo)iQkn-Tk0DA<"BNSmJ6r+ls$"0m].XO`$l5<tf'A9+$bAkp0#[kY>\:qjU<6(OHFq[E %a.YA>]**U102A)i1o!>g&@5ri+F)kl`22g&M(sR[A?0hk6XiU&dTlm&N4'pa`EFQH+?CQd>uuB(Xu/p>>h_N(@qEKQ5#GmV(0%nj %Di457$CcI1"[FXQbne9\kfjL*$uY=4X>*O@+WAXKk.n'E/'HY1(BD7l)$kXBM3qNJ%i&Xo]R1l327>;4"7-PB&c8aoA)q=8P?Xht %R]TtJ/6T@nK(>=QLfhV$[:#jIrWRb:&]4epTF1Rhq#NOmk`Q(&'H:72bc7'Xbp'U?Q;PshaBh9>=Mtd:?u+4:`aL0,"J#M>\6_bd %I7E0WHWO2?l'>`$La@jKc+nd=$OKu-&=\8moN@KOcmiPV(`>.P"Sl;^Qu?[#;>hQ7K>;-!b8;nJb!;mK3JB2]aQ+oL"-W3`jOb?c %8J7nhh0;5!WD^F>SItJ)h)5:]3dO)8iF6=;k%o9V-;7!"TkaJa!*=H8<]R9OR$!o8A[Zqb@#P`#"s;JrXF,S:Z!<D$1GUs@CTai\ %,$dNcUf67V!>8BZ!,JR8I*,(R]m+Om_W$qb$q9B37Bi4RA'eBHQfXE@<E_Eo4P*b55U7h+r'KWr<C"0%AAL4o'"&K,6.M#-d_:oN %c]S?,]8E#AXkI>3JRE28"IL?_#rFjX=n:?6QkdN%Bj9:/B3))>G1Tl91E"Z'$Ypu&Z.i/>ln6k#B8p(0jWJ;PA4>,%:"7V%9e2EI %JuXF0M+hOGPG6T7J6$R#R[`GBp2[OJ5W#X862t=NWCe[jmREu3[dP+K65GZG0GddgCrCCI2ec,U3S9ec,m@spnOliu2"'?^IQ5Lf %XFMkIHLof"A]F3+&FKm.\J=9*>!;6o=N7@`09qRaf2-huQDB?a\^RL,X\33J/II=M8qL`4_=!4oNoF3aLjRPGJ&WEsV!p3'LD2P@ %ib,gaIqPr=7^+h@!0BC.*0T!3XJH)$TiFI+;q/robpop.#lVhB7X^A9=Zn2_H5XkUI7+1'BGf.j7MIF-[Y$_=XN?qZbDBB8GPRTe %Zih1-"$.M-0J[0=p,FfCDC5gIMRkNE@n_g'$&dFc5Vb$teFM[&Ugkj1?R6^E!ln%#5i*17W+#eeXMrg%&'$qdWFX%_mc*rjO*C+\ %ZbnT_Hgs_;UD^/=.KeNWN,_c3E0kFhJfd.TY,U/:B"$kAY33tBco&Nc:`6['T`4KN=H601?KMb:ZP5'UV76<$@/eDF1h_Xdc!FHK %R4.?;Y_%`)>egqPOG=AL+!lF;SfXrRN4LCV*)U67oAP$T<1G5s`*`[;,:3UH.GRh*;AbRg@pG[OBe>:nlM9?=U&3LlVJTtLHn/c] %W@S_IUP01_JX*%)^[jGEP3ikNDu_f`*s"\<i[ud1WR^D,d[!&54j%1>F@nP:/((YP6+!(b+>ui+WEDec+;\3YbUcu:,Y89aFjdcE %MYE4jYY?GYHqI[E17+LkJU+q#j9/aGYj9s/`KD`i7'2#jUX3,]8Lh4?f[s:;Xh_oI'uV*H]Qo./3Hak0D!Nl_^?\D`27Sg;8eRrr %&6G1>Y^p@`6-R@se4DReV-AS;a]%2X:2KMEndR.=IN:N)TOu^>*A+!h,(EC/p'Sa*1^u6QjmM]Gr88sR23oO*-KpIPj^p7lCI-!F %@bXmo:NAbhV6*CfgNtA'r2cE&cj>gJ=>JlYCb4Y[3<p0aG>i7:Ed*PL2DKH'5Ut<d1KeJFW^MriP?_DG+(MXCp(R&HBALLC2I4D* %Mhep/ah4b,OUu0aenhZ4"[V///kgb^(?u^.L-n,G:Q3@Rd%m)Q=L`W'D/Iaj%jGuF@=o:R3OASHT(TssDE-@jds3=bdF64'-%d\X %8GpuaKQBSb3%BB4l!/4l6]@%mNBH35,)id!,P!CRNk*3Q!OF6\53nI^Dr?Dua[M-]T!JKa;UWf/(t#m'j?5ZGmdDVV"amc`+)bX: %?RfU+7,7oS/g?qPoFJY-K<3"YP'r94o!F3U[G=(4[N]RW^(r6""ol]/Ub?/\#-:"EVJ=N1ZH65_puGjeAja.LW4NB#<gfdsM`2&q %'.AN[2g21M2?=h)+Ef4c;QlL\cm'jj1"PXI*4)B\5e;CC,$JuplU]8X35=`Fgad=iRk6M:Zcse,')^&,0<4NSk8R)e*[^8`!\IV, %7'3U!@LVcLndWg3]T-jb/%I*\oh);IO8gJP*e%KKG*,;B(T+L,?\C<1hUd:uLj@RMJ$"Dt5qMhdQISCa$Z*+i7u3-jE>8AX1uH6. %mdeVErGsM"JSi89g,L_I0[FJQgn(7!k$E`h0$q[MFT>C<Dm\5Oa>^?GPh30@A[lB^g+Gd5mW3tST#:N(eftfCfTQtC+A3*am[k$u %YBXTK_T>Ok@\7aKYK]cCZU)NJR`J3N/FpX!9iAYL8W?FCI$;NI^RauS:cI1r0,H=_HCJ76Hq-*QY\[J%q6l5`fj&0R6KC&+kOcBk %<c[srlR'3[G9pJJ_!A(&6LjmV6KA:HD3(t!]8g$4f&5Wk7N?5sQaKQ.Rr&%R/RJ^'[Y/=sZJj=66j@klX%4nJS>j</L.`*hB[(b> %m'3(El?t'XA)+Kgg%kM]hNZJhL=.oTQb0M+[6nOHS<U:/U;bs`!PPmc4*3Mro/RHmbB`j[FBWL-/?Q/:X%qY\J<NU7_2ok#>eh,F %QmkOKb8?>s;8jNK_'Cbs'im.:H(2I`'Po(62<GafFge7rba$h39'6>H>ZiC6YrXM=$AOD)EU0;42sCuM(onu1m/gsdXPM%n`(9]I %+k%llN>_.LWI^[10=ha@LbqW\1,c`4-uDIAoLMAJh<FVI,oUT?$E_3?nou_2CJYDYLjT:T,CUZVi-TK?r^#'%2Z3NN-M%_"3,$)I %Y*N%#^ds/iIY!ao"PN(YJXC/ed&&d)M%TCi!i'#`f\e?pZJ-H;U80YeJk]jjc"#<4K=YK'09@i6_4d%QiXBgjWVs^rjYf0-J*_'J %!@(!MK]P"^@hBs0rFXWE-uZo=]ZI80I`uOV_=\7ra>YO%dBL[ZmlG'o=b@O6(K@@(aJfm;GrB^:^p9&]BRl(JR==lA"OXnn(`T4F %`IiHXU`>]coZc]4?AQ_:A/@#]M1)s1hqYaQgl#2k,EWZ3)X?-\/]/^0$M0FS>cWS0S&RSc$+%lu*K0VMU"mjQK%>Le4<JIjc4;m( %=p`I6X"M?(!Z*WXJ"l_-`NS$^)DDJpH#1/p]9'//FCPZL&8UD2<q1>9X*`bm^Y+m^P%3i82$i;tl5d"S7s60pCJ'=Q#>nBe/2se5 %)Mn$Jkn5Z]P1[bYpe*Xt=ki++ggr_]Ema_o[PNO:K0K4>P54*sa9gj>okl<H"Qj,OU=RSThuV"B*N'/VR#`>$E-12OZ>G1nP9Z4Q %G[$<N=KPDmVPVU2+qfQhS$^:<=B]VUgV'EBm5uhY@:%DQL9ZqD4IHp4--M)2D)/lXKps@^OnJ)O3Q<9088c;cnqG`O7s6&^6dTDq %K1FbeZbKb`*%P>1r:PG-[OuG?dR::qnHRb6N&&jP-7>VPIN=>fQeT$qH6IJ.aKB&3[Q8#;hJhV%"!_h2ppQNoqn"iRr>N=R`,sn" %G)D[T,,XbplRlZ#(,=W69KP[:G7i<5M!6NMqA(e5nIRE&fgSSY&_"5AkUp?@.:TlHR*/ThR(c!_G7i;"&_!:2*+Ob^Qt+]U,3JIo %i?ID>P%*JHWfq\/^e(DZ=[\.7mNMj''/BFs0d)sAkq6F1XDB<N7Fd0OR!si..Jc!ph,qgZ7M0^8D%Uh4;oE'A'/@a#N&7!!R]o5> %/3uCPY7XKF1`%k_iYF6R\[mU5cBsEe/iKqh*q%i.7N-ldH8h-6VRhQa0fc1SMjSpMl4u,1782NHUUu>]VhjTXAO"1PZ/Hm='AFsF %:9oeFmNSNF&^t%(Zr=nb(GTcbR-l/qD6\)$P=*91(C%q4k$k*&&T\Qq&Ta+@`14.T4R.Zn]g0O&'lU"+3QWm_qSBOE`:S\uD\7U8 %ikiLO%Mp))X=&"GQj_T$_4J&QZ*E2ZT-@m^m:GY`/t_fS%:1SpJ=0(P>!r,SB9KkgA8>[b@:E>rf(1_mTe`IjVh:ZOB%D/hco,#J %'CHtnj)Q;8iNSA]DTUJp?CmF=#kX/7!cDcYO_CU+Ek<9[o6-[ATORYo=D$S4<09u@I]QQ$^WsFhCmR)JM4\bZ-f:RdIb0:`fAJu] %A0N66g:DkT[7AK[a<5II6KR'mK1+Y)NB`I6-ju02RC#c^kl<ld=ukc`4`M%8lng*BjOSL4pIpOgOp1hb*mU(ON:2/u3'h!'s6*?E %HSs8&d@mf]E\u@SQGipWab,/s_\,`u(\b/qRI8)G6K\V9[n.p9I9#d.L;tI#g4nrU^J;O<3iiE*:kpX3K?/Bn)^jRr2QcD*4Nu/S %(SZ"8jTM&hW!'e)gQU*F2EbML&BNj*[a(We.j<MKCE\4qI0-^;]^+NI!bHDV`?&fCI;oMu=[%\(AGlD'c<9oCSFj[jDKsiA/maS2 %[^N]lG@]:3QA/J$XKYkuf\GOp`hG;1B"T5M0t%NPLQ>Rs;;T)aig:eGEc.-*hG3E%ZX:M(r&nD1O$,\M-bWl<QO=U/fZKE[h>e;P %ZXZT4fnbXeHNm^U&Io5p9!%,;kB/^O/;[k0kko>,Z9O3!MhGBWhN!7p$H:n1M@^C4X>4rZYUaCLQ:JV+$fl=J2_qETGYgD@q?_*h %[!jsb8rR"fAQm@?%F@\/T5]b>qI,`Z3f1lq>f`/L:kN&8,gSo`IWLImn.R@ji!A"d=9r]$`q"i9gHjm>beglaO)7p8[VE>Hq!Y<W %PkDL5RGi-ZfGO1FIeEF()-hpg%@J<#Z$>E&2=FNmb]5A:'.#9klfVfe2T;g9U*FrX%X,'4<$F_*^_H%VfOPq_e7(@G,R-qg1>JIp %['OSK_[2L$RTjcBR1X_%fp(_V[cYG0/S]bHZ^)]n"Ii(q/;TkbI&kgIO7Kf<e0X9P[dG=P1X#d%<6prbQ'W>MDkP?PDoP761M0bB %o8^=2*aZp(:O(*0iD;JglilB[YIG>"I(gga$XdAk.ZZQ_[8$R_nK@BR0am;&[TH&<A(Hk-A[,$O3KllkCN5HpnHS(T,T^lNN8<B6 %b^-`&0,H<b*M6bS@cFP8-?%+C<(H[l[)rHcJme<g>_]_r>3W\%c$2-'=K\,OXd2Eejt=1UV$dbLF-Cl"W[%<!<b(EWGpPj62s]1G %N^XRKZO)q+kp^1u.#M2ViOqt$>a3E6!pMAEncI[\!Th+./CU]oB:ZD>"\u@3KS=);2mO&U&s"L]rWs^4+2H>>*?>ZbBnC@!V/'sB %)c9t8].?.cU0]&XjXb9A9(YIA-TQF%*4&h'C2aFs4tAC4>M>@TpEe0R'R%O%75Q%u4=ke)`jes92H^B<gZP$k2J<+G,ne`CG)%9p %E360j*D=p1Cs*eNO(>SCJ)p2<@00Yck(X5qg`S>I1_6>(a:u\>=D0>2Zsqtm6BjU/XlYYgPQA<e9E]3u&<*[FJpd^k0jI3TSU7]H %1B!5!]?=PaM%O#a>6<AeCsl@94h0896JOiAK,h9qlZLbdK=YK'09@i6_5!HmcZf9E<i#J%Qc%&=)2E^pELZ3R4@`Gqh*7dl7!h%G %^WH*^+-T1_<,t+YLor0:hGGAAI]Le@[fETE/ujZa<NB=WebVKifoD9uhqIcF8sXG(bi8!R7$p4OarhYG7W_%80%>(Di^mtJd+gSU %^;V@b<&dk/>S!RP(I]aE@f\,/p0(t4gt8%^.3Lcd%#QXMNj\#^f3-'/J,B/HiM5_[U#Dd<X%qZZ![jE2/,<>UQh!7R#dS.`;r[<J %QKC[mH#)OFd=pFRKJJB:?S(+-(u)/@1PhW>\k/U,q6J,m!R@'2n]>0Cd;rEFiff)`\bX[@QO,EqZ&L@Ui?c4@#LUr4(NQsYTi`(1 %-X^.pMp0mNPN^F`!Qs$!L(XaKgWAqV!QlO.2dc8%WnW:2].R9I4e:M?f7e5VGn2G-Frad%FGtudDmd05dLO1f1abp2HX<L[`.R)S %`fR-]WGP($!QlTb$3c"NELEgdF#R]/O#Wr:IHbrcUV`%\29iWWmdB?F=d!=k#+YA'U2JW:Mo6!)]Ld#)oA)T$o46U^`"UuZ]2`St %pm3;a#D<h5^DgAkFaVKGM>@:&'V1\o5l!-K;bZrY"kj"L5$mq"H[`'BHFj74MZ"q?-7ZPVN[%6$TQ<J4KqE5JmUBu$09pWT^75#& %G1dZZGrAHT3jAi2)u=NomEi#VnqK'2!(?DlT%F*<@/f/F/XXd+_])g!+n!GJKhOCbLF%]PGu&Tt_b4fq2G`nVN+J18`X@<18Y.<< %!1a9E3U[g>4j!;_[<n)"jUJdKH!\KGEV&t.PBa1F8LD"K7*@7=kQ3k]>[R^4"=AD3F9*]o(E`a8r.L%^5_0sY8m]LmF48M?(YV=p %>f\ag0rZIEDKLGW(Aee`FFc!Z35LSDS;`"4?#Us)FMU9"kQ7iD-$aCH!-Zc]pc#ba]mMBQo.lV'Sf:sc"(Ooo-bA4q7iP_fS%IZ< %@K8p,Z4t)D(SJf8-.M8ubJ_Yb/i\Y7]&5n%\c?q'ZU,JU"X%!3kD:ekfj\M3>p*G,.Y/[8gcYDS7Mh^n73XtdZ.0LH2nIp6gus=t %RHT7GX9Y*'iFjl8o%YaEU'iSaiW,iW-TM_??n'AN2nB"0-A?V![X7#r1$_Edk^j213.PMiN>OY3i'\A$DgNA6^WU9'>D!`];!8,3 %#gh6rSeM+iRLc\9)gd2na`CM'CY'fQ;n@oUQ=FH(\`s>aWlJib@QRL.:U6lc69AbL##Cbjer@S(S7&>/nSTnY\$]MlXKm&UPVL:l %:G8/ph2RtS$[l&8>XH&L"!FcB$-1\eG,^<PmYJn%>f]V1KIZ)KlBp]?Nkp\&,L*R"j#P6B(p*)dWLM.j?.:[TZT7?dN+KP[]$ic; %ifWAKP!.'rH*N]AD+=:>&YqpcVlYGDi+\d%=0PXBdl]RkS8"QB\KCas!@=?"g!1#0GUrkaa"b#KZ,Eqho<BA?3U\fNiuAe0o>EpG %b]NM)d+,g_jY-gW`?lrl`\-)8DdZng$ZW(i?H<Nlc*Le-dld.K7m?Au:Q-;.b"VC0d=V2E;`?B-A>a^I_c7pGnZdf!]KiC`86bu+ %OI>6VRIf?62uN"G,%e$&4jlGGA;2.<or:+(;`DD-[hE%DC8(TI/-I7,T(oB7EMn(ga@s[fbf\G[b8]e)ccb&aA+t0fZehe"b=0YE %.VDY>aLh3S"NIE1l[sL-S"l[T>'0SU<mhh#IcEe868c"0:s3,3Lc['N6=*8&)o33-g:X@+>%Cf>jEC6+*@tlI*QqQ.dgCb#A9geW %%dWa_==X17=L;-;q.A2L-f=S+G)>P.=E=\;hfTQm2)r_'SH4e4>XW+%.^9[gLQtIdmqmYS$.T_FM,Xc:2F7a45=(*Q".%KNN+Lfu %,ZrT?6c@55emO]&l9oItQ=AJm7Q(l]`:81]"&<eaUVS->\^l's9LM*NW3"`2G?RSc)L/]K?6X2%`fn]o.Gp*o_51;(m'=Zh"'&(0 %gN-?>MC^SdatDtjNbkLB'-^4-P7T?V;pE<`Jfj&JP@b@'rB[$mIm760%rZ3LGE!%#GCBSA*NI`,_ZZ8>.a5seo:U4R6oS_5VlF]P %G6!Ki]j'LAFhNmMId`m$jAAurp&b%FNjM+Z>X%&-)s\lHQaNI2l.aQH?WN!<L,j-@U-:r)2fkS/ST&t<S+_b&k<,jArUb7Y4<JKf %)8"@%N]D$ls5j&8V]mNP[%9jt,/'9?83tb^f6[-GX3<:K^M6-!pRImR3@^m\oi(I"QBZhAMY-iAk*A,&oS6T?Fn7Z90Ug1D#>ll$ %Y)-X>HlJ<mCn1ml2RW*NS03X^1,Lp:;]_.Nj)X_mXGD9B]6tq'=XW`AJs.bQIuW*4hoY!o"=AeXmD)N-0e#Zc95QR!LgI\jM#%=s %.H)3?=Bo7f6q7='-;)]I-Qm\9-,Q`ih19mMHl#*BII8qp[0/<M9XR2ZMjI(Y9^.8@1H/(7(C0=4FItNblsaP66#5&NjMd&Rh,kSm %`VDA$b]GBt9YK2%`*+]if99+NMT1P.R3a@Kj"6q7I?&-+M=Q<]?\m6Dl\4+Fh$\@9UWpolio11dnuHuSi)HmhibS)I#Jt:=X12K; %`5Jm6)#b]9NK*)p"DBHq)e.>Am$qIIe)[uYdL1--@:V#^]\0>k<L8$GgB<h``I;Bib]TV(%qG;dMaXO8Y0nkF@r!2@fk9-ZH74%T %ZId1RZds=9QoeWI*bB9a]C(gE\,)>5$h/1M6$"k.2NG1ZUpb9"#PkL@ABB@_i7<@DeCqn^nO1q;p2B;*e>kMm^(BU](u!J']](`< %$$@I<Rg5mNk],uDkKVY%aU<MM`/XH-k*Ji`n*Tj01!snM-1:=ZB1oQnGlC83J7Ir9quHbsP?8@JfVU^PYBuhr]"nGU^4SqO*$9]+ %+:$SUSqP?V*[1(^KW&gnKL-[WAh4?\au)b9]Fp.F?r!rJCmHYI9g!9aZ1`X>s!:A#T.gT1Y(MGgBfBoWd=iu;Onf'J/9UZ'\\.Vd %9C?1$9k-3,o:VV$nT+2ID"1uTNql2>UmD^'Z]XhnQ*VT^nfe)ce-O-LA,a@P^"`,/a.Ch4=Y9G9bQkXe;iB=1EfV\C1:#G^(LF"M %G'o/T@BV*:4JE"8FlGh8.l$$QB9[X"2YBHu7/Z(:S/ZLVah(O?1$aNZh(Z/O!"8LP=%0V`hsH$ue.If'!LGtp[_%rJ>DPC6N-/FG %f#dJYa/gQ?)u*QX15g5rZW>C;45QVO<S<GB4iX(cRl93`Adtu)^O4fH>.QiBVk<tTl.>t&btiffpG)U>^O5YM?i9]s:Z$W,s8M<L %5Q:757eu<+J+JG6Ig/KPrqG`.HXfAm4T0n`([h.;Kr=r\rT!o`Ujm_@:]K%qs8DtNVr-OTs(F1>\jN-P'YFXr2e4An>>1et]Km;; %eH[%o9i1*n;,-`!7^s_M[3<`1mjVkC(Z]hn6*qHWH(@'][Y=Kq6d@)%VQM%kfL3GIB'Dg40bRIioZnZU_jegs+&hOF3?E>TmD[pH %?=*q`*)MjXLk(oC."4([iQ)e&X#1e/9@3Ni2,l*d_^*Bm*Q\1nnRcTD$G(3<7?jIe>HL8i^eF,ZaU'/tjVPI\cC.Xc8jX]H53%oa %,(\c&P"2g#\PZg5iB6&2l(#PJZh<#H:RbaoAeL(>Q0X(Sk0IcuNp]'+L*UA'?c/b>4.RMC:FRgW?.P+*W*S!4Ej5,?85*i9NB"#l %<?YB_[J)cYl9K*Y-jTnuP/=ft!l^H`C@oPtW"(u_<i]aZBGII_In9S.k-DaH*.&);ii(,2gTG;tKRi9HR&\UP*/H8)/B'XeFDk-E %n%bV8RRf+^_;8;Ke;AaD8a$2oU9c(]@=+Jpnf5P3=LB,bA[Unk1G8'XM"[rfmtBYFclFY+0X`E-7TA5TKrL9'?)P;r]4P$%b_A_' %AZ<=g^84SuH>E(,VZ$V[mT%nNTafF^N*NH[B7iT)m*K.\3S)SlR$=G7TRKreXrCVna*GU#D_#ho<7;fZL1BLm7+j2`@'8N9@[lFS %,\uS<.;A1\La_uEm7(08Lu'qVO4M[^YoV*1H@;FCE$b2R)Yq8[3PGSDrklu#9)\C,B'Zr#<t^<2^Acq1D?Sr`8H3tB,"8hq-64W9 %6FdAQ16T$kRqj\$q23*V"^_]:QaY3JEuGnDlZU06':lc>>3[5S76c`Ri=R]*$)F!%0Sl1V^R-d-1bQ"Mb`df!A?#O1NKeM6NbrHi %,s#@<$<\f]A\9OfHP%L^U4'dB(cFZu6,s`uZD8/DV4G_P'h'[Kb%5#7IoKGg"JpF^[@DiN9:,ob5fSmT(JtNXm]+dMLo--"CQ)3L %XnRm6a'?%hXRPI\EU0."XRW(i>.H@D6d@=7E#B[MOlKUfe63jKR;E^niX0ZSIiFt)Norh8e'"7hU<1V':>ee_ckc8/cK]l&Boran %f43\^1hG*7Mh=ZQT3=X-F8CVV7"jM7q.Qs5[JPtZO<#Dh]t%[*^4X-GNiGKNQ9\8s;(j,0X[lEE?p"EL6U-bD<Eu%V.CfTS/cb\o %O^Lj:=s?fDb!Jc`bh1HE+VRCO9o0<EJ43/'J141pP=uP6'c\.:'lr`$ZjP_dIW&pb#Z!>Ve-PC*Lb.'(PoOl;8<SF<5iHn(CCS7- %$S`plC1-F%bL2,rm-?1\.j;CU)(\pG%,Vq1Sn8T?.Z__C=2:UpKP6ht0<re,(#o'o7$r)Q\3jN&Mhi$1GD?R\erZm1a:/i2'8Z4f %8ebO&N_H;ED66ZqE(JQi8fDmVBQXd?3_Ek>N@F&"U5_Fk4UECX-.Gfp+!jCS&1,=g@PVDPXnhQ?1K0<.c$\+t9f&CfH/$F`jsMd& %@+--d$J?uOYuI2_%D-?l>o!)Uj^CaPcr=HAeiO"'j]"RaPHtDN%l2_c4s:lg70=YIn=<i@^fr+_@1hJGcWlj2gEC*+Hn`D5_Pe-$ %f#aH,B=is4,U+HLR#k#b]E+1'1gQKfE2in,Q_pH-=n_n7ThH#7YF=MSj/44WVK>)`:PH[n;%Bi01b-(:a?u$XRSOli#]\.(1hf[Z %mk_)bfo2="%s]B7(X\2tFfHYaRipuOJQN;PDdYf'p8GZC,&A+k4Ibtskp2/X?B8hW?giqecrd/?&6.\X@$*tbf:uYg7D%j96A3dc %^[LGM'C(Cb;%Z7joO:;u"3A8TmJ;KLM%2>Y2^b\!DO!+Y>suO&apk-f&D<7EY%=+#J@0=*%)N+0MC&m/#-D%7h5c>eQ,ACpXqN)E %1rG\OdeLh8lpGNN&4PiFCU(t/O&Mt'/2'\ik>/f#X7ZSX9fb0fPm.mM5gWTKB$IoAfPg1pMOHr/>GL=,AsK/ffu@\Dc6>j_2*47? %qU.os,p@%O?OZ>,fhcQ<^7]-<SnJk#`SIO15m+Wa<%bQ7iZ9nB<[3C0REZfqD,t`p[Bo6(X2)]!2Q%`j((htkikLiF3^U6M<]Pk. %5UFcKG[@rc(58,jntR(%_1SbO3_rURB[A=-S%<?,atROsatXB@ZY+sVGr_^\QuL&)!\[W]CV1KN/CeZOdV@>hHB2b'.UDtdn-$*i %U0^2AIahk@QW>g]YeNl$KMnIj>WPBn@77g#iZ:X9o;AGk2OL`6Go"Y+CIl8qDNu3N#POIU9F-:9C?J"p7.8)N[GO"phleo1ck,*. %N4#gf+ruE6=@goM[3$)$`emV%h$!1-A]jYQ'c`(*lPDt6T-Mf$d(&;Rej*=aB]=B$C;Z8sJtl<lH+H0o[6TY39@rlBMt7m8(IcY[ %UeP:W(a[3)q-MD`a811q>VJCBqqk(8a.RQfPSj=?#F3p;!lJ+S(l5l*G!lH^X!#;>hj6biP5n>Am:8Yf:*aG'oAX<I9cAVYILUc[ %c'6J&BU9)AijHeBFGhJLq(WmM7rl^/@PGQmq;Xb7Z^>5Yk;J;J^+CW@G'StrG=j6Uj8ir)),YL/+)Pi#b4\3)6$i]$q$jG1n:SEA %.XGQ,()+fe?OpQCB92sG3uW&jSmQ(:M$3F\$fX&YReXU5B`jQq@Vgfp&A/H"=\M_0i6]]&er2#7S.NAUM=)Tc,Gd4UD&mtj]@k2& %gVjWH,tWQoflA)K9PX9J8cI;&?V9A^,7VMTG"]QK!>5b?gGR-;5\97U+<$f[]5Q471>jH6@3Et<Wj*mWs%l:o$\OP`1>7/.;&s&r %qCkB*@!_>p$qLn:4dO'GagDIo\!6U71B<t(ZHC<`],t@&+N2P.kWT%*k`luj[4ETn`X3uJ^!+HuStcC!L.0IchOYY%C6iRJP,)nm %aE:Z<JIsGUUX0O%_J[>pBXOS7o]GN[Xf[J4o_'nLn.tBmWh"`SjTK-?bNbUoAY5Wo9LIm@)MAhGM?XaMXW,7'P^\d(l5"/9IUhWB %"sD1?.^T7U1ns6^W+k>gmk\ah<632Z`A;:Y\.D1&2YFC6,?E.P=Xn.:XSf0_^kca[Zp`FU7-!g^1hKLEe@JiE`BU5ZPnG)q[aQ+( %1)V=m-T\"]XH"2H<+=:Fcs.4hE>]KYM)?=PZ%bm?(:7DC'%IqR=^rpNlTnd:/ZA9)^L(WbEa!BV-&Kn+N\YHGSY'BHeY+Q\e0d;a %OMi>=hZL5-;GiKX>@k]"WQq?t>)q03=js@tVPgcHSB7aBAsGMNSRftb%%JI'c3Z9':l0O"p.uMtSZbu8J@;8Vif=l:Ob=B."@UTG %kaksE+F3#e_2]_./SF/JP+O78EsIN!2olW?Z5r7:[o7WsO0L(r.M5bmn+n_GV%heriaA@*38_M6lgTECMK!YE7:]NLZ/)AZ8\kXm %K`Gl-Oq6\P&9iEN3YY;=e4(+p;1J%WjdTjYlL2'ik.>*]KU7L.188'M_:k&E(7$V4b?1rob?7FaAUB''D9\@77:-*qiFYe02L.gB %Ko7_"]i4.'/OsJ"q>qG(+jl%-\R4[p<ZuQ8Vh:>1nTEs8?u2^XB;nlCd.sB?ODtSYSH@"!)gZ)dAGohV$4u1De7oFHof@FUo=d^X %Qo[NA!"p*F=VG_s(t+bQ<]7Cb!N5:dZP-7r4^AT2Q#PrDJeh,R&Qq"mW\=`6\c8s.lRsL3f@c@&,'l,*5GF=kk)[d1r'i_)>'*6^ %]&EjH]/]__;ZWmsGLf&]9o]V&+gNTJ[.T/C*d=_:^8jn6.2^Nm_j8BtEE6:_0g18X>#ple&-;^VT4\=]$'g&e8=S=m4aT'39`;$; %'6'28g=GN_"\WA,$S^:&U9Re(in7JK+dcV<aN^_u7)-"C2\n/>SW-?i2m@Zse4RZjLJ]FtPBoQL;5@j2R^jj8\n%W,dV=n9'*_L8 %/uZ0jVoU?E"FmPP?9s&C59$_=dNTa0=sQ9oBbDF-TE\GL.;3LQ;pq+3B/W"GntGK=!`<6"H8M\kJJCdpGosmgPG)PF7;NK.9gD3) %a14TfJa?KLS0DGhBJ:N2>g[Y?*0SDb9IN;laJ!t_po]KK0Y)k`W`[MWLM>jY/=U[MGVYZKX8j_VC*jAEa:hNJ-[Fd4Sl@QaIo_4Y %mU9&MTtb(W"^!TUm1TV/?nGXBha4D)Y^SE))dK`[`f5qsJNU"Vf'qLaoSF"PViI;4'@@*tFH0DWK@`A'E2qk'=,F4AW/n#e[QWK1 %+N1:649OMf2-<^1n+)PMeU7-%/@(gt%c]hgB*B1@I7Oh?-AaiQk_Y8L#m>Tk<_kKi\C20BkfH$@-:45`6JM`9qm6W](mCpQeiuO, %+JCf,&5'AZ,m&R]\O)+[O(L:uT^[ksmha04h3`o^-F;o+hkd_s'B*UIpb=Q;+<?hK[;XXh:>IkJ\S7eg"Q5;SJB_h6M[,(f<4K6a %A)s=qT4"%e-gqsKJL\o(b+um#.QA^s,Q]--Mj<oSCoh`]f<M3$!&S09#tCqa5i<'(?\0)jB&mA\jH'fhX<'f5[h2Vm"SSTh0<AHK %fnmb/RVA%q8VU#4-'B:,RneMj/lEiJe-Rq2=.cS=h+c.FZ&".8f+b7?TNY2U/hNNi8tXi0X=Fk$8gW$Q>LPI,V%Zf9PmOJ3l6+\f %TiOip:5Mh(Hh[V%OU/L"AE.8h>^H,@&fl_S<4f?e[s"dEo\V`U=laU6.]ai56pLaQJQ)`b7FH@Ip.5]s^KJAn)H4KUp'.b9m&f2` %Dhcf"rW-T1=f.8k$R(j&q27Mk;HMDG09c)oN)7uTCJr3.&2V**5J0k!i%T<1ksJH2K^7;h<<4nSJp%;0mR]$iTdF/$Ru+S_$SXEL %+5#9qG[%\W)j.D5.=2l:VM`Q:d1@Kc/!QNq_gBHe[bB5F$(m"+=1'RPfOe+G6g]Ym>RYZpD3N'a-NsP&5sZ$.]`qP<1)JKK25h&. %35l23&iEhu>;/.6;,Km,#@OW[iY?:N:sC0@U9fV]S#pff^+3f0+^T.DCT0ak'(aI"&nREr@!3=M-Xc#;/fNK]&m#%G<">#IP<Uq* %.4mrfC8+T7Hi3^O<_O_HF1ns2`.@`OK11;:09k`Wh^\0s6Fj>9-p3jDdhXLgS.9DJC\9R@.r+C6c3-NqP,0?+hH"n5F0;gW:=7^L %_<d8bO:!.GZg8AA74TQKa:j))B!W,a2nVSZD>(4+a</YjZg,9BrSD")l+FZG5M1m.UoLs%9"MfQ8F/l$96A?O.l'Zga%XV.(r$`T %8F%3>W29#GC$MB8!^sXVQ$=aS3\:W_7ME#eP/+75<=Ad1$A8Dap9o<r%!<a<<l_5'_s6t@Jll0,H>$_ON=PE7pqm/K'#V)VP+mkK %]JDOM&h9Q!B/*<6;Oq3a_@Nrka#,.h(r0UFiL(46Kg?R,q[*FB/rUKT5DR,b=+tl5-@ZT!;9kp.6d&R>H()$m=Ue)WMCOTXF9r:d %Bh..a]#Y3G-F@X]FCUA`7PTAs<+f(F60qpgX;P&);(a`2/u=<\>1dSs3+<#7';-W&D%4Yl(6D7a*RTj4@dK6T_-m7%/>5Ps;qN-/ %.4^=ofb!&H1+c[EZ759U]-P0b`;KeD`Kc*jLbt>&%c]s[Z2fqXgso,qUkRfeJld!#8[IEQ9\Iq?657J23j>EcK"%'.>J74lg?sR, %g-q4Ua9J@gP[+p-V%f2`]qiC+B7^c>Q=L5Y9AH?d2D:TOXRh'0_Laepn5=lP,kI)7R4#:B-ZBQ6aX)[*X*g;q!XU2KnfWCgQW:d5 %i,?IbFTm-7:#>qcaq&%<$K6p1;BAiA*5^\s'glu#ncJ56D;@,O^WN.&,oS&C@Hhl-Qcc9G0b]>SfgabC/M<bGOKo(lV`hEdM%Bhi %6iNb?@q:1'+$3=kWp.g7OZ&Z4`'dGWcC,6]]&4Fu4k:ZTG/bo7TlMtF@IZMUfn<AUh+"d'9("SB2iYDQk*Vs(W*14_2&BoH?'ia! %2C1s;G_P(dq>cp-0F^>A%HFA>U0VdSaa(!1KA=#k]TZ*q3$cQLZiEs/L2n#go1DcF?sOs;=nV0'eCZu4(tSVj'(RKu54_oXc%co9 %ZYP.`eNCeY%1Og<0cQGapoeu"EGr`S<9$"*NfHMp0R-AP%;-',Za52kETJkU=J1M+NfZPhJDJDK9:*Y14L,gJ>WTP."!,ZYe>K[F %*]C5!D5YtY'JV=:Z[iu6Fk3R!%4WOd<WMr/0<D0"KFa-[YbLuO/TU`#7$k;p)oq*r)th:t@"Wb/T&bD'l#eZ1!Q^K2,9$gkP0uUJ %+=bZ'OBgZ:"%`nJIY->8K$#_NOJ=TK=;#`Xc*!eWUE>*LJoYBJ#SChZd4u!GmJEXf*PIlP?n*O5<Mh8\2&_.i_6Buref\(;S3Z!^ %,00uNV'Uma/3]m((7.s$Kub\eLSK84mK&klU8UNpF1nC1'55ThY.`p8^jZ>(f!2QFaQj^DeTfEe@Mm*Y]P:8"(Cms;5qOcgoj_r. %nMkK>33ijUDJB%^a.1.0"YOIVnOGNl*r59*K`6]"N]jblSW1m@m78:^IK@eulkqKkTn:LkFU5qNjhM!7W0m4gMX^/u'i:su$ZJQR %-_R+NT$`#23]/h;$%dTB,gK7ra^U<_8-]KXij&Y`6@56\#47H3$%RnaN:0P=[>BjG;p@T#![0]%CuhS2')6W$2CH<L;6f(aZ?R<X %W]Li]2Hu.H$DgaM'K&1_YLU6bge:Zl5mFbB/tk2R3',qC-5"&,7RM;m3jPH[UnBn!aBCSEN%)@[UGt\^n-/8e;9Zp+/M=Lu@6cp( %`0c`;F/nsQAk-NgnT[#<6emMg"s-0:>s%_p)O4u<Mp[q9W;o\ES%,YpG<4a[:?h%CA[Mk2UH_c_NIX08pHgCQTtX`R(GX$US39]q %439`MBQeF=lGT84_BX/&C]t?A3%Q0EmK'BIh)ct2E1d]%D!h##HW)(#8X*^P<OsS<=gk8,1GQLJies)L^$N"iAag0/!X7@'>/DBn %(8Gj8A9b?*57,A%o&sC778*f]R=umpcA/18g,$VY#mS2@XB('.+cr6%.3:&CJ2Cjn1:U<ej@2-UVM0bW).^d5lF)Q!A;<`(h5qH9 %N*KhO6Q<aaPhtg4FOFmOX'7'(KKt.PokdA'>bm[9f*J%6?.>W()LYp)P8oNZ2i#E>K#<sUrD3R*C&EX_lp2sH>LXRW?HaNbQKu8> %a22pZ1Rl4Xp]f3/5fLESLtrl$X->EcD_>nk=QVl"mX(.Sd?6K(fE5-$q3ad-U!<.I2VLV]8F88t7QhA96<HZ%ISdK(5Vu>$*Zn*0 %@.mQ=h.SPg6m@lO$??CO/?$$aN%`Q2O'!\_?@f?_M2<#mDN$s(XDpUVUctN7l,sZ]@IPn<oe^lg4mmqbit2`;D.ASEM<kr^'uJ7i %NVl>X*-mm=]dqN[fH*lPS?t!R/HHT;'+fdm:5kOMWGrZ4Rt0,sJRFgrl!Y\@Akq@*>%JA*B'aaS/bmR;)4\K)\e::`-oW7&2KmC< %ct<5VF9:q8D3!"fj_eVRAqR/.a[q-INkgg#OZFL2#_s^aZ5ZW:=$t5D1+_(34mgd4FL(^NQOdX8G]?uH&rT_u9Lu(JB1BoUp'Xt< %XXERZG%h^'0HLGf@Slh#n/Vj;%`NoNM:%b(<4Sg\9Fh#LZh1ApAtc$b9NK:i:ksQ^-];'E@#YU]DLk^:ZA1,b`JUJ0UX,t>-8"!' %MGK<@9.&D"")1p_b6qJc4\=jOX<u%kXC,=^W9f*FNEg@:UEHL90E7GR,6@m=r$RFA6[)&WpYOP'9jlVaRRU2<M,'/O<`$*<;Lu&* %/A,kP7rd><Y0Otq:S:!5WUaU\X4cO\;ZMd]`6M]]Tm/moelldFcdm'B9WFUfE7>6bO,dJ`"?a!\[:o`U#@H&D0i.k<-]se-!$]=: %!_l_.%FF=&WE+3'M,:rRl,/7BJS^*7.TACohU&#BBO["<jq[FiJ:0R>;=fO]2NH<Ggb&Zb+E[o/q\OLo'^S8B\;P4l#L7uR?D(*N %"(j_b9q:fbX:TSQXf#LZ7La8%>b=9jWFS2gf_m-U7H'ngKR-sEl`%iN%@q3&74.4(RPRm$+f1CU+jpSW#J2'(0ug;L\g4p;=EZZR %'p--u7`J2-<LeR1Pk[e"H)[6S39\;C2&sH<qja&^ls!O\gH7<u,E$bFRN*H=XsK1pH13ddfKjnG)5[V^J/SHP>;=Sg@g>$qU"npe %P'e@Mm(+ej,)019/h"RS(,H%RZW7]c2.)-omuMC)aekE`@7/A'Pb+H,h;'hK]k)m/L$pnp1Xe8,c]"s7Cs*/#=CX$T,?'[-:L_/# %_'_gSUlK;Y,G\2%\Z:[hSg?D&WNdZ3oMC>)^2"><bkOVL0kWcWnVfK4GoD=!HsRR:+0#`bl7UXU9lFJW`95`T&Om7pHD(m$+7>L. %8:u/&JidQiX]%AEgT;&M,BB<!j_ibd#^1(sF.O.O3ZMJ^DR_["#ZVnhbJF*q_9ub'M,XcYnR9\;r:"@$J,Ncd[FI[3;T"Wn4;=A3 %&N586%-Gak*/H#?/!"D`RAX!K[n)Slr]L=.J:a>Kc:ICZ.60uTha6oW)WVa95^c]N?8J;Ug,OY*$.]hI=(&7oY]r.P#IB66nis6b %(_(Wa.(`H_G\^jo8Wu.(&*?!?H=B4DQG!:mpS`9!fEk92mqbSV_"Q3L<Db,^@!4eJY(rNn9:p1QP:St20?10(<mjV-k:kaEffc?p %qkK--:L4<5";-rn?(7c.RM'm[$m)t>,oXo6mR!(E6a2BL(Hma7NtB_3ec`dfg!SOHHItqlq/L?t!<D!R`I&EcQpIJOld:\NO?*[* %a-KmRlWVB*lOJ(l2neEnFL-!0(-_K@[m_f6hLJVa..F`q26arRbY=8$_^btH<io=3U"kqjWX&Sa\b-@3/#>G2aaA.5$F9GcKN!#+ %B+MpAPdoaML&mjW^[XA&L'gIaNC$5N"/^=%ej(e.94*$&<1i9soRp0,P?:LH!gdZ\J]u]R=[QbXlj/8p=O%X(+Su6R1V&$;Yrr)A %U_+N_P#()1C%eRdVr.^?duaMXSA690E2+AZ#dA@"bbfpmLr1D2%X@kBpS_MaTPGZ@qh'kSpo\CGp?a*6X&L^^/O0uEf.SkJ(a-o4 %bEllb8B[XPT]<$=Y/Nqm$U(mq240KOalIe_F_5=)l&[_IGo:4'V_X+n&@YN\KZiL8\Yd8.V!tJ1)AFd)<^QF@S8!+G,l`tFoHWs8 %`-l7.9Irb4,t!6-%']ti!;<C+O,oS7Mu+l$q,o']$]NN8URV_Yn6L!NW.rVfk!X)VBcSpN,YU^T6TF2I<"OZY7pqW4@`%93mYM)l %RWLrc``L_cZFg]6.+&'0;HG>'(8ban9LBf#\M=!t%4aTL7`Bh/ad;CTWQfu(6u"Pth]#HP*aW4s7a:Et%epse?.R[PCBCr'XLm`\ %H8)PheZ0S8#sA7$mpr[kBJh!+dp'B!kR5U_2$hJ*LA`O^&m5>%:OhL^rPr7Es(eff.<Q5PrVJO5"i,TaVtE9=oNM:hiA(,LDa/:S %pkP1X"e"=lLI%e^h/V(cn_sYE;nVBdkS13]'Y5GpH7XO9gHVe>rR/j!4_"+l>0[T;erbj8:P>JCgp[33:XTMs4Gc?XNNFJ,A0ksa %0l=@.\N,1R=?IHGe;lJqZ6I9DK/lRsVMso!)6CX1>It`^YVgk2B8>SO!Z\8TJ#NJ69nL&N)PSk5M`7\p=>mZ&/_O+ZJl5JWglbhB %RLq4oEhdM>5Vt$9;H!6g[nU&'P)u(KeEN8W^3++56$4EO#6i0&&h7>?9nG_9L6Bco`Ic6',Z)E-["RD+T&pLfET_U>m]mJ5U4T7a %Wpb3E-RZ_/;Q2!sXe_J%&n>m<h@h2johYm1Mf+&HrdHqHa7-EaF'QFaJGmM[qi?s7f/m\"(7u+t+iWUp%\a<F<uj_ti`1b2B6_sH %eF.Y4JYWj,nWD<-??7N;L=[D<cL>BMo.%O?.rScG`=2uN0Ps%!.MDC(^g/<b8sDHmKjrV84HX9BGE;LDJUVnHBk9jfK2W+OBOiH) %5uppL'KQ6-/#?OZH7+>:N?(/cKK9=P$(\WZi`#TWs6s.0BMLdDf)_6n]P6u#/''Uhdt%:$$qGlhc*2p4^Rs4]:k>iQN?=/3)PfI] %F4i-;ON]j=NLh'9PLL;[(+]l:l[/f;T][E`_[Du$>LcjDQn1$>H(L<1=OeesE!NL;Z.(*BjsH4..F/JPcqrTHG;M#hBNXZI+"2+\ %I1aRIK/`tPC;:^%A[/]05p?sndNbIV1+WaLA+/*n":/-#W$J-EDEt[TT@W?T;6(J*IB.pJ9`p5>,O$bb',1X#@4F<Wk`Dt$C#TAL %'!.s>p)J!u"-QR3;pY0@=YU/M9&gC$O=aui5U@][XXOFf;8#/Q,m[(rO1O^AMoqg["`YtQauadU\%>;R#oNU-%`Z*;nK7-H,h>9L %p(fat7.k\HrCp'1)faUPK_>cVEl8tV)l9&$<mo>HJo0r)Wi;asS1C)tZL&Q(;Xr2pDM-;GeF0G=nhhJB)%f8<^[SUF-nN<5M31dL %eVo\q_'V0C?:WOr0Hr4VRo3Er+/%$;h.r"H4MdNr`[RMJC/K5QZV40HK@'?R2tu((qpQ9JfJRm9iL]l6/QLTq<Y)ZZn#na&l27?P %<:?'5Z[koX@mAm_ACXbIBc0!%KoicP>Ytc\;?,jVh?HV+$g>AK0k2RFK09*#)^GWl"&"l56=<g9U*g4i.l$)cCFof91>GOle]IC6 %ATgPJm<"/`*-adTUB].jc@WiYEsBNBLooh!'-%0u"WX8Of,CtnG>$n8+R[.pq&i7m,G1XC@6d7-7Osa6#WoYWJL@>"HL,8SdbTB@ %K5`W'?Z]59\g&SRGgkJcU,JDDS%CsfX1PhdriQEK3f?QZ5!Kl<XZ0#_cq7T4d<=1mgB>AmQ"X<hJ=mM-*LM9aG[h)-!Wit'Qfgjo %\)Q3T#FiUq5]:/\E3FbA(,^['L*/AunR]bH"4i<X*dYjkhD!;rQ5R;;llZ8?jGapDPc_;Fo>&*FQDt3kr!ItGR]M%Z/t4,p6np>3 %.r;]Z[E=$joMdB"T`H;"<Q@7r:WfX.auF.D&o8'3;S]]W+hPaLoF7[`5*Zr-MP>Z*;QN2np=Ai^,80>>L$:ndcMVk<%b>,^(6\W' %V+Sn&]am8hH\dRTB*DYlb^<^ei!&VFf$uYGC)Z7X!rtO*g,qsS`aJHhp^XtkVut*Nlcs#W)=8H./NjRKl+[=OOi:i2Gd0FcaS`Nk %RLKV+a:%GP8IR/+N7<9T)6N/QL=\[^3A'PS]TfT^8q!m1H?6^9_Wn2["[_g*qIlsr0jN\gg2sPh>M2GH=C&@On3U`HDH_(,$rW-u %`C[H\3m=M,eYP+#9^Zu.=gnV4_]BZ0ra44,\hE;UG52piFngrWrj&g>qU!h.G0h+5<SBa:GXZTW:@R96%Q_FA$9[M\Q9]+0*rPXK %[S>-!OhkmKfjH*I3ZpucHruEK1r,t#D;F6t<))3b$;D+m$._-II0X@u!`*.U^l%Mg+'"0E.:,q#JhJifZ[fcfe&ss93&N'qmph&b %r;I2lE!o*C2El'U9<`VbPI"r#;?GOA!\-h*#:=)'VE.I.:R-0'YC[G#U1/gOiFSkI%tRkV0s^(7DTsunXmLWs_g(W+#[YW58g.`_ %._"@h1W9^7Fup(:jK[#6E_T[I_a,*pgFU-fpZ_slPqtD;bA1ah2sjVq1N\Lg\_WOI.c77abt8a//XGo"5`5po#<Ma/GK>KS5%=(9 %Q&dJ)Z4#5H_?KHs*h\<1if3Af8NO[T'[oF^dfXEN:(`usFjIbAkc3Cb2$0]I7]i;B1)r=LRHRu)%rGQ"5,/l[;PIT0&674XSKL7J %mO=HUb0b;$JLp:fM?Coe0Oha/GDNP[fX"(-2*I<T8&uGUhX;,Q]><Jno=>km(+6Q8Eee8J.D1gd"=C/g+N_,Tgoa:D<ZbA2:Ose& %@I5WP=`!FY#bi`AD]^.rN[Z;FZe-1n."#ZikeH]9e[!*AmdUTP9IluNeqeWOY(Sb1'a76Xm9a,(KJ2kQU*Z>h'kL%Z@:*?NKJU98 %FGWc_Wo>=/;S9Aa$")]R"\^nnb=e5d%'M-i_C<3pN6-#9Q+s8Z$.nqeV+gg*^:9O:0A\5%R?3!4U7_gHcmq_WE/I^22.<l^'kL*! %`@D:b&Ff:KdO(LDji'q2Y^Alb':n,_"\s/s=-Yb=UA'Nh-WK_AAem^BQ?,lZUbOd.O"&m_ZBb$CF;F/!@*m.R;MMW:;$_EQj9"YC %-N:1gN%!AHHO>YUWmE:CmKtM_TOa+@V<AVs.[Ql.]W,@s:4_J@[;W&\XaI2>dF8BF?*CdL0A^+YE@lD<6uUpNla`ul?06&IVnk&" %I@i@f0YQU4'o-HZGYsZi=eUI>b,eRSH=rY2(ef>G;^(5_j]fCA8r;5XD)h&`k[hNHMbCbM.:-9GA`N>f>jc0!n^<"BH\N?'I+_H2 %\EF<uGX^;P4iJoY^Mo(BdP(O9.pAM/'X)7pasgZRmSmhD7Di&!n;<O03lS.gSoT]iZouqg?IAP4'>1(4WD515O';-RUD\khn0Snh %JUB0)h6[cZ&UP_,DtZ.2C=$4\6gACPI%D)NR+>e@M9p\F'XZ?#[XqRi[k<A?-*S$NHE^k9=*A$6'X-`<W`-R)'._u!'tm`F%^5*9 %b-P,HAfd4[`/oGLioh7$!*<X<db1otHV6_<=D(ej_14!;F?k_]j>/7:qB=DFkZ+sVPh8SeQptXu$:bq!<rm@@]hQm2P>BtJjuo#H %nA5@W1Aq_F_!2=@E9[4S`9(U7)Pajq$GU)TTYBJJNoViJe4ZKbYg3;:V)tk/d-P37]"`pc8#NX9`1G2n7MH6#+";8gmQgpMKC4M: %W(l-W2O?g@i-3uKZK2e(l=MPF]X4<5rqJ>kD0:TboX*-d?IdS,Vg(pC>Fj_1SS`M(=7s#P.:1Q\<i5Z/rjKSHd9kVdf&qL-O'=g; %'jY^f82'FQbO9[qVd$mPbBr&cL6m+rjahhK^KXJ'MN50Y]<CFDb:-cFop/kL'n("c&L.NR&a>"**$LV]3/AGTO/6Q$(pl!F0uJ=@ %_EYtJUR)j:du%H%p/+DJ4[kg-J"T]fR1b60MsP?7=HEZAI4Z&.;aAT*PXU$kW>=,0F<o`S_,<587M$>0OVB2u"oRAA\.Y5R@WI9p %[hpA9BbpT>ED8Vn^gm4Qag1UrZ/#re"`oRQF:>$[I<j.Hb4jTB2;"oFB_A%DRRX!V,`rhe!HHV8]Yo,d9jsk*Zk$q,U1%rH\Z:CS %6*+:E7OqTEQXiQ5Ls$F9":@.1D]e[*jp\HW?L1V'["#>p.BhrCbSaa7_jJ$X/%QS`'OTG3pbtD5b;pO4oj6%hQrCZ1S$?a^0CNPt %SVeYuEa&2]BsA.K=lX]O`mpp*g*FO#rh(6:RNbPmV-skZS"gd,]<0r0&*_VCR&:`BX'UHTh'@%43d^]q7G+`40.(I5]5S-]Lhpa5 %]C%Q?DEB@iMQY2rH=c=K+Vn+kZPGC7.C:Rm&EC_t(p'NGa;$#,4J%g:H;mIs1KXhkk[]<u4e&qJ'?5LO1&V9gSJA0u%;eq$^kQts %X+X#-D"-fR>%Hr4Xs>"3#0!^Ip46nL-,,peC@Sf7n'uk5L-b_&Y+VI]q"sW;%gs[I.&s4E4=n>DW)hr2ZB"R'Z)om(h5uQFA\=[S %e-Zo">j\asLKVD[eeKh%&0cq]eq]OV1ln5qqUY3oW7&EsJupK8_5`:nh;k#-h,J<Ip'=E^]!Y=uJY6df756qjnnf+:R6l&<qUF&o %++1_TVA94Da^TJN[gXk89G\,*!$FSRQ+\4.W'+maME!@#D4E_C.*\`Z-nj7$>Y]ppNO-RqIHPL+EPJZ#[nlPbmbODm(&bc#8cJ8j %hOK1'<t"DEa`/_o`)?DGdO\.MI@RJ:gf]]hjFihjSK,=Q%[VLK`rq7,CK\k$[S1FjJhQ_OA7U%OW,hb8LeuVdW$8'0'dGpc?<`P5 %L0$2Vk7gSU,lNASXV"[8X=V$:#\T7?nL!\M=J'MSK^0*aYqkamZ:/RZng,Q3[R5)48@RD('1?cem1kp/oL.jVYNUkh.<sNuqVmI4 %>0YHO(.g#$(/D-.Ss%?m)\Vea)UV;lfHIO*Q(C!)n&=-D)iR=.<s63nG&aW?ojmS8WsXijiI6VCq)hH6R#5Xdrp1C.J'agYU#&u* %='3m>FgO+UADV"p'G*X>f3L0!N#"(lDZ,0DZ4u=Zg;sun98PT=\+^TMZ<sek>9an8?626oE=`/L`%fQ)FlKCn*!*%&DeFba2ih.] %Esg%6e@D\%jKK%']hbW3gO*hZC==EP@D>29m%;PbQ,n5)^>_>g7hs5c]f58NV4EFs=hY9'"Uc^A6do_3#"%5E%+QY,ZaQCFc-Od? %7J'J5[k6o+KtqB_&&ZcH81?8WQlRe)@"W2F:Z;T!>H!HFd]F.[=Mfl!Eu23o.gCKNaDL2:cP2e^.nIu8*gX!Z>j20q.)&J3.Gegq %-1lO0dGc^_S?*uXnkE94?t,<27sp+ro--)p3C%(i?6O30"..K8m*T2jKQI9O7QcP4h6dLW.INZ34D[+KTLAlGKO#mYB*!Y;L=Klk %@)7r;4]>Dn<o'C1Zd_;HLlUtjF`LZpH;/4.4tP;PO33$#KEF^B9G#74q.mlOBID'T<$G>kFO?,1nQC/(9qren@S>ZEX'r19dm9It %F?)__L=p9nStHDqo!%I,.p3>]MBS7FccN!"A6M3<e<hn%nTCg,eTl65`^9F:&=M$N*5o+Ml7YQCa%:].G23.*itRn!;!?<#)Bh@l %H+,lf?up*A&6.f_1Z3#?p'4(Z@5O5)4ahRO<,^W2?&3od6!_==WcuY>YL3k-GoD>S=,SIbKhW_-VV,,/;]`N]Ti@1m5cth@(U5", %),/FG0NfQiKgj556.t<0)n-4Fa<t_*<DfIAQoK`Kg.#jk45#T^-1J2a/rqFc7If$$jCq*nmHgZ;9*g&)T7)?]K:s.C%osXE714Oc %>?K0=gO2oF[<gFjC!dm'#;=d;h*;DVjARd9d/;qp^1Sat3qQUt+4tfA#=f6n6bR6N?d4c6O14W-_CBMLTJs>NQ?nEYA?$,^KB@/k %)O8ieVLu8A,u5XG#C!]Gj'%NBYkgDDF&^f1fDKCN8@XO.onrCn]Fh>l-$tK]ZR-%>4frr`#fo2PIPo=Bj:mkS.PN2EOU\k)>r!lk %W)$ng<SONpMLt2dWdeD?&$"HRIVj?hD_:iWpVX'ritTp&-s$=U,Tf0Crj;*$r0o$#HO?h$K0N&EUp1GWTP6=/C4Zh1af4kXQI0Qt %_u.o6rgprh`G%eM>'3_oOdpB..ie`.AgjZK#ijTQ$,(!=((;dt8o>BV6-IoWV$$=96/4V?UH_EdL\Eu$.c/q%N%X%k2<.GfK4&M2 %R0@k_U`KSr?)H.8ZriP<a5gk*$/'2%s-,>@ksf\9)l;Z!,dtgi*K3^J)^6(o.O4XHnYC*^;1#`9YhkL5'Qpm%Kj.e_h/^f[A%/A/ %k;onI#3:?CX,"b5ObK.2[q$Ik]-m>A_eaJZ\&MeEo!)&P.eZOuBY`A>3SMpB+$(][/*c$6c9*0@s3_c+FpiZL=6r3`17\L%C7=UI %Se]ak0<@W/7Y/MAb\G'$O:$Kae."!Y@;6Lj3`qf+@9Jsb$@I,)OM)>qH?NGJ!\Qo\a)uSWn=s<-jAldP^HLoqpRn.K:@YRcgh6K5 %h=\/8'_`(+*d,VPe5ahka28sGO1P#?PaHpg;`)a^QKY<E,9s5,i2_AdIc[=>N$j,=WXhF]:koE"(d4YIlm;'Zhq;<!A#GdFkp;Up %j'(d,'gnb06PlfiX+3E.F)0=g6+l>KbMh!RXPbqT<c"g`=/Afo.P,?Bf(U($g!hIPdgqCD/`NL'GW%UA>Q_(X@YiM`p!^"VGP6bB %B)Zk/XP$5b`UB<_6/GKnW@:HLk+`c\F\_TIr"%VR!S&-=TS9=rYso2`@Pas<Qr=,\O-73f9cZ?]:id3DAp:'S0EWf34fCRVT)SHP %^\RlnVa(4Y(nNp?qu!YTroop05Q-ZCrk![YqW[h1hgbU2VuO+nrTEjgp&G!eIp)eA`lA&T]C3N7qR^\FiD8?\qWDe2rk!*`qo-=! %pU_N^rpCWLap1/IgqWe@hu*Hi5<f+r\"E$%^\[efs87jRIejT4rUJ^mqu?Z-n%O9tqt0mBDnc&Dj7hG[pTlg;l/sH$pMY!Lo]C)k %Uug^6Ib\:.'3878#gr2XV0'NEKrh+qL:7$tM#(]C7c"b:OEiVK=P9e+<>\crjZP!4h5[@(iMCjqW6u4b<DgU5?'mijC/3Q2X%/T. %R<+DUcFph;o#$YM9>5`RjF/h8T<(O"DFKR$*q%TI&iJ@(Kruq&X`'%pICVO(?:AraI<_c@qA-g%ctE7/e)1/aqsXO[Rm0+8oW,0E %rpf$@T)\?8msg+ta%?)r?[f.?`a=%RI^+pXo@*S4hu;m7s5S-Io^)M9)s"h''GH`!1]`uYMUI)Ps6'&?`H@j5B+NLV/0]X.:!Lah %AX9JI@6qkV-=SSX_,@gGrOGQrY*CW$FS,<.ib%S0JYC_M%3E(5N;H^V=:/W>mfRg">]f98`AUm]aIe,:r<8,bg,g_B/Y+k"ND5bB %%&GEYPBgZD#p`m0`[^]7^22Mih(R%M2dcLsME1\,Rr<cMr:TNNrqP=<IfI`$0;^PKcXaR6<^,6V`rH#&O)NmXXhk#NT2Jb.&V^I0 %-LD<V!_gkRb<G[Pci2Dc<05N>s(=PJ5ohL`I9cZM8pgN/4frH1iN),pre^:2S,*N&%-LM;s6MB=:)(1U=+B`f8K%SDFKJ@8V`3l) %X092%68@PQLmr&.[o*;0cpIT/7#Qp-;;5O[\M.sAU5Fo/[mS]+hdGesdriOVs2Wu?m\Q+($bnX94b/EAU^8^`5p_/@ML[]"7R<c% %h<08OS83VTHW&0D$";k>I_4q29M\Z4Fli&V(?YnjGCYH"ng25l_P7G<oc^IIQ;0=B7i<&`d_t1GoU+T_l/XC0#;LjTa\++M'@RA7 %b9N@8HtL$7-*f:HH"guVSTJ$:=qTqmnhD3V6+<ltl^4t5l\(OslSR<)!KjFMA=).\Bjs+$E&G;P`Z9KN;IV'lB''p?[c4ajiaNCS %?o/]'WhcJ-^Ptn#ZM%MLBh1@&^;WtaO)#WgiAbEJ;`Xc2(*nY6I(Po-CLEtS@&QC8nM.I&j9sT$'YWJE2mqTWIU9Fs^f>CMZJA)V %E9CiVH-^od)RhnaRJUaM"b4ViSQgK0D[hJM@&@YAhiV)#-^.uWc+9e\G9-Ki&VHs0G6gHqm5`\11i+c!7dW'-_;BmR(ka=>m0>B< %_:<J+TscBS@F1U>jNcD0`ZSAU%j,ETC(-\G:X^0Y`8SMfkfinjp/$k*@M#CYbW:s=&:DZa!&'%o0`hd#i1jnf5ITuXC"X4_JjGb^ %3up]'Vq?&KLPJ0geebIA!*CP#k5Vc#h1<0R_!FaL'@a`F%]%u"\0HHH=CbUnEXg30RIs:O(0Fi&1X'=l0>r)0?h$?\;c6Y%r>B4$ %@7A*hoP][Ts)RmA8QfsPZ-)kZ1&T.L,6babs%4Nm3a,QSBQm,n1CsLQh=uUNXbs8Di$]XfS<BgGs$9"Qoc6L1`a7Z.&/oH-iL%)' %#Y+@kIFBYt`$:qKAN)ql#p6_BLg0i`ECn*..7\;-,j)egBh$RC0n3?POSUj%<qO`*(/jd:I8P?C,"f4j+jOI#S\Z7@P[>W/g&>JC %8sgMqg;X(sg1frBBs7:r[oZbVM2eBHf4&:Bd"2[e:6\kaLMQ4EK_Pb_hcTdp$?K;0Hp%4QN;ikg(F5hA(PY9.muCX>J)*Cl,RY[_ %Dh?agP*aUCV>_%G.Xok3O547InYmA>7&2.qUQ6=O((eOWUKhTkmgs.Zj6j4f0PR(u\K`trnlu&(IN)I#,/&@@pgd5<3YQJ4]C6FO %k$W3Q9UcF/hh:N"[u6DDkj+p1'Y!\G..Af=Ob3)]::XYJT)o.H9Y#.5guM:\6uCcT7?5(Xpm;Es`-FL1m]QD;:OIq(Kj4L)be;)1 %cp3]&^o-ujdd/WAJfWqi.3&1B?;/cA6GVE"!OT(LnhFLE-W0]UB\4DpO[(jo`aUhD#aPU$nF+8qRFKfbT+S>r3ghD$#GHJG.p`u? %gGm>`U=bUYVtT3)Al`Q6f$?7*a5LFFW@KS#kC7r3#<s<3bT)(3r:g8??oiG90m5NnF>tUC9>/mCUI`D/YQ%oe%C?'W7\sUXq1/L5 %n0W,G^P=oNDt@T5+2jS[\1#5b<"r1[ba\2OZQ08Kn$N*(V`hVs*2[sO>LH1ESbBh7[,^2O:pC:tF;Dim-I^9>H]1ghFlk4=4.@/r %j6k6'OpM%nV*E[;lR2a1$*6JgY>G1GKo-[*'JO42O:p0qcjic+ankbAH-?eNOM;q)^JYdg'pV`?/id26IS/c`!Sa"lbU-84UY"d+ %IUAKmoM0dF3`DKnS]qorcW,>%`1+2K8a+mGES"!4m?;7bitoJG%6F)`a+UUC*+.CDU)Optn_OOVMo]a%gj*Og3uCo-ghk:?;A[:Y %T=4U+$-XqF2sO+Ls.b);RkS(E<U)c^I;SG1'`TD"QDbJl"o_Pp*[H!Jh3`R@re>.(5=%+*0\NqLk5AM^4HYSs3_=GO=q"]49;1DC %r_MgoW1EniD76/?Bj2<#dI5CYGH>-&Z%'H]F#N=NX1@5g4djXDC<`tIr`cIXCr6ATPC-E<]1TYES$GRWrfINYk,^G3InXIL(&:qf %R#4,uX^gNaPba$2V6leA/d3%nb,>2XD:0LZr8\YMiF<-go=`.4)GPYoDVo2e\YeW(di&SDr`Hss6^lSkQ.?T+#L_-@01Yi[ZnKKP %`U@GQ"1@W!&3a`YpdtRH;;T$P>'Tp,H:(PuGCWb^FTc\\qNn\P90G>se$m=$kUH]rFYp4?G;AI`c^trPrb6rs7Fi-_[59--p^:Wo %caT4Y!gC1.N5sMYQft:herA!463!,]On_o7/_EnNhM0I))bN2rU&S*lmgiUmrqCaUQ.Bb.)?4a?-c9BY;trGa(]TJg[U_GuSA7cH %)3?ri2_Cbt'saQ`SqtgG(\dQ_MobneF9`K6^8V#]k+2HpcTD$]BfDQ*mU&0FrtTb<H&r!;kFMVTVu>NA<f5XkZerrlqbfZodJk$= %8eb>_k]0f50?J32pIYKZ0#g?c=8j@_oq+(b.(Y*5&!OI@-N+GsAdf].JqckGZ%Vp,R6PAGj.A/#%UF(28'+pCP24\Y\\Dm?&3?p" %O-7DnCGO,tG/j:f8d.7$bTAY:s7b=B5>--mEd:6!dH7dXrA/'YmiR5_=b[_5I>n\SJnN?+2?",Sej"1Us-q@657i'%_:-tU\9K/` %N^eLT*@`4fIQ'W"qTEu=YX-$<.9s!+<`fp(_*s@&EE=`+[&o7f[>"_ce@61"[YpG$/q$N<GWT9Vn;1$rBJ/`90)\^MX[A&dGLu.6 %"QCRc9FN<WTb5rj/S>OB3b6Jc[%GTE`qAO68EeJ7oI;rkBqDWo@:KFd6[Xh/&/hk5KiYn6b:6+#a=fQdLCVi7n`&;NCV&kSqW!F^ %JjjI9;'&fL@=8,m/gd,qMej(rn7.CoUk`)ZBdCB)UoJh7b5bW,cJ<W:X*]b2eX,Z1dWj8SE_DNmdaQoj1``6(D<[&NU&d!O8e_lK %pgQ7Tp\JBbM@-/Ii-l5l_o_@^O4:YUXP]R"Uc65MC4Cf#1E4frA@ZZGB7_hg2NgOVf':E=NbdNW+C738%YZ?\:Fj,DhA8]!X>T@- %0/7G1F[KhVcuO0s2_,XOUDjc=kkJh2f+l2Zo8AV4&6`RfDR^Bkcn`@F;WN>8`YtB,]1VD`<kkj80W_p)rn^-m-hJ2.pMm#qA'p`r %U:Sj`U#cI^6(#72TTkf&k6-al9UPS0eJ>)tI&N%[L*d*Y*=BqO.*o4E@F=s0?]Zfd]rJR(D#ns[YT6;nMq4d[?AO!!6`9s?+rtc` %6L:#WR`Me.F-n@t8s$K\"@6&u\Xjk0)fL'?XoVK#6LA#f+UCH&5dW7;[MPg6FH'9K=S7:YWIlsCUQp1!0`'?+N]c!S_(R0-8[:AU %]F6RY#-3@Tmg+I+"&aXDb/6f_28ncLZm/,6WmA';6[g9E&H)i;eY;kk<$M1b<YZ%HqcX\DrHG8\b@B-h`,]UKMi_=Mo:8q#o\UPn %+GG[]`8j:;Tjo(b5PXm2,fWm..2GrBV!B!\:^(&qq@'FjiN&s%PoY,S4->B+$W_WVN:SF;-"p)-6t$!93Z"gH(?XLI_&[R6$d^uA %IKprq;jf3"!^89t!t;*2.^VD;k3%llcBm$$-RL#nn$GL6_PFLXJH@@/(+jW?RJ]!-Y"[k>U;-.MWgApP@/)M=pAJV\*5h(Rp^^b" %Q4%\"(d87Cf(sGQC]Q`IWmg8E]/)`6*`O`qP2DuUMdKEI=BaV]GlICU3%cZ>Qr10RD_3M<\1N"j2ee&uCo$Ynh/^Ek5FsoQO?4:/ %m=7/]`.kM+`+6*M&D9,>f8ai5)4Pc:*8b_`);l`;Cr[m3gsYh53-s;!oT&(AheEZ*-]Dt*PCKj1GF%j>AFrBKqEIQ0-%Btu37QG< %/,sU:R%1W^H3)\]:`W<anILrokf_k^/,of&SU^S:2n$_UYo(]?rQ[W5(P`hs\k,<D-uClp?V[Kmf3bY.Bo5CS?Li*JiUd8;,]PRd %\`I0\0KFi)2PBbS!VWlMHn;F4I>COd$uP[,^Nbhs^7(VQlt5_\IMX(k?op]SiEn[J&AI7WO7RP4qMuj9qR:DEYjQ:#QEuU56d(46 %\IS\+lEBWm86E71i"Bn\O2QeOf^29k#Uet,1aY5.O?K_RB$bK?biX,_I]$8:9g8D@iEVJ/4;Wp\S5JV3W%E,aXbl=":#j7!4Vnm1 %a`oPDUBM_#"1`;&H^_`?!\]3])T_TW2=)uF\Z<Sc_GF]cSLc:lNR2^Ke"60q6lIJS.%+eM.n,9:QQpn##'puM$.>C<_r@GY>R*,( %c4i$G:Yj^c@cFQ"jtJ?c</s5&DV9$]B#7f?r?f%D_LE?h@^j*c[JOVs$@;OA*nmaWOhd/c:>OIOpiG-b'\p+<F?.ms'd=6mI@R`r %LH<3*T.!]$-Te$/CX!X^8Scn"j$Q_@!AWei-*oLI`na[?bI6Z5QtCKjFs]`ALm;H3/SUp][S7L0^8D@4gL#urF^[HO/u9j_73IPF %/Ff,^'5)(=<g+_lAg1fSE=^'Qc2]FkIEj21[$W];6SDUN!QH>A7#j)_C1T@Cc37C!Oa.3cGS8i!(miZuEOB%F!Pe:d7$ePSBkn&# %SG,Os+`VXc/RaL(-+TIbIje9cb5=Eu9peXP[WK5U'(U[3Gi=m6!V0V->&H@@)`I=tX\gN\-OY$,XpcnbN_9IqL1qG"%B"j7mFJL! %mMO"sq+55OTAkd:L;JFjeNO"hARB2+'']tRR2#9.pKqF7)oAi-=o`>=-_8g"Z/?V:2_sen>8Wtd4"ZOGak'6$P9R+!WsGtk6.[:Y %2@&!g$9q!Z:F+@1%u0[E)#hR/>JimB3+MpQ[&.EH_4`qXXhS;^+#Dl&M0,@jPFA3/cT@n/"".q79j;]['$%?0]qGj\A(@1%Nn=T6 %'>ho&[.pFF/2LgH;Fakg8M^n@##-^>gPlC'c;8IL.8@0Y8Umf\FMjBqJaGp#Y<QK./^BP`e)@eWFE")=MGRN<R3K]<YhQN@B'r@4 %Ecn]o05+WE/=UD41,b-.s-QRN2)mWEea*D!M1$qqS[Ck=dJAS%NB7]1kW):B9==!tULc""aje`Yh7an(fFG`s,Vb[T7NT;^^T9jt %C*!"W[6o'r:XKoThe])L<GAZ)F@-LY[Mis6.FmrChNMM,A.<oj*N>H0le\l38?3N16P`eM,Y+E)(elY7><4^\m*E\lkVRjtV8u]/ %S14S@56N@N_)c(K7`Xd08l$TAago\F'OAV]U%QjVg3(O%HnhF;["c`e#9&TT>#Q0E[2EJEpR'LZ&+B+s)59SrUnmJkh<]`:R^cA\ %gcf[ggt>W,@$Q[WE8*J^>Ok\E;E#"gjJL?G_!VCEBMiBDRS)L-#$JHm(m.:*`TSeLM6=pm=);0.mp9gi]2B>Z(&*S-U#VNe9ec>e %S5[gb7-cmVV$ftf,RK@9L/VQ>NQnG>+%WMQkH$b7LP7I?hn%r"BfZblY>C`M#!HVUmQ]1iA3(MX#CePtG:$V383=ZNeuB>"mk-12 %8.L>#k-o"O7f:ghL]+2HT/mVh_Q&h%osCMnQrsYaP9[jOC"-lUdrSsAUueMgV9bV0Ql0)fZ(/`h[NW/G\A(@^H4t1Lh021)\?`LB %Apa5/m]L<NIeRc>28[WEHk;gi24jk^UY[S?1f+TKbR@4a1PdWN>r?n^P9mZ"jADL&,J=S#6-oeSK/2]'gbmWBCC2PmLbfpC6f)5A %1tl=@aa>fGjc:Qoh'5k6B!Tfs;L;F-S:!-[UA5Xd*Hu8PFUVMc/*..+>r8*d\BbFBC*R/RdZ64p.%/GB=Mp%E9O!Y&[-"UhUXl=S %*XWu]96?W3A`L`tdOjYiCu]1oD*1`Y&a'U/#dpeEqW`n-kTcRu7n6'!o0t"%/3lr!;=Cs/FNmi4%(3sQ'BX/G->h[qH2hs@dc@J= %)e+qC95BQr%11j%frd2NpD9TjKc*0N`AVK]D=jO0eHA+b:5)"BfcEIZ?nl]O;G"X4`H]G1mAq7ub`LRj6[.&L",s=/XId!/VJe>_ %J<*@?1>j+1oeUF+W)B,B//&>g'gB$'L1T--2sW3D44@WY,#]Vml&=e+$kI1jrLpO6@m3)DV.".S:C!ki7Gk#8UO`Lp&[e(NonN04 %#;m;4\LL!B^&`sqTQ;OCd"jE8cu;pf!@WuTl7M%V_q8c1f9o>a,T&J.K'M`unc7uf1SX$Y%OkR(CU[nsMg88l!;_k_57SSbL`tHZ %S_7\"D/7Q");@$uI+4Sok1X-'BWUj[6!L)8%U,(02NlIKnKQa/>,tT,c#iY6)-c?'e82j8cRj1q&3:6MXU$8I=hB_=50G9_iNn4J %$*nBsdB@AT[KFE+[Y?Z84*Y1S-+MN]Q+^4"QjN&T9kbsW=;Q0^DFn@lBQC(t4AhGsh>K'73CO-=Xu*?mLQ/&JCpH?__56q6n8D11 %q4KqU'0*ESJZ.61-?(jZ[)k,AQH8*)ah?<Sib[%4<Cb&nO:hZ(\J8s;j5c*M`c6/jCqae57Jpo&r/0!J?%U%-MN)3X_5\5BD\nW- %Uskf-7RCPSqcMWnIbl/NfDt`j)R.8]U>q6.Dn0^+Bl=a&b0C;,lQq&;SFoD9.c`ZHr3/Ek'Cj7Z3%!P8DLjK@QngGe[\a\!&16rA %a_['Fd@Ff$M/<sTVCMo/ToO_T1jdDCHedls/X3=69jRN^"T6YlR^/2e(aFgcA<'G_pm#\lI^;imnu"KY/3sas</B=/aq6OgSQJeQ %@[p`eRc%R2<]4b3dQeR%qkb49fecl29Zs;ZJf38L%E4QgZ1/W-?5AS/mp\W(POqqAMpVb5@D:r`iF6XZls"?)O?^:D$WpCf$0U*q %lj7aL%C>/&oE;XfP&LMiTgI)9qtH[9G0aC-ToQV%maL-6M7l7&\]?.A\)unZG`Y#F:j.2>h1,rcKV)FU^EuVJ'XT_IV&%Ek!AZtn %K)7r+mdrAmJo3iNHo_Jk\ec"_U*I2FfW)C8_q$KJ$*?(U!\)&>@.Rs-LUq[j0&XfS"X@Iq_u)*[GEWOPI=LZkNX+caOg)0+"43TA %Iqn?r/+N]flV;-Np4_CpZ;KFYWT%edRnZ]!*MAj],E.r5<\4_'-)s_KQ<PUY>-YJND2?-YN_-4l/AsF5etUmp--/s'>&o<TLQ*)_ %PqFXe&b:^M`MQQohBG&hD-KLL(@A$QJQ]j\C+R.4C!F4MVoZ_e>&<^b)85_:7,sfPQ,fVsL;Sk3cFisqBq=qGRORP&c.%V3PVU@N %THob.a;fFXjuXrm-n;i1F*e5B><?'H8g@eu_C^XK3T$9_]<hBdojXWfCm(q%]GHnFM=gpCL/N69j3@*YR9Z"+N5AY]GUo7_UR#dR %@Wb<K_0V\nXWJuI`BcKNJjSdQo]:VJg;hfk1M/Ac)Z#ZYIGY_&'l8*ULn#O)elf%jIO<pS.L.:dr]7[4/`[0j<$>C]W[4I$]a3;X %]-L$Ji128KH%fK9>h.dG)k`GU"M5gurD!ZTbM?7Z.q6miP3^:7Bss-g4lp/W!Hf'hN1O;A56]JZ7gH$EIIN3O^C''XZgt&]r#C(/ %8tM^E+Q%*kkBkuYV9&$N1H4FUMs*a<qL!7ER4UMj;N\NJ]lZ*B92Y;t=5br+m:B2!iPS>M31X^Ek=ihUc(qA2RG@"BOo)4b=#9*> %d)bsBN]Vr6pu$2s<OM](pu7!j2]7)r0+)&>\`dNOQlSo$oB^1$d0gq8]?=(q\p'M<)BR\E]S-m]XDJ5Z0:qrphd/N1B:J_dXZ9:b %?1K;**gBtdaa&+F-j76,P-<[>E-X1C9(*lSKo_S4G]&ldhBtO.]g]XOJ#"s_Gi(/rkj!@=I<'9S_LX>co<4di'DQGE]5ZIep#JI; %f3Yltg)Z*"\8QMV/oTam([)PpZ"m^\(O\rQZX.f>OLkq8#;Z+-Ro3Qp*Zj41mIjGK:2>B/lN`:heXhSbVBW/;XM=M$m(]-7F$oE< %6"h$Y?=p6trGU28IjT<h@pNCnFo.?DN]RK@^sPS#&g'7Yp#GS`r.E8>3i@(-OJEVIS\j(X(<@7U&E7mbeP5c/OVZ.oI<"<U"bk_c %?5n_GGc5pEq:#!(>qq_&c!apRT=E_;G^f3%8DeT_P"^5s"bSrZHXT1[gu0lSOsf[X],i1X*TmWU/gR^aD7<-b0=r$S81VA\ncU"H %#RcDo]OE;!M9AQ"G>=q.pV:bt/cD!L/"V[Do>0Fu#`O%::4[QVWPJ%D0ut&(5*$sKG=UmspZqAbc_SutJ9R9:8Q_W_mS)l\MqS3c %G>q(lKID9boAg6sR+*8J-W0;oqs%^]Ks*c#,BEchCpacHEa8M(3`5M*hdiq]\Q[sedJqL>^Ec$LhH]]Hq'HaGOm>1Hhrqjm/pa/' %.M]\chX^Uu/s?&JGs=stO$afkGl/VDf=M\2+5ci7SS,.+LZbLc^O%T]7OGL`q_7o*C%s`.EngF+#B\2[X\>b*fZ?%t(<b7%kpT3O %6(Wo0R7@J3!6Mdo03mAnA(UV"]VeO4<9ZE\@MVMLVb73ONl,6I2bC[Ik=SBMEan-e&38pL2d^#D_,s5hSQ3kd[keqD9KFk%]pF*g %kM[tWDE]iT^"9XD&M6#QAN_3$I/?il^;nb/`BZ:c;E5Hpi*h3o9V^6/*1?o%)XYGhG5_6_??%#^F`-Ktp`jjXT7^<YGcQD/;_EfV %m=`lO,R2,2hW<!?0=h220ZT#:Y50h+l7HmFZn"AZ5<rn>%)nI+(TX(4W0R:g@B*:_4YhTKnpAI><Q>9<l?nhRKigIXKs#<u_?n\V %gE8shLqHLoF'jjn-oW.':9r.$r>pJK5?%VVMo!L];q_c$T<e-Nh>r"I\IV`af*?R56*r7s-3#1;`@@D)Omr$ffirnsLr=%/5C7d! %s59XLlmm`HmFhZ<7^'@@lM_*9pqEZ['Tdb)IA&`MHHOHTmh`"L`_urMFPJ)&V0TLC'K^s9I>M)!6W%E`^'1&i/58;:hp8GUQe<]a %%g.CO%MQ8KgdD'h:rnH2([$^Odb?Iga>T?2rF3BAoYD[=?4,knSqceo,'3=L>,joaF)5#^;@@+*&qQ7Y^h^U^ER8.lVk+;qA912: %0VWU3]-ii^^X5>S5/@p_ULWG'FH@Z;]cXO?r.W<e[d5&m+#67qQPVl6B+oQfP`+&\2q$;5!YLFu/6s\ZV.QaQ'G&XrgdGm^/0ZW[ %pJ<(I%`SQB5mN#*]^c6^H/]0?Do=9%c=&-"%tI(g-AI=;<I2bFn1tXn*gMNbIB=`Vg1;;Qp?,@XU^_p2.!@a<+hgF'K^OL_-Zg`B %QR,1Zd2/DJ1(k>JA(N1:7!aU:_b1;.r?/.=f&bFVPi:,p4V>8>:pA_\Qc7gUNf)0>*iI$kSM]C=gSo[3@!K0uZU#[la5UW%n-Hti %A;JZHRQiN2^q?$hL,iIk&)XG+W)QeP+;TD,=H&&ia!stR-3l8;eC]k]Qo>:[a97_VVAhDh7`)'Rd.W2*;Glcm4r#N$-R+8RBIrFb %BkLGA*J0*:,>&f0MBn;I1F)r'P@C3Em#1>a-FFl/@$5$NKV9hWVG+Z!%E=/equIao;^)_g;%-)Q_Hfe/YGC&0q9^n7OWJ'I8;0!t %hr0#"ls=W4DYi//*T'7<Z\cbb-Oe"hH?tjE/UYm`c>o7ANp&Z/Z*Q2+QgA#;m65am9^NQi:UtBL;sL4-S);[^VX1PV)=jDUNgf#g %MGD8aC[s=L5!)aa6Qt>b+%:nW<-LoLirVX,7d&W]CjkZrkI\(\k>IGG=4@8i;ifI,2@<QLQZSp^A$Oc5%2N\;F*lgq(B^"fDIp;+ %Pg[7i%>V&:GPC`m/=[`+p2m!rjBt+U/#3EN,tn:?NTR]2eeMgBfD[<,LW-hO:t,R1e8)VY*KuZB1[YgKfCU1*8@=Yp3:\XoRG"Zc %'2;fgSR>fjO7d/@`kF!]/-&d%E4#8&$:?jES]-c]UJ1>lO1IL-fK"/$2&saZ.Nr[:7C30EX*p'+G*+R</l-]Fd:@GXGSfO.ooE,t %$N_#UR.]LKoqOJ,>HSp[XW>*+T+%u.XDJLm4;Q[NqQM*dAjK%f*Mo"2daG,c>WC&L#J_J]2J.;n3@Q&kCbLn[Gg&(E#cSh1hLCKK %DJ;"D&te'+#Ef)B$Wi&Q^ajrqH_#n:5oq?FOh@1I4,Un>eEMAOOmgWn*!E7OI_PQ@pHp#UhH.Or`"Q%4c^c-*0_`G0+`^pMJQLGh %G5q.$>'`EdVrE>?]1,fHgJ^pR+i[Ka;Ue;'*JGJYl6DEUQ"GOAi6>S&Ets@>RA9!(c!1Q8?c"KM:TrG>l9(lT:m`9BaN['QVJ-Sf %_S29P\/EVgc6%4[pNmr18j_T7U,:"m[ScIAQ.!XH)3_W$,fF(K\/0EOngt_&=)%)PLbG">PTPWm'l6>n[:AfJ4f?1K8u3U'[P>D, %1.uXJJFaa]&B%5F08I09ict:EGS;<.L!@Y"e[+%R/Q60Wd,%^%H(\!Z9Q(O'5f*/cPFj<T4Y(u>@=>_fW0r67s@p&5g7'Q<Fj %1?4];ji>I>UuXTjpX-pO;.ml:4R*BVC1f5a7ut2Q@jhN>%%#d'[%fqio@ODj,XTNn)6Nh"^`5tMC&oIj\!,]AW,OXVI(,GKU*I8% %*Gf;iqUUk*Hidb;2rm/p<'aG=DTO[]jO8Z+V)S$G=6LM**DrG]*X`s.+0(/):#BupRG5Eo6=dg*oB(6?;IUk[j:=tR5aZLYPGl)) %&tNTE#L`tuqEe^?*R\RjA#2MR$RBHCF'8&ue/"k!]'DfkV,,>Xm]uLti48X.9c*$&0@GUf27=@6Iu<rGs68GUl/_T")/6^ZQ@WN. %g4+d=D(YO[SYXn;A%tjoO'L[W\KQI\-d^?*m;An*n?]p+R:bDoIN;+1<8*t4jB^gVj^ALgLY;IGVk7p.7"`@QI@44dYln]LG__a; %+C[Pp2!B;iS<>?eH+mr+aq'o$_YJJ@c@qFu'K\7Zlsihc\\H`E^$Y7&_DGk7X%:R&KlF^Eas8XT#)%7hF2dO2`d'#J.m9qf^)O$q %0\Z14GV!4Tob+GTko-\JFB,`PGlD)OrL`o3cd-d#?$L*LGq]B%6R1>S'Bq6q^3-2Qq=3:68Kp*PGTt5h\4*s$(s7rY@(=1H>VqcE %Q8qI_0WSH3ef=g_4qa<+YoS+[)XmqjPJF]m!6*Ko=39HI-C(&5hP%k"q4Ks9HF^"`M]A1ec9];PHr>=9UcHb"Wm%eD`<hhWOmhI: %`V7aB&<+hY\G4cme?\`X6QQ=+JshX[bu/b1_1au0m`YFLr%5$shGVZ`]`VZ#`")"lkQrqZr1WWMEQo?IPKfmjSnXmG27Q*O'f:l8 %=e8Wtd/;s(kra(QLgsF;;%g;u"p'"[4W.eYa3t*gYS:Glm'IiL>D[2"\%;`?,^a4`$gOmbm9N+Q*rk0?YR02[h<4$ld6)Aip8GQ8 %:PhBGfZ_>KohR82jfe%H?1)/*$S]cl':S]Sh!"#_k%piVS#:u2%WM`k;mBGn"8bur,mX!/<C3,.oD:`8OO%QI;g*glUj3Tknb3:l %mF.9p53W=kU^,'ohk#90ZA-:T5.g=S/oTEI4Cech+.]`ElL_'GQ<Gd6FM)L38IaR;pDZW/FRUFo9_=p#VhO`KO$Vmk3QgR]Kt6pM %ZaH^kB@(.JATK<2C>:[Hlu\9Ph!h@+:aVFQ2MRVjp+#USk:a\J@$l=[d8bpL$mO(-@U4kA7TJsjitpbr/.OH"UHoR's+KS/Fs>e] %f6=9UXQhkSC]p8\/M?`m4Yk[a7/#oC;TdQ<7rR)5Br[.oUpL/q8-5,:>q*GJdf)CJ#@'W2TA/+;Z_`'Cjg1198TBD7b&.b\3-PW2 %.*=$`?_$sdI*E/hNNo-G@r^JiW&24COKjFS]WlreprF5ePPBAa=s_bf+<.AoS7ZP`SZBV#s'aLbbCqV(Lq]-K5jU/0NSXM8G$I'* %/u;43\J%QbZ9?d)-B,,Rho2FDcJ?TZP'O7.$g00;[cEo_dq%K,G(d0UH]fm'/M,b/GCf*RBH1h<;;9JA#fAc(3'Ft46_VH&+J`@g %ZIako>I6Z"Mju%R2@\IVe1ZVsk+^k5El6l.>teu]DPP-[5St9UV`4L,do!l>*4Z1"Tp6a@if!0-,q);5i3DRA&A7l-ieRm"TtsVM %l5'pF#V>klc49RMZJh3co,Zg!`kO%s.UL7jI>mmo+Y*HMZKDaXZ#6ER]7*WP8//t7S\onD>H.B)WOlWtl6)0-`a;)6m>`hlq2b,1 %^g%3c@0W?2`dO1F%nh?rG#t+p8aFV44Kn<bH%D?)..Ld:oTI-:MUMKE.c@7a3eLP'aB`1b54\6-gb;tQk.\QERDN\4H;QZnq+=2P %:G]K)dh\B&b[ZDHocSNCa<E_<H`".*/hfgQ#V>`$.HNW9RT-S*bCupYFa92,DPro8Hu1N0n#sq@#^jK=m/EAh[&5!TJqc8uDH7Hh %V-2,O(?U\!6KD&-H\LWL.D((q8QYIk;C\C9o.F/.*"TV6<5>7U![Lo)7R=M39XFD3AH1l(OIW7[',Q\4e$mEaM70]uIdj?6$oEH^ %r#F[YmAp1:?_/phXTnH1CRd!fa"USIDO21@Hg('BbNo!fd/,/Gns76GFaQ(kpdNc6F"&64m0?nQUJ.W,"0,b>r5^gh_+%u($D4U% %IWj/O3`JHV77kVt8Pr0U16X&ZLh?],gO/H=rE[Rs1,,$T`I'\nAiMg=RnhH@SU>3L3:'-rnMFGaMN8jW74"dcRl%oRBp;4-C=12p %U$rO!ONR,$BC.G1I'5q1Kk4:i8,g((drGG01<s2KDr%$)Us^DX_<E(kAqnA<G1E-%)R.gT\X:,G.<^mYLgR<2C&AaMMW4BTh,<B# %BI^C$62Ki:49"paLqG%.nknft>qH7fEZY"A;5Zf-<][a<m_`[mB8-&m:^7:gY(1`dn2>^8*hX]6-BqRY7s+?1OJ&CA]4bLAV!rAC %Z4D'PcB2DDp+8nNdoIA8G#R]r0ZTEj[-nY_:p=p$q4LcX:MK7jq]dV[GAf@11kWImm6?&[$QkS!!7#&p\I2\8RZO4jY$#(cVm"eF %7mF3&5.1L2c>r*5^T+N_"<0HrQ/7,%8I[ii$B"SI`<kbGd"@A+'KGOmgQrDc]M3Vq&D=*5=3aRTk7Ig.?N`5!r5<U:r%NEI]"Lq\ %Y=XIUK7eSL3[f>J'lYZ2/b%>9E$q)uHf;hE?oLPa*\R/DST_5qZIUDOZdI(4bDR_HXmeV>VDX3sQZskM)Hrj8iXO+&G9768W0Noa %KbEepm[OQ<ojq&M(s9h<VbOblo(g.YI\Hu1*?pDXXUF^O:W%]?p8;$H03>(:rhH]15B4kdBDkW/)1$O<MOmWsdMmC7H\p(\)>(=g %/q2!kq7c%VTGTZTHl&`pcktr-?/CqrIn2rR0nP5NiMKmMM+B;ErpR*iRASg;<knr=j*fDH\9]^0Y*HSd4geIpV;CmE^%;[!!>I3) %68`6C3u?`m83Sc`D&50l'a?@hpLC58hoO_?Nt[el0D,L<j&mG1d-*2)H7r"^<\*19b+"Kbc&P)V^L,3bKu_Wt!PCQ7!PF0hW94>B %WTCmPVQZ0lpqH,$7JZ\&jQt.^+6@-2p?K&2!u=#q-,,?AWq4o&RC>;08)K^^;#WZPppsGW'5F&mH:!"8ncX;H9pi,>-l"agn.Ad* %UN:$rZ#8`/j7;^5Wsp;`c=V]=qB^8NhsuKWm]os9=.Wc4E,ET3]ZV7bZ[:;TI-@dEW2cBCjbmp92b"eO;4[$,fkOu7[0[aYC>PID %56ao_8@0P#5ja`X46K7p>NU&`fEXIc@tK4:m-KFpVZA]j$lkTsqs'QdOZ?d/o%tlQJ*!@\#:.a\fuqA+2+@qZY=/iV`a<5te(:fI %dau1UW[UiKIpVge+a&'CZa@b3S($5^d9,RZNIHoU0Zc[,V"95s7E>UGXQO@>4;9MJn6bftNV]7LC$,$@&EusS27e,j*EJ/];Pi/o %`X&Qe$Y[*,^%'<rA5(qF_^ea`\83!,/UPqCo\!Ht&8A\l1bhlRQ)b%"*flfZ(b'E6];V:N]@lfH\;HCE=6J*-^ci3A59Pq\<2>%5 %A>Lc@PK$cf37&h.`C=cE1SerqQeo5dJi(s9ih\dVcO5S1@\o:_\f&r=*pZH^)^A((?KSj_Trp`i=@BOJH2mF/hPb1B1lrV&O%k_U %HA<l/R4DdCd>%t,Pb9W0MpYXN8tYXeqM;[;6;!ML?:lP8\R"Z3I$*#(79ChB/ZKe<^GSJaVQpGY0E,?MhSjC%6pg_]o'+5BEZ%#d %G)<Ls(S:pYbuc(:<&G_k&^nQ3U_R=TeQX1$ON+3pO]J(q><8RCIDKEQ&%\T=1Sb3>ip\7&N:ca(RJE:Wed[a";?rlj9ub?CSdQ!n %1-taNU)ItL*Fko.(#e`JdI1"rK'$.^hB%V?9p%>[fC*Q4Uh/ibI$ur_>%PB"mnG6p4u+,DmIY58'^>!hH"UQ?oSU4A3A7=%nLf.l %mDX)8mIg>;`=V:We_npkl.8;(>;AM@%,NN-1*;70a*RP=*F0t9ee%*#BkV=?FQREC4=X6>`CO.FTo/frR3>K-1:6)`]S)/m2#46i %RcRcO9g[QGrApWlH2WfSefdN+*$"i*g9F\XpVUMW+V!^u!na\p=m7$QoLS//r?DX5iZs&e$dDd:c`JS0Lc"ikT5%A7E&PHkp)p0i %<Ln4MP"1sJk`>kb;O&7t7!h7mLNKOM3/q7%QA43gk0LG+pL^a4H]4%aqN9(/_F3PC1QTQA_koQiQ'<iE8b+pD,OiuHG]/Ht<G9'c %g+HBCp0T1=UUSl"a!qVOo]XlmlQ0&OpF]1tK'FrSS%OFmfFR&VP.%0>0-RKFcggXsh!b&hf=r@#G4&)^`bVKoBD(Z7m.8G0rS@*] %^=RZo0R]F%p)c@cD^?L&)Ao)#VI*EZ=!&m?[oYY^G/`Mo?eMWYDrrgo4q>:?]!$#RIG$d^TQcRq\*^NAf_"QJ+Y]:_Dc\?1kA<^O %VI/4D(Qq:cDr873nNEYV'#hR#[;!VPlbP0:]/G(!)O-7hc/&N$Y#@'/@]StDR-=(Rl.aLnh5HdUh=p9.4s-4lCql@NBFC\ET.q]T %[+X38LY;8H9dpjY:rT1sH.5Dm8gi)=k4SX?HCGGCF`3c<jhiYF2B&Yi!M1!TjcOJ,n<B7rd(=LXhG:CWU*?GCR&G=OPPHL:H:l$8 %@Lq+%OS=FR&eAG.#sZ;j=ih=.eFVnE*KJuUqf3ip#mjt>Ss+<SCkk#1WeD^X%WMuPq2TZ%0cn??J`7Y9*[2Eup]*Y5q^%8cG4kss %7p<a<)sJHPrLfd+MR2Dk32BE],Z5WFQltL6;4R5GqI;!YA2#*"Ob+JHU.pd036)<(,VR7&Fc==tOEO3kdDd5YPeYF"#c-;TrEU-e %pAPAJN7ALWH2gYqddg4eeGip6'ZbX>(a50=,jbO]@qBcc7c+0G$.=SFo9&I*k#%+&VB%2\r_8M!n%WLo2!kSg+a&'A[+,7W!b7k> %'IiT%R[Q5O&i+e2Rl("i`LhYHNiZHBm9Z-SZ#)R?p\V@CImn)hPErJF`-7BYaMF79ZN293UC-G$DhP&f-PA8VV<&+9(Rtu!FL(aO %Uq`B-W]uNA^2?jVera!"6p7.<do-FE%g,WaC<)2%;ZYBKX,&I9E[4D%i4/!9IKV;N&d%D&b6ZVS^sJ+=@M<&8$'\aKdLusoj[WSq %nGsUrFJ3s\@4@DXI6TfU]6mP05PJ$:]f_OY,C8a?3`c*<Ygi@Q''^l@S]/6Jqua4bSR%QdM,U0%\\(h<hNeD^\edZpi.N:0Bt?t\ %-9Cb(bake&2^UQ]+a#q/;)4#t&Y_8Aj'[90L[G!sG$JAN);J63GA'$$jLj?:c6(2j31E2jIhNiXg(I$[-"f`U_!&\k=31r>'4t$o %'YD+7B9f+(Xm,7o:3ger*e,Ru>1j-i0tG?Cfaiq9<BYe2ogj6JqX[n?:+c@lfdK%Vc:A!<4?5d'@GQ@5Hq\5J>#`RYd[OW!./o<A %7utojnfafo8lBLF9-qm()%Q%"-^DhjX>;^,jL0>B9k^']4l;T,'+DKN#WN]e:^c_bZbOBD7?$>OZLNHA0R$=bJQOTM29`[^+1cZ' %0U\frP]#k/<9uTkKIdCe6l=(20Tk3;E$Y%8_T=d:@n^B9#>3+!3<Q.D]>IX4h^TL8*R=;[.sJ+dqk`CJmaAoj3f&5I"Z._S.uXLt %d8rFhSPXSmd1;U>2%@7A)m'`\d:klZf[[CX.ACH/Q:9K2?cV:%gh;ebam_J]$&b:oMAKkZ-%XSql'>%\SBG]JI#N>s^s>^q!`P.W %Z'CdR"`NO;@;2,$o4p7rAOMZ<eq;Kj-HFtA\#e-/HF)ZF=][Jn(7eX!S=+K`W\3taUe>7d6L9rI9;bISU\RRLl$WIFa26Qnf?E.) %g7]2C&(QLtR)*f[ZjAN"()[-gN46c/)KR+fYml4H=9gSH;9[%`>E<63Z`R)`e7_(>fT]pRp\8PNE*XILPn7ZKf("bNl\'k4'0VYn %ms1E-2TAY*38)uR<9EV`pDa=YU<d0W&1b$je2a5KX%oX(e/Oa@aZ]"WDb-GZ\RLk!FgC:2(qYM;H_k-!&VL>!i]P.8mtcZ5E-\#& %7-e'[f+HEBW7[$A/i!j&=O#/!8mO[G=@J4gN+,.o=].t7f2[XNbIeiBdb4-E.H:,sAVNU65hmop69FZ>SKp&ujak?;g-MO*b>[bP %X:Yu4GA5Y]hKQ%$?5?k:4:Au8edC>W*<i)XT-iEM&K\#LFCUJL49\+LU>oE5?iK@*/aD.P(n\ue4+i4j?$r',S`_e0@ra$X"7GW_ %>9h^VJ/dW'*"g@Z`(cYNfF;C?ip9u\&CHC1R9mf@K/?;GaWs4T>e@=V0&]Juaf9+lgAX&A.Rn&Ss4oM!U.NLr%IIPeTo#6<%.-]t %Y`4F?dMjS+fhuUO=fng59lT#C"!;nH59(6Na_*,)o`oc7d2?-CIF++q^l$eX`\,l@;[!`Y)uGqW3h-<;&?8!ZC!aH>RAIEsO*%7M %&"FmYm9SsteWi%V(C.<??@/f$URFJ/DeWehfoqp#JNZNUQpFSUcLlq]7mlm;%aF*XW0PY0!p)<7>ik&2\_coUBL!W@aYV37=Xnrc %)fKP@"eaOi,n]96T;MXN0+5-a%%S[l47d%2@atLiHNT67T)!L@hbW>d&%r92a`tu@TCJlK)u:l%T348BN<?D%j]`=q<RG#P-R5=) %YXkJJ<,L094E%)dcRHnE-u'SJn*]ro*!6L(Jg,NF(2u06WDK9R]YCo:1BjX]+#NXC*3E1j"RZMC>(8>h\#GfgNjL;$0^k:IgJ?E[ %2hl;u!lfoF>iRUdjd0qBnh;E/1g/tLe7eH)Imp-W#6C0Nm<5MWJ2!C0RsD:5k3d.Gd:g*"494-)7_;MTg<Vo.Pa?Qnd4AiNk%tJE %%F;aH2>0s.ef)fp*7!\^Y8E;=H;H<Y;q>q4L6A=&0O4g@f9(nY+_']_fLq>bHHEc1+lZYHNMC.?"kXpc\O)54Ng(+Gb`Fc$m'>b> %cEF<,ULPSX4B?jDoka!FbPcb>0jf9M(c:+,r\0Yhc3p("h6s2Q-j9`Bj4KP5`V&.kDLp/#1#&[ZiN.d`5NtnjpLq+SC[%#JJQX;) %N:r<8=[O$55]7+j=iace>gBH[CSu'[7:<6Rn,@2drk/S0CC<j^b_\3iEuJ5o]N-TSr4Tgo^S:1)em.(VXW`:+D$un;0au*rIrAo; %0V".$HN_=/(+SkRHIhT]gI_lUCn[6,ZF#@)X"20QffGT&dCbiM_kbW;4tLgqL@OKt0"&0V`KZI[2":`?)7hbiD/G6u>e9CUnoVuG %@:N[TUt\pe9,)FmiqC27b[f?sb0>+/RJ8X)ceF73Nj-k%i_DMp#\2iARO,=6/KYJ)(oD]5]ZY'oBh[q9h3DM_R%3MJe+Ut4'`^[M %CPWe`J[2uF[Kr9!lA_"8)[+=FAbT*ceL`Ip4red2:GuDrd*CaB'2Ms<AJudX=Dkk'E.ju=0tK742)i7,JudV3j4M?'0X=Mc?Ta;/ %dh<X,^NkF?Y=258bJ'^n\Y@Ok3b:>]/*QKe%9od)Z`]sBH+-^>[t7RX5ppEjc"lOE/*Kg;i&5?66s2=HTT^RXNGIaZ/*Q%M<AptQ %1IS6Bcl#gkrhP:o\q3[@;e=Dr3pR,6[J"ID)ER0k3i'g);+%6_;;1uq`p8oUf?gXg13,H3cB+Dn!n@cQFqHPKZ^KDG+Y;36>r8+X %k`XKq.@9*63i\Psbq1k;RAZGE.u=GCs(b7T1[k(;T\=^;YJLh7Ue<GEDJp>jjK^GV9-%aaemP-';;5_h$AR1-:`8,VE4[->1>7M[ %O'`mt5q97mpk\U0eRCISk/rYHp0ER><^qO)FK%oVR4G=5R24&h+RDb`0TXmCCf.sNHL7dUNl6PXVjfuR[t9toNV/]G#AN5XqHH5o %C.042],MQu)=3%S=g?^B><tqu&qeY-;H6>;>/\;@?\:&p>="'!`8r+".[jCO3K.[Lg0FjMo]hl>S,'MQF([PE<E_WR24i)OCUepn %c7#hqAD5bJcrV5k-dM5JS&P(d/;poP#Dk5sD(&WLirMBpV+KV2Rk9oCi)9\Nh(H<#0O5E\WRLNm3khG]79ZIHYAISFZE$Q#R?sf< %=R:T_E#aS/9>+W;/nKhW.n9b;2LFB6fL=.=CGV=^m\&V9S#I9!;r;U)@!47o&YG`^%%(=WN)dX"X.fle?(g/(OD9)a$P]p"'4$f2 %G"3_.:eXqRPIl;MBt$-'9WMfrqQb-Y!m:@#'Quh_Dd=rmS4$cf@^'@kLNhmG7R,ahA=M41?J/MdpK>ljG)aeY;1^r0&9d>I"b9@c %Hrd<Z7j2MkNC#XRc%u<,]hqNL*])J>-#QJA$tf,g$K94g8oo%*Q,X`EaVagN0HaR[f44t7[dkg/fSe80=;;V;KULtf5!$8ZEO&=7 %O`br>7dGl%P+`9*]Z_1hp3\HAlkGFj9+q8IWfqZPJ'8e$*2[q%NqUWpA5kQ)fa\Cg6(q1\mAs4j?"+dqM:ah)<IqSZ7`MaN0"N>i %g"*i?F\8-c$*RrO7VAS9)&"&IaiL"N0I*@C0_G1tFtti>?8B1^,^82i,BL;Q*CKnE[tU!]Ec&2RGtKdRp)+a7P;9M)1GWXO3q46H %#%9'?F&m&4XZ!ea,!E'L3S[N,]?`gH6To-9.'9h'DHDU.jXcTC;6VE,J_^d'@<ugUda@J^E>Z*6O`=>]Wha_f/2@Vcl.^Grf\Iia %rs'O$b/_`49Bq%4p2tKsT,T[O8%WZifJ[M'9ciWVHB*.Z,/S.o3_Dk5kE\\9gYt9m7_K_FNiI%RH>:4inABR^p!;t$8NiU.>1-I; %i=M;LMc&m-i>gEOCfh4Ge6-H7idP,q@T!`GAjttqlf!f'"h.bJB<Nnr;%KRLI6TC8E)7).p`,HVlJW06j\%SgG!2AhKQanLB]EYE %WK(ieb'IUTS1Y;NX4:f29*B([4cuc,^R[@<'5:P<`>VU#FiDMG%EP_jOSD[13ee='e8<Ls[PM%8M;,r$8gP;-bHUu+BB.'"/?Ud) %Lon;L)0oPD3[#490q4#=.#,4.&[_67.be.(+0O!0A/#W[D/E!rQsq5obSs(%FqQC\GiSV%S-CNF$PmOcZ(-U\5VX&sa(KVWebosC %pP/0Fo@?D5YI3t+G9jE_fn4&[1#ieIk-.\HR3nRbW#'N`QO;jS*#$[kO0*i;YZ4,,CZisHN:[>iWND`"@DZEcMU]9*<2;^-DkeKk %6.n^r.]O<>7R\eYZ["thJtfG>2*2#r^4,Bc-,.rH=?tTgG+4Up$pt5.G]0/)Ek^:OP>X@b/%5CS37E0+C+5[!%_S"@rMQK2`Y@0N %.@e;cEl1d7QfChX;@9n=,N=KTE7U$m;-X!,[CEO!M=>fH"pt7NaSL%%L1-3^`Q%"^Y\&N<3BF._Cep_dP\'p(;0nD$R-'35o<fk@ %`<BM`k2^ot?"q"#`&tEi<_GEtNIuJEf#,X5hs9\r,r7eLn]nY;nK&<W%`HQ-YBo<hD<hYg%UMcoAR8$Sj'"/N=WHKqc'.oiiN`%% %/3F\\R;@RmT&k%P:-P;.S>/^_)H5<+H&)59XH[eS<b#:^SY\JFju9d>f?'I>USobf96IBiaRh9>1tFb\VEGU!@^g]B$G6+/W>cua %6s&a+baDPbH*@&\/Mj3kQ5+T):kCs4^X"GKQn(`#`GX*#?<+P&O=UAFn)O"B't_k%;l"tdC1L@Ra6i;DF3A4F$G2'@X1GX"<JB8) %fec#FhoAe5H<mia42Iq_nG:u]C%:bn9Z1Cd!q2-%e=.?(lP3G%EL"o2h]tB])U,p8bEO6-dH@NP4+p&&GH?WQ-.?#Y$sZY4E(eBJ %hOIc?V3W9JgH%Ij5;6Es-=>N"=RXp^3Nf,sFGN#@26ja5lJ&mKNk;)McJ<Zie_2t()0rukXk`&5E^g71>Xu4_FPSC:9XdQq[i_L* %i5Q@gK5#W"gCGs"1BN85;rbdnPRhR`)aQ[3l3Ih\ATQIR<L4!'?W_M.V+$_mRH"b;V(C8(6_nUC,qC+H;b^oS6iCc:k1+QC[<*pC %VJKL3B9_nKn)E,/24[SrSYMArf;b](?a&6s24^/Dgho"*7TjNIeT=9sLB/c@=A>]5&u8\lXmBu$Ra.jtc:Gih<_[3@2nQM)9kREu %Vl[RLXdW"*$oPG7no!4L<RVi9d]%MZD,o%&bq@:FDmc%ZGZAk?eT=8dEY89':,STir#))B]MUPW;(\?HVt?0f3[7J(21aF^dlC[l %h6<>C%gm=S[O>bT'<Xn]#M!qA.CMf*SP^u0\GEYYC-&+n3oc_#2Q<Q0!jGiaZ=u0:5o+%>`2mS3kLFZD^9^I^+PFcbF@NZ[2YW+. %TUO/>L+LX6ra@Z)3F'+\c<4Cd8e-X<2s)XZ5HUe=)NaqlqmEHgZsBsC!%fZu[/lr:MX/lne"`CKU81`"CFYn*@KFGSk21@!:6ON& %^,fcm@b^Y-3PIGgp:`Sc2/A,cJT`.%:[(h\=?@;!-gFf=jeaV+=LUr/cgTqp3iD)1X&mZ:<sm^/ajpR@ST8>i.J'YUlZENUMfo$J %87cN\U(dB>Y"P%dH\n`Im]Z%CEfpW2kF+JRSU@lRK>C&jHA_ZG5GI6sGE-_\)dRN_aG\S;GE0k2bc\K\Dh%=RYIW,Q&n$+7h0Nco %K59oADjiB5VQeW/GI"?X]]`,*G[u<KS^VZ=VWSn2k1Gk:g8hV75Mgp8m\$l,jj<7`So:nF?fGT5gl[*H69<SdLMQ7a`eAM!.k8tI %EI'RHJ3>jF_QePi)S2Cjl$KcN>g4TNZTD'93f])*SCJ9]*nrj)<tq>q;lr"43a1u$f1,W3jbF"K2S6fWfF8#"*:61<Zl9@&3SDes %]tYP&^9(?uY'\3b_IImO)qWSK.$D\.f9Qp*QuA^&l^l%3>VmnePIT/[g4k(*"MQgg1#CK\J-_BjIqMSbl(m;AHL!teBlBFoh7;-Z %84kY!1iOVfba&3I253UKGX"D35[XJsKut,.\]4p;.QB%l!+8gmWe`NM0SELb#E-ND2u"j$qdu+S:(%r@mheB12SCsa6.s7,!TJ6B %<_g<=45Cs<<XdTjP]$/c7*AJ_[0miRdd1bgn9-m&W4V$VkOk,+gi+WL0c.a0gi+XD=d\)d[uM;ohf-&:jl6m;M%":EgKY.gDReHZ %VS"cqC!3":bf+PG)t(Z!J':[q[fNA0ShR_6c>M6n_nt+hlg7DAp"8m1->q+$mG$2!CS/B7[fH?qp,0n"Ug$na?>Q;f*MA'EhfFM1 %fYgT=Vf4O$T4DfLZFNGG"S"PGmG`86<dPP4YA[55Jh(;to][li%JKHT'#XUSMO4gYE8$2R=&Wb[E=nCTK432@IQc=eb=r8,5+AlF %0rIO2,@F9BdQDHIV:aG:d;b3+b'U$t9NFSUD_k<RMm9?bj*JIh&JM=L2KoT>N_@<e;JS=JB(tiW_jg,$P=^W!IG8(fl\"GZNT-!Z %YAntms(EnRF06RmF5<U=;r3gT>k?p1klQmg])p3X`cYi3L@`;Y<mMmTS_Cr'O&?/f9g^du`aV==g%@]IDj@)0@6j!sOgD[:Y&Mr? %S-0bTUWIk5KAXg/Z*s-#\^Y1#Ncti)iPC@VP%+"NRPMP!P<+P";\(hE]mZiAW@I9uCruV(K<?8UW(Sm!_j`78PI)c:W^Ikr<W7!M %Hh"]IKoB?G"^B=8"c#19.;OsN]_crK6]*b9Hk4tG48`f9&"DIN1p%NLYD8Sh`:mo_?>ESCjllH04:P"We,5LjcF*;0Is?aK6K%HW %blfK)l]#3dhTb?EhCObSpGe/FkV'NZhL.4Hb#^ErQ$T6K*E$n7Ku1Uf\)p5>`LE$6<qjtqT^nROK"4!+MWicN'O,Frjs^NHWV=;@ %ej2Bj=E:\qWb)l5r=INJ>#:N#$qt<j,((S0#'7:o&r7ItCKH,q::EqY\AdgU]!Q/t6Ximj,Pq=l27HVSG:@I?YDkNP`G'&8I/Ub> %`]hU=6J'oA.`3_bAChjiKX@FO_e'">o;XVP>H=8pV:k4_FM^g/.!!GQAl#U9eXaT`>&n.^dA`CZ>3gA==)mY(f%R$5eKs6,nIO\l %@^/R!lA`VS'0:89Hp0aDWiP.!3G'^d"k]^_((>'Fb"T57g35bEKP\*6(ko^O)J0BAjk$6lkPmM+[ap"Lk4u:A2O:FOM`A%ZGm9D+ %MTr,Q6YKa8#kQND`JB]c%YJ4<Rn!#XXO8,4><)o![)Elm<E_U)CmO6S"a:`2elmo\<bXG;^[B32g71e-Hf`b2!C*p*^!q$FftGob %BD,t+BM&<mr&2IG2;5%X/_ejc40<$cGgpIo-g)J:=1;>'N9\1tf6#/_ZbD&Y5VbD.'HQOWWK^>nVMJ<!IU!4nJ*E4(MR[6;$CLM" %`jYhD.oHt`eXMPJ3lmTZb)Lr)eafe/0q4HOodFFYEk0aDX3kQYMQN*NRg-37h5EirQQK0-3irG48EJQ*J?+)PXo[$sj(h]s>-'hJ %b9oBO!d%TJBR9in)2P\<e2,khjgYZEBapa*3PA1g!1hQeaAt@*!d%TJkTE@'Vuh'E"),%;AmGS-&UUiF.fH2kiZ:N_iP?UT.A&1> %gJi#M]9LY0,`:toasUqkdm*V*52CWYJ'b$>-MJa'q,4qLZ>`%CPYZdpg)kAbT>lce@@-O&H:grs`*)l\\2X+o6`kR9hg/p&rUaD\ %;FR_ElM'>FTlg&*=`7WRWHr`8YFjq'I%0S'3nqs5:lau:ZTT7B/,/mChs.[?IH:[@&-b"K5J#ImaC/.gp!_`+[Y7Gn7^r6mUloNl %h2:?[>jL53B76i<`qNP,p\J`m[rcr"T68[)`j1;FrN,bZ456HDJ$5KnqT@(Np!_""9#Z`4-i`+25IGIVaO")cA*_q9B0DGj<G>Ye %GF*4?F-,R/FK_=E[<&neg?r93kP+L`>k;iZX5B!+j'1:!);iKDM$0hT<8DE%@^X4hIeMK9)u'23Q`#WWps&:#ZeeYHhIK#kE3J.+ %.5eU2=j@D[;IapSTCo=8`YCl,hs4qB%bapZD5Y$FZB\XpHSE1aDf+/d\_#0]%5>GUmg&U`)*eM^c2RS6qH61j\W>),]mePAqH9oi %X]P6>=P`7tp"1&Jos;B_cfJG&%*e86>I,erCK8sHXaX%<R,,H)RsF$hn+CaB+5c5TqH;_@\))O\58>:=I=+8mf1ucCJ'=O)A]jlD %qACU.eiH[KdCk"[!B!'mH40KD=l8LW'>6F[L:=hGO1;`FUO2sj3jn4mp\O-s&U!DB5JN7tSSXVRI=.M#_b7K8D7\n&^=U[VSLn]W %O`ma@I'90+ZdUkJf?ZL]V7i)YkP+fjQ&hoLQ@TeJdCk"[@Cs$jGk6:\XM]4p<;uMr59l%Gg^1O2]m^IOapmh4F0p:5j*U`**(.uQ %IL;AMn+BU+f'l^)ijAN@me*n=LiqAS]+4<&ZX0m[.(7O:IbK88PES6)@<D8?=YDD[S.=WT?9da[rPWc(2S[j>mZMQUXLKUkr`LZ^ %"68laC)k/1hA[htQl_T@.jlh+BBEuso#CRWHP-bp(NoX$dR;>g*?Ru^SL_6e&h9O)MS4cm.Uf9sQ,"i4I&VrkX7P#'RJ/gO<mEgY %Voq4QE^,A<9i+!<BCFjT1ed_bSk/$Y)J*QpZP$)Npl`/$3V8"pre'!MNiIJ5Ap;"V3R76OlE]p6Hc@#b;jI<>X7(B$HgpM=O+j>L %rh=KV4qGt%Z"c;qSuWB>::cDmm]P.U/n<eJ52g#?0'eQ6^35t<F-h*4*2`0P_MN4/r>,G,c8&ntdW9VXEj3U\b+/4dl1EK?m-Qu* %-dP*l:G&a94MGMfDEZsoCW=8>Ibt@Xlp6@Ujj%pHl(`;hQ+?kiD"aIic0"pEaNJu*Q#"]UmAHCN$J5b,77)3,[[Pj2bMKrWZha1q %>rJ&%2.#t+<0sI'X)Ei2kB`$8A7MX`$bB,Sq+c8IZ^L*H&[=#M@(;-nfo4bY=H9cOCE3\gh:p!4n_SL+JU,p]U7]Wb@Frss[A7GU %EN!LfS450ZI^P(gY"A7r9?j?#g(V'eX>\Helr0JM^sHhA27"doP=8\Igi!L6c%m"QS2\264I1YII!oW+V-Ldu0([ni9Os8Lb=(LK %<%5(6W"nbVlmn07Hs@`LhESWbfa?nV".\+a)6A'!SrX?iii&77iAHh!H=hD$g!QTVc^s%M]`j;&pD*<>%(A,'US?S;(t9YJ*bIBP %U*9seg5GI/OCR?B/:8T?7f./m(haNeI'NGiY58BVF#o">O+R.&Y[UBapbO"X5:]/p7HT1,YSAWa#^Vg`?fgpE%Nb9!>[Ft9kC2u% %@aS(["NVD05Y$)3,%&"&"m&1+Hnilq&m/i,<B9f5l3f3Ta_*QH[bUX58A=kXG*NkPI(ph1fum45,j`pD:l3/7s,mRl1`=Z*P<')$ %?B_VJT)h@7l_)n+ZPQD0g'^k'@]pd-#p%El8H`$FNTe[0.3dNS"LN5u,@\2Q7BPf[7.1,U0#iW[O7A""aSTlgKOOd+R2!N$64;ZC %gbAYOR&tKpWeL%C:IA\aV&2!alrEPD`LT$/?R_i'#HIs,5=Z=$?<<1%YdrD\[O7;H*r4,uA%C2E5'C]U)BZ)%1@qf!c/ec(#Yd`/ %?<N]DRSf=Q?sa6gEJ88t6C=-6iB!%$iE\heJNJD<IR1HMh9hDc)nX"2@=ir<`S\$<:c3N-ep:\u!#5666NJH>XsUmB?1-]'k9%uG %[67U5'rc-c.fbnPWrQ9'k\ng2&@q<bb9%k`nB8_J9dElS*s=u4aka_WWQ8Hp*9lqAp=[-tBL,M0n@[BkHm`0nf],->3,o4R7f@Qa %l/HagrL"&opO=2.R1:^QnI/d[U)BtaZ$V)rOG%U=9p]5)-tKJKo_W']j@Fu&pgg")3KRAcg;`q_#H@7*,0,J56j3*f79n.b\H:Xq %M:m.kZ[g4Ll%.0U8Du*_Tr?%PQ(haTo+M4SJ:)po.o@`85>8;A6j%qaOqTME.!]Z?!HULe((4Kt`3DQXrJWs1Qg&gY.F_L\h(P@, %J/];!d[eP2>6*3RA$GT6Y$2GPZi6bqaCX]f)sN^XbKTk&Pbm-`Y@A]q9a2u"=.C`3RmG%\rmNgSEO+g+AAG/89@;MIO%m^lG5Q/( %TA>&/lO25;<c]=6#f'4;#kj1F?(Lb2i;DG';0>\P?fHW:*BF%6BBT&c9Qe&/_JFBP3@#UQn/:@MV34m`5RBNW#^Ou1IX6KNb:4Y2 %5)kYiLM2j!,4?5<;^$<KogFF0.g-I9MQnLWL:B;r5'r^4+nbgs`sN(;jL9i_0A&FL/jEr3Y;HP68<+@tF;h]^46XY9p+2%&eWDk> %R^$_o7VV?n19BiBLhAWY5Y%S\r<:E.6\+;FqXB<&H45gD?r.$c(m@D$X.$O?H*9D@?A[[nekS4J%B(t!-j.ngJIsU$pW='fn*q9U %`GkSLYA3ecZ&%h=p^/fseh@C&9('pZ@123I:kBMB&6<bNVc]VF#7WMG)"d]jS;?.KV:e7)9Emm[K?J$f&^hQ%b#RHi15I/E"lX7c %eXt(daQHb?6T5!RfnZ6L52c$s$pfP)*Ca-7i:<<LdrH:ia_VqORW^tK`@Mi\(j$$\l+D6jbb]^^aX<q@6h2:oboo+dA<9YcWKW<Z %P:rQk2(^&.7&S%@Wb-K-3fqUarR7rG$#$V-msZ:6[*=5Yg-7sY59nlH.5b3459_o(:**S5:mYq)Z/P96=@bTH\*(k<PSrtUeD;c< %,j(Q;4TpX?`^3_3"ouBB:P8fh@dS:[dtu>pc3r8RdmZ=MV@j(H2a4dO<omk$2+BR4TEo+akFUCmAm_#Xdc;[XPBc`H&:6e?pNVRp %m6"cX%/344co_$)*"s"g/f;F=G#,<<_]\[3ILo\:Gfs$Jf(U2Ard@\aFgejt0JCZ/Go!NFpaKWkRUFuA-PtG$KBCL"E&O<5fGr6. %GlGW$h*lC?O7[3h--"7W_oQE\Z/4p-3V.\Ybb0fB:adNB$J8C2c_tS\Z1H[5de-Gj$k#FHlA&M'pl4_;Hrs9?OhJAhdc1!'FRF&P %T6""]VpXrQIXlm?/6.Ho04O-885A#*cdCn7-O?!Oo#uHlGQH<S+DP7(;'0_35jc0U$.,<9TQMZKmQ@$Sfkdp6/`1+ANq;;R%&H`L %OoFlJMTtjl8+8'oA)<gNn9G9ZS%VIb;'-U0=/$ccHjM%aH"0?K45>pB(3EY)X6O8R5)^go[e`>a<^erJNQR:)G<XFI+oUK]CGIK\ %;cgh<l4e1Qo2b)[d56Qq!9.SH$_acAfPpt<ftku)J\3bDH[tiDhuS[K!YdZQa<DK5'*SV2ol'U]',(=mR1!I.J_`tshb.neVfV.` %2=mgBpHC@6f*2>q$]#(EGb5E'+YZ_ZGUY[M@Y53Q"du(jm@Es8T\hE6Lumo^R%"ZII53kbY+ZJ??BWuunhc2>f4@>[a=\nr^oq]W %V!frS&U+'%X5lFH"1SY>jS"g-JpeY;KP$9*3;0$QXm<3U.,aY%c8C<(-DV@FT+]f%itF!n]n]K.EmY^HMq\s+-,a;!Q"%ulW@EW3 %D_[XK^LgBnm@Hf5#,I.[`8Fe1iC(.P"Fru&aC;bh.8j_FG3A,*9a^$:42-PXB&bOMT9N?#Cj74#IX#=dK\3oZBT.Go*@Md,Jn^T= %jTq92]<IMWGW_h-!2-D[k:.ec6Xb5W8A?aK?Epjl7=XVtYon%W0p9EDUBdD.Yns%==;DEY"p$5$7=7Yej9/c<Vj]1`VfmU.A#)JR %6)jW67j+(JrsU;q/-oM#o-2:V*X=S\Lh)h9;cLk]^Bf`pG<_H'@#N:tV2AnTCHJ2)0@*(9;LY8T2qYNnpc@hEB`'&#$]g>M/hc`o %bS_JbZ0_@TguHY9Uih\n,>*%f;A-aHjPL3q/g-_IUaG3!+7[MXVC\Y`?CVXm]]8O^."q)!\=WZV@oo2`@r=KMa5)mSE[]/7B)U'T %fH#(1>`nA%:#CoAPL<,9R_jOiKh5o;'#k<'dN-Ffnu&C5X<;U3?,7Q2'\!b23Z<2FRn)n/)a1&cn"iVRNhs<4J"n:`m'no*%r]5: %\bD$JCc48M?W&9D/WXs</oMn?Go!AkYf=V[ag&]QU-,C@erO!g&*i,@fJnDVm=T-EgCrq%<BPh-f]rjXFe:c^VUY,1.WZF7HLN%H %?D='dh(64(j>E;=KCnhOnlj7CrA8eZk@Grf^$XmgkdK^(f@s&,@k9.plYS#Q&XLu>F^WD7CG8utl0H-NPLkss>3D;4:1!88i?hqk %9O<@a(o4@ES\/"3=_Z=9gJ2(e]LM/OD'uNLiEAr_D``4RS8=;$hKJH.EUml@HJ?PW\HH')^=FU60fuT*$C,72?U#a;Kbn*+8gYCZ %)!$99A1kC0TBh]_SqV*cJ>fRML`Vl"d7SSXAqIFi(Mm:(To4Fi17?niG]S38)+8+e"[F\,!2*!ZA_Q6G@Ojj1n-HXCfK)<GG>lF" %MS,frbgZ-hgMco@_^s6N)@'5S'DkQDhQJS;?9+RVj?cciOO)@E7m>ijZ)d";aW)q3E]H^K1MLlm'PF&6,Um?)g-ePil-cB%SeL_5 %3UTL"%/3>_$h^"O^beV)HKm&lHT^5aLAghC4VRe13X2!b*KOKBR\2cH)"eel9LLC*`.RkRS0VkXV\>bn#0D`oj[;=/GY<`%+oj`E %&cgcnDp\q!"MW#iPGGg4%E0[3^t\Ra8;S-M/;J5/N#7.s5"l:>#B0"VPRY`oS4Hoj*'q626b5]$_^-%:m3pab?.^m+PJnYAIY*k^ %Pq+j0'r'/9d12+f+/N8^:4:Ljj!2&G#I`JKo$8s4:(jrQ4X0oRc('jt3p=Pj'ViZ1q.DRH,6*%M+-D&%*Z[mK$2EdZmX[P2-ju`[ %-ikFg^4f96eklKD<c)9/Mfk7,qYZh$Ej:W;!6\D$\QD?.-s<s;9eP!o!iFTc2Rur%o.KKT2Rup[$/ge]AWr$pPTUc\XV3')P8BEa %1+(*.MsO(ejl0nh@u9r`KL7aGG&YqjPXH"+#:G??FXS\1Hrk-@q'SupLeB3]0j+['&$<cM7)p.rqCmWM;ZI2q,$,rPcm^MiBP6VD %1og,W>l5%?BY6PoG"SIAY1HQsLKrj?rcHYF>`:Aep%abk$7^<L?<6D;e)A?8TU;eno@CsYYaWmiOgYM*iQerde[k+J?dVK0=-6iX %b*J(uE<IJ`OHC'KApaOOfTgK&;/5Bu3:;rD.@8Wo:E%)Z3COBdD`Qd_5H_GD#r<CbVVJNtrP\`VJ&YUg+6ANVVq&6!f5(nOIWlNK %gKPpb>86q)7=R(1c$m3ekgB>tp#`X>::d9V.CTia6+oQ_Gj\()YW(e#Ru;<"iP59IiCD]mL#^P``OMm$([%PENIRX24:f1P-p#2l %mW00joaSY3"b3&Y044-lQq=M]eG[!@lFq4%]hn,L!aBk'Yuj!*a4qY/Kdd?ONSkBfk+`Wo5%A%qQsk9kbu'=:PYNL^$"0R&$,sda %hOSka-PXgFDD"P:UMM.:Y.C!6+rk7[W1/^m@6V\$h$gsW(hgib@2<7_)3tIl%';_X\/9sUmW&W.'b_$(p]P[]Q3bt/4i9OGp]Ps[ %Mo,Xa"m>srn+_.O*G="Y*D8)b#;gt*h=2m4:*]fL7>55&%hAXq+-4%uGTt?XiiM^Dj.^%2R-3Ifg'0`1I?oH2d9)c'i"\A"pkT5T %$'nZi;g$JAHCB^]Ptp?M=b^"u77Z;mRZ<T,VcaiT_P=PK@R+Hl,FOJj%3Qg919mM\/<#R_Ppq7o0SqK;7]T3%c,@M9N8i?d7Bed% %7PFi7J:YgRQitfoNe]VO[o=mukBY#>I$eJ)#+bfq*g7]f%5XppO9G>+)FrkL_sF\E?K<mPg+cH"q,D`0Za%"IT7O7'*7'a0W+4>; %CMk\.PWNnH?AJ[EmS$+!a`?0Zc[2dni#YV(![1jV4$*U+\,sc]@n\)(,`3?@#mnrY)Z4J,Y`W^4r'T'cNE4/76u85K"uTIdZ-dNL %MoH#nCeS@r)&mtC"$,!^UNUD9.`!f`Smda.$HI^D9O&VCcN!s"eI7!t@nfA5+TTDJ'.cM2+WcZ`8[>O[+i!D!QqR\0!]ST^0s&Fs %)T7N?X@e_>gd1NkK8-D56GLJ!#m(`0LKQO8U'"s1",t2Jf&9"B5e0^2/MA8Qb!`Xi!8YK_I%3G2as02@=fXjL[lk#WRD<!j@q(lm %X=-Lo#bBs[dB'D&G==mb2>E&lLMmal.)S'7!X?/cVSRA9]h]cQ%7DCeT882H2O71Och"r&S;$LSDmfHh`/de?b7i]EkZF4K@o8DA %(ci#a7f#Z\]jNY4#V\0VGJunP)Y"P@&"dhqSp6KD3!V/JA<^O[K4'8!'W2rS4G++u"E%$\4@SjBK?.tX&103L@J;:G)+5/ICkCUO %V2?<[YG6bj6NW<;ftt6:=?ls=WAC@k",gqT%ic[O`H[A'@Z\&#XiM[$,DqCpL&cB?`mGPhaDZD2[_D4GKet!Z3hZ!'iC!\kc*Hhp %JnYG2"8QBb0HD]P"ur-BAOWAl4@$gqa2&UmO$INT7r]7NN>)SA<!js++An5F!!cO6*+i"`!$fLqf`Vb6@g[qM'_&*mT]6)R`.@2T %+%6c?&jTJ%e8]oHW];d^JIi!?,b^;oO9-mK\a2'K*tb<u^a5F0MGg79:;R]dB54aa#-9j6>96*J:)h&<UO8HhUPObXBSaMM(X%Fd %Tu#6/cAj\?(l8;G!>Fj\d9IM.)!$Up@%oq=`neFUi>;Y/:=T>Le^ZQ)&0?-33Au\k8b=]B'X,=_qOWU2"@cju3706$Z*-F!_9UCM %2XuG)4)f$FLde&9i)'RNLHlsC3S[1=q[,/!lkD*B(aO8=$@soXYd<!0Mebj*jks2Ya@r=8!G@C`9n7KZ4KCaY-3JUr"F<<JjV\Np %UWB!``\b&0"_WhO9WPH]n1q9tA@I*<&lIipd4I$\;23]J#q-*$'J8"='kl13d]3FH&]b#"l2bFA.8gg9VYuq@8/"NG/N!P\C'+<# %$*]A&[@'d?n-hdnP0dUQLqBG?SPb2r,P;q@!+!piOOJaN(P%]:":$<6GQPTNMuj(^AjCX]K=^5ChEuPi4I+8[Ji5`MN;P;';5/!F %YQt523RCF(G_/j8`5+8cT^oAN`ILl4[K4YVgF,2bNs)O@\14tt9cSNt2`NU$`aElsGa9JWaM2@VYFGV0-^I"e<dp2J*A/ZN-X6+k %"X%5qCm7tmJCt"C^l%$kX["dXjAKE]Naoa*@RhOIKG0`ZjThL`a%dBe2\:A(D"NC@U*n%B@)*HT%?)hVB,(.Q0GYKsS<L6PcriO: %<pu@_S2Z71TIVbd"l]r8JdeSYL52E63>GD_MBPOCh*YKb8/I>=*<nOraIQ/;i0Ps,--?j=+kJO\m"f+YcqP`Y!'V;gImSB%B9=(p %U`^OS#^?Dar8Ir9d';5K!7npp^n!lXk$T+D[6tSFi';_-o$So.!s$=crW&lO$H9*>*;Cq8]r5Ft3"#E@-h&.LA19E3[UR$N62iTr %^qmW,T-.$NR'Doh^cb:?C"PNdeLq_N,P6k'U"_;@8i3@>bu+ic\0u->/RSYu?MTXY<k7=nm7:<8%IK]%gGI8h=pcfF-lp=CEri`\ %)l>#CM_rX@nlNXWa+0H1;=F`&83DXR%f-8KH'CZ.*!?a+BHN5N08R;Mg;1)S!!f;cH.$]OGT'7,E/4"CUZha8hRW%)P$R8H$2>#- %`dhoVEm8Y?EYU<k'8/UZgHso#TKtFL+f#fCmF0g&I/fR6CX/s!DXKEpI1mHLRq&Y%R`BFCa,/:#L,Wsml&)%<j)b3)8SF`h>\7g+ %&:XF0"["c]r:-3.L#)*D?]<*oT!#&\0O2ig7R8FfWi!qkcds,P7VGJ'6[-*>B\S!@R>*i:kae.'[1's9BlRDW&+B+pV=mOY?H0-% %%<&AGiOqAs]qtU=ZO$cI_S0(?_JD8?X*0ngh+rB%\P[0f$Xc9QDD]qbL,lo'ZX?Bm\:*g7X"B5YRk5k\X'gm^-/9hS0QSt4a5s8. %N#_THY=sb;`mu5M]$0W^DSF<e&"\T4@LPH>`OJjNA(OcJZ=4SK`X"bAY;VsTFD[5#S(jdZ/krj_FJJc_K,m[M1\PjY%fFikB`pn` %#NbfqIl4Rs4Vbp%fO$JiY&SP$H$C8FMnZud^Lgk%C@'0uQ5f)b0nr`'faF;-U>#a;W#&Vq/eC(`[a_KeTXMGmfb`lC4^XlZgb1UM %iWU$-=<M^#'B[d-32<G/?b8oVQk[]\,$dD-Y<U%n%K*uKbaRtWI/COBO(l3(QTm#brmC^`&0W.*'^mNX-h#jbi>F%A.t$p'1Q:'I %gZ'6Ed0V%hd7FS7Z+oDtn-o2l`Dj&\TTRL-QEIIp)P&P`)P(sP2#:GE+r]?S*IR\K#La1c>3J186kjB759`#ePoeE>(MQME.@ScG %c6`*9+OGU_J@+J37XBNf'8[chZ+OUOJ]-!d%Kg^.'6leQ2hFcMe?'DhP+C]Om9l*lV$R;e^@UssA[@RbI+f?A.el3c($I1(rr+:% %g\[?--@*m4]fhb$CT,6m0tr[P0Eu'X&:m'-/kc!;?s>/TL>&^tLhIIg,Ii;Q`'ePRp=9-1QNpVMUY70:@C04Y/'c%Z3lK#]DV7ie %;IY.W<\kiUI.kK:ON[tg#-fk`$r/IFhDVap]OZ*u%\`3c&2kAhBsqo*frE\H60BoYHFC0SDtP9BRN)r`d([A?7nqBcfo:oMEJRq^ %@MIlFNp-K?/]GM+glAn(btP!J%mjAm)%o6^c-u>aT.tfX>i2IS:)>V#cchJElfpS$"t9[R`jk%XQk##LS'@B&pMm>;RUJP/XLhgR %b[+R$3Qt2I).2IF`HN=(8Db5l\FC_h3+qU#"GUA(#d:5;E/Y>P*6:=nL`!qkYn(LrE\N:qD6:[+0Rlb``,a-XMNBh%QRTV\BA<?p %nY`djD>fAGJ+\$CrUG*Hs/d.V^\j-G0E:h@[t"2@)h'gUM">>A_:<EeeUiQ\fKG(q&Cf`:3&Q^n0Zu=]S(U/o`A9E_3Bh;$8s#J^ %EjT.799$?[h-Fg^J07#Sf%T5^`Si2A!O';r`f849KWgk>;&q*PB>f&H.KBMMc)a0Iag1Eb"$9$#c0L%RRsj-S@hgG5io-ZLc9\)\ %]Qk,IFqsALC9LQPP#$LeWa#@eKmWZLU]9Y8mE;.%`L$W#57R_n&`ITiZNWECff$utA@+M,SSHTp9nBc4^^S2&P$'*>%VF=2Y#ZVI %A"^9"\>B`KY1pT0mk?)Om,$V`@sWUk`f_A$eZ9e?j(qXg))-3`Q3k_SeA)4c6$R[Z<Ncc[j%dI,$0loNjYEO5'?Rdp0$1V$KDjci %!IO8<P8&pKMC$,E&BBl?Ba<mjLDi6lo<Fo$fjeY)`!Csfr!G,$Kr5S@2]Gr3OW'SBAD?Vi3ILZnSfV&i((eX`h#IGaV.9:R%k&j" %s8=ZTlqa%`F"Dp6GX/Wu=1<,`ch#ikM];CLAL=+Ee`o52#(t_gVB<OR\0tchrGT;1$_C\ZTUce@;A7&t]];2fG@Y\qQEJn45ZZMN %"t2&#+PBd1QV8hB],j_Qo1_>L1-KZ7\AZiL2Z:Rc!i3.A;%[^Qj8rWel-@mE6_(:3(!])b,>]T*h/1sULoMK2KZ12cJrg?6XV?mu %@;6pk9F4?O'?9(J!eaSf!r;DlIg:O0RkHo?Hf=[d'$,#JE=P7,p4J,")&peU'kUE>k:cs(')pY@?&nYFr5<bs9bfbF<3]mVW0o]- %k)jYNU%?$<QfPj</X"HRS$GTT_X4rIj7!G_k_hnc0V\UVJq2R6Y?"&o8U1Rl/9@E.:FD!=VDOb[hs'=BoZl*X1IdS??m`Wj?j06/ %D3;S;"(R8FN=CR#d26$;;M!N']YY/3$!'.gY-K#M>6?rN`8B@!K-+uRc7cL?_.\_"^!q-+1hVp?<Rt.B5S&3s:i5ut>QZZMN/N<r %!esOEcu,Y2HRf)F"h2<?f.70HDaI"/#EHY:9a`t1P86m^Z>T\kJiKRWjWS@M&QD0+R2o+l[9`;3_j9d'Ckk\(7O3pg)Ah/<;rF?R %hh.J3AdgkfrA>PQ9`eSsVd:FQA9Tk\d/hB,caJ`]74iF+30>U\A(F9m-ng_t$YSc"&P?jAoK1oNRFg$sjHVtu@q7!#V.irrW4CF1 %BgGQ'RR49U"lK34#LQ?m%iXF^]:G8pSDggZZ$;RqUQOs4X^dXq2cI*`^pUfS_PS<88%3^+6C$Nq-4V_l@[OoJbY2?GgUPZ'i?\`j %K*#6&Kf#ohmBIi:#50(I)ZV&amC]%:nGTHl)oQ`n(?.31#pu40b-iW%h[bSrN/<e=jgk?4hIHt$*o:uVk^10-"5,5RoZ5ZD`=CW3 %W&NG:Nj`)^fEBTiYOAK@,i_,sX"HgB=\RND3_N%\,nIh^Zp0oGI>Y7e=F"Tpf;L?81Da=?_%MaZg@+,+kISc?96+hd8%#s@#;8'5 %@^uX%I?%/*PJI^#Y+PW9&DA[ZhLIXgG,K$Fd+7Qd$1s;RHaG6=[I'?+fP$5TrC.s-[IY%4#<6uI@Q0YmW45\"4u[=r#8csB\-2E5 %@thqm-5596^Iem8IP!2F=XhI%%-+4_@WkBc7,42q=_8C1*N31#c?4"hSJ4Tg9uP./*hqNMFf)o2=Lm+F1'XE(H1FC>#SE)N4./bq %%@`k+;PPPoYrpB+@GfLOF!62iA1di(FZh-+3_hSe0`K4<@R5ecN)dh=/%RRhDT+dge@MdAX!VK\K\4A1p_?gM!.[$Zh!^oKaBW_1 %I/M-iJXqUk\$#r/Do<.K8UP>ikI5U7UpWeicHKhTB7!t-cP>fUs8$IMJ,QZkqLRZ+k')<$q%/AN5Pu@Q0DPOiDia41+/Rl`n/883 %h\GL:UJ/cZ*f1W>bAr8h/EF+H;\^D@+p^7'^`G,0Jqcu#[,(B7.9$u%#7i#eY5Mj91,'&$gSb`s]#[GkJVGg#j0B1N;2@3hJC?:L %#q-dsmmTS@\aeJqb*G57)rD$]AJ/504=3"@M7@`lVp2^eS%ARRh*D2*Brr4![VN<-09b6[_7'iU#d-l1c0>?YfrAig8Z!0U8Jd2m %peh1fRJ\=f"<<PCP[kkqQtpte%JIA10A<@`_\OE9i[-cuXKDH=#!-q!f)%SslW2EY>M<RM&mD/<C7UmYka?7;D6#]XTVj46#m5[n %im7&V7'i'"Stf4C4Q?Tr0'5f[FD+!p2HpNP$p#eZBejht*s1;?.EQ1Rkbj*>#EMU_-^FAp;]cu;&ZC=!a@pCk7gHgoaZN60JB'[l %*]1'!_I4RA<hbG7POt*4:$c$BaO;&EKaXr<B@0+uJ;R;eqSgkH+nL@@Y!@#aq!j>"K.T_Mb]U*qZrc\^_F;K@'()UH03uNH\GLDh %T6Yrp!$s`+.s6jSZujB/Q):bV'0LpsS$je[h(CsI.rc6>B)f^;d;!9WFA#2_9+uVY*/WH;n^@P;%#efXbT:!"KM1)5!8Jr=!bO%e %d49^$j3qM:EGht;hI<a"TCGtBk/W2;(UC[c.`Pn:B0q[YpO&?a]L6UY<t8p\_SXDW2!1kQ'Ne(10bJuW#tcg_3D,"h%Q+-I(>#of %[tf"\X;>`>6[4d-<?`U]<gbS-E/%YqpLskGG#5939d/ah[`b-Q.oYC`K921#oP3C,j0>HRa>N0<EFHHp^?i%IhY6l<>4HaQ2V.:K %Cai2*p"i*k(=8A[H@1>S@"BJA=O"&^..=N>H'BQo`A_(0pK?MZD30'W9\\'<NK]8GR#'s)^<5HcI]6#f7j:?ket6g)4^RTin$<3j %'P;>EO(c9e;-GPO6Fd+4pc<-$;(%YUm5,&DJ.$u?rUdNo>Ko\agu^03<$AAUm*=jt,E]0%+mp.rE?*/96>P[kJMk-tH/GO%B'O'7 %0hWC*Dkbcq+%'#L)<^<2k9'JD9qA"h):Y6_IFTuhqkRZWe'A=p:)W/p@Q&rl7bYF&7.OaZX"DC:eQjDO;VeOJ)^3:Of.M"=X;*(* %2W6C5Gg\Xf?Tmm<qk_T=LC^rBp#XFmSr&u$,;u`LhXkML[!NGdnj5:dhNYc&`R;u4\n?iPb,"C*?.u1eI;Qe8*Q=2VhKdp)NRNlZ %hql0u;X$Fe\B@p!K#cTQ:Lg#d.1)pgV9=9u^;uiS#[$WmDhK;I>_9(0&97l;&L%uhl4,MB*3+TSJ?TTcXf&6g%+Bo<-,AalYYYY, %W5>3<-D.c>6b?/S$-%aF+fDHRlH#d?JYYr[;,4@(@een4G`raM%T_d^i[6Z#&-bd4('3ck'NJ?U!=WWX8m*:.7>`SK"a6,>>cMT( %$26fp_gs=5*h2JM]kG=1gQDuj2+p#f5[[LAYkbKOqc*6qF;6ssMd@.*7EB'EJ]'EK'r@it_a0ELK#IhB95BSRaScP?0Et`_DYf9U %]L_7mXDJf;:/$o#<MfT4V.TcS@>e"9M7>m=`FG@2),NQ<&ZV(M^^/'*(-BG)pc(r'cmKhNn8716aKsK4=c(>K,Wmdb.@_.EQJ@6` %)MeH`UFf.gUg/H98`^-%ZGW@L"@T&UK\#TB5-6Cb9M6FnlXmhDA!I"]A9d+*7csq*jA&>0?>'#3-RbI=Z+/4&;+]VdWeB=CE@.+K %XAe6T&*/rn-N&XS=b%QdlZ%Sg3@9uj+SSZrR>+Y62up9apLVKs9ls9<<bL$;TJb9t?kZS"b1MSYg7R=(Xc"1t*BE\lBmBiFW_HIe %EkA;c#(4@fctU>6,S$>F)0NrF4BRbX"?_`WTX^KHejYEY[al0<Q:%[kj8e.n;S(@iLCs.'Ch5%tar:O^]Pc;Y2CfEKPMGfc1^@Mm %5t<AE&$OIZBe17WBX#WKSrOXJr%N12cqu\Ms57`,DDM0YNmfcBCc51:*aZ$gq_\9!`4j*q'][VN:\2mO;,P9XYX#?/$7Z`h!QY_0 %n?Bm,HNP=]f/rHu1l]0&H=GU)gGb_CM"N;eqGeAs,;:"gj/Nr9JcPF8)9ocn3PFe.QEtn=),;lZ6nB_)E4@;CR[YhXWhclA;/-`S %k-Zku>#LJaWO8gY?JbEjb@sXAOXY7R+KlhCO%UqS"g8E78pDQR=5S+p.BnR(,R!W0cHACg3JmGUAifAe!It<1>=D6M@__aHlUDP[ %(&\VrlALJhA*.4c+Mm]]T@1<mMBK^qb&1.k.=]^qWot''Apj8t<Zm*O7c]H<S`/M3RWWU=rVXCU>%8c<nO18VPqqp];af`m,XfGM %Dj.t0QKu'h?6=P>X9mEQI/!<Zq`\kial@fbbdF3aU.KVX"KdDb7D]6/Hlm\BJ<.B8&]MB0jIE`omUrbE@TOP-LTR7U!"BfEU-s_k %Gb1acW9>'agDc"/b\iW.!F5\R#SF\+JY4\R:PU6f,G?t<RP?Xq9op_7aTjFXlqQ5$S>*+XJmP\OKmYmS<lG7@%/P[`)6cFAf'DI5 %%E[YY$`P@a'8e;t"C!@>$)J8/PoN1d3)JuHO\U<O+B?t%=f%Rj%]r7s@f:G]'8G&u!:r\!=.rnP8j+Ks#d![(<A3&UH-$)j(R>jp %=-:KNCW[p::@1ufe"nSRfJ5$ISY+gG1(,N&r)q&k$SJX)@p>A+OsUn7/e)Z=M9UQLFO)$tE,[#d+7Wb'Y^e]s,ok%K@E%@"QU.m% %/Y^V")R8G$rRAmN]k-^2@K\`PG!qHj3QTu\g8_[s221"`D=e`7nqjD.%'b_\LlENtZrG'P!l9.e7Q*?O5lR;<Z(kjbU]9@&P@Uns %AAT_G+`m,J_;.[Tk:bX4;IV)1&I&<sA(QmhTWQ2a][2at3:WNP5d_B8JQ9kdOnMkT&5`;A&bu8LiS!PETZ*bRo?!P&jOGJC`TRjh %Dpj%9:?IA&lVJm6\L\Z?X(,+P/X%5-*mO8%kB3DRXZ%G[M-//Vj"u#YQ8)k%26U:C+g[mT]\!t/e_L:/d*&TKT3h8+0Hf'cS<A4@ %"en:uA1(l:XiB_7G%J/)0LK)YJm8N9([uTL6S@j)7!.8\-KUf>.rfZZ,<Q8"Xu)PJ/TSqlph'0:[IqL;F;ZqB>$(2Hn,#Zk]Bl@D %ijQD(jA!!N6mF'T8qj;h7!9W7^e&RC?o")4L=PC.T;F4U&"&5dM((.U9f-,a$:4%H$443ZDN)tW&fe18X7XZH]^M$gqUKRHM)&#C %daVC%iL<&[/E,00pq]k<SRK31EWM[<=R-Tr6NSEkm_!knP.-4SLWT!!+92RpY7AY(]s_5P;3ZJ4!^uqqd/pMI05\8_'eWM:1u)4B %^K(n8g5CaQKU7IGMQD3/SbDnV.&&&YF/KaAYJf#L*=0GeHO2IH,V)iKU'YF<71\c]<QWlj0mf>nFV3sWBDG#D,SK(U#skm2?7q0- %qHf$/^)nH@G"/;*s)n@AFarQUs1!CnF<ga%N]!GXpR;\ZI*rOTpg3qG_>F7H0;R$+e4m\P7&#YE2K&P\2I#_?]u]D!$Ptgn_X2C, %JCM#mlN7kR]$a;T[DFs<q9L0[KN3@sG[>Pcoboec%o-&\H`*!G>Wn)uR#/7gW`&n,gcS-^G"P;1>.s9:=F9[$+H^J&hPG=P(QE24 %_@PkAnc0n?'YW1?%gb1PjEi"8':\RWi;fB+dq+F"4U^_dj(JdmC6(+s'3N28H[Kp:$&F]oScG7e$07%9F!`lg%cg)sb">ckbU*0a %&8^V+1;U39P+?,j7Q,9!&2Oru4la.OqHBlNeNJ+%$fP#CI212Yo7ug6O`mp1JhO7XVV*DqCdTBSP]&uN6&=DJ8hr'&&D>b?K!)>\ %]mruO312,trlK998bO'M-lDK^aT0cKd&#*llUIEW/KWm#XaB;=F;@nD^@5d.Ztf4!9W_]:i'AWS'/iUn2uqqc<H;"lD86h1L-<_5 %#R$h)8ma"RRO!4=g&p<)njZp10NP/J*bbp/q7VBJe+-87Gs@u>J"jd,7%p!F-l?$7MX,_K'ps,l56^/!j)d*a2(-\6]^DoR&T"Hu %cD%dj8NM3U@)A;WEFgRmS^P(%r*j=cZ8R9nT;3QKYk:%@`ISGf,\;0"=C_>bQM+L`@"HID%\uUoJ-%SXGRqtf/[M8JBG+"3@!&o2 %6?RegRc#O<-PUc$huoj'E?k+$d<UepPJa(OV(X@>3rAY7lQ#XL20JO8;JP$][NIQ."l'H!UaD>%cZ@\S6N>89o9C$oXb>@RcTuRi %Xp5#?n3ZD7e=U/$,lrXu8SV*n)'bIM[ZRO@/uKhWOEA])*&?HU5gugDA/X.=rNTit<g2.t(Ff$j"$Inr%^r\I&,[)C77dl=s,/*R %,cHj4:Wtd+^^ue+CtpnGma7V$&]lPQq<Ro%jt#H4(R$@p02WLnlk96`+Y-6qD?HLT?oB5u7oK$\V&O1mSZO)W#?%NB!:Rr#VYWHB %Dn]G'nLJ5#"f4g5\.CXD/Ocr(&/G_>Kt<LGj`(bC!>Juc:fO9J+H)J+%]_k*-WRM6;?d1cq/:jjr$Wus.>oM;/2n<oi\Ooe=@&Iu %10]Q$@7nWnq+MBALf('$?Jo@:DnB])V5Nm69cjeZ?cBpLS#=bmKUMddB*DCDPlX2u,#hPelV4`SBT?c8EhO5LKak*.D+#$fL6f.^ %5M]Ra"Dl&0_@[CFJfIjNF5B:?_V-6t?Z^$^;GHa\(_I)#Z0Cu(YGJ7(eCkLQMosRLE"78ri"&rfqus95@'[sqH)5gb#_U)m3&'kf %Ta!07hr?eTp0*<D;RQisVaMQ+g(2kWSif9V-kR&c.'X\OAYqSCnos#m?3?J01kRp2RDC-Q;PC%I?0=M,g:o,:AL)QW=RrgsE)C/D %8WG.F2Q_9LnGj=./M$'LH!X<DF>V0R/7p36LEt.2_(%".\3*ZHpfmtf_<ra"mpT+YLa00lb4up]R8mTWo.;?mGP0ZKS!Tk"2tiD5 %X*^I!D]\J':DI87,.OY#Vfm45`oeC^O-^UE3bkH<(L><7S;o_6eBe<'UNohP.p`fMlld1uMi%;7]EI#9#dRb_R$qp??e'H+$p2rc %g%qOH7A3Df,;-!hPRn-HP=<Lij$:K^;+-`-0d9<#*e>m9!RPED#>Oq^/1((PZ79.(-_=7WVZ^RnnN#3ENG#188N)i0"Tu7l;0=FQ %#IZZZ&Q%PGV(Nu=oWlX!l>)mX2L.klRs[Kl.qHfCE/gYgnseRhJsFQ>:dbrOoH(<p;3#I-H]]$1g9q0l;!!,!S5H*`?246,GHdf. %PQE6[a$V0HhMg#Q?8ru5%OoOKNc%&q@T#h^3>3Bn7Kn.=pHU76duoRu5Z:,j1p7DN[(=^7UF(lbRc^b7VkflHZJOJiTYTiqS%f>7 %fkFGtVt"%O<t^.PUi%53%6Kdl>i_!#ZSE]C!#5[cBI/7SkCFfh)HmXpiA#'.>5bI;93!ZN-dG))\)g",c>!SubkXaT^6.',73\l- %,&#?/B?bE!QokN1G.I[BhIR4)FB,@hi5)#?kGJH!Dn+8BB,ZA&?0?jIa>b>04O&hKoI^:I%O>jf;J\f+@oX1uJ\ofNb"5BHM`kDP %pA?p#PhDD7TRed9Q@fKZR^upcmR9"0&3ET3O/^Q2ldVXD.?W]^.Y_WS5.'A6Ybmh;`o+Fo&LF'k`Dk'WPUuR0$=MsNDOoV[cVtTK %T0VFbVT;L4@hG^5Ci((h9tK1.&NqUsKM6GSDTa(fkMeGKAb91!IoJQ3M1#:el8=i4HBtgN%4kE)k]\7e;9q0s]I(s@lPrkMAtXjL %WdL:b.)o#)+)fW+g+d4W\##u3+sO]YqRX3,qKs;'KB<h9T:iCg%=[1+$$@djh3IW6>]c6m-1>qs&efnE"i]s*$KH]VQa^Q[H3,O@ %GlgN=Rlo@SfomOohq!>:UFRfCpCG@)q9IVL@[g5&nR13V^cbT!O=d4)G\qp1dI<maqp&(f5nV'<.JNi^G+/PB30?_Zl&20Ua6^V" %#>kj@P4b-LmeJZC15U5K8U`di^mKVV443-j:fF/,49-LG>BZoA]Pk3IP['VV0&Nu:"Ze3"pYqq/FrWXI%c`t78$M,PP_6%C=SuX& %_*"@_9fX/E$N-kYc=KW%1_]2TQEp5$"`GS6mL5dTn:saq$0:A._!TjgXi9!+<74^O$R&?o9j+U?oiX^QE4Cm8s)-g=TR=E),LLSC %YZEMn+XfTKe_MYeYsj_S#,8q%@BfqHS%9e+l<,A@+:<gT)Y(;D=d9Aj^CCA\[uK*^8\+PF.+,d\/-r5Tn="K@j86,3L`5t\l282V %N^@ZTKRL5VHtte^A@*19kYu0+.*Lc3'/<mi1&NVKU?:_5C_*4HZ4&2#ac,,A:#t!:'M_cK[W0iu<dE'4M:<Yq9Zb512QRr`TT#Wg %S5=pu8DmJr"3b.YS8$*d<1g)R_G!%FE<EOE;+N,'=Kal*Oo5\0Bk`cM_d_rVrK-8U<GYi>6&OHjSfZ*Y;JZWO6IG9^lSD(k'NF@> %P3o0#%]=PPEU7@t8GS2,.;l:CMo-/kY-^aVXO)PH4f75h.&^JIf%qtd=:A>i3G1qWW$kta!AEI[AW^@j\IWui82ml[Rt\aK(DOGg %*4=<A]MYg5^.B_M,u@e6nHEJUJfU>YS,*`I^'fILd06Xo'/lPWlfreh_$+uOM;C@W(hP`30PX9j"^=L!Bj-dKf0tI\#l2jSNP1DT %eH7MnT+hlAan+1d='D42?^jk4&:1/17@B0854r<-H/=+$dJgh(3=K\'WMAg-Lk(O_[i9-X>X[OKhdC5?QF0275gW*q8k_"RRD$J[ %Y`di5gKZA<hHJ(t"YhI#W,&)O$oUoIDQ=Gm7FY@$Z;&l:RO9IU#)^50.aBeheo/&UOWX;3;&MCV%W9O.=,[NrKm@+_Z(c8X?laQL %[1Wb%=C$RRYOR!!)R7qQE>;`'_C'nU-M?4).3jC22?JJJM*3i.9>fm,f:E`HZNqLb]dD=:@Ut](V+6*TT!,=2X!<e/k!@Y5M'i10 %d'GhkYI.6Tnou[0%PQ$U_+4-OpRd%,rNG(bZIMh"N+rV18*,@/T0s.;@4Ne3DDu8R,sa8SlfqCB15/M%8A<eZ(j?5almr"a2]jT> %m6CM>]a[`]mOaq:n:/2gs4m_rB?gJD#>H"n38hWU"l53X-X%e!G:XADXc/1%reeh)HBcZb%=Fn$n:RT']iY@(&A;]_9NlbVX/3Sf %e'dso\8%jYpU/GGoP-_rBIh)Al00EFC\'0,e'BRnf8K:g>rR6uqNaGD^7;$<\Op5g#N(ZXBN().Sl$s,CM-`.2daOBq'#8IDrS6L %nJaY9IUDN$hr=@DI!sC$5V:TD*gX)Y1lSk1c-%iJN7eTYi>s+V(J_'K9rtlm3KcA@4l]u<C]AfDIbAlAdWPJ4dID]g`K+XH5M*&q %.Tgo^<T'[0Oqb]"<ZSKjh+&%/Hri]N42^/WeDJ\3*NZrId$*J*Zg'+'Bj2j[iP_W%LkhmqY)Q#LS6@5/<q"AQreJ#VC)3W*T_J3< %A3V;"2ae*.d0j\f-r?e*9r`(0,%7;*c-L-YXKQ(%X+EV;b<q-'FeHTL<4m%;I(2f@)J/]udA(hacm3$\]:Y<M?cj5U/%M:^X/\G: %U*lK^P[[M7'J<o2GY[4>It$uE`Wpk/>ZM#^KCU5H`9ll]f#p=[Ab[:$ghW8`[HGtD37Q-2H_!$E[uW!jIc9:fM4gEh%r*KZqmDX> %HeQS*C`LC]FkOOjmHIMJ@u012Ud-AOj.HuEYU"K]D=Nek.&L[EGUM3Vq`qNHm(f59g4_1Sd4Y)e[*-YkBU?]Aqee;'b+_ME5dnf@ %'at,L>CC=2dFOnq]-bi7;=al^Z#./\ZNqD;`ZS;8#HQ'Q=e#3Pfn3qb%R7]t`2gMF+F#%si`DJPFdJq^[k^DZ?gSB;H5*aHJaE7T %??VqC/U-h,38eAH`k[/<pr`N%^k'aMAH>"=pGd`^RKH@h!>4ThTrjS!:<@>rqeh&-&-/G>.;LSaVW8p4%>=?8/HV15@IMnGr?H&E %:`I<34hF\H1e_UtZ.BDBV4U1P,fWC.j:6h@DdI1ZGSj"qki4%L#?`_M+SEdoKB.-7#H;:m?msqL5Hrb"MIkcNJEU4l7[eX\Xs6Yp %<F#M,2tT>m=5Q4&=+C$r?Th]mlLj.<hl_G$ne&)%bLrp;ms3Gjms3I\mCG\Rd%rYrT0NOm9rbkico1R2kl%*7_$[PFdT-D*8;%QW %+`9YV:Q;5[OpV_.3m%_]%=lZ#Xbk#$>5$!/%rGa7PK.1KjRV<.-ZSnQ.i#I.]q=5\7?5$N,=`qdn+S"r`oD@Oms08Q&s?]ca29nB %mPsSR/G+6A=D7`e`MZ5TX3b^<8kEEoi*SS$,qiq3J\V@cmXA7XT%uK0aocgSpZOHi'\/s]Hg@K^D-C/)V7Ua4!cJOSZ!(,24qAVR %&$Issh@?"S_[]tb^9^0c?Q?XSfCqWBh&ga8k.@eGf6aZ"^HbjZrgVmQ]]O)!_WTSs):C]\GOC],nN9_R$IFhEJrU)0"R(B6k_=%( %\tT)$k_AqbkQWmHs6Ag&Wi,8Q2s:PI>&j9<:O_n35@/\Z)=X<\9A..S;c:YCs5QVEa87MSgbAMe"3=3"?%^0H)'[<);(5,Q_f,*o %Y7(<5=*MDA;d"KuVKQ'VDfU\DDrtr+hK%f0hECJ$q7JYQIG";78f(g%/l`>NQhQ!+:-SI/.eo_>)LqSUOPi2PU]8O+If$lem=4#A %kS+H?rWkLYr@Od/eiYUaXfu)*'p;1ipZ]3gG'@mg<C>"EGaru,FsE-\\OsdlSn*4-<ar6S$SWp^8^1/%]=3*uF+$pN`]ho8lf^R0 %8pLp7Tt2f^K:l5onDua1hAttO*^iQ0,sj1OgUr2(T`GV<&JGgk_#[%@Dh=9<14\(SihJ!RgADUPa)q)S5sA%B:pUC6XRC\0pTW"+ %OD.i\$"8e4#e>l+JTbA.ce+-`;"s[&`UfZCm\##1AFL!L5!<.J7^0B1(4!kLn"Q9FYg3tHH4NHXK=,%UfR'PK>MD21/m?I*c;<h< %,&l89m$j`^HEmiOEu,@<p1/J*#/%IQYXWI&Ya7T3JZ,J.)"_miA,H1G#k69AR17Oh9'bGA*cXdT-pW_]<%M%HbpKhgc=P[Fqe;dT %Z*TF\ipK8Z+6/bfFA8dQP=U24V:H.-ZsHkOR$qe/%Zi,.L5YGR:[:`l=U*2Cl+'UkOiJ0-FQme,F!Xj'IdS>FRlIuo,P=L1F^/[: %['JjoTRG><@c%D.\oaO*/c)Q&l#?pX_b,K@IJHh]VE1;BV-N\>n@ikCnNpCE4c`.En:Ws_HhE$<c0MKEeA$5j"L1+ZkFF:JO&oLb %Gu5=-L`oTuj5AemXIrYC(e>`RHGlJL=b;%)nEh6PpAtER!K,32nc`pFMb%2?lSGP(!T-]<G,"L.V)]#]J/]+3_fkX@IrP%E4]Xr4 %0qp2+D25OhYojV5d,-si#<o).aX);UY+7:neIiV7^@=g5PFr<u>G[,\0,L:mBr$Lt@=mG^JQR#MVutr,<jX3-V(>s;!`YVmb'Q=1 %Md,5%hd^-+T@)Wun21VIn9,nJ]a*ZeW9*6=VH'g/1IbR6J\>hP%Ju00*$Zki.2'j'rHH4rWee(jH7.NS>^tD#dj.+E_!P8WEV4.: %@n(CZ$$3'E2G8!WQ*<Jd.U_G%9riJS;8>71*+]X,S#Gi)jj*jpfQ@bcG&e0\E?;3GiiLKf&.?#\LsUs8f7^#u[fF$2,2THM[;$sR %bo+7AqE++3$Op<:<BRD?.p$mNM[49qFK%0'KdW.Q:Wp,lXO$m5r5@O]W[gUiO3egh=,S7a'JT'Q9N3mK>C/Rm+m#c"Y[2q\N2Df9 %GQuur7FQ<M]qa"&8s^a6W-\\\8@a*6[-E19rd?4m^,8n]]YN7UmToOWgEsk$:/B)d%?Z0cF24'f$#N4q[n.I./"DWE6>FP<ViQB' %/U9oO@C\(fXbYFf!imNg877IA$I41d&_rCM$Yh52')5)m"AX8QE#]Dh9q;rUQ`(Ym*7t)_oGPQ\T\T:'n-`EKL!qEfrTOeGs86gH %kIk?@=2=Tg.c3O`n);a/mHP/"<[Ggm-_hhFA[l1!*lF1>:TNjGTs6J*7J0cu/Vt+g<;s/t?4()i"ubrK.bCCQ);P<5Uos,h]H/2U %f&oFV$#7=mU:BlIA_"Hj9l;LT[559heq"+-h=*\@#94DdV(d.-hFpR!`D=M9EYgu!\P<K+f@"@GEsGEiDc>u"jq\UE8$cZCpIdh\ %lc3EbN\69MAl*5UFq61>K;i3tpG4f/oPhe=!UO+.'!oFKXlM)8dr67U;t<Ql[uiW38LU\XT=Bka)fbdK*14olcOP-)p%VW=j"<*o %^q%R#7^J@Yd%P@oSpB'VoB`0Qbd)F`N`+"R6FWP)]Ihs,cb[dl;9I_$ZLZuYS>[4%?p.A+GW[Dm;O(KT/+-P=n!9K@%*?,<P\8Vg %hn^1:J(E6dWd4d+[pH0lm+lKB\X.YTW"-e149Mb%\(W@<dT!n/B!(jQ;bnI2RWHiVA?cp('2#"Z:/IH.eBOPLQd,<$RgZYXFSVeg %d1aQq7g9eX[I0@uBOUWH+'81,[SPD.Y*f'TYkW*E-SL],/D`1&<emN/g1I+6F#!/:PO`iE7&t[29B^fSNsV,KfB"#*"tdR7>,JmF %9bKRlLZR4dk`D^MD1)\tj3PEL&-J3rLB#.)pF2V*e$3(>!0p8[[o=;4mP)hgki?+FOJA@gcY(Vu!-MtH'`lQT,9)D!o;jsP-T!Y7 %2pX9aF.0g8P<)s62pui(Si\I=D%fn:,Bs1=RqSDYVd.*GO7ABRGQI9,>p93R'B#IWi8RMAGT?._-#1c)3.)OCqYqJGQ2AIOr5!<G %-PW"od%HV&%QmmiOY8?#[q_[hd_n=c]UPpM(K.osjD7*K@RQp:")K(mFK`aGriAOj%qdYE#7a$+5rd)2]q7NE?2XQVlkim>W*/nA %G)YXo?c%R`EW,T\Kb$78]ZK6$^O=H_d+5kj&d=WGDL!mCp'Qf6#.r>eL&8f=%K\@oG$qi`hAUp?8u`QiT2f$W.'_f.Do;s._I&h< %krgs,?[@%Ns-?[do"G&DH:R2tD4,\mqhOqKG*d)rqE<@?q=BuinY-skT6`QEqYB)G%tA06*rc/nJ,.Bu`fABKrqPli^]+1Mra6\< %^V5!jp:pV+2rFUms8@0!rS`h;])V^N*mR9SLG\`W>.XIh^HJAGs8;B-j\o>t<G[ah.R#=<Ps!"9e1SmuoN5(jhBpdcT6:i%A(6$` %fPN(c(*C*H2<$]gLl8#OH9*Pgn$.DR.@(9L;U3piH=;E$*<UW$2bFk-rS`fZE/Lc8dhIl^`lq1FUEj,rbt^YN'UM"g2)nGf:Y<6V %,EgLk:E4*6\L"1BYDb.c&\#18Y;Fe[-:[=L/5OD5%B8\n6kSIJr0KBYE0"#JA5(AFa!j&CF9P'2"]m'0#B-J^\P.ER(FbOj0Wc\^ %DX4<F!=Zd7&M[<.g<t<]2EA8:eu;tE@^HW*2'Ys--\gDJMQh>)L^_Q<-O(X2BI3MSWG95K7sglS##\eBPkIWc"Jt3;UoETGO#1m@ %:hX07&sB_KlJlHFqNIdEniPQg)5GXs</74`-)Uu=b[5<qEI[0[MaF'<iGoY4XO9T\;)UdR]-n/"hfqO42,2Y.(Rgtk7k11]6H$+n %+%tUMBZuc%%>:*2CQAfXT`>gJWgNVRk`(jD8_DG8,Rl#65-`/(d$-^RrcP!M'_AdG4aOLCOYXn?R$U^9l[%<-Q=Nir@N81\,:l@< %X<Q(_;Ob"]&oAoKF&S.,k_^7WVK(\0q?k-'lu5qj]XDKl$BPH<jZp8TSlG__VOggS:YM52Ua?Gc-9ke0B;ROJAsKYT^4CH:N25GF %>:0H=6Rp)(rH50MiA$X89=_Dn!Q#sqa@*N1NE2si$MM.;Ikj)<_MYO>=oJ7V>`)N!H@A6tG?KdP(B5e!)(1u2lcS8p:@oK.ahV#L %Zt)c2!+a(&G6)5&"V&b\&a^#eDKPmfg-&,(:)53(LA`jGV_sQu/HpWP/"#flrTU=hadh:_bcSt1'3hEPm/eVscC[&APkcu1L-:tN %@;NW^4`Y+E.=4sm0$JdL-l:+e3m7#Z&UK_CDJ>hpQ%#Rf:#5WDlUP%H8dH*DSaH:MgD7im)p2YA3\iPX2J)mG^lNSZZooMl7Gkg; %0^i*+>d]iJW66>?UZ!a^pA*e[dsDrl,10oN%cA`ae0(N0.9,D0f(Erh4ea60$,<aOn49Q$?8",]W9W=g'Ddh4Q_k\58?G>WaeP:K %/T"t]f.i::S[AfA(]tF:N0Z5W3`W0^LqTo+L%.:t>.V?a1lnngF4`?+'6G'+5?tdu2D(EF%DZ2e+]g-.D+'[$go#*>&n[%oUZlph %LCm23F;gojFS6ON)<gi?GdZQ%FMl<4Z$c_]AeJ*$PEPN)>]9hMf!QSd9id9'kD.'<*n:f-Gr,"Yn2s]$*;Lc)YCHTb\Nu:,g3*OT %4qT'TBY+kB=>U^rVQBM<qEc'@XIq4Yi:+>n[&IbKMd7PTV2,A/Ckktq7M%SGdAA>)YkGu!H7LErWSJsDmXF#ii9KMN=^po*("UWB %QB^U][ujrq:LFa^iFZ=)$J,86s%t*(FD9Af+VIs1>`]lt<rKtVDR$[)`Wll,979r?Wn8m;*.96nb(C.lk\S!.M\kH,?%UEdJo+.k %M5<[2(asCV)75AniWFF0/_-Zm"Lp?LE:r&&imaPsM@!WAhmA='WuQFk7#c$i3`E`N\7T+UXcjGIU7(jc"bnD^*h/ZqT&s&f;f%>e %bm\i"*IVZX(2JDhY^Frh*(/Qf!YusH7sdNAAEqmUbsIUDmVHrBmPAO:Qod%)^2.Pl^rslTaC9"uG(i\ro`^Dg<i9g_dJ%DGBiSlO %f8[Ob7PKKc"nr\63HE0=:>agE>H"\VL,mYUf<cIk%8@?:C2cuM%j'tJPpg7@"'ph+%8*rWnQB!3C_NV97_F:3MW>eE)8$@`4\7eY %[\OK,dr_qGrD$Q*4N^*h;1YHZ&<a::B@_#Z"^Pn.[8@N%j9):C.bQ&S`<E3K,i'R!7?nJS<0<=F8fh]dTqD[ITk,;OH^7j&f_]fR %TD+789!5gO9uUOB?[jO>&F(_(g>>S#Ou-g-)eV="lBO4GX]SV'4URd](/rCa2Oc?;]cI0&=IiH5UjM'pJ?B>+X#e@0`inKFf2@jW %kd1A[%j^mW#nE@TD"T)Q$[(\AMfp*cL[ZB+femUC5ZE'GXTU`+>$B8>iumD`qm9hc8P1C\,Z358OciQ+,'.DiSkmBg2)!ZE*Ug5D %$ZA)LA=]7pC><#A:V1mtk9-kVk5oa>r#i6P!oI/#>35L-<#LP#>=,bQ2K=;=6@*L/>@r-pVQHT#:%dOK$DN"1#LjdKK'fJ1pP?)a %h*`pR2GT&u9=mriFLaqFYi0$F4Vbc`-Q;8\aK#Q-CEubk#`j3Te1+MYX.^9N%AOTX]RmCh4mMBla=c)j1d81q;-5V[l!P0e3ZC+P %eB(tO^ef;1dLnqVnjPZ=i]mt#Vu=2Ca`71lR^+MoITfRqb=@^"<Tlfg>5WFU&8DP:!SqU`R!K[Nh#tU!3lM7b+_gp\h4/PQ0(C&6 %9pf_C`2<\GRj]%(,\kpU*lb&[<frP`+;p0^XtQU'2gY!aZ",eUMDo1q=4c4Lm4L=,c@h3")rWDCTPa\:*jMl)/tr)t40MRInos-* %k=g2ZY!3\eqePM>/`8p;#(:s."'9!pIC)f.#ZK,^'\X9mmd5RoA1DAdLe=[VPCRb#UQ$5"&j0BimOU="3$);o\kuR3'G;C"furF? %=g(sEkZg_(Y\9%Nf'&AoNhO,B);^?#G^Ke1;hgum<6k,YXN-;%N&MZ[L/M1MHHudoCe7ekbp1q)6^6Z*;V]U?ZbRgh;5g(6nu=m` %gnH/^L)uqd_L<dj/UDZAo\JSV2q8]#"/id`]ZM_mV*S)4E*S7CCi:i_P(Qe-bsT=[gR4d#6uk42U0B3Y$!lI`lA`mkRB_>m'@APN %G9qS?1G'7:U+!TfFlt,9&E9(i\@B&JRQ4:A6U@TV8s?SHrVhn8'S9><V[=%g9-;sg*K$B6':&PK*rOPN+p-Z5\#3,NROtPS@HcUD %"?4mI0eJ8_p(ACOX=t(DSO+6,(r'5\;rCo\#=jL';0<nbG88I;i\O+Z>S]!e;7siVX4)1jOt*+V<8g<Sr2HeGiH`O=FifNo_jcn7 %N^>"Kp5cRTe0^H[3-NeuPQpdI@@-5YW,nhFltV:)#^)oAmG^-h"MlOCf#*]70.=)Sd0k1lL(R-m$fp7hWi:op<_HmK/>%o?KFWrS %9gs<#\X,B1^#(BqKaEc?X`etdPamhg8!X''PrpAH`#E9%keTW''UQ_/QD?Xh\-LhD@rEX8)AAg^_)1[#rK=,1=`WDf#f6DMp/jnK %LmUVFp8\oB+g-Qs2(6nNLR*7UVVK[-\`^Z,E>(7*,)-XR;!cl42+b4D*P7Q!mZ!N("@bo=4<(j*:F.DGGb<l"hNT>\8@$ZrA=qDj %$df*[dE<Z3H_*8B\%Pk3H6qThm2#sBU8??K0@$'*]);,QFnI@r?;-t!$pMP?9r74PJtA5:&!CW0#aC-)PV*d(ou8l&8'j<dee`8m %#m,J#HEY7F5+%h[kjh#n\6\m[c$2"S6iGLq13F"W\oh/LL_:5:<;/)=QS5*d@[Z9hI0XjS#Fa)T$"N,N?LKtU0Pkfu<u/dD`3lKn %$uG]"^-ORSiBA^jmD2H@QU)TgptokANaj=<!kr[$;XQh=g7p6E4)%IjB.#uO?dsO"0"KJae()4(;mL$(:^04AX<L=RKj`Bh9_!AQ %#P)1^\l')$WCNAF,W)]UV@,jF)+9rDPH.WoQa<OkAW\q[m`/g\8d3e/+lLbY#,^Q*NHnc-Y+FoL44A!%2cPpjCnDK]/qn>YeS]Wb %p>Ya^m6%&)EhJ4K[3/M,Bf0aD^%lhJ,s'AVQ;aD%;(">a]i.2,((LQpn+Oc:Rn(:N!-&glCHsMbTn.5+Oq8U$'c2_]H/$E`$/"2^ %cW]M/0FmPoVGP=[fl>*L@jXPR5,BCq;S8-CRU6VQeVa+h<rHJED=h0'0IjrAeX@WbD\Aca@VmNl!MEbkm'\jU!@*fS?8Qfi83N&? %HrZ)h]("85KR\W`D/C@.f8'u>8PFlPXA2T)>Knbp$K;uCc/Qdm@mg>&O\TR$hA(VR+,W"^4,]PR<tDu6'o>q9[#De)=:j1Q$oS2h %pks"p63e`*$RgTBBpIg*6;m/Z%uf+E]I&/aHRZQ(7IcGAC,$KD;5,<n#KEh'?$:D2MeM(L.-,sH.EW3cA7Q(Jo=[jT9!0\UpRoXG %ZLgC5"nUa$MY(l7=Ug:ekQe<-U][aqpq<(X'>Y.$0,3fK]i]WSi9!`U&mjB,^%VHZpX',2S[,1+-jrVkg,Zm+;Br)DAFl6Ibbk,* %l,CZ-M6;K$MjIY`gSYO!:cL9bMP4!;N(CcH?'+cS["B=$^+S\gTJ@T8<AD-WlMm=do6YEQl@k'Wi6IV@;E[lQCIM;eg^P_taT/`g %W?=p@#7Ms*-"B6jVca?!hL.M5>WrjOPMG1]>p&a#EO"GKM>^a[J]$RIlLC@Cn*Zd7UF8TX*H3Q.<$W#b-u(deF^7*YGQSkTD8f\^ %4l"71hYj"<%Z24;"AujbbAtjH:f[nOQH%CS4FA:+nYDoLc>kPd`(cMoDYnU*h<f8d/r%L1bG@]o1<a(9<agQ]>9U"ARg[qUEks.> %D7A;Q605?]_LP2Lmg!k*G[>t<Pa?C%?"Wt0Zg_A)b@J*=`qf<N@0ra0l/_p)'_d[(X1FTsWB^T&WJQZ?b$BP'l@^m[i_9H$[aL_f %bSN&Tek9Sq_e_jtE'GY:RT&'LUS++l^Iu+`HO]CL:3G9So=FBlM*MQSVGZVbnq%-0(JCS`hsi*SYNNd4RiF@iBm-&NX2C6%<p/cU %\C5N"S!_k4&j^\5#NTDsZMH<^plbR!$N/(8[;MP?99!ANZJ]pSZ)&;'rn-MM2Udc$Lljk;jUfLUou'gh#ql[kNipGWDB4a@]u76h %QfZ#sY0>LK4"WOo590@%or\qFcMZs_,K>b2.*DK`O^M_gc&lBRrZ_Q(5DD_5i$H]rlkY*<JR-<C%YDE:MZgr%*@&D]iYWoV,,l)C %aB<Cj,Zr9-N!/1e>F=%AU)QOnH90B@`P4i[:"U9Pq.K%eD=(-OQY7c5MZTtmlt`><lq>ZrYV4C9m->M2l^d"j_7mp_GO0,CqMot5 %Zig3blY#QWZkN/038bJD($,%ZYqK[[T!0lo7\-e;VLQV"-m*`O^;cGJbk;P?jVb$2p*J.GI76FD"88Q/:Y;!^,PL4%a1`te5%@q: %mq:u[q2l?aKk3GX?Q.]+qhje^*j@:uI)`mP1-fL=9/X(PfN7RJ70E7[N:7/NicLcsY9Po6^qQ%p5@@ha^rhI]d2V&'I8P6'`kJg0 %'D?S8k^\'j]6n!n5q/!"p-jGRN.$Bo0A%'m#\NF]!:Ca%@_udE9=,B+KstX5^*puX@p`&-fG?E8B'`05SgNf^aQGAQV)=jK03s_Q %q\!>W^-nEo06*Hnqbm0A'D=kgLDfsr$L\t>0@o3CI48rZ`4e3.1\QN<m#6@T;1?BrK!:dHqgr0KfU&+)-g]#ppl'X#Fo-i?klOZ5 %(KFbdfU"L9_S-M_H!jtaA\c"ig(!qj4h,!/C0<`/?TZ$6K7+2&rP6-(LD0CCo9uqfOjidOf0DF%0;W<RYV4C!f[monYN*7"i<.Rh %^3,(9`m=+Xej2B*/M6u*CMAu-Ya1#'^fp*g$u<,NB3<?\p^Cr;e(=e=l0aM7<WLZ0_-/P#):m5Nm','VcOO&m=KVbWEdfp`=tm;i %f&H".=Gn?JYSK0AK!h!3$.`"bfFt?_Kc=I&.'S&K[DYI/YSN]b_cjO/]UXK[XQ=#/B37f1c3`'"jbXT#nffe5X9B+t_-0-e.3kpj %%@pn/Ybs;gYa/r9XQ9fC#]&[G1T[E-9s>DNSmX.pm0%5#nXO#>Z*"Da&ec6n/NMQ]Ya-3O9X*)SF5_YWS1q`^,##5,hQk%&qTK8s %EeZ]n>&gbAES];l@',!T*O+,9(3WeqTH18f5s&I+B,)YmV6bK"[</'3==YkNFb$lo7oiBhQKhnK?nLit1;[3EM))nNb-aFL>,oCo %_-4bkbcmCgCJ:su81.MT@)LSb]tdgOXaPf/NdBF^X<lR'CJ!ia?nHKr1T\QIbchkJ7:oZF9;Tk:Q59B$CT/T'"D^SZ:U$.LKG1HK %ReR/(l"j/"Q;_Btb9b44CE:Uk%]hOXh?2=I:MPZm7a_c^%Jt<sh%eKZ^U1m^.L1ES[A:l;Ya4XQ$.e*2S7+#>mg7RVh6%6'%IEtB %[DnX%Yh&3X*S/Z^-Wj$nncW`BTG+E'am?6tAimn6_g3?-ek"P(/agk$el!.W$.^$hjLjms=A/$I:U$/7f+Y6^EM$VjNqNls1"?T] %iaeZi/Pc!JCPe<NYa-[nXQ?5if$Y;$?nHfp"D_^F'<J$M:U$-sGCm5_Q2,F(eo9+L=DQQWYCX)2b/aj(eIYN\(.g"]T#;]QXAusN %>R."uCIb@apY6&?"D]keUCXS0,D0id[9?^NYSM]sYSM]uYSM^01H8]_UZbWPk?39FXAuO?:U$/@]F1eeg'Q>F(u?WBCSGrR9@'2; %/^\04lPRe1S`/CU[Dnna=DRj2%VlN\"4lJtB37g6'<FW__AUq)Wj4h+>#j,AAlq^5'<G1?Ps)re<LMeZX>R0!A[Zej/[Ca=Ya.g9 %XOU\r,HR^Z:U$-5,HTu0LUA&"AeV77Y21&IC<B<l@4`+lAlq]Y42G+C&"$`VOpGZ%Mkm^9XAtN+42Y6e+SH,mW\p>TX\).Y$.c+E %?_:^X@sSfi<>Cl^_HOq_0<eJGgR_e)mGA%^*BQ<t>/Ms7YSOSPeuC0h@',m?"kK]@3YSSp'p_&#>#iqn$u:]CK!hVq77UI\&n4&@ %>#7tu<i$B'"D]`F):kfiq^5K=CHTF:\g/N%-,L(+M)<%P]Oui(pt-J81.Cg<CK6'^O0BC8Ee^tO8Zj;><L%Jb_HN3-jqFgbVWeE< %Wi/Q8X@6=S"D_ulcENVln/9el$H!`i/R@9@enQ1n'<J%;km>p%\E3g-*L$TU3bUHSlh96HCGk32NNh!ZYO920"&hEl/^<5WC\bVT %=DR!i401<d%TnX%c`i^K-Wk.l_q4F<B#'Pe^V_#2=)S)j3050=3bSc6V2^iB/oB2Hi6l!<J;\9:!A<KAScCCXlncE\GFJUch4bM> %Wjp2H!#P!=#.V#m42<^m[KGG+(@D14S?n1T(T_HT\G5n<i*qKu^r7=c!&!D[!k;?q1Vfi@)Zd)WQPn^r-F:tt(Rm5`>do^*S:D!_ %V/`"*/r"]W\14t!"LtJ[X%%UIDL)Ao.U+_1>h[O2i:8Ik!A;bHJ4n+-!k@m5);rr1-@i-(=r[Mpc0YXQq=0sU0%>Oli*pmWJ?(,Q %E<`r"8nNUSoq"b\^u^4Mi"BH"\Fc(-i6l75!*;7V?[%#nj.-1Q@qX["\-Cf5!*gaQfE&.+FoYbPm/XYd<K$pEcKY_odX`G?Y,9?W %"2LbH3!!:,o/m%Y8?!Kb6Bo^pQcdLD!3V324TSfQ5.qWF"m#l+M0&g/#)7M2e-j(2nBM$#BIA='ZjGZj<0s'S/i&X:!*<1Tkn2ht %M09*5[#cYcbA.U3!#LE)#.Pr$-\.+bGm:c`-Q`@ASa?aAElnf0\HJ<#Y%,$!!P!m5HN7=28aQN08D4*I@Ge5k])l6tQZdn[#m$Os %/s^/T\<thUE,d8N!13KT"E<17<sQ5>p3cpGj32[slh96HE9ZHt^nkgl!k:)6$/j6BG(<5lSH5m%]afR.V!S-upZ;m'<>@im!NpE< %cKfo[\2YF?J4kdd$/j7A:B22$HNq!Il3)'GZHiLe-[Q'-`6'EW99^=PEmb54l&&.7QTfTp\2:&hi6o+_J4m41!F3[fr&B4B39gaa %2=/PjN1+r?pANSc?5[<n7(gaB4s=7rH+-s\3K8hrmJp':_F<LlH@!n'd$JX+=&B.Q)ralKAOa>^om$L5;,PbO)#QB:?Mo)mi-<Y/ %U/*qCB0@JG+%j,3@'NCff+T]9kYZGR`C)f(@YLJD'.c&h3\7.@:U$4"1G!\Xjn6pgm_E;lcoWd:IXR!j#20*9nb"[h-JAbA/#9nM %?nl>-=KGnaSmX;#:9YQOq@&:-KujW:)cu#SgH2WAU!30<Mhs:.@\n_q(=S3i=A4qk(3>)F@KlC;K#L?=(Ken?R1h,P#Rm/00b*OR %M\T5g(h'\D^/uU2<eMO=YZR%#S7/[s5(+Y,VS6(E/;@[s_d`9-3l>F2mL^4E$YNQM#(20E&@aMIVYuulZ"$9/=DZXO!u?MI_.)ou %)&@kbT4'GW`=.YJ?tNLl9-]s81!rb#(c=<d=A6,$-Wgf"#o5l>cEJ-QQsm8$d_7LgVDXrQ0jTqS()(,2`C-/&1#=_&@XRMNMlGk) %"H-->FG@b:P;=aZiP>g9j$_.r(qS-5(8Crj#o5$jX<(fT_L3D40s8A2(@rJ/_dZlb)&C[)Sm\f)Y<9X1Kfk;#(-B%g!K.t_!>[b1 %2d#G?i!t\8_&4$Cq:-KfCgcN5/>bFt?nn;*%#^+8IYYlHg&[-%lkpQPm0&=VD"p'*mtJ`@YMNZlE?I=oG0g_$9H,_&@bRsu/>g5n %YSc+Y_d]_:)&Dhe5/UiK[i#t1/K/%P'^db.#()hJ0s/V/M[c3DJAm7s4('f+Ca1J8CR\]d^4(gU(ubs^EJGoDN4GNf0p^l/MeV-> %=H&N9@'NUr$S9:Ec*5i;,;1G&!fLb4-Wl>dSmelt<6Y],Yu`_4"ue]]@akp[@52W_"H3'kc`idM'.bKm3Pf2$g^K*T9G8tCQ%M'3 %@[c$X(A$QH_d]PN1G$Q69X#B1`YfOZ/"'g#h2W'_F2@p8M(lbTHHQeVkqa\h9OjJu0o^C/`K$L;#8S8'gB!4lCgi+<#20*9*OGna %F&k$4@QLP;=A/sGKZ0>""H-tI:9[hDg@>B)+f/dQX=0rXKZ/g*fGPIBhO.fWJlnLM0dnDO9V`=Q2DF4XU0_64U3e]6@\TE$1!q=M %$l`u:`<nIp:TtZD1;dRTgGH`U>0%@.V?K3#@N;6_(6^/=?nm]')&@:aI"]I\[O52$.5NO;&nHU5NobQl()p$;!K2pb[DQGuBnsZ^ %ICm5]$B'mNg0l]Om0noX6o-C6Zt<F!4)p"o`4m[%lup!%/2ja$!u;hg[_lR`#Bs9D0:uW,?-<m4VL_LHQmT/W@[cZmM[eup^g\O* %LW-b^B35Sr)&=1cjLjms=KI=tc*3QLfb5p6EM$VnNqNm>1"?RGj(+cj0i%ENMi!]nYa?gp/EW`?(=O"d?nm)t"H-tf'.g##:U$3u %GCmeoQ2,F(fPo=N=DZWX!>\%?^$VYsfUVheFT7C<Cpp=Y/sG&2Wm4moio7m_N0[%k<c5<Ye]:$PQfKI00<_0%_..4cJ("e@(9%#M %eY>mBLs8T#P5="5#qgXdl@:)@SX9Xkg`K>$a'7:_Pl*nKELV8$YY$*V4sc*ZEEd'bm_l]mL]hnbnWA'ad3l>/:lScK=lnG>::p@q %W,h7EXUqau+otKAIBthO]gjp-FfA,p_(3Q)@7%r'Vf`Gk-P#G\o)<mF4eC7'6g=<<b:n@NOlLVc^1:CEaYu<2S[^\bIjudaXO+Ta %GH[+o^^J)bqCc>Sr_g.[/bFm;hKW#<d_(Z&fTACiDi^r/E:FDDa+l;-eF9FGXI`UPXsBr=.WE&e`8jXP<)sjhOld=AH@an?\9-_L %Jtfh+SS@8*J)[H%OeFVE%(>-L''V,;].-4!/-H\#eIHBp:!5>UA-V00g?>OH-r*HMVeJ`-IU1kgYs#"a8"QJQ.P'no9(b6pTY_L[ %cT3bBXg.*m`LErdki&C.N1H?f)t?$HhoNLAW1$C'g6jWPf2bmi.pfJXU]:T/8c<so`'7.@A^0*'ouS:u'l'p]U/1!tUr!N)(+I^5 %R1fEI>5@/FaW.q"GMWqRCU%]ua`0qL9Hr9C<'4N!*cN;79ZqlYQMoLLmi$nSr<pOLY-F1<,[L[Q"5/"B1R\r[PfR.X&LdJ%.(.lD %0X'5hQF$6Fo'@rYkM&b4oq:\bJ3o-f+nqNQFB'(>QJ+pP.1:m\e"&/e2ARU-DH[fI\2Pd]R6Uhkk`YH%Kkf)R\\]15W_#j-MQARf %.^-jFCMs73h,&t^ZXVB<6:pe(U>JGU9TWVMC#ju2qqB+#G_`AsZ>[71@I*Q^i\bW**\NP4HtLbBHD/Gi#*E*@ePG$kUKh[YU=gWb %lm^j>'AnuHLr-?Wi92Z98eW)-r--TS].;5blpQj;I8k:X-^R9PK>"[=ebb'P4Sb1U4@2+?28[iZ$>&kK#;h=NIkohD8VpCg=uqDH %p'K5n9OR0"AW-8=dc]!oADJ%)1Wl&dm)uj1>3"TDqspaeYI7k$[UIoLWt(WL2`:E.1/ktThu;cms6ORKNsYW1rKsDZ0\,,9l-N:s %UgX;gI;qKC`=#0$IDO.=?9`<nmFUf+*;CpP,.?%7[,g4p[U6\'n<-bcd?YpP?!2=`Naoh$WRhg;`Jb;sicY2ig#FHl9.BN;f=Gd) %jcVsY.[^]8&]4]J#?p#1cU+TI&\$okCHF8]ATA?]"".Q[qj5hlKY!BG1K=>Z^h=dMbX>VVo.C5i)OJ-@dNBKiKn8Hg5WRS/@FD/e %%Xh'f\%GA/\4'd%YciIXpDp8?A,Zt5q7P:H?8,RX)>Br<<WU,'`5RQ_B\g>.["thc'[PEt?*CZZg;VqES^&ohY!1@)G^XY-en*A2 %aE6[b4;%JNaWFSQF7NX7p%[#PHTgZE.j7^ONT/h)BfZmUeqrFA`mPs$Lthp&jn>CkN':)jU.DTeBt02*G`?NR'XIWu3r.tK<P-*m %`*Hr;,H"iB!,\O'*]gR<p-_ksk,g.6%C=SXDV)R3-d@G;U:SOmKfA-@*G"iO5.]mOlP5ncmqRbad-.3noe9<:,&:L^a8mo;g?/%D %[07*UFX#s3\CQ")Y.]ap=*nhL]0u9:]oTm!pg),OG"bq:S?k<8Y_U_6d#3C+/)7WL?1fHT7W(Yl@o5hDiLm,C#CKn6b1/<Gl)OcZ %#*9c4D!C@uGbii"Qj,se9Z6)DiGn:0@QY7mSJZ?P<$pc_W.?gp&NeKY>J*dYp@INY$#1)Vo>Ib1[T^!Vc7qnl^'YG9B'KcfCP@q` %DLIq$:$ZXjdE-h(Q[S8SE8R@0lqlD[14"RcD=>pI*4`SY^%rs.&,g1+rFgl_r%,na3SsleIHjG'_p#,sd7]WaZ$,,IS8`Tr(D0H* %PEnsX?<8,h')OOgIE^kMLl5,Y?9CsDg6*R),9$TbeQ$Q'S_'/U!^qe[FNR0X3cf8VoAkt4*OqE4Gt0ZH_G7Wd\tAh:[lSJ-n[_)[ %!@I,\+,JcMVZpjL$&+4D&9TMTW^`cm5oHAle4D9P.%%1R0Hq-,o&sp<UC2Zb6gk=3RSr_faFV/Qej[gpTXC%k*)I!eZEq3O1gPVW %`Bc.-or-:l:g$Cnnm_U?*I-Qf.28uShoD4@nZMc%dQT=#)pM]-e*OQJCOOBCQ0?9TMqRr9DL#UZEiaNR4/765ES\/mho"f?-D!;] %O:d&rg]"obJtptAd5<n&$fj:]]psHm^#Qd+r^E[Fd5C7P2P)F&f/*.m)M#C`TGgh(P$Q_oJS&rd`=ibeH3hYe/=eaS)321t*b]ED %^N,P0QS3htcec]-Jq@qj0b_SB6=^*5[mZ193K#"tN)SJfS/P5OOSu8<Eu>;ZWnSnAI;p5LdY_)DQ:([X>B<#JD0(kJIUW'/!K<)n %or?gd&c:>SIIc5(l&eHFID!\Bb=?PYqTP,KN(GGM-p-W=TLm)]Si-A(/`)H\cGDPN_p;SNbP2pCc@Le//:n^cQ\VeeU*,\OR,m$4 %IMm5gA7df.'frHqUmm3a&[J2A0mYF]=+4Ej^DRFD*6F=+1Oo%1YJ#TA&XUXOZ!XJ;XV`?l/*hh3>jd`U-JJEkg:QH]:BX.\=9lg4 %i(@D!(@=3K../tcoV9YT6bss6nDOoK^3].EqW=^chr^`o?%opI?Zb_-HA&5Q9><8npSkXrG`a[<_\,b`dYX_)Vrj6c+,Qub+"F`1 %&PD.P.R#+pe@H1(lpFkH!Y\N:@OEc)6H%VF/8\au\hD^!pLT?]Z7`+05Mkttk,h@PD\Oo_D*K(Mhp?C[B\^(F)7I4#O$"En[2;f> %l67Nf_*@0VDa^G5F/7caNs*EK4F!++8l`G)/Ut2]E&/MF*iYeM(E_D+(/5Y[,<7"e[bfN]5#.+.Z?ZhP7rgVV/o3<E4HJd&e7G`k %`7qcK[&o"P7R*s59j@Nn,!n8e[<!JAk39]R>ODd.RU?1+Fo]E2e'KPSRqX>DYBceFYo<(f7,];KS'0@3'PlGnR>t,W/[KO"lZ8cq %Kg-CNHunsLd>7XnXS^/BqoWdQlB]/qAa+P<U@3ZXNq/n`@7uLBn0;2:m#Nq8>'55kZ@C07l7F>qm4G&G)chh<P2'(qDXj*eWqmVf %?(=&u_lqoZ;aT>S!'m:S;;Jn8Ue&VP5LK0p;_J'Th#FPUjgeSiWIp&4^Dgb=h^qalUh0#BK:g[o=e4ZalmpsDjR_q+iT:f>h.%'T %\E."J9XiT*P<IbFkddiS7VD`s&),XCcD&#EW7Qll4)J@gg]9Q"ZD6-g_%uDN.dnT2qag9Ag1;AnGn[%AB95VO7Sr`^,ZDu@;Ul`: %)\/Wj/kKoY_8.GP>Nh?QLIi'?\YaMH`D.@!+[iKWbdZ+#)tj!GAU$FPa7DOmRr<cQmGIs6S):o.qo=KLrooo%qY&)k^]46S^AI') %Du[$>bEq,cn_69VpP1t^CS1C>5=;\Gp7MB<TDdsQri:hS#OQ[)Du~> %AI9_PrivateDataEnd \ No newline at end of file diff --git a/mozilla/webtools/testopia/testopia/img/testopia_city_512.png b/mozilla/webtools/testopia/testopia/img/testopia_city_512.png new file mode 100644 index 00000000000..2b9c11e7a42 Binary files /dev/null and b/mozilla/webtools/testopia/testopia/img/testopia_city_512.png differ diff --git a/mozilla/webtools/testopia/testopia/js/caserun.js b/mozilla/webtools/testopia/testopia/js/caserun.js index 58c88e6b8ef..4495094f992 100755 --- a/mozilla/webtools/testopia/testopia/js/caserun.js +++ b/mozilla/webtools/testopia/testopia/js/caserun.js @@ -53,7 +53,7 @@ function edt_attch(index) { function fillrow(data, idx){ //document.write(data); if (data.substring(0,5) == 'Error'){ - displayMsg('pp'+_index, 2, data); + displayMsg('pp'+idx, 2, data); return; } if (data.substring(0,9) == '<!DOCTYPE'){ @@ -65,29 +65,24 @@ function fillrow(data, idx){ } //chBld Updates the caserun build function chBld(idx, bid, sid, cid){ - if (sid != 'IDLE') - var ret = confirm("You are changing the build of a statused test case. This will reset the testcase. Are you sure?"); - if (ret == true || sid == 'IDLE'){ - disableAllButtons(true); - dojo.io.bind({ - url: "tr_show_caserun.cgi", - content: { caserun_id: cid, index: idx, build_id: bid, action: 'update_build'}, - load: function(type, data, evt){ fillrow(data, idx); sr(idx); - var fields = data.split("|"); - var status = fields[0]; - var closed = fields[1]; - var tested = fields[2]; - document.getElementById('xs'+idx).src="testopia/img/"+status+"_small.gif"; - document.getElementById('tdb'+idx).innerHTML = tested; - document.getElementById('cld'+idx).innerHTML = closed; - displayMsg('pp'+ idx, 1, MSG_TESTLOG_UPDATED); - setTimeout("clearMsg('pp"+ idx +"')",OK_TIMEOUT); - disableAllButtons(false); - }, - error: function(type, error){ alert("ERROR");}, - mimetype: "text/plain" - }); - } + disableAllButtons(true); + dojo.io.bind({ + url: "tr_show_caserun.cgi", + content: { caserun_id: cid, index: idx, build_id: bid, action: 'update_build'}, + load: function(type, data, evt){ + fillrow(data, idx); + var fields = data.split("|~+"); + document.getElementById('head_caserun_'+idx).innerHTML = fields[0]; + document.getElementById('body_caserun_'+idx).innerHTML = fields[1]; + document.getElementById('ra'+idx).style.display='block'; + document.getElementById('id'+idx).src='testopia/img/td.gif'; + displayMsg('pp'+ idx, 1, MSG_TESTLOG_UPDATED); + setTimeout("clearMsg('pp"+ idx +"')",OK_TIMEOUT); + disableAllButtons(false); + }, + error: function(type, error){ alert("ERROR");}, + mimetype: "text/plain" + }); } //chStat updates the status function chStat(idx, sid, cid){ @@ -101,7 +96,18 @@ function chStat(idx, sid, cid){ var status = fields[0]; var closed = fields[1]; var tested = fields[2]; - document.getElementById('xs'+idx).src="testopia/img/"+status+"_small.gif"; + try{ + var deps = fields[3]; + ids = deps.split(","); + for (var i=0; i<ids.length; i++){ + if (status == 'FAILED') + document.getElementById('xs'+ids[i]).src="testopia/img/BLOCKED_small.gif"; + else + document.getElementById('xs'+ids[i]).src="testopia/img/IDLE_small.gif"; + } + } + catch (e){} + document.getElementById('xs'+cid).src="testopia/img/"+status+"_small.gif"; document.getElementById('tdb'+idx).innerHTML = tested; document.getElementById('cld'+idx).innerHTML = closed; displayMsg('pp'+ idx, 1, MSG_TESTLOG_UPDATED); diff --git a/mozilla/webtools/testopia/testopia/js/util.js b/mozilla/webtools/testopia/testopia/js/util.js index facc8611adf..ef6252450ba 100755 --- a/mozilla/webtools/testopia/testopia/js/util.js +++ b/mozilla/webtools/testopia/testopia/js/util.js @@ -29,7 +29,7 @@ function exal() { function _cset(newstate) { var myform = document.getElementById('table'); for(i=0;i<myform.length;i++) { - if(myform[i].type == 'checkbox'){ + if(myform[i].type == 'checkbox' && myform[i].name != 'togglearch'){ myform[i].checked = newstate; } } diff --git a/mozilla/webtools/testopia/tr_defparams.pl b/mozilla/webtools/testopia/tr_defparams.pl index 6e73bff1902..3f21295d94e 100644 --- a/mozilla/webtools/testopia/tr_defparams.pl +++ b/mozilla/webtools/testopia/tr_defparams.pl @@ -22,28 +22,11 @@ # Test Runner params: -sub check_image_converter { - my ($value, $hash) = @_; - if ($value == 1){ - eval "require Image::Magick"; - return "Error requiring Image::Magick: '$@'" if $@; - } - return ""; -} +use strict; +use vars qw(@param_list); push @param_list, ( - # This is already in Bugzilla 2.22 - { - name => 'convert_uncompressed_images', - desc => 'If this option is on, attachments with content type image/bmp ' . - 'will be converted to image/png and compressed before uploading to'. - 'the database to conserve disk space.', - type => 'b', - default => 0, - checker => \&check_image_converter - }, - { name => 'private-cases-log', desc => "If this option is on, the tester cannot view other testers' cases", diff --git a/mozilla/webtools/testopia/tr_install.pl b/mozilla/webtools/testopia/tr_install.pl index 1a01f551037..26f37ad19a6 100644 --- a/mozilla/webtools/testopia/tr_install.pl +++ b/mozilla/webtools/testopia/tr_install.pl @@ -323,19 +323,23 @@ sub SetupPermissions_unix { `chmod 750 testopia/tr_*`; `chmod -R 750 testopia/doc`; `chmod -R 750 testopia/img`; - `chmod -R 750 testopia/htmlarea30b`; + `chmod -R 750 testopia/css`; + `chmod -R 750 testopia/js`; + `chmod -R 750 testopia/dojo-ajax`; `chmod -R 750 testopia/scripts`; `chmod 770 testopia/temp`; - if (defined $webservergroup && ($webservergroup ne '')) { - print " Webserver group: $webservergroup\n"; - `chown :$webservergroup tr_*`; - `chown :$webservergroup testopia`; - `chown :$webservergroup testopia/tr_*`; - `chown -R :$webservergroup testopia/doc`; - `chown -R :$webservergroup testopia/img`; - `chown -R :$webservergroup testopia/htmlarea30b`; - `chown -R :$webservergroup testopia/scripts`; - `chown :$webservergroup testopia/temp`; + if (defined $::webservergroup && ($::webservergroup ne '')) { + print " Webserver group: $::webservergroup\n"; + `chown :$::webservergroup tr_*`; + `chown :$::webservergroup testopia`; + `chown :$::webservergroup testopia/tr_*`; + `chown -R :$::webservergroup testopia/doc`; + `chown -R :$::webservergroup testopia/img`; + `chown -R :$::webservergroup testopia/css`; + `chown -R :$::webservergroup testopia/js`; + `chown -R :$::webservergroup testopia/dojo-ajax`; + `chown -R :$::webservergroup testopia/scripts`; + `chown :$::webservergroup testopia/temp`; } } diff --git a/mozilla/webtools/testopia/tr_list_caseruns.cgi b/mozilla/webtools/testopia/tr_list_caseruns.cgi index 997f2162db6..4f9ea508fb5 100755 --- a/mozilla/webtools/testopia/tr_list_caseruns.cgi +++ b/mozilla/webtools/testopia/tr_list_caseruns.cgi @@ -78,10 +78,16 @@ if ($action eq 'Commit'){ foreach my $bug (@buglist){ $caserun->attach_bug($bug); } - + my $testedby; + my $close_date; + if ($caserun->is_closed_status($status)){ + $testedby = Bugzilla->user->id; + $close_date = get_time_stamp(); + } my %newfields = ( 'assignee' => $assignee, - 'testedby' => Bugzilla->user->id, + 'testedby' => $testedby, + 'close_date' => $close_date, 'case_run_status_id' => $status, 'build_id' => $build, ); diff --git a/mozilla/webtools/testopia/tr_list_cases.cgi b/mozilla/webtools/testopia/tr_list_cases.cgi index 6454332a865..acec40778f3 100755 --- a/mozilla/webtools/testopia/tr_list_cases.cgi +++ b/mozilla/webtools/testopia/tr_list_cases.cgi @@ -99,7 +99,7 @@ if ($action eq 'Commit'){ ); $case->update(\%newvalues); if ($cgi->param('addtags')){ - foreach my $name (split(/[\s,]+/, $cgi->param('addtags'))){ + foreach my $name (split(/,/, $cgi->param('addtags'))){ trick_taint($name); my $tag = Bugzilla::Testopia::TestTag->new({'tag_name' => $name}); my $tag_id = $tag->store; diff --git a/mozilla/webtools/testopia/tr_new_case.cgi b/mozilla/webtools/testopia/tr_new_case.cgi index d594b3a979e..6dc679270c0 100755 --- a/mozilla/webtools/testopia/tr_new_case.cgi +++ b/mozilla/webtools/testopia/tr_new_case.cgi @@ -45,20 +45,33 @@ my $cgi = Bugzilla->cgi; push @{$::vars->{'style_urls'}}, 'testopia/css/default.css'; my $action = $cgi->param('action') || ''; -my $plan_id = $cgi->param('plan_id'); +my @plan_id = $cgi->param('plan_id'); -unless ($plan_id){ +unless (@plan_id){ $vars->{'form_action'} = 'tr_new_case.cgi'; $template->process("testopia/plan/choose.html.tmpl", $vars) || ThrowTemplateError($template->error()); exit; } -detaint_natural($plan_id); -validate_test_id($plan_id, 'plan'); +my %seen; +my @plans; +my @plan_ids; +my @categories; +foreach my $entry (@plan_id){ + foreach my $id (split(/[\s,]+/, $entry)){ + detaint_natural($id); + validate_test_id($id, 'plan'); + $seen{$id} = 1; + } +} +foreach my $id (keys %seen){ + my $plan = Bugzilla::Testopia::TestPlan->new($id); + push @plan_ids, $id; + push @plans, $plan; + push @categories, @{$plan->categories}; +} -ThrowUserError("testopia-missing-parameter", {'param' => 'plan_id'}) unless ($plan_id); -my $plan = Bugzilla::Testopia::TestPlan->new($plan_id); -ThrowUserError('testopia-create-category', {'plan' => $plan }) if scalar @{$plan->categories} < 1; +ThrowUserError('testopia-create-category', {'plan' => $plans[0] }) if scalar @categories < 1; if ($action eq 'Add'){ my $alias = $cgi->param('alias')|| ''; my $category = $cgi->param('category'); @@ -74,13 +87,14 @@ if ($action eq 'Add'){ my $tcdependson = $cgi->param("tcdependson")|| ''; my $tcblocks = $cgi->param("tcblocks")|| ''; my $tester = $cgi->param("tester") || ''; + my @comps = $cgi->param("components"); if ($tester){ $tester = DBNameToIdAndCheck($cgi->param('tester')); } ThrowUserError('testopia-missing-required-field', {'field' => 'summary'}) if $summary eq ''; ThrowUserError('testopia-missing-required-field', {'field' => 'Case Action'}) if $tcaction eq ''; - ThrowUserError('testopia-missing-required-field', {'field' => 'Case Effect'}) if $tceffect eq ''; + ThrowUserError('testopia-missing-required-field', {'field' => 'Case Expected Results'}) if $tceffect eq ''; detaint_natural($status); detaint_natural($category); @@ -101,6 +115,13 @@ if ($action eq 'Add'){ validate_selection($category, 'category_id', 'test_case_categories'); validate_selection($status, 'case_status_id', 'test_case_status'); + my @components; + foreach my $id (@comps){ + detaint_natural($id); + validate_selection($id, 'id', 'components'); + push @components, $id; + } + my $case = Bugzilla::Testopia::TestCase->new({ 'alias' => $alias || undef, 'case_status_id' => $status, @@ -117,7 +138,7 @@ if ($action eq 'Add'){ 'effect' => $tceffect, 'dependson' => $tcdependson, 'blocks' => $tcblocks, - 'plans' => [$plan], + 'plans' => \@plans, }); ThrowUserError('testiopia-alias-exists', @@ -127,11 +148,23 @@ if ($action eq 'Add'){ if ($isautomated !~ /^[01]$/); my $case_id = $case->store; + my $case = Bugzilla::Testopia::TestCase->new($case_id); + + $case->add_component($_) foreach (@components); + if ($cgi->param('addtags')){ + foreach my $name (split(/,/, $cgi->param('addtags'))){ + trick_taint($name); + my $tag = Bugzilla::Testopia::TestTag->new({'tag_name' => $name}); + my $tag_id = $tag->store; + $case->add_tag($tag_id); + } + } + $vars->{'action'} = "update"; $vars->{'form_action'} = "tr_show_case.cgi"; - $vars->{'case'} = Bugzilla::Testopia::TestCase->new($case_id); + $vars->{'case'} = $case; $vars->{'tr_message'} = "Case $case_id Created. - <a href=\"tr_new_case.cgi?plan_id=$plan_id\">Add another</a>"; + <a href=\"tr_new_case.cgi?plan_id=" . join(",", @plan_ids) . "\">Add another</a>"; $template->process("testopia/case/show.html.tmpl", $vars) || ThrowTemplateError($template->error()); @@ -145,7 +178,7 @@ else { $vars->{'form_action'} = "tr_new_case.cgi"; $vars->{'case'} = Bugzilla::Testopia::TestCase->new( {'case_id' => 0, - 'plans' => [$plan], + 'plans' => \@plans, 'category' => {'name' => 'Default'}, }); $template->process("testopia/case/add.html.tmpl", $vars) || diff --git a/mozilla/webtools/testopia/tr_new_plan.cgi b/mozilla/webtools/testopia/tr_new_plan.cgi index 177dbae03e7..e747ec4b94b 100755 --- a/mozilla/webtools/testopia/tr_new_plan.cgi +++ b/mozilla/webtools/testopia/tr_new_plan.cgi @@ -45,7 +45,7 @@ my $cgi = Bugzilla->cgi; push @{$::vars->{'style_urls'}}, 'testopia/css/default.css'; my $action = $cgi->param('action'); -my $product = $cgi->param('prod_id'); +my $product = $cgi->param('product_id'); detaint_natural($product); diff --git a/mozilla/webtools/testopia/tr_new_run.cgi b/mozilla/webtools/testopia/tr_new_run.cgi index 1d11440fdcc..ab7d9e0b02d 100755 --- a/mozilla/webtools/testopia/tr_new_run.cgi +++ b/mozilla/webtools/testopia/tr_new_run.cgi @@ -48,6 +48,13 @@ push @{$::vars->{'style_urls'}}, 'testopia/css/default.css'; my $action = $cgi->param('action') || ''; my $plan_id = $cgi->param('plan_id'); +unless ($plan_id){ + $vars->{'form_action'} = 'tr_new_run.cgi'; + $template->process("testopia/plan/choose.html.tmpl", $vars) + || ThrowTemplateError($template->error()); + exit; +} + detaint_natural($plan_id); validate_test_id($plan_id, 'plan'); diff --git a/mozilla/webtools/testopia/tr_query.cgi b/mozilla/webtools/testopia/tr_query.cgi index f343571596b..76201d6477a 100755 --- a/mozilla/webtools/testopia/tr_query.cgi +++ b/mozilla/webtools/testopia/tr_query.cgi @@ -43,48 +43,66 @@ Bugzilla->login(); print $cgi->header; my $action = $cgi->param('action'); - + if ($action eq 'getversions'){ - my @prod_ids = $cgi->param('prod_ids'); + my @prod_ids = split(",", $cgi->param('prod_ids')); + my $tab = $cgi->param('current_tab') || ''; my $plan = Bugzilla::Testopia::TestPlan->new({'plan_id' => 0}); - my @versions; + my @validated; foreach my $p (@prod_ids){ detaint_natural($p); - push @versions, $plan->get_product_versions($p); + validate_selection($p,'id','products'); + push @validated, $p if can_view_product($p); } - # Weed out duplicates - my %seen; - foreach my $v (@versions){ - $seen{$v->{'id'}} = 1; + my $prodlist = join(",", @validated); + my $versions = $plan->get_product_versions($prodlist) if ($tab eq 'run' || $tab eq 'plan'); + my $milestones = $plan->get_product_milestones($prodlist) if ($tab eq 'run'); + my $builds = $plan->get_product_builds($prodlist) if ($tab eq 'run'); + my $components = $plan->get_product_components($prodlist) if ($tab eq 'case' || ''); + my $categories = $plan->get_product_categories($prodlist) if ($tab eq 'case' || ''); + + my $ret = "<product>"; + foreach my $value (@$versions){ + $ret .= "<version>". xml_quote($value->{'name'}) ."</version>"; } - my $ret; - foreach my $v (keys %seen){ - $ret .= $v . "|"; + foreach my $value (@$milestones){ + $ret .= "<milestone>". xml_quote($value->{'name'}) ."</milestone>"; } - chop($ret); + foreach my $value (@$builds){ + $ret .= "<build>". xml_quote($value->{'name'}) ."</build>"; + } + foreach my $value (@$components){ + $ret .= "<component>". xml_quote($value->{'name'}) ."</component>"; + } + foreach my $value (@$categories){ + $ret .= "<category>". xml_quote($value->{'name'}) ."</category>"; + } + $ret .= "</product>"; + print $ret; } else{ + my $plan = Bugzilla::Testopia::TestPlan->new({ 'plan_id' => 0 }); + my @allversions; + foreach my $p (@{$plan->get_available_products}){ + push @allversions, @{$plan->get_product_versions($p->{'id'})}; + } + # weed out any repeats + my %versions; + foreach my $v (@allversions){ + $versions{$v->{'id'}} = 1; + } + @allversions = (); + foreach my $k (keys %versions){ + push @allversions, { 'id' => $k, 'name' => $k }; + } + $vars->{'plan'} = $plan; + $vars->{'product_versions'} = \@allversions; + #TODO: Support default query my $tab = $cgi->param('current_tab') || ''; if ($tab eq 'plan'){ - my $plan = Bugzilla::Testopia::TestPlan->new({ 'plan_id' => 0 }); - my @allversions; - foreach my $p (@{$plan->get_available_products}){ - push @allversions, @{$plan->get_product_versions($p->{'id'})}; - } - # weed out any repeats - my %versions; - foreach my $v (@allversions){ - $versions{$v->{'id'}} = 1; - } - @allversions = (); - foreach my $k (keys %versions){ - push @allversions, { 'id' => $k, 'name' => $k }; - } - $vars->{'plan'} = $plan; $vars->{'title'} = "Search For Test Plans"; - $vars->{'product_versions'} = \@allversions; } elsif ($tab eq 'run'){ my $run = Bugzilla::Testopia::TestRun->new({ 'run_id' => 0 }); @@ -103,4 +121,3 @@ else{ $template->process("testopia/search/advanced.html.tmpl", $vars) || ThrowTemplateError($template->error()); } - diff --git a/mozilla/webtools/testopia/tr_show_case.cgi b/mozilla/webtools/testopia/tr_show_case.cgi index 37cf100981e..0fb19bde9a1 100755 --- a/mozilla/webtools/testopia/tr_show_case.cgi +++ b/mozilla/webtools/testopia/tr_show_case.cgi @@ -263,7 +263,7 @@ sub do_update{ ThrowUserError('testopia-missing-required-field', {'field' => 'summary'}) if $summary eq ''; ThrowUserError('testopia-missing-required-field', {'field' => 'Case Action'}) if $newtcaction eq ''; - ThrowUserError('testopia-missing-required-field', {'field' => 'Case Effect'}) if $newtceffect eq ''; + ThrowUserError('testopia-missing-required-field', {'field' => 'Case Expected Results'}) if $newtceffect eq ''; detaint_natural($status); detaint_natural($category); @@ -314,10 +314,9 @@ sub do_update{ sub display { my $case = shift; - - $cgi->delete('build'); - $cgi->delete('isautomated'); - $cgi->delete('category'); + $cgi->delete_all; + $cgi->param('case_id', $case->id); + $cgi->param('isactive', 1); $cgi->param('current_tab', 'case_run'); my $search = Bugzilla::Testopia::Search->new($cgi); my $table = Bugzilla::Testopia::Table->new('case_run', 'tr_show_case.cgi', $cgi, undef, $search->query); diff --git a/mozilla/webtools/testopia/tr_show_caserun.cgi b/mozilla/webtools/testopia/tr_show_caserun.cgi index 8dabdc746a8..37f99808de0 100755 --- a/mozilla/webtools/testopia/tr_show_caserun.cgi +++ b/mozilla/webtools/testopia/tr_show_caserun.cgi @@ -27,6 +27,7 @@ use Bugzilla::Constants; use Bugzilla::Error; use Bugzilla::Util; use Bugzilla::Testopia::Util; +use Bugzilla::Testopia::Table; use Bugzilla::Testopia::TestRun; use Bugzilla::Testopia::TestCase; use Bugzilla::Testopia::TestCaseRun; @@ -59,8 +60,10 @@ if ($action eq 'Commit'){ my $status = $cgi->param('status'); my $notes = $cgi->param('notes'); my $build = $cgi->param('caserun_build'); + my $confirm = $cgi->param('confirm'); my $assignee = DBNameToIdAndCheck(trim($cgi->param('assignee'))); + validate_test_id($build, 'build'); my @buglist; foreach my $bug (split(/[\s,]+/, $cgi->param('bugs'))){ ValidateBugID($bug); @@ -71,10 +74,6 @@ if ($action eq 'Commit'){ detaint_natural($status); trick_taint($notes); - foreach my $bug (@buglist){ - $caserun->attach_bug($bug); - } - my %newfields = ( 'assignee' => $assignee, 'testedby' => Bugzilla->user->id, @@ -83,10 +82,43 @@ if ($action eq 'Commit'){ 'notes' => $notes, ); + my $is = $caserun->check_exists($caserun->run_id, $caserun->case_id, $build); + my $existing = Bugzilla::Testopia::TestCaseRun->new($is) if $is; + if ($build != $caserun->build->id + && $is + && $existing->status ne 'IDLE' + && !$confirm){ + my $statuslist = $caserun->get_status_list; + my $status; + foreach my $stat (@$statuslist){ + if ($stat->{'id'} == $cgi->param('status')){ + $status = $stat->{'name'}; + last; + } + } +# $notes =~ s/"/\\"/g; + $vars->{'existing'} = $existing; + $vars->{'assignee'} = $cgi->param('assignee'); + $vars->{'status_name'} = $status; + $vars->{'status'} = $cgi->param('status'); + $vars->{'notes'} = $notes; + if ($caserun->is_closed_status($cgi->param('status'))){ + $vars->{'close_date'} = get_time_stamp(); + $vars->{'testedby'} = Bugzilla->user->login; + } + $vars->{'bugs'} = $cgi->param('bugs'); + $template->process("testopia/caserun/confirm.html.tmpl", $vars) || + ThrowTemplateError($template->error()); + + exit; + } + + foreach my $bug (@buglist){ + $caserun->attach_bug($bug); + } + $caserun = Bugzilla::Testopia::TestCaseRun->new($caserun->update(\%newfields)); - $vars->{'caserun'} = $caserun; - $template->process("testopia/caserun/show.html.tmpl", $vars) || - ThrowTemplateError($template->error()); + display($caserun); } #################### ### Ajax Actions ### @@ -94,29 +126,33 @@ if ($action eq 'Commit'){ elsif ($action eq 'update_build'){ Bugzilla->login(LOGIN_REQUIRED); my $caserun = Bugzilla::Testopia::TestCaseRun->new($caserun_id); - print "Error - You don't have permission" if !$caserun->canedit; + if (!$caserun->canedit) { + print "Error - You don't have permission"; + exit; + } my $build_id = $cgi->param('build_id'); detaint_natural($build_id); - - my $cid; - if ($caserun->status ne 'IDLE'){ - my ($is) = $dbh->selectrow_array( - "SELECT case_run_id - FROM test_case_runs - WHERE run_id = ? AND build_id = ?", - undef, ($caserun->run->id, $build_id)); - if ($is){ - $caserun = Bugzilla::Testopia::TestCaseRun->new($is); - } - else { - $cid = $caserun->clone({'build_id' => $build_id }); - $caserun = Bugzilla::Testopia::TestCaseRun->new($cid); - } + validate_test_id($build_id, 'build'); + my $is = $caserun->check_exists($caserun->run_id, $caserun->case_id, $build_id); + if ($is){ + $caserun = Bugzilla::Testopia::TestCaseRun->new($is); + } + elsif ($caserun->status ne 'IDLE'){ + my $cid = $caserun->clone({'build_id' => $build_id }); + $caserun = Bugzilla::Testopia::TestCaseRun->new($cid); } else { $caserun->set_build($build_id ); } - print $caserun->status ."|". $caserun->close_date ."|". $caserun->testedby->login; + my $body_data; + my $head_data; + $vars->{'caserun'} = $caserun; + $vars->{'index'} = $cgi->param('index'); + $template->process("testopia/caserun/short-form-header.html.tmpl", $vars, \$head_data) || + ThrowTemplateError($template->error()); + $template->process("testopia/caserun/short-form.html.tmpl", $vars, \$body_data) || + ThrowTemplateError($template->error()); + print $head_data . "|~+" . $body_data; } elsif ($action eq 'update_status'){ Bugzilla->login(LOGIN_REQUIRED); @@ -128,8 +164,10 @@ elsif ($action eq 'update_status'){ my $status_id = $cgi->param('status_id'); detaint_natural($status_id); $caserun->set_status($status_id); - $caserun = Bugzilla::Testopia::TestCaseRun->new($caserun_id); print $caserun->status ."|". $caserun->close_date ."|". $caserun->testedby->login; + if ($caserun->updated_deps) { + print "|". join(',', @{$caserun->updated_deps}); + } } elsif ($action eq 'update_note'){ Bugzilla->login(LOGIN_REQUIRED); @@ -171,11 +209,34 @@ elsif ($action eq 'attach_bug'){ print &::GetBugLink($bug->bug_id, $bug->bug_id) ." "; } } -else { +elsif ($action eq 'detach_bug'){ + Bugzilla->login(LOGIN_REQUIRED); my $caserun = Bugzilla::Testopia::TestCaseRun->new($caserun_id); + if (!$caserun->canedit){ + print "Error - You don't have permission"; + exit; + } + my @buglist; + foreach my $bug (split(/[\s,]+/, $cgi->param('bug_id'))){ + ValidateBugID($bug); + push @buglist, $bug; + } + foreach my $bug (@buglist){ + $caserun->detach_bug($bug); + } + display(Bugzilla::Testopia::TestCaseRun->new($caserun_id)); +} +else { + display(Bugzilla::Testopia::TestCaseRun->new($caserun_id)); +} + +sub display { + my $caserun = shift; ThrowUserError('insufficient-view-perms') if !$caserun->canview; + my $table = Bugzilla::Testopia::Table->new('case_run'); + $vars->{'table'} = $table; $vars->{'caserun'} = $caserun; $vars->{'action'} = 'tr_show_caserun.cgi'; $template->process("testopia/caserun/show.html.tmpl", $vars) || ThrowTemplateError($template->error()); -} +} \ No newline at end of file diff --git a/mozilla/webtools/testopia/tr_show_plan.cgi b/mozilla/webtools/testopia/tr_show_plan.cgi index bbfde25a830..dc278585ad3 100755 --- a/mozilla/webtools/testopia/tr_show_plan.cgi +++ b/mozilla/webtools/testopia/tr_show_plan.cgi @@ -213,7 +213,9 @@ elsif ($action eq 'import'){ elsif ($action eq 'getversions'){ my $plan = Bugzilla::Testopia::TestPlan->new($plan_id); ThrowUserError("testopia-permission-denied", {'object' => 'plan'}) unless $plan->canview; - my $versions = $plan->get_product_versions($cgi->param("prod_id")); + my $prod_id = $cgi->param("product_id"); + detaint_natural($prod_id); + my $versions = $plan->get_product_versions($prod_id); my $ret; if ($cgi->param("product_id") == -1){ # For update multiple from tr_list_plans @@ -228,14 +230,14 @@ elsif ($action eq 'getversions'){ print $ret; } elsif ($action eq 'caselist'){ - my $plan = Bugzilla::Testopia::TestPlan->new($plan_id); - ThrowUserError("testopia-permission-denied", {'object' => 'plan'}) unless $plan->canview; + my $plan = Bugzilla::Testopia::TestPlan->new($plan_id); + ThrowUserError("testopia-permission-denied", {'object' => 'plan'}) unless $plan->canview; my $table = Bugzilla::Testopia::Table->new('case', 'tr_list_cases.cgi', $cgi, $plan->test_cases); - $table->{'ajax'} = 1; - $vars->{'table'} = $table; + $table->{'ajax'} = 1; + $vars->{'table'} = $table; $template->process("testopia/case/table.html.tmpl", $vars) || ThrowTemplateError($template->error()); - + } #################### ### Just show it ### @@ -253,7 +255,7 @@ sub do_update { my $newdoc = $cgi->param("plandoc"); my $plan_name = trim($cgi->param('plan_name')) || ''; - my $product = $cgi->param('prod_id') || ''; + my $product = $cgi->param('product_id') || ''; my $prodver = $cgi->param('prod_version') || ''; my $type = $cgi->param('type'); @@ -302,24 +304,28 @@ sub display { my $casequery = new Bugzilla::CGI($cgi); my $runquery = new Bugzilla::CGI($cgi); - if ($cgi->param('order') && $cgi->param('current_tab') eq 'case'){ + if (($cgi->param('order') || $cgi->param('page') || $cgi->param('viewall')) && $cgi->param('current_tab') eq 'case'){ my $search = Bugzilla::Testopia::Search->new($cgi); my $table = Bugzilla::Testopia::Table->new('case', 'tr_show_plan.cgi', $cgi, undef, $search->query); $vars->{'case_table'} = $table; $runquery->delete('order'); + $runquery->delete('page'); + $runquery->delete('viewall'); $runquery->param('current_tab', 'run'); $search = Bugzilla::Testopia::Search->new($runquery); $table = Bugzilla::Testopia::Table->new('run', 'tr_show_plan.cgi', $runquery, undef, $search->query); $vars->{'run_table'} = $table; } - elsif ($cgi->param('order') && $cgi->param('current_tab') eq 'run'){ + elsif (($cgi->param('order') || $cgi->param('page') || $cgi->param('viewall')) && $cgi->param('current_tab') eq 'run'){ my $search = Bugzilla::Testopia::Search->new($cgi); my $table = Bugzilla::Testopia::Table->new('run', 'tr_show_plan.cgi', $cgi, undef, $search->query); $vars->{'run_table'} = $table; $casequery->delete('order'); + $casequery->delete('page'); + $casequery->delete('viewall'); $casequery->param('current_tab', 'case'); $search = Bugzilla::Testopia::Search->new($casequery); $table = Bugzilla::Testopia::Table->new('case', 'tr_show_plan.cgi', $casequery, undef, $search->query); diff --git a/mozilla/webtools/testopia/tr_show_run.cgi b/mozilla/webtools/testopia/tr_show_run.cgi index 85b4a0b1a49..e4eb9d5a0b5 100755 --- a/mozilla/webtools/testopia/tr_show_run.cgi +++ b/mozilla/webtools/testopia/tr_show_run.cgi @@ -243,7 +243,6 @@ sub do_update { sub display { my $run = shift; - $cgi->delete('build'); $cgi->param('current_tab', 'case_run'); my $search = Bugzilla::Testopia::Search->new($cgi); my $table = Bugzilla::Testopia::Table->new('case_run', 'tr_show_run.cgi', $cgi, undef, $search->query); diff --git a/mozilla/webtools/testopia/tr_tags.cgi b/mozilla/webtools/testopia/tr_tags.cgi index 61ad430e625..5e3af524506 100755 --- a/mozilla/webtools/testopia/tr_tags.cgi +++ b/mozilla/webtools/testopia/tr_tags.cgi @@ -91,7 +91,7 @@ elsif ($action eq 'addtag'){ } else{ if ($cgi->param('method')){ - $vars->{'tr_message'} = "Added tag" . $tag->name; + $vars->{'tr_message'} = "Added tag " . $tag->name; display(); exit; }