Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 26 Nov 2012 23:48:04 GMT
From:      Brooks Davis <brooks@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 219850 for review
Message-ID:  <201211262348.qAQNm4w1085047@skunkworks.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://p4web.freebsd.org/@@219850?ac=10

Change 219850 by brooks@brooks_zenith on 2012/11/26 23:47:43

	Convert CheriBrowser from blue on black to black on white.
	
	Expand the outlines of sandboxes to 2px and change the outlines
	to red as in CheriPoint.
	
	Fix display of .cpt directories.
	
	Add cheri and capsicum icons to the icon file along with a cheri
	point icon and an hourglass.

Affected files ...

.. //depot/projects/ctsrd/cheribsd/src/ctsrd/browser/browser.c#6 edit
.. //depot/projects/ctsrd/cheribsd/src/ctsrd/browser/images/browser.png#3 edit
.. //depot/projects/ctsrd/cheribsd/src/ctsrd/browser/images/icons.png#2 edit

Differences ...

==== //depot/projects/ctsrd/cheribsd/src/ctsrd/browser/browser.c#6 (text+ko) ====

@@ -115,17 +115,17 @@
 /* Beginning and ending colums of each sandbox type's name */
 #define	SB_IMG_SPACING		20
 #define	SB_IMG_NONE_BCOL	145
-#define	SB_IMG_CAPSICUM_BCOL	223
+#define	SB_IMG_CAPSICUM_BCOL	222
 #define	SB_IMG_CHERI_BCOL	350
 #define	SB_IMG_NONE_ECOL	(SB_IMG_CAPSICUM_BCOL - SB_IMG_SPACING)
 #define	SB_IMG_CAPSICUM_ECOL	(SB_IMG_CHERI_BCOL - SB_IMG_SPACING)
 #define	SB_IMG_CHERI_ECOL	445
 #define	SB_MINCOL		SB_IMG_NONE_BCOL
 #define	SB_MAXCOL		SB_IMG_CHERI_ECOL
-#define	SB_MINROW		(fb_height - 38)
-#define	SB_MAXROW		(fb_height - 1)
+#define	SB_MINROW		(fb_height - 31)
+#define	SB_MAXROW		(fb_height - 4)
 
-#define SB_SHOW_MINCOL		606
+#define SB_SHOW_MINCOL		604
 #define SB_SHOW_MAXCOL		793
 
 /* Start offsets for browser columns */
@@ -160,6 +160,7 @@
 	{ 13, "badmagic" },
 	{ 14, "directory" },
 	{ 15, "application/x-dbm" },
+	{ 19, "x-application/cheripoint" },
 
 	{ 7, "audio/*" },
 	{ 8, "image/*" },
@@ -455,8 +456,11 @@
 		for (j = SB_MINROW; j < SB_MAXROW; j++) {
 			for (i = sbdata[sb].bcol; i <= sbdata[sb].ecol; i++) {
 				pixel = (j * fb_width) + i;
+				if (baseimage[pixel] == white)
+					continue;
 				baseimage[pixel] = vwhite(
-				    ((baseimage[pixel] >> 24) & 0xFF) / 2);
+				    (((baseimage[pixel] >> 24) & 0xFF) / 2) +
+				    128);
 			}
 		}
 	}
@@ -493,7 +497,7 @@
 				value = (baseimage[pixel] >> 16) & 0xFF;
 				bgimage[pixel] = (sbtype == SB_NONE) ?
 				    vwhite(value / 2) : (sbshow ?
-				    vyellow(value) : vwhite(value));
+				    vred(value) : vwhite(value));
 			}
 		}
 	}
