PERFORCE change 215017 for review

Brooks Davis brooks at FreeBSD.org
Fri Jul 27 20:12:34 UTC 2012


http://p4web.freebsd.org/@@215017?ac=10

Change 215017 by brooks at brooks_ecr_current on 2012/07/27 20:12:24

	Alter browser to be pinch-to-exit.  In the process add
	additional debouncing of inputs since otherwise closing text or
	png files being read resulted in closing the application.

Affected files ...

.. //depot/projects/ctsrd/beribsd/src/ctsrd-lib/libde4tc/de4tc.c#12 edit
.. //depot/projects/ctsrd/beribsd/src/ctsrd-lib/libde4tc/de4tc.h#10 edit
.. //depot/projects/ctsrd/beribsd/src/ctsrd/browser/browser.c#16 edit
.. //depot/projects/ctsrd/beribsd/src/ctsrd/browser/images/browser.png#4 edit
.. //depot/projects/ctsrd/beribsd/src/ctsrd/pictview/img/browser-thumb.png#2 edit

Differences ...

==== //depot/projects/ctsrd/beribsd/src/ctsrd-lib/libde4tc/de4tc.c#12 (text+ko) ====

@@ -1,5 +1,6 @@
 /*-
  * Copyright (c) 2012 Simon W. Moore
+ * Copyright (c) 2012 SRI International
  * All rights reserved.
  *
  * This software was developed by SRI International and the University of
@@ -56,6 +57,7 @@
 volatile u_int32_t *pfbp;
 static volatile u_int16_t *tfbp;
 volatile u_int32_t *mtlctrl;
+static struct tsstate *sp = NULL;
 
 // fade timing (for crude timing loop)
 static const int fb_cross_fade_time = 500;
@@ -153,7 +155,6 @@
 ts_poll(void)
 {
         struct timespec stime = {0, 1000000};
-        static struct tsstate *sp = NULL;
         int init = 0, first_pass = 1;
         int check_release = 0;
         struct tsstate tmp_s, rel_s;
@@ -217,6 +218,27 @@
 }
 
 
+void
+ts_drain(void)
+{
+        struct timespec stime = {0, 1000000};
+	int noprevtouch = 0;
+
+	if (sp == NULL || sp->ts_count == 0)
+		noprevtouch = 1;
+
+	for (;;) {
+                nanosleep(&stime, NULL);
+		if ((int32_t)le32toh(mtlctrl[7]) < 0) {
+			if (noprevtouch)
+				return;
+			else
+				noprevtouch++;
+		}
+	}
+}
+
+
 /*****************************************************************************
  * frame buffer routines
  * TODO: put in seperate library
@@ -612,6 +634,7 @@
 	char *textdup;
 	u_int32_t *textbuf, *titlebuf;
 	struct tsstate *ts;
+        struct timespec stime;
 
 	titlewidth = strlen(title) * fb_get_font_width() * 2;
 	if (titlewidth + FBD_BORDER_WIDTH * 2 > fb_width)
@@ -708,13 +731,19 @@
 	free(textbuf);
 	free(lines);
 
+	/* Ignore all input for a quarter second to let the display settle. */
+	stime.tv_sec = 0;
+	stime.tv_nsec =  250 * 1000 * 1000;
+	nanosleep(&stime, NULL);
+	ts_drain();
+
 	switch (type) {
 	case FBDT_PINCH2CLOSE:
 		for (;;) {
 			ts = ts_poll();
 			if (ts->ts_gesture == TSG2_ZOOM_OUT) {
-				while (ts_poll()->ts_count != 0)
-					/* do nothing */;
+				if (ts_poll()->ts_count != 0)
+					ts_drain();
 				return(FBDA_OK);
 			}
 		}
@@ -723,18 +752,18 @@
 			ts = ts_poll();
 			switch (ts->ts_gesture) {
 			case TSG2_ZOOM_OUT:
-				while (ts_poll()->ts_count != 0)
-					/* do nothing */;
+				if (ts_poll()->ts_count != 0)
+					ts_drain();
 				return(FBDA_OK);
 			case TSG_NORTH:
 			case TSG2_NORTH:
-				while (ts_poll()->ts_count != 0)
-					/* do nothing */;
+				if (ts_poll()->ts_count != 0)
+					ts_drain();
 				return(FBDA_DOWN);
 			case TSG_SOUTH:
 			case TSG2_SOUTH:
-				while (ts_poll()->ts_count != 0)
-					/* do nothing */;
+				if (ts_poll()->ts_count != 0)
+					ts_drain();
 				return(FBDA_UP);
 			}
 		}

==== //depot/projects/ctsrd/beribsd/src/ctsrd-lib/libde4tc/de4tc.h#10 (text+ko) ====

@@ -102,6 +102,7 @@
 void multitouch_filter(void);
 void multitouch_release_event(void);
 struct tsstate* ts_poll(void);
+void ts_drain(void);
 void fb_init(void);
 void fb_fini(void);
 u_int32_t fb_colour(int r, int g, int b);

==== //depot/projects/ctsrd/beribsd/src/ctsrd/browser/browser.c#16 (text+ko) ====

@@ -562,12 +562,19 @@
 static int
 get_action(void)
 {
+	struct timespec stime;
 	struct tsstate *ts;
 	int col, i, row;
 
 	if (verbose)
 		printf("entering get_action\n");
 
+	/* Ignore all input for a quarter second to let the display settle. */
+	stime.tv_sec = 0;
+	stime.tv_nsec =  250 * 1000 * 1000;
+	nanosleep(&stime, NULL);
+	ts_drain();
+
 	for (;;) {
 		ts = ts_poll();
 		if (verbose)
@@ -599,11 +606,19 @@
 					return (ACT_REFRESH);
 				}
 			}
-		}
-		if (ts->ts_gesture == TSG_EAST)
+		} else if(ts->ts_gesture == TSG2_ZOOM_OUT) {
+			if (ts->ts_count != 0)
+				ts_drain();
+			return (ACT_QUIT);
+		} else if (ts->ts_gesture == TSG_EAST) {
+			if (ts->ts_count != 0)
+				ts_drain();
 			return (ACT_PREV);
-		if (ts->ts_gesture == TSG_WEST)
+		} else if (ts->ts_gesture == TSG_WEST) {
+			if (ts->ts_count != 0)
+				ts_drain();
 			return (ACT_NEXT);
+		}
 	}
 	/* NOTREACHED */
 	return (ACT_QUIT);
@@ -614,6 +629,7 @@
 {
 	int fd, ret = 0;
 	u_int32_t *image, *previmage;
+	struct tsstate *ts;
 
 	image = malloc(sizeof(u_int32_t) * fb_width * fb_height);
 	previmage = malloc(sizeof(u_int32_t) * fb_width * fb_height);
@@ -632,9 +648,14 @@
 	}
 	/* read_png_fd() closes the descriptor */
 	fb_post(image);
