This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

optimization problem in g++ snapshot 2.97-2000103


Dear developers,

I think there's something wrong with the optimization step of g++:
The C++-program

  #include <iostream>
  #include <vector>
  #include <algorithm>

  struct Data
  {
    int x[2], y;
    Data ( int i ) { x[0]=i; x[1]=0; y=0; }
  };

  bool operator == ( const Data &d1, const Data &d2 )
  {
    for ( int i=0; i<2; ++i )
      if (d1.x[i]!=d2.x[i]) return false;
    return d1.y==d2.y;
  }

  int main()
  {
    vector<Data> DataList;
    DataList.reserve(8);

    for ( int j=0; j<2; ++j )
      for ( int i=0; i<4; ++i )
      {
        Data d(i);
        if (find(DataList.begin(),DataList.end(),d)==DataList.end())
          DataList.push_back(d);
      }

    cout << "Size of list: " << DataList.size() << "\nElements:";
    for ( int i=0; i<DataList.size(); i++ )
      cout << " " << DataList[i].x[0];
    cout << endl;
    return 0;
  }


should generate the output

  Size of list: 4
  Elements: 0 1 2 3

(it indeed does, if compiled without optimization).
However, if compiled using

  g++ -O1 bug.cpp

the ouput reads:

  Size of list: 8
  Elements: 0 1 2 3 0 1 2 3


Some information on my compiler and computer system:

  Reading specs from /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.97/specs
  Configured with: 
  gcc version 2.97 20001030 (experimental)

  SuSE Linux 6.0, running kernel 2.2.12 with SMP enabled
  on a Gigabyte dual Pentium II board (233 MHz)

Attached you will find the preprocessed file generated with

  g++ -E -O1 -g bug.cpp

I hope that helps finding the bug!
With best regards,
Volker Reichelt

 ------------------------------------------------------------------------------

   Volker Reichelt
   Lehrstuhl fuer Numerische Mathematik
     (chair for numerical mathematics)
   RWTH Aachen
   Templergraben 55
   D-52056 Aachen
   Germany

   Tel: (+49) 241/807067, Fax: (+49) 241/8888349
   email: reichelt@igpm.rwth-aachen.de
   http://www.igpm.rwth-aachen.de/reichelt

 ------------------------------------------------------------------------------