@@ -580,16 +584,16 @@
 {
 	u_int32_t textbuf[TEXTSPACE*CHAR_HEIGHT];
 
-	memset(textbuf, 0, sizeof(textbuf));
-	fb_render_text(text, 2, blue, black, textbuf,
+	fb_fill_buf(textbuf, white, TEXTSPACE, CHAR_HEIGHT);
+	fb_render_text(text, 2, black, white, textbuf,
 	    TEXTSPACE, CHAR_HEIGHT);
 	fb_post_region(textbuf, colstart[(s/NROW)] + TEXT_OFFSET,
 	    FROW + (RHEIGHT * (s % NROW)) + BORDER, TEXTSPACE,
 	    CHAR_HEIGHT);
 	if (sbshow && sbtype != SB_NONE)
-		fb_fill_region(yellow, colstart[(s/NROW)] + BORDER - 1,
-		    FROW + (RHEIGHT * (s % NROW)) + BORDER - 1,
-		    ICON_WH + 2, ICON_WH + 2);
+		fb_fill_region(red, colstart[(s/NROW)] + BORDER - 2,
+		    FROW + (RHEIGHT * (s % NROW)) + BORDER - 2,
+		    ICON_WH + 4, ICON_WH + 4);
 	fb_post_region(icon, colstart[(s/NROW)] + BORDER,
 	    FROW + (RHEIGHT * (s % NROW)) + BORDER, ICON_WH, ICON_WH);
 }
@@ -768,7 +772,7 @@
 			dbufp += len;
 		}
 
