TMI-101, 102 & 103: Now better handles broken data (throws IIOException) and better detects bogus Adobe markers.

This commit is contained in:
Harald Kuhr
2015-03-02 10:24:21 +01:00
parent d8f5293f94
commit 1f99040927
5 changed files with 267 additions and 27 deletions

View File

@@ -319,6 +319,19 @@ public class JPEGImageReader extends ImageReaderBase {
ICC_Profile profile = getEmbeddedICCProfile(false);
AdobeDCTSegment adobeDCT = getAdobeDCT();
SOFSegment sof = getSOF();
if (adobeDCT != null && (adobeDCT.getTransform() == AdobeDCTSegment.YCC && sof.componentsInFrame() != 3 ||
adobeDCT.getTransform() == AdobeDCTSegment.YCCK && sof.componentsInFrame() != 4)) {
processWarningOccurred(String.format(
"Invalid Adobe App14 marker. Indicates %s data, but SOF%d has %d color components. " +
"Ignoring Adobe App14 marker.",
adobeDCT.getTransform() == AdobeDCTSegment.YCCK ? "YCCK/CMYK" : "YCC/RGB",
sof.marker & 0xf, sof.componentsInFrame()
));
adobeDCT = null;
}
JPEGColorSpace sourceCSType = getSourceCSType(getJFIF(), adobeDCT, sof);
// We need to apply ICC profile unless the profile is sRGB/default gray (whatever that is)
@@ -335,7 +348,7 @@ public class JPEGImageReader extends ImageReaderBase {
}
// TODO: Possible to optimize slightly, to avoid readAsRaster for non-CMyK and other good types?
return readImageAsRasterAndReplaceColorProfile(imageIndex, param, sof, sourceCSType, adobeDCT, ensureDisplayProfile(profile));
return readImageAsRasterAndReplaceColorProfile(imageIndex, param, sof, sourceCSType, ensureDisplayProfile(profile));
}
if (DEBUG) {
@@ -345,7 +358,7 @@ public class JPEGImageReader extends ImageReaderBase {
return delegate.read(imageIndex, param);
}
private BufferedImage readImageAsRasterAndReplaceColorProfile(int imageIndex, ImageReadParam param, SOFSegment startOfFrame, JPEGColorSpace csType, AdobeDCTSegment adobeDCT, ICC_Profile profile) throws IOException {
private BufferedImage readImageAsRasterAndReplaceColorProfile(int imageIndex, ImageReadParam param, SOFSegment startOfFrame, JPEGColorSpace csType, ICC_Profile profile) throws IOException {
int origWidth = getWidth(imageIndex);
int origHeight = getHeight(imageIndex);
@@ -366,27 +379,16 @@ public class JPEGImageReader extends ImageReaderBase {
else if (intendedCS != null) {
// Handle inconsistencies
if (startOfFrame.componentsInFrame() != intendedCS.getNumComponents()) {
if (startOfFrame.componentsInFrame() < 4 && (csType == JPEGColorSpace.CMYK || csType == JPEGColorSpace.YCCK)) {
processWarningOccurred(String.format(
"Invalid Adobe App14 marker. Indicates YCCK/CMYK data, but SOF%d has %d color components. " +
"Ignoring Adobe App14 marker, assuming YCbCr/RGB data.",
startOfFrame.marker & 0xf, startOfFrame.componentsInFrame()
));
// If ICC profile number of components and startOfFrame does not match, ignore ICC profile
processWarningOccurred(String.format(
"Embedded ICC color profile is incompatible with image data. " +
"Profile indicates %d components, but SOF%d has %d color components. " +
"Ignoring ICC profile, assuming source color space %s.",
intendedCS.getNumComponents(), startOfFrame.marker & 0xf, startOfFrame.componentsInFrame(), csType
));
csType = JPEGColorSpace.YCbCr;
}
else {
// If ICC profile number of components and startOfFrame does not match, ignore ICC profile
processWarningOccurred(String.format(
"Embedded ICC color profile is incompatible with image data. " +
"Profile indicates %d components, but SOF%d has %d color components. " +
"Ignoring ICC profile, assuming source color space %s.",
intendedCS.getNumComponents(), startOfFrame.marker & 0xf, startOfFrame.componentsInFrame(), csType
));
if (csType == JPEGColorSpace.CMYK && image.getColorModel().getColorSpace().getType() != ColorSpace.TYPE_CMYK) {
convert = new ColorConvertOp(ColorSpaces.getColorSpace(ColorSpaces.CS_GENERIC_CMYK), image.getColorModel().getColorSpace(), null);
}
if (csType == JPEGColorSpace.CMYK && image.getColorModel().getColorSpace().getType() != ColorSpace.TYPE_CMYK) {
convert = new ColorConvertOp(ColorSpaces.getColorSpace(ColorSpaces.CS_GENERIC_CMYK), image.getColorModel().getColorSpace(), null);
}
}
// NOTE: Avoid using CCOp if same color space, as it's more compatible that way
@@ -510,6 +512,10 @@ public class JPEGImageReader extends ImageReaderBase {
}
static JPEGColorSpace getSourceCSType(JFIFSegment jfif, AdobeDCTSegment adobeDCT, final SOFSegment startOfFrame) throws IIOException {
if (startOfFrame == null) {
throw new IIOException("No SOF segment in stream");
}
/*
ADAPTED from http://download.oracle.com/javase/6/docs/api/javax/imageio/metadata/doc-files/jpeg_metadata.html:
@@ -554,9 +560,15 @@ public class JPEGImageReader extends ImageReaderBase {
switch (adobeDCT.getTransform()) {
case AdobeDCTSegment.YCC:
// TODO: Verify that startOfFrame has 3 components, otherwise issue warning and ignore adobeDCT
if (startOfFrame.components.length != 3) {
break;
}
return JPEGColorSpace.YCbCr;
case AdobeDCTSegment.YCCK:
// TODO: Verify that startOfFrame has 4 components, otherwise issue warning and ignore adobeDCT
if (startOfFrame.components.length != 4) {
break;
}
return JPEGColorSpace.YCCK;
case AdobeDCTSegment.Unknown:
if (startOfFrame.components.length == 1) {
@@ -1052,7 +1064,19 @@ public class JPEGImageReader extends ImageReaderBase {
@Override
public IIOMetadata getImageMetadata(int imageIndex) throws IOException {
IIOMetadata imageMetadata = delegate.getImageMetadata(imageIndex);
// TMI-101: As we catch the IndexOutOfBoundsException below, we need to make sure that we don't catch the
// IndexOutOfBoundsException that should be thrown, if (imageIndex < 0 || imageIndex > numImages).
checkBounds(imageIndex);
IIOMetadata imageMetadata;
try {
imageMetadata = delegate.getImageMetadata(imageIndex);
}
catch (IndexOutOfBoundsException knownIssue) {
// TMI-101: com.sun.imageio.plugins.jpeg.JPEGBuffer doesn't do proper sanity check of input data.
throw new IIOException("Corrupt JPEG data: Bad segment offset/length", knownIssue);
}
if (imageMetadata != null && Arrays.asList(imageMetadata.getMetadataFormatNames()).contains(JPEGImage10MetadataCleaner.JAVAX_IMAGEIO_JPEG_IMAGE_1_0)) {
if (metadataCleaner == null) {
@@ -1369,9 +1393,16 @@ public class JPEGImageReader extends ImageReaderBase {
// int sub = 4;
// param.setSourceSubsampling(sub, sub, 0, 0);
// }
BufferedImage image = reader.getImageTypes(0).next().createBufferedImage(reader.getWidth(0), reader.getHeight(0));
param.setDestination(image);
// long start = System.currentTimeMillis();
BufferedImage image = reader.read(0, param);
try {
image = reader.read(0, param);
}
catch (IOException e) {
e.printStackTrace();
}
// System.err.println("Read time: " + (System.currentTimeMillis() - start) + " ms");
// System.err.println("image: " + image);
@@ -1380,8 +1411,6 @@ public class JPEGImageReader extends ImageReaderBase {
int maxW = 1280;
int maxH = 800;
// int maxW = 400;
// int maxH = 400;
if (image.getWidth() > maxW || image.getHeight() > maxH) {
// start = System.currentTimeMillis();
float aspect = reader.getAspectRatio(0);

View File

@@ -94,6 +94,16 @@ public class JPEGImageReaderTest extends ImageReaderAbstractTestCase<JPEGImageRe
// More test data in specific tests below
}
protected List<TestData> getBrokenTestData() {
return Arrays.asList(
new TestData(getClassLoaderResource("/jpeg/broken-bogus-segment-length.jpg"), new Dimension(467, 612)),
new TestData(getClassLoaderResource("/jpeg/broken-adobe-marker-bad-length.jpg"), new Dimension(1800, 1200)),
new TestData(getClassLoaderResource("/jpeg/broken-invalid-adobe-ycc-gray.jpg"), new Dimension(11, 440))
);
// More test data in specific tests below
}
@Override
protected ImageReaderSpi createProvider() {
return SPI;
@@ -396,7 +406,120 @@ public class JPEGImageReaderTest extends ImageReaderAbstractTestCase<JPEGImageRe
assertEquals(384, image.getHeight());
reader.dispose();
}
}
@Test
public void testBrokenRead() throws IOException {
JPEGImageReader reader = createReader();
try {
for (TestData broken : getBrokenTestData()) {
reader.setInput(ImageIO.createImageInputStream(broken.getInput()));
try {
reader.read(0);
}
catch (IIOException expected) {
assertNotNull(expected.getMessage());
}
}
}
finally {
reader.dispose();
}
}
@Test
public void testBrokenGetDimensions() throws IOException {
JPEGImageReader reader = createReader();
try {
for (TestData broken : getBrokenTestData()) {
reader.setInput(ImageIO.createImageInputStream(broken.getInput()));
Dimension exptectedSize = broken.getDimension(0);
try {
assertEquals(exptectedSize.width, reader.getWidth(0));
assertEquals(exptectedSize.height, reader.getHeight(0));
}
catch (IIOException expected) {
assertNotNull(expected.getMessage());
}
}
}
finally {
reader.dispose();
}
}
@Test
public void testBrokenGetImageMetadata() throws IOException {
JPEGImageReader reader = createReader();
try {
for (TestData broken : getBrokenTestData()) {
reader.setInput(ImageIO.createImageInputStream(broken.getInput()));
try {
reader.getImageMetadata(0);
}
catch (IIOException expected) {
assertNotNull(expected.getMessage());
}
}
}
finally {
reader.dispose();
}
}
@Test(expected = IndexOutOfBoundsException.class)
public void testGetImageMetadataOutOfBounds() throws IOException {
JPEGImageReader reader = createReader();
try {
// Any sample should do here
reader.setInput(ImageIO.createImageInputStream(getClassLoaderResource("/jpeg/gray-sample.jpg")));
reader.getImageMetadata(-1);
}
finally {
reader.dispose();
}
}
@Test(expected = IIOException.class)
public void testBrokenBogusSegmentLengthReadWithDestination() throws IOException {
JPEGImageReader reader = createReader();
try {
reader.setInput(ImageIO.createImageInputStream(getClassLoaderResource("/jpeg/broken-bogus-segment-length.jpg")));
assertEquals(467, reader.getWidth(0));
assertEquals(612, reader.getHeight(0));
ImageTypeSpecifier type = reader.getImageTypes(0).next();
BufferedImage image = type.createBufferedImage(reader.getWidth(0), reader.getHeight(0));
ImageReadParam param = reader.getDefaultReadParam();
param.setDestination(image);
try {
reader.read(0, param);
}
catch (IOException e) {
// Even if we get an exception here, the image should contain 10-15% of the image
assertEquals(0xffffffff, image.getRGB(0, 0)); // white area
assertEquals(0xff0000ff, image.getRGB(67, 22)); // blue area
assertEquals(0xffff00ff, image.getRGB(83, 22)); // purple area
throw e;
}
}
finally {
reader.dispose();
}
}
@Test
public void testHasThumbnailNoIFD1() throws IOException {

View File

@@ -0,0 +1,88 @@
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> Adobe d<> <01><> <20>   



 
 #"""#'''''''''' 



!! !!''''''''''<27><> &<01>" <01><><01>   
   
 s !1AQa"q<>2<><32><15>B#<23>R<EFBFBD><52>3b<>$r<><72>%C4S<34><53><EFBFBD>cs<63>5D'<27><><EFBFBD>6Tdt<64><74><EFBFBD>&<26>
<19><>EF<45><46>V<EFBFBD>U(<1A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>eu<65><75><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>fv<66><76><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>7GWgw<67><77><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8HXhx<68><78><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)9IYiy<69><79><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*:JZjz<6A><7A><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> m !1AQa"q<><71>2<EFBFBD><32><EFBFBD><14><><EFBFBD>#BRbr<62>3$4C<34><16>S%<25>c<EFBFBD><63>s<>5<EFBFBD>D<EFBFBD>T<>
&6E'dtU7<55><37><EFBFBD><EFBFBD>()<29><>󄔤<EFBFBD><F38494A4><EFBFBD><EFBFBD><EFBFBD>eu<65><75><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>FVfv<66><76><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>GWgw<67><77><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8HXhx<68><78><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>9IYiy<69><79><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*:JZjz<6A><7A><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>   ? <20><>Zo<5A>,<01><>eu<65>"<22>p0DS=p<><13><><EFBFBD>S5<53>-<2D><><EFBFBD>!# <0B>;<3B><> <20>M1B<31>϶,<2C> <14><><EFBFBD>m<EFBFBD><6D><EFBFBD>a<EFBFBD>U8<55>Š<>)<15><><EFBFBD><EFBFBD> Jb<4A><62>"<22>lNi<4E><69><EFBFBD><EFBFBD><EFBFBD>Eۉ <15>^<5E><><EFBFBD>SY<53><><CD88><0F><><EFBFBD><EFBFBD>g!<21>U<EFBFBD>o$<24><>*<2A>d<EFBFBD><64>~j<>F<EFBFBD>hn~(.<15>p<EFBFBD><70><EFBFBD>L<EFBFBD><4C><0F>:AC <20>U<EFBFBD>9<EFBFBD>8<EFBFBD><38><EFBFBD><EFBFBD><EFBFBD>Q<EFBFBD><51><EFBFBD>E<EFBFBD><13><><EFBFBD><EFBFBD>wo~<7E><>A<EFBFBD><41>O<EFBFBD><1A><>T<EFBFBD><54><EFBFBD><EFBFBD> $V=93n><3E><>s<EFBFBD>#s؃L<D883>z<EFBFBD><7A>򿖴M<13><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><1D>l<EFBFBD><6C> <12><><EFBFBD><EFBFBD>`<06>2<EFBFBD>0C<30><43>*<2A><>6<EFBFBD>h(d"<22>?<3F>F<EFBFBD>+Y|<7C><><EFBFBD><EFBFBD><EFBFBD>?R<><52>n@N<><15><><EFBFBD><EFBFBD>Ei?<1C>P\<5C><>c<EFBFBD> <20><><6C>$%<25><18>T^<5E>%<25>"<22><1F>
MX<><58><EFBFBD>nISڇ"<22><>Cv<><76>m<14><18>"<22><><7F><EFBFBD><EFBFBD>쟻8*<2A><>Cpi<70>f<06><>s;<1F><0F><>=b<><62>&<26>e%U'<27>Ν<EFBFBD>B<EFBFBD><42><EFBFBD><EFBFBD>0<EFBFBD>N<EFBFBD>،<EFBFBD>X<><58>v<EFBFBD><76><EFBFBD>s<EFBFBD>Z<0F>hr»<72>Z<EFBFBD><5A>̬<EFBFBD>ly<<3C>X<EFBFBD>(<28>p<EFBFBD>^<5E>˨<EFBFBD><CBA8>dm<64>9=<3D><1E>q6<71>bIf<49> nI<6E><49><17><><EFBFBD>(<28>ڼ<EFBFBD>M*`<60>o<>G<47>s[C-<2D><><EFBFBD>yk#<23>pDq<44>s<1C><><EFBFBD><EFBFBD><EFBFBD>es1<73><10><>A<EFBFBD>o<EFBFBD>9<EFBFBD>-4<>-i<>Zl<5A><6C><EFBFBD>r<EFBFBD><72>><3E>^?<3F>:<3A>̶P7 {A<>u<EFBFBD>B}<14>b<EFBFBD><62><EFBFBD>8y{RQ,<2C><><EFBFBD> C<>'<17>59ER&o<><6F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>m<EFBFBD>'<27><18> <0C><><EFBFBD>d<EFBFBD>Z<EFBFBD>dyDlF<6C><46><EFBFBD><EFBFBD><><7F><16><>~<7E>-OՑ<4F><D591>_<EFBFBD>H<EFBFBD>N<EFBFBD><18> ?K<>f<EFBFBD>^<5E><18><>ȣ<EFBFBD>
<EFBFBD>R<EFBFBD><EFBFBD>4X<EFBFBD><EFBFBD>`Nz=G<7F><Vu<56><75>_<0F>J<EFBFBD>1<1A>M<EFBFBD>=z<11><><EFBFBD>8<EFBFBD>sK<73><4B>L%<25><>?<3F><><EFBFBD><EFBFBD>M<EFBFBD>cZ<63>.>jG<6A><47>ˍ<0E>
<EFBFBD><EFBFBD><EFBFBD>g<EFBFBD><EFBFBD><EFBFBD><EFBFBD>C\<5C>k66<36>W<EFBFBD><57><EFBFBD>m<EFBFBD>q<03>J6<18><48>a<EFBFBD><1C><19><><EFBFBD><0F><><EFBFBD><EFBFBD>']<5D><1F>(E <20>JFu<46><75><EFBFBD>2<EFBFBD><02>'<27>R?<3F><02>H<EFBFBD>}<7D>!<21><18>F<<3C>ɢ><3E><><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD>Wl<02><>1<EFBFBD><31>ի<EFBFBD>b<EFBFBD>Nˠ<>[=@<40><>8<EFBFBD>`<60>s<EFBFBD><73><EFBFBD><EFBFBD>ͷ<01><><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Nh<4E><68>H <0C>8e<05> <0C><>`<60>P:p#n<>
{1H<>&U<><55><EFBFBD>Z<EFBFBD><18> t<>lM<6C>`<60><11><1D>$ņء<C586> QA<><41><EFBFBD>\<5C>\R<>D<EFBFBD><44>-Z<><5A><EFBFBD>OA<4F><41><EFBFBD>lUҎ<>G<EFBFBD><47><EFBFBD>*<2A><><EFBFBD><EFBFBD>b<EFBFBD><62>lg<12>E,<2C>!<21>(<28>!<1B> <0C><>b<EFBFBD>ʇ<02>;⨲<14>p;<3B>7<EFBFBD><37><EFBFBD><EFBFBD>04<30><34><EFBFBD>D<17>4<EFBFBD><34>;`5<><35><EFBFBD>g<EFBFBD><67><EFBFBD>*r=[;<3B>]<5D>,<2C>5<EFBFBD>\+\YV<59><56>W b<><62>E3ez<65><7A>lU,<2C><>S<EFBFBD><53><EFBFBD><EFBFBD>D<>1E  <0B><>/<2F><>Q<EFBFBD><51>ؼr<D8BC><72> C<><EFBFBD><7F>1T<31>;<3B><><EFBFBD><13>A<1C><>-f<><66>MRA<52>l<16><>o<EFBFBD>KpF <09><EFBFBD>l<EFBFBD><05><><EFBFBD>. ]<5D> .<2E><><EFBFBD><EFBFBD>[SH<>PhA<68><41><EFBFBD>sx<73><78><EFBFBD>/<2F><>r<EFBFBD><72><EFBFBD>k<>o<EFBFBD><6F> <20>G;/<2F><>?W<><07><>ٓ<EFBFBD>&<26><0E> |Ak<41>0~3<>a<EFBFBD><61><EFBFBD>4gj9<6A>y'<27><>V6<56>]<5D> <20><><EFBFBD>H><3E>Gj<47><07>[<5B><>q<EFBFBD><71><EFBFBD><0F><> <20>~<7E>q<EFBFBD><71>E<EFBFBD><45><EFBFBD><19><>\<5C>ϼU?͖J<CD96>L<EFBFBD><4C>qn>H<1C>{<7B><17>A *<2A>׿.<2E><>3F$z<><7A><EFBFBD><EFBFBD>5++<2B>*<2A>[<1B><>S<EFBFBD><53>YXS<58>I<<3C><>Ki2p<32>At<>$KC<><43><EFBFBD>Q|<7C><>_K<5F><4B><EFBFBD>]iw<69>EVxD<78><44> <20><>^y<><79> D<><44><EFBFBD>w<EFBFBD>yNz<0F>䗖<n<>g<EFBFBD><67>i<><69>\ <0B>iI/w< <0C><><EFBFBD>j*H<>.<2E>1,y=]ջV\<5C>ㄇ/<2F><><<3C><><EFBFBD>b<EFBFBD>d<EFBFBD>Y<><1F>C<EFBFBD><43><EFBFBD><1D><>h<EFBFBD>M<EFBFBD>@<40>X<EFBFBD>3<01><><EFBFBD>yțy<C89B><79>ސ<EFBFBD>Y<EFBFBD><59>>RBP <20><13><><EFBFBD><EFBFBD><14><>Pr
<EFBFBD>W<EFBFBD>bKU#*`<60>Gi<47><69>2<EFBFBD>c9<13>D<EFBFBD><44>r}t<><19>91<39>n<EFBFBD>@[}<7D>j<><6A>k<12><><EFBFBD><EFBFBD><EFBFBD>Y<EFBFBD><59>玧b<E78EA7>W4<57>><3E><>i<EFBFBD><69>_<EFBFBD>m<EFBFBD><6D>!<21>䮀/?<3F>
;<3B>FfR<66>=/<2F><><1E>4<><34>B <20><19>Re<><65><EFBFBD>l<02><><EFBFBD><EFBFBD><14><>I=<3D><15><>?w<><77>d<EFBFBD>/<2F><>Ġ<>l
<EFBFBD><EFBFBD>EkЩ
<EFBFBD>0X<EFBFBD>6s<36>i<EFBFBD>x%!!<21>.?sW<73>M<EFBFBD>gf<67><66>1<EFBFBD><31><EFBFBD>
G<EFBFBD> p<><70><EFBFBD>v(o<16><07>K-/ྏԁ<E0BE8F><06><1D><><1C><>8(<11>i<EFBFBD>8<EFBFBD>6<EFBFBD><36>N<EFBFBD><06>I<EFBFBD><49><EFBFBD>k<EFBFBD>T<EFBFBD>*<2A>1k?8\D1<>rq<72><71>S_<53><5F>3<EFBFBD>&<26> 4 <20><><EFBFBD>5<EFBFBD><35>#<23>dZm<5A><6D><EFBFBD><EFBFBD><EFBFBD>J<1B><>2<<3C>W<><57><EFBFBD><EFBFBD><EFBFBD><1C><>,<2C><>!<21><><EFBFBD><EFBFBD>t <0C><><EFBFBD>D<EFBFBD><44><EFBFBD>+<2B><><EFBFBD><7F><EFBFBD>8<EFBFBD><38>=<3D>|e`<01><>)<29><>c<EFBFBD><63>Ү<EFBFBD>Y"<22><><EFBFBD><EFBFBD><EFBFBD> <1F>"^e<>Z<EFBFBD>p<EFBFBD><70>Ȯ9<C8AE><39>ޅk<DE85><6B>9<EFBFBD><73>)d<>XKk"<22><><EFBFBD>H<EFBFBD>LiRV<><56><EFBFBD><EFBFBD>v<EFBFBD><76><EFBFBD> <09>x<EFBFBD>5?H<>o.<2E>Y.[<5B>P<><50><EFBFBD> n4-<2D>.$&<26><> <0C><01>$ہ=>i<>f<EFBFBD>1<18><><EFBFBD>G<EFBFBD><02>q<EFBFBD>(qIB<49><0E> no$<24><>=ʸH<CAB8>CF8<19><>4KA?Tx<54>\zZB<5A><42>, <1F><><EFBFBD><EFBFBD>;<3B>m<EFBFBD><6D><EFBFBD><EFBFBD>đHAV<41><56>}<7D>LNQ<4E><51>t<EFBFBD><74>V<EFBFBD>m<EFBFBD><11><><EFBFBD><10><10>\<5C>8>+<2B><> <20><><EFBFBD><EFBFBD>̞?<eŻ<65><C5BB><r<><72><17><>k<EFBFBD>j"(ԺıۋE<DB8B><45><EFBFBD>
n<EFBFBD>)<29>%O Uy9'1<>4F<>H)<29>W;a\<5C><><EFBFBD>B<>#<1E><><EFBFBD><14><>GN*<2A>7Z`<60><>f<EFBFBD><66>-k<02><15>(m֕C<>n<EFBFBD>S=8Ќx<>u<18>U:ҧ<><13><>c<EFBFBD>w<EFBFBD> <20><><EFBFBD><13><><EFBFBD> <0C><>7<EFBFBD>^<5E><><13><><EFBFBD>Q!<21>s;`R<7F>FJ⪛W7*b<<3C>r<EFBFBD>U<EFBFBD><55>
<EFBFBD><EFBFBD><EFBFBD>6<EFBFBD><EFBFBD>"<22><><EFBFBD>>B<><42>T>^YCo,<1C>eUP66<36><36>+<2B>\U<1B><>z<EFBFBD>z<EFBFBD>1t<31><74>U6<><10>xؾ.\P<><50>N6A<36>)<29>:<3A>n<EFBFBD><6E>U
<EFBFBD>I<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
=<<3C><>K<EFBFBD>Z<EFBFBD>q<EFBFBD>t*<2A><><EFBFBD>s<EFBFBD><73><EFBFBD><EFBFBD><EFBFBD> ߉<06><>M<1A>/7y<1B><><EFBFBD>Ml<4D>J<EFBFBD><4A>v;f^<5E> y<>"^Q<>ֹ<EFBFBD><1E>^<5E><>y<EFBFBD>Q<1A><><ác<C3A1>
<20><><EFBFBD><EFBFBD>;<3B>g1<67> <0C><>F
<EFBFBD><EFBFBD><09><>ƕ<>4]<16>U<EFBFBD>H<EFBFBD><01>')<29>) <0C><>؃<EFBFBD><D883>,<2C>Ǐ<EFBFBD>G`<1E><><EFBFBD><EFBFBD>hhF̺rZ<><5A>X<EFBFBD>z<EFBFBD><7A> :<3A><><EFBFBD>-tؒ<74>U@<40>!<07><><EFBFBD> <20><0E><><EFBFBD> m<14><>k<EFBFBD>v<12>U|~xs<78><73>]]X<>6;J<>iU<69><55>V\<5C>|&<26><><EFBFBD>:<3A><>'<27>f<12><>F;<3B><><EFBFBD>w<EFBFBD>ίXӁE<D381>e@<40><><EFBFBD><02>5eG<1B>9<EFBFBD>yg\U?<08>߈q<DF88>Ykz<6B><7A>p<EFBFBD><70><EFBFBD><EFBFBD>_<EFBFBD><5F><0F><1A>ʸ<EFBFBD><CAB8><EFBFBD><EFBFBD>p<EFBFBD><70>3<EFBFBD>Q<>X<EFBFBD><58>%<25><><EFBFBD>]}<7D>i<EFBFBD><69>i<EFBFBD>^g<><67>f<EFBFBD><66>D<EFBFBD>|<7C>t<EFBFBD><74><EFBFBD>@<40><13><>>{o<><6F>լ<EFBFBD><D5AC><󪎴<><F3AA8EB4><EFBFBD><EFBFBD><EFBFBD>7s<37>{w.<2E><>
<EFBFBD><01><19>1h<31><68><EFBFBD>c<19><>$o<>H<1B>ӈ [<5B><>/<0F><><EFBFBD><EFBFBD><EFBFBD>F<EFBFBD>e<EFBFBD><65><4C>'<27><>G<EFBFBD><47><EFBFBD><EFBFBD>4<EFBFBD><34><EFBFBD><EFBFBD>Lx<4C><78><EFBFBD>r-5<><35><1C><>eX<65><58><77><DCAA><EFBFBD>><3E><01><><EFBFBD><EFBFBD>L<EFBFBD>.?w<7F><77>#W֜%<25>,<2C>><3E>Q<EFBFBD><51><EFBFBD>^a<>aq$/<2F>v
<EFBFBD><07>gO<67><4F><EFBFBD><EFBFBD><EFBFBD>6<><36>Y<><59><13><><EFBFBD><EFBFBD>B<EFBFBD>)ene$n<><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>_̘1<>÷<><08>U<EFBFBD>Ht<48><74><EFBFBD>><3E><><EFBFBD>BG<42>oî;Q<> <0C><12><>4<EFBFBD>˾F<CBBE><46>gZ<67><5A>=<3D>Ԛ<EFBFBD>d<EFBFBD>
m<EFBFBD><<3C><><EFBFBD><EFBFBD>t<EFBFBD><74>X<EFBFBD><58>?
<EFBFBD><EFBFBD>|<7C><><EFBFBD> <20> Y<>81<38><31><04><>fOÐG<C390><47><75><D6AC><EFBFBD><EFBFBD><EFBFBD><14>Z}8><3E><>3<EFBFBD><17>o/<2F>˻''<27><><EFBFBD><0E><><EFBFBD>KT<4B>Z! <0B>ƾM<><4D><EFBFBD>%<25><>><3E>
<EFBFBD><EFBFBD> v <0C>!̧&-&p<>&yޓ<>?w<>-<2D>ծt<D5AE>h~
<EFBFBD>H<EFBFBD>+<2B>.|<7C>n<EFBFBD>b<><62><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,q4<17><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӧ<EFBFBD><D3A7><EFBFBD>a<EFBFBD>–<EFBFBD>,<2C>kO
<EFBFBD><EFBFBD>2<EFBFBD>и<><D0B8> <20>嘏p<17><>L<1F>/s2<73><04>f4<66><34> }<7D>
R<EFBFBD>HLR<EFBFBD>*<2A>'<27>0<EFBFBD>"<22><>OZ*<2A>;<3B> -<2D>5<EFBFBD><35>2P<32>eaU&<26><>N2<1C>܍~<7E>U=FA<46>O9<4F>F<EFBFBD>R<EFBFBD><52>Od ]<5D> <20>E<EFBFBD><45>­;T<>ԁh<D481><08>b<EFBFBD><62><EFBFBD>"<22>PI<50>z<EFBFBD><7A><EFBFBD><EFBFBD>VU-<2D>N<EFBFBD><4E>
g<04>H<EFBFBD>s<11>z^<5E> b۝5<16><>><07>]Mwh<77> <20>d<EFBFBD>_Y<5F>r<EFBFBD><18>w<EFBFBD>3<EFBFBD>[<5B>ڮ<01>q<EFBFBD><71><EFBFBD>Jt<4A>Q<EFBFBD>$Z<><5A>E$<24>(*yFz<46>t<EFBFBD><74>*<2A><><EFBFBD><EFBFBD><EFBFBD>F<EFBFBD>'
VDqU;a<><61>`#>A<1C>xb`9<><39><EFBFBD>I<EFBFBD><49>`<60> d<><64><EFBFBD> <0B>H
F<EFBFBD>u<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>#<23><10><>;<3B>,<2C><><EFBFBD><EFBFBD><EFBFBD> L<>/b<><62>?<3F><><EFBFBD>q<EFBFBD><71><EFBFBD><12>c<07><06><1D><06>*<2A>3;SaE<61>]<5D><>
H<EFBFBD>
<EFBFBD><12><><EFBFBD>/#<23><>8<1C>Z<EFBFBD>U7<55><37>5<>׎G-<2D>Ep<45>+<2B> <0B>)V<>vWۦZ<DBA6>
<EFBFBD><EFBFBD><EFBFBD>
N<EFBFBD>B<><42>*<2A><>ND<4E> ec\$<24><>p<1C> <09><>P<EFBFBD>)<29>1<EFBFBD>]<5D><03>*<2A>9Yy<59>V<EFBFBD>W6lU<6C><55><EFBFBD>x<><75>f<EFBFBD>W<EFBFBD>\<5C><><EFBFBD><EFBFBD><EFBFBD>N*<2A><>N8<4E>b<EFBFBD>lqT<>\1<>q<EFBFBD><71>qTLr<4C>7 <13><><EFBFBD><EFBFBD>R{<7B>i
02<EFBFBD>l<EFBFBD>lU<EFBFBD>rs<EFBFBD><EFBFBD>I$<24><><EFBFBD>vbPG@<40><>9<EFBFBD>UY<55>"<22><><EFBFBD>z3<7A><33>O/<2F>}G<>f<EFBFBD>4<03> <20>ܿ <11>I<1D><01>-9<>՞V~<01><><EFBFBD>V<EFBFBD><56>7<EFBFBD>n <11>4cɺ($<24><>J<EFBFBD><4A>|<7C>(<28><>Kx<07> ]<5D><><EFBFBD><EFBFBD><1C>Gykap<61>0<EFBFBD>%<25><>4<6F><DD8F><18>ol<6F>ZhQ<68><51>*<2A> 9<><39>g$<24><>_+<2B>:l<>&k1<6B>8<EFBFBD>.D\c<>]<5D>iU<69><55>M<EFBFBD><4D><EFBFBD>Y[<5B><><EFBFBD>O<10><><EFBFBD><EFBFBD><12>*<2A><>
~#<23>#<23>y<EFBFBD><79>~<02>(<28>[~ <0B><><EFBFBD><EFBFBD>a<><61>Kg<4B><67><EFBFBD>VU<56>N<EFBFBD><4E> <20>|<7C> <0C><04>W<1E><0E>Lg<4C>W<EFBFBD><57>'<18>FO<46><4F><EFBFBD><EFBFBD>/0Y<30>~<7E>-<2D>T<<3C><><EFBFBD>iP:<1A>
<EFBFBD><EFBFBD>޳}<7D>KI= p y<08>?<3F>8<><38>[8 6`! <20><>SV<53>o<10><><1A><>0<04><>L<EFBFBD>rGH<47>ґ<EFBFBD><D291>N<14><><13>n<EFBFBD><6E>¿S<7F><53><EFBFBD><42>h<EFBFBD>a<EFBFBD>Sw?><3E><>o7<6F><37>ly<6C>rI,Gv<47>9q<39>Pl3<6C><33><EFBFBD><EFBFBD>K0I<30>rkҧ ˜<><C298><EFBFBD>/1<>ݙ<EFBFBD>)<29><>k<EFBFBD><6B><EFBFBD>0<EFBFBD><30>S<05>+ <09>E<EFBFBD><45><EFBFBD><EFBFBD>W<EFBFBD><57>HM<48>ٹ$<24><><EFBFBD>xS<78>0<EFBFBD>B<EFBFBD><42><EFBFBD>ՒL<D592>A <09><>9<1A>Q<><51>Y<EFBFBD>i3<69>Bj<42><6A><EFBFBD>o<EFBFBD>#껫<03>ל<EFBFBD><D79C><EFBFBD><1A><><1D><><EFBFBD><EFBFBD>wy=IT<><54>#r}<7D><><EFBFBD>ϥ<EFBFBD>1<EFBFBD>$<24><>z<EFBFBD><7A><EFBFBD><EFBFBD><EFBFBD><EFBFBD>q<18><>CFGq<><71>
<EFBFBD><EFBFBD>B<EFBFBD>`<60><>:<3A><><1F><><EFBFBD><EFBFBD>'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><14><1F> m+<2B><1D><04><>5<EFBFBD>Ef)2<1E><>_<EFBFBD><5F>j<EFBFBD>6<EFBFBD>F#<23><EFBFBD><E2A882>:<0F>F<EFBFBD><46><EFBFBD><0F><><EFBFBD><EFBFBD><15><>jF[ V.@<40>p<EFBFBD>v<EFBFBD>Q.X<><58>ǟ<EFBFBD><C79F>w<EFBFBD>{<7B>)55댔<35><EB8C94><EFBFBD>i"U<><55>ͽoc\
#<23><05><>
<EFBFBD><EFBFBD><EFBFBD>30G<30><47>wN<11>Jɳv}<7D>+<2B><><EFBFBD>M<EFBFBD> #/}<7D>0e<30>ѻ<EFBFBD>KLj=0<04><1F>d<EFBFBD>Q<EFBFBD><51><EFBFBD><EFBFBD>g
R4<EFBFBD>B
<EFBFBD>( <20>2<EFBFBD><72><DFAB>Î8ǂ<38><C782> <11><>>+<2B>`;<3B>/<2F><11>6S<36><11>`<60><><EFBFBD><04>a<EFBFBD><12>$%Dr!Nc<><63>b<EFBFBD>B<EFBFBD><42> <20>3W<1A>=\<5C><>M<EFBFBD><4D>B^<5E>IfU<66><55><EFBFBD><EFBFBD>}<7D>>;<3B>/b"6<>۸ř#<23>
<EFBFBD> <0C><>aL<61>{<7B>?<3F>lIJ<49>;<3B><><EFBFBD><EFBFBD>"ߌc<DF8C>xO<78>c<EFBFBD><63>}<7D><>6K<36>е[<5B><>د$<24><><EFBFBD>~<7E>8p<38><70>bj{<7B>6<EFBFBD><14>خ<EFBFBD>'<1E><><EFBFBD><EFBFBD>8<>og<6F>S%<25><>A<>0 <20><>"<22>j<EFBFBD><0F><><EFBFBD>$`<16><><1C><>ò3R<33>.<04>6=p<>O<EFBFBD>P<EFBFBD><50>)<29>U<EFBFBD>۩<1B> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>d%{;^<5E><>q<EFBFBD>i<EFBFBD><69>q_<><04><>N<07><><EFBFBD><EFBFBD>,k\Bg<42><67>&<26><>$>8<><38>jR<6A><08>La<4C><14>d<EFBFBD><64><EFBFBD>=;<3B>F<EFBFBD><46>ac<61><63><EFBFBD>rO\M<><4D>9f<39>*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<5D><><EFBFBD>vlٱV<D9B1>8 h<>R<EFBFBD><52>\sb<73>͊<EFBFBD><CD8A><EFBFBD>Q]<5D>͔t<>T<EFBFBD><54> \q<1B><1C><><EFBFBD>s<18><><EFBFBD><EFBFBD>f<>*<2A>™Ylw<6C><77>W<01><><EFBFBD><EFBFBD>1j<31><6A>c<EFBFBD>X<EFBFBD>u8<75><38>Ɓ<EFBFBD><C681><EFBFBD>ʒ>pB<><42>e<EFBFBD>,r<>3<EFBFBD>E<EFBFBD>~T<>YV<59><56>IMi<4D><69> <0C>6<EFBFBD>J<EFBFBD>of<6F><0E> A<>a<EFBFBD>tQ<74>|rIk|!F<19>w<EFBFBD>e+<2B><><EFBFBD>J<EFBFBD> <20><><EFBFBD><EFBFBD>'<17><><EFBFBD><0E><><EFBFBD>h<EFBFBD>.<2E><>!1<> m<>(<28>j<EFBFBD>-<2D>dx<64>Z%P<><50>i<>`[<5B>2^<5E>J,<2C><01>S<EFBFBD><01><><EFBFBD>N<EFBFBD><4E>k<EFBFBD><6B><0F><>K4<4B>;<3B><>v<EFBFBD><76><06><>Y;<3B><>Y<>H <20>C[<5B>FL<46>y<04>YD<><44>,<2C>J<EFBFBD>e<EFBFBD><65>o/<1B>U<EFBFBD><46><DD9E>$:<3A><>.<2E><p h<><68><EFBFBD>:<3A><><DFA4><EFBFBD>k+*vPi<50>m5<6D>b<EFBFBD><62><EFBFBD><11><><EFBFBD>}<7D>u<EFBFBD> /i|<7C><>`<60><><EFBFBD>9b1<62>|H<>)<29>6B<06><>[<1B>4[<5B>چ<EFBFBD><DA86>&vZ<76><5A><EFBFBD>`<60><>ߴ<EFBFBD><DFB4>Ӑ*Ԛ<1E><><EFBFBD>t9΅^MZ}^\#<23>O8<4F><38>O<EFBFBD>[ eya<>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>f<EFBFBD>ys<1D><>zs<7A>
P<02>o<EFBFBD><03>8<EFBFBD>K<EFBFBD><4B>bV<62><06>3<EFBFBD>D<06><>g<EFBFBD><67><EFBFBD>[<5B><>sd<73><64><EFBFBD><EFBFBD>X翚<E7BF9A>jkc<1B><><EFBFBD>&<26>1MGZ<47><5A><EFBFBD><EFBFBD>$F<><46><EFBFBD>F<EFBFBD><46>#W7<57>ۡf5<66>a<EFBFBD>-G]<5D><>B<EFBFBD><42><11><><EFBFBD><EFBFBD>x<EFBFBD><78><56><CCB4>Y<EFBFBD><59>D<EFBFBD><44>v:^<5E><>Ϧ_<CFA6><5F><EFBFBD>h<EFBFBD>
7<1E>[<5B><>2 <20>"<22><>S<EFBFBD>qm3G<33><47><EFBFBD>9<EFBFBD><39>ԖAȫ<1D>=69<>M)<29>
<EFBFBD><EFBFBD><EFBFBD>#<23><>2<EFBFBD>"
<EFBFBD><EFBFBD><EFBFBD>3h <18><><EFBFBD><EFBFBD>I<>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD>zs<7A><73><EFBFBD><EFBFBD>08<30><38>V,*.S<>48O,i<>R<EFBFBD><52><EFBFBD><06><>]?<3F><><EFBFBD><EFBFBD>p<0F>`G<><47>&:NC<4E><43>]<5D>3<EFBFBD><33><EFBFBD><EFBFBD> X_ܛ\y<>N<EFBFBD><1F><><EFBFBD><EFBFBD>F]H<>2<EFBFBD>{`V><3E><>~<7E><>M<EFBFBD><4D>q<EFBFBD>#x<><78>!U<><55>k<EFBFBD>2c<32>i?<3F><>!<21>4<EFBFBD>OP<4F><50><EFBFBD>2<><32><EFBFBD><1F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>bœ<><C593>/<2F>{<1E><>+kh<6B><68>
<EFBFBD>I<EFBFBD>8<EFBFBD>;<3B><>ƒ <20><><EFBFBD>0@ {<7B>9<EFBFBD>I&<26>o6j~e<><65><EFBFBD>6<EFBFBD>%<25>lX<6C><58><EFBFBD><EFBFBD>Ү<>/-<2D><><13><>i<EFBFBD>F<05>"zL<7A><4C>3N<1<>+<2B>~i57<35><37>0<EFBFBD>*<2A><><EFBFBD>za<7A>:J<><4A><EFBFBD>V<EFBFBD>p&<26><><EFBFBD><EFBFBD>$<03>U<EFBFBD><0F><0F>F<EFBFBD><46>N<EFBFBD>O<EFBFBD>6<EFBFBD><02><1B>)<29>}<7D>T$6<><><11><1D>c<1E><><EFBFBD><EFBFBD><EFBFBD>dv<64>~G{v;<3B> <20>pZ<70>H<EFBFBD><48><EFBFBD>S<EFBFBD>b$Wn<>:d<<3C><>zM<7A><4D><1A>
8<EFBFBD><EFBFBD><EFBFBD>G<EFBFBD><EFBFBD><11>I=H<><48><EFBFBD>!<21><> <10>l<EFBFBD>*<2A><> }k<1C>A<EFBFBD><41><EFBFBD>y<EFBFBD>\|iC<69><43>mx<6D><78>S<EFBFBD>B@<40>:V9ى<39>R<><52>E<><45><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Vj<><6A><EFBFBD><EFBFBD>7<EFBFBD>E'<27><> <09><>P<EFBFBD>
<EFBFBD><U<><55><EFBFBD>&<26>x<EFBFBD>G<EFBFBD><47><EFBFBD>m~<7E>E
i<EFBFBD><02>"^@@<40>i<EFBFBD><69><4B><DEA4><EFBFBD>u<EFBFBD>Q<EFBFBD><51><EFBFBD><EFBFBD> $n\<R<> G!<21>8<EFBFBD><07><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%}<7D>I<EFBFBD>؂<EFBFBD>Y<EFBFBD><EFBFBD>"<22><>e<EFBFBD><65>z<EFBFBD>.<2E>9<EFBFBD> <09>|<7C><>*LĜms<13>\.C<><43>͛vlٱWf͗LU<4C><55>t<EFBFBD>LU<4C><55>Lx.<2E><><EFBFBD>c<EFBFBD><63>1 b<><62><EFBFBD><>><18>&<26><><EFBFBD>N<EFBFBD><4E><EFBFBD>-z<><7A>S2WR*q27<32>-@1o<><6F>2q<>i<EFBFBD>)<29>+<2B><><11><>'<1B><EFBFBD>i<EFBFBD>X׹Γ<D7B9><CE93><EFBFBD><EFBFBD>ګR<DAAB>G\<5C>yv<79>4<EFBFBD><34><EFBFBD><EFBFBD>r\<5C>aUcNBN<42><4E>{g<<3C>Li<4C><69>L~<7E>z=%M6<03>=<3D>ej<p<>o<EFBFBD><6F><04> <20><><EFBFBD>W<EFBFBD><57><EFBFBD>H<EFBFBD><48>O<EFBFBD>e`<18>C<EFBFBD><43><EFBFBD>BQ<42>}H<><48><18><><EFBFBD>OrO<72><12>c<> c<><1C><><EFBFBD><EFBFBD><EFBFBD>稜Fi؊<69><D88A><EFBFBD><EFBFBD>l<EFBFBD><6C><EFBFBD>\|j<><6A><1E>ڹ!<21>
<EFBFBD><EFBFBD><EFBFBD>fCN\ד<>X<EFBFBD><58>|<7C><>2
F<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><1D>:<13>v6<>X<EFBFBD><58><EFBFBD>G<EFBFBD><47>_k <0C><><EFBFBD><EFBFBD>`:d}<7D><><EFBFBD>´<EFBFBD><C2B4>I<EFBFBD>CJx<4A><11>r<EFBFBD>#<1E><>'<27>g<11><08><><1D>w2<77><32>1<EFBFBD>W? <0B><>|<7C><><EFBFBD><EFBFBD>j<EFBFBD>'I<0F><><14>6<EFBFBD>2<13>8DCv h<><11><>G]j<>R<EFBFBD><19>+<2B>Ė<EFBFBD>i<1F>/<2F>}<7D><>L<EFBFBD> f<><66>6f
+<2B><><EFBFBD>!@<40>.<2E><><EFBFBD>g<EFBFBD><67><EFBFBD>hsXG<1C>($<24> <20>s<EFBFBD>0<13><><EFBFBD>T;<3B><>g.x<> R<18>
<EFBFBD>ٞC}<02>(: S<><53><EFBFBD>L<7F>¹
[<5B>QI<12><>[<5B><>K<1A>'<27><><EFBFBD><02><EFBFBD><7F>D<EFBFBD>eB"<22><>^(<28><><1A><>F<><46><08><>S<EFBFBD>k<EFBFBD><6B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>^<5E>Ɵۃ<C69F>uq<0E> 3<>;<3B><>{l:<3A>.<2E><><EFBFBD>Q<EFBFBD>)<29><>
<EFBFBD>@<40><>D<EFBFBD><44>3<EFBFBD>KA<4B>p<EFBFBD><70><EFBFBD><56>3<>?m7<6D><37><EFBFBD><EFBFBD>" <20>E<>=6 <0C><>j<>N1@<40><>+<2B>T<EFBFBD>K<EFBFBD>h<EFBFBD><68><EFBFBD>Ϋ<EFBFBD><CEAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'bé<62>[<5B>f<EFBFBD>t<EFBFBD><74>|4<>ͬD<CDAC><44><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><08>;<3B><><EFBFBD><EFBFBD><EFBFBD>q<EFBFBD>F<EFBFBD><46>c<EFBFBD><63>r'<27>#K<><4B>%n<><6E>b<1F><>nf1-QP(<18><>m<EFBFBD><6D> θ<>l<EFBFBD>6<EFBFBD>〓v\ٳd<D9B3>ɜ<13>@&9u<39>9c<39>{v<><76>!<21>Fo<46>Z<EFBFBD><EFBFBD>.<2E> N_i}<7D>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>=Z4q<34><71>9 El7s<37><73><07><>< rLQ<4C>u<EFBFBD>3<EFBFBD>ҡv<D2A1><1A>4<EFBFBD><34><EFBFBD><EFBFBD>U<>͇"<22>&;<1D><>]5(TR<54><52>;b,r
'<27>O.<p<>y<EFBFBD>Z<5A>e<EFBFBD>{<7B><1F><><EFBFBD><02> <1D> u<10> <20> ]s<><><D789><EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD>es<65>Q<>#<23><><EFBFBD><EFBFBD>HT <20>df<64><06><><EFBFBD><1A>c<EFBFBD><63><EFBFBD><EFBFBD>Ɖ_<C689>*\H<><48><EFBFBD>{<7B><><EFBFBD><EFBFBD><EFBFBD>c<EFBFBD>S<><53><EFBFBD>j<><6A><EFBFBD>(<18><>S<EFBFBD>c<>l<EFBFBD><6C><EFBFBD>ja<6A><61><EFBFBD><03><19>t<EFBFBD><74><EFBFBD><><0E><04><><EFBFBD>"<22><><EFBFBD>ZLŸ <09><1C><>fPH<15><><<3C>h&<26>,<2C><><16>Glc*.6<EFBFBD>U<EFBFBD>jDyFf<EFBFBD>:_B<5F><42>V8<56>2<>ףk6l<36>U<EFBFBD>ٳb<D9B3>ǁ<EFBFBD><18>)8<>@e<15>,<10><>+<2B><>t<><
<0C>b<EFBFBD>V<EFBFBD><18>\Q<>$<24>b<EFBFBD>W6VlUT!<21>*<12>{ <0C><EFBFBD>|<7C><>3Ӧ$X<>E
<EFBFBD>
<EFBFBD>:<3A><><EFBFBD>8lUqL<71><11>,<2C>b<EFBFBD><62><EFBFBD>ت<EFBFBD><D8AA><EFBFBD>L<EFBFBD>ڽ<EFBFBD>XZ z H<1E><><EFBFBD><EFBFBD>{ŵ<>j6-<2D><><EFBFBD><EFBFBD>A<07>sD<73><07><> J<><4A><EFBFBD>Xt<58>^`ǎvy<76>E<EFBFBD><45><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD><16>JJ<><4A><EFBFBD><7F><EFBFBD>db[<5B>"<22><02>Ӟ<EFBFBD><D39E><EFBFBD>t<EFBFBD>R<EFBFBD>9<EFBFBD><39><EFBFBD>]<5D>i<EFBFBD>V<EFBFBD><56><EFBFBD>,rSgO<67>2%=<3D><><EFBFBD><EFBFBD><0F>þ'<27><>W<EFBFBD><57><EFBFBD><EFBFBD>3<EFBFBD><33><EFBFBD>cZ<63><5A>H<EFBFBD><48><EFBFBD><EFBFBD>i3b)<29>?<3F>z{<7B> py
<EFBFBD>ڌ<><DA8C><EFBFBD>c<EFBFBD><0E>Vk<56>-d<>ɞ<EFBFBD><1C><>6<EFBFBD><36>,<2C>8<EFBFBD>5<EFBFBD><35><EFBFBD>
2<EFBFBD><EFBFBD>8<EFBFBD><08><08><>3L@<40>qkr<19><>C<EFBFBD><43> <09><><EFBFBD><EFBFBD> 5<>}8<><38><EFBFBD><EFBFBD><EFBFBD>3<EFBFBD>[<5B><><EFBFBD><EFBFBD>` .<2E><>'<18><><EFBFBD>-<2D><>/0<02>*<2A>^<0E>:<3A><0E>.+\kf'<10>#<23>8<EFBFBD>↬i<E286AC>v<EFBFBD><76>P(v<>ɑ<EFBFBD><C991>Y|.Mf7<66>k<05> 3@p<><><D5BA><<17>B<EFBFBD><42>&<26><><EFBFBD><EFBFBD>r<16>r<EFBFBD>d<EFBFBD><fKy<4B>i<EFBFBD><69>b<EFBFBD>$?<3F><>}<7D>"z<><7A>Մ<EFBFBD><D584><13>}<7D>+B0<42>
{<7B><>4şY<C59F><59>dF<64><46>!<21>1<EFBFBD>1a<><61>j<EFBFBD><6A><EFBFBD><EFBFBD><EFBFBD><EFBFBD>#<23>>b<><62><EFBFBD>8<EFBFBD>1uz;
<EFBFBD>m<EFBFBD>{<7B>1<EFBFBD><31>-#j7<6A><37><EFBFBD>aί!%A<><17><>-~<7E><$<24>A<EFBFBD><41>3<EFBFBD>9fw<<3C>@;<3B><>-<2D>|Q<><51><EFBFBD><EFBFBD>?<3F><>)于B<E4BA8E>rV<72>
NEjփ<EFBFBD>ݭ<><DDAD><04>qYPu?<3F><><06><>+s<><73>L1<4C><31>(<28><><EFBFBD><EFBFBD>c<EFBFBD><73>ޑP<DE91><50>5<><35>TE@G<><47><EFBFBD><EFBFBD>\<1B><>9|s<><73><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31>Q5ġ+@N<><4E><EFBFBD><EFBFBD> <09>*<2A><>n<17><><EFBFBD><EFBFBD><EFBFBD>ck<63>%<25>~<7E><19><>2M<><4D>@F<><46>w=q/Qс޸Y$<24><>N&<18><>:[<5B>H<EFBFBD>#<23><> <0C><><EFBFBD><EFBFBD>8<EFBFBD>؂1<D882> <20><><EFBFBD><EFBFBD>.<2E><><EFBFBD> <20><>L<EFBFBD>u<07><>N<EFBFBD>v$[<5B>w^<5E><><EFBFBD>ApHv8wb<77> <20><1F> ]><3E><20>@<40>{<7B><>s:<3A><><EFBFBD>8y<38> ?B<><42> n<12>-ý<><C3BD>qC <20><02><><EFBFBD>9<EFBFBD><16>S52<35><32>T'iWD<><44>,d`<60><>b<><62>Pb.<2E>`<60>$
<EFBFBD>4<EFBFBD>\UI<55><49><EFBFBD>1leqU<71><55>g/(<28><>S6_lت <20><><18><>|Uc<55>es<1C><><EFBFBD><16><>@c<><11><><EFBFBD>aM<61>Tt<54><15><>m<EFBFBD>,<2C><0E><>:W
6;<3B>)1<>)<29><>ZRNh<4E><68>(<28>Ō<EFBFBD>s'<27><><10><><18>'<27>Kv<4B><76><EFBFBD>n1<6E>
E<0F><>P<EFBFBD>C<EFBFBD><43><EFBFBD>b<EFBFBD>'<27><>o<EFBFBD>R<EFBFBD><52>qX<><58><EFBFBD><EFBFBD><EFBFBD>k<>l<EFBFBD><6C>
/!<21>&<26><><EFBFBD>><3E><><EFBFBD><EFBFBD>
Sn<><6E><EFBFBD>f<EFBFBD><66>ZQ<5A><51>t<EFBFBD><74>p:Y<>Hi>¸<><C2B8>}C<>/A<><41>8vY <20><><07>.K<>s<EFBFBD><73><EFBFBD><EFBFBD> IП<>J<EFBFBD><4A><EFBFBD><EFBFBD><EFBFBD>}<7D><>rL`45<34>g`5́du<>0?P*2-<04><>[ާ<>lL}<7D>x<EFBFBD><78>7F"<22><>\-<2D><><EFBFBD>U<1A>1<EFBFBD><31>~<7E>><3E>T<EFBFBD>pq<70>k<EFBFBD>4;<3B><>0_B<5F><42><EFBFBD>3<EFBFBD> <20>52<35><32><EFBFBD><EFBFBD><EFBFBD>cG<1A><><05><><07>C<EFBFBD><43>ޣl e(D<><44><1D><>d<EFBFBD><64><EFBFBD><1D><> OL{<7B>Tヲ<54> S ` <01><02><>W4POцV<D186><56>m4<6D>`|(7<><37> <20><1F>1<EFBFBD>F<14><><EFBFBD>k<EFBFBD><1C>6":_#Չ<><D589>Ě <0C><>)6`Ol[c<11>H<EFBFBD><14>(fڻ<66>+<2B>2

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 228 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 687 B