BZh91AY&SYj)_P`x>v*چP:$	!oWOm*ޝ{ǻuxr{`&Z܃ y{-S\{Pw{xzj7l>ڥjT3TȠI%H$}Oe䛾o^ǹAo{c}=}^GaU5ۚg^]^}`ml_Z>s9T9`/fԮ׹.g{Ukӛ%4wj-`#nݗvym{E6oyT]u_}Ϻk{_/[syϭ>QxN7ێ;׶;ʘk[lRw@

/{̓1륝e۶u5<
t}ۣwwety[1mUt	ےZ	CAjzĚmMA=D2yOꞣQ4z~HJ~)=OS4hA $$!	#M24I&z{&djdOR4hMA	(h<̚h@C4F4=@4T@	M44M4
I5?QL5O@0
MeMM<4hhH?D	$f"P
D
!1*$,A2!BT"А	oqqm8ޕ
MB4R:y|
Icv$
N1tyP|}ЃOtAHJh(MBP%
H%Qǐx2Q{mRO\E:knhy	%ǘD]:[^b3ul:
\VQ"`/ylfbIbQYw
BB&  "

ѬGAn^DAXXt:)VHg[U˖Ņ5k1TWc8=>N#Ǟ2
*MY)qXܑ=?Æ:DDMkhH1(ɤ	2}+K#
*h*tS08c!UAEHCC*Ft_JHac?Lm'S115DCI`{1SwTSbW9+lb,b(ccbDb](e)!hf-4AhűMnM2]4E^[ll"x|x1DKzF*h|ʐ<}=קHX U(̀:œI],NccL"tSx"$[cl-\CKV[Bж,C(_/8!eE)TYjR86[q#7<dߣLρq"."ш"#q<<Bx<%:!!ܢb*f1zCG\ݾ>EDxZmGzEflCsJ1GFPJ)3(~<>;?[9xUxSUa+UPUĔ8@EA{UAlU5KWG:җ]?F>`%\`6AwOTcib(f\D
/,Vn-<qs`< #cFVL*Rj6rDo Ά&﯏XO11ݨNxpm	 )%8&Z(XsRP0cDm&Lqɰcqb*b˲<b(DSS:<EF0X7w1ɡ")\]8hn;<G7%44Jtx_/O@rضWk;`!%.dݩRUTRʶ)؂-SX\Q"T6lh`kᱱhqE1>߿ݓߥE5@R?H4,BTHD11USH4h6'b_~&N{|MlbL֊CY96mUm6
}wkaӬƌڵFUXi.	$~ E{`qB!&XW<"HR;uhZT*6QgZ6V
64c%)T(4:[Ѩi()A*)Fa8*6"	JY["mMy:g*6Ȧ
"0md`6bRIPILJ+AH%4Ѕ4DIE554%#FX5A[EUǞy뫁	"_=pia~h{as
hLق"&*)5@")hJZ(n1vlш
|<QЇN⽲S~PTCԈ`C
iO D(U*J@hD!e&E "WRth@$ШB)@(R $T*IQ%fv$vb)/iyղuK>Pf
2&G`{\ȇkg+a1O_/]t*.pMm}yk3֙iF^\|cy/zki+$0Sj浙zF-|Ȗ
4ܜz.>9֯'|oKwVS7g9fyu-+Eb-e
Om֮V9|d.>C|-  6PUP_'C7
A#izDN1ë?`u*~¢D)ind̥n4r+ҩUu?X%c	WM߸5ڟ#'w=8|K6;PinUˉc`3ͫK#)奴wŸFtyrõ
"`P3SETOͲq%N
	i/]cGAR)89Hq{-7RGDg`|MRd\UI/k>MۍS|'8-P۰lJ2	S<!3Ov\1mûLeICoEs׿sdonA3mEǛ&"T-L1A]jVOk>Y~9GDANvnZzK|)]5+̽߯ߧO_QzVi'GY+auCc^HJd``d%xםNxI#A:,2߼*/eXsUdޭܘhcq&i'w:'O=Ӄ 6P"%(>u矀lRiN;U&!idq~ئW8lS۪V2"<	}f "D(;M
tЃFb
GqqvaUK%y<vwN=E`ܞʬofϱ8cǏ"pg3Dz,*J?CMQ[ʸN
sNZtw){Kǿ\Cwh7t{
?N7FLw.?w5Уb#)g;cS]l¡Cz\tEDօhi:נ9)#uaB<~L:T-pҧX^HU
vUEDRX(

Y
"
I˂D9㼲Bipƍ2c*0Ap*571=GxyҶƇ3~ 4Qm:%OqJIB0Lv0ꆇcSc#$u-Rt	DZu7
03)!_c&{|!1:˗|y_[vѽ%_H}UUZ==tusW9Wֆ$KJ$Xb̿*pbX	}*VXdu+4?  Gs~9au:'V|'V"
P\ͧ1sT[щA@r3y~0u6m0@%g!e<">*o22Sߊq	:>ګVS9M:HSJ tSتeG
|x8]H3IP7
U	eɍ"$7sL 2~@eYqhaD4`^`O{C13vr{Po;;))z%dϫg	.J>P?bڀ
	`d!"Ѫ,ZXd-˟<Ӄy'Tbɚk*TD׼hp+=C|Q￸r!_}/az9Ad<CJ2 0`@TR5aqWMMF~imgKDV04</>Z3ߛFI%CwNj:"X*E)d(>l8yC(h4C7kӂ4I1w_.`늀U,w,YQ4é^}z+LTIБUdl6

Z.*esđr&Y󟟗pCfd)%VmO
^
!:Yš@חGѱjNqUSs&$PedrY0tjK3RIҐbV1+iVg*XLr.l1#xt<|]d$TBbᩦ/dD5f&&mX5p.i%ZiT!

)
;B4lj؞fp1Ģ^lICdD!bImMcMԸDKͦ .
͹M(wP!YV*YH3gwS54m~=[)BEO2$)i$4c'aѷ'2J<6O#I̢n6ץHVb6pH`nva`}8Q|Ϟu4W:ѕ;&''+6۞iS	4Y/u;:h1x:w
 !1fikpE*	Kijo؝/ٛ5:"BX rv}sKQF
)6P:!(q3~IYj(bEDK"#rM텣F2EI>2i+EdUhdXN{bxl')p"y}i_W=zKJ*Mc_n*FzI-r>屁`r \HAqL5 I*O??(ҽ۷SJrdl|[pY4jWảU3l^)vÏv<N96`3gt
%	peËEeɕ	E$7J圊=(8=R5%,A,%H҂CgTKQHt
[sP9L$y״u"&IȪSvL
<v4s,Ar\(HԎd~ȵPw1hfg	{8m3mƍ=g3ݧc؜D6=,{E
̰T`w GzngBB剶$f@z0b3P/РaDwjC7Mהonji*-N<X:<*V}ϻ;4G#\Z]ih&B!2H	fނ"|p&82qsjõMceH;9mIb>RƞL(xL/櫎sUk$6"c\GP7iK%b$o"Es.3b8Cr9Ul.kXG`/JXV~^Nnl
lv)MyэCb&1e2da:MKSpY2u
4jp6ֺMdʝX-r4c12 qgqM_[,IFW$hccƠ0?"d6WL`-ǘg
ȥcmv5X4;(ǫ9.X/Zf	`P)40"XC	sdY
S^mPCR9	:!F^2x"^k/`nzVGn떘KE{Uʂ{ti(aI/[e,p.CW³ԩ<iĔ^Ym`!Ai@ݦ{,E(
Llk\>~G};p0)@%U[b/||`z>M,63UGqxZ^5qDhei+2eŒKUENLjBۃ2YSjh%V-^IUzM-C:`o<Si8j̝ɲWGzido
HF!lD>\70ݦUwqg0,pm@qM/_$˞$4
	E8Ma5H3	W5HJ)‚	 c[I&
$|/z$PbbXH)öGW#ZվF/Z(ÄB7ga-y+=71K8	i'0`%Wp+b]43r- ccM#R(S*4'@2W@Wbmu“&҆+[SwlYh2T
LVeIy
SP\UQ98u17&WĮ11n~G)B	+J1D偠%|!:HHܾ\9DÐeH%^B3hf'װ/اck4|Ua}4^b~5C@4F	QHCuܖ=agT;"p@eBi|&IO2*`by7U&3rAoqG	𸀑bg+㮏;f/0bV'Wl_2x_~=m#,bl:d.04 ,ll);s1WJ=ӎshTr<D!QŒPGa	
3ހx_fb֓!B*oe
mDTזm'::o(uNgiEd4ѓ"j+}YlU1&eEfܵgiE*\4'8KüF&79'&1yqx1Nkrɘ6UӺjLbƽ>̛ր8 [g%Ra:@͉GȧI6)c	b `"bJ)"?jM	_N"4@(xP߉(TD
SzBSYs'},Q1LTAMHCKDAi	PL*3t=̨9DJ"*jH$u*bW-h
/+M!4TĐAM
P-A	(*#qwxt
R%"	?FDL{?^|q~I^z4&`v?)j~2#C(d^4%i
%*.A >/cRH>=6ÿC0lbvK]B97	0|yN|͈m4jT鹋ZYmp9?f9ӓEd#~vjp'=9v_C_c^*x16U*6uC E<!ii-LD8M/߶ȩvD۪aGE%w~.$b{Z}ogC{1RPvΪOLֶ\0|H0 ")gX~˙þ%_[ȟc~.kNh}5m`t	~5H6j[~4r$ݓM}TD(]v_Z ,JbV䲔:FK"~6fY816'tMH.Nsj@ێqy룆_˱jVHS'›n9fXq؆Ԡ!c{hPV"T_AXUCvt@m:O&˶?Z\>$<nK!B Ebcd.We$gkϸ'E#XUKC+2%o'jceyH,ep%\sGgTaG	zCXz3cC]%kԅ|W#b(QxP34BU0#аԿ[+Wu\RڠJ#Ru4Ġ`цmg04h	 {#R"e\ץoI`т@WEwY1C͟o2mUIVC;N=Tj=X_#{OѲf@-PeTmiQ*Hh%v`Hl|9"s=<Jd)JXC&zə%b6)
W
\U<:է
=Ŧ%L#N10gWoᆴ1(U 4E3Iz2ҩ,$&jgeX L%@
3c)Y"%!HaH;	pPVЬwB$;I4/*71lXl]Zv{|<5l]Zfw0*Z6}pmFPƮ+.
+uڻKH[_dߧVD;y5P^SٓgnǁZwl
ߞ||xPsޕ{2̜8d
B"#T5>xd XDMrה'Xu|0Q16DwG{僚*tp9WSB[f/=t$8
7y:ոp 0J͐bJxM9B9>YREzK2Rmz$A=pW	Y҅9+RY.XAh ~3k9O$Z}Ez;_H!e[H@_j2}_c|Ո
s`~P=~$^]`!|߱i?Ë&#DDTqX%ku=gJ3.uvVroSZ{5
5Ts-9F8w|y`X#՜7'ط{D t vFEL^ZVPiq~1H߸&a0Dƪ>Tg	FŸkPF& \6p	74*i(AHxdb]mpaq#5@IHKxay8[\KxKT;0M
Uhڥ76JB/DsTqh@I&㫰١gLM'xPBWd6w8%|$78=eFUwm\}6#u
?Á2<psgI?(,vo6&ݟ}/}}i(ci%r%6-~<o\vgJ=lrRQp:-:њ>7ŷTYA8d>]C>\z܍HsJe,NFשXGZ<e#.LZ`|U&ܼ
EҔAZˮ;w7ܬII.ߝ5EU<܎ɑ,#ԤY	˺hJ?j{sD$:ؤPeX#"UT4_v(~	[Z9;䮆:iRf$\Ր&7ٚ5/ոDI<" +lGʄ#0()\z])8w[1g9՞^XIe“Z=#)gUMNC`zJ[uW)>o/fC$1|VSuzXXYqfՖg]8Ϻ\]Ţ3&ev2Q9҄-s=A9:FXؓXF
UlW&5)iW	|CvI;,B<aW>yz9YL00skeilA$3|W㕉Z(Ug6;8^](Xhc.:;v_l
.S/c9yg–-2q̳y~Ń0>lRTC1DV?zWۻm	LN4̔bn+k"64.S=jR%4ʾ]one@iM2LE+3mW
\q[9V59i6H0tN߆1uoѶك#J
8|O=AźQN^V>r{47rtI﻽w:yaRό5y@QIƼ6<|&W<jGf
nit>{0{?h~c08k?AAVüj[N($L
8YUc5̸#9Ff@x(fѣI_,SŪK*)׶F-wS/ri:nMIYT0 ÌMg&1Bջq9b+%Msf!aY燠fqJ`i">R&>5qd<4g;+aŒB&6|,e%6LEDDL{
jVA"B` 0(je*)eI
* ml*Q+4VH x4t/2=6RD}(~hdwd)~g!9E~`M hiQ5
&eZɊc'Qhܚ)TX^]P}=(?~GVE
V~K0l?ٍ4EGdDO]!ՓbK
k^J4ۋ[ã|n/[يF~NCo눭d<>XX+8=푃0VuuBUw6oh݄UTlF30fUYtLȭc"T%MwjsV:{kK)<
%\\.h5J:X*dh:*o >X[w)ԡ\gFlх4$bҙ8!gy	;iz _/9R,]	U[/W3
qO]b4\}`:̆fx<	EXً:Ɇ#X=SN6<	Y!$AY
	@G0e:ă#$GPfmp 9q.~dtmv1Y:ؿdxIIG0Sb{qg#A!IOPqtd+(@
%ao+ѽ(ѓRx2Y
)<X+aD$&$eQb.(Q8yh;PSJY=}gw>Ib9ރKEˇtv:Q|R
XXK)ITf#:ӗov%w9=tu^I'``  C
/
ҟH8;#mTui=,⃪ `HclpD
v{Lur@ģtT$j ej96-k&s~,/bKf]͟L&FGܣUT@wAxZFTro79%zcP	b~a֙ÒDI=BO<
\)|XJv@3+A&H#i-/۷oZ4xe$-S[GK瓁XY[vmH霪/I9
XvT>oE~.fYwDH09_+K	,<'&7c熽)nPo i$
	7rcgs,YH7ۅ9@ȌJ/>u$1S[2.\]ĝÆ;Z14 LOUZt<7I?yP5ǢoRJ_BۥUk_m7V͌a[H,q}ʡ-+b~
6xBA}ЙsSd
Ux.Fjhy?<'{{/>k㿥ms2\H['߫>=]gq^YCn>ygݷӭ6d7i!kMs،Uy+W];nxqN^cһāRDR=!/Q.i&O(H~ԌԀTK B@"<$a%`(RmP$'*,mM|a-wbʟ
]F?
:xD)*K⎌pJsh"'b^;\qdM$
aBKeiQ_aI锵?oO?\ywYTߎ a^qT?x7H[?\1f:*YY'V24S	fHeiٶ̛q2eݎ,гY@5S$	0RBfT>Bz~'+a)<o;q~Yp~y11,|ɬY:F3OI3Y>.笎SF<VoR@ɊaJ߹ʋe81KM& 氐2C1Up^1Njej#K卦'(T|;ǀy9t,|=.X|楟e=UbdTLG9~r3z
(
.qA^18nj6#ݶ~s
W^kzG<ۇ]gm+\اN͓0wࡈ7uqt߼x}n8ҡ$I;^*:gEqҖXp>S8^5ﵿN;92qC{|	ѽWsxH#`-{Mݙuu478usӲ89PLiHh<'Rk?DDQ,L1T~<Qfů`u XCqqz;}XM"6?orq-eYFhuû
&5_k,agѐY?3Ug`d?k{e$у>|ˏkyM{ji#?"Zl?ʱãFFeh[sG^Ko#
feGaz
L#g݊t\tanFਜ~>&E:x.Nf_dvgW5|_kʦ/6U?D҉~`~jum2;>{'kk*%?^m[I^/X)Q
"
Ci
~`̉$8Wp݂]h5',d$2M695GȂlk|G{w! ' =2F(EʈxWNW`&!?VjWba*}')#,BH`C(@W'q/fPq51GSGb\ktiWg
+Zxas܁}#
HJEwW,p<,[cƛe]Q"QGSz?$bqځ9!swh0UhO,16 {cQHP>$!>E"N|Bތh4b`Lv&&E<!17#yr	TT L`L7TN7FnlrW$:|oJU߷3r*̆IF
#Нg_bd1*D%˚S:K T%D ~WڇGHܭWӤ0LT>E	KɀNr{W
/Ef3cIeVGCJ~&
AՙJEMuR>2}Z6U[ªĔTE-kSi<-rdBdhwm[׉73
%C$G͠+M+2
k<2Qc,g>c܅7\}V+(_'?.`6
1zjDb;"CakZZl(?}Vp?e	 }7 }ܞѭzC=i[4i&Bm8M \r-t\}>:n$3EƸ7bpA\؜_KɩR5ƹ8T,6{DFj:#s>3xy^Qv)͇	?_;Rּtٷ6miy-㋚'>?L7	…)0@xM)_j)-wg}ތ@%C0
b6X.!E<
="R|x^QU
US^~AXy
RF'cI	׺Jf*;gf*_X0:jUo18EhU&ʁlg9&uY%.l`"%UHV <g>=ʫPq*aY`+K«{+0c0#j*:[7G9O<F߬=xUUQ51=MFwNS⼿?#{h^r}%#	8OQ-KUcGoJIM%,16M$!%
!*ޕܑ%ZMB}whsã{vDjHM軜pi^"MT'_5y]g5hi`}feJI)q[&\Y[lN=ˎIi@H4 +TLU:+Y5YV/b֍3~(6:9dv&%f5P	(ġ1ۇMR.Π1l6XZBlqP"}2ݮKߙo-=gB؟},1{]ԉpW}ǡ`4,#.etf<b;!,	$}
!-fz#:҈H!Kl*U6Enqf,+pq&gFҔt&hR)	0&Yw3B	0$6>WB7|?U(ВK!%|
S8/E~kqсaw7m"Yѩ:=TXf4_t[XMyɽNԏd_ˢ?8H	&T"jcMA\]{lÿ!\v	k*&̭`s|$*b#8w#`!Ӈ{)[
7sfw<!B,9FXQ8/&0Ct	$!6B>
H1
h.7
'
`}2*&4c
°;6<ƍ\]8f`6;S$S!6Έ`Ľه!"5M\'mcDh+LQMD4DGxX#ٿ>==)z3w<tnSECcy'ZN#qÉ1TaO|(h"XLJc8-xq?8吇h#=q灈MSگ`dgc%}mpVcπ7xikxoSzDRd݈܇
bSWكZd7	Ke1βc;CLa6	rdA@jh38_E	Z,}
Be$b%Sf;Ꝓ*5.DDt\
.{>9uqEJ]&ρ1"{Z;<˘1D#ÅQ Og{2=ueN
E0QMsF$)r"5i
$S	q;9[]H9ftD،Fpor;JqS˄,2b:0.&9mXIlh8ЏayI
w\g>+4  MCW<3,'
iFW9E(?SοAB}ܠ='˸'3H84mRBm	n*WGhq*rUpcԪ‹31~:?>d׳CtK0-{/Hmjo;<w!&"0k~/~=ٌg~*<a"~G!eEFQQ/~VK.?at3Ǖ>VkIɭ@kYW|?<zx,4F-ë\(2/ţQBKPM% \egc؈b7I@:ܚ43C@x
 F|Oi}m~n#0{Z@^QcI],`ز'>R#хsh:Bo&%&~%568\`ժNUI|6Ԏ{Ef5iMgīMT>mgX}lՑ6cFAE-
Q¦Z(  ==ǰU)$dg%Hx
MO^2p'#΍B(}ߏƷVF>zt{+sO+~,]ֱ:s
ҸїHq,#F`j
MP sbTUGa?냥g("g)#¢<By	lpƆ	M,l)z0c8)k#Qdj']mV2K
,vwVr,pQ"I4K%XK0G>T/G3Ӣ֍U'o۱c!N˗,hБB`!?yQ~8߱f>2;A\crWd@64_G@ωI̭Y2juu}_6\0N_?8gOHL33bi*(H6c$c>{s=>^I#Ja~3y@F<~_;Pz|zV6bi]/oq+Ga (@uh_cv~|GPX/w#dH8<$/2@$H!%$RTA&$i>^(Jga kgI'A}	r@F_(| %HL
xHS#v"$FT?%	H$8''4"Z-IUT[!coC; uYI?pFAs/૚>% >F#Y; "HZV`bI"K#%n8TV9keN9R~J׮JًvS;mFl-ueyK(ŐM
Ҳ,'c
]ȭ:16[&D^Ң*U)/ƴ53Lm50)*,P*Gf 3LE1T	
V$J"PW#ݣK.LPpn$C		#ı-,Ēb&%b1΄qN&$ɘIS-jTilZU]<`"Ua)%M'f c[j LIA>%7!("=dx70џێ%!^D@T)Vȳƞ&
+ ʷB%T<@XO+DV'
,ڒeXlN1@Q^\Cf"ϣ#S'	22D[,JM0<R8ds踧Vy?[6$ՎY©UTT1Q5`5	bRy:KRaRkUaM#Zpu_`QBM$R2EILM4a51J)>Rޚb& o'X1DE8$?7#e$BK-2U*TrWr\;	і*#:bU$!,ump
0i\=#i,G4ߨc'a&oOCKJ~( |DfO|Bt%.	$PIUD5,ȩׂ=Rd63SAUP:Itf)ZHێB5hA!,Q/cERcJ9]T*8MDS	\1"4D)pQ,3;:%8a"KU9~+v'YrJ>QYWeJWlRZq	%K&0IAI)`g09Ш^@'"J1iZJ?
")Xd%!HI&FZ'! A1~"\/?rc!C/*$p$eF@H9#ȏ7F"TNvGy!ܺw2Z(*8ŊU{t;g8ÚŧHwT_W:q
<ti;Uwcqc,R1 VW
rQ
$ɖ:``!-ù$ncTʂK$G2qSWJ[6ԇ%cj"HQإm&
(s}&{tߞ\.2i9(4:Gr'ˡn0&sb *+oԺ7aCt$I;a`ة扵a0UP$Ic	KFBA-'P D҄J@C(( o :GmIhaٔ8	myIS޸֞%5zgss⸦.fZ35sRwPp|uڄd-;&*eVZSDY6t#CN%&S(qUUUY߿蓠c#)1AKR$3,ΤƔi!6vU!	"C%Q!c2<>E;ߏ6ѓO`mDਉ8 ㍐B
4%D#$AHJ,J81(q# (P@8i4a7@Tu?=}$QWՓ=u8DC P\B;bSrMry5ː܄E>$CJ%$+FO
L/>GË&"̠>`WBq	1TLˆ;9d̊jD1:>Y|$n0U+LL2VX1- t;:LKY&ݽDzTyP@Q5U-)`ê>V5oUˋ#"u%dTjI6Vڊ2W3<ayhN}nx$xHD*9ED3#ȏ~ɕ&7d|LH<!ɮ[=c2Yp[*_F1fXy,G{|EXͨݮb2	!1U5bXOGעFʔ@:	(H	RptʱgtB@EUd>Wޯ_gqleaG6\HJTxg |MÞ|ptT2S5Fe%S2,Zs_ˡvM˭RmƒhiC%rJLޚliIi_)kWJ|VXiawy+X>*$UPr}ы N'.aGcJI<+?
${LJVR`#
_"CMm
I0ƒ)(>w;Cr0!|3rydNYdY	6< #AM
C1F1|;*D54p;DYuN!_s0ebU3r-G܋4eBDϊ3!U	WaV&qf3~;
7u&鎼#UIO$_"a<.ENj8P?px"%T1wN	dBLi>$#r$o˶ݬ׏4o,`_ekd|o|/R
*[MR~'*#@G<,D)Ay҄8O%U܂A$b*R%:=K) ™pp'XITr}lFD#q@yJI$MW#dI'YE$?4$paQ0(f j:"8:'%;d@^P]r=SCxpB=u6_XTAjN
V6%$J\e&.PmpW2;2]2a]"(&"HbQ	J"T	!HX"eT@Xh);LF1b'p'M]F}:r"~s+TUPYW-]!eQ4ztF[,ō>N>fo_.2IAc" 4N"BJAߪ5.&x#G{aDH^ccDA)WDyq"/yrn0ALt#{PƓdI.~d	`ÎxR&HaĮmʊn׵j|#Q,Ff`}*aZT`uBe@蚷#CRSl,aߋ
=y1vHRt<c4k ԑ(T!ڸD8%~ƵbOIYX!@?ˆ]>s\HYd%Ez̉$/^ټ&ןCPOw:!!&Tb2ҿ˃B`ÿg??ۼ4U! KNna48ݿp'G?,bBHe=ݻLBRD/Li
a9%1()mR)e 0 aHH bTD4+ g(h`%2:
%&b&'CI`(BRc	PDb0Um&RpTW(<'>x:*41R'g}LBbB}ׂb7ر1ܝ7s32	k<!HX}bʫ<2UEdsE^H:dM?nDM/.X_cG-aY=id±UĐ֪6`YQ㌀c߯{
ϖ۵GxW|pM?*p.y#bdq9UDUIQ<sn1OUHDĐmL0KxBDig,it"0nL||,wՋRKA0F&2ٸ!1X˱%	N;:3~^&Fb$Nx9q:pu_;B^y:}q;yQ8:t:١4`S>9V!
ӢZ a
	TĚtI
Ad„zShFAi7˺31M)$ h(6E Hpᡉ13nIAL
"Ź\DœyT	X4&㲵AUqj<<3au	9!a;yuZ'GI	X">%)iIrG߳=:8ds9F*T,
@5zn%N=}6ޒHH`,6 rLKSR5ɡ5]R !t5MD50LDgsМ\8oIbLF:'4<
@)¢,'J%M;Ke Mf;XT-Ğ;LWx1:e,#3ybꨠj'j'1LdLqS,R\&h`Ɨ* ԋ9Tz&GGRtXGAdlF,i@C*WI4j-߅Ѷκi3ٳ[II2@dtB\l, #]cs!ԒL8t	z:+ڑU܆
n1!˨pUZ!(YlC`醈xJL	q4f6:V*F'1]4ӣ[7K"A(h,] 6͎ʜ'U JD(FpE_'0Tvf"R.dy<ݝ;׆M^X	;,..Л6#1#j%JQ@zL8V hv1}f"N[W,Uc<54")#8cɚwjLXT!RDQY}wrR; S;k8Z
㡨,,?=$"Vo	9vSVFZ;U˔p緣;oWRIQHYǃ>+X6-AbF8"b7M>FqQ݇_uJ'*Up @Ti*ЫH;M&zvk0.d$		-0]99GWi1D+ݱKdI"h"n
@
.#%41D$ДgMFlGT4,(T2(| A2bDRDU'E0jL&q;<)0pX
:"nאRu7TSU8fo:ݏ;PpJ`w`6DsqW@xIdc>w+ZE{Jā9
a^aig.)$CZPgC{'R97o!=.T~qe[jg~&̲O.@'M2r,eX&măS
>1S (ɌlD&8@}rYg${$-z>&#K~f2"豪zFqbY1)o>yϿ|#Z#.b,P`$EOO=|ן_28>DXF>CXSWH46sy
}C<ޏď0>25@4h3"!{}`9Ī	%a(	"94!	$DeYSH	C]<SD4$	xsQ?$	\g 	fgϡ`qo,UI$q!{H'YS D$D,OᙉbR
Z"
>5TE1!-L}'	AOEfEwai!QAZ450)Fj\CREq3h+8B$;y]d:cH{wۣGByymOe=zZ_zL:o<i׹'6!H@I UPΌ8}J!4XΓDCy%nˢ4-proXDঙI/l{7!vT}lDӿW"'7&~߿5ZC;4(XC;KJYT*G}c7eŊ[&x	R):򖌱,{H0t"g(EiD@47 UKs0m6|N!"]kNW{g;j71ͽ[jUJ1H0'nKQ>]댨&MY<i p_h;$	~10a@_08e	$ Q:.O;~$Rcc286x6_w!˴US"1#rF. "<P%K`iQ1\޼uElt0	h4'gpa@_t$yBO',ANS)yþ
rcbÅb`!`!t:)˲`9 
P>DP%!$ VT((xkPW?b`DxQNHsLOJxd?+{XX}XZ2MA]夒(?<D~,P̌Q0ڲą9$wAd>IG|}4"'DkY2YB6&xN#yvR.1>;vλ[Ǡ*aYPi4KP?jb#o9	7xHA0c8đdⱎ*)IucE?֍
E	Qh;L .Hg\%H.EDЕqNDĎ_~{ڢ[$;Xr7ͽaT4XM2$+9W|Te{MzfJ*dtӻtz$#cS\oHbgYԈ#d[cbO%N?-QCTڛAikֲZQIJ-~И%҄J3Km/CQ/yBAHDIDBZZ83g͉G9%~6AOIQ4TM$KT-(EHh;j#-x~}
E&ې
`X8hJ4jsR~Ծ D? q*40@"SF*}"?ΧmgY}~[<'䧄g{޴DOP>yc	('_sWSQBUr0H0ȣ #O@gE-iqⱇQVI^HG9:~/*B"w_0uGUTUUT$L"cØ~~0*vv	?UuXQ~V?T:4jL&>ʉC|IJBA0 J~1B`0}4
5Oh)UqÊ=1{cN9Hmʺ&@1Gf:jN8PM+z*Yp.OTPgp?
/j_,8QRXE[_
/w8%~^x<6_3!\dE2toe>$<*8fvq-ۆTFȣ*{}	:HzD$#Y	T
huE佉Ƒ1EL[ 9'<'Z|3Ɏ1&T(E`GFn+LeMaN0$|5!;jH™8Bw	 tf'QCto3
yȮ08*;"O'yOD>E=c={hu2{S<bl$MT;"%	I$`UH$B yZZYH
-4
~@!yw<~}~u憆P׻.$TkB(2xN 螳)ô+MFЎLK~ի')br<V¤]VθYjW(HV2+$[dͳc-grZR~4m+
g`q|CJޥNlni(o{=
	j͍NT';m"sg\kt6zPI~Cj"29I$Iy1"vY$wLL,LyNELJv(cq##<<RϦ{3CAbsfĄD<@BJH4RD'sZth'3jzF)Ԕb,+4/T$\d,Z1`Ɔ'?∎1&C/~y̷=*$n'D0~ؠH Amh(!4>>UId>JSb
5^za\Ck7vQQT݁+]+ڪ@3=$Ţձ٧
ȓrJgG/$Q"HBHPj!,!jYR$8pSi}،OC<X;ØਰQɸ5x Z8d/<%e#RH6ETvwITT?O媾^??| ^ʉ;,O4XT)V(fO6GJD$"xh EQ%+dir{ѵgo'ܵ:Sq
sTT&bᇥUG'ajh+*<a^1(AG@
P"ҨnC1.!:b
 M1`ĉ2HTҭp7#$;ۙK~tqumi*g
|ƧMGH<č"-lD4}G`Ѝ[H\'_SJn_<

-2jeQWS	Vi$
x0F"÷<!"o%eNGAM0L3*IBʢOv'btB_1:ƞS)iC:DD'H'āƎy*rR&Q$.aTI3#u$*HM>@9@qAh"۰SlD^dz	89p0$4v~9?i{(>ڨJ62Ot]
a9z_$Q%X$%@y|KqPO*tϙ	#d_:a8#)281웬yaʖ*4TkڕC&EN
ꮓL
zndyb8?5N*KbWu8Q5nQ<tԲnY2Ĉoxi5GdL9<N/# W%8:qU4읓I>8kiiu3(-D
&Ek@vP0UNjӰfn={L1$)R0*3dАX)nL E$B"dZSu_WQĸC>(p7`bL,A(~|?АtHp?1,Nī<ƌ'i>JSLKf$~1\.HHlnĎJ.GEsic\{F0,
>WW$iN3VLz8ɽtj@i Ȕ2BS4%-0}V"J2b8>AHh@~x=p	ÓW$JlTB78qG|($"AX8>N9*|dfsMDU*)V "HHP 		XH4hdB$B "B	d"$	H$R!<aFH9ˍzLA/GEyhC3Cd&{^,V0D31HDpf
-ɇB~ښu3 „D܆E0AY(0?iLjLI0%IЋ@P@į<9 N|T-3;HtQ4PUZs0%O@9#AB)WPD$R14%,
MDG,	(DLIA#/Cr7OXy d]}ķf8I
ea'dD}(3@"ܻUUn]0?oF3P@č@Q9ddBNJGMor$b*YR՟X TvҀ*:..,X)k3Q/ڠ8"h":L?ق	D)=bԨU+ig3O)ʲDW?lPD+ğ< ձELd+FHK8"Y`6q(DA])ZX8GĈ"yzɸL"""
)SOHA7=K~krwcÃ4CB-_B MwSCQ:mѐ%Q"R FhR	EIF
VA R@VJX,.S1."mNO$ںI^x'q
&4H@=F,R H"TȚP1 L2\8
U8@@}'GI(ʡ
!)ݸ/M3h>C5_s?, S0B9>ʅyE4҇"dK;El9Ēr'o8"v˸'}9eyg=^Ͻ/`Նخ6t,\IR\enk'Ϸ^з	sXB&k9W)N2OYM	aIh$}s WB>t%@E-UU^Hm3"sr},ƅk,-6Z3ɩz~uCn2"b ,$n^	H)*HD?'gayʷdLj-؀@!&{-:8$	hhW=hyY.@"4-5]6=_4u1ЀI"{k(|ŗ2ğz8d!XR"	*xxH_V+F"lf$MxzxaSH;Ko5*?bq<QXƥ#dYhЖ) `(A&{9`̐0b(X<'gjH ,E	:heE4׼`/@L I"T q211V8 T	`B) aeH	$"RJ	#	$" $a&	 " (f`a PIRP0Q!H%(D(0LC4%
Q,9p. &bh)"$
P""`R!I b" P
V"Fi""&(d
QbB!""H`RZ<)x;.!Z
XTq45,4\DbhraH;Tu$P &DD@`tli/&KUeXjhb~X8^rv{8?!ٔ=_Vky*tc-RDPUE5Xk1EAATUWؿc+?ǞwN3
QX8[gvdYd_?njRa(\Ѧ$:Re> B.UE>uwga\.
=
h,sI9ĝ?fqOt}|ν'tr\ZUS
\/[q<U8R4b
fh69ܾW*B@UTBULް4tapZvVnc6V-bՖ\Mk4I1au:\F)/>ؘ2`pi` i4$X,HI0,TDA)0@}
$!u̱u$'cȂClac~Oؠ$χD%<yFhJLthǾz<0PƇ0nSk
S1wIekCU/qi)0
2/qpbfaLV	>x/9G
o#Py dĝcB74qAE}Ő`b
|nōhF (o%IMx$T%mHD0+J{aNfs'rU@oɰlPJh9qY:`Ω)|oq,IMKt۟fyFt'(()
Z)iE?v0}9U<P&-IRBXqѕRFTz*DҤQUn0H|2`P
"*ݑ:+aLp͠90ي_VT8	E%B%(`o~%>K!X::ny,Ճ녫ZG,*[mՄW\g]cVݭY%PLu)9VRMW	cMQĆpQDq,bJ#r׻N5ʼn(Z+K%;NSUY28H#9)ć	'<4J4U+lKLN\MilNUJ\H=NU%kFNx{w87@>G)2`=uD
DT)nm^c}rHۏ"K.`@(/<#f
;N'IH:BL;9OW]Z6ZGj]r!ܔE<c,>FiϿ`vSJ"j*i(=xxM!AϔޕPQT6pIhyu;0?d#Š0-
Mүv()"Ud(bfD`RIUH% B{GmNOMh6dNY?qɭɴ1''~ɘ,DGbBtC@WBlJJrC.)56SUCySP8+#!"
E<ȘA訐X8.U8(d:o[t6V@ąQ5,E)HRRB%)$ݝ8\|h*$J!{"<C+J)",¡!G$Ngl}"h!>|')DJڸΧ4"PDE Sz$U(ZMĺWOٻ&3=FQlUTYeŃ+뜒sW2AE@~uPpSڂ/pCDS$U$TDQFBRE01Q fmwGU3̑Ys&]آHB_(/46ga6jsUS"セ?ABR(Ie9ƓtJҫVF\֟!:Op
H;_W,C0Nw>(}:Q7DLDehaX+q.J{^C{#G'54CKE^@[ܜ'ʿゕPp^;ܝ`̡`Gu'Sk4=$@ӈQ:X "&H 	"H:U11EAE#ACiưQ@HΓCsʮy,x-59y#&:ID$0g! #Bߥv3_qI[ԙ$
~RI9!w/8t*ώ2gO5P*k'Ĥ`$BR
iN%BgcfN/I]V9ȋaQ5ŠSǣv|N O
	(d1,q1)N.ЪwHa)֛ qvr$ċ!X(资tRy2>!
@y2ROQ"O(@:WIJiB B*"! % "a"")!"*H
") b
X)*R"Hik͌!
;Gq+'0'S@bmTx%`JKߺABAN"a+R2vCI4A8*#U5A.NNt1 bAIF;hk:-J=rXD@M(DĴ!K@PbN=4!ˠ(a`R`F~H9V_+e~MDF]BAG

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]