Support regular expressions with nondeterministic collations
This patch allows using regular expression functions and operators with
nondeterministic collations.
This complements the patches "Support LIKE with nondeterministic
collations" and "Support POSITION with nondeterministic collations" but
is independent. These three together fix most of the places where
nondeterministic collations are currently not allowed.
I had to decide here what the semantics should be. The SQL standard
doesn't say anything, it just refers to XQuery. XQuery has no knowledge
of SQL collations. I also studied the relevant Unicode standard (UTS
#18) and it makes no mention of collations. So my conclusion is that
regular expressions should pay no attention to collations. That makes
it easy.
To clarify a bit more: They don't pay attention to the collate part of
collations. So if you have an accent-insensitive collation, that
doesn't make the regular expression match accent-insensitive. But it
does and continues to pay attention to the ctype part of collations.
The latter is a PostgreSQL extension.
Note that UTS #18 has "retracted" support for tailoring in regular
expressions, which supports the idea that regular expressions should be
independent of things like language settings.
I think this is sensible. Regular expressions are inherently based on
sequences of characters, and trying to marry that with nondeterministic
collations just doesn't fit.
But: We also convert SIMILAR TO patterns to standard regular
expressions, and SIMILAR TO is covered in the SQL standard. And the
definition there does take the collation into account. But the
definition there is pretty much impossible to implement for
nondeterministic collations: It basically says, the predicate is true
if the string to be matched is equal, using the applicable collation, to
any of the strings in the set of strings described by the regular
expression. Which is a nice computer-sciency way to define it, but it
doesn't work in practice.
So I need a way to remember whether a regular expression was originally
a SIMILAR TO pattern and then error out if the collation is
nondeterministic. I figured out a way to do that: Regular expressions
support prefixes like "***X", where X is some character. I added a new
prefix "***S". This is not externally visible, it just gets used
internally, and it doesn't conflict with real regular expressions.
In summary, this patch doesn't change any functionality that currently
works. It just removes one error message and lets regular expressions
just run, independent of whether the collation is nondeterministic.
Attachments:
v1-0001-Support-regular-expressions-with-nondeterministic.patchtext/plain; charset=UTF-8; name=v1-0001-Support-regular-expressions-with-nondeterministic.patchDownload
From 2c1f47105cdc3a26bb4793cd52516ac30b8f4ec8 Mon Sep 17 00:00:00 2001
From: Peter Eisentraut <peter@eisentraut.org>
Date: Tue, 22 Oct 2024 09:39:23 +0200
Subject: [PATCH v1] Support regular expressions with nondeterministic
collations
For normal regular expressions, the collation doesn't matter, so we
can just allow it.
But for SIMILAR TO, we cannot implement what the SQL standard
requires, so we continue to not allow nondeterministic collations with
SIMILAR TO. But since SIMILAR TO gets converted to a normal regular
expression, we need to record somehow that the regular expression was
originally a SIMILAR TO. To do that, we prepend a prefix "***S" which
the RE parsing later recognizes and records. Based on that, we can
issue the required error message.
---
doc/src/sgml/charset.sgml | 2 +-
doc/src/sgml/func.sgml | 21 +++++++++++++------
src/backend/regex/regc_lex.c | 4 ++++
src/backend/regex/regc_pg_locale.c | 14 ++++++++-----
src/backend/regex/regcomp.c | 1 +
src/backend/utils/adt/regexp.c | 11 +++++++++-
src/include/regex/regex.h | 1 +
src/include/regex/regguts.h | 1 +
.../regress/expected/collate.icu.utf8.out | 16 ++++++++++----
9 files changed, 54 insertions(+), 17 deletions(-)
diff --git a/doc/src/sgml/charset.sgml b/doc/src/sgml/charset.sgml
index 1ef5322b912..6c633678790 100644
--- a/doc/src/sgml/charset.sgml
+++ b/doc/src/sgml/charset.sgml
@@ -1197,7 +1197,7 @@ <title>Nondeterministic Collations</title>
to a performance penalty. Note, in particular, that B-tree cannot use
deduplication with indexes that use a nondeterministic collation. Also,
certain operations are not possible with nondeterministic collations,
- such as pattern matching operations. Therefore, they should be used
+ such as some pattern matching operations. Therefore, they should be used
only in cases where they are specifically wanted.
</para>
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index ad663c94d77..803b6079f3a 100644
--- a/doc/src/sgml/func.sgml
+++ b/doc/src/sgml/func.sgml
@@ -5413,12 +5413,6 @@ <title>Pattern Matching</title>
</para>
</caution>
- <para>
- The pattern matching operators of all three kinds do not support
- nondeterministic collations. If required, apply a different collation to
- the expression to work around this limitation.
- </para>
-
<sect2 id="functions-like">
<title><function>LIKE</function></title>
@@ -5688,6 +5682,11 @@ <title><function>SIMILAR TO</function> Regular Expressions</title>
</programlisting>
</para>
+ <para>
+ <function>SIMILAR TO</function> does not support nondeterministic
+ collations.
+ </para>
+
<para>
The <function>substring</function> function with three parameters
provides extraction of a substring that matches an SQL
@@ -5900,6 +5899,16 @@ <title>Regular Expression Match Operators</title>
</programlisting>
</para>
+ <para>
+ Regular expression matching uses the applicable collation for character
+ classification, but not for string comparison. A single character in a
+ pattern always matches only exactly that character, independent of the
+ collation (unless a flag such as for case-insensitive matching is
+ specified; see below). It is different in this respect from
+ <function>LIKE</function>, which uses the collation to compare literal
+ substrings in the pattern. <!-- XXX different patch -->
+ </para>
+
<para>
The <acronym>POSIX</acronym> pattern language is described in much
greater detail below.
diff --git a/src/backend/regex/regc_lex.c b/src/backend/regex/regc_lex.c
index 9087ef95af3..d373bbd1aaf 100644
--- a/src/backend/regex/regc_lex.c
+++ b/src/backend/regex/regc_lex.c
@@ -122,6 +122,10 @@ prefixes(struct vars *v)
v->cflags |= REG_ADVANCED;
v->now += 4;
break;
+ case CHR('S'): /* "***S" was a converted SIMILAR TO pattern */
+ NOTE(REG_UNONPOSIX | PG_REG_SIMILAR_TO);
+ v->now += 4;
+ break;
default: /* otherwise *** is just an error */
ERR(REG_BADRPT);
return;
diff --git a/src/backend/regex/regc_pg_locale.c b/src/backend/regex/regc_pg_locale.c
index b75784b6ce5..933fb4f68e1 100644
--- a/src/backend/regex/regc_pg_locale.c
+++ b/src/backend/regex/regc_pg_locale.c
@@ -260,11 +260,6 @@ pg_set_regex_collation(Oid collation)
{
locale = pg_newlocale_from_collation(collation);
- if (!locale->deterministic)
- ereport(ERROR,
- (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
- errmsg("nondeterministic collations are not supported for regular expressions")));
-
if (locale->ctype_is_c)
{
/*
@@ -301,6 +296,15 @@ pg_set_regex_collation(Oid collation)
pg_regex_collation = collation;
}
+void
+pg_check_regex_collation(bool is_similar_to)
+{
+ if (is_similar_to && !pg_regex_locale->deterministic)
+ ereport(ERROR,
+ (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
+ errmsg("nondeterministic collations are not supported for SIMILAR TO")));
+}
+
static int
pg_wc_isdigit(pg_wchar c)
{
diff --git a/src/backend/regex/regcomp.c b/src/backend/regex/regcomp.c
index 8a6cfb2973d..03b7814605b 100644
--- a/src/backend/regex/regcomp.c
+++ b/src/backend/regex/regcomp.c
@@ -450,6 +450,7 @@ pg_regcomp(regex_t *re,
/* parsing */
lexstart(v); /* also handles prefixes */
+ pg_check_regex_collation(v->re->re_info & PG_REG_SIMILAR_TO);
if ((v->cflags & REG_NLSTOP) || (v->cflags & REG_NLANCH))
{
/* assign newline a unique color */
diff --git a/src/backend/utils/adt/regexp.c b/src/backend/utils/adt/regexp.c
index 0e2519bfd57..9ab6a078ebf 100644
--- a/src/backend/utils/adt/regexp.c
+++ b/src/backend/utils/adt/regexp.c
@@ -841,9 +841,18 @@ similar_escape_internal(text *pat_text, text *esc_text)
* as 3 output bytes per input byte; since the input is at most 1GB this
* can't overflow size_t.
*/
- result = (text *) palloc(VARHDRSZ + 23 + 3 * (size_t) plen);
+ result = (text *) palloc(VARHDRSZ + 27 + 3 * (size_t) plen);
r = VARDATA(result);
+ /*
+ * Prefix with "***S" so that the core regular expression code can tell
+ * that this was a SIMILAR TO pattern.
+ */
+ *r++ = '*';
+ *r++ = '*';
+ *r++ = '*';
+ *r++ = 'S';
+
*r++ = '^';
*r++ = '(';
*r++ = '?';
diff --git a/src/include/regex/regex.h b/src/include/regex/regex.h
index f34ee3a85bd..341547a7fef 100644
--- a/src/include/regex/regex.h
+++ b/src/include/regex/regex.h
@@ -151,6 +151,7 @@ typedef struct
#define REG_UEMPTYMATCH 004000 /* can match a zero-length string */
#define REG_UIMPOSSIBLE 010000 /* provably cannot match anything */
#define REG_USHORTEST 020000 /* has non-greedy quantifier */
+#define PG_REG_SIMILAR_TO 100000 /* PostgreSQL: RE was converted from SIMILAR TO */
int re_csize; /* sizeof(character) */
char *re_endp; /* backward compatibility kludge */
Oid re_collation; /* Collation that defines LC_CTYPE behavior */
diff --git a/src/include/regex/regguts.h b/src/include/regex/regguts.h
index 3ca3647e118..ca903407da2 100644
--- a/src/include/regex/regguts.h
+++ b/src/include/regex/regguts.h
@@ -545,4 +545,5 @@ struct guts
/* prototypes for functions that are exported from regcomp.c to regexec.c */
extern void pg_set_regex_collation(Oid collation);
+extern void pg_check_regex_collation(bool is_similar_to);
extern color pg_reg_getcolor(struct colormap *cm, chr c);
diff --git a/src/test/regress/expected/collate.icu.utf8.out b/src/test/regress/expected/collate.icu.utf8.out
index faa376e060c..601577cdec3 100644
--- a/src/test/regress/expected/collate.icu.utf8.out
+++ b/src/test/regress/expected/collate.icu.utf8.out
@@ -1518,9 +1518,13 @@ ERROR: nondeterministic collations are not supported for LIKE
SELECT x FROM test3ci WHERE x ILIKE 'a%';
ERROR: nondeterministic collations are not supported for ILIKE
SELECT x FROM test3ci WHERE x SIMILAR TO 'a%';
-ERROR: nondeterministic collations are not supported for regular expressions
+ERROR: nondeterministic collations are not supported for SIMILAR TO
SELECT x FROM test3ci WHERE x ~ 'a';
-ERROR: nondeterministic collations are not supported for regular expressions
+ x
+-----
+ abc
+(1 row)
+
SELECT x FROM test1ci UNION SELECT x FROM test2ci ORDER BY x;
x
-----
@@ -1636,9 +1640,13 @@ ERROR: nondeterministic collations are not supported for LIKE
SELECT x FROM test3bpci WHERE x ILIKE 'a%';
ERROR: nondeterministic collations are not supported for ILIKE
SELECT x FROM test3bpci WHERE x SIMILAR TO 'a%';
-ERROR: nondeterministic collations are not supported for regular expressions
+ERROR: nondeterministic collations are not supported for SIMILAR TO
SELECT x FROM test3bpci WHERE x ~ 'a';
-ERROR: nondeterministic collations are not supported for regular expressions
+ x
+-----
+ abc
+(1 row)
+
SELECT x FROM test1bpci UNION SELECT x FROM test2bpci ORDER BY x;
x
-----
base-commit: d2b4b4c2259e21ceaf05e393769b69728bfbee99
--
2.47.0
Peter Eisentraut <peter@eisentraut.org> writes:
This patch allows using regular expression functions and operators with
nondeterministic collations.
...
In summary, this patch doesn't change any functionality that currently
works. It just removes one error message and lets regular expressions
just run, independent of whether the collation is nondeterministic.
I kind of wonder if we really want to do this. It adds no
functionality, and it forecloses the possibility of changing
the definition later. I understand and agree with your conclusion
that it's pretty much impossible to do what the SQL standard suggests
should happen --- but maybe we're both missing something that would
make it feasible. (Have you asked your committee colleagues if
anyone's actually implemented what they wrote about SIMILAR TO?
If they've written something unimplementable, it seems like there
is work for them to do in any case.)
On the whole I'm content with our status quo here.
If we do push forward with this, I doubt that it's okay to throw
the error for SIMILAR TO from where you have it --- it will leak
the partially-built compiled regex, and that will be a
session-lifespan leak. The way forward is illustrated by code
just above: it'd have to look more like
if (!collation-is-allowed)
return freev(v, REG_ECOLLATION);
where you'd need to invent a new regex error code REG_ECOLLATION
and plug that into the appropriate places.
regards, tom lane
On 22.10.24 16:40, Tom Lane wrote:
Peter Eisentraut <peter@eisentraut.org> writes:
This patch allows using regular expression functions and operators with
nondeterministic collations.
...
In summary, this patch doesn't change any functionality that currently
works. It just removes one error message and lets regular expressions
just run, independent of whether the collation is nondeterministic.I kind of wonder if we really want to do this. It adds no
functionality, and it forecloses the possibility of changing
the definition later. I understand and agree with your conclusion
that it's pretty much impossible to do what the SQL standard suggests
should happen --- but maybe we're both missing something that would
make it feasible. (Have you asked your committee colleagues if
anyone's actually implemented what they wrote about SIMILAR TO?
If they've written something unimplementable, it seems like there
is work for them to do in any case.)
Good idea; I'll go ask there too.
Btw., one end goal here is to be able to run with a nondeterministic
collation as the global locale. So for example you could make the whole
system insensitive to Unicode normalization forms. But if that
effectively globally disables regular expressions, then people will be
sad, and also most of psql breaks, and so on. So some positive solution
here would be useful.
Peter Eisentraut <peter@eisentraut.org> writes:
On 22.10.24 16:40, Tom Lane wrote:
Peter Eisentraut <peter@eisentraut.org> writes:
In summary, this patch doesn't change any functionality that currently
works. It just removes one error message and lets regular expressions
just run, independent of whether the collation is nondeterministic.
I kind of wonder if we really want to do this. It adds no
functionality, and it forecloses the possibility of changing
the definition later.
Btw., one end goal here is to be able to run with a nondeterministic
collation as the global locale. So for example you could make the whole
system insensitive to Unicode normalization forms. But if that
effectively globally disables regular expressions, then people will be
sad, and also most of psql breaks, and so on. So some positive solution
here would be useful.
Sure, and I'll support this patch once we're sure that no better
functionality is possible. I just want to look into whether the
SQL committee knows something we don't.
regards, tom lane
On Tue, 2024-10-22 at 10:16 +0200, Peter Eisentraut wrote:
I also studied the relevant Unicode standard (UTS
#18) and it makes no mention of collations. So my conclusion is that
regular expressions should pay no attention to collations. That
makes
it easy.
Does normalization play a role here?
Regards,
Jeff Davis
On Tue, 2024-10-22 at 10:40 -0400, Tom Lane wrote:
I understand and agree with your conclusion
that it's pretty much impossible to do what the SQL standard suggests
should happen --- but maybe we're both missing something that would
make it feasible.
It sounds feasible for case-insensitive collations, right? We just
casefold the pattern and the string, and then check for a match.
That's difficult given our current assumption that non-deterministic
collaitons can mean almost anything. But it's not necessarily a problem
with the standard, and perhaps some other systems do something like
that.
Regards,
Jeff Davis
Jeff Davis <pgsql@j-davis.com> writes:
On Tue, 2024-10-22 at 10:40 -0400, Tom Lane wrote:
I understand and agree with your conclusion
that it's pretty much impossible to do what the SQL standard suggests
should happen --- but maybe we're both missing something that would
make it feasible.
It sounds feasible for case-insensitive collations, right? We just
casefold the pattern and the string, and then check for a match.
Yeah, there is some set of collations for which that would work.
But I think it requires nontrivial assumptions both about how
comparison works in the collation, and whether the available
case-folding logic matches that. An important point here is
that the results depend on which direction you choose to smash
case, which is at best a bit uncomfortable-making. For instance,
I believe in German "ß" upcases to "SS" and would therefore match
"ss" if you choose to fold to upper, but not so much if you choose
to fold to lower. (Possibly Peter will correct me on that, but the
point is there are some weird rules out there.)
The existing logic in the regex engine for case-insensitive matching
is to convert every letter to a bracket expression containing all
its case variants. For example, "a" becomes "[aA]" and "[xY1]"
becomes "[xXyY1]". This fails on "ß", so a better way would be
nice...
regards, tom lane
On Mon, 2024-12-16 at 17:16 -0500, Tom Lane wrote:
Yeah, there is some set of collations for which that would work.
But I think it requires nontrivial assumptions both about how
comparison works in the collation, and whether the available
case-folding logic matches that. An important point here is
that the results depend on which direction you choose to smash
case, which is at best a bit uncomfortable-making. For instance,
I believe in German "ß" upcases to "SS" and would therefore match
"ss" if you choose to fold to upper, but not so much if you choose
to fold to lower. (Possibly Peter will correct me on that, but the
point is there are some weird rules out there.)
Unicode specifies case folding separately from case conversion
(lower/title/upper) to deal with these kinds of issues: "ß", "Ss",
"SS", and "ss" all fold to "ss".
I have a couple patches that create that infrastructure:
/messages/by-id/a1886ddfcd8f60cb3e905c93009b646b4cfb74c5.camel@j-davis.com
/messages/by-id/ddfd67928818f138f51635712529bc5e1d25e4e7.camel@j-davis.com
after that's in place, we can even discuss adding a builtin case-
insensitive collation that does memcmp() on the case-folded strings.
The existing logic in the regex engine for case-insensitive matching
is to convert every letter to a bracket expression containing all
its case variants. For example, "a" becomes "[aA]" and "[xY1]"
becomes "[xXyY1]". This fails on "ß", so a better way would be
nice...
We have a couple options:
* create more complex regexes like "(ß|[sS][sS])"
* case fold the pattern first, and then lazily case fold the string as
we match against it
The former sounds faster but the latter sounds simpler.
Regards,
Jeff Davis
Jeff Davis <pgsql@j-davis.com> writes:
On Mon, 2024-12-16 at 17:16 -0500, Tom Lane wrote:
The existing logic in the regex engine for case-insensitive matching
is to convert every letter to a bracket expression containing all
its case variants. For example, "a" becomes "[aA]" and "[xY1]"
becomes "[xXyY1]". This fails on "ß", so a better way would be
nice...
We have a couple options:
* create more complex regexes like "(ß|[sS][sS])"
* case fold the pattern first, and then lazily case fold the string as
we match against it
The former sounds faster but the latter sounds simpler.
Yeah, the latter sounds really slow. It would not actually be too
hard I think to build the right regex, if we had the information
available as to what all the case-variants are. The problem at the
moment is that the existing code assumes that pg_wc_tolower and
pg_wc_toupper together give us all the case variants, and that
API can't cope with multi-glyph expansions.
regards, tom lane
On Wed, 2024-12-18 at 14:55 -0500, Tom Lane wrote:
It would not actually be too
hard I think to build the right regex, if we had the information
available as to what all the case-variants are. The problem at the
moment is that the existing code assumes that pg_wc_tolower and
pg_wc_toupper together give us all the case variants, and that
API can't cope with multi-glyph expansions.
That's doable. I can do that after refactoring the ctype logic to use a
method table.
I'll have to think about how the API should look though. The maximum
amount of expansion that can occur during case folding is from one
codepoint to 3, and the maximum number of case variants is also ~3, so
it could fill in a caller-supplied 3x3 array of pg_wchar. Somewhat
awkward in C, so I welcome better ideas.
Note: if the string is not normalized consistently with the
pattern, pattern matching in general won't work very well. This has
always been true, but as we make pattern matching smarter we should be
more clear about that point.
Regards,
Jeff Davis
On 29.10.24 09:47, Peter Eisentraut wrote:
I kind of wonder if we really want to do this. It adds no
functionality, and it forecloses the possibility of changing
the definition later. I understand and agree with your conclusion
that it's pretty much impossible to do what the SQL standard suggests
should happen --- but maybe we're both missing something that would
make it feasible. (Have you asked your committee colleagues if
anyone's actually implemented what they wrote about SIMILAR TO?
If they've written something unimplementable, it seems like there
is work for them to do in any case.)Good idea; I'll go ask there too.
So the result from that was that no one there knew what to do either.
There was general interest in the various arguments and options, but
there was no consensus about what the right solution should be.
For everyone's amusement, attached is the discussion paper I submitted,
which contains some of my arguments from this thread as well as other
information and examples.
I think a way forward would be to define more special purpose collations
that are just "normal but case insensitive" or "normal but accent
insensitive", like was discussed later in this thread, and what other
implementations apparently also do (see BINARY_CI in the paper).
For now, I'm withdrawing this patch, but I (and I suspect others) will
keep thinking about this.
Attachments:
w28015-Pattern matching versus collations.pdfapplication/pdf; name="w28015-Pattern matching versus collations.pdf"Download
%PDF-1.7
%��������
2 0 obj
<</Length 3 0 R/Filter/FlateDecode>>
stream
x��Y���F}�W�����[-�1H��&da�5�!����.���8$�����]��gff�KW�����B�����\�|:�zM�����D%*U�'��):���<��r���m��i��a�v�p��������������������|����x�lv������s������y��IM^$���� `r���V�B����Ve��\���oH+U+��|������{�� T ������9n�7�T�-7�ii
�*w�mI�D����������~[�O�n�Mc��b��X��A~C<����37@�P�f�6��{�n�@J���C�g���y��T��-��������q@�����f�W���r_AW_�4_���&����� v���l�����Tg�#}��N%���[5$+ U�TA�Hp�o���e���M%��;��D�q�3�b'0�u�
���E\��),\���"�s��f\XP�,9"���x8��sz�FGOKz�^s�����
�RgF������y���������-�9��uW@�2,R���%N�6��3d?6��B�_�d?[��u�����{���S���!I}4��T�����T����!����4��
��V�h� j�>-���H`��k���<��?���D/bUR���3�Sn{!�Z��c�=��@#��i-,R��#�y��
�#��}[�bm�����3�fh=�5p�V��B��� �y[�"����9�(�lX3X�l0C ��xX���n��*`�%!�[<�����`K
�����{6\�Td^CI�q��E��c�LN��^vZTU�+��l/����Tf�����wj�~��p����[X.�����u��>U�>08�K@��1��L�BH���e� F��d�L�N������B���HN.o��=�)�[���CoZ�^�x�h���1��<���3~���A^�%�c�J� �7K���H��c�=w��J�kN�6��4��������'
�P�q�*tmg��R�,5G�����LV�~�C#�m{]8�;����y��v�;��+��"���e��P�]6v�8C�F��SK���[&�"�_�sr)���c���N�$P�P�w'��G����.�O��?N����\���]o���C"[�������t
1��������Z����+`Uj8bZOJ+�=�����(�)Z�PdL��d�{5{S��}���^V�Gj�]��n��*��|�����c���G������Dk��e��}:;�� ���1>� u�E���<dM������h��hz��5:�>�\�#���+4��ih�lMP5H�L���n�IC��d���|����=�p�� ����61�8�a�����fI�T��Q]}WE����jmO����H�1�U jFSk��{/;��H�!-� �=�?��|�E�%��O�y���n����2t-r c�:�Gc������^c����Oq�8{S�,O��<�O����F�?5����URR����=Ig4��Q.R9����+�QN�E���=3���r,���6IYjl�)��9�@n#��@7:��`� QS��$L���<�T��������P��$��Z�G�!��;y��������B���, �^��a�2
c^_��tI�8��� ���$`&e`�$4�?�eR�8�� �A��=�f~\��]���$�#�L|�P���EO�������J����}�����h����{7����#J/d���[rJ#�������(.�P"<�/����q�������T`/:M"H��lp�*cK���6A#A���j����dd?�
endstream
endobj
3 0 obj
1804
endobj
38 0 obj
<</Length 39 0 R/Filter/FlateDecode>>
stream
x��Y��#�}�W����KU��&�7�a�C��c��i��������Y{�dD�T�\*#N�82%�;=��o�?=��Vt����
S��`]���X��vP�����O__N#�������������o��<�}~�rz�������o��>>��.�����z���=�|(���\���x�X<\� ,?}80h�q��M0��MC�-}Bz�Lo��g3������\� �����N�����M�)�~����`���b�3-#��K����~�
�//����;�r������G�T��?��:`Ewz�{=�����
ZD���{����������4~�+}K���fz����lQ�{�#yMZYF��-]w�HZi�U2���3?��]�q�2���2��e��`-��\_��������?����?��U��{�&������0�/Kh�VK(�;l|\�|p*�������MVE�>Y8�q��m�*�k�^�,`�������8O/�V���u�u��a�1�3����?��^0%�Gi��q��&,_y��~"g����q����1[����
4~|�b����nd������Md����j�� �( ��M���:mGg2 �
Z��j���
��9����<��+0�gG3LB<=�������W����������\> B�������5��;>fC���:~K�������8�k��x��CX����C��L
���9.)Re<�Y:�'�<�_vmc,��Q��6����)��u*S6;����4�=\=3e��5��&��1e�$1�&���kddt9QL�(Df+%�\Z��bj�)��������:I���fN�G��$�� }����|����qk�|@��`�����z�)csP���������p
����8��m.c�@��8�+��5BT'0a(����%��=em�c�}�i�5�:s����t���c��M3*,��E�Y��>F^���~�]W�B����kC
8gU��Ig1��AF� �M�������B�r�B�M�(y�.�m��zqU5g��ZU-*�}���MVA+$�����<-3p��K�g�^�B"��2�o��Ut���^��:B�kw(��4q���C��'tb��f�m��"��*�>�@�D������x���5�9�;aVz��,�v
�v������2����;-yUD��;|��J�~ w$?L�i��'���~��opz��@����,=/��*�������Y���v +#�'��e&���
��v�H�[�Qb�$p���D�����s]�DB�g'5n�@5���c?)�4�W��uy6��6w����yE`]S6�������{�:U&\�k<��=��X�"zD���<�W�YZ�{e-�����O�1P^P��}�������z2���(�XDk
rg��B�/�f�u�<����)���]�n�no�%�5,����9�t���7U$Wk.6��!��&�b>�c�K������#T�F�)%Tb�������
�p�8�V���PE���_�\M�4O���bBE���k�y�$�n{&���jJ�������B���{wd|�g|���.�*4��uRY$��RG�U��5����V�:��UZ�P�_�t����������k���p�q�������O�k�7]�&�}c��>Q�p�t*H�l
����]���Y/�?��K
�����f��N�m��e�`W�8P?)Pio*�I{_�;��v&��X�XU����9�2������,�PK����N�
�O��Ma�Kk�QKc������we�|M�op�+�c���G%8�]#�M�)�������j��s�FJ�|:�W<��pW;�J�N�kg�$��`m���/�L��Esm�O5�v��e�m�lbw���,�m^����R�r^F��C�"R<�9�6V���k��;7;���=����� ����L���}]&�����|���<��j������F|7�Q��\��/i���%j���hq0[9uFm^�P�sPo����Y�Q�����~�Z���L�!�v}���Rws;�u�1��U`�'{������{��tr��y��`j��?��'`�������[�0H�z^�0vQ��������eVnPg���%���&X�(�g*0F�[2"J�KL7}�Q����0@p�m�N;2Jo��0w��|}yy{���`���T9N�\��m �p��sS���(P3����n;?�����
endstream
endobj
39 0 obj
2205
endobj
55 0 obj
<</Length 56 0 R/Filter/FlateDecode>>
stream
x��V���V��+t����}I�!@�-�E4��.�.f:N0A1�\���R�-�RZ�u/�sxH^�9�wuW��>��q��w����2�I�,�!���s^D�^��_�d��-V����w�/��~����|xzy^�}���������������`���U�[��YJ>�E�����3�l���51 9�������O�{C-���5mh��������j����O��n�~�i�<^;m��e�Du��f��������;� �������?n2��%xNf� s�FD�%�q�}+�\�[��U��3 ;�u����V�/����{[���%q���Fi"�6�K�=�4 �#�7TV�\s��Q���5����,����N�#�V�"��/3�1�����QR+ ���@����>:�@�� �P���Jd/�I
��j��:?���S����r��Z�I����s$�j�y�����d^Le^�p����K�K����R�� bUA����#Q�Q �����e�����h��@��MI���4�E���)H�UOF����9��[&��`
�����5XGM�>%HS�49"��{�Uh��������Rov���B�~[�a��rW,hW��n<�{-%�Q�YU�
�8�������g4Lx���?x&����������\�����X'hmO�62���������`H��~"
kr���f���Q&��$�%����qh��hooh�Z�G6.R��<Z���2�gfJO�bk��jQ��W.�T�����@6��4������mr\T�U��B����:&�w��gG�uf�RhBm��94�SJ�����F_Hg����Ap�D����}��2��^�i|�
v���c��k��MXDI������Y(�����n��n����WM��f��
L9���.����.��S@VoO��Y�C������"��a��|n�������0d����h�*���|�����B$�2�0N&"���z\��+�8����Q[1���������������gj�n��R9�BW,\�av+5K[��-H���p��g�������5
endstream
endobj
56 0 obj
1058
endobj
70 0 obj
<</Length 71 0 R/Filter/FlateDecode/Length1 8444>>
stream
x��X}xS�u?��W��dl� @W\��X��0��A����X�q�L ]K�%bK�$ �6��.� 5�(MB�dm���kH�I����>I�.��'��&�H;�����-������)t�oW���>������K:�+�0
<��#r�&M� � E��i��x��i nl014���� D t�
�����j��h���u��l ��cM[�|F��w�_I��g� �>��p<(�N�) ��E#�}�!��!���c�Hx�x��� ��&���1��X��'�����3����oA�����R���V�o/��7���P{���KX��`�"����l���B��y^�S��5�1x ��^#{�������
����*u�����N8�q���W� J��c�y�eq`�{T����'�"?%����kh�y8����3��>��s=���? ���q�O�(��} �&[a;J��vC���8��>�������o��g���1�1����I���~��_@���Wx��
x�������;�9��_"�(�W&?�:�7� ����=��B��}:C�?��k;����k��~��osoO����M�w��m��[[�7���oo�m]��[�4����T�*o�(_)��Z��MFCaA^n�^��<G�&*$�V�r���%�$�U�DwY�����<E�E�
����$Y�R�?�q@q���u����k���&h�)$Q9�*�������#��_T.1z��
� c����V+���H���D^n������Dn�yH)�Rb�T�'��*��&8����R�R��>w��j�W���B������T�-�����t8$N��2�'�0��I!�n���������C��JY%�*����WVlR�[��Q;z��t\MIM�Q3.G�t�Z��J������
�����^fb��x$�� d����I4J����L��p���!&g_:dV<���1!����==����>�+��%����k�V����O�aApa���ph��(���,/���4�j��
���9MI���i�������Q�����F���� N�N�����l�2E&����lE��=M��^pn�K�����g.�1A��Hl�0�����ow��t[Uv6�W+.Y��{��=� 6,�����J �Xj��.-���1�M)nQ T��Z7�W�;h��@cI��s����X-��8`5�[�qiNY�;�
*��9��nP�������K����"�j�����fe���W�����U�*h8��}]�g���T��z���y?Q z����������5"�LJ��I�3�Yc�*�nU�(MP
����hZ�b��6��o�^�6���=���9S���|��1��������_������k��0�U0�j�6_�- a+��
���2/W���y��:u��Z�����
.�+oW���k������%<{E#ni��3.���u4���H��&f������h�"� ���mx�5OHd�{�E�z�}���,7��w�#\K��?�u�s"��I9*�B�����z��3{�9�(�
L���$&���'����MT���C����������Q&c�P�\�������
8����(y �=s��'�<�^=L<IF'r\���(Z����]M���;�������^8.el6���CtP>��d~���[�D!�zl����+�R�Y�����I���\K�:QRJ�}{�U���>+nIq�k����������X�y|��s#:��
8����9z
/��y�����46�&G}�"����d5�����k��~M����_��M��������x�F� �u|�)�����g���"�-"��"r���H]�-"��u����;��U�1������F�����V^"�������Y���|�{������[sn��3��t)����Q�����\�'�����|p�������\�.��A�,������_b,�����s�J9q��#�$QN,�d��L���r���7�g�9�N��9����:b����Y*���5
(+�9����_]!����:�k�eW����c�
���`f����|�C�{|l/������e����+�
�H���W�}���}�����7�^�_:���t�%K� ��Pe+X���Y���eF>�����F>_�ld�F�l$`#�6��g ���]�c~=���� �Z Wt�r\�������kX��a/]��!lM����<��//������GF��8p��?|���~�p0�/]�����W������G,[�7ovy�����=�����Mwt�4�R���;d��g����Ec�7�keAqq���#�%�����3��|>��7pE�_��d[�'K����
��l���r\C�Ijp��(q�H&��[�[��~���{�U�se���#�?�����;��t���������$�Q�h�����F���]8����0���QZ�������9�I�P�\Y��)��_��L��}&�;�_~��������>��K\�J�+)4����d�`�_V��_V*�I�������YH��B.�/,4���~�Vz�P:e'O��;������k'uL�:M�,N��Z��^S�q�H�;O�YQ��v�6��������,x%l*�Br�}=���
9�m��_y�'��m�����o�����[n[bm�������������������Z���=�&���Wj����1����C�����P�/���������.7/��t�
�%f�b��R��x���b���h� ����vZ��Q`�
t9�V���{���3�y ���mWN'�n�[�ts&c��Q'��0�X2��{3L����
���Qn��.D������E�D,�~������c�oz|����;M�%����������5{OQ:
z����~��W���y#r���^p^sB
����kw����<=�*�
t���c�U��M�Q�P���������x��4���$6�k�|^�����A��a ����6��O�c*��B��J��� ��C1�R�($N��%Q�I��`)���� �p?P�h��j+�%|VB����w�4���e���P0�4�o��TZ���6����~���R�*��� *��J�3*�K5�U:����W*�k��T�|�[�[�.��9s����s���h:�/CrZ����dt(�+��D{]}��1�-�d"����x�F�m���.�`�69m�c����@8k,���TOxh�����
�c�pR��3���+�LQ�^S_�pUw�e4�����
���{����5���P4�'Q��}5�5�WN�ciQ������]���`� ��dZF�x:�e�����B� �����~������IN���x�YNa.�lC2:��{"�`D�#��P8��r`�x���Z���wc��a�=��"�������p2:���9MW>N'�Ayxx/6m$����=�t�f��O�d�@XM1:�H�w���S�d8�<rH�G�#"'� ���E�)b &�X�{W2�c�[6v^5���@�����)f�C)��.q�0�p<~]�`<��������cit��r(�kF���]#�E�pz�89���.1,�1�H�&�N'�������FV����`����{a�Ied�;�]��ZK���)v%'�6qn&�k��c4�N����5��Pm��Z!
C�M�w�!"~e�e�����$���T�J���_;��[�_6�U���/��G���,nbP��\��q<;R=jm���T;Fb�N�@���"�"���]X��PDIcQ��{�7���4�y�+��o�'��8f5"�8�4��V�=(��?7�AD�0�[
5a��XT�-z���yR�,[�Ym���]�q����s�A��B6r����ND:�*1����0�c��S�����rnbr��������,fX��({��7�h��b�t�b�� N�x�<��+�}��'���*��M�{��S,os�Hg{,�Jiu��U!2�d���#�M3� ����W�i#�O6��������_;�[W��^�";-��l�L�@:�j�C��u��fUQJf;} =�Y�l62�hX�p�U;�RH]�0�$��f�@wwXEr���1������f�����jCL�G�Z
���+f��=�]dS�E/��U� |6i5k�U�O�������.���.��p�����q�/�N��Z��6w X���X����[�W��N�Qk����h] ���]���ek�T�|l~��Z�k�:��'O';%��xT���"��r�9Y���kW���(�iVO�aY��0��.��I���O�/���'\��C��I#����o3q�[��l�_����k���":����O�u�L]&�.�Lr�>&���#o��CO��7�[,x�,;f��p����3�3�f4y?��r�{�z,�w��]O��������L�L��i�������f-���}�����v��������
�~�����N�;��������g-��,oq��z���y����SM��x+,��v�e��N&&G'���)��d��c9�<�u6~v��'��:�+{�$N?uZ9�N�#/�bx��
g�gf�����S�)�����r���zNy��z��s\���g�'�N�N^8�u�?�����x��� �K�WZ��I�y�9�Yf�����Q���G�����=�z�}�$�G��#�dj��8�ux���a�/<��'?K<XoI���.$k��<
�%���&GY����iq�������z���6K?�.��i���
�$�o�;�a�S�f�{���\�
k=���J��^��-my#~Oy�;�7�!���>1���>�`��X,�a�a�A0j
]��a���a��s�l����t-%2I�Ll��������t(:�V��)������W�c
��o�M�9�gy��u(�^�X��PBH�(1��q�D)4�S�TzW�H��tUU*E)B����Q�*�j4C'd�� U�J�T
7K�)��5(O�!��>&�������H��/�qRj����?���S
endstream
endobj
71 0 obj
5050
endobj
72 0 obj
<</Type/FontDescriptor/FontName/CAAAAA+LiberationSans
/Flags 4
/FontBBox[-543 -303 1301 980]/ItalicAngle 0
/Ascent 905
/Descent -211
/CapHeight 979
/StemV 80
/FontFile2 70 0 R
>>
endobj
73 0 obj
<</Length 253/Filter/FlateDecode>>
stream
x�]�Mn� ����e���_���T���E��n�a�"��0^���!m�.@�h�x�.�Sot`�����QV�y t�YRVTi��r����5����vao�������# {�
�63=|\�X�s_�� � �SS�s�Y,��u�Ul�����O��;��e���
V'$xaf ]Qp�]���Q�zmv���>*��,����+�s��Fn��M�&�Cf����m���OO������r�>&�b�B�]��.��|��{C
endstream
endobj
74 0 obj
<</Type/Font/Subtype/TrueType/BaseFont/CAAAAA+LiberationSans
/FirstChar 0
/LastChar 7
/Widths[0 666 556 500 277 333 556 500 ]
/FontDescriptor 72 0 R
/ToUnicode 73 0 R
>>
endobj
75 0 obj
<</Length 76 0 R/Filter/FlateDecode/Length1 15328>>
stream
x��z{|T���^�1�������L2g�" �<������@�f@H�<H ��DEBk�
Vlk�������>
�����E*����J+�z�B[��@N��{&!���~������9g���^k���^{�3���o'�'<�Z{�����B�����uC\}|M����p�:��{�{�������Z���������i!Yy�����i.$d�|�1�����}+��w��o�;o{����Hw�5�����#������o�>���m����{�����)�������o2u����G�����G�v!�K?���xA4MfK��n��e���V<�L���Y~50.8>;'7/���__%����M6��a:q���}B[���
C���������3������7��$A^M
��O�r��'?�*�����9I^!OG~��7��8?��U�S��9����n�� @����NF�V���,�����nr��������������;N����qw#n��M^�IPEb�)�0cCyw�����}����X�q�yq��$"}N~L�g�BH���s���k�&������~
�c���E�%��
�;H}7?����#z'��>������D.������Jr�{�4�����W�b�.��&������{+I�
}�df�*l$n�CC��[�������o�W[�|Y��qi����u�]�����5�����;G��=k�����N)�<�xbQa^nN�����?�%�m��4��d4��)T�R���U�:�
�k�
�����E�U����V�r�55'�5����(tKBC���(�$�6B vu&�IE����A�,[������!5�)��e�����p��j�V%�7tT���p(�2/8��RTHY�LC(������ .�j�!����X�iU�-Q���j�/.LX��Y��X&�F�R��������w��U-R[�-|cS����j`���\���O��|&g��(��JP��KF��^ 1�T>#8����\� �0�l�g�� n^�4��W�����-�#C����=8pH��UhnR��,�=�����+���t��Pj��Kj����\v��F�U�|y����� ����v��*l$�7%�*Y�{�h���B{���iO�p���� ����i !d/lV��w���0��P�� ���@p�!��!F��V������F�Q�`��!v��~�||�C9�C�"��*X�������T4tMA2�6%��h����M*��tX�|��Dq0�p��x��U�������%\���55*Q\���Z5�2?��\��):}�L�=YJ�Hh>%V�a��T
4�u$�-�6\wj�/��B��P��=D�-����#�beiSmC�v���i)E����]u�`�/�0a�6�M��!�j5��3��0f���������j��05���W�����h�
�"
�y5����|����@�ST�a���#L��5�]������9����-3h��M��`(��&��&:7jf��1��S�ZzEk���L$���
j�Du�o�qX{�YsU���nu��m���)�5_� 4��i�������{U;.i��i]���)�����`C�LF��d��f*�Aj�v���BLmsa��ClkX��n����MOp��k�:4���Q ���X��
�6(�%�01z�3!��W`�n=��L�8 �G�$����i��!��
S�3%q��>�5�f5�f�$.���z1��.i����;���0��?d�|I�~���nk�,�qY���a������KF':��*��������]lDA��$ 8������%�>7��K��_��(��!
��~�}}h,o
��T3��7`��z*�Ie��A*w���yb$~-���<��M"/ ��x�q�r�\:y�3 �r@>.�_|p\�za�X~�#|�
'������B
4�`��4I4�`0a��RY �������%��\�\K��X����[a��8���N�?y��.��D�������8H�6�&Z�H\N��9d�E[sHt��`�T�X����tYqpqB��r
@.-q��~�����?����ON����i��o�������?{i-R9��<�U6�����h$�`2�6�
�!�]n����a�Z��7�Y3�0�Q��7�b�YG?}}I
+S&`�-�M�����_{�"/L��3j���O�PG�H�Ve4\��tB2]!B ��{����->�m>���>���[�\��F�h��� �� �&�6�'P+�C-J�WPEJ��W�h^�MF�d�0�
�N������%S��rr'r�eSJK�q"��.���~}���>���{u���:���
gO������Vv��]�|�+���=y����j3��Y���[W>������;�tf�TG��Eq��8���u+s��.��l�y������B��N\-..�w���BDI��N�`���'���l'TW��*�q
SE+�-�\?��~��� �4��n}w:d�����l0�Ghmh������#�7�������'*��i�V��D����:|}��Hn#����]p.���p6.����i<���L�r �'�S���9�2|�h�f�����8�������������KG:w-�%����A��n�����8I��
1�b����v�U���Z<���������+$��.�T������iP�3x���v���x.K�����D(��������{�~!���<����A�D2�h)SF���r��\v�f"�}��+�eB"�p4�f�/v
�vrh'�@�KgcX*n�_������"o*E[q�0�������"�����5������~;��(L����,x:D.'�EO�S�v@ &��!=�a?��5�����9D�FX��gJ����{;�r���[�$m�<���y�C�b2�����H�'�.�E�A��pN���]QZD����'��H|9�P{%?d8�$�@%h�N��B�i�T�y^���L��� R���LJ5�&y\N��`���!��M��q���-�4�0�����:g�r[����|E����(�@���c�Dq���M�"�y��S�/*��6\��HE��!����YK�a�V��/��(.�eO�u���PRa��;���K/�������[��{��w�a:.@7�o�1d���$R��9��N���Fb�$����$3����T�jdG�i��|6L�
�e���dD���1�^0��wwo|fY�U� ��7�����������yy��6��P��p���_�x�u���}s>L�n��'h�o� d�V,��c�)F�AC��i������c�oiF�T�$#?���D�dI}]2�U>��s�1���e!w�P^6>�
,G�nW`>
�q�m�����0v�#�C�������V�~p��7��T��M?_����S�[��:�rq������eg��>^����/�.���������L��!�q��m�M<�t����,F�����M�K��7[�no5�/��B�fx����^8���z�G^����{a���P��4/���/��s^8���^��/��B�����Ny�5F�E��l�r�/���������� �c�3v8��ay�3v�^�4/T2���p�I���-LU��^x�x��r���q�U����+���N`�,�,���y8s��*3�������B�g������������k%����L��d���~����_s�/�6����q��O��G~�')��}/��<��
��8H�`M����e��5��M�$h9��C��m24�0O�2�ePd�d��gdxS�Wd���.�}2�.�z:dX*C�/�[A���d�`x��2�}2|��@ �d��a�%lDR�9���T�'d�/�.�6L�D��2La�vF�i��a����[��6�$=j�#�K��a������O��0�'I�3�f��0��7!�>�7i��a�.�����n�%��'���&V�]�}_W�^L����!�V;*J1���J2�80�**0�x��-�hs����n���8��#�K�1{������K�#���2��{�:�{S�X���JA�fnUV3IO7�G��hqE�~VX����$��=0E�w��r3sT$�3��J��`4CY>��%S���3�����K�xd'l���/�w��n��<��[�9���q� ��1�%����C ������Z����'2.�>�`���-�e{,������L2e0� �2����}X��|~F,�7�����c��05�4��wOEL����}��� ;���M�����d�^ �I�mUS����`tg���_:��~�Y�W����Xu����+nXk�?T�;��?�����?���W���V�l{���Z[�\?����#8�=�������&����N�)8�-��b�-Yh�#����
�/y�]��,M�Y�U�|�����8 �K�����J��R7���y����������x�������/������������"���K"�<��.+ii</[x_���$��r�M��(�`p. ����8��v�G��>����u>(�%�-��+F ��(�������`!]2U� ���5�1�Z����5����sL�������^��n<z��1���=���m����_�z���t��2[�6�����Iw��L�v�F�{3`K��������\�h\j���~����6�[��������S�����3C':g��(�}l;���OY�{����+NC����:%��nJ����&��6r0cU�\:\�'�����t���Z�.uef$���z��o7%��Y����s;w��������j���c9�N��N�/��LMk���=�1��\�u!�e��47���x� �����G�m�`���6��`'/c)���pS���o�"�Hg��&<����Ou������=.����n[�Y^�]�-}U�������'^z����������Z���6��d�=�L�F�����C�S�.��@��1�1����:�^�T^y`L�{.���h������������b��%�JvzA|U_��I�8����#w��r|n�����
y�����y�$d��rE��mV��3x�M[r�����.4>@������-����ELJ���|�Y���lJ%'��L�1`��SN��cN���/q��G�,�n�Y?�������OR��yyEYk�-�
�]��,�1�g��G>����kV/Xb����|V������� t����9!X3����-�L��5x��@�6Dz2�-��I�%��`��'qK%�+A�98$$8/��$x]8*�~�)���vI\��8M��8$�3��HzB:-qOI?��}���� �KK%N��%����;&�.i���.A���T�$�C�s)��T�ni�$h���$�H0��J�RB:*���f 1��I� R���^�b�R��H;������$"�&����� 7���RX9����`�UU�+���5��H���9 �T<���N� }3��`�f��s���{�/����;a�� f�_��Ym�#k�`4X,����.�b6��;���ZV(P����)���?�X�wxM�*�(��
����a�ZfQ��C��!�Q>R�c
��������E�J�\���@�i
\T�SN)p\�g�
����n�)��� �f��rJ�X�R�;�NiV�2���p�P��@�O)� Up���1�*�\P�E��/)�[��p�U�J�U8�=���Q����T*\TE���L�t�d�-#�\�2z���� ��/�{)��8�x��B-x�������dt�n>'�H�?g%�=?����J����,�g0=a������1���.:tz�W�~��k�s��^��v�0�MK�{�T������p�5;���"a��Iv��.��N��d�/�&��q�-��8����Ks�;�T��/��EB��|��_������T��������}7r�mS�O7iH����'`�E�m<�����]/���O�W���v���Y4`�j�."�B<de�dP5�Z+-�Zkx��B'P�U)V7xP3!�?����5����iF.s��<~����y)r��3�6��5����O��7���x5�� ��<m�����n������K�Ohg�Y���-?��r
F�S4
Yc
b3��4Y�4�\.YH#��4��,P�`�
L��B�U�\�K�L-�d�T���b�M�����f����xED�������+|~���������;x!�5�+�F���.Y�{����E��������R��&io2��R4� C�D�a]��
�#�U���_���90
*�;E_
oq�_�>�������A�M%� �-c�i����E�FC��{�i�f933���e�3�3������\�x�e�-�P�q��=#��FJ���}�rL�������� ���_����;����t����9��)*���y��������
&<��_����?^z��l��E������Zv�����58'�,�
���`��t!������z'hN�wB� G��� ���:S�d�����IQ%^[��zm'�X�����s r��]0L��K������_��u�;l�,���aM $�M�g��>����|Q�����y�v[~]H���qq�z�C� �����T� �-��dE�,�"\��F:�^� �R\o,�\O
���sK��1��������C/�����,�"X����?���_���s��uO����9b�P_������>���������}.y���x��D��������H>{��9�n3o��B$�<w1��B4nF~�I�M�����q+x�w��XI%^�d���~�O�3�]z���9���Z��������WD�77���"�o�M�y���;�����s��i��U�������v����F��F�����x���5�L������Z�0�
~7���:���d]V�N�b� .�o�p��}<�o���kPq�����~�^G>������R5v���j��G1�w�Ez�������g����������������c4�������7���FS�)/wO��{p��%��D�g���<�=����<8��������<��y@��t���D����<ha}#�l��������\�g$��_�{������Q����kG~){����
S��q���G��t�����F�R��m�o���b�������.9�����l����?�/v�����'�u�=� ZWs��LG�q�~�w������� B�1�U�9��U����U/�O��E�w"~>i�vJ'^O�#�|�0`�R�G\1w��x~,�;@�8�PxQ�3�2*�.`{)�~!6����,E^lW"�[R}�T��8�����M�:����7����&�w�/�o�)L��
��y�n���S~7]2�f��vM���3i�t�t��y�����������JYd)K��#vRLn$���_J���#v�~��@l���(���`�d��,�z
����l��?���p
6a
>9���R���!��1��#��;��M
N'��![I&?5���G��$�g��I��`�� �)X y��,�L��)�@r���`#9/���M$O<���d��^
�p��Sp�f:��%r�YL��d�9�����|l~���x���mj[8V[#�M}]�;�j^k�Z2i�$uA$���]���F����H�D����J�%��&/T��N\���=I�6�{cs#�msb���m�}j�zU�UM�R_�������'�_&��E�����V�}����p�Z5�q�*j_���X���]�j����j}8��W��m����u]�����#q$��
�Y��k�j��bG�1�
��
����x�=����,�lN_WO�P������n����X��^�\�I�r���a�Kood���^�zw���:�zW�1j�X{_WG������{��}]����M���(]���������&&�@�t�I���h_dS�(������r�m�U]�]q�������b]�1f��
�U���D�Q�,�L�j%
�toh�1�����uDN����Hd-�JG��k�w���#���5���sFCEZ��P������[�"����KOlbg<�^\�q�����WZ�)�s����o���\�G��t/B��R��g���hX�H���}�Q95EP�����S"��]�xlb��{b�ouq]�"2�j��x������x��F��DH�l"}���*�Cl>>K�$2/�,@��w�x7��G�=��FH/����y�+������a�Z��[��"�
{G�UI�zI���v7���p+R�"LiUR�����{���3��E j5��/�0<�hd����b2���������>�q��/��"];�a{�Y��q�����Q����.q&��Q-��u(���2S�2�4.��#w�,���g^�!%7<�J��?�<B�v��k��c�o.�c�y%m6������F����dp����������
cO��r���p�/��� mRK:�0e�v�1��(CEx8Zbl�]�o��P�����I��`o���"���R������*��6�U�92w��c��l�d�t��Te�(�������G���L+
���_�#�����,&����)����VjK��je�"R�������%o���K9&�5:"cl�l`v����i��p��R�������Y.Z;��eI��1nE_a�f�xJj�i�������������(��/X.��I��b�������NwQ2K�b��~'���VZS+ebJ����qT�(���U�7�K��(��{G���Q�v�
�y�,M�Ou�r�U�Z�:cNf��Y$���q�O��r"��j��C ���s�<�����|�4B%� �0;����~��O?>g�R���i��~��������������P��I���B�'C82�����\|���9���gv��q�~\�]���$�`��I��A�z81/
�}"A�����l�g�_������=�5�����g#g��}����3���3��<�����Y��f����YX��;�]�]����A���]�K��:
YZ�wL���!?9�f��|}����s�-'w�<z����O�G��>y�;��O���W�������s��s�s�����V�����Y~r"G��a��rX=�n9=,����'�;,UK�A��[���=}�i9k������'����3�Tm/���/���'��W�����,>Xyp�A�v��V��<}��1��c��~t���>��� ���T�����`{�8�L��[��~��������^��w���{�}������������}�r���7�o�����e����=w�����]���f��m�o�������
�����qP�z��x�����/
|�G���?E��(��pd���9������{�K�����-�h4����K��4�����rY����\��e7��UO�;K�"zW(�#<��J����[x������j�!k���k���d�~q�=^���:.T�U��VT��_X���T�p��]�F�15�F���(���^bk� #���������V�O����l�bl�b[�-b�i{�6d3V"�����#���G`���
�G�CKj��� ���n�wm���a[�4.[�t���7����[�(ihJ��
�&��(���}�!��
�������bq� �C �]@Q#$���q�+��z��;�1B����W���PqL0�X�������(�2b��8'���
endstream
endobj
76 0 obj
9888
endobj
77 0 obj
<</Type/FontDescriptor/FontName/DAAAAA+LiberationSans-Bold
/Flags 4
/FontBBox[-481 -376 1304 1034]/ItalicAngle 0
/Ascent 905
/Descent -211
/CapHeight 1033
/StemV 80
/FontFile2 75 0 R
>>
endobj
78 0 obj
<</Length 400/Filter/FlateDecode>>
stream
x�]��n�0E�|���"�W#!����5�R�b�!������Htl��8�uY�a�_��^`��;�t7-�+��I%��]������=��^�e�����e��f���lbw��+<x�����&v���/�y���*/�E�������>U������%��m�h-Y��:X����xY�"�����;�\��o?c��F� ��eEE�!qr@���9�}���c���+�G�3��X��|b��� �d��gvS�q����3%2�G�/�?��d�����$���K�Oy�O��K�W2�'�a�������S���i��� �d�Y��o��?���������b����S��C�W�����?��r�%
���q,pn�M�wc���p���t
~��f���7.d��
endstream
endobj
79 0 obj
<</Type/Font/Subtype/TrueType/BaseFont/DAAAAA+LiberationSans-Bold
/FirstChar 0
/LastChar 41
/Widths[0 556 722 277 556 556 610 610 610 277 610 277 722 666 556 666
833 722 722 556 333 556 389 333 277 610 610 556 556 777 610 556
556 777 666 556 722 610 556 666 277 889 ]
/FontDescriptor 77 0 R
/ToUnicode 78 0 R
>>
endobj
80 0 obj
<</Length 81 0 R/Filter/FlateDecode/Length1 10700>>
stream
x��y{xS�������-[��C#l~��0j�����d'���%#�R-����y�lB��NH�LJB�1$�$�M�|I�t�����I�L; ���������1���|��=�����{��[k���>">�1��~�}��* x�Xz6������ �������_���@����-�K�y�
����@��� d�C�B�xl�Y
@N&�g���������?��}��[��m��~����F���?�}i�����=H����M�H,���@Ut<:�^��y�� �V����I
�s� j�:}J�!-�h2[22����K|S|�/�!����KX��`�c��x�3I'nJ��?�B�l^�W�Y8�#u�:������5�O���������������Q�������@n����P��p&<tA��Q��F�W��9
�=|��p"��]�_������'p+>���1��>����0�=���>���kF��h{%<E��-XaaDH���U�/�{�{Hm�:"n�2���!��`/" �wa-���G9�����������sBVs��r'9��#�C�[��;�q�I"�8 �7q��������[��K��W>�h�n���9�*�7�xe��'���.X!%�\5����ilf�m�Nt%�p�Q��O�G�Watj�B�)��e�o���w1/^����t�_G�������+���/k\�q7��-�k/�����o�W]Y�,/+-�UT8�1����i6��RS�:�Fx�@���.��Jf���v��J%wN������t)�_R�������+R��a����Rd��{�L99S��ILR
�PI9���F����w78|�r��+-�Nv
P���h%���vw!F2��R������HJ*��H)���)^L���p�K�f�S�?�x[:�
��_Y�2%�������T4������:��FJ��5AwW�!���u(�e�y������D��hPfo� =*���RB�6�N�i�j�(b��!
������r�*GSh�(�p�
i�(������8$�p��t|��!��#�p���o�i�M���)��Y�S]��6)-k;��#������������7
���.(�a�9*C7v����d_�n�Q��%>���#g&F��������x�����cX
�n��N�2�����.����a+p[��������@XR�"JM���"�&�I�"�\���"�EZ�@5T����R�m
�� �X�L�������WW�=R�D .X��-��tD�LG���RX�p[Q���z�zT)��fu%�����.GK� p�_�+���p#�5���z��"�pG�W�w�Xw�R��@�}��>GG�G�#4���%�������6GS����*�� U'��S���%�`*�B����xN4!C� ������-��m��3.M�����`b6�PfK�`�:���Q*�t�o����]�S�h+�$��R�%�0J�hP'�p���g}#c�X����:A�����A}��aQV��b����kzS��a����`*����*KY��x����aiX�hj���B@���),�7��^@��{�d��f=<"���C�������������������H����R���FdG��Lv���8a�3���G9��w��Ff�X� _��Q.e��D;TS+vtl���0�F�`��Q�������<S�P3$�#BrD��- O��
1�F��LNe���
\g!�u9/�UO�����J�2�(�����!�!'�h�j�}M�1�{��:za���p�����4Qn����|����K���B�q������8�uJ����k)�6��P�S�X ���{B3`mG�����m�t���7�a���6|���]��-L�
�����"=�;�:��-d������p��|��`���@Q�����O�/B��Wp�������8A��@��I5Pq��]����/��mT����29�����h8.-7/������(x}V�H����UbWNm����!f�����z�<W�5;��8f��i� �kx!�7���{����~��PI>�_Y���{�p�����<ts�z��������
�P,gZ4�@N�����M|���[����f�M�cg6Y\U~n�c�&+����',����2���.�r�#������=�����y2���l��������������-�>�����,(����|1==�
i0������3Mi�����>��pQ,@0*�Y�L��1�y�Z�<�t
��_���N��T�� �������~��w=t�nF�����!��C���o������������_���a1���� '��e��<�n�,I�3������b�7�Fr��^��S����|���o28:��DQg���%�H�Z:;o��lY���d3o\��V���q�(��H�-�6�P�����TY�������d��s���"��ai`�F�dd��$������P��r���7��������6���E�QS8�e��������Vw����G����G[}W����y� f_�����t�F���f�gdp��S�QC3�y15%X�1%��rY�]�9WU��
<�/�r�+��U]wu�z�3>y9!p�4��3�����C.��f���.��'~�����K2�T[���.����/o:���@Y����@��"hqs��
i�N���i-|*��&j'�(�]
:��Q�����e.�C�5Rs�
R�xMt�����$�'��/��F�H��� �T-���!�H��FN�B6i��rZ�y����u-Xp3545y-0�D�qs��KO���?>}��y/�����%�{��{b��+������$��z�SR���D��.:E���Z�S�&��Z;/��? �>D��ODX~�j��\2x?�?4V����5�&\�G~}&�%�`L�!
�����5���"��M�2\U��?�I��k%'����������[-��
��de��$��
�3��ar~e���
�L�n�����!��W���w����k����k^Z�������3?=|��C es����h���p0��p/�k����q�uZ� �*
e�3�|����6-W�1�����4>��n����,���N�����]=���U��[��t)+s:�=]B�O�3q�����?�d��
O��:����s��d���'�P�v�{����Ydp�-�[x���=��9u���y�R
�SMS�dq8kZh.���?n\�F�j��i3Lii��9|^���j�?#���:����O$�������M�yn-�hy_4+�fu�5��d���!���O��������'��y�'�����jO,'?+�<��+Dw"����]����rr��Kx1j���&�I�x��� ����`L�.���RS��H���4W��u��+�p�f�{,>�����A+�H�R�����I�_�����!��������o//�z'�#�%q�:|q��.�)WCZ��|���{�^��8�Ze!FK�%b9m�l
���h��MB�����I�jP����q�������;��W�_:M���g/�/�����&9{�j�~.������{�?{>1g��u3�bq,�-Z�8N����� �k7���E�N%��\���7 ����b�b���xf0�3�5[����|F��f�W���f���7H�������_��+��_����/���#?��JI�'��&�B�O'����>J|����$��=������n������3�2��$�rJs���L��7�,^��ui��!
�%i�,I���(-j�-h]���$j]�*'X�7,&��1{��*�����r��a���<�>�^��X�v����������G<��w������$�>\�T���U��E7���(PV��j�������?|b�p��f����A��3��B�Jy�Vc���5@.dh�Y�v���N�� /����yyV���a]0��f�7�;��A7��7�98���@��d:'���[o�s�����w�����?�=�z�����m���VR���;w�o\���*w��H�������4Z��+7���r|������}���c_���� �����b���o�uu%��,���y��Nc��`O��z��g&~�Kj��?�r*������s���?"��g~�����1���E<A<I+V�=�f��=�/��L�[�3O&������;�[�;���|!.<*���
�h�*��d;� O���+�oF���t20���I���#���*����O��s�J����H�5�~R�����A&���zH'�U:��H�J�B>wz���wU:
�y�J�;�_L�z��;T� ��T��ta�J�0W�Pi�TZ�<a�Jk _8��Z�LUi��UZ��;*��}(�Y�Sa���*m�u�t�N�
�
*�s��4�����������RO$�e0�>��{fKU���Hd}_P��F#��x82P�R��*�U4���������pw09WZ���o��.���A�L�n�u���1JW�W�W_�nf8&����?���*Ez��
��c�� 2�R{y[�����q�?�VO
���
��'8���H<�07l��j-V>�~J$���MAi�?�"u��Bd�����@�T�
���������p�{�t����~�f` � �nB��`�`0
��b����{UR<��S�����p���o�ZE�q�6��!j0�HW7?[>���q������&�,�3�=����QW�?����a��=1�����7F�A{����^2��H��`��1�$t���p_$r+u�72�0�P�����8�F$ ��c�"=��ba����=�������?V�������7�������)G��o�o��%�Z���1��md�L�h[�,��b|<NR'�J�YY^���0���Xy,�W\�\�i��z��xo��*��� ���G�"�-0�f��+A1rg��3T�[���8+��}(/A=��(E�~�7P)l���U!���hd��H-C����r�8:U�+Xar�a#����%C� ���ex��o����&�U�������v�a�#������p������-��U��H��L+���3��,/��1�3kl�����
-��|[���=L7�����!5�0��A��M�C�_����DC���\���ccu���~%cFuld�@>��fDCm��g1
0
4�T�n�8�[mI��_]��r�T��Tk4���cv�����y-1�4"����X��l
�����q6��}��E��~�Q�j�ZM�Ym�&��R����vs�����&�A�j�R�T� ��jD��*Q�%�����Q���M�
�<��U��g�'�P�����Sn��V|P��M�S4��d��f)]�>�76E� C`��d���>�R��>�#�:�J�,���0me��^��j5��/������F����J�u�+����FT�(���*�~V)!��QX�gK'���,��O�Z=�*f�[����N���I,���Y�&�o��J�X�6�����U���FN�N�����J�w^�E2���3<1�r��z_���9�]����]�U���"����v���7��� v����U�"+���-_�H
�58!���>m����CvXRN�� o���8��FR�;�> �In%�U ��O�w��D.� ��o�����(=)?J�}��]D��c0n�.1�T@�����a[��k��X^�c�so��O��?<s��T��^z���K|���������eb��y9r��������<����������`�������=v��D~�c��w�c?}�W�_���y���I� ���f��E|��E�k��E��a��X����#�$�Vx�����!f������k��y�
�S� �s��,�������^�O�o�so�=z�H�*N�9�GO
���'�'9������GN�?)�x��.�V�zG��C�"�5+4c��t�H�����+����9���c����$M.y��>��S8E9�����#�G���+�sg��y�y��0��s���o?�-I#F�"������D������,�=�u z���"���"{�C�Cb8��5�C��L7{��_c?�DO�P�9�Tm=�-�?�������?����O�����6|���j����D�K� b�%���E������#��}�s��m{M{��<5*����H{*�p�vw����+v�.�.�.^�e���N�T�"*����������%d�)��s{����5��.��{W��������&����*��+~@�m'�v�����`r
��Gr�s]9�Z�������N�O�_ ���"#d{F���5��u�J�Zl�`�Qei �.T����m5v#ON�\�s��.�b�]�%)r!*l����[�[8��z�Gn),���K�7�f�4{����%6��,��X���^��9�����<$�d�[������n�2�sXi�+������N�6�`4:����^�y��Q[���F>�I��V"�Q�odu[II��v��I�{�*d�R�F�r�E�C��5k;F���{�n����T�u(]�|MJ �CH���X�����K�Q��������?��L\�vHI,����^�d#{��b�t.�fP}7S������A)j�I�X&Q�-��%����j�%�Lb�%�D���������
endstream
endobj
81 0 obj
6760
endobj
82 0 obj
<</Type/FontDescriptor/FontName/FAAAAA+LiberationMono
/Flags 5
/FontBBox[-481 -300 742 981]/ItalicAngle 0
/Ascent 832
/Descent -300
/CapHeight 980
/StemV 80
/FontFile2 80 0 R
>>
endobj
83 0 obj
<</Length 316/Filter/FlateDecode>>
stream
x�]��n�0 �;O�cw� �*!���a?���t�F�Bz����&� �L��r�����r���E��JK�|���JG<eR w��[L��b_�������\�Q���gW�9��Q�j%X��l�Q�>�o�|���$�*&a��<�e� U�N�e���/�K8�XbN��Y�bv�W��$�X��UZ�[K�%�Q|��r��$iRy�������E���'st\����Y�>��#��>�stM�7���D9
�%�Y<�<�S�y���3��S�M0�_�����i8�)�������Z?�p�a�8m���0����|�2�f
endstream
endobj
84 0 obj
<</Type/Font/Subtype/TrueType/BaseFont/FAAAAA+LiberationMono
/FirstChar 0
/LastChar 21
/Widths[0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600
600 600 600 600 600 600 ]
/FontDescriptor 82 0 R
/ToUnicode 83 0 R
>>
endobj
85 0 obj
<</Length 86 0 R/Filter/FlateDecode/Length1 26396>>
stream
x���y`T��8~�[f���gf^2IX�L�$@d�#$a�f@���($! nDQ����K5�H��u�H�Z�-��R�S�{M+j��Kj��Q��;���0�������w�����{�=��s����twnl"�CX"�Y������B����M���E�)� ����������g ��Q��]����_� 1�2grKSC�� ���������-j���������������9���u�kN�n�aB.�������(�v0�������M_=��F�E���������6L��ur}GgS���W���;a�b�?�c��J�3,����No0f�����p���/�
Y�����1c���/(,
O(���M�4���)S�M�gT�����5{��y�,$��}���Af����t��Q�0����X��������s�"}d7y�\���!Q�J6bI���*���(YA';�����8�+pq�G��%?Qr/9J~5j�(YO�C\�"o���v�9h�M�E��s,[p����j��������.2�9����&��� � ����q��Gf<��Nw��{)i!�0M?��so��?qV7���f2��Kk�,<�����a���,��T�f�b�1���������p��nv��P�?�������D{�Z���������l��e�����y��d�6�����q/��1Twr��5�@�Nj����[�"�Z�"V��v����E��7w��Y5�U3+g���M�rY��I�&��
����� eg�v���a������XH���xu��,5
��P������RUXP��'�!�?\^h�lZjHq!��?
i������@�
�8 fa*�*'�B�qX�����B1!� M/�i.�f�����+[�:Q��eguq�#z����&]a9��cR����P�;h�[}��h���8����Dtq]u�/++VX0'���Ud&�2���P�.�Vu�K8R�����f�:�oh56\Q�`��N�z�� K~b\�*1��3n�yS� TU���{��dd�y����k ;� 8��'�.iH��r�_9�`f&`I]���� �w�� 5;�;��� ���#���j$7��a�����K��K��-pY,9��%���+�Ln����%��"�5��e��~[5A� q��YY2v�j�$z�)y���=I�p~,�����T�c�\���i!o�-����r�4�����=�Q���2'2��e�vZ-By8Fa�jNc�����H�*����d��f2�T~>�� y�P�n�~�C����M-n�@@B��W��.!VaBlHr��Hq[4��a�U���p�#aU�pWF��uim�l���L���d�D���+�zg�JAA�+���i8R*��FH)�U����(ey�;������]�P��J�1�p,T���)4n�G�#Fe��n�����+�&'Q*������ ���nP �\�P�����@��D�r*~'��|�HpZ*n�T�|$�h$� �MUI89?�S^���S���,�3s�/+��|
��c�L���*TSX�A��9���t�B/���B�P���u��d�P*'�Ai��U��\��L$�S����|_:q�h~$;���9�ja�&4o�N��P�C���IY��������������yD���r��IhN��������
�k���d���,,@�Vy$�->"�mKW�=mF�����'`f�+cGr���i7
Z���r�������h(��i��Z���_s-�����9�(efe�<:�H���1�a�F)��e�s��$u�����12�# =�%���r� F��VKh�q�9�}
DB�
��-;?��uG
�;��7T)P\�-�l�V��FYP��������F��� MG6��#"*CBj�L�C�ry�\^����r5�(8�� �� �%`e].I���N�'2�b�Tv�?(D��E`5��z��?���J���iX��|}���5B�:��h�Z#TA0����0`��F8a��Tm�r�p&�����:����)���3ez���HJG���~#$��K;���
X�Ta�W�gC�S�aCg�������yR�o!7��X�|Bq���U6�2�,���c���z�0�>�������ee^"{5������BK]�1bc 4����x0�f����vn0a8��0���0ae�@$����b%��2
��H�O(�E\��L,+-R��N���,�1y�l���G���kF(���;�;m���o\3m��G��j�����l��u��O���Z�
��s��U3
�&/�ze��|�o����X>� <e�-�_���%���v�c���'N2Q��b���v�>f�eh�cqC���
6�� Hd�)�[m0[#%V�� e3�9K 3�o�}���z���^��U0_JH��R���~.� �a&� ����<sXzTzBz\z�������r�=�l���1������XTP&�Bil��W���}e��qikv;xT&�2�[<Voh70�`��l`�����|�x��1����cS��?����Q?�~�9y�t��m�p��+���R��+I�
�EHfX>X�&E0�e�* �fM9|���R�8�6\���4�D�+m���H����Cg{��G��5%=Dey�}�����b���zXO�_�Q#:��:���x�c�&���pEDF/�C����-4�Bc�Y6Q�M���g�}�
�^TUj��K������N���z�k@��&"������_�/�w��M*���b��c>��s���$�k�����Y�1SF0���:�RVc�=N���EN:���a'���'�����0�z/�0L!�~�������
�������z''$z���Sk�<]��%(�t�[��S���2��0�X���=�*���wp��:��/n�����].�s��&��y�0U|���
�p���h�Yl<�e�A�"�
:���2�z:��_=H��K�:�h��'R�h��D'S B���=����L��(����E�n��'Rc(
�f�v�O����)nP�~�6�����u�4n�.�Hr�L(�5o(�!��t� ���S^�]���=X���� �����*L�^|U���j_���>������C�'� ��
DmVj��Z���}�+��E�� q`v4f����,T����Z������0����ReG�i(��<�j��6�����c���.�5��22�����Ym��X�6[�%s����@(�������+���Q3&5���G,@O
�� ���~�0*�N.l�ey�J��R��J�5!�;�vd�C���� �BdO��`���`_�������1{�w��;����ncOYwA�r��Y����8v�?��|�>��>��v�f�V�s�������x-��]��?�|X�|����$qq���d���P[}$���3���Zu]1����oS�b H ��x 0{����;j�'O�9?%�$�\�j�:��s��g�>6g��e���c[�y���S�F�����_�~���Q�����_�xd�J�;3�g��t/�]��y��������h��t��w������%��*=��5:a��NP9�oNx� /9���;��V�8a��(@��N�� t��N�� �*��8��~������,����� 9N�S�N�s�A
������S*q����]� ���.���E�e���Gl����V�_dX��(����DdC��iw8���tBZ):V���W�I�����y*�����W���A��s���j�E�#�V�G��E�A~��@���v���k,+[������Y��R�r�mX��lh���l���/�������/f��l��
�l����l��.��9�
g�����Vm�f :�!�
b6�
����'�0�)�$
$�NH��� �r��&�[Fm�I�����Kw�Xv������&�����x�a�����R����+�J�&�I�H/IoJ�����'z�jZ���I~ Zt�������YB�F3,�������lF�� uQA�`��u��j���z�b �0P��/�����9�Y�����P���E6SK��IE@MX'[�X�N�����W������j{�_����gN��a���M7o�:n����6��he�l�o���=������7�@��cO�;�������]l���o���-���x>�g�Lg��=��1x����<p<����y��� �x�����}<���tP�2���6x@��|��~x8E z)x���C���j� �IZ�h�#��3v��}�����9%�y^Ox�rk2�b5c��1����pC��n��I����Q���O���f�~��wN�s��[o����v=sph64B-,����P ��Y�'�a��BZn�{�4 �b���Fs��i���rGW�D��1���<��M1�J�w�zt�Ih�zD� �
��g)+:�@)������WI�-G�e"|�������{p�*�n�C��wlZyy�yl��u���_��My�r�9r���n����Z7�s����UH��D9
�2�e8�d��l��aY��U�;���a��f���)�+"��*O!�+���+L;P�e��=���:&=�K| c�7a�v����=l��|aH>~Y��� ����/���j�".`fY���Fc��b�Dc&������`��qD] ��� ������i ��C�V��|�S��z��m�}�PN�-jZ�%�������XP(��'yz�C>������SX�a�|�`G��� �|�8F����������hL�����X���a7$��tC���y�=�R�h����������qD!��P&92 ����������_�4�������p�k��m�Qi���=����&Z�����uZ�Adk1c��pB}z8��}z���n=4�!Gv=pz�?���G�!���D=��!��^�5���a�f.l��������.8��v���PS#��g��(CQ\�5��(A�d���`�j&4�<E���R�xV�3��
����������'