-	for (;;)
-		if(ts_poll()->ts_gesture == TSG2_ZOOM_OUT)
+	for (;;) {
+		ts = ts_poll();
+		if(ts->ts_gesture == TSG2_ZOOM_OUT) {
+			if (ts->ts_count != 0)
+				ts_drain();
 			break;
+		}
+	}
 end:
 	fb_post(previmage);
 	free(previmage);
@@ -654,11 +675,8 @@
 	const size_t maxbuflen = 32 * 1024 - 1;
 	u_int32_t *image;
 
-	printf("entering show_text_file\n");
-
 	if ((fd = openat(dfd, name, O_RDONLY)) < 0)
 		return (-1);
-	printf("fd = %d\n", fd);
 
 	fbuf = malloc(maxbuflen + 1);
 	if (fbuf == NULL)
@@ -682,7 +700,6 @@
 	else
 		fbuf[fbuflen] = '\0';
 
-	printf("fbuf = '%s'\n", fbuf);
 	nlines = 0;
 	while (nlines <= 1024 &&
 	    (lines[nlines] = strsep(&fbuf, "\n")) != NULL) {
@@ -907,6 +924,7 @@
 	}
 
 	fb_init();
+	ts_drain();
 	busy_indicator();
 	fb_fade2on();
 	fb_load_syscons_font(NULL, "/usr/share/syscons/fonts/iso-8x16.fnt");
@@ -939,5 +957,7 @@
         while (dfd != -1)
                 dfd = browsedir(dfd);
 
+	ts_drain();
+	fb_fini();
 	return (0);
 }

==== //depot/projects/ctsrd/beribsd/src/ctsrd/browser/images/browser.png#4 (text+ko) ====

@@ -1,10 +1,10 @@
 ‰PNG
 
--ËB–>–4ÿJé ‡vXì»ï¾qÞyçÅÂ…[l;kÖ¬<xpÌž=;vÝu×hß¾}ÍvÛn»m|ÿûߏ#FÄÃ?C‡¾}û¶8ßîݻǹçž·ß~{<üðÃq饗ơ‡Zóá¾=öØ#†G}tDDüñqÏ=÷Ä/~ñ‹ˆˆØk¯½â‚.ˆc=v™÷ÁâƏ›m¶Y“á\pA:4:uê]ºt‰ë¯¿>ž|òÉèÝ»w“v‡zh\ýõñïÿ;ÆŒ7ß|sœxâ‰Í¶å¤“NŠ¡C‡Æ Aƒš­Ã	'œC‡³Ï>»Ù¸í·ß>†ßûÞ÷ªÃêëëã„Nˆ;î¸#ž}öÙxôÑGãºë®‹C=´Åí¬««‹ãŽ;.~ùË_Æ#<7ÞxcœvÚi±å–[Öl¿¬Û°¦«ÜŽµ¤Þ±V䶫ŭö¦”Rkb
:433ÇŒ³Bó©\ùÖ·¾Uý{q³gÏÎþýû7›î裏Ι3gÖ|(ü¦›nʶmÛ6iòÉ'gfæ¯~õ«¼è¢‹ªmGŒ‘K}IW@Ö^{íœ8qbff~ï{ßk2î7ÞÈÌÌ=öØ£z(3s÷ÝwψÈ6mÚäÏþóêðÆÆÆ\°`Aõ¿zè¡&·¶wÞy™™ùØc5[W_}533çΝ›íÚµk2nȐ!™™ùË_þ²ºÎ=ôPu9~øa“}8tèЬ««k2
6Ø ïºë®šû|Ú´i¹ÿþû7[§¥m¿RJ­i•¹ä+ýû÷Ï©S§6»Â±´+Ë:ÿXÝ;@)¥ÖÔºóÎ;kž°/oUBGcccŽ92˜m´Q~îsŸËÇ{,33_ýõ&'Ãp at ffΟ??‡’[o½u~æ3ŸÉ/ùËÕ“ð{ï½·Ér*dܸq¹páÂ|ä‘GòüóÏÏÃ;,#Z@:wîœýúõË»ï¾;33ÇŽÛìÄ¿r>vìØ|ï½÷rØ°aùÝï~7?ó™ÏdÄGÁ`æÌ™9hРìرc¶oß>8à€|ùå—3ó£Ù§OŸÌÌœ7o^®»îºÕáݺuk>ÿùÏ7Y‡~833¿ð…/dÄGAæ¹çžË½÷Þ;×^{í\wÝusРA9eÊ”ÌÌ<òÈ#›Ì£rËÝèÑ£sàÀÙ©S§Üu×]óŠ+®¨®ÓÀ—kû•RjM«eÍÂƲ†eœÿêß	J)µ&Ö˜1c23óÊ+¯\¡ùTÈرc³M›6MÆõîÝ»zB½ÝvÛeDäZk­•Ï<óLffž~úé
 Íæ×µk×ê<wÞyçêðJ®O?ýt¼ñƱÅ[Äg?ûÙfdIÖZk­ÇUº«]< Íœ93{ì±èß¿ì¾ûîѵk׈ˆxà""â¾ûî‹c=6öÛo¿xúé§c—]v‰1cÆÄ„	šÌ{Ø°aqÝu×E¿~ýâÀŒý÷ß?úöíûì³Oì³Ï>±Í6ÛÄ…^ØäjÎÅ_¼ÄÀ1f̘eÞv€OšZ]í>ôÐCqä‘G®”"€--kyrÈ!Ñ¡C‡ˆø(œ-ÍóÏ?GydÍ« 


Õ1Ž9²É¸J 0`@0 Þ}÷Ýêü&L˜&LˆÝwß=?üð&í#"ºví3f̈W_}5šþÖ6eÊ”8ýôÓ#3c½õÖ‹õ×_?">Úï‡vXÍmÙe—]búôéñÚk¯E›6m–iû>I–å%ƒ‹‡´zY«ýI|¥”ZSkã7ÎÉ“'W»gíÛ·o³6_øª=]=þøãÍz®ªŒk©‹ÖÊþ:è ê°Êû(†žk­µV“öGydf.ê6w«­¶ª¯ô‚µø;5¯Ö¼¤¾¾>{ô葧vZΞ=;33yä‘&m*½@Õzñ^‡ª/ç«ÕKTå…‰&LhÖSUeßT^ xÓM75÷«_ýªIï]Ÿ¾ò¹}ü]‹º–ÌÌœ4iRuXåÝ+~øaî´ÓNMÚwêÔ©ú™,Þ[×Ò¶_)¥ÖĪÕKÕò¼çcií—¡—­Õ¿”RjM®#Ž8"çÌ™SíŽö­·ÞÊ#Fä]wÝU=ÉÍ\ôžŒ®]»6›¾5dçw®žð?þøã9dȐüÁ~·Ýv[uyï.vEH梮v?^‹»çž{r“M6i2ýÒNÀ?þøê|þú׿æàÁƒsðàÁÕ—Ν;·ú×õ×__]öÇ»1>î¸ãªãn»í¶fÓ~÷»ßÍÌE/s¼æškòä“OÎSN9%o¸á†œ5kVÍy><3½þÚk¯Í3Î8#/»ì²êËǍ—;v\®íWJ©5­>–7|,m:D)¥VBuíÚ5o¿ýö¬å½÷ÞËsÎ9§Ù•ŠJµ&€DDöìÙ3Ÿ|òÉfË{úé§óCi6Ÿ•@>nþüùùÂ/äŸÿüç<í´Ój¾—dYNÀ=ôÐ|÷Ýw›Íâĉ¹çž{¶8ÝGQm[yQc¥6Ùd“j°9餓šM[__ŸC†É>ø ÙrgÍš•?üákN3xðàœ7o^“ö|ðA^~ùå¹á†¶jû•RjMªÌBkÃÇ’¦_|
 þµªîÿÿÀ2Ø`ƒ
¢wïÞѳgϘ6mZ<óÌ31a„Uö x}}}ôìÙ3!
 úôé묳N¼òÊ+ñÐC5ëº÷“ mÛ¶±ãŽ;ÆÎ;ï³fÍŠÑ£GÇË/¿¼Ê²ßl³ÍbçwŽ­·Þ:23Ə£FŠ©S§¶8MçΝ£OŸ>±ÝvÛÅ”)SâñÇ_¡ŽßøÒ—¾?þø