-		da = fb_dialog(FBDT_PINCH_OR_VSCROLL, blue, black, blue,
+		da = fb_dialog(FBDT_PINCH_OR_VSCROLL, black, white, black,
 		    name, dbuf);
 		switch (da) {
 		case FBDA_OK:
@@ -921,7 +925,7 @@
 	
 	topslot = 0;
 render:
-	fb_fill_region(black, colstart[0], FROW, fb_width, NROW * RHEIGHT);
+	fb_fill_region(white, colstart[0], FROW, fb_width, NROW * RHEIGHT);
 	for(curslot = 0; curslot < NSLOTS && topslot + curslot < ndents;
 	    curslot++) {
 		dent = &dents[topslot + curslot];
@@ -971,14 +975,7 @@
 				errx(1, "invalid action");
 			if (topslot + action >= ndents)
 				continue;
-			if (dents[topslot + action].entry.d_type == DT_DIR) {
-				if ((nfd = openat(dfd,
-				    dents[topslot + action].entry.d_name,
-				    O_RDONLY|O_DIRECTORY)) == -1)
-					goto render; /* XXX: display error */
-				retfd = nfd;
-				goto cleanup;
-			} else if (strcmp("image/png",
+			if (strcmp("image/png",
 			    dents[topslot + action].desc) == 0) {
 				show_png(dfd,
 				    dents[topslot + action].entry.d_name);
@@ -994,6 +991,14 @@
 				    action].entry.d_name);
 				fb_post(bgimage); /* Restore background */
 				goto render;
+			} else if (dents[topslot + action].entry.d_type ==
+			    DT_DIR) {
+				if ((nfd = openat(dfd,
+				    dents[topslot + action].entry.d_name,
+				    O_RDONLY|O_DIRECTORY)) == -1)
+					goto render; /* XXX: display error */
+				retfd = nfd;
+				goto cleanup;
 			} else {
 				if (verbose)
 					printf("opening non-directory not "

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

@@ -1,46 +1,48 @@
 PNG
 
---9_sȑ#kjժ)66VӺu
6T
-BΓ
6h߾}	-B_4ibk֬lݺn<x4hP0|p330|ƌyng˖-/[DDD
-B\܅; -r!d33[zY-{{ÇsAp
/{VLn330a=3)))&%d%K͛7ٟq[l13mڎ;i$YR^gee٩S=ff6o޼zffvq+[l#Gٛo믿sر}laaa˸Kl!yFFu=Ng~
-Bb-T
-rAիW믿~VڵkTR/$Y%lٲeffv-/66_f^- ǎ̀ۼyB
-A.333^v%hx=^{I0۾}{PȸlÆ
ff3"##v? yw?㎠zhĉn6nhQQQAffx)
-\x-yQ+:qDu.2IR=ԴiSܹScƌ	Zƍ5{lI9MzGdf_xxxP9u?>))Icƌ	zēЌ$r-…_͓yIz%I23}g.]z~%I]vuQJٳuQI9GJo~,Y2`>*V!CüwG^xᅐJN8QRλA*U*-Sjjv0>;)ߩ.[l?<uFGG
;p@[NҺun:-[L/V6mԧO}g\oz$I7os֭$լY_ԩSj۶J.K/T裏Yfij߾fΜ2;V9rVk҂4vXM<Yt饗bŊrd-T
-rX裏,c=t+E	 Ap -Ys@NwI[j}6dȐ;R.*۵kW7olIIIy׿ZF\z~뮻
#GѣG{{C3b;qDG_~*W\P(/%g YDS||zկ__6l#Gwq\HԩSڹsg
E
Pz8uQϺ*!!A_|ʖ-kڴiڴi*V
JLLյkW-X|ތ;V
RVVLKjWڵkPZtů8
-X; wqGQQQO?	t!sU[*UI&|w@<{szRڵkٳg[5~̲ݷR5qe˖i;; yNfmڴ۷قT,X`ffSN%K]ffyqKw@cffǎmۆfgw]uURr_B?t萞y}嗒޽{U\4٣+Vhƍ]f̘!Iz뭷Tlbͅ_L}=BCu)=#ڹs5b,_9PPtfޯVY̵GզMIҰar۴i|IIR͚5ŢgϞɓ'9رcq:tpV7?E~L;K
6mV7x,XSjРA[f=t+Vԃ>+.#-sʗ/O7|(Qo+uP߾}:য়~
-nȧ@$TRſHZZeggܹs'k$YJ{6lhaaaV~}_jf9@'%%$Dûuf7fftR֭UPZliv͟rʖif9MڵRJYƍ?˗h.
-^.=j6l7ЂƶmۂZ*- Ma6GOF
-[ʕ+I<v%XXX%$$بQҢEC1++˲߷.]XʕmtR33[reOي+}VdI+W
0cff]w?}s0t6sLرڃ>'NXZZ]wuV~}4hܹ̞ ^{ըQ#߲|r3+-#-/k*ժUw}^XbyV3n-h|`ff?(߱,8d[FF۷ώ?Y>zh33~8ѣG-55^xᅐw_tMflYſ7_6qwfʕm߾}ff6|xJ*Ur7TW^yr$Fw(n喀irԭ[7ok({7.. ǽp'LA1˹uӿy- .MQ6Gٲe1˨Qǚ4irW_}effCPׯ_ƌcff?o53?0)w?΁žcg@B}L<J^,B<ȑ#G/ܝm? rIsqkԨQ!P~mtvwϬ܎9b?~(>[mr]3gÊ럷eʔ1)u.ӏ?z/gffֺuB틄{WNlٲ-`u/wرߝ_zzz|qYf>}jA^$GNzVJy_|-Wr}??~<d(
-*%+Wj˖-A7oެUV>ȳ˗@YZ5/_^f*|˖-өS
h׮]ֱQFrz+Ƈرc*S6ltEEE
-婧w97鬬,رC*SLw><sհaC%''[o
9}Sؿ_AZZbbbTj"/c۶m~Ijժnݺ/:e͚5!{/֫W6i$o^жm4uT͚5KfRFFFȗsVy=B9e<I~#58u$ű+Tjjj,ZHy_v"M~zaɓ4<22R_~6lej̙ׯ.\xuˎ?wyGJ,-Z}޽zHqرڶm}̟eܼs߱7nʕ+ոqc%%%iΜ9ڵ$iRյkW͜9SjݺvU{ժU6l
jժ}رK|ӦM5a)SFo?_7n/\qqqW
:ׯ_ջnNo$Ç<V^^uԑtvCǎӭުnݺUQoV銏ܹsO>Dg֒%K
-8JHrry"͛*w{n?~<|ǎ͛5k滎K/T+Vz&Ѫ[$̂Zt86ޒ.Ny?{Ws-ܢ'j̙Aӹ7E8_֬Y]*>>@Ӈi
-SjjZT5dh!d޽ڶmjԨryYYY!/¥Q)3vXkȑZ+++K,رc5y<>α%J;>U=zNP؟K'NRA9rDwuW5j9sz9rj-nݪ6mڨ\rѣ$O?-P}5j{GGO<t.Ԁ?+""BoٳgM6ڿ>͙3GׯҥKUjUtyӕ.]:iʗ/5j(,,,d=*U$)Cu_Կ0s6A6mR>}ZݺuS=teiȐ!ׯ|
-s4IRʕ2an? ?Sۻw222t%h?~p	I9SN!OkVqqq/jժ3.3sGyD}Ucwoqxl4p@M2%nI9=zhI9?O
-#e˪N:!S:.s;ufϞٳgKT1coC=ѣG`+9/<c1t_$
8P5j8㣓>lcΝ*))IuQݺu5m4bz̙4hڵkݻԩS~gbf,)߼	7СCE߾}զM8p@W\qEwYT3_ddVݻwMP"##.wgsK9sZjƍkzu֭[5aM0Aaaaѣf͚/;9	v?W|7]vr.w^s5!ǷhBƍUT)ر\û[5e+E|l"33S>$iĈL}Sؿ%55USN$jJ$7NR·{4ORԾ}{Iy!HJJ
-9[nK-JAA;"UVB<#z!3icccVcra'N03+"`={YN')͚5WBz~}͛uaÆ?T@EF}4hrmذ̂;jѢ++X
-
-}
-Zjr{ꩧeo|Uݻ,9P-\}vΟ??ϝ;,[M6yk׮%of9nͫ I9m(9֢E3iuiӦ𰰰bرfK3?\ʗ/_-IEի}'-X dǧ裏}znflͫu@'EQcs/k5w111ffPa[{gs4i.\hfM{:zhPzͫ߭4lԱ_
-VFFFPӟ,MX5k w+)))r7{6.%<<fΜifS
-wҜ-#T-RJ,i}?U޳QFٸq믿/mМmjl޽fQlԨQ6g;y}vQ3NE	 eʔoڽ{7Άn'O,3T-	=!!!6|uȑ#y(9Vvwe~yfv9c-\ No newline at end of file
++   <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">;
+      <rdf:Description rdf:about=""
+            xmlns:tiff="http://ns.adobe.com/tiff/1.0/">;
+         <tiff:Compression>5</tiff:Compression>
+         <tiff:PhotometricInterpretation>2</tiff:PhotometricInterpretation>
+         <tiff:Orientation>1</tiff:Orientation>
+      </rdf:Description>
+   </rdf:RDF>
+</x:xmpmeta>
+m+2$)tp3xtwձ~o)+cwK^Y	l۵s[k?n{lvg+\
+u2IW&ye.szʻQӟ4;INR+Ԛz?Y5n?qv;a~Q9$K 6+|zЃc?бwYx`}6M?9nn?羔(kӟtv+_yveY[}U=\@H9HX%I{jLd?9Q'q?=]'7\ַu]+
k_Zի2#eO|;kI|in+wLWզ~uޔcUo\{~n}[OOxCЇN{/~ޒ;IJ攔i%}o|߬\LC6C3.><}~_חpcD-d׽uvZO)]X_/xGgF_^`\=gm5+@Fue&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+@tE&@+L+?݆1d\:kjۓ}p<!S&:=Ϟ♿uj8CoIfGvnMτ?u8v2W6yM;yol,}}_fX	i6382)OyJϤ437t_mVo3L2#Sw[xk_[O=h>omx+@N{iy14jEə
 32dpE@Y3Y&5i>ޏUP@!V}kiHsh1jY~Cu)Ȕ;ѽD/ y[(+k=eŖmI;('SG[[5'wv4Ѝn,c4lVzWZȚ'kz+cӈ6Cr=m~wH޲
W&9Qt;i},7[+m#H-Ij۴Te~G+ǷV?kUjS6
+@Vt~-[I]1h~enlNAêaciۧi_svǓ3(S&u犼uL}4IVhʤU|LY
]Jl~_&y%x::(
+I<V𪻷tߞ(+gL*g-^>(K]}Kg5V}mFzٻ}_&mah=9ȾFǿ[|,ǔsUJ{Ԇ-ocIm.UZ3]H22\j1VynYn2hvsFKlt5&nvv7!t#1.SYJ_S25NOGUrn^AT(	_wk'e\ŶM)?)sϔXQ8.~)K7]iK_ӷ͙neE's/ʯ4jO[uFYMiC	&e^ĜMI٧|YUЗSgƳ	~ځ&ű+Wݬ{UvF93ϭֻFWlHF=(c+exQ|dKRkkwJeŮ}iKZ5z>WzK<ݜ_5Y:O++mO
Wj'μTӱc;:YYɐ̉,͙)ǀks{v9F9ћweY)sxr2fZ@\ No newline at end of file

==== //depot/projects/ctsrd/cheribsd/src/ctsrd/browser/images/icons.png#2 (text+ko) ====

@@ -1,62 +1,111 @@
 PNG
 
--:I KC$z	6\xW-K^}=.8H DmKTsIZH%m3-2#LIl,i3B$D0fEe1Ϗ-)M%U1-?|wsCdl"fJ+*Ẓ{/p9 K~+"e#i	Gܚ(b#xa>5aF-TU`K+(Jxώg#n5e=秿 trЄsKoeǛoy~$9:?Wxl}M<aPy}V}_ҿ̼-	6psWs뭷rX|9@/UUYx1Vb…DQN'--EQx(hS鷷믿^:/={wr֭G\rIklhhv@Al[a(..&B	ӖuZqgg'ccc455vFNQvuusNv܉eYA,;--<(o>})"z巾-}vDMHDn߾]~[ߒ^wj;~.u
-CJ&dzw?{<֭[S+hoo'?E?Jfvdա7n+V~H$p^>D7
-ւy~6%,tQA*0\+&ΐ
-ppx	=~O.Mߛ?[Μ% YGuuPW-؟+dVD]MKH!Y	f^MQpȸS*jkQ Bs@<'BTPًs+1h?N7&jy_7-d?'	dߖ!F>j
-]ݗoRA>!SA]==)AIF
-ygdYcw5\O{ouuO"60zmCm-E?RW7~->k@<_Tzx`B=IJc#/}	A" VS}8p-iYBqU^oNE[6x0x--(.c.^;]S>eTmi%%xJ<8*a82ȉ$GG0t&dj.j/i)Y6B;`Nt/L4M*	AH6ic6eqd5+,Z
->'%^'nMRqH<žξNaaYs1(x<EMlR׹,뮤嚫)nnU^RC)G8l&:JńaZ-k<>.X}r؁پu5wJ[* S*ob{c[$VJCG
4f*z`uW+*z0Fb(=~|H`Ke_*?q#axO/*7S(,ժʪsDHzjuC1`q~㇈&<X
-;BdJN96ʏqQI#u.Q&6@;,XS?WJ̘Er,ѠHk,[!9"i5&8BGQЛ0:FHJHӦλ(ޱHL#-|Rx$&!۶lTzjScؑ8K)Qi[PJg*;eai-×#~փ>܃OaijVO'FZzrl Q(`P;˶1tK,H0%!II}RCA̱hHHT__na`2LIYa wViy	Áa۰(oC$[AmD&+[jlh0fBb(>
11%BPiM"_))GvuL(Fx--!]QX-FS)~?ۨ|HUz<@4v-pAut3
-l$fB'!S-_	c ?m
-	S>ETӨ%~SSj2$S|X@7T	_C4Nʴޱ\-OU}=бcQh3EE^?R]],66Z KBp,OYYr^M*e$$60@w"RNn
 Kn`-%'f!PUL9QOp]1:33,s.@M}=qU((vfT
-'ĒyE6@u+g	ޝOPAEe#W_ڋOc(6UQAi҅I$W2MFi]DiY) 26D"n'!h_s
Y7@
-Mš-G
phZ),Xd"O	KFF#9ݗ{i]\(	6ѓC躙{"AqpDc)t✕M˯wǦ&-v9?-|Z-%"v7)|F-˲97F$UͫBe
- "?RQYF<c6-5|E-"i?v|ё	@DdDBRQQUVQ_S<yf~/ؽYFGzf+zx,
"ќ>Z6b2gt^={;ÏgO>o-	TQRᩧ6,;3-l[b2HX:gKjۧ	BU`т8Q*)#uw=}iR3%;-%jjj+
<.~ūU_QSxѐpQFF̳~JSRRrꔕ)e*J(PQO4JE0"(ŋ&&R`L6e)%nnf0RCD!Lۑg˲O@I$&β,+We5-R>&L͚ew?۶y\fd1۟"S^/$^w23-ǎehtm~P9-vL=ztJʲe
-Ja2KK R8	>Y!XliI -r::DG@4]т#3I&ǒup8L$ax,Fm{3<xpz	L
-$~:uS^^ɿ0xT*ʼnQ
'2-Cav	[_#_0m-())}v89oCxG"uz%-[ȩ(x
-4p{>jkeϋ	wݹm)Z.6҅Hu^@MS#Z)MΉ8u(==q}щu߆Jy"+Zkqfv	
HCggcD8󱁷=>0SUUY||?->P}
0ŀgO1>[ghNiPz	J{6/,_|ND!sh:Ubt='TٺeUU';'#X~}d:eY	3I>z^H 3蘶*tiI`@VstO:`@V_4֬Y3Ѵ*e)B>f¼|:|;>0_>mlٲS;p6>p6>0/رcfpZt~	/7t|;kkkUgfΒH&?}-1w-B-kU+WPU]E&(*χM*36:ɓo~6o~++Xf5Keǎ?~***XWx"TEE4ܱW_ʳxv}]{z.ٴi
d(..SI~ee`(ŋXx1Xd!s.ތ-EQ)-+eUc\{x?Lk
.#L@[QQAeu5BULEUPPP|h=Rp0:董$InF:OvږB{:V^--Bc{1LrQ]SEk2njjXаW_قr(.㴵q}}tvvn:.B~-AYyx]q:],Oݜ}*B" P\wjrh4MCUT4&N*$OUu==
 =PT_h4šk|O-۶4"7 #tиK/TUuv@1:D"9?XmkXh1Th<B"'e14AYiKYo'ش:8|0h]7үod">2:u<p8si[ю	ʕ+Yڼʊ*\.wq1MT*Gi\c㸮kgfwS%ZR)mɭ%KHd58p4(-Wu*P3-Sc gd!lY+)
H2@$J"DtY9|BcJ!ؽ/Xjs$eAَ@ݐټ2uvoS4ezn[e~$<kV:@HJ52$Kttģ>
Uq]Cٲe(LƱI%m|sSbMklDd٧'yB\9Q[=k>="g?5NuUPúC#*|o,Y1~^[O>j>-O}*}δt]aݪ,nx	Z9w9m&#vEadTIJ$<lG@Q|Z3D#"Uqy5Y,[*#eC5|G }ʇTV,qyaMEP8v>Dp5z$šG]ǼIŚ.)$Tvm*XK'I<?56-Uy?9ݮ!>5PPxGWd_c+PR$UV,پDWNVBW}fqW>.<S"K"	+b2YBn⼆
*+>n&"-IӴnnnqdikEA4(s
 587o}uQWWc+Sn*hg:!
 eɓ'Ǒ/^̪U,ӧO#rb10
-PP	|L&id2RT:![Z^6mbttT*E:0,*aNCg%*DbTTTpQdQ%H
4M,¶;,g
-e*:%)X7O<Acc#$yޝEʎS-1?Dd2kon:d!}&>Yr$AG"(x'O"ձdelsal pu^}\Czj͛inn.Đ*_ק׆(2::իWy~TUe…ʕ+YhuuuTTT:LMq`tt>:::hoo6:;;D~0!I3H$u5̗a:%I2C2Ta]כ)\^q-@uvŞ={hjj"LyWJev`|$ZN7_g\ No newline at end of file
++   <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">;
+      <rdf:Description rdf:about=""
+            xmlns:tiff="http://ns.adobe.com/tiff/1.0/">;
+         <tiff:Compression>5</tiff:Compression>
+         <tiff:PhotometricInterpretation>2</tiff:PhotometricInterpretation>
+         <tiff:Orientation>1</tiff:Orientation>
+      </rdf:Description>
+   </rdf:RDF>
+</x:xmpmeta>
+m+SOhn^x+Ԝ$jWw_ -{	1D	w6.4#"Qё"|WA?#H@iiutd+l%@բ;0v4fϺ俾+bwp}>>kboE8p+<WTn.ջ?	ۛn@y*+
h@	qA@Iua+aofS\%/~+^b]+ 766"RoJEDEK.1i^N\T-((iB0!Z)jS~Z٠D\7C/6ϔ*~wq!$3祿|M4hFTDPyUӍpJs1Y+#*X$s+RV",)șR Q+v+7uTH]+F%:d‰&. !++v-0[pWqNJZWE?GT]
<5.p>k;sÏQ'	hk_JL9x+%#
+
+,jPζ`Z;4@'V_\jĩ)=TCx::Gu
+L9W
+L7(w+{d{5&\]½/!7̎!a7|+Zpe>ڞ[Dj.]u<;v"vtT6'"W̘Iu	;Ex1E FtB*xhƇY$'#jnpBڰa}:J<~>^WPLGMHjfl8-OĤ@c:k}KmOxNzgd<M1p'1_"!1LhNr+x`	V`Xz9ì}{1zEXYUXVa$g!&*4Md$~ʭԂj?nS6ښ7m\<k:Ö1c}T 32Pk'Է%]onct3?	/>6h=2KI$v`\D
;#]4ߎ,Bs`{#,Y}6sjF%Uڴkݦ̸Z
+W#݅@pt`7xs+h9&~5M`+
Mm6	݉4nLNjc7`+ZZZq(6JA)00%l5sġ8	9d;IX+ߛATq^e	rQكcoo+k$h)~L1~MhcD2;48yLviXdiS5*:"9S|ꐥ5dOZ&֤騧OFKߧp^SIwb`J\ZI0:^MnTԻQn[\;͝h
+|n ;(+Ƌ1r=u&2C8gBEΩx\8_D-dE(ee7UV7ep-17;Gzm.vlwb` SA,^SF=`ǚCiI?de_f );90(ԜܼJhזNkE1?ȈBkmR,ZkÑ]֔~۰w‰E7WDŻYEy1 O_}PeRitr/!|]66N.E jTV`-|+D!7aVDQ#jK2j$Y\njIFaUMwSO!:j;gG=Y\ifM51Gù87GVo
+:h?(=J.ljLvj`L1?lSpj}Wnق6',z8FI">)԰5̏UeS4j̸%,eWU^eȀz*d	ZW+yٰ?"UDKzɵNAıo)UEi=2Ѱ2 $-K/
V,F2nsmWUW\)5J.&Sg7r+V&Hg
+齜
+%l>+J]R<sdAiN$EhG^ :FJذ!t[p/äYz[-~YIj%vőR^w2C&#l]
+?ɽ3W:4Y6m<6(ܲz`V* "mMy"!.sٝgS8p;p?z_+@O;eڼe4V?kp3+HG`R.VsҤ^C+ 3|nzdf`NA7?C2ohv
4acfJ+=WP ;TNmh#&"q(m{\+g_Ï"ΦQ@E;u:EM}3Xj>^=	I})3wVOJp.,+ltvX'VؗbM`	ZbglSn}gʃKD+K=y/+.5H	9l>\ƎӐN:QZ׮.@*Jt
+#٘:vw럀Ʋ[EsÑeѵϭ/+$v
+^mމ;"º.X%-qH'ǥ{c{oxONă_8Oh+YHx<hB?׍ݓ;m7c߇ÿ<,oRUX4٩l}Zܩ64фe5~+9
C[p(guӈ5[c/w]W?C
G$owqދwQ>Riה$M¤QQAY<N"fjh=[^Ekˮ*bKPl0ͻ@Q$+-N`(!>;˕Z6j\N#L.dn	cȺ|_3W2h}p=#db,`}kJvsS
Qq`
4@FUa+Z>'+[cڔɎH'rU1i9JHE}"'q #+4 	'LI)+~5۳oGQ*a}TYQ
+'cѦ-#wm(_.o3֥r.;1	+tRۡ8{.3
vq0߼HXƷϬO"wi^
+o/ZxEc(WB8 %$WTTd$hULR**;S[#؅+("sYw୷wb<M]0w}
M9Fۢر-م|8@Ebq~ضSv}G
@EC;rb/h? sN&b߁b<w\-(g?=ȲrŻ9t/ʪu_æǪxa+sKX7fg?cr!dݹ={
+w{M81yp~9Z9/r΄w̞0^0	'Ro5jTVr76FbH5>׫єuې7nRi#M	jLbMxsj(2sEꜜ6sQʕyDž+ಅIDT^r3L;)v@@=OUpGXSa-DX!tʀSv*=^EG5ΣL&t,m9'Cr945`ˮ<|-+<D.NJ
yvz*75HF;whh0UF[8O(߈'P۶ %2>C*b9	Ec9A)5nJ_R[re{0nTֳِJ)iDsT6*Ջƙ.6&n0mm8rTq9MWRFN-$nV$!Y`KZ&${8X2}3zw9RRZMUiDQ{35#u/4~6u6`
++`>qbnq?N;N\F-Ylr;f%tLi+rҠ\
RkhLH"hGv^+e$[G5&jfbԩSMV۷OTW\ꐈ.?0_889Ng]
kPnh	Z&B\owX&n?>gXwqKy6b#|"a6,`_ *ZB9VM36zw=	Ƀײ}"ܵ++ئw|b2
f}7dF2Gw~BX][͆:H+ȡC5'KMYp5En	W	Kx>hs+j+vn-UP*Fq>ISݵs7u!pIΙ+619V<?X5F;8kl4JF<j6gKű]S6ڱ۬ȯ())EschnO44'p`
\ހQP#&pdI&d=pPwJ1eQ-};'T+VSu0ˊt('xf_4	ޅ'ί	E7մ\[X1/X۹88)Ӧ‹.0Id[ǬSՕÆ]1beզ
+
+`PPFG
+WUl5R
+0|p
+C,ji\'^lԮvmeu#KA| %σy^2RyB޽&ՋNh9?2HnܴTMĠh+LE3edwܨcTEM5tKK)Xf즶L3˿/&eb_޽x'9&<)oB.Q]6j]YGc'V;@ˋq}a~SM$QF/-8+%QE(C1p#j=npUKT*+9~+-|+۶o
 .(bM:(zjM7j8?v ~^EpizbS8iid+2xXU2Um
c	o3(uw/JFfbTJF4Z8
+kѢ⩿??+V%,<_ھ,wޝ/^wI2^lYxE9ٌ滻mo4Eݱg֫+HucX5DǣX*+!5J!cpY.<ow+&ft;?n`\B#mGx2bqEz9]<=g+M+jP ܄}KDq90Fk0'0eگ
+ci[ؾ7+Ғ?y2V)gӼ4>ʒ'#BڏrȤU֙:?+V&lS,)$s.+KҒ@tpA}Dg+BEXtʀ%nSiAX5]lS"$"8#~̫EJ,ee/6"qD+$6ab,U&U	}z'3@{WŤůw*-ߢd]EO)p^C5%EΫ<QjJPRKm
S∾>MqTY W!P%!
+o9+J8iT*=qZ؀I$y%!R6Xnԉap!S){l8Sݽ(hVuc9Ä?97+5Fzj6i)8qELh@)'-H*'׭jAAePkFlI竖)UanfUGDRF֢>ة*^p.,a8滚o(%t
҃\+9zupIEH4Ge5N܉lZKG`df&NЁ7qOs	 t&q;]x)(+":'蠥GcAJWvf'.NQR.z\rwK'6HCݑE	ϝ<G:qZ$6hjVR<UmiC<a2n/V}ٹor{>f+2OdFUgb60|.C<udte
1\[ZiC11\Y5|(.Y߈FXyɃ*'h(^#U{
+^1"ng185OUGJFHy;b8/8Yq)=J@+@b=k쳵	_:[S<8E|]Pr}+q`:v6Q'[+IYHSM)>Qu3+MhDI` !~AB C@I0^6BVI۵ky8vl/I~ovvH׾<s=9/OT+QLathbE"eIQb{0+'	PLr)u(#`5݃
¶6zR04cDa+?~?l1rO*P7pOCxc
Sّ)@WᶣM~~#+,G3cmQL~E
+[ Z':w䵭N踧+_}Џb#(z;'HP{Zjq5XU+ս<lXp?4_ؙY#0+ke"Kd:Dflv]b7_ƣYMU+?x!U$0|Q[PPh{VSaoGjT*;aa0B<_ͳgopyPHU~
+O=]RK<fv??}*.ߍnJhvzkPgřy%^ZRsi+DZx;yn#+&
+aUySh..LՅR/\w'A,kc3bwQ ΍w|6ϬN=Ћ݉|_<>k/}>wɏw)%=	'VF[`zBV1)Gdvz.Ūp4=ƢX`&$91.kԅe8.FZ}Iåˉ_>Lh`.׍Zo\JC(sA>=&0~)>m؇֞$	½w™eYɘYH{nצ6oG/FӍ×2k1ΨD
+a?oݹvoq	Xsne:b|ՈHe15Xlώlx#ngnv47D0:49O(׸IxC<PQZ'bXϸC(ғ}ƽ$eÍqwזLB:+0>Ft]+1nE1aWmA߿[>I.9oI'01rgKӔ]>cW`yv=pn-W\ No newline at end of file



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201211262348.qAQNm4w1085047>