Olena-patches
Threads by month
- ----- 2025 -----
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
June 2009
- 9 participants
- 356 discussions
4213: configure.ac: move tests/extract/Makefile in the list of stripped tests.
by Guillaume Lazzara 29 Jun '09
by Guillaume Lazzara 29 Jun '09
29 Jun '09
---
ChangeLog | 5 +++++
configure.ac | 2 +-
2 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index d539310..c1c61be 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2009-06-29 Guillaume Lazzara <lazzara(a)lrde.epita.fr>
+
+ * configure.ac: move tests/extract/Makefile in the list of stripped
+ tests.
+
2009-06-25 Roland Levillain <roland(a)lrde.epita.fr>
Strip some Makefile.am's under milena/doc/ in the distribution.
diff --git a/configure.ac b/configure.ac
index 00ba605..30c8e59 100644
--- a/configure.ac
+++ b/configure.ac
@@ -278,7 +278,6 @@ AC_CONFIG_FILES([
milena/tests/draw/Makefile
milena/tests/estim/Makefile
milena/tests/extension/Makefile
- milena/tests/extract/Makefile
milena/tests/fun/Makefile
milena/tests/fun/i2v/Makefile
milena/tests/fun/p2b/Makefile
@@ -360,6 +359,7 @@ AC_CONFIG_FILES([
dnl<<lrde
AC_CONFIG_FILES([
+ milena/tests/extract/Makefile
milena/tests/linear/gaussian/Makefile
milena/tests/registration/Makefile
milena/tests/subsampling/Makefile
--
1.5.6.5
1
0
* tests/labeling/fill_holes.cc: do not save output.
* tests/Makefile.am,
* tests/binarization/Makefile.am,
* tests/data/Makefile.am,
* tests/data/approx/Makefile.am,
* tests/data/naive/Makefile.am,
* tests/geom/Makefile.am,
* tests/io/dump/Makefile.am,
* tests/io/fits/Makefile.am,
* tests/io/magick/Makefile.am,
* tests/io/off/Makefile.am,
* tests/io/pbm/Makefile.am,
* tests/io/pbms/Makefile.am,
* tests/io/pgm/Makefile.am,
* tests/io/pgms/Makefile.am,
* tests/io/ppm/Makefile.am,
* tests/io/ppms/Makefile.am,
* tests/linear/Makefile.am,
* tests/morpho/Makefile.am,
* tests/morpho/approx/Makefile.am,
* tests/morpho/closing/Makefile.am,
* tests/morpho/opening/Makefile.am,
* tests/morpho/watershed/Makefile.am: add generated files to
CLEANFILES.
---
milena/ChangeLog | 30 +++++++++++++++++++++++++++++
milena/tests/Makefile.am | 1 -
milena/tests/binarization/Makefile.am | 7 ++++++
milena/tests/data/Makefile.am | 8 +++++++
milena/tests/data/approx/Makefile.am | 7 ++++++
milena/tests/data/naive/Makefile.am | 6 +++++
milena/tests/geom/Makefile.am | 2 +
milena/tests/io/dump/Makefile.am | 5 ++++
milena/tests/io/fits/Makefile.am | 8 +++++++
milena/tests/io/magick/Makefile.am | 8 +++++++
milena/tests/io/off/Makefile.am | 6 +++++
milena/tests/io/pbm/Makefile.am | 5 ++++
milena/tests/io/pbms/Makefile.am | 4 +++
milena/tests/io/pgm/Makefile.am | 10 +++++++++
milena/tests/io/pgms/Makefile.am | 5 ++++
milena/tests/io/ppm/Makefile.am | 10 +++++++++
milena/tests/io/ppms/Makefile.am | 5 ++++
milena/tests/labeling/fill_holes.cc | 10 +++++---
milena/tests/linear/Makefile.am | 5 ++++
milena/tests/morpho/Makefile.am | 10 +++++++++
milena/tests/morpho/approx/Makefile.am | 8 +++++++
milena/tests/morpho/closing/Makefile.am | 9 ++++++++
milena/tests/morpho/opening/Makefile.am | 8 +++++++
milena/tests/morpho/watershed/Makefile.am | 8 +++++++
24 files changed, 180 insertions(+), 5 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index dee69b2..8cec4fb 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,5 +1,35 @@
2009-06-29 Guillaume Lazzara <guillaume.lazzara(a)lrde.epita.fr>
+ Cleanup test output files during distclean.
+
+ * tests/labeling/fill_holes.cc: do not save output.
+
+ * tests/Makefile.am,
+ * tests/binarization/Makefile.am,
+ * tests/data/Makefile.am,
+ * tests/data/approx/Makefile.am,
+ * tests/data/naive/Makefile.am,
+ * tests/geom/Makefile.am,
+ * tests/io/dump/Makefile.am,
+ * tests/io/fits/Makefile.am,
+ * tests/io/magick/Makefile.am,
+ * tests/io/off/Makefile.am,
+ * tests/io/pbm/Makefile.am,
+ * tests/io/pbms/Makefile.am,
+ * tests/io/pgm/Makefile.am,
+ * tests/io/pgms/Makefile.am,
+ * tests/io/ppm/Makefile.am,
+ * tests/io/ppms/Makefile.am,
+ * tests/linear/Makefile.am,
+ * tests/morpho/Makefile.am,
+ * tests/morpho/approx/Makefile.am,
+ * tests/morpho/closing/Makefile.am,
+ * tests/morpho/opening/Makefile.am,
+ * tests/morpho/watershed/Makefile.am: add generated files to
+ CLEANFILES.
+
+2009-06-29 Guillaume Lazzara <guillaume.lazzara(a)lrde.epita.fr>
+
* nodist-headers: Remove mln/fun/binary.hh from distribution.
2009-06-29 Guillaume Lazzara <guillaume.lazzara(a)lrde.epita.fr>
diff --git a/milena/tests/Makefile.am b/milena/tests/Makefile.am
index b8a0752..b4acaa9 100644
--- a/milena/tests/Makefile.am
+++ b/milena/tests/Makefile.am
@@ -57,7 +57,6 @@ SUBDIRS = \
trace \
trait \
transform \
- transformation \
unit_test \
util \
value \
diff --git a/milena/tests/binarization/Makefile.am b/milena/tests/binarization/Makefile.am
index ea282d8..3a258fd 100644
--- a/milena/tests/binarization/Makefile.am
+++ b/milena/tests/binarization/Makefile.am
@@ -25,3 +25,10 @@ check_PROGRAMS = \
threshold_SOURCES = threshold.cc
TESTS = $(check_PROGRAMS)
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = \
+out1.pgm \
+out2.pgm
diff --git a/milena/tests/data/Makefile.am b/milena/tests/data/Makefile.am
index a87c109..213cdbe 100644
--- a/milena/tests/data/Makefile.am
+++ b/milena/tests/data/Makefile.am
@@ -68,3 +68,11 @@ update_SOURCES = update.cc
TESTS = $(check_PROGRAMS)
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = \
+ out_line.pgm \
+ out.pgm \
+ out_rect.pgm
diff --git a/milena/tests/data/approx/Makefile.am b/milena/tests/data/approx/Makefile.am
index 8e7a187..0c33433 100644
--- a/milena/tests/data/approx/Makefile.am
+++ b/milena/tests/data/approx/Makefile.am
@@ -35,3 +35,10 @@ median_SOURCES = median.cc
median_CXXFLAGS = $(LONG_TESTS_CXXFLAGS)
TESTS = $(check_PROGRAMS)
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = \
+ out_oct.pgm \
+ out_rec.pgm
diff --git a/milena/tests/data/naive/Makefile.am b/milena/tests/data/naive/Makefile.am
index 7ee5f9e..7a9da64 100644
--- a/milena/tests/data/naive/Makefile.am
+++ b/milena/tests/data/naive/Makefile.am
@@ -35,3 +35,9 @@ median_SOURCES = median.cc
median_CXXFLAGS = $(TESTS_CXXFLAGS_SPEED)
TESTS = $(check_PROGRAMS)
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = \
+ out.pgm
diff --git a/milena/tests/geom/Makefile.am b/milena/tests/geom/Makefile.am
index fae2c31..9149ca2 100644
--- a/milena/tests/geom/Makefile.am
+++ b/milena/tests/geom/Makefile.am
@@ -35,6 +35,7 @@ nrows \
nsites \
nslis \
pmin_pmax \
+rotate \
seed2tiling \
seed2tiling_roundness
@@ -54,6 +55,7 @@ nrows_SOURCES = nrows.cc
nsites_SOURCES = nsites.cc
nslis_SOURCES = nslis.cc
pmin_pmax_SOURCES = pmin_pmax.cc
+rotate_SOURCES = rotate.cc
seed2tiling_SOURCES = seed2tiling.cc
seed2tiling_roundness_SOURCES = seed2tiling_roundness.cc
diff --git a/milena/tests/io/dump/Makefile.am b/milena/tests/io/dump/Makefile.am
index d9d63f2..cad3d5b 100644
--- a/milena/tests/io/dump/Makefile.am
+++ b/milena/tests/io/dump/Makefile.am
@@ -25,3 +25,8 @@ check_PROGRAMS = \
dump_SOURCES = dump.cc
TESTS = $(check_PROGRAMS)
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = pic.dump
\ No newline at end of file
diff --git a/milena/tests/io/fits/Makefile.am b/milena/tests/io/fits/Makefile.am
index cd5e89e..77770ce 100644
--- a/milena/tests/io/fits/Makefile.am
+++ b/milena/tests/io/fits/Makefile.am
@@ -27,3 +27,11 @@ check_PROGRAMS = fits
fits_SOURCES = fits.cc
TESTS = $(check_PROGRAMS)
+
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = \
+ out.pfm \
+ out2.pfm
diff --git a/milena/tests/io/magick/Makefile.am b/milena/tests/io/magick/Makefile.am
index 304ac10..0e1d9db 100644
--- a/milena/tests/io/magick/Makefile.am
+++ b/milena/tests/io/magick/Makefile.am
@@ -30,3 +30,11 @@ load_SOURCES = load.cc
save_SOURCES = save.cc
TESTS = $(check_PROGRAMS)
+
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = \
+ tiny.ppm \
+ tiny.png
diff --git a/milena/tests/io/off/Makefile.am b/milena/tests/io/off/Makefile.am
index 027f063..2ed2594 100644
--- a/milena/tests/io/off/Makefile.am
+++ b/milena/tests/io/off/Makefile.am
@@ -31,3 +31,9 @@ load_save_bin_SOURCES = load_save_bin.cc
load_float_SOURCES = load_float.cc
TESTS = $(check_PROGRAMS)
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = \
+ out.off
diff --git a/milena/tests/io/pbm/Makefile.am b/milena/tests/io/pbm/Makefile.am
index 068e5bd..351207d 100644
--- a/milena/tests/io/pbm/Makefile.am
+++ b/milena/tests/io/pbm/Makefile.am
@@ -27,3 +27,8 @@ pbm_SOURCES = pbm.cc
pbm_ascii_SOURCES = pbm_ascii.cc
TESTS = $(check_PROGRAMS)
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = out.pbm
\ No newline at end of file
diff --git a/milena/tests/io/pbms/Makefile.am b/milena/tests/io/pbms/Makefile.am
index 1486112..1a3fc5c 100644
--- a/milena/tests/io/pbms/Makefile.am
+++ b/milena/tests/io/pbms/Makefile.am
@@ -25,3 +25,7 @@ check_PROGRAMS = \
load_SOURCES = load.cc
TESTS = $(check_PROGRAMS)
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = out.pbm
\ No newline at end of file
diff --git a/milena/tests/io/pgm/Makefile.am b/milena/tests/io/pgm/Makefile.am
index 80eb607..f6eef7c 100644
--- a/milena/tests/io/pgm/Makefile.am
+++ b/milena/tests/io/pgm/Makefile.am
@@ -33,3 +33,13 @@ pgm_ascii_SOURCES = pgm_ascii.cc
pgm_SOURCES = pgm.cc
TESTS = $(check_PROGRAMS)
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = \
+ out8.pgm \
+ out27.pgm \
+ out19.pgm \
+ out16.pgm \
+ out.pgm
diff --git a/milena/tests/io/pgms/Makefile.am b/milena/tests/io/pgms/Makefile.am
index 1486112..8a4f02a 100644
--- a/milena/tests/io/pgms/Makefile.am
+++ b/milena/tests/io/pgms/Makefile.am
@@ -25,3 +25,8 @@ check_PROGRAMS = \
load_SOURCES = load.cc
TESTS = $(check_PROGRAMS)
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = out.pgm
\ No newline at end of file
diff --git a/milena/tests/io/ppm/Makefile.am b/milena/tests/io/ppm/Makefile.am
index 7da43b8..913dd04 100644
--- a/milena/tests/io/ppm/Makefile.am
+++ b/milena/tests/io/ppm/Makefile.am
@@ -29,3 +29,13 @@ ppm23_SOURCES = ppm23.cc
ppm_SOURCES = ppm.cc
TESTS = $(check_PROGRAMS)
+
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = \
+ out.ppm \
+ out16.ppm \
+ out23.ppm \
+ out8.ppm
diff --git a/milena/tests/io/ppms/Makefile.am b/milena/tests/io/ppms/Makefile.am
index 1486112..173a9f7 100644
--- a/milena/tests/io/ppms/Makefile.am
+++ b/milena/tests/io/ppms/Makefile.am
@@ -25,3 +25,8 @@ check_PROGRAMS = \
load_SOURCES = load.cc
TESTS = $(check_PROGRAMS)
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = out.ppm
\ No newline at end of file
diff --git a/milena/tests/labeling/fill_holes.cc b/milena/tests/labeling/fill_holes.cc
index 5f85246..bbf55b8 100644
--- a/milena/tests/labeling/fill_holes.cc
+++ b/milena/tests/labeling/fill_holes.cc
@@ -23,6 +23,12 @@
// exception does not however invalidate any other reasons why the
// executable file might be covered by the GNU General Public License.
+/// \file
+///
+/// Test of labeling::fill_holes.
+///
+/// \fixme Write a Test!
+
#include <mln/core/image/image2d.hh>
#include <mln/io/pbm/load.hh>
#include <mln/core/alias/neighb2d.hh>
@@ -40,10 +46,6 @@ int main()
using namespace mln;
image2d<bool> pic = io::pbm::load(MLN_IMG_DIR "/picasso.pbm");
- debug::println(pic);
value::label_8 n;
image2d<bool> out = labeling::fill_holes(pic, c4(), n);
- debug::println(out);
- io::pbm::save(out, "out.pbm");
-// mln_assertion(n == 33);
}
diff --git a/milena/tests/linear/Makefile.am b/milena/tests/linear/Makefile.am
index 67d21fc..3bc1b01 100644
--- a/milena/tests/linear/Makefile.am
+++ b/milena/tests/linear/Makefile.am
@@ -50,3 +50,8 @@ gaussian__SOURCES = gaussian.cc
#>>
TESTS = $(check_PROGRAMS)
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = out.pgm
\ No newline at end of file
diff --git a/milena/tests/morpho/Makefile.am b/milena/tests/morpho/Makefile.am
index edd0f60..4a7c649 100644
--- a/milena/tests/morpho/Makefile.am
+++ b/milena/tests/morpho/Makefile.am
@@ -105,3 +105,13 @@ meyer_wst_long_CXXFLAGS = $(TESTS_CXXFLAGS_SPEED)
TESTS = $(check_PROGRAMS)
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = \
+ out.ppm \
+ out.pbm \
+ out3.pgm \
+ wst.neato \
+ out1.pgm \
+ out2.pgm \
+ out.pgm
diff --git a/milena/tests/morpho/approx/Makefile.am b/milena/tests/morpho/approx/Makefile.am
index 02deae8..85fc367 100644
--- a/milena/tests/morpho/approx/Makefile.am
+++ b/milena/tests/morpho/approx/Makefile.am
@@ -27,3 +27,11 @@ dilation_SOURCES = dilation.cc
erosion_SOURCES = erosion.cc
TESTS = $(check_PROGRAMS)
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = \
+ out.pbm \
+ ref.pbm
+
diff --git a/milena/tests/morpho/closing/Makefile.am b/milena/tests/morpho/closing/Makefile.am
index 7e6d60f..c75b590 100644
--- a/milena/tests/morpho/closing/Makefile.am
+++ b/milena/tests/morpho/closing/Makefile.am
@@ -42,3 +42,12 @@ structural_SOURCES = structural.cc
sum_SOURCES = sum.cc
TESTS = $(check_PROGRAMS)
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = \
+ ref.pgm \
+ out.pbm \
+ ref.pbm \
+ out.pgm
diff --git a/milena/tests/morpho/opening/Makefile.am b/milena/tests/morpho/opening/Makefile.am
index 3c150ff..2b3425c 100644
--- a/milena/tests/morpho/opening/Makefile.am
+++ b/milena/tests/morpho/opening/Makefile.am
@@ -42,3 +42,11 @@ structural_SOURCES = structural.cc
sum_SOURCES = sum.cc
TESTS = $(check_PROGRAMS)
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = \
+ approx/out.pbm \
+ approx/ref.pbm \
+ out.pgm
diff --git a/milena/tests/morpho/watershed/Makefile.am b/milena/tests/morpho/watershed/Makefile.am
index db715fb..be39ac7 100644
--- a/milena/tests/morpho/watershed/Makefile.am
+++ b/milena/tests/morpho/watershed/Makefile.am
@@ -27,3 +27,11 @@ flooding_SOURCES = flooding.cc
superpose_SOURCES = superpose.cc
TESTS = $(check_PROGRAMS)
+
+
+# FIXME: each test should clean its output, temporary output should
+# not be cleaned up by make.
+CLEANFILES = \
+ tmp_ref.pgm \
+ tmp_out.pgm
+
--
1.5.6.5
1
0
29 Jun '09
---
milena/ChangeLog | 4 ++++
milena/nodist-headers | 1 +
2 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index 59a4d76..dee69b2 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,5 +1,9 @@
2009-06-29 Guillaume Lazzara <guillaume.lazzara(a)lrde.epita.fr>
+ * nodist-headers: Remove mln/fun/binary.hh from distribution.
+
+2009-06-29 Guillaume Lazzara <guillaume.lazzara(a)lrde.epita.fr>
+
First draft of region adjacency graph demo.
* demos/graph/region_adjacency_graph.cc: new demo.
diff --git a/milena/nodist-headers b/milena/nodist-headers
index a168403..985b49f 100644
--- a/milena/nodist-headers
+++ b/milena/nodist-headers
@@ -14,6 +14,7 @@ mln/extract/sat.hh
mln/fun/access/all.hh
mln/fun/access/mean.hh
mln/fun/accu_result.hh
+mln/fun/binary.hh
mln/fun/binary_param.hh
mln/fun/component/blue.hh
mln/fun/component/comp.hh
--
1.5.6.5
1
0
* demos/graph/region_adjacency_graph.cc: new demo.
* demos/graph/house.pgm,
* demos/graph/house.ppm: new images used in the demo.
---
milena/ChangeLog | 9 +
milena/demos/graph/house.pgm | 4 +
milena/demos/graph/house.ppm | 4 +
milena/demos/graph/region_adjacency_graph.cc | 213 ++++++++++++++++++++++++++
4 files changed, 230 insertions(+), 0 deletions(-)
create mode 100644 milena/demos/graph/house.pgm
create mode 100644 milena/demos/graph/house.ppm
create mode 100644 milena/demos/graph/region_adjacency_graph.cc
diff --git a/milena/ChangeLog b/milena/ChangeLog
index 25e9ef7..59a4d76 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,5 +1,14 @@
2009-06-29 Guillaume Lazzara <guillaume.lazzara(a)lrde.epita.fr>
+ First draft of region adjacency graph demo.
+
+ * demos/graph/region_adjacency_graph.cc: new demo.
+
+ * demos/graph/house.pgm,
+ * demos/graph/house.ppm: new images used in the demo.
+
+2009-06-29 Guillaume Lazzara <guillaume.lazzara(a)lrde.epita.fr>
+
* doc/Makefile.am: distribute Doxyfile_devel and Doxyfile_devel_pdf.
2009-06-26 Roland Levillain <roland(a)lrde.epita.fr>
diff --git a/milena/demos/graph/house.pgm b/milena/demos/graph/house.pgm
new file mode 100644
index 0000000..f58ead1
--- /dev/null
+++ b/milena/demos/graph/house.pgm
@@ -0,0 +1,4 @@
+P5
+128 128
+255
+ILIIIIIIIIIIIIIILIIILLIILIIIIIIIILILILIIIIIIIILLLILIIIIIIIILILIILLILIIILILLIIILLLLLLLLLLLLLLLLLLLLLLLLIIIILLLLILLLLLIIIILLIILLII»»»œ»»Ÿ»»»œ»»»»»»»œœ»»»ž»»»»ž»»»»»»ŸŸŸœœ»¿¿œ»¿ŸÁ»¿ŸŸœŸ¿Ÿœ»œ»»¿ŸŸŸÁ¿¿ÁÁ¿¿ÁÁ¿œÁŸ¿œÁŸŸŸŸÁÁÁ¿ÁŸŸŸŸÁÁŸÁœœ»¿ŸŸ¿Ÿ¿»Ÿ¿»Á»œœÁœœœÁœ»Ÿ»¿œŸœ»»Ÿ»»ŸœÁœ»¿¿»ŸŸ¿»¿»œœœ»»œœœœœœœÁ»¿ŸŸ»œÁÁÁ»œ»Ÿž¿¿Ÿ»ŸŸŸ¿»»œœ»œ»œŸœ»Ÿ¿Á»œÁŸ¿Á¿ÁÁŸÁŸŸÁŸ¿¿¿ŸŸ¿Á¿Ÿ¿Ÿ»»ŸŸÁœÁ¿Á»»»»œ»Á¿œŸŸ»»»œœŸÁŸœ¿œ»»Ÿœ¿»»»œ¿¿Ÿ¿Ÿ¿Ÿ»»»»»Ÿ»œ»»œ»ŸœŸœŸ»Ÿ¿¿»»»œŸŸœ»»Ÿ»œœŸ»¿¿Á»ŸœÁŸœ»œž»œœœœ¿Á¿ÁŸŸ¿¿ŸÁ¿¿¿ÁœÁ¿Á¿¿¿»»œ»»Ÿœ¿¿»ŸŸ»ŸŸŸŸ»ŸŸœ¿Ÿ»¿œ»¿»œÁœ»¿»»Ÿ¿¿»œ»Ÿ»»ŸŸŸ»»ŸÁœœ»»¿œ»œ»»»»»»œŸ»»»»»œ¿œœŸŸ»œœŸ»¿»ž»œœŸ»ŸœÁ¿¿œŸÁ»»œœœ¿»Ÿ¿ŸŸœŸ¿¿ŸÁŸÁŸÁ¿¿»Á¿¿¿Ÿ»Ÿ»ŸŸÁŸÁœÁŸ»¿»¿œ»Ÿ¿»»Ÿ»»»»»»œ¿»œŸžœœ»»œ»ŸŸ»Ÿ»Á»»»»»œŸ»»œ»»Ÿ»œŸœ¿»»»œ»œ»»Ÿ»œœ»»»œŸœœ»»»ž»»œŸŸœœœŸžœ¿»»»œœ»»œÁœœœœœ»ÁÁœÁ»¿»»ÁœŸ»Ÿ»œŸ»ÁÁ¿¿Á»Ÿœ»Ÿ¿»œ»»»»»ŸŸŸÁœ»Ÿ»Ÿ»»œ»»Ÿ»»œœ»»Ÿ¿¿»œŸ»»¿»»»»»»œ¿»Ÿ»»»»»»»»»œŸ»»»»Ÿ»žœœœœ»»»œ»œœœÁžœœ»ž¿»»»»»»»»»œŸœœ»»ŸÁŸ¿ŸŸ»œŸÁ¿œ»œŸÁŸŸ»»Ÿ»»¿¿»ŸÁŸÁœ»œ»»»»¿œœœ»œŸœœœœ»»»»œ»Ÿ»Ÿ»»ŸœŸ»»»»¿»»Ÿ»»»»žœ»»»»»œœœœ»¿œ»»¿Ÿœ¿žŸ»»»»œ»¿»»œ»œœœ»ž»»»žœœ»»»Ÿ»Ÿ»»»¿ŸŸ»»œ»Ÿ»»»žœ»»»»»¿Ÿ»œÁŸŸ»¿œŸ»¿»»»»¿Ÿœ»Áž»œœœž»œœž»ž»œ»»Ÿ¿»»Á»»»œŸ»»Ÿ»»œ»¿»»»»»»ž»»»»¿»œ»»»»œ»»»œŸ¿»®»œ»œ¿œœ»»Ÿœ¿»»»»»»»œœ»¿œ»»»»»œ»»»»Ÿ¿ž¿œ»Á»œÁ»ŸŸœ»»»»Á»»Ÿ»»»»»ž»œ»»»œ»Ÿœœ»ž»»œœž»œœ»»œ»œŸ»ŸŸÁ»»»Ÿ¿»¿»»»œœ»»»ž»»»»œ»»»ž»»»œœœ»»œ»»»»»»»ž»œœ»»»»œ»¿œ»œ»Ÿ»ž»»»»»»»»»¿œ»»»»»œ»»œ»»»Á»žŸ»»»ÁŸ»»»œ»œ»¿¿»ž»»»»»Ÿœžž»œ»œœœœŸŸÁ»Ÿ¿»œŸ¿»»»»œœ»»ž»œœ»œ»»œ»»»»»»»»œ»žžœœœ»œ¿¿¿Áœ»ÁŸ¿Ÿ»»»»œ»»œ»œ»»¿»»»»»»œ»»»»»œ»Ÿ»»»œ»œ»»»»Ÿ»»ŸžœŸ»»»ž»»œ»»»œ»»œ»»»žœœ»œœœ»»»œ»»Ÿ¿»œ»»œ»œœ»»»»»»»œ»œ»»»®»»»»ž»»»»»ž»œŸœœŸ»»Ÿ¿¿Æ¿ŸŸ¿Á»ŸŸ¿œ»»»¿»»»»»¿»Ÿ»»»»Ÿ»»»»¿œ»Ÿ»»œœ»»»»»»»»¿»»ž»»»»œ»»»œ»»žž»œœ»ž»ž»¿»»œž»¿»»»œ»»¿»»œ»œ¿»»œ»»žœž¿¿œ»»œ¿»»»»¿œ¿¿ž»¿œ¿¿¿ŸÀŒšš³·ÅÅÀ¿¿»¿œŸ»®œ»»œ»Ÿ»œœ»œž»»œ»»»»»»œœŸœ»Ÿ»»œ»¿»»»»ž»»œ»»»»¿»»»»œ»»»œ»œžœž»»»»œœœ»»»Ÿ»Ÿœ»œ»»»¿»»»»»»žœÁŸ»»œž»»»œœ»»»»»œŸÁŸÅŒ³||ww³ÃÅŸ¿œ»»»»œ»»œ»»Á¿»¿»»œ»œ»¿»»»»»»»»»¿»»¿»»»ž²ž»»»»»¿¿»»¿»œœ®œ»»»Ÿ»œœ»»žœœ®ž»¿Ÿ»»»»»Ÿ»¿»œœ»»œ»»»»œ»ž»»œ»»œ»œœ¿¿¿ÅÁűtzpetzz}|||Ÿ¿»œ»»»»»¿»»»»»»»»œ¿»»»»»»»œ¿»»Ÿ»»»¿œ»»»»»¿»»»»»»œ»»»œ¿»œœ»»œ»œœœœž»»»»»»»»»Ÿ»»»»»¿»Ÿ¿œ»œ»»œ»žœ»»œ¿»»¿œ¿¿Àó|zzzk_\kff_dtpt|zz¿¿œ»œ»žœž»œœ»œ»¿Ÿœ¿»¿»»»»»»»»»»»¿žœ»»¿»»»¿œœ»»»ž»¿œ»»®¿»»»»»»»»œ»œœž»»œ»»»»œ»ŸŸ»»»»»œ»»ž»»»Ÿœ»»œœœ»²¿ŸÁÁ³wzzt`W_kwzwrpzwwm\Xdu¿¿œ»»»œžœ»»»»»»¿»ž»²»»»»žž»œŸŸ»»»¿»»»Ÿ¿»¿»ž»»œ»»œ»²œ»œœ»ž»»œœœžœœœ»®»»ž»»»»»Ÿ»»»¿œ»®ž»»œ»»œžœ»œ»»œœœœŸŸÁtwpt`Wfkprzkrwpwrykz¿œ»»»»œœ»»œ»»ž»œœ»»²²œ»»»»»Ÿ»Á»»»»»»»œŸ»œ»»œ»»»»®»»»»ž»œœ»œœžœ»»œ»»»®»ž»œŸž»œžœ»»»¿»»»»»»ž»»œœžœœœ¿œŸÁÁÁz`U_dpmwwzrwptwzptzz ŸŸ»»»œ»»œ»»»Ÿ»»»»»Ÿ¿»œž»»»¿»»»»Ÿ»¿»¿»»»»»»»»»žœ»»»œ»»œ»»žœ®œœœœ»»œž»»œœœ»œ»œ»œ»œž»»»»»œ¿œœž»»»»œœŸœ¿œÁÁÁ_drztwzzzzrzzzpkkzzrŠ»»»»¿»»œœ¿œ»»œ»»»¿œ»»»»»»»Ÿ»»»»»»»¿»®»»»»»»»œž»ž»œ»»¿»»œ®»»ŸŸ»žœ®ž»¿»œœ»»»»»»œ»»œ¿ž®»žœ»œ»»œ»œ»»»ŸÁœœŸŸÁ rpzr}zzrttrzzwrzrwrmŠŸ»œ»»ž»»»»»»»Ÿ»»»»œœž»»¿Ÿ»»œŸœ»»Ÿ»»»¿»Ÿ»»»»»»»»»œ»œœœœ»¿»»žœ»œœ»»»»»œ»ž»»»»œ»»»²ž»»œ¿»»»»»»œœœ»»»œ¿œ¿ŸŸÁ z}tr{zzrpzpzrrzzzzrz}«Ÿ»¿»»»œ¿»»»œ»¿»»»»»ž»œœ»»»¿»»¿»¿»»»»»»»»»»ŸŸœ»Ÿ»»¿œ»»»»»œ»»»»»¿œ»œ»œœœžœœ»»»Ÿ»»»žœœ»»»œ»»»»œœžžœžœœ»œÁÁÃkwttwrzkpyzprywtpŠ¿¿¿»»»»¿»»»¿œŸ»¿»»Ÿ¿»»»»ŸŸ»Ÿ»»»»»¿ž»»Ÿ»»»»»Ÿ»»®»»¿œœ»»»žžž»»œ»œ»œ»¿ž»œœ»»»»œ»žž®œ»ž»»¿»»®»»»Ÿ»œ»¿ž¿»¿œŸÁppzzprwzzpyzzzp|pzz²Ÿœœœœ¿»»²¿»»Ÿ»»¿»»»²»»¿Ÿ¿»¿Ÿ»»¿»»»»ŸŸ¿ŸŸ»»»œ»»»»Á»»¿»œ»¿»»»»»žž»œ¿œœžœœ»œ»œžœœž»»»žžœ»œ»»»»ž»»»œŸŸŸ¿œœŸÁpkrwrprrzzw{unjntp^²»Ÿœ¿»»»¿ž»»œŸ»»»»¿Ÿ»Ÿ»»»Ÿ»Ÿ¿¿ŸŸ»¿Ÿ»Ÿ»»œ»¿»»»»»œ»»»»»œ»»œ»œ»œžœ»»œœœœ»¿œ»»ž»»»ž»»»¿¿¿œœ»žž»»ž»œ»œœ»œ»œÁÁÅztprpwzzwzkjlhe^WŠŸŸŸ»»»»»»»ŸŸŸ»»¿¿ŸŸ¿¿¿ŸŸŸŸ¿»œŸŸ»¿»ŸŸ»Ÿ»œ¿»»¿Ÿ»»œœ»»»Ÿ»»»»¿»œ¿»»œ»œ»œ»žžœ»œœ»»»»®ž¿»œœœ»®žž»œŸœœœ»»œœœŸŸÁrzzpkztww~zzzz~lell£©ž»¿¿¿¿»Ÿ»ŸŸŸŸ¿Ÿ¿Ÿ¿Ÿ»ŸŸ¿»¿¿ŸŸŸŸŸ»¿ŸŸŸŸ»»¿»ÁŸ»ž»œ¿»»»»»»»»žž»œ¿»žœ»»®œœžž»»œœ»»»žž»ž»œ»»ž»»»»»œ»»ž»»ŸœÁÃpzptprzzwwzpzÊÊ~hkte\ku£°»ŸŸ¿ŸÁÁ¿¿ŸÁ¿¿¿»ž»ŸŸŸ¿ÁÁ¿Ÿœ»»Ÿ»»Ÿ¿Ÿ»»»Ÿ»Ÿ»¿¿»»œ»»œœ»»»»ž»»œ¿¿œ»žž»»œ»»»»»»œ»œœœ»žžžœ»œœœœ»žŸ»»œÁŸÁpwyzpzzwzy{zz~{ääÊÆŠ~lkeee\\ar©ŸÁŸ¿Á¿¿Á»TZn¿Ÿ¿œŸ»ŸŸŸŸŸ»œ»¿ŸŸ»»»»¿»»»»»»»œœ»»œ»»»»»¿ž»»»»»œœ»œ»œ¿»»œ»»»œ»»»»»»œ»»»»œœ»»»œÁÁÅrrzwwpzzwzy{ßääáØÌÅjeujajjla\WdjplŠŸŸ?CcÁ¿ÁÁœÁŸÁŸ¿ŸŸ»ŸŸŸ»»Ÿ¿¿œŸ¿»Ÿ¿¿¿»¿»œ»»»œ»»¿¿œ»ž»»œ»»œ»»»Ÿ»»»¿»œœœœ»œ»®ž»œ»»»»œœœœŸÁpppzwwz}zwpF¬ßäääÞŶa`je_hkujeutoojeae4,²¿¿Ÿ¿¿¿¿ŸŸ¿Ÿ»Ÿ¿»»»»Áœ»Á»Ÿ¿»»œ»¿»»¿»»œœž»»œ»»œ»œ»®Ÿ»»œž»ž»œ»»œ»»¿»»»»»¿ž»»»»»»ÁÁÁwzrrrzzzzzwF1H»ÞäääØÅ¶`ojhteeeeeea__koewah\ey²¿¿¿¿ÁŸŸŸŸ»¿ŸŸŸ»Á¿¿Á»»¿»»Ÿ¿»¿»œ»œŸ»»¿œ»»¿»œž»ž»œ»»¿¿»œ»»œ»»»»»»»»»»»¿»»œÁÁÁppzwz~z~~{kz~~k&([ÊäääáÒŶedheeee_e__oeeo}d\_eelruвŸÀ¿¿Á¿ŸœÁŸÁŸ¿ŸœœŸœÁœœ¿œœ»œ»¿¿»¿œ»œœ»»»ž»»»»»¿œ»»®»»œ»»œœ»»»»»¿œ»»ŸÁÅppwzpzzrzz~t:"1HlÌäääáÒŰrj\eooeouthheedeeejeoeee[[\jŠŸ¿Ÿ¿Ÿ¿¿ŸÁŸÁÁŸ»œÁœ»»¿œ¿»œ»¿œ»»ž»»»»œœ»»œ»ž»²ž»œœ»œœ»»œ»»»œœŸœ¿ŸÁÅ}ppzpw~wzwz~w>**MMH]ÖäääÞÒ̰keeaeejloueojekkklok_eeeU\ejdntr²¿¿¿Á¿¿Á¿»¿»¿œŸÁŸ»œ»»»»œ»»»»¿»¿»ž²»»»»®®ž»¿»»œœœ»œ¿œœÁŸ¿ÁÁÁzwppwzrrz~zzzzwww_04puja\\ßäääÞÒŰrjelhe\elddoerueeeoeeeee_joh\_[adadlв¿¿ÁÁ¿ÁÁž¿Á»ŸŸŸ»»¿¿¿»»»»¿»»¿»²œ»ž»œ»»œ»»»»»»œ»»œ¿»ÁÁŸzwkpz~yrzrprw~k::r}pU?19CßäääÞÒÅ«wjnedekojeutjjj_\ejee\\ejeeaedjjl\eaeelrŠž¿¿¿Á¿¿ÁÁ¿Áœ¿Áœ»»»»»»»»»»»»ž»œœ¿œ»»ž»»»»»»Ÿ»¿ÁÅÁkzpwz~pzyyyk::W??:44111J¬ßääêÞÒÅ«ztoejhdojekkl[jjeelwwedljelele_e\dehe[dehhuŠŸÁÁÁÁÁÁ¿Á»»»ž»»®»»œœ®®»œ»œ»»»œŸ»»¿»»¿œ¿ÁÅÁrkw~ww~~rz~~~~zwpF4?>FFFF::114P»ßäääÞÌÅ¥uojl_jelkoeoelluu}roejj_leje\\ehelljahe\\elruв²¿¿»»¿ž»»»»»»»»œœ»»»ž»¿»»œ»œ»¿ŸœœÁÁÅppkzwzzw~pzww_4FHM>>FFF??114U»ääääØÅÅpojoleejrzzokheedeeeklheotuheoleooeheeheeljka^ahlhr»ž»»»»»œœ»»»¿»ž»»œ»»œ»»»»¿»œœ¿ÁÅÁzrpzry~rwzpk~w>FHFFHFMM>::44*4_ÊßäääØÀ¶juoueeeojee`ekkjjooolehWloje_eeeoeooljljloeeeejja»»»œœ»»ž»¿»»²»»»»»œœ»»»»»»»ŸœÁÁÁŸzwpzzywyyy~wpry{z:CFJHPMMFF>F::44,4jÖääêáÒÌÁd_edelte_\e_tookekle_Ueuljeekuttleojje\adddelul»»»»»»»»»»»¿®²®ž²œ»œž»»¿¿»¿Ÿ»ÁŸÁ¶kzzz~wyr{ywyzp|JJNPMPPNPFFFFF???114uÖääääÒÒ¶\eeolotokeekje_hutue_eolj\ejojeeelueaehjoohko¿»»»»»»œ²»œœ¿¿»»»ž»»»œ»»»»»ÁœÁÁÁwrppzwwwkwz~~~www}dJWWWUWMFFFJFF>>:?4*1?ÖääääØÒ°wleeeoje[ktojjj\jtojeeejlkuojeeeepule\hekh[e»»žœ»¿»»»»®»²®»»»»»»»»¿»»»»»ÁŸŸ³~wpw}pz~~zwpzwyy~kMXWMPPPMMFPMJU>F?F4494?ßäääÞÌŰrejeeoeekjoddoeooeW_eulllle_e_eljle[hhl_j\»²»»»žž»Ÿ»»»¿žž»¿»»¿»œ»¿»»œ¿Á»ŒŒppwzww~~zwzyywMMWPMPNPWMJMMMPF>?>>4141J¬ßäääÞÌÒ©wjeUkkeejkotjjokeleejekohheolhejoeeeuure»»»»œœ»»»ž»»»»ž»œœ»»»œŸ»œ»œ»»žÐÖwwwzzw~z~~y~zwwtWWNPMMJPWMM>JJFH>>?:::111P»ßäêäØÒÅ¥rle_eje_eouoeeuoreelhe__lklojldeej_lrl»œ»œ»»»»»»Ÿ²»ž»»»»»²»žœ»»»ŸŸ¢«ÒáÖpwzywzwzw~~z~pywyydWWPPNMWWMFNMMFM>?FMF>:114[ÊßäääØÌ¶rjd_ojedt}joeeheeljljaeouzuolejelluo»»»»»»ŸŸ»»»»»¿žž»œ»»ž»œ»ÁŸ»® ÌäÞwp}{zzzw~~pwwry~pWPWHHWWWPPMFMFMFFMM>>:141:oÖäääáÒÀŸoo|zne_ejeejeee_\jlloeektulleleeto»»²Ÿ»»»œ»¿Ÿ»®»»ž»»»»»œŸ»ŸŸ®Ìäá_rzw~zww~~y~wppy~~zyp~y~kUUPP[MWPPPFHMMFFFF>>::4149ßäääáÒ̶zaeotzo_juoleheaellee[euuojhejorlœœ»œœœž»»»»»»»²»»»ž»»»œŸŸ©ÌßáMdwzwpz~~www~y~pwyyp~~pdP_WMPWWMMFFFHFF>FHF?::14,ÞÞÞáäØÌŒÌÑÅk]jjlehueeroejeeejluukoeejl»»»»žœ»»»²»»»¿œ»¿œ»»»»ŸŸ»Ìäá QM[zwpzw~~ww~w~wry~~y~~pkWWWMJPWWPPMPFFJFFF>::144aßÞÞäßääÞŠ«Š©·ÇÖËÅ ujldeojjj_eooutueeelu»ž»»»œœ»»»»»»¿»®»»»»œ»»»Ìäê³QMJ_pwz~zw~wpw~wzwwz~~yyp~wpp_WWMWUWUPMMJF>?FFH>:44NßääÞääÞwŠŠŠŠ·ÇÖÖÅšnelrlzttreeehjj»»»»»Ÿ»¿œ»¿»Ÿ¿»»œ»»œ»»»~ÌÞê¿WQHHwwky~wyy~ppzz~~zwyywzyzzwWPNMWNNPMHFHMH>F>>:0NÞääÞä䨥rnjwªŠŠ©²ÊÖËÅ jjdeoorra»»»²¿»»»»»»Ÿ»»»»»œ»¿ŸŸÆÞêË]QMH[kpwrz~wpzyzr{~~wwzwy~~~wzz~~yzwdWMUP_WM[NPPMMF:F>>[ßäääÖ©]awêØnepw ¥Š©»ÇÌË· {eeh»»»»»»»»»»žžœ»®»¿œ¿Ÿ»ÆØêÐaUPHW:_wyww~yywwzz~pyw~~y~wzzyzz_UPMMWPMMJMPJMFJ>gÌ·eWQWQUMHHCQ²ßÖwrel}ŠŠŠ©·ÊÌËœ»»²Ÿ»»»»»»»¿»œ»»¿»ŸžÒêÞe[WQ]C*_w~pw~w~ywwwpy~~~z~wrz~~tWWMPWPPPPPFMMFFPUP?:99:4?CHWPUÊųQUUWh} {rnp} Š¿¿»»»»»»»»»ž»»»»ŸŸÁ¢«ÒäárWQQ]H*4kwzwywywz~wzppp~y~~~~zzzzz~~kJJPWWWMMUPPMUFJFF4111*&""&:¿eW[[`[[_U[__uunnw»»»»»œ»Ÿ»»»»»»¿œŸ»£ÌêáuWWU]H::>yywwzzzy~~wpp~wywzzzzzpz}pz~~w~_PFPUPU[raCF>>:444*&,WnW*"*1:MU[d_d[[_[U__u¿²»»œ»œ»ž»œ»¿»»ÁŸ®ÌäáWWQ[Q4:>>pywww~z~zw~yppwwz~~zww~~zppzU`e «WJHF?F>>400lj:41,*1**""14>MU``dd_[UPU[_»œ»»œ»ž»Ÿ»œ»»»»ŸžÌäáW[U[W044>Hp~~~ww~~wwpw~pp~z~z{}z~zzzzzrUŠŠ_PMPFH>F:4JeQ:4410*44044*0**,*14FF[_`e`[»»»¿»»»Ÿ»»»¿»¿Á¶Ìäá§[[WW]14:>>Fppwww~zwpp~yy~~~~~~yp~zzz~zztzmM josMNFHPJFF>4uw:14:?:4::44:441*041:,***,1:J»»Ÿ²œž»ŸŸ¿¿»¿ŸžyÀäê±`[[[`41:FFHMwpwwwwwwz~ywppyzwppw~yyk~zytzzzzwz{~tŒeejoosy_UJ44PHMF>ªe94C:J>>?>?>::4>:::440440404»»»ž»»»»»»Á¿»»rÆÞêÅ``QW]94:>MMMWzwpp~~pwz~wzz~pw~~pww~~ztttzzzp~˰jZossyy,&JFJF4 Œ~1CJw>CJ>F>>>?>FF::4444>44>»»»»¿Ÿ¿»Ÿ»»Ÿ»ÀÞêËedWWe:>>?>>FMpw~zwpzwpw~~wpwzywzzdozz w~ruzzyzrzä¶o]ssyѲž?>FFFCC³ÅdU44>QFHHHH>MFMFF>F>HJ>>>44>»ŸŸ²»»»Ÿ»¿Á»°ØêÐe]W[e:4>?MFMMpwpz~zpww~~zw~yzpzyw~~_dl\«ZkszpkzyrêÅ~nysjM[:JMMNJCžÅ??F:?>>NHNJHPMMPF>FJJFF>>>>:»œ»»Ÿœ»»¿Ÿ»«ÖäØr`dWe?1>:>FMM_kwrww~~ww~~yyppyyy~www~}WC:Cžwsy~zkwyšêØz
MF>FHMWNJžÅ?F>MHHJJPMWFMHMMFFFUJJMPHHJJ»»»»»Ÿ»»»»ŠÒêá{]]ek?4>>H>HMkwzppwwzy~y~~~~yypwwzz n9CWسys~yyywryšêê
z[PMHFNPJCÀÅFHNMMNWJJFHHJNWMFFFMNMNPJJFJœœ»»¿»œŸ»£ ÌääØepenH0:>>F>Fkpw~w~~~ww~~~ywz~~~~yp~~yzË¢rJWhäÌyy~~~~wwršêê©
~_PMPMNPQJÆÅ>HPPMMNMMNWWPMNPMMMUPUPWFHHJ»»»»ŸŸ»»žÌÞÞáÅQ>FFFMM\pkwz~~~ww~~wwyyy~~~yÖŒpPlhßÒzywpw~{µêê¶
zWPUPWPNQJÆÐPJP[NP_W_P_MWWMMMMPMPMPWNNPP»œŸœ»»»»ÀÅÞäÞáÞž`MFFFMd~zkkoowzwzzp~~~wpww~yyw~yÖËwCeläÒ~yww{œêêÁ
__WWW\dkPCÆÅMNWW[WWPWWWWPPPMPWPWMMWP[PPW»»»œ²»»ÒÞÞÞÞÞääÞŠ`FMMMWww4`~pww~ywyy~yyyyypwßË\jyäËy~prrœäê¶
P[WrwwwNJÌáMWP_PPPWWWP[PPPPMNWNMMPPPNNH»²»®»»»ÆÌÞäÞÞÆ»ÖŒ«dFHMWwpwzM]p~wy~wz~~wwy~yy~wyywyßËaryßËpz~~~zzœêä¶[pWp[NßêWMMWWWW_W[[WMM[W[WNPMMPWNPPW»Ÿ»»¿»¿ÁÁÌŠre]ahaMMFFMNywpwd¢prww~y~w~~wyp~~~~~y{ßËapäÒ|wpwwwœê䌩kpdwr~kWêêWWMWWWWPWWWNWNW[[WPWPWNW[[[W»œ¿ŸœŸ»¿œ¿¿»»°¥M1:MMMkzyzrzŒrwyy~wzw~~~zkyyz~zßÐppäË~~ywpzzœê꟢££zkywzpWêê[[WWWMWWNN_NNWWWWWWNNW[WPUNW»»»»»¿»¿Ÿ¿»¿Á¿ÁÁz*FJWpwpw~zärwz~~www~~www{äËryäТzyywrrÇä䟢zpw~~yz}zêêWUWWPM_WWNWWWWWWW[WWU[PWNWWW»»œ»Ÿ»»»Ÿœœ»ÁÁÁÁ¥n?MkpkpzÞ}wz~wzwwyy~wyykräËäÒ¢zz~~Ñê仩¢yy~zpy~êêwpWUWdd_dWUN[[W_MW[W[WNWW[WW»ŸŸ»»Ÿ»²»»¿Ÿ¿ÁÁÁÁj~zpzzä±}zyw~ypwwwww~~y{ßÐäÒ¢wzrrwwrÑêäŸw~y{zwpz{êêwW_~zztpkd_WWWWWWW[W[WPW»ž»»»Ÿž»Ÿ»»»ŸÁ¿ÁŸ«u§M~zzzwr£ßÅw~z~~ywpww~~~w{äÐäÒ¢«zrwwwzÑêäŸkpkz~yzêê~wpd~wwwpkdWW[WUWX»žž²»»»»ŸŸ¿ŸŸ¿ÁÁ¶|Ww~z~~räËpwywz~~~~~~wpwyßÐêØ ÌÖzz~wzzÑêä¶£zzwzêêzyy~ztzkkd\»»Ÿž»»»Ÿ»œ¿Ÿ»¿ŸÁÁ²zdywwzw{£äÅzwwy~yy~~y~ppyw~pwäЊÅÖääßßÖwpwzzyrÖêä»}~zzwzzêê{~{zzz»ž»œ»»»œŸ»»»ŸŸÁÁŶpkp~~zw~~£ßË~w{yp~y~wwppy~yppßßßßÖÌÌÆÊÅÅwwkwzÑêä¶£pw~~y~wräê~yzwr~}~w»»»»»»»»œ»»»²»¿ÁŲdkw~~y~wzšßÅp~~wz~y~wwwwpp~ypy~£¿ÌÊÌÆÆ»©eUk~~yyppzßää¶£wpwwzyêê~~wwz»»Ÿ»»»²Ÿ»²»Ÿ»ŸÁÁÁ«[kkwzzšÖ¶p~~~~~wyyz~pwr»¿· }WQUdpppww~~wwßê䞣y~wwwzz~z£êäyy~{^»»»»»Ÿ»»»»Ÿ»Ÿ»ŸÁÁ«__pw~~w{¯ßpw~y~~y~y~~y~~~~wpppdUWdkppkww~~yzywzwpßäÞ°wy~~~wppr£êä~wy~}z{tW^\c»œ»»»»»œ»œ»»Ÿ¿¿ÁÁŠk_ww~z~yw¯ßywpw~~~ww~~yywyy~~wpww~~pwzww~ywrwpwz~ßäÞ°££pyy~~z{£êä~zy~~{ePP^c\\r»»Ÿ»²»»»Ÿ»»¿»ŸÁÁÁpkwwwz~³Öwyy~~w~~pwppwz~yyy~pzpw~~wkw~~ykpäêÞ°£wrwwz~³êêwpy~~~yrzW\aecca\ajo»»»»»Ÿ»»Ÿœ»ŸŸ¿¿ŸÃzz~wpzwšÇ¶~wyy~yww~~yypy~wwwyy~~~ppzzzyzw~~~{yßêÞ°£~yzzrwz¯êêwy~~~~~y~{WcZaecaauu|tp_»»Ÿ»²»»ž»»¿ŸŸŸ¿ÁÅŠpz~zywpzÊÅ~wpw~~y~wy~y~ppwyppwwzwpw~~yzkw~zzß䨰wzzz~yzr{µêêw~~~wz~ePa^acac\jtukeehe»»»Ÿ»ž»ž»»»Ÿ»¿ŸÁà pw~wptd_w~wyy~~~~ww~yy~~ppyyy~p~~yppw~~~yzwwäêÒ°£|rwwpwwz~œêäzyyzzWW\\ce\^o|zu[k[keed__»»»»»»»»»»Ÿ»²»ŸÁ¶zwzzzzzwpwwp~pwwwwzwyyyy~~y~ywy~~~y~pppwyw~rrßêÒ°£|z~zwwtzzzœêêz|W^ZaaWaW_okokooa_h\_[eee»»»»»»»»»»»¿»»»ÀÁyzpzw~wwwpw~yyzw~~wypyy~yyy~yy~~yyr~z~wwpzzzkäêÒ®££zzy~wzmœêêzU\aaaZac_eoouddehjl[ee\Wde[\»ž²»žŸ»²²»²»ŸŸ¿ÁÃ~zzzzww~wzwzwz~~ww~~~zy~yyyyww~~~y~~ywrrtz{äêÒ°££|pwy~~yyz¬êêka`WWU[oooeeee_[eaeedeeaW_\__»²»»ž²»»»»²»»»»»Åzz~~wpwz~~~www~~~~~www~~yyyppky~~p~~~zppwy~~ppppzäêÒ©££z~y~wy~wUW[êêzW\eot_kokkkoke_e[}kedd_aj[__»œžž»»»»»²»Ÿ»»ŸÁÅzww~y~pwy~zwwwwwwwpwy~~wy~yyyyypwp~~wwpprw~zzzzzêêŰ££zzdWUUZCž?_ojjjtj_[eeeeedejee[[__[jd_e»²»»»»»»²»»»²ŸŸÁÅww~~www~~~~~~w~~zwwy~y~y~~ywwwp~~yywpww~~~zäêÅ©££££©tWPPWPPaQWojd[eeeddejee_\ej\W[e\[_ee`[ejd\»»ž®»»»»»ž²Ÿ»ŸŸÁŸwzw~wywwzp~~ww~w~~~~~yyp~~yyypwpzzz~~wtpzz}ääŰ©££©£reappwe_d_e_de`_e_edddjW\U_ddjhnnjdk¿Ç˪»ž»žŸ»»»®ž»»»Ÿ»ÁÅ~~ww~~z~zwww~w~~w~~~wppp~yypy~~ywzzpzzzzzzzppz}£äêÌ©£££rjodeeeoeee[eedeUd_U_jjde`a``jz±ÅÑÆ»© »ß»»²»»»»²²ž»»¿»Ÿ»Å~www~y~~zwww~pwpy~wkwyyy~ppwpw~~~yzwwzzprkêêÅ©yrjrt_`e_ed_[e[_eW\jndaUU[`zÅËÊ¿§¢¢¢Öž»»ž»ž»²»»»»Ÿ²ŸÁÅzz~~ww~~zz~ww~~pww~ppwykyy~~wppkpzw~zwpwz~~~wrêßjejdjdj_U__[U_eeodjd[[t³ÅÊÌdz wpj]Rau»»»»»»Ÿ²»»»»»ŸŸÁŒwww~~www~zzz~~~~yw~~~~~~yy~yp~~~zwwpwywwrwz~zzzjda\jeo`dtjotneM[e§¿ÅË¿©wra]ZÞny»»¶»»»ž»²ž»»œ»ŸÁ¶ppww~~~w~~zww~~~~wypwpyyw~~zwwpzw~ppkdada_d_etjdUH[k¿ÊÊ»³ wjeaeku³äÃ]QMHHG»ž»ž»»ž»»»»»²Ÿ»ÁŸwppww~~z~ww~~~ywwpyyyywpkywyypwzz~~wwpztk_jj`dnQW__³¿ËÊ»§ ue]`knn``MMEnËØlRRRMM²»²²»»»»»²»»»»ŸÁ¶z~pppzz~w~www~~~~wwppppyypkyywywppwzjd`WMWa ¿ÊÊDz©wne]]er{wn`WHHMQRXRWWRMÅš{M(&&»ž»®»»®»»²»²²¿ŸÁŒzz~zppwzw~wz~pwwzzw~wwy~w~~y~y~y~wpwwtUQQk§¿ÊÌÀ³ re]]akr{n`QQHMHMQRWXQMM?11&"&"?zlG»ž»»»®®»Ÿ»»ŸŸ¿»Ã¶twwwww~p~zw~z~~yy~yyppwwpw~£³¿ÌÆ¿© n]][]kur]WMMMQQRQRQRQQH?91*""*""**,"":\w»²»»»»®»»»Ÿ»»ŸŸÁ¶rw~~~wzzz~pww|www~ywwp~ppw~wpwzwj]]arrrr`WQHHMHQRQMQWMH?9*&&&"*&"**"**"""4,*1*****?Qn»ž»²Ÿ²»Ÿ»»»»ŸŸŸŒ³wwww~~~wzzpwwyw~ywypyywzzwaW]enuudWQMMHMMMRRQWMMH11"*""*******140****110?1,**114*1111»¶žžž»²»»»¿ŸŸŠeowwwwtzwzzzz~~zz~~~yyy~~~yyyyyy~~prn`U[dddQHHMMMMM=41&&&"&****&******111441*00**44419*4:0111*&0,ž»»»»»ŸŸŸŸj[\Q_ww~ppww~w~wwzzz~ww~~~y~yp~pwy~~ptwk_QMMH?M??1*&*&&&&1"""1**1,*1*010*0*11*11:410444:4:44:4::4?104»»ŸŸŸŸ«rd_\\C?9Qz~~w~wk~~~wpww~~~zww~~~~~~wppyy~wy~~~y~pwt~wd***&*"*********491114111?4:44>4::1::???>::44:>:?P,0,,ŸŸŸ¢yj\\dWdUP\=C_w~~wzw~~~pzpww~~wwz~wwwwpppyypppkwz~~~~zz}rz~~0***1*411:1*141?4011>4::444::4:>:>>FF::???::::?e1=",r`\aa[[_[\[WH?Qkp~w~wpw~zzwww~ppwyyy~ywzzywwpzy~~~pww0**111111:44:44:4::::44:>F::>:::>??>:>F????:?CCaHW4,ee`Q[djed\a\jz ±wwww~~wwpww~~~~zzzw~~~yyyyw~~~wrwkpzzzyww~yŠ440::444?:??:?:?>:??>?:??>H>?>>MF:>CFFFM?FFFF????1?,4d``WUWWnz³¿Öá³wwww~~~wywz~~zwwwzwpywpyp~wwwyyyywwzpwww1:::9:??:????>>?:?F?F?:>?>FF>FFMPFFFFF>F\CF?FFF??MXlJ³¿ž³Šßßääê¶wwpwz~~z~zpwzw~~zpww~wpwppwy~pypppw~ww~~~pwwzw~~F::>:?:::?>>F>>H:??:>>F?F?FF??F?MJFFFMFFFFMFF??>Ce¥]~rea²ääê¶yww~~~wwtyw~z~~~wpy~wwww~~~ywwwwwy~~~~~www~k>:>>?>?:>F?F>>>M>>:?FF>JFFMFMFFFFC>?CMFMFFFFFF?FuuQrpe]apwwwwaal³·Çwwwtzzwwwwttz~wy~y~www~~~~~~~ypwwy~~~~ywwd>>>F>?FFFF?M>?FFMFFJMFFJFFFFFFMFJFFFFF>FFFFFFJFWy\hQwe]WMMHHHHHRXtppz~~~~ywpzzp~~wwtw~w~z~y~y~zwpwwww~yyy~y~yywwwp~~y~~p>?:?FFFFMFFFFF>>F??MPFJPHFFFFMFMJFFPMFMMF>JPFFCQNTNUQMMMMW]]`nkkpnÅwpwww~wwwzpzw~ywpwwwwwwppppyy~wpwpwz~wyw~zwwwz~~pF>?>FF??FFFMJ?FF?F?FFFPPPPPFHMFFMFFFFFMUPPPJFPFPF\9lkrwwwwwwwpc\wywpww~~rwppwp~~~~ppkppyyy~~yywp~y~~w~~z~~~wwwwwdMF>>FFF>H>?F?MFJFFMFJJFFFFJFMFJPPMMFFFFFFFMPJPMJPF==uyjWQ?4&&"*wyywww~~~~wwwwwwzzpp~w~y~~~~~wwwpyyy~yy~~y~ywd???FFJFHFFFJQHJF?FPPPMJMMMJJH>FFMMMHUJJJJJJM?>FFFC=?T,((,,&"~~www~p~w~~~zz~wpptww~~~~yyyyyypw~yy~~~yyyyzpwwzw~~_FHF?HFJ>MPMFFFMFFPHFMQMMMWPPPJHHWM>FPPPPJFPPFJJFMXNh{uaN=00(&ppzwz~~wwpywzy~~~~~wwwwwwyypkpp~pppkpy~~p~wwwwzw~~~~dFFFFFFFH>JHFMPFPPJMFPNMFMPFFHNWPMWPPMJHNNFMJPJPUPQ]Nl²¿ŸŸŸŸ¶²°©uhN?ppkwwt~zpwwzww~~zz~~wwwkkppwwyypywwk~pww~~y~~y~wwywWFFJPJPNJFFFFFJPFJNJMMWWPMMMPNFFPFMWNMMNNNJNMQJJWJWGuŸŸŸ»ŸŸ²Ÿ²ŸŸŸ²¿ŸÀwpwppwww~~~zzwwwwwz~~wppyww~wyyww~~~wppwwyyy~~~~~~w_F?FMFJJFNWPPMUMPFFPPJPMMMPMFPMFJJFFFMMMPPPJUUPPPJJH\Ÿ²Ÿ»²Ÿ»»ŸŸ²¿ŸŸŸŒzpwwwwpzw~zzzwzpppzzw~yyy~ywywwpywyy~~~wywppyyy~~WFPFMJ>?FFMMPPW_PPPPPJJPFNMWWMPMM_WMMMMMNJJJJMMMPPMQPWŸ»Ÿ²»»ž»Ÿ²Ÿ»²Ÿ¶¶ww~pwpww}wzzzwzwwwwwwwwwwwppppkyppwww~~~ypyyyyw~z~~WPFMPMMFF>MUMMQMFWPJMMPWMMMMMFMFJFMMPMMNMWUMP{{MPFFJJW
\ No newline at end of file
diff --git a/milena/demos/graph/house.ppm b/milena/demos/graph/house.ppm
new file mode 100644
index 0000000..7406cc5
--- /dev/null
+++ b/milena/demos/graph/house.ppm
@@ -0,0 +1,4 @@
+P6
+128 128
+255
+Ý€ÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝ€ÞÝÝÝ€Þ€ÞÝÝ€ÞÝÝÝÝÝÝÝÝ€ÞÝ€ÞÝ€ÞÝÝÝÝÝÝÝÝ€Þ€Þ€ÞÝ€ÞÝÝÝÝÝÝÝÝ€ÞÝ€ÞÝÝ€Þ€ÞÝ€ÞÝÝÝ€ÞÝ€Þ€ÞÝÝÝ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€Þ€ÞÝÝÝÝ€Þ€Þ€Þ€ÞÝ€Þ€Þ€Þ€Þ€ÞÝÝÝÝ€Þ€ÞÝÝ€Þ€ÞÝÝÅÜÅÜÅÜÇäÅÜÅÜÊÜÅÜÅÜÅÜÇäÅÜÅÜÅÜÅÜÅÜÅÜÅÜÇäÇäÅÜÅÜÅÜÄÜÅÜÅÜÅÜÅÜÄÜÅÜÅÜÅÜÅÜÅÜÅÜÊÜÊÜÊÜÇäÇäÅÜ€Æä€ÆäÇäÅÜ€Æä€ÅÛ¥ÊÛÅÜ€Æä€ÅÛ€ÅÛÇäÊÜ€ÆäÊÜÇäÅÜÇäÅÜÅÜ€ÆäÊÜÊÜÊÜ¥ÊÛ€Æä€Æä¥ÊÛ¥ÊÛ€Æä€Æä¥ÊÛ¥ÊÛ€ÆäÇä¥ÊÛ€ÅÛ€ÆäÇä¥ÊÛÊÜ€ÅÛÊÜÊÜ¥ÊÛ¥ÊÛ¥ÊÛ€Æä¥ÊÛ€ÅÛ€ÅÛ€ÅÛ€ÅÛ¥ÊÛ¥ÊÛ€ÅÛ¥ÊÛÇäÇäÅÜ€ÆäÊÜ€ÅÛ€Æä€ÅÛ€ÆäÅÜ€ÅÛ€ÆäÅÜ¥ÊÛÅÜÇäÇä¥ÊÛÇäÇäÇä¥ÊÛÇäÅÜ€ÅÛÅÜ€ÆäÇäÊÜÇäÅÜÅÜ€ÅÛÅÜÅÜÊÜÇä¥ÊÛÇäÅÜ€Æä€ÆäÅÜ€ÅÛ€ÅÛ€ÆäÅÜ€ÆäÅÜÇäÇäÇäÅÜÅÜÇäÇäÇäÇäÇäÇäÇä¥ÊÛÅÜ€ÆäÊÜÊÜÅÜÇä¥ÊÛ¥ÊÛ¥ÊÛÅÜÇäÅÜ€ÅÛÄÜ€Æä€ÆäÊÜÅÜÊÜ€ÅÛ€ÅÛ€ÆäÅÜÅÜÇäÇäÅÜÇäÅÜÇäÊÜÇäÅÜ€ÅÛ€Æä¥ÊÛÅÜÇä¥ÊÛ€ÅÛ€Æä¥ÊÛ€Æä¥ÊÛ¥ÊÛ€ÅÛ¥ÊÛÊÜÊÜ¥ÊÛ€ÅÛ€Æä€Æä€ÆäÊÜÊÜ€Æä¥ÊÛ€Æä€ÅÛ€Æä€ÅÛÅÜÅÜÊÜ€ÅÛ¥ÊÛÇä¥ÊÛ€Æä¥ÊÛÅÜÅÜÅÜÅÜÇäÅÜ¥ÊÛ€ÆäÇäÊÜ€ÅÛÅÜÅÜÅÜÇäÇäÊÜ¥ÊÛ€ÅÛÇ䀯äÇäÅÜÅÜÊÜÇ䀯äÅÜÅÜÅÜÇ䀯䀯ä€ÅÛ€ÆäÊÜ€Æä€ÅÛÅÜÅÜÅÜÅÜÅÜÊÜÅÜÇäÅÜÅÜÇäÅÜ€ÅÛÇäÊÜÇä€ÅÛÅÜ€ÅÛ€Æä€ÆäÅÜÅÜÅÜÇä€ÅÛ€ÅÛÇäÅÜÅÜÊÜÅÜÇäÇäÊÜÅÜ€Æä€Æä¥ÊÛÅÜÊÜÇä¥ÊÛÊÜÇäÅÜÇäÄÜÅÜÇäÇäÇäÇ䀯ä¥ÊÛ€Æä¥ÊÛ€ÅÛ€ÅÛ€Æä€ÆäÊÜ¥ÊÛ€Æä€Æä€Æä¥ÊÛÇä¥ÊÛ€Æä¥ÊÛ€Æä€Æä€ÆäÅÜÅÜÇäÅÜÅÜ€ÅÛÇ䀯䀯äÅÜ€ÅÛ€ÅÛÅÜÊÜÊÜ€ÅÛ€ÅÛÅÜ€ÅÛ€ÅÛÇ䀯ä€ÅÛÅÜ€ÆäÇäÅÜ€ÆäÅÜÇä¥ÊÛÇäÅÜ€ÆäÅÜÅÜ€ÅÛ€Æä€ÆäÅÜÇäÅÜ€ÅÛÅÜÅÜÊÜ€ÅÛ€ÅÛÅÜÅÜ€ÅÛ¥ÊÛÇäÇäÅÜÅÜ€ÆäÇäÅÜÇäÅÜÅÜÅÜÅÜÅÜÅÜÇä€ÅÛÅÜÅÜÅÜÅÜÅÜÇ䀯äÇäÇäÊÜÊÜÅÜÇäÇäÊÜÅÜ€ÆäÅÜÄÜÅÜÇäÇäÊÜÅÜÊÜÇä¥ÊÛ€Æä€ÆäÇä€ÅÛ¥ÊÛÅÜÅÜÇäÇäÇ䀯äÅÜ€ÅÛ€ÆäÊÜÊÜÇäÊÜ€Æä€ÆäÊÜ¥ÊÛÊÜ¥ÊÛÊÜ¥ÊÛ€Æä€ÆäÅÜ¥ÊÛ€Æä€Æä€Æä€ÅÛÅÜÊÜÅÜÊÜ€ÅÛ¥ÊÛ€ÅÛ¥ÊÛÇä¥ÊÛ€ÅÛÅÜ€ÆäÅÜ€ÆäÇäÅÜÊÜ€ÆäÅÜÅÜ€ÅÛÅÜÅÜÅÜÅÜÅÜÅÜÇ䀯äÅÜÇä€ÅÛÄÜÇäÇäÅÜÅÜÇäÅÜ€ÅÛÊÜÅÜÊÜÅÜ¥ÊÛÅÜÅÜÅÜÅÜÅÜÇä€ÅÛÅÜÅÜÇäÅÜÅÜ€ÅÛÅÜÇäÊÜÇ䀯äÅÜÅÜÅÜÇäÅÜÇäÅÜÅÜÊÜÅÜÇäÇäÅÜÅÜÅÜÇäÊÜÇäÇäÅÜÅÜÅÜÄÜÅÜÅÜÇäÊÜ€ÅÛÇäÇäÇä€ÅÛÄÜÇ䀯äÅÜÅÜÅÜÇäÇäÅÜÅÜÇä¥ÊÛÇäÇäÇäÇäÇäÅÜ¥ÊÛ¥ÊÛÇä¥ÊÛÅÜ€ÆäÅÜÅÜ¥ÊÛÇäÊÜÅÜÊÜÅÜÇä€ÅÛÅÜ¥ÊÛ¥ÊÛ€Æä€Æä¥ÊÛÅÜ€ÅÛÇäÅÜ€ÅÛ€ÆäÅÜÇäÅÜÅÜÅÜÅÜÅÜÊÜÊÜÊÜ¥ÊÛÇäÅÜ€ÅÛÅÜÊÜÅÜÅÜÇäÅÜÅÜ€ÅÛÅÜÅÜÇäÇäÅÜÅÜ€ÅÛ€Æä€ÆäÅÜÇäÊÜÅÜÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜÅÜÜÇ䀯äÅÜ€ÅÛÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÇä€ÅÛÅÜÅÜÅÜÅÜÊÜÅÜÄÜÇäÇäÇäÇäÅÜÅÜÅÜÇäÅÜÇäÇäÇä¥ÊÛÄÜÇäÇäÅÜÄÜ€ÆäÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÇä€ÅÛÇäÇäÅÜÅÜ€ÅÛ¥ÊÛ€ÅÛ€Æä€ÅÛÊÜÅÜÇä€ÅÛ¥ÊÛ€ÆäÇäÅÜÇä€ÅÛ¥ÊÛÊÜ€ÅÛÅÜÅÜ€ÅÛÅÜÅÜ€Æä€ÆäÅÜ€ÅÛ¥ÊÛ€ÅÛ¥ÊÛÇäÅÜÇäÅÜÅÜÅÜÅÜ€ÆäÇäÇäÇäÅÜÇä€ÅÛÇäÇäÇäÇäÅÜÅÜÅÜÅÜÇäÅÜ€ÅÛÅÜÊÜÅÜÅÜ€ÅÛÇä€ÅÛÅÜÅÜÅÜÅÜ€ÆäÅÜÅÜ€ÅÛÅÜÅÜÅÜÅÜÄÜÇäÅÜÅÜÅÜÅÜÅÜÇäÇäÇäÇäÅÜ€ÆäÇäÅÜÅÜ€ÆäÊÜÇ䀯äÄÜÊÜÅÜÅÜÅÜÅÜÇäÅÜ€ÆäÅÜÅÜÇäÅÜÇäÇäÇäÅÜÄÜÅÜÅÜÅÜÄÜÇäÇäÅÜÅÜÅÜÊÜÅÜ€ÅÛÅÜÅÜÅÜ€ÆäÊÜ€ÅÛÅÜÅÜÇäÅÜ€ÅÛÅÜÅÜÅÜÄÜÇäÅÜÅÜÅÜÅÜÅÜ€ÆäÊÜÅÜÇä¥ÊÛ€ÅÛ€ÅÛÅÜ€ÆäÇäÊÜÅÜ€ÆäÅÜÅÜÅÜÅÜ€Æä€ÅÛÇäÅÜ¥ÊÛÄÜÅÜÇäÇäÇäÄÜÅÜÇäÇäÄÜÅÜÄÜÅÜÇäÅÜÅÜ€ÅÛ€ÆäÅÜÅÜ¥ÊÛÅÜÅÜÅÜÇä€ÅÛÅÜÅÜ€ÅÛÅÜÅÜÇäÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜÅÜÄÜÅÜÅÜÅÜÅÜ€ÆäÅÜÇäÅÜÅÜÅÜÅÜÇäÅÜÅÜÅÜÇä€ÅÛ€ÆäÅÜŽØÅÜÇäÅÜÇ䀯äÇäÇäÅÜÅÜÊÜÇ䀯äÅÜÅÜÅÜÅÜÅÜÅÜÅÜÇäÇäÅÜ€ÆäÇäÅÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÅÜÅÜ€ÅÛ€ÆäÄÜ€ÆäÇäÅÜ¥ÊÛÅÜÇä¥ÊÛÅÜÊÜ€ÅÛÇäÅÜÅÜÅÜÅÜ¥ÊÛÅÜÅÜ€ÅÛÅÜÅÜÅÜÅÜÅÜÄÜÅÜÇäÅÜÅÜÅÜÇäÅÜ€ÅÛÇäÇäÅÜÄÜÅÜÅÜÇäÇäÄÜÅÜÇäÇäÅÜÅÜÇäÅÜÇä€ÅÛÅÜ€ÅÛÊÜ¥ÊÛÅÜÅÜÅÜ€ÅÛ€ÆäÅÜ€ÆäÅÜÅÜÅÜÇäÇäÅÜÅÜÅÜÄÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÅÜÄÜÅÜÅÜÅÜÇäÇäÇäÅÜÅÜÇäÅÜÅÜÅÜÅÜÅÜÅÜÅÜÄÜÅÜÇäÇäÅÜÅÜÅÜÅÜÇäÅÜ€ÆäÇäÅÜÇäÅÜ€ÅÛÅÜÄÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÆäÇäÅÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÇäÅÜÅÜÅÜ¥ÊÛÅÜÄÜ€ÅÛÅÜÅÜÅÜ¥ÊÛ€ÅÛÅÜÅÜÅÜÇäÅÜÇäÅÜ€Æä€ÆäÅÜÄÜÅÜÅÜÅÜÅÜÅÜÊÜÇäÄÜÄÜÅÜÇäÅÜÇäÇäÇäÇä€ÅÛÊÜ¥ÊÛÅÜ€ÅÛ€ÆäÅÜÇä€ÅÛ€ÆäÅÜÅÜÅÜÅÜÇäÇäÅÜÅÜÄÜÅÜÇäÇäÅÜÇäÅÜÅÜÇäÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÇäÅÜÄÜÄÜÇäÇäÇäÅÜÇ䀯䀯䀯ä¥ÊÛÇäÅÜ¥ÊÛ€ÅÛ€ÆäÊÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÇäÅÜÇäÅÜÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÅÜÅÜÅÜÇäÅÜ€ÅÛÅÜÅÜÅÜÇäÅÜÇäÅÜÅÜÅÜÅÜ€ÅÛÅÜÅÜ€ÅÛÄÜÇä€ÅÛÅÜÅÜÅÜÄÜÅÜÅÜÇäÅÜÅÜÅÜÇäÅÜÅÜÇäÅÜÅÜÅÜÄÜÇäÇäÅÜÇäÇäÇäÅÜÅÜÅÜÇäÅÜÅÜ€ÅÛ€ÆäÅÜÇäÅÜÅÜÇäÅÜÇäÇäÅÜÅÜÅÜÅÜÅÜÅÜÅÜÇäÅÜÇäÅÜÅÜÅÜŽØÅÜÅÜÅÜÅÜÄÜÅÜÅÜÅÜÅÜÅÜÄÜÅÜÇä€ÅÛÇäÇä€ÅÛÅÜÅÜ€ÅÛ€Æä€ÆäÀÇÏ€Æä€ÅÛ€ÅÛ€Æä¥ÊÛÅÜ€ÅÛ€ÅÛ€ÆäÇäÅÜÅÜÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜ€ÆäÅÜ€ÅÛÅÜÅÜÅÜÅÜÊÜÅÜÅÜÅÜÅÜ€ÆäÇäÅÜ€ÅÛÅÜÅÜÇäÇäÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÆäÅÜÅÜÄÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÅÜÇäÅÜÅÜÄÜÄÜÅÜÇäÇäÅÜÄÜÅÜÄÜÅÜ€ÆäÅÜÅÜÇäÄÜÅÜ€ÆäÅÜÅÜÅÜÇäÅÜÅÜ€ÆäÅÜÅÜÇäÅÜÇ䀯äÅÜÅÜÇäÅÜÅÜÄÜÇäÄÜ€Æä€ÆäÇäÅÜÅÜÇ䀯äÅÜÅÜÅÜÅÜ€ÆäÇ䀯䀯äÄÜÅÜ€ÆäÇ䀯䀯䀯ä€ÅÛŽÃαΣ³}l£³}šÀŽ¿ÂÈœÂÈœŽÃ΀Æä€ÆäÅÜ€ÆäÇä€ÅÛÅÜŽØÇäÅÜÅÜÇäÅÜ€ÅÛÅÜÇäÇäÅÜÇäÄÜÅÜÅÜÇäÅÜÅÜÅÜÅÜÅÜÅÜÇäÇäÊÜÇäÅÜ€ÅÛÅÜÅÜÇäÅÜ€ÆäÅÜÅÜÅÜÅÜÄÜÅÜÅÜÇäÅÜÅÜÅÜÅÜ€ÆäÅÜÅÜÅÜÅÜÇäÅÜÅÜÅÜÇäÅÜÇäÄÜÇäÄÜÅÜÅÜÅÜÅÜÇäÇäÇäÅÜÅÜÅÜ€ÅÛÅÜÊÜÇäÅÜÇäÅÜÅÜÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜÅÜÄÜÇä¥ÊÛÊÜÅÜÅÜÇäÄÜÅÜÅÜÅÜÇäÇäÅÜÅÜÅÜÅÜÅÜÇä€ÅÛ¥ÊÛ€ÅÛÂÈœ±ÃŽšÀ¡vtjtj¢fZ¢fZ£sg£sg€os¯°šÀŽÌ¹ŽÌ΀ÅÛ€ÆäÇäÅÜÅÜÅÜÅÜÇäÅÜÅÜÇäÅÜÅÜ¥ÊÛ€ÆäÅÜ€ÆäÅÜÅÜÇäÅÜÇäÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÆäÅÜÅÜ€ÆäÅÜÅÜÅÜÄÜ¡µÎÄÜÅÜÅÜÅÜÅÜÅÜ€Æä€ÆäÅÜÅÜ€ÆäÅÜÇäÇäŽØÇäÅÜÅÜÅÜÊÜÅÜÇäÇäÅÜÅÜÄÜÇäÇäŽØÄÜÅÜ€ÆäÊÜÅÜÅÜÅÜÅÜÅÜ€ÅÛÅÜ€ÆäÅÜÇäÇäÅÜÅÜÇäÅÜÅÜÅÜÅÜÇäÅÜÄÜÅÜÅÜÇäÅÜÅÜÇäÅÜÇäÇ䀯䀯䀯äŽÌÎ¥ÊÛŽÌίžsfkZ£sg¢ifcYpdQkZ¢if£sg¢ifktjtjtj€oh€ÅÛ€ÆäÅÜÇäÅÜÅÜÅÜÅÜÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÇ䀯äÅÜÅÜÅÜÅÜÅÜÅÜÅÜÇ䀯äÅÜÅÜ€ÅÛÅÜÅÜÅÜ€ÆäÇäÅÜÅÜÅÜÅÜÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÅÜÇ䀯äÅÜÇäÇäÅÜÅÜÇäÅÜÇäÇäÇäÇäÄÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÅÛÅÜÅÜÅÜÅÜÅÜ€ÆäÅÜ€ÅÛ€ÆäÇäÅÜÇäÅÜÅÜÇäÅÜÄÜÇäÅÜÅÜÇ䀯äÅÜÅÜ€ÆäÇ䀯䀯äŽÃΎ̹šÀ¢ ttj¢if¢if£sgvkskRMTESVVKbKbMTTUkZcYkZtj¢e|¢e|€Æä€ÆäÇäÅÜÇäÅÜÄÜÇäÄÜÅÜÇäÇäÅÜÇäÅÜ€Æä€ÅÛÇ䀯äÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÆäÄÜÇäÅÜÅÜ€ÆäÅÜÅÜÅÜ€ÆäÇäÇäÅÜÅÜÅÜÄÜÅÜ€ÆäÇäÅÜÅÜŽØ€ÆäÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÇäÅÜÇäÇäÄÜÅÜÅÜÇäÅÜÅÜÅÜÅÜÇäÅÜ€ÅÛ€ÅÛÅÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÄÜÅÜÅÜÅÜ€ÅÛÇäÅÜÅÜÇäÇäÇäÅÜ¡µÎ€ÆäÊÜ¥ÊÛ¥ÊÛšÀ¢ t©o¢fZ¢if¢ifkZl\VvGTMTVV¢fZ¢if¢fZ ]f ]V¢if¢fZ¢fZ TeES>Tv\Zk}€Æä€ÆäÇäÅÜÅÜÅÜÇäÄÜÇäÅÜÅÜÅÜÅÜÅÜÅÜ€ÆäÅÜÄÜÅÜ¡µÎÅÜÅÜÅÜÅÜÄÜÄÜÅÜÇä€ÅÛ€ÅÛÅÜÅÜÅÜ€ÆäÅÜÅÜÅÜ€ÅÛ€ÆäÅÜ€ÆäÅÜÄÜÅÜÅÜÇäÅÜÅÜÇäÅÜ¡µÎÇäÅÜÇäÇäÅÜÄÜÅÜÅÜÇäÇäÇäÄÜÇäÇäÇäÅÜŽØÅÜÅÜÄÜÅÜÅÜÅÜÅÜÅÜ€ÅÛÅÜÅÜÅÜ€ÆäÇäÅÜŽØÄÜÅÜÅÜÇäÅÜÅÜÇäÄÜÇäÅÜÇäÅÜÅÜÇäÇäÇäÇäÊÜÊÜ¥ÊÛkZ¢fZcYkZl\VvGTKbVV ]V ]f¢if£sg\W ]f¢fZcY¢fZ ]fmme[£sg\W¢e|¬Œ€ÆäÇäÅÜÅÜÅÜÅÜÇäÇäÅÜÅÜÇäÅÜÅÜÄÜÅÜÇäÇäÅÜÅÜ¡µÎ¡µÎÇäÅÜÅÜÅÜÅÜÅÜ€ÅÛÅÜ¥ÊÛÅÜÅÜÅÜÅÜÅÜÅÜÅÜÇä€ÅÛÅÜÇäÅÜÅÜÇäÅÜÅÜÅÜÅÜŽØÅÜÅÜÅÜÅÜÄÜÅÜÇäÇäÅÜÇäÇäÄÜÇäÅÜÅÜÇäÅÜÅÜÅÜŽØÅÜÄÜÅÜÇä€ÅÛÄÜÅÜÇäÄÜÇäÅÜÅÜÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜÅÜÄÜÅÜÅÜÇäÇäÄÜÇäÇäÇ䀯äÇäÊÜ¥ÊÛ¥ÊÛ¥ÊÛvkl\VfLSMTTU ]V Te¢fZ¢fZ¢if ]f¢fZ©ocYkZ£sg£sg¢fZ¢ifcYkZ¢if¢e|šÊÜÊÜÅÜÅÜÅÜÇäÅÜÅÜÇäÅÜÅÜÅÜ€ÅÛÅÜÅÜÅÜÅÜÅÜ€ÅÛ€ÆäÅÜÇäÄÜÅÜÅÜÅÜ€ÆäÅÜÅÜÅÜÅÜ€ÅÛÅÜ€ÆäÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÄÜÇäÅÜÅÜÅÜÇäÅÜÅÜÇäÅÜÅÜÄÜÇäŽØÇäÇäÇäÇäÅÜÅÜÇäÄÜÅÜÅÜÇäÇäÇäÅÜÇäÅÜÇäÅÜÇäÅÜÇäÄÜÅÜÅÜÅÜÅÜÅÜÇ䀯äÇäÇäÄÜÅÜÅÜÅÜÅÜÇäÇäÊÜÇ䀯äÇä¥ÊÛ¥ÊÛ¥ÊÛxMTTU ]f¢ifkZ¢fZ¢if¢if¢if¢if ]f£sg¢if£sg¢if¢if ]V\W\W¢if¢if ]f€ÈÅÜÅÜÅÜÅÜ€ÆäÅÜÅÜÇäÇ䀯äÇäÅÜÅÜÇäÅÜÅÜÅÜ€ÆäÇäÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÅÛÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÆäÅÜŽØÅÜÅÜÅÜÅÜÅÜÅÜÅÜÇäÄÜÅÜÄÜÅÜÇäÅÜÅÜ€ÆäÅÜÅÜÇäŽØÅÜÅÜ€ÅÛ€ÅÛÅÜÄÜÇäŽØÄÜÅÜ€ÆäÅÜÇäÇäÅÜÅÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÇ䀯äÄÜŽØÅÜÄÜÇäÅÜÇäÅÜÅÜÇäÅÜÇäÅÜÅÜÅÜÊÜ¥ÊÛÇäÇäÊÜÊÜ¥ÊÛ ¢ ]fcY¢if ]fk¢if¢if ]fkZkZ£sg ]f¢if¢if¢fZ ]f¢if©o ]f¢fZ ]f Te€È€ÅÛÅÜÇäÅÜÅÜÄÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÅÛÅÜÅÜÅÜÅÜÇäÇäÄÜÅÜÅÜ€Æä€ÅÛÅÜÅÜÇä€ÅÛÇäÅÜÅÜ€ÅÛÅÜÅÜÅÜ€ÆäÅÜ€ÅÛÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÇäÅÜÇäÇäÇäÇäÅÜ€ÆäÅÜÅÜÄÜÇäÅÜÇäÇäÅÜÅÜÅÜÅÜÅÜÇäÅÜÄÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÅÜ¡µÎÄÜÅÜÅÜÇ䀯äÅÜÅÜÅÜÅÜÅÜÅÜÇäÇäÇäÅÜÅÜÅÜÇ䀯äÇ䀯äÊÜÊÜ¥ÊÛš¢ifkkZ ]f¬en¢if¢if ]f ]V¢ifcY¢if ]f ]f¢if£sg¢if¢if¢if ]f¢e|k °±ÊÜÅÜ€ÆäÅÜÅÜÅÜÇ䀯äÅÜÅÜÅÜÇäÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜÄÜÅÜÇäÇäÅÜÅÜÅÜ€ÆäÅÜÅÜ€ÆäÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÅÛ€ÅÛÇäÅÜ€ÅÛÅÜÅÜ€ÆäÇäÅÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÅÜÅÜÅÜ€ÆäÇäÅÜÇäÅÜÇäÇäÇäÄÜÇäÇäÅÜÅÜÅÜ€ÅÛÅÜÅÜÅÜÄÜÇäÇäÅÜÅÜÅÜÇäÅÜÅÜÅÜÅÜÇäÇäÄÜÄÜÇäÄÜÇäÇäÅÜÇä¥ÊÛ¥Êێ̹\W¢fZkZkZ¢fZ ]f¢if\W ]Ve[¢ifcY ]f£sg£sg£sg£sgmme[¢fZkZcY€È€Æä€Æä€ÆäÅÜÅÜÅÜÅÜ€ÆäÅÜÅÜÅÜ€ÆäÇä€ÅÛÅÜ€ÆäÅÜÅÜ€ÅÛ€ÆäÅÜÅÜÅÜÅÜ€ÅÛ€ÅÛÅÜ€ÅÛÅÜÅÜÅÜÅÜÅÜ€ÆäÄÜÅÜÅÜ€ÅÛÅÜÅÜÅÜÅÜÅÜ€ÅÛÅÜÅÜŽØÅÜÅÜ€ÆäÇäÇäÅÜÅÜÅÜÄÜÄÜÄÜÅÜÅÜÇäÅÜÇäÅÜÇäÅÜ€ÆäÄÜÅÜÇäÇäÅÜÅÜÅÜÅÜÇäÅÜÄÜÄÜŽØÇäÅÜÄÜÅÜÅÜ€ÆäÅÜÅÜŽØÅÜÅÜÅÜÊÜÅÜÇäÅÜ€ÆäÄÜ€ÆäÅÜ€ÆäÇäÊÜ¥ÊÛ¥cY ]V¢e|¢ifcY ]f¢fZ¢if¢if ]Ve[¢if¢if£sg£sg¢if ]VtjcY¢if£sg¢e|¡µÎ€ÅÛÇäÇäÇäÇ䀯äÅÜÅÜ¡µÎ€ÆäÅÜÅÜÊÜÅÜÅÜ€ÆäÅÜÅÜÅÜ¡µÎÅÜÅÜ€Æä€ÅÛ€ÆäÅÜ€Æä€ÅÛÅÜÅÜ€ÆäÅÜÅÜÅÜÅÜ€ÅÛ€ÅÛ€Æä€ÅÛ€ÅÛÅÜÅÜÅÜÇäÅÜÅÜÅÜÅÜ¥ÊÛÅÜÅÜ€ÆäÅÜÇäÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜÄÜÄÜÅÜÇ䀯äÇäÇäÄÜÇäÇäÅÜÇäÅÜÇäÄÜÇäÇäÄÜÅÜÅÜÅÜÄÜÄÜÇäÅÜÇäÅÜÅÜÅÜÅÜÄÜÅÜÅÜÅÜÇä€ÅÛÊÜ€ÅÛ€ÆäÇäÇäÊÜ¥ÊÛcY\W ]f¢fZ ]fcY ]f ]f¢if¢if¢fZ¯tf¯tfmm¬enk}vleycgvlekncYeT¡µÎÅÜÊÜÇ䀯äÅÜÅÜÅÜ€ÆäÄÜÅÜÅÜÇäÊÜÅÜÅÜÅÜÅÜ€Æä€ÅÛÅÜ€ÅÛÅÜÅÜÅÜ€ÅÛÅÜ€ÅÛ€Æä€Æä€ÅÛ€ÅÛÅÜ€Æä€ÅÛÅÜ€ÅÛÅÜÅÜÇäÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÇäÅÜÇäÅÜÇäÄÜÇäÅÜÅÜÇäÇäÇäÇäÅÜ€ÆäÇäÅÜÅÜÄÜÅÜÅÜÅÜÄÜÅÜÅÜÅÜ€Æä€Æä€ÆäÇäÇäÅÜÄÜÄÜÅÜÅÜÄÜÅÜÇäÅÜÇäÇäÅÜÇäÅÜÇä¥ÊÛ¥ÊÛŽÌ΢ifkZcY ]fmm£sgcY¢fZ¢if¢if£sg¢fZmm¶j¢if]hycgyduu]~x[heTdMh€È€ÅÛ€ÅÛ€ÅÛÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÅÛ€ÅÛ€ÅÛÅÜÅÜ€Æä€Æä€ÅÛ€ÅÛ€Æä€Æä€Æä€ÅÛ€ÅÛ€ÅÛ€ÅÛ€ÆäÅÜÇä€ÅÛ€ÅÛÅÜ€ÆäÅÜ€ÅÛ€ÅÛÅÜ€ÅÛÅÜÇ䀯äÅÜÅÜ€Æä€ÅÛÅÜÅÜÇäÇäÅÜÅÜÅÜ€ÅÛÅÜÅÜÅÜÅÜ€ÆäÅÜÇ䀯äÅÜÅÜÇäÅÜÇäÅÜÇäÅÜÄÜÄÜÇäÅÜÇäÇäÅÜÅÜÅÜÅÜŽØÄÜ€ÆäÅÜÇäÇäÇäÅÜŽØÄÜÄÜÅÜÇäÊÜÇäÇäÇäÅÜÅÜÇäÇäÇäÊÜÊÜ¥ÊÛ¡ ]f¢if¢ifcYVV¢ifkZ¢fZ¢fZl_¢if¢if¢if¢if¯vv¶y°§Ânydux[hyduyduž¿¥ÄÜÅÜ€Æä€Æä€Æä€ÆäÅÜ€ÅÛÅÜ€ÅÛ€ÅÛ€ÅÛ€ÅÛ€Æä€ÅÛ€Æä€ÅÛ€Æä€ÅÛÅÜ€ÅÛ€ÅÛ€ÆäÅÜ€Æä€ÆäÊÜ€ÅÛÊÜ€ÅÛ€ÅÛÅÜ€Æä€ÅÛ€ÅÛ€ÅÛ€ÅÛÅÜÅÜ€ÆäÅÜ¥ÊÛ€ÅÛÅÜÄÜÅÜÇ䀯äÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÄÜÄÜÅÜÇ䀯äÅÜÄÜÇäÅÜÅÜŽØÇäÇäÄÜÄÜÅÜÅÜÇäÇäÅÜÅÜÅÜÄÜÄÜÅÜÄÜÅÜÇäÅÜÅÜÄÜÅÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÄÜÅÜÅÜÊÜÇä¥Êێ̹|cY¢ifcYkZcY ]f¢if¢if¢fZ¢fZ¢ifcY¢ifx¯vvµwÍÈÎÍÈΰ§Ânu]~]hknpdQhThskRj[tªtžÁ³ÅÜ€ÅÛ€ÅÛ€Æä€ÅÛ¥ÊÛ¥ÊÛ€Æä€ÆäÊÜ¥ÊÛ€Æä€Æä€ÆäÅÜÄÜÅÜ€ÅÛ€ÅÛ€ÅÛ€Æä¥ÊÛ¥ÊÛ€Æä€ÅÛÇäÅÜÅÜÊÜÅÜÅÜÊÜ€Æä€ÅÛÅÜÅÜÅÜ€ÅÛÅÜ€ÅÛÅÜ€Æä€ÆäÅÜÅÜÇäÅÜÅÜÇäÇäÅÜÅÜÅÜÅÜÄÜÅÜÅÜÇ䀯䀯äÇäÅÜÄÜÄÜÅÜÅÜÇäÅÜÅÜÅÜÅÜÅÜÅÜÇäÅÜÇäÇäÇäÅÜÄÜÄÜÄÜÇäÅÜÇäÇäÇäÇäÅÜÄÜÊÜÅÜÅÜÇä¥ÊÛÊÜ¥ÊÛxcY¢fZe[¢if ]V¢e|¢if¢fZ¢ife[¬en¢if¢ifl_¬enŒxxÞèâÞèâÍÈÎÀÇÏ€Ènydu]hx[hx[hx[hhThhThi[jqucz{qot²¿¥ÊÜ¥ÊÛ€ÅÛ€Æä¥ÊÛ€Æä€Æä¥ÊÛÅÜI\ETYndug€Æä€ÅÛ€ÆäÇä€ÅÛÅÜ€ÅÛ€ÅÛ€ÅÛ€ÅÛÊÜÅÜÇäÅÜ€Æä€ÅÛ€ÅÛÅÜÅÜÅÜÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜÅÜÅÜÇäÇäÅÜÅÜÇäÅÜÅÜÅÜÅÜÅÜ€ÆäÄÜÅÜÅÜÅÜÅÜÅÜÇäÇäÅÜÇäÅÜÇ䀯äÅÜÅÜÇäÅÜÅÜÅÜÇäÅÜÅÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÅÜÅÜÇäÇäÅÜÅÜÅÜÇä¥ÊÛ¥ÊÛŽÌÎx ]f ]f¢if¢fZ¢fZcY¢if¢if¢fZ£sg¢ife[£sgx¬enµwÜáÞÞèâÞèâÔêÙËߨÃÐÒŽÌÎycgpdQk}ycgi[jycgycgydui[jhThaTLv\Zycgrl{ydux³€È€ÅÛ€ÅÛB9ZR8Vf\}¥ÊÛ€Æä¥ÊÛ¥ÊÛÇä¥ÊÛ€ÅÛ¥ÊÛ€ÅÛ€Æä€ÅÛ€ÅÛÅÜ€ÅÛ€ÅÛ€ÅÛÅÜÅÜ€ÅÛ€Æä€ÆäÇä€ÅÛ€ÆäÅÜ€ÅÛ€Æä€Æä€ÆäÅÜ€ÆäÅÜÇäÅÜÅÜÅÜÇäÅÜÅÜ€Æä€ÆäÇäÅÜÄÜÅÜÅÜÇäÅÜÅÜÇäÅÜÅÜÅÜ€ÅÛÅÜÅÜÅÜ€ÆäÅÜÇäÇäÇäÇäÅÜÇäÅÜŽØÄÜÅÜÇäÅÜÅÜÅÜÅÜÇäÇäÇäÇäÊÜ¥ÊÛŠ ]V ]VcY¢ifmm¢fZ¢fZ£sg¢if£sgk¢if£sg¯tf¢fZcY`9HŸ£®ÜáÞÞèâÞèâÞèâÔãÝŽÌ΢À»i[jl\Vycgx[hvTYu]~]hk}ycgx[hk}kndldlycgx[hi[jcfaC(N4$Ax¡µÎ€Æä€Æä€ÅÛ€Æä€Æä€Æä€Æä€ÅÛ€ÅÛ€Æä€ÅÛÅÜ€ÅÛ€ÆäÅÜÅÜÅÜÅÜ¥ÊÛÇäÅÜ¥ÊÛÅÜ€ÅÛ€ÆäÅÜÅÜÇäÅÜ€ÆäÅÜÅÜ€ÆäÅÜÅÜÇäÇäÄÜÅÜÅÜÇäÅÜÅÜÇäÅÜÇäÅÜŽØ€ÅÛÅÜÅÜÇäÄÜÅÜÄÜÅÜÇäÅÜÅÜÇäÅÜÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜ€ÆäÄÜÅÜÅÜÅÜÅÜÅÜÅÜ¥ÊÛ¥ÊÛ¥ÊÛ£sg¢fZ¢e| ]f ]fmmmm ]f¢if¯tfmm¢if¢if¢if¢if¢fZ£sg`9HB%>SDCÀžÀÔãÝÞèâÞèâÞèâËߨŽÌ΢À»z|l\Vdlycgu]~knx[hx[hx[hx[hx[hx[hi[jvTYvTY]hdlx[hwv{i[ju]~hThx[htw³¡µÎ€Æä€Æä€Æä€Æä¥ÊÛ€ÅÛ€ÅÛ€ÅÛ€ÅÛÅÜ€Æä€ÅÛ€ÅÛ€ÅÛÅÜ¥ÊÛ€Æä€Æä¥ÊÛÅÜÅÜ€ÆäÅÜÅÜ€ÅÛ€ÆäÅÜ€ÆäÅÜÇäÅÜÇä€ÅÛÅÜÅÜ€ÆäÇäÅÜÅÜ€ÆäÅÜÇäÄÜÅÜÄÜÅÜÇäÅÜÅÜ€Æä€ÆäÅÜÇäÅÜÅÜÇäÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÆäÅÜÅÜÇä¥ÊÛ¥ÊÛ¥ÊÛcYcY¢e|¢fZ¢ifl_mm£sg¢e|l_l_¬en\W¢if¯tfl_l_\W3;/8+$9wKeÍÈÎÞèâÞèâÞèâÔêÙÆØÓŽÌ΢À»z{x[hv\Zu]~x[hx[hx[hx[hvTYx[hvTYvTYdlx[hx[hdlvv\ZhThvTYx[hx[hydu|kzk}³€È¡µÎ€ÅÛŽÃ΀Æä€Æä¥ÊÛ€Æä€ÅÛÇä¥ÊÛ€ÅÛ¥ÊÛ€ÅÛ€Æä€ÅÛÇäÇä€ÅÛÇä¥ÊÛÇäÇ䀯äÇäÇäÅÜÇäÅÜ€Æä€ÆäÅÜ€ÆäÇäÅÜÇäÇäÅÜÅÜÅÜÄÜÅÜÅÜÅÜÅÜÅÜ€ÆäÇäÅÜÅÜŽØÅÜÅÜÇäÅÜÅÜÇäÇäÅÜÅÜÅÜÅÜÅÜ€ÆäÇäÅÜÅÜÊÜ¥ÊÛŽÌÎcY ]V¢fZ£sg¢if ]V¢ifmm¢if ]f¢if¯tf¢if£sgl_¯tf©okZQ,C28/8B%>SDCyduÃÐÒÞèâÞèâÞèâÔêÙÆØÓŽÌΞµz{|kzycghThx[hdldlx[hdlk}knu]~u]~x[hx[hv\Zx[hx[hx[hycgx[hdlx[hx[hx[hlTVlTVhThycgx³€È€ÅÛ€Æä€ÅÛ€Æä€ÅÛ€Æä€Æä€ÅÛ¥ÊÛÊÜ¥ÊÛ¥ÊÛ€ÅÛÅÜÇä¥ÊÛÇäÅÜÅÜ€ÆäÇ䀯äÅÜÇäÅÜ€ÆäÇäÅÜÅÜÄÜÅÜÅÜÅÜÅÜÇäÇäÅÜÅÜÇäÅÜÄÜÅÜ¡µÎÄÜÅÜÇäÇäÅÜÇäÇäÅÜÅÜÇäÅÜÅÜÅÜÇäÇäÊÜÇ䀯äÊÜ¥ÊÛŽÌÎk ]V ]V¢if£sg ]V¢fZ£sgl_¢fZ¢if¢fZ¢if¯vv€ol_£sg¢fZ]-E?:?:bDBSLBSDCc\O¢ÖÖØÞèâÞèâÞèâÔãÝÆØÓÃÐÒžµz{skRx[hx[hi[jx[hx[hycgydudlk}x[hdlycgx[h]h]h]hydudl]hvTYx[hx[hx[hfLShThx[hycgv\Zvlekn|kz³¡µÎ€Æä€Æä€Æä¥ÊÛ€Æä€Æä¥ÊÛ€ÆäÅÜ€ÆäÅÜ€ÆäÇä€ÅÛ¥ÊÛ€ÅÛÅÜÇäÅÜÅÜÅÜÅÜÇäÅÜÅÜÅÜÅÜ€ÆäÅÜ€ÆäÅÜÄÜ¡µÎÅÜÅÜÅÜÅÜŽØŽØÄÜÅÜ€ÆäÅÜÅÜÇäÇäÇäÅÜÇ䀯äÇäÇä¥ÊÛ€ÅÛ€Æä¥ÊÛ¥ÊÛ¥ÊÛ¢if¢fZ ]V ]V¢fZ¢if ]f ]f¢ifl_¢if¢if¢if¢if¯tf¢fZ¢fZ¢fZMTMAN%@rl{k}ycgi[jhThhTh ²ÜáÞÞèâÞèâÞèâÔãÝÆØÓŽÌΞµqucycgx[hyduu]~x[hhThx[hyduv\Zv\Zdlx[h|kzk}x[hx[hx[hdlx[hx[hx[hx[hx[hvTYycgdlu]~hThvTYlTVi[jv\Zi[jv\Zydux³€È¡µÎ€Æä€Æä¥ÊÛ¥ÊÛ€Æä¥ÊÛ¥ÊÛÄÜ€Æä¥ÊÛÅÜÊÜÊÜ€ÅÛÅÜÅÜ€Æä€Æä€ÆäÅÜÅÜÅÜÅÜ€ÆäÅÜÅÜ€ÆäÅÜ¡µÎÇäÅÜÄÜÅÜÇäÅÜÅÜÇäÅÜÅÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÇ䀯äÅÜ¥ÊÛ¥ÊÛÊÜ¢if¢fZ\W ]V¢ifl_e[ ]f¢if¯tfmmmm ]f ]V ]f¢fZ©ol_\WQ,CQ,C|kzvrl{fLSR5EB%>A3DR8V®¢ÜáÞÞèâÞèâÞèâÔãÝÆØÓŽÌÎ °±wv{ycgvlex[hv\Zx[h]hdlycgx[hk}knycgycgycgvTYhThx[hycgx[hx[hhThhThx[hycgx[hx[hi[jx[hv\ZycgycgyduhThx[hi[jx[hx[hydu|kz€È°¹Æ€Æä€Æä€Æä¥ÊÛ€Æä€Æä¥ÊÛ¥ÊÛ€Æä¥ÊÛÇ䀯ä¥ÊÛÇäÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÄÜÅÜÇäÇ䀯äÇäÅÜÅÜÄÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÅÛÅÜ€Æä¥ÊÛŽÌÎ¥ÊÛ\Wmm¢if ]V¢fZ¢ifl_mm ]V¢if£sgmme[e[©oe[¯tf¯tf\WQ,CQ,CdMhR5ER5EQ,CN%@N%@B%>B%>B%>b<UŸ£®ÜáÞÞèâÞèâãïàÔãÝÆØÓŽÌÎ °±vkkndlx[hycgu]~v\Zdlycgx[h]h]hyduwKeycgycgx[hx[hyduwv{wv{x[hv\Zyduycgx[hydux[hydux[hvTYx[hhThv\Zx[hu]~x[hlTVv\Zx[hu]~u]~k}x³€È€ÅÛ¥ÊÛ¥ÊÛ¥ÊÛ¥ÊÛ¥ÊÛ¥ÊÛ€Æä¥ÊÛÅÜÅÜÅÜÄÜÅÜÅÜŽØÅÜÅÜÇäÇäŽØŽØÅÜÇäÅÜÇäÅÜÅÜÅÜÇä€ÅÛÅÜÅÜ€ÆäÅÜÅÜ€ÆäÇ䀯ä¥ÊÛŽÌÎ¥ÊÛ ]fVV¢fZl_¢fZ¢fZ£sgl_l_ ]f¢if¯tfl_l_l_l_¢if¢fZ ]V`9HN%@R5E]-E`9H`9H`9H`9HQ,CQ,CB%>B%>C(NhCQÀžÀÜáÞÞèâÞèâÞèâÔãÝÃÐÒŽÌΰ|uedlycgyduvTYycgx[hydu]hdlx[hdlx[hyduyduk}k}xv|kzdlx[hycgycgvTYydux[hycgx[hhThhThx[hu]~x[hyduyduycgi[ju]~x[hhThhThx[hydu|kzxk}€È¡µÎ¡µÎ€Æä€ÆäÅÜÅÜ€ÆäÄÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÇäÇäÅÜÅÜÅÜÄÜÅÜ€ÆäÅÜÅÜÇäÅÜÇäÅÜ€Æä€ÅÛÇäÇä¥ÊÛ¥ÊÛŽÌÎcYcY\W¢if¯tf¢fZ¢if£sg¢if£sg¢fZl_¯vv¯tf©o ]V¢if¢fZ¢fZvTYN%@`9Hm5Im=J]-E]-E`9H`9H`9HR5ER5EB%>B%>C(NfLSÀžÀÞèâÞèâÞèâÞèâËߨŽÌÎŽÌÎrl{dlycgdlydux[hx[hycg|kzvkvkdl]hu]~x[hx[hv\Zx[hx[hx[h]hyduu]~x[hdlknk}u]~x[hdlydux[hdldlx[hu]~x[hx[hu]~x[hx[hyduycg]hi[jeTi[ju]~yduu]~|kzÅÜÄÜÅÜÅÜÅÜÅÜÅÜÇäÇäÅÜÅÜÅÜ€ÆäÅÜÄÜÅÜÅÜÇäÅÜÅÜÇäÅÜÅÜÅÜÅÜ€ÆäÅÜÇäÇ䀯ä¥ÊÛŽÌÎ¥ÊÛ¢if ]f ]V¢if¯tf¯tf ]fe[mm¯tfl_ ]f¢fZ¢if£sg ]VVVl_¯tf¢fZ]-E`9Hm5I`9H`9Hm5I`9HbDBm=J]-EQ,CQ,CN%@N%@?:C(NvTYÍÈÎÜáÞÞèâÞèâÞèâËߨŽÃ΢À»ycgk}dlk}x[hx[hx[hdlycgx[hx[hl\Vx[h]h]hycgycgdldldlydux[hu]~dMhydudlycgx[hvTYx[hx[hx[hdlx[hdldlyduycgyduycgydudlx[hx[hx[hx[hycgycgi[jÅÜÅÜÅÜÇäÇäÅÜÅÜÄÜÅÜ€ÆäÅÜÅÜ¡µÎÅÜÅÜÅÜÅÜÅÜÇäÇäÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÅÛÇä¥ÊÛ¥ÊÛ¥ÊÛÊÜ¢if¢fZ ]V¢if¢ife[¯tf¢fZe[e[e[l_¢fZ ]V ]fe[¯tf¬en¢if£sgQ,CR8V`9Hb<Um5IhCQm=JbDB`9H`9H]-E`9HQ,CQ,CN%@N%@4$AC(NycgÖÖØÞèâÞèâãïàÔêÙÆØÓÃÐÒ¥ÊÛz|v\ZvTYx[hv\Zx[hyduknx[hvTYhThx[hvTYkndldl]hx[h]hydux[hvTYfLSx[hk}yduycgx[hx[h]hk}knknydux[hdlycgycgx[hhThi[jv\Zv\Zv\Zx[hyduk}yduÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÆäŽØ¡µÎŽØÄÜ¡µÎÇäÅÜÇäÄÜÅÜÅÜ€Æä€ÆäÅÜ€Æä€ÅÛÅÜ¥ÊÛÊÜ¥ÊÛ¢À»\W¢if¢if¢ifl_¢fZe[mm ]f¬enmme[¢fZmm©oe[¢if£sgcYtjb<Ub<Un=UhCQbDBhCQhCQn=UhCQ`9H`9H`9H`9H`9HR5ER5ER5EB%>B%>C(Nk}ÖÖØÞèâÞèâÞèâÞèâÆØÓÆØÓ¢À»hThx[hx[hdlydudlkndl]hx[hx[h]hycgx[hvTYu]~k}knk}x[hvTYx[hdlyduycghThx[hycgdlycgx[hx[hx[hyduk}x[hi[jx[hu]~ycgdldlu]~]hdl€ÆäÅÜÅÜÅÜÅÜÅÜÅÜÇ䡵ÎÅÜÇäÇ䀯䀯äÅÜÅÜÅÜÄÜÅÜÅÜÅÜÇäÅÜÅÜÅÜÅÜÅÜ¥ÊÛÇä¥ÊÛ¥ÊÛ¥ÊÛwv{ ]fcY ]Vmm¢if£sg¢fZ¢fZ¢fZVV¢fZ¢ifl_l_l_¢fZ¢fZ¯tf¢fZkTUb<UvGTvGTvGTfLSvGTm=J`9H`9H`9Hb<U`9H`9H]-E]-EQ,CR5EN%@?:B%>R5ExÖÖØÞèâÞèâÞèâÞèâËßØÆØÓžµwv{ydux[hx[hx[hdlycgx[hwKe]hkndlycgycgycghThycgkndlycgx[hx[hx[hycgydu]hk}dlycgx[hx[hx[hx[hrl{k}ydux[hhThu]~x[h]hu]~lTVx[hÅÜÅÜÄÜÇäÅÜ€ÆäÅÜÅÜÅÜÅÜŽØÅÜ¡µÎŽØÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÆäÅÜÅÜÅÜÅÜÅÜ¥ÊÛ€ÅÛÊܱްl_¢fZ ]V¢fZkcY¢ifmm¯tfl_l_¢if¢fZ ]V¢if¢fZe[e[l_©o\Wm=J>TvGTm=JhCQhCQhCQm=Jm=J`9HhCQm=Jb<UfLS]-E`9HR5E`9HN%@N%@A3DC(NR5E¬ŒÜáÞÞèâÞèâÞèâÔãÝÃÐÒŽÌΞµqucx[hycgx[hx[hdlx[hx[h]hycgdlv\Zv\Zdlx[hdldlx[hdMhvTYx[hk}yduyduyduydux[hvTYx[hvTYx[hyduycgydux[hwKeu]~u]~yduvTYycghThÅÜ¡µÎÅÜÅÜÅÜÄÜÄÜÅÜ€ÅÛÅÜÅÜÅÜ€ÆäÄÜÄÜÅÜ€ÆäÅÜÅÜ€ÆäÅÜÇäÅÜ€ÆäÅÜÅÜÇ䀯ä¥ÊÛÅܰ±ÃŽ±ÃŽmm ]V ]V¢fZ¢if¢fZ¢fZ£sg¯tfl_l_¢if¢fZ¢if¯tfe[e[¶j¯tf£sg¢fZm=Jm=JvGThCQm=JhCQn=UhCQvGTm=Jb<Um=Jm=Jm=JhCQ`9H]-ER5E]-E]-EN%@B%>N%@B%>b<UŸ£®ÜáÞÞèâÞèâÞèâÔãÝÃÐÒÆØÓ²žwv{ycgx[hfLS]h]hx[hx[hycg]hdlknycgycgdl]hx[hydux[hx[hycgx[h]hdlu]~u]~x[hdlyduu]~x[hycgdlx[hx[hx[hk}k}|kzx[hÅÜÅÜÅÜÅÜÇäÇäÅÜÅÜÅÜÄÜÅÜÅÜÅÜÅÜÄÜÅÜÇäÇäÅÜÅÜÅÜÇä€ÅÛÅÜÇäÅÜÇäÅÜÅÜ ¯°¹ÆÆ×ÃÖØÊ¢fZ¢fZ¢fZ¢if£sg¢if£sg¢fZ£sg£sg£sgl_¢ifl_l_£sge[l_¢if¢fZ¢fZkZvGTvGTn=UhCQm=Jm=Jb<UhCQvGTm=Jm=J]-Eb<Ub<U`9Hm5I]-E]-ER5EQ,CQ,CQ,CB%>B%>B%>hCQÀžÀÜáÞÞèâãïàÞèâËßØÆØÓŽÌΰ|kzydux[hvTYx[hycgx[hvTYx[hdlk}dlx[hx[hk}dl|kzx[hx[hyduu]~x[hvTYvTYydu]hydudlycgyduv\Zx[hx[hycgvTYydu|kzyduÅÜÇäÅÜÇäÅÜÅÜÅÜÅÜÅÜÅÜ€ÅÛ¡µÎÅÜÄÜÅÜÅÜÅÜÅÜÅÜ¡µÎÅÜÄÜÇäÅÜÅÜÅÜÊÜ€ÅÛš¶ °±ÆØÓÔêÙÖØÊcY¢fZ¢ife[¢fZ¢if¢fZ¢if¢fZ£sgl_l_mm£sg¢ifl_ ]Ve[¢fZ¯tfe[¶je[TUvGTvGThCQhCQn=Um=JvGTvGTm=J`9Hn=UbDBm=J`9Hm=J]-ER5E`9HbDB`9H]-EQ,CB%>B%>C(NwKeÍÈÎÜáÞÞèâÞèâÞèâËߨÃÐÒ¢À»¡|kzycgv\ZvTYdlycgx[hv\Zknvycgdlx[hx[hu]~x[hx[hyduycgyduycgi[jx[hdlk}vkk}dlydux[hycgx[hyduyduk}dlÅÜÅÜÅÜÅÜÅÜÅÜ€ÅÛ€ÅÛÅÜÅÜÅÜÅÜÅÜ€ÆäÄÜÄÜÅÜÇäÅÜÅÜÄÜÅÜÇäÅÜ¥ÊÛ€ÅÛÅÜŽØ ¢ÃÐÒÞèâÔãÝx¢fZ ]Vk¯tf¬en¢if¢if¢if¯tf¢fZ£sgl_l_ ]V¢fZ¢fZ ]f¶ye[mml_¯tfŒue¯tfcYvGThCQvGTm5Im5IvGTvGTvGThCQhCQm=J`9Hm=J`9Hm=J`9H`9HbDBm=J]-E]-EQ,CB%>N%@B%>Q,CdlÖÖØÞèâÞèâÞèâÔêÙÆØÓŽÃ΀ÅÛdldltjvkvlex[hvTYx[hycgx[hx[hycgx[hx[hx[hvTYhThycgyduydudlx[hx[h]hknk}yduydux[hydux[hx[hkndlÅÜÅÜ¡µÎ€ÅÛÅÜÅÜÅÜÇäÅÜ€Æä€ÅÛÅÜŽØÅÜÅÜÄÜÅÜÅÜÅÜÅÜÅÜÇäÊÜÅÜ€ÅÛ€ÅÛŽØÃÐÒÞèâÔêÙfMT ]f¢if¢fZl_¢if¢fZ£sg¢fZl_l_e[l_¢fZ ]V ]Ve[l_l_¢ife[ ]Vl_e[¶jl_£sg\WfLSfLShCQhCQwKem=JvGThCQhCQhCQ`9Hm5Im=Jm=J`9H`9H`9H`9H]-E]-EQ,CQ,CN%@B%>C(NA3DxÜáÞÞèâÞèâÞèâÔêÙÆØÓÃÐÒ¢À»vki[jx[hdlknvkdlvTYycgk}dlydux[hu]~x[hi[jx[hyduydux[hx[hwKex[hk}k}dlycgu]~x[hycgdl|kzyduÇäÇäÅÜÇäÇäÇäÄÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜ¡µÎÅÜÅÜÅÜÄÜÅÜÅÜÅÜÇäÊÜÊܲžÃÐÒÜáÞÔêÙbDBTU¢fZ¢if¢fZ ]V¢ifl_l_£sg¢fZ£sg£sg¢fZ¢fZ¯tfl_e[l_Š ]V¢fZe[e[ ]Vl_Œuel_¯tfcYTUhCQvTYvGTm=JhCQvGTvGTm=Jm=J`9H`9H`9Hm5I`9H`9H]-E`9Hm5I`9HR5EQ,CQ,CB%>N%@AE°§ÂÔãÝÔãÝÔãÝÔêÙÞèâËߨÃÐұÎÃÐÒ×ÐÉÂÈœ¯°skRc\Oycgycgydux[hu]~k}x[hx[h|kzdlx[hycgx[hx[hx[hycgyduk}k}]hdlx[hx[hycgyduÅÜÅÜÅÜÅÜÄÜÇäÅÜÅÜÅÜ¡µÎÅÜÅÜÅÜ€ÆäÇäÅÜ€ÆäÇäÅÜÅÜÅÜÅÜ€ÅÛ€ÅÛÅÜÃÐÒÞèâÔêÙ¡§v_LBbDBwKe¢if¢fZ ]V¢if¢fZ£sg¯tfl_l_¢fZ£sg£sg¢fZl_¢fZl_¢fZ©o ]fe[l_¯tfl_e[l_l_¯tf£sg ]V\WvGTvGTvGTm=Jb<UhCQvGTvGThCQhCQbDBhCQ`9H`9Hb<U`9H`9H`9H]-EQ,CQ,CB%>C(NC(NKhÜáÞÔãÝÔãÝÞèâÜáÞÞèâÞèâÔãÝš® °±š®°Šªœµ°ÐÄ¿ÖÖØÄÐÀÂÈœ ¢f|ueycgyduv\Zx[hdlycgycgycgvTYx[hdldlk}knk}x[hx[hx[hyduk}ÅÜÄÜÅÜÅÜÅÜÇäÇäÅÜÅÜÅÜÅÜÅÜÅÜ€ÆäÅÜŽØÅÜÅÜÅÜÅÜÇäÅÜÅÜÅÜÃÐÒÞèâãï౎°_LBbDBb<UMT ]V¢fZ¢ifl_¢if¢fZ¯tfl_£sg¢fZ ]V£sg¢fZl_¢fZ¢if¢fZ¢fZ¢if¯tfl_l_e[e[ ]Vl_¯tfŒue¯tf¢fZ ]V ]VMTvGTvGTm=JvGTfLSvGTfLShCQm=Jm=Jb<U`9H]-ER5E`9H`9Hm5I]-EQ,CC(NN%@n=UÜáÞÞèâÞèâÔãÝÞèâÞèâÔãÝwv{³š®š®š®š®¯°œµ°ÐÄ¿ÖÖØÖØÊÂÈœ£³}gvlex[hydu|kzyduvkknkn|kzx[hx[hx[hu]~ycgycgÅÜÅÜÅÜÅÜÅÜÊÜÅÜ€ÆäÇäÅÜ€ÆäÅÜ€ÅÛ€ÆäÅÜÅÜÇäÅÜÅÜÇäÅÜÅÜÅÜoÃÐÒÔãÝãïàÁÀžaTL_LBSDCSDC¢fZ¢fZ\We[mml_£sg¢fZe[e[l_¯tfcYcY¢if¢ifl_¶j¶yl_¢if¢fZ¯tfe[e[¯tf¢fZ£sg¢ife[¯tf¢if¢ifmm¢fZvGThCQn=Um=JvGTn=Un=UhCQm=Jm5I`9Hm5Im=Jm5I]-E`9H]-E]-EQ,CMAn=UÔãÝÞèâÞèâÔãÝÞèâÞèâËߨ°fqucvleycgwv{¡³¡³ ¯ ¯š®š®°ŠªŸ¯ÍÈÎÖÖØÄÐÀÂÈœ¡§v|ycgycgv\Zx[hdldl|kz|kzi[jÅÜÅÜÅÜ¡µÎ€ÆäÅÜÅÜÅÜÅÜÅÜÅÜ€ÅÛÅÜÅÜÅÜÅÜÅÜÇäÅÜ€Æä€ÅÛÊÜÀÇÏÔãÝãïàÄÐÀc\O_LBbDBSDClTV\W ]V¢fZ ]f£sg¢ifl_¢fZ ]V¢ife[mm¢if ]f¬enl_Нtfl_¢fZ¢fZ¢if¢fZe[l_l_l_¢fZ¢if¢ifl_l_¯tfe[¢if¢fZTUvGTm=JfLShCQvTYvGTm=JwKen=UhCQhCQm=Jm=J`9HQ,C`9H]-E]-EwKeÜáÞÞèâÞèâÞèâÖÖØ°Šªc\Oi[jwv{¡³¡ãïàËߨvlepdQrl{wv{³¥š°š®°ŠªÀžÀÐÄ¿ÃÐÒÄÐÀŽ¿ ¢v_pdQx[hu]~ÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÄÜÄÜÇäÅÜŽØÅÜ€ÆäÇ䀯ä€ÅÛÅÜÀÇÏËߨãïàÆ×ÃaeNfLShCQSDCaTLQ,CMT¢fZe[¢fZ¢fZl_e[e[¢fZ¢fZ¢if¢ifl_ ]Vmme[¢fZl_l_e[£sgl_¯tf¢fZ¢if¯tfŒue¯tf¢if£sg£sg¯tf¯vve[¢if¢if¯tf£sgvTYfLShCQm=Jm=JvGThCQm=Jm=Jb<Um=JhCQb<Um=J`9Hb<U]-EUeÃÐÒœµ°pdQaTL_LBaTL_LBfLSbDBSDCSDCR8VaDhŸ¯ÜáÞÖØÊ¢¥¡hwv{qucpdQyduv¥š®š®š®°Šªœµ°ÍÈÎÃÐÒÄÐÀÇäÅÜÅÜ¡µÎ€ÅÛÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÆäÅÜÇäÅÜÅÜ€ÆäÅÜÊܰ°¹ÆÆØÓãïàÔãÝpdQlTVaTL_LBc\OR8V?:MT¢fZ£sgl_mm ]V¢fZ£sg£sgl_¢fZ£sgl_e[¢fZ¢fZ¢fZ ]V¶je[l_¯tfl_©ol_¢ifl_¯tf¯tf¢fZ ]f£sg¯tf¯tf¯tf¯tf¢ifl_l_kZvGTvGTm=JhCQvGThCQhCQhCQhCQhCQ`9Hm=Jm=J`9H`9HhCQfLShCQR5EQ,CA3DA3DQ,CN%@R5ER8VSDCdMhTJdfLSÍÈÎÂÈœ±Ž°_LBfLSfLSaTLu]~vššv_qucvlerl{v ¯š€È€Æä€ÆäÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÄÜÅÜÅÜÅÜÅÜ€ÅÛ€ÅÛ¥ÊÛš¶ °±ÆØÓÞèâÔêÙqucaTL_LB_LBc\OSDC?:N%@VV¢fZ¢if¢fZe[¢fZe[¢fZ¢ifl_mm¢fZ¢if ]V ]V ]V¯vvl_e[l_mm¯tfl_¯tfl_l_¢if¢if¯tf©o¢if¢if¢ifmml_Œuel_mm¯tfŒue¯tf]hb<Ub<UhCQvGTvGTvGTm=Jm=JfLShCQhCQbDBfLS`9Hb<U`9H`9HN%@B%>B%>B%>?:3;28283;Q,CÁÀžpdQaTLlTVlTVl\VlTVlTVvTYfLSlTVvTYvTYk}¢z{|uevlevlewv{ÅÜÅÜÅÜÅÜÅÜÇäÅÜ€ÅÛÅÜÅÜÅÜÅÜÅÜÅÜ€ÆäÇä€ÅÛÅÜ®Œ¡ÃÐÒãïàÔêÙ|ueaTLaTLfLSc\OSDCQ,CQ,C]-Ee[e[¢fZ¢fZ¢if¯tf¯tf¢if¢ife[l_l_¢fZ ]V¯tf ]Vl_¯tf©o¢fZe[¢fZ¢if¢if¢if¢if¢if£sg ]Vmm¯vv¢ifk ]V¢ifl_¶j¯tfl_¢fZl_¯tf¯tfMThCQ`9HhCQfLShCQfLSlTV|kz|gi[jR8V`9H]-E]-EQ,CN%@N%@N%@?:3;4$AaTLvledMh?:28?:B%>Q,CbDBfLSlTVv\ZvTYv\ZlTVlTVvTYlTVfLSvTYvTYk}x¢¡€Æä¡µÎÅÜÅÜÇäÅÜÇäÅÜÄÜÅÜÇäÅÜ€ÆäÅÜÅÜ¥ÊÛ€ÅÛŽØÃÐÒÞèâÔêÙgaTLaTL_LBlTV_LBN%@Q,C]-E]-E ]Ve[¢fZ¢fZ£sg¢fZl_£sg¢ifl_¢if¯tf£sg¢fZ¯tfl_¯tfe[£sg ]V ]V¯tf¢fZ¢fZ¢ifmm¯vvl_l_¢if¯vv£sg¯tf¢fZ¢fZl_¯tf¯tfl_¢if ]V ]V£sg¯tf¢iffLSl\VpdQ| ¢¡¡ °±vGTb<Um5I`9HR5E`9H]-E]-EN%@MAMAydu|ycgQ,CC(NB%>AE?:B%>?:?:2828B%>N%@]-EbDBfLSl\Vl\Vv\Zv\ZvTYlTVfLShCQfLSlTVvTYÅÜÇäÅÜÅÜÇäÅÜÄÜÅÜ€ÅÛÅÜÇäÅÜÅÜÅÜÅÜ€ÅÛÄÜÃÐÒÞèâÔêÙaTLlTVfLSlTVaTLMAN%@N%@]-Em5I ]Vl_l_l_¢fZ¢fZl_l_¯tf¢fZ¢fZcY£sg¢fZ©ol_¯tf ]V ]Vl_mmŒuemm¢ifl_¢if¯tf¯vv¬enk¢ifl_¯tf£sg¢if¢if¢if¯tf¯tf¯tf¯vv¢if¢if ]ffLSf¥š®š® ¯vTYhCQm=JhCQ`9Hm5I]-E`9HQ,CC(Nb<UpdQ_LBQ,CN%@N%@B%>MA?:N%@N%@MAN%@N%@?:MA?:?:AE?:B%>N%@`9H`9HlTVvTYl\VpdQl\VlTVÅÜÅÜÅÜ€ÆäÅÜÅÜÅÜ€ÅÛÅÜÅÜÅÜ€ÆäÅÜ€Æä¥ÊÛ¢À»ÃÐÒÞèâÔêÙ¯ŠlTVlTVaTLaTLc\OB%>N%@Q,C]-E]-E`9HcY ]V¢fZ£sg¯tf¯tf¢fZ¢fZ£sgl_¢if¢fZ ]V ]Vl_e[e[l_¶jl_l_©ol_l_l_e[ ]V¯tf¯tfl_¯tf¢if¢if¢ifmml_¢if¢ifkZ£sgmm£sg¢if TebDBšš`k|[t^vbDBn=U`9Hm5IhCQb<U`9H`9H]-EN%@k}wv{Q,CB%>N%@Q,CR5EQ,CN%@Q,CQ,CN%@N%@Q,CN%@N%@B%>?:MAN%@B%>Q,CAE?:?:?:AEB%>Q,Cb<UÅÜÅÜ€ÅÛ¡µÎÇäÄÜÅÜ€ÅÛ€ÅÛ€Æä€ÆäÅÜ€Æä€ÅÛÄÜtwŽÃÎÞèâãï௞l\VlTVlTVlTVl\VN%@B%>Q,C`9H`9Hm5Im=J¢fZcY¢fZ¢fZ¢fZ£sg¢fZ¢fZ¢fZ¢ifl_e[¢fZ ]V ]Ve[¢if¢fZ ]V ]V¢fZ£sgl_¯tf¯tfe[e[\Wl_¢ife[£sgkZvkvkvk£sgx¢if¢fZ¢if¬enl_£sgkZ±ÃŽbcybcy`k|[t[t^vad©vTYfLSb<UC(NC(NhCQm5Im=J`9H]-E¡³cfaA3DC(NR8VQ,Cb<U]-E]-ER5E]-ER5E]-EQ,CQ,CN%@]-EQ,CQ,CQ,CN%@N%@MAN%@N%@MAN%@MAN%@ÅÜÅÜÅÜÄÜÅÜÅÜÅÜÅÜÅÜÅÜ¥ÊÛ€ÆäÅÜÅÜduÀÇÏÔãÝãïàÂÈœl\Vl\V_LBaTLc\OA3DN%@Q,C]-EbDBm=Jm=JvGT¢if¢fZ ]V ]Vl_¯tf©ol_cY¢fZ¢if£sgl_¢fZ€o¢if¢ifl_ ]V¢fZl_l_ ]V¢fZ¢fZl_l_¢ifkZknkn|vk|Нtfmm¢if¢if ]Vl_mm¶yÄÐÀžµ`k|TYn[t^v^vaa¯°¯°gz{4$A3;b<U`9Hb<U`9HN%@š±ÃŽ ¯oB%>R8Vb<Uwv{]-ER8Vb<U]-E`9H]-E]-E]-ER5E]-E`9H`9HQ,CQ,CN%@N%@N%@N%@]-EN%@N%@]-EÅÜÅÜÅÜÅÜ€Æä€ÅÛ€ÆäÅÜ€ÅÛÅÜÅÜ€ÅÛÅܰŽÃÎÔãÝãïàÄÐÀpdQv\ZaTLaTLpdQQ,C]-E]-ER5E]-E]-E`9Hm=J ]V¢fZl_¢if¢fZ ]V¢if¯tf¯tf£sg¢fZ ]V¢fZl_l_¯tf¢fZcY¢fZ¢ife[¢fZ€o¢if¢ifTUdlvkvk||šwv{oduk}¢if¢if¯tfe[¢if ]f¢e|¶yÞèâ¢À»[tRdZ^v^vd©ad©×ÐÉŸ¯¡°¹ÆR5E]-E`9H`9H`9HR8VR8V±Ž°ŽÌΡv\ZfLSN%@N%@]-EaDh`9Hm5Im5Im5Im5I]-EbDB`9HbDB`9H`9H]-E`9H]-Em5Ib<U]-E]-E]-EN%@N%@]-EÅÜ€ÅÛ€ÅÛ¡µÎÅÜÅÜÅÜ€ÅÛÅÜ€Æä¥ÊÛÅܰžµËߨãïàÆ×ÃpdQc\OaTLlTVpdQQ,CN%@]-ER5Em=J`9Hm=Jm=J ]V¢fZ ]V¢ifl_¢if ]V¢fZ¢fZl_l_¯tf¢if¢fZl_e[¢if ]V¢ife[¢fZ¯tfl_©o¯tfl_MTv\Z|yduhTh °±TYn[l^vvk ]V\W¢if¯tfmme[ ]f»ãïàŽÌÎodugad©^vd©d©o¢ycgbDBlTVQ,Cb<Um=Jm=Jn=Ub<UR8V°¹ÆŽÌÎR5ER5E`9HQ,CR5E]-E]-En=Um5In=Ub<Um5IhCQm=Jm=JhCQ`9H]-E`9Hb<Ub<U`9H`9H]-E]-E]-E]-EQ,CÅÜÇäÅÜÅÜ€ÅÛÇäÅÜÅÜ€ÆäÊÜÅÜ~¡¹ °±ÖÖØÞèâËߨqucl\Vv\ZaTLpdQR5EB%>]-EQ,C]-E`9Hm=Jm=JMT\W¢fZ ]f¢fZ¢fZ£sgl_l_¢fZ¢fZl_l_¯tfe[e[ ]V¶j ]Ve[e[e[l_¢fZ¢fZ¢fZl_k|aTLR8VQ,CR8V°¹Æ¡wv{^vaxl_¢if\W¢fZe[mmmm ãïàËߨp¡kwd©d©d¬d©d¬o¢£sgbDB`9H]-E`9Hm5Im=JvGTn=Ub<U°¹ÆŽÌÎR5E`9H]-Em=Jm5Im5Ib<Ub<UhCQm=JvGT`9Hm=Jm5Im=Jm=J`9H`9H`9HfLSb<Ub<UbDBhCQm5Im5Ib<Ub<UÅÜÅÜÅÜÅÜÅÜÊÜÅÜÅÜÅÜÅÜ~¡¹š®ÆØÓãïàÔêÙv_c\Oc\OcfaskRR5EN%@]-E]-Em5I]-Em5Im=JVV¢fZ¢if ]V ]V¢fZ¢fZ¢if£sg¯tf¯tfe[l_e[l_¯tfl_l_¯tfl_¯tfe[e[ ]V¢fZ¯vv¢fZ¢if¢e| ¢vleA3DR8VdMhËߨ±Ž°tw^voxmme[e[e[¢fZ ]fe[ ãïàãïà°o¢d©d©d©d©d¬o¢¢ifwKehCQm=Jm5I`9Hn=UhCQb<UR8VŽÃÎŽÌÎ`9Hm5In=Um=Jm=Jn=UvGTb<Ub<U`9Hm5Im5Ib<Un=UvGTm=J`9H`9H`9Hm=Jn=Um=Jn=UhCQb<Ub<U`9Hb<UÇäÇäÅÜÅÜ€ÆäÅÜÇä€ÅÛÅÜ®Œ ¢ÃÐÒÞèâÞèâËߨcfarl{bcyvleSDCMAQ,C]-E]-E`9H]-E`9HVV ]V¢fZl_¢fZl_l_l_¢fZ¢fZ¯tfl_l_l_e[¢fZ¢ifl_l_¶jl_l_e[ ]V¯tfl_¯tfl_e[¢ifÄÐÀš¶dub<UdMhu]~ÞèâÃÐÒtwad©xl_l_l_l_¢fZ¢fZ ]f ãïàãïಞ¡n¯d©d©o¢d¬o¢l_MThCQbDBhCQm=Jn=UhCQaDhb<UÀÇÏŽÌÎ]-Em5IhCQhCQm=Jm=Jn=Um=Jm=Jn=UvGTvGThCQm=Jn=UhCQm=Jm=Jm=JfLShCQfLShCQvGT`9Hm5Im5Ib<UÅÜÅÜÅÜÅÜÊÜ€ÅÛÅÜÅÜÄÜÃÐÒÔãÝÔãÝÔêÙŽÌÎ_LB]-E`9H`9H`9Hm=Jm=JES ]V\W¢fZ£sg¢ifl_£sgl_l_¢fZ¢fZl_¯tf¯tfl_¯tf¢fZ¢fZe[¯tfe[e[l_l_l_e[¯vv¯tfmmmmÖØÊ±ÃŽrl{hCQyduu]~ÜáÞÆØÓkwao¢¯vv¢fZ ]V¢fZl_©omm¬enͬ¥ãïàãïà¢À»°n¯d¬d©d¬d©o¢¢ifvGThCQfLShCQvGThCQn=UaDhb<UÀÇÏÆ×ÃhCQb<UhCQwKen=UhCQMTvGTvTYhCQvTYm=JvGTvGTm=Jm=Jm=Jm=JhCQm=JhCQm=JhCQvGTn=Un=UhCQhCQÅÜÇä€ÅÛÇäÅÜÅÜÅÜÅÜŽÃÎŽÌÎÔãÝÞèâÔãÝÔêÙÔãݰ¹Æ ¯l\VbDB`9H`9H`9Hm=JTUl_¢ifVV\Wdldl¢fZ¢if¢fZ¯tf©o¢if¢if ]Vl_l_l_¢fZ ]V¢fZ¢fZl_¶je[e[¯vv¢fZ©ol_e[¯vvÖØÊÄÐÀwv{R8VbcyyduÞèâÆØÓ°d©°£l_e[¢fZ¢fZ£sg¯vv¬enÍ·®ãïàãïà¥ÊÛ~¡¹n¯d¬d¬d¬d¬p¡vTYvTYvGTvGTvGTESTU\WhCQR8VÀÇÏŽÌÎm=Jn=UvGTvGTwKevGTvGThCQvGTvGTvGTvGThCQhCQhCQm=JhCQvGThCQvGTm=Jm=JvGThCQwKehCQhCQvGTÅÜÅÜÅÜÇ䡵ÎÅÜÅÜÆØÓÔãÝÔãÝÔãÝÔãÝÔãÝÞèâÞèâÔãÝš®¡¡l\V`9Hm=Jm=Jm=JvGT¢fZ£sg¢fZN%@l\V|£l_ ]V¢fZ¢fZ¯tf¯tfl_e[¢fZe[¯tf¯tfe[l_¯tfe[e[e[e[¯tfe[¯tf ]V¢fZmmÜáÞÄÐÀz{hTh`k|twÞèâÄÐÀ¡o¢°£sge[l_¯tf£sg ]V ]f ]fÍ·®Þèâãïà¢À»~¡¹~¡¹t€Œn¯d¬d¬o¢hCQwKevGT ]f£sg¢fZ¢fZ¢fZn=Ub<UÃÐÒÔêÙm=JvGThCQvTYhCQhCQhCQvGTvGTvGThCQwKehCQhCQhCQhCQm=Jn=UvGTn=Um=Jm=JhCQhCQhCQn=Un=Um5IÅÜ¡µÎÅÜŽØÅÜÅÜÅÜÀÇÏÃÐÒÔãÝÞèâÔãÝÔãÝÀÇÏÀžÀÖÖØ±ÃŽ ¯ °±v\Z`9Hm5Im=JvGT¢fZ ]V¢fZ¢ifm=Jc\Orl{l_¢fZe[l_¢fZ¢ifl_l_£sg¢fZ¢fZ¯tf¯tfe[l_e[e[l_¢fZe[e[©o¢fZe[mmÜáÞÄÐÀi[j|kztwÜáÞÄÐÀ°p¡°cY¢ifl_l_l_£sg¢if¢e|Í·®ãïàÞèâ¢À»šºt€Œ~¡¹t€Œt€Œp¡o¢wKe ]VvGT ]V£sg¯tf¯tf©owKen=UÜáÞãïࢠtvGTm=Jm=JvGTvGTvGTvGTMTvGTwKelTVvGTm=Jm=JwKevGTwKevGTn=UhCQm=Jm=JhCQvGTn=UhCQhCQvGTÅÜ€ÅÛÅÜÅÜ€ÆäÅÜ€Æä¥ÊÛ¥ÊÛÃÐÒš®quccfaRdZaeNZsPaeNSLBSLB`9H`9Hm=Jn=Ue[¯tf¢fZ ]V¢fZTUš¶rl{|kz¢fZ¢fZl_e[l_¢fZl_l_¯tf£sg¢fZ£sge[ ]V£sgl_l_l_l_©ol_¶je[¬en¶jÜáÞÄÐÀi[jrl{xÞèâÆØÓ°p¡°tj¢fZ ]V¢fZ¢fZ¢fZ¯vvmmÍ·®ãïàÞèâ±Ã޲žt€Œ~¡¹t€Œt€Œšº°\W ]VTU¢fZ ]f£sgl_£sg]hvGTãïàãïà¡vvGTvGTm=JvGTvGTvGTvGThCQvGTvGTvGTn=UvGTn=UvGTwKewKevGThCQvGThCQvGTn=UvGTwKewKewKevGTÅÜÇ䀯ä€ÅÛÇä€ÅÛÅÜ€ÆäÇ䀯䀯äÅÜÅÜžµ°z|SLBB%>Q,Cm=Jm=Jm=J\W¢ifmme[¢if ]f¢if±ÃŽ|kz¢fZe[e[l_¢fZ¢if¢fZl_l_¯tfl_¢ifVVe[©oe[¢if©o¯tf¯tfl_©o¢ifŒueµwÜáÞÆ×Ãrl{rl{ÞèâÄÐÀn¯³£sgl_l_e[¢fZ ]V¢if¢ifÍ·®ãïàãïà€ÅÛš¶~¡¹~¡¹~¡¹®Œ®Œ¢if\We[¯tf¯tfmm¢fZ¢e|cYvGTãïàãïà¡vwKewKevGTvGTvGTm=JvGTvGTn=Un=UvTYn=Un=UvGTvGTvGTvGTvGTvGTn=Un=UvGTwKevGThCQfLSn=UvGTÅÜÅÜÅÜÅÜÅÜ€ÆäÅÜ€Æä€ÅÛ€ÆäÅÜ€Æä¥ÊÛ€Æä¥ÊÛ¥ÊÛkw?:`9Hb<UvGT ]V¢fZ ]V¢fZl_¢ifmm¶jÞèâ|kz¢fZ¢ifl_¯tf¯tfl_£sg¢fZ£sg©o¯tf©o¢fZ¢fZ¯tf¯tfl_l_¢fZ£sg¢fZ©o¢fZ¬en¯vvÞèâÄÐÀdutwÞèâÆ×ðš¶£sg¢ife[e[¢fZ ]f ]fmmÐÄ¿ÞèâÞèâ€ÅÛšº~¡¹~¡¹šºš¶šº¥¢if ]V¢fZmml_l_e[¢ifk¢ifãïàãïàgvGTfLSvGTvGThCQm=JMTvGTvGTn=UvGTvGTvGTvGTvGTvGTvGTwKevGTvGTfLSlTVhCQvGTn=UvGTvGTvGTÅÜÅÜÇäÅÜ€ÅÛÅÜÅÜÅÜ€ÅÛÇäÇäÅÜ¥ÊÛ¥ÊÛ¥ÊÛ¥ÊÛ°vleR5Em=J\W¯tf£sgcY\W ]V¢if£sg¶yÔãÝ¡v¯tf¢fZ£sg¢if¯tf©o¯tfl_¢fZ¢if¢fZ¢fZe[e[¯tf£sgl_¢fZe[©oe[¶y\W ]fµwÞèâÄÐÀz{ÞèâÆØÓ ¯š¶£sg¢if¢ifl_l_¯tf£sgmm×ÐÉãïàÞèâÅܲžšºt€Œšºšºš¶e[e[l_¢if ]Ve[l_mmŒxxµwãïàãïà¡v¢fZcYvGTfLSvGTTUTUvTYTUvGTfLSn=UwKewKevGTMTm=JvGTwKevGTwKevGTn=UvGTvGTwKevGTvGTÅÜ€ÅÛ€ÅÛÅÜÅÜ€ÅÛÅÜ¡µÎÅÜÅÜ€Æä€ÅÛ€Æä¥ÊÛ¥ÊÛ¥ÊÛ¥ÊÛšº€o€oycgl_¯tf£sg¢if ]V¢if¢e|€oÞè⯞v¢if¯tfe[£sg¢fZ¯tf©ol_¯vve[ ]V¢fZ¢fZ¢fZ£sg¢fZ¢fZ€ol_Œuel_©oe[¬enµwÜáÞÆ×Ã¥ÞèâÆØÓ°šºš¶¢fZ¢if ]f ]f¢fZ¢fZ ]f¯vv×ÐÉãïàÞèâ€ÅÛšºšºt€Œ~¡¹šºšº¢fZl_e[¬en¢if¢fZ ]V¢if¬en¯tfãïàãïà¶yŒue¶j¢fZvGTMT©ol_¢if¢if£sgkZ ]VVVTUMTvGTvGTvGTvGTvGTvGTvGTwKevGTwKevGThCQvGTÅÜÄÜÅÜÅÜÅÜ€ÅÛÄÜÅÜ€ÅÛÅÜÅÜÅÜ€ÅÛ¥ÊÛ€Æä¥ÊÛ€ÅÛ °±k}¯ŠbDBl_£sg¢if¢if¢if¢fZ ]f¿ÜáÞŽÌÎ|¢fZ£sg¯tfl_¯tf¢if£sg£sgl_l_e[¢fZ ]V¢fZ¢fZ£sg¯tfl_l_©ol_£sg¢fZ¬en¶yÞèâÆ×Ã¥ÞèâÆØÓš¶ °±©o¢if ]f¢fZ¢fZ¢fZ¢if¯vv×ÐÉãïàÞèâÊÜšº~¡¹t€Œt€Œšºšº¡\WcY\W¢ifl_¯tfe[¢if¯vv¶yãïàãïà¡v¯tfl_¢fZcYTU¯vvmmmm¯vvmm¯vv¯vv¯vvmml_¢fZ¢fZ¢fZ ]V\WTUvGTvGTwKevGTfLSvGT>TÅÜÄÜÄÜ¡µÎÅÜÅÜÅÜÅÜ€ÅÛ€ÅÛ€Æä€ÅÛ€ÅÛ€Æä¥ÊÛ¥ÊÛ¢À»tjvGT¢fZl_¢ifl_l_£sg ]f¶yÞèâÄÐÀ|£sg ]V¢fZ¯tf¯tf£sge[¢fZ¢if¯tfl_l_l_l_¶jl_l_©o¢fZ£sg ]V£sg¢fZe[¶yÜáÞÆ×Ã¥ãïàËߨ ¢ÃÐÒÖØÊ©o£sg¢if¢ifl_¢fZ¢if¢if×ÐÉãïàÞèâ¢À»šºšº~¡¹šºšº®Œ£sg¢if¢if¢fZ¢if£sgmmmmŒxx¶yãïàãïà€o¢ife[mm¯tfŒxxmmµwx¯vv¯vv£sge[l_mmmm¯vv¯tf¯tf©o¯tf£sg¢ifkZ¢if\W]hTUESÅÜÅÜ€ÅÛÄÜÅÜÅÜÅÜ€ÅÛÅÜÇ䀯ä€ÅÛÅÜ€Æä€ÅÛ¥ÊÛ¥ÊÛ¡µÎ¢if¥TUe[¢fZ¢fZ¢if¯tf¢fZ¬en¿ÞèâÂÈœ¢if£sg¢fZ¢fZ£sg£sg¯tf¯tfe[l_e[e[l_¯tfl_e[l_ ]V¯tf ]Ve[¢fZl_ ]V¢fZÄ~hÞèâÆ×Ú®ÂÈœÖÖØÞèâÞèâÜáÞÜáÞÖØÊ¢fZ ]V¢fZ¢if¢ife[ ]fmmÖÖØãïàÞèâÅÜšºšºšºšºšºšº£sgkmml_¢if¢if¢fZ¢if¢if¶yãïàãïà£sg¬enŠl_¬en¯vv¯tfmm¢e|¢if¢e|£sg¯vv¯tf¯vvНvv¯vv¯tf¯tf£sgmmmm¯vvŒxx¯vv¯vvŒxx¯vvÅÜÄÜÅÜÇäÅÜÅÜÅÜÇä€ÅÛÅÜÅÜÅÜ€ÅÛ€ÅÛ¥ÊÛ¥ÊÛŽÌ΢À»cY\W ]Vl_l_¢if¢fZl_l_mm¿ÜáÞÄÐÀ£sg©o¯tfl_¢fZ£sg¯tf¯tf¯tf¬ene[ ]Vl_e[l_¢fZ¢fZ ]V ]Ve[l_e[€o ]V ]V¶yÜáÞÜáÞÜáÞÜáÞÖÖØÃÐÒÃÐÒÀÇÏÍÈÎÂÈœÂÈœ€o¢fZ¢fZ\W¢fZ¢ifmm¯vv×ÐÉãïàÞèâ¢À»®Œšºt€Œšºšº¡cY¢fZl_l_e[l_¢fZ ]fmm»Þèâãïà¶j¯tf¯tf¯tfl_e[¢if¢fZ ]fmml_mmmmµw¯tf¯vvkl_¯tfmmmmµw¯vv¯vvx¯vv¯vv¯vv¢fZÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÇäÅÜÅÜÅÜ¡µÎÅÜ€Æä¥ÊÛŽÌΡµÎTU\W¢fZl_l_e[l_¢fZ¢ifmm ÜáÞÂÈœcYl_¯tfl_¯vv¢fZ¢ifl_¯tf¯tfe[l_¢fZ¢fZ¢fZ¢fZ ]V ]Vl_e[ ]Ve[l_¯tf¿ÁÀžÃÐÒÍÈÎÃÐÒÀÇÏÀÇÏÀžÀ°ŠªpdQfLS\Wl_l_e[e[ ]V ]V¢if¯vvÜáÞÞèâÞèâ¢À»šºšºt€Œt€Œ®Œšº£¢fZ ]V¢fZ¢fZ¢ife[£sg£sgmm»ãïàãïà©o£sg£sg£sg¯vvl_l_¯vv¯vvŒxx¯tfŠ¢fZmm¢fZ¢if¯vv¯vv¯vvµw¯vvmm¯vv£sg¯vvmmmmmm¯vvÅÜÅÜ€ÅÛÅÜÅÜÅÜ¡µÎ€ÅÛÅÜ¡µÎÅÜ€ÅÛÅÜ€ÅÛ¥ÊÛ¥ÊÛ¥ÊÛ °±wKe\WVV¯tf¯tf¯tf¢fZ¢if¢ifmmÂ ÖØÊÁ·£sg ]V£sgl_l_¯tfl_¯tf£sg¯tfŒuel_l_¢fZe[e[¢if¯tf¯tfl_ ]V¢fZ£sg ]fÀžÀÁÀžœµ°švaTL_LBfLSTUcY ]V ]V¢fZ¢fZl_mml_¯tf¢fZ¢fZmmÜáÞãïàÞèâÄÜšºšºt€Œ~¡¹®Œ¡£e[l_¢fZ¢fZ¢fZ¢if¢ifl_¢if¿ãïàÞèâ£sg£sgŒxxmmmm¯vvŒxxŒueŒue¯vve[¯vve[mm¯vv¯vv¯vv¯tfl_¯vv£sg£sg¬enxmmmmНvveTÅÜÅÜÅÜÅÜÅÜ€ÅÛÅÜÅÜÅÜÅÜ€ÅÛÅÜ€ÅÛÅÜ€ÅÛ¥ÊÛ¥ÊÛ °±MTMT ]V¢fZl_l_¯tf¢fZmm¬enÅ©ÜáÞ€o ]V£sg¢fZl_e[l_l_e[l_e[l_¯tfl_e[¯tfl_l_l_l_¢fZ ]V ]V£sgcYTUfLSvGTTUVV ]V ]V\W¢fZ¢fZl_l_e[¢ife[¢fZ¢if¢fZ ]Vmm¯vvÜáÞÞèâÔãÝÁ³šº~¡¹t€Œt€Œšºšº¢fZe[l_l_l_¢fZ ]V ]V ]f¿ãïàÞèâ¯tf£sgŠ£sg£sg£sgl_¢fZe[µwl_¯tf¯tfŒxxmm¯tf©ommk¢if¬en¯vv¯vv¯vvkndMheThThf\}ÅÜÇäÅÜÅÜÅÜÅÜÅÜÇäÅÜÇäÅÜÅÜ€ÅÛ€Æä€Æä¥ÊÛ¥ÊÛš®\WMT¢fZ¢fZl_¢ifl_e[¢fZmmÅ©ÜáÞ¯tf¯tfe[¢fZ ]V¢fZl_l_¯tfl_¢fZ¢fZ¯tf¯tfl_l_e[e[¢fZ¯tfe[e[l_l_£sg¢fZcY¢fZ¢fZ¯tfl_l_ ]V¢fZ¢if¢fZ¢fZl_e[¢fZ ]f¢fZ ]V¢fZ¢ifl_ÜáÞÞèâÔãÝÁ³®Œšºšºšº®Œšº ]V£sge[e[¯tfl_l_¢if¬en¿ãïàÞèâ¯tfl_¯tf¢if£sge[mm¯vvŒueŒueŒueŒxx¯vvl_mml_mm¬enmm¯vvmmx[hTJdTJdeTf\}hThhTh|kzÅÜÅÜ€ÅÛÅÜ¡µÎÅÜÅÜÅÜ€ÅÛÅÜÅÜ€ÆäÅÜ€ÅÛ¥ÊÛ¥ÊÛ¥ÊÛ¡cY\W£sg¢fZ¢fZ¢fZ¢ifl_mmŒueÁ±ÖØÊ£sg¢fZe[e[mml_l_¢fZ£sgl_l_¯tf ]V¢fZ ]V ]V¢fZ¢ifl_Œuee[e[e[¯tfl_£sg ]V¢if ]V¢fZ£sgl_mml_¢fZ\W¢fZ£sg¯tf¯tfl_l_e[VV ]V¯tfÞèâãïàÔãÝÁ³®Œšºšº~¡¹šºšº|¢fZ ]f¢fZ¢fZ¢if£sgl_¯tf£sgÁ±ãïàãïà¢fZ ]V£sge[l_ŒueÄ~hÄ~hŒue¶jl_l_e[mm¯tf ]fmm¢ifdMhhThi[jbcyf\}f\}i[jhThi[jycgdlÅÜÅÜÅÜÅÜÅÜ€ÅÛÅÜÅÜ€ÅÛÇäÅÜ€ÅÛ€ÅÛ€Æä€Æä€Åێ̹¡¢if¢ifl_¯tf¢fZ ]V¢if¢fZ©o ÐÄ¿Á·l_¢fZe[¯tfe[l_e[¢fZ¢fZl_l_e[e[ ]Ve[l_¯tf¶j¶j¶j¢fZ¢fZ£sg¢fZe[e[l_l_l_ ]V ]V¢if¯tf¯tf¯tf¢if¢ife[¢if¢fZl_l_l_¬ene[ŒxxÜáÞãïàÔãÝÁ³®Œšº~¡¹šºšºt€Œ|l_e[mm¢if¢if ]f¢fZ¢ifmmÅ©ãïàãïà¢fZe[l_l_¯tfl_l_l_e[¯tfl_¬enmmŒue¯tfdMhf\}TYni[jbcyf\}i[ji[jk}k}tjkncYvTYÅÜÅÜ€ÅÛÅÜ¡µÎÅÜÅÜÄÜÅÜÅÜ€Æä€ÅÛ€ÅÛ€ÅÛ€Æä¥ÊÛŽÌΚ®cY¢ifl_¢ife[¢fZ ]V¢e|£sgÍÈÎÂÈœ©ol_¢fZ ]V¢fZl_Œuel_e[l_¢fZ£sge[l_¯tfe[ŒueŒue¶jl_¯tf ]V ]V¢fZe[ ]V ]V¢fZ¯tf¯tf¯tf¢fZ¢if¢fZ ]V¢fZŒuel_l_e[¢ifVV¢fZl_¢if¢ifÄ~hÜáÞÞèâËߨžµšºšº~¡¹~¡¹šº¡|¢fZ¢if¢if¢ifl_e[¢if ]f¬enͬ¥ãïàãïà¢fZl_¯tfl_l_¢fZmm¯vv¢ifl_¯vvx[hTJdi[jeTi[jf\}i[jf\}hThycgxkZk}]hx[hx[hu]~x[hÅÜÅÜÅÜ€ÅÛÅÜÄÜÅÜÄÜÅÜÅÜÅÜ€ÅÛÅÜ€Æä€ÅÛ¥Êێ̹šcY¢fZ£sgl_mmmm¢fZ ]VkZv\ZvTY¢fZ¯tfl_¢fZe[e[l_£sg¯tfl_l_l_¢fZ¢fZl_e[e[l_¶jl_ ]V ]Ve[e[¯tfe[l_ ]Vl_¯tfŒueŒuel_e[ ]V ]V¢fZl_¯tf¶jl_l_e[¢if¢fZ¢fZ¯vvÞèâãïàÆØÓžµ®Œšºt€Œšºšºšºtj ]f¢fZ¢fZcY¢fZ¢fZ¢ifl_¯vvÍ·®ãïàÞèâ¢if£sg©oe[e[¢e|¢if£sgdMhdMhhThhThf\}bcyhTheTdltjvkk}lTV]hlTV]hx[hx[hv\ZvTYvTYÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÅÛÅÜ¡µÎÅÜ€ÅÛ¥ÊÛ¢À»¡v¢if¢fZ¢if¢if¢if¢if¢if£sg¢fZ ]V¢fZ¢fZ ]V¯tfl_ ]V¢fZ¢fZ¢fZ¢fZ£sg£sg£sg¢if¢fZe[e[e[e[l_Œue¶jl_e[¶j¯tfl_e[¢fZe[l_l_¯tfl_mme[l_ ]V ]V ]V¢fZ¯tfe[¢fZl_ ]f ]f¯tfÜáÞãïàÆØÓžµ®Œ~¡¹t€Œt€Œšºšºtj¢ifl_¢if¢fZ¢fZkZ¢if¢if¢e|Í·®ãïàãïà£sg¢if£sg¯tftjdMheTTYni[ji[jdMhi[jdMhvTYdl]hdl]hdldli[jvTYu]~hThvTYwKex[hx[hx[hÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜÅÜ€ÆäÅÜÅÜÅÜŽÃÎ¥ÊÛ¡e[¢if ]V¢if¢fZ£sg¯tf¯tfl_¢fZ¢fZ¢fZ ]V¢fZl_mme[e[¢if¢fZ£sg¯tfl_l_¢fZe[ ]Ve[e[l_e[e[e[l_¯tfe[e[l_l_¶je[e[ ]fl_¢if£sg¯tfl_¢fZ¢fZ ]V£sg¢if£sg¢if¢if\W¯tfÞèâãïàÆØÓŽØ®Œ~¡¹t€Œt€Œ®Œšºx¢if¢ife[l_mm¢fZ£sg¢if TeÍ·®ãïàãïà¢iffLShThi[ji[ji[jTYni[jf\}vTYx[hdldlk}v\Zv\Zx[hu]~ycgydulTVx[hx[hhThdMhv\Zx[hlTVhThÅÜÄÜ¡µÎÅÜÄÜ€ÅÛÅÜ¡µÎ¡µÎÅÜ¡µÎÅÜ€ÅÛ€ÅÛ€Æä¥Êێ̹¡£sgl_¢if¢if¢if¢if¢fZ¢fZl_¢fZ¢if¢fZ¢if¢fZ¢ifl_l_¯tf£sg¢fZ¢fZl_l_l_£sg¢ife[¯tfŒueŒuel_e[e[e[e[¢fZ¢fZl_¯tfl_¯tfl_¯tfe[£sg£sgl_l_¯tfe[¢fZ ]f ]fkZ¢ifmm¬enµwÞèâãïàÆØÓžµ®Œšºt€Œt€Œ®Œšºtj ]V¢fZe[l_l_e[e[¢e|mmŸ£®ãïàãïàskRi[jl\VaTLdMhfLSlTVdldldlx[hx[hx[hx[hvTYwKex[hi[jx[hx[hv\Zx[hx[hi[jdMhvTYhThvTYvTYÅÜ¡µÎÅÜÅÜÄÜ¡µÎÅÜÅÜÅÜÅÜ¡µÎÅÜÅÜÅÜÅÜÅÜŽÌΣ¢if¢ifl_l_¢fZ ]V¢fZ¢ifl_l_l_¢fZ¢fZ¢fZl_l_l_¯tf¯tfl_l_¢fZ¢fZ¢fZl_l_e[¯tfe[e[ ]V ]VVVe[¶jl_l_ ]Vl_l_l_¯tf¯tf¯tf¢if ]V ]V¢fZe[l_l_mm ]V ]VcYcY¢if¶jÞèâãïàÆØÓ²ž®Œšº~¡¹šº®Œ¡¢ifl_e[l_¢fZe[l_¢fZfLSdMhwKeãïàãïàvkdMhhThpdQdlknvTY]hdl]h]h]hdl]hx[hvTYx[hwKek]hx[hv\Zv\ZvTYi[jycglTVvTYvTYÅÜÇäÄÜÄÜÅÜÅÜÅÜÅÜÅÜ¡µÎÅÜ€ÅÛÅÜÅÜ€ÅÛ¥ÊÛŽÌÎ|¢if£sg¢fZ¢fZl_e[l_ ]V¢fZe[©ol_¢if¢fZ¢fZ¢fZ¢fZ£sg¯tf¯tf¯tf¢fZ¢fZ¢fZ ]V¢fZe[l_l_¯tf¢fZe[l_e[e[e[e[e[ ]V¢fZ ]Vl_l_¢fZ£sg¢fZ ]V ]V ]f¢fZl_¯tf¢if¢if¢if¢if¢if©oãïàãïàŽÌÎÁ³šºšºšºšº®Œ®Œ¯vv¢if¯tf¯vv¢ifTUvGTfLSfLSTYnR8V®¢°¹ÆR5EvTYdlycgycgycgknycgvTYwKex[hx[hx[hx[hx[hv\Zx[hycgx[hx[hlTVlTVvTYvTYlTVycgv\ZvTYx[hÅÜ¡µÎÅÜÅÜÅÜÅÜÅÜÅÜ¡µÎÅÜÅÜÅÜ¡µÎ€ÅÛ€ÅÛ¥ÊÛŽÌÎx¢fZ¢fZ£sg¯tf¯tfl_l_¢fZ¢fZ¢fZ£sgl_l_l_¯tfl_l_l_¢fZ¯tf¯tfl_l_¢if¢fZ¢fZe[¶y¯tfl_e[l_e[l_©ol_¯tf¯tfe[¢fZ¢fZ¢fZ¯tf ]Vl_l_e[e[¢fZcY¢fZ¢fZl_£sgl_l_¢ifµwÞèâãïàŽÌβž®Œ®Œt€Œ®Œ®Œ²žkndMhTJdTJddMhTJdTJdi[jaDhdMhdlycgv\ZwKex[hx[hx[hv\Zv\Zx[hycgx[hx[hvTYhThx[hycghThdMhwKex[hhThlTVvTYx[hx[hl\VlTVpdQycgv\ZhThÅÜÅÜÄÜŽØÅÜÅÜÅÜÅÜÅÜÄÜ¡µÎ€ÅÛÅÜ€ÅÛ€ÅÛ¥ÊÛ€ÅÛ£sg¢fZ¢if¢fZ£sgl_¢fZ¯tfe[¢fZ¢fZ¢if ]V£sg£sgl_¯tfl_¢fZ¢fZl_¢fZl_l_Œuel_l_Œue¯vv¶j¯tfl_e[e[ ]V¯tfl_¯tf£sgl_e[e[e[ ]V¢fZ ]V¢if¢if¢ifl_l_¢fZkZ ]V¢if¯tf¢ifkŒyÞèâÞèâŽÌÎÁ³²ž®Œšº®Œ²ž®Œ|kzbcyi[jrl{rl{wv{x[hvTYv\ZvTYx[hvTYv\Zx[hl\VvTYx[hvTYx[hv\Zv\Zv\ZycgdMhhThfLSvTYv\Zv\Zycgu]~vlevleycgv\ZskRf¢ tÁÀžÐÄ¿ÄÐÀ¡³ÅÜÄÜÅÜÄÜ€ÅÛÅÜÅÜÅÜŽØÄÜÅÜÅÜÅÜ€ÅÛÅÜ¥ÊÛŽÌΣsgl_l_¢fZ¢fZ£sgl_l_£sg¢ifl_¢if¢fZ¢fZ¢fZ£sgl_¶j¯tf¯tf¢fZl_l_¢fZl_l_l_Œue¶j¯tf£sg¢fZ ]V ]V ]Vl_e[e[ ]Ve[l_l_e[¢fZ¢if¢if ]V¢if¢if¢if¢if¢if¢if¢if ]V ]V¢ifk¿ÞèâãïàÃÐÒ²ž®Œ®Œ®Œšº|kzycgdlv\Zx[hx[hx[hdlx[hx[hx[hlTVx[hx[hv\Zx[hfLSv\ZvTYfLSvTYycgycgv\ZpdQl\Vi[jl\Vl\Vycgvk¢ t¯žÂÈœ×ÐÉÀÇÏÀžÀ°Šª ¢¡ ¯ÀžÀÜáÞÅÜÅÜ¡µÎÅÜÅÜÅÜÅÜ¡µÎ¡µÎÄÜÅÜÅÜ€ÆäÅÜ€ÅÛÅÜŽÌΣsgl_¯tf¢fZ£sg¢fZ¢fZ¯tfl_e[¯tfl_l_¢if¢fZ¢fZ¢fZ£sg£sg¯tf©o¯tfl_cY¢fZcYe[l_¯tf¢fZ\W¢fZe[e[e[¶jl_ ]V ]V¢fZ ]V¢fZl_l_mml_e[¢if¢fZ¢fZ¢if£sgmm¯tf¢if ]V ]f\WÄ~hãïàãïàŽÌβž ¯tw|kzycg|kzknvTYl\Vx[hvTYx[hv\ZvTYwKex[hwKevTYx[hdMhhThycgvlev\Zi[jfLSfLSlTVl\Vvk¡v¯°ÂÈœÄÐÀÍÈÎÁÀž¯Š¡¡š¶š¶š¶¡ÖÖØÄÜÅÜÅÜÄÜÅÜÄÜÅÜ¡µÎÅÜÅÜÅÜÅÜ€ÅÛ¡µÎ€ÅÛ¥ÊÛŽÌ΢if¢ifl_£sgl_¢fZ¢fZl_l_£sg¢if¢if¯tf¯tf¯tfl_¯tf¢fZ¢fZl_¯tf¯tfl_©o ]V¢fZ¢fZl_ ]V ]V¢fZe[VVe[e[¯tfl_l_¢fZ ]VcY\WcY¢if¢fZ¯tfmml_¢if¢fZ ]V¢fZ¢ifl_l_l_¢fZ ]fŒyãïàÜáÞycgx[hycgv\Zycgv\ZycgvTYfLSvTYvTYlTVfLSvTYx[hx[hdlv\Zycgv\ZlTVlTVknh±Ž°ÂÈœÍÈÎÃÐÒÐÄ¿±Ž° ¢¡¡¡ ¯¥¡wv{rl{ycgc\OTTEaeNj[ÅÜÅÜÅÜÅÜÅÜÅÜ€ÅÛ¡µÎÅÜÅÜÅÜÅÜÅÜ€ÅÛ€ÅÛ¥Ê۱΢fZ¢fZ¢fZl_l_£sg¢fZ¢fZ¢fZl_¢if¢if¢ifl_l_l_l_¯tfe[¢fZ£sgl_¯tfl_l_l_l_Œuel_e[£sg£sge[l_e[¡v ]Vl_£sgl_l_¢if¢fZ¢fZ ]V¢fZ£sg¯tf£sge[¢fZ¢fZ ]f¢fZ¢ifl_¢if¯tf¢ifvkycgv\Zi[jhThycgx[hdll\Vv\Zknycgdlknvlex[hbDBlTVpdQh¯ŠÁÀžÂÈœÄÐÀÁÀž°Šª¥¡³z|wv{qucaeNc\OTYn¯°ÔãÝ¡vlez|twÅÜÅÜ¢À»ÅÜÅÜÅÜÄÜÅÜ¡µÎÄÜÅÜÅÜÇäÅÜ€ÅÛ¥ÊÛ¢À»cY ]V¢fZ¢fZ£sg£sg£sgl_l_¯tfl_£sg¢fZl_£sg¯tf£sgl_©o¢if¢fZ¢fZ¯tf£sgl_l_¯tfŒuel_l_¯tf¢fZe[ ]V¢fZ©o ]Ve[e[¢fZl_l_¢if¢fZ¢fZ ]V¢if¢fZ¯tfl_¯tf¯tf£sg ]VcY]hv\Zi[jv\Zi[jvTYv\ZvTYx[hknycgv\ZfLSSDClTVskR€o¯°ÁÀžÍÈÎÍÈÎÀžÀ±Ž° ¢¡¡¡z||wv{ycgpdQaeNpdQskRj[z{±Ž°ÞèâŽÌ¹c\O_LBSLBSDCSDCCKAÅÜÄÜÅÜÄÜÅÜÅÜÄÜÅÜÅÜÅÜÅÜÅÜ¡µÎ€ÅÛÅÜ¥ÊÛÊÜ¢fZ ]V ]V¢fZ¢fZl_¯tf¯tfl_¢ifl_¢fZ¢fZl_£sg£sg£sg£sg¯tf¯tfl_l_e[¢fZ¢fZ ]Ve[e[e[e[¢fZ ]VVVe[¢fZ¯tfe[e[ ]V¢fZ¢if¢if£sgl_l_¯tf¢fZ¢fZcY¢if£sgkZ]hvTYycgycgl\Vv\Zvle_LBaTLvTYvTYfsÁ±ÁÀžÄÐÀÍÈÎÀžÀ¯Š ¢¡¡°°z{|uepdQc\Ol\VskRvlez{|vlel\Vl\VSLBSLBDEFvleÄÐÀËߨdwLTTETTETTESLBSLB¡µÎÅÜ¡µÎ¡µÎÅÜÅÜÅÜÅÜÅÜ¡µÎÅÜÅÜÅÜÅÜ€ÅÛ¥ÊÛ¢À»¢ifl_ ]V ]V ]V£sg£sg¢if¢if£sgl_¢fZl_£sg¢fZ£sg¢fZ¢fZ£sgl_l_l_l_¢fZ¢fZ ]V ]V ]V ]Ve[e[¯tf ]VVVe[€oe[¢fZe[¢fZ ]V ]V¢fZ¯tfmm£sg£sg£sgvkycgv\Zl\VaTLbDBaTLaeNf ¢ÁÀžÍÈÎÍÈÎÐÄ¿Ÿ¯°Šª¡¡ ¯¡¡z|z{wv{vlecfac\Oc\OpdQqucv_z|wv{vlel\VaTLSDCSDCSLB_LBTTET\JTTEaTLaTLTTESLB³ÂÈœ£³}v_SLB+$93;3;ÅÜÄÜÅÜŽØÅÜÅÜŽØÅÜÅÜ¡µÎÅÜ¡µÎ¡µÎ€Æä€ÅÛ¥Ê۱΢if¢ifl_¢if ]V ]V¢fZ¢if¢fZ£sgl_¢fZ¢ifl_¯tf¯tf£sg ]V¢fZ¢fZ¢if¢if¢fZl_¢fZ£sg¢fZe[l_¢fZl_l_Œuee[l_¯tfe[l_e[l_¢fZ ]V¢fZ¢fZkZfLS_LB_LBskRg¯ŠÁÀžÍÈÎÃÐÒŽÃÎ±Ž°š¡¡¡¡¡z{qucpdQc\Oc\OaeNskRqucv_|vlel\V_LB_LBSDCSLBSDCSLB_LBTTEaTLT\J_LBSLBSLBR5EB%>B%>3;283;28R5Evk¡dwLCKAÅÜÄÜÅÜÅÜÅÜŽØŽØÅÜ€ÅÛÅÜÅÜ€ÅÛ€ÅÛ€ÆäÅ܎̹¢À»kZ£sg¯tf£sg¢fZ¢fZ¢fZ¢fZ¢fZl_£sgcY£sgl_£sg£sg¯tf£sg¢if£sg¢fZ£sgl_¢ifl_¯tfl_¯tf©oe[e[l_e[e[ ]V©o ]V¢fZ¢fZ ]V¢fZl_¿Á±ÁÀžÃÐÒÀÇÏÁÀž°Šª ¢¡¡¡¡¡z{vlec\Oc\OlTVc\OskR|uez{z||qucc\OaTLSLBSLBbDB_LB_LBTTE_LBTTE_LBTTE_LB_LBSDCR5EA3DB%>?:2828?:28/8/828?:?:4$A2828Q,ChThwv{ÅÜ¡µÎÅÜÅÜÅÜÅÜŽØÅÜÅÜÅÜ€ÅÛÅÜÅÜ€ÅÛ€ÅÛ¥ÊÛ¢À» ]f¢fZl_¯tfl_l_¢fZ¢if¢if¯tf¢ifl_cY¢fZ¢fZtj©o¯tf©o¯tf¯tf£sg¢fZ¢fZ¢fZ£sgl_e[¢fZ¢fZ ]Vl_ ]V ]V¢fZ©ol_¢fZ ]V¢fZ¢if¯tf¡¡ ¯¡z{wv{ycgc\Oc\OaeNqucqucqucz{|z{qucl\VaTL_LBSDCSDCSLBSDC_LBTTE_LBSLB_LBaTLSLBSDCR5EA3D?:3;3;3;28?:3;28?:?:28?:?:282828N%@AE?:B%>?:?:?:?:?:R5E_LBvleÅÜÄÜÅÜ¡µÎ€ÅÛ¡µÎÅÜ€ÅÛÅÜÅÜÅÜÅÜ€ÅÛ€ÅÛ€Å۱Î±Ž°¢fZ¢fZ¢fZ¢fZl_l_l_¯tf£sg¯tf¯tf¯tf¯tf¢fZ¢if¢if¯tf£sg¯tf©o©o€o£sg£sgcY¢fZ¢fZe[¢fZl_e[¢fZe[¶j ]V¶je[¯tfe[¢fZ¢if¢ifxwv{i[jaTLc\OpdQvle|ue|uez{|v\ZaTL_LBbDBSLBSDCSLBSLBSLBTTETTE_LBaTLbDBbDBSDCB%>B%>28$4?:2828?:?:?:?:?:?:?:B%>N%@MA?:?:?:?:B%>B%>MAR5EB%>AE?:?:B%>B%>C(N?:B%>B%>B%>B%>ÅÜ¢À»ÄÜÄÜÄÜÅÜ¡µÎÅÜÅÜÅÜ€Æä€ÅÛ€ÅÛš®°bcydl¢fZ¢fZ¢fZ¢fZkZ¢if¢fZ¢if£sg¢if¢if¢ifl_¯tfl_£sg¢if£sg¢ifl_£sg©o¯tfl_l_e[e[e[¯tfl_l_l_e[e[e[¶j¯tfe[e[e[Œuel_l_£sgcYqucz{z{z{z{vlel\VfLSlTVv\Zv\ZTU_LBSDCSDCSLBbDBSLBSLBbDB><>N%@B%>3;3;3;283;?:?:?:?:3;?:?:?:?:?:?:B%>B%>B%>N%@N%@B%>?:MAMA?:?:N%@N%@C(NB%>A3D?:N%@Q,CMAB%>B%>B%>?:3;2,?4$AÄÜÅÜÅÜÅÜÅÜÅÜ€ÅÛ€ÅÛ€ÅÛ€ÅÛ³xycglTVhTh_LBvTY¢fZ¢fZl_cYcY¢fZ¢fZl_¯tf©o¢fZl_¢fZ¢fZ¢if£sg¢if¢ifl_¢fZ¢fZl_£sgl_¯tf¯tfl_e[¯tf¯tfl_e[ ]Vl_ ]V£sg¢fZe[ŒueŒue¯tfŒue¯tfl_l_cYkZ¢fZ\WvTY_LBbDBbDBSDCR5EbDBR5ER5EB%>?:3;?:3;3;3;3;B%>282828B%>?:?:B%>4$A?:B%>?:MAB%>MA?:MA?:B%>B%>?:B%>B%>Q,CN%@B%>MAN%@N%@N%@Q,CN%@Q,CN%@N%@Q,CN%@Q,CQ,CN%@R5EB%>2,?#4C(NÅÜÅÜ€ÅÛ€ÅÛ€ÅÛ€ÅÛ °±|kzv\ZvTYhThhThR8VR5EA3DaDh¢ifl_l_¢fZl_¢fZ\Wl_l_l_¢fZ ]V¢fZ¢fZl_£sgl_£sg©ol_¢if¢fZ¢fZl_l_l_Œuel_l_l_¢fZ£sg ]V¯tf ]V¶je[e[l_¢fZe[£sgl_l_l_e[l_£sgcY¢fZkZl_¯tf¯tf£sg¯tf¢fZTU?:?:?:3;?:28?:?:?:?:?:?:?:?:?:N%@A3DB%>B%>B%>N%@B%>B%>B%>R5EN%@Q,CN%@N%@]-EN%@Q,CQ,CB%>Q,CQ,CR5ER5ER5E]-EQ,CQ,CN%@N%@Q,C]-EQ,CR5ETJd4$A2,?4$AAE€ÅÛ€ÅÛ€ÅÛš¶twycghThhThv\ZdMhv\ZfLShCQhTh><>R8VMT£sg¢fZl_l_£sg¢fZ¢if¢fZl_l_¯tfl_ ]V¢ifcY¢fZ¢fZ£sgl_l_£sg¢fZ¢fZ¢ifl_¢fZ¢fZ¢fZ¢fZ ]V ]V©o ]Ve[e[€o ]V ]V ]V\W¢fZ¢ifl_l_l_l_¢if¢ifk ]f¢ifl_l_¯tf¯tf¯tf¶j€oMA?:?:?:B%>?:N%@B%>B%>Q,CB%>?:B%>N%@B%>R5EN%@MAB%>B%>]-EN%@Q,CQ,CN%@N%@N%@Q,CQ,CN%@Q,C]-EQ,C]-E]-E`9H`9HQ,CQ,CR5ER5ER5EQ,CQ,CQ,CQ,CR5EbcyB%>><>28AE³dul\VhThi[ji[jlTVlTVvTYlTVhThlTVaTLSDCR5E_LB\W ]Vl_¢fZ£sg¯tfl_£sg¢fZ ]V¢fZ£sg¯tf£sgl_¢if¢if¢fZ¢fZ£sg£sg£sg¯tf£sg¯tf¢fZl_ ]V ]V¢fZ¯tfe[e[e[l_e[¯tf¢fZ£sg¢if¢ife[¢fZ¢fZ ]V¢ife[l_¯tfl_¯vvl_¯tf ]V¢fZ¢fZ¯tf¶j¹wMA?:?:B%>B%>B%>B%>B%>B%>Q,CN%@N%@Q,CN%@N%@Q,CN%@Q,CQ,CQ,CQ,CN%@N%@Q,C]-E`9HQ,CQ,C]-EQ,CQ,CQ,C]-ER5ER5E]-EQ,C]-E`9HR5ER5ER5ER5EQ,CR5ER8VR8V ²i[jSDCaTLC(NAEpdQpdQl\V_LBlTVv\ZycgpdQv\ZhThi[jhThycgvk ¢¯ž¢ t¢fZ¢fZ¢fZ¢fZl_l_¢fZ¢fZ ]V¢fZ¢fZl_l_£sg£sg¯tfl_¯tfl_£sg¢if¢if¢if£sg¢fZ£sgl_l_l_e[e[¯tfe[e[¢fZ¯tfl_l_¯tfl_¯tf¢fZ ]f¢fZ\WcY¢if£sg¢if¯tf¢ife[¢fZ¢fZl_e[¯tfš®N%@N%@MAQ,CQ,CN%@N%@N%@R5EQ,CR5ER5EQ,CR5EQ,CR5E]-EQ,CR5ER5E]-ER5EQ,CR5ER5E]-Em5I]-ER5E]-E]-EbDB`9HQ,C]-ER8V`9H`9H`9HbDBR5E`9H`9H`9H`9HR5ER5ER5ER5EB%>R5EAEN%@v\Zl\Vl\VaTLfLSaTLaTLvlevkh±Ž°ÁÀžÖØÊÔêÙÁ±¢fZ¢fZ¢fZ¢fZ£sgl_l_£sgl_¢fZe[¢fZ¢if£sg¯tfl_¯tfl_£sg¢if¢fZ¢fZ£sg¢fZ¢if©o¢fZ ]Ve[¢fZ ]V£sge[ ]Vl_¯tf¢fZ¢fZ¢fZe[e[¯tfe[e[¢fZ¢fZ¢if ]V¢fZ¢fZ£sg¢fZ¯tf¯tf¯vv¯vv¯vv¡B%>Q,CQ,CQ,CA3DQ,CR5ER5EQ,CR5ER5ER5ER5E]-E]-ER5EQ,CR5E`9HR5E`9HR5EQ,C]-ER5E]-E`9H`9H]-E`9H`9Hm=JhCQ`9H`9H`9H`9H`9H]-E`9HhThR8V`9HR5E`9H`9H`9HR5ER5ESLBT\JdwLb<Uh¢ t±Ž°ÁÀž°¹Æ±Ž°š®ÜáÞÜáÞÞèâÞèâãïàÁ·¯tf£sg¢fZ¢fZ ]V¢fZ¢ifl_l_¢ifl_¢ifcY¢fZ¢if¢fZ¯tfl_l_¯tf¢if£sg ]V¢fZ¢fZ£sgl_¢fZ ]V¢fZ ]V ]V¢fZ¯tfe[l_ ]Ve[ ]V ]V ]V¢fZl_¢fZ¢fZl_l_l_ ]V¢fZ¢fZ¢if¢fZ£sgl_¯tfl_`9HQ,CQ,C]-EQ,CR5EQ,CQ,CQ,CR5E]-E]-E`9H]-E]-Em5IQ,CR5ER5EQ,C]-E]-E`9HR5E`9HR5E`9H`9HR5ER5E`9HR5EbDBb<U`9H`9H`9HbDB`9H`9H`9H`9HbDB`9H`9HR5ER5E]-ER8Vcfal~¢t°c\O°oquccfai[jŸ¯ÞèâÞèâãïàÁ·e[£sg£sg£sg¢fZ¢fZl_l_£sg¯tf¯tfl_¢fZ¢fZkZe[¢fZl_¢if£sg£sgl_l_l_¢fZ ]Ve[l_¢fZ¢fZ¢fZ¯tf¢fZl_l_¶jl_e[¢fZ¢fZ¢fZ¢fZ¢fZe[l_¯tfl_l_¯tfl_¯tfŒuel_¢fZ¢fZ¢fZl_\W]-EQ,C]-E]-ER5E]-ER5EQ,C]-E`9HR5E`9H]-E]-E]-EbDB]-E]-EQ,CR5E`9H`9H]-Eb<U`9H`9HbDB`9Hm=J`9H`9H`9H`9HR8V]-ER5ER8VbDB`9Hm=J`9H`9H`9H`9H`9H`9HR5E`9Hj[j[xeheaDhdurl{cfac\OaeNrl{wv{wv{wv{wv{i[ji[jydu±Ž°œµ°ÐÄ¿¹w¢fZ¢fZ¯tf£sg¯tf£sg¢fZkZ¢if¢if¯tf£sg£sg£sg¢fZ¢fZ¢fZ¢fZkZkZ¢if£sg£sg¯tfl_¯tf¢fZe[l_¯tfe[l_¢fZ¢fZ¢fZ¯tfl_l_l_l_l_l_l_e[ ]V¢fZ¢fZe[l_l_l_l_¯tfe[£sg¢fZ¢fZTU]-E]-E]-E`9H]-ER5E`9H`9H`9H`9HR5EbDB]-ER5E`9H`9HbDB`9H`9Hb<UbDB`9H`9Hb<U`9H`9H`9H`9H`9H`9Hm=J`9Hb<U`9H`9H`9H`9H`9H]-E`9H`9H`9H`9H`9H`9Hb<U`9HaTLqoh[RfGZsP_LBz{z{wv{cfac\OaTLSLBSLBSDCSDCSDCSDCSDCTTET\JlkZcY ]V¢ifl_l_l_l_e[¢fZcY¢if¢if ]Vl_l_¢fZ¢fZkZ¢fZl_¢fZl_¢if£sgl_£sge[l_e[l_¢if¢fZ ]V¢fZ¢fZ¢fZ¢fZl_e[e[e[l_e[l_e[e[¢fZ¢fZ¢fZ ]Vl_l_¯tfe[l_¯tfl_cY]-ER5EQ,CR5E`9H`9H`9H`9Hm=J`9H`9H`9H`9H`9H]-E]-E`9HR5ER5EbDBhCQ`9Hb<UhCQm5I`9H`9H`9H`9HbDB`9Hm=Jb<U`9H`9HhCQm=J`9Hm=Jm=J`9H]-Eb<UhCQ`9H`9HR8V_LBz|HTCI\EHTCfLS_LBbDBbDBSLBSLBaTLc\Oc\Ol\VvleskRskRrl{vleÂÈœ£sg¢fZ ]V¢fZ¢fZ£sg£sg¢fZl_¢fZ¢fZ¢fZ¢if ]V¢if¢fZ£sg£sg¯tfl_e[¢fZ ]V¢fZ¢fZ¢fZ¢fZ¢fZ¢fZ ]V ]V ]V¯tf ]Ve[e[l_¢fZ ]V¢fZ ]V¢fZ¢ifl_¢fZe[¢fZl_mm¢if¢fZ¢fZ¢fZ¢ifl_¯tf¯tfl_cY`9H]-ER5E]-E`9H`9HR5ER5E`9H`9H`9HbDBb<UR5E`9H`9HR5E`9HR5E`9H`9H`9HhCQhCQhCQhCQhCQ`9Hm5Im=J`9H`9Hm=J`9H`9H`9H`9H`9Hm=JfLShCQhCQhCQb<U`9HhCQ`9HhCQ`9HRfGA3DdwLxeskRqucwv{wv{wv{wv{wv{z{z{wv{z{wv{rl{f\}hTh£¢fZe[¢fZ ]V¢fZ¢fZ£sg£sgl_l_ ]f¯tf¢fZ ]V ]V¢fZcYl_l_£sg£sgl_¯tf¯tfl_cYcY\W ]V ]V¯tfe[e[e[ŒueŒuel_l_e[e[¢fZ ]Vl_e[l_l_¢fZl_l_¢ifl_l_l_¢fZ¢fZ¢fZ¢fZ¢fZTUbDB`9H]-E]-E`9H`9H`9H]-ESDC]-ER5E`9HR5EbDB`9Hb<U`9H`9Hm=J`9Hb<Ub<U`9H`9H`9H`9Hb<U`9Hm=J`9Hb<UhCQhCQm=JbDB`9H`9H`9H`9H`9H`9H`9HbDBhCQb<UhCQm=Jb<UhCQ`9H><>><>j[|a`k|dMhaDhR5EC(N3;3;28$4/8#4?:¢fZe[e[¢fZ¢fZ¢fZ£sg£sg£sg£sgl_l_l_l_¢fZ¢fZ¢fZ¢fZ¢fZ¢fZ£sg£sg¯tf£sg¢if£sg¢if ]V¶j ]Vl_¢fZl_e[l_Œuel_¯tfl_l_l_¢fZ¢fZ¢fZ ]Ve[e[e[l_e[e[l_l_¯tfe[l_e[¢fZTUR5ER5ER5E`9H`9Hb<U`9Hm5I`9H`9H`9Hb<UaDhSDCb<U`9HR5E`9HhCQhCQhCQm=Jb<UbDBm=Jm=Jb<Ub<Um5I]-E`9H`9Hm=Jm=Jm=Jm5IfLSb<Ub<Ub<Ub<Ub<Ub<Um=JR5E]-E`9H`9H`9HR8V><>9C<I\E4$A+$9+$94$A4$A3;$4/828#4$4#4/8!3!3/8l_l_¢fZ¢fZ¢fZl_£sg ]Vl_¢fZl_l_l_¢if£sg¢ifl_¢fZ ]VcYkZ¢fZ¢fZl_l_l_l_e[e[e[©oe[e[e[ ]V¯tf¢fZl_e[e[l_l_l_e[e[e[e[¢if ]V¢fZ¢fZ¢if¢fZl_l_ŒueŒue¯tfvTY`9HSDC`9HR5ESDC`9Hb<U]-EbDBhCQbDB`9H`9H`9Hm=J`9H`9HhCQSDC`9HbDB_LBbDBm=JbDBvGThCQhCQhCQb<Um5Im5IvGTm=J]-E`9HhCQhCQhCQhCQb<U`9HhCQhCQ`9Hb<Ub<U`9HbDBT\JHTCZsPhev_j[aeNHTC><>2,?2,?+$93;$4$4$4$4#4#4/8 ]V ]V¢if¢fZ¢ifl_¯tfl_¢fZ¢fZ ]Ve[¢fZ¢ife[l_l_l_l_l_¢fZ¢fZ¢fZ¢fZ¢fZ¢fZ£sge[£sge[£sg ]V\W ]V ]Vl_ ]V ]V ]VVV ]Ve[l_l_ ]Vl_ŒueŒue¢fZ¢fZ¢fZ¢fZ¢if¢fZl_l_l_l_TU`9H`9H`9H`9H`9H`9H`9Hm5I]-Eb<USDC`9Hm=JhCQ`9HhCQhCQb<Um=J`9HhCQn=Um=J`9Hm=JhCQ`9H`9Hm5In=UvGThCQm=JvGThCQhCQm=Jb<Um5In=Un=U`9HbDBb<UhCQb<UhCQfLShCQ_LBRdZHTCdwL¡µÎ€Æä€ÅÛ€ÅÛ€ÅÛ€ÅÛ¢À»¡µÎžµ²žj[ZsPHTCR5E ]V ]V\W¢fZ¢fZ¯tf¯tfkZ£sgl_¢if ]V¢fZ¢fZ¢if¢fZ¢fZl_l_¢if¢ifl_l_¢fZ¢fZ¢fZ\WVV¯tf ]V ]V¢fZ¢fZe[e[¯tf ]Ve[¢fZ¢fZVVl_ ]V¢fZ¢fZl_l_Œue¯tfe[l_l_e[l_¢fZ¢fZe[¢fZvGT`9H`9Hb<UhCQb<UhCQn=Ub<U`9H`9H`9H`9H`9Hb<UhCQ`9Hb<Un=Ub<Um=Jm=JvGTvGThCQm=JbDBbDBhCQn=U`9H`9HhCQ`9Hm=JvGTn=Um=Jm=Jn=Un=Un=Ub<Un=Um=JaDhb<Ub<UdMhb<UaTLCKAj[qo€ÅÛ€ÅÛ€ÅÛÅÜ€ÅÛ€ÅÛ¡µÎ€ÅÛ¡µÎ€ÅÛ€ÅÛ€ÅÛ¡µÎ€Æä€ÅÛŽÃ΢fZ ]V¢fZ ]V ]V¢fZ¢fZ¢fZl_l_l_¢if¢if¢fZ¢fZ¢fZ¢fZ¢fZ¢if£sg£sg£sgl_£sg£sgl_¢fZ ]V ]Ve[¢fZ¢fZl_¢fZe[¯tfe[¢fZ¢fZ£sgl_l_l_¢fZcY ]V¢fZ¢fZe[e[e[l_l_l_l_l_l_¢fZvTY`9HR5E`9HbDB`9Hb<Ub<U`9Hn=UvGThCQhCQm=JfLSm=JhCQ`9H`9HhCQhCQb<UhCQm=Jm=JbDBhCQm=J`9HhCQm=J`9Hb<Ub<U`9H`9H`9Hm=Jm=Jm=JhCQhCQhCQb<UfLSfLShCQhCQhCQb<Ub<USDCz{RfG€ÅÛ¡µÎ€ÅÛÅÜ¡µÎ€ÅÛÅÜÅÜ€ÅÛ€ÅÛ¡µÎ€Æä€ÅÛ€ÅÛ€Å۱΢if ]V¢fZ¢fZ¢fZ¢fZ ]V¢if¢fZ£sgl_¢if¢if¢if¢fZ¢if ]V ]V ]V¢if¢if¢fZ£sg¯tfl_e[e[e[l_e[¢fZe[¢fZ¢fZ ]V¯tfe[¢fZe[¯tfe[l_l_£sgl_¢fZe[¢fZ ]V ]Ve[e[e[l_l_£sgŒue¯tfvGT`9HhCQ`9Hm=Jb<U]-ER5E`9H`9HbDBbDBhCQhCQvGTvTYhCQhCQhCQhCQhCQb<Ub<UhCQ`9Hn=Um=JvGTvGTm=JhCQm=Jm=JMTvGTm=Jm=Jm=JbDBm=Jn=Ub<Ub<Ub<Ub<UbDBbDBbDBhCQhCQm=JaDhhCQaTL€ÅÛÅÜ€ÅÛ¡µÎÅÜÅÜÄÜÅÜ€ÅÛ¡µÎ€ÅÛÅÜ¡µÎ€ÅÛ¢À»¢À»¯tf¢fZ¢fZl_ ]V¢fZ ]V¢fZ£sg¢fZk¢fZ¢if¢if£sg¢if¢fZ¢if¢fZ¢fZ¢fZ¢fZ¢fZ¢fZ¢fZ¢fZ¢fZ¢fZ¢fZ ]V ]V ]V ]VVVe[¶j ]V ]V¢fZ¢fZ¢fZl_£sg¯tfl_¯tfl_e[ ]Ve[e[e[e[¢fZl_¢ifl_l_vGThCQ`9HbDBhCQm=Jm=J`9H`9H]-Em=JfLSbDBm=J_LBm=J`9HvGThCQb<Um=Jm=JhCQvGTm=Jm=JbDBm=Jm=J`9Hm=J`9Hb<U`9HbDBm=JhCQm=Jm=Jn=Um=JvGTfLSm=JhCQv_v_bDBhCQ`9H`9Hb<Ub<UvGT
\ No newline at end of file
diff --git a/milena/demos/graph/region_adjacency_graph.cc b/milena/demos/graph/region_adjacency_graph.cc
new file mode 100644
index 0000000..80ecd4b
--- /dev/null
+++ b/milena/demos/graph/region_adjacency_graph.cc
@@ -0,0 +1,213 @@
+// Copyright (C) 2009 EPITA Research and Development Laboratory (LRDE)
+//
+// This file is part of Olena.
+//
+// Olena is free software: you can redistribute it and/or modify it under
+// the terms of the GNU General Public License as published by the Free
+// Software Foundation, version 2 of the License.
+//
+// Olena is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with Olena. If not, see <http://www.gnu.org/licenses/>.
+//
+// As a special exception, you may use this file as part of a free
+// software project without restriction. Specifically, if other files
+// instantiate templates or use macros or inline functions from this
+// file, or you compile this file and link it with other files to produce
+// an executable, this file does not by itself cause the resulting
+// executable to be covered by the GNU General Public License. This
+// exception does not however invalidate any other reasons why the
+// executable file might be covered by the GNU General Public License.
+
+/// \file
+///
+/// Demo on using region adjacency graph.
+
+
+#include <iostream>
+
+#include <mln/core/image/image2d.hh>
+#include <mln/core/alias/neighb2d.hh>
+#include <mln/core/alias/window2d.hh>
+#include <mln/core/image/dmorph/image_if.hh>
+#include <mln/core/var.hh>
+
+#include <mln/accu/center.hh>
+#include <mln/accu/stat/mean.hh>
+
+#include <mln/io/ppm/save.hh>
+#include <mln/io/ppm/load.hh>
+#include <mln/io/pgm/load.hh>
+#include <mln/io/pgm/save.hh>
+
+#include <mln/value/rgb8.hh>
+#include <mln/value/int_u8.hh>
+#include <mln/value/label_16.hh>
+
+#include <mln/data/transform.hh>
+
+#include <mln/labeling/wrap.hh>
+#include <mln/labeling/mean_values.hh>
+
+#include <mln/convert/to_fun.hh>
+
+#include <mln/morpho/gradient.hh>
+#include <mln/morpho/closing/area.hh>
+#include <mln/morpho/watershed/flooding.hh>
+#include <mln/morpho/elementary/dilation.hh>
+
+#include <mln/make/vertex_image.hh>
+#include <mln/make/edge_image.hh>
+#include <mln/make/region_adjacency_graph.hh>
+
+#include <mln/math/diff_abs.hh>
+
+#include <mln/debug/draw_graph.hh>
+
+namespace mln
+{
+
+ /// Compute a distance between two rgb8 values.
+ struct dist : Function_vv2v< dist >
+ {
+
+ typedef value::int_u8 result;
+
+ result operator()(const value::rgb8& c1, const value::rgb8& c2) const
+ {
+ unsigned d = math::diff_abs(c1.red(), c2.red());
+ unsigned d_;
+ d_ = math::diff_abs(c1.green(), c2.green());
+
+ if (d_ > d)
+ d = d_;
+
+ d_ = math::diff_abs(c1.blue(), c2.blue());
+
+ if (d_ > d)
+ d = d_;
+ return d;
+ }
+
+ };
+
+ /// Get the value associated to a given edge.
+ template <typename I, typename V>
+ struct edge_to_color : Function_v2v< edge_to_color<I,V> >
+ {
+ typedef V result;
+
+ edge_to_color(const I& ima)
+ : ima_(ima)
+ {
+ }
+
+ V
+ operator()(const unsigned& e) const
+ {
+ return convert::to<V>(ima_(e));
+ }
+
+ I ima_;
+ };
+
+
+ /// Draw a graph.
+ template <typename I, typename V, typename E>
+ inline
+ image2d<mln_value(I)>
+ make_debug_graph_image(const I& input,
+ const V& ima_v, const E& ima_e,
+ const value::rgb8& bg)
+ {
+ image2d<mln_value(I)> ima;
+ initialize(ima, input);
+
+ data::fill(ima, bg);
+ debug::draw_graph(ima, ima_v.domain(),
+ pw::cst(mln_value(I)(literal::green)),
+ edge_to_color<E, mln_value(I)>(ima_e));
+
+ /// Vertices are drawn with a box.
+ dpoint2d tl(-3,-3);
+ dpoint2d br(3,3);
+ mln_piter(V) p(ima_v.domain());
+ for_all(p)
+ {
+ box2d b(p + tl, p + br);
+ b.crop_wrt(ima.domain());
+ data::fill((ima | b).rw(), convert::to<mln_value(I)>(ima_v(p)));
+ }
+
+ return ima;
+ }
+
+}
+
+int main()
+{
+ using namespace mln;
+ using value::int_u8;
+ using value::rgb8;
+ using value::label_16;
+
+ image2d<int_u8> input_pgm;
+ io::pgm::load(input_pgm, "house.pgm");
+
+ image2d<rgb8> input_ppm;
+ io::ppm::load(input_ppm, "house.ppm");
+
+
+ /// Gradient of the gray level image.
+ image2d<int_u8> grad = morpho::gradient(input_pgm, win_c4p());
+ io::pgm::save(grad, "tmp_grad_c4p.pgm");
+
+ /// Closing of the gradient.
+ image2d<int_u8> clo = morpho::closing::area(grad, c4(), 25);
+ io::pgm::save(clo, "tmp_clo_a100.pgm");
+
+ /// Watershed on the closing image.
+ label_16 nbasins;
+ image2d<label_16> wshed = morpho::watershed::flooding(clo, c4(), nbasins);
+
+ /// Output: A watershed image where each basin value is set to the basin
+ /// mean value in the original ppm image.
+ io::ppm::save(labeling::mean_values(input_ppm, wshed, nbasins),
+ "tmp_wshed_mean_colors.ppm");
+
+
+ /// Set watershed line value to yellow.
+ data::fill((input_ppm | (pw::value(wshed) == 0u)).rw(), literal::yellow);
+ io::ppm::save(input_ppm, "tmp_wshed_color.ppm");
+
+
+ /// Build region adjacency graph.
+ util::graph g = make::region_adjacency_graph(wshed, c4(), nbasins);
+
+
+ /// Compute basin mass centers. They will be used as site for each vertex in
+ /// the graph image.
+ util::array<point2d>
+ basin_centers = labeling::compute(accu::center<point2d, point2d>(),
+ wshed, nbasins);
+
+ /// Compute basin mean values. They will be used as value for each vertex in
+ /// the graph image.
+ typedef accu::stat::mean<rgb8, mln_sum_(rgb8), rgb8>
+ accu_mean_t;
+ util::array<rgb8>
+ mean_values = labeling::compute(accu_mean_t(), input_ppm, wshed, nbasins);
+
+ /// Construct a vertex image.
+ mln_VAR(ima_v, make::vertex_image(g, basin_centers, mean_values));
+
+ /// Construct a edge image.
+ mln_VAR(ima_e, make::edge_image(ima_v, dist()));
+
+ io::ppm::save(make_debug_graph_image(input_ppm, ima_v, ima_e, literal::white),
+ "tmp_wst_rag_graph_image_white.ppm");
+}
--
1.5.6.5
1
0
4209: doc/Makefile.am: distribute Doxyfile_devel and Doxyfile_devel_pdf.
by Guillaume Lazzara 29 Jun '09
by Guillaume Lazzara 29 Jun '09
29 Jun '09
---
milena/ChangeLog | 4 ++++
milena/doc/Makefile.am | 26 ++++++++++++++------------
2 files changed, 18 insertions(+), 12 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index dd2aaee..25e9ef7 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,3 +1,7 @@
+2009-06-29 Guillaume Lazzara <guillaume.lazzara(a)lrde.epita.fr>
+
+ * doc/Makefile.am: distribute Doxyfile_devel and Doxyfile_devel_pdf.
+
2009-06-26 Roland Levillain <roland(a)lrde.epita.fr>
* headers.mk, tests/unit_test/unit-tests.mk: Regen.
diff --git a/milena/doc/Makefile.am b/milena/doc/Makefile.am
index 56ba551..e837ea2 100644
--- a/milena/doc/Makefile.am
+++ b/milena/doc/Makefile.am
@@ -49,7 +49,7 @@ doc-devel: doc-devel-pdf doc-devel-html
doc-pdf: tutorial-pdf white-paper-pdf ref-guide-pdf ref-doc-pdf
-doc-html: tutorial-html white-paper-html ref-guide-html ref-doc-html
+doc-html: tutorial-html white-paper-html ref-guide-html ref-doc-html
doc-devel-pdf: tutorial-pdf ref-guide-pdf white-paper-pdf ref-doc-devel-pdf
@@ -195,7 +195,7 @@ edit_user = sed \
-e 's,INTERNAL_DOCS = YES,INTERNAL_DOCS = NO,g' \
-e 's,GENERATE_TODOLIST = YES,GENERATE_TODOLIST = NO,g' \
-e 's,PROJECT_NUMBER = \",PROJECT_NUMBER = \"User documentation ,g' \
- -e 's,EXCLUDE_SYMBOLS =,EXCLUDE_SYMBOLS = *::internal* *_ mln::trait::*,g'
+ -e 's,EXCLUDE_SYMBOLS =,EXCLUDE_SYMBOLS = *::internal* *_ mln::trait::*,g'
# Regen files.
@@ -237,18 +237,20 @@ dist_doc_DATA = \
EXTRA_DIST += \
Doxyfile.in \
+ Doxyfile_devel \
+ Doxyfile_devel_pdf \
Doxyfile_user \
Doxyfile_user_pdf \
- groups/accu.hh \
- groups/graph.hh \
- groups/images.hh \
- groups/main.hh \
- groups/neighb.hh \
- groups/site_set.hh \
- groups/util.hh \
- groups/win.hh \
- img/small-enlarged.png \
- img/small.png \
+ groups/accu.hh \
+ groups/graph.hh \
+ groups/images.hh \
+ groups/main.hh \
+ groups/neighb.hh \
+ groups/site_set.hh \
+ groups/util.hh \
+ groups/win.hh \
+ img/small-enlarged.png \
+ img/small.png \
doxyfuns.sty \
milena.sty \
tools/clearbanner.sh \
--
1.5.6.5
1
0
26 Jun '09
---
scribo/ChangeLog | 4 ++++
scribo/headers.mk | 3 +++
scribo/tests/unit_test/unit-tests.mk | 8 ++++++--
3 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/scribo/ChangeLog b/scribo/ChangeLog
index 8d92970..625f471 100644
--- a/scribo/ChangeLog
+++ b/scribo/ChangeLog
@@ -1,5 +1,9 @@
2009-06-26 Roland Levillain <roland(a)lrde.epita.fr>
+ * headers.mk, tests/unit_test/unit-tests.mk: Regen.
+
+2009-06-26 Roland Levillain <roland(a)lrde.epita.fr>
+
Fix path to build-aux/generate_dist_headers.sh in Makefile.
* Makefile.am (regen-am, $(srcdir)/headers.mk): Here.
diff --git a/scribo/headers.mk b/scribo/headers.mk
index ad834f7..382343c 100644
--- a/scribo/headers.mk
+++ b/scribo/headers.mk
@@ -22,9 +22,12 @@ nobase_include_HEADERS = \
./extract/primitive/cells.hh \
./extract/primitive/lines_discontinued.hh \
./extract/primitive/lines_h_discontinued.hh \
+./extract/primitive/lines_h_pattern.hh \
./extract/primitive/lines_h_thick.hh \
+./extract/primitive/lines_pattern.hh \
./extract/primitive/lines_thick.hh \
./extract/primitive/lines_v_discontinued.hh \
+./extract/primitive/lines_v_pattern.hh \
./extract/primitive/lines_v_thick.hh \
./extract/primitive/objects.hh \
./filter/all.hh \
diff --git a/scribo/tests/unit_test/unit-tests.mk b/scribo/tests/unit_test/unit-tests.mk
index 8024afb..6fdb4d8 100644
--- a/scribo/tests/unit_test/unit-tests.mk
+++ b/scribo/tests/unit_test/unit-tests.mk
@@ -17,14 +17,16 @@ scribo_debug_usage \
scribo_draw_all \
scribo_draw_bounding_box_links \
scribo_draw_bounding_boxes \
-scribo_extract_lines_discontinued \
scribo_extract_primitive_canvas \
scribo_extract_primitive_cells \
scribo_extract_primitive_lines_discontinued \
scribo_extract_primitive_lines_h_discontinued \
+scribo_extract_primitive_lines_h_pattern \
scribo_extract_primitive_lines_h_thick \
+scribo_extract_primitive_lines_pattern \
scribo_extract_primitive_lines_thick \
scribo_extract_primitive_lines_v_discontinued \
+scribo_extract_primitive_lines_v_pattern \
scribo_extract_primitive_lines_v_thick \
scribo_extract_primitive_objects \
scribo_filter_all \
@@ -93,14 +95,16 @@ scribo_debug_usage_SOURCES = scribo_debug_usage.cc
scribo_draw_all_SOURCES = scribo_draw_all.cc
scribo_draw_bounding_box_links_SOURCES = scribo_draw_bounding_box_links.cc
scribo_draw_bounding_boxes_SOURCES = scribo_draw_bounding_boxes.cc
-scribo_extract_lines_discontinued_SOURCES = scribo_extract_lines_discontinued.cc
scribo_extract_primitive_canvas_SOURCES = scribo_extract_primitive_canvas.cc
scribo_extract_primitive_cells_SOURCES = scribo_extract_primitive_cells.cc
scribo_extract_primitive_lines_discontinued_SOURCES = scribo_extract_primitive_lines_discontinued.cc
scribo_extract_primitive_lines_h_discontinued_SOURCES = scribo_extract_primitive_lines_h_discontinued.cc
+scribo_extract_primitive_lines_h_pattern_SOURCES = scribo_extract_primitive_lines_h_pattern.cc
scribo_extract_primitive_lines_h_thick_SOURCES = scribo_extract_primitive_lines_h_thick.cc
+scribo_extract_primitive_lines_pattern_SOURCES = scribo_extract_primitive_lines_pattern.cc
scribo_extract_primitive_lines_thick_SOURCES = scribo_extract_primitive_lines_thick.cc
scribo_extract_primitive_lines_v_discontinued_SOURCES = scribo_extract_primitive_lines_v_discontinued.cc
+scribo_extract_primitive_lines_v_pattern_SOURCES = scribo_extract_primitive_lines_v_pattern.cc
scribo_extract_primitive_lines_v_thick_SOURCES = scribo_extract_primitive_lines_v_thick.cc
scribo_extract_primitive_objects_SOURCES = scribo_extract_primitive_objects.cc
scribo_filter_all_SOURCES = scribo_filter_all.cc
--
1.6.3.1
1
0
26 Jun '09
---
milena/ChangeLog | 4 ++++
milena/headers.mk | 18 ++----------------
milena/tests/unit_test/unit-tests.mk | 2 ++
3 files changed, 8 insertions(+), 16 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index ea87bbd..dd2aaee 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,5 +1,9 @@
2009-06-26 Roland Levillain <roland(a)lrde.epita.fr>
+ * headers.mk, tests/unit_test/unit-tests.mk: Regen.
+
+2009-06-26 Roland Levillain <roland(a)lrde.epita.fr>
+
Correct the list of cleaned files in doc/'s subdirectories.
* doc/tutorial/Makefile.am (CLEANFILES): Remove *~.
diff --git a/milena/headers.mk b/milena/headers.mk
index 6fa4c1c..37a59a1 100644
--- a/milena/headers.mk
+++ b/milena/headers.mk
@@ -477,19 +477,10 @@ mln/extension/all.hh \
mln/extension/duplicate.hh \
mln/extension/essential.hh \
mln/extension/fill.hh \
-mln/fun/access/all.hh \
-mln/fun/access/mean.hh \
-mln/fun/accu_result.hh \
mln/fun/all.hh \
+mln/fun/binary.hh \
mln/fun/c.hh \
mln/fun/cast.hh \
-mln/fun/component/blue.hh \
-mln/fun/component/comp_count.hh \
-mln/fun/component/green.hh \
-mln/fun/component/ithcomp.hh \
-mln/fun/component/red.hh \
-mln/fun/component/rgb.hh \
-mln/fun/component/scomp.hh \
mln/fun/essential.hh \
mln/fun/i2v/all.hh \
mln/fun/i2v/all_to.hh \
@@ -500,9 +491,6 @@ mln/fun/internal/ch_function_value_impl.hh \
mln/fun/internal/resolve.hh \
mln/fun/internal/selector.hh \
mln/fun/internal/x2x_linear_impl.hh \
-mln/fun/math/abs.hh \
-mln/fun/math/cos.hh \
-mln/fun/math/norm.hh \
mln/fun/meta/impl.hh \
mln/fun/ops.hh \
mln/fun/p2b/all.hh \
@@ -521,9 +509,6 @@ mln/fun/p2v/elifs.hh \
mln/fun/p2v/essential.hh \
mln/fun/p2v/iota.hh \
mln/fun/p2v/ternary.hh \
-mln/fun/point/col.hh \
-mln/fun/point/row.hh \
-mln/fun/point/sli.hh \
mln/fun/stat/all.hh \
mln/fun/stat/mahalanobis.hh \
mln/fun/v2b/all.hh \
@@ -748,6 +733,7 @@ mln/make/image2d.hh \
mln/make/image3d.hh \
mln/make/influence_zone_adjacency_graph.hh \
mln/make/mat.hh \
+mln/make/neighb2d.hh \
mln/make/p_edges_with_mass_centers.hh \
mln/make/p_vertices_with_mass_centers.hh \
mln/make/pix.hh \
diff --git a/milena/tests/unit_test/unit-tests.mk b/milena/tests/unit_test/unit-tests.mk
index 5dccbe2..7a4b95c 100644
--- a/milena/tests/unit_test/unit-tests.mk
+++ b/milena/tests/unit_test/unit-tests.mk
@@ -752,6 +752,7 @@ mln_make_image2d \
mln_make_image3d \
mln_make_influence_zone_adjacency_graph \
mln_make_mat \
+mln_make_neighb2d \
mln_make_p_edges_with_mass_centers \
mln_make_p_vertices_with_mass_centers \
mln_make_pix \
@@ -2013,6 +2014,7 @@ mln_make_image2d_SOURCES = mln_make_image2d.cc
mln_make_image3d_SOURCES = mln_make_image3d.cc
mln_make_influence_zone_adjacency_graph_SOURCES = mln_make_influence_zone_adjacency_graph.cc
mln_make_mat_SOURCES = mln_make_mat.cc
+mln_make_neighb2d_SOURCES = mln_make_neighb2d.cc
mln_make_p_edges_with_mass_centers_SOURCES = mln_make_p_edges_with_mass_centers.cc
mln_make_p_vertices_with_mass_centers_SOURCES = mln_make_p_vertices_with_mass_centers.cc
mln_make_pix_SOURCES = mln_make_pix.cc
--
1.6.3.1
1
0
---
milena/doc/.gitignore | 15 +++++++++++++--
1 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/milena/doc/.gitignore b/milena/doc/.gitignore
index 642caef..63de7da 100644
--- a/milena/doc/.gitignore
+++ b/milena/doc/.gitignore
@@ -1,2 +1,13 @@
-/Doxyfile
-/html/
+/Doxyfile_devel
+/Doxyfile_devel_pdf
+/Doxyfile_user
+/Doxyfile_user_pdf
+/devel
+/user
+/ref_guide/ref_guide.haux
+/ref_guide/ref_guide.hh
+/ref_guide/ref_guide.html
+/ref_guide/ref_guide.htoc
+/tutorial/tutorial.haux
+/tutorial/tutorial.hh
+/tutorial/tutorial.html
--
1.6.3.1
1
0
[PATCH 07/10] Correct the list of cleaned files in doc/'s subdirectories.
by Roland Levillain 26 Jun '09
by Roland Levillain 26 Jun '09
26 Jun '09
* doc/tutorial/Makefile.am (CLEANFILES): Remove *~.
Add tutorial.idx.
* doc/ref_guide/Makefile.am (CLEANFILES): Remove *~.
Add ref_guide.idx.
* doc/white_paper/Makefile.am (CLEANFILES): Remove
white_paper_html and figures, and use...
(clean-local): ...this (new) rule to clean them instead.
---
milena/ChangeLog | 12 ++++++++++++
milena/doc/ref_guide/Makefile.am | 3 ++-
milena/doc/tutorial/Makefile.am | 3 ++-
milena/doc/white_paper/Makefile.am | 7 ++++---
4 files changed, 20 insertions(+), 5 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index 577dbac..ea87bbd 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,5 +1,17 @@
2009-06-26 Roland Levillain <roland(a)lrde.epita.fr>
+ Correct the list of cleaned files in doc/'s subdirectories.
+
+ * doc/tutorial/Makefile.am (CLEANFILES): Remove *~.
+ Add tutorial.idx.
+ * doc/ref_guide/Makefile.am (CLEANFILES): Remove *~.
+ Add ref_guide.idx.
+ * doc/white_paper/Makefile.am (CLEANFILES): Remove
+ white_paper_html and figures, and use...
+ (clean-local): ...this (new) rule to clean them instead.
+
+2009-06-26 Roland Levillain <roland(a)lrde.epita.fr>
+
Generate the documentation in the source tree.
* doc/Makefile.am
diff --git a/milena/doc/ref_guide/Makefile.am b/milena/doc/ref_guide/Makefile.am
index 5e19d99..d1af059 100644
--- a/milena/doc/ref_guide/Makefile.am
+++ b/milena/doc/ref_guide/Makefile.am
@@ -65,10 +65,11 @@ EXTRA_DIST = \
CLEANFILES = \
ref_guide.aux ref_guide.toc ref_guide.log ref_guide.bbl ref_guide.out \
- *~ *blg *.lot \
+ *blg *.lot \
$(REF_GUIDE_PDF) \
*.haux *.hh *.html *.htoc \
ref_guide.html \
+ ref_guide.idx \
$(REF_GUIDE_HH)
diff --git a/milena/doc/tutorial/Makefile.am b/milena/doc/tutorial/Makefile.am
index e49f201..ea4a84a 100644
--- a/milena/doc/tutorial/Makefile.am
+++ b/milena/doc/tutorial/Makefile.am
@@ -62,11 +62,12 @@ EXTRA_DIST = \
CLEANFILES = \
tutorial.aux tutorial.toc tutorial.log tutorial.bbl tutorial.out \
- *~ *blg *.lot \
+ *blg *.lot \
$(TUTORIAL_PDF) \
*.haux *.hh *.html *.htoc \
tutorial.haux \
tutorial.html \
+ tutorial.idx \
$(TUTORIAL_HH)
diff --git a/milena/doc/white_paper/Makefile.am b/milena/doc/white_paper/Makefile.am
index eeebc6f..6449bbb 100644
--- a/milena/doc/white_paper/Makefile.am
+++ b/milena/doc/white_paper/Makefile.am
@@ -64,11 +64,12 @@ EXTRA_DIST = \
$(EPSS)
CLEANFILES = \
- white_paper_html \
white_paper_image.* \
white_paper.pdf \
- *.log *.idx *.out *.aux \
- figures
+ *.log *.idx *.out *.aux
+
+clean-local:
+ -rm -rf white_paper_html figures
#<<lrde
--
1.6.3.1
1
0
26 Jun '09
* doc/Makefile.am
(EXTRA_DEPS)
(USER_REFMAN_PDF, USER_REFMAN_HTML)
(DEVEL_REFMAN_PDF, DEVEL_REFMAN_HTML):
Prepend $(srcdir) to each path.
($(srcdir)/tutorial/tutorial.hh, $(srcdir)/ref_guide/ref_guide.hh)
($(USER_REFMAN_PDF), $(USER_REFMAN_HTML))
($(DEVEL_REFMAN_PDF), $(DEVEL_REFMAN_HTML))
($(srcdir)/figures.stamp, fake-doc)
Adjust actions.
(edit): Substitute @srcdir@ and @builddir@ as well.
(edit_user): Prepend $(srcdir) to each path.
(Doxyfile_user, Doxyfile_user_pdf)
(Doxyfile_devel, Doxyfile_devel_pdf):
Rename targets as...
($(srcdir)/Doxyfile_user, $(srcdir)/Doxyfile_user_pdf)
($(srcdir)/Doxyfile_devel, $(srcdir)/Doxyfile_devel_pdf):
...these.
* doc/doc.mk (DOC_BUILDDIR, OUTPUTS_BUILDDIR)
(SPLIT_OUTPUTS_BUILDDIR, FIGURES_BUILDDIR, EXAMPLES_BUILDDIR)
(SPLIT_EXAMPLES_BUILDDIR):
Remove variables.
Add missing copyright header.
* doc/Doxyfile.in (OUTPUT_DIRECTORY): Set to @srcdir@/devel/.
* doc/examples/Makefile.am (CLEANFILES): New.
Add $(EXTRA_PROGRAMS)
(run-examples, diff-data, split-examples, split-outputs):
Adjust actions to generate products in the source tree.
(clean-local, clean-figures): Disable actions.
* doc/ref_guide/Makefile.am (TEXINPUTS): Remove $(DOC_BUILDDIR).
($(REF_GUIDE_HH)): Adjust the action to generate the target in the
source tree.
* doc/tutorial/Makefile.am (TEXINPUTS): Remove $(DOC_BUILDDIR).
($(TUTORIAL_HH)): Adjust the action to generate the target in the
source tree.
---
milena/ChangeLog | 40 +++++++++++++
milena/doc/Doxyfile.in | 2 +-
milena/doc/Makefile.am | 115 ++++++++++++++++++++-----------------
milena/doc/doc.mk | 32 ++++++++---
milena/doc/examples/Makefile.am | 44 ++++++++-------
milena/doc/ref_guide/Makefile.am | 4 +-
milena/doc/tutorial/Makefile.am | 5 +-
7 files changed, 154 insertions(+), 88 deletions(-)
diff --git a/milena/ChangeLog b/milena/ChangeLog
index 6b982e0..577dbac 100644
--- a/milena/ChangeLog
+++ b/milena/ChangeLog
@@ -1,5 +1,45 @@
2009-06-26 Roland Levillain <roland(a)lrde.epita.fr>
+ Generate the documentation in the source tree.
+
+ * doc/Makefile.am
+ (EXTRA_DEPS)
+ (USER_REFMAN_PDF, USER_REFMAN_HTML)
+ (DEVEL_REFMAN_PDF, DEVEL_REFMAN_HTML):
+ Prepend $(srcdir) to each path.
+ ($(srcdir)/tutorial/tutorial.hh, $(srcdir)/ref_guide/ref_guide.hh)
+ ($(USER_REFMAN_PDF), $(USER_REFMAN_HTML))
+ ($(DEVEL_REFMAN_PDF), $(DEVEL_REFMAN_HTML))
+ ($(srcdir)/figures.stamp, fake-doc)
+ Adjust actions.
+ (edit): Substitute @srcdir@ and @builddir@ as well.
+ (edit_user): Prepend $(srcdir) to each path.
+ (Doxyfile_user, Doxyfile_user_pdf)
+ (Doxyfile_devel, Doxyfile_devel_pdf):
+ Rename targets as...
+ ($(srcdir)/Doxyfile_user, $(srcdir)/Doxyfile_user_pdf)
+ ($(srcdir)/Doxyfile_devel, $(srcdir)/Doxyfile_devel_pdf):
+ ...these.
+ * doc/doc.mk (DOC_BUILDDIR, OUTPUTS_BUILDDIR)
+ (SPLIT_OUTPUTS_BUILDDIR, FIGURES_BUILDDIR, EXAMPLES_BUILDDIR)
+ (SPLIT_EXAMPLES_BUILDDIR):
+ Remove variables.
+ Add missing copyright header.
+ * doc/Doxyfile.in (OUTPUT_DIRECTORY): Set to @srcdir@/devel/.
+ * doc/examples/Makefile.am (CLEANFILES): New.
+ Add $(EXTRA_PROGRAMS)
+ (run-examples, diff-data, split-examples, split-outputs):
+ Adjust actions to generate products in the source tree.
+ (clean-local, clean-figures): Disable actions.
+ * doc/ref_guide/Makefile.am (TEXINPUTS): Remove $(DOC_BUILDDIR).
+ ($(REF_GUIDE_HH)): Adjust the action to generate the target in the
+ source tree.
+ * doc/tutorial/Makefile.am (TEXINPUTS): Remove $(DOC_BUILDDIR).
+ ($(TUTORIAL_HH)): Adjust the action to generate the target in the
+ source tree.
+
+2009-06-26 Roland Levillain <roland(a)lrde.epita.fr>
+
Help make to regen doc/figures.stamp from subdirectories of doc/.
* doc/tutorial/Makefile.am ($(srcdir)/../figures.stamp)
diff --git a/milena/doc/Doxyfile.in b/milena/doc/Doxyfile.in
index 32f8e42..3fb38d3 100644
--- a/milena/doc/Doxyfile.in
+++ b/milena/doc/Doxyfile.in
@@ -5,7 +5,7 @@
#---------------------------------------------------------------------------
PROJECT_NAME = "Milena (@PACKAGE_NAME@)"
PROJECT_NUMBER = "@PACKAGE_VERSION@ @ID@"
-OUTPUT_DIRECTORY = ./devel/
+OUTPUT_DIRECTORY = @srcdir@/devel/
CREATE_SUBDIRS = YES
OUTPUT_LANGUAGE = English
BRIEF_MEMBER_DESC = YES
diff --git a/milena/doc/Makefile.am b/milena/doc/Makefile.am
index 47064b3..56ba551 100644
--- a/milena/doc/Makefile.am
+++ b/milena/doc/Makefile.am
@@ -57,61 +57,82 @@ doc-devel-html: tutorial-html ref-guide-html white-paper-html \
ref-doc-devel-html
+## ----------------------------------------------------------------- ##
+## Shared dependencies on the products of tutorial/ and ref_guide/. ##
+## ----------------------------------------------------------------- ##
+
# FIXME: Maintaining dependencies across directories is too
# complicated. Simplify.
-# Shared dependencies on the products of tutorial/ and ref_guide/.
-EXTRA_DEPS = tutorial/tutorial.hh ref_guide/ref_guide.hh
-tutorial/tutorial.hh: fig-convert
- cd tutorial && $(MAKE) $(AM_MAKEFLAGS) tutorial.hh
-ref_guide/ref_guide.hh: fig-convert
- cd ref_guide && $(MAKE) $(AM_MAKEFLAGS) ref_guide.hh
+EXTRA_DEPS = $(srcdir)/tutorial/tutorial.hh $(srcdir)/ref_guide/ref_guide.hh
+$(srcdir)/tutorial/tutorial.hh: fig-convert
+ cd tutorial && $(MAKE) $(AM_MAKEFLAGS) tutorial-html
+$(srcdir)/ref_guide/ref_guide.hh: fig-convert
+ cd ref_guide && $(MAKE) $(AM_MAKEFLAGS) ref-guide-html
+
+## ----------------------- ##
+## Doxygen documentation. ##
+## ----------------------- ##
+
+## FIXME: We should use a stamp file and generate the documentation in
+## a temporary directory in the _build_ tree, then copy it into a
+## directory of the _source_ tree. See how this is implemented in
+## Vaucanson's doc build system. (Do not forget to adjust Doxyfiles.)
# Doxygen PDF documentation outputs.
-USER_REFMAN_PDF = user/latex/refman.pdf
+USER_REFMAN_PDF = $(srcdir)/user/latex/refman.pdf
ref-doc-pdf: $(USER_REFMAN_PDF)
# FIXME: Split in two rules: one generating the LaTeX file from the
# Doxyfile, and another one generating the PDF from the LaTeX source.
# Moreover, the LaTeX to PDF rule could be factored using a suffix
# rule (as in LRDE's share/).
-$(USER_REFMAN_PDF): Doxyfile_user_pdf $(srcdir)/figures.stamp $(EXTRA_DEPS)
+$(USER_REFMAN_PDF): $(srcdir)/Doxyfile_user_pdf $(srcdir)/figures.stamp $(EXTRA_DEPS)
$(DOXYGEN) $<
- cd user/latex && make pdf
+ cd $(srcdir)/user/latex && $(MAKE) pdf
-USER_REFMAN_HTML = user/html
+USER_REFMAN_HTML = $(srcdir)/user/html
ref-doc-html: $(USER_REFMAN_HTML)
-$(USER_REFMAN_HTML): Doxyfile_user $(srcdir)/figures.stamp $(EXTRA_DEPS)
+$(USER_REFMAN_HTML): $(srcdir)/Doxyfile_user $(srcdir)/figures.stamp $(EXTRA_DEPS)
$(DOXYGEN) $<
# Doxygen HTML documentation output directories.
-DEVEL_REFMAN_PDF = devel/latex/refman.pdf
+DEVEL_REFMAN_PDF = $(srcdir)/devel/latex/refman.pdf
ref-doc-devel-pdf: $(DEVEL_REFMAN_PDF)
# FIXME: Split in two rules: one generating the LaTeX file from the
# Doxyfile, and another one generating the PDF from the LaTeX source.
# Moreover, the LaTeX to PDF rule could be factored using a suffix
# rule (as in LRDE's share/).
-$(DEVEL_REFMAN_PDF): Doxyfile_devel_pdf $(srcdir)/figures.stamp $(EXTRA_DEPS)
+$(DEVEL_REFMAN_PDF): $(srcdir)/Doxyfile_devel_pdf $(srcdir)/figures.stamp $(EXTRA_DEPS)
$(DOXYGEN) $<
- cd devel/latex && make $(AM_MAKEFLAGS)
+ cd $(srcdir)/devel/latex && $(MAKE) $(AM_MAKEFLAGS)
-DEVEL_REFMAN_HTML = devel/html
+DEVEL_REFMAN_HTML = $(srcdir)/devel/html
ref-doc-devel-html: $(DEVEL_REFMAN_HTML)
-$(DEVEL_REFMAN_HTML): Doxyfile_devel $(srcdir)/figures.stamp $(EXTRA_DEPS)
+$(DEVEL_REFMAN_HTML): $(srcdir)/Doxyfile_devel $(srcdir)/figures.stamp $(EXTRA_DEPS)
$(DOXYGEN) $<
-# Tutorial.
+## ---------- ##
+## Tutorial. ##
+## ---------- ##
+
tutorial-pdf: fig-convert
cd tutorial && $(MAKE) $(AM_MAKEFLAGS) $@
tutorial-html: fig-convert
cd tutorial && $(MAKE) $(AM_MAKEFLAGS) $@
-# White Paper.
+## ------------- ##
+## White Paper. ##
+## ------------- ##
+
white-paper-pdf:
cd white_paper && $(MAKE) $(AM_MAKEFLAGS) $@
white-paper-html:
cd white_paper && $(MAKE) $(AM_MAKEFLAGS) $@
-# Reference Guide.
+## ----------------- ##
+## Reference Guide. ##
+## ----------------- ##
+
ref-guide-pdf: fig-convert
cd ref_guide && $(MAKE) $(AM_MAKEFLAGS) $@
@@ -130,28 +151,29 @@ fix-refdata:
fig-convert: $(srcdir)/figures.stamp
-EXTRA_DIST = $(srcdir)/figures.stamp
+EXTRA_DIST = figures.stamp
$(srcdir)/figures.stamp: $(FIGURES_SRCDIR)/*.p*m
rm -f $@.tmp
touch $@.tmp
- test -d $(FIGURES_BUILDDIR) || mkdir $(FIGURES_BUILDDIR) && \
failcom='exit 1'; \
list="$(FIGURES_SRCDIR)/*.p*m"; for img in $$list; do \
echo "Converting $$img to PNG"; \
name=`basename $$img` \
ext=`echo $$name | cut -d '.' -f 2`; \
convert -scale 250 $$img \
- $(FIGURES_BUILDDIR)/`basename $$img $$ext`png \
+ $(FIGURES_SRCDIR)/`basename $$img $$ext`png \
|| eval $$failcom; \
done
mv -f $@.tmp $@
-edit = sed -e "s|@ID@|$$Id|" \
- -e 's,@PACKAGE_NAME\@,$(PACKAGE_NAME),g' \
- -e 's,@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g' \
- -e 's,@top_builddir\@,$(top_builddir),g' \
- -e 's,@top_srcdir\@,$(top_srcdir),g'
+edit = sed -e "s|@ID@|$$Id|" \
+ -e 's,@PACKAGE_NAME\@,$(PACKAGE_NAME),g' \
+ -e 's,@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g' \
+ -e 's,@top_srcdir\@,$(top_srcdir),g' \
+ -e 's,@top_builddir\@,$(top_builddir),g' \
+ -e 's,@srcdir\@,$(srcdir),g' \
+ -e 's,@builddir\@,$(builddir),g'
edit_pdf = sed -e 's,GENERATE_LATEX = NO,GENERATE_LATEX = YES,g' \
-e 's,GENERATE_HTML = YES,GENERATE_HTML = NO,g'
@@ -161,7 +183,7 @@ edit_pdf = sed -e 's,GENERATE_LATEX = NO,GENERATE_LATEX = YES,g' \
# Doxyfile_user from Doxyfile_devel! Both should be a product
# derived from a single source, Doxyfile.in.
edit_user = sed \
- -e 's,OUTPUT_DIRECTORY = ./devel/,OUTPUT_DIRECTORY = ./user/,g' \
+ -e 's,OUTPUT_DIRECTORY = @srcdir@/devel/,OUTPUT_DIRECTORY = @srcdir@/user/,g' \
-e 's,EXTRACT_ALL = YES,EXTRACT_ALL = NO,g' \
-e 's,EXTRACT_PRIVATE = YES,EXTRACT_PRIVATE = NO,g' \
-e 's,EXTRACT_STATIC = YES,EXTRACT_STATIC = NO,g' \
@@ -244,18 +266,18 @@ CLEANFILES = \
# Sed is used to generate Doxyfile from Doxyfile.in instead of
# configure, because the former is way faster than the latter.
-Doxyfile_user: Doxyfile_devel
+$(srcdir)/Doxyfile_user: Doxyfile_devel
$(edit_user) $< >$@
-Doxyfile_user_pdf: Doxyfile_user
+$(srcdir)/Doxyfile_user_pdf: Doxyfile_user
$(edit_pdf) $< >$@
-Doxyfile_devel: $(srcdir)/Doxyfile.in
+$(srcdir)/Doxyfile_devel: $(srcdir)/Doxyfile.in
Id=`grep '^\$$Id' $(top_srcdir)/milena/ChangeLog \
| sed -e 's/\\\$$//g'`; \
$(edit) $< >$@
-Doxyfile_devel_pdf: Doxyfile_devel
+$(srcdir)/Doxyfile_devel_pdf: Doxyfile_devel
$(edit_pdf) $< >$@
@@ -264,35 +286,22 @@ Doxyfile_devel_pdf: Doxyfile_devel
# developers who want to check the distribution mechanism, for
# generating the Doxygen documentation make take up to 1 hour.
#
-# A few remarks. Refreshing the contents of EXTRA_DIST using
-#
-# touch $(EXTRA_DIST)
-#
-# just does not work, as EXTRA_DIST lists source and built files
-# (resp. in srcdir and buidldir). Cheat: go to srcdir and strip the
-# srcdir prefix from path of every file listed in EXTRA_DIST. And we
-# have to prune the built files (e.g. `Doxyfile_user_pdf').
-#
-# We also selectively refresh files by hand in a certain order (some
+# We selectively refresh files by hand in a certain order (some
# of them being already listed in EXTRA_DIST), to satisfy the
# dependencies.
.PHONY: fake-doc
fake-doc:
- cd $(srcdir) \
- && touch `echo $(EXTRA_DIST) \
- | sed -e 's!$(srcdir)/!!g' \
- -e 's/Doxyfile_user_pdf//g' \
- -e 's/Doxyfile_user//g' `
+ cd $(srcdir) && touch $(EXTRA_DIST)
cd ref_guide && $(MAKE) $(AM_MAKEFLAGS) $@
cd tutorial && $(MAKE) $(AM_MAKEFLAGS) $@
cd white_paper && $(MAKE) $(AM_MAKEFLAGS) $@
touch $(EXTRA_DEPS)
- touch Doxyfile_devel
- touch Doxyfile_devel_pdf
- touch Doxyfile_user
- touch Doxyfile_user_pdf
- test -d user || mkdir user
- for d in $(USER_REFMAN_HTML) user/latex; do \
+ touch $(srcdir)/Doxyfile_devel
+ touch $(srcdir)/Doxyfile_devel_pdf
+ touch $(srcdir)/Doxyfile_user
+ touch $(srcdir)/Doxyfile_user_pdf
+ cd $(srcdir) && test -d user || mkdir user
+ for d in $(USER_REFMAN_HTML) $(srcdir)/user/latex; do \
if test -d $$d; then touch $$d; else mkdir $$d; fi; \
done
touch $(USER_REFMAN_PDF)
diff --git a/milena/doc/doc.mk b/milena/doc/doc.mk
index 822717e..abc1c12 100644
--- a/milena/doc/doc.mk
+++ b/milena/doc/doc.mk
@@ -1,10 +1,31 @@
-## FIXME: Revamp (see Olena 0.11's test suite). -*- Automake -*-
+# -*- Automake -*-
+
+# Copyright (C) 2008, 2009 EPITA Research and Development Laboratory (LRDE).
+#
+# This file is part of Olena.
+#
+# Olena is free software: you can redistribute it and/or modify it under
+# the terms of the GNU General Public License as published by the Free
+# Software Foundation, version 2 of the License.
+#
+# Olena is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Olena. If not, see <http://www.gnu.org/licenses/>.
include $(top_srcdir)/milena/tests/tests.mk
AM_CPPFLAGS += -I$(top_srcdir)/milena/doc/tutorial/tools
-
+## FIXME: Upercase variables should be reserved for special names:
+## classical Make variables (e.g. `CXXFLAGS') Automake variables
+## (e.g. `SUBDIRS'), etc.
+##
+## Moreover, do we really need all these variables? See how things
+## evolve during the refurbishing of the build system in doc/.
DOC_SRCDIR = $(top_srcdir)/milena/doc
OUTPUTS_SRCDIR = $(DOC_SRCDIR)/outputs
SPLIT_OUTPUTS_SRCDIR = $(OUTPUTS_SRCDIR)/split
@@ -12,10 +33,3 @@ FIGURES_SRCDIR = $(DOC_SRCDIR)/figures
EXAMPLES_SRCDIR = $(DOC_SRCDIR)/examples
SPLIT_EXAMPLES_SRCDIR = $(EXAMPLES_SRCDIR)/split
IMG_SRCDIR = $(DOC_SRCDIR)/img
-
-DOC_BUILDDIR = $(top_builddir)/milena/doc
-OUTPUTS_BUILDDIR = $(DOC_BUILDDIR)/outputs
-SPLIT_OUTPUTS_BUILDDIR = $(OUTPUTS_BUILDDIR)/split
-FIGURES_BUILDDIR = $(DOC_BUILDDIR)/figures
-EXAMPLES_BUILDDIR = $(DOC_BUILDDIR)/examples
-SPLIT_EXAMPLES_BUILDDIR = $(EXAMPLES_BUILDDIR)/split
diff --git a/milena/doc/examples/Makefile.am b/milena/doc/examples/Makefile.am
index 3ba5630..a0d812a 100644
--- a/milena/doc/examples/Makefile.am
+++ b/milena/doc/examples/Makefile.am
@@ -79,6 +79,7 @@ EXTRA_PROGRAMS += \
tuto4_point2d \
tuto4_site_set_create
+CLEANFILES = $(EXTRA_PROGRAMS)
accu_right_instanciation_SOURCES = accu-right-instanciation.cc
borderthickness_SOURCES = borderthickness.cc
@@ -142,40 +143,39 @@ tuto4_point2d_SOURCES = tuto4/point2d.cc
examples: $(EXTRA_PROGRAMS)
run-examples: examples
- mkdir -p $(OUTPUTS_BUILDDIR)
- mkdir -p $(FIGURES_BUILDDIR)
@failcom='exit 1'; \
list='$(noinst_PROGRAMS)'; for bin in $$list; do \
echo "Running $$bin"; \
- ./$$bin > $(OUTPUTS_BUILDDIR)/$$bin.txt || eval $$failcom; \
+ ./$$bin > $(OUTPUTS_SRCDIR)/$$bin.txt || eval $$failcom; \
done
-
+## FIXME: This is wrong. Make is not an imperative language, and this
+## rule probably does not work as expected.
data-regen: examples run-examples split-examples split-outputs diff-data
diff-data: run-examples split-examples
@failcom='exit 1'; \
has_txt_diff=""; \
- txtlist="$(OUTPUTS_BUILDDIR)/*.txt"; for txt in $$txtlist; do \
+ txtlist="$(OUTPUTS_SRCDIR)/*.txt"; for txt in $$txtlist; do \
echo "Diff `basename $$txt`"; \
diff $$txt $(OUTPUTS_SRCDIR)/`basename $$txt` >/dev/null 2>&1 \
|| has_txt_diff="$$has_txt_diff `basename $$txt`"; \
done; \
has_fig_diff=""; \
- figlist="$(FIGURES_BUILDDIR)/*.p*m"; for fig in $$figlist; do \
+ figlist="$(FIGURES_SRCDIR)/*.p*m"; for fig in $$figlist; do \
echo "Diff `basename $$fig`"; \
diff $$fig $(FIGURES_SRCDIR)/`basename $$fig` >/dev/null 2>&1 \
|| has_fig_diff="$$has_fig_diff `basename $$fig`"; \
done; \
has_split_out_diff=""; \
- split_outlist="$(SPLIT_OUTPUTS_BUILDDIR)/*"; for split_out in $$split_outlist; do \
+ split_outlist="$(SPLIT_OUTPUTS_SRCDIR)/*"; for split_out in $$split_outlist; do \
echo "Diff `basename $$split_out`"; \
diff $$split_out $(SPLIT_OUTPUTS_SRCDIR)/`basename $$split_out` >/dev/null 2>&1 \
|| has_split_out_diff="$$has_split_out_diff `basename $$split_out`"; \
done; \
has_split_ex_diff=""; \
- split_exlist="$(SPLIT_EXAMPLES_BUILDDIR)/*"; for split_ex in $$split_exlist; do \
+ split_exlist="$(SPLIT_EXAMPLES_SRCDIR)/*"; for split_ex in $$split_exlist; do \
echo "Diff `basename $$split_ex`"; \
diff $$split_ex $(SPLIT_EXAMPLES_SRCDIR)/`basename $$split_ex` >/dev/null 2>&1 \
|| has_split_ex_diff="$$has_split_ex_diff `basename $$split_ex`"; \
@@ -222,22 +222,22 @@ reference or their reference file does not exist:"; \
fix-refdata:
@failcom='exit 1'; \
- txtlist="$(OUTPUTS_BUILDDIR)/*.txt"; for txt in $$txtlist; do \
+ txtlist="$(OUTPUTS_SRCDIR)/*.txt"; for txt in $$txtlist; do \
diff $$txt $(OUTPUTS_SRCDIR)/`basename $$txt` >/dev/null 2>&1 \
|| echo "Updating reference file for $$txt"; \
cp $$txt $(OUTPUTS_SRCDIR); \
done; \
- figlist="$(FIGURES_BUILDDIR)/*.p*m"; for fig in $$figlist; do \
+ figlist="$(FIGURES_SRCDIR)/*.p*m"; for fig in $$figlist; do \
diff $$fig $(FIGURES_SRCDIR)/`basename $$fig` >/dev/null 2>&1 \
|| echo "Updating reference file for $$fig"; \
cp $$fig $(FIGURES_SRCDIR); \
done; \
- split_outlist="$(SPLIT_OUTPUTS_BUILDDIR)/*.txt"; for split_out in $$split_outlist; do \
+ split_outlist="$(SPLIT_OUTPUTS_SRCDIR)/*.txt"; for split_out in $$split_outlist; do \
diff $$split_out $(SPLIT_OUTPUTS_SRCDIR)/`basename $$split_out` >/dev/null 2>&1 \
|| echo "Updating reference file for $$split_out"; \
cp $$split_out $(SPLIT_OUTPUTS_SRCDIR); \
done; \
- split_exlist="$(SPLIT_EXAMPLES_BUILDDIR)/*.cc"; for split_ex in $$split_exlist; do \
+ split_exlist="$(SPLIT_EXAMPLES_SRCDIR)/*.cc"; for split_ex in $$split_exlist; do \
diff $$split_ex $(SPLIT_EXAMPLES_SRCDIR)/`basename $$split_ex` >/dev/null 2>&1 \
|| echo "Updating reference file for $$split_ex"; \
cp $$split_ex $(SPLIT_EXAMPLES_SRCDIR); \
@@ -245,24 +245,28 @@ fix-refdata:
split-examples:
- test -d $(SPLIT_EXAMPLES_BUILDDIR) || mkdir $(SPLIT_EXAMPLES_BUILDDIR)
+ test -d $(SPLIT_EXAMPLES_SRCDIR) || mkdir $(SPLIT_EXAMPLES_SRCDIR)
@failcom='exit 1'; \
list=`find $(EXAMPLES_SRCDIR) -type f -name '*.cc'`; for file in $$list; do \
- $(DOC_SRCDIR)/tools/split_sample.sh $$file cc $(SPLIT_EXAMPLES_BUILDDIR)\
+ $(DOC_SRCDIR)/tools/split_sample.sh $$file cc $(SPLIT_EXAMPLES_SRCDIR)\
|| eval $$failcom; \
done
split-outputs:
- test -d $(SPLIT_OUTPUTS_BUILDDIR) || mkdir $(SPLIT_OUTPUTS_BUILDDIR)
+ test -d $(SPLIT_OUTPUTS_SRCDIR) || mkdir $(SPLIT_OUTPUTS_SRCDIR)
@failcom='exit 1'; \
- list='$(OUTPUTS_BUILDDIR)/*.txt'; for file in $$list; do \
- $(DOC_SRCDIR)/tools/split_sample.sh $$file txt $(SPLIT_OUTPUTS_BUILDDIR)\
+ list='$(OUTPUTS_SRCDIR)/*.txt'; for file in $$list; do \
+ $(DOC_SRCDIR)/tools/split_sample.sh $$file txt $(SPLIT_OUTPUTS_SRCDIR)\
|| eval $$failcom; \
done
+## FIXME: Generated products recored in the repository should be
+## listed in MAINTAINERCLEANFILES.
clean-local: clean-figures
- rm -Rf $(OUTPUTS_BUILDDIR)
- rm -f $(EXAMPLES_BUILDDIR)/*.cc
+## rm -Rf $(OUTPUTS_BUILDDIR)
+## rm -f $(EXAMPLES_BUILDDIR)/*.cc
+## FIXME: Generated products recored in the repository should be
+## listed in MAINTAINERCLEANFILES.
clean-figures:
- rm -Rf $(FIGURES_BUILDDIR)
+## rm -Rf $(FIGURES_BUILDDIR)
diff --git a/milena/doc/ref_guide/Makefile.am b/milena/doc/ref_guide/Makefile.am
index 6564d5c..5e19d99 100644
--- a/milena/doc/ref_guide/Makefile.am
+++ b/milena/doc/ref_guide/Makefile.am
@@ -19,7 +19,7 @@
include $(top_srcdir)/milena/doc/doc.mk
-TEXINPUTS ="$(DOC_SRCDIR):$(DOC_BUILDDIR):$(OUTPUTS_SRCDIR):\
+TEXINPUTS ="$(DOC_SRCDIR):$(OUTPUTS_SRCDIR):\
$(SPLIT_OUTPUTS_SRCDIR):$(IMG_SRCDIR):$(SPLIT_EXAMPLES_SRCDIR):"
@@ -36,7 +36,7 @@ REF_GUIDE_HH = ref_guide.hh
ref-guide-html: $(REF_GUIDE_HH)
$(REF_GUIDE_HH): ref_guide.tex $(srcdir)/../figures.stamp
$(DOC_SRCDIR)/tools/todoxygen.sh \
- $< $(DOC_BUILDDIR)/ref_guide $(DOC_SRCDIR)
+ $< $(DOC_SRCDIR)/ref_guide $(DOC_SRCDIR)
# Final product.
diff --git a/milena/doc/tutorial/Makefile.am b/milena/doc/tutorial/Makefile.am
index 0fb2333..e49f201 100644
--- a/milena/doc/tutorial/Makefile.am
+++ b/milena/doc/tutorial/Makefile.am
@@ -19,7 +19,7 @@
include $(top_srcdir)/milena/doc/doc.mk
-TEXINPUTS = $(DOC_SRCDIR):$(DOC_BUILDDIR):$(OUTPUTS_SRCDIR):$(IMG_SRCDIR):
+TEXINPUTS = $(DOC_SRCDIR):$(OUTPUTS_SRCDIR):$(IMG_SRCDIR):
tutorial: tutorial-html tutorial-pdf
@@ -34,8 +34,7 @@ TUTORIAL_HH = tutorial.hh
tutorial-html: $(TUTORIAL_HH)
$(TUTORIAL_HH): tutorial.tex $(srcdir)/../figures.stamp
$(DOC_SRCDIR)/tools/todoxygen.sh \
- $< $(DOC_BUILDDIR)/tutorial $(DOC_SRCDIR)
-
+ $< $(DOC_SRCDIR)/tutorial $(DOC_SRCDIR)
# Final product.
TUTORIAL_PDF = tutorial.pdf
--
1.6.3.1
1
0