-¯3- %÷Mk¾«¢ÆŒ“™™W^ye«ç±Ï>ûdfí_Òëëëó…^ÈÌÌo}ë[Õá•- J)õ©©å›`YÞ’¹èÖŽ#Ž8¢É´•-\ùõµ¢k×®Õ_w/¹ä’꯫1þüˆˆèÒ¥K“i.ºè¢ˆˆ0`@³Û~:uêW]uUtîÜ9î¾ûîêՏŸüä'qÜqÇ5[‡sÏ=7ÖYgxå•Wªè.iù+kWÄ.»ì?ûÙÏâg?ûYtêÔi…ç·"þüç?ÇÝwßmÚ´©>ó±øIqÉ}Óšïƪòï|'¦L™={öŒ'Ÿ|2úöí۬;ð…xðÁ£M›6ñÄOÄ•W^‹n/ª<P9A­h×®]üéOŠu×]w‰ËÿÙÏ~[n¹e“a§Ÿ~zì¶Ûn1mÚ´øÃþ¯½öZÌŸ??ºví_þò—›Ígûí·ºººxë­·Z|H9bù±ÊƒÊ;í´S|ö³Ÿ­¶­««‹?þñ±Þzë-qûÖd+òÙ¯
-k­µV¬·ÞzËTK{ö¦%•«›ë¬³ÎR¿›\ No newline at end of file
++È2¼¿?ø#ã9Ã&¼@ü|ªžª±ûíî·OŸÆþžÞ*""+÷Žüò—¿,ûRÉ{î¹'"VÜ´å–[®ÑúPÊ{@+ä駟Žˆ(ÊÊÊ:g?V¶lÙ²xî¹çŠÓn³Í61hР8õÔSãg?ûY\{íµ1kÖ¬˜={vlµÕV1cÆŒ¸ë®»Öhý×kkkcÔ¨Q%몪b·Ýv‹¶mÛFÛ¶mãàƒŽã?>FŽù•ûÀæi­KáÈÙgŸ]v|óæÍÓUW]UüÕëÂ/Ü 	j‹-¶(û‹\®ZÕò·Ùf›´×^{¥êêꍞ47t­|¤àÈ#¬·½3 _ԁXüÌž{î¹´ÓN;•´©ªªJwÜqGJ)¥ÚÚÚU~¶›R}ö±í×÷7ß|sÖ£pdîܹõ¶©¨¨H={öLÓ§OO)¥ôÊ+¯”´qD)¥¾µÞoBÿì³Ïâšk®‰¿ÿýïqä‘G®ïEl6fÎœ£GŽÉ“'oì®dõÔSOEDÄí·ßMš4ÙȽÙôýêW¿Šˆ×ÔvØaeï¡Z¶lY\vÙeññÇGeee0 w7×É×uXSÿÉÛþËRJñÏþ³ØÿýöÛ/š5k¶‘{ÀưΗ`­Î?þñ8âˆ#¢sçÎÅaûï¿œzê©ñÊ+¯Ä<gžyfœqÆñÎ;ïÄE]Tl׺uë¸øâ‹ãßøFtéÒ%¦L™o¼ñFüú׿ŽI“&Ûýð‡?Œ.]ºÿ{àÀ±`Á‚øùÏ^çfÇŠŠŠ8í´ÓâàƒŽnݺŔ)Sbøðáñ裏Ɣ)SÊö»í¶‹K.¹$zôè»í¶[L:5FŽ555ÅKV·ü<0Ž8âˆ7n\Üÿýu濦ëXpýõ×Ç[l—_~yl¹å–qöÙgÇþûï[n¹e¼úê«ñàƒ–½œ¡]»vѯ_¿ˆˆ¸÷Þ{cáÂ…å7ØztÑEÅ?þñèСC\yå•qÅW¬Õô¹>›ˆuûn¬OÇ{l|ðÁqå•W®òrÅùóçÇ€bРA±ï¾ûF³fÍbÁ‚ÅñmÛ¶óÏ??ºwï;ì°CÌœ93&L˜üã㥗^ª3¯–-[Æ%—\‹-Šo¼1öÙgŸ8î¸ãâÈ#Œ…Æ+¯¼¿þõ¯‹—®¬²²2Î<óÌøö·¿»í¶[ÌŸ??FûÛßâñǯÓvUûÀšìc+~Ä8ꨣâõ×_!C†”ô稣ŽŠ#<2FŽ>ø`qxá{qÝu×EãƍãÄO
 Œo}ë[1cÆŒxä‘GbØ°a±páÂØe—]⬳Ί^½zEeeeüãÿˆ»ï¾{ƒoÿõ¹í7'¯½öZD|qYÖo¼±‘{ÀÆ°V§LVw	V¡~ûÛߦ”R1bDqع瞛RJéî»ïN×\sMñҁaÆÛôìÙ3Mš4©8nñâÅÅ¿?ûì³tÞyçÛ>õÔS%—ý¤”ê\Æ°ÕV[¥G}´l»Ù³g§~ýú•ô½wïÞéÃ?,¶[¾|yñïO?ý4í¹çžk´üúnÀ]›u,Ô§Ÿ~šRZq™Å”)SJ–¹hÑ¢tÄG”LwꩧÛ´iÓfƒJ[ù¬-Z¤óÎ;/¥”Ò’%KŠŸ×ÊUß%X9?›uùn¬ïª©©I)¥4vìد4Ÿc=6-]º´ØÿÏ?ÿ¼ÎúÔÔÔÔi¿Ë.»×ó¬³ÎJµµµ%ŸÁĉS×®]ëL×°aÃôÂ/¬r9+?Œ¡¾}`M÷±ˆHL)¥tï½÷–]÷¥bõV+S‹-J'NLßúÖ·R›6mRïÞ½Ó¿ÿýï”RJÓ¦M+y×Æ
+ ÅÏ~øðá%ý*@r6kûÝØõÈ#”|GÖ¶š6mš>ûì³”RJ×]w]Új«­REEEêÒ¥KúÅ/~QÜ.ݺu+NS µµµiùòåéþûïO}úôI[o½uêß¿zã7RJ)3¦Îþtå•W¦”R=ztêÕ«WjØ°ajÚ´iêß¿š9sfJ)¥“N:©Ø¾Ü>°6ûXÄW ‹/NÏ<óL:øàƒSuuuºøâ‹‹kÉ’%i„	餓NJ;vLgžyfúøãSJ)ÝpÃ
›ü¶_9€œxâ‰i§vZe½õÖ[)¥@xà”RJO>ùdÉ8D)¥¾6µvÈ
7ܐúôéS§Î<óÌô‡?ü¡x“á‚Ò.»ìRœ¶@RJiРA%„7ÞxcJ)¥§Ÿ~:UVV–,û7¿ùMñ€±0lU7ŸrÊ))¥”&Ožœš7o^ïü~øáâ°ÂÁç¿ÿýïÔ¤I“:íwÛm·âKÇŽW»ür_벎_L7.5k֬θ½÷޻؇Ν;×ײeËÔ¥K—Ô¥K—:’뻾@""í±ÇÅ3çž{nöåHÎÏf]¾¢ÆŽ›RJéÖ[o]çytÐA)¥ò¿¤WVV¦·ß~;¥”Ò~ðƒâðB+÷ÜsÏ*÷µÝǾj¼AwUË__ëøUtëÖ-n¾ùæ¸ù曣U«V_y~_Å_þò—xì±Ç¢Q£FÅ{>V>(ÎùÙ¬ËwcCùя~3gÎŒN:Å«¯¾=zô(ióÍo~3žþùhÔ¨Q¼òÊ+që­·FÄŠË‹
+÷Pš4iþóŸ£iÓ¦«\þÍ7ß»ì²Ka^xaì·ß~1{öìøãÿ“'OŽ¥K—Fuuu|ûÛß.™Ï{ì1}úôzoRŽXû}¬p£ò>ûì{ï½w±mEEEüéOŠ-Z¬rý6e_eÛo
4ˆ-Z¬Q­îÞ›úÎnn±Å«ýnðŸk­›µ¦oB/W…Çð–{ôeÄŠGÚÞYðÑG¥[o½5þùé¶Ûn+¾Øðå—_.yügáÝ&LHC‡­óØÔÂc,Xî¸ãŽtÑE¥o¼±Îóè[¶lYlß°aÃôÏþ³Ø‡»îº+
8°ø(Ó¥K—–¼q¸¾å—{麮cá‘¢:u*ûÙMœ81¥”Ò‘GYgøÆza}ívÝu×⺤”ÒÕW_½Ñ>›µýnlÈ:á„ŠN)¥éÓ§§aÆ¥G}4͘1£8|Ĉ©ºººÎ´×_}ññ¦>ø`ºä’KÒþð‡4eÊ”4gÎœôø㏧”Rúç?ÿYÜoW~ï'Ÿ|’>ùä“4dȐtÅW¤Ç{¬8îôÓO¯³¬ÿøÇÅý`ðàÁéÜsÏMçw^:thñ߆•¯[nXÛ}¬ªª*Mž<9¥´âñÞC‡MC†IÓ§OOË—//¾Íþ®»îZãïÅàÁƒSJ¥£ˆÔ·oßâ²6õm¿¾ß„¾6VÞŸÖæE„p at q=zô(»Oz¯RJýÇ×ÚM°!HD¤-ZŸÑÿe·ß~{jÔ¨QÉ4§Ÿ~zZ²dI±ÝÊÚ•••iÀ€uƧ´â­Ù7ÝtSÚzë­Kæ׸qãôÿ÷ÅgæŒ3&}ôÑk¼ür_뺎ÿ)$"Ò%—\Rl»r\ No newline at end of file

==== //depot/projects/ctsrd/beribsd/src/ctsrd/pictview/img/browser-thumb.png#2 (text+ko) ====

@@ -1,32 +1,54 @@
 ‰PNG
 
--•þtUݲ‰ˆ-;óaÔþMåû7¢(ª¸V||¼RJ©mÛ¶)»Ýît½råÊ©sçÎ)¥”Z¹re¾eÅ%€8+³-.0žÜà©©©îs©\¹rÞXû£U»ví¼~xà%"Êf³©³gϏ=ö˜RJ©#GŽ(¥”š<yrÞ²Ò¥K«ÌÌLuõêÕ¼€”{öcøðáúÍ
E_~ùeÞÏ|ðA¥”R'NœPeÊ”)ðš>úH)¥Ô÷ßoyû)Š¢ŠcY	 "¿‡ŽQ£FYÛ÷ý›@QU+÷ƒåøñã‹ÔNîð#FXæïï¯233•R¿Ï.Õ½{w¥”RçΝszã{îÙ™)S¦äý,7€\¼xQ•.]ºÀkÌHVV–JKKËW×®]Ë 999jöìÙªjÕª…¾O&LpÚçÖ­[¾?±±±J)¥fÎœ™÷³/¾øB)¥Ô›o¾Yàg>ú¨RJ©øøø¼e=zôPJ)µxñ⼟mØ°A)¥ÔüùóU@@@÷=888ß–ܳQ#GŽ,tœ7ž™	

µ´ýEQű¬Q£FR‡C5Êcíó-Ý–{ï½WRRRäĉR¢D	KÛ-Ì\•»ÌÙ­¹øëÞ½{ÞÏrŸG1{ölåçç—oý*¥®O›[³fͼŸç΂uã35n,wžb·ÛUýúõÕÈ‘#Õ•+W”RJ­_¿>ß:¹³@öà½2eÊä=œ¯°Y¢r˜xìر3Uå¾7¹œ;wn¾eŸþy¾Ù»n~}î~»ùY"ק–TJ©3gÎäý,÷Ù+ªyóæùÖÎÛ'7ÎÖe¶ýEQű
-›¥Ê•ç|˜­oa–-ß¿	EQŹî¿ÿ~uõêÕ¼éhÏž=«bccÕ?ü÷!W©ëÏÉ/ðzwÈ=÷Ü“÷Ó¦MjÒ¤I꥗^RóçÏÏëïæéb‹@”º>ÕîÍu£eË–©J•*å{½ÙðG}4¯%K–¨ñãÇ«ñãÇç=Ü0333ï 7×gŸ}–×÷ÍÓ?òÈ#yËæÏŸ_àµÏ?ÿ¼RêúÃ?þøcõÔSO©#F¨o¾ùF¥¥¥ÚæìÙ³•RןNÿÉ'Ÿ¨Q£F©÷Þ{/ïᏇRåÊ•siû)Š¢Š[Ý\
f¯#€PEy ÂÃÃÕ‚Ta.]º¤^{íµg*r˝-nm?EQTq*¥~×ßØ~aeû¿ÿ-¥”ØíΟöA-¤råÊR¥J	.äUjjªäääøz˜-ÊÉÉ‘¡C‡šNYZ¹rež’8±mÛ6Ùµk—á:5jÔp{:_++¹9¿?ø&KHîÌÜäÞs¼žÇçñÐÌÜsÎÜ	“û¾3sÆ&"J+ãرcJ)¥²²²T@@@e“&MRJ)5}úôü1¯^½:¿ŸÌÌÌïall¬²ÙlÚ¨T©’ú駟Š|ÏÏŸ?¯bbb
+Élû)Š¢¨BåõPE•Êúïÿ[ävW+/t8• ºvíªBCCUëÖ­Õºuë”RJ8q¢À‡áîÝ»+¥”ºzõªš4i’ªW¯žªZµª8p`þ‡ðeË–è'/€<xPåæ檵kת‰'ª~ýú)‘âàà`Õ±cGµpáB¥”Rû÷ï/ôÁ?ïøþýûÕÅ‹ÕŒ3Ô³Ï>«ªV­ªDþ.\¸ 
¤*V¬¨Ê•+§ºwï®:T $‰ˆŠŒŒTJ)•­ó^§N [·nƱfÍ¥”R}ûöU"ÿ2»víRíÛ·W~~~*00P
4H%''+¥”<xp6”RJmß¾]uíÚU©–-[ª©S§æ©k×®.m?EQU¨¼>+ÔõÖ­[§‚‚‚
+'ïxZZZ¡í«V­š?ÖΝ;zmݺuóû¹ï¾û”ˆ(›Í¦NŸ>](d<òÈ#J)¥>¬”RjòäÉùËÊ•+§²²²Ô•+WòRÞُ‘#Gê7/}ùå—ù?»ÿþû•RJ?~\•/_¾Ðk¦M›¦”RêÇ´¼ýEQTáâ+""EÞx^S¦L‘ììì?;pà@þϪV­*""ݺu“æÍ›ËÙ³geÆŒ…Ú9~ü¸¬\¹RD®M|£ôôtyùå—E)åÒøìv{¡ÊÉÉÉ_Þ¶m[™1cF¡{@òÄÆƘÆWDäü£”/_^6oÞ,«W¯.ôš£GÊºuëDD¤G""¢”’E‹‰ˆHçΝó×Íûï7ÞxCDDºté’¿ìž{îY¹r¥dddˆÈµGŠˆôïß_üüü
+ôûöÛoKpp°Œ=:ÿgy÷Ž¼ûî»E>TòË/¿‘k÷…„„XÚ~+ý,''G’’’¤fÍš "×n¦¹|ò>”ßèܹs""Ò¼yóBËvîÜ)—/_vy|ÿûßÝÜíëë+õêÕ“víÚÉÔ©SeøðáÒ°aCiß¾}¡g¬_¿¾P›
6‘¥K—:íwëÖ­Ò§O‰ˆˆÈÿY\\œŒ9R:uê”ÿ³.]ºHJJŠ|óÍ7òÁHTT”HFF†tëÖ-ÿuyfÏž-íÛ·—AƒÉ©S§ä»ï¾“+VÈŠ+äüùóráÂ…ãÈ{ßË–-+½zõ*4N›Í&™™™R¶lYiܸq¡í-jû+ F|||œ.Ë›®öú€váÂY·ntêÔI¢¢¢$<<\D$ÿÒ³å˗˃>(]ºt‘mÛ¶ÉÝwß-{÷î•£Gh{ÆŒò駟JÇŽ¥G#mÚ´‘:H‡¤~ýúòæ›o8›óÖ[o&‘½{÷ZÞv+¬/".iiirìرü›Ñó$''ËsÏ='J)©P¡Bþ
åyï{¿~ýŠÜ–»ï¾[RSSåøñãâïïoiû+¬”¿OfÎœiyû)Š¢¨"Ëë (Š*Õuï½÷ª+W®ä?ãôéÓ*..NýôÓOùróž“^èõÅ	 wÝuWþþõë׫I“&©_|QýðÃùý=º@;%
 J)•››[¨®·dÉU¥J•¯7ûð’ͲœœINN–äädIJJ’ääd9}ú´;vLÛ+
+òöPò…„„È‚dÔ¨QÞ
+pSkÑ¢…ÄÇÇKpp°·‡++Í›7—=zHûöí¥}ûöR½zuÃõ/\¸ [·n•øøx‰—íÛ·›Îçiwq»òú\ÀTé)???uêÔ)Óg¼ñÆ^ëõõÂ/˜ŽyØ°a–Ú*îs at BBBÔË/¿¬Nœ8a:–¢$&&ª>ø@…††j}ïìv»6l˜š?¾KOÉÎãp8ÔÒ¥KÕˆ#T¹rå<2F£ç¾üío+ò5ê7ÞP/^túÚsçÎ9í³iÓ¦jß¾}N+..Îåí(MϹ¾Þÿ}ÓqEDDÜûÍJ…„„¨)S¦¨sçΙn·™åË—«öíÛ—h<ÁÁÁêêÕ«†ýÌœ9Ó-ûúÅ_4ݦŸþÙm¿[K—.5ì«qãÆ.·éëë«xà•àÒ¾*ÊéÓ§ÕÛo¿­*T¨ õßÇ]}ï5UjËë JQÅÄÄX:𕶓U®\Ymß¾]íܹÓi=ÿüó–Ú*N+T-Z´P“'OVGŽ±¼
ï¿ÿ~±Çov-ò[o½ey×»ï©Q£†éŒm‡CuîÜù¦ÚoyU¥J˳\mÞ¼Y=ûì³*,,Ì°M???uß}÷©Ÿ~úIåääXjûûï¿·|OÈÀ
Ûr8*88¸XûÂn·«óçÏ[sž’ü.öïßß°íÑ£G›¶hiVÁ„„uï½÷*»ÝnÚfxx¸7nœ¥v¯^½Z¬ÙßòŠãnѸ„ú¿òú+(VûþóŸMÇŸœœ\¢g„……©¸¸8Ó~:¤|}}]nßè¡3—.]R¯¿þz±g´¹ÕH­ZµÔ3Ï<£V®\iéý[²d‰òóó+QŸÞØo"¢{ì1Ó~ÕÝwß]¢í´4«‘ÃáP5²Ôæ²eËÛzï½÷Š5Ö1cÆXÞyJò<£p¶gÏKm:tÈp|Ï>ûl‰ÿ]6Ì°ÜÜÜbý›ä¸ë™™Ä¨[ª¼>+
+2=Øÿãÿp¹]³‡Žedd¨ÈÈH·½wUªTQ'Ož4ìóøñã.¸uåáÂ…‹}¶È•ßOoÊÊÊRùË_Üöüoì·W_}Õ´/+÷¸úï×ìž‚ììlU»vmÓ¶7nlØÎÕ«W]~òµÍfszɝÑ«•RªM›6.¿>ø a›]»v5m㥗^2lãÝwßuÛþkРáïê¢E‹\jã.EY*¯€*%eåƶÛáÛ
«äÈ‘#ªlÙ²nëwñâņý-_¾Ü¥ö"""L¯o~â‰'ÜþþuïÞÝô½{à\jÓêÂß~ûÍ-ßÜ[ù=¸ÕH||¼[¾‘õæ~óõõU¿ÿþ»a_ëÖ­sûï¼ÈµK)Íþ½ýýï·Ô–Ù±¸G.ÍèlÂ?ÿùO•˜˜ètùK/½äò{ñÙgŸ9mïÂ…–.í›>}ºá{PÜ{?œ•Ñ“è]yb;Ç]Š²V<ù¬<D(==]ÃHn}ôQ‰§Æ½Þüùó
—»:Ïú/¼ 6›Íéò-[¶È¬Y³\jÓŠeË–ÉΝ;
×éÑ£‡ÛûÍÌÌ”áÇKvv¶ÛÛ¾Õ¥¥¥ÉìÙ³åèÑ£Úûvç~»÷Þ{¥V­Z†ë¼ñÆ%î§(+W®4}`㣏>jéAzf%tu:^£gz¬X±B–/_^¬×:cô+ní·sçΆ}ž:uÊr[•*U2]«¸³éX©gŸ}Ö°ï£GºÔž•oâþö·¿iý=¸Õ΀(¥Ô‰'Ô/¼àò%>¥e¿}‹­TñZO?ý´éöFEE™¶Ó¯_?Ã6Ö¬YãÒ¸¾ÿþ{§mÕªUK=üðÃN—»zH:uÇþØc¹e_®ZµÊ­û®iÓ¦ê•W^qZ7N©^TqÜ¥(—Êë JAùúúšhRSS½>Ne%€|ýõ×nï·Y³f†}fgg[në‰'ž0lëСC}ƒƒƒÕ•+WÇP¿~}Ëí™ý!ÌÌÌTÕªUÓú{p+<)))êÑG-ñ{¨s¿)‡ÃaØßã?îÑßûªU«šŽÁÊ%M*##Ãð}³zù§Ífsú<”ƒ*Q5kÖ4³+÷<þøãNÛÉÍÍUÕ«W·ÔŽÙáYYY%zF‡'Šã.EY/.Á‚ˆ\{ð…×±ú4ßÛÁƍÝÞfJJŠár???ËOÃíر£ár³K<J*--Íôr£Ë4\µ`Á9sæŒÛÚ»ÝUªTIþùÏÊ7ß|ãÒœ]åÎý-v»ó?i‡C,Xà–¾œ9{ö¬¬Y³Æp+—O]¹rEV­Zåty™2e$::
 ÚÒ˜š4iâôòÍ•+WŠˆÈÉ“'eß¾}NÛpå2¬˜˜§Ë¶mÛ&§OŸ¶ÔÎñãÇ
—ûûûËš5kä®»î²<6Oã¸Xg~1*nçÏŸ7ü€[®\9£)Ý6mÚäö6͈ˆHhh¨iPñþB‘]»vIïÞ½.w燥K—º­-o;pà€\¹r¥DmØl6	
+
+’J•*I…
+¯I72lØ0‰ŽŽ–Þ½{Ë¡C‡J4¦¢¸s¿µk×Îpùš5k$99Ùmý9óÃ?~`ïСƒØívÉÍÍ5l'..ÎðßO§NL?lŠž¼+ ñññ.ÁòꫯJ=œ^VéÙ³§ôìÙSD®}a´víZY½zµ¬Y³F¶nÝ*‡Ã¥qXÁqp
ù¬'NhMéUÚˆÙ·«!!!²páBM£q.((Hl6›(¥JÔNFF†›FtûQJÉìÙ³e÷îݲjÕ*©X±¢áú“&M’ü±ÄûLĽû-$$Äpù¥K—Lojv—¤¤$ÉÍÍ5üæÝÊã+
+
+r:­j£F¤zõêE.»ñþ<™™™²nÝ:§ý]Òå®éw¹té’<õÔSR¿~}™>}ºG.jØ°¡¼ûî»räÈùË_þâÒ™Ž»€k È·qãFÓK0Js+¬²2[”Ù”½º™}è,îJÅaå9®~H6:ƒÐ±cÇ"ožvvdûöí†ýoÙ²ÅéD*TV­ZúyLLŒÓö-Zä–YÓŒ¤¥¥Éœ9sdèС*-[¶”qãÆÉÿû_—Â^Qî¸ãùòË/MŸ'Âqp
X	 #GŽôü@\Ô·o_Óu¶oß®a$Þgö‡Ðl¾zÜÞ~ÿýwÓun¶+p¹¯åp8\îï™gž)Ñ6Ö­[×°ýŒŒU³fM·þÞØl6Ãû'rssU­Zµ,ý»â¸KQ–Êë JyU¨PAmß¾Ýðàv½«W¯ª)S¦¨
+*¸¥ÿ€€+		QóæÍÓx8-ÚñãÇKtÃyQu«Q=ôÊÌÌtç.0túôiÕµk׿/}~øá·ÍÐS>ÀôìٳؗŽײeËTÙ²e=º]³g϶4–×^{­Ä}½öÚk–úúá‡ܾeÊ”Q›7o.Éî(¶üãnÙŽ»Udy}+*¨—_~Y>}Úí×3gΨY³f©†
z|;n‡áéé‰ÜÜ\ܼyS*v
+vvv		ADD"""àêꊌŒ\»v
DYYY{WÑ,Rh-Kν½½=†
++îß¿ßä6äååá‡~P§+çÉgÏžEuu5+
+B\\\{W™ÚHG:÷555¸}ûv‹Êjý»^[[‹””“évvv8p |}}áë닱cÇbòäÉ8yòd«ëLDD“Y‹ò䥗^Òœïêê*Ë—/Wõš?¾U3(Í_äôŠ¦¶ß½{w<x°øøø´{¦iíhøDÓhy>ù1F¥³£GŠ···I;;;Ùºu«ˆˆÔÖÖ6yl;R<Jm =Î}[?¹xñ¢Eû¡<)))i´ŒÁ`#FH^^žˆˆ$''›”áƒÁx4¢Í_B/++ÃÊ•+ñïÿ 
-’îÝ»Kß¾}¥~ýúR¥J©R¥Š”+WNDD®]»&§N’“'Oʉ'd÷îÝ2gίѐ§Ë222$##Ãéò°°02dˆôíÛW"##ó¶EDäèÑ£|³/"‰‰‰¦ë¸ótöâ¾ßìv»´mÛVþð‡?Hÿþý¥aƦ¯IMM•+VÈ’%K$..NNŸ>]äqøùùIÙ²e
×IOO—ÌÌÌ"÷ ¥K—6\'33Óc¥dÉ’N—_¹r¥H¡ Y³fÒ­[7i×®´k×NªV­j¸þÅ‹eûöí'qqq’`:œ·qÜŝÊçsSŧÔ™3gLŸ
ðÆoø|¬7Ö‹/¾h:æ!C†XjËÝ瀄††ªW^yE<yÒt,…9uꔚ2eŠªX±¢Ö÷În·«!C†¨…ºô”ì\‡C-_¾\
6L•.]Ú+c4zîËßÿþ÷B_¤Þxã
uéÒ%§¯=þ¼Ó>›4i¢öïßï´bcc]ÞŽâôë½÷Þ3WÆ
o‰ýf¥BCCÕ´iÓÔùóçM·ÛÌÊ•+U»víŠ4žuíÚ5Ã~fÎœé‘}ýÒK/™nӏ?þè±ß­åË—öÕ¨Q#—Ûô÷÷W=ôŠwi_æìÙ³ê¯ý«*[¶¬Öswõ½×T±-Ÿ€*FcéÀWÜLV¡B• víÚå´Fe©-wÈŸþô'uåÊÓ÷ΊS§N©N:iyßî»ï>µ}ûvŒ[)¥.]º¤&Ož¬J–,éÑqºú‡°N:*!!Át¼FÍ~öíÛçòv×-	

õh»wü Èc·Û¥M›6¦ëmÞ¼YÃhŠ7»Ý.sæ̱ØŠâwÞñ臦V­ZI||¼T¯^Ýcm:c·ÛeôèÑòÃ?˜Njà	5kÖ”åË—KXX˜×ûº>Üto¿ýÖký{{¿ÅÄÄÈòåË=þÒHÿþýeË–-nù5»ví2½©¸¨Ä•Pá‰-´¤š7o®&Ož¬Ž=jyÞ{ï=·Çov-ò[o½ey7º“ï©V­šéŒm‡CEGGßRû-·*Uªdy–«ŸþY=ÿüó*,,Ì°Í€€„áò%JȺuëäž{î±<6oã¸Xg~1*î.\0ü€[ºti£)Þ¶nÝêñ6͈ˆHÅŠMƒ¢ˆïÿŠˆìÞ½[zöìét¹'?8,_¾ÜcmùÚÁƒåêÕ«EjÃf³Ipp°”/_^Ê–-kxMº‘!C†HTT”ôìÙS>\¤1Æ“û­mÛ¶
 †Ë×­['IIIëÏ™ùóç~`oß¾½ØívÉÉÉ1l'66ÖðßOÇŽM?lŠžÜ-Kãùïÿki<ð€Óõ¬ÞÒ¤IÃ1»òì•Ò¥K«‹/¿‘7ø駟ÔÃ?ìñ{ó¬Ç]Šr­¸y̾·Ûí^½ãV‘’’"™™™^iÛì[Q+̾…s8ræÌ™"÷cf÷î݆˫U«æ±¾NŸ>í±¶n7‡C’’’dÏž=òÉ'ŸÈ Aƒ$,,Lbbb,ŸÉ»ûî»eÎœ9nŸIqÆSûÍf³™^’d6C§üöÛo¦ëX™qððáÃrèÐ!§ËÛ´i#¦ítìرПïß¿?ßå3«W¯vzü)W®œDDD˜öetö#))É¥KW¯\¹"_}õ•åõ[·n-sçΕ¤¤$‰‹‹“Ñ£GË=÷ÜcxYž'qÜ\Ã%XÈsáÂÓuBBBîø©x­\åK
40\ž––&=zôðú8
—›M³iUFF†\¾|Ù#mÝ)rrrdõêÕ%C‡•÷ß_*V¬høšÞ½{Ë< ,ðÈ<¹ßBCCMïÚ¹s§Gú2sþüyÓu*T¨`©­ØØX=zt¡ËJ—.-­Zµ’M›69}}£F¤råÊ….»ñò+‘ë÷lÛ¶MZ·n]èú:u2
¬F$..Îå/X^{í5éÖ­›ÓKÃ
-S¢D	éÞ½»tïÞ]D®a´~ýzY»v­¬[·N¶oß.‡Ã¥qXÁqp
y¬“'OjMñU܈ٷ«¡¡¡²xñbM£q.88Xl6›(¥ŠÔNzzº‡FtçQJÉìÙ³eÏž=²fÍ)W®œáú“&M’ï¿ÿ¾ÈûLijû-44ÔpùåË—Mojö”ÄÄDÉÉÉ1üæÝÊã-n¾ÄÙåW‡CâããMû3ºäæçDGG;½§`ýúõ¦÷çè–••%Ë–-“çž{NªU«&=ô>|Øôu
64ü⸸†’’’ÔW_}¥ž{î95hÐ Õ¡CÕ°aC¢*T¨ š5k¦zô衆®&Ož¬vïÞíV?¯½öšG¶ÓÈ­tDDTݺuUjjªé{—““£>ÿüsU§NKíúùù©ž={šNû˜kÏž=ncy')nÆŒãö{è«oPK–,iù¬íÞ½{UïÞ½U@@€¥¶ƒ‚‚ÔÿøGµoß>Kí?ýôÓß>+߰ߨcÇŽn÷ÕµkW—úš2eŠG¶ÑÏÏO8pÀ´¿ãǏ«'žxBùùù¹Ô~©R¥ÔСCÕ¦M›LûHHHp¹}Ž»e\¶ÿûÀ’~ýúÉ‚Äß¿x<»víš<ýôÓ–fò1axózll¬ôéÓ§ÈýæêÕ«†ßf5iÒÄtªÈÂ<ðÀ²`ÁËëïÙ³G~üñG9t萜?^Ο?/%K–”J•*I•*U¤}ûöÒ£G	

µÔ^rr²´k×N<èòØED²²²œNõœ’’"åË—w«]#f¿û÷ï—»ï¾Û¥6‡
fiúèâbôèÑòÑG¹ýz_ì·\M›6•ŸþYJ–,iiý.È¢E‹$>>^Ξ=+çΝ“””©X±¢T¯^]ªU«&‘‘‘2hÐ Óør-\¸Pàñ™‡Ú´i#›6m²´nzzº„„„HVV–[}JJJŠå÷1&&¦Hg\n4pà@™7ož¥uOœ8!qqq²fÍÙ¼y³üöÛorõêռ塡¡R³fM¹ë®»¤K—.ò裏ZþýëÒ¥‹[7ñsÜŒù<Q·Vµk×ÎòÍà:¤¦¦ª˜˜mßív$·^~ùe—¯÷„«W¯ª¶mÛé}áˆ^™™™êÙgŸ-ò{èëoP
¤2335¾s¿‹õè=
-7–Ýn7½î?׊+ŠÜߪU«,õuñâEËg’¬ÖÇìö>ÈÈÈPgÏžU—.]r»	&iüw)Êiù|-	7@‘n˜€‘n˜€‘n˜€‘n˜€‘n˜€‘n˜€‘n˜€‘n˜€‘n˜€‘n˜€‘n˜€‘n˜€‘nlE¤½ë@DDDDD-***š]§ŸŸzõê…òòrdee™U""ê\Äœ¨¨¨–ܾ}[V­Z%ŽŽŽf­ÛÒpuuWWW1ºl¯µÛóÍ7EDä믿n—zéÁÁÁêù¿uë–üâ¿h¶ü¾}ûDDdùòåí^÷ŽC‡•ÌÌÌ&ÛÕµk×ä·¿ým»×Óœx”Ú@{œûþýû«eÂÃÃ[ÜNjjªˆˆ¼÷Þ{FÓÿøÇ?¶øïúOõë×O]þ•W^i±|}}½äææÊW_}%~~~šõÛ¶m›ˆˆ$''·û9a0†õÂì' ŠÜÜ\MëÝ»7|||àêꊥK—"""ááᨯ¯·t3-²··ÇíÛ· 
-Rÿ;..÷îÝÃ;ï¼cô²£Á`À/¼€ñãÇ#$$ùùùHIIÁž={ŸŸ¯Yÿ>}ú &&aaað÷÷GAAŽ?Žøøxµ‹BKÛ3f"##‘••…;w­¿µû¨X³f
ìíí±dɸ»»ã¥—^ÂO<wwwœ>}»víÒìÎàë닉'5Ëé}l̽6¬õ½‚ììlxzz¢wïÞ¯£°°P=ÉÕÕ#GŽ„|}}¡¾èÜ”ÌÌLÍéééé-???-¬üúªðööVÝ]³fúëj]]jkk-e^­¡/†!m•o\¿~]6lØ ,7ª6<zô¨ÉðŸÊ·	²³³eûöíFæ*Ã:Þ»wO6mÚ$‹-’uë֍GïêꪖïÚµ«œ:uJ­Ã–-[$..NÊ´¶¶Öä‹ÃMm_kRK÷QRtȐ!šÇ.''GDD¢¢¢Œ¦·×‡›*7`À+pùòedgg·wUtuèÐ!+”——«ó}}}1oÞ<DDD W¯^(((@FF>ýôS|÷ÝwFërwwÇ¢E‹PYY‰uëÖ!,,“&MBLL***œœŒ>ø@í^ؐ
fÍš…gŸ}Dii)._¾Œ¯¿þß|óQÙ¦Ú@KÚPÿ#Æ„	pîÜ9ÄÇÇ›Ôg„	ˆ‰‰ÁÉ“'±{÷nuºr]¬^½ŽŽŽ˜:u*žyæܽ{{öìÁþýûQQQ~ýúaöìÙ=z4lllpêÔ)|ôÑGV?ÿmyî;“³gÏø±[Ö…Ú¹FDDÔÌzdÒ\,%þö·¿‰ˆÈ‰'ÔisæÌ‘>úHV®\©vØ¿¿ZfĈ’••¥Î{øð¡úwYY™Ì;W-{èÐ!“n?"bԍ¡k×®²wï^ÍrEEE2~üx“ºGFFÊÍ›7Õruuuêß÷ïß—ÐÐÐm¿±pÍÙG%îß¿/"õÝ,rrrL¶YYY)ÑÑÑ&ËÅÆƪeúôécµGi
»`¹¹¹ÉܹsED¤ªªJ=^
£±.XzK®¶Žõë׋ˆÈÕ«W[µž‰'JuuµZÿíÏúõëÊ÷ë×OÝÏÙ³gKmm­É1ÈÌÌ”!C†-×¥KùÏþÓävÆÐXhi qqq""’˜˜¨¹ïï¼óŽˆˆlÛ¶Móºxþù票¨Èdÿöïß/aaaFõP\¿~]³;TG;÷©–ãǏ‘úöÜ¥K£yì‚Å`0L˜·@KîÝ»«7‚›6mR§+	HFF†ÔÕÕÉwß}'Ë—
 /—‰'
+ 
-’ÌÌL£å+**äÍ7ß4Ù–ÄÅÅIUU•I+**äÏþ³Qù¦Ú€¹mlÀ€jrª¸yó¦Ì;W^~ùeé¼	ÈÃœûΘ€ôë×O]ÇÑ£Gæ1a0ŒG#ÿÿG‡Ó¿„„„ÀÓÓ¸páB³ßpvv†ÊËË5‡‘tssChh(Œ’’?~¼Å÷œŠîÝ»#;;—/_n²ëOKÛo‹}|”èyl,¹6¬©G
+ƒÁ ò—¿üEDêû@9R 
-!CPVV†. 77·Ång		Ayy9Ž;ft¼Fëׯ#77^^^øá‡P__¯v¥ñññÁ¸qãPRR‚ÿýïMk4¼«1|øp8"‚œœ¤¦¦6ÛõJ‹9m\ No newline at end of file
+Âúõëñâ‹/j–Óûؘ{mXë{èÓ§zôèañ:nݺ¥ŽžäîîŽaÆÁ××~~~ˆŠŠR_tnLZZšæôÔÔT+___<xW®\iv
µõ>v&o½õ&Mš„€€+@}¿í–üXéâ1qâDÍùááá(..Fvv6ìíí‘ŸŸ¯v×xòÉ'MÊ÷î݉‰‰Ø°aƒE¿ÞZc;‹’’,\¸+'''|þùçpvvnrû6l@¿~ýŒ¦ÍŸ?Æ
CQQ>ýôS+e^­¡/ú!m•oäççËƍeÞ¼y²iÓ&õÆǏ7þSù6AFF†$$$
›ªëX^^.[·n•ȺuëŒÆ£wwwWËwéÒENŸ>­Öaûöí§eZ]]mòÅáƶ¯5©¥û¨)¨yì233ED$&&Æhz{}ˆ°±rýû÷W÷EDäí·ßn·ccîµa͘2eŠ:\°ˆH^^žìß¿_öîÝ+wïÞU§Ÿ8qB|||Œ–]³f:¼éîÝ»eÑ¢E²cÇÉÉÉ‘ââbùæ›oDDäôéÓj»m8ï;wäΝ;/K—.•}ûö©óf̘a´­?üáj;زe‹Ì™3GæΝ+			ê¿

‡×Õjæ¶1;;;ÉÎΑúá½$>>^òòò¤®®NýšýöíÛ[|]lÙ²EDL‡£ QQQê¶:ú¹oë/¡›£a{2çC„#GŽT×1|øpÍ6Éaxãgæ-`Í€¸¹¹©côÿÔ‡~(ööö&Ë̘1CªªªÔr
o´mlldñâÅFóEê¿šýÞ{ïI·nÝLÖçèè(ÿøÇ?Ô1ó©©©òôÓO·xûZ7_–îãÏ% ‹-RË6L@ô>6–\Öù׿þ¥¹ï÷ïß—%K–˜|P€ØÛÛËŽ;ŒÊ×ÖÖÊñãÇÅßß_
$©©©ê5	=$$DÒÒÒŒ–/--•7ß|Ód[666'•••&u,--•?ÿùÏFåk涱þýû«É©âΝ;2{ölyùå—E¤ó& ­9÷1éÝ»·ºŽãǏÍcÂ`0Fþÿ§oß¾GŸ>}påÊ\¼x±Éo¸ººÂ××%%%šÃHzzz"""ƒ
BAANž<Ùì{®®®ˆˆˆ€‡‡222píÚµF»þ4·ý¶ØÇG‰žÇÆ’kÚºv튐¢¨¨/^DVVV³Ý΂ƒƒŽ’’œ8qÂèxŒ9ùùùÈÊÊB¿~ýðÃ? ®®
 NíJãëë‹1cÆ   \ No newline at end of file


More information about the p4-projects mailing list