ELF>`g@,@8 @@@@EEPPPSSB+B+B+xh,,,=+=+=+ B+B+B+Ptd(((UUQtdRtdB+B+B+X}X}/lib64/ld-linux-x86-64.so.2% rI)SJgRo!yvzQu8\`ef_FYmk}XsPc?3t,H-a~]j{l[|L^V"x$bw+.=<@  *5 24(1B >KN;:&G6 DZ9TCOqhA7n0WdMpEU'i/#R^2$3|<N>Ź@ĉ9L> >[~juݣkfUaem`)M6 *:<# Fo ]1f+v pFgl{!#}4U2Sv)~   dqTh=\MF2VwgpL>X:7Z(xG*, iNc-[(8,K @6c, #P@,Q!@,``,B xP,D 7YH,n 0'R!@,@0," `v ,_ITM_deregisterTMCloneTable__gmon_start___ITM_registerTMCloneTabledlclosedlsymdlopendlerrorgetcfflushstrcpyvasprintffnmatchreaddirsetlocaletowlowerfopenstrncmpposix_spawn_file_actions_addcloseoptindstrrchrpipeperrorposix_spawnattr_initclosedirftellstrncpy__lxstatunlinkputcharreallocabortstdin_exitvsprintfmemchrstrpbrkkillstrdupchmodsbrk__assert_failmkstemprewindstrtolisattymmapfeofposix_spawnattr_destroyfgetsposix_spawnattr_setflagscallocmsyncstrlentmpfileposix_spawn_file_actions_initmemsetglobstrstrstrcspn__errno_locationfseekmemcmpgetpagesizevsnprintfctimestdoutfputcfseeko64getrusagefputsposix_spawn_file_actions_destroystrnlenlseekmemcpyfclosestrtoulmallocstrcatumaskstrcasecmpftello64realpathremovegetgidopendir__ctype_b_locgetenvsscanf_obstack_allocated_poptargstderrmunmap_obstack_begin_1wait4_obstack_newchunkposix_spawn_file_actions_adddup2getuidsetrlimitgetopt_longstrncasecmp__fxstatstrtoullqsort_rfileno_obstack_memory_usedposix_spawngetcwdfwritefreadrenamewaitpidstrchrmkstempsfdopenqsortobstack_alloc_failed_handler__cxa_finalizefcntl__xstatgetrlimitmemmoveposix_spawnpfopen64pread_obstack_beginaccessopterrstrcmpstrerror__libc_start_mainferrorstpcpyvfprintfglobfreegetopt_long_onlysysconf_obstack_free__environlibdl.so.2libc.so.6GLIBC_2.2.5GLIBC_2.27GLIBC_2.15GLIBC_2.8GLIBC_2.14GLIBC_2.3GLIBC_2.11$ORIGIN/../libXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Z ui oe {ii ii ui oB+ hB+gB+gB+B+B+B+B+%B+-B+6B+>C+EC+oC+DC+  C+I(C+S0C+Y8C+`@C+hHC+oPC+uXC+y`C+hC+pC+xC+C+C+C+C+C+C+C+C+C+zC+C+C+C+$C+;C+;C+D+òD+DzD+˲D+ϲ D+Ӳ(D+Б0D+ٲ8D+ݲ@D+ IHD+PD+XD+`D+hD+pD+%xD+D+D+DD+ D+D+D+ D+/D+BD+YD+jD+wD+D+D+D+D+E+E+ȳE+ֳE+ E+(E+0E++8E+9@E+AHE+HPE+UXE+``E+|hE+RpE+xE+gE+oE+RE+xE+E+E+E+E+E+E+E+>E+E+E+E+E+ɴF+ʹF+ִF+ԴF+ܴ F+(F+0F+8F+@F+ HF+PF+LXF+ `F+'hF+4pF+ xF+=F+VF+FF+NF+]F+gF+F+}F+lF+bF+uF+}F+F+F+F+F+ϳG+G+G+G+O G+(G+0G+8G+̵@G+ݵHG+PG+XG+`G+hG+pG+xG+G+G+G+4G+RG+WG+bG+mG+uG+G+G+G+G+öG+ǶG+˶G+϶H+ӶH+׶H+۶H+߶ H+.(H+0H+8H+@H+HH+PH+XH+%`H+8hH+<pH+JxH+]H+oH+{H+H+H+H+H+H+H+H+H+H+H+˷H+ηH+ҷH+xI+ַI+I+I+ I+ (I+#0I+:8I+H@I+ZHI+iPI+tXI+`I+hI+pI+ƸxI+˸I+ոI+ڸI+߸I+I+I+I+I+I+$I+.I+9I+I+CI+XI+iI+uJ+zJ+J+J+ J+(J+0J+ȹ8J+й@J+HJ+PJ+XJ+.`J+EhJ+UpJ+gxJ+lJ+wJ+sJ+|J+J+J+J+J+J+J+ȺJ+:J+غJ+ݺJ+J+J+K+K+K+K+ K+(K+ 0K+8K+@K+HK+'PK+<XK+L`K+XhK+apK+qxK+vK+{K+K+K+K+K+K+K+K+K+»K+ԻK+ٻK+K+K+K+#L+L+(L+-L+8 L+B(L+I0L+R8L+]@L+aHL+ePL+sXL+`L+hL+pL+xL+L+L+L+M+M+ M+HM+PM+@`M+ÿM+ M+οM+:M+pM+ N+HN+ PN+`N+N+N+XN+N+,N+\O+> O+YPO+`O+kO+O+O+@O+P+ P+PP+`P+@GP+P+~DP+P+Q+Q+ Q+HQ+PQ+8Q+Q+Q+/Q+`Q+ R+R+ R+$HR+PR+`R+!R+R+rR+FR+3R+NS+[S+( S+ePS+PS+S+yS+S+xS+T+ T+PT+`T+T+T+T+ T+U+ U+HU+ PU+`U+U+U+ U+U+HU+ U+*V+  V+<PV+P `V+AV+P V+QV+ V+]W+  W+ZPW+ `W+mW+ W+pW+ W+|X+`X+X+ X+ !X+X+ X+X!X+Y+Y+! Y+PY+`Y+Y+Y+ Y+!Y+Z+! Z+0PZ+6`Z+RZ+ Z+GZ+ZZ+ Z+iZ+ [++H[+ P[+"`[+[+ [+@"[+[+[+p"[+\+" \+P\+\+"\+\+\+]+" ]+P]+(#`]+]+ ]+]+]+H#]+'^+3 ^+AP^+K`^+Z^+x#^+W^+#^+w _+t`_+_+#_+_+($_+`+`+$ `+P`+``+}`+`+a+$ a+`a+a+a+b+$ b+Pb+%`b+b+(%b+ b+P%b+ c+% c+Pc+%`c+c+%c+6c+;c+d+Xd+j d+Hd+zPd+(&`d+d+P&d+d+d+e+ e+Pe+&`e+e+ e+e+ e+'e+ f+8' f+Pf+h'`f+/f+'f+,f+'f+Ag+' g+RPg+(`g+rg+eg+g+ g+wg+h+h+H( h+Ph+`h+h+h+h+(h+i+( i+Pi+(`i+i+)i+i+@)i+5j+O j+jHj+KPj+x)`j+j+j+j+j+k+ k+Pk+)`k+ k+)k+k+*k+6l+G l+`Pl+@*`l+ol+~l+p*l+m+m+ m+Pm+`m+m+m+m+*m+n+* n+ Pn+(+`n+7n+X+n+4n++n+=o+ o++ o+QHo+Po++`o+Wo+o+,o+?o+bo+z p+Pp+H,`p+p+p+x,p+q+q+, q+`q+q+q+,q+q+ q+-q+r+r+@- r+Hr+Pr+p-`r+&r+5r+-r+>r+Dr+bs+- s+nHs+ Ps+x`s+s+-s+s+s+s+t+t+ t+Ht+Pt+`t+t+t+%t+Bt+t+Ht+eu+u+s u+Hu+Pu+`u+u+u+u+u+.u+v+v+. v+`v+v+ v+.v+*v+ v+/v+Bw+x/ w+TPw+/`w+iw+w+w+ w+w+x+ x+ x+Hx+ Px+/`x+ x+/x+x+0x+. y++`y+>y+Xy+U z+j`z+gz+z+} {+P{+P0`{+{+x0{+{+0{+|+0 |+`|+|+1|+|+81|+ }+`1 }+RP}+1`}+$}+ }+1}+)}+ }+1}+B~+2 ~+MP~+P2`~+W~+j~+~+~+2~++2 +P+2`++(3++P3++3 +P+3`++3+Ѐ+4+4+5 +3H+X+Ih+x+++++ȁ+؁+++++(+8+H+X+h+x++@+ I++Ȃ+؂++%+++A(+x8+H+X+h+x++++>+ȃ+؃+l+++s+|(+/8+BH+YX+h+x++++1+++++ ++'Ȅ+4Є+)؄+1+7+I+ +V@+`+]+n++++ +@+`+++++ +@+V`++]+n+++ +@+`++++++@+`+V++]+n++ +@+`++++++ +`++V++]+n+ +@+`++++++ +@++5+5+l+i+l+|++++(&+++ +P&(+0+8+@+#H+>P+WX+&`+&h+op+yx++؛&++++++ +Ȏ+Ў+؎+++++(+u@+2H+ 2P+1X+1`+02h+`2p+2x+p2+X+_+e+w++ +(+0+8+@+H+P+X+ `+h+0p+Bx+V+j++++++++Ȑ+-А+Dؐ+[+r+++++++ +(+20+C8+T@+kH+P+X+`+h+p+x+ +$+<+T+k+++++ȑ+Б+ؑ++4+K+d+x++++ +(+0+8+ @+H+*P+BX+T`+fh+|p+x+++++++0+I+^+sȒ+В+ؒ+ &+H&+++++)+@+S +f(+|0+8+@+H+P+X+`+h+3p+Ex+W+i++++++++ȓ+*Г+Aؓ+X+p+++++++/ +K(+h0+8+@+H+P+X+`+-h+Hp+ex+++++++.+A+T+hȔ+}Д+ؔ+++++++"+6+J +`(+|0+8+@+H+P+X+`+'h+@p+[x+v+++++++ +"+>ȕ+WЕ+sؕ+++++++)+<+T +i(+0+8+@+H+P+X+`+h+p+5x+M+c+{+p&+&++&+&++Ȗ+&Ж+ &ؖ+@&++++8+S+n++ +(+0+8+@+H+7P+OX+l`+h+p+x++++"+:+R+o+++ȗ+З+ؗ+++5+K+b+~+++ +(+0+ 8+ @+9H+UP+qX+`+h+p+x++`&+&+&+ȥ&+ +&+)+D+_Ș+&И+}ؘ+@&++++++++) +;(+P0+c8+v@+H+P+X+`+h+p+x++3+I+_+s+++++ș+ Й+h&ؙ+&+&+&+=+T+k+++ +(+0+8+ @+8H+RP+lX+`+h+p+x++ +! +9 +Q +i + + + + Ț+ К+ ؚ+ +6 +P +l + + + + +  + (+* 0+> 8+R @+e H+| P+ X+ `+ h+ p+ x+ + +. +C +Y +r + + + + ț+ Л+ ؛+( +? +W +l + + + + +  + (+0+.8+H@+bH+{P+X+`+h+p+x++)+@+\+u++Ȧ&+++Ȝ+М+؜+0+&+&+8&+`&+&+&+ا&+& +(&(+P&0+K8+a@+xH+P+X+`+h+p+x+,+I+g+++++++ȝ+5Н+M؝+_+r+++++++ +)(+E0+X8+o@+H+P+X+`+h+p+#x+@+Y+s+++++++*Ȟ+DО+]؞+t++++++++4 +L(+x&0+&8+&@+ب&H+&P+&X+g`+}h+p+x++++ +#+<+U+i++ȟ+П+؟++ +&+B+^+y+++ +8&(+0+8+!@+<H+XP+uX+`+X&h+p+x++++2+I+b+{+++x&Ƞ+&Р+&ؠ+&+&+0&+P&+p&++++  +(+10+E8+Y@+lH+P+X+`+h+p+x+ +!+;+U+o+++++ȡ+С+,ء+I+f+++++++. +L(+b0+x8+@+H+P+X+`+h+%p+&x+&+ت&+&+C+ &+_+@&+`&+&+&Ȣ+Ы&Т+}آ++&+ &+H&+p&++++ + (+ 0+7 8+P @+i H+ P+ X+ `+ h+ p+ !x+(!+&+&+ج&+&+F!+_!+z!+!+!ȣ+!У+!أ+!+!+"+)"+B"+["+&+8&+t" +"(+"0+"8+"@+"H+#P+7#X+O#`+f#h+z#p+#x+#+#+#+#+#+$+,$+G$+b$+|$Ȥ+$Ф+$ؤ+$+$+$+%+.%+E%+`%+x%+% +%(+%0+%8+%@+ &H+$&P+=&X+V&`+n&h+&p+&x+&+&+&+'+'+4'+L'+d'+}'+'ȥ+'Х+'إ+'+'+ (+X&+&+&+Э&+"(+:( +W((+s(0+(8+(@+(H+(P+(X+(`+)h+")p+;)x+W)+&+&+t)+)+)+)+)+)+*Ȧ+*Ц+7*ئ+O*+g*+*+*+*+*+*+*++ ++(+0+0+D+8+[+@+m+H++P++X++`++h++p++x+,+,+3,+E,+X,+k,+},+,+,+,ȧ+,Ч+,ا+,+-+$-+7-+N-+h-+-+-+- +-(+-0+.8+.@+4.H+M.P+c.X+}.`+.h+.p+.x+.+/+/+7/+K/+c/+{/+/+/+/Ȩ+/Ш+/ب+0+!0+40+G0+^0+q0+0+0+0 +0(+00+08+ 1@+&1H+@&P+@1X+`&`+Y1h+o1p+1x+1+1+1+1+1+2+,2+F2+_2+r2ȩ+2Щ+2ة+2+2+2+ 3+3+/3+@3+Q3+b3 +s3(+30+38+3@+3H+3P+3X+4`+4h+54p+I4x+`4+x4+4+4+4+4+4+4+5+)5Ȫ+>5Ъ+W5ت+n5+5+5+5+5+5+5+6+46 +O6(+g60+68+6@+6H+6P+6X+6`+7h+7p+'7x+>7+U7+l7+7+7+7+7+7+8+8ȫ+18Ы+K8ث+d8+}8+8+8+8+8+9+9+69 +L9(+c90+z98+9@+9H+9P+9X+&`+&h+&p+9x+ :+ :+5:+&+M:+k:+:+&+(&+P&Ȭ+:Ь+:ج+:+:+;+;+.;+D;+X;+l;+; +;(+;0+;8+;@+;H+;P+<X+'<`+;<h+O<p+c<x+x<+<+<+<+<+<+<+=+(=+?=ȭ+X=Э+j=ح+=+=+=+=+=+=+ >+>+2> +F>(+Y>0+p>8+>@+>H+>P+>X+>`+>h+?p+*?x+>?+S?+h?+?+?+?+?+?+?+@Ȯ+-@Ю+F@خ+]@+y@+@+@+@+@+@+A+(A +EA(+^A0+wA8+A@+AH+AP+AX+A`+Bh+Bp+4Bx+LB+dB+|B+B+B+B+B+B+ C+%Cȯ+:CЯ+SCد+lC+C+C+C+C+C+D+D+9D +TD(+kD0+D8+D@+DH+DP+DX+E`+Eh+7Ep+OEx+hE+E+E+E+E+E+F+F+6F+PFȰ+lFа+x&ذ+&+F+F+F+F+F+ G+(G+CG +&(+د&0+&8+]G@+vGH+GP+GX+G`+Gh+Gp+ Hx+&+#H+?H+XH+tH+H+H+H+H+Hȱ+8&б+`&ر+I+*I+EI+[I+rI+I+I+I+I +I(+I0+J8+6J@+LJH+eJP+JX+J`+Jh+Jp+Jx+ K+&K+@K+\K+xK+K+K+&+K+KȲ+Lв+%Lز+CL+&+_L+|L+L+L+L+L+M +M(+-M0+а&8+&@+&H+0&P+EMX+cM`+Mh+P&p+Mx+M+p&+&+&+&+M+M+ N+&+ Nȳ+8Nг+PNس+bN+zN+0&+N+N+P&+N+N+N +O(+O0+;O8+OO@+gOH+OP+OX+O`+Oh+Op+Ox+P+P+7P+KP+eP+P+P+P+P+Pȴ+Pд+Qش+'Q+AQ+[Q+uQ+Q+Q+Q+Q+Q +R(+)R0+GR8+eR@+RH+RP+RX+R`+Rh+Rp+Sx++S+AS+XS+nS+S+S+S+S+S+Sȵ+Tе+Tص+x&+8T+VT+&+oT+T+T+T+T +T(+T0+T8+U@+,UH+@UP+TUX+hU`+|Uh+Up+Ux+U+U+U+U+V+5V+NV+gV+V+Vȶ+Vж+Vض+V+V+ W+(W+FW+aW+|W+W+W +W(+W0+W8+X@+'XH+@XP+YXX+rX`+Xh+Xp+Xx+X+X+ Y+&+&+'Y+AY+\Y+wY+Yȷ+Yз+Yط+Y+Y+Z+Z+3Z+LZ+eZ+~Z+Z +Z(+Z0+Z8+&@+ZH+[P+[X+.[`+C[h+Y[p+o[x+[+0&+[+[+[+[+[+ \+\+5\ȸ+K\и+e\ظ+\+\+\+\+\+\+]+0]+M] +j](+]0+]8+]@+]H+]P+]X+]`+ ^h+^p+4^x+I^+b^+v^+^+^+^+^+^+ _+"_ȹ+<_й+V_ع+q_+_+_+_+_+_+`+`+4` +J`(+_`0+u`8+`@+`H+`P+`X+``+ah+$ap+Aax+^a+{a+a+a+P&+x&+a+a+b+bȺ+7bк+Mbغ+ab+vb+b+b+b+b+b+c+c +1c(+Fc0+[c8+pc@+cH+cP+cX+c`+ch+cp+dx+d+,d+Bd+Xd+kd+d+d+d+d+dȻ+dл+ eػ+ e+9e+Oe+fe+}e+e+e+e+e +e(+e0+f8+f@+.fH+AfP+TfX+gf`+zfh+fp+fx+f+f+f+f+f+g+$g+=g+Qg+cgȼ+vgм+gؼ+g+g+g+g+g+h+h+-h+Ah +Th(+kh0+h8+h@+hH+hP+hX+h`+ih+ip+1ix+Hi+^i+ui+i+i+i+i+i+i+jȽ+%jн+ +`+z+++ +`++++++g +@+`+++++ +`++ +#+++* +8@+`++*++  +`+Gh+ p+Px++[+d+m+"+++y+++R+\+f+t+~+ +0+@+P+`+p++*++8+++++++++++++++#+1+A +R(+b0+J8+s@+H+P+X+`+h+p+x++++++#+/+<+L+]+j+x+++++++++  +(+-@+U(H+U(`+ U(+ V(+V(+V(+V(+`U(+8V(+0V( + U(@+pV(P+`V(+PV(+@V(+U(+n + ^ +@o +Z +R +`X +j +p_ +W + X +V (+PW 0+W 8+W @+X+p+#+@++w+ ++Ќ +0+Ќ 8++Ќ ++Ќ +p+Ќ x+j+Ќ +w+Ќ ++Ќ +}+Ќ +8+Ќ @+Ѧ`+h+ȶp+`x+i+m+r+|+++++++++++l+x++ +(+0+8+!@+H+P+ X+`++='+='++3+P+>'+c+s++8>'+++X>'+++++0+H+`+x++#+R+@++w+  +++#++:++Q++j +(+H+P+p+x+++++++++++++++++(+0+"P+X+ x++++ȶ+`+i+m+r+|+++++,,,, ,@,lH,xP,X,`,h,p,x,!,,, ,,,=',=',,3,P,>',c,s,,8>',, ,X>'(,0,8,@,X,p,,,,,#,@,,w0, H,,`,#,`,:,`,Q,` ,j@,`H,h,`p,,`,,`,,`,,`,0,`8,,`,,`,,`, ,`(,H,`P,"p,`x, ,`,,,,,,,,,,,,, ,(,0,8,`,,,F',G',hg(,ig(,kg(,ng(,rg(,wg(,}g(,g(,g(,g(8,E@,EP, ?X,i`,`?h,,,E,i, ?,i,>,,,E,, ?,i ,>(,@,X,`,p, ?x,i,`?,,,,, ?,i,`?, , , ,!0 , ?8 ,i@ ,>H ,` ,x , ,3 , ? ,i ,> ,O ,N ,`N ,M ,I ,`M ,L ,K ,0l ,Pk ,k ,k ,0 ,[@ ,[P ,[` ,p ,[ ,[ ,[ ,[ ,[ , ,f ,[ ,[ ,[ ,[ ,'0 ,@ ,[P ,` , , , ,  ,` ,p ,0 ,@ ,P , , ,0 ,@ ,P , , ,0( ,@0 ,P8 ,@ ,` , , ,c( ,u0 ,8 ,@ ,H ,P ,X ,` ,h , ,0 ,1 , , , , , , , , , , , , , ,,,,, ,(,0,8,@,H,P,X,0`,h,p,x,,,(,,, ,',,*,,s',>,s',E,J ,`0,e8,{H,P,`,,v,v,,,,,,0,@,t'P,h,x,Xt',, ,t',,',t',5 ,u0,u@,DP,I`,|p,Q,[,[,V,V,b,b,h,h,s,s ,0,@,P,,,,,,,,,`,p,,,,,,,|,, ,0,@,|P,|`,p,,,,,,,, , ,, ,0,@,P,`,$p,$,+,+,;,,>,,A,,8,,N,, ,D0,M8,PH,ZP,D`,]h,`x,H,,k,n,p,,s,,v,y,,,:, ,(,(8,@,P,X,h,p,,W,~,,,,},,,,,,,,|(,0,|@,H,|X,`,|p,x,,,,,,],,,,,,,, ,0,\8,H,P,`,h,x,,,,(,,,,,,,~,,,a ,(,e8,@,@P,X,h,p,,,,,,,0,,,,/,9,0,,(,K0,@,H,X, `,p,x,,9,(,,,,",,",{,,,,8, ,<0,D8,<H,tP,J`,Gh,J, ,,,,0,,,@,0,,,(,8,H,X,h,x,,,,(, (,(,(,(,( ,l(,|0,[8,@,H,P,X,`,h,[p, ,x,,,,+,=,,,P,,,`,,,q,,,,,, ,(,,0,ķ8,,@,طH,,P,X,,`,h,T,p, ,,+,<,T,,M,T,,a,T,,q,,T,,,T, , , ,0 ,θ8 , ,@ ,޸H ,T,P ,X ,T,` ,h ,T,p , x ,, , ,, ,. ,, ,? ,, ,P ,, ,b ,, ,v ,, , ,,!,T,!,,!,@l,!,6, !,,(!, ,0!,`,8!,@,@!,,H!,@,P!,,X!, ,,`!,(,h!, 3,p!,/,x!,!,!, %,!,@,!,%!,!,!,!,p!,!,!,",",",", ",(",p0",8",@",H",P",X",`",Ph",p",x",",",",",",",",",g",>",b",",",",",",#,#,#, #,  #,@(#,0#,`8#,@#,H#,GP#,SX#,@g`#,0h#,Op#, ?x#,>#,O#,#,#,#,`o#,#,P#,#,p#,p#,Ѐ#,#,#,#,#, $,r$,r$,$, $,($,a0$, a8$,n@$,H$,0P$,\X$,\`$,ph$,p$,x$,$,$,&$,P0$,@\$,P\$,\$,pl$,l$,l$,)$,-$,-$,.$,$,$,P%,%,0a %,H%,P%,X%,`%,ph%,p%,x%,%,%,%,%,%,%,p%,%,%,%,%,%,%,p%,%,%,&,&,&,&, &,(&,0&,8&,g@&,>H&,bP&,`X&,`&,h&,p&,x&,&,&,&, &, &,@&,&,`&,&,&,G&,S&,@g&,0&,O&, ?&,>',O',',p', ',`o(',0',8',@',H',pP',ЀX',`',h',p',x', ',0',@',',',',a', a',p',@',0',\',\',p',',',(,(,&(,P0(,@\ (,P\((,\0(,pl8(,l@(,lH(,)P(,-X(,-`(,.h(,p(,x(,P(,(,0a(,(,(,(,(,p(,(,(,),),),), ),(),p0),8),@),H),P),X),`),гh),p),x),), ),),),),),),),g),>),b),0),),),),),*,*,*, *,  *,@(*,0*,`8*,@*,H*,GP*,SX*,@g`*,0h*,Op*, ?x*,>*,O*,*,*,*,`o*,С*,*,*,p*,p*,Ѐ*,*,*,*,*, +,r+,r+,+, +,(+,a0+, a8+,P@+,НH+,P+,\X+,\`+,ph+,p+,x+,+,+,&+,P0+,@\+,P\+,\+,pl+,l+,l+,)+,-+,-+,.+,+,+,P,,,,0a ,,H,,P,,X,,`,,ph,,p,,x,,,,,,,,,,,,,,p,,,,,,,,,,,,,,,,,,,,-, -,-,-, -,(-,0-,8-,g@-,>H-,bP-,0X-,`-,h-,p-,x-,-,-,-, -, -,@-,-,`-,-,-,G-,S-,@g-,0-,O-, ?-,>.,O.,.,., .,`o(.,С0.,8.,@.,pH.,pP.,ЀX.,`.,h.,p.,x., .,r.,r.,.,.,.,a., a.,P.,Н.,.,\.,\.,p.,.,.,/,/,&/,P0/,@\ /,P\(/,\0/,pl8/,l@/,lH/,)P/,-X/,-`/,.h/,p/,x/,P/,/,0a/,/,/,/,/,p/,/,/,0,0,0,0, 0,(0,p00,80,@0,H0,P0,X0,`0,h0,p0,x0,0,0,0,0,0,p0,0,0,g0,>0,b0,00,0,0,0,0,1,1,1, 1,  1,@(1,01,`81,@1,H1,GP1,SX1,@g`1,0h1,Op1, ?x1,>1,O1,1,@1,1,`1,p1,1,1,p1,p1,Ѐ1,1,1,1,1, 2,r2,r2,2, 2,(2,a02, a82,@2,H2,P2,\X2,\`2,ph2,p2,x2,2,2,&2,P02,@\2,P\2,\2,pl2,l2,l2,)2,-2,-2,.2,2,2,P3,3,0a 3,H3,P3,X3,`3,ph3,p3,x3,3,3,3,3,3,3,p3,3,3,3,3,3,3,3,3,3,4,`4,4,4, 4,(4,04,84,g@4,>H4,bP4,X4,`4,h4,p4,x4,4,4,4, 4, 4,@4,4,`4,4,4,G4,S4,@g4,04,O4, ?4,>5,O5,5,p5, 5,`o(5,05,85,@5,H5,pP5,ЀX5,`5,h5,p5,x5, 5,05,@5,5,5,5,a5, a5,05,5,05,05,05,@15,5,P15,`16,6,p16,P06, 6,1(6,06,186, 1@6,01H6,1P6,1X6,-`6,1h6,p6,x6,P6,6,0a6,)6,6,6, 6,6,6,6,7,7,7,7, 7, (7,07,87,@7,H7,P7,X7,`7,q h7,0?p7, x7,7,0a7, 37,0 7,7, 7,W7, 7,g7, 7,@O 7,7,7 7,7,а 7,7, 8,д 8,8,W 8, 8, (8, 08, 88,A@8,pEH8,`MP8,QX8,Pc`8,`9h8,`Np8,P>x8,=8,O8,8, 8, 8,` 8,I 8, 8,H 8, 8,p8,P 8, 8, 8,P 8, 8, 9,r9,r9, 9,0 9,`(9,09,89,p @9,P H9, P9,\X9,`9,bh9, p9,x9,P 9,` 9,&9,e9,` 9, 9,v 9,P6 9,p6 9,l9, 9,-9,Pz 9, 9, 9, 9,:, :,0 :, :,h:,:,:,:,P :,:,:,N :,O :,:,:,:, ;, ;,;,f;,P ;,`0;, 8;,0@;,@H;,lX;,e `;,`h;, p;,;,P1 ;,P;,pj ;,p ;,p ;,;, ;,h ;,;,;,`<,<,P <, H<, P<,p`<,p<,<, <,P <,P <,P <,P <,<, z <, =, =,@=,p=, =,0=,`2 8=,p2 @=,`T H=,7 P=,h=,+p=,`+=, =,P=,в=,=,=,W =,2 >,8 >,H>,P>,X>, `>,h>,p>,x>,>,>,>,>,>, >,>,>,>,>,>,>,>,P>,0?>, >,?,0a?, 3?,0 ?, ?, (?,W0?, 8?,g@?, H?,@O P?,X?,7 `?,h?,а p?,x?, ?,д ?,?,W ?, ?, ?, ?, ?,A?,pE?,`M?,Q?,Pc?,`9?,`N?,P>?,=@,O@,@, @, @,` (@,I 0@, 8@,H @@, H@,pP@,P X@, `@, h@,P p@, x@, @,r@,r@, @,0 @,`@,@,@,p @,P @, @,\@,@,b@, @,@,P A,` A,&A,eA,` A, (A,v 0A,P6 8A,p6 @A,lHA, PA,-XA,Pz `A, hA, pA, xA,A, A,0 A,A,A,B,B, B,P 8B,@B,HB,N PB,O XB,`B,hB,xB, B, B,B,fB,PB,`B, B,0B,@B,lB,e B,`B, B,C,P1 C,PC,pj (C,p 0C,p 8C,@C, HC,h XC,pC,xC,`C,C,PC, C, C,pC,C,D, D,P D,P D,P 0D,P @D,hD,pD, D, D,@D,pD,D,D,`2 D,p2 D,`T D,D,D,+D,`+E, 8E,P@E,вHE,PE,pE,W xE,2 E,8 E,E,E,E, E,E,E,E,F,F,F,F, F, (F,0F,8F,@F,HF,PF,XF,`F,PhF,0?pF, xF,F,0aF, 3F,0 F,F, F,WF, F,gF, F,@O F,F,7 F,F,а F,F, G,д G,G,W G, G, (G, 0G, 8G,A@G,pEHG,`MPG,QXG,Pc`G,`9hG,`NpG,P>xG,=G,OG,G, G, G,` G,I G, G,H G, G,pG,P G, G, G,P G, G, H,rH,rH, H,0 H,`(H,0H,8H,p @H,P HH, PH,\XH,`H,bhH, pH,xH,P H,` H,&H,eH,` H, H,v H,P6 H,p6 H,lH, H,-H,Pz H, H, H, H,I, I,0 I, I,hI,I,I,I,P I,I,I,N I,O I,I,I,I, J, J,J,fJ,P J,`0J, 8J,0@J,@HJ,lXJ,e `J,`hJ, pJ,J,P1 J,PJ,pj J,p J,p J,J, J,h J,J,J,`K,K,P K, HK, PK,p`K,pK,K, K,P K,P K,P K,P K,K,K, L, L,@L,pL, L,0L,`2 8L,p2 @L,`T HL,7 PL,hL,+pL,`+L, L,PL,вL,L,L,W L,2 M,8 M,HM,PM,XM, `M,hM,pM,xM,M,M,M,M,M, M,M,M,M,M,M,M,M,PM,0?M, M,N,0aN, 3N,0 N, N, (N,W0N, 8N,g@N, HN,@O PN,XN,7 `N,hN,а pN,xN, N,д N,N,W N, N, N, N, N,AN,pEN,`MN,QN,PcN,`9N,`NN,P>N,=O,OO,O, O, O,` (O,I 0O, 8O,H @O, HO,pPO,P XO, `O, hO,P pO, xO, O,rO,rO, O,0 O,`O,O,O,p O,P O, O,\O,O,bO, O,O,P P,` P,&P,eP,` P, (P,v 0P,P6 8P,p6 @P,lHP, PP,-XP,Pz `P, hP, pP, xP,P, P,0 P,P,P,Q,Q, Q,P 8Q,@Q,HQ,N PQ,O XQ,`Q,hQ,xQ, Q, Q,Q,fQ,PQ,`Q, Q,0Q,@Q,lQ,e Q,`Q, Q,R,P1 R,PR,pj (R,p 0R,p 8R,@R, HR,h XR,pR,xR,`R,R,PR, R, R,pR,R,S, S,P S,P S,P 0S,P @S,hS,pS, S, S,@S,pS,S,S,`2 S,p2 S,`T S,7 S,S,+S,`+T, 8T,P@T,вHT,PT,pT,W xT,2 T,8 T,T,T,T, T,T,T,T,U,U,U,U, U, (U,0U,8U,@U,HU,PU,XU,`U,PhU,0?pU, xU,U,0aU, 3U,0 U,U, U,WU, U,gU, U,@O U,U,7 U,U,а U,U, V,д V,V,W V, V, (V, 0V, 8V,A@V,pEHV,`MPV,QXV,Pc`V,`9hV,`NpV,P>xV,=V,OV,V, V, V,` V,I V, V,H V, V,pV,P V, V, V,P V, V, W,rW,rW, W,0 W,`(W,0W,8W,p @W,P HW, PW,\XW,`W,bhW, pW,xW,P W,` W,&W,eW,` W, W,v W,P6 W,p6 W,lW, W,-W,Pz W, W, W, W,X, X,0 X, X,hX,X,X,X,P X,X,X,N X,O X,X,X,X, Y, Y,Y,fY,P Y,`0Y, 8Y,0@Y,@HY,lXY,e `Y,`hY, pY,Y,P1 Y,PY,pj Y,p Y,p Y,Y, Y,h Y,Y,Y,`Z,Z,P Z, HZ, PZ,p`Z,pZ,Z, Z,P Z,P Z,P Z,P Z,Z,Z, [, [,@[,p[, [,0[,`2 8[,p2 @[,`T H[,7 P[,h[,+p[,`+[, [,P[,в[,[,[,W [,2 \,8 8\,6 @\,e`\,6 h\,s\,6 \,\,6 \,\,6 \,],6 ],(],6 0],P],6 X],˼x],6 ],~],6 ],޼],6 ],],6 ],^,6 ^,@^,6 H^, h^,6 p^,^,6 ^,"^,6 ^,/^,6 ^,A_,6 _,S0_,6 8_,dX_,6 `_,s_,6 _,_,6 _,_,6 _,_,6 `, `,6 (`,ŽH`,6 P`,׽p`,6 x`,`,6 `,`,6 `, `,6 `,a,6 a,.8a,6 @a,@`a,6 ha,Pa,6 a,`a,6 a,Ya,6 a,yb,6 b,k(b,6 0b,Pb,6 Xb,xb,6 b,b,6 b,b,6 b,¾b,6 b,پc,6 c,@c,6 Hc,@&hc,6 pc, c,6 c,&c,6 c,`&c,6 c,?d,6 d,Y0d,6 8d,&`d,rd, d,d,6 d,d,d,d,d, e,e,e,e, e,(e,0e,8e,@e, He,Pe,Xe,`e,he,pe,xe,e,q e,0?e, e,e,0ae, 3e,0 e,e, e,We, e,ge, e,@O e,e,7 f,f,а f, f, f,д (f,0f,W 8f, @f, Hf, Pf, Xf,A`f,pEhf,`Mpf,Qxf,Pcf,`9f,`Nf,P>f,=f,Of,f, f, f,` f,I f, f,H f, f,pf,P f, g, g,P g, g,  g,r(g,r0g, 8g,0 @g,`Hg, Pg, Xg,p `g,P hg, pg,\xg,g,bg, g,g,P g,` g,&g,eg,` g, g,v g,P6 g,p6 g,lg, g,-g,Pz h, h, h, h, h, (h,0 8h,@h,h,`Q h,`Q h,P h,= h,N h,O h, i,i,i, i, (i,` 0i,f8i,P@i,`Pi, Xi,0`i,P hi,lxi,i, i, i, i,i,pj i,p i,p i,i, i,h i,` j,j,` j,(j,P@j, hj,0 pj, j, j, j,P j,P j,P j,P j, k, z k,Є k, (k, 0k, @k,Pk,`2 Xk,p2 `k,`T hk,7 pk,k,+k, k,Pk,вk, k,l,W l,2 l,8 @l,Bhl,pl,xl, l,l,l,l,l,l,l,l,l, l,l,l,l,l,l,l,m,q m,0?m, m, m,0a(m, 30m,0 8m,@m, Hm,WPm, Xm,g`m, hm,@O pm,xm,7 m,m,а m, m, m,д m,m,W m, m, m, m, m,Am,pEm,`Mm,Qm,Pcn,`9n,`Nn,P>n,= n,O(n,0n, 8n, @n,` Hn,I Pn, Xn,H `n, hn,ppn,P xn, n, n,P n, n, n,rn,rn, n,0 n,`n, n, n,p n,P n, n,\n,o,bo, o,o,P o,` (o,&0o,e8o,` @o, Ho,v Po,P6 Xo,p6 `o,lho, po,-xo,Pz o, o, o, o, o, o,0 o,o,p,`Q p,`Q p,  @p,P Xp,= hp,N pp,O xp, p, p, p,p p,fp,Pp,`p, p,0p,P p,lp,q, q, q, q,P1 8q,pj Hq,p Pq,p Xq,`q, hq,h xq,` q,q,`q,q,Pq, q,0 q, r, (r, 0r,P 8r,P @r,P Pr,P `r, r, z r,Є r, r, r, r,r,`2 r,p2 r,`T r,7 r,s,+ s, Xs,P`s,вhs, ps,s,W s,2 s,8 s,s,s,s, t,t,t,t, t,(t,0t,8t,@t, Ht,Pt,Xt,`t,ht,pt,xt,t,q t,0?t, t,t,0at, 3t,0 t,t, t,Wt, t,gt, t,@O t,t,7 u,u,а u, u, u,д (u,0u,W 8u, @u, Hu, Pu, Xu,A`u,pEhu,`Mpu,Qxu,Pcu,`9u,`Nu,P>u,=u,Ou,u, u, u,` u,I u, u,H u, u,pu,P u, v, v,P v, v,  v,r(v,r0v, 8v,0 @v,`Hv, Pv, Xv,p `v,P hv, pv,\xv,v,bv, v,v,P v,` v,&v,ev,` v, v,v v,P6 v,p6 v,lv, v,-v,Pz w, w, w, w, w, (w,0 8w,@w,w,`Q w,`Q w,P w,= w,N w,O w, x, x, (x,p 0x,f8x,P@x,`Px, Xx,0`x,P hx,lxx,x, x, x, x,P1 x,pj x,p x,p x,x, x,h x,` y,y,` y,(y,P@y, hy,0 py, y, y, y,P y,P y,P y,P y, z, z z,Є z, (z, 0z, @z,Pz,`2 Xz,p2 `z,`T hz, pz,z,+z, z,Pz,вz, z,{,W {,2 {,8 @{,h{,p{,x{, {,{,{,{,{,{,{,{,{, {,{,{,{,{,{,{,|,q |,0?|, |, |,0a(|, 30|,0 8|,@|, H|,WP|, X|,g`|, h|,@O p|,x|,7 |,|,а |, |, |,д |,|,W |, |, |, |, |,A|,pE|,`M|,Q|,Pc},`9},`N},P>},= },O(},0}, 8}, @},` H},I P}, X},H `}, h},pp},P x}, }, },P }, }, },r},r}, },0 },`}, }, },p },P }, },\},~,b~, ~,~,P ~,` (~,&0~,e8~,` @~, H~,v P~,P6 X~,p6 `~,lh~, p~,-x~,Pz ~, ~, ~, ~, ~, ~,0 ~,~,,`Q ,`Q @,P X,= h,N p,O x, , , ,p ,f,P,`, ,0,P ,l,, , , ,P1 8,pj H,p P,p X,`, h, x,` ,,`,,P, ,0 , , (, 0,P 8,P @,P P,P `, , z ,Є , , , ,Ё,`2 ؁,p2 ,`T ,7 ,,+ , X,P`,вh, p,,W ,2 ,8 ,?,,, ,,,, ,(,0,8,@, H,P,X,`,h,p,x,,q ,0?, ,,0a, 3,0 ,, ȃ,WЃ, ؃,g, ,@O ,,7 ,,а , , ,д (,0,W 8, @, H, P, X,A`,pEh,`Mp,Qx,Pc,`9,`N,P>,=,O,, , ,` Ȅ,I Є, ؄,H , ,p,P , , ,P , ,  ,r(,r0, 8,0 @,`H, P, X,p `,P h, p,\x,,b, ,,P ,` ,&,e,` , ȅ,v Ѕ,P6 ؅,p6 ,l, ,-,Pz , , , , , (,0 8,@,,`Q ,`Q ,P ؆,= ,N ,O , , , (,p 0,f8,P@,`P, X,0`,P h,lx,, , , ,P1 ,pj ȇ,p Ї,p ؇,, ,h ,` ,,` ,(,P@, h,0 p, , , ,P ,P ,P Ј,P , , z ,Є , (, 0, @,P,`2 X,p2 `,`T h,7 p,,+, ؉,P,в, ,,W ,2 ,8 X,6 `,,6 ,,6 ,Њ,6 ؊,,6 , ,6 (,H,6 P,p,6 x,,6 ,V,6 ȋ,,6 ,%,6 ,18,6 @,A`,6 h,N,6 ,^,6 ,k،,6 ,x,6 ,(,6 0,P,6 X,x,6 ,,6 ,ȍ,6 Ѝ,,6 ,,6 ,@,6 H,h,6 p,,6 ,,6 ,",6 ,m,6 ,40,6 8,]X,6 `,C,P, ,d,,,, ,,,, ,(,0,8,@, H,P,X,`,h,p,x,, ,0?, ,,0 , 3,,, Ȑ,WА,ؐ,g,P, ,,P ,,,M, ,(,0,@ 8, @,@H,P,`X,A`,pEh,`Mp,Qx,Pc,`9,`N,P>,=,O,,,@,0ȑ,@Б,Mؑ,, ,p,,P,,,,` ,r(,r0,8,p @,`H, P,` X, `,` h,p,\x,\,a, b,,,,&,P0,,P\Ȓ,\В,plؒ, ,l,,-,-,.,,,P ,(,0a8,@,@,H, P,X,p`,h,p,0 x,`, ,,` Г, ؓ, , , , , ,@ , ,К , , 0, 8, @, H, P,Б `,0 h, x,, ,M, Ȕ,Д,ؔ, ,,,,,,,, , (,0,8,@,H,P,X,`, h,0?p, x,, , 3,,,P#,W,,g,Pȕ, Е,ؕ,,,,,,,,,  ,@(,0,`8,A@,pEH,`MP,QX,Pc`,`9h,`Np,P>x,=,O,,,@,0,@,`,,Ȗ,pЖ,ؖ,P,,,,`,r,r,, ,`(,0,8,p@,H,P,\X,\`,ah,p,x,,,&,P0,,P\,\,pl, ,lȗ,З,-ؗ,-,.,,,P,,0a,, ,H,P,X, `,h,p,x,,,,,, ,,,,Ș,И,ؘ,, ,0?, ,, , 3,, ,P#(,W0,8,g@,PH, P,X,`,h,p,x,,,,, ,@,,`,A,pEș,`MЙ,Qؙ,Pc,`9,`N,P>,=,O,,,@ ,0(,@0,`8,@,H,pP,X,P`,h,p,x,`,r,r,,,`,,,p,Ț,К,\ؚ,\,a,,,,,&,P0, ,P\(,\0,pl8, @,lH,P,-X,-`,.h,p,x,P,,0a,,,@ ,,e,0 ,ț,@eЛ,؛,` ,Pi, s,0,08,e@, "H,P,@X,`,P h,3p,x,,,0,, ,,P,pȜ,؜,,,p,,_, \,e,a , ^(,@e0,8,`r@,PiH, sx,, ,e, ",,@,,P ȝ,3Н,؝,,,0,, ,,P ,p(,8,@,H,pP,`,,,, ,,,,,Ȟ,О,؞,, ,,,,,,, ,(,0?0,8,@,H, 3P,X,`,h,Wp,x,g,P,,,,,,,,ȟ,П,؟, ,@,,`,A,pE,`M,Q,Pc ,`9(,`N0,P>8,=@,OH,P,X,@`,0h,@p,`x,,,p,,P,,,,`,rȠ,rР,ؠ,p,`,,,@,,,\,\ ,a(, b0,8,@,H,&P,P0X,`,P\h,\p,plx, ,l,,-,-,.,,,P,ȡ,0aء,,,_, \,e,a, ^,@e,,n ,Pi(, sX,иp,x,e, ,P,,,p, ,,`,PТ,آ,й,,0,p,,, ,(,p0,@,<h,p,x, ,,,,,,,,, ȣ,У,أ,,,,,,P,0?, , ,`/ (, 30,0 8,@, H,WP, X,g`, h,@O p,x,7 ,,а , , ,д ,,W , , Ȥ, Ф, ؤ,A,pE,`M,Q,Pc,`9,`N,P>,= ,O(,0, 8, @,` H,I P, X,H `, h,pp,P x, , ,P , , ,r,r, ,0 ,`ȥ,[Х, aإ,p ,P , ,\,\,p,*,, ,(,&0, 8,` @, H,\P,P6 X,p6 `,lh, p,-x,Pz ,., , ,- , ,0 ,,,@,,%,,,,p,,, ,(,0,8,@,H,pP,X,`,h,p,x,,P,0?, ,,`/ , 3,0 ,, ȧ,WЧ, ا,g, ,@O ,,7 ,,а , , ,д (,0,W 8, @, H, P, X,A`,pEh,`Mp,Qx,Pc,`9,`N,P>,=,O,, , ,` Ȩ,I Ш, ب,H , ,p,P , , ,P , ,  ,r(,r0, 8,0 @,`H,[P, aX,p `,P h, p,\x,\,p,*,,,,&, ,` , ȩ,\Щ,P6 ة,p6 ,l, ,-,Pz ,., , ,- , (,0 0,@,8,@,,*,@+,P ت,= ,N ,O , (,` P, x,,P1 ,pj ȫ,p Ы,p ث,@ , ,h ,x ,y @, ,@, , ,P ,P ,P Ь,P , ,, , (, 0, @,K P,`2 X,p2 `,`T h,7 p,,+, ,P,W ,2 ,8 @,/h,p,x, ,,,,,,,,, Ȯ,Ю,خ,,,,,,q ,0?, , ,`/ (, 30,0 8,@, H,WP, X,g`, h,@O p,x,7 ,,а , , ,д ,,W , , ȯ, Я, د,A,pE,`M,Q,Pc,`9,`N,P>,= ,O(,0, 8, @,` H,I P, X,H `, h,pp,P x, , ,P , , ,r,r, ,0 ,`Ȱ,[а, aذ,p ,P , ,\,\,p,+,, ,(,&0, 8,` @, H,\P,P6 X,p6 `,lh, p,-x,Pz ,., , ,- , ,0 ,,,@,,,,,,p,,, ,(,0,8,@,H,pP,X,`,h,p,x,,q ,0?, ,,`/ , 3,0 ,, Ȳ,Wв, ز,g, ,@O ,,7 ,,а , , ,д (,0,W 8, @, H, P, X,A`,pEh,`Mp,Qx,Pc,`9,`N,P>,=,O,, , ,` ȳ,I г, س,H , ,p,P , , ,P , ,  ,r(,r0, 8,0 @,`H,[P, aX,p `,P h, p,\x,\,p,+,,,,&, ,` , ȴ,\д,P6 ش,p6 ,l, ,-,Pz ,., , ,- , (,0 0,@,8,@,,`+,,,P ص,= ,N ,O , (,` P, x,,P1 ,pj ȶ,p ж,p ض,@ , ,h ,x ,y @, ,@, , ,P ,P ,P з,P , , z ,Є , (, 0, @,K P,`2 X,p2 `,`T h,7 p,,+, ,P,W ,2 ,8 @,h,p,x, ,,,,,,,,, ȹ,й,ع,,,,,,;,0?,, ,(, 30,8,@,H,WP,X,g`,>h,bp,x,-,,,`-,@-,,, -,-,,Ⱥ, Tк,,غ,A,pE,`M,Q,Pc,`9,`N,P>,= ,O(,0,,8, 3@,-H,`,P,-X,`,h,pp,Ѐx,,,,, ,r,r,,,Ȼ,aл, aػ,n,,@,,\,\,p,,, ,(,&0,P08,@\@,P\H,\P,plX,l`,lh,)p,-x,-,.,,,P,,0aؼ,H,H,l,i,`?, ,8,E@,EP,lX,i`,`?x,,s(, ȿ,P п, (,(,8, ,@,X,H,P,,X,@,`,,p,,,@,,, , ,,,,F, F,I,q,n,o, o,^ ,,(,,0,,8,,H,,P,@,X,,`,[h,,,`,4,4,,0,,3, ,И,@!,2,,@,~,,!,,,0(, 0, @,ДH,h,`)p,)x,),`,4,4,,0,,3, ,б,@!,2,,,,),! ,(,0,0H, P, `,Ph,,`),),), ,4,4,,,,3, ,,@!,2, ,(,60,?8,!@,H,P,0h,p,,@,,`),),),,4,4,,,,3,  ,@(,@!0,28,p@,H,8P,BX,!`,Ph,p,0,,,,,`),),),0,`,,, ,P,,,,@,/@,,,@+,5P,,,p+,t`,,,+,;p,,,+ ,T,`,,`,H,+,,, ,,,  ,,, @,,,v,v, ,,,[,, ,:,,,Fؿ,~, ,0,8,@,H,P,`,,,,, ,(,0,8,@, H, P, X, `,h,p,x,,,,,,,,,,,,,,,, ,!,",#,$,% ,&(,'0,(8,)@,*H,+P,,X,-`,.h,/p,0x,1,2,3,4,5,6,7,8,9,;,<,=,>,?,@,A,B,C,D,E,G ,H(,I0,J8,K@,LH,MP,NX,O`,Ph,Qp,Rx,S,T,U,V,W,X,Y,Z,[,\,],^,_,`,a,b,c,d,e,f,g ,h(,i0,j8,k@,lH,mP,nX,o`,ph,qp,rx,s,t,u,v,w,x,y,z,{,|,},,,,,,,,,HHo)HtH5o)%o)@%o)h%o)h%o)h%o)h%o)h%o)h%o)h%o)hp%o)h`%o)h P%zo)h @%ro)h 0%jo)h %bo)h %Zo)h%Ro)h%Jo)h%Bo)h%:o)h%2o)h%*o)h%"o)h%o)h%o)hp% o)h`%o)hP%n)h@%n)h0%n)h %n)h%n)h%n)h%n)h %n)h!%n)h"%n)h#%n)h$%n)h%%n)h&%n)h'p%n)h(`%n)h)P%zn)h*@%rn)h+0%jn)h, %bn)h-%Zn)h.%Rn)h/%Jn)h0%Bn)h1%:n)h2%2n)h3%*n)h4%"n)h5%n)h6%n)h7p% n)h8`%n)h9P%m)h:@%m)h;0%m)h< %m)h=%m)h>%m)h?%m)h@%m)hA%m)hB%m)hC%m)hD%m)hE%m)hF%m)hGp%m)hH`%m)hIP%zm)hJ@%rm)hK0%jm)hL %bm)hM%Zm)hN%Rm)hO%Jm)hP%Bm)hQ%:m)hR%2m)hS%*m)hT%"m)hU%m)hV%m)hWp% m)hX`%m)hYP%l)hZ@%l)h[0%l)h\ %l)h]%l)h^%l)h_%l)h`%l)ha%l)hb%l)hc%l)hd%l)he%l)hf%l)hgp%l)hh`%l)hiP%zl)hj@%rl)hk0%jl)hl %bl)hm%Zl)hn%Rl)ho%Jl)hp%Bl)hq%:l)hr%2l)hs%*l)ht%"l)hu%l)hv%l)hwp% l)hx`%l)hyP%k)hz@%k)h{0%k)h| %k)h}%k)h~%k)h%k)h%k)h%k)h%*g)f%Bg)f%Bg)f%bg)f1HH=$/% f%  H% H% H%X H% 1H% /H=sH% % H% L%4$鎡1L-$HSHH5b1BH% C>9|)1HCL,% f.@AWAVAUATL%̀USH|$Ht$LHD$xL1nHD$H8H=׆)z{Ht$H|${=tH=1H=)uH=H=Hӆ)H=/H)czH=zWzD$HT$ LrE1LlH-|ff.@I HHH ILDIM9uMb Ll$ LL=)u =@)13wD$A9Ld5Af.AD9zIcLtH4A>-uA~muA~tH5xLtH5xLtH5xLtH5sxLtH5gxLtlH5WxL]UH5HxLF>H5;xL/'H5.xLH5!xLH5xLH5xLH5wLH5wLH5wLH5wLwoMffA?/L=Հ)A?L#'H)H=v1$) pH=w1=f)pKH)Ht,H5HSHu)H) ~)@IH W~)~)QDփ<)P1$HQ#B ADxH=(),U=Q)tH= )Hw H=y)t=2)1DH=~)HH5&HHmHc)H5vH1L%vH)Ht%ff.HSLH1HHuH L%DvHD)Ht HSLH1HHuH=})`=~)S=~)~.sI}H=e~)Ht"3u)H=~)LN|$ HH5uH}u)hUzu)I1= ~)H5Yu)H=3~)*H=t1w0L%s})KH$H=})^ST=*})H=s)H=1kLH=t1H={)1H {){)1He{)<'=|)H-a)H~HÃ~5HH5?tHlHH5(tH7r{HcH)rH*a)HIHH5_H.exe@H52LIIMMu HcLH`98LHHÅL4L,=LH=m{)=${)O1HX`)1HD})H=mHp 1BH1H1H={)>H1H=裄IHH=苄IHnL=b=6{)_H=DrH1/AW:`qLH1zWH5HH'z)HH5z)H=1xH5#_)H=tU5HL$H= p)H)H.Hع@BH=/p)HH5HIHaz)H1H=p)U)a>H5^)H=15hLH=Rq1H59y)H=J1oLH=5q1LH=1bH5^)H=1#HGHH&)HtHPHH )H)HH$H=?ffD1I^HHPTL&<H ;H=X)H=n)Hn)H9tHW)HtH=hn)H5an)H)HHHHHHtHW)Ht=sn)u(UH=W)Ht H=\)gyKn)]f.ATH 'n) UHSHH=GYH9r1L%Sff.fH=m)L1HH9sH5m)[ ]A\ff.=yy)SHuKn)w%HH,n)1H H=-GH1[@H1H=&G1[@QH=̑H1띋m)uDUH1SH5JhHH=m) HcH'H-l)H HFHFHNH5F1HH)H5l)H []ff.AWAVAUATUSH8.m)H$E1L$pl)ELT$ IIHD$(LHD$D$PHD$fEMDD$HL$IDI9LL)IH\$0IIH|$'''H9HNHk:HD$HH7IH'HSLHHD-JHp7HD$L)H%I$I$IHH?HHH)Ht$ HH)HM,LHD$(I9tLGLt$0k)I\MHD$IDI9'Ll$ M|$G LcL$H:L$F$HDAWk)=9k)=HH U$D,C,,HcH#$hD9uyH3$MDhED$Pj)D$Pfo}j)Hj)H8j)fomj)HC0Cfomj)C @HyD$BHuPHcaj)L$P=1$LHT$4MAH$McDj)B,8)@l$0HHH)Ho)D$`o@)D$po@ H@0)$H$EA AwH~ $JcHD1H-'$HL$0foD$`HH4H)HHI)H$H)A>@8foD$pHX8HHhH B$@Hfo$@XBD}-H AwHcH=!$f;4O)H @$DAI5H=Zh)DH5TB1DD$TDD$h)fE$LLMf.D-h)wh)EvE1VfD^h)LL$/LL$=h)Al$AH=BLL$1LL$g)gAEDH Dg)H=lALL$~LL$J@D\$PEuH=ABLL$#g)NLL$H-$L-fHM$AQH=e)DL$B xH5ʼn1DL$EH\$HH5>HD$HD$0L-$DL$THLd$8I FHK'Lt$@L|$XIIIHDH=d)DH5>1K|Hld)HITEH2>H߁I H>HO1IIH޿),H5%d) L9|$uLd$8Lt$@H\$HDL$TL|$XA ARHK $JcHf.=Fd)MHLfH c)H== d)H tc)H==LL$LL$^@H+$DHH=1c)H=1LL$H5F^A!H- c)LL$H <H<HH5<1LL$H)C,,H5b) LL$DH=b)H<1H5]LL$H('IcAH-wb)H LL$(H7<eH=Ub)H<1DD$H5j]KH'IcAH H-b)H;H;HNH5;1H H)H5a) Tb)DD$H31DHD$`*HSHXH(HsH 1'H fHsȿ5H襥HD$`Hsȿ)]HD$`HXHsȿ(nHD$`HSHX'OHD$`uHSHX0HD$`VHsȿHD$`>HsȿfЦHD$`&Hsȿ蘧HD$`H3J聧HD$`H3IjHD$`H3GSHD$`H3H<HD$`1/&HD$`HsH;PHD$`HsȿAHD$`nHHs-HD$`SHHsHD$`8H HS?H HD$`HHs|գHD$`HHs^躣HD$`HHs&蟣HD$`HHs>脣HD$`HHs<iHD$`HHsNHD$`tHHs3HD$`YHHsHD$`>HHsHD$`#HHsHD$`HHsǢHD$`HHs-謢HD$`HHs+葢HD$`HHs%vHD$`HHs/[HD$`HHs*@HD$`fH3~HD$`OHHD$`BH3!գHD$`+HsȋX輣HD$`HCHD$`H3-藣HD$`7HHD$`7HCHD$`^S~HD$`CHCHD$`T)HCHT)HCHD$`sHD$`eHHD$`XHsȿmHD$`@H3V賣HD$`)H3T蜣HD$`HsHX貤HD$`HSHXL賠HD$`HSHXK蔠HD$`H3-HD$`Hsȿ5HD$`V6H31H=o5H] h=R)HXHHLKLCȋ/HXHsȺzH  H3H{aVH3H{QH{b H;11aU)S ЈsU)gU)S ЈUU)HHD$`N5HXHsHV aH{1Q U)S ЈT)3oCHC)D$`oCH$)D$poCDŽ$)$oCHC)D$`oCH$)D$poCDŽ$)$oCHC)D$`oCH$)D$poCDŽ$Ƅ$)$toCHC)D$`oCH$)D$poCDŽ$Ƅ$)$/oCHC)D$`oCH$)D$poCDŽ$)$oCHC)D$`oCH$)D$poCƄ$DŽ$)$~Ƅ$DŽ$HD$pC)D$`HDŽ$HD$hHD$`HD$pƄ$MH{P)H$1HDŽ$H$DŽ$HDŽ$9@NoHS0H@oCHP8@oC HD$`@(@]NoHSHD$`@oCHHS0@oC HP8@( NHH@HHD$`hMHHD$`HHSHPFMHS@HPHHD$` MH1ɀ:!u HHPHS@HPHD$` |MH1ɀ:!u HHP@H@HD$`oCHC)D$`oCH$)D$poCDŽ$Ƅ$)$hoCHC)D$`oCH$)D$poCDŽ$Ƅ$)$#oCHC)D$`oCH$)D$poCDŽ$)$oCHC)D$`oCH$)D$poCDŽ$)$oCHC)D$`oCH$)D$poCDŽ$)$loCHC)D$`oCH$)D$poCDŽ$)$/oCHC)D$`oCH$)D$poCDŽ$)$oCHC)D$`oCH$)D$poCDŽ$)$D$`|D$`&D$`D$`D$`/tD$`*gD$`-ZD$`+MHD$`?HHD$`2H;H%1HD$`HcHD$` HcHD$`HcHD$`HcHD$`KSHXHLKLC=K)HsH;?5.H;}HCHD$`zHCoHD$pHC)D$`HD$hZHs11MHS->y-J)HcH J)H=$H<уJ) HsH=M)k7Hs1HD$`H{1HD$`bI~C@HD$`HD$`J)H;TH{qH{xcH;+VH{ H>4,I-I)+I)HcH I)H=i#H<у`I),1111o,HH{E1jE111j1jH H3H{;HH3H{*HH;}LxH3H{LgH3H{LVH3H{LEHgHQ)2H3H=m1qH;dKH;WKH;jKH;]KH;1H;;eLH;GH{16KH3H{1#KH;vKH3H{KpH3H{K_H3H{KNP)BH{12HSHXH H{ȹ11 H{ȾH{1<H;11[H;11JH;1Ҿ6H;1Ҿ"H;1Ҿy$)oH{5aHsHXQLH;/ :H;1 +qG)HH_G)XG)H;1HD$`H;EH;E M) }O)H{H31fHD$`^H;1b}H;1SnHXHsȺHALHsH+軕{HHH{1HߕHHXHs1`HH/$4NH=D)D$1H%H5?L-#MHcD$HD)H5oILEH&'HHH HEH>HN1mH޿)HMH5FD) <D)DD$D$PH=}MM]Hc~D)QHcrD)M=H5 $Hu LkMH1H=!i1H5HfuLkMkD$aDD$M^D$`HC1C)Y'C)E'H =L謏HD$`2H1H=>h1o1舏HD$`RtdtHD$`Qtd`HD$`PtdLHD$`0C)&C)&f.f.f.f.f.AWLC)AVAUATL%E)USE)M9E1L5l$L`$H=a2$L-zD$L V$Lj$ff.AH5j$ HcfAA)H+C4Ht H8A)H;tHC,1HtHlC$E,$H[]A\A]fATI@US-Ht4h}HHcHCHtC LH)HY>)@)KH @)@H@)H=)>)L$HI$HEff.AWAVAUATUSHL-?)L ?)Hc?)H?)OdH==)M4$IvHTH9AV4HH))A1f  HL9uM4$A~8uDAF4 pIAvHc;IFHt7HcM4$HH>)AVMI~H)HAF uIFH=a1HÃH[]A\A]A^A_MtsI>tmH <)Hta Hc9NI~HcHIA9Hs>)H\>)D=M>)1L4M.E}UA~82&>)AF H=G<)H>)H=)D%=)L4M.I}DA;m,-=)Hc/IH@D(IH@H;)AAIc¹IEIHxHAD`@v=)AFOtD%b=)M.AE8dH=~;)葴uAL->=)L G=)1OtM.D==)E}E(L- =)L =)H=-`1ީH=_H=9`@USHH<)<)u"H<)H<)HHc<)HBH9s$HSH{<)S}<)H[]fHCH-:)HV<)tuH=:)1H)HcHK:)fHff.;*t&tR u:)!*uff. *t/t( tυuH=1H馨fD*uXAWAVAUATUSH8 |;)j;)`;)H=9)"H=9)0HQ;)H3HQ;)HHP#;)HPHH59)HF9)H:);)9)HV$LZ`$L5Sa$H-'$L=9$L-_$t:8)HM'$H8[]A\A]A^A_D\$fDH5:):)L%K$=a:)D\$Ht$HcE1Sff.@fA>3)SS3)RR2)QQo2)&&[2)  G2)32)2) {2)g2)S2)PP?2)##+2)!!2)332)441)11k1)[[W1)WWC1)AA/1)&&1),,w1)>>c1)O1)  ;1)  '1)  1)0)!!{0)~~g0)||S0)?3)Hc3)H53)H1)1Hx֭H0)Ht0)D\$pLX$H=1)D\$?/*b3)IAL q1)1)H83)AAAA43) LX$/)a/)M/)  9/)  %/)[[/)]]H=0)1Ҁ?$u H1詬H0)Hc 0)HH/)H9/)L ߀M HH/)H=\0)Hcu0)LB6) HH@@@@Hu,H HuHH1H.)H.)q.)]]p.)""\.)66H5/)H=D\$LV$$.)ee.)dd-)zzx-)xxd-)IIP-)))<-)(((-)0)H=0)HH+.)H0)H$H#)fHSHH &)H&)H4H2Ht8H8t2H=z&)D~&)HH &)DHHx=_&)xHD2HCHH&)HCHu$)[H-&)HN$))&)@ff.@ATUH-&)SHtjH&)LdI<$HtUI$HtCHHDH%)Ht.P%)HPHH#)H#)H%)%)[]A\ÐATUSHvv|7IHui|7ub@ȠHHtZL`HL`fnHfpH@ @(H@4f@1H[]A\f1[H]A\H=H f.ATIUnSHcH9Ht6HDž~ L蓟H1HcHfHt@ []A\H=HH=fDSH跜H[|ff.)fH")Hi")j")fH9")=j)fH=1")H=")")f=!)fUSHH-#)Hu)@SHH#)H\H;HuH 1Hv#)H{#)Hh#)HE#)3#)%#)Hf!)HS!)H[]ff.kff.ff.{ff.~!)ATIUHSӃ 5 )H!)L$H!)4#)H5J!)H")Ht H5")HH5!)H!)")Hξ@H-{ )Q ) È")L[]HA\01H=?F )BAUIATUHSH )!) H )5)H,H )4H !)Ht H5!)H H5*!)L)H ։( )这@H}hHcHHLHCHPI HqHC HH1C(fAD,kHSHC4H[]A\A]1H=F)HA )HPH6 ) ) )ff.H )HPH ) )z )ff.H )HPH )T )J ) ff.H )HPH )$ ) ) ff.H )HPHv )))ff.HQ )HPHF )))ff.H! )HPH ))) ff.H )HP@H )a)@Hc)H) _) Hq)H?)B)t))HS)HAUATIUSHHHHt$IHD$8H&)Il$Hu*f.HHtH{HuLk2f nfHn~i&)LhH@flHS&)LxgHLHH[]A\A]HH=B1'UfAWAVAUAxATUSHHHD$xF`HD$`7`HD$h(E11HD$pHD$`L '-IP t"LT$`HcA HWDQAH8t)x8foHcփHHT$hfo@BH@I9uHT$`HcHL$hLL$pHkHcƉHHD$hHIcHHD$pHHD$`HuHH=mL $A4ff.@H -u AGuAND9sxHBA@tjHfD@LT$`HcA:WHL$`Hc҃:foIcAHHT$pfo@BH:HA9uFLd#ff.ff.@HI9tLH}?-ulut-HHx H5OIHELHP1tLuI9uD$Lt$\L=K$D$8HD$D$f9-)D$\tHDsu-)HL$hHT$`MH)DIAA?t@t$\uA ZDJsuAA"KcLfDHL$pMHDH6-=)PAHcH4FD9tPH=()t^H=?1H荇Dr A"v@H=i?1bDDrLH=>12Djr&H|$p賘H|$h詘H|$`蟘H )Htd;Z;-A%HtHxH tHHH)H5)H=z1HtH)H )Ht 8H=ZHt 8D$l$HZt!ff.f1H6uHD$HHu?D}aHk:H蚑HHuڀ}H|$~=)?w)?Ȁ)~) l)HD$xʃHtXH8 \$8 \$HHu x'DHHHHuHD$xH )ʃD$ )=2)t )t0H=)tH=Y1H=)tH=Y1ф)f%f=H[]A\A]A^A_þH譐O))H5<)HjHHHHuHHH>|$ )=M) " ))t$H5H=vTH{HD1)%T)))))NHG)H58)HD$(Ht$ H H|$ 5)Ld$(l$0HD$HDl$ g)@2H=# )11HH) )gl*)) )L% )A<$PuA|$,u IL% )H|$踌L HD$L% )H55LP %Q)lH=] )[$)OH=@ )9H=* ) )莝% ))t)H= )1ѳ ) )H= )11th1(k))H= )菢H={ )11ZH) Ј)ZH5K )H$$%=@H= )1Ҿg 4)?@()Hc)H=)HM)ؒj )9H.)H;(H;)% )))H=})vH=)H 1H?HzHH:uqHcHHVLfHT$ lH )HT$ H1)H J 8),) ) )%) ) )H)=HHT$ 諃HT$ HI=LH)HxHD$ 6HT$ H5b)H貅It$HHD$ H|$ H|$ M8H=))<$H5)H=Iw 5)) )H=)H5CPH=k)u )Pb)1HF)H=))HrAą#Dq} )qH=b)UH6)Y7)J();)/ Z)#H=)#L%)H5L̃H5(L赃H5L螃H5L臃LH=u.1vf i ) _)xT)l% )`HQ)H)M)A%m )5)))~)%)%)H=)111 ) )H)H)H=)1H${(H$8H5u)H=1tj )^ )} )FH=7)11 )+ \ )  N )%B ) 0 )H= )H)HHT$ H|$ II| G )L)H5?H )HI1ʄH= )螅L% )= )h )< )= )?w~ )?@r )l )1X ) H)H ) L%)=L HH2 HBA<$HD$ tzuH=E19sL%)HT$ L)HcHT$0HHL$(eHT$0H5)HIăHc؀HL$(H|$ H$AD 薷HD$(H$8iH|$(N1LH94H=%)H/E )?Ȁ9 )H)H ) ) ) ) ) ) )H)H )H=])xa1 )uD$8hH5Y)H=PH5A)H=48H5))H=, N )H5)H=qH5)H=JYL%)H5OL~ )H5 )L%)HtLl~L% )L%y)MHH5@L9~1H54L"~ ); )/ )# ) )  )H=(111HH|$xHhH=(L%= )谉HD$xL%, )F)H)D$|$tyD$sL% )H=](PL% ))躒EH=6(L% )"Hc)L% ))H)~|$uD$1|$D$H(H)2`H=())(H1H$kIH$8A )gH=X({VD$8ID$8< f)z)!H H) )H5L{O8)HH )=M) "V)HN)H5LwH5Lwx)\H5DL{t)H5L {tLH=%1m ) H5DLzf)H5%Lz;H5Lz)f%?f @f)HH=1l$ HLl>Ho(H)HH@`H=?1lMH=>1lH=1l'H5(H=)?1lH=1olH=+?1\lHt$ H=#1DlHH)D$8t3?HH )=)* ))H=))Ht6HHtHH`}HuH=|)O}h)He)vl$0Dl$t A>tHH=41=vHuAM9I@I~(AFtA~0t@pHL1uoH= )? 1[)f%?f f))uH=~:1ibLH=:1iL@Dt$LfH=1A&)sHٺ;H=]&sHٺBH=&rHٺ>H=&rHٺIH=&rHٺH=hrHٺtH=&rHٺMH=W'zrHٺJH='arHٺ|H='HrHٺJH=,(/rHٺOH=c(rHٺlH=(qHٺHH=(qHٺIH=()qHٺFH=_)qHٺ7H=)qHٺJH=)qHٺ@H=)gqHٺ?H=*NqHٺ?H=:*5qHٺCH=a*qHٺ|H=*qHٺDH=*pHٺ@H=&+pHٺLH=U+pHٺHH=+pHٺWH=+pHٺ]H=,mpHٺKH=I,TpHٺKH=,;p(`<@HٺBH=,pH(`qRH=-oHٺRH=V-oHٺ;H=5.oHٺMH=\.oH=(#N 9hH=?H5.14j1H5LH=.1h^H5LhJ(H5H=.1(^PH5 LtkuH(f%?f f(Ho (Ш=(LH=-1]BH=01]/HH=V,ynHٺHH=,`nHٺLH=*Bn-A1Ҿg g8H=01]H)(HQhH=R(\HH5(H=/HHiHD1#f.f.f.f.f.f.fHHP0HHH0H9r1H9ff.@H?H6HW8HN8H9r H9rWN9r19H?H6HW0HN0H9r H9rWN9r19ff.@SHHHtS twtu[fDuH{H8uHHHu[t fHG HG HG(ff.@UHSHHH5M(H>(HH)HH (HH9H+(IHHH!H(HH)I)I9HBfHnfl)(HAHCH)Htd@HH@HuHJHH[]DH=(H(H (H5(HH9[ (OHKHHS[]ÐSHHH9=(AHt11Hw/H=%$HcHE11HHHuH[Q wHu€%u̓ uHtH@HHtmHtc@$HEH[fDHuHPztHR:.uz{Et1E1nH=ZH[f.HH[H=HLN8Hv L@(I9r MI)M9s?LL9uHu2Ht'HWHLL1H=|GH HXDxPtÐHWH@PH=GHHHH1Xf.SHHHH7HHHpHx H@HHHǀ1H)HHB(B HB0HB8HB@H(ǂHHHB(HB8H1H=(HpH(tHHHJPH0HBHH(HH[DH߾HT$HT$HH1HH[fHHtHHfDHH?dHHHvHdHfSuu&u4 uBuP[f1H=Zt1H=}Yt1H=Y t1H=|YtH=g1[YDH((H@xu HtG'@ubHH5(=(Dv 5(Vu"fуt (u HD H=HWAWAVAUATAUSHH8Ho@SH3H=11YH;Zaf)GHC`H=(Ht H91EL-(HDLd$LL (H1LH=HHXHCHHtH9u+HC`HtH (H9tRH8[]A\A]A^A_L`xG (HsH1H=HXLkXLh0V(H5EH=(HU  ?(HLH9-(sH-(=&(bH=(HGHHH1H=(IHGLIHD@HI93M$HC`I;D$ uLH0ML$M9rAD$tL; '(sMT$LL$MtA:L$tH=5(LzuL$A:$tH=(11LALL$Ht$H@(HHX@DЩHL $zEIT$H4$1H=/VfDsEfLM{ID$H (HID$HL4H(H)L9L=(LL9/H(HHHH!Hu(HH)H)H9HB1fHnfl)[(I$HtfH0H@уI4HuIt$LE1H 4]1I|$tDINifH3H=v=1NH{0HuAAUATUSHH(HL%(ff.@Ca Hk02(H5(H uC`A$]( HUD@u tIE1=(Hr(LHH@@=(LzDH[HHCH[]A\A]Huۀ=h(tH= (FsHI;sLHH=<H1LH[HHDUDHL(HEIHq9pH0H 1HH=.<yLC`:f.HH=<1OL=(H[HHU L0(HH=;I@HHEH01L=^(H=LyIk@H(SHHH={(H@@Ht)H5(H;5(HH=(tHFHH([ÐHH6HH(8H5(H(HDUHH5SHHWHv<*tDH5HYHuHHH[]gXHHH1[]WD|uM8 uLM8KuCU8Su:U8Su1ff.LH8u*u1H[]øf.ATIUHS~HuEIT$0H9Ht-HHt!H9t5H2H([]A\HrH{t[1]A\USHH(u HHtHGHHuNH+H$(Hu-DHHt H{HTuH[]@H1[]HtH}@H5-V@AWAVAUATUSH8H=[(qHHG(HHHtXHlC$t:HK0HC@HH!t H!H9HS8HH!tH!H9DH[HuH(E1HHH(HHfC$t(%=tH{@tLIHHH@H[HuIH LHE1E1RE1H\$ HHD$MHl$Hl$ fDIH+H*E$t; >(HE@HU8HH|$HLtI9M9Hl$IIIFHI9uHl$LT$LH H\$ HLT$QHULT$Lb00ff.ff.ff.ff.HHLHHL La0I9HBI9uE1Hl$Lt$LMMMDHII$HHC@MLk0 %(LHM|MtA|$uL94L9+HEIH9l$uHl$H/XH (HtJH-7ff.{Pt(HS8HC(H=+7HC H3H)HHD1BFH[HuH8[]A\A]A^A_f.H3H=71F*f.H3H=.71E f.HD$HHuMH=97LAU1HT$HL$8ECY^HT$HL$(fDH8H[]A\A]A^A_"WfHHMLVLH=7H1^EXZATUSH(ƒ#½҃9c<"~H5(H5H=(11AHtXSH=\(1Ht$舉HT$:Js(m@H[]A\H(L%(Ht4HsH=b(E111HtHQHHuH=:61CD(fDHH(HQ`HLH=0(HqXHp0Hr0cH5(HH=56[]A\C@H5i(-?(HH5j(1H5I(@H@(L9H(H9=fDc-(<"hfH=y(HQH=51KCH[]A\fH5(H=B(}_HHt@uHD$H@?<<fDM~0f.AGHރ8< t <LHE1Nt-M?MIHt?*uÀuff.fL9tHCSM9tL6SL9tH)SH8L[]A\A]A^A_AFutHI~Ht$H\$UyIHu+AG8< xM?MtIHtNtH|$HD$@HD$L8M@E1(H=(L輈HHUMH=(L蔈IAFMMDAFu=aAFQHt$H\$bxIH&=I~Ht$Ld$=xIHu+AG8<`M?MtIL\MtAFHt$Hl$wIHu .fDAG8<M?MtIH MtAF;ff.@H9twBupAWAVAUATUSHH(F'uFLf@Hn`Mt9Ht4L*LrIxnHx;IE11HLC%uSH([]A\A]A^A_@HtzijHHH(H=1[]A\A]A^A_>@HT$HLHD$7tHT$1MHLbtH|$0Phix8DHLHLHHD$ImHxFIULtLHLAf.L11HAH|$OH5H9AWAVAUATUHSHBtH[]A\A]A^A_@L:L6IHHBV$LLHD$]IHHC@ID$@C|oC0AD$|AD$0A$Lc`HCXC'uUIGHLLLPH50]EHLH=/[1]A\A]A^A_=fHt$H+HtIUH zuHHxDH5/HB`uO`(ODtuV$ t<@uHWHH(H"(HWH5 (HHH5y(Hp`USHHH5>(H/(HH)Hv{H(H H9H (IHHH!H (HH)I)I9HBfHnfl)(HH@jHBHHBHH[]fD H=(H(H(H5(H H9f (Z2(wBAVAUATUSHHt%CtZw@t u H{HHu[]A\A]A^@IH=9W<uH=D(DHk@L-L5HtLeLLHt$LLGtE8tNt1tCbHmHu^B(E8D=1(uE8fD=(uE8fD( (<t}(USHD$ HYHl$ @H=(HHD$ D$ vD$ H=(HHH[]D=(vf.H=Q(1H5D$ HHl$ @H=!(HHl$ u|fATUSHtOHL%%H-K@uEHsH1M8HHtCuHsL108HHu[H=]1A\8Ho $'H=*ff.S11HH=(;)H=(H5THtFH=d(Ht$H K$@ H=D(HHD$HC@GHt]H=(Q& H(H(Ht+ff.ff.@H@8H@HHuH[fH=(d H=*H17K$HC@k&AUATUSHH(HG(o(H=T(LhHH5(Lc0HG0XH=@(=(HsH= (~HHHH=z19HBHaH)LH5H1]GH=(1H5IH ,HIH=~1W9H([]A\A]f.;fD9fDH=i19H=)18(HsH=18H{%A fDHsH==)5'HHtH?t(tHu0H H=1AfDHH=ݾ1AfDH=1@fHH=1@ff.HH$_H=V'@HHm$hH=6&@AWAVAUATUSH(HT$HtYHHIIL5$D{CIcLf.H{HT$LHHD$HHuHD$H([]A\A]A^A_H{0HL$H(LP=(=l(nHC l(@HD$HHRHC F(HHD$HH2nDA$IH{H ЈHT$HCHHT$Ht&u@$tH((HP0HT$H{LHHD$HSHHB$Hr0%Ht$=JHB@ r(HHHD$HHtHL$H?(HHD$qDHC@%cH@@ (HHD$HH HH{HL$H(L=(=(C- (H5$9BHD$HHL{H(AHUHHL$LLH4(HHDHHA$L{<.uu<((<H=_10:H=$10H~$GH=߸"ff.fAWAVAUATUSH8WH #HIHcHfDH=ǺH81[]A\A]A^A_3@Hw1H=3H{H8[]A\A]A^A_!f.E1!HCIUHHHx?.uAHH5(HDփ (HgH=(1H5H()AH{K!H8[]A\A]A^A_@H(!HC(Lc0HtL`0C-\ H#HcHH 1( H=L%I?HCHHXHlHt$H=(L1Hh@H9uH5(H8 []A\A]A^A_4;@HH81[]A\A]A^A_7H ( H=C?H[Htf.HLHHuH N(H8 [H=D]A\A]A^A_>fHWHH5 HWH5$tH5!H8H=1[]A\A]A^A_0@H@UHC@LcHHtL`0HS (LH=,BHHB HHH1B0Hs(H1H= '0H{0  s(HHLH(fDHw1H=/H5(HtH=1/H=϶HCHHtTH0H=1/HCHHhHHD$HtHuH|$1p/HmHuH=1Y/{`{aHsXHH=1*/{aL5{`gH=c1/Lc@M@A|$8&AD$8H `#HcHH;=(HoHHw@1H=.HHE0H{@H}(6)CHU@Hu01 (H=SHT.Hu8H9u0tH=B1<.HHtH (Hr(H:HkHHHHmHuHWH5H=(H81[]A\A]A^A_yATUSHHt7H-L(IH9t(CtDw*t u H{LHHu[]A\uH=(LfHC H5(HtHHHQ`Hu(ff.HHtHHHQ`HtH9uB%u܋Q$tԁtHy@tA$ff.@AUIATUSHH*Hx貮HI*Hx螮HAEIMLH5P^$ff.DHHBAuHKHt/H5^$ff.fDHHBAuL-LL$0Huff.fHPuHLH/HufDHPuLH/Huff.fHPuHH/Huff.fHPuA$8Uue ff.AHH:Tu1HȄuDL[/HS/H[]A\A]fD@L1ff.(ATUHSHE9CL#H5L*tqH5L*t^H5Lz*tKH5Lg*t8H=(t'HuLmHuAHg(H8WA9~HS([1]A\@ X[1]A\G u֋E9CuB@H i(HZ(SHHH)H9rSH5<(HH9tpHM(I[HHH!H(HH)I)I9HBfHnHfl)(DHH=ֲ(mH(H5Ӳ(H ܲ(HH9u (ff.AWAVIAUIATAUHSH#(HtU&HHfHnL=-(pfl) $fHH@IGHخ(I_f%CPC`HC(LkXfC`HC C0C@AH#JcHfDfo,$kMt }/fK`fo4$KasH(HHCPHs(HH[]A\A]A^A_f}:HHC1HH=1LfK`HCfo$fK`Sfo$$K`cvfDfo$[bH=L@1VL(ZHI9rff.HI9tG}/tI9tA$A$L9%נ( HT$HLD$8L9LD$8@ID$HH(H$ hDL$L$LH= (HL$8HT$HD$83ID$HHt$8HH+H0HCHKH (@IT$HHS@HHHD$8B%H+B0HHB@HCIT$HHD$8H+B0HCfH{HH\$"H{hHHL$8H (H=-(=(tHS@HshH=1 LsHM3H(H@@!AF$HSHt H:Hs@1H=5 LsHHSAF$HR~B0AN(flAF0HB@IF@@H<$t7HsHL$HH(HHG@|$HtH$IE=w(LD$8M\$HLH AA(f%f=xAA%]A$NI$HHLL\$0LL$(LD$ LL$(L\$0LD$ AA|AC|AI|9sAK|HITHH!HL) G(IA@HL=(IS0I)MAXAC%u HH)HIs@HD$8gH= Jf.IHI9HE MIMH@H)(HH9H=x M+C0MAXIA0I+C0IAX B(L)Ht$HHIL$HA$HtrID$HH$LD$HLD$8YfH(H(HD$8HHB0HD$8HO(1f.IIEHAL-(LD$8M9"H{hH{xHHLD$ LD$ AEADIKDII!LML)=؜(HD$ hHCH~BHLH+x0HHHt)=(uH{htHs@H1H=HCHH(fInH@Xfl@0HS`DL$HLL$H{_HSHHr@L9Hz0H|$8B%^L{PMH{pH6H1HHCHHP8P$у&сHx@H{XL9C6Lp@ (IHLt$8HtHL$8LHVHsPHHCH@$HT$8|$HV82HsXHH;sPHCH@$u @HH8I΀|$Lv81H艬t@IO@HHIHHq0H9t$8fDH=|HQ(H/H9H=H'H=xٜ(<~H(H@xiHChHHTxfHCXHLH8@H;CPt H{xH3HLL$ DLL$ AE~DHNLHI!HCHP$LH8уwL{PMtAF$tnI??*ufH5enuVAV$L=(щЃ DMt@A#GHtA#GLtMMu1H=nLsHIL{PAF$%=^(<ty|$trI?H5mu_H(HtSH:H5mHT$ u HT$ Hzt/=F(u&=(I6H=1&L{PLsHMG8Ev| H=y(HD$ ME1HD$ HCHMU1H= mLD$HL@8AC|D (JDHIHL!H)HHB@xHD$ I4(E1z(KH=LD$ LD$ .H(1H=Tl7I IT$PHt oB fofsffI~I9IS0I)MAXAC%u HH)HIs@MMY`HCHIw@P$уH :(I_@H|$ H|$ HX(H@xt (Ht$LLL$(L\$ HLHD$0LD$0LL$(L\$ Hp8H9p0DFL^HLD$8MK0Is8M9sHHx@Ht? (HHLI9r+I9t\Hs@1H=HCHP$уHp0L)E~DHHHt7HH!Hp8AA&uoIAHHt/I;A@t)IQ`LH=1LT$(LL$ LT$(LL$ =ȗ(LT$8IA`HvHH0HShH蕦Iq`LH=Z1LL$ fD$(LT$(LL$ bI{@ (HHH=M1~L{PLsHSHj#fH=YfAWAVIAUATILUSHniHH HLw L-(1L=MfDL H[Ht*H;HtL/ uL1LH[HuMmMuHtl LHfHnEH]H[]A\A]A^A_1H=1cOfDLH|$ H|$IDdLL11H=1#wff.HAWAVL5(AUAATAHUHLSH1}H<LxXHMtqAtEAHLhHHLLHoEHUHPHELHHAHkXAD  ЈHCH[]A\A]A^A_ÐEHDxuHEHtL;xXuHŋD9uHEDE"1H[]A\A]A^A_fD1LH=1Et1HH=r1ff.USH@!H(=H5H=Ґ(Hy(6HW(1Ҿ1HO(H0(H (H2(H#(H(H(Hfy(HH@Hd(He(Hv(Hw(HX(H=(HR(H7(H8(1H=!H>(aH(HXHH+(H(H(H[]fDH-s(Hr1ҾH=ԑ(IHILIH11H=(3LfDH=IUH-#SHH{w%CHcDHDH{H[ {vH[]fDH[f-IwH{11gHHtHxHuËt 1@H[]$@H{WH{ NH[(UDATAUH-SHH@HSybHCHHtrH{hH@`H@XHHtH{pHtH{xHtH<HRHCHP|[]A\@Hs@H=(HCHHuHs@H=l(DHCHHnHP(HS@H=H@H01'HCHEfDHH= @AWAVAUATUSHH/HtfIIE11AE taM$$I,$HuHt)fDH[0Ht+I9uH[]A\A]A^A_DMtI9o0tRH=M$$D+II,$HIHvE tOH}Jf=(+H}11IH}L (MM9LoI$IMHIUHI$HHImHHEE11M +II쉅HmHEHӃ eff.fDAAM@8MuHuHH=Y1[]A\A]A^A_HS8IG0HB0HKHP8I@0IG0H&Lx8LC811ҾIX0+HCHHtHt HHHDI9t H[0HuHtdIxHH9HtMHBHqHMHpH-HFHHGHAH0HHHzHWM9>M$5@HtsEL dH=1DL%(@I9X0@IG0HM(H0H=(LIp8H]ff.x H~HHuvHv8Hu1H58(HHAHt\HHHBHH5 (HL(IH(HH9mHATUSH_Lg@L9gthH=|fDHHtL9cXu"9txuHH[]A\@1H[]A\fDAWIAAVAUIATUSHHT$@Hه(HHX0H1HE1HuHHtQDf$Mt L$ILH=(AL$t;E1A@u/HE0HIHHuHHuDE1A@tHm0HuMiDШDШ DЩDDЁ@DЩA%E1HuKwn$Mt L$ILH=(AL$t D1LDH[0HHsHHu؋n$Mt L$ILH=(AL$t D1@LDH[0H~HsHHuD% @ LDH[0HtNHsHHn$Mt L$ILH=4(AL$t‰D1 @uIH[0HuMHD$ME1LHH[]A\A]A^A_A@tLDH[0HtHsHHtODf$Mt L$ILH=(AL$tDD1uI@DDDHE1Lf.n$Mt L$ILH=#(AL$t D1@LDH[0HHsHHuDDШt/DШ t&DЩDЩ@hfD1E1fDHDE1A%u EHݾH[0HqHCHHt%@$1t@PHDƐLHD$H*H("1Hu2Aff.ff.@$D1 HDH[0HHCHHu݋1ff.AWAVAUATUSH(H-6(D%ш(1Hu ff.HmHHtHE0f@D@uE`uEtHHtL-z HۘDH[HHC`HtH (H9tC&0uԄuL1@Au H=z1L5zHH=Ӈ(1L zLzH zHzH5z1H(L-zL%zL=uHu%CL(H[HHH=Y(L1HS H=,(HD4HL1H=-(HS(H=(H41H{HtH=(HL1{{HhkCLc1L{LNyH[HQ1H=+n<(tuH>(((H-6(HtHHżHHuH^(H=?(H(H5([]A\A]A^A_uDD%[(Le(H B|1ҾH=D(>H=(1H5/*PDH=91ff.fAWIAVIAUILATIULSHH(^$LHD$)wMt$HD$LLH= (H@NЩ(ځ<Dڃ~"oHMHHqQ(#A$Y L}(LQ(H(A$IHBHtAHEHKH(H]HH@xnAG|9C|sC|=;(I_`u0HLILJIHL {@HIUHIELxLpH[]A\A]A^A_uTH܂(H@xÃ@؁%U(E؋؃Dډƃ1ցutWA9tH% ؁A$I`#Dž ЉӉA$q@I/H5.uHu5H;H5u&u"Et<.TAO$GDH5tH&H;H5uHD$JHMHD$tDL'@%Ã@fDATIUHSHHvHtH3HMPH}MHSNHsHt LHH[]A\nff.AWAVAUATUSHL=[|(MtH-_(L5n\L-o(IG0HHuNff.H[Ht7H{`uAG`tIIG0HHH@H[Huff.MHMuH[]A\A]A^A_{$xt Lk`fDL#LLJu6E<L}(MIx11HBf(=(D$T$LHtIH=i(IH@HH1H=D?f.=(L}(ML1H=ImH|(I*1HTD$O1H=oHxhIj~(<t C$1LD$LD$I@hHHH=61gt$LQHxhItIx11HLD$LD$}(<tC$u1LD$(LD$I@hff.fHAWL=6#AVIAUATUSHHH{w&CIcLf.H=}(LHHuHH[]A\A]A^A_fMtI~Hu1LZMH{~AHв#HcHMt I~HHH{?HH7ffDHC Ht xEH{1HSHxHHPh"1HHk C`HgL4$fLeH4$Lu LmLx0H4$L$ sf@fInC@s`@uMDAU88/HK0HS0HLd$(IHl$0HLt$HD$8HLUL\$LD$LL$ FLL tpMt!HD$H@0H HZ HuHMtIH Lq MuL0}aHLI$ufI $MtAE8t ~LaI $Hu`@tHD$LH@0LM(I HX HuIILMI Lp MuM1}aLL$ LD$L\$LHLL$ LD$L\$M$$IL$IHMHHD$8Hl$0LHH;S8u HHC8HmHL4$Hs0HtLHHC0HC0HC8H=w(]Hk@HPL%UfH}HtL/HmHuf}H{HHHfD.H=iHHfDH{LLHHdH LkLeLLuHKPHS@MLLGHmHufAt 1@LfDAIou ?L跽=z(T-z( f1AIFHHD `$HHiA 1A fDHx(1AH@xuAH Lq M!L0@H HZ HH@EuHL$LoH5jL!$H5 jL JH5iL.H5iLH5iLH5iLH5iL~Iv@H=[11H#1H=7eDL5r(4LbHD$(HHL$HHHD$HL$r)w$31A&ff.?AVAUL-iATIUSWIkM)HHp(I~HEykLLHEH;H-p(B0t.{Lct$LLHHuL1I[]A\A]A^ff.Ho(HtHyq(Hu(H9tHuSH@o(HubfH[HHtG{uCatHH{0HtھPktHC0H@HHt[f.Hu([H[fAUATUSHHG t+ tH[]A\A]HGHp(H[]A\A]fH=r(t H=c5LkLHRn(IHuGH[PHt6CatH{LHHRH H[PHuLH5n(HƋs(|LH=r(HHvm( j0H=r(Hbu(5Tu(HGH=q(HGHq(H5gW(H=q(H q(=r(QDtWPq(<tI$=r(t D€&q(E€=qr(tM ADH[]A\A]f$=Fr(t f.HsH=%ADH[]A\A]DLH=>@LH=@H=)$HHt\1=r(9F tKHpHt 9B H=Hl(HtH0H5Ll(#H=SH51l(@H=4n#tH=L1 H=p(H5k(H=d1H2H5k(ff.HH=l(aHH=l(off.@H=l(tH u HHUHSHͺHHHj(HHj(gH=Io(HCtHH[]%DH[]fUHSHmHHHpj(HHfj(agH=n(HCtH˅1HHH$k(HCHk(HH[]f.=yl(uAH@j(Ht.fxHPHHtH@0Hu6l(DG<v SHH9w(t[HC(H=bHpXH@`Hs0Hp01HsH=b1Hie(ATL%n(USHHn(x@Hu #H5yi(HHHts[]L%n(A\H-Ii(Ht@HHդHHu[]L%ln(A\ÐATUDSEuTHtOHHtG 9n(t B$3C$uBH:11H;11IMtHt H@PI9D$P@ʼn[]A\fff.g(=n(Iti(DH5{h(11H=`h(ff.H=n(1H5Mh(H=6h(HL$D$g(Hh(h(^HfLh(Mt=uh(H=&l(Hih(H=l(Hu]HH\x uH=k(IfH9V„tEH@0H u,HPHHtB%uHrHuH9M I@HHu:DHHu]HZ(@HPHt_H9B„t=H@HtˋP$uff.ff.DH@HtP$uH9@H@HHunfH@H_P$u@MtIIL j(ff.@AWHGLAVAUATLgHUSHH6LE@tVIAH-L-#DFI^MefD (ttÐD(tHtHDH=Z>(ÐHHEATL%'(UH S趍H@IT$HID$Hh@HD([]A\HD(ff.S H'(^H ?(@HHSHHPHCH@HPHO'(H9sHHH ?'(H 0'(H[H%'(otff.@H'(H>(H9sHPH@H&(H&(PPtAWI0AVMAUMATAUSHHt$蕌H|$11LxH L6HH2DeHE]Lu Lm(Ht9H=9<(H2<(tHH;uH+H[]A\A]A^A_DH<(D HtKH;(tHxtHHHtHxuxuxu11H=aHH;uH;(ff.fSH7fHn~u;( ?(@flH_;([f.SHB7fHn~5;( ?(@flH;([f.UHSHHH=;(t*$H=/ H-;(H;(H[]@H=;(uH=;(uf.SL ;(E11H5;(HHjjjH H=I;(tWm6H޿G~-;(H&;(g;('H5;(Ht H¿K^H:([DH޿IH:(f.AUH'<(ATUSHHH=:(H&$(Ho@H9HPH@=:@(H$(H#(uCE1HhIAE1HpAHwX1HPHn葖H:(HX`LHgHx^5HE'HHH=#fwu<_uHBHuHH=312HJI݅1LH谆L-)#(IHH=2@HIUHIEL`1N2HGI~HJInL+H讂1LH1L%"(H}H@HIT$HID$HhH[]A\A]|@Hoff.AWAVAAUME1ATIHLUSH8HH|$AHt$(E1H|$ H8(HCH@H8(+H58(ρ1H=QHH\8(HX裄HHE8(HHD$~T$ T$()$@HCMtHx`tLfo $L;HPMtGM>HEHLTHCMtHx`uL``fDǀHL$HHpMtLMEu{HH|$t,2 ;(~6(@H6(D$H\7(H97(H67(H37(H8[]A\A]A^A_@Hݿ32HS~D$HD$B@HHbHQ@LHEuL@EuH+IGMtLf.fo$ILXPHIAWAAVIAUAATIUHSHy1L0H@CELcMHtH5Y9H蜫u0CH߃ ЈCH[]A\A]A^A_fDH5/HYtH5 /HAtHH=1wD cLc^fDL蠬Hx0A$LHHH u%vfLrHLFtQLDBA1vDILFLQEt0\u>QHDt A@AH{EuNLcLDff.fUHSHpH/H]HhHX8HPh@`H[]@AWAVAUATUSHH 9(H4$HT$HeIHtl?tH{H-?uCH=Ş1H<$H[]A\A]A^A_釱LH՟HHtH{L!tHHuH$H{OH{8OL{Hd8(ML%@HAGH{@H#LsHMuHM6Mt8IoIvH般uAGA2F8uHL1 M6MufHHuH7(M?MeH$Lx8ML%ff.fHAGH{ H Ls(MuHM6Mt8IoIvHȫuAGA2F8uHL1JM6MufHHuH7(M?MeH$HL$LhHHX1A}/H $AH6(Ht@HHHuH $HH[]A\A]A^A_mHHD HHWLIHu3M6M$IoIvH贪 AGA2F8uHL12L8IHuM6M IoIvH\AGA2F8uHL1ڜ0(0(L-X0Hff.@AWAVAUATUSH8HK0(HuV@HR0HtIHz tHBHJHuHHHtxuHr(HHB HH9JuHrHR0HuH=4(HtKH6(H5/(H=H1(1%E蠆Hi/(Ht@H{JHHu|J1LH5(11H=y/(.(Hk1(|L臅A3(*33(<] H3(H3(HtDHHHuH.(H=.(HVHn3(Ht%~fHn~B3(flH43(HE3(Ht%V~fHn~3(flH3(H=3(H=0(H=C1茝H/(HttL%),H-(L- (5)-HsHt L1JHsH1<HHt(HsL1&H{}~H-(HD$,1L%R#HD$L-HuAH{0L4P$H@@сDщP$H[HHtKH{0Ht$g HC8Hu|$,t1G|$, Hs0LH1sH[HHutPH|$< H].(HuE|$, H=xH16H,(HtH{8Q H[HHu H.(yJH=2(L-,(1ML5x& MmHMI}0LIHtHh@H'I}01IHLILI9s(@LH11!LH趣M|I9rAL$$ MmHM{11H5A1pH'H=1(1HXHHh8HGUHFhF`.=0(= H=/(L-/(@; H=+(HL$1D$,H5+(*(H ,(+(1(b1(\]׃H=@+(KvD=#/(D<EA tH=X/(LHGH=/(@ .(t3H:/(Ht'DLH腀u/(HHuH5*(H=k;փ1H=*(u[H=*(1)(H=i*(褝߀ڭS.(<tJH=.(LHGTH=y.(H5h6譲Ht=e/(P$ P$H=B+(H==.(H5qqHHH)(Ht3fHs8HtHSH=*(7, XH[HHuր=$/(5/(u|-(H=*(<DS/ ` H=*(CH=*(tt\H0)(HuIfH@0Ht7HP8HtHxXuHxpuHxhuHJPH9HPuHRXHPXD=.(,(<k\PA <$H-=((HD$IHH((1L8M(ff.AIHtmIHHD$Lt$$fDIwH؃I4AFM6MHuI~譡uD9rCt-LIH$IAt~IGHHtu@$toH}thH|$wL,ff.ff.HHL$HFH@0HuH=1贓HD$ff.M0MH}(E1HtH T!11xAH} E1Ht!H @!11DT$xH} DT$IE1HHuDA1H}(ATSEH=.+(PEPH oHmH*LL- L5y脤H-&(HtqxVH}HtOHHu AHHt8{uLcLLtHu@LL1~HHufDHm0Hu#*(@t*(<1=*(@1|Ht&(HHl&(L%*( _'(LRfIRLN(zMI`LN(HcҀ<ouIQ@HHV0ff.@HI9tDH0Vf fuH~?.uiuHV(H(HHR@H^(HHV0I9uHL$H5G%(1D$,H=)%($(H%(%(v+(Q\{7z=*(((fHp%(H-HtC@H3H=((11AwAHt @<v H3H1躐H[HuH8[]A\A]A^A_NKfDH=茐H=%(+  Hs0H=)H1_H{8膋 HC8jHt$H=+(D$,o|$,%'(H=H$((1Hu4r @XШLHHCBJfuLH=蛏 H'(HH~L%@LmL贚Hx LLHH1HHmCH{C.sizHGeVCH辠HmHuL5"(ML%MvHMAFa uIF0HHtff.k$ tH;L t k$H[HuK&(L-D&(<A11H5?HH@<v<zHP&(L-%(HLH@HxCiƒt CiKkKP,H=9"(I1ff.@H"(HC uoHC(L%%(HP`L8Ht L9LLHtQLMtEHC(L fDMMt*I7L蹚uL{(HH;-!(o'H%(CHC(x@uDclHLH%(AH@AHxCkuCHShLHH$L!H!H HChpH2L] H$(H-$(H@XH1L-#HD$HHHD$LMM'A$tLADMu<_uvBHuLmHx dLH5IƈHD$I<1赜LL@A^I~LHD$opL__stfH?L[MM^HH>H(Hu^H=a#(Hs11A<HtHl@HHu&H(H-(L-(L%(L0HXH(HD$LH"(H5( "(H@0Hl(Ht H(HpH;1H"(H D(H9H0HK(L90tmH=HD$HD$L3LxHXHH9-2(tmH=ߋImH(L-(HD$IEH9(tmH=見I$L-(L%(I$HD$MH(H (Hu-fDHP0Ht HHDH@HHPa tAAA@>H*(HHEH-HQPH9HfDH=ق1j@!!(fFH-(H6L% HmHH HE0f@D@uE`uHHuH[HtH{`uC&uHU0HL1وHP(Hi(HH#lfHn~ (flH (fP$F!(=E"( H=(1H=踇H=(,OH=u( OH=<(O6H=0( | H= H1 M$HE@\H p(HHHHj(IL6H;pNHAPIEHD$HAPHAPH9V( HyL%T(HAHHHHH)H-1(I92H=A(1(螼H;-(tmH=贈M$L%(I$MIH0L(L (HMSHHHM*L11DHt HxHtHH@PHt"HP0H9uHPHHbH@PHHuHSHHIDHHt,ff.@a@uHH0Ht HPHH@HHuIpHHHLIHHI@HL9IMIH0L%(HH"M%ICHLHt 1LuMCHM@HHBHM9M{I@0L%(HHtICHLIpHH(I@HHu'ff.fHpHH@HHt HH0H9tHLLHI9t2H HHHHpHHHH5(H5(H(hUH=H1H=(Cs H(H(HqH{8 HC8H[HHu:H=(UNH_(HHU(H-N(I9I\$IL-)(LxH (Hr H= …H (H(Ir H=x 薅H (H3HHH(MI@0IHH ATUHSHHH(IHu0HHt H{HuI\$L[]A\H1H=1uI\$L[]A\UHSHH(Hu)fHHtH{H茐uH[]ÐfHH~c(H\(fHnflH[]fUSHHHHt/Hff.HHHuHHHH[]DH(HH?HX HEH[]DSH11HH5KH1H5MHHH(Ht2Hff.@HHHuHHH[f.(qH=*?HHx [H(f.SH611HH5eH1H5HQHH_(Ht2Hff.@HHHuHHH[f.(H=>HHx [H(f.?AWL=>#AVL5PAUL-=ATIUSHLff.H<,tAW@ut_kLc@u(Al$I@t@,t @AG@tA$LH@u,(A,$@xH[]A\A]A^A_fHL1SAU1H=ATUSHH(H{L%vL-vfD 覉H[H{H3Hk8L1H+k 蒋H:JH{(1JHC(HtHx3fH*YR#HxCfH*^LC끐HfHH H*XYoR#HyHƒfHH H*XH[]A\A]ff.fAWH= AVAUATUSHL%i',c(HQ'H(H(H({gHZ'0bH=H@ HSHH'HCH5b(HPk4i?_H( ((Hu7THCH`H81ҾnlHHtCuH{1ҾOlHHuH0(Htlff.xJHH@1ҾHH}lHu"2HCH}HH0 {HHuH=X(11迲gU^`/KCH=4(BH=((1a茔g1=(@1賺~gg=( 76fH=(藗H=([vH=4'11H(蘌AƅHT$`DKSH$E1H HHuPfDML9tBHJt-DL)EIHyݿMH5'H=r1;|L9uD螈H='H5(LL%i'}IH8HT$8HL=7'H(/LHD$覇HHL)Hz I LLIHzCD5/KD5HldXXXXXX@LH6Ht$LH){IHH8 LHD$A I$LE|$DHt$OLD$SHt$LI\DLpIIEt$DL-ID$LHH LIID$LIHHD$@H5II$HD$H\JHHT$( HD$Mt7HT$(I$LE1ItHH9z t HL$JIHH9uHt$DLJ蒠HT$ H59LΛD$PWHt$1IHL轜IELL8LrL襊H|$蛊H5L'H|$:qH|$x.fDHạ̃HHH=}1xHH[]A\A]A^A_/芣蓣HLqLt$L[LH={UxH5'H=8|11xH5}'H={x1@.輨H5M'H={1w% (IAHIH#s(H= i賢輢LHAHH#a(H=iDLL薞H|$WH={1YwrH|$:H={1G#O(H=hLHy>LHy*LHyLHff.f=(ugAWAVAUATUSHHGH<tH[]A\A]A^A_@@t;GJf<uH5F#+H=6g@ (<uGJf<<wLM.YH- (H$HD$@HHXHu L}&LuMeL}ILH0蕂H,$MuHU (HL$HH F (f<S{HHgMX1ɾHH (@HHhH1H (XHHH[(u[=O(uRCa3HC0@H< H}H{0H5 (HGKa HH=1sD<+kzHHBeWH (@HHhHH(8WH (@HHhHH(uHs0HH=p1[]A\A]A^A_sHH=vx1osVH(@HHXHH(H[XI;^XMu6DHLH0nILHIAIGH9XXsIHH5 (H;t]HL$HIHH=w1rH(H(iHD$H $H(Ht!HPLIIHL$H (HD$H(&11IlH>B#*H=-dHB#'H=gdHA#(H=OcHA#*H=7cHB#+H=cff.f= (u7SH(Ht"f.CuH{{HHu[fDHA#9+H=gcAWIAVIAUMATUHSHHL'LL$ff.Mt It$H~~LM$$uSL#Mu8QHT$HHhLxHH@0LpLh HP(H[]A\A]A^A_DHff.HE1HE11H=(6fDHE1E111H=(H=(r(AWAVAUATUSHL%u(H~(MtQHL5i(Ml$H^IT$E1E11LLM$$H8(Muff.L-(MqHMeHfH}L}uE0HmHuMmMuE1@H-(HLkE1fH}L|uLe HmHuL=\(MHkE1ff.IHt|uMo(M?MuH5M(HdC0t1HH{MMj1jj[H @L5 (11HHHCHFHFF8HFdH-(HuefDHmHtVHsH}{u@11HHHEHFHFF8HFHmHu11H5>1菹HHs(H[]A\A]A^A_f.ID$M$$HEMMl$HfHuL{tHmHufHsHtKH5(E1lE1%HH`@0HHuH5[MHL%g(LL-X(LH1ҾH>()[fHE1E111H=(gSHH0Ht#H0E1E11H=([:f.H\$H5H|$1H5}HHL$HƥfD?Suu1H=f1H1H=lff.@H1uLHH陶fIE1H11H=(wIE1H11H=(Wf.DS?_HuH;_tH5wHuu8C 8Cu/CjI}L9tO$ EIu<VH>CIMIUAHt$IMmME1CDH趮M?MH[]A\A]A^A_TXqXIuHHIUIMH=1Hwi4fH=O1biDAnACE1f%f=AAfDIGHhK{H=kHIG HH@H01 fM?M!L=Q'M\$L%ff.fIG HE1HMcAHuIcH<1HIG Ht*ff.HDHHHHHuLHHoHEIG 1AfHTHLHH A9ELNJDHHHvM?M+\$IGAL\$H=jHP1dL\$AlIW IGAHRHhHkyHIG H@HH@HH=jH01pdM?MdH[]A\A]A^A_IGHh\yHHB'H'%K'='t'%*'f.HH=jHHLI1cHH=6jHHLI1cAUATUHSLHHt{H8LnMHt111L/Ht H'LHI9txH=s1Zc='u H='tHLHLօH[]A\A]fD=|'u H=_'tHH[]A\A]نfH=1bHHHO ATMUSx@@<1H-'E1u?LE`H='I9AMAEtH9uwLB`MAI9AEtH9u[L@HLH=h14bMtHHL1H=\b1H= b't`[]A\Hh(H=-'HX0LH9:H9uL9tkJH=qh1aqDH=h1a[]^'A\LIHE1!H(5#PH=WSAVIAUIATIUHpSHp~EHh0Hfl@o@)D$o@ ) $)D$ o@0)D$0o@@)D$@o@P)D$Po@`)D$`'='tEJf<H^Ca HC0HH9't LMt"H r 17fHH Ht @auHXHHKH=K'I}(A11LHHC<G<W<wLs(ff.='SHHuHt @I@H=B1bH}j)=QMtLH=1WbHnHsH=1a1OH5'uHLH=bEu'H=bwHLH=FbEuH=jbH81[]A\A]A^A_Off.fSHH='Ht HHtI[(&=H5eHH'vt"H='fH=)`[NH=_1NAWAVAUATUSHH)'<H59H>^IH(H5HH'UdAdL-##NLIS_D@CDE@t"L(_ADE@ut}1$fL_DADE@t&A,HL9rMLLCIfDA,LH=?'Hu H=Na9M='?}L^'L?Ȁ'H[]A\A]A^A_WA,LH='DD$ LcD$ HtkH=!^LH=`1LpH=u`1L,?}HH1[H=]A\A]A^A_`LH=i`1DD$ MLLcD$ xAWAVAUATUSHHo H_C(f%f=C%Lc`H'I9$tH=n5MAD$$u ЩucH='LHHeC$%"=4EH] L9c`tH= LoCPoK@fEH[]A\A]A^A_à uHo@H@'H9tH=LE$u ЩuH='HHH:HCHH='HEHC@HE"HE HSHK8HS(HHHSEHP<Lo(H'I9t3H= KAE$u ЩH=V'L>IHHC0H=7'AD$ID$oID$(HH 'Ls HPz 8I9tjH=w>KC===H'It$(LH@P8Ho H}'H9tH=JE$u ЩH=G'H/HHoCEEHC(HPHHU(E H[]A\A]A^A_fH'It$(LH@PPID$Al$ H[]A\A]A^A_j' ScL|$LLLNIHd'gHS EH5F'H9Hr`HJXHHHp@H'It$(LH@Ph =<ID$(D0fDH=9\GHE H=!\1GDH= \1GbDH=[tGnH=[1ZG#DHEHE(E H=[1$GL|$LLOLIH 'H#fH=}8@L|$LLLxIH'H#H=:8AW1AVAUATUSHX;woH=/4='Ll'uH='EIEL='HSHL$ MD\$,LT$0HD$ D$LHH0LHL$8MAEAW-<HD$ HD$AAHD$H$1@AH$H\$L|$M?MAEAWD$(1H$<d'A9A9HD$H $HH;f'L|$M?AHD$Muff.HD$ l$,HXD$,H\$ HtL'MIBLL\HX[]A\A]A^A_H\$ E1E1HD$HD$H\$fDIW 14'@uD$(<u BxD$(AHB@H$H|$s'A9HD$H5H(H6NHVOH5xHTQLHD$ H(H,OPAHHT$HT$HHIQTff.ff.ff.ff.AVH=#A HOAEuHD$0H@@uGLNHv9H5HEMH5HnPAD$H|$0HT$LLnaIHBH|$0H%dHH)LE1H='MIHL9TIF0H|$0HIn(AFLt$AF$LE$IF0HE0AF(D$E( HE(IF8HE@HE8IFXHm`HEXAF|HEpE|HGExPHD$fInIOAHL$8HIHIF@HD$H)HE@HD$8IN@fHnLflE06ff.ff.ff.ff.fDHPH)ʃxHPu Hp Hn`HVXHHuH$L|$AHl$Dt$(HD$H5HN5H $L|$AHL$|HD$ff.@1H$1ۉD$(AAcL:.WOf.H=iU1M@L,% DL=9'HH= U1M`@YkH=+uH==HX1[]A\A]A^A_2@f.f.f.f.f.ATL%wz&ULS1ff.H4t$9(uH'uuHHI|[]A\Ktf''H[]A\A]DHs>. 1 H{ H5u'Hr'mW'H=K'H:'H)'H9j' HCA'H.'H'HC H'H[]A\A]fH{='H{  ;5H-' L%'='L-'M9t7MMIE0L-q'H'L-'Il$0\'L) 5 >H ##HcHfDH{L%'=1'L% 'THC H='HDC(HH fH{='=) ~vp!-H'f.f}''=V =. -/'H)#HcHH{'='jH='\Hs H=H1[]A\A]:5' HCHP`H@XHC 'H'H'H'D{H%='H='Lk1ɺH='LIHsM:'4' uu~@wAL$!@rfH 'AT$ IL$ }CHu(HE0H5'H'(}#H''H'H''HH=c[]A\A]:DC@HsH='1ɺAHHHsH=dO18뎋'tH'H9I'ff.'D '6Hk11H:H HpHH;GN|Hff'H')'Dk'EH{11:Hh'H@HHA'H>'H?'rHSH='1E1AH5u'1HtpVw@ f'H ')'' +'1H=Y'H5'HGH=A'1H`1҉H{10&H H@(H{1&Ho Hk'H@ 'A'H+B0H.'H'H'O='AH{118Hi HxpH(='H'Ht H@0H'H''H'1Ht 1H=u'Hk'Hp'H`'1H -G'H='H='1H;-$'H']H'1H9-'H':H'1H9-'H'1H9-'LH;-'H-'H9-'H 'q''H 'hHQ'H9'T'z@ƃX-HD H'%H'HrH[HHH!HT'H)H'5D^''H'H9'H5'H='HHL=1HHHH)Ћ 'H'mA'@uHUH!HHX'?H@'fHnfHnl'flH-'Hb'1Hi')r'MDH 'H>Hl 1HHH))H 'HL9-'H-'H'H9'==a'0`H 'HL9-'H-~'H W'AT$ IL$\ff.HQ'''DcH /'HE(1EHM0 f  Uf%pf Ѐ{(fEYH='HH5M'HG8H'HBHwH={'HHGH'H='I~tHH=G1 2Z'H{ K'R=;'8' ]' HH=GfD='HS'H 'H'DH=q'A11HHxv @HsD=f=m=Fi'qH'H5k'HtHp0HC'A'H m'HV'HvHL11HHH)H )'l@^ $%9H {#HcHH1-'L9-'&H'1H9-'H'H'1H;-'H'H 'HI HHHHt'L9-}'H+-['L9-d'H-M'H-;'H-1'L9-:'H-#'e\H!-'L9-'LCH 'HHHHH'g=%HkH5H<H''H'=HS:.1z'H'H'N'r'H+B0H_'HH'H'LgHuZfDHHtLH{Lu5Hv>.u,~u&H@ xuHxuHA(xu Hx6J$ *Hs11H='KH@! '8H H5ɹH4jH'HJH@0H=xHxHt'PV=?'Hs H="1&='Hs H=1&='}HE0E1'L'H'H'H='H^HHE^@O1҉HHH'H9H@HH ~'1'H 'H@8H5'Ht' L'Hh'H9 It$'H6'H9H99'4HBXfHE0'H')'HH=c;HJ0lA]HH1[H=;]A\A]Q%H'ؿ'H'HSHH=;1%H {'Q'HȄt H9H=<'HLH9pHT>H)H!HH'VHO'H'CH-'*'-@#='H$8+H۾'HHy9xHI9.kyaHx t%HC OID$Hu\UH(SH=H蟗HkHCٴ'HC CHCH[]DATI(UHSHNLcHC'Hk CHC[]A\f.ATI(UHStHC HC5'LcCHHk []A\f.H+'H _'HP'HY'H5Z'DH''H'H'H'H5'fATA(UHSHHHSD HPS@{PHXHh tH[]A\fD}uA$vAtH M'HHD$C'Hk'Hh'H i'Hf'!=:'HD$tH'H@ HP@_ff.AUA0ATIUHSHHHSD(HPS@{PHh HXL`(tH[]A\A]}uA|$uH c'HHD$Y'H'H~'H 'H|'7=P'HD$tH*'H@ HP@n@U(SHH HS(HPS@{PHXt H[]߁Ftt)tH 'HHD$'H'H'H 'H'`=y'HD$tHS'H@ HP@cff.fATA UHS,D H葓HkHC˰'CCH[]A\ÐATI0USHHS=HPS@PHX L`@h([]A\ff.UH0SHHHS=HPS@PHX Hh@(H[]ff.ATI0USHJHS=HPS@PHX L`@h([]A\ff.UHSH(HHS!HPS@PHXHh H[]UH-"SHHH=p't&HM{ rCHcDHfDH'H:'H=1'HSH51/H{ H5'H)[]w*HsHH=x1[] H Ѷ'H=L.H{*HS H5<H='H1[]/HCHHt1H=߯: HCHS H0H1[H=Ư] ;5ttl1H5' )H5'(t)H{kH 'H=d-H{ DH{7H5'?&)H{ H5': )H[(;1WH{H m'H=~-H{3fD;1 HSHt:H5wfDH{H5 '(;H[ {H[]HH=ԭ[]f.H5'( (H{;kfDH{H5}'H[]j'f.154H P'H=ȭ,H{ H *'H=HH=j1[]ff.ATUHSHt[H'H'IH1'H'H'H5'='HѴ'uMt ='u H[]A\Ð1LH=l2HLHHUHo'HSHHb'H'H'H'H5'D=]'u#Ht ='uVH[]H 'Ht1Hv۸ff.HtHH9rH[]HHH=11s@fATUSHHH'H'IH'H'H'H'_=x't>H=_'Ht E$HHuU35'HʉP[]A\@Mt='tLHH=01H[]A\fDHhHH}اH='1H(L@ff.ff.ff.ff.ff.HrЃ7 GHuAIPH;I1DATUSHteH.'H)'IHN'HK'HL'HI'='u+Mt=߱'uEff.fHc[]A\H'Hʱ'HtHB0[]A\H'DLHH=c/1Df@t f.H (H5H='ϧt HfDH=aH1H5'H='ff.t 1SH'H9_(t 1[fDG tHw11H='9HtH9X[ff.@t f.H=Y'f.f.Ha'`fDHQ'`fDHA'`fDH1' H!'H@ HtfDH'`(fDH'`0fDH'`8fDHѰ'`@fDH'`XfDH'`HfDH'`xfDH'HHtHq'HHtHQ'``fDHA'HHt1DH!'HHt1DH'HHtH'HHt1DH'HHt1DH'HHt1DH'HHt1DHa'`PfDHH=%Hu H<'H@pHff.HH=}'Ht5N''u(@u(fLFI@HF>HFIHHFMLIHHFMLAL@LF@PLP0DH-J#DABD]t x$IBUC5L("IcLIH5AH1Eff.<%}v='|$' AGDvIokIH޿%AHARQPED$LP%4AD$KvHH|hLt`HDpH<$HD$M5L蚿IIFjLHT$,RHL$HT$LL$@LD$88D$ ZYHD$0HHtUCjHaLH5gH1- HT$(H<H5șH1^HT$0EHtIH!HGLHHH5|H19EpH'HtH='t L9$LH5H1H=v'L5'H|$(HZ'Ht 蠓HI'H=J'H|$0胓H4'D$%KvL}HL`H9='uH=Ϛ'HκH $JH $HIMHHL+ErKvHL}HD`HpHHHLF H5NHHP1E5KvL}HD`HP0HtHHt BI@HxH-EHٺ H=EHÛ'H5H|5HHH5H1`EHH5H1CiuH‹'D$4HD$0uHHHH5OH1 EAHHf E-H=f'Ht$(HAHA8Ht.uCHD$0H=9'HHD$THL$H"H=cHL$0_HFHF@HHt$(HT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$H$HH='1HD$HT$HD$ D$D$ 0HD$XHSHHHt$(HT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$H='%H$HT$HH='HD$HD$ HD$D$D$ 0H=' H[AUATUSHHw'HH='L-4L% *f.L1H}HHt H݀='HHuuL1ːH=Y'H[]A\A]: f.H[]A\A]D1HH=}ff.fATUHSHHt$(HT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$Ld$OHBLHHCHH$HHD$HD$ D$D$ 0HD$M=w&H'|'H |'HH[]A\fH=ٌ' LHH$H='D$HD$HD$ HD$D$ 0H=ό' H[]A\ff.HHt$(HT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$H=Օ'tHH$?%D$HD$HD$ D$ 0HD$u!t!HH='HT$1Huٿ 蘋HH‹D$/wEHt$ǍHH<>Hz/wWH HJ/w@HHHBHE'HH;'뎐HD$H0HHHD$HrHIHJHD$HD$HHH HD$HJff.fHHT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$H$HT$1D$HD$HD$ D$ 0HD$gHff.@AVAUATIUSt~HfLA$]It]Lm%uEPЀ vXPvhPwmWUJЀ vHJvQJwWHf.A$[]A\A]A^fU0JЀ w0@77<[SLuH5tL;uH,,fH5LL uH {H5.LuH"H5LuH }H5LH @U1H5ˍ1S1H HHHruD$%=@@H HĘ[]U1SH39HH8HHc'9}H؀8/tHj H[]ÐH='H.&@fDATIH5wuUSHzHHtB1H=P'tHnA$H"=&'tHH=1H[]A\À='tH1H=H[]A\ff.ATIUHSLLE1HnHCH5HH4tH5H!uEH.'LcHt%ff.fHH@HuHZ[]A\H'[]A\@HIff.AWH5:tAVAUATUSH6I1MI:oHff.I5SL}HLL)H9u>|+ t7HHH謆HIMLLI)D)HHuL9t[ HFHt#H1HtH@H< wEIrHu?LHHL8H[]A\A]A^A_@H<=t< < < Hrff.H< wUIrHu(HH=1jfBHt<=t < wIsAfH<=u< sBHt<=KtVff.HAUATUHSHH'Hut@H[HtgH;1HRu='t7L#H5}LkLHt@MtlLLH1H=#>HCH[]A\A]HH[]A\A]MtLHH=P11HH=S1LHH=1H='tfATH=@1USDHŏ'Ht9L%<H-f.HSH3LHHD1H[Hu[]A\f.ff.@ATAUHS@u ='u]HHD`HQr'HJr'H}=tQH5)Hu!H=j'Hu1? HC[]A\fDHHC[]A\H=1'Hu11 HC[]A\ff.AWAVAAUATIUSHHe'Hu$6fDHs L\HHtEuߋCuHHuL HxHHULHH'DsH{ HH'AL='M(Hq'L8Ll$L5f.M?MI1LL1 LHHHHHtHp'HT$LH5bH-''H[]A\A]A^A_DLH= H[]A\A]A^A_Ll$LLHHuH)'HtBH-p'HL='M fHp'H("LH= 1H=;'L-T H5mL]:HHHt^HtJHo'H'HHo'HHo'L=v'L;AOQHtH='LH59HHHtHKuH?H5VH=y'H9IHHt$HHLHn'eHn'Yff.AWAVAUATUHSHHHvX='HC0HtHHH=11YH{0H{a2GJODGJ GJC`$< u8z't ='j1SyH[]A\A]A^A_~Lc0rML\H{0L9uC`t@ H1HE1'5'4au&DAw H=~'OFM=0=uH=~'S͐HhH{0SaGJODGJC`$< C` uHS0BD@2H{0f6~urH{0fH=/1rH{0fL1FI|fD1H[]A\A]A^A_fHx3'H5'LH?ID$xuH'H@x2=φ' H{0HC01t@HsX1H= 61WHH= 1H{0~HC01'DA TD(FD=L5|'/D,E1E1)L?L7L/`H=}''bH}'EHSHH=1DH{01|'tWLuMIEH|$@H|$HSA fA|$4KJH蘾Hh1[]A\A]A^A_H=11H{T$軼 T$RAt$0D$@H=1sfD1DHH3HD$0ID$ I|$It$HH=b'HH),AWH|[AVfHnHv[AUATUSHcHH=b'H/~%&L$L~5&fl~-&)d$0fHnH<[fHnHG3flfl)l$ ~=&)t$fHnfl)<$H[IL=.&HL598HfDI0I9IuH=(\'11AtIAEPuMAD$u.1H=['t"LHH=['YwH1I9!AT$B<rB<%ID$(uH@HAEH5['<IH9t7H9Ht)RDu1@ff.=_'AE(foD$fo $AUM$)D$P)L$`YLDPfoT$0fo\$ Lt$pAU)T$P)\$`HLPIUMH1H=I0I9vHĈ[]A\A]A^A_IUH=Z'E11AH5KZ'vsHtI9ĹIHAE<z<~N@H9H9H1BF<(<(fDH I^'H5tX1LD$@HLD$@H '^'fLY^'H51LhLA^'@HA_'H=JL$@Hp1{AT$L$@@AT$HX'tDu It$H=Y'jHX'x@tlA}D$L<H"*H=VffD1H=VHT$@HT$@AD$i Hqff.H21Hff.H 1Hff.H=]'SHt"s0tH{ C01[fDH=UOff.fHq]'HnVHHDf.ATIPUSHe]'NfLHL`@@ @0@@HEHttHt?HEfHHt(H;CuLH=U11[H]A\DH='H-\'H-='H(H[H-\']A\kLH=AH1׾nfH=\'tbS?-Hu#{-HtH{ H5vUt2MHA\'HXHH/\'HH-\'H@ 1[H UH['H\'HAW1AVAUATUSHff.DHH HH9BHuzH-"HLuHL-'"H:MHL`EAD$#wIcDLf7H=Sff.@HII9uL=T['L H-`TL5XTL-YTMIHIHIWLHt6ff.ff.fDHJHHHHHuH@L=Z'AHZ'1M?MmT'H=VZ'HT'oHffH@IInHhFK'upHٺ>H=>HٺIH=>HٺH=?xHٺ@H=|?_HٺCH=?FHٺ?H=?-HٺFH=@HٺHH=0@Hٺ{H=g@Hٺ:H=@HٺPH=@HٺsH=4AHٺJH=A~HٺwH=AeHٺJH=)BLHٺwH=`B3HٺH=BHٺH=.CHٺ8H=CH[IH=Cff.UHHSHH HHHιH[]fAUIATIUHcSHuHcHHHI}E?"HIE(ދ"T(I<$!?H5%I$HHw%HyHH%HHH)H)΁ HH[]A\A]ÐH5L'H=F'2ff.fH5L'H=L'1xff.L BA@1ɺqff.fL BA@1ɺMoff.fHH=E%*L':L'gm A' HH@!H#E' E'H  G'G'HE'HHH=E'H5E'9Dx@H@t@H=B1H鮭ff.$USH.~/Tw"H"HcHu :K'H1[]NPezuH<'H5 ,H芺bD'?ȀD'H[]u=U@'u J'H=K'zH[<'HpK'HWH5)Htff.H=H9K'H=<'o%F C'H=cJ'^H=?;'HLJ'HHHx:H= ;'HHzHJ'_H=:'"H=:'H5 CÉD'u"H5:'H=@1 B'%B'H5:'H=H'sH5a:'H=H'sH5}BHu]hB'?@\B'DH5HuM ;B'b1DHAH9'DH5BH衷u5 A'"H5AH職fˀfA'H5AHH5AH H5AHܳ%H5J0H\A' PA'vH=>yB'4HH=Hp1ƨ @'H5@H uwf@'@Z@'1Ht$H{ HT$HC@':u#HxH=1@'LH @'Hp 12H57@H聵u ?'H5@Hbu %?'H5@HCuH d@'H5?HtR@'H5?Ht 1ۉ2@'~H5?Ht"H5?H˴u.E1D@'IH5?H詴u.X@'*H5=H芴u.?'H5?Hhu.@'H5^?HIu/?'H5hH'u/H K?'H57=Hu/=?'H5'?Hu#H ?' eHH==1cOH5>H诳uH >',H5>H茳u H >' H5>HluH >'H5>HIu H m>'H5>H)u H M>'@H5>H uH *>'H5Huo>'f"w"='WH5<>H跲uo='fw"='(H5>H舲uo='fv"='H5=HYu H ='H5=H9u H%e='H5=Hu s<'H5=Hu %T<'{H5=H۱u<'YH5m=H蹱u <':H5L=H蚱u %;'H5==H{u ;'@H5=H\u %;'H5=H=u ;'H5<Hu %w;'H5#HuV;'J;'tH5<H԰u+;';'IH5:H詰u;'@:'H5_<H~u %:'H5G<H_tH5<<HLuE1D>;'H54<H*u0;'H5<HuE1D ;'H5AHu:'dH5;HįuE1D:'BH5;H袯u @' # H5;H>u*Hk H5;Hgu2%?'?'gH5;HAu2 ?'H5;H"u6 ?'@?'H5;H m?'yH5@;H蔫tsH50;H|uE1Ht$H{踱:?'HD$8tH0'H=b8Hp1 >'@HH=y811Ht$H{]>'HD$8tH^0'H=7Hp1Ġ%>'H5:H u ~>' H5r:H襪u$H H5Hέu,1=N>'NH5G:H训u. $>'/H5(H菭u1 >' H5:Hmu1='H5(HKug='H59HH59Hȩu\HH5Hu#15m='qHH=71o[H5jH軬uv5='9H5s9H虬uv ='H{Ht$ 膯HHD$8uCvH5.'H=61<'H5H2uK<'H58H˨uhHH5Hu/1ɉ x<'tH54HԫuPN<'RH5&H貫uD4<'0H58H萫uD <'HH=61H5&H[uK;'H5.8Hu\HH5Hu#1҉;'HH=51蛝H52&HuLm;'e H57H耧umH H5H詪u01H,;'(H5%H航uT;'H5%HfuHHp"H:'H5X7H@uH :'HH=&51远H5b%H u2Ho"H:'H56Hu"%[:'fHH=51dPH56H谩u 4'1H56H葩u %3'HH=61蠝f.D3'AA=4'Hh=4'HږLu3'AUHATL!USHHH9 HL!HHH9H@L!HH@H9HLHH!H5H9HMII!HCM9cIMIM!HM99Hq6A(HH9DHH9H@H9VH9HNtI9HVM9HA2'f>ffH@IInHx1'up1'HуtYHpH?HEB=2'H2HLHEfD)2'HHHD[]A\A]2'HHc[HE]A\A]1'HHscHDDH9{1'u1'H H˵HD{1'HbH2k1'NHLfHpYHE0@1'H*HKHDH E1'~H9HSHHMH=$CHٺ>H='%*HٺIH=N%HٺH=%Hٺ@H=%ߨHٺCH=+&ƨHٺ?H=Z&譨HٺFH=&蔨HٺHH=&{Hٺ{H=&bHٺ:H=N'IHٺPH=u'0HٺsH='HٺH=+*Hٺ8H=*H[IH=*˧ff.UHHSHH HHHΠH[]fAUIATIUHcSHuHcHHHI}E&Gt"HIE(:t"T(I<$!&H5%I$HH%HyHH%HHH)H)΁ HH[]A\A]ÐH5 4'H=-'ff.fH53'H=3'1_ff.L )A 1ɺXff.fL )A 1ɺMVff.fHH=0%Z3'j3'gm (' HH@!H#,' ,'H  .'.'H,'HHH=,'H5,'9+x@H@ts@H=)1H鮔ff.$USH.~/Tw"Hp"HcHu j2'H1[]NPezuH#'H5 H芡b+'?Ȁ+'H[]u=U''u 1'H=2'zH[#'Hp2'HWH5Htff.H$H92'H=#'o%<+'c 0+'@W%$+'K +' ? +'H +'f%?f f*'*'*'%*'*'H-"'H5*fHf*'>F *'H=c1'^H=?"'HL1'HHHx!H= "'HHzH1'_H=!'"H=!'H5 *É+'u"H5!'H='1 )'%)'H5!'H=/'ZH5a!'H=/'ZH5})Hu]h)'?@\)'DH5HuM ;)'b1DH(H 'DH5)H衞u5 ('"H5(H聞fˀf('H5(HH5(H H5(Hܚ%H5JH\(' P('vH=%y)'4HH=<&1]I1Ht$H{踠HT$H(':u HPHtH'H=&Hp1 ''1Ht$H{iHT$H(':u HPHtH`'H=%Hp1Ə ''H5'H uwf''@Z''1Ht$H{ HT$HC'':u#HxH=1''LH ''"'H54#H*u0"'H5#Hu 15"'H5(Hu!'fH5"HƖu 1ɉ !'FH5"H視u K'' ' H5"HBu*Hk H5"Hku2%''!''gH5"HEu2 &'H5"H&u6 &'@&'H5"H &'}H5D"H蘒tsH54"H耒uE1Ht$H{輘n&'HD$8tH'H=fHp1# ,&'@HH=}11Ht$H{a&'HD$8tHb'H=Hp1ȇ%%'H5!H u %' H5v!H詑u$H H5HҔu,1҉%'RH5K!H貔u. X%'3H5H蓔u1A%' H5 !Hqu1%'H5HOug$'H5 HH5 H̐u\HH5Hu#1$'uHH=1s_H5nH迓uvi$'=H5 H蝓uv C$'H{Ht$ 芖HHD$8uCvH5'H=1#'H5H6u.#'H5* Hu.%#'H5Hu.#'sH5HӒu" +'THH=I1R>H5H螒u %'HH=1譆 D'AA='H='HL'AUHATL!USHHH9 HL!HHH9H@L!HH@H9HLHH!HmH9HMII!Hs!M9cIMIM!HQOM99H}A(HH9DHH9H@H9VH9HI9H6M9H A'f>ffH@IInH( 'up'HD уtYH Hr HEB='HHHEfD9'H AH+HD[]A\A]'HXH[HE]A\A]'H*nHHDDHy'u'HH{HD{'H~bH6{'NH\fH0HE0P'HdH2HDHr+'~HHͿSHHMH=SHٺ>H=7:HٺIH=^!HٺH=HٺCH=THٺ?H=֑HٺFH=轑HٺHH=褑Hٺ{H=苑Hٺ:H=wrHٺPH=YHٺsH=@Hٺ8H='H[IH= ff.fUHHSHHLHHHH[]fAUIATIUHcSHuHcHHHI}^"HIE(^"T(I<$aH5 %I$HH%HyHH%HHH)H)΁ HH[]A\A]ÐH5y'H='ff.fH5I'H=J'1Hff.L )A 1ɺAff.fL A 1ɺ?ff.fHH='g贘 ' HH@!H#"' #'H S'c'H'Hff.HH=5'H5'yx@H@\@H=)1H}ff.$USH.~/Tw"H["HcHu 'H1[]NPezuH 'H5JHʊb'?Ȁ'H[]u='u h'H='躎H 'H'HWH54HPtff.HX Hy'H=P 'So%|'c p'@W%d'K X' ?I'H 'f%?f f2'(''%''H- 'H5fHf'~F 'H='融H= 'H'H.HHx H=M 'HH躀HS'_H=/ 'bH=# 'H5IÉ'7u"H5 'H=1\{ '%'H5 'H=i' DH5 'H=B'CH5HQu]'?@'DH5H!uM {'b1DH3H" 'DH5THu5 <'"H5(Hfˀf'H5HTH5H8 H5H%H5HE' 'vH=y '4HH=|1yI1Ht$H{HT$H$':u HPHtH'H=XHp1Uy '1Ht$H{詉HT$H':u HPHtH'H=1Hp1y 'H5HKuw'@'1Ht$H{ /HT$H':u#HxH=q'LH`'H=|HٺIH=q|HٺH=X|H[CH=>|ff.UHHSHH|vHHH>uH[]fAUIATIUHcSHuHcHHHI} oK"HIE(bK"T(I<$ H5Z%I$HHG%HyHHQ%HHH)H)΁ HH[]A\A]ÐH5'H="'-ff.fH5'H='1 4ff.L Y1ɺ1A 1-L 91ɺ1A 1*H H=ha'g =& HH@!H#r' s'H ''HS'Hff.HH='H5.'x@H@H@H=y1H>iff.,USH.Z/TwHtfDHH Hi'@PtSzH+&H5tHstPH5MHs4&?@(&H5&H='-/h&?Ȁ&H &4@HH&-D1DH5HAsfˀf&H5Hsu l&H5hHot}H5_Ho H5UHyoH5Hr& &BHH=1e,1Ht$H{luHT$H&:u HPHtHc&H=Hp1d &1Ht$H{uHT$HQ&:u HPHtH&H=Hp1zd <&H5gHquw&@&c1Ht$H{ tHT$H&:u#HxH=&/H&H&H=9Hp 1cH5H5qu &H5Hqu %t&H5HpuH &H5H4t&H5Ht 1=&aH5rHt H5vHpu,15&.H5H_pu.&H5PH@pu.v&H5PHpu.&H5Hou/5&H5Hou/H &H5Hou/&jH5Hou#H & JHH=1b4H5HeouH &H5HBou H f&H5H"ouH C&H5kHnu H #&H5THnu H &@H5=HnuH &kH5Hnuo&f2"&nuoZ&f2"K&H5Hnu H ;&H5Hmu H%&H5kHmu )&H5JHmu % &`H57Hmu&>H5#Homu &H5HPmu %&H5H1mu &@H5Hmu %j&H5Hlu L&H5Hlu %-&H5DHlu &&YH5bHlu&&.H5H_lu&@&H5H4lu %&H5HltH5Hlu 1ɉ &H5Hku&H5Hku 1҉&oH5Hku&MH5H~ku 1v&- H5Hhu*Hk H5HBku)%G&X&gHH=Q1J_H5gHku &@&H5GHgtsH57HguE1Ht$H{m&HD$8tH&H=iHp1&] &@:HH=1 ]$1Ht$H{dmv&HD$8tHe&H=Hp1\%4&f.f.f.f.f.f.H&SHHtHx0ǑH{HHC0HH=m&tH蓑unH{H\&Hp蛉 t_C`t+H{/gHtH/&HxHrj t.H{0HtH &HHrE t [H&[ff.@AWAVAUATE1UHSHH=e&f&HIHx?/uMfHuHfI| D-Y&II1fDDHfHtCH)HLHXHIHe}/uH5&LM-eDHfHuHLeHL[]A\A]A^A_H=&tDATUSHHH0Ht tHĐ[]A\@H{0H4H&H9$H&/HhHeHuH5*HkHtH{0Hh=IHHB&HLHpH)與 `H!&LH= HPHp1Y;HD$H9d&[HRH&Hs0H=#1YH{萙 IgAWH&AVAUATUSHHGLxHH L`(HH ID$`H $H90LHInHHIl$XID$@HM1HHL$LhL-eHCHHCLHuHCHuH4$EHE GNUIHHL$HP It$X1IvHMl$@蹧1tI~Ht-H[]A\A]A^A_HLH蚪L9I~HuI$uH$i$뷐I$HI|$@U HD1H=W WvAWH&AVAUATUSHHH L`@Lx8ID$`H9/LHI^HHI\$XID$@HK1HHL$LhLcHEH޿HELHsHEHs~C FDOLwbH|$LHdIt$X1IvHMl$@?1tI~Ht+H[]A\A]A^A_ÐHLH"L9I~HuI$uH߈D$NhD$I$HI|$@ HD1H= jVpUH-6"SHH{wdCHcDHDHS:.DC(H=*&H5&>u[HsH= UIH[{vH[]H{oH{ fH[(mDH{OH[ VfDHS1ɀ:.kzt`fD=&AUATUSHHH0HtGD@uH[]A\A]@cIHH&HtL- fHHtHsL茂 tHk/H`HuLHWfHtHPHLH)` uO&iHC0H8輔 Im@t fH'AWAVAUATUSHH|$HHt$H5>FdI1M I: Hff.I5c_LuHLL)H9u>|+ t7HHH HIMLLI)D)`HHuL9tp HV_Ht#HA_HtHff.fHD9A wJMrErL`3HdL3^HĈ[]A\A]A^A_@HϺH5H $0]H $uA< L< DHA=u9fDxHEtfA=t`A wMsH9uTff.HT$E11H:HuPHIH $Hz IFH $IH]HH9tx/tHT$H)IH:HtHt$HFHvHPN:I9RHt$HV;&H~H>LH_HD$LxLxHB8HϺH5H $[H $A< t< ff.fH\$(LAE8A rA hEM"f.E>A RA HLIEuAMH$/H|$/LD$\LD$H$LLD$ R\H$HHD$H)H|H$5 H$Ht$HH$HHT$^HT$H$Ht$ H<HS^L$HL$011LHL$BauI1H|$0t5Hl$ HH\$HD$8HH4HH;l$0rHl$ H|$YH<$aEtGME8A fDIwAAHuSIXH\$(HLt$J>H $Iv H $IHIFHP}IhDAWAVAUAATAUHSHH&LwH@LH0_QHNHLKDHGADŽCD@ H;&H@H9CEHt$HgHD$HteH=nHw&j&{}=^&Et9Ld$ML-h fM$$MtI|$LXuH5)&HAH;聎 =5&IumH=H&|H=v&HD[]A\A]A^A_fDHGE1=&tLH=1^M@HLH=1DMzHH=6 1MIfHLH}Htt  @H+H&H5=&HHHH&HCHH=JHMHH=f 1M-ff.AWAVAUATUSHHHhT$8HVL$<:/DD$H;HfHnHHT$fHnHD$fl)D$PXHT$L`HT$@Ld$HD5&H1XIHUHD$HLH)H| IHL9tHH:ZA//I|/Ht$@E1VLt$0DfI^DH IHxTL4LD$ZD$Hh[]A\A]A^A_Ët$8Hh[]A\A]A^A_FH)"+H=:ff.AWAVAAUATUHSHH=&L%&t$ H5P&T$0DD$4DL$]~HlDt$ILI?@}u&I~Ht2}Ru&<u}tM6MI~HuMM9t6@I|$Ht a}uIvI|$OUM$$M9uH=WL5&H&`vH&HtHx0 }rAoF=a&fH~)D$@fD$PXH&Ht$H@T$H|$PHD$XHD$@H\$D|$E1HD$Ll$ Hl$(DD$Ht$DDH=&IDD$ EvH=&HHDD$DDHt$HHHAbXEt$0EH=&H5_&|IHu%D#XMmM@I}1HIFI9EuDD$Ht$DDH|$8H|$8؉݃M99M6MI܀}Ru H&HubL%&I$H[]A\A]A^A_DCD@t*HCxff.ff.fDHHtCH<u뷋|$0I~PH-&IHtf}uTH}PI| HUINH5$HH1UH|$PDDH\$XvLHVHmHuAD$AIVIvH=ʒ 1H\$Ll$ Hl$(DH f H`H5P&HH=9 1rDDH=&uH=&`H=ZMHuaT$ fDH=1fH~rCL$0TH=&H=gMH1DD$Ht$DDHtH\$Ll$ Hl$(}uD$4ubE= &L-&H\$`MAoFDHLDD$)D$`4f.=&H=&HtAoFH\$`1DDD$H)D$`[6H= dLHH8DD$Ht$DDbDH$ f11H=q&D$hH\$`L-HD$`L/8 HHHHSH|$`HH|$`H&IS&H=&1H5;17 H5HHQHISMt*H\$`L麀H[LH=tULL<&| &L-&H4SH=m&11LA7 HHH|$`Ehntu|$dut$p1t$hL;PtD$tx LHËD$tHߍPKH‹D$tH9t HRAH\Hu&H&ƒu.&t%#&&ff.fu%X&=Q&y&,H5)&H&H9s/&uH &HfDuTH5&HH &u&_f1H=mA&e&\@H=1 1H?fDUSHHG`ƒ@xEu!tEHs0FD@u}H1[]DtHw0FD@tH= 1?ft,u8H{0GD@tuH1[]ffHw0FD@tH= 1#?뮐&tGSH&{@t [HCRAQEAȉщH"CRXZ[f.ff.@UHSHH=X&;Hu1H=U >1H[]HHtٺ+@H5H^Ht^Ho&fHn~&H @|HflH HJB HBHX@H[]@1H= =1]UHSHH=&H"IHH~+@H5*H^Ht}H&fHnH~5&H @|HHflH HJ0B8HBHX@H[]H= 1:=1H[]Ð1H= "=1ff.AWAVMAUATUSHH|$t$T$ L$$DD$()L=&A@[H=4&Ht/R H&H=&H@H0BH&HH=9&HH&Hu,ff.ff.HH`HCxu拋tH Ht@`uHtH]QH=&tHH&H=&H@HxH-&Ht{HfHHXHHt>ff.fH&HH H9p(tN$1XHHuHExHHu&<&L-O&Mv1Lt$8E1MD$/HM&H-HL$L|$0Nf.Et AH|$&A&MMI HtB`uMMthE1D|$fDM}I9]`t9HLDnH5LGu1I}@ D$MmMuD|$EzAGMM`HL$L|$0Lt$8HLHAH5HHxP84[H#@|I ff.fm&<HLAVDL$8DD$4L$0T$,t$(XZHH[]A\A]A^A_fH Ht @`HHP8ftf HH= 19H=&mJH&H=y&tJHi&H=e&XJHU&|$/H= 18I&‰8H=&HHH5[]A\A]A^A_YIVHD$D$/zIDHD$H1H5&OiH=Ј 7XH5W&H= 7FHL$L|$0Lt$8ILH= 1HL$7HL$EtrAuUH|$R&uHD$EIVEztHD$D$/Lt$D$/MHL$L|$0Lt$8iH|$tEiDAWAVIAUATUHSHHHHD$Ht\GBD% &L|$HE@HLH@uAt-D8t(DLUBHt0Lxf. IH[]A\A]A^A_fH|$AH| II z&HHH5s1 GI>GIH[]A\A]A^A_ÐAWAVAUIATUHSH&HXH&Ht$8x@_HD$E1HD$D$'L=n&MMA?[L5&MHl$LL$$ff.fHHHExuHHhHtӀ?t D5|&IHD$8DLHD$0@Ht&@A<$:L`DL@HuA<$sH|$8LHHffDL$$Hl$HILH v&HD$PH5R&H=&PS5c&LL$X<H Hl$HHt$H=&H{H?HHE@L- &M L$$L=rf.H)&E1E11BD5HIM0HP(HEID$`HtHPHIL$@H9rH)HPHAL$$ ID$@MmHMAE`uI}0L%PIHtLp@I~ I}01MHLHWQIu0H= 3<@H=L$E11RfDAL4$H5L5D$A~aD$HH$|$A@AXAkAH<$H54^H&&L&HH=&H>H$xaD$'L5&M01҉l$D$tM D$A\SHHH@`H9B`2L6&@HD$H$A HH$H@$Ix@Hl$;LD|$8ILD$(H\$0l$ H9D$CIʃ ЈCIH! H9D$t+HHHHtgHHCHt,HCHtCIt u?H+fD1t |7HH-1H[]A\fAăȀCICHAƒ<HC1HAHCID CIHkeIH9tHCH9Et 6H5@ 1U6FA6CIA DcIff.@AWAVAUATUSHHHH|$ Vt1HĨ[]A\A]A^A_fHHTuH__.SYMDEH3D$ HF H3T$(H QH__.SYMDEH3D$ HF/ H3T$(H *H/ H3D$ H H3T$(H H/SYM64/ H3D$ H H3T$(H H#1/20 H3D$ H H3T$(H tcIDfDH|$`Hھ<^UH<Hl$@HھH?UHHưHqSH__.SYMDEH3D$@D$THF SORTEDH3T$HH t! H5դH LDH(HHCHHH&HLd$`LpBHھLTHLE1-IHHD$LHLHHEIH#Ll$Ht$HILSHL$H9LHt$HMtJHHT$Ht$M.LIF HT$Ht$I1L9IIHIM9uLeHO1HHpHHuGQunKI H|$HCHHHLH8/tio:f.H8 ( i2Z2HuH H|$02x uHGH=HE@AU1ATUSHH(HH0rPtH(1[]A\A]ÐHHھRHtH([]A\A]f.HHPuHARFILENAH3$HMES/ H3T$H tFH// H3$H H3T$H t$HH@ H@(nHCHHH)HOTLeIt Ht8L9s3 0HHH@ H@(DLHIt$Me(PIE HHx HtHLPL9HH@ B HHMHp HHH9r<@\u/HH9t' uHH9s 1x/@H)fHMHHHHH,1*t /HHHp 菠HH@ ff.f.AWAVAUATUSH8HGLHT$ @@t$HD$MMHL$(Dd$1HE1pDIHt @I@uL8MtLL+ t2A?/LtHu>/tH HETHXMMM+M}EI@uEFL> ILF A9D$IDLDL$HT$LLL$S+ L$HT$DL$AvIEHA8 dAAEAAAADfADIEfDMAH81[]A\A]A^A_fDEEtDL$/PMAHHMMLl$(HHH6IHD$ L0MtLI]MD$E1L,$D$IEI@SIHt @I@uHMHL) L9D$rEI@tBIL@IGt$Iy@AEI@t IXH $H#MM\H8[]A\A]A^A_HXM@ArZIIzLHIIDIDLH)A H)ƉHD$A9r AXIE@AG@AEtAAAtADfADfDEFH>; ILs9D$r EI@IL M9HT$ ALLLLL$H+ LH $|$LL$K&t/H LpIuD;/IyHu>/lHI\H8HI9D$OMMQDH $HI1LL$t$I_XH4LL$)HHKI|MM[fDIIzLHIIDIDLH)A H)ƉHIE4AAADADAAADADIEHHHH1fH}HHHffDAVAUATUSHGLhHHHMtaHAL-)fI>CFuW9 Ht.1E1 A ЍQHu9r0Au*MMu[]A\A]A^Hu[1]A\A]A^ÃILH8AHH~ff.HHH<H8JH<HfAWIAVAUATUSHHLuA>#uA~1t/L<LGJH<H[]A\A]A^A_A~/uAVH7"PtL.HFFuL7 HILPIăH;Ut"H=˗HT$T'HHT$HUI~0 vÄtL<LIHHtD$8E1E11HD$0EL$$\$<DLCAFDAFJf<IFLHHHD$0H9IFLLHvUE1Lt$ HD$MHHT$H<$HÉH@L$HI$HD$H<$HsёHL$HI$H8HKDHpHD$ E|$E|ID$IL9t$KLHA A u@%tH6w&H9t9l$87HYH2;_){_1{_H5@H=u&Ht$ H=C u&/KDHXLt$ IFL uBf.LL$$H|$Ht$(L轑HH1[]A\A]A^A_@MML$$\$I6HT$@H$CH$EE tHDŽ$D$`HD$XtIHfo $L`8HxH H"H8AL$ AL$AL$,H$L$\ITHL$`IZHqL$XI`HŎHT$pIh tx` HfAWrHD$pLM'I6IGHEM{1M~BH$D$\'D$XD$`IHD$pfDLIdžE1LL[E1HD[]A\A]A^A_HEHL$8HT$0HHt$(AĄt11H;uEI@H=ʌHHČHD>HuD \$GLl$0ML|$8 Lt$@fnLfp)D$`)D$@)D$PD$lELLHIUH|$p H ` H<LfD$z=H<Ht$0H|$(H=H;D$0tHH==H;IHxLMt9ILHHXHENEI@MMuL|$?L-k> HEHL*u @vfIdž11L9HtYXH$@H$LLH9HFHI9;I9nHLL<I9WL)uI@HH=OO<Ht$0HE1ff.@AWDD<IAVAAUATUHSHHD$ DEtD$A6HDDI{IKH@L$HH9u&fDHH HI9tZH9H9tfLHAoAfofsffI~NLff.E1HD[]A\A]A^A_HHDL[]A\A]A^A_ HD$PHuDT$ HL\$HD$LL\$DT$ t4DT$(L\$ _HD$L\$ DT$(AHH$m;DT$ L\$HH$HH5`Ht+H5`HtŅtd%H[]@HxH[]fDHGH1҃<tHG@tuH@HP(@GH<uHG@t tHp(DH@fHt;GH1҃<uHG@t2t HfHH81Hf.HHP HtGGH<uHG@t$tfDHH8fHHp PH! H=v]ff.HtGGH<uHG@t$tfDHH8fHHp PH! H=]Kff.ff.zHuHB HHHDH@EH@AWAVI1AUAATMUSHH(D$hD|$`DD$D$HSztH([]A\A]A^A_DT$pH߉D$HHrHHT$k[HHLpDt$AHAD$HT$IHAD$ D q83 A8D$pA@u7HH HHtfHHHuH <DHt$xHyHHL$HL$fD1UHSHHHGxt*% v4HHH1[H5T]VfDHxHHx uHH1[H5J]#UHSHHHGxt* v4HHH1[H5S]fDHxHHx uHH1[H5J]HG1҃xtÐtCt&uHx@ HfB:DHxDtDHx@tDH11HtxtHHHxHPHHff.fH1e1HtxtHHHxHP(HHff.fAWAVAUATAUSHHH`H$ID$@L[HH?IM)IVIHLLHfCD=DL5 LI M)LIHHHH$HL$M,I| VIHt2H$HHH<$LLLHT$K&H=oSI\HCfDcHLHPŅuLc01SDH[]A\A]1afDATIUHSHHHtoH1Fff.ff.ff.ff.@HHHHHHsXH@I@tHHtGI@tHHKHtCHƒ`@CHHLH߃ CHHtHC0[]A\fDHS0HKXHpH9r/HH)H9s$HH)HH9HBfHn[H]A\f.`1H߈CH uHKQff.ATIUHS @BI@uHHHuHKHCHƒ` tXCHLHH߃@CHQIHtHC0H9u L[]A\DL[]A\`1H߈CHCuHK뉿IfDSHHGItHG8HĐ[fHx1uHD$XHC8HĐ[ff.SHHHHvXGHt HH'u#HD$0HtHHĐ[fHǃHĐ1[f.uGHtHHtATUSHHHHt@I@tpE1HHHv)CHu+DHH9HGHĐ[]A\f.uCHtkHHMuQHD$0HtGHfDHHtHjHHHtfz:Z AmE1eHǃHĐ1[]A\ff.@SHIL\$H\$HuHff.ff.ff.ff.DHHHtAHLLOXI@I@tHGHWXIHt&H\$LL\$[H@8f.LH[DSHH=KHt11H[^fDHt H[fD1[HGxt1HB tAWAVIAUMATMUHSHHHHP@HxHHx tsH}AHCP(H}HD$HCP(AWE>v1H[]A\A]A^A_fDHHHHuH\$HI]SA$fDH}AHCP@H}HD$HCP@fDAUI1ATUH͹ SHxHD$ H|$HD$hHt$H H L$l$ tHx[]A\A]IH5LHIpn T$Åu>Dft>HLH)IDHD$ ÃuL0 ËD$tD$ tL D$ Hx[]A\A]fAUIATL%R$ULS1HH}L˱tHuH[]A\A]HAH[]A\A]DH%t+HKtHKtHh?HEfAUATUSHGD@#HHWIHzLIMHx1@HRP@ǀHHIMHHހx ID$Hs1PPID$H}@HsP8M|ID$HsHP8E|IE0H[]A\A]IMZLIBH}@HsJE|H[]A\A]@ID$H}@HsPPM|ID$HsPPE|IE0HP!H=fJOff.@HW1ztHt3HA tHxHHz uѸ GFuÐAWAVAUIATMUHSHHF$!HELs@xM4$tH[]A\A]A^A_fIUzuHxHHHxHH@ 8A tH;H5I}%EEuHHtIN IV HHDI$oDL9IfBEtbH5-ILuULBLHH$CEH$H.IwHxHH$螲L<$F(0<t M>DH5&L褮uLȯLHpH$DHHt(.zH$IwHyfHL$"L|$1LH5 I$fff.HGxAWAVAUATUHSH(HRztH([]A\A]A^A_HxIHHHxHH@ 8F tHI<$IH5GM読CEuLH1AƅtCH<t IT$HHuIT$@LHH$a1IcH$HH9IEH$HCH@@A L4$LL4$IHD$HCLP(H $HD$HCHyP(I\$@|$HD$HEH4$LcPPH $HEH|$HqPPHEH|$LPPIuH $HSHHy #M'fH(MLHLH[]A\A]A^A_fD1_H<$IH$HxHCP@HD$H$HxHCP@Md$@H$ID$I LHD$@HHtHEDHPPHEHs1PPHEH|$HsP8HEH<$HsP8IEHT$H{Hp ~I}5I] ff.AWAVAUIATIUSHH(GHLv@<t L~HMMMk(MM@M@HLL $L $L!@E1C)1LMHLL $#L $MM IEH([]A\A]A^A_@M9MBS@@6wMuf.H{PLL$B?H$HHLCPc(1HoC@HCHLLC@)D$tfoD$‰k(C@ @k(LL$MXHL H $HsPLL$DLHH)H<LLL$t!H<$LL$CLL$fFLL$M;MtLH<$ 1H([]A\A]A^A_fHHtMtI9~LL nfDM9MtL貰1fDL=IH uL1HH= L 1]DL=IHBIEH]@Lp=IH ff.@AWAVAUATIUSHHHn(AH$LL$@Aƅtuf(LT$ 1MLLcLT$H|$bH|$LT$AHC@EI$E1k( H$@k(D0HHD[]A\A]A^A_f(HT$ A 1AHC@Et|$ ZLIBI$uH;H5AAƅuT$$H!PpH|$$E1G@I$]fDI$HL$MMHLt A1fA$DAWAVIAUATUHS1HHHGD$,x4HL$8HT$$LHLL$,LD$(Ut T$$/Ld$8I@ MHDڋT$,HL$$AF@D$)ȉL$4D$HcHt$0CL-;IHHc|$Hct$LHL L蹭D$(>wAF|AN$@Af(π|$MMf@L@ HH4Ht$00<IH^EF@H\$0H\$0L9WMf@LLHLD$HD$0LD$IF@AF(LAN$@M AF(HHL[]A\A]A^A_D$$ 0AF@D$ 4D$HcHt$0EF@L9oHW;IHML9d$0Hct$HcHcT$LD$LL蠨H\$0LD$GFHxHHx  .LIf.LLL"IHExt1fDD$fDI1H`fMHt$0HC:IHlfHt$0H<LLHD$= LD$HL;U*D$1HO{!JH==nff.H(HL$HT$ LL$LD$tT$ 1x H|$H(AVA AUATUSHH0$HcLEH~Hu Ht%E1H0D[]A\A]A^F(0uLt$1ILAńtu|$ZLIBEHL$ILD$HLLUtHD$HK@HH H uwC||$S(σ ЈC(?&H|$:D$HD$AUATUHGH<uH~@tH~HuHt$@fE1HD]A\A]fDF(0uHt$HmuHt$Lf@LH6Ht$HItM1HHHt$薻Ht$AtDLHHt$Ht$HtH諨Ht$HdžPL莨CfHGH<}H~@tvHtqHugH~Pu`F(0uZHHt$Ht$H¸Hu(HHt$Hdžf.1Hf@HFIHxHLMt@vPwHDLAf.OvrP=HM trHAIpH!Ɖ9HQHu5AAYH{MrIP1H9QrRÐHM u(HtSHyt Ht;AfDHQI @HAt9fHQf.IxPHw![H=89fDAWIAVIAUEATUDSHHHVLH|$IWIv}IWIvAF GNUH$EBT-DD!HH{t{EtDc IOI4H$H$DItIW{At"AuIWH{Lu@LH|$t{u HD$HIWH{<H[]A\A]A^A_Hu!PH=7iHru!hH=7QAUATUSHHGxHIAHHHu4@9r,HHHt!H9uD9h sCDh HH[]A\A]Ð L33Ht,f@HUXDh HHEHH[]A\A]H=L蹜Ht!)H=6qAWAVAUATAUSHH(HGHt$HxHD$HHx tAH|$HOHDH1HHLw I,I9fHL)HHCLI~ID$IHCHIL)H9FAHD$P t=AHHttt$DLHЃHtWDCTD$XH A11Dl$LdX%Hl$PE1D$,MHD$HHD$8L|$HT$@DL$(fCIu H$I9s tI>,t fD$&MtHAH$HǃHH$H9CH SD$o$ҁ fCcJHL$ CDǃHǃHǃ0{H$ HjHH11HIIHCoCHHSH߃¸IHt\CHHsV<;H95L& HL$HtHcH4L$(ƒ9 H$ >I~IHtaL9tTr GDHCHD9fDH%L8M|$,L|$HT$@DL$(Dl$Hl$Py MAH=%DQHHHIcff.HtI9urD9H$ L$,H|$0HT$A H$(HT$HH$HHH$8H9CHHT$ sDHT$o$8$0ց fCCDHH$$|HT$o$H$pCho$$tCxfo$`%$xCJ CJH$H$ HH$PH0L$XHT$HDŽ$ |$,?t$,8 MtHAH$cHLHC越H$ tHH$XHt"HH$(HHHH$ HDŽ$ H|$0i H$HH$HH$H9C9H豂 SD$o$ҁ fCCDH$H$o$H$Cho$$Cxfo$%$CJ ЈCJH$H$HH$H0,H|$HDŽ$FH|$ HEt$o1Hf 聦  H詃 f$@11HtCHHSH߃¸HUCHШuKIL蘈H$ tHH$XHt"HH$(HHHH$aHDŽ$ H$Ht"HH$HHHH$H|$HDŽ$HsH|$ Ht$oH1 7! sH] ff.f$R@H$L$D$,HKD$(HL$@fDCI ^HD$8H9%tIHD$8HL$Ht IHcD$XHD$XHCoHfn`%HD$HH)$`fnH$(HfbH$HCDfք$poCh$0HC$oCxH$8HC$H$@$xCJ$|HH$HH$H0L$XH$ H$PHtCH|$0(H5t)E1T$_GHsT$_=L|$L|$H$ mHSH9T$HD-%MtHAH$HǃHH$H9Ct*H} CDo$fC $cJHǃCDHǃHǃ0uH$H11H CHHSH߃¸HH=DH$cH HC貣H8HcD$,L}Ix&Hff.fDIHIHyMHAHD$8H9%kD$X+^!MAƃyEgD$H^!LHDL$I4 L$DL$0H$ Et$,9LcLKf>ff.HfHf~ff.f>H@~@W G f.GW f.ȉfff.fHËHfHHfHff.HHfHff.ω>ff.>ff.fHH>fH>ff.Ѓu`IrI~uHcЃA<H9Nff.f.)ƒHcA<H9|PH@!H=ujI~I1*ff.HcHA40H 9~*uwH)ʃHcAH 9|DPH?!H=_膋fDAWAVAUIATIUHSHHH;5%rH[]A\A]A^A_Jf.;HtH9rqHx\HEiIIHtCHHHH9u M}LI$H[]A\A]A^A_fLxlE1膋@v@Ht#HtHiuH@+lHP>!nH=H off.@ATIUHSHH;5%HL$H8HHHH8Ht>J ;Js6ȃHJ HHH$HHT$HPHH[]A\E11A"H5I%7eHH8H '%@ HHQHPH8HDHpHtL9rfLHHHt&HLH5I9QH(Hݧ 1HH[]A\Ht$H<$1hhfD1贉fAWAVAUIATIUHSHHL?L6HA%EuDMuII9r?AFMIE gIHHEI9s;Mt1IELLLHKL9H[]A\A]A^A_fDHLLHtHtMHEH[]A\A]A^A_HLLzHu?螈1H;!H= ‡fMgAUATIUSHHF(0-IHLC)AD$H<t HCHHuHC@H1HH9HI$HHt@I@uI$H*HH9AHL1SC)MID$xHHLHHHtBHt~H0HH HHH=ï1̕B1H[]A\A]DH1HH=a蜕θf.Hx-HdIHtHLHLH9뎿ĆtHHL1H=XHS9!H= …fMuDATI1UHSHLHҤ1uHHĻH9[]A\Ð1Hv HHGff.HW.z_uL8fD11E1ff.ff.ff.H?wIAIM x݉:LIH11E1"8H?wIAIM @yL9rH?wt@t HHI L11E1ff.ff.ff.H?wIAIM x݃?w@t HHI :LÐHH9r+HHHu fDɀHH9s1f.f.f.fDff.H(G<t<w0<w1<wHW(HHG(HHf1<uHG(H@HHHH HtH@Hff.fUSHHGJt9HHt-HHudcJHǃH[]*H= 臂Hff.S~FH6!HHcHfDOHF(HC HF0HC[Hq%OHG HG[@HF0HGHG Ht#@%uH:%H9t H= ԁH %HC [H Gt6uH= [韁H%HGHG [HGGH%HG [H6!H=Y mff.fHG@UHSHHHHHH9r0HtIHHHHFHHtNHHH,Ht H[]ú|@f.1ff.SHHHt3H;Ht@8fH@@@@(H[H߾HHT$>HT$HHu1ff.fSHHHt#HHt f@@(H[@H߾8HT$HT$HHu1ff.fAUAATIUHSHHFJu HtH= C@DLHfC(,tH HK8MJHH[]A\A]HtCHt>SDHt"tpVwfH@(XSv[fD1DAWHAVAUIATAUDSHHH~@DD$ HD:IEtH@D:x?D:~ 5E111L^HLYHx tIHD8H@YH__wrap_ItI|LXH{(HAԹLHH@z@<wff.@H[(C<vKL_HH[]A\A]A^A_A>_tjH{(HtYMtTL$ ALkHHt@t@<wH[(C<vMu1|H5^ L|WzIH{@11LH]LXHxIHtD8HL@]H{(HtcAԹLHHtJ@tL@<wf.H[(C<vKH1HufAUATIUSHHHjEtHV:Bt+:G t&H5\ HrVtHH[]A\A]Hf.LmI|$@11LHtHCH9t=]EID$(HtHu11Ht]H[]A\A]ID$(HwHL11[H]A\A]YfAVAUIATUSG$OG$t?HIE1IEJHu<@HHt0{HuH{(LՄuAE$AE$[]A\A]A^DIE;ur@UHSHHH~ tH= zHC0HtHh H{(tHk0H[]DHk(Hk0H[]fHG(Hw(HHu%HH H H@ H;G0t#HHt@tHP HHuHBH9ֺHDHG0ff.ATUHHSHtzHIEJu HtH= yC@fHHC(H5Et$HHC8LMJH[]A\fDH`[E1[]LA\DHtUSHHHGHHxEHHHHHtHt&HCHHxH[]fH1[]AWAVAUATUHSH(AH|$LD$\D$HD$LM$M9rIM9M>IG @%u fAG tH}(IwHtHt11RHHtCPwff.H[(CPvƒuIW B%<tt@IE HSA~LX8IF HJ L@HPuHjE11LjAXZLHMnVML|$LHILQLA?E1^H:!N H=% 9]H"!P H= !]H ! H= ]fSH0HtH@HtHH[fDHff.@AWAVIAUIATIUSHHA9B%L{MtVk H}L9Ls(LLHkaUMLLLHOL;s(tLD$=D$H[]A\A]A^A_@HE1[]A\A]A^A_f.AvAT$$LI@P@IH_1 H= w[fLhIHtHHtUHs(HI)A9HHI9sMu!L{H! H= 0[Hs(L9HC(L0S7ff.AWAVAUATIUSH8HHLJH|$LJHD$(Ht?HHt*ff.fxuHP J(HHuHIHuMl$`L5%Mff.LID$pHIHu rfH[HtgH;C`uIEL$LHIU@@Ht$(H@H|$HPHHX zL$gff.fIAL?!L|L9L$@HS H5%H9 B%H=%E1H9 &AT$<HS H5v%H9muA|$?jL$L9ff.HB`HPHH9BuHL9?H]C8LC(MA@IT$PI}H9zp<@IcLLC(MuHSH|$E11AL;L !HIuC u~HS L9=HB`L$HPH(H|$H9M@(S%IH0 CHKIH(HK uAT$eHS L9+1L9HL9MMMt$(Ll$(HD$AF$AVAF$Ll$L|$IHt$HHu>DHLAMLLHt$HHO{HuHk(}8uAD$E8IF@HC0LCLs(IF@AF$AF$H[]A\A]A^A_DLLUBAAMtHMILHLtX H= HIF@IDL!A9n|vAn|mE1ff.ff.@H(Ht_HtZS1H1UHu1[ff.H@(HQv@ upVw@HX(H@0[@1DAWAVAUATUSH(HT$H~IHE11HD$E1HD$Iu]I8M?Muf.HD$L MMHD$L9H(L[]A\A]A^A_f1Mo.HV:*u;zu5MFIEFuHLAWhHHWFtM1Mo8f.HLAWhHH(FtHD$MI@HF8*uxuL|$f.L|$fMH|$u!ff.@L|$MuE1L|$HHT$D$=D$HHGfDf.HGP HFPH@@ 9tu @HHt%H=vq1WUF1HfDH= q12U1ff.f雲ff.;ff.Ht@kff. ff.Kff.ff.ff.@ff.@ ff.ff.ff.H鄲f.f.HGH@ HOtt uHq 1fHq 1ÐSH_HHLC H3SHxHC [HHOS1HHQHtH1HC[ff.1ff.fHHIHw1HzHHHǂHH)HHFHtH6L1ff.fAUIATUSHHGH&xI(L I(I}h>I(a M8MtIfDL1M$$E tHHHHtH|";] rH5´%H"MuI$HL[]A\A]$HHuBff.H[Ht)C)tHHH'"H[HuI(t"IEH fH(I})$@SHHt'HH5P _H1Ht I[f]H=N Bff.fAUATUHSHHHHH5$ HO.Htj@%tdLh@IvZHT$HHZ7tFLd$LLPI9r I<HCP@EHL[]A\A]@L0#HE1[L]A\A]H=v GATfH=^ /A3f.AWAVAUATIUHSHH(T$ LD$L $HMHǽLDH}H4$HHH8|$ L}LIC|7/IFIMu~IHkLLHdCD5H}P HIA|/HP0HHuLLHHI|.)HHHHH5M 1HL H4$Lt$HAքH5 HHL H4$HAքuu|$ H ް HIIEH5 Hٴ HL$W H4$HAքu9HL$H5U HIH + H4$HAքtvff.fH L L H(H[]A\A]A^A_fDI9I LBE1IzI~DLH LI!|$ HPHtA|/tA?/t /fALH+HH H4$HD$HЄ*H f1fH=^ />7f.H>1H11>HcA|/W/fAI@AWAVAUATUSHHHvH0Ht H}H5К H)HHd@%ZHx@#HT$HH2L}@I 9Ld$HCI|$LIHCI|$HHCIHHIAD$ GuxAD$ NumAD$UubIwYIuI9rPH(Lt$HHL(HxIt$LH0L4HH[]A\A]A^A_fH|$,=11=fH=N  ff.Hٺ LHt6DLI9sLfD1H1@A3H9uAHA9H []A\A]A^H 1[]A\A]A^þEH= 9H-FH=Ԯ 9S@ũHH8txb%C@PV%8tUV H(HttH-P$H{h (HH5$ t(ǃH[fH1H[ÐH(W H19H1f.SGEH HHtHCH :Q$HBHCHBH9tIHKI  KJ ȋJH ȉBHH[fDHCHBfD 91[Hff.@H(ATUSL'HMt/L[HhHߦH1HtSHLHHH{h苙H(?V fHǃHǃ([]A\DfHGxuHxfH"81Hff.ATUSHHHGHCHt HP !@uH3HĐ[]A\DCH<uCDBtH3HuD$%=u1dAĉZDH;փI t$ ff.SGHHu [.fDHWH߄t [ D1[ff.@SGHuaH HtYHCHH@HM$HCCHKDHCXHC0CH[fD61[f.USHGHƒu 3f.SHHT$HHD$H|$HHH[ff.@HLLL$ H Hf.E1L&H zUDATUSHHttHHtlB L% HLHHuMHߺ!L#HHt?H HHpHHi%tC|H[]A\fD21H[]A\ff.AWAVAUATUHSH HHH4$LIH@H5~ HLl$E1OL=Z HH$ff.Hٺ L HtFDLI9sLff.ff.1H1@A3H9uAH H A HHD$S LxHIMoL̟HHtvHt$HHLH<+1H)H ID$J4;DPPH4$LM1H$H߉3H []A\A]A^A_.11׿11ff.HLUH N1LL$Hff.fATUHSHH^ HL`L_HtJH;Ht H{t*cHHLH HH[H]A\f.CF tԿp01ff.AVIAUIATIUSHHLH;H LHCHLHHA $Qw&BHsA|$+tr؃SHH߃ ЈCH }KItH[]A\A]A^KHH[]A\A]A^LLHCHSQ/H1H[]A\A]A^f.t1 H{G H1mt f.. ff.fHz _ff.@UHSHHHHH߹Hz 1HHtYHǾ觍H߄t@HHuH1H;uHHxg @HH[]1H[]þH=N -hf.H=. ,?f.HxfDAT1IUHS1҉t7t"tTH: L[H]A\DHy D H DeH-[1]A\H: H=x i,fUSHSHt7H@HtCHHH[]ÉHA,1HH[]ff.AUIATIUHSH(Ht[HHH8Ht@LkLHHt,CHH߃CH tHH[]A\A]DHH1H[]A\A]AWMAVMAUATIUHSHHHL$HHHIb7Ht}HLHtmAEHHt$LAEHAHHtK(LΛHL$PHbC$HLxLpHHIUIEHL[]A\A]A^A_fLE1ATIUHSHtTHHH6Ht9LHNHt)CHH߃CH Ht'H[]A\HX1H[]A\fD*H14fATIUHSAHtDLHHHt)HtHEHCcHH߾ۉH[]A\H1H[]A\ff.AWAVAUATUSHHHH= HD$F H5HIFHT$HHIWLe@Mtu1fHI9t`H|$MLI)HL HL9sLZtƻH|$ LLE1)H|$^ LHL[]A\A]A^A_#f.B<wrHN HcHf@HGHH@XHGHP u2鵚DHGHH@@HGHH@(1D飚PHs 5H=n 'f.A<wzIHH HcH@HGLH@hHGLNjP u2ݙDHGLH@PHGLH@8D@˙PH \H=Ɯ R'fAUIATIUHSHHHLLHHHCHEHCH!HH1H#CH[H1]A\A]t|ȍNAHE1HHLRHڅt HHL\6DLHL I!ItFw\tI!tDH1H!L9f.ILHI!tu1IPH H= &ff.FH<t HBHHuHB@1H9rWH)ȃH9‰ff.AWAVAUMATIUHSHH8HL~HT$L0H{%IN H9MIGHMD$HLIHAQLHL$MZYKH|%I9F u MHKHLHL$DHL$AAD$HLɃ<t HMHHuHM@L9AwL)ɃH9IF E1ۋH$uM^MXE1AGJL@XID$x'HsJIAGtHU`L+EXL+B0Mt'HSHUXRID$HSxoLCfAG.A_D$ ?Ht$LLIAOD$LILD$H8[]A\A]A^A_@H){%H9u MH8[]A\A]A^A_AFu)MD$MtIGH!YMtIGD$H4@HP`E1HLB0HEXHC3fDHiz%H9uMuD$f|$t9A_ ?DL+CpHCI)LLL$LD$.A_AwALD$ f?fLL$LD$O@HLLL$(LD$ L\$rLD$ LL$(L\$LD$M|?f.LCD$HSff.@AWIAVIAUATMUHSHHHLnHMt11AT$@SHHtH{ H{H{[[fD1ff.fff.@ff.@{cff.1ff.f[cff.bff.bff.{bff.kbff. cff.Kcff.bff.+cf.ATIUH-$SH+$fH]HHtH3LuH[]A\@H-$H4H]HHt;1LHuH]HufH]HHtH[]A\nH[]A\fDAVAUATUSH.Ht`IIIDx:t&Il$IHtD$fDD$?HD$H9r/Lt$L$Ht$COIHHt$D\$L$LLHt$D\$$L$Ht$H9]L$D\$$1A4|5cHeHD9rD$:T$;t$=|$>T$<D T$?LHL49DƅtJMFff.fDRHDFTDI9uACILhC.@DTDD9HX HcHuff.f1HĘ[]A\A]A^A_fUP% PE1L I$LOD$ $fDt$ 1LjÃAAVHD$(ANDTL AVTHD$H(AAVHD$(ANAvDTL t5AVTANL AFDANL I$&HD$(Ht$HP@Hp0H|$HHD$@HHLH9A$H5LL$LL$P1赽L=LHpAMHH`L LHHD$(HH7HD$@H|$HLL$HLfHnD$flHA@HD$0A0HHCAAVHD$(ANDTL AVTHD$@I$uM$L蝽HIMA{AAVAvDTt5AVTAVANAvTL t5ANL ЉI$HD$((T$ LH=H1{'I$막HL$(HHA@T$ H=OGL1%aT$ LH=hG1w=T$ LH=G1ST$ LH=G1/T$ LH=G1 fD1ff.fHfAUATUHSHHDH@(MHuMuLEt,JtHHHH0HJH9uAEHlHELH[]A\A]DK4dHHIHHHJHB(HtHH=0%ff.ff.ff.ff.DfHnH0ABHqH BHrHzHBHuHCff.AWAVAUI1ATIULSHHH$ HLLcIHt/Ht HAE$Шt5H[]A\A]A^A_fH1[]A\A]A^A_HHHL$HHHtH4$H$= J%Iu8HL$HtGAGLHyHHiIIWHHAHtWH;BrQH HIOQfDI,1IHDH=vH=wAwAGfILHuHHHtH9BrHHH9IOfDuH%#Hff.HHDATF0IUSHH$SD$ HHLɓ L\$HH@AD$HHAD$HIHHɃAACHHAACHHHHHHAIH A,*A@A<:I C,"  ACL9sOLHff.@HHHƃA<:@y@A<:@yI9uI)OCHD$LI[HH)H)HH?HHHHAHLփD$A AL$ACA2HA fACH9H[]A\L\$1L {DL\$1L DL\$1L DUHSHHuHzH[]+HC HKHH5HH1[]YfAWAVAUATUSHHHHtDE?L#L蹯(LH9G11AMLuMD-%Mn-%IFE1Hu~fDIFC'IH9shZ-%D)H9FIF1AHD$1LH|$DIDuMH8HsuHH1[]A\A]A^A_fDM6MLHHE11ɾ +uHH[]A\A]A^A_"f+U9,,%!H?}HھH=$LI_HfH;HLGL9OHھH=*H1EAD$Lt$MdM/HLAEIE HHx`I}ƭHھH=C HD$HI}Ht$HH9D$IE H5<LHPXH@`IUHP81ҲLZHLHIII9QIM9+HھH=H&L1ffD=gC%SHtC0HAHtAfH@H@(@[fC% f1[ff.t{ATHcH ? UHSH0At>$ID$LH1H=>-H0[]A\f.H5 H1I|f.t^ff.Mt{AWHAVAUATUHSLHXLr?IHv@H9r3MIMtTIt-HL$HX[]A\A]A^A_ÿ1HX[]A\A]A^A_Df.HT$IS@LL$HHD$ ItI1LLL$(_HD$MHl$0L% HD$HD$HD$H\$8H|$LpHD$M tڃ tՃSH|$Ltj1LHHDT$@fDD$4oD$poB$oB $oB0$B@$hA@1%LHHDT$@fDD$4oD$poB$oB $oB0$oB@$oBP$oB`$oBp$o$o$o$o$ o$0HH$@h(LLƺHH|$ HcHHD1@1Ix@D$hA,{2HC(x@NHD$pHHv3HPI9T$@r(|bu!T_D<ALL$D$dHMd$L$Hŋ$H 9t(:H=* H$~H$L$Hd$HHAWt u H @ H= {~AAH)H|$pHWH;T$x>UH+It$@HP H9HTf:H z=HT R?gI}HxHH HH9f:Hz z zB |$({ AAwH JcHHHD$HHtЃȐx߀uH|$HHLDHH$H@LHPHuPH}(LHHAHLL$HItIL׃⻃D LψADHWH|$HHLHtLDA>AuƒAD A@>D H$H@LHPHD$HH6HL$HD$HQH@@HxHHz tHL$HH:gHSH9HD$HMt$ffHLL$HItIL>HfH,HD$HHtH|HL9sLH|$HDM ЃȀH$H@HxHHx HHL$HC H9A@HD$HHHDHd%HH1LLHD$L;H@H$HuPLMt$0H}(IIH@LPPHD$HILHA@HD$HHH\$HIHHP`HXXHZ0IvH= LT$pL\$XYLT$pL\$X$H=` LT$pL\$XYLT$pL\$XH>EMɃ-HLEH5$H9AB@1LHL$xL\$pLT$XeLT$XL\$pL$xEETfDIB(HM LT$ H= IrH1QhH\$%1pLT$ L$H$IR(HBXHR`IB0HB0H$H@ Ht$LLHLn LL$ fLL$ D$1LL$IAH)HIHD$X@LHD$XLT$pLL\$xHH$H@HP8LT$pIJH}FIz@L\$x6ABl+AB<E<PAHD$HHD$pHHD$XL\$x1L$HP`HHXHB0HHH$HD$pL\$xL$L$H$HD$L$H@Ht$pH<$LLT$xMLT$xN ME1Hb$H9$?IHH\$HIHH\$HH\$HHTHHH9H\$H| H\$HLc gZ HNHH H9AH\$H1HDHfffdH%HxA@ރHD$A-HHP`H@XHB0LHD$XgH |H=E UHD$HHEMɃE11H$H9$ MX9f.H|$hjHL$hH$H HABk3HD$D9%A  A+H$H|$H9 HAH3H@`HHcHu#HD$HHHcH HD$LT$XDHL\$(pLT$XH$HD$(IGH$HD$HHHtHM ML\$L|$IZIHD$hH ARh ,^1HD$fHDŽ$L$)$HHHhHZH<$LLT$pL\$XǿL\$XLT$pH\$HBLHL\$p$LT$XT$x_kLT$XL\$pƋ$E@Aƃ@T$xDHD$p$HHH H9H\$HHDHffffdHHH@H%7HHHH9foHDH@H%|$(IH$HL$L\$pH@D$H$HP8HD$HH$HHtH$ 7H|$pH$H$H)L\$pH$D$L$fM11EƒjttARi HH\$S$>Hc|$pL$H$aH\$HMt$HH\$HKHxHHy t :gCffH }`HD$LT$p1L\$XpL\$XLT$pH$IGLH$HD$HHHTHL ?HD$H@zL$H<$HLT$pLL\$X苼L\$XLT$p;H=Ѝ KJHD$L$H$L$HD$HEHL$H$H$L$D$4L$L$HH$H$LD$H)HD$HH\$H|HH\$HP H9S@ofowH\$HDƄ$ARkuyAB0urAuh tcvHH-Ht$LLHL$L\$xLT$XLL$pXVHT$pH<$HLT$XL\$xHL$H$L\$pD$h31HHD$pH)H$HD$pL$H<$H$LH$_L\$pD$H$L$Ht$`LL$,L$HH$H@HxHHx HD$LT$p1&L\$XpI_L\$XH$LT$pJH$H1ة'HD$HHHHLp Az2AzhH\$s$$bH= L$H$L$DD$p GL$DD$pH$L$gIBPHI/HD$HSH@@H9HL$H|3HHS H9foHD$HDHsH\$HPH9S@`H\$HfocHT"HHZd.H|$HGHw?HL$H1҃tuH<$HHxHH DHH|$HDELILjLuHD$HDIH$H@HxHHx tكDuHiHD$HDAHL$H뛉ƒwHKH9.HD$HfMt$DjABiL\$HӉ <tH <t,HƉ tH IJLH=r1+TEHt$LLHL L$LT$xRL$LT$x@A!HnHSH9aHDfoT"HHH1qH$B$L\$L|$HRLLE1t$(E1LH蘿Y^H\$HfD2`H=Q LT$XL\$(CL\$(LT$XIJLL\$MHAHD$ MFLH=سHP 1RSDZH7 H=ۆ vCH ! H=Æ ^CH<$HHxHH cDZH|$HDAKH j H=s CH H=[ BH H=C BH H=+ BHo H= BH$I9B(AB`LL\$ML|$MtPMJMtGHL$ IH LA yHh AWLމH=P1yQBAZA[Ht$`L1L$L$IH %H=W AH 4H=? AH  H=' AHk H= AHS H= AH; H=߄ zAHt$`LL$iL$Hff.fAWAVAUATUSHHT$< L~(IA@tHD$H)1H[]A\A]A^A_ÐAH)uHGHĨxuHHt ?<)tVH=# @HD$HH@HHH$LIAhHD$0IPHD$@HD$@xH@IHD$ I9<H$H\$MHD$HH$Ƅ$HD$PL$Lt$MfI}AxImHDD$EiIÉH\$8Hh I1HH9S A9HT$8Ht$DD$(IqDD$(HI @<  HD$H@HxHHx  @ LD$(D$(I H\$ELHt$01HD\$D\$HDHH=wHH\$$HT 10N?H$ff.HD$HH9HHH|$HILJHtHD$ II9^HD$Lt$L$H$HH9pHm$<HT$HpHHR@IL;tLfD)HD$@HC<wf.H[(C<vHD$H@HxHHx @LD$(D$(HKkE1  {h D$(L$ImH9I}HD$HH(y@1HD$D$hA+ Ht$APLL$(DD$|I}vT$pHL$X$D${xLL$(HL$XH$DD$|MT)AT$dAӋT$pD$(|${t$(u @&$D$X@T$h|$d t$X $HCƄ$< HC0H|$HD$L$$D\$|LT$pHL$hH$YsHL$hLT$pD\$|@$L$D$Cm >1Ck[H9*"@HS(@HHt B |$X|$dn A|)%HHIEDB@ I<HhHD$DD$dHL$XH@LL$(P@IULL$(HHBI4IEHD$HPRPLL$(HL$XDD$dE)IUAD yH)heH5ʐ$H9 |$X DD$(t$HILMt$8LHl$ Ht$(H-H$_AXrHHjATSt$@AUj$L$LD$pHt$HH|$XkH@lI9p$!H!?H5HcHDHH HCH9 ƒ   ILH\$MIUHH=1mH9H$FfDHt$HVHxHHz u#I u|$(ff.HHD$H$HD$Ѓ{h $HD$I H_Hrcƒ SmuLu uHD$@t8Cl u2{t,Ckt&{h A;HD$@$r1H`7'u2 HD$H@HxHHx t Ev skKmClHKlHCPHD$HD$H@HxHHx Lt$IH\$VMH& $PLD$@LHHT$ L蕲XZH$6fDHgKlHCPNfD{h >KmClskȀClHD$HH x1HCPAiHH#ChHH9 $HD$$E1Kk A@D$(}{h s1A+L$ImHk3IMHt$HH|$H$@Am A@1ۃ11A+L$ImHfH .HHHH HH HKHTHG$Ht$HT H=1D:f.Ht$LLDD$(DD$(HHHt$0H|$1LDD$(|CDD$(H HCHH#ChH HChHD$H@HxHHx @LD$(D$(( Kk rw1ۃ fL$Im1۸cIMHt$HH|$  DA|) HD$I}DD$|LL$(xHL$pD$XxLL$(D${H$HL$pMT)DD$|AH_HrHH$H9C(C`$1ɀ{h uA;uHD$@$ {Ck`Ht$H$H 69 )Ht$$HD$L$D\$|LT$pHL$hZpHL$hLT$pD\$|L$D$H|$D$L$D\$|LT$pHL$hHL$hLT$pHDŽ$HƄ$D\$|L$D$PHD$HT$8HH @*'A|$ tHD$HHXHRHt$8HH H99ufDHH HpHV׃@ 4|$d8|${ct$af.{H{PHD$@$~Ch%=k{h A;{DHt$0H|$1LdHi@H9HS({h P$~HD$fHL9$|$X;t$)A|)%MIEAgHhAT)։T$X1@$t |${$AHD$H$HH;pHH|$O|$XT$h! AT)H$t&H$HHH ,K4Ht$(A D$hDD$d=AT)D$X@AD)1҉ƉD$X@|$(LEKHD$( A@t%HD$H@PH@HxHHx [H$D$hL AD$d HƄ$H$H$!IEHL$XLL$(I<HhHD$H@P@IULL$(HHBI4IEHD$H@PPLL$(HL$XAz AøEH|$JLD$XJ4HT$(HHT$(LD$XHiHt$HHXHH HHH HLH HHXD$hDD$dH$H K4A Ht$('Ƅ$H$HDŽ$Ƅ$HW|$HDŽ$HhG^UD$hLD$d JIH\$EIMKm$*HD$8H$t8A+!A*|$(111҉D$XD$hD AD$dHt$01H.HHk(Lt$IMHp $H\$QHIH\$H=IE(IUHHIT) H$tWH$H9+AD)A rAT)D$X@|$(%A 4IEH\$1Mff.f.f.f.f.fDW8G:3Gp1HV81H9W8tHFpH9GpÐHHHHHPH9rH9fHHHH@`PHHHH@`8HW8HN8H9r1H9DH1ff.HOH2HA0H‹G$Hf.G* ff.G% ff.SHHHH解HHtlHx`H@XfvHǀH)1HB8HC`HBHHChJlHBPHǂHH[f.H߾HT$.HT$HHN1fHH5k ;HÐUHSHHH0H`HH|HHt( HHt*A HH[]l8ff.SHH(E111,Ht0xHuff.Hv(~tFiv[DHߺ[r%fAWIAVIAUATMUHSHHH~HL.HvIEHH9r[oEILHELHGMHG Lg(HD$XHG8HG0H[]A\A]A^A_fDH6HLD$HCLD$HCHHzIV IvP1H=LRXH1[]A\A]A^A_HD$PLG(HG HD$`cfD@LD$E1HCLD$HCHHxff.AUIATIUSHHH~Ht|HHvHBH,HH9rL$/H[]A\A]f.H6HHC迏HCHHuIU IuPH=1RXH{L$/H[]A\A]@1,HCHCHH@AUIATAUSHHH~Ht|HHvHBH,HH9rD$/H[]A\A]f.H6HHCHCHHuIU IuPH=1RXH{D$/H[]A\A]@1lHCHCHH@AWAVAUATIUSH(H Hdž HT$HWPH|$L8HRHD$HxHHz PMvHHE1H ALHIHT8H|$I$HLD8IXM9f.H1#fu*HLIH M9tFLHHL8H)H{vхH|$THH|$M9s I$HDH|$THM$ HD$I9H|$I$0JHI$ HH)tHH9tH@H9uH([]A\A]A^A_DM9{f.H|$HTHM$ HD$I9sLH|$I$0JHI$ HH)HHH@H9uM$ L9t$YHD$H|$HpP0HVHxHHy uII$HD$HQ@H([]A\A]A^A_M4HHE1H ALHIHHT8H|$I$HLD8IXM9H1(fu2HLIHH M9LHHL8H)HvHt,H|$HTHHM9tI$HM9H\f.HD$HL$H=WHP 1LBXH(L[]A\A]A^A_AHHH9M`HvH|$fAWIAVAAUATUSHHG HPXH=)d 1L-\d L%Ad H-3 HQd 4L1IG HPXEtBH=} 1DD!A!IG HPXt;vuD1LIG HPXEuHH= 1[]A\A]A^A_H=c 1H1u@H1e@H=[c 1ATUSH ~@D$ 5Hx@9FH"LfXuiHxHH|$HtiHT$ Ht$: Ht$LHHu@越HT$HHHH|$ H []A\@HXH`H|$HuH=b _H|$|DHhHpH|$ZAWAVAUATUSHX~@D$,1HHHPDxHLH1ҋ@LHL$HxDD$IF@HH$LL$,A11E12 I~@H 1ljD$ $HX[]A\A]A^A_HxH@9FHBHDfH0Hp8L81ҋ@4Ht$HhIωD$IF@HH$Gf.DLHXEHHp LL$,@Ht$A1IտIωD$IF@H)1H1ɺH$) I~@HX 1ljD$ EHXE1DA1v HHL$1Ld$0HX1L$HDLo)D$0@D$@ L$9L$sH|$  IV@H;E1EDD) D$Ph)xh 5A;(A;HD$@$LL$ILL$D1Ll$H=Q LDH_HQ<@fff.AWAVAUATUSHXH$uHX[]A\A]A^A_fDIHIILMM1LtE<wHMc$H9E(uE`uIAoIHP)D$LxIWAx)HT$ t@@@+w|H PHslH$DfDAy3*wH^HrL$t$ Axt$ ApL$HD$IHT$Ht$0HAPHthHT$HHt^Ht6HMLK 1HR MIH=AQX 1fIH$1LHT$HHH&H=S DAWAVAUATUSH(H^({@HGKHIHxH$9HvLsXM Lf`HMLt$I ff.@M$MOID$xuI$Ht ?;CHuM$MLd$L=+a$LD$fDILMIHzIEHtgHHHHA@HC`@$tAI$u5HI$AD$`t!IL$ HH1H=~QXfDMmMtGI]L9tL9{`t能kHC`H5R H8xPMmMuHLMvM Ld$LD$I$HXHHLL H H L9\Ld$A@DAALLAEzxMc@M)L!D$6Mc@H:`Ir@H4$~)uHǃxfHHHL9THH8bHѐLt$MHHHJ@HHHB@HHP@HH5,3HHHH5< HHHxHHHHHxtHǃxHHt*HHt muH $HXH9H@9HtqH0HtHHt Hz@HPHtHHHt Hz@H@HtH8HtHz@=HtdH`tHHt Hx@HtHHHt Hx@yHptH8Ht Hx@!HE1@t0{Lt*L8MI|$@uE1ff.@M$M ff.AG$L9L9L9L9tQL9tHL9t?L98t6L9Ht-L90t$L9PtL9@ff.Iw@HtNL9`tEL9pt AG|Eu Dփ@uIv@,Ld$]Au+f1ҾpHy$H(HL[]A\A]A^A_<`HH@xHHHJ@HHHB@HHB@HHDHxHHB@L9`L9pL9L9L9I?Iw@HAG$HNI9L9AGx$pHz@HHu(I}Hz@HHu(I}Hz@vHhHu(I}QH W$H9P`Hu(I}]HpH@@HV$H9P`vHu(I}&HH@@PHV$H9P`Hu(I}H`H@@H dV$H9J`HJ(HH@H @V$H9J`kHJ(HH@XH V$H9J`$HH@LMHHt Hy@HHt Hy@HHt Hy@HHt Hy@kH@@HZMHB(HbkHB(Bf%fB&AWAVAUATUSH8Lv(Ht$A~@HGANHHHx9MsINXIM H $Ht H~@A~LEMII8HT$HfHHM$Ml$@HMHL$M9DLd$ qfDHHHIHP`H@XHB0HD$(@HHLLHPXHD$IM9HHH<$LLPPHD$ H=oqH=pH=pH=p5HD$H@`HP`H@XHB0HD$(nH=q1 E1H8L[]A\A]A^A_H=oIIxHBXHR`HB0HD$(I8IHHt Hx@Ht Hz@I0HtxHHtlIHtNHx@tG@%uAH@`Ht8LJ`Mt/H@0H+BXHq HxH$I+y0H@PPI0fB(f%f=IPHttHHthIHHtJHx@tC@%u=H@`Ht4LJ`Mt+H@0H+BXHq HxH$I+y0H@PPIPDB(f%f=VI@HttHHthI8HtJHx@tC@%u=H@`Ht4LJ`Mt+H@0H+BXHq HxH$I+y0H@PPI@DB(f%f=I`HtrHHtfIHtJHx@tC@%u=H@`Ht4LJ`Mt+H@0H+BXHqHxH$I+y0H@PPI`DB(fIpHttHHthI8HtLHx@tE@%u?H@`Ht6LJ`Mt-H@0H+BXHqHxH$I+y0H@PPIpB(fPIHttHHthIHHtLHx@tE@%u?H@`Ht6LJ`Mt-H@0H+BXHqHxH$I+y0H@PPIB(fIHsHx@hH@`AHHX8Mf.IIHBXHR`HB0HD$(|@IHP`H@XHB0HD$([A]LH/V7EfIH@@HD$(AHD$(HD$H@@HD$(DHV`H O$H9fAHHHz81MtIT$`I|$XHz0HPPI1HHCHPPI1HHCHPP@HB`IHJHH8Xf.IH@`IHHH8 fIHD$P8I1HHCHP8I1HHCHP8 f.HHt$H6/HHt$HHHt$H̺HHt$H<HHt$HlHHt$HDgH H=> ff.@AWAVAUATIUSHH~(HhHt H<uL-? E111LuHtӀxhuHD$Ls(A~@ID$LxAFHA9GuqHD$E1IPALLH߃PjjH t:Ht$HߋFhIN% FhA4fD1H[]A\A]A^A_ff.@tƒ Јff.z  Ȉ  ȈzttFk@tlNl׃ tzk ǃ Fkzk ǃ Fkzk ǃ FkBl ȃ FmNlzm ǃ ЈFmH~H7Ƃ@u+Bkt%Hz@tUSHHZPHtzh tH[]ÐH8HPHtHHAHAHL$AHu`HL$H]XAHE`HX0HDHAVHHAUMATIULSHF&t`LwPHtcLHMtZID$ LEHMIt$PLPXC)tbHLH=g1AVSAQLMAH []A\A]A^fLHuI1LHphIf.AVL1H=gSAXZ[]A\A]A^AWIAVAUATMAUSHxHHt$(HD$HHD$ LHP1H$H$1LMMLL$AMDD$DHBoLZ(HD$`)D$PHD$(HL$PHT$@LLD$0HxPL\$@车MLD$0IGE1H9\$5HD$`IGEH$HPLHHHs`HKXHN0HJ0HJ8Mt=DIHI$BEuHt$(LH~PHA$HH9l$H$IIHPLLj HZMt&|$E1HD$ H9\$PY|$LZ(toHB)D$PHD$`MAC<MtHH9l$qHx[]A\A]A^A_H$HPLEH|$HO`HGXHB0HA0HB8II$@HD$ H|$(MLLM$HHD$0HD$0IK(HL$@MHAXHI`IC0HA0IGH9\$"ACllEuoHD$ 3DHL$PH;K@yHHRHHHT$HH|$(LD$8HHL\$0HPA$H$HT$8L\$0HP`HR0H;S@HD$(IwLD$8L\$0HHxPA$f.H$E1HPL DH8H$HHT$HHLD$8L\$0RL\$0LD$8u&HD$(HH=EdHH HpP1QXLD$8L\$0HHT$HHL$PHPHIGHIFH=6 H1H=6 HH=6 HH=6 p<AV1AUATUSHo(H}@IHwPHVHxR;UHL8HPhMtHHtjLG`L -D$M9t)MHM@MGMHM.MAHwLLGHLFMIpAH1)H@HE1@)@DžH8H`1ff.ff.ff.ff.ff.HHHHTHHBxH9rDE1HHDMh[]A\A]A^fDf)@H8hDHHMLILDIf.HpLI9tHHH@L)J@I9uHDE11HHDhtLHHq)@HHH :@L-I@MLLDE1HHDYD<tvAU1ATUSHH(Ho(}@uNHWPHRHxR;UHu7)A1pHPHD$H8u$H([]A\A]@f.AI1HH1HH?LIu@IYIHHCPMH H@HxHHy tbE1HuaDHCPH@H0LIBx - t'C<wHC(HBD@t @$Lm(A}@!AD$A;EH)tuAtHYHHK(A$IItVH{XtO t7Eu1HC`Ht(fHpHV`Ht B$bHHuAHG@KkHHH[]A\A]nDH{P]clHCPH[]A\A]ÐCkubH{PԐ\LJu LJHHHHEPH@DHHHptHC`LC`H11Iff.ff.ff.ff.ff.fDIHHHHPH@H)HHHPHHHtILE H1H=K\HSHAPX@1fHHpoCi{rHDHmxEm@u}t H=n, HE(UlHC(HE0HC0Cl ЈClUk Ј clH tKClƒʀSlHt:ȁ1҈ClHCPHHHHHCPHCPDIIfD~uGt <t rfH~P H~ff.<@tZATUHSHLg(HHm}C<t4SkuSu<tJ?@1[]A\1DCiu;Eu I$(t*t CktHtHHct?Ȁ[]A\f.f.AWAVAUATUSHD$<zH|LZ(A{@mHGHxDPE;SHDT$hOI9L\$H:F) 0F$% vxHM|H|$(DJHHphHD$Ht$PHPD$mAE11HXHt$ AHHD$HcIHExH@IHD$I9@ H|$(Ll$ME1Lt$@H|$Hl$8DMIIMAq|$h)% AAL:9$< A*HXL 1IAeHLP ƒAHA nHV6$I9^HtEiu uEu }|$h)A$IH{PHLL$XHT$8DT$0LD$(&HHLD$(DT$0LL$XtIH}@tB|$h)^ AtMmu{ u CtkEl ueEkt_|$h)`AJ|$mI88HH$RPAQHL$XILHŻH fHD$II9M7IAxEWHHD$A9)HD$ H,EPwff.Hm(EPvHUhX w<%1E11HE@HZEit }FH}HO׃@9R|$h)AE1A+ABWAH3$AI9HD$(E@|$(HĈ[]A\A]A^A_fHL$LMlDT$(HE1jHt$`E11H|$ IXZMDT$(5Lt$@Hl$8L1DHL$H9t|$HHL9QLD$h`D$h;fDH|$LL$0DT$(|DT$(LL$0IAA< |$h)AA+trHD$HH H9HPG|$h),HD$HH1HII8H$PRAQI1 fL/$E@L 2$5LHHLL$XDT$0LD$(L$`fLD$(DT$0LL$XL$`HwoH}@d}leEk <t }EIH{PHLL$XHT$8DT$0LD$(肐LD$(DT$0HLL$XaElf.|$h)]At E1A+A}Lt5~ElHEi}HE@HEluE<i`<1ff.HUHE1D LE(11Lt$@Hl$8LUl|$h)tdAt E1A+A}LLHHLD$(oLD$(D1A*|HXL[HE@HHDT$( DT$(@E1@D$h菹D$h}Ek <}k}0H.$E1I9tHCPH@HxHHx AA 1E1H~UllLt$@Hl$8LM) LD$(t$(@vH.$E1I9DHHDT$0LD$(vLD$(DT$0UkE0 }|$h)AA+uE1HAyIPE9A I y1HHL$oD\$nLL$`DT$XLD$0aLD$0DT$XLL$`D\$nL$oc|$(^A!a@Hy,$E1I9=L$HM,$H9E(E`ABA11|$h)t;AA+}pE<?11 H:H= iE1G<AWAVIAUATUSHL~(A@tH1[]A\A]A^A_HVPAOHHRLxA9MuAH<1IHHt7}h t1Emu+H}P~$H}H~HEPHDžf.Eh%= =ALH}PLH}@AǃuElH}@IHIM8H~@uAHF@EkMHr@Hu#AmR@tHHU(HE0I@HHB@Aucu^AIHB@H9]PuHHHB@6Mff.@elHDžHEPHDžH}HHE@DAH DIAMIMZ@ZxMI)LD MMJ@HEHA uAHV@HBHUHHF@IH}@SA҉HP@IAHB@A})ILJxfDftHEPEHHEjHU`LD&ZYH}PI8t!HtIHH@RHHHP@H[]A\A]A^A_fHEHH]`HtAUlEk <ALtE<@HE`fDHLEeAY1JDHUEl}HLL$ ,L$ f}VN fElA9}A>@BfDHV@HUHHHV@ wAIu)Eiut }AH}@IAHP@WLHL$ ZL$ tlHE`H}`Hu7ff.ff.ff.fHHt(HPH+PHH@HPHtHAH]`H}>Au%Ekx t <VfL-s $AHCHID$@H& HCt&Au HP`HtB$ff.fHLMu LfDH}@m$}HL'*GH}@H]`H'ufAHP@HU(MF H=EH1HHUAPXHV@HUPMMQ@L HHF@I@IA@IAHP@IABxHB@Le`HufDI$Ht.HCH5M L$ H@`H8ܩHڋL$ HtIH]`HAHF@IHp@A҉HHP@eEiuA}}lHM` HH`HCHHHtHBHAmt:@t9HMHLM(HU0HF@@@tljHF@MtHHF@E<,H"$H9E(E`ALtEljH}@ZfH}@ElHL'HM` HHmHCHHHuHHUPHu(HU0HF@HLL$ I'L$ (`H}`ff.HHH?H H#GhH9uu HH5H=p 1H~@t~t DHHt$H<$H<$Ht$uu%tHG(HF@HvpHYHDHtBH-Hv &fD1ff.fAWAVAUATUSHHL$LD$hHHHHM;8IHHELLHhHHLH VMHD$ H[耣HD$ HLl$III\IHݐI$HHHx-H{I|t%IEHxHH z uHIIL9uLLl$8HHD$8H$HHHEHxx)HH|$LHD$HD$8LL|$hHD$(I?fHD$PMLT$@I0I>IFHtI^Ef AAVH\$HDAFu1E1M;~(}HHD$fHD$H<HEHL$HLHcHD$MMHL$ 1Iþ-H<HH?HHMTIzL9HHpH9M;YLIM9~(vI0I>"H|$PHD$hH8t)H0If.IvI~I0?I~uL耨HD$PHĘ[]A\A]A^A_fI9sH]MIALL$0HW8HD$@ЄFLL$0Ht$8ILL$`Hoo@FFDHL$HHN H HF(fHnFD$(H^HHL$0HpHHt$X^Ht$XH|$(HHD$0ףHD$(HT$0LL$`HIyt IQ:uq@pltH@HD$PHD$80HD$(IAbH5 HHH@0HD$H|$HL.HD$!+0@xHHfPIQHt$pLL$XHt$0HD$(c|$p0Ht$0LL$Xu H>0tHLL$`Ht$XWHt$XH|$(HHD$0ТHD$(HT$0LL$`HHrLHD$~HD$PH5 HH HD$PE1iHD$P[USHӍ@Hwt1HH=)=|H[]úH|$H|$HHGHEH EH[]DHH?xl?H?HOPHIHxHO(y@FyH9~:H^MUHxA#pHp9Hu@HHW(z@HOPrHHIHx9qHR~t>HMkHHI PHHP9lfDHoMHHI PHPu@3DMtCHHI P9HP‰DA?v W1@ft8H1҉HfDHHx^1H Ήσ@H ;PHH@f.HDDʃAHDAu:AH 9HP@1I pf. H 9HP@@uKS@@HtMt+PHI PH HPD fDHiH p1@IHH Hpu:Ht HH1JHH=T HH=< HvMH=$ DAWIAVAUATUSHhHGPH4$H@D$LxIHx uD$Ip`HHj IE1MMt4IGxuAtIMHtff.Mp(An@AFHA9BIW 1t W WHGM H LLD$LT$TLT$LD$H h@fMIO GWIp`HkD$ND$(w@|$M@|$0ND$OD$8H5 H  HDE1HL$@D$L% tL% Ht Et IM LL$PHLHB 1QXLL$P|$ t IM LL$ HLH, 1QXLL$ MtIA…tHL!HHE…1HL'OD$OD$NIX`D$8D$(@|$ML$0HD$@H  H  HDIMNXD$MEIdžE|$H $IHQHAAdžHI@HI@@ H $HQ0OMNXMbEIdžEiD$H$I1HIdžII~@PAD$MAPHAPTAPxH@pAIAIHHAz)uB|ILLLT$(B|LD$ LL$ LL$LD$ LT$(u,IP LL$(H=2LT$ LD$RXLL$(LT$ LD$ALD$ LT$LL$(2HLT$LD$ t*ALL$(u A@EA@@)IHt @|Et A AA4A@)If%f=IX`HH-2MCD@tIT$ HH1RXHHuD$E1w MHT~iLLD$LT$LD$LT$H X@dD$ND$(D$OD$8+AH5* LLD$LT$ LT$LD$HHuD$C|H@D$NT$OE1ɉH IM LL$XHHDD$PH|$@1QXLL$XDD$P)E1E1o@`EM~XMIdžEH $IHQHHHI@I@ L$`H $E1HQ tH =O W6GD$HL=X HD$@D$OD$NL$MD$0D$8D$(TL=1 HIP LT$H=61LD$RXLT$LD$bIEj8LD$ LT$xLL$0c/>LT$LD$ D$(wLL$0k|AH5 DLD$8LLT$ LL$LL$LT$ HLD$8H_D$(>"|$MC|IHV1ۀ|$I8=WZD$OIX`D$NE1L$MуD$8L$0D$(HD$@T$OL$NO 11iH_# LϺ ALD$HLT$L $L $LT$HLD$ID$IHAE|M0tGLϺ AHLD$LT$L $貣L $LT$HLD$ID$AE|MPI8tFHLϺ ALD$LT$L $aL $LT$HLD$HD$C|I@I@PH@HxHHx A@@H* LϺ ALD$HLT$L $L $LT$HLD$II8M`t?LϺ AHLD$LT$L $蠢L $LT$HLD$IMpIH H޺ ALLD$L$XL$LD$HH+IW7GD$D$OIX`L$MуD$NL$0D$8D$(HD$@E1E1LLLT$(LD$ LL$LLL$LD$ LT$(I{MSMH`MLLM(ff.ff.fHHiH{uCD@uID$PHptI^XA4$IIMH$@|$H@8IHBHDD$M1E1IBAHBIB(AHB IH$D$H@(IP LT$H1LD$H=K)RXLT$LD$LH5D LD$(LT$ LL$KLL$LT$ HLD$(IcHP@IHI(H _IP LL$(1H=)LT$ LD$RXILL$(LT$ LD$IH LL$H=)1L$QXLL$LT$L$1|$N|$OMfMtE1EIP LL$0H=(1LD$RXLL$0LT$ LD$supHD$@L= E1IP LL$H=C)1L$RXLL$LT$L$IH LL$H=(1L$QXLL$LT$L$;HD$@L=q E1MNXM>EIdžEELDLD$H5 LT$L $nL $LT$HLD$Hk|IH LL$H=(1L$QXLL$LT$L$QE1IP LT$H=(1L$RXLT$L$IH LL$H=y(1L$QXLL$LT$L$?IP LL$H=E'1L$RXLL$LT$L$EHrtH=` !HZtbH=H fHHuXth?vj?vL?v.w1fDHHt#PtuHHHu@HxuHHHHHtuHWPHRHxHHz tHHHHG(x@tDHWPHHHRHx9JuHÐATUSHH^(HtH[]A\@HuHGLxA$Al$8EщуEtTH5$ H A$ HEϜHI$HR >P|HXfH5 H|$菜HA$H5 H|$ P|HH A$ HEDHt_I$HR >wNA$H|$P|HtBH5b Ht!I$HR >wP|HH1[]A\DH5* ěfAVIAUATUS|$0t H~PtjHO(AFkI1Ht3ff.HxtNlHxHHu݄u H~P/AEfDHH~@FmE1H~PHO(AFkHGPHH@HxHH DRRDEHH}@HLHEEt ~lIH~HHFPHHP@EIHVHLH@EtEHkHLP@[]A\A]A^fHO(E1FkA@H~P~HrqH=M 聨FkE5EHLE@LLFPEHZ@DHP@AExME@EIH~H~LFmbfHFH3E1AH~HQHApHFHHAxHFPIHF(HO H=I#HvH1QXW1HHLE@LB@ f~lxIE&fIHt1fDHPHHuHAOLtHL@@Ht{HL@@fDD7AADDH~@Fl<HHIHpEKME@AUx#MU@AExDSWHt1:t[@HH5 H蕃¸tHH5 {[@UHSLHuGD@t#H1HtE E H[]f.AUATUSHHLf(uNHGH5 HպALxH AHEؕHtsIHR >wcP|HEI$HtfiH߀flHF8t3I$Ht H@8@hH[]A\A]f.H1[]A\A]MtAxt fDI@(SHHxgt CC[ff.@IIIGDB=HJ8H0HGAWAVAUATUSHxHHp HB 1HHHH@M$M9H,vLLHff.@HHL9HHtJmH0Vk uVwHV(Lj`MttOLrXLv0HQEH4vAL| ff.2LrHLHrL9uHHHL9b[L]LA\LA]A^A_:+f.LLL"+fUH5E SHH{HtNHHH5o Hߋx E(PHtHE,HH[]m]DH5 HHufUHSHH5 HHtI1Ҿ`H$0uH1[]1Ҿ`H0t1Ҿ`H/tH5 H蛎Ht.1Ҿ`H/tHH1Ҿ`[]/fDH[]ff.HH-`HHjSHHcHfH5 H|HHC[fDH5 H@0HCfH5 ԍH@@HCf.H5* 贍H@0HCf.H5 蔍H@@HCf.1[@1DATUHSHLf(t AT$Lu []A\A$uHH[]A\f.f.AVAUIATIUHSHGHHHxDH{AHEID$EtZPxHEID$H{PpH{HECECEID$E=t4=wE[]A\A]A^Pp-EfDMtID$LE1ff.AUATIUHSHHHGoH~HxDID$H{AfE8ID$H{fE:ID$H{HE(ID$EPxHEID$H{ PpH{(HEID$PpH{0HE ID$H{4HE0ID$H{6EELID$EPH[]A\A]PpGAUATIUHSHHoDoDHrHEA|$8AHEA|$:HsHEI|$(HsHEI|$HsHEHs I|$HEHs(HE1HEI|$0Hs0HEA|$1HH[]A\A]fI|$ V@A|$HA|$LHEHs<ICA|$PHs>HCHEHH[]A\A]ff.fATIUHSHEHӋ>HHEA|$HsHEI|$HsHEI|$HsHEI|$HsHEI|$ Hs HEA|$(Hs(HEA|$,Hs,HEI|$0Hs0HEI|$8Hs8[]HA\fATIUHSHGHHPpH{HEID$PpHEHE[]A\ATIUHSHGHHPpH{HEID$PpH{HEID$PxHE[]A\ATIUHSHEHH>HHEI|$Hs[]HA\fATIUHSHEHH>HHEI|$HsHEI|$Hs[]HA\fDATIUHSHGHHPpH{HEID$PpHE[]A\ATIUHSHEHH>HHEI|$Hs[]HA\fAUIATIUHSHHID$H~HID$H}HsID$H}HsECEC}=wMt/ID$LID$HsHH[]A\A]HicH= AUATIUHSHHHGHHxDH}ID$AH}CID$PpH}HCID$EPxHCID$H}PpH} HCID$Pp{HC ujID$H}(H},C(ID$H}0C,ID$PpH}8HC0ID$PpfHC8C@H[]A\A]PptLؼHtHSH9s*AD$J@tLH=1AL$J@XfH)H;C Iǐ:AWAVIAUATUSHxF$vxI~pIIHHhpHIGHU8HxHD$0HHHHu AEzLbHEHIHbE AL 0E1AGDBtMF0AFx{1H\$8HD$LD$LL$LT$ Ht$HLLD$Å$HEHHHt%IH9xtHLL$,J L$,HEHH Ht$LHuLIHHEHt$PHt$PHL$XHD$`HD$HD$ IE;fxIFpHT$J,HELLD$HI9tnH=#I9x %IxA@1*FHx[]A\A]A^A_@HhX#H\$8fDH\$8ItHD$0LLu뎐AL .HG_H= fDAWAVAUATUSHHHHHHLuX11Ht1HH[]A\A]A^A_Hھ@HзH@uѸCFuȋED=vIB,uLv IHH EP=v IB(uLHHIHwELtaME1K4LHII@ ELA9rAIHu 1H+HLLL9E1AWIAVAUATUSHhHGHt$0HxT$HlHHHHh1HHL$ J1HHD$(H|$(uSHD$ HP Hw.HEpHdHD$@1E1E1HD$8`fHHHHT$(H1E1E1jLt$8LHt$0LOHD$HZYHf`IHLIHHt0HS HL$(HD$HH9LH=1貢L\$HD$@HD$HL$(HD$8MAHa\HL` HI9L\$HLMHL$If.AoAF0AoGM&AF@I$HIGH IFAwIIFPH#IF AD$DBt IF H@0I)FAGAWttANff.f< wHcHDAN@|$tANI$HHID$LPXfAFXHEhHtLLHD$I I`II9L\$HMHM)LMHHHEpHtL\$LދT$(LL\$HD$0HtSM~BHf.HHLXI`H1HHHL$0HNHDHD$0HD$0HH|$@rHD$ HL$8H9HHtIHHhH[]A\A]A^A_fDANAN@ANAN~fDAF AFffDANSAF@AN3I$HLLaHIF AD$DvfDHt$ 1LLO2fHD$HHHT$^LFD$^HD$fAFXD _ANRfLfIF Hkff.H#P@ANfDANHy#IF AD$DuIWIV@H5 Ly{HtIF AD$DDD HX1HL$ EtH t Ht" t HtH1LFIHHD$(:H pkHs1L譭u{LLs ]L\$Ht L9;LL\$L\$HHD$@HIt/LL IML\$LI9HL$oL\$H{ HD$@WH-H|$0tzHD$@1HD$8a H5v L~HoMH|$@"oHD$ HL$8H9HHtIHt HEHnHD$@1HD$8HEp1E1HnH|$0ōL\$豍ff.AWAVAUMATIUSHHhHGHt$(D$Hr1HL$LL$ HxDt$3׫tHh1[]A\A]A^A_fHM|$ sHt L9=L=HtHLHHD$5LL$I9yID$8AǃEMIcDE1H|$LT$@D$4LL$8LT$HL$p@H#HD$PIUIEA2HEPHHT$LHЄI}HD$AHL$I IDH9$AHCLPpI|$HD$@HCPpHD$PHD$HIHD$@CDBt|$3u Ht$(H+F0I IE5Ht$ D$4JTL9%HT$(DH1H=%蛋fDHEHHLL$8LVlHT$LHLD$HXfDHEHHHEPH@H= LL$:LL$-LL$8LkHh[]A\A]A^A_ފfAWAVAUATUSH(LnhMtH([]A\A]A^A_DHGIHIщLxHF$tNxtLpXLhpM%M^8MMIE8H$HIE 1H4$H$LH9mHI;VtnI9UthH=f LL$HD$L\$ L\$HD$LL$7H~@ Hp8IHH@ 1H$HIHHH;LLL$L\$IHML\$LL$@t=HLHLUILLL$(L\$HD$ ^_L\$LT$LL$tsMt=HLLHUHHL$LMLL$ LT$PZYLT$LL$t1L$LHLAL$tLSh诈H(1[]A\A]A^A_fDH$E1IF 1IHIMttIE8H$H%H9uHHI9V3DMtIu8HwIE 1HH$H9aHH$E1DH9@H$HI9V0AUATIUHSHHHGHHxDH{HEID$AH{HEID$PpH{HEID$EtXPxH{HEID$PxHE ID$H{ PpH{(HE(ID$PpH{0HE0ID$PpHE8H[]A\A]fDPpH{HEID$Ppff.AUE1ATIUHSHHHGHx@uLn I<$HHEI|$HsHEI|$HsHEHsLHEI|$(Hs HEI|$0Hs(HEI|$HsHEI|$8Hs0HH[]A\A]DtyAUBATAUIHSIHIHHIfDH@L9t7LHHH8LYH8tHH[]A\A]HH1[]A\A]1AWAVIAUATIUHSHLL$AoIGXLI_`)$AoGHD$ )$AoG )$AoG0)$AoG@)$IGPf$H$HD$@HHD$H|$L@AGDt5HIHfDLLLI@L8LL9uI1ۋDHL$(u8?Ht$HLHt$8LIHD$(HH9 HD$ HT$LLHo)$o@Dx)$o@ )$o@0HH )$o@@HL$)$H@HHDŽ$HD$1H|$L@AZHD$E1HD$8H&LYIH*HHAg$HT$8LLHHD$8HDH[]A\A]A^A_fAWH@AVAUATUSHH8Ll$`L7H@|$`t&1H8[]A\A]A^A_|$aEuӀ|$bLù|$cFuŀ|$fu|$duD$e<<uHCDHEuHAĄtHLHHE8ffH} ?fQDELEDHSLxIHz @(AM U:9t&A@t9tAD9uufJfuKD@}DtKDAu1HxAE Lu I?8ELMPUDHH@`EP-H} ?"HADDAwAE9DHXOu#C{HCxKD}H@AEU9KDH4HHHD$H~ULLHADL4LT$HT$IGXLIX;Ht$H:IHHHHHD$t$fo$Hfo$@fo$@ fo$@0fo$ @@1t+ff.HHHPHIXH4HL9uHD$}LALxPH$HD$wqf.AW I t3t/At(IG1I+GIu HtcDff.AIPD;uLpH|$Hھ@ H@Ht$LH"AG(L$9r/AU >HL@H-IG@+L$A9O,3r1LHӜ_L$Hھ@LL|$^H@8H$LHqELu&H$JULЁH }Pu $UP}D3=333pHLH9u 1HH|$Hھ@訝H@HE 1HHp@ܛcHXBIE`Ht HЄ$HuH>HHu@tHmHt2HB ur,tHRHt@% t΁M$ HHuDHD$HtHH$I$I$HHH9LHHIF`HHx`mHu1H˚WHLx`EDHD$ D$E1HD$"H)I;OD$EDAI@A9H|$Hھ8H8Ht$LHIW8HHH!H9t IG8CJ@tIG(HtHL$H9sDd$HH=1KJ@HEP;DsHL$HH|EPCJ@HH=a1貉KJ@|$H} }PHHR`HHHH H@H9H>uH~(LD$H=JD$ UDAWAVAUI1ATULSHHHT$ L|$PHL$r@LLD$Յ|$Pt(6z1HH[]A\A]A^A_|$QEuр|$RLuʀ|$SFuÀ|$Vu|$TuD$U<<uHCHuH$LH&$8xD$EgLHL)HHD$@HHMJ H$L)L4LLAąHD$@ILl$HHD$0HD$J 0IHD$8IIIHD$(I@I8M9LLH!I<$uIT$ID$(HH9D$s HD$Ld$(H|$8uMD$8ID$Iv|$IHH!H!Hu|$1HL$HLd$8HH)HL$0nfDAkxQD (fDHCxqDH|$LH$Ht$HHt?$$HT$(HHB(Ht$HH;B0yH|$HL$ !Dd$HL$ HIBHH\$LLt$8HIH@H9H;uHSHs(HCHL9taMLH9\$(HDt$HL$0H)1IHLH<AׅtH|$@AXLX,wGPD0H)M1fDH|$@H\$WHL$HH9L$foD$PAEfoD$`AEfoD$pAE fo$AE0IHAWDt6HL$HHfHQ(HtHqH9s4II)I9r)H@H9uIGHHyAGDeHH=x1Y~KJ@AW1AVAUATUHSHH2t1H[]A\A]A^A_f.Ld$@Hھ@L諏H@titao|$@u|$AEu߀|$BLu؀|$CFuр|$Fuʀ|$DuD$E<!<uHC@uH$LH_$8C$4HHHIpIHL$1HIL,I8MII@I8M9Hھ8L蟎H8LLHI<$uIT$(HtIt$IL$8HH1LH褌nH0t\HCxf.f.f.f.DwH6HcHfH? Rtdt8w?H Ptdt'QtdH HEfH; TtdHǷ HEfH H H H H H H HHHr8Hy8H9rLH9rKHr0Hy0H9r5H9r9y$r$AAu)Hz@uzEttBHy@t;Et;tHr@tNHy@H9rϸH9r΋+fHy@HutHr@@EuHy@u1HG0LW8EuHLEIp=H9r8LN0LF(M9MBDO$AAtHw@H)I9r I)I9‰H)H>tI9Hw@I9rff.fAVAAUA)IATDAUH4HSDGHtdHH@ItD9s9AVH<1ff.ff.H HLHHH9uDp@utH80[]A\A]A^DHt[H1L HH@H9tCH?uHO8LOHL!H9rHO(LL9rMt H)ILOHGL)HMtI6jHHf.ATUSH/HHUHCH9t)HtHH9r[]A\Ðu[]A\fE8s81u߃@uHt$K<19MI$A|$$IGHH[]A\A]A^A_fDIHt H@(HuDIAD$ H ;G`rH[]A\A]A^A_fHHHtH@(A@,fDH I#H9HLHPXHtIpXHt F HPpHjIppH]F SDH#HI9HHPpHfDHHL9Y\@IHHHHH, u DL)HPH<G<wfH(G<vHG8LH$$M$H$HI$HI@HUIt$@xfDnH=ݫ _`HAVIAUAATIUHHS;HHpHtcEHHK LH HH5c HE1@H1HH Hx;A$[]A\A]A^[1]A\A]A^DAWAVIAUEATAUHSHHGH>HT$Lxt H= o_PLbHHHEEtuIHEuSP KfHS8H HC HHCHC0CH[]A\A]A^A_PDHT$AHLtuH1[]A\A]A^A_ff.AWAVAUATUSHDrEHGH:IHHILxHH$t GE@I$H4$1H HxM$1E(HU@HCHCHS U|C(>JHHk@HHCHHH!ЋSHC0M$CHC8ʉȃff.ftHKuHKtHKtHKHs8tHK Hs8t"HKH}@uf.HIEHS`Kxs0@t @ ]H{pHspEƹVHLH=1kAEH[]A\A]A^A_N$ xdx_AHU0HLHT$dUHT$H@uIL9LL$IMI9T$OLBHL$LLHHD$LL)LH ID$I~LHD$`ID$Iv LH)HD$PLHt$hH9ID$I~H\$PHL$HD$XHL\ L#\$K4HHt$pL)HHD$xHt HD$H9~LH)LH9lAD$H< <H HDŽ$L$(AH$HH$H} H$HH$Hg H$HgH$HU H$HH$H? H$HH$H% H$HH$H H$HOH$ H؞ H$(HH$8HD$hHDŽ$HDŽ$ HDŽ$HDŽ$HDŽ$HDŽ$HDŽ$0HD$ HT$8L\$@Hl$(DLd$0MĐIT$H9rI4$H|$ ,IuHl$(HT$8L\$@Ld$0JDHH#D$IHD$I9JfHH[]A\A]A^A_HHuH|$hH5Ɲ L\$(HT$ /HT$ L\$(uH|$`{HrL_HT$XHt$pHI$H{HT$ Hp HSH/I$HT$ Hp HD$PL\ L#\$fD1.fH|$hH5 L\$(HT$ .HT$ L\$(Ht$PL6tRHD$PHT$XL\ L#\$fLcLd$0Hl$(Ht$PKILĐuff.l$OfDHtKHG HtJOuH #1H9tH9H`t6tHxXtf.1҉@(f%f-f‰f.AUATUSHHHL`XHDDD9AvkfIĉHtUJ;KuMHzH3{HǿuHtIV@HP@IHAV|P|ff.fATIUHSHGHHH{fEID$H{fEID$H{fEID$H{fEID$H{ HEID$H{HEID$HE[]A\ff.ATIUHSHEH>HHEA|$HsHEA|$HsHEA|$HsHEI|$HsHEI|$Hs HEI|$Hs[]HA\ATIUHSHGHHH{HEID$HE[]A\f.ATIUHSHEHH>HHEI|$Hs[]HA\fATIUHSHGHHH{fEID$H{fEID$H{HEID$H{ HEID$HE[]A\ÐATIUHSHEH>HHEA|$HsHEI|$HsHEI|$HsHEI|$Hs []HA\ff.@ATIUHSHGHHH{HEID$H{fEID$H{fE ID$H{ HEID$HE[]A\ÐATIUHSHEHH>HHEA|$HsHEA|$ HsHEI|$HsHEI|$Hs []HA\ff.HSHHH@f[HHHH@9f.tA1ff.ff.H‰%1u%fD1Dt!@HufUHSHHH HHHHHSHxJ ? ʈ CH<uH[]fH裸HtNHH HH H@HH=ݒ _GSf.H1[]S H2HHtvHSHxJ ? ʈ CH<u[ÐHHt.HH HH H@H1[ff.USHHHGt-H HuH HH H[]DAWAVAUUSHHHXXHt";DsRL,IEHtCHXHHtHH[]A]A^A_fLp Mu7H@ HXHHH[]A]A^A_H1H[]A]A^A_fDHp1H|$eH|$tIE몐LH|$SH|$HItJ\0;u IELHH=_1Tff.AUAATUSHHHPXH;Ds}IH,HEHHt{HM Htb|u[DH9sHEHH[]A\A]@I$UpP9tfL tLsHM IDLH=1TH1[]A\A]Et=_v)L/HtHM nL* A9uf1HH=rSff.t H AWMAVAUATUHSHXLGLL$(AxHMHHHIHHL0Mt5LNXDLB(9s I9<GHRXHuHhH9LEMxLT$HD$0HD$8IHDhLHdL1HD$@IHwHbtGE1Ht$@H|$0蕸HXL[]A\A]A^A_HH9LIM@E1HT$0Ht$@HH|$(tHD$HLT$MtIz txHHH>HD$HIB1HJ4au(E1HT$8Ht$HHH$蛹u3E1Ht$HH|$8辷fHDŽ$HD$ MHH$IH\$(HD$I9L*f.HBLH HHEHD$H9IHHL$HHHT$P0HT$HL$uH1H+D$(HIH=1J 1PH|$ <#FBE19fDIHHHH;u(;IHHD$ DMAHH=o AA|fSHBH˅u\B<t)HuHx [Ht8uH[fBH;DsHJXrPHu v(HuH|[ff.HHff.fHHHtHDMt#BuHF@tCH~t<fDHF@uHB @% tA@% tH@`H@0H)FI@XHFf.HGxu6AWAVIAUATUSH(HFxt+H([]A\A]A^A_f.HHIH LJXLxXyxu Hr0Hp0AxH8H8RPI@LLLL$&LL$M]MTIIFDLx5IA@AID;DIHtCt=_vH{ t͋K,tC(uIMaLDDAcff.HHt(HK@HtHz@HtH`Ht H9@HD9uĽD;Bt&DI9I$HtCuHBH3CHuHC0H9B0uHC8H9B8uHC H9B uHCH9BuHC(H9B(tHLLLT$LL$DD$NDD$LL$LT$IXIB3fLHLLT$LL$DD$DD$LL$ILT$ҋDu1Dff.f9tI9rf.{_vDD$1HLLL$LLT$A(IDD$LL$LT$IDff.AWAVAUATUHSHHHDŽ$HDŽ$HDŽ$HDŽ$HDŽ$HDŽ$ u L MtH[]A\A]A^A_ÐHGIHLD$HL$LxLt$kYIt$1HH$ZPIt$(H$H$HH$IHIHMd$(pI9I)MHLL$HD$PHD$HLpPH$HL$XHD$`HD$(HD$8HD$0HDŽ$HD$@HD$ LL$xL|$hMMIHl$pHŐHLHAH$HH HHPHH bHcHHD$XH9$L|$hE1E1E1H4$1HiYH$H$D!$YH$H$DLLL|$H=6pu8HD$@ D$u$H$HD$@H$ff.@MM9HD$ H D$@L|$hHl$pLL$x%H|$0H|$8 H|$(ALl$(HT$0E1LHLL$L-H1HHFXLH蓮HD$hHNd(LL$LT$A<$%H|$ HD$@ =&n=cATHT$ LE1HLL$LL$HH#1HLL$W G,$H$HL%YI9AHCLL$LL$H$P@LL$HD$ 1E1E1H|$HD$XHd$ HD$HT$8LE1HHLL$0LL$0HH[1HLL$0VLL$0?Ht$H$HLL$8H$H$HHD$0 Hd$ HH衧LD$0LL$8HHD$HD$HL$Dt$HHl$8MLHHHLP0HD$ HMHHD$0BH|$@1HHLL$pAH|$@[HD$(H9CLL$pGHD$XH HHD$0H9rHH|$`MHl$8Dt$HLHd$ HD$7LE1HHHLL$0_LL$0HH1HLL$8nUHt$H蹫1H|$HLL$8HD$0HT$sH|$PHHL$h1AH HL$(HH(HL$HHL$ HHHL$0HHL$HHHLH$HL|$HHH$HHH$HD$(fDH$HD$8~fDH$HD$0ffDH$HD$ NfDH=otPw.H=ot^H=o*H$HD$`H=oH$HD$PfH$HD$HfDHD$@ D$H$HD$@HD$HHx ALl$@LE1HLT$0LLL$HHj1H!SXL$HھLTH6HCLP@H$HD$HCP@H$HD$pHCP@HL$LL$HLLT$0HHHy HHD$@HT$@LE1HLT$LL$0@HH1HYRHT$Ht$HIHtvLL$0LT$1H H9HBHH|$H9ITHtH|$pH9H9uHHH=d1AA$LT$LL$E1E1?AHMDt$3L|$H$P(LL$HD$ 22кH9HL$pLE1HLT$xH)HL$LL$HD$0HHL$@HHHt<1H Qt,HD$0t$HCLP@u,HھLRHtE1XHHD$@/LL$HL$E1HHD$@LT$xLL$HLT$YHHt1HvPuLT$Ht$0HLLT$xIHu1LT$xL$H$HL$LD$Ht$ 1HHD$H9tmIDHtH|$pHH)#IHTHH!H9HHCHW@HGHtHtHG fDt׺H9HOHLHH!H9HHCff.HH HH`HHt:B@x&f.HxH9tHuHDHH@Hu1HfDSHPHtHH@@@HXH[ÐAWAVAUATUHSHHxHGHxHH H|$L(MD$;HtNMFɃ Ȁ~Fy4Ht/HHt#HHЄuHU H=TRXfMHL M HAD L$;MAt$@tCIEHDD$IIt$HnHDD$H8HI foHLD@@@Db$AOHVHHHRH9uH|$HD$H1E1E15PHHHH8HH@QtdH zlHxH|$HHP(ƒ HMP8HH|$HH0P8HD$HL MQID$`@$BPHCHjIT$`H|$HH@Ptd@@HPHHD$HPHH#IT$`H|$HH@Ttd@@HPHHD$HHH LlHAL M At$$D8E@fAt$$EFXH.HUH|$H8HH@Std@@L`HH@HD$HH|$HD$HHH= 1DD$H-[ H[ D|$H1AMmE9LAE%uH1Lt$AFL$H1H HHCHxHpHH 1#AHT$@@t$LL\$Dd$(L|$Hu1LL\$(L\$IHHu`DLPH$M1ɺM IyhIrPI0HHt H 6I1ɺI 1LIBP (H$LH诜H迖AOIf. fD0Dm|tIH Hx莗AMd$MI$}t DAutIH HxDHEXHtC0DmdtIH HxAHEpHXE|r@EdEEeE1H|$ tIH DhdHx襖IDHH RdPPA5DDLD`LxIHPLxI$HB5IHL`XIH @dI@IH9ILff.MIcIcMdL,HIcU|t-IMpH IIUpfnx fnHJ@fbfB(AEtFIHHt3H=]#HE`H9t H9Hs*HAE(AEw$vgw_HDHcH=oe=o=ov%H5Q LHtHAE(MvMH|$ | Ƅ$HDŽ$foHD$IHDžHDžHIGHDžLxAGDBAGH<DLEXDM<3L D`L\$1LILMMEJtbIE@HtYA}nH8H5] H $LL$H|$(LL$H $uH|$(G.<.&fDCA9x I0Ht RPM;,9Ah9AdHD$L1LHHH I Iff.HL9MlAE t IE@HEJPA}(uAF$Ix AE(ID`A t AI.H5ws HzHuAIHGHx H{HMvIM@AE,M@`=oEH5PO L.H(I.H5xd H HH5*] IH@H|H$I|$[qHHI6H$H@BD%LHHIMI$AH@8 P(t@IMvx AE(M:ZDIuXH4˅u,Ifnfnx HN@fbfF(TfDIMpfnH IIUXfnx HJ@fbfB(fDAF$H5M HM LHEH=oXU(fff€IU@LL1H=PHHHt$ HHV%H@`f1AMu#5ff.AL$xHHtwII$ID$yuAD$&t5IL$HTHAHt+HHAL$xAHDAAAD$xIHH AODMAGDC|fIDx H shHxAIH0t H=K `LEup1H5K HD`PIH0IH Hx躍EEeAIH DphHxu$}a~HuDDLH=ZK 1DIHShx IIDv'H0H/EPI,Ix U(H H@hIIH @h1LL\$H|$ L\$A*ID$`H HHD$XHHD$X1xt=HH5O HHL$@]HL$@At <.H@IFAGEIIF0HHH!FIHl$ML\$(H Lp`HLJPL-xMHH,$Hl$ L\$MDHQtdC@t$HtH!H(C@HI@HI$HRtduHt^LLM9LL1fA$AD$AD$ AD$0DC8tHC0ID$0C@tC8(HCHL$1L@0HC0HNM9sIH HHtDT$L!ff.fDH H@HH>uy@tGHTHB$LJ0%=t HB@1IIM9sHAHL9X0sHQH1u2ff.ff.H9qLMJ0M9rM9sIz@t9QHLHD$HQ0HIT$Hy8HII|$ HH)ID$(IL$ID$0HN(HNH)H9HGIL$(C8u ID$8ID$AOHC80ID$(HKHHI|$#ff.ff.@HtHHytHA HH)ID$(HcAYID$0OIH HHbfHPXH,$L\$Hl$L$M|$`t%Ht$H|$HH L\$L\$AGEHD$ H!HHH$H$IH|$`1Ht$HDff.@HHzuB8 9 H9rA$I$$DƄ$E1HD$H$L<$@HD$HJ,HD$P]<oEDm@HfI~HDe8IC0EDHD$hHE AEH|$HHCE) HEHC I  IHJ HHC8HD$XH9Ƅ$MA1HD$(ff.DtxAufH~HHCIHfHnflC(Iq HD$HH@8t3@{IHBH=G#H=G#L1H5#I E1M@t*@DH=G#LAHDHH1D;}@rH5sG# 9H=bG#MAD;m@H;HAHRtdAEtHtzfDLGLIAIAEuLI HufHC(LCLIL)„uHHC(HS0DE@EZfDIdžIF@AF$DBALJLSM9Lz MM)ML9[(Ht|$@f.HHHz H{0HAtLBLKM9M)L;C(H]HBLCI9L)H9@HH=EHH= L$1H522 LktfDH|$HF8HHC IMHE(HC8HD$XH9EI MIDHHLDHPHHHBH9uHC IHE(HC8HD$XH9 MH$@HD$<Dm@E#HD$(MI)@fDH$pDAGHE(H$HC8HD$XH9EƄ$HD$(M1UDEHCL9EofHnfInC flfL9{ CLJLSM9rM)ML9K0[ff.HWzMHCfDHE(AHC8HD$XH9ZIt$MI)EAAHEHH5. LL$pLT$(H8L\$@DD$)D$0|"LT$(Ƅ$1HD$(DD$foD$0L\$@MLL$pfDL\$LT$(LL$0$t HD$hHC8$H$HC8tD$fIHvT$`Ht$PLL$0LT$(H<$L\$L\$LT$(LL$0AH;HD$XH9IH$@ID|$@LJLSM9M)HGLJ L9K0jUDL$H;. 1LrkDL$1H5- L9B@H$pDE1DH$pDuE1HU(HD$XHS8H9Ƅ$E1ff.fHLHfA$uHAHD9r1%ff.ff.fHD9HLHHyt1H|$HCHL)пHILD1IHT$(HM<MttA @1HED$(MHD$(YfH|$hH$HC8HD$XH9 Ƅ$EH}H11ff.fDH׋@|9BHD9rH$HH9 H9T$hH $AODLH)H$HSHHPEL)HSE8HS @IHN HHC8HD$XH9F$IIH4$1LL$0H= aLT$(L\$HD$ H+HP H=M@ 1R`H;LL$0LT$(L\$HCIH$@I"EAIHJ HHC8HD$XH9B$IHD$ H@ Ƅ$H$HC8HD$XH9IH$@IHD$XH9 Ƅ$H}HA$L)HC6DBAƄ$HS8cIHD$(IH1ff.fH H@9BHurHHLMIHIH Lhh`EHt$(DL$4#HHff.fH>Gt7Hu0ˋu'HG L9tL;tH@`@ I|fHH9u1D$$E1IAIL9I4$HjuL螅uӃ$$$IH$@IB$IIMAIH$@IIL1IU@LH1LH=1\Rl$D$$IHt:ff.@HHauC I|H[HuՋD$LA4IH~KH$HE H\$(1Ll$(Dt$@AJIE1H%D$DAHH<$H,ljHE(IL9tDImHĉuHLuANDAL݃ A>Ll$(Dt$(Dt$@IHt/HHauE IDH8HmHuH4$DLCgH$HIGMAHxA@lDmL$HHHD$@JJ<+BHIIID$AJ Aǀ HIaHL$HHD$`V HD$@L$HHxI2HL$HHD$pZ HD$pIIL0MtNAu HLL$IHI] L$fHnIEHflAEAE0IHD$`f1E1H@fH@@H@ HD$@HHtL$LL$DI \$0LD$xL$BD\$P\$hHHD$`L|$L`(HD$XF%Mt IW0HuICH|$HT$H-Lt$(Lt$HHHp AuL A@u>Au3Au%AuD%҃ ~$MHD$@H@xH L$HI0ЋL$H‹D$0HHp ~$t#HD$@D%AwIAWJH|$(AD$HHEM4$I(I|$H<$At$I|$H|$XAT$AL$Il$H9#HHT$PDhuD HpH$1dH$HHPE1 LpuHHtHJy5Hp D%D$0HV`HLvXD$htLr0MIG8HD$(H--#H9H|$HHT$HHT$H= HHp M8D$0HD$11@DHGhfDD$0A=3AOLCD?HyHcHHD$HH HhHD$H| HD$HH HdHD$HH0HHPH$D HNHD$(nH{*#H9A@+H=} L$H|$D$`H|$L$9^L\$L\$EH-uD$0u1111AHDŽ$HDŽ$D11LL\$xL\$HHL|D$DAPH<$HljHC(D$`$HZHhIH$@IIH$Ƅ$A@IHBHH2H|$HT$HHT$HHH|H|$HT$HH\Hp ~H$HFLLHL1HHHHHT$(M<H$H@HD$01ɺHHIE1$HT$h$LLGCDƄ$HT$X1Au$Au Aŀu DMv11wD$%L }ЃA =EA@A%D$(PT$(HHH=0RHpH2 HHD1/H|$`{H$^KLHt$(LKHt$(HcICH$IC(H$TLD$xL$IL|$H$1L$E1^eHl$@L1A?HHIp HH|$pPH IDHLHLP8AEIL9MH|$`HLIpHtH$LD$bLD$I@H&#H9A@>HD$ 11AH5P- L\$Hx(0PL\$HH@<v<H\$XH|$P1ҋC|$?t1HH[]A\A]A^A_fDIAGFIGH]XDLxH L4HL@PL9Ld$MM HL9H+H}uLU@Mt`EtX tSILT$H5j$ HH$3LT$uH$@<. }0IHH AGDBuAGH1҃<LHH蛩IL9LILd$MH HxL$|_IH Hx\H4$1ɺHH7IHIJ HLH9NHHH!HHE ELEHH HHBPDHL$HYHlj@I$HtLЄH3H~Ht5Ln Hv1LHLLHxHL9HH9H3AGFuI6H Hx[H3mD1QbAGHШAGIuH=` HH[]A\A]A^A_fDIB@HE IHEHHHDHUHLLLT$LT$AB(0<ulAGFueH$xdu[HLT$(轣LHpHD$ 8HH.zH4$HT$ HyfHHL$ HL$LT$(H $IH4$1LT$H Hx=VLT$EMIsXHt*H$1LL\$ LT$]gLT$L\$ IspHt#H$LLT$,gLT$IB@HE IHEHIǂIH HxtAHHt41LqILH Hp[OLA$`vB|`(H@HuHD$8H@`HD$ EYH|$ DHHHHT$Hff.H@H9Hx tƄ$HT$ 1HH(HtfDH=RtduHHHP@D9NH@@HHuHD$ ADD$(Ld$0IL$@Iff.fH8Hp(Hx0LHLBH9HHCM M9scHZ(Hj0H9ILCO, M9sHLp Lz LI9s8MM9s0M9M)M~LLHj0HZ(Hf.H@L9cDD$(Ld$0L$@DMHrLfDH@HtHu H@HtHz uHz0uHr(Ht@%tHx@HtLLJM9rLLH9rt$Hp0HHrsfDHx@LHHfHb(HRHuQDHY`HLT$H<H|$H{ uH{0uHHHIHE1fDMXIwRHRHHz`HtO(@LLIqIAtIAIRtd@AuIuMXIM@IADtMIqEYAt6DIiLcL9QMq MM)IL9k(:HIIubIy u[LC0MtRAtMYHkL9I)L;[(Ht)IqLKI9L)L9ff.H{ r$;w$o LB8L;G8a LJ0L;O0S Lw@L9r@E LwHL9rH7 |9z|+ M~ UIw8M)I+w0I9 I9H@D9s[HH@EYAIiLkL9L)MMq LH9k0H$H\$ H$DŽ$$HT$@HHPƄ$$H؃E1HD$p@HT$hD$0L$@$ ff.HD$HH@H9 L;MtHD$LM LkLLc 1D$ MIa@AE$ttIQtdt?IIAE(@u$@HIDI}`\$ ff.@MmMDL$0DD$LLHLxOuIuIxuIHSH9rHK(Iu@H9rH)H)H9rAE%n@uIYI}@ND$M!IE8I93I}H5X c6fD"fDd$ IID$HHD$`Ht$`H|$*IH+ oH@@8fH~‰AM8H7HtH}`t!HC IE$ AE8 AE8HCHHt$8H{(N7HD$h(H%MILLHLDT$DDT$HHD$hDHt$ t$ AQMIHH1_H(f.HHI1HPH "PjAPE1jH8fLImff.fUHSHHGHxHH<thHH HQHHtHQHH[]fHHt1fHHHuHuHh&HHH DH[]fDAWAVIAUIATIULSHHGIHtkM$IuuI $H5p HHL$8huHL$At.<.t*ID-I9G IHHLHLkH[]A\A]A^A_DHILLLH[]A\A]A^A_fD1豂@1H[]A\A]A^A_1LH=H蜜1fD1LH=Ht1fDHHE\)'H=b @HHOHHH9H9UHSHHHVBfBt0< 8<vXx<wNH ;WHcH< <v(x<wH oWHcHHSHR H1H= 菛H1[]þHpHtHCH[]þܾ HpHSHtzH1ωtHsHSHH)HHDHS뤾 빾 벾ff.<@\*fD<@m5 T! @ff.USHHGH<ujHHt^H HtHxHt&HHHxHxHpHiHmlHDžHH[]R@f.AWAVIAUIATIUHSHxHH HuHH5 LH1kHeHHXHHH$HxHHHHLHLHH) H)։HHHMzHHt=Lp@LHL@|vHtcHx[]A\A]A^A_Hx1[]A\A]A^A_uct${TfTjS$LHzHtHS@HP@HHS|P|i@$ۉTT@AWAVMAUIATAUDSHHcHHCH~ L|$@PXIcI} HHH HCP@HcI} H-G HHH PHCP@HHHHH PtHtLp@IM(HLHH[]LA\A]A^A_ff.AWfIAVAUMATIH UHSDH(H)D$Lt$H L$ LH D@1cHE HxIGP@HIH PHE Hx IGPXH5? LHIH sHtIL`@LLsHcHM(HtVLh@H@|H([]A\A]A^A_HcL$ LHM(LH5 uLLH5 fH([]A\A]A^A_AUATUHSHHxHFH LHH#H~Lf HGLP@I|$HHH PHEP@I|$H"HEP@I|$IHEPXH"f~HH QAtHH PH5 H1fHZaHHp^HHH*`HH:vIHHCHID$@HC(H AD$|HI$qHHx[]A\A]DH # H uH"HxHH[]A\A]7H HN(HVHxH5 []A\A]fHx1[]A\A]AT$$HH`vHtIT$@HP@I$HAT$|P|AfDHHVIHHPHtH@HV o)D$oB)D$oB L$)D$oB0)D$oB@)D$oBP)D$oB`)D$oBp)D$oHH )D$:ut$2r~JHDHH(H5 LHGHT$Hv *HIHH L$DEut$2DJEuJJp돉JzATIUH1SHH)`LHH)HHEHsHHtHHHaH[H]A\ff.HFH H ~H_NATHcUHSHH@H5 H@H=L w*H-H HDHcHf.H=  H=  H= ^H=  H= uRH>uLH~H5 Uu8HK(HSH5 @H0HtЄuHHH`[]A\A]A^fDHPHwLgI$xHwH5DHcH@H=IGIS< wZH=ELIFF H=+FuH>uH~H5 TxHK(HSH5D H`H[]A\A]A^DH9BH>8H~H5 xT HK(HSH5 H>H~H52 >THK(HSH5 ifH~H5 THK(HSH5l 5fDH~H5 SzHK(HSH5G fDZH~H5 SBHK(HSH5 fD"H~H5V bS HK(HSH5 fDH~H5 *SHK(HSH5h UfDH~H5 RHK(HSH5F fDzH~H5 RbHK(HSH5S fDBH~H5v R*HK(HSH5 fD H~H5> JRHK(HSH5 ufDH~H5 RHK(HSH5 =fDH~H5 QHK(HSH5 fDbH~H5 QJHK(HSH5 fDH>&H~H5Z fQHK(HSH5 f.H>H~H5 &QHK(HSH5 Qf.H>H~H5 PHK(HSH5 f.H>fH~H5 PNHK(HSH5 f.H>&H~H5Z fPHK(HSH5^ f.H>H~H5 &PHK(HSH5+ Qf.H>H~H5 OHK(HSH5 f.H>fH~H5 ONHK(HSH5 f.H>&H~H5Z fOHK(HSH5 f.H>H~H5 &OHK(HSH5` Qf.H>H~H5ڿ NHK(HSH51 f.H>fH~H5 NNHK(HSH5 f.H>&H~H5Z fNHK(HSH5ӿ f.H>H~H5 &NHK(HSH5 Qf.H>H~H5ھ MHK(HSH5t f.H;fH{H5 MNHK(HSH5 f.H;&H{H5Z fMHK(HSH5 f.H;H{H5 &MHK(HSH52 Qf.H;H{H5ڽ LHK(HSH5 f.H;fH{H5 LNHK(HSH5 f.H;&H{H5Z fLHK(HSH5C f.H;H{H5 &LHK(HSH5 Qf.H;H{H5ڼ KHK(HSH5 f.H;fH{H5 KNHK(HSH5 f.H;&H{H5Z fKHK(HSH5 H(Ht ЄH`HH[]A\A]A^HN(HVH5X PH~H~H5j GH{ AT$@H S HD$( HL$ H P PHL$0H R HL$@H W HD$8 HD$H HL$PHD$X(HHKH;L( HK HUHyHR(H5 HIH1MHC Hx HEP@ALGHL`LHDHLHH\HkHSAM H9HP@HS(@|HOH5 \I1M.HCHID$@HC(I$}PHAD$|@H=H>H~H5 IHK(HSH5= EfDH>H~H52 HHK(HSH5% fH>fH~H5 HNHK(HSH5O f.H>&H~H5Z fHHK(HSH5( f.H>H~H5 &HHK(HSH5 Qf.H>H~H5ڸ GHK(HSH5R f.HN(HVH5 @HN(HVH5V R@H{ HHHH PHEP@HHH R@H5 HH1JH'EHL`L(HDHHHHZIHHCH{ H HID$@HC(AD$|H I$HEP@kH HHUHPAT$$HHZHt+IT$@HP@I$HAT$|P|fD1HT HH=1#xR@H5 HIH1IHC HxHEP@ADHH=1w@HATUHSHFHwKH95HcHfHFH=tH=u#HC HxHEP@HHH PHH[]A\f.HFH=hH=VH=HuHL HF HpxFPHID$HL HC HID$hHFH=H= H=9AAX[DHFH=8RH=trH=HAhdHHA4^_[1]A\1DAA|XLuHALhdHL HF HpTPHID$HL HC HpdID$fDH= HL HF HPHID$HL HC HfID$@H=HA0hXhHHAZYH=pcAPA  01@HAhXHL HF HpXPHID$HL HC HphID$fDAA AWIAVIAUATIUSHH(DD$ LL$HH?HhHHL$`Ic7HߍQHcHT HHT$CIHIcHT$HHLHAIFLc|$`IFHsLIFHsHc|$ H Mt9HHLHA@t"H)ff.@HCH+uHt$HLLAD$`tT$`)HCuH(L[]A\A]A^A_11ff.@AWAVIAUMATIUHSHHHGLxM@Mt)M1IȹAHtHĘ[]A\A]A^A_fIHx tsfH|$(LIHD$ )$)D$H1AQEIȹHT$A^_HtHh[]A\A]A^A_DHT$IHx oLL$1*LHHHDt$8)$oCfDl$$)$oC H$X)$oC0)$oC@)$oCP)$oC`)$oCp)$o)$o)$o)$(o)$8o)$HhPH ALHFZYoLL$1LHHD$`oCC@Dt$0D$poC fDl$$$oC0$$hxfDHIH APAHHIH APA+FHHHGIH Hxx tH HAPAYH@HIH { APA5HHIH A APAHHIH ! APAHHIH  APAHHIH APAHHIH APAHHIH APAuHHIH APAUHHIH a APA5HHIH A APA HHIH ! APA HHIH  APA HHIH APA HHIH APA HHIH APAuHHIH APAUHHIH a APA5HHIH A APAHHIH ! APAHHIH  APAHHIH APAHHIH APAHHIH APAuHHIH APAUHHIH a APA 5HHIH A APA HHIH ! APA HHIH  APA HHIH APAHHIH APAHHIH APAuHHIH APAUHHIH a APA5HHIH A APAHHIH ! APA HHIH  APA HHIH APA HHIH APA HHIH APAuHHIH APA UHHIH a APA 5HHIH A APA HHIH ! APA HHIH a APA HHIH A APAHAWEAVMAUIATIH5 UHHSHH3aH5- H3H5ţ H3H5 Hl3TH5R HU3H5H H>3H5> H'3H54 H3H5* H2H5! H2H5 H2H5 H2H5 H2H5 H2FH5 Ho2H5 HX2H5 HA2H5 H*2H5 H2H5ݣ H1H5ڣ H1H5ӣ H1H5ͣ H1H5ȣ H1H5 H1H5 Hr1H5 H[1H5 HD1H5 H-1H5 H1H5 H0H5 H0cH5H H0H5" H0H5w H0dH5t H0<H5q Hu0H5i H^0SH5c HG0^H5[ H006H5T H0H5K H0H5 H/zH5/ H/JH5# H/H5 H/H5 H/H5 Hx/H5 Ha/1u7MVA AWjHMAAWH J LLHZYH[]A\A]A^A_HMAAWH  HMA+FAWH ɟ HEH Hxx uH HMAAWkDHMAAWHMAAWHMAAWs@HMAAW[@HMA AWC@HMAAW+@HMAAW@HMAAW@HMAAW@HMA AWHMA AWHMA AWHMA AWHMAAW{HMAAWgHMAAWSHMAAW?HMAAW+HMAAWHMAAWMPAAWMPAAWMPAAWMPAAWMSA AWMASA AWA AQMAWMARA AWxMRAAWgMQAAWVMVAAWEMWAAW4MAPAAW"MPAAWMPA AWMPA AWMWA AWMAPA AWA AQMAWMARA H ؞ AWPMASAH AW7MSAAWwMPA AWfMPA AWUfDHIH : APAELIFHHBHvAVAUIATIUHSH1luyHLsuqHtH9rsLCIHtSHHH=nH9u8AMLHLHtL.[]A\A]A^DL.[1]A\A]A^DMff.HHwSH HHcHfH=RtdDw*H=PtdfH=Qtd:H  %fDH=TtdH %HH [%HH  [g%H  Ht$H<$K%H<$Ht$GH<uxH0unHGxudHxHvQfDHH x [$HH [$H һ Ht$H<$$ug1H[DHH 5 [$H $@HGH HxHDH T$@Ht$H<$HN8HV(HvH[aHGxuH@DHHKHHff.fSHWzu,HXDu[HHcHp`H}([ÿJK1ff.fAUIATUSHHHHC`LcXIL`0C&t F<tHL[]A\A]C(f%f=uHHIMHHm<HUH9t C%tHL)HBXHR`HB0IEfHHHHB(f%f=tHfHH <ff.fB(IHf<t<tB'u1HDLP HHHQf.SHLHI@HZ@HL$HxHH@ H)(B1HL$HH[HH)AWAVAUATUSHXHGHxIGDBtZH~UHtKH8IMLHL4IHt"LI| A9G(t E1HXL[]A\A]A^A_AG tuH5 L4HD$HtIFLLLHxHHP@I8HiIG 1M|$hHH$HH@IILl$(LH8HD$HHHD$ @ HHD$ @HD$IHHx"IMltH|$  uIHD$Ht$HIH9$uL)HIHL|$(HD$0I\$hH$HD$(E1MGfDA@pltI0IIAGHHH $@ HQHHH9L$fH$Ht$H<$HHtH3HL$HoAEoBIM AEAU׃DH+A0IE(IEH M}AUHpHHt$ !Ht$ LHHD$$HT$IH{+0AGxHt$(LfAHSI9\|$00Ht$(uff.fH>0tHHt$ *!Ht$ LHHD$#HT$I H5 H HEfkHHI fDSHHPu=HWHHxJHH Hx0< HHD$I$DEuAHĘD[]A\A]A^A_LpgMMtLl$ LMHD$ff.HIHtH}`uI9E,uHHLu8PI9t @I9uH{H#Ht$HGHEH9HH} H)H9HL$(蕱HL$(HIHu8HHD$(H|$ HL$0߲HL$0HHD$HtCHuH|$ 1HL$0aHL$0u%Hu HT$ LHL$0,cH;E HL$0LHL$(#HL$(E1HJHD$THE 1HHHD$(HH;KLHL$(l#BHL$(HL$(E1fBHL$(\@H} HT$ |$>DH|$(D$\tL1Ht$pDt$XLt$@Hl$HILd$`ILl$PIHt$0HL$hZHQ"HED|$?H$HT$0HLHESHADŽtH}AD"|$?HD$@IH IL9d$(HH|$XLP9HT$0LPpHD$pAEDBt HT$PH+B0HEHD$H|$xHSH|$xHD$ЋT$\H|$xH9HD$sEHT$PLLIH=1O@H]"D$?HEP`nHT$HDHEHH Ld$`HL$hLl$PLHL$(!HL$(H|$HHHE12fHz`AWAVAUATUSHLr@MLi@MMIHIt#w6H= HL$H$1?HL$H$IHIHAx A(B,tuI$;DseHRXHHH@@HH@`HHHA,ƃ3f1DH=LH1M:?1H[]A\A]A^A_fLHH=3M?fLHH=1lM>릾6H=m H $=H $@fAWE1AVAUATUSHHnHGIIHxHD$86 _HxHD$H$AD$DBtIE0H$I$AHE,ff.ff.fH[HH}uI9E,uHMHHL}8MHD$HHPL9t @L9Hu 1HIHD$IHE L9HLD\$ HL$(!D\$ HHEHHKHHL$(HHD$`H\$8E1HLl$HIHD$(HD$ D\$G#PxHD$ILI I9IE1Ht^LLL$XI9t&Ht$XLLL$0zuLL$0D$(Lͅ~IHtIL$H9HtLLHc|$(H$IEHD$`IEH0HD$fHnHD$AEHt$ LD$hHHPL9H%Ph DEHĈD[]A\A]A^A_H9DHD$H=HL1tJ;E1fHLH=1LJ;HLH=31,J;HT$8LLH=f J;HD$11D$GfHnDH\$8D\$GLl$H+HT$8LL1H=|I%;D$GLL$0D$(HfDHLH=;1tI:DHT$8LLH=^II:D$G1HLH=1I:H@ ff.Ht{SHG)taHH9pHtHHHtHHuIHc)HǃHǀHǀ[f.H[H7H=u 9AWAVAUAATIUHSH1H(2H{@tH([]A\A]A^A_@LHA*IHHoHC@oCHCKBoC HHƃB oC0B0oC@DJHBB@HSIHƒ}AHDHHDEtHS8AA tHS8AADHDED΀DEQS JuC tH Au A<$.HC1AN(LIfHnflAF0Hs *yHC0HHH!ױ>^AF| H5 LFu"IHuAf.DL5) HEHxHHt HЄ{/A~$@HpDHH`HE11H8u Hx0AH@9tHx t9r AyHAHAH.H@H9HHuHSIAuڃtՃ{HCLIL9rLS LL)H9A(rL[LIHHA EL1L)IIF8M9sL[ LI0M9bׁ!@HT$ HL$LHLL$LD$D$fUDƀt@jI~@_L$ SH|$Gt!%t@9D$"LHmLHH=¿%DD1H([]A\A]A^A_E1HHEAHAHt[AHHAVD  AHDD&DADAHSRAAAH AA H5' L H5 L H5 L H5 L H5 Ll a H5 LP EH5ք L4 t/H5 L tH5 LIXA LDA @;@A{L[LIfH{ HT$LHHD$Ht$HKHHS LC0Ht$LzfL[LIM9LL)Mt E1HuLS IL9Q0HC1H+AIA@AHLHhAF(Ш0EJA|$zL HHIHH.It$HxIUBHL#jfM9LL)5LHH=/j@1E1LH=?HO@Af(1%AWAVAUATUSH(H;DHHAHL9uXLIGXN$A$tnAwP5IHyHCLxAD$wTH HcHfH1H=ܻ?E1H(D[]A\A]A^A_f.L ԓ =o=o=oAL$,Ht Ao$AoD$AoD$ AoD$0AoD$@ff.LLHAHHHB0HpXAo$HAoD$@AoD$ @ AoD$0@0AoD$@@@JfHA뛐HE1@HIH   A E1I9D$8RDDAt$(D9`HRXH‹@ ID$CDBtA|$AD$(H;x At$,D9HRXH‹@ AŃAHLD$LL$HADŽyAD$,;DhHJXHLP@MSA|$MLL$LD$ICXISXL\$HLT$LʉLLL$HALL$LT$L\$Ai Aƃ=o=o A;LL$LʉLHALL$AAT$i=v=w AD$ CLHH=ι1<=f.H| 9IHIL$8E1vH9 At$,I|$ HH9pHHH=l1;AHHH0HtD9hPH@XHu`HE1nHHxAo$H0hPAAoD$@AoD$ @ AoD$0@0AoD$@HHX@@H0HHRXJH Hx 9RIHIL$8E1vH9At$,I|$ HH9@x Ao$HrhHBXBhAoD$BxAoD$ AoD$0AoD$@J4CDKDBpt@HH0Ht9h(H@XHuDu9}HJXHff.fDH9sHyu9i(u9GA9HIHAf.HI|$@AHHrXA9oPXx HH<9o(D| LNA9h(t,DDAA&ff.AHE9HpXHH49n(uHL$DD$LL$D9DH\AHHED9x LL$DD$HL$D9| uHpXAo$LHHAoD$@AoD$ @ AoD$0@0AoD$@@@JHA9fDLʉLHHAńAD$(D9HrXHHx| )HFHtff.HH9Hy uA(AD$(D=oE1I|$8Hq Ao$AoD$AoD$ AoD$0(AoD$@8AT$,Ht Ao$HAoD$XAoD$ hAoD$0xAoD$@LLH AńLHZHfDHyAD$,AAHHt E18AD$(-A"E1AD$HLD$LL$}LL$LD$ALɉAHH=1LL$5LL$HƋ@(AD$(| HBXHAo$HXXAoD$hAoD$ xAoD$0AoD$@LJ4KDHA(Ao$H¸AoD$BAoD$ B AoD$0B0AoD$@B@JHHH=14AHLH AńO9HBXHH9Hyu9i(uICpISpPHLT$LD$HT$HT$LD$HLT$HǹLHHAzxHRXIt$8IL$ J1HtH1HIHR 1AJ$IrhABxID$IHt A|$uAJ)KDHELLH1H=E-3H[AWAAVIAUATUSHxHHHtiH-ϰDHǀH[HtGH@tx(t;DHrXH HI@HH[HHuDD|$AMff.I;DsQHBXJ,(Ht}uHE HLH=İ12ID$I;DrfD|$HxD[]A\A]A^A_HH1HE11HI1fH}8umHu@H`H&HT$(LHD$Le L5HD$Ld$(ff.@IGILH|$(I9Gt[ID9sJLZXMEHAt6MP@MtMIHHH;U@ff.LL10jf.IHANA DALD$H Є trPLLD$HEHADL1H=A0@IHH|$txHt$HHHL~D$LT$E@@IHHt HE@H$ IT@LHE@u(LT$HL9IÃxL/LT$LT$HM,LML\$HD$,IshPLL$@LD$`ZYHL\$LT$tNHD$`…uRD$h<tuH5U IHt$fLH=.H|$( ALLT$HD$HtLT$IID$l;DtHQXqPH‹u^ff.@~t 1F`@AWAVAUATUHSHHhHHD$(Lh`MHH=p H@DHL=tp L5{p MdHD$@H$fH޿ I@M9^IMKHH/LH1IUHH4Hٺ LIUHH4Hٺ H=o IU HHw4I}8^H5o H߉1kHٺH=o IU(HH34Hٺ H=o jIU0HH 4IEHHƒHHHɃDFxH5po wH1⻃rIUH5To H1H5Ah H9 IHt @%'H :Hd DHٺH=ep }HLMH,$L=Up L- \ L5'w Md$0MML$(MD$LHAL$AT$MMD1ID$8HtHxtH޿ ID$8HhHt%@HULHHID1HmHuH޿ bMd$0MjH,$H u/Hh[]A\A]A^A_ tH HٺH=^o GHLMtL5Uo L%Z L-?ff.@IW(LHHID1Io0Ht=ff.@LM MLHHUDE MMD1{Hm(HuM8Mu@H=l HHT$(LHHD$(Ht$(L1H@1H&|tH  f.H<$HH5} 1H$LH=fHLd$(HRXH‹@(D$HELxIHDhHHPIG@M4L9HD$0L|$MH$Lt$If.H$LHAHT$0HH%wH HcHHow;HoweHHHoHH HcHHoHov]HHwPH HcHH H w3H !HcHL|$Ld$(LLHD$(IHHЀ8HH5j H1ff.@H=%j HHT$8HH.H޿ MHD$L)L9RHELxvHj H56j H1~Hj H5j H1doHj H5i H1GRHj H5i H1*5Hfj H5i H1 Hj H5i H1HZ H5i H1Hj H5ni H1HT H5Qi H1Hi H54i H1|Hi H5i H1_jH;s H5h H1BMHIV H5h H1%0Hi H5h H1HD$8…t$HHH)HI Hii H5th H1H7i H5Wh H1Hlr H5:h H1Har H5h H1epHi H5h H1HSHh H5g H1+6Hh H5g H1H[ H5g H1H H5g H1Hh H5og H1Hh H5Rg H1H H55g H1}HHh H5g H1`kH4h H5f H1C6Hh H5f H1&Hh H5f H1 Hg H5f H1Hg H5f H1Hg H5jf H1Hg H5Mf H1Hg H50f H1xH[i H5f H1[fH3i H5e H1>IHo H5e H1!,H i H5e H1H g Hg H5e H1HQ H5ve H1He H5Ye H1He H5HL$PHHHHL$L$LL)LHHt$H<$HHD$0ff.L,$IM9+LAL<$HI)LAH9rM/M9tH$LD$LL)HD$ ALD$HHD$(ID-HH)L9IrRH9rMHIT L9s@HH|$ I<v HD H=w!HL$LD$AHt$(LD$HL$H9rH|$0L|$ IL9*LLl$0HHL$LD$LHt$LHsHT$H|$LHL$L,$IL,$IM9H\$H{7HCH|$0%HĨ[]A\A]A^A_fDHt$06@t$(` t-&H=U Hp`Ht$HphHt$#H\$8HH1LH=OHG1HLH=31bL%L|$0HT$ LHL$LD$LHT$H|$LEHT$ LHuHL$thupL%[HL$LD$BmLD$HL$HHD$081I$HHt$H|$8L%WH.&H=S H@&H=S H7&H=S Hs%H=S H[%H=uS f.AWAVAUATIHUSHHSlHHMIHJ#Iff.DVtI4$IH H9uLH HH)HHHsL9It$H9HEAPHff.ff.fDHPR9HIH9rK|vL<LHkkIHJ<8LpHHH@@DFHHHH@D@ALNHHLIvfqL@L9sYH2H9tDVD9PuLXMCDHHjIHHE1HL[]A\A]A^A_HL)HHL9t!H=xQ }H5I)ID$HHHHL)H9u1HǻH LIEI}IEAEA0A{AWAVAUATUSHhHHExuLIExtE1HhD[]A\A]A^A_HHH@9BuH4$HH|$HH4$LAAAt=tHUHMHxHHL$ IL\$HHDJIUHxL9AHHrH9A0LHL$D$MA% t'L$HIHRH3QH уL$1H$I1HD$0HD$HhHD$8HHHD$(MHD$M2IR1IXff.ff.ff.ff.HHHHHI‹xA9HH9rE1E1IS1'fHHHHHC$%t"H[HtC$%t HU(HU(HU(H}(6H@AVAUATIUSHFHAD$lMl$<@LHHt2IM)I~[HHLLHIBD5L荣HKHS HHS(IL$@HHCXHCIT$@Hx!H9Hd[]A\A]A^fDHSXf.1@ƃ1DfSHHHtSH+kHt7fv@8HS`fHPHHSh@hHPPHǀ@l@X@xH[fH߾HT$QHT$HHu1ff.fUHSHHH~HtxH{(mH{0dH{8[H{@RH{HIH{P@H{X7H{`.H{hHtHHt(HH}hHH[HuH[]@UHSHHHHt?xH3H Ht HHHtKH~HH[]fAWAVAUMATIUHSHH8HGHx }H@HxHHt&H;MHLЃtH8[]A\A]A^A_@Eƒ < tgMA<$M2H I#EhHH9IH{1L;wHEHua1wf.HCH Mu/HCH E< XDHEHHsL`(I$I$HH9coEHHoEHH @H8[]A\A]A^A_f(H== HL$HCHL$_@H@ E@H{x1ɺLlKIHHP Lt$H59 1LVM}MuLIEILH{ItHD$WHiLLH,B8.HJT8HD$H+tt$@2-IE I@HH4I$HVI$HHHsH^@L@LICII9LH{HHD$VIHM)LHML>HT$KL>9rt$2AttAtftfAWAVAUATIUSH(LH$HL$MtXHLME1ff.AGu'AAWHHHt LtWII L9uH$11ALHHx(eHHQ1ɀvfH([]A\A]A^A_DH$HT$1LHH@`JHD$H\$HHHD$HP`H@XHB0HHHH(HQXHP0HHQ`HL$HB0H1rGltH@tHHHHG@ff.@Gl@u*SWHHJv'v2[f.Oku'utH8H޺Pck[@HS(B(t@1Ƀ1҃~9|>7HWHNH#H#H9r$H9rHWHNH9r1H9fDUHSHHHvHuHUH H9t H9H[]DSH@HtHHspuHCp[ff.SGH<v[f.HG(@&tP(ffuHHK0HHs(H(HC0fAWAVAUATIUSHHGHt$1LxHT$XIHX H5?R LD$LH5gR LHD$0IIMI@IH,Hx@!HIHHE1Aff.H HyuHA DG1Hp@HIDGHI1IHMtAt EAAfDMtsIy@tlIHMHGhLG`LL$0LDoHD$8Mt?1ff.f}uHU HB@HmHuH|$0LD$H9G@u L9sD@1HĈ[]A\A]A^A_@IHHGxDoLGpHD$8H@ӃHcHRL<(1ILHHPLD$HHD$@IHIx uIHD$0t$LHHLt$(LD$`Hl$pLL$Ld$ H\$xHt$hH HyuLq MIv@MHD$hIFX1I,4III9sH|$@HL$PLt$H\ILIHl$`LHH|$ LHD$(LHt$H|$PAFHD$IFML9rHL$PH HNHl$pLL$Ld$ H\$xLt$@LHLL$H gL诹LL$L1ff.HLH9s6tH9s+IHHHrH3qLHEIHqH2LL9uHLHD$H |H)4HD$HP(HD$HHtHL$0H;N`+H\$0Lt$@L$LHHLHD$IHL$HM6MA~uH|$@H1MN H)III@I1HIHt$IAXH9sLt$IHHfLMHsHD$8LLI9rLt$HM6M|HD$H|$@HD$\HD$XH\$0HHD$DME AHGH|$@ XMLMuff.H HtnyuHA DG1DoHp@HIHI1IHu(MtAtEuEAAf.ME uAEEELH=l1XH|$E1E1L1H5lHG P(`HL$@HHL1+ff.ff.HH(H9s9tHIH9V@|H\$0HLHu' ff.ff.@IHtLH軉D$>fx"HI#T$hHH9f%fv~fI IM9oH|$ H|$(ID$(HHD$H|$ ֳH|$(̳r)H=' HS(HD$H|$ 蚳H|$(萳HH[]A\A]A^A_ÿH q)H=' AWAVAUATUSHH$HL$HHHIDMd$Mt6I<$HʮuID$0H $HH[]A\A]A^A_fDHL= ' 聬Iff.L+LeAM9r(LHLuJ|5L tH[HuH1[]A\A]A^A_H|$Hk@HLc01҉HHL@AWAVAUATUSHH(H|$HL$HtPLf0HMu&OHtMd$(M.I|$ H9uH(H[]A\A]A^A_fHD$HH@PHHHvL%% @Hm8H\HE HPzuPHuHH`HtƺL٩uLm0D$L5% MuMm(MMe I92HLˬLLMpuI|$ 1HL$D$9~f.L=% LH)tUHD$0HHxP?HtrHt$fHn1E0fP@ VJfH VHE0ufH{ 1`HL$9|1LL$k19DHD$1@ $HvDH HB@tHJHLBL9szH@H9J@H@HHH;B(HJ8H+B0HHq@w#ff.H@(Hq@v1HHBL9sHH9ruJ@H@HHHHBL9BDHHHJy@THqHz /HtjHtgHfDH@(Hz H9uH{HJ$"H9>H9P`4@(f%f-f1HH$"H9tH9P`u@(f%f-ftff.@AWIAVAUMATIUHSHH8L6L $LIHH=wyAS##.!INL+ISD$s LI~LD$̩LD$HIMHpI9r HBH=v!1H8[]A\A]A^A_Ll$0HT$LHt$葩HT$Ht$Hր|$D0I7ID$HHLH8L$HLHL$pLLH5 H=I\tFDA0A~-A~:IFtIFI$xMLH|$(HLP$xLL$,AZA[HD$(HHyD$fDI~LHP<7>A~>A~:IFtIFI$xLHH|$(MLP$xLt$MZY;$xLHMIH|$0MLP$xN]A\HL$0H?tD$x1Et HD$(H?H}@L$HLHL$pLTID$HHLH2LH5 H=hZ e@A~<A~:IFtIFI$xMLH|$(HLP$xLt$MVAXAY $xLMMIH|$0LHP$x^_HL$0H?oHbf=A~=A~:IFtIFI$xMLH|$(HLP$xLt$MAXAYR$xLMMIH|$0LHP$xe^_HD$(H9D$0H!A~=A~:IFtIFI$xLHH|$(MLP$xLt$MZY$xMMLIH|$0HLP$xAZA[oHD$0H9D$(HHD$(HH<A~=A~:IFtIFI$xMLH|$(HLP$xLt$M3AXAY$xLMMIH|$0LHP$x^_$xHD$(HT$0H9H1HD$(D$xHHHEHDH>A~=A~:IFtIFI$xLHH|$(MLP$xLt$MHZY$xMMLIH|$0HLP$xAZA[$xHT$(HD$0H9&AF&D$A~:IN$xIMLH|$(HLP$xLt$MAXAY;$xLMMIH|$0LHP$xN^_$xHD$(Ht1H|$0D$Lc|$L;yH5' LT$荾T$A~:OIN$xIHLH|$(MLP$xLt$MZYh$xMMLIH|$0HLP$x{A]A^0HD$0H D$(HH9HH5 LT$ýT$t`A~:IN$xIHLH|$(MLP$xLL$]A\HD$(HH<<DM$D$LL5"AShsjClBd$ID$H@t$J tCCi I@(xLt/Ht$0I|$HHLAH=M$D |$AT$L΃u3CktT$H@@C 1<u HD$8@t*D$It |$H@@t{ LS@II@(xLLMH"I9t(I9C`u"AC(f%f-fff.H HCpI|$HD$@IHDxMMX IP Ht$0HHtHt$DIHI|$Ht$1LP8It$HI$1H@(LHLh8HCxIJLzMLH LD$H H } H@ ID$LH@P(H{@LHD$ID$H@P8HS@LD$ID$H|$ItIHID$H@P8ID$ HRHHBSk u {HH HJ H f  R@fT$P@H HKhH!H9ufL$PHS@I|$Ht$PHP\mHx[]A\A]A^A_@{ I$B<< CP3PHS(HBFH_({0uDLs(Iv`HI|$T$DD$褩DD$T$=D$LdI4$IFXHC0HD$0t/IN`HA0{hHD$0uHN(HhHt H+A0HD$0DC<T${<Ht$0HAM$T$A<DDChD$E1DH "I9|$UAF%J}t\}uVH}HptKfE1HT$P1H v ")D$PD$lD$\D$hZVEff.ID$HsILHT$0LDH{8H*+H= 蹳fIHt HЄukCmteI<$Ckt tVHLKuGI<$Gƒt5HW E1<LR0A1CkuHS(HsE11AfH{8HLShI!I9{DP ADˆD$H@t$J aH{@fC{m<DChE1Df.<`HG*H=K pHC(T$DD$LpLADD$T$D$LHC(HHD$0D#DM$AA -Cl#IV`It$L1H=rD蓲E1Hx[]A\A]A^A_H{8%Cl@@q @ȃ<T~fD΃@:H{@%T$L_D`RM$A΃@Ap@@к@DDIHt*@D@u$u*H= T$DD$謰T$DD$D$LL5"fDI $HS(A6B&uHHt BFHKXDChD$E1HD$0HL$8KiDˆL$IHL ${Huff.H@(xtSiH=sAtH=AHAHDIt$H@(H"HH9tHHS1zE1{ef D׉ǃ@T:T$HH "H9H9J`J(fff6D$H<mDHC8@Ck^H=@<t<H=BAHAHDHSIt$1uE1f.ȃ<OAp@@@E@uCk<*L{@LD$(L\$ LLT$T$T$LT$HL\$ LD$(xIt$1LH=@,E1Hz0Hs11HHHtQI4$JEfT$P#H1H=@跼-E1HC@A7AHC@IT$IDIH@4MID$LH@PXH{@LHD$ID$H@PhHS@LD$ID$H|$ItIHID$H@PhfT$P[ID$LH@P@H{@LHD$ID$H@PPHS@LD$ID$H|$ItIHID$H@PPH}*H=3 XtDM$AHM})H= ,H}G+H= @H;w(sHHHGHt^HG8H+w0HPJwff.H@(PJvwH@(H"H9tH9P`tJ1HpH T$ dHtT$ uH"H9tH9P`t"1HDP(fff€tP(fff€tff.AVIE11AUI1ATUHSHHH~(L+Ht@HD$HEE1MLHHLxHD$PA$Pjj:H tdHl$HtrHH#EhMHHHUhƒt EiHHߺA$HH[]A\A]A^ÐH1[H]A\A]A^fDH= xfAVAUATUSLf(I$t[]A\A]A^HGHH5 HLxH Eu8DA HEHIHR >P|H5 DHI$ԙHtoIHR >w_P|I$AuZIXHP@A8HH P HHHU(HHfD[1]A\A]A^DDH5 H>HtIHR >wɉP|I$ofHF(x@t1xLt @AVAUATUSH`HC(HhXHELxEu8EAu CDH5I H虘HIHR >|P|H5 DHgH^@|DH5 HEH<IHR >(P|H5( DHH IHR >P|HS(H5 HHD֗HDH5 H軗HHIH@ >B|HC(HHH H HS(HHtk{xpCtI{IHt;HHЄt/HC(@L"DH5 HHZD1[]A\A]A^DH5 HHtIHJ >wΉH|HRHP8RAU8H5 H衖HtIHR >wP|HS(H2DH5P HgH^IHJ >JH|z @Ht H@81HP8fAWAVAUATUHSHHHGLn(H5 LxEf8ADDEщуEǕHHA B|IAfEH5 Hu HAA HDDjHaIHR >MP|HHI.A"H5C H߈D$HA IL$EA H5 DHH L$HE貔HIHR >A L$P|It~A H5q DHHR HEWHtRIHR >wBP|L$I3H > HHHU(HHtf.1H[]A\A]A^A_DDH5 H֓HtIL$H~@t AVAUATUSHHVB<FiHW(HLHC@HHMLk@L~HtgL)HxHHLIH蟀A.LL0LH?HHkpH[]A\A]A^1LL0HfD5@Klf.HF(HtHHt@FuCiH|$/H|$IHG(LMf.1MfAUATIUSHHGGluNPH>HW(HRXHRLxIHtzH҄ua1H[]A\A]fH[(C<t<KkH{@I<$HG(H@XH@LxIHt H҄tI<$C<<~SiCl7у Kmt @@@DGkbHO(HHPHBx@Kk7HC(HHtH@x KkH{@ Ck I<$HAD$1Hff.fHmxEm@uUkuM}uG DH[(C<t<arI<$HHAf.HExH9`mH@xH9ufDH{8tASiCl7у @ wH H#KhH\HAKmXCkƒ SiuHK(HAD@yCkn<tLG(Ax@uAȃA DuGt tCk1HރAKmu H=B GUkw H=( -xH!H9ff.AWAVAUIATUSHH(L&Ht$D$Ld$%ńID$PH@LxCktCH{@D$`yHHHt{H([]A\A]A^A_f.S utwHC(H!H9tH9P`u@(f%f-ftfD|$tAEf.PLx@uPLxhHL$LD$LHL|$tHLAH|$to|$HH IEHHHsHT$ETHH|$HLAA$t8HSIt$PH=/1腫ff.AE1yH{@nI|$Pp HD$HtHLxHH`IuHHHt r1ɅHHHuHHHHH@(x@t1ATUSHHH}{HG(H@XH@LxCkCl{h ƒ xutCm@jHHRxBm@uHz@K@usKk@Hff.fHxGm@uOkH*u$fD1[]A\f@u(Kk@Cm@uH{XH}HA$tt[]A\f.CkCiHsHSH}Hf.E1GDHH#ChUHsH=I-@HA$CkmHEH@(H@xHCPff.tjUHSHHHuGl tH{@tH[]DCktHsHRuH}HuEf.AWAVAUATUHSHHH$H|$H$H$Ht$ HD$(H$H|$8H$HD$PH$HL$hL$HD$`L$H|$@LD$HLL$pL$A<$HIH !@|${HD$@@|$}H9H~(E11ɺHIMHD$M7E~lH@D HxT$HD$0@HsHT$uH9 x@ A E~lxHPff.E~LAG<ff.Hm(D}AG<vA<$kI9ZE2ElAvlу  @@ |A$AA=HE(HD$XLMt I}EHL$(D$D$HtLl$ HHL蒇HD$IM(@Dƃ@t$(t"H5!H9t$a A<$^ANmUt$(|$}A@$L9|$oMn AwDyR@|$~HD$H5W!H9& @%AňD$}AAAAʼn$B{<!L$}HD$0@$}h@EHD$0$$$1uhC@A@8@A$V |$} |$~!$HD$`AAE~l1mDA<$uA$LAAAAF HD$XL}(DHt$ H|$E1E1IMv1fDelHĘ[]A\A]A^A_DƄ$1MAGFHD$@FCuh@8< @}HD$XH\$HD$D$}Dl$}ALH\$XL|$HD$|$}HuE#LL$XHL$M1HT$H=d'm1fDDL$(EEiH5!H9t$@ǃ@@ @$D$} D$D\$E tHD$8EHD$8E1D$HD$@E tEE1EHD$0T$}"T$~$H2}`D$~Hr D\$HMHDT$ AHt$`$HT$XZYHD$HDT$D\$HHD$D$~D Ј$ LCL;EXt:H|$ D\$~HHT$HG PHCH9EXD\$~*HD$@E D$}|$}EE MAGFHD$@FAAHD$D$HD\$}SHL$HxA脺H}@D\$}t7Eiw(HD$0H|$ HD\$}f.DD$(EEHD$@$%$rEkhHU(H\$@EHHU(t$tehHD$8A~HDž5Ƅ$1<H}@L$~HT$llHT$HxH9tHL$~t HmA $A6@AHE(HPHT$XLHT$PH I9D\$(E|$~5 Mv AGFk H|$GF\ <@@CED$D jHL$8bƄ$HD$@D$E1E1E1[1 L$~8$>MANMmA$E1HD$Xf.h@uk@'A~DH} H\$UH](<tHD$0H|$ Hel1ҋEhHEX% ЉEhH\$`MkANk<H|$ HĘH[]A\A]A^A_M}3|$~ED\$Ƅ$A!E Eu |$DD$(E>Ekr/HHMHHD$D$t$`$D$HT$XZYHD$H|$~D$D$HHD$|$}|$ED"$D$%|$EeD$E1D$}HD$hHL$HHD$HH !HHD$@}aDl$(E$H!D$D\$}HD$HD$@%|$$EH|$ LCHHT$HG PH\$pHEXH9sH\$pHH|$PHE(H\$PP|HHD$@EHU(@DŽ$E1DHD$XD$~HH@D$~fDAVlAVlxHPzfDD$E}HD$8DEtaHD$@t$(uYD$E1E13|$}MmANmD$~D\$E1䈄$|$(tXD$HD$@$$AE1E1Ƅ$HD$8DE)E1ۀ}D$E1HD$XE1|EkHU(R$H}Xx$j$L$~HccHD$8Ƅ$E1E1HD$@HEXH|$G%EƄ$EE|$(-HD$@$%6H2}$>E%Ƅ$HD$hHL$pD\$}H|$XL8HCHHD$0HL$HD|$(HD$D\$}HHD$@EHD$`E1E1K@HD$0IV(LHAFH|$ ELu(Ek9EkANk)|$~gE|$}e}jDL$(EEHD$E1ۋ@$%EfEC4}6|$}@Ƅ$E1Dd$(EEƄ$묁A~AFUM~(H{AE1 ЃAHD$@$t EHD$0Dd$}HD"d$~HXD$E1E1E1D$~HD$8D$(E1K$D$}D$6D$EƄ$EkMtAGFtHD$@FH|$ H\$pHHL$HT$HG LPHD$E1E1HD$@#ELd$ HLL|$0AFLEALu(C<HLAHH!EhCehHEXLfD<Hǃp)H= 1UDEH9]0QCf.HG(x@t1AUIATUHSHHHHXH'ff.f@HIHHHHHMD$ HphHD$$PLL$0 1HL$ D$ Hff.ATUHSHHFkD$u u~tH[]A\DHEPH{@H@LxXHHtOHtZH1[]A\xHPtKHL$LD$HH١t|$u`HHufP@tuSHHtHsHT$i4HHo|$dHHA$ fDHPYAWAVAUATUSH8LHD$ MMtH8L[]A\A]A^A_@BxHՅtHWIILEE1HxH4$MISXHL$ HHL$ ILD$(HLL\$uL\$ICXHH8Ht H@ 1HHH$HH@ HH@L ISpHt%HL$ LD$(HLL$uL$EtIHt$(H|$ IfDIL<@LT$IEtvLHL$L\$lLT$L\$HL$HMtMHIDHt$(H|$ MzEt;LL0eLHL$L\$vHL$L\$HL\-AVAAUIATUHSHHpuE1[]DA\A]A^f.AċExu&H11HCDHS[]A\A]A^LAEt.E11HLLkHHt#UxHRHfDLiDfHH{HH9H,[>Gm AVAUATUSHHHHxGI<v8H= yLk(I6E11ALc0HkXILHIHRHxHHJ AUxHRHw:J|HHJ@rnHH!HG0HGXHW(HB@Gmt At%xHH@HxuHIP Hw1H=d RXHHfHUSHHG<wH[(C<v1H{@t`KluWt3{m1@u' @u1Fff.KiuHN(1y@t3H[]Ð1uSku u߀{uىH[]Äuf.1HAX{hH@Hx ̓mff.fHSGiHӺǃAlQk Hy@DADImAuAA EumFt tcf1@tZHF(x@uKAH@XH@Hxty$uf.yh ډ[yL1[f.HHu RfHRHtGB%tH1f.x|H@9BHt@%uHF(HhJ|HHF(1Hǀhff.fAWAVAUATUSH(Ho(}@HIHHHEXL H@HxMHHI$HT$DpMt$@L%IHtUHT$IL$@H\$Ht$L|$H}XHHHHPXMt$@M$H([]A\A]A^A_H(1[]A\A]A^A_EM=H=: HT$:qHT$5<AW1AVAUATUSHH8Ho(}@HEXHL MH@HPH5 LxIHH@PHD$)]H{PH5 I]LKPHIIH1D$E1L!CLI9G`LI9G`ff.HPHHtXHx@uHpI9tH9uH2HAH9tHH9F`HLV`HN$D$HuEtuIV@HtlMHL$ HL$LNIHHT$LH}XD`HD$Ht$ IV@IMHw HrmMHI9r|$H8[]A\A]A^A_H2HAH9F`)A%ff.LLH)H)LNIIV@r@H{P1HHH HN^AWAVAUATUHSHH(duH([]A\A]A^A_Lc(H1H`I$IHtI$HI|$XM$ MIG@HIHH9HGLxHD$HD$IH$IHI|$XAHIG@IH9s=HT$HQPH|$uL9l$uI$LcfHLH߾H([]A\A]A^A_ff.H9fH9t3HxHx1291t@HH9fDfHHF HAjHE111PPHff.GD@u2AWAVAUATUHSHHF(x@tH[]A\A]A^A_fIHH ?;PHuHFPHHpHxtLMtL5!@AD$$u~AT$xtuE@t ujM9t$`tcHE1HU\1LHDIHtOLHHHAI$L9tLD$pMD$tMd$Mb1fDHGHxHHu ff.AWA1AVAUATIUHSH1HH~(HIHtHL[]A\A]A^A_f@HFIHx@HI>FLHHD$>IHtI)HHM}LHHT$K<>Jt+L)HH}(11AL5IHt=LLBDHE(x@/1HHLjfDC.H}(11ALIAWIAVAUATUSHGHHt$<t4<GI zHHXH@HHHL$(Hu`HL$AWDHq(HOHxHt$H<$@tZHt$>@|$ H|$@uHVPH;J fDj1H[]A\A]A^A_f< ~@2 H (HL$HHt H5exH% H\$1H='HS RXC H$H Ip:D$9 H$@t9H$Dt9sMML%~ @I] LHlBH |$t+H|$11AHHt@<Im@LHu^IH1IHLL/\A.HE1MjHD$LPjAVH\$(HH <uAM$IE@MmMIHt@(f%f=|$ HD$u!<t)HL$AtHH#tHD$x@D$IE1Ƅ$HAhHD$@H$H|$@1HD$xHHpHG HHD$X uw,H)Ht$xHD$XHPH|$XHD$`HD$ |$sI @HDŽ$1H|$GW,H7H1L3HHtRDO ff.ff.ff.JLȀu HJ(LIHLPIDHuHI9uH<H$IHH|$H$HH$1Ht$LHD$LHM,H0=CLd$ID$(I$H$ID$0H$H$I$H$AD$$AD$$HI'H$HZAD$E1{Hl$8LLd$H\$HI$HH?HT$0L(fD<uID$(IoAEHHU LHIUBU CI<uLc(LL8BE IAD$f.HHIHILl$L<$HHIGHxHHD$HHL4H$HD$L9D$ HE1HHL$(xtC<IU(z@uC@kШ u9HHt-H3111HtH $H;Htoff.HIL9C<<uH9kHH<$LHD$HHtPQIU(z@sH<$HsL&H$HHmIE(HLHL$H$H@0HD$IE ?H$LHG"IE(HL$H9H0HL$(D$ L@HHHH9lAHkHuC<fDH<$Hs11%HHHD$H|$GJPHH;GD@tD| LXELYhHx8 1(H&b LB|$ HL$(WLBMH|$ (H|$Qff.HPHLYhHG1HxHHpIC HI1 MgHHLLjE1E1LT$HL\$@H|$^Y^HH0HD$8H|$L\$0HL L9~Ld$MLt$0ML|$8IHl$@HLl$HIfDH3=@I M9sAt$(AUHHHuLLd$Lt$0Hl$@L|$8Ll$HHADAC,I)FiMD$MJHDŽ$L H5 HDŽ$fAA $KHHtHx@t @%!HD$1IhDHP`HH'ff.ff.H}RtdH@HE@H9rL KIHt;uH`Ht;uIH`HD$HHuOHmH?HEHHH`;uHL$AMD$MHD$HD$IOH@PH9H2HD$DpLEHt$Lm$D$I DHL$At=H $p:D$I 9.MMZyHD$@MD$M0OfDF^+HT$0IHA;T$Hl$8H\$HHX1HD$xLlEH$I9HD$D$0<tAGJf<pHD$XHHDŽ$HDŽ$HDŽ$HD$@t7HD$D$ <t$AGFuAtH|$XtHD$x@.H9>H|$`/>I @+%H$Ht'H$Ht$L&H=HD$D$ <"H$"H$"L$E1DH$II9"K,@LeLv7HHtE<wL)H{IH-HuHH|9AE11H|$1L#HHt E8C&L=aH $p:D$I 9MMHD$x@IiLd$`HHDŽ$HDŽ$HDŽ$LHD$PI9D$D$Hl$p$H$ f.HD$@ AD$a9D$8H!D$HH$HD$@AT$Lp(H$H A|$NH$HHtLH$HLH$RLHt$L$L$A^Z2 H$ H$H.AD$<YH!E1H9tDs%AAAH$HL$Ƅ$xƄ$zƄ${DŽ$HDŽ$y@$yp M H$I9%H$LL$fD$hD$hŁf$fxfz H!H9$ZET$IED$A9P$fD$hLHIH@(H$H$H3H$H$3HH$Hf$HpyHpH|$H`H$HH5HIE@H}f$xED$EtE@H}H$H$L$H5L$Ƅ$L$Hɭ!H9$t/|$u(AGIt!AD$ƒtAD$fDHLLLH$PH$PH$PH$PH$PH$PH$PH$PHl$hUHt$XL$L$۽HP($:IEHD$ I MLEHD$PI9[I$LHDŽ$DŽ$H$H$HDŽ$AL$D$8L$0D$0<At$DŽ$fDH'!H$ID$H$D$HAGF AD$<HD$D$h<H-E LHAHH'H$D$0<3< t)At$DC(f%f=wI cHL$@pPLLLD$xLH$HHD$`H=H)1HL/d|$Hl$pUH$h6H$[6H$N6HF6H|$`<6AHmE<wHm(E<vH$H$HF${8HD$HHtI @t EYE1El <fIHHt+fD$hD t$AƃH HHH$H$L$L$$H$HIDHl$ UPjjH|$(H HUBHՃ<wff.Hm(E<vHD$ |$HH(t"HD$x@uHE8ff.@$%D$HD$t E|$86H$@%t}r ff.HD$x@A_DP D|$0@ @t$0 Mk H9> Bl4 D$0H$$A|$8u EE< <vQH= DD$8QDD$8E0EHE(HHtAD@u@|9GL$EO 9sLH$LH$AH$H=DAH1`H=?1`MD$MtAt$tHUXEOHuLEXE< A\$tQL$HUhh E_ ˀ uAGD@Ƀ9t˄t$y]hAT$IEHD$H$AyAGD%E!H}@D$0EiwH$H|$HD$0$D"${}x|$0jEk`IH$H= HMH`HD$HL@ 1APhH#I f<#f Ht$L$Hl$p}I<$H$L$hL$hH$$H}(9BƉ|$0 At$DŽ$At$DŽ$Hn!D$HH$L%H$H HH5HfLHPHHT$HbHH HT$HLI$ID$H$M|$HHHHuL"H$+D$Lt$0LDI$IMHHLHPHHT$H質HHtbHT$HLI$ID$HD$M|$HHRHHHuL"H$rD$011 H$H)~H$HCF Ek HD$@IHMHH=+ H`HD$L@ 1APhx;H$H$Hl$XHHHHIE1LPLI9bL|$ I II9CM&MtA|$uH$A|$huL#IHH`H$HHtHt$LЄy|$HD$@HD$x@HD$@@H5 L$HHeE1H$ML%r!L$HCHH$ <.B MvM"M.H5 L1tAE! H9hHD$ШL$0ЃElEmtI @ |$HE(L;$H$LHt$i3@HT$XHP1H$HqLt$HH$H$LlAN$I>ANH$IIN(H$IN0Ht H$ H$]HD$D`ELt$Ld$(IJ,Hu4<uAoEHA(IAۃ ؈AHmHtY}HuHE(AV XLH!AV EHI<uHM(LHHAF IAxIE;fYH$Ht$L1H$Hl$`1E11LT$`MHDt$@H\$8M L$HD$H`Ht!ff.HHHuL" HD$H`HE0H9C0HE(H9C(H$H|$HH$HHCH|$Hk(IHPHz1HH9D$XgH;uH,XH$11eHL9xABm@D$0xBm@yH$1MH=CZ$L1Hl$pH$H=tgC4CLH=.1Hl$pBC4H9HD$PL)HH<謢H$HLL|$ H $LHL$ff.fMMMvxID$xAD$<wMD$(I|$0MtL1uHv(vA9pxtHPH9tHHH4H;~0yHH9uDL M;A(uI;y0u HHH9uHH9_H,L;E(QH;}0GHL9tAL$m@HIl$xH}xupI|$@HE@LbxtTHH|$H"t,H}@I|$@H|$LHHHHH@xH9u|11H$H\$`H$2H$HD$H$HxPH$wH$ HD$H$LH:HL$fInHfHnH4$flH}H$H$Z@<HLH=1i@HD$$'<IH${H$E1ɹ LP$-L%!Pj$H$8H|$(H H$H$I fȃf? f tЃElHs(H$HH|$H$SiIAD$ H$HL$hAXH$SmFm ƒ ЈFmCm|$0)$$&HD$L$0Ck D$0HHt:H$Hpy@uH$H< 2HD$HHHsH$HH$tH$H|$HME1L8!HLH$H$ P$-Pj$H|$(H H${H$0H$H|$HHEmSmHA ƒ ЈEmSiCmD$ IHL$hAW|$03$CkD$0CkD$0ME1HL$LL$`H$A HHx uAIMHPHD$ MLd$x ff.MmMAE$tAUxtĠuHt$E1HL1LDͰHH\AExHHkHH9s-HVDHL9rHL$ L)HHtJHH9rIH;]xSAECAF&M9f`MHLLHD$L $MH$%IXAF(f% fAF(C$Hl$pH$HH=-1Hl$pi; ,EI3,YE1H|$H芈&L$M|8HH= +HL$H`1Hu#TH$LHLMHD$aCkW7HC(HH7@F-CHC( 1Glu WJwwHG(Hx`ff.USHH_`HtqH-!$ff.ff.fHHtDHCxuHHt@(f%f=tHHfuH[]f.H[]@AVIAUATUSHHHHIH~(1E11H謪HSIHtP@Hv$HuLs<vTH[]A\A]A^fAD$ktA|$hff.HuLsDH~uLsHD$HSE1LL!HHD$PIEHxHPLIHjjH THT$Bh% Bh5fAD$hHu=H>!I9D$(t>HLH= 1#8H{AD$DHLH=ID$0HIDHC@AWAVAUATUSHHL$HH|$H$PHt$(I}(HT$0HL$8Dg@LD$@LL$HHAHGpHG`HGxHGhHCLxI HtLHЄI}(HOXAEHL$PHoL@FHI#EHH9Ht$(HIE(HڵIHt!H¾Lf1M$fAE< AE sAEf%f= HD$HH @lH|$PtIE(xL^LtI(HtH|$LЄfH|$Pgf.H[]A\A]A^A_f =At/IH$H5BL$H$êI}(LH|$PH5`{ HHLt$I}(H$H5L$IƄ$DHډ$J$lHA$TIE11HH?HA0AHt H@(HuHI8HuۉLt$Hu@LȕHHHILM8 D$$Ld$IF0H1fDH@(HufAFIF fAHH`HxIE(1HH]IF1I~8IFtHEHIFHLLH*In0Hu>i@HE1H}(HHLHHHEHm(H0H} Hu 1HEIE(HpHu1h AIH$H5?L$H$?AEzD@Mu`M$1E1H& #fD@$ IMMAAFDBuIHt@(f%f=tHLHuAtAE t$LI}HD$HH @lH$H5aL$Ƅ$<$1 IIHLt$X@l$cDd$dL|$hHjHTHT$ IDM?M4AG<uHD$IwH@HHt$h1@HHD$ HT$H@HH$tH|IIHHT$Ht$@(IH<HL@H4$H{LI}(E111LeHHt@<>C@H4$H{LzI}(E111L'LHHEkE<AOM?MfHT$ HHLt$Xl$cDd$dL|$hI}(H$H5L$Ƅ$S$uAEIH{D$$Hww If.Il$Hu9HmH+E<uIT$HuH1/1ѐLIE(xLHD$HK IAE XHtL觭IHt'AEu HIoLtlHD$Hp HtH|$1L 1HH|$PH5t H$LH=Lu Q4@M$$MD$$_ H|$PH5Kt HH AUMуM ABuMMr ABt A0LHHABtHBXHAHtff.HHHuH|$PH5ˎ H$PHAUHH|$0tLIE(Ht$0H荬HHAEL <HHH賫H|$8tHLHHHH$6M6MIFHuHDŽ$AFHH$I8qEGdEdf$R1ҾoLqiھoLZ1I6AE.H=1H$#L$$K$ I}(H8y$Hx 1ҾoLӡھoL輡HD$HQ11Dd$ L|$(HD$HDAU`HD$H8#HHHD$(1HH$IE(HL$HI1H{@11H=f"1MH=4i 9"1Ҿ Lՠ1Ҿ!L辠H|$H5Lo eHt @(H|$H58o EHt @(H|$PH5^ %HHj!H9P`IE(H+A}HAEtIu1ҾL 1ҾLHھ LڟIH LP躟IHoL蕟1;fD1$1ҾL`X1ҾLI11Ҿ L+11H=K 1-11Ҿ Ls11ҾLɞ1ҾL貞1X1ҾoL蔞t1:1ҾLvA1AUATUHSHHHt^IE1ff.@H[Ht(C$%uHHL輑uIC%uHE(LH[]A\A]E1@AVE1AUIATIUSHHuff.H[Ht7C$% uHLLH$p@t#HB0$H$p׃@HD$pH$E1LH$DH|$L$ uCH$L$ NHD$ Ll$H$H$HD$H:/H= H4 !H9HHHq`H !H9LcMt@$xHAXHCkHv(HhHH+F0H$pHV0H|$pHL$HS=|HL$HP0LcH)SHD$ Ll$H$H$HD$HHt!Hp`HtHF0H)CH9!H90E14$B#H= In@H HT$@IPH$ HHHR`P,AE$H\f-H=6 [HԘ]3H= CL%7 HD$`HD$@HD$xH:0H= H~S2H= Lt$@Ld$P$u I$t4H$H$8LLH$8݌%AE$0AE(ffuE1L$8CH|$@H$8H$LL轤bH$8H$LLE:H$8H$LL}pILLHWJAE%IUXLLIm@HT$跾HT$HAE'IM@H$H9HFHukAExtI$HHR HH9uJL H$IL$Iu`LLH$8L)H荸HuI%HD$ MLH=aLLl$H$1H$HD$/Iu`IHLH$8 I?H.H$L$@fDŽ$@HD$LH5 H$HHD$Ƅ$BHx(I,$@HD$0HHtHT$Ht$H 9H<$ЄsAuH$A$IHHP`L!L9HAHB,HD$2A}N'MXH$pMug5IF HBXHA0H$pHD$H@ HHt A~HHD$0H<$1HHHPIVHP8M6MAoF 1)$pAoF0)$$$AvD9^uFtHN HtH9VsHV1gA$xwHt\HtVH$xI$HH57 H7 $H=T1&H= 1MCH$xI$HI{H<$LHL$(HT$8貯HL$(IHx@H)CL@`H@XHT$8I@0HH9H$pH H|$XHHT$(胣HT$(IoH@ H<$4Aa¶HH=pS11H<$H$0+IIE1HH|$XHD$0Ht$H<$PHD$@`I HHX@HxHLt$0L$pH2IHH|$XLHPPH$pIH@HH9r#H=oaH=oIH H=oI$HLIM v4H= L\$蕴L\$H ZMtmH$0HI* uMoH$pI$HH|$qH)H9|/L$xIIH$pH1I$HHH|$qH)H4vH9MH|$XHD$8HDŽ$p$Ip`IPXLD$(HV0Ht$ H$xHQXI$HLD$(Ht$ H|$XDqIP@HDŽ$p#IH$xLQXI$HYH$xHl$8HDŽ$p%LIZoHh1aHL$HA HPXAD$`<@\HD$D$<5H=QHD$XL4$H-$ !L% H8HLL{XHs`LC@LHI(H[HtuC$tH{@tL{`I9tߩtI9tI9 tH;L軏uI1LHpIL+FuHD$@uRHD$Ƅ$pD$<t5H= ˱H5TMH<$H$pC$p=ItH<$I苹Ht$H<$%Ht$H<$蟕ÄHD$H@ HHtL<$Ht$L]Ll$PMtBLt$HL HHHLL,LM1HL艤H衒HD$@ uH$8cH=O1H=!O1H=N1H _H H=oLH ;Ht3A<v<uHA(H@fD<v HA(1DApHLYIHȋI@ISHHILH;P(H+P0H@8H Huff.fHI(A<vAlDAmƒ@AlA@tHȐH@xHl@@m@uu^A tXA uRuXHtCHIIL@AHTH1LLAfHE1LLA1HHW 1IH= RX1Hff.AWAVAUATIUHSHHxHK(HHt F(HHLC$!CxL9H|$ 1HHHD$(HD$0H|$3D$HD$0Ll$(HD$I9rHD$II9HL$fInLHD$HD$(ADŽuE1HH|$ H9t舏HH|$8HH9tgEuEfHHHD twC(Hx[]A\A]A^A_fDAMtHAHtLl$ LHL2uJ1Hx[]A\A]A^A_fHxD[]A\A]A^A_fDLH =1빐HMLLH_H|$ AIH9toIH|$8HH9JDMD|$Aff.UHSHH(LD$D$5HthH"N(|$tUHјHHtAF(uHHPzu@D@uHHHt$ Ht$uH([]@H([]ff.AWAVIAUATUH-" SHHLg`Ht$MfDID$xM$MAE(f%f=}1E1SfDAM(I}AE% tx H5 H|$bH|$uY@MmMAE$uIAE(f^zTI}AtfDH8uIHuIN IL1H=IQXMmMyff.EI$HvH@ u@u$HHA(t A HIHy$tHEELLff.@DX$HDH A!AA!I9uEuExDH(HHL9uW@HHHu*!@A(HHHtDA(t:ff.ff.B(HHHB(uEuxfM$M?HH[]A\A]A^A_HT$LLtqIHHuA@HMI(DHڝIDMmMsAE(tAE% tHLLWuHH1[]A\A]A^A_Dl$'HHt$HRHB$tB(uL*HT$(LWL|$Lt$8ÉLd$0HD$Mff.Et$(AtDAD$% t USHPHn`Hu1$ff.ff.fDHHHExuHHt@(f%f=t1HLHIHHuH[HtH;L'uCxuDH$11HT$LLHHD$DHH<$H9t_DLE1L1HHD)(H$HlSxHRHHP[]A\A]A^fDAWAVAUATUSHxHGD$LxAHF(Hx@IHAHC(SHk`HD$Ѓ<u 'H< HHHt@(f%f=tH5P HLd$ IH@LLHH?DIHtAG&uHLIH|$ H9t߄IH|$8HH9t辄L1褏IHt1LHL(dSHЃ<ff.H|$HT$H5ϖ'|$u;Hx1[]A\A]A^A_fH=A1ұHx[]A\A]A^A_fDL|$HT$ H\$ H5(D$(L&|$(tAL#@Lc`MMfDI|$I$HL$ ?;AHIuAI$HE(f%f=ff.E(ujE$Āub u@Hr<I$ <v!B tLHHMDHmHuM$MLHAIELc`LxMhf.I|$I$HS( ?;BHIuAI$HE(f%f=uHmHtE$t!HHJ(U( ʈU(E(uĀù{E$yH}@tLHH=?1bIH|$Hl$M$MXf.FyLHGH9Sff.UIH1SHHGHHxHHDHHI u H)HPHt\H H9u QHH9tGHHtC<wH;s(uL;C0uHHtFHHHDHh&HLH1H=n>菟1H[]þHHuff.AWAVAUATUSHHGHxHHD` HHHHHHpH;D}HHtHUXH H9HCHTHDH!IIIIHHFHH' IHtqHDL1HHH)I| zHIuHpL0DHH[]A\A]A^A_DnHH"1f.{ IHu1H1HH= =脬1fDAWAVAUATUSH(H~H|$H@Ht$HD$t2D&HD$HLHD$L$HH([]A\A]A^A_HD$E1H@PH@LxHD$HXH$D$$D D$CH[HIHHkHt HЅuHkL-U E1fIuHytPAIA u{uHD$HH= <HP 1RXH(1[]A\A]A^A_D DDgu"DH  HL L$E5DH HD |Dd$HD$D D x@D E1ff.AWAVAUATUSH(HGH|$H4$LxH9~Pt:H= H$Hx(1@E1AH$Hh`HHExHLXMt IHHJ1HIMtS10MtIH4$HH|$1HA`II9tI|IDHI9uDHHPH$Hx(H$HT$Lt$H53HD$H([]A\A]A^A_DDL@H$MXHh`HfDUHSHH_u H1[]fHHH[]Off.@1FDAWAVAUATUSHHhHV(z@tHh[]A\A]A^A_f.H5H衅HLE1ML5ff.MMI}@tAUxtAE(f%f=uMIGxuLD$1LHLL$XL$ILLLH`H|$DIH9t"zIH|$(HH9tzE 9fE1C<H5 HwHD$HL$MuMMI~@tMIGxuLl$1LHLSLLHLj8MLHH :L2KtIFHI9F@$A IH|$H9txIH|$(HH9IHHKff.ff.ff.@HUL``HHHH9HuHT$HLpAHu0fHHH{G'uHT$H-tHCLe`HMg`HD$ H9Mg`T$Df.H HGHxHH@ HHHt@SHHH6H|$зHt H|$H|HtHHH[DAWAVAUATUSHHHHtHH[]A\A]A^A_DIH7HAHAEMIHtHL*|HHtHHfC$LL҃ AHtAH҃QA>wDp|HUHSHBhZiFhBjFjHGHxHHt1ɺHEiكƒ9s ȈEiH[]DAUHATIUHSHHG~xHLxGFxIH^HHHQ@HH9r"HFxHHL[H]A\A]f<H=Z _IHfDAUHATIUHSHHG~xHLxGFxIH^HHHQ@HH9r"HFhHHL[H]A\A]f<H= όIHfDAUAI1AT1IUHSHH(Z HH@ @SkHv tuz<tvHH#ChCH H Lk(HǃHC0HChLA<$.tNCiu Ci u%HH[]A\A]H1H[]A\A]HHHEPHHH@HxHH[]A\A]fHG`Ht*HHHQ`HtB$u HHu@Hff.AUATUSHHn(}L1HGHALx}P$HHx@}Q0HHx@HxE1A Hr1ҾH[IHHP;tH}Ot)HS H5 H=*ШH HD1RXHH1Ҿ[]A\A]HH5HHuH[]A\A]1ҾH1H[]A\A]@1ҾHytAH߃ <H҃ HQt1ҾH>1f1ҾH!;1{f1ҾoH`1ҾoHJ1DH*1ҾHIH HPY1f.f.f.f.f.u,t O1҅utHOHt1Ҁ9u ƒfDATIUSHHtIH)HHdHHuLHHtHHHf(H[H]A\HpcHff.SvZDwHc؋ʃtFv*wHcHӃtH~cH\H[ú޻fATUSuuDH_t=JHމt(ff.ff.ȀHFuH^uCH[]A\ff.ff.DȀHGuzf.LbLDbLHߍhHcHHdH[]A\DATIU SHtPfHcH@I$XHH HuHH Ht;YsHHH[]A\ÐAWAVAUATUSHHGHxLhMLcLA1LH%IAHAMtCutSutHSHt:utHDAHHAMuK` Ht%fHsHu {xHHHuHt L`Hl HH[]A\A]A^A_L5R 1fU1HSHHHHHHH[]ff.AWHFAVAUATIUSH(A1HT$HD$wIHuUH$AD$ L<$|$ tLAHCH $H9L$aH([]A\A]A^A_Mt$AIxHhH_H$D$ HXHt$LAVPHD$HHHHHbIH,H)߻EID$HuHPPM$fDID$HxHHtЉƉHLLuHHHŃMuI$HcT$ H` HH{usHHHHHuL|$Mt$IID$ H-- HVH=: HLv4HcH` HuBf9rATIUHSH8ub˺LH?HHtg@@u0LLC~ZHu(H}@H;u0tdHFHE(Hs HHC []A\H= qDHH=V pDH6HHE0HE@HHtHu(vfHFHwnUHSHHH8u;H;](sHE@H؃@H[]f.H= _pDH= GpH;](rHFHUHSHHH8uH;](sQHE@H؋BtBH[]DH=N oHE@H؋BBH[]H= oHE@H؋BufDH= oH;](lff.@HG@H@@HW(Hv9HO@HAH ff.ff.@HHBH9uff.SHG(HH< Ht:Hs(H0Hv-H{@ff.DH ׋ILHH9u[f.AUATIUHSHH8Lo(HH]I9I\$(HIt$@ff.LHHJH9uL9s;IT$@HJ ff.ff.@HHHBH9uH[]A\A]ÐH=F m_f.H=& mH.MtID$(bfDH= wmID$(ff.HG8HuHG(fHG(ff.HATUHSHH;w(soH}8tPHE@L$AD$LtAD$HB []A\%H=^ lHU@AD$H#H=6 lD"H= lH}8|f.1ff.fHATIUHSHH;w(sdH}8t-HE@H؋Pt>MtHP I$[H@]A\1H= lHE@H؋Pu[1]A\f0H=f kD1DAWHIAVAUIH= ATUSH(HuzI(IL5 1fDB~HcHzLHH9u:IHI;o(sEIG@HBtƾGLIkIG@HH1[]A\A]A^A_M9g8uH[]A\A]A^A_fDSH=f jAWAVAUATUSHHHG(H<IHHS(H|HK@LHAH4ff.ff.ff.ff.fH1DBEtzHUHOHJH9uHL)HLKHS(HHK@AHAH4Hff.fH ytHcy~LA IHH9uLC8f.HJtJyHz OHcHO HJ HH9uH[]A\A]A^A_DH YLHCL}AGL9s;-D)IuIcHcIKFu0AM} EuHL9LmEuAFAEA9|MfHC8H[]A\A]A^A_fLLH9sUHHxxHH@HI9s2ff.ff.fqHHH HI9u1ff.f1҃`t*tu&t1Df.1@Gff.HHHHP`H@XHB0HHHHJ`HRXHQ0H9r1H9Ðt3tuAHGtyH@`HHGtXH@0HHGt0H@HHHH= [g1H@H@@HH@(HH@XHt+tu1HGHH@h@HGHH@8HGHH@PH=] fff.@AVIAUATUSBH@IHI@I;@sIIIHL.HHLLt$HCHHCH;Cs AVAVH9r̸[]A\A]A^fDHHH9r!H9rHOHVH9rH9ff.AUATE1USHHH9tHD[]A\A]DFHHf9GuLo Hv L8Cuɀ{ eu{ huDc Etff.HE E1H9C uHE(H9C(uHE0H9C0uHE8H9C8vHE@H9C@hHCHHHEHHH@`H9B`LEP9CP@CS<24HuUH{UE1BAAUIATU1SHHHIA1BHIHLDT(I9pD9s A@HI9sHIHHp3LHAAh,I)MH)EHDIHHCtRI vLILHGHxpу`t!7DHHH[]A\A]f9KAEAA @H@IsXI)MԋhHHH)HhXHIHDIHHHLDQ {Q փN L9fHHōT HL9HBH[H]A\A]H[HHDfA@#t1I0I9rAk@HH)[H]A\A]øL9Ahָff.LHHI9sHIxH8A0AA@?AG@w(L 5@Ic4LHΉH)H9mH1HH)HvI Lff.ff.H9tHH8xff.H9sHH8xff.H9tHH8xII9hILAyxIqAQH9sfDDFHHAL H9uHL)H9IL)ff.fH9HH8xDHH)HILHH)HILH9ILHHIfI9}ILAyxIqAQH90ff.ff.DFHHAL H9ufAUATUSHH~@HfF(HF`L%ѷ H@L9@ IHBHH;BJ@HpHHt}1Mh(=HtmHHHP`L9uHudS(ffS(HHA(A;0tFI8JA(HfH[]A\A]fDK$u4Aƅ,ADž0wI8Ht*A(fI8A0H4ʾH= 0_I8AWAVAUATUSHHz@H $HD$`~HB%qfB(eH7 H9B`TLn(IHT$`HI%{DIFHLHxpL|$`HS@LL|$hI9sD$HD$@D$ Ld$(MMHL)HID$M~LL|$hP@HtmD$HL$PHT$L)HvIID$LIP@HL$T$@AHL)H9rIƋT$L9Lt$htWT$lDME1HLH=1lAƅ<Ht$`H#L9?HĈ[]A\A]A^A_ËD$DD$ MT$LLd$(H4@DD$HH@9HD$0HtD$@DT$DD$[DD$Hi6DD$DT$HICIFLL$`HS@HxLL$hHHD$PHQ D$HH,$LLL$8L|$DD$DDT$LLl$Ld$(H\$Ld$8HL)HoH\$0IFIt$LHt$hHt$ D+P@Ht$ H|$`IHHL$XH)HHL$H9A@"HKDmHH\LH)CAGCHEH+EHHCE AHD$XHL,HD$8HHD$ HD$hIFP@t$HHHHHHHt$L$ƅK#I\$HE<$L9l$ nHD$8Lx @L|$hHAD$v,GL6H5HMT$ LILHD$ HHT$hH)C  ȈC HELML9s'HH+L$`HxHHEL9sH9r:eED$Av4HD$hHPL9L$D9xHHD$hL|$hIT$ LDD$8LtaL\$hDD$8LL9sNHJHHT$pH|$hLTt$AQDLd$hLHD$pL)H9L|$Ll$H\$NH0LD$HD$0H'1DD$E1E1D$@E1C)HL$L9 I ILjM9s IWH9BuM9qIGHP#HC# ЈC#IWHR# ЈC#HEHUH99HL$ H+L$`HxHHEH9H9rHL$A&EH9HT$ H+T$`H9HT$PHt$E1HH|$(轨Ht&L9HHHSHt$DAR$Ht$ HcLL H)HL$pHL9eN$HEH}LLd$hH)H9s&HH+L$` HHEH9sH9rH9sH;t11LeHu"HD$(LHT$H=HH 1Qh1H3A z1AQHL$poLd$hHMLH+T$`H9,HHEHEH9r*@HL$hH@HID$(I9swHHH ID$(I9uAL9WHHT$hID$0HEL9s)HT$hH+T$`Hx&HHEL9sH9rAD$ AD$RfAD$Ps ff.USHHHo(,uH0Ht HHDž0C1ɃtFt;H Ht/HB@<t<t8HHB@H[]@HHPH5߱.Ht7HHu)fHHt Hx@vH1HfAUATUSHLo`MtGH-dL% IHt!H;HtL9c`u+H[HuMMuH1[]A\A]fH[]A\A]USHHo(HD$H HH H9P`WHt~HD$HsPE1HL PH} jjj0H tHt$HߋFh% FhHCPH@Hx,u?ƅ<6@HrH fH$HDž H[]fHPH5,HufHx@wHHuSff.ATUHSB(f%f=:HBHH9:HLA4$1@H$H9r@z9s$>H[HLD@(LL9sӉ9rܾH= d?f9sHD[HALH[HLP(@t@DH9HD[HLHHHt!@tzAH9f.H [HAD ,It N#HH)ЉtF HjHHH[]A\DHj@[H)H]A\ÐtBH9t3H[HID@ FHD[HADDH9*HHHxDE$)ff.ff.A9AD I9u1Hff.fAWAVAUIATIUSHH(HHzHHt$LuHB@HBHC(f%f=t;H= X=C%uAG%tH([]A\A]A^A_HKXHs`LLLCH0tfID$LPHIHCHHvefDHCHHH9sKID$I|-PHHLL4)L9rHHH=k 1L1H([]A\A]A^A_fDIw`IO@IOXHN0Hs`HH+KXH+N0II)AI9HS@H9IL$HHxH9ueHtnID$L|$LLPPID$H|$LhPHt$HcAHs`HKHLHKXAL/pH=U ;눾rH=B ;|H1HH=]Jf<1H1HH=\J=<1fDAWAVIAUATUSHxB(H|$(f%Ht$0HL$f=nH|$(HHGHxpD$`YIHHD$0H@(H@<HD$PH|$@H|$@EL}H@HH\Ld$$ff.ff.H0HC0I9t3C#uCS9sKI4I<H0H HC0I9uEH @HLI9Ld$L3ff.ff.fL@H0IML9slC#uSK9s܋CI<I4 HE@H HD$PH HD$@fH= 9f.M9LD$Ld$(Lt$ MDAF#A^AnHD$LD$HHLHff.@#vH0L9rHD$ Dh@ID$A)HA}PPAFD9tD1H):AV#AF уƃ @$@HD$I0I9>Lt$ INXIv`MF@HT$H|$(Hx[]A\A]A^A_,HD$H0I9tH=ߐ Q8HD$ M>HuHPXAFH|AGH)IH+xXID$PPHD$0D$<RAN HEDl$`HD$Ш`Kȃ< C <%D$HD$8 Dh@ ƃ  L$gDt' HD$8D$XD$%@HD$8D$D$XHM D}HHL$HyHL$HLTI9sIAzI9rAu 1L9I€} zuD$XHM AIl$HD$8HLL)HL$HHLT$I<HD$hRLT$HL$HLH<)HLT$8H)HL$,LT$8HL$LAF#tD$XzHHEAF tBD$g)D$`RHqHMPwH EAHHHE=L{IHH5H>HHrAHMLAGHL$0AHAGHCHxQ1AGH@ZYt89(AWIwAGHCH|$(PPAHC8IwPP8H@H 8rE1D$E1DD$L<$IDd$MILI@LlmMNNIt$`Hv0D)H1HA{uHL9@@t$H$M_LT$DJt LD$ASPI@LT$MLD$NTIt$`Hv0D)H1HA{uHL9@@t$H$JtMGAPPt2I@sH4vofofsffH~J94@@t$HA;8DD$LLML<$Dd$E|$AINXIv`LHMF@LA! H@ H8D[]A\A]A^A_fDI~@ HGD$)D$(D$,HxHHLHl$(Ht$,D$)IF`Hx@HCHHPPINXIv`HMF@H\Ad@<H1H=b 5|$tH=,15S'fD;fLI H=~ /&H&HA H=~ +&ff.HztDff.I@`L)I+HXHJ0H+H0HD$Hf.DHHPH54p HtGHHu'9ff.ff.HHt Hx@vH1HfAWAVAUATUSH8Hz@HD$ D$vHB%ifB(]HF| H9B`LHT$ HIHAƄL1H|$ Hs@HT$IKIEHHD$(HLAEA@4DD$ cIEHC&DD$ E1E1EuTE;}s)I}H0HLwHH+uHHwHAI HEE9HEJ`HEH;Er|H=| DD$ #HEDD$ DH|$(FHLH=q12fE1H8D[]A\A]A^A_H}&ff.fHHLfK(Ht$ HEfH;EtʾH=| #AWAVAUATUSHH(H4$G&t H:+HLI}$ D$E1HD$WIuLFL vH$H4vI4HsHЄtE;esIuD$IL9|$K,EL4E;}r8H=+{ >"IEBD0tAL E;erTQH={ D$LL$"IuD$LL$LVf<H=z !L 1E;esIuL%D$D$H([]A\A]A^A_SHH~PH54l HtHH HBp[fD1[@AWAVAUATUSHB(H|$H $DŽ$fKHIHH8HD$H$H!Hn(ILHMxHPH$L8H$L8H$LÉD$$faH$H<$HD$H$HL$(H$HL$@H$HL$HH$HL$8H$HL$0D$o1҃1L|$`ALl$PAff.Ƅ$HDŽ$DŽ$Ƅ$t$8LL$8LD$PHL$XHT$HH$_^_HD$P9HD$`$D$h<HD$P@$%D$h|$$H$`D$X L$hAH$ L$oL$pJ KHD$HH@PH|$XHVHD$PL`XID$D$D$LD$$A$E1ukAD;$sZH$HDuCt=HLatžH=)w A8D;$rff.HD$ 9\$$H$fH=1B-f1H[]A\A]A^A_@H@HL$<u/@H=v f.L$h|$pH$|$hHT$XHHD$H@PHHT$XHj9MHD$HL$D$XH@DH= v <E1H|$pH$H|$pD$hLDIPH5g X HHPD$hD$XfDH=u HT$xD$oHT$xD$pH=du w-=H$AMH$NEeAD1L$HHIH).H=W1`+8H=t H=t HT$XHT$XLDAUIATUSH(HF(D$ HHHPH|$Ht>HT$ IHt$HMXHu`LLD$HLE@ÄuH|$|H([]A\A]A$<tHHU@HP f.AWfAVAUATUSHHHH9HF0HT$FF HGHIIHP@HEHvqI)I9riHHT$L,LsM9rMIGHHL%OPXfE4I9IGLPXƒfIcL1H[]A\A]A^A_IM9rgf f=uWIGHP@E0HE @IM9r7f=f=!u'IGHP@HEI ff.I^I9Ccff8uH](LHH)LtIM9rIGHP@LH)H9HLsIM9rIGHPXLH)H9HLs`IWIGHP@HE=DIGHP@HE%D1fE4"I ff.fH;Vs 1AWAVAUATUHSHHxH;Vr1Hx[]A\A]A^A_DF tH~@IIH}HHM8Ht,HE@1ff.HH;rH;XrAHH9r1HUHHt!ff.fH;ZrH;Zr4HHu`@HUH@IUAf.HBI+HG(HHW0HE(LpIL9+I$LL$LLD$H@P@IHD$I$H@P@L|$I<$HD$(HgfffffffIII?HHL)Hu8H譇HE@HH}8LD$LL$E1xfDI$LLL$ IHLD$H@HHu@HT$Ht$P@Ht$I~HFI$H@P@H|$(Hu@HT$LD$HL;}8LL$ H&LI M9t$0sL}8HU0HIL$ Lt$0AH H9rWfHUHfoD$@LL$LD$HHT$XHEHHP@HT$8HIL$ IT$H9I<$LLL$LD$CD$dLD$LL$fwIsI<$ 谆Hg HM8HAH?H5`g LL$LD$LD$LL$H@%LpHMuLp@IL$I<$1HLL$LD$ ID$(HJ0LL$LD$IT$0cH}Ht HUH1HU0HPfDAWIAVAUATUHLSHhHL$L$LxLB0LL$HIAMI|$It$K8Ht&ff.H;^r H;^H6HuIT$8IL$ Hl$ H9rifIL$ IT$LIT$8H9sPHD$ I<$HHD$(L|$ Ll$(t$f|$Tt5MuIT$8IL$ LIT$8H9rHh1[]A\A]A^A_I<$P袄HHtID$foD$0HHD$HIt$HFD$PFF HD$@HF(fH~H9fH~H9!Mu:HF0ZLD$H $HhMHL[]A\A]A^A_UDIL$ M|$8I9s)ID$LI9ǸLDL~0E1HHH@LD$HT$诃HT$IHxHH5d HH@%LHHLD$MtMH1HHLL$LD$ID$HvLL$LD$ID$8I,$II\$ML$ LH@@SHHtH{H{([@[f.@H?%7q HH9~e?H 0HHH @HHH!H%Ã~SH  D@DfDt @udf.tyI~iiH1DfO1Ð1eÐ@MfAUIATUSHHoLH]HtH{H[HuHL9uHL[]A\A]ff.HHvH?HfAWAVAUATMUSHHI8LtSHt I $H9sH[]A\A]A^A_ÐH=LH121H[]A\A]A^A_ÐILL $IILL $HHF%LLL$H4$ H4$LL$ AFH<t H~HHuH~@I<$HHt$L $}IHYML $Ht$LHL;L $HI$ADLm1LH=$-1fD1MMLLL $L $HHIu1H=S1f1LH=IJ/1xM$1HLL $L $!LW1@AUATUSHLLMHIEHIT$H}1ML$PMD$HHIuIT$1ML$`H}MD$XHgtcHHpTHrKIT$`H9rAH)H9r9ID$XHǀt<u'HUHRR(I;D$PsID$HH[]A\A]DH1[]A\A]HUHRR@HHt|AT1UHSLHH0H}IT$ML$pMD$hH t9HHp*Hr!IT$pH9rH)H9rID$ht/t[1]A\1DHUHRHR([H]A\HUHRHR@f.H'AVEAUAATAUHSWHH(i=3333v5ЃH@HH(D`Dh DpS[]A\A]A^BH4@HzHHtHC(S1@AWIAVAUAATI(UHSHLw0H?DD$DL$ {{HHHL`Dh$D$CD$ CD$PC D$XC%Mt A?|HCMtIFHHp%L9@tM(yH*~E0fHnL fl@EH]8HE0H[]A\A]A^A_D{%HsH9H}8LGI9H8HH9r!H9xHOH9KH92fLMHOHLH9rD8h$$@;|$XH;E8HHHI^6S$8P$Xff.H}8HI^H]8DH1[]A\A]A^A_LH}HpyHCHHtLo^f.L9LMt/MHI9r&L9S$A8P$ff.@LH\DS$8W$LHE8LHM;&1M&)fS$8P$vfDS$8W$I_H]8HE1AWAVAUATUSHHWu ;sHC(H vHH(H}/@;C sqHS L$MtdLI9r)HH2<<t_<I@XHDH 1HfDI9rIxHH2t<t6<t"<uHI@`H@I@(HfDI@0HfDI@HHfDI@@HH=H=] HKH=] ff.IH>HH)H~oHGIHI)AAM~ZHOHGD II)M~9HWHW Ax tf‰% fD1HωfHHH9rLG1L9sBfHvLFI9r1L;Gr1H9rLGIHH9s*L9HvLNI9sH9sIHH9r1H9sDM9sf.AUATIUSHHt~HZHtbL-T ff.C%t>H+It$0Ht5It$8Ht HttLH t H[Hu1HH[]A\A]Hv0H$HHt@%uIt$8H HHt@%uHH-T HtC%tH;HtH[Hu1ufDAWAVAUATUSHHH|$Ht$HT$Ld$L-S HHh0HBH$f.M$MtqHD$I9D$/@LLt>AF$t|$t0MvMt3IF`Ht L9tAF% tM>HLuMvMuL9$$t L$$sHD$ǀHD$L9t^HI$Hu?HH3H}uHE`HC`HEXHCXHE0HC0HmH[Ht HtC% tHH[]A\A]A^A_HD$0HcHD$8H<@HoI1MtHD$Ld$LH@H$HD$8HD$ HD$0HD$(ff.fM$MHD$I9D$6H5Q LL$hL$tJMmMIE`A]$Ht L9t tMuHLbك L$uIUHHuIU@IE0Ht$ M/IGHD$8AM|HIHH)HH!IE0MmHIGHMrL9$$*L$$ IUHIE0HuIU@IGHt$(M/HD$0HXH[H4ff.DHHHHHJ0H9u'AWIIAVAAUMATMUHSH(L\$`EXLL8HD)HH9ALd$ALl$MDt$Mމ $G $HHLAVLL$ LD$HL$,LWZYH,HDHA9HtHuL#oHHNLN$1Lff.@H9L9 uHpHxL9tL9tL9ruILL9rf.I9s H@LlL9r[H(H[]A\A]A^A_fM9LHDICHLL9IGf.MHHRL\DH(1[]A\A]A^A_$A?9DHHRHJ 8HEH@H;HsHH9L;8sL׾L\$`L$mL$L\$`HpDE1EtoL\$`L$$AHLl$ILDHHHH@DLIDLHL@p?^_HAE;erL$$Ll$HIL\$`rf9LL\$`HH@LT$H4LL$lfnHt$HEHyH $fHnH@fbHf H$L\$`LT$t1PJHRHЉHLbLjLZH([]A\A]A^A_HHL9AVIIAUIATIULSHH1H21H8HAPMIZYHtLIT$LHu1I\$Il$[]A\A]A^H9ht*HHt*HPH9uHh[1]A\A]A^DHXfI}"kHtI$HXHhHI$f.AWAVIAUIATIUSH8HHt$HHkHL9HJT5HLt$(HT$(TI|$HLpI|$LHA$ITLH IHHT$(HA$HH)H6%H9sH81[]A\A]A^A_fDHLHtXJT5HT$(H9rHH9sL56HJHL$(:wIcL@H8[]A\A]A^A_@HHPLLLH11H3LI$H_HHPLLHH11HưI$RDHt$(H1LHt$sHt$H1HLHD$sLHL$Ht$LLHT$(H9A$HH)HH9fLD$(I|$HLLD$[Ht$LH1HD$sH|$LsfDA$HH)H6%H9I|$HT$(HHT$I|$HT$HA$HD$I A$HH)HH9I|$HT$(HHHt$I LLLiHT$(Bff.UHSHHW H i=3333v BC H,H[]f.rHeHHt HC S 1ff.AWAVIAUIATIUSH(LyLD$M9ru6At$,w\,H4HcHfH=1b1H([]A\A]A^A_ N!HLAML)H9U  H I@LHD$IGP(HI IIHM8M0HIHHD$ I01H;HDI\$fHt$L1LNpID$HD$LL)HI@LHD$IGP(HHD$IT$H([]A\A]A^A_fLL)HQI@HD$AfH=i1Hk1Ht$LLLL$oLLl$HdHHLL$LL)H9$LjID-*IT$ LL)HI@LHD$IGPXHD$ fLL)HpI@LHD$IGP@HD$A~LL)AAHT$LLID$HD$SfLL)HMpLLL$Lt$E(cHHvLL$LL)L9fHBLIT$DLL)HI@LLL$HD$IGP@LLt$HAcHHLL$LL)L9rK.MLJ*IT$gDLAIL)MH9HI@LHD$IGP(M}HHuIVMNPMFHHLH4HD$I^H1Hڀ;HDHt$LɺLlID$HD$@IHt$LII|$uBHD$v@LL)H8I@LHD$IGPXII|$tLID$HD$'DLL)HI@HD$A8IHD$I|$fLL)HI@LHD$IGP@II|$unID$HD$fLL)H`I@LHD$IGP@#fDIHt$LII|$tLID$HD$1LL)HI@LHD$IGPX;fDLL)HI@LL$LHD$IGPXLLt$HA0`LL$HH ff.@ID$fLL)HAI@HD$A8AD$ Mt$LLfLAIL)MH9HI@LHD$IGP(M}HHuIVMFxHMLH0HD$}I^x1Hڀ;HDDLLL$LD$ _HHLL$LD$LL)HsLBI@1Ht$LLiIID$LHID$fD1Ht$LLNiIID$?LHPID$HD$ID$xfHl$L1LHLL$hLL$!!LD$LLL@Lff.8HPtGHL9rE1MD$LfL1yfDLL$1i@LL$1@I9Hu뷾LLL$1LL$m]LL$HLHlDLLL$LL$=]HH!LL$1L5LLL$LL$ ]HHLL$1LLJ IT$oLL$1]LL$1GH~I@LHD$IGP@M}#LL$1/H~I@LHD$IGP@M} LL$1lH~I@LHD$IGP@LI}H5-HHD$H1H貽HIWMtfLKtMMLɺHLfLL$IL1/K.AM1L輴HD$1AWAVAUATIUSHHHLH|$H)HL$8LD$@HHHHL$hD(HL$(E1Lt$hDL1LLfL1LLeD8u1LLLeHH@HD$hLH)H9HD$HL$L5@HT$PEH\$XHD$(fIAA)HD$pEH$DT$'1Hl$pHD$LL$01LHL;eHIcLH$HD$HD$xH$L1HLdLD$hM1HL$H|$IHD$hH}I(w4DHHH*tH$Ht$:\$'114H$HD$p=!L$H=׀=!x/HPx/HXE11Lt$XH\$`IL\$hHfH=0 DAWAVAUATUSHDgLELHMuGXHMhLHMMHEpLmxLL9nDMLIy0LHt'ff.HGHC0蓸H{0HuIIy(LL$yLL$Iy kHDžEL1H[]A\A]A^A_DH}IRMJ@MB8HL\$H|$H0LT$HPtLT$L\$Ir@HIz8HEhL\$LT$L,7H)H HHGH$HD$H@P@H$LT$ƸL\$H9 AHI)I9 L,7H HGL\$H$HD$LT$H@PXLT$L\$HÍ@fH$Df fp HDL9nLH)AHHGL\$H$HD$LT$H@P(L\$LT$H$LH)HOHAH$1Ht$8LH)fd H HAH$IL$  LH)HHpLH)HHpH$HɃL$XLH)HHHH$p@t$PHt$@LH)HHHL\$H$DxLT$JD9D|$0L9D H|$LhDALT$L\$HD$`HH@J<9=ff.ff.fHJH$HH9RH$LH)HL$1H=|1+HDžH]L\$H$H\$BHD$HjHE1D$ Dd$(L$M9H|$1LL}`H$HNH‰ƅAsL\$Dd$(H\$0HHt1HHHHHuHHHt1HHHHHuH]pE1E1L\$XHH$Dd$(LT$ LL$L9sWHt$0H|$1LL}`_MLL$LT$ jl$(D$(H$LT$ LL$L9rfH|$膳!HiɿVH )ȉky)HE@HHuH[H;3uKM)4waHH @H|H Ht7H|$8;BHbS@0PHHHL`HL$IcHDK EL$E1L$ID;c jLMHLHHCp$HP9H$IHufpD$ HD$81t$XD$PHD$@H|$1L\$E1LT$L$@D$0LT$HD$`L\$H|$@L\$LT$@LT$L\$HIVHD$IHEPIA(IAIAIA AAIA0IA8f H$DIMLMI,ff.ff.DA>IFRIM9rMMIALL$LLff.8HHHL9rIH$AAL9}L$D)LL$(D$tL$Hl$hD$Dd$0HD$0HD$(H H$L9AE1D$1D|$HE1MD$HDE)H|$@: AT$t$P|$ t$ Йt$8ƈT$HINjD$XL$D$jAQDL$XAHL$@H|$8LAZA[L9H$IGL9IBE1L9 HxH$D0E8CAA H5RHcHDHH|$L1DL$xH$HDL$xD$HH$H|$L1DL$xH$HH|$0IH|$(DDL$xHD$0H$:H|$H$LDL$xPHDL$xD$H$|$ DL$xLH$H|$HL$ L|$8HD$DL$xH1HLT$H$T$jAQDL$XDD$XLH)HHDL$xH$HD$H@PXD$DL$xIH$FH|$H$1LD$Ht$xWGH$LHt$xD$H)HLBL$ HD$hHDL$xHxL$t$L Dt$DL$xIH$HL$@H+D$t|$ T$L$ HH1HHL$8HT$IH?@I9H$HjAT$ I|$ í3333vrAt$ HH:f.rLD$HL$(L\$:LD$HHAT$ L$(ID$ L\$H$t$8HI6{kD$ AA9H\$IcHEMMIALIIfDL$DH=s1WHDž=H|$X:IHCHMgPAG(IHL5[ HL$IcLHDL9LH)AI HH=zrI9S H$MH|$1LL\$hH$LL$HHHD$BHt$1LH|$HD$BH|$1LHt$HD$(BLL$HL\$hHAAIy(í3333 t$H IH ωqt$(L1L$q QAAL$H|$0腨L9$L$LL$(L$D$Hl$hH}huMAYWI9LL$Hk(L\$HD$6LL$HISMIA01L=O LRHHEHH(HMHHH]HHMHHHEHL$ 輧HD$HL$ H9 HHu LHD$ HD$ HsHD$0T$MD|$jAQDL$XLHL$@H|$8ENA_Zt@L9HD$hMIGL9LCHp HHHHH\$hLL$(Hl$hH|$0LL$ަLL$HHGL\$H$HD$LT$H@P@LT$L\$LLLHH$LL$HL\$(LT$LL$LLӸLHHeLL$~LT$L\$(AAH$AyH=b KAG(L$8HIHIy?HL$8DL$xHIH$&L$LL$(Hl$hH=n1LL$FLL$H=md$ Hct$ H|$H2HIcHD$HƉHiVH )ky)HM@L4Mu fMvM A;uANL)4HH @HLH HZMM MI;YLE1EF E E1D$81L$HD$ L\$@LL$HLT$PHL$ff.@HMHLHIFL$p$HPH$HM%$nw!01=wXH HcH= uA$(ev,HAHsH$ID$0AD$,fHA;^ 2DD$8L\$@HD$ LL$HILT$PA^M!IMt MD$($ԻtHID$$LHPIL$0ML$1MD$, ^_p{$茻TI|$H$׸ID$-$QHH$It$8HHff$H$AD$$$޺H$AD$ $踺I|$H$ID$YfH|$D$;>H:$HH$HFH8HL$A0ʃ9HxHEH@P(HL$HA(x'UI|$0I$(0HAHH$}HID$0'f.?MG$H$Ht$P1HHFHN PLNLL$ZYH$H=ip$蒸ZH$D$8HD$ @$d,H$HD$@LH$LL\$H)LT$HHGAH$HD$H@P@H$L\$LT$HcNHHQ<$蚷bH$HL$AMHL$AF@ƒHHtIWx$D HD$Hx螞H$苴HL$HA$(bHAHH$HL$HA $辶H$wHD$@0iIHHT$H4@Hy+LL$HHHL\$hHT$IA(AALL$(Hl$hL8HPHL9rHE1Lt$H$L1D$LL$H$61LLH$HD$xH$61LLH$H$6L$D$IHD$(@í3333[Ht$(ƒH RHV(HʋL$xLJ$DrJ FH$H|$L176AH$MMMtyI;ZPus1M1E1=!MMIALIL2;L HT$tH=Nc1HT$, 2}LMmI;ZPsMMuVI9KE1CLM5I;Y M MuDH=6dpHD$(D$HkL$Hx()HtHL$(D$L$HA(AVIt$8LHLT$ HLL$HLL$LT$ {=!`=!P/LL$L\$LHt H= L\$LL$Ht$H L(L\$LL$kLL$IEL\$AyHHIU(LRMBH9 sL9s H 9sHHk(LHLQLH(9uMi0AA@HL\$XHt1HHHHHuHHHufHHLIHuHH|$辙IHsAFD$(HH= ޷HxHEH@P@DHxHEH@PX0@'H= |% AWAVAUATUSHXHGLvHL$LD$LL$H$HD$8dFHIӃ= &LexHE`LHD$8H)I9MLHD$8H<$Ht$8L1&2ƅ}ljHiVH )ky)HU@L4Muff.fMvMA;6uAF E1Ll$@$H\$>G:u"H|$D艰!IE;~ LLD$8MHHIFLpT$@HP臿HD$8HD$@;vn = Gu|$Dt$HHL$LL$HLD$ PZYM1HX[]A\A]A^A_@HHBHD$8MHX[]A\A]A^A_|$DHD$HH$H;D$D(HAHHD$H}HH 4fD$D(zHAHfHD$HHHD$QL;r FLHD$8H;E`r LexL9rfHnHLl$@flLH)D$@AWHUH@x H@L`xHLIMHIEILMMHp@<ILHD$8MdH)HHHHEAW ;1H=^11H=^1HD$H8ÔHt$H質HL$HfD=!:t; ts1LH=^舳1&HHHw HHT$8H;P`rH;Pxs^HTHHHqHT$8H;P`rH;PxsfDH<$H5WxHH1HD$(H|$(HD$ 術H|$ tpH|$ HD$ IHHA =D1H=_ZP1HD$8Mtd1LH=/] 1=!MHHHH|$ zHD$8MuHHHAWAVIAUATIUHSHH(L$LL$8AńuH(D[]A\A]A^A_MHEEtlIH<AWHH9\rMAtGLLE1@H;YFLBI9YJHHHHH;YsHD1IJ~FHz01IvH;^rJp9}(DDDLcON4ML9s͉9|L9sI$AfIvH;^sI~IF ƅ~IN1#fJ| H;_Yx9N7HcLL IPH9s‰fDEMLD$ILLL$HILD$HLL$MIoG@HW8IIyEQfH~fH~Ht5fLZL9IGLZHL9IBHufHnfHnflH?AAI HuMKHǺ LLD$H cHD$HD$LD$AHxHP0u)Gff.ff.H:HH L9s H2H9sHHHDIp@L9HIIE1HN8ff.H;^rcH>HG8)uI9LBff.ff.HHt(HHH9rHPH9sH)L9sHIIHuH L9uM&Ax(LEuILDDH9MHHH;X:Ax%/M;F%I@H<$I$A@H|$HA@  @E1DH6AHuDIF EH:H4IFHIVHt)ff.AOHHIHu H=K 4 H=5 LD$HD$LD$HD$Mzff.fAWIAVIAUATUSHH(HL$LD$JAĄtnMnAFuxHHuHHL;{(u{0uH{tHs HtLHtHCHL$HCHL$H(D[]A\A]A^A_LMHD$HI^8ff.HCI9rGHSI9s>H)H9H$s2I~t+Iv0Ht"LjHtLt$H,$ff.HHuM6MuHL$HtHAH|$HA$6fE13HHH9dAWAVAUIATUSH(H>HXH^fIAIHD$HD$>L1MuNff.MM>ILMuLIv0HtA1ɺHx IHtPHHt>A~D$fInflID$M6MuHHL$:HH1ff.ff.fDHHL8IHuHHHp1ff.LLuHEHMuHQ@LHtwHT$fHn~BflHBff.fHmHKD}0EuH}tHu HtLd$1ɺL HHD$wHHu'fDHHL0IHuHƃEH[HIIH([]A\A]A^A_fH= 诧L1MHHǃHfƃ|@H=v _HD$@ADžH(1[]A\A]A^A_HHtD|$HƃfDAUATUSH8L.MHHL L`1HH5 fH]IHt7f.CtH{ tHLðHH]HHuIHIHHHu$ff.ff.HHthHC0HtH{@tLLHD$(HtH[@H+XH@ H+X0LKH8H[]A\A]DH81H[]A\A]HmHS1ff.@IE1Ht5HHt)LOMt LGLIq0AH2W LDff.AWAVAUATUSHL>HMIHtIHtMoMMMI$I$I$Ht#I;tHx(qI$Hx `I$SIDŽ$HtGfH{7HCH{&HCHHuHtH}HEHmHuM$$MIIHtHx(ԅIHx ąIhIHtI}x螅I}H蕅I艅I}I}8tI}(kI}bI}hYI}XPM9tMI7I+A u.IHuH[]A\A]A^A_H[]A\A]A^A_lIlIHuff.AWMAVIAUIATIUHSH(ID $HG@9uxDD;uhHEHH1.@HPXHW0H9u3H@HD9HHx`HuHP0LLH{H1HHHǃH)HAF@AL#LkL L L="H H5L 藦H5H HHL LL ^HHLHLH^HHH/I9D$1LHڝIHu |$w<$HkILLH諝HHD$ME1LHC H1LHE1HD$_IHtTMF@ML$t*HS LLHL.HEL$ML|$LLH IHuHC L{(HCH([]A\A]A^A_@HHH#EIDHE1,@HJXHO0HHRHD9HHz`HuHJ0fH{(<$KH(HL[]A\A]A^A_2fHD$IG@I[LLHHD$IHbLHDtH~3HRH4ff.ff.HHHHHJ0H9u1DHHtIfDHLu1kfDH-yDLH^nIH1LpLH-HxMDHptX1LHIHtCH$t7Lƃ Lk@D$LٞH|g1Hǃ1IG@LL$LC 1LHHD$HHp0L|$MkHǃ1NHLjIH10ff.HHGx AWIAVAUATMUHSHHHLM+I9HGfHxIGH]IGIAGH8HD$8H|$E1E1H$HT$LT$LL$(Ld$ EMIff.fAG@eHD$ELAEH$Ht$HHT$8HL$Iv H9:H9H9rpI~HH9sXH4H9t$AwM^ACu;AsHE_HAEu@H9@H9@@tDfHnfHnM~flIFAFMt AGuAtIEIFff.AL}HMIFLd$ MLL$(HMtIWI$MtHPIHH[]A\A]A^A_f.MAuAH9sIFHH9sH)IVg(LL$HT$H<$HL$ H<$HT$ILT$LL$HMLHH1[]A\A]A^A_DIGHqHHI9dIOI9R@IEXf1ff.fAWIAVAUATULSHHXL$H|$H$HT$LL$L$HD$HIEtH$HH$H$tH$HD$E1HL$MH$@DBHA1nA M$$I$u MH*HD$H H $tH=FDD$ *DD$ Hk LSHE`HLUXLP0MI|$8 IDŽ$EA$M$MDD$(Hl$ HLML$ff.EVA~Lu>I~0CI5IF H;Xr H;X HHuM6MuIDD$(HHl$ M|$LDD$ L貰DD$ HHtwE3COLuJH0HHW ff.fL;rr L;rpHHuLL5HHuE1H$nff.A$I$~0HRH4ff.fHHHHHJ0H9uHXD[]A\A]A^A_f.M$8Mu8ff.ff.LHM|MA7tAOIWH IH4HHƀH9uHD$HDD$(E1HD$ H\$0LMEff.fDH@HHxu;L;xr5L;xs/ƇHL$ LLL$L$5AD;srDD$(H\$0MM$I$HL$HMLd$ L$H\$8LIHl$(H$DD$0ff.HSHH[Ht3H{0uMILLLHHCH[HuDD$0Ld$ H\$8Hl$(L$LLH:H$AH\$HH{,]ID$Ht$IH9HLHTMKH\$ HDH[MvH&MAF% H9uI6H}quID$H\$ HD$1I}HL$LLEHt$H|$L$MAu HDEH{,HM`H]HUXHQ0H8HPH;S@uH$HHC0C,^fDH\$HHPLu-Hx0tBHt8HP @L;rrL;rr$HHuLL!HuHLLHL$L$o%LLܫHsfDH_H$PHT$HzE$(HHdHt$1HBHH7H90uH9h uH|$H9xuًxu΃IDHDHC0H$HD)A fL1D$ rdIHHiDD$ ^M$fDA$PA$cBH|$(DD$ xDD$ HI^ H5 HDD$ )H|$(DD$ M$(DD$ HI H5HBDD$ I$M$oLDD$ DD$ uRA$ffMLHHL,Hl$ f.LU0MADŽ$LDD$ [E$DD$ AHsCII$11tDD$ HHpHHE1ff.LNIA8HPI9rHHI9sH)H9sHMHHuH6HuM]ICIEAC$H$H$fH$HH|Ld$ Hl$(LT$E1H=DD$ 誏DD$ LT$AoLT$1E1]H\$ I I$11DD$ &DD$ H}H@Hu*off.ff.HHJHPL;r(uHBIEBIDŽ$ADŽ$賏L[Xff.E1HC0H$HHU0H|$L.DD$ E1H|$LDD$ IDŽ$nLT$H3ff.@Ht$0t$0t$0t$0t$0AQMIHH1H8f.@ v+GW w(HHH19:HDfD@GW v͍'1vf1ff.fff.SHH HG(HHCHtNHHtBHHt9HPHHH1HGHxHHP0tcD$< t:HCHt=w#Ht 1HH [@1H*ufH [HjH=Oˌff.HhHGP~H@Hx@vuY111@1H H0 H@t$@H5 H4$HHL$HT$HD$D$H]HhHQjdH= SH:HH5miuC[ff.ATUHSH>HH{|HC Hx HEP@HHL AD$HC HpHs PHID$HH,L ID$HH HXHf~HHD8 []A\D[1]A\fH~H5~ph,HEH{ P@uHHL HC HpUHs QHID$HHL -ID$6YUHSHHH>H{upHC Hx HEPXHHH HC HxHEP@HHHH PDHK(HH[H5]hH1[]H~H5N@g^HEH{ P@uHC HxHEP@HHH HC HxHEP@HHH PHC HxHEP@HFHF(1Ƀx@uxHtHHHH5C讔H@AWAVAUATIUHSH8HxLHHHH~@vHF`H H9HH@8EHHHPhfHHlx)HdEHHHqLL$LL$uDLAI@I$D$$1M$M$HD$@HEPHEm I$8HCHHHQ`HAXHB0HH$H@PPHH讚HuH1{L?fHD$8I$LL$0@/HL$HLHLL$迉LL$ zH=4|I$HuHI$HH tHE(HK H=HuH1QhHE(I$HuHHxXH@`H}0HHx0H$H@PP*Le I$HI$oH=t{M$NHKYH=j{H3Y/H=R{HYH=:{HYH="{HX#H= {HXVH=vzfHHH~P1H@}w0dvHfHw1HTHcHfDH9t H(u-@%wcv,%w'HTHcHH-(btH1HH=X&kz1Hf.HHuH1HHHHQHHHHHYH!HIHHَHHiHِHyHAH HHHH H9HHHHH)HAWIIAVAUATUSLHLD$pHL$PD$MtA@h<HF!A"Hxxu A9(HH#(upHD$`HLpL9r@M4A>A~AEME(Ix@9tff.)H[]A\A]A^A_f.AEtӃ'tuɃ|$X DwD$XtHD$`HA&L-QOcdMADH~jHLjPt$xL$H 1H[]A\A]A^A_AHHD$`HHdL|$`IoH;l$hPM\AkEcA+H H9B@<@E#<AADt7AgAE[EAAD1@L|$`Dc,M_ LHL9L)M MAyE˄DI+0I&fDAHT$@I6AQHLp As t$xL$HT$(葌H 1wfDMDwAvE9f.EIx@D$XDHRRH=5tH6LHL9J@(ELEAAAAAD=A+AEA)A1A{UfDAHLHL9J@A|>AD<m)H]LHL9J@OELA_H5AD=t AA),f.9gEukHD$`DDwHNE|$Xt\D$X9DwfA9D)DAEtA(ujA;Lp L9r@wAAAAE[A<D@:E#<AADAgAE[EAAA1A0AHA{@@@A;IDI7)RA{uD$X#D]ff.fAUATIUHSHH^`HtOL-`ff.HHt,HCxuLHH<uH1[]A\A]HHL[]A\A]c{AWAVAUATUSHH|$< LV(HIAz@gAzH\HT$HHBxuHHt ?<tH=LT$JpLT$IH@HHP H$HD$LIChHD$ IPHD$0AExH@LLL9u D$|MMH\$Ll$IHl$HLfIMDD$EHIˉH\$(H I1HH9 A9HT$(Ht$DD$8HKEIHt@DD$8< {1A+IMHH$HT$HL$@HD$8H<HBP@HD$LH(EQ@AAyHuHT$HBxbHHR HL$@?<;H|$DT$xƒT$}IUHHT$XHT$8HT 2HT$`@t$~ljt$TD$@T$@!ЈD$PHo HLL$pHL$h*sHL$hALL$pDT$xF<D$\ |$P HD$8HQ|$}L@ |$@AD$h@  Es =X |$}|$T D$~<s ImHQH|$8@4IUDHD$I}H@HHPPD$XAIED$D$|LHMIH$Pt$(Ht$ H|$(`ZYHjATSAVAUjH$PLD$`LL$pH$HT$XHt$HH|$PH@AH9l$+s|+wwH5GHcHDLl$1mIH$H9pHt L2@AM)1HĘ[]A\A]A^A_HDžHtIM9#Ll$H\$Hl$HH$IH9pH1|$|\HpHIU@HH;tHmfD!Aك҃HFHCH99tKH35DHD$t HD$H!u1A}!THHD$HT$H{h )$Ht$E1HH\$HT$(HDD$@L$8H\@HpHXADD$@L$8HHDD$LIfH' { HD$mH)HD$P$HD$ƃ@{h  HT$B$ fKlHD$HH xCkǃt HT$B$tHCP}HH#ShHH9\ O@FC0</ 'HC(HSH=Ht$Ll$H1xiYf.HKlHCP)HD$0HC<wfH[(C<vE1A txKkA+{h  $m+IMHt$HH|$cLl$KkHt$LHRHHtHt$ H|$L1&CDD$8H HCHH#ChH HChfDIMHt$HH|$_IM9]59t`ƃt:t5Ll$HHSHt$H=1@vgutuHs 9dHtHD$Ht$(HH 0off.@HD$PHT$H$5(H{h E1{CkHt$H=1Ll$6u@){h Km$HD$uHD$@$eE1H`HHtHT$H9PH}X DD$8L$(HYHfDD$8L$(HHT$HHP@HPt EH@Hƒt+Sm] uFICl ?{5Ck+KmH&d$[HD$H:?"HD$HHXHH|$(H H81҃ƒhH|$H$LLT$*LT$HPHH9|$|IH$H;pHL)EH|$T$TL$PN LD$@K4LL$8H%HAHT$LL$8LD$@L$PHHXLH HLH HLH HT$THX{h 1HH9C(||$P=HD$8HQLAD$h=T$}|$@@t$P I9*Cm u#uCku |$ E= @T$T=&D$h< к Ht$`D$XADЉT$XHt$HL$pILL$h7|$PLL$hHL$pDT$xH HD$8HQLAD$h=T$}A|$@D$P -ILl$IWHt$H= 1p=C`@wDD$Pu @D$THT$` E0к |$TtD$~<&Iw@ ImHQHt$ H|$H1Ll$H#A t==H=D$PHt$ H|$L1<H!ZIEgHP|HSHt$H= 1Ll$4o`tHD$@$+AW1HʹAVIAUATUSH(IH|$hHHD$xHD$`HeH$H_H$DŽ$AFDBHIFMML`HHIFHx@|E1E11Ht$`HLD$`H$MHD$LL\$PHT$0L|$8Ll$@LD$HLKIHBHx@H5zIH5ME@1HLLR}HH'IM@DCL9DD$LD$SH3LHL$(T$$HT$X;D\$$HL$(LD$DT$HsHT$XLLD$DT$:DT$LD$D\$$HL$(X'1H([]A\A]A^A_@L1҉EHILmD]DU L}HD$HE(HHD$H$Hu0H0HHT$0L|$8Ll$@LD$HHMLAUHL$Ht$蚓ZYeIM@HfA?5uzHD$PHt$xPHHL$HpL9QHL$H HLmH0EHEHD$HML}HuHDHD$H<DfA?H MtED$HL$L9DD$$LD$s5LH0=HuHMtIM@DAT$I4$LT$(HT$X8D\$(HL$LD$DT$$HIt$HT$XLHL$(D\$$DT$8DT$LD$D\$$HL$(VLLLRH{fD1fHD$PHtVxPHH $HphL@8H $u8HyLmEHEHE(L}H$fHAHLmEHEHD$HM(HDL}HD$H$hfHT$0LD$HMLL|$8Ll$@HT$LD$G.u~Xtf.H ]QHu H@Htf.HH~P1QHHhIHtAHFHpHxH|HHH9r H2HH!HA0L)1ff.fAWAVAUATUSHH|$ L$A)uLF(IAx@t1H[]A\A]A^A_fDAxHuHBI҃xMLMA ?<IAh1AIHD$hIPHD$XIXHD$`I H$LLT$LL$LD$BLD$LL$LT$A$AGxH@IDI9HD$0MH|$`LD$@M$$H$H$LL$8LT$(L|$I]덅$ P%"EHD$HH$HH-&L$H|$ LT$pLL\$PL\$PLT$p\LT$pLL\$P"6LT$pH)D$L\$P-E1HD$@MEHHP`H@XHB0HD$\E1L\$HHLjARLT$0AWt$PAUjH$ PL$L$HL$@HT$PHt$hUH@$LT$L\$HH\$@"u9tG H=֦2KIEH$THD!gHeH@t&I^0IIMEMIGPHH\$@HHH8HIHJ`HBXHA0HD$HjLL$(HL$HT$ Ht$8H|$-_AXÃ1iA4$HD$HP`H@XHB0IEHDŽ$H$HD$@H@HD$HHH0#L$H|$ LT$pLL\$P聼MLT$pL\$P"$rA4$ HD$@$x HT$It$PI|$(dMEHHD$AGiff.I^M9wAoEAIEIF`@Ht$XHHH)I|$@LLMM'(H$JTBD + VIUH$DHD$ It$PLI|$(HT$H@L$MULHPlLHA[LLT$pL\$P(MEH)D$L\$PLT$p*fDLT$(L|$LIHALLH=$1M&HHD$@HH[XH\$xHA`H5ELL$1LD$H8HT$LT$LL$LD$;I@LLLT$pL\$P[L\$PLT$pHH\$@MGPHHH\$@HD$pMEHHD$;A4$PD$HHD$`HD$@HH`H\$@HHH|$@MEHHJ`H+ZXH+Y0HXXH@`HX0H\$HT$It$PLD$PI|$(LD$PHH؃"HDHD$,LT$(L|$LL&I|$H M~MML' ( H$JT=H$JT  BVIUDHD$ It$PLI|$(HT$H@L $MMLPP LHHAMD$PqH H=;H|$`,Ht$`H H$HuH$HWH4He+FHH$Ȁ|$PDuDHD$@H$ILHtHI^0IIP`Hz0H+xXH@`IxXH+x0HD$ HH@PP< H=pL$D$L$H$H$.L$D$L$H$H$2 H= L$D$L$H$F.HD$@L$D$L$HH$HIHt$LLLLLL$_;LL$@D$PH$AffFH|$PHAH$HDIuHD$@D3HHI^HHz`H0H+xXH@`HzXH+x0HD$ HH@PPA|$HD$@HDŽ$H@\HD$HHHHL$H|$ LT$pLL\$P萟L\$PLT$pHLHA1$AH$H4L$1D$L$H$D$RPD$D$xH$H|$ DL$LL$H$Ӟ|$PL$H$L$D$L$@HD$ 1H@HPPHD$@HHHt@LL$D$L$HL$x{H|$H$H)H$H$L$H$H|$ LH$HL$xL$D$L$AWi҃"LT$(IOHI<uHpLH=-1V:+UMAG@=1LLL$DL$xL$pL\$P蹶L\$PL$pDL$xL$1HDŽ$f)$=AGl4VLLLT$xL$pL\$PHL\$PL$pLT$xA$BHD$@HA H=L$D$L$H$)L$L$D$L$H$MLT$(L|$ISIuH$IUDHD$MLT$(LL|$MKH=L@ L1L8 H=)Mop H=L$D$H$L$HL$x(L$D$H$L$HL$xA%fUMMM~AAGk <wrMMM~H$IUD H=(Ht$hLL$ L$H5MEIE1Ht$LLLL$LkqL\$pLT$P5LT$PL\$piHt$LLLL8qL\$pLL$PLT$4L\$pLL$PLT$LLT$(MIKH{\H~I9G(HAG`8AGiLT$(MHk<tHk<t,HktHuIKLH=1/6'.H0 H=L&Hq H=4&HY H=&HA` H=&H) H=h&H. H=ԁP&H H=8&HV H= &HH=&H* H=t%H H=\%H H=D%Hi H=,%HQ H=%H9 H=x%H!H=`%R vWB voB vo'v8HHF1HH=Y4%1HH Hs8H;uHFÐBBf.fAVAUIATIUHSHGHHHxDH{AHEID$EtbHEID$H{H{HEC EC EID$E=t6=wE[]A\A]A^D-EfDMtID$LE1ff.AUATIUHSHHHGoH~HxDID$H{AfE8ID$H{fE:ID$H{HE(ID$EHEID$H{H{ HEID$H{$HE ID$H{(HE0ID$H{*EHHEA|$HsHEI|$HsHEI|$Hs HEI|$HsHEI|$ HsHEA|$(HsHEA|$,HsHEI|$0Hs HEI|$8Hs$[]HA\fATIUHSHGHHH{HEID$HEHE[]A\fATIUHSHGHHH{HEID$H{HEID$HE[]A\ATIUHSHEHH>HHEI|$Hs[]HA\fATIUHSHEHH>HHEI|$HsHEI|$Hs[]HA\fDATIUHSHGHHH{HEID$HE[]A\f.ATIUHSHEHH>HHEI|$Hs[]HA\fAUIATIUHSHHID$H~HID$H}HsID$H}HsEC EC }=wMt/ID$LID$HsHH[]A\A]HH=hAUATIUHSHHHGHHxDH}ID$AH}CID$H} HCID$EHCID$H}H}HCID${HC unID$H}H}C(ID$H} C,ID$H}$HC0ID$fHC8C@H[]A\A]ÐgDL@HtHSH9s*AD$J@pLH=1+AL$J@TfH)H;C Eǐ:gAWAVAUATUHSHF$1Nx&H~pHIILXpM!ID$IS8HxHHHIs AELLT$L\$ L\$LT$HIICHAS HD$ HHD$HD$AD$DBt HE0HD$Ex)HD$XL\$(E1HD$HD$8H\$HLT$@DHt$8LHT$^TAƅHEHHHt(IL$H9HtHLDT$4ǍDT$4HCH}HL$(LCyAHT$LHSHt$`LD$pIDHT$`LHD$hHD$HD$ ID;mx0HEpHL$JHHHT$XH9H=hqH9z HzBE1LT$LT$AHĈ[]A\A]A^A_fDLXXPf  I8HH9HKHL1H=DT$4(HD$@HCLCDT$4f.EKLT$@A:fH\$HLT$@HLT$HLLT$AHD$ HHD$ZHH=cfDAWAVAUATUSHHHHHHLuX11H7t1HH[]A\A]A^A_Hھ4H:H4uѸCFuȋED=vIB,EL=v IHJ UPv IP(ELH4HHHIHsELtuME1ff.@K4LHII(ELA9rL$IHu 1H6HLL9L9f.E1ff.AWIAVAUATUSHhHGHt$0HxT$H\HHHHh1HHL$ J1HHD$(H|$(uHD$ H@ HD$HHD$(H1E1E1jLt$8LHt$0LmHD$HZYH`IHLdIHHt0HS HL$(HD$HH9.LH=1%L\$HD$@HD$HL$(HD$8MAHHL` HI9!L\$HLMHL$IAoAF0AoGM&AF@I$HIGH IFAwIIFHkIF AD$DBt IF H@0I)FAG=?AWttANff.f< wHcHDAN@|$tANI$HHIID$LPXfAFXHEhHtLLHD$I I`II9L\$HMHM)LMHHHEpHtL\$LދT$(LL\$HD$0HtSM~BHf.HHLXI`H1HHHL$0HNHDHD$0HD$0HH|$@HD$ HL$8H9HHtIHHhH[]A\A]A^A_fDANANANAF@ AFsAN@cAFf.ANCAN6fDHEpHHD$@1E1E1HD$8@I$HLLHIF AD$DFfDHt$ 1LLfHD$HHHT$^LD$^HD$fAFXD /AN"fL8IF Hkff.HyiP@ANANfDH)gIF AD$DuIWIV\@H5UL)HtIF AD$DDD HX1HL$ EtH t Ht" t HtH1L?sFIHHD$(JH;Hs1L]0u{LLc 5L\$Ht L9;LL\$L\$HHD$@HIt/LL1INL\$LI9HL$NL\$H{ [HD$@WH-H|$0tzHD$@1HD$81 H5&TLHoMH|$@HD$ HL$8H9HHtIHt HHHD$@1HD$8HEp1E1H>H|$0uL\$aff.AWAVAUMATIUSHHhHGHt$(D$Hr1HL$LL$ HxDt$3.tHh1[]A\A]A^A_fHM|$ #3Ht L9=L}HtHLHHD$/LL$I9yID$8AǃEMIcDE1H|$LT$@D$4LL$8LT$HL$p@HfHD$PIUIEA 2HEPHHT$LHЄI}HD$AHL$I IDH9$A HCLI|$HD$@HCHD$PHD$HIHD$@CDBt|$3u Ht$(H+F0IIE/Ht$ D$4JTL9HT$(DH1H=DEHEHHLL$8LHT$LHLD$H^fDHEHHHEPH@H==XLL$ LL$-LL$8LHh[]A\A]A^A_ fAWAVAUATUSH(LnhMtH([]A\A]A^A_DHGIHIщLxHF$tNxtLpXLhpM%M^8MMIE8H$HIE 1H4$H$LH9mHI;VtnI9UthH=WLL$HD$L\$ L\$HD$LL$7H~@ Hp8IHH@ 1H$HIHHH;LLL$L\${IHML\$LL$@t=HLHLUILLL$(L\$HD$ ^_L\$LT$LL$tsMt=HLLHUHHL$LMLL$ LT$PZYLT$LL$t1L$LHLAL$tLSh_ H(1[]A\A]A^A_fDH$E1IF 1IHIMttIE8H$H%H9uHHI9V3DMtIu8HwIE 1HH$H9aHH$E1DH9@H$HI9V0AUATIUHSHHHGHHxDH{HEID$AH{HEID$H{HEID$EteH{ HEID$HE ID$H{H{HE(ID$H{HE0ID$HE8H[]A\A]@H{ HEID$DAUE1ATIUHSHHHGHx@uLn I<$HHEI|$HsHEI|$HsHEHs LHEI|$(HsHEI|$0HsHEI|$HsHEI|$8HsHH[]A\A]DtyAUBATAUIHSIHIH(IfDH@L9t7LHHH L)H tH([]A\A]H(1[]A\A]1AWAVIAUATIUHSHLL$AoIGXLI_`)$AoGHD$ )$AoG )$AoG0)$AoG@)$IGPf$H$HD$@HHD$XH|$L4AGDt5HIHfDLLLI@L LL9uI1ۋDHL$(u8?Ht$HLHt$8LHD$(HH9 HD$ HT$LLHo)$o@Dx)$o@ )$o@0HH )$o@@HL$)$H@HHDŽ$HD$H|$L(AZHD$E1HD$8H&LdIH*HHAg$HT$8LLHD$8HDH[]A\A]A^A_fAWH4AVAUATUSHHLl$pL%H4|$pt&1H[]A\A]A^A_|$qEuӀ|$rLù|$sFuŀ|$vu|$tuD$u<<uHCDHEuHAĄtHLHHzE8ffH} 3fQDELEDHSLxIHz (AM U:9t&A@t9tAD9uufJfuKD@}DtKDAu1HlAE Lu I3(ELMPUDHH@`EP H} 3HADDAwAE9DHu#HCxKD}H(AEU9KDH4HHrHD$H~ULLHADL4LT$HT$}rIGXLIX;Ht$HrIHHHHHD$t$fo$Hfo$@fo$@ fo$@0fo$@@1t+ff.HHHPHIXH4HL9uHD$}LALxPHD$@HD$wdDAW I t+t'At IG1I+GIu Ht cDfDAIPD;uLPH|$Hھ(!H(Ht$LHAG(L$9r/AU >HL@H-IG@3L$A9O,;1LHoL|$@Hھ(LL|$!H(KH$LHdELu&H$JULЁ H }Pu $UP}DF=333HI4H9u 1HH|$Hھ(Z H(HE 1HHp(uHXZIE`Ht HЄDHuHHHu@tHmHt2HB ur,tHHt@% t΁M$ HlH"uDHD$Ht HH9LHHnIF`HHx`Hu1HHLx`EDHD$ D$E1HD$"H)I;OD$EDAI@A9H|$Hھ H Ht$LHIW8HHH!H9t IG8CJ@tIG(HtHL$H9sDd$HH=z1 KJ@HEP;DsHL$HH|EPCJ@HH=1z1 KJ@|$H} }PHHR`HHHH H@H9H>uH~(LD$HjzD$UDAWAVAUI1ATULSHHHT$ L|$PHL$4LLD$Յ|$Pt(1HH[]A\A]A^A_|$QEuр|$RLuʀ|$SFuÀ|$Vu|$TuD$U<<uHCHuH$LH$ xD$EgK<HjHD$@HHSH$MILLAąHD$@ILl$HHD$0HD$J 0IHD$8IIIHD$(I@I M9LLHQI<$uIT$ID$(HH9D$s HD$Ld$(H|$8uMD$8ID$Iv|$IHH!H!Hu|$1HL$HLd$8HH)HL$0nfDAKfD 8fDHCxDH|$LH$H|$HHt?$$HT$(HHB(H|$HH;B0yH|$HL$ jDd$HL$ HIBHH\$LLt$8HIH@H9H;uHSHs(HCHL9taMLH9\$(HDt$HL$0H)1IHLH<AׅtH|$@AL 'D0H)M1fDH|$@H\$HL$HH9L$foD$PAEfoD$`AEfoD$pAE $AE0gIHHHH5CHHHHC1HEHD$Ml$I$HUHEHH#EDH LeHEXHEDKMIHE8HD$HHL$0HHD$Hf11D$pf$f$LLxH|$@iD lH|$@H^SH|$@/DHH9|$ sLHSH|$(HxHGHR H^H9UHDHH!H9HD$HCHD$4HD$ HD$%D@H7@HHHH H@ff.fHH ff.@HH @ff.ATUSHFH9GuzHH0HHtH0HtHH;tlHH L`Mt,H]/HLHHPHEH[]A\[1]A\HH¸xfAWH4AVAUATUSHHHl$@HH4|$@t&\1H[]A\A]A^A_|$AEuӀ|$BLù|$CFuŀ|$DuD$E<<uHCp uHtLHHLVHCAW:HxE 9@t9D9uw9I.fA8"A@ Iw AGDHt =RvV=IWpHHH91HL$Hھ LDH Iw1H|AwDHHdHD$HHwHIE1L$HH`AODu*DLLHAI@E;gDHھ LH tDPHCx 2DEAW9qtH31HLd$Hھ(LH(|L$LHLb$AGDEu1Hu U 2HE`Ht HЄAGDLd$1u*I@A;oDsLH覥uHuHtFAWDt>HL$HHf.HQ(HtHqH9s4II)I9r)H@H9uIGHH_yAGDeHH=Xo19KJ@AW1AVAUATUHSHHt1H[]A\A]A^A_f.Ld$ Hھ4LH4ttA|$ u|$!Eu߀|$"Lu؀|$#Fuр|$&uʀ|$$uD$%<<uHC@uHT$`LHR$ F$7HHHISaIHLl$x1HILI MIfDI@I M9Hھ LH LLHI<$uIT$(HtIt$IL$8HH詢1LHvH0tdHCxf.f.f1FuB!@ATIUHSHGHHH{HEID$H{HEID$fE[]A\ATIUHSHEHH>HHEI|$HsHEA|$Hs[ ]A\fATIH~UHSID$HH{fID$H{ID$H{HID$H{HID$H{ fID$HHtHt!ID$H{f[]A\fDfHDžff.H@pff.fff.f9DfGf!f5z!f!fu!f fL!f!Ѓff.1ff.fHHP0HHH0H9r1H9ff.@HHH@HRHt%Ht HHHRH9r1H9D1D1ff.fGIDAVAUATUSHBfVHIIH H+lIHL,AEtbHV0IMApt[AEHII+PIfuaHE`HHHyuXHH+IEMAPuGIxt MAEt0I)fftf tnHL[]A\A]A^fDfuHE`HHPzuHHI)Mu^H=IHL[]A\A]A^fDMtAD$<AHI~1uH@9tff.H@H@9uH@`H@0I)HL[]A\A]A^fDHE`HHPzHHAEHIff HI)fuHF`HHPzHHI)E1chfDID$(H@`H@0fD.H=*HLL$L$FAEL$LL$uCf)IAHHPCIyfff TfAVHAUATUHSHJ HLfA%t)A<$LnuMu-MuK[]A\A]A^DMA<$LnuIQzuIL+f.LpLHLLKAD$I<tk<<AAD$!D1A"D$1AXAL$уHNIIB+H+JIHCLPXA|$L!D1fA#|$1HCHPhfD[]A\A]A^fHCLP@I|$LH!LH1I#|$H1HCPPEl$AAH7H=E6fDHHJH=E@HHtUHHO HG(HNhFxHHHЃN$HO HG(H;sfH=EPHH=|EfDAWAVIAUMATUSH(LL$`HL$h<tAnxIIILH>HLI9 ff.ff{ 1fCHCHI$H;F(HH4HF<HF(H9HHp`H9IHu@H@HH9uLH3I+v0HL$LL$LT$L$XHL$LL$H=LT$L$ff.H H9HL$hLLLLL$`H(ML[]A\A]A^A_HH([]A\A]A^A_@@(f%f-f11fSHH@CH{0:H[1SHbVHHtvfoH g@uHlfo}|fo~foHSHHxRqPp[1[ff.AWAVAUATIUSH8HGHxHHYPҽEAI$AT$D~}qXHE$t$ Ht 5I$vEt Ad$DI$HE1ff.@H@DAHuzHRIH(I$Hx1DуIH@HuIHDH LHHD$fA$EHD$LAI41:HHHAHx@I$tDAHH9tNHHH@HuH@I$fAT$DQTHxALID$HxD;D$ DII$HDEE11MLT$ MHLD$HD$AHC01H)IJH׉HH!EK|HLLHI!L9MM<9D$ H;L6Lk@H5$@nu K(fC0M9I D$ D$ H[HLMIuPH H>uHC@HC$tHK@HKHHtEL$DALMCEAL H|$LH#|$IMtAF$tLL)IN@HK@AtLLH!HHIrHL$HH#T$H9IID$ I)M,fXLQHIHH81[]A\A]A^A_LQIEPHHpPHIHL!1f.IHDT$ MHIvKI$HB0AL$IH8[]A\A]A^A_DRAVIFHfDDL1H==D1IwLD$/H|$/LH4E1fLAWAVIAUATULSHHH$HL$GII>H5==臼u_L,$IMd-H(@II9r%MlMIF8M)I~HCLP@HuM9tOH=<IHuH[]A\A]A^A_@HD$1HHu7HtH<$HHH9H[]A\A]A^A_ÐkH1[]A\A]A^A_L,$_fF Lt IfDf.AWEAVAIAUAATUHSHH@$HH1LH5Lc8Lk`D$DL$LAHHLcH-IwHDHH+H@HIw HcH@DL$D$EOAEM(AMAE MeHHK@ED$I$HCPHSpIt$Il$ HMl$0HHLbHCPJD6HC8HHC`8HK@HSpHH;sHH[]A\A]A^A_Ð2H=e4DD$ H$DL$QDD$ H$DL$fDH_H=)4[]A\A]A^A_fUSHH HkH}起H護HCH[]ff.AVAAUAATIUHSH?$HHDHEA IT$IL$C|HLHBH9LHAID$AT$xHLAJHAL$xIL$HHHHQHHXID$H9r>HAHLH583AD$@HB(H[]A\A]A^DH=2DyH=22fAWIAVAUIATEUSHHo(Lw HIHH?MnIFKDM>1IFLmHMHtC(fUC(wH[]A\A]A^A_fDHH= 2[]A\A]A^A_fSLAtCu1[@ H=1Ct H=11[ff.?wHHcHfHH=F1k1H@H9UHUHUHUHIUH!THSH9SHQSAWAVIAUATUSHHJ4H,IIĸHHb(HL CIHIH@(H4H>L\CIHIHP(A҅L$$L1DT$E1T$-L|$MDH $HA,H)L3L$AD$ID$LHCAt$ I\$LCHC HCC@AT$(wwBH=Hc He1HH[]A\A]A^A_fA|$&DHLCL1H=D$-CID$HCLc0HHHCHCAD$)ElD$A9ML$$L|$T$-IL8ML` AL@MCT$/LMIfAItH=w.AIGILHxHhHD$HALpH@IHEIEIHD$0E1D$-H$L1ED$.H\$IHD$D$LL$ I$HT$0H;P(Hx H4H)H4FHnHH9A$HHH9{D$H}8ImtHULH=1HEHL$Lm8H9HD$ T$.IAHE;dID$H$HLHxPHD$8IEAE@HD$0I+F0IEA|$ uCID$HCtIt$LH_H$HCHC AD$(Ef1HH=q$@!к@H‰$@fDHCH$fIH HCH$jH$lH$HCHIHt L9 LHN/HHHLHI9kIwHB|=Lh/M9&IILMt1M9ELCDAAD$ AgAtMA>-IHHwLHD$(jLHD$]HL$(HT$HH HHv J| EuLHH@HuDŽ$4ApPAFD6 1LIHW E1D$WH$`HD$HD$8HD$HHD$0D$D$(H$Ld$XDL$H+H5 E1H蛌uID$(AǀdH<$H$4IH+DhpEtwH6IHvfHT$HHl$pH51HuH<$H褈H|$L)H9B HD$H+Dl$WJD HD$H5 Hȋ1tHC0H$pHk@Ƅ$HH$xHDŽ$hHtH@PHt HH$hHC@Dc$Ht1AtHfnCxH5A~A@BflfHnD$DH$% )$D$ )$D L;D$L蘇tdH5L耇tLH5Lht4H5 LPtH5L8H5LL$YH5LBH5L+HD$8HDHD$8AFDBS| 9IFƒL H$HHH9tOILHHE<7H LH=_1H$xHG$4S$H[H1Ld$XHDŽ$8f$RDL$AFD^|$( T$1Ƀf$PEIH<$  LE1HLf$R责DŽ$` LEAf$0IL`|$WRxs1 Hx(H L$@H|$0HtHW@H$hHtHW0H$H|$HHtHW@H$pHtHW0H$H|$8Ht#HW@H$xHtHW0H;$ IH$HP(HH$HHtL11LIFHxhPHHHIFH$HLHxP8LHHXHH蝋IFHxBPH9FAFD8jTHHHH4$HL?HLHHH7IFHx@TH91Ҿ<LD$pH|$fL? \$fDcX1LLh1LD$pHD$pHH$QHW1҉L+C11IHk E11LL LL3 PLDDHI49H߉H9tD)׃u ىHIuff.ff.DHvHHNxvHvHT HufH\$0+fDIFLd$pH4$LLHxhXPHtLHLH9D1H[]A\A]A^A_@EIEaE1Lt$ E1IމT$@LE(ff.ff.AHE9LmM9u uI6I}HHDruIuHF@uHtMm0MtAEtA})tA}(ufA}&uET$@ILLt$ E9AE< AENI9fLes&HEHL)HHHH)H|M'2fH\$H{fDLLt$ H LH=oY1H辦YfIHT$H$Zf$`H$ff.DHH=HH? HH9uf.ApTDDEEDDAA@HA IIAˀMDLHELEELLHHDHIH LEID!H=觤S$ AEN) AENL蚿MFIV|$(HxJTO|$҃HDŽ$81f$RAFD1D$WH$`f$PHD$0HD$HHD$8H$>MxIHP(Hf$RH$@Ht$`L:LL2L"MHcD$`MbHLd$@MMHD$(HHD$ ID$pI$1LHD$lIAD$xfztt =%H|$xE1H|$LLMIHFIE0HD$pH H9B  HHZ(Hc@H\$xH9cHFHt f$H\$fHt$pHHHEHHHxpdHHEHx@dH9IE;exHD$fJ4HD$H@HHHIH9*'HD$(HLrL<IHH|$ Ht$HT$XHHIHHHxLuHt$IE0HFL>HD$pMIHDI@DL$ LDLMHELEHL$HLH=XT1i1ɀ|$҃T|$҃BH$]LAIHx(LHFIE0HD$pBHD$xHt$HT$XIFD$WHD$0HD$HHxHD$8@Tf$PH$`H$QHH1H=SdMIMd$MLd$@MIHP(H|$WIEH\$ffLHt$pHD$xHDŽ$HD$pIGLHHxpdHIGHx@dH9AD$xlI@RL1LL\$p苾H<$LH1\$fAWIAVAUATMUSHHH(HnHH5KHT$HL$(xD$tH5QHx@3@HmD$Aff.fIII!LHH!IQI aMt8I w2H JcHH HT$LH=S1YD$HuDIG@@H|$ H5x‰ DMtA$D$H([]A\A]A^A_f.IKIIeI\IHHTHKLI>IWLHXHxQ\HP(MM9HD$gH$Ld$XMHD$H$H\$pMHD$@Hl$HLL$8Dl$THt$ fDI}Hu{I}0$KxHtHuHxyuWIWHL$8LHHxH)ȋr\HHIEHwHPHHT$0: HHtHT$0H%zHI}@IGHx$A\IM9EHLLQHT$HLlHH$Ht$ $IHIHL(M$Ƅ$PLT$0T$P LT$0IIHT$PHP8vHPHHT$0+ HHtHT$0HyHNj$I}0IEHAEfoD$pAEfo$AEH$IE(fICDI@IDDH9@I@{IDI DDHbfDLt$H5)LgttH5t LOt)@@D̀|$DDHAHh A#|$DEHGfH54HsH5HsH5HsH5HxsH5H\sD$AHAHfDI9DDHe IDDHI@H 9I}H 2e@|$uH|$H5u\A HLHL$1H LH=L{HDAHH @IH$HHD$($HH@(PC&H{<HSHHHT$tWHK@HHL$ rLHpIHIHL$(HT$HxHHF8Ht$ HPIVH8uD k8D$H H vfDLH=J1/f.HS0LH=2K1 fDIGHxp\LL9*LT$0HE1L$$t$HA$ZYLT$0<H 'z H HH5HIHHfDAH$Hl$HDl$TLd$XHl$HDl$TLd$XHt$ ILs0H|$LsHL$LL1H=JHLH=I1訤%f.f.f.DH HF01H9rHHH9‰ff.H HF01H9r HF@H9‰DAWHAIAVAUATUSHZH8Ht$LD$ H9IHHz ID$PXH}IID$PXD$Fl(IGHD$ALsM9D$A9rLID$HP@HǩHD$HHGL9sPHD$H9rFID$PX=w4ID$I~P@H©tVHt$HH9s L9fHD$H9LHBAL9DH9HHCH8[]A\A]A^A_HL$HDL9sID$H<HT$(P@HL$HT$(HID$H|P@HL$HHD$ H)HzDHD$ H)HD$HLD$ LLHHHUHSH H_HtHCD{uH[(HtfH{ H[(HuH]0Ht{uH[(HuH[]ÐH{ WDff.@ATMUHHSHc~Ht?HHt3HRPHt*HHHHcHtHP0D)HH$ []A\fF%tZHF@ATUHSHH9r?H)IH9r4H¸Ht$HH9rH)H9rH)L91[]A\Ð1ff.fAWAVAUIATIUSHI$HwA}H@PPID$1HpI$H@PPID$A}HpI$H@PhID$A} Hp I$H@PhID$A}Hp I$H@PhID$A}(HpI$H@PhID$AmM}HXAE(D4IIMt$u#[fDLHLHM(t:Mt A?uھ)H=qt-H=tSMt.H=^=Im0E}(HtPEtaL-@#fHHLHHm(At:Ht}tپ4Lf.Et8H=ʏHt9H=贏I9tH:H=[]A\A]A^A_鐏H[]A\A]A^A_ÐATIUHSHH:H@H@PH H+{HHHs }H@PhHC HuHxE(mEDHC H}It$HSH@H@Pt3H{H)HHu H[]A\eDzfH{H)HHm HsH{(H@H+{{0PPHC}HpHH@PPHC}HpHH@PPHC1Hp HH@PPHCH{(UHuWlEHC([]A\DAWAVAUATUHiSH8I@L $H9rHH8[]A\A]A^A_fDHMAI1A+$LH5IoAAELH=nIEH{PXH{ HD$IEPXH{ HD$IEPXH{HD$(IEPXH{HD$ IEP@HHD$IEP@L$L1Qt$VLD$0H5_BLL$8HL$(nD$AYIA[LTAGD|$D$MRfDIT$IhHBH9s'HLMt$T$LIT$_AXH9HBH9IM9uD|$D$MAGMD$MPf.IWIhHBH9s"H1LMt$T$LIWY^H9HBH9 IM9uI9HIC fDDH5`L1mID$fLH=-lH9s H96HH([]A\A]A^A_AN<MwL;uHH5u?1kHEH([]HA\A]A^A_H5H1k;fN$>IT$H9xI9oIEI|$P@I|$HD$IEP@LIIEP@HT$H5?HILRDAVL$(HD$1kIEI|$ P@YHU^HuuH$LL$HMI)KHH9rYH}LHMfT$L $H(ILH[]A\A]A^A_fL}HBT$H5DH1kjHEH\ff.AWMAVMAUIATIUHSHHHGHP@H{EID$P@H{EID$PXH{ EID$PXH{ E ID$PXH{HEID$PXE(HD$@HE@EuzfHEHÅu1fE0HH9HHCH[]A\A]A^A_fDH1Hu(IUMLAWAV[U(H HHHIٺUHuMLAWAV%U(H HEHÅ]@AWAVMAUIATUH8SHHHLD$L$T$HAMIEIǍA$IHt$Ll$ IDl$HD$LH)HD$8HEI~P@H$E/Iw0EHt$%HHBI9HEHT$HPXHT$AGHIWHEI~P@HD$AGH!HL$HIG ?HT$HMHAWL$HHeZYH9HBI9cHD$I9 IG(Ll$ M}HHH[]A\A]A^A_fAGHL$HIG HD$HHA I9HEHHL$P@HL$HD$(HEHyHL$0P@IW HL$0ƉHEHyHt$P@IW HL$(Ht$BHD$8H$H)H9r(H|$HT$0HT$0HBIG HxHu{HD$L9IBI98IIG(Ht4I@AGDHt$H+$HfHHL[]A\A]A^A_fDHD$HL$(HT$H+$H4HL$(3bHD$HL$(Ht$HH6fAWHGAVAUATUSHHH|$(HT$0HD$8@t$&HD$8E1Dd$'HD$HD$(HHLy(ID|$&A^ALMAA9ALjM|$EFA@EI\GL$$LMDt$II݉L$rff=w}$ffAw fwAD$f$f=zscAicA)E=IHM9tPEA$(D(fofAwfwAD$f$f=fM|$L<$\$)~yIG(D$'IF(HD$Mw(L8IG(M~(HD$MDd$'LHD$(HHEXHH[]A\A]A^A_DfAML<$A~EGEH=r81CHH[]A\A]A^A_騂L$$L~MM#@L$$LHB(HD$ID$(H,AL$LDpIfDEvA>HD$0HHP@H :HB0ff.fHH@@H8xIV IG 1E1AL4$HhLBL|$HT$ILDIff.ff.ff.DBl}CD6AHCD?IAD3E}fEtfEtE9uC6IuH{b]tL<$IG0HZH@@HM8DpH=61Dm%At$D$fA 8$3$fDHHP@HHB0fL4$L|$DHT$:,${HHIF Hl$HLt$L@IG LPLM(f.f1HfGLMt4MA4$Dt Dl6ftHLLM\HLuLt$D $Hl$IV H)DHH9tiH=~IV D $HzD $g`IF D $DHhHD$(M(HL$(M~(2LLe\HL-A>uH|$0 IG I^ H=>49 uHHH9KtIH=g41p~HD$(iIF(MM(HD$DMI։DPt1SH{HPHp HH{ HW(Hs f@@P(t1S(H{0HP0Hp8H{8HW(Hs8f@(@0{vH{Hھ>{(H{(H1&MIHHB0HH@@HD$@typeHl$@D$Ce: 8PLpBlILFH,$Ld$FDL-ZHL%XLLII<1]I9uAH,$HD$0HD$Lh@WD$MLdtyH name: HD$I$WA}D$Ld AUI]Bt;LtCL-LWHLHI<1\L9uHlWLdH lang: HI$QWA?AWH\MgBL-ZMtDt"HWLLIH<1z\M9uHH=21zUH;H@@H.8LxBH|$0M H=!21芊BHL$0HQ@H:zIW zu z(IV J]z(SHR0:FR;IW(HL$D$'IV(Mw(L9IO(M~(HL$HL$(M(M~($1HSHS0MDd$'LH5H1[EmLH51D$DZHUD$LdE DAUH51LZD`H|$F1D$H5LDZH$UD$HAREAH ^JcHH=P/1шLd$FHR0:jrZH (MANIFE@ST)HH (HTML)HH (ANIICOH@ON)mH (ANICURHHCURSOR)HHM (VX@XD);H (PLUGPL@AY)H"H (DLGINCHHNCLUDE)HHH (VERSIOH@ON)H (GROUP_HHP_ICON)HHfofoH (RCDATAf@)HH (ACCELEHHERATOR)HHqH (FONT)H_H (FONTDIH@IR)FH (STRINGf@)AH(H (DIALOGf@)HH (MENU)HH (ICON)HH (BITMAPf@)HH (CURSORf@)HAt&AH (TOOLBAH@AR)H (DLGINIH@IT)tAVAUATIUHSHH>uvHID$H~HCID$H}H} HCID$H}CID$fCEC US!HHGH1ID$H{HuH{HH t{teID$HuID$Hc{Hu ID${HuC EC!E[]A\HHLHSH5"=gH{H{H+x0H{Cef.AVfAUATIUSHl$0HHE EEgAAj;q2HGHH{EID$fE D0 ID$H{H{ fEID$H{ fEID$H{fEID$fEID$H{H{fEID$fE []A\A]A^Dt{HGHH{EID$fE AEwID$H{H{ HEID$ED0 gID$H{E[]A\A]A^ID$HHEH{EID$fE D0 tmALID$H{H{ HEID$Ef>ID$H~HE[]A\A]A^ID$H{H{ HEID$EfDH{EID$H{fEID$H{fEID$H{ EID$fE CE[]A\A]A^oEFfE[]A\A]A^AVf1AUATIUHSH\$0fCgAAjRqIID$>HID$} HsD0 ID$}HsID$}Hs ID$}Hs ID$}HsID$}HsID$} Hs[]A\A]A^ID$>HID$} HsAEID$H}HsID$}Hs D0 XID$}Hs[]A\A]A^ID$}HHEID$} HsD0 ALID$H}HsID$}Hs fD>HGH1ID$H}Hs[]A\A]A^ID$H}HsID$}Hs fDID$}HsID$}HsID$}HsID$} Hs EC[]A\A]A^fDHHHFHC[]A\A]A^@ATIUHSHGHHH{HEID$HE[]A\f.ATIUHSHEHH>HHEI|$Hs[]A\fDAWAVAUIATUHSHHHGHH{fEIEH{fEIEH{HEIEH{ HEIEH{HEIEH{HE IEH{HE(IEoEoMH{HE0HEfCCHE(HIEH{ HIEH{$IEH{(IEH{*fIEH{,fIEH{.fIEH{0fIEH{2f IEH{4f"IEH{8$IEH{<(IEH{@,IEH{D0IEH{Ff4IEH{Hf6IEH{LH8IEH{PH@IEH{THHIEH{XHPIEH{\XIE\HdL`E1f.IEHI1EtIEH{HMcIAMgD;\sbHIAuHE Ht HE H}tHE(HE(H}tHE0HE0H[]A\A]A^A_AtDD)HHHHHHTff.ff.HǀhHHǀPH9uHAAWAVAUIATIUHSHXHH~H(HDH$HL$HHD$LLHL$(HLpLxHL$ L t HV(D)HV(I}t IU0D)IU0IU HtD)IU IUD$4LMHH4$HL\$HLH LT$@HLL$8H!HD$IU1ǃ\|H4$MHH aH4$MHH FHD$LL$8LT$@L\$HH(HD$(MLpHHD$ LxHD$4L dHHDp1E1HD$1E1IHH$B@D!thMuLDJ$HLA IEHAHEHHt3H@PHt*LLB0HD$LL$ML+ODL!IL#$HRHuHEI}IuI}LD,D(fwAD$AD$HEI}It$H`HEI}It$HEI}It$ HEI} It$HEI}(It$HEI}0It$Ml$`HEIt$H{HEIt$ {HEIt$${HEIt$(H{HEIt$*H{HEIt$,H{HEIt$.H{HEIt$0H{HEIt$2H{HEIt$4{HEIt$8{HEIt$<{HEIt$@{HEIt$DH{HEIt$F{HEIt$HH{HEIt$LH{HEIt$PH{HEIt$TH{HEIt$X{HEIt$\{I@HEH;LHHEIuIH{M9uHX[]A\A]A^A_DHEIt$,H4$MHH D$IdD$TH4$MHH 'D$HD$H1E1E111DAVAUIATIUSHHd2h$`t f foC8LsHI$HC fo{HC@CfC(olCHo|AFoAF oAF0IEHǃPEIEI$IHcaIEI$IEHI$IEHI$IEI$IEI$IE;LIE{It$IE{It$IE{It$IE{It$IE{ It$ IE{ It$ IE{It$IE{It$IE{It$IE{It$IE{It$IE{It$IE{It$IE<+I4,HH$uIE{$It$$(IE{&It$&IE<+I4,HHA9ME1It$LAHEIt$LHEH{ It$HEH{(It$HEH{0It$H$.CRTH.edataH.archH.relocHL$@HHL$PHHD$HL$`HHD$(H.dataHL$pH.rsrcH$H.textHD$0@HD$@@HD$@@BHD$ .bssHD$H@@HD$X@@HD$h@@HD$x@@HDŽ$@BH$HDŽ$@@H$HDŽ$ `HDŽ$.tlsHDŽ$@@HD$8H$H.xdataH$HH H9$HH$H9uH{HHEMl$$LHH{@HHt<v ;.tex_HHEIt$"A(HEH{8It$ HHvVH{HHELHH{HHD[]A\A]A^A_fDLkz@ME1`DH1HH=k;.texH{HuEDtH xH{HfDH1HH=!kHH1E1H=&k\HEIt$"f{tHEIt$"A(H{@HEIt$ H1f{t''fDATIUHSHGHHH{HEID$H{HEID$H{ fEID$H{ fEID$H{HEID$H{HE ID$H{HE(ID$HE0[]A\ATIUHSHEHH>HHEI|$HsHEA|$HsHEA|$Hs HEI|$Hs HEI|$ HsHEI|$(HsHEI|$0Hs[]A\fAWAVMAUIATI1USHH|yILHII9IFHzH9H)HXt E^IELHC HH=RSDStHH=NB10uPIEH|$ CHC D$CMt H|$IHIwZf.1H[]A\A]A^A_@H}HEHDHH) (1H>fDIEH|$H|$HC HsHH|$Hs HH|$ HsHHD$ CHCM%H|$IED1fTff.AWAVAUATUSHHHD$0LMtZLHHIHMt!ID$0H9r ID$@H9rHL$ HH<*ff.ff.HH9H Hq HAHF0I9uHQHH5H11AD$DtWID$LHx?Au'ID$LLD$,Lt$ :HIHuE11D$,efAW1AVIAUIH5ATUSHHLk0U% e4p ?@ĀIHDŽ$LMtAIHHHt'@Lf0L9rHV@IH96HvHuH$HD$@HH|$@H$(H5DLH1S/f= f= Xf=H5L1/HH5 L1/H5L1.H51L.L H=-HLLcLH=Ӯ-HLLjcLH=-HLL?cLH=v-HLLcL H=K-HLLbL H=} -HLLbL H=`,HLLbL1H5D-L1H5Eu-H5G1L]-H5G1LE-H5G1L--H5E1L- H5C1L,"1LH5@,$L1H5C,(L1H5@,,L1H5<,0L1H5:,4fH %0HcHDF%L9H$H)HL$@L9H$L?H%I$I$ILL)E1HH1HIH$L|$@DIfCHL9HLH)HtLH$>H$uH$H$+HH5V1Lz+L;H=v*f=  H57L1:+HfDH5L1+HȪH58L1*HH5L1*DH|H5L1*DHHH5ȩL1*mDH)H5L1X*<DHH5xL10* DHH5PL1*DH}H5(L1)DHGH5L1)xDH H5بL1)HDHҨH5L1h)DHH5L1@)DHBH5`L1)DH*H58L1(D H5ǨL1(H:fDH5jL1(@6H5^L1(6ftt@ l@@E@ŀffff~fVf f@fLE1H=H`L%'HSLLH- \LH=`&HSLL\LH=L&HSLLh\LH=8&HSLL@\SL1H5(<'SL1H5)('LH=+O&ff.@DH5"L1&HLLH[HSL1H5&KHL1I&IuMIpHuIxuMIMt(fDI@0H9rM`@LH9 M@MuLLH=u%DIL`MuHhoMLMMt(fIA0I9r IA@I9zMIMuLLH=-$IFHxHPHLLH5lLHDŽ$0HHEHx@:@%0LAH=x$HT$@HL8H$L}@HSII9L|$Hff.IFHP@H{HD$IFP@LHIIHHT$IHLH51Le$HD$J4;HH9HFL9GH4$1'LL LcRL9$$IFHPX LAHƉfA HfA9AFׁL HD$LH5M1#EfAxHH9$jIFLPXH5L1#JH5mL1#H)H5L1# H5:L1t#H˺ H5L1U#H묺 H5L16#H덺 H5ݤL1#Hܡk H5L1"HʡIH5L1"H'H5wL1"HH5UL1"HH53L1m"Hn1H5L1N"HĠfHkH9l$AH$H"LLIHH5&L,IHq@%gL`@MZLH$HHX0H5H$'IfHnLfInfl)$f)$YL'H= L$L;$s}H)H-@LD$@1LILLH$H$HVH95AO|JHcHcHH!HVH$H9" H9"H$Ht+$H5L1 H$Ht+$H5L1 H$j H[]A\A]A^A_HhMM+y0H'p LLHLL $sL $I| LH5ZL1L $ H4IHHH4$ILHL2L $4IFLL$`LP@I|$HD$8IFP@I|$HD$HIFPXI|$ HD$PIFPXI|$ HD$XIFP@I|$HD$0IFP@I|$H$IFP@I|$HD$IFP@I|$HD$IFP@I|$ HD$ IFP@I|$$HD$IFP@LL$`LLH+HD$(1H5oIHIY0HT$8L1H5HT$HL1H5L$XL1T$PH5} LH=zL|$0LLLmSI9rHDI9gLH=EH$H5OL1<L H=FcHT$L1H5 HT$L1H5LH= LH=L|$ LLLI)RL LH=HT$LLiRL \LH=áHT$(LL3RL &H$L1H5!L"H=-HI9HL$HH9LH9K@H}(11AH5y莤HtHQD$lH\$HLT$@HT$8H\$HDHL$L, L9[L|$(HL$0E1l$8Ld$(HI)LT$0MILEI*@DH)I H9HIAL9MLHHH6I9sHH=1P2#HP(HHJ`H H}(Li01ALrXH5_1L`0`HtHQHH=11-DHH=F115# LEl$8Ld$(IDLT$0HHA9HT$XHL$ HLT$(Mr0HT$0LHHT$0LT$(L9_MLT$8E1M)Ld$0Iԉl$@LIH\$(DMHALMjKH|$8LItIHD$ JIIXZI9rl$@ALd$0LLT$8H\$(A9t%H=aHD$0LT$(6!HD$0LT$(o)$HtHPE1E1H,f1L*'DHJHzIx(IBHHI9t tMuLJLBL$$H$LHD$0LT$(L$L$DŽ$HDŽ$HDŽ$6$L$L$$LT$(HD$0H(E1fH(fDHPHHIK(I@HHH9ttMuL`LXvx$L1$H$LT$(L$L$L$L$n$L$L$$L$L$LT$($LLT$($L$L$L$;5/L$L|$H߃LЏHHHD$hH|$`LHD$pΑLT$(H\$`HH\$ HD$xHЋH$HLT$H$IB0H+H$֌HD$M1LT$HHxLLT$LT$fInflAB@1E1H=&}HD$0DLT$(HD$0LT$(1L$HH(HBHy`H5H@0K4HLH)HAXHG0H(H+H *o)$E1E1E111L$ f.f.f.f.f.UHHSHAH|$HHHquztH[]Hz8tLLE HHL$HHAtH|$HHGH[]ÐSHHHt3HkHtH@8f@@@HH[fH߾`HT$NHT$HHu1ff.fSHHHt#HHtH@H[H߾ HT$HT$HHu1ff.fSHHHt#H{HtH@H[H߾ HT$莂HT$HHu1ff.fAWAVAUATUHSHHHtNHC8HyOLeHtcHUB?uA~?uA~_|$0.H$@uE1E1L=7ci ˆT$0nAAkIHWH@8HJA>?@A~?5A~_*L$JL$0H0LDT$LD\$@DL$8DL$8D\$@DT$L&I$HXx|$0,$HDL$0JDL$0IHDXuHHcI9t I9G`IEu,IO0H)L$($_AAZfD$<xIH8DT$8D\$LHR8DL$@H2DT$8CDL$@D\$LXHyIH[AD$H=3G"HM[H=*pIHH@8AHn@AWIAVAUATUSHxHH|$(HX@@XHHHD$(DD$HEA<|$A<IGL D$@$<t$<t IzuAEHt)IH;B(sHt$(H1HHHAEM|$`K eL\$HSLH|$@DK!HGHxt$8DD$ PHt$PHt$@AZA[L\$HD$DK!AIHE9YHD$ H9KDd$C EMHICSL$HELHHxAUL\$C AXAYL\$ZYHt$@HT$8H|$00Ht$@L\$H9I1LHP(HAGDIHLMLKAHl$(C$DCxEC(HK`L9HEv LHHH|$@A1E4H|$@LBKHt8SxHHH9s)HHHH;N(sLIH H9rH[HADMI%HD$(H@@IHzH$$Ld$8HD$D$HHD$`$ff.ff.H[H%DEtHC`@%tH1LLLt$(LIIIH9HK`MHQ0MH+S0HSXHT$M9 H\$ M1LLD$5fDH|$HH$@HD$Ml$}I9IGHT$LLHxPH$H$uHxIH;B(sH|$(HH,HxH|$hHIL$H$H)H|$@HxHH|$(HHD$XHLQ$.HD$`HH#T$HH9HD$X$0dH$ID$HHt$LML1HxP(HD$I9IHD$(H\$ L+HK`LՋ1LIHjHD$(LHH[H9H1HK`ID$1E>H|$@HE1HH|$0H$8L$HHID$LHxARL$Ht$hHD$0H|$8E1Ht$h$@D$AHP`IH$>LH+LH$`ID$HxH4$H$P_AXsHD$(H@(HtEH|$hH9r;H)H|$8H\$(HHD$@Ht$PHHGHs@Hs0HHxP HD$(HHD$0H9wIGIHxH0HD$HLl$(C(C$H{@uHH|$HHWH H$XIEHK`DMIHLA1E/HŋCxHC HHH9IIFHxqIHHHuXf.H@(PJvw6L@(Mt-A@%t&HpIELHMH=LP 1ARXCxI HHI9oIGIuHLIHxAAL$ H|$H ZYIE<H|$\HD$HxHLIEHL$HL$H|$8Hp(HHHHoH[HHD$(H@UHxL[]A\A]A^A_pEHt$H$LDHH<~<.u<$H5PHD$(HPH$H L&]IH$H|$ HE1$LT$xABIGHt=$H$HxWLD$Ht$(H|$0Ht$(L[PL$IHIBIBH$8HHBXHD$(Z_H$H|$pH9'H$LD$Lt$ L$IL$IH$L$3HS!IHHIHDHHD$II9IGHLLHxP L[I$HYHT$pHLBHH=HLHp[H HH^I $SHAQHADK!E3f*C I}IT$ A|$HM HG LBHRH@8uHjE11jXZIT$H<$HHT$oHT$MHމH<$HLLAENSxHcfHIIE IL0H@AAFLu%@tH$Pt,P Ld$E111EHsHx0119HgH$H$HP(IGH$H$LH$XHxP I1LH$foD$`IHpH@()$foD$pH$H$)$H$yH$XLLnL9IfoD$`H$H$)$foD$pH$)$VLD$ IGH$LD$ LHHxHAń4H|$@1E1=6H$@ 1H$@H$H H$PE1L$HH$`E1L$PٵH$hE1L$`H$pE1L$h詵H$xH$p蔵L$xLD$ H$I$H@(H9t}H$XH$H$LIGLD$ HxP I1LLt$H$IHpH$XLLL9LD$ Ax/Ix(HH5Ƅ$LD$ );$H$X螴LD$ 1H$XA<u H|$H$tj1AMt:H$HHHH<(BH$H|(0A;rMH$LD$1LD$H$I@(HxxtHpHL,IHB(H|$7H$;1AIx(HH5LD$ Ƅ$JV$LD$ tH|$HD$LD$(H@HHPDl$ MMvM AVxtIcIHHH$L(I|-HhH|$I9rBgH@8IEIGLLLI HHxP0HD$IHD$I9s'HEHtHx8y8H=49HEI1LAąxIfxttA~xHl$AvxLHHHAFxHH9+LD$(HDl$ LD$LD$H\$LHHB1HIGH$H\$`H;HHxLH]HH$L:gI@sLl$L>HT$hHt$`HHDHLAFxHD$`IGHxP0LLHI9!HAWAVAUATUSHXHt$qxLD$ HLI9Ht$(ILH|$H $L{IM2I$L;x( HH$N,KL41MtEFEtIFHHD$8ID$MLH4$LL$8HLHx(HH@ШpMAEP<nHD$H|$<t3H$HG ALIuL+B0HLP0H$HB`H@0HD$HD$HtzMtuH|$HHt\H $H|$HA`HH@0H+A0HAXHzuHD$@HD$H|$@H蔮HHLLHt$@HD$LL$ HL$0L+@0H辰Y^:HD$(H H95D1E1E1MHD$D$<tMtA~hIFHD$8M_fDIFH$JHpH#H9`HH`HpXHq0IvHt$HI$~uHHx0H)Ht$H9Lff.@@(f%f-f'H$HL$ LHLHL+@0LHL<$LH=HL1B1HX[]A\A]A^A_ÐIE(HP`HHHXIM0HJ0HL$H#H9HH`H9L@H|$tPIM=HD$H4$HM HH@ H+V01H@8RMHE1t$LH|$XZH|$8uA~ iuH|$LHGHxufDH+HD$@CHD$fA}BiIEHIUPHHHHzHB(HHXHJ0HHH`HQ0HT$f.HD$_fHD$H4$HHM H@ H+V0H5&H@8LHT$@L!HH2HD$H<$HHM H@ H+W0H@8 H==2HD$HD$HP` @LLH=1Hy( H=1f9ff.fff.@G<uH(G<v HG(@(uH@D@uHRGBjHG(@USHHHtNHHHt:HHt)HxutHHtH[]DH[]fUSHHHt^1ff.H9t;3HHu8HHtHHHQ(HHH[]HEHH1ff.AWIHAVIAUATEUHSHHKIIxxpDxltWE9sBA1HL11HtHHEHEH[]A\A]A^A_DHH蒡EHHLE9sB#AWAVEAUATIUHSHHXB)HL$D$#B&LD$fD$$B(D$(HF Lh`MLDBAT$gH :H9AƉS Mt$D$ MLIACHE{(gHxAw HsHHEHxD$H$H8'HHT$L|$AHD$0HHEHT$8PhHT$8H$Lct$HHH$MH0|!H$EIT$HMEHH$H0LGHt$01HH$H$L0D$HCLsBD8HHEHHxDp\L5IHt/HEHsLHHxP HLLL9HX1[]A\A]A^A_AT$H IH9H $1H9ADT$ H|$1L.HtHHCHC-f.{)AT$ H|$1H5B.HH}DD$ HS@LHL$cH=,K(ID$ H=b,/f.L5?,AAMt$It$H{譝+LH5{)H\$D$#HHDIT$(HHX[]A\A]A^A_DPPHT$8)H.fileHCDHH5qH$H H=r+f.HEHHx@`HHD$023IH|$$E1HLk@LIlj|$|$(Ld$(Ld$0|$$SHEHALHHI8HxAVL$4T$EO)PHLLZYL9AG)9sTAEu5A(guA}tIu(HtH}DD$ LHL$sH=b*DLHLd$(X3HH<;H=.*H$=H=*AUATUSHHtotbtdHILMLZHuUIHuGHH[Ht4HLTHuHHHH[]A\A]HL牬$HHuIHu#ff.ff.fH[Ht9uHLHtHzf1H H5fIHKILHtkA<wS<w?uhfyBiu:HAHHQPHHHHtxtH@(@HA(1D<uHA(H@ApH0ff.@HGSHHxHt H[ff.@UHSHHHGHxtFHHpt!LDHHHHHHzL9uH\HH[]HAWAVAUATULSH(DnxT$E.HIHIHt)HHt!EHH([]A\A]A^A_fHD$ID$HxDpdMM*H1LLLLSL9HDkxD$HD$MK/H$I9*IIT$LLMLxLI AH$I9rH|$芟|$t#HHD$HHD$HL$HHH([]A\A]A^A_fDE1H|$;L3H(1[]A\A]A^A_fDHLHNHfL8,IHtHD$fD{xH,HHtDkxHl$MK/H$I9fH|$薞1XL-HD$HHt H@L|$ff.AWAVAUATIUSHHHHEHHxKxAuHD[]A\A]A^A_fHE1E11H1HDT$LL8!HD$IHkxDT$HHH9sOff.IFILHupHI(A<vE1LLHHuqI I9rAHH8H|$H;8*DT$4DT$fHHHIHID0p H(uHHv~H(k@$aPxVHLfA„O;E1ff.AUATUSHDHE/HL-3#Hu)Gff.ff.H[Ht tL`H[HuHL1MJ<'ff.ff.@HH9H2HHtH@@uHF8HtHv HtHv`L9AL9AE!Et(DXHEtEuff.Hug1HtfH[HuH[]A\A]@AWAVIAUATUHSHDHJ4)HIIEHJHOIu$HtODfL$$H~H|$uxuuyfL$(EHL$$ZYHtoD$HT$(oD$HS CHx[]A\A]ÐD$ D$)g@MA}utizf.H$HFHtHC fCfDAWAVAUATUSHH8DHD$(HD$HD$ XHtcHHxptrLMudDMd$MtNM,$L:Hv11LHHuff.@1H8[]A\A]A^A_HHp1HuLE HD$(O,H$fM'I$HB@HMt$0MHCHxHttH=艮It$0IFHCHHHxLD$SAD$Mt$0HzutiAF(Mt$0HIL$8HHt@tID$ H5H9t H9p`AFHA|$@IT$ HHD$(HAA~)qDIHz`HAEHrXHw0ff.@HpBHHHDEuH@ AD$@H9s H-@H9sHCHxPhH@HD$ LILPAHHD$ PHL$ZYIM9HT$(HHLd$HP(HCL9LHxAHھLHeHH$OHHt$ $H7H|$Ht9O|HcLDHI9rJHcHcHH!H9O@H=$~$DHD$ LA1PIHHD$ PHL$9A[A\"H=HL$HL$t<|$AF(Mt$0afH=r߭It$0D7DT$Eu A~("AF(Mt$0@HB`HIFPIT$ vuH$ID$1ff.AWAVAUATUHSH(HGHxDhhLH8HIH<HD$H$ff.fDH[HtH1HLtII7HtHF H9X`uH>HG0IHtH4$fLHLD$)H@HD$HEHxP(HLLL9u^LD$A@MpufAFIpHD$IFLHH4$HD$HEHxP(HLLLL9tH(1[]A\A]A^A_fDLHUH([]A\A]A^A_ÐHF8ff.HHyXt f.ATUSHGHHx@\Ha(HpbHtihHHrHt H9rCH)H9r;1Hu7H5Ht8H9s3E11Ifƫ1[]A\DHIHtHHHH9uHL`XLXfDAVAUATUSHHHj`HtHH[]A\A]A^@HJH;HGHHx@\Hb(HH1uLd$ HھLHHCLHI IHtL9r~I|$IHLMt$HxHLI9HLLh`L`hCD% 蛤HALHH=r1褸 HH[]A\A]A^fL踊UHSHHOHHt>HHKH;Hhs>HH+HHp/HHtHHHHH[]H1H[]ff.HHu`USHHHNHt6HHvUHHB`HtmHKH;JhsSHH[]fHHBH[]HHBD=H=zDH1[]H8HtHzHG@u1SHHHxXHtxqtHx`Htxrt8[Ð1D#HHx`H@XHufHH@`H@h[ff.fAWAVIAUATUSHHHHDDt$HD$(u DODƉfCAFDƃ$fDAFDHAHtAND1HtHB IIFHLHxHD$0HIFl$LHx@XHD$LHt H9nHLHD$IHLHHH9IFHLHxD$HD$XD|$$1E1HD$HD$PLd$`HD$8JLHCHLIH|HD$pLLLfo$AIG0HD$hAIG8HD$xIG@H$AGxIFHxLHLH$ELILJLD$IH$IGAIFHxD$#D$Xt ALJH$tD$XH$tD$XAG$!|$#txD$ŋD$A9nHD$LLHIFHxILppIFHxPxt |$`/ LuHHYD|$$LL$Ht$0LgHD$(E~DI1H[]A\A]A^A_AFDfufu AFDfu fAND DIFLHxPx|$a/HL$D$a Ht$8D$dHωAD$_HT$P:HHLHHdH5dH}t@H5H|t(H5&H|ff.LL5AFDĀLLSAFJ{zH}LHHD$@H,HT$@.HsHxHD$HHHt$HLZ}DL(H@@WI@LLL9HLD|$$H=,DLHL$f1B<9>fH5lH{T7膡HLD|$$H=+DAWAVAUATUSHH(HGHxD`PDhTtHt L9LHHHHLH1I9HCHHHIHxHHHCHHHxte$I9rXD$fu[1LDHH([]A\A]A^A_fHH%蠚u 1F1fHxHt H9LHIHtHHH9H9uT$L9r_HCH$LHHHxLHf$ HLHe1fDL1H)L{fDv f1ff.@AWAVAUATUSHhHHh HtHhH[]A\A]A^A_ItIH$I$IH@(H9rHLH)HHHD$ HuHuIEIHxHJ(HzXp\IHHt$LL9IxLD$8H\$ H|$0HD$PHD$HHD$@Hl$XL{LLLPHD$01s)KL)Ht$H9FH@L|$(E1D5IEHxHHt0DL$Ht$ IDD\$HLD\$DL$AEAgApEIH.t ~LAWAVIAUMATMUHSHHpLHL$IP$AQMLD$H m|$_AtHhD[]A\A]A^A_ÐD$H1MHHLHHP$j$ATLD$0@D$@H0D\$uHHHH|$t%HHD$x)H@HXH$IEI$HE@D$4M~IW HtuIO(HH)L4L9sxL|$ILl$ E/A(g:AG)HHHH)MLEL|$Ll$ L9HC0D\$ HD$8HD$HBLl$HIEMMLd$(IAD$)HH H)MDd$4HMLD\$(A9s%H|$ D\$(Dd$4HMLHtH$H)H=vH$I$H|$HG0@I$|$MtRD$D$4DHIA9@XHD\$D\$HHtHD$BA`MLHLD\$HmD\$fHD$LT$HtHLT$HD$DLI}ff.fHGHxJP<tJTBXSHHHA@u)HtHF0HHt+P(H[DfH1[fD8T$ H<$fH<$T$ Ht1ɀHfH&H P(HS H9t\B%uVHR`P HK HSHQXHPHyuuHK HI`HQ0HPHRDfP$HC0If@ HSHPff.@HH9F`oAWAVIAUATUSHF$HGL&IՃx9H5L^L14HXHD$Ht}H@@@@8tH0LaAGFI@FHHt4HC1LIw~uHHtH~8H|$LC4uIU H=RXH1[]A\A]A^A_I|$.A_LHH"Hx1HLHL[]A\A]A^A_T4@1DHHHh8HH}fAWAVIAUATUH-]SHH^xHuMDHHt@HsI~(E111HtHQwH@(H9tHH$ HuMf`L-Mu!ff.M$MID$xuM$MudDI/LH}\tXH5He\t@H5HM\t(fMMsA_$% = uAG(u؃AG(tAGxtLL)uH[]A\A]A^A_fDI~(1H5SH[]A\A]A^A_f.M~`LMufHHHFxuHHtH1 ff.H(H@Ht@&uP(H@ Hu@tA$ uuI(HIHuHHwL%'ff.ff.MMIGxuIHtDk$A fAH+LHZH5+HgZtpH5DHOZtXH5H7Zt@C(uAuD̀A~K$x)H[H$Dk$A SK(DH{@tLHH=1ff.HW1zuHHt H@8HtHff.USHHHG@GH<HHHHttHDžHHtXHDžHxut#HHt/HHǀHH^HH?HHH[]iFf.f.D1FuB!@G ff.F 9G ATIUHSHGHHH{HEID$H{HEID$fE[]A\ATIUHSHEHH>HHEI|$HsHEA|$Hs[ ]A\fATIUHSHGHHH{fID$H{ID$H{ HID$H{HID$H{fID$HHtHt#ID$H{f[]A\fHDžff.H@pff.fff.f9Dfdf !f+!f!f!ЃD1ff.fHHH@HRHt%Ht HHHRH9r1H9D1D1ff.fGID>ATIUHSHunHID$H~HEID$H{H{ HEID$H{EID$fECE CE![]A\fHHATIUHS>HuvHGH1ID$H{HuID$H{HuID$Hc{Hu ID${HuC EC!E[]A\HH뤃?t?wH7aHcH@HKH=Sz1H@HqHHHHIHHHHHE@HHAWAVAUATIUSH(BfnHIIH4H LLLH ff.@AWAVIAUMATUSH(LL$`HL$h<tAnxIIILHMHLI9 ff.ff{ 1fCHCHI$H;F(HH4HF<HF(H9HHp`H9IHu@H@HH9uLH3I+v0HL$LL$LT$L$VHL$LL$HULT$L$ff.H H9HL$hLLLLL$`H(ML[]A\A]A^A_WHH([]A\A]A^A_@@(f%f-f11fAWAVIAUATUSHHOHGDHxrP@>ABXL<0IHHt wINIH=Hڽff.f.HRHuHxE1L%;rhfDE?LHPHKHH!H9L<AHC@H;LNu K(fC0HH[H{$tEFDK|Hs@EHLAAHsHjMDM9HHL!IHtSB$tMLL)Hr@Hs@Eu?H1HHLHHH!H9IAH)H-EttLC0I)AII0IHmDHS0L)HHEuKHIvvIHB0ANIH[]A\A]A^A_fGDBTH1IwLD$ti1H[]A\A]A^A_Hxv IGH}ff.Fp1LH=m~1H|$L覑H1vDHHlAWAVIAUATULSHHH$HL$GII>H5GLu_L,$IMd-H(@II9r%MlMIF8M)I~HCLP@HuM9tOH=UdnIHuH[]A\A]A^A_@HD$1HH莍u7HtH<$HH膐H9H[]A\A]A^A_ÐH1[]A\A]A^A_L,$_fF Lt 6fDf.ATIH~UHSID$HH},fID$H}ID$H}0HID$H}4HID$HǃHID$HuID$H}H=tf[]A\ÐID$H}HuHǡKH3E H jܸH3UH uSLAtCu1[@ H=8GbCt H=!0b1[ff.AWAVIAUATUSHHH,IIĸHHb(HL]IHIH@(H4H>LIHIHP(A҅L$$L1DT$E1T$-L|$MDH $HA,H)L3L$AD$ID$LHCAt$ I\$蜟CHC HCC@AT$(wwBH=HHc Ha1HH[]A\A]A^A_fA|$&DHLCL1H=oD$-CID$HCLc0HHHCHCAD$)ElD$A9ML$$L|$T$-IL8ML` AL@MCT$/LMIfA|ItH=ǽ_AIGILHxHhBHD$HALpHIHEIE{IHD$0E1D$-H$L1ED$.H\$IHD$D$LL$ I$HT$0H;P(Hx H4H)H4FHnHH9A$HHH9kD$H}8ImtHULH=1mHEHL$Lm8H9HD$ T$.IAHE;dID$H$HLHxPHD$8IEAE@HD$0I+F0IEA|$ uCID$HCtIt$L8OHHCHC AD$(|$.El$LHH.IHAL $t2HLJ LDDEuHHHH9uL)H9T$t6H=;L $F\L $HLL $H 6ALHHHODD$LL $LHEtPHHH)L@LIp8ff.ff.fDoHHB0uHH9uAHLH9LL |$-MvMhT$/fDDLH=[ 1j#H='[I|$fAL$ TLH= UjfH|$Hv I<EuHHH@HuDŽ$4ApPAD$D 1L|qFI$H H$`D$GHHD$ HHD$HHD$D$D$H$Ll$Pff.fHuH<$$4+I$LuDhpEtgL,IHvVHLt$pHH51L)2H<$LX+L)H9y Dl$GLuJ\;H5CL.1tHE0H$pHE@Ƅ$D}$H$xHDŽ$hHE@Ht1AtHfnExLuH5*~fH~…flfHnH$T$L)$D$)$*tYH5Lu*tAH5šL]*t)H5|LE*ff.fAc1A A@6E11IE#LLHHDHIH LLELH H5LEL$,H5hL,<H5L,HD$ HDHD$ AD$DBuuU| 9IFƒL H$HHH9tDI$LHH<HELH=:1^ID$Ll$pH4$LLHxDpXPHLLLpL9u$HmHE1Ll$PHDŽ$8fD$RAD$DSID$|$Hx@Tf$P|$f$RH<$1LHL=FDŽ$` dEA$f$0I$Lh|$GHP(HL$@H\$HtHS@H$hHtHS0H$H\$HHtHS@H$pHtHS0H$H\$ Ht'HS@H$xHtHS0H;$sH$I$H$HP(HH$HHtL11L&lID$HxhPH觻HHID$H$HLHxP8LHHnHH%.ID$HxBPH9AD$DpjTH1HHWH4$HL>HLHxnHH-ID$Hx@TH9HvHH NxvHvHT HufHl$yfDA@11I@DD uA@1I@@E$M$EE11H\$(t$8LALd$0@AIE9M&I9l$ uHuI|$HIDp(uI4$HF@uHtMD$0MtA@tAx)tAx(ufAx&uDt$8ILd$0H\$(D9+A@<H fjA@NM9Ms/IFLLD$(L)HHHH)I<)LD$(ME@Hl$HfDH\$(Ld$0H=iHL18YJ1H[]A\A]A^A_f.H$ZHf$`H$ff.ff.ff.ff.fDHH54HH? HH9uf.H5L\#$DEDEEDDAAA@HIA /AI IMEMIEMEMIAMEA DApT9LzMD$2fD!H=LD$("Hu$LD$( A@N A@NMxLl1|$f$Ptv|$f$RAˀHʀLEMIрI@ALDMMIMEA If|$f$REf$R3|$Ht$`L词)LL觔L藙M$HcD$`MHLl$PMHD$8HHD$0IEpI1LHD$eI$AExfztt =H\$xE1H\$pLMIE0HFHD$pHH9B HHZ(Hc@H\$xH9)HFHt f$H\$fHt$pHH HEHHHxpd3hHHEHx@dH9IE;exHD$fJ4HD$H@HHHH;*'HD$8HLzL4IHH|$0Ht$(HT$XHfHIHHHxL"uHt$(IE0HFL6HD$pMIHDxstfHx(ALf$RH$@0EHHLH=1SHt$(HT$XHFIE0HD$p:L$I$B'HD$x6HDŽ$8E1fD$RAD$DuuE1D$GH$`fD$PHD$ HD$HHD$H$IMmM.Ll$PI$HP(H-|$GIEID$D$GHD$ HD$HxHD$H@Tf$PH$`H$GH\$ffLHt$pHD$xHDŽ$HD$p[ID$LHHxpdeHID$Hx@dH9(AExIE0HFHD$pCHH1H=zRAWIAVAUATMUSHHH(HnHH5 HT$HL$(D$tH5H@3@HmD$Aff.fIII!LHH!IQI aMt8I w2H +JcHH eHT$LH=1QD$HuDIG@@H|$ H5x‰ DMtA$D$H([]A\A]A^A_f.IKIIeI\IHHDHKLSI>IWLHXHxQ\HP(MM9HD$gH$Ld$XMHD$H$H\$pMHD$@Hl$HLL$8Dl$THt$ fDI}HuzI}0$ HtHxHuWIWHL$8LHHxH)ȋr\HHIEH|HPHHT$0HHtHT$0HHI}@IGHx$A\IM9FHLLQHT$HL-HH$Ht$ $IHIIHL(M$Ƅ$PLT$0T$PPLT$0IIHT$PHP8mHPHHT$0HHtHT$0HHNj$I}0IEHAEfoD$pAEfo$AEH$IE(ICDI@IDDH9@I@{IDI DDHbfDLt$H5L'tH54L)@@D̀|$DDHAHh A#|$DEHGfH5HH5HpH5YHTH5zH8H5HD$AHAHfDI9DDHe IDDHI@H I}H e@|$uH|$H5\A HLHL$1H̚LH=;KHDAHH v@IH$HHD$($CHH@(PC&H{<HSHHHT$tWHK@HHL$ LHpI苫HIHL$(HT$HxHHF8Ht$ HPIVH8D k8D$H H 6fDLH=1If.HS0LH=1IfDIGHxp\LL9*LT$0HE1L$$t$HA$ZYLT$0<H G$ H |HeH5N>HIHHfDAH$Hl$HDl$TLd$XHl$HDl$TLd$XHt$ ILs0H|$LHL$LL1H=HHLH=_1hH$f.f.f.DH HF01H9rHHH9‰ff.H HF01H9r HF@H9‰DAWHAIAVAUATUSHZH8Ht$LD$ H9IHHz ID$PXH}IID$PXD$Fl(IGHD$ALsM9D$A9rLID$HP@HǩHD$HHGL9sPHD$H9rFID$PX=w4ID$I~P@H©tVHt$HH9s L9fHD$H9LHBAL9DH9HHCH8[]A\A]A^A_HL$HDL9sID$H<HT$(P@HL$HT$(HID$H|P@HL$HHD$ H)HzDHD$ H)HD$HLD$ LLHHHUHSHH_ߩHtHѩCDȩ{uH[(HtfH{ H[(HuH]0Ht{u}H[(HuH[]ÐH{ WDff.@ATMUHHSHck"Ht?HHt3HRPHt*HHHHcHtHP0D)HH$ []A\fUHSH肨HHwH1H9tH[]ÐF%tZHF@ATUHSHH9r?H)IH9r4wYH¸Ht$HH9rH)H9rH)L91[]A\Ð1ff.fAWAVAUIATIUSHI$HwA}H@PPID$1HpI$H@PPID$A}HpI$H@PhID$A} Hp I$H@PhID$A}Hp I$H@PhID$A}(HpI$H@PhID$AmM}HXAE(D4IIMt$u#[fDLHLHM(t:Mt A?uھ)H="4t-H=3Mt.H=3Im0E}(HtPEtaL-В#fHHLHHm(At:Ht}tپ4L|3f.Et8H={Z3Ht9H=eD3I9tH:H=K[]A\A]A^A_ 3H[]A\A]A^A_ÐATIUHSHH:H@H@PH H+{HHHs }H@PhHC HuHxEEDHC H}It$HSH@H@Pt3H{H)HHu H[]A\eDzfH{H)HHm HsH{(H@H+{{0PPHC}HpHH@PPHC}HpHH@PPHC1Hp HH@PPHCH{(UHuEHC([]A\DAWAVAUATUHiSH8I@L $H9rHH8[]A\A]A^A_fDHMAI1A+$L+H5I<AAELH=wFIEH{PXH{ HD$IEPXH{ HD$IEPXH{HD$(IEPXH{HD$ IEP@HHD$IEP@L$L1Qt$VLD$0H5LL$8HL$(D$AYIA[LTAGD|$D$MRfDIT$IhHBH9s'HLMt$T$LIT$_AXH9HBH9IM9uD|$D$MAGMD$MPf.IWIhHBH9s"H1LMt$T$LIWY^H9HBH9 IM9uI9HIC fDDH5L1lID$fLH=H9s H96HH([]A\A]A^A_AN<MwL;uHH51VHEH([]HA\A]A^A_H5H1';fN$>IT$H9xI9oIEI|$P@I|$HD$IEP@LIIEP@HT$H5HILRDAVL$(HD$1IEI|$ P@YHU^HuuH$LL$HMI)KHH9rYH}LHMfT$L $H(ILH[]A\A]A^A_fL}HBT$H5ԋH1 HEH\ff.AWMAVMAUIATIUHSHHHGHP@H{EID$P@H{EID$PXH{ EID$PXH{ E ID$PXH{HEID$PXE(HD$@HE@EuzfHEHÅu1fE0HH9HHCH[]A\A]A^A_fDH1Hu(IUMLAWAV[U(H HHHIٺUHuMLAWAV%U(H HEHÅ]@AWAVMAUIATUH8SHHHLD$L$T$苙HAMIEIǍA$IHt$Ll$ IDl$HD$LH)HD$8HEI~P@H$E/Iw0EHt$%HHBI9HEHT$HPXHT$AGHIWHEI~P@HD$AGH豘HL$HIG ?HT$HMHAWL$HHeZYH9HBI9cHD$I9 IG(Ll$ M}HHH[]A\A]A^A_fAG!HL$HIG HD$HHA I9HEHHL$P@HL$HD$(HEHyHL$0P@IW HL$0ƉHEHyHt$P@IW HL$(Ht$BHD$8H$H)H9r(H|$HT$0yHT$0HBIG HxHu{HD$L9IBI98I=IG(Ht4I@AGDHt$H+$HfHHL[]A\A]A^A_fDHD$HL$(HT$H+$H4HL$(HD$HL$(Ht$HH6fAWHGAVAUATUSHHH|$(HT$0HD$8@t$&HD$8E1Dd$'HD$HD$(HHLy(ID|$&A^ALMAA9ALjM|$EFA@EI\GL$$LMDt$II݉L$rff=w}$ffAw fwAD$f$f=zAA)E=IHM9tPEA$(D(fofAwfwAD$f$f=fM|$L<$\$)~yIG(D$'IF(HD$Mw(L8IG(M~(HD$MDd$'LHD$(HHEXHH[]A\A]A^A_DfA,ML<$ A~EGEH=14HH[]A\A]A^A_8&L$$L~MM#@L$$LHB(HD$ID$(H<AL$LDpIfDEvA>HD$0HHP@H:HB0ff.fHH@@H8xIV IG 1E1AL4$HhLBL|$HT$ILDYff.ff.ff.ff.f.Bl}CD6AHCD?IAD3E}fEtfEtE9uC6IuH{tL<$IG0HJH@@H=84pH=U1D2At$D$fA 8$3$fDHHP@HHB0yfL4$L|$DHT$:,$HH|IF Hl$HLt$L@IG LPLM(f.f1HfGLMt4MA4$Dt Dl6ftHLLMyHLuLt$D $Hl$IV H)DHH9tiH=]<"IV D $HzD $IF D $DHhHD$(M(HL$(M~("LLHL-A>uH|$0 IG I^ H=9 uHHH9KtIH=10f"HD$(iIF(MM(HD$rDMI։4Pt1SH{HPHp HH{ HW(Hs f@@P(t1S(H{0HP0Hp8H{8HW(Hs8f@(@0{vH{Hھ.{(H{(H1MIHHB0HH@@HD$@typeHl$@D$Ce: 8PLpBlILFH,$Ld$FDL-HLLLII<1I9uAH,$HD$0HD$Lh@oD$MLdtyH name: HD$I$FA}D$Ld AUI]Bt;LtCL-@LHLHI<1iL9uHLdH lang: HI$A?AWH\MgBL-~MtDt"HLLIH<1M9uHH=#1d.zEH;H@@H.8uvHID$H~HCID$H}H} HCID$H}CID$fCEC US!'ff.ATIUHS>HHGH1ID$H{HuH{HH t{teID$HuID$Hc{Hu ID${HuC EC!E[]A\HHLHSH5 H{H{H+x0H{Cef.AVfAUATIUSHl$0HHE EEgAAj;q2HGHH{EID$fE D0 ID$H{H{ fEID$H{ fEID$H{fEID$fEID$H{H{fEID$fE []A\A]A^Dt{HGHH{EID$fE AEwID$H{H{ HEID$ED0 gID$H{E[]A\A]A^ID$HHEH{EID$fE D0 tmALID$H{H{ HEID$Ef>ID$H~HE[]A\A]A^ID$H{H{ HEID$EfDH{EID$H{fEID$H{fEID$H{ EID$fE CE[]A\A]A^oEFfE[]A\A]A^AVf1AUATIUHSH\$0fCgAAjRqIID$>HID$} HsD0 ID$}HsID$}Hs ID$}Hs ID$}HsID$}HsID$} Hs[]A\A]A^ID$>HID$} HsAEID$H}HsID$}Hs D0 XID$}Hs[]A\A]A^ID$}HHEID$} HsD0 ALID$H}HsID$}Hs fD>HGH1ID$H}Hs[]A\A]A^ID$H}HsID$}Hs fDID$}HsID$}HsID$}HsID$} Hs EC[]A\A]A^fDHHHFHC[]A\A]A^@ATIUHSHGHHH{HEID$HE[]A\f.ATIUHSHEHH>HHEI|$Hs[]A\fDAWAVAUIATIUSHHHGHH{fA$IEH{fAD$IEH{ID$IEH{ ID$IEH{ID$IEH{ID$ IEA$H{AoD$ID$(AoL$fA$SA$SI$A$IEA$A$PpH{ I$IEH{$A$IEH{(A$IEH{*fA$IEH{,fA$IEH{.fA$IEH{0fA$IEH{2fA$ IEH{4fA$"IEH{8A$$IEH{AFME1It$LAHEIt$LHEH{ It$HEH{(It$HEH{0It$H$.CRTH.edataH.archH.relocHL$@HHL$PHHD$HL$`HHD$(H.dataHL$pH.rsrcH$H.textHD$0@HD$@@HD$@@BHD$ .bssHD$H@@HD$X@@HD$h@@HD$x@@HDŽ$@BH$HDŽ$@@H$HDŽ$ `HDŽ$.tlsHDŽ$@@HD$8H$H.xdataH$Hff.ff.H H9HH$H9uH{HHEMl$$LHH{@HHt<v ;.tex?HHEIt$"A(HEH{8It$ HHvVH{HHELHH{HHD[]A\A]A^A_fDfLk]@ME1CD;.texH{HuEDtH xH{HfDH1HH=DHH1E1H=Ʒ!HEIt$"f{tHEIt$"A(H{@HEIt$ H1f{t''fDATIUHSHGHHH{HEID$H{HEID$H{ fEID$H{ fEID$H{HEID$H{HE ID$H{HE(ID$HE0[]A\ATIUHSHEHH>HHEI|$HsHEA|$HsHEA|$Hs HEI|$Hs HEI|$ HsHEI|$(HsHEI|$0Hs[]A\fAWAVMAUIATI1USHHILHII9IFHH9H)HXt E^IELHC HH=RSDStHH=NB10uPIEH|$ CHC D$CMt H|$]IHIwZf.1H[]A\A]A^A_@H}HEHDHH) (1H>fDIEH|$H|$HC SoHsHoH|$MnHs HnH|$ 7nHsH{nHD$ CHCM%H|$\IED1fTff.AWAVAUATUSHHHD$0LMtZLHHIHMt!ID$0H9r ID$@H9rHL$ HH<*ff.ff.HH9H Hq HAHF0I9uHQHH5"SH1AD$DtWID$LHx?Au'ID$LLD$,Lt$ :HaIHuE11D$,efAW1AVIAUIH5=SATUSHHL % e5q@ @ĀIHDŽ$LMtAIHHHt'@Lf0L9rHV@IH9HvHuH$HD$HHH|$HH$wH5RLH1f= f= (f=H5RL1H$QH5RL1H5RL1H5R1LpL H=RHLL5LH=sRlHLL LH=`RAHLLLH=ORHLLL H=:RHLLL H=+RHLL^L1H5RWL1H5R@H5R1L(H5R1LH5R1LH5R1L H5R1L"H5R1L$1LH5R(L1H5 R,L1H5Rk0L1H5RT4fH 0HcHF%L9H$H)HL$HL9H$L0H%I$I$ILL)E1HH1HIH\$L|$HDICHL9HLH)HtLH$nH$uH\$H$QHH5%O1LIL;H=Epf= = H5OL1 HpMLDH5NL1?HNH5NL1.HH5ML1DHLNH5ML1xDHNH5ML1PDHH5pML1(lDHH5HML1;DHMH5 ML1 DHMMH5LL1DHMH5LL1DHLH5LL1`xDHLH5LL18HDHdLH5XLL1DH>H50LL1DHKH5LL1D H5LL1H KfDH5:NL1t@6H5.NL1X6ftt@ @@@ŀfXf0ffff Kf@fLE1H=YNH`L%tHSLLH-JLH=0NHSLL`LH=NHSLL8LH=NoHSLLSL1H5M SL1H5MLH=Mff.@DH5ML1HLLHHSL1H5MKHL1IIuMIpHuIxMIMt(fDI@0H9rM`@LH9 M@MuLLH=ZEDIL`MuHhMLMMt(fIA0I9r IA@I9MIMuLLH=IFHxHPHeLLH5fDH|$(H9ELHt$XA)IcI)HHD$PLLD$@豣H|$@HHHHL$PLD$@LHD$PHt$XgHT$PIcHFH9D$DŽ$H$DH|$H\$xIHHt$pH\$@HT$h!L9@!HAϹH)D|$HL$`HD$J48H96LNI9)IFHLL$XHt$PH$PXHt$PDCHLL$XLL$A)1H5c=ֹ|$L H誴ID$IL9H$IIFLP@IH$J| IFP@LH %1AHLH5<M|$wHD$`LH9D$@dHD$pH|$hH)IFLP@H58LH14LH5b<L1 $H\$xHT$h_H觸RfL/AH=IѷD$ HL$A)H$IcH)H0HL$@HNH9L$DŽ$IH5L12DH$H5L @H5%LHDŽ$IH|@%rHHbH@PHUH HHHHL$ HH9L:LD$H=L觶L{H=C莶LD$IH@HHD$ H9HT$HLLLD$E1H|$ LD$LD$(IFHP@HD$H$H|(IFP@HD$H$H|(IFP@HH$H|( IFP@HD$H$H|(IFP@HL$Ht$IH HHL$H H L 9L @HD$(LLHP0H)L HT$LL L HT$LLL HLLHL ðHT$LLL 覰LLLHAH5G:1LD 肵L eHD$ I9CLH$IL9|$ ]8L HnL$L;$H5'L衿IHuHh@HhL`01H6H5A7LǴfH6H5.7L1覴H6H56L1艴H5LLT$IHd@%ZL`@LT$MHHX0H6H56L1'+H6H5]6L1 H5H566L1H5H5 6L1гH5H55L1賳H5H55L1薳cHp5H55L1y@H$H yHIHֺ H蛡HD$M1H$LHx荺H$蠨D$fDI|$(11AH5`-uGHtHQD$fDH\$HLT$@HT$8H\$HAHL$L, L9Hl$(HL$0E1L|$(Dd$8EIMH)LT$0IH,DDL)HLH9IIAM9MLLLH]I9sHH=17BHP(HHJ`HI|$(Li01ALrXH5>,1Hh0?FHtHQHH=h1@HH=&1DDd$8MLT$0IHL|$(HE9/HT$XHL$ HLT$(Ij0HT$0L3HQHT$0LT$(L9ILT$8M)E1L|$0Dd$@MMIH\$(DIHLMjHDH|$8LItMUHD$ HIIXZM9rDd$@AL|$0LLT$8H\$(E9t%H=@#HD$0LT$(HD$0LT$(o)$EK4HPE1E1L,1fN*&@HJHrIq(IBHHI9t tMuLbLJH$HD$8$H$LT$0L$L$HT$(DŽ$HDŽ$HDŽ$脛$L$L$D$HT$(LT$0HD$8H(E1fI(fDHHHpIs(I@HHL9ttAMuLxLXfDA$1H$LT$0L$L$D$L$L$HT$(讚$L$L$D$L$L$LT$0HT$($HLT$0L$L$D$L$HT$( 554L$4Lt$H߃L42IHHD$h 4H|$`LT$0Ht$(HD$p4H\$`H\$ LT$LHD$xHȋ {4H$HH$IB0H+H$HD$M1LT$LHxLLT$蕴LT$fInflAB@W1E1H=HD$0ELT$(HD$0LT$(E1H$HH(H$Hy`HH@0JT5HLH)HAXHG0H(H+H E o)$E1E1E1E11H$f.f.f.f.f.ATIUHSHGHHP@H{HEID$P@H{HEID$P@HE[]A\H1H9t1FuB!@G ff.F 9G ATIUHSHGHHH{HEID$H{HEID$fE[]A\ATIUHSHEHH>HHEI|$HsHEA|$Hs[ ]A\fATIH~UHSID$HH{fID$H{ID$H{HID$H{HID$H{ fID$HHtHt!ID$H{f[]A\fDfHDžff.H@pff.fff.f9Dfdf !f+!f!f!ЃD1ff.fHHP0HHH0H9r1H9ff.@HHH@HRHt%Ht HHHRH9r1H9D1D1ff.fGIDUHHSHH HtBHHtCHzPtuHC@HC$tHK@HKHHtEL$DALMCEAL H|$LH#|$IMtAF$tLL)IN@HK@AtLLH!HHIrHL$HH#T$H9IID$ I)M,fXL#HIHH81[]A\A]A^A_LIEPHHpPHIHL!1f.IHDT$ MHIvKI$HB0AL$IH8[]A\A]A^A_DRAVIFHfDDL1H= bD1IwLD$/EH|$/L;H4E1fLAWAVIAUATULSHHH$HL$GII>H5 u_L,$IMd-H(@II9r%MlMIF8M)I~HCLP@HuM9tOH= IHuH[]A\A]A^A_@HD$1HH.u7HtH<$HH&H9H[]A\A]A^A_ÐkH1[]A\A]A^A_L,$_fF Lt ffDf.AWEAVAIAUAATUHSHH@$HH1LH5Lc8Lk`D$DL$L!HHLcH}IwHDHH+H@HIw HcH@DL$D$EOAEM(AMAE MeHHK@ED$I$HCPHSpIt$Il$ HMl$0HHLbHCPJD6HC8HHC`8HK@HSpHH;sHH[]A\A]A^A_Ð2H=EDD$ H$DL$1DD$ H$DL$fDH_H= []A\A]A^A_fUSHHHkH}蕅H荅HCH[]ff.AVAAUAATIUHSH?HHDHEA ԕIT$IL$C|HLHBH9LHA衖ID$AT$xHLAJHAL$xIL$HHHHQHHXID$H9r>HAHLH53AD$@HB(H[]A\A]A^DH=蟢DyH=臢2fAWIAVAUIATEUSHHo(Lw HIHH?MnIF+DM>1IFLmHMHtC(fUC(wH[]A\A]A^A_fDHH=[]A\A]A^A_١fSLAtCu1[@ H=觡Ct H=萡1[ff.AWAVIAUATUSHHH,IIĸHHb(HLIHIH@(H4H>L IHIHP(A҅L$$L1DT$E1T$-L|$MDH $HA,H)L3L$AD$ID$LHCAt$ I\$CHC HCC@AT$(wwBH=KHc H1HH[]A\A]A^A_fA|$&DHLCL1H=]OXD$-CID$HCLc0HHHCHCAD$)ElD$A9ML$$L|$T$-IL8ML` AL@MCT$/LMIfA|ItH='6AIGILHxHhHD$HALpHnIHEIE{IHD$0E1D$-H$L1ED$.H\$IHD$D$LL$ I$HT$0H;P(Hx H4H)H4FHnHH9A$HHH9kD$H}8ImtHULH=MN1^HEHL$Lm8H9HD$ T$.IAHE;dID$H$HLHxPHD$8IEAE@HD$0I+F0IEA|$ uCID$HCtIt$L8OHoHCHC AD$(z%CID$CHC@DLH=KL1ܫAED$-1LL$ LfMH|$L)L $HAAE}|$.El$LHH IHAL $t2HLJ LDDEuHHHH9uL)H9T$t6H=L $覛L $HLL $H |vALH HHODD$LL $LHEtPHHH)L@LIp8ff.ff.fDoHHB0uHH9uAHLHxLL |$-MvMhT$/fDDLH=J1#H=x臚I|$fAL$ TLH=I赩fH|${MvMeDH|${LL CID$ HCAD$&0f D‰CCID$ HCAD$&0f D‰C@3At$ CAD$(HHC ID$HCPKHC<1HH8t D髦ff.HHtHHt t AWAVAUATUHSHHF|蠄uE1HD[]A\A]A^A_0HA Ht1ҀHL5#E1fP&L@(HLmHB0#ru*AHA tSH;LuutKIƋB PzFBE|;@AWAVAUATUSHhH|$HDŽ$HDŽ$HIB%HHyH@PHlHUUUUUUUHIHHHL$HH9IZ@HBH|$%HD$H5h L$H@H8tƄ$L$u H\$Ƅ$IH5bL1L$x-LH=1bwL$H\$H$LHLT$[cHHD$HHH<H5HD$(HCH8sH$LT$uHHH$H|$"E1D$<E1HD$Dt$ LT$0MI L9d$rDH$H|$H$LL$H$H$LH H Dt$ LT$0EtD$$1LE1H5LL$0HHL$L%,lHL$HH9L$@LL$0HL$H\$HHl$0LL$@(fDC.Ht$1Lkt?II9tFDDuLL1kC.L1Ht$kL f벐AHl$0LL$@lL LL$ZfLL$PLLL$H=UjLL$H\$HH|$HT$PH\$0H)H9$1ۀ$<$D$pL5+xHl$x$H$L$H$HD$0 H5LL,1AUAmjAE@D< IcLHD$PL)HiHD$I}H@P@DH5L17jD$ptLH=SiL dHL$CHH92Hl$xL$hHD$PL)HHD$I}H@PXfHD$PL)HHD$I}H@P@DH5 :$;AUDL1H5Ti#HD$PL)HCHD$I}H@P@HsJH5`L1 iD$pHD$PL)@HHD$I}H@PXH5SL1hHH5LJ1hH$ELHH5SHȋ$1fh$D$p$8BH5DSL12hHD$PL)H!HD$I}H@PX HJJL-H=5Sg@@DH5iL1gH5_L1g$WH$H$L1H5RLL$_gH$H5;1LFgLL$$HT$xHD$PHL$hL)H BHD$L$LL$H@P@L$H$HD$IxH@P@L$H$HD$IxH@P@L$HL$hH$$HT$x<&HB$LH5HD$h1LL$x_fLH=\eLL$xHDŽ$L E1H=LL$HHeHD$HLL$Hl$0HL$XH\$L%L)LL$@IH+CT5Ht$1Let8II9t>DDuLL1eCT5L1Ht$eL a`AHl$0LL$@KHRHD$I}H@P@gHD$PL)H&HD$I}H@PXDH5c HD$(D$<HHL)_$F<R@LH5,1LL$xdLH=cLL$xHDŽ$$<$H5L1LL$x8d$H5M1LdLL$xL H=?cHl$xL$LLL$H=cLL$MAF1ۃ<DAVLLL$xD)H5QND$p1cAFLL$xH|$MnL%AL.LLbHL$AFIIH9AEƒu+AU tT$pH5WL)1bEILL LL$p]HD$LL$pI9DAFT$pH5L)1bLL$xIىL LL$m]LL$UHH5SHHlHt#HHHH[]fHHH,$H5/D$rD$H[]fAWIAVAUATIUHSHH~xF$t`HH4ff.ff.DHHJHI H9uWHlHEHH[]A\A]A^A_H^hHtG7HHHHff.DHH HHJH9uf.IIH:IWI$LLL$HxJdH$HAt$xLHLL$HHlED$xEMLHt$ H\$D$D$IE1LL$HIHl$ff.IFH<$HHD$8HxpdIHLHt$ IwHT$(H@HIHcGH9HGHL$HHIHHL;2HHHHHHyH@0x jHPHD$0IWI|$0fHLMH)IIVIFHL$ LH=S.1b~H<$9_HD1LH $L $tAD$xHID$0IGI+t$0IwfHH=II HIGE;l$xPH\$Hl$H<$^I\$hA|$x'DH O BDtHIWH)IwL1H=#-HIwIMLMI1IF@uItHB0H gHB 1H_HP0HSff.ATIUHպSH>HH5?Vt []A\fDHuHLE[]A\AW11AVAUATUSHHHl$rHھH覜HHCHH¸H9uHCH|$vH11H讚VH$HھH>H=2HCHH=MZHCH$1HHJH$HھHڛHHCHH=PEgHCL$`HHLHxHCLHHx&HS$HxH9BTfo$ $fo$0$fo$@$fo$P$HHH9HCIHt H90 LHJIHHHHH9 H HCH$0LHHHx$@Ѕ$DЅu 9$@s11HH=+萈$D!Ћ$@9G‰$D$ Hf. t1HĘH[]A\A]A^A_H$`HھHHuHCH=dXR = = t-L5 @H& HH=)1袇fyO1ɋ$LH HH.HD$xHLMHHHHu#ff.fDHvHHF0H9rH~@H 8H9sF%II)I9 H)L9 HT$xH mLE1H%I$I$IHL$HHH1IIDAVIL9HHH)LItHt$xwH$uH$E1HH$H$ xHt=$8HH2IHt"$8HxH$(HTL0H|$x>Xf1HH=(迅$@!к@H‰$@fDHCH$fIH HCH$jH$lH$HCHIHt L94 LHNHHHLHĖI9{IwHRB|=LhBM99IILPMt1M9ELCDAAD$ AAM A> IHHwPLHD$(jPLHD$]PHL$(HT$HH HFH>FL$Lt$H5H$hHL$(D$`LE1H$xHL$0L$L$P)$VD$ D$`L$PLH5 IH4HH|$EGH% HIL$L$0LL$P$`H|$H$hH$xLL$Hfo$LD$0L$@L$HT$(L$HD$ )$wLL$HHT$(L$HD$ LD$0L$L$@fo$L$0H$hH$xL$PA$`L)$H|$HH5^L$0L$PD$`H$hH$xL$fo$L$.LHL$@LL$(HT$ L$)D$08LL$HT$ HLL$(HL$@foD$0tH|$L$PH5XE1H$h1H$xLHD$0D$`L$L$L$0)$H$PL$0D$`L$H$H$hHD$H$xHD$ H$HD$(H$HD$@HD$0Ht.L$01.1LHfDŽ$dfDŽ$2HCLHHxHC1LHHxHdHHH-@uIH11HCH $HKDLcHT$(Hs0HsXL)HHHL$ HxDHH DHH(HL$@DpHHXHL$Lx`HHHPhf@q\@=dHH=1|} n+DHH= 1W}fH)L2E&fDfLHEHH= 1|=f,=f%= = H=H1| nfHH>H}HEHDHH)1HWH@-H=dPu=dbj=fZI{mDHH=1{ML$0I|$+NL#N.HH=O1{=HH=1{ l1HHH=.1_{1҉1ɉULNLPGH|$1H5PIHALsA<_v?<wILGAu@LD$07GL$0HtD)I$H$L $M$I$pI$Hx/I $H|$1I$ALI$?D@(}L$0H$P$`Ht$@H$hL$LL$hfo$L$HL$`H|$L$xT$XHD$PLT$HL$)D$0HL$`T$XI$LL$hHD$PLT$HDF(foD$01H$PL$H|$L$`?L$0H$hL$xL$L$)$L$PD$`H$hH$xHt$(H|$LL$Pfo$DD$HHL$0L$0HT$@L$)$L$LL$PDD$HHL$0HT$@fo$1|$ t6L$0L$PH$hH$xfo$L$HL$(E1LDHCxf.AUATIH~ UHSHHHHID$H}HCID$H}HCID$H}HCID$H}HC ID$H}HC(ID$H}$HC0ID$H}"HCHID$H} IID$HC8HLHC@HCHtI$HHCHkHt5ID$H5rH8@BCHt*uHCHtH9sHkH[]A\A]fuHCfDAWAVIAUATUSHhLʬMFIxZhAFIL IILb0LH DRtH1ff.ff.NxfEfHvHHuMxAhdHILfEL$AfD1tAHhHHHʋHxH1t"DL >Hv J| EuLHH@HuDŽ$4ApPAFDV 1L܅IH} E1D$WH$`HD$HD$8HD$HHD$0D$D$(H$Ld$XDL$H+H5E1H{CuID$(AǀdH<$H$4?IH+DhpEtwHAIHvfHT$HHl$pH51HUFH<$H?H|$L)H9r HD$H+Dl$WJD HD$H5aHB1tHC0H$pHk@Ƅ$HH$xHDŽ$hHtH@PHt HH$hHC@Dc$Ht1AtHfnCxH5!~A@BflfHnD$DH$% )$D$ )$D L;D$Lx>tdH5ڵL`>tLH5LH>t4H5gL0>tH5L>H5LL$9AH5L"AH5L AHD$8HDHD$8AFDBS| 9IFƒL H$HHH9tOILHHE<7HLH=1_rH$xHG$4S$H[HE1Ld$XHDŽ$8fD$RDL$AFD|IV|$(HxRTf$P |$҃f$REI t f$R H<$1LHLZADŽ$` dEf$0IL`|$WpxsZ Hx(q L$@H|$0HtHW@H$hHtHW0H$H|$HHtHW@H$pHtHW0H$H|$8Ht#HW@H$xHtHW0H;$ IH$HP(HH$HHtL11LoIFHxhPHHHIFH$HLHxP8LHH+HHpBIFHxBPH99AFD+jTH~HHH4$HLSHLHłHH BIFHx@TH91Ҿ<LD$p|H|$fL. \$fDcX1LL;s1HD$pT$pHLH$$HJ1҉L~611IH} E11LL~ LLdE PLDDHI49H߉H9tD)׃u ىHIuff.HvHHNxvHvHT HufH\$0+fDIFLd$pH4$LLHxhXPHtLHLހH9D1H[]A\A]A^A_@EIEaE1Lt$ E1IމT$@LE(ff.ff.AHE9LmM9u uI6I}HHDR;uIuHF@uHtMm0MtAEtA})tA}(ufA}&uET$@ILLt$ E9AE< AENI9fLes&HEHL)HHHH)H|HD$pMIHDI@LDMLD\$ HELEXHL$HLH= 1gT|$҃f$R;|$҃!H$4L3 IHx(LHFIE0HD$pHt$HT$XIE0HFHD$pBHD$xIFHx@Tf$Pf$R*MIMd$MLd$@MIHP(H|$WIECH\$ffLHt$pHD$xHDŽ$HD$psIGLHHxpdxHIGHx@dH9AD$x WHH1H= xeI@SL71LL\$pLuH<$LCxHi1\$ffAWIAVAUATMUSHHH(HnHH5 HT$HL$(/D$tH5H/@3@HmD$Aff.fIII!LHH!IQI aMt8I w2H DJcHH eHT$LH= 1dD$HuDIG@@H|$ H5x.‰ DMtA$D$H([]A\A]A^A_f.IKIIeI\IHHWHKLSI>IWLHXHxQ\HP(MM9HD$gH$Ld$XMHD$H$H\$pMHD$@Hl$HLL$8Dl$THt$ fDI}HuzI}0$ /HtHxH0uWIWHL$8LHHxH)ȋr\HHIEH|.HPHHT$0HHtHT$0H0HI}@IGHx$A\IM9FHLLQHT$HL-HH$Ht$ $IH\IHL(M$Ƅ$PLT$0T$PPLT$0IIHT$PHP8m-HPHHT$0HHtHT$0H/HNj$I}0IEHAEfoD$pAEfo$AEH$IE(ICDI@IDDH9@I@{IDI DDHbfDLt$H5L'+tH54L+)@@D̀|$DDHAHh A#|$DEHGfH5H*H5Hp*H5YHT*H5zH8*H5H*D$AHAHfDI9DDHe IDDHI@H I}H e@|$uH|$H5,\A HLHL$1H̭LH=;^HDAHH v@IH$HHD$($VHH@(PC&H{<HSHHHT$tWHK@HHL$ )LHpI苾HIHL$(HT$HxHHF8Ht$ HPIVH8+D k8D$H H 6fDLH=1\f.HS0LH=1\fDIGHxp\LL9*LT$0HE1L$$t$HA$ZYLT$0<H < H H5H5QHIHHfDAH$Hl$HDl$TLd$XHl$HDl$TLd$XHt$ ILs0H|$L)HL$LL1H=[HLH=_1h[$HHFff.@UHH55SHHHT$D$N>1|$u HHH[]F$u fSHHHH=P:1ZFL[ÐHHFf.DHHFff.@UHH55SHHHT$D$=1|$u HHH[]F$u fSHHHH=kP:1ZK[ÐHyHFf.DHɽH81HHx1fHH=KJ1H@H=/Jff.@SHXHcHx H[ÐGH=?IH[DH<H=I1H@H5H=I1H@H.H=۶I1H@H'H=kIHÐH H=KIHÐHH={+IHÐHH=[ IHÐHHCDS0HHtH[AWIAVAUATUSHHLHID$AD$L諨AGJf%f=tHH[]A\A]A^A_DAGDtLHD$(HH|$(1GHHGHEHHHVHHIHELHLHD$IXHME1E1Hl$8Ld$0LMMHD$ L|$@H I9t4ÂL%uL tHIDIfDH|$0ѷIHHL$ IFHT$HD$ND HHLhHDcuH1[]A\A]fMDf.H[]A\A]SHHHT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$H$H=5D$HD$HD$ HD$1D$ 0H=*HT$H$H5 !H1[ÐAWAVAUATUSHH(LHt$Ic?IW|$H|$#IIH,i /AD$ID$([H Ty t A}H,ID$ II0I90HIIH%fHnM&AEID$A$AMH@JAD$ID$(SH@ID$ II0I9tIcwHD$H~+Lcl$H\$H1MGJLDHĸL[]A\A]A^A_DH=YHH=iHtʋҕHOHD$HHl$ H$LkHH5 SIHt0HHƿuD$8%=@LGHL9tH=׭DH1H/HuH[(H 11LHtAFJH5q1LufDH$H9D$ uHD$(HL$H9u HNLHH:HD$ H\$HL|$H$HD$(HD$MHP1H5تL1iHHIuD$8%=t,LHHuHL|$H\$L1LfH=YH=`@HAHtH1HHÐ1ff.fHi{H9fH=f.f.@USHH萧HHtB@tKH v2 ~)Ho)ff.@H HH fHH wHu&HH[]@H1HH[]HÐH9HLڃs%ukttTfT@HHHtHtHpHH)H)s1AN N 9rW10LLFff.UHSHH-HtHUH3SHEH[]ff.@USHH0HHtv@HvbHsHHHHDxu"ffHQH9t.ff.fDfAfHfzfDBH9uHHD1Hu2HH[]H1HHH[]HfDA'HH[]f.AWAVAUATUSHHHXHH|$0HE>WHt{Ht1HX[]A\A]A^A_fHH\UuH/ H3D$0H H3T$8H tEH/SYM64/ H3D$0H H3T$8H t2cIHX[]A\A]A^A_f.HbHCHHHDL`HvYHtL9r)Ll$(HھLGVHt!L0 5@LMt$LIHM)IKt.M9rHfDH|$LHھLSH+ff.AWAVEAUAATIULSHHH4$)AD$EL9%7L=hL5HHLHLHII!L)LL$HH!LL$DDH<$AH IHtYHD$PL!L HD$XIHv)uIHL[]A\A]A^A_fI|$Hi=)*HH=*@UHSHH(t{H9,tBH߾5HHtIHYÅx#(t:H[]ÐH{f.F*(ff.@fSHG(tcH9t2H߾HHt&Åx*5(t1[DH{Hu(؃[ÿ)@fATIUSH't[H9 t:1H@HHt%LE't"[]A\H{'ff.ffSHG't[H9t2H߾HHt&pEH8't,H[H{Hu'tH[0H[DHff.@AUIATUHSHH&ttH9t{1HIMtrLHLHH9&t5HH[]A\A]Ltֿ(e&DHLcMuB&HHH[]A\A]ff.fAWIAVAUIATUSHH%H9-1H5IM1L9}BfLIHL`XbHHC0IHP`L9b@rQHpXHH1 t[1]A\ÐH3HbtH;YaH{PY[]A\fDH=Ne_HC0HP`Df.HHt@HWHH9s?H~HHt.HHHHDHtHH+H@HO@HH)DUSHHHHHH=wPHHHH1H)Hǃ fHHHAWAVIAUATUSHLL$AHպH pH9H=HAMD$D$@tt }L@IHL`0MBH@8IpEHLAHAIpII!IWI MgAGu|$t }DLLHD$L8HL[]A\A]A^A_AdžI@LJ@HH@HALAtH9r IH!H9xAdž jLIG8HfDAdž I8|Lt"HN@H>@H.Adž ff.AWAVAUATIUHSHHE~A|$AHEPHIt$A@;I|$8AwOAFwQMtLHE1ff.3HIHHHHM9uI|$8@A uEt$ pAt$ID$0u.HL&HL[]A\A]A^A_9fHHHHtHEA|$Pt)AAAunHHG:IT$HHtfMRHE13HIHHHHM9uI|$8AHH}@Hmff.tH9rHH9ft)H9r$HHH!H9ps 1DH!H9prH9H9rtHfUHSHHHHvH7xHHN$1H[]Dǃ ff.@UHSHHHvH8H{+HHL$HH[]ff.H8@HHPHHHpAWAVAUATUSHHH;xIH9sLIMtVL勃Md$H#EI9sH}Aǃ uD} uHuH7HH"MuHHtRLf.IHmM;l$ s.It$Ha7I|$LL#LHuLp1LH[]A\A]A^A_HHHD$MH}PH[]A\A]A^ÐH|$HvHuHH[]A\A]A^f.A$H9HAD9u!I;$psI$!‰LJHff.fAUATIUSHH|$HtyyHyHH9rOAHH|$HuHt=HLLHPvet`ADŽ$ ADŽ$HH[H]A\A]ADŽ$f.1ILH>1IADLHHtAMH4$%:FH0H ˃HHHH HHH HHH HHH HHH HF EH H HF8HHH[]A\A]ff.@ADAD&fDAUATUHSH(H|$HAH2HLl$HHsLHl$sHHsHH 1IA DHHtnAH $sҁA t$QHT$HST$HQ8HL$rH H([]A\A]fDLPsHIHH([]A\A]fDLJHDLH H1!Dž!fDAUHIATUHSHHtH9HH1IHt H9sIH;xrxMt[HA|$uLID$8IUIUPAUP1H[]A\A]fDHHr@ǃǃ ff.AWAVAUATUHSH8t$H|$(HmB HӉD$ZDbIEtNHEH2|$AH`AsDžKIH8L[]A\A]A^A_H2T$HXE1t$LL$ 1H=IHtHD$ E1HD$Lx8HD$(HD$Cu"Wff.DC4CII9s7KtHl$(HtH|$pHEKtC4CII9rɃ|$L$HT$% ȉBHB C D$AfDDžHu{D$AH|$(&pHED$Dd$AIfH|$(oH_H|$(oHr?AVIAUAATIUHSHHtHHuyHLL$DALsHl$HHH}0AE Du(%ELH E$HH[]A\A]A^fDI;$xr~HLc iLA$tA$H9rI$HH-HD$HZQHE8Ht(HE0=ADŽ$ HJADŽ$ f.1fAVIAUAATIUHSHHtHHuyHLL$DALHl$HHH}0AE Du(%ELH E$HH[]A\A]A^fDI;$xr~HL iLA$tA$H9rI$HH+HD$HZHE8Ht(HE0=ADŽ$ HJADŽ$ f.1fAUAATIUHSHHtHHuvLLL$DAHLd$HHI|$0A%"AD$HH@(AD$ HH[]A\A]H;xHH iHtH9rHHHB*HD$I_DyID$8Ht-ID$0?fDž HEDž ff.AVIAUIATAUHSHtHHu5LDHgHHtHLHD[H]A\A]A^DHHu tHHtDž[H]A\A]A^fDAUAIATUSHHHt_:tZAΉHu[E1LL$HDLHt6AHL$ҁi &QH[]A\A]ADž"HH[]A\A]LJ@USH(Ht :ttALL$E11ɉHHt1HT$B BH(H[]@1HT$H<$(H<$HT$HHtHH<$HT$tIH 1H0H<$LJAUATISH H|$H9Htt:toAHHtH|$HHT$iHT$HtTE1LL$ DLHt6AHL$ҁY *QH [A\A]ADŽ$"HH [A\A]LJHDATUHSHH|$H9r~AHHuKE11I DHcHt1EH $Y ,QH[]A\fH|$HhHuHH[]A\fDLJHDATUHSHH|$H9r~AHHuKE11I DHHt1EH $Y 0QH[]A\fH|$HcgHuHH[]A\fDLJHDATUHSHH|$H9r~AHHuKE11I DHHt1EH $Y 4QH[]A\fH|$HfHuHH[]A\fDLJHDAWHAVAUATUHSHXH|$Ht$HL$LD$0tH9H\$HH$IHD$tH9H\$HD$H;xWMbHt 1}HDHA|$A|$D$ AHPA|$D$$HP$AF<$$M|$8It$0MD$8HH9D4$LLHLHHHD$(`Ht[MtVE1 IM9tGLHHAtsHH舲uHD$ǀHX[]A\A]A^A_ÐHt$HcIHHt$HIHnD$<HL$(HHLHHL$(HL$(T$QuHt }u|$ D$ErH|$0L|$01It$HLDy H AH1PHDEAIHLH9HMIHH T$8L$$AD$ AD$$D$ Et$( 1҅ AD$HX1[]A\A]A^A_@HLID$8HIT$01H<߯Ml$8Id$0H4@HL$H9HD$HJH=u!ǃE1E1D$<n@H=!D$<E1E1Df.HA1HA It$1PI9LLL$HHL$(HIAuEEH$HAE I I H~DL$H HDH1t$H\$LL$(IH;ǃ!_AXdH-h>6H\>!AWIAVAUATIUHSHHt$8HH|$HH|$8`H|$8HHHH3H|$8@{HD$ HD$8H{AHD$8HP{D$HD$8HPH|$8HD$(HD$HHHD$IHqA D$Dl$(ID$AEH|$8hHT$XH+IYH|$8H$HIH$HDŽ$L$L$HDŽ$0AkH?DHcHCD$(D$D$hHD$ D$I8!t$(HLIHI@H|$8=OADŽ$ff.@IIHqHHL[]A\A]A^A_AH$LL$]HHD$0tHT$dLLvH$HL$0HyPHL$dH9L$X#H|$8A(LLH.AfI@H|$8IA$ fH|$HL#D9iAEH|$H\HtxHD$HHPL$(9Dl$(ADŽ$ oH|$8HHt$8LLH(HH;t$DLLIfIH|$8LLH&1Ƀ|$ H|$8HL$P.I$HLLHwH9H|$8H$H*HtLD$ MH OL1kADŽ$jf.HL$XAHT$ t$L4I@HL$XAH|$8HHt$8LLHHHt$HL$XLIfH|$8H$HHHt$8qH$LLHt$8LLH$H$hH$H$qHgI(H$LLJBH$H$H3$H3$H NML狄$H P$$$P1$$LD$PH0ADŽ$DSHt$8LL}HD$xHD$pHt$HT$p1LIJf.I@L$(HT$ Lt$IfH|$8HHt$8LLHHIHT$ t$HLII|$ HH|$8H$HHuH$HLLtLD$ MH {fDHLD$IA9A |$ AE!AHD$8IHH$H$HDŽ$L$L$HDŽ$GHD$PH|$8HaHT$ t$LHIHH|$8HLHLl$pH$HD$HD$PHD$ H$HD$fHT$pILLH|$8LD$E1LHT$ HGH|$8HHxsHT$H$L$@HHuH$Ht$8LLHHsLHD$( HL$(=VH|$P,H|$8 =qf^RLEAVLD$0H 1>ADŽ$^_;ADŽ$*f.H|$8A @I$t$LHPI$HI$pHT$HT$ HD$&H$IHt$H|$8H$H H{HD$HT$LHwL$l19L$`ADŽ$JH2 A$5t$HL&ILLH|$8HHSMPLD$01H [LADŽ$XZH$H9$AVHMAUIATIUHSHt H9sbHHHtoxHPvuIHL$0Hc1HwHHt8MLLH[]A\A]A^@HǃǃI@AUIHATUHSHHH|$H|$SHHHH}(CIHMLID$HHfHnHLAD$$x`HL1H[]A\A]@H=pff.ffHpf.ǃ I|$謤L褤ǃ L莤ǃ fATIUHSHUHu(Hp=u#LHH[]A\ǃ[]A\ff.AUATIUHSHHH|$t\L0HH|$@RHthHHuNLcIHtWHHLx=1H[]A\A]@L(HH|$QHu ǃLtǃ AUAI1ATIU1SHHYHu!HLLH[]A\A]ǃH[]A\A]ff.ATE1I1UHH1SHYHuLHH1[]A\f.ǃ[]A\ff.AT1IAUHH1SH1YHuLHH߾[]A\4@ǃ[]A\ff.ATIHUHSHHHu/HHt9HDH\[]A\HHt؉ff.AWHIAVIAUIATUSH(L$tH9*HLHM.LAL;xHHE{{AHEP{D$ HEP|$ A6AAA@LK8Hs0D$HMH9DLLHH$HHHD$T$ bHD$LHILL$A$AL$u A>D$ 1҅D$% CH(1[]A\A]A^A_fAL9I@HLDD$L $茝L $DD$HHC8HS01LL$D$H<nLc8LL$Hc0D$H<$E1IL9<$C4H&LH;uADžH([]A\A]A^A_H@HD$LHIL誺L$A$AL$u A>|$ H蚶HLH fDHL$n D$H-LLHD$bD$HAADžADžADž ADžADžDž LK8Dž ff.@HHHrHH(Hf.ATIUHSHHt)HLHHHH H[]A\ÐH5H=11IHHuDž [HH]A\@;wHnHHbHfDH诜Ho)HHDHff.fHHHHVH9HqHff.@USHHH/HVH}Hu¸t HEHC1H[]f.SHGHHPHtH?HtHCH@Ht H{HtH[4@UHSHHHHVH8HpSuH[]H;H%H[]fAVAUIATIUHSH>HHHH9}L;gHurO(HwHH9LG@L|+fHHHW@HȉO(H9~H:vH9LG@IMtH IMHtHRHUHG@G(1[]A\A]A^DI<$gIƸ!MxHHtSI$fIn~@HLwG(flHG@H;*f.kH| rAUATIUHSHHHHH H9 H;zHr(HzHH9LB@L|7Hff.ff.fpHHJ@Hr(H9~H9vH9LB@LMt"IHHHDI $HJ@HHJ@B(1H[]A\A]fIŸ!Mx9HHtN~EfHnLh@(fl@@HHHfHH1n |fAWAVMMAUIATIUHSHHXLM|MtwHI9uQI9YHuFAA(HI;AMtHHII@H IMMtHIA@H@I$1AQ(HX[]A\A]A^A_fDH?L$ܹHD$8IHD$!MxHHD$.LILL$L$HIIA@HD$HHt$@Hl$H|$8Ll$HLd$ IMIIYHL $LD$(~D$@ID$HAD$HLLHt=L $Hl$$Ll$Ld$ LD$(t,LD$@HX[]A\A]A^A_DL|$Iy@LL $LL $HAA(MyILMBL yfDLHEYfDH?%H6H?%l@H?hHH6H?qH@USHH/H}-H}!Hk;[]DHH1H2H91tHBH9AfUSHH/Hc}H}Hk;[]DHH1291tÐHBH9AÐAWHIAVIAUIATUSHL tQHM葒HHL LLLL~H '蒸HHtZHkLc9FHHtFH LLLL7IOHHtHH[]A\A]A^A_DH(1@IHHHf.AWHE1AVIAUE1ATIUHSH(H?H9Gt{fHL4$D$IHHHHt]MLAHMHxAHL`HHtsHh1H([]A\A]A^A_L}LmxLL uPHHt-L0HL`HHtM tDMuL`H;u<fD趐@L`HH\ Tf =ff.H(H?H4$HHD$HD${H(fDH?阷H?鸴H(H?f1H4$HD$»HtHH@H(ÐUfH1SHH(H?H4$HD$芻1Ht#Ht HHHUHt HH@HH([]HH?H4$H5HT$H聼Hff.H(H?H4$H5HT$HHD$HHD$H(ff.H(H?Ht$H5 HT$HH<$ H(H6H?ՍDSHHtH?诵H[fDL LHHHϴff.@ATIUSHHtaHHHEL%HHtVH8Ht ID$HtHt4HHHDH]1[]A\f.HHr DHtHHHDH@Kff.Ht 醴fDff.@HHt7HHHD11HtHHt#HHDHÐH1ff.SHHtGHHHD1ѸHHttHHt)HHDH[@H1ff.SH_6HH9r;ff.HH9s'H;vH9sHHtH[HD@1[ff.tGATIUHS褧HHt41>u[]A\ÉLVtډ[]A\H@ff.H(H?f1H4$HD$蒷1HtHHPHH(f.fSHHHtH;ƎH[齎ff.fATUSHt HӅuHoHF@9E|N[]A\HBL&H7H8LHHCH8HtHu[]A\fDAVAUATIHUHSH覍HD$HtlH1L-u0fD1H|$HHLLs芋x6Ht$LI$@qH|$HuHH[]A\A]A^H1[H]A\A]A^ff.AWAVAUIHATIUHSHH(H8HMt L9`Mt L9hD$ H谌IH  IHLhH8L`L0AGD$ t6H8jH|$HH50H1axdHt$fDH(HD$HHtBH8L|x%1H([]A\A]A^A_D$ +H|$ILAL9ǃ AWIAVIAUATUSHHXHLD81HD$HHT$(E1E1HD$HD$@HD$HD$8HD$HD$4HD$8HD$ HT$HL$LHt$…Ht:I8Ht$@9IMtI}Hu(I}t1IHLl$HfHxvIԐI}HT$ 1IEHtHoHuI}T$4tMEH m1LD$4Aff.H|$8vIHXL[]A\A]A^A_D=u+MtHD$(HtHtHHtL(뷉D$H ~1L1oT$AfAWHIAVIAUATUHSHHHHD8H|$PHHt$@HD$pHD$IHHHD$H|1ML$L$H$HD$0H$HD$(HD$xHD$ HD$pHD$LL$0HL$(LHT$ Ht$H|$;D$lH|$@Ht$xHDŽ$tNHD$PH8IMtIIWHt8HtCHHL$HHL)HmDL$fDHuNfDLd$lH5LtHHHHHL)HD$LHl$XL$HHLl$8fLmHIM1LIHt:AtHLsHt$8HL$LHT$H)HHDȉ f|$lHLl$8Hl$XuH|$pD$lH\$PLE1H|$ׇH|$P11H _|1Я.fD|$l u3D$L=uHD$HEHĨL[]A\A]A^A_H|$p!D$lH\$Pq1D$l HT$M@HHqDSHHRH3ޢuC [ÐAWAVAUIATUHSHHHBH:HpHrHqHsHH{HITIHtpHpHtOL$sLt$Ht$HHLLOLrH|$ rH|$HD$0H߉~H`Ht_AtYHD$`Ld$`Lt$h&HT$h1HH(H`1LLtЉ=:Hx1[]A\A]A^A_fHX=oHx[]A\A]A^A_fH NHBH5KH=4H@OHHtlLMt`H 11H1әE1HtE1KfDI}Ht$hLD$D1HD$h1IEH{H|$hI}LlI}L[IUIuLH6fIuAEH8_H8p[HI<$^[HHc[fDHLLHD$(0L\$(T$DD$0H iH߾1@HHtLLMt@H hDl$4=H Ch11H迗D$@LHcMLDDl$4H H5%H褙|$`AKIL%m.MHH d111Dl$4I>뺋T$`LHE1l"KHEHHL$HAUHHD$(HHD$H HD$ HD$ E1IHu\fDLmM9sGKT%HD$HL$HHL4HN<0A4uH<$H.YyIM9rH4$1H=Ѓ1H8[]A\A]A^A_HHL$HAUHHD$(HHD$HHD$ *f.MHD$ II9?H\$(AH=XH$Ht$ 1=AH8[]A\A]A^A_ǃH8H[]A\A]A^A_H4$1H=W1H$ AUAM H )H4HHHD$HHtIH!AU AM$H)H4HHHD$HHt&HH !11H1Ӄ(H DAVAUAATAUHSHH@H8H3Ht.Pt Et!tAthH@H[]A\A]A^HHEHDDtHHuHH{@H IHt Lh MLDIILt$Et"I1LHAtI1LH_IHsPHCH1HH9HHuzHC@HIHt$HH衳D$,u5MHt$11LH|$HU^IHHIcǃHH@H[]A\A]A^Hl$H@[H]A\A]A^HHt$HHHS@XD$,GMGHfIHt$L,%@ǃ 111H TH6@fDH5!H= 11IHH5H=11IHlIHEIDAWAVAUATUSHH8Ht$HT$ HML|$ LQA?M$XHD$HD$ff.HD$L0IHADF t-ff.ff.IGIHADF uM9cMoH5 qLTIHMD@*LAALL)D(wHH ? HHH;hHLHt9ff.>tHLOu IEH9OIuIHuLǃMIH;pr~HT$ HLvHD$HHD$H8[]A\A]A^A_HHeH9r!I9pfHpAT$IH9,HߍhD H!uf.D$HL$!HH;H HHt$H|$wHH|$!H H;H HL$HMtj HT$AH|$ǃHD$DH8HLLL$(MLL$(MA1HL$H4HHH`jMH AHl$HI,HEADF h*HNIHMDIGADF tIGIADF uMH@I)IFH9HlTLHH@HI}HD$HI}A@HHHt$HpH#H H4HMHHD$ HD$HLOH@B0H@)H;%HD$HEHADF 鉃LDMA H|$tDt/MH\$HD$ HD$A8MjH\$HD$AH Hl$ MHD$A|MHL$A\A$MHJ4OHt^HHL1H)HH1FfDUHSHHH?,HHNj!Ht1H9pr(H}H9xr3HHH[]HEǀ1fDHHHH!H ˃HH[]HEǀ1ff.AWAVAUIATIUHSHHL2H|$MtEHI9u-I9~HtvLJHH[]A\A]A^A_LJIHHXHHxIIFIF IF@AF(MuIF@HtpAV(t`L|$0LgAn(HHKIV@HBMtHcRI$IF@IFAF(H[]A\A]A^A_I^0fI~H'tJI~HH޹1o|IFHHuL:IEDIF@?IvHtH|$HHL|$xIPIvLAF( HtH@8IF@IIN1HLPIFHIF@ǃ 2ff.@AWAVAUATUHSHHt$赂HtH@H[]A\A]A^A_DLhL`MtAE1 tNLsM9s1K>HHMdA4$eH|$HJyIM9rDžH념AD$H[]A\A]A^A_ff.ATIUHS1HHtH[]A\H=uHHtLHHuHȰAUIATUHSHHHHμHt)ǃIHL[]A\A]f.H1HIHuHHtGHf.MtHL$ HHHxHcD$ IEHL[]A\A]Dǃ jfAWIAVAUATAUSHHH0H.ID(Ht$E1HtCIHtKHH9Eu.L9}Ht_AIHL[]A\A]A^A_fHHLxHHHEHD$Du(H(EIH$HIGD`$D+` DhAME(5H$L4qcu(HHL)AtE(~vbL)L9rHRHD$H @IH$Ht8IGD` D+`DhAMlAu(MHL)L9sMWM/E;ZrE;ZrOff.}(L)L9BEAtMDElMtEuE;ZrE;ZsL9 L HE(+ fDAWAVIAUAATIUSHHH.HtFHH9Eu)H9}Ht^LJHH[]A\A]A^A_LJ@äHHHXHH|HEE(I,$L0ELD(H$HD$MtLmU(H9r%DLLHH[]A\A]A^A_DHL$HHu0L謭AŅu%H$IHD$E(&ǃ HI$D@AWAAVEAUIATUHSHHH@Ht`HH=E1E1|oH(HMA2H0HRHzHAIhf1H=D"oHL9H@JH?PJ0EPeH(AIDHH(H7AUH0HH赴H;HfAHH(H(AHtfDHXHH0HtEf.EtCHHt7EDHLIHHL[]A\A]A^A_DIH@L;A1sH0HEHg1HLHIIH{HRHtE~HuFfD1LH=ClHHBtHD$MfADHtASHtHLHIHHH[HMHpIHcH0HHH蔨(fHPLH=A1kDDHHIHfDEtHAHtH;*H fH5Hoff.A1nff.HA1Kff.ATAIԹU1SH$Ht8HHH}uLHH[]A\Ifǃ[]A\ff.AUAI͹ATA1USHHHt?HHH|u"HLDHH[]A\A]ǒǃH[]A\A]f.f.f.f.f.@  %f.%FAfuFv AH H HtHHtLff.FA uF vAH H HtHHtLff.UHSHHHHH+HV$HHHH`V()ыV,HhHHPF0vHXufuuru }HHtH=1jhHHtnHH|H=>HHDH1[]5hDKYuHtH5Yu HtHYHHsH[]fAWAVIAUIATUSHHXAELHAU D$AEI,HD$IDAEAEUA}$9sEHD$HH9rBHt[HtQHX1[]A\A]A^A_D$H9sHHD$HHuff.@MtMfMtI9hL)IFHHHl$1HtrHHt$ LHHt$蜙Ht$HN¸uT$<AIFHUIH9l$HHuHt$ LHHt$褘Ht$D9r,D$HHX[]A\A]A^A_@HD$HDH\D$A;EsT$t`@fDH,L$A;MȃL$fDHH=1sefDL$f.ftZv(Ffw/HHHHIHfD fu@fw2HWHcHHH1DHD11LJH #1DfHHHf.f.ft:wfu=@Ffw/HHHHOHD HfDfw"H?WHcH1DHD11LJH C1deHHHf.f.AW1@IAVIAUATUSHAH$HT$8HFHD$hD$X4IEa(AA,IHHD$I9<H$Ld$(ME1HD$H$HD$ HD$:IcDHHfDDHL$HD$ HH9IIAAIDPHL$HT$LILPIH$DLP HxQLH$f fAWIcHԠHHQ_AH 91L1cHĨ[]A\A]A^A_Ld$(H$D|$XLEH=1aAH-E11HL=fHL;IH;H$E11HLIHH$E11HLIHH$McE11H$HLH$H$H$H$H$H$H$L}IH}H56eH=d1XIHXL|$ MoJH6MHIH :MxIH HEH1HLmi4HD$IdžpI9 HD$xl$XMD$\HD$(HD$pD$PAHD$D$@fDIA|$A|$IPA|$D$IPHL$(HT$LILPA4$LPHT$pHD$0ILP HLI+AE=HRHcHf AfDH= 1B_qDAD$A98L$@Kff.ff|$t3D$XA $Dt APD ILͨIpM ,IAHt$LL$xHPMIpI9MIpH9D$ l Ht$ 1H=L$Ld$hH$d^Ll$8LLL1 HDŽ$H$HLuH1HLmHHuL荚=tH|$hLtf|$IHt$0H\$XA $Df.f|$|$XA $IDLRuDH|$8t-fAt$Lcf|$HOHt$0HwH9t$XA $Dt APD HLצ H|$p~D$\f|$DD$XA $DEt APD ILwcH|$p~D$Pf|$DL$XA $DEt APD ILJF<I<AdžHD$ 1E1!I9pID4ALPD 莥MApD )IDF(V,IIHHD$0I9H\$(M1LD$@Lt$Ht$ fAMA]E1A΁f fuEeA] AI L I?H|$HHL$t$yHL$t$HH|$IMEL)L)O>Hl HD$0MI9^Hl$H\$(ILD$@Lt$LL$ ILL$LD$PLHHD$0LL$IfHnHEQ(fl)D$@MH?LHLT$(Ht$ /LL$Ht$ AA,AQ0J<8IHH/L|$D1LT$(D)LEJ|-LL$HD$E9foD$@LD$PEi,IRILHLALD$LL$LL$LD$AA(IIHD$0I9H\$@MMLt$LL$PF@frfAn$fLl$(fafAAD$AAHD$0LMII9AmEuAHf fD$f%fD$fAuEUAE AI I Mt$H|$HLf t$ (t$ fAnEHD$( D$ ŸfnHfbfA(>3AW AOAG'HD$ H H HH|$HHHI9LL$ t$MLMLft$fMLl$(LM)f|$uGff.fpfnD@DBrf~HH HHUI~NApEP fAnE@H L I~IfAnfnI fbfAnfbflDAEAGHD$ f|$t$ff.D0HHrHuH9L$(HLLHL$Ik,HL$IfDDL9r EwsLEwDH AW (H$莊H|$h脊Lܒ2H\$@Lt$LL$PAA,I+H9H HLL$AdžAAI}/ILL$Lt$LL$ IH$HLsn D\$XDEt AD H$L?n $D$E$9$D$\1D$P=!IJH=IH1UI蝝H=,H1TIT$PH=%,H1TIT$\H=,,H1TIΚH=7,H1T1HD$E1LEH vH,H5H=N(H WHH5ѼH=*/(H 8HH5H=*(H 9HH5H='H GxH5tH='fAUATUSHHLJH=-H1-HHtHHtff.HHmH]HuHКHH踚H謚H蠚H蔚HHtHHmH1`HuH`HTHHHL,H@,H($H0H@,H8HXHt3LPff.fILHmLL+HuHH-FbFH@+H{H9t+H{8H9t+H{XH9+H|+H`H8TH@HHPH HHLJ8H0HLJ@HLJHfHtCSHH1H=Iw u![[DH[AWAVAUIATIUHSHHHHtHFHHu3H{t'Mt I|$tLuMtH}w HHL[]A\A]A^A_}DAVA61H=!HAD$f=;EFA@<wHt AA(4EFHEIAH9EdX!HD$Hp4IHD$LPMIHuAOLJD>KD:HA~Bt$&ABAr0H= LT$Lt$Ar,AF1IGLT$IArHH9AzHH9r~EBLL9rrEBML9rfEB LL9rZEB(EL9rNEB,DD$L9r@9A9AE A9AE A9AEu D9H ӰfH  111H1H g 11H LhAB$IJAB0ABIJ(AB$AB ABABABABABAB AB AByD$f=a1H 11GDEB$E9DD$ AA9AED9t$AA E A EEDt$ AE D D tH Hw A9tAAE)A)E9sD$ Ar9t)A)AED9t @h@gLEM M9|$HT$HE1HLHHARHL$LT$Hk(HHHHAB,HHPAB0HX7LT$2HD$oE@oEǀ@(Ht&o@8oC@HAo$@XAoD$@hHD$HxHt!LT$HT$LT$HHBHD$Hx8Ht!LT$HT$LT$HHB8HD$HxXHt$LT$YLT$HHD$HHxXVHD$Hx6HD$Hx8H-MtID$HT$H`ID$HhH5}11LT$H=](L|$11L%xH-aILH1LHIH9ILJه1HLI(H辇ILI0mI_IQI(CH:|$LT$t#I1LLT$LT$ L|$LLT$ILH5ٙH=ڙ1CIHHt$LHL-HAGxLT$#HC1HsIH<LT$HIcH|$HLLH|$jH{HD$HHHD$ǀHD$HH[]A\A]A^A_HD$H6HPXH|$LHLuH\$H4EHǃ1HD$H xt`H8H8uHD$ǀPH|$1L]u%H|$H xtH8H8u봽_H\$HH=5HP8H-5HP $HLT$ HT$ Lt$HIH%HuHT$ILMLT$ IH 111AH 111AH H@t$/LT$HT$ tHfHnHD$flHHt$/LELT$HT$ HMMArHt$8HT$8L)LPLT$uEHD$LD$8LM9>H 111APH 11I1@ff.fAUIATIUHSHH>Ht Ht#MuHL[]A\A]sHLLHH[]A\A]]ff.fSHHpHHH=3Ht$ H|$HD$(HD$HtpH|$0HT$8HL$@LD$HMH$LL$XH\$0H|$PHD$hHD$`>LL$PH$H|$HLHp[fDMH$LL$XH|$PHD$hHD$`=LL$PHH,2HT$8HD$0HL$@LD$HMt'HD$PH$HD$hLL$XHD$`R=K=H$qHp[LL$&=LL$ @MtH1f.HtCSHH1H=r0=w u![[DH[[ff.H oFHoF(Gff.oF8HoFHGff.oFXHoFhGff.1WxGx9t/Ht%H@tHHwHW8]u H@H 0H5H=}HHHUHSHHHHtCHHHtH1H[]ǃ HUHSHHHHtHkHHtH1H[]ǃ ATUSHHHH9HHH9LMt}'HǃH8HǃHǃǃHt"Ht_ǃH1[]A\HHHǃHǃǃuHHtH=ȣHHHhLMHTHǃHǃǃ>A$1LH=Ѣ9A$wLDA$ǃ@LJǃ ATUSHHHH9HHH9LMt}'HǃH(HǃHǃǃHtHt_ǃH1[]A\f.HHHǃHǃǃuHHtH= HHHhLMHDHǃHǃǃ7A$1LH=7A$wLDA$ǃ@LJǃ HH8H8t9puH1LJH@DHPHPATIUSHӋ6H;HR&A4$H;HSH&[H]HA\ fDATAUSH/Ht}uD[]A\ËWHtH5Hg tH5HT tHE1H9CuC E1Aff.@AWAVAUATMUHSLHhHH$ID$IHH$H|$0Ht$HT$HD$HHAH8\H5xH=x11yHD$HHD$XL|$PHD$ $Lt$HD$,HD$HL$ LLH8rHT$XDD$,BE-uz1HHT$8`HT$8uHt$PH|$(yyH|$ |HD$0ǀ HD$L|$PLt$H$D$,ff.@H|$1LLqEtHI$HEѐHD$Ht$PH8:zHHpuHHD$ HT$ uL$,BYHt$PH|$HT$ yHT$ BH9wHo@=EHD$XIL|$HHD$X@I9$A1HLLptA=mHEH$McH|$HH>yH$H|$L)HHrz1Hh[]A\A]A^A_ÐHDJLH 5PufHEH$H|$HH#z믐zH|$0H H5Z?6f.HDJLH F PH|$@113Ht$`H|$xXZ@Ht$PH|$x=H H\$011T$H3H|$YyT$OH H\$0H 11HG3H|$yDAW1AVEAUIDATIUHH= SHHHc$LD$$D$Ht$ R1$H0HD(D$E$EE1Hl$(MLĨD$JHD$HLINj|$MgILHt=t$Au)QHHL$0AHL$0|@HH9\$uD1HH[]A\A]A^A_ID$9PtHH9\$t̋L$iHD$H4L_vHHL)L9HMEH$uHH9\$oOAuHHL$0kHL$0.H1HD$(Ht$0H0uH Ht$0[f$EHfHD$H4HD$ H8uH|fDHl$(H OH5H2fDHD$(H1HL$8H(Ht$0*uHaHL$8Ht$0yAW1IAVIH=} AUIATUDSDÉH8Dd$pH4$DD.EI0AID(HAM ALI7EHLL$DD$HL$Ht$ ^tHL$DD$HLL$NHt$ L[HLHL$(L\$"L\$HcDD$LL$HL$(LL)H9IM9tLkIM9@1H8[]A\A]A^A_H uH5[L=1fDH$HL$LL$H8DD$sDD$LL$HHL$H@EuBz6HHL$ LL$DD$HT$HT$DD$LL$HL$ IM9&I7^fDIH H5Le0#H H5cLE0uzHHL$ LL$DD$HT$HT$DD$LL$HL$ xH2zI0HL$ LL$DD$Ht$H11LHHuH.4=H([]A\A]fDH|$D$ +D$ H([]A\A]AVAUATIUHSHH HD$Lt$Ll$fDt$HAԅuBH߹LL_HHuH3=H []A\A]A^@H|$D$ +D$ H []A\A]A^ÐAVAUATIUHSHH HD$Lt$Ll$fDH|$HAԅuALLHsHHuH2=H []A\A]A^H|$D$ b*D$ H []A\A]A^ÐAWAVAUATIUSHH|$HteHILl$HHL}IHtPHD$AHt2 w=AGH9H9u>L9t9IHt H@ADŽ$HHH[]A\A]A^A_IH b`1L1ADŽ$ff.@AWMAVAUIATIUSHHhH|$(H|$8LL$HH|$8HH|IHL$MHHT$AADž3HD$8A~HÍ@H|$8HL$HHT$@LHPHD$8A~HPH|$8HD$DD$HHP8HH0HT$$E1Hl$PD$0ELl$ D|$4MLd$IH|$8HL$IMLHyH|$8DL$TD$\t$PI I HD$M,t$XHMID$8PHL$0HT$(H|$HrZYHL9wD|$4HhD[]A\A]A^A_@H|$80=ugL$MHHT$AAfHD$HH|$8DDD$0HT$@LHD$HP DD$0H@/HT$(AgDAZHt H9s HSHWH[H8ff.HH|$H|$]zHt 0HMu HfDH|$HÐHH|$H|$zHt*0H=Mu HBfH|$HHu1HHH|$H|$yHtxHD$HHøff.@ATIUHSH H|$H|$yHtTxHHD$H v)u.HLHtTHX8H []A\D w+t&ADŽ$H H[]A\f.CH []A\@H|$HHL$1HPH\$@UHSHH|$Ht7H|$HHxHt"xHD$Ht(HH[]fDHHH[]H|$HHHuH|$-AWL=AVIAUIATIUHSH(HH|$HL9;uiH9kHt L9s{Hl$HC(@HC@0-HS@MtJAMHk(HS@H([]A\A]A^A_fDž1H([]A\A]A^A_DDž1fHH|$HxDž1DsIHtH|$H=wHD$Ht~#HHH|$HhHHH1Ht$HPHD$xHD$HuqH|$LtL;HD$HD$xHD$HPHT$C(Ht\HB8HC@I$H#I$1DžH"1DžHD$HCDž 1@AWAVAUIATIUHSHH(HD$L|$Lt$t$LAՅuBHLLHHHuH*=H([]A\A]A^A_DH|$D$ "D$ H([]A\A]A^A_ff.@ATUHSHHLd$H|$LpuHtcxHD$HxRt H[]A\@HHHHt,LH\$'uHtxHD$HH[]A\@묐AWIAVAUMATIUHSHHHL2H|$DL$MHI9]I9^HcH\$HIV HzPIvD$HtMDL$H|$MLIV0kIHH|$)=I~0IFEN(D$A9MFIN@Ht$0IV H|$D$8l$8H|$t$08MtI$MtIMT$4L$DI9rHHHEH9s$H9rH9Bf.HHHEUHSHH|$]HtQHH|$:mHHtfLD$LH5>@LD$LH5`>@LD$LH5>>l@IpH|$XHT$`LD$0D$lxL$lL$@HL$XHL$ D$hHHD$(ItHHuHWff.HBfnH WxAȅtcHH H0EL L;hs L`MH fnLfnFfnfbHfbflNHH AH0ffHwxof~)D$taDD$Ht$L 0H;hs H`IAЉHPT$L@PE1HDщP DDD$Ht$fAH듐AVAUATUSHHtJI1Ht葟HL膟HLlIIuRHHtH<(LLB+H[]A\A]A^f.SHHHD[ff.Ht71fDPYHt;SH HH9t3H{0HtH{8HtH[fDH@ff.fATPUHSHoEHoE@oE @ oE0fH~@0oE@@@HtHC0HtCH{8HtHC8Ht#H< H9t/H[]A\H{8fDH{0H1H}HHI'HC@HHtHu@LHCH[]A\f.HHtHtHf#,H 511I11HAWIAVAUATUHSHHXH}HL5 :L HHLPhBHtIz Ht IJ8H@LHխIHLl$0HHLHSE1Ƀz AD $LD$0ID$@MfInfIn1LflLHLD$HD$@)D$0LD$D $HH&HcHDH_LXL5 L- fDHSE11Dr LHHL:HHNL&H1HXH[]A\A]A^A_f.E11E1fDH1L\$HL$I觞IHHLIE1jHt$1H{IH袡XZM2HL$L\$HpXHtNAR(;DfInHL` H@HfHnflHLd$@)D$0Ht$0f.HSIB8HxHHIH9A~B fHnL\$Ld$Ll$fl)D$ DǃE1AA>fDH211IIH )311Lc1IfE1L7LH2V뛉HL\$L$1xHtL$L\$HD$8Lt$0Ld$@LH%2RH H5i2H=\H2'AUL-ATIUSHHHLHiHHT$HHH}tQHE@Ht$ LHLl$ HD$0HD$HD$8HD$(Ht[HT$(HHH[]A\A]@裸謸H }11I115LHH[]A\A]DH|$HD$HD$fHHL[]A\A]ifAVAUIATIUHSHD$HT$޿蘛Lt$1ɺLHHvD$f=f= 1Ht$^HHvH>bפGH9D$c…LL^HHHHHA4=MLf0H 0MEI1111 Ht輕0HHĠ[]A\A]A^f蛕H0H|$@1HHtUE1E11jHt$P1HȄHt$PAXHAYHHH1E1HE11ҾU^_HĠ[]A\A]A^f.HHHH HH fHL% HHt}H1E1E1UZYf.諵贵ML.H .MEI1111/HDH1flHu5>H -11I111>AU1I1ATIUHSHęt/HLLHCHH[]A\A]DMt 薓A$1ff.H1fHHHHHܖff.HHŖDwff.AWI1AVIAUATULSHH=.HhH4$HLD$8D$W4HE(H=-HHD$11Hu'HHt$W裓HHl$E1Aغ1H+HD$HH@HH>bפGLyH1Hi M1IHkHD$Hx(M1LT$H p12LT$HH@HaE1ҋHMtH$L1IH 1LEHh[]A\A]A^A_H$H8 HL$HHAHAHlMI,E1f.I<$IӒMlI9uLIHHD$LT$0E1E1L|$@Hx(HD$XHD$ H|$Hff.fHD$0K4AJ<(XH$1HD$XJHD$Hl$ HD$(HALH裑H*HI)uL|$HT$8L~AHcf.HHHHHL$L|$LHKHىMLLADÅuO躏Åx\H[]A\A]A^A_ 1HMtI}IH 911踼@kyHߌDÌ1MtI}H 11vH讌ufAWAAVAAUMATIUHSLHHD$PHD$HthD0EuZL`MtAoE@8AoE@HHto@`oC@pHǀDx@XH[]A\A]A^A_fHhEt5HtEt HuHOʋH|$0H[]A\A]A^A_LpfD@@wXt@HO}ff.@HGHtHvH>bפGH9tHP HDfDAUIATIUHSHHWHtHwELHLz11HHtCHHMMU1^HXZHH[]A\A]H>bפGH9u1ۿ뽋UH ^111{fAVAUIATIUSHv11Ljx~Hƿ%Ht$0E1Aع1HH@HH>bפGLt$0H9Eu[Lu蠌HĐH[]A\A]A^DH-9MtAUHM1111蜹f.軉HLH-Ɯ#,f.H-YH-iHt H7ff.@HS7HtuOuVH{(H{0H{uiuOH軐HHtHH[顐HHtH7ODHmDH{hoDH{@_DAWIAVAUATULSHH8H$uGHtH5HۋsLcA$I$ H8L[]A\A]A^A_@HL5GXIMDLoH=qD$ 1L;MMIULIu(LMpHLxH=T1LIU LHLt$Lt$LLIDHD$(HD$ IDH$HD$zvIHAuH~D$ x L yI$ A$I$HI$HL^HHtD$EHt.LHyHGkfHtEE1|$Lk@AUIATIUHSHHHt$HHtHH[]A\A]fHu8HU`HE8LMHHHEHHE`HELH艍IHtqHtlH}Ht3HLxTH} uH] HH[]A\A]@H=HH H5oHEHHuHjLpMtAE 1ff.AWAVAUATUSH8L&H|$Ht$HT$ LD$MHI9$HD$I9D$Hu]H|$AD$(u}%LHD$H|$HtHD$fD1H8[]A\A]A^A_HD$HtfDHD$HtfDH|$HoLmL9sHLuL=H\5(AD$(LHuZHD$ HtHHT$H|$H8H[]A\A]A^A_DAT$(HL9 HH\(AD$(LHLH蕇tAD$(HD$HL$ H@HH=^H9f.L$,L$,HIt"HD$ID$HH I$HD$L DHD$H{ pAWAVMAUIATIUHSHHHuMHHHXFHMtI$L{AHHL[]A\A]A^A_H8H@HGHHHOPHH(%H{0HH{01HL$(H>L|$(H*I9HLEH\MtI$A=fDMtAE1#@3EHMtH{AfDHC(JNHLLIu HLHӅtH[]A\A]A^A_H1[]A\A]A^A_øÐAWAVAUATIUSHH8HT$L|$Lt$(HD$ Ll$ D$!DHT$Ht$(HAԅuLH`M1LLHHHuɋD$=tuC1H8[]A\A]A^A_fHD$_H|$ D$H8[]A\A]A^A_H|$ fDHHH1HGXHHfvH)hHB@ff.AULoHATIUHoSHH]HtfHH[脂HuHL9uI|$XH[]A\A]bfAWAVAUATUHSHH8Ht$H|$H0IHD$MHA}Ač@ H.HcHAUHt$HAAD{P ~HHHhD`DhDHHH|OD9{PAuCPHH<SH8[]A\A]A^A_@AuH|$89E1AE1iAUHt$HE1AA<H|$HT$HE1AHT$Ht$HDl$ H|$H胵Ht$HHcH8[]A\A]A^A_@AUHt$HE1AA0EEHnH8[]A\A]A^A_STJKTT@fDC`H8[]A\A]A^A_AUHt$HC` {ff.SHHHT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$CdtH[fDH$HHT$D$HD$HD$ D$ 0HD$xH{X4uHu8HCXCdH<$ H[H4$Ht HCX@H{XfHGXHGXHtkUHSHHHHT$^tH~HD$H[]fDHHH؅yDž 1f.1ff.fAUIHATUHSHHHLIHHt/LHLHHP xY1H[]A\A]@H51H=11HHt)HHLyHff.uff.AWAVAUMATIUHSLHHHt$XL|$PIH1HLtCLL許t[1MtHLHH[]A\A]A^A_@HL5y,uHD$Lt$HHUL1LL蜲HHuL=NL{HHt$XH\cH5H=1OIHBHHt$XHL/Jt H|$H[]A\A]A^A_fAWAVAUATIUHSHt_L-t1L-t L-LpHK8HHt0HH[]A\A]A^A_fDL-uf.HtLItI|xHtVLHHD$tIWHHOwHt$L"IHt"KHHx L[ADŽ$ GAUAATI1UHLSHHHHL$ttD$ t'HA9tHHLH\$dx 1H[]A\A]rff.@AV1AUATUHSHHHH$t1H[]A\A]A^DHH= 1_HHHHiHHtLl$IfLLHu>Lt$H1LuLH9uH<$ O=AHH=+1謟gqff.fAUATUHSHHL*LbIHIHHHHt(H I< u41{H[]A\A]H (uH5 L輢KHH=1K۞fH ifH5s LuHH=y1袞ADžDAWAVIHAUMATIHUHSHHȫI$1LIsAA?HHPv ukHH蠵LH=>1LLIHI0HL$1H.H\$t-HH=;1贝f1HH[]A\A]A^A_@LL膺HHt6I0HLyADŽ$ ff.HLA$DAWAVAUATUSHD$PHl$X$H7HIHHLD$IAM4$HHIH=1͜A$tA$H9MH4$IH H IHH(IHLHLIHHuTLHD$D$I1A$H :1L1趝LT$1H=1E1HL[]A\A]A^A_ÐH ɂ H5L蕟I@Hc$LT$AA9rVЉ$M<4$LHH=Ȃ1艛H(LIHt2Mgf.H D H5Lk1H=2I9I(L=MHLLLHD$dLL$HItmHLHD$`D$I1H ƁL1DL1ATDL$XHPXZfDLt$`H$H$L3 HT$0LEDHIHXL%rF@H$H$ìHT$0DH߉!IHL%gH$H$HHPD$PL$(L$LD$8HT$0AXAYHHdHT$0DHIHL%f.Lt$`H$H$Lt$`D$HHPL|$0L$LD$8L$(LLHHHD$pt$xD$ PL$LD$HL$8H$H H|$`jH`LDHqIHL%HT$0DH蠮IH}Ll$L|$`L$Ld$XHl$DL$`HLH.H$LLLHHuH$Ll$Hl$=L%ff.@H$H$Hs1IH$H |1ATDL$MH$@Y^HT$0DH@IHL%qHD$`H$H$HHD$޹t$`D$HHPL$LD$8L$(HT$0HD$pA^A_HG|$hIkIHH$H$HDaD\$hE1E%Ll$0MML|$(Dd$(Dd$D@ID;l$hC4MHHATL$L$(HT$04KAYAZHuL%bJf.Lt$`H$H$LөH$H$6HHPD$PHT$0L$LD$8L$(HXYH]LDH蒢IHL%fH$1HL$I1H yDžHH߉L$葢L$ %HD$`HHHHHVH$pTHH$ZTHH_TH5$HSH$H8HHHHD$D$HyfDLl$0Dd$(MHT$LDH`IHLhffDH$IHl$;HIM1H$H w1AWDL$誐H|$h@HAZA[If IxH5HQSH$HGI1HL$H w1'H$L%sL%gH wL%uOL%sCL%o7L%c%H$T$`1HIH Sv1蔏D$`ELmgLL%YgH$ǀ L%yfDH9AUATUSHHHjL.H7H}XH}XLILHH H 9C;KsvH;H H<u)uE9rA9r!DH9tbH[]A\A]uH[]A\A]@1DH[]A\A]H ) H5H=w`H b@ H5lH=!`f.AUATIUHSHHHtHH[]A\A]DH5ɐH=1IHtHLHxHLH[]A\A]LfDAWAVAUEATIUSHhL$$H|$T$,I HL$ McLD$0JHDt$H这H߉D$T$IIH=BwRPL$1H$H$蕋YH^HEtsHh1[]A\A]A^A_f[eHwHcH3HHhHHIZHH=HLE1$$P$USLD$PL$\Ht$HH$H0Hh[]A\A]A^A_DHT$@HHPhHT$@VLEHH=%1yHT$HtH9HD$ NctHT$PLH=9Z1iLHuH|$H踝LIZ11H H1j=LXH t1H1$j$h $t H=1hHD$8HH\$pH5UDŽ$HD$xHD$pH踯HP=$Ll$hLd$`1LLH-Lt$hHL衮HtHHL$8IljH H$H cV1H1f$L@TH jH5HhH|$H1y>-HHHsHHH Mt6LHff.AW1AVAUATAUHSHH=HHL$LD$HDL$\YdH5hH=kh1HDŽ$ȫHIHH$L$H$H$L|$\HD$H$D$H$4DjMDHAWL$HHL$ AXAYHH$1LLL$Lt=L1H=kcHD$xDd$XIHD$@HD$pHD$8HD$hHD$hHD$0I$HL$@HT$8Ht$0YLD$pLl$xHDŽ$LEH HcЉL|LH H9 HTH8HDLD$ AHt$Hl$(HD$P2HH$HHt$IH΃L$HL$E1LHt$ L*uHH$HLMAUL$hLD$ HT$8H$H^_HtVH$Hw`H$#L苪1Hĸ[]A\A]A^A_LH$MLl$PILՕH|$h˕L胿LHHEIt$ H R1H1bLZYeLHl$(ӝ=LL轝H|$hAPH RD1H1bDfDH LIM L$LMH5dL$LD$LADd$X=uM$NlHAff.ff.HH8IHL9uD$\t0It*H SR, H5HcOf.L9HHt$HHD&Hpff.ff.ff.HUH8HtHǂ8HHNHL9u11HH P1$aǃ 8HtHt$HHiǃ 111H QH`Cff.AUIATIUHSHHHHtLHfI 1HH+Hc4$IH L ܤHHH(Ht$1HL$Hff.fHHt$H(Ht1HL$H詤1~@HM@LMtIDž111IH $PH|_%f.H ws H5LaHH[]A\A]HD$@H Jz H5KLMaf.f.f.f.USHH(H HtSC(H1H5Sff.ff.@Tу TC CHHuH(H[]f.9Lff.fHHt$(HT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$u HH$HH=HT$HD$HD$ D$D$ 0HD$U4Hff.fHH SH5H=/ff.fw!ttDfP@Ht[Gу`tNuJ9~QHtHctt DDDwfD7f.HtHtff.AWAVAUATUSHHHdIHXIHHQIVL,H=HT$C/IFAF AA^ADAD$1<$IMHT$IDoH=&ADDAH0MF IIvJt8Jt:L)A4H)Ѓr!1AуNO9rf.A^1H $AAEADA AH $ƒAHI9>HM1H[]A\A]A^A_@AEt0AvAxBD8fBD:gALcrgH0IvLD0LD2Iv HH)H)Ѓ 1AЃN N 9r@AHc2u[0AvDfDf.DEFD0D2@fD0AvDDsH OHH5H=J4,?ff.@f? AWAVAUATIUSHhG<G9GODwIHYHL EH7DH\$XE1H HD$@E1ILL$0HD$PLd$8Ht$T$LH\$0HD$@H9VsCI SDT$LAA@|${ AAEuDDH\$0S DKDC H\$8KSHLHB7D$HH, A9|$|$!HMHD$ HD$(HH$HD$ HL$(L$J|%I\$@AAHGAAAH<$1AHHL$HPIH9s2HŋD$HAA9D$<tU<{EȉE`Hh[]A\A]A^A_@HLHD$ HD$(HH$@fEfDEEAPHTWf.fHH9uH<$1DD$t$t$DD$DEIcEEt/APH|ff.HʉPH9ufDE1HD$0HD$0H9D$PH\$XLd$8L\$E9t$ I)1M9HKHD$ HD$(HH$EȉEE1H gLH5qH=[(ff.@HtkUSHHH/HtQH} Ht -HE H}(Ht -HE(H}8Ht -HE8H;-HH[]fff.@Hww+H H K~H5H=F'H KH5H=F'1HvHwfD1H @Ht GHtff.@H1fDHHAuytDHt @HH@tHt fD>ff.HtFу`tu fDHtff.@AWAVAUIATIUSHH(+HMIv{K31H=SESzf=}f=uO@+HD$HHu{MtAEff.1H(H[]A\A]A^A_@MtAEfH=#bHW+fDL'IHqLHL.'AFAvLfAfnAF fnLȉAFfn1fnAFfbfbAFflAFoLu8LD$ ooC UE f=tfMtAEMt D$ H|$f@)*HD$HHD$ E1E<w}wE9ErEL|ED$AIcH&HE HHRHLL%DH=1YD}L]&HE(HHHL%D}0D1H=MAEf.L()L)Mf.GGff.Gff.Gff.Gff.Ht1fAWAVAUATUSHhHD$8HttAHHtiWIt_LG MtVGtPxL1DRfD9tQG;t|SH9|-)LcOIKD;3t0ύx9}Hh[]A\A]A^A_HI\Iy(HtDcDAD$CL,C ;tHD$@Aԉ|$1H$HD$4L|$8AHD$ HLHt$(ITA}wuEt|$BD9_AUAE9A9!ЄD9,T$H4$LHEU DL$@AEH\$8AR9pHt$ H߉L$DT$DL$D$D$4DL$DT$L$pD$4DDE]AA99!ЄOHt$(foD$@D$PFrff.fHt G1ff.fHtCMt>Ht9Ht4;ws/HG Ht&H4Hp 2AP@A1fHt[MtVHtQHtLtF;wsAHG Ht8H4Hp 2APPAPHD$1f.f.AWAVAUATUSHHHL$HD$HHH;wHW HH H,De}Hx(E AIHD$ E1Lt$H$@Ll$AD;} saH4$LDLWD9uD$0҃`t<u8H\$D$0foD$ CEt29sQHH1[]A\A]A^A_DHH[]A\A]A^A_@tH UBH5H=R>H 6BH5H=>ff.AVAUATUSL@u_HAAAD Ht[f@G@fDhDpD`@h@@@'@7[]A\A]A^MtA1[]A\A]A^Ht1f.HtkUSHHH/HtQH} Ht l#HE H}(Ht V#HE(H}8Ht @#HE8H;0#HH[]fff.@GHt GfD1ff.fGff.Ht G1ff.fHHBу`AWAVAUATUHSH(;wHG LG(H LtEfDAD$MAA;HAϋ2KIpZXAF2JAH=GHT$ALD$DAD$1<$KLD$HT$DID AH=HJ*HrH0HtHtHpHH)H)r1AƒNN9rf|$DzL$FDEH>N,1A܃ADAL$ƒAAIDE0ALE(E 1AF H([]A\A]A^A_f.9H q>H5۶H=: f11HE(U0H([]A\A]A^A_Wr@0LfLA@LH$HH4IHt@HIDHxHHǀHH)1HA@@AH$DHJAۃBHrH0LT1LT0HpHH)H)+1AƒNN9rHcRH$5IH@@H$1r0LLqH <H5H='9BfH"ATfnAUSHHLG MtJAA;@tyHfnK0HHIfbDbfAD 1@jACLC H[]A\@T$ UIH@@fnD$ 1@LljT$ HH4IHtM@HIDHxHHǀHH)1HAA@@fnD$ H11HC S8ÐHtBUSHHt,DEuHS H @lH[]ÐDAWAVAUATUSHHHt$XHT$`H;HGo0IXG\$lD$,HHL,HD$PMt-LID$8Hp1H|$PA|$Mt$@M|$(Al$AD$MD$ A|$L$hMBt$,LH$IhD$,1Ll=LD$xHD$0Ll$HL$H$Lt$pM1Ht u} H$Hl$@E1MHL$8\$ |$(AfEtBAiKH=%LD$Et1DA߃ArDALD$ЃAHDI9H$AHD$0D9d$(|$,E4L :9rH${DLcHc.H$fJ@|$(|$,MHl$@HH9l$HQL$Lt$pLD$xH$Al$H9l$0D$,A9D$ @H$I+D$8L9ID$ H0HxL$H AL$L$1MIT$8I$LHILHHzHHHL$lH)H)HIpHHT$PT$hID$8udH|$XL7HĨ[]A\A]A^A_f>zTTfDAD0fBDAD$ЃFHD$`1뤺LHuID$8PH fpfn‹PfnfnfnfbËPfbflʉP@>HD$`Ht1/HD$0SH >5H5H=+2H 5H5ɭH=H 5H5H=2HD$`1H 4H5yH=ӭH 4H5ZH=2H 4H5;H=ifHEff.B Ht9uOf.ff.@ATIUSHk HtH3L*u[]A\ff.@AWH5HAVAUATL%DUSHH(HD$HCHEHD$HADulH|$H\$HxHc芓;fDHHHuHHuHHtZHtUHtPAH(A;H,}FHcHI@ H@AH(0HPHxN˸Hu. uOt1HuF wH q-HcH>O(;O,}8HcHHG H@O(Ht~H@HpP1ff.fHWH(7w8HgHr u#H[Huf.1H[]HsHHuH[Hu@H HtLHKH@H@x&HutH@Ht80t두H@Ht80uH[]Dž0if1ff.fHGI8TudHPHW@<_t\LuL(HLJ(MttLl$ H 11LH>IHFA>LvDGHVA74I?M4MvMYIH J;L(ǃ0HĨ[]A\A]A^A_@HUDHĨH[]A\A]A^A_IHUwIHH=`>HPH@ƃ@ff.HUf.HD$ fHn~(D$0H(H flHD$8)D$ HUDHHD\$0E%1HD$ H(EL @H(HHFDDxEuHH yw9HHuHt$ HD$ Hl$(H(1D$0H HD$8R@HD$ fHnHU~(H(H flD$0HD$8)D$ H|$08HD$ H(6@HEH7HG}V7H}~A.HH=AHPHD,DJf.HE8(6H@DhA9EtHE0oDHH=Q?HPHDH(ƃ(HUGHH=>HPH)ƃ)}?3>A[HHUDHF]HĨH[]A\A]A^A_HUHtFH}HH9H5|H|HUDHL@L?FL9@|HL9lHH\fH}D8Eu E18>~($6H 9Ev9%#.fHnflHD$ D$0H(HL$8)D$ @HUEA4H5HLuA>I;LHH=:HPH~ƃ~L-HM}Dff.ff.HHBIHD4DM9:EuH=uIƃHHH@HǃD3DM9Eu{L%~HMt$Iff.ff.ff.fHHBIHD,DM9'E,$H=uIƃHHH@HǃD+DM9O'E,${L-HM}Jff.ff.ff.HHBIHD4DM9+EuH=uIƃHHH@HǃD3DM97Eu{L-֑HM}Jff.ff.ff.HHBIHD4DM9EuH=uIƃHHH@HǃD3DM9Eu{HUL-tM} $BHAff.ff.DHHBIHD4DM9EuH=uIƃHHH@HǃD3DM9GEu{HUH-)LmdAHAff.ff.DHHBHHD$DL9dDeH=uHƃHHH@HǃD#DL9De{HELcpL M%HM>ff.ff.fHHBIHD,DM9%E,$H=uIƃHHH@HǃD+DM9A%E,${AH(A@ 1HUHt A@9HĨHDH[]A\A]A^A_~LL-HM} @ff.ff.@HHBIHD4DM9EuH=uIƃHHH@HǃD3DM9gEu{L-JHM}Jff.ff.ff.HHBIHD4DM9"&EuH=uIƃHHH@HǃD3DM9%Eu{L-HM}Jff.ff.ff.HHBIHD4DM9:EuH=uIƃHHH@HǃD3DM9Eu{L-׊HM} Jff.ff.ff.HHBIHD4DM9zEuH=uIƃHHH@HǃD3DM9'Eu{L-HM}Jff.ff.ff.HHBIHD4DM9EuH=uIƃHHH@HǃD3DM9gEu{L-ۉHM}Jff.ff.ff.HHBIHD4DM9EuH=uIƃHHH@HǃD3DM9Eu{L- HM}Jff.ff.ff.HHBIHD4DM9:EuH=uIƃHHH@HǃD3DM9Eu{L-0HM}Jff.ff.ff.HHBIHD4DM9zEuH=uIƃHHH@HǃD3DM9'Eu{L-^HM}Jff.ff.ff.HHBIHD4DM9EuH=uIƃHHH@HǃD3DM9gEu{L-HM}Jff.ff.ff.HHBIHD4DM9EuH=uIƃHHH@HǃD3DM9Eu{L-ɅHM}Jff.ff.ff.HHBIHD4DM9:EuH=uIƃHHH@HǃD3DM9Eu{L-HM}Jff.ff.ff.HHBIHD4DM9zEuH=uIƃHHH@HǃD3DM9'Eu{ALcmHm$MHI7ff.fDHHBHHD$DI9DeH=uHƃHHH@HǃD#DI9QDe{HH=A+HPHL=k[ƃ[HUDH5HmHHL-Gk6ff.fHHBIHD4DM9tEuH=uIƃHHH@HǃD3DM9KEuL}H-fHLuMcoIff.ff.ff.fHHBHHD$DL9'DeH=uHƃHHH@HǃD#DL9De{HUHmHt&4HH=&(HPHDHH{ƃ{3HH='HPH}ƃ} fHnLl$ L(H L(LAfInHD$8LflD$0)D$ MuWDHEu@AoDAH)D o@HL ILH()D0@HHtHPvHUDH3DD$0L(E7AAFIHIDIUDHI M3A}AHU2HH='HPH(ƃ(HUDHl2HH=!HPH)ƃ)HH=%HPHE1<ƃff.ff.fDHHBHHD<DL9tD}H=uHƃHHH@HǃD;DL9;D}L-vHM}Qff.ff.ff.f.HHBIHD4DM9zEuH=uIƃHHH@HǃD3DM9'Eu{HE8<H@8=HCHDHHHELuH5uLhH@LxHhIFH8%LDHGALDH9@DHL+AH5cH,HE8:3HUHBHxcA HDHBHDHJGHE83^$H@L5"uLH8HUHRu :%DH@LmH5IIEL8LN$LLy$HEDHHP7@HE83dH@xVH@)8>D=DL- uHM}Bff.ff.fDHHBIHD4DM9 EuH=uIƃHHH@HǃD3DM9W Eu{H-_tHLmJff.ff.ff.HHBHHD$DL9$DeH=uHƃHHH@HǃD#DL9De{HUo$*L-sHM}.HH=HPH>ƃ>L(LpL-oHM} 2ff.HHBIHD4DM9EuH=uIƃHHH@HǃD3DM9wEu{L-,oHM} Jff.ff.ff.HHBIHD4DM9EuH=uIƃHHH@HǃD3DM9Eu{HUH-oLmHAff.ff.DHHBHHD$DI9DeH=uHƃHHH@HǃD#DL9De{AHEr LchH(MdHI4ff.HHBHHD$DI9$DeH=uHƃHHH@HǃD#DL9De{L-HM}Jff.ff.ff.HHBIHD4DM9zEuH=uIƃHHH@HǃD3DM9'Eu{HUDHHH=bHPH]ƃ]IoEa<IEB|- LDMHIcff.ff.ff.ff.ff.fDHHBHHD$DI9$DeH=uHƃHHH@HǃD#DI9De{HUHl$ H541HHHHLl^ff.ff.ff.ff.ff.DHHPHHD$DL9tfDeHuHƃHHH@HǃD#DI9d DefDH HBH}ƃ}HpHUHt"~ fHnHD$ H fl)D$ DHHpOHD$ H >HHPH=PH>ƃ>Ld$ U1H52LlLHHM40ff.HHPIHD,DM9t\E,$HuIƃHHH@HǃD+DM9t E,$m@?|HUDHH-iLmH3ff.fHHBHHD$DL9DeH=uHƃHHH@HǃD#DL9De{HUHUDHL-qfM}H2ff.HHBIHD4DM9:EuH=uIƃHHH@HǃD3DM9Eu{HUDHL-eM}^H;ff.f.HHBIHD4DM9EuH=uIƃHHH@HǃD3DM9Eu{HDH:HWHD$ Hl$(H(D$0HL$8fD$ H~uH L}HD$D8ǃ8HT$HT$H Mt A?Y8H=O HPHDLH(L%eƃ(HD$D8Mt$H H"HHBIHD,DM9t[E,$H=uIƃHHH@HǃD+DM9t E,$놋UHl$ H5`.1HHoHHLl.HHPHHD$DI9bDeHuHƃHHH@HǃD#DI9`DezHƃHH@1HUDHH/H5dHƃHH@1rH( HUDH߉ $A> $u HD$H iHLEtff.HEI9t{HŋEuHH=HPHHUDH ƃ HUJ1҃|$0H(H(HDH)fL(ZH5bHl$ DH1H5,H3HIH"I1ff.HHPHHD$DI9DeHuHƃHHH@HǃD#DL91Dez6L%Z`HMt$&HHBIHD,DM9E,$H=uIƃHHH@HǃD+DM9E,${Nd-L9r>HH=HPHD,DHL9LDmH)H~A_u}_u}UuLuM9s10HHIHM9tAHЀ vߍH 7HƃHH@1OLchHhMHIAff.ff.DHHBHHD$DI9DeH=uHƃHHH@HǃD#DL9QDe{HH= HPH.ƃ.TE1tVyA:H& HBH}ƃ}HƃHH@1HƃHH@1IEL0AƒauAVduAVMu  : suDA~Z A~ HH̼H$HĨH[]A\A]A^A_9LDH(AguA~suA~HsA~tA~(H葺DHH3)qHDHH fHnHT$ D$0flH(HHD$8)D$ HDHUDH, HIoJnOA~xDA~=4fDL׉U(輹IUDH])H蠹AHEx>H@<0 <1H5\YDHUHl$ H5&1HH#IHHI&HHBHHD$DI9DeH=uHƃHHH@HǃD#DI9De{Hj2]uHBHV0HĨH߉[]A\A]A^A_鉼H豸H(80u<xHqHH DHHUH H H 3HHH@HǃHEH$fHnHflHƇH@1HƃHH@1HƃHH@1HƃHH@1HƃHH@1H L}HD$D8ǃ8HD$HD$H Mt A?Yǃ8HƃHH@1tHƃHH@1HƇH@1HƇH@1H5\WHHl$ VAFH5W"HP1޽HfIHHI"HHBHHD,DL9t[DmH=uHƃHHH@HǃD+DI9t DmH5VH蒵MvMvA>IjIAIKt A>DWA7yI?MeA]foIfHnIM)H)AIHC)foFHH H(C)DfHnflLvFFMvMkf-HHƃHH@1 H豳HƃHH@1b Ho9HƃHH@1HƃHH@1XHPHcHHfHH9|H;:uHHHHu&Ef.H9uH9uH@H$HH9uHHHHjEƃ0*<詰HHHWfHnfInHD$flH )D$IF8^HPIVHUHPHEHv c<DH<H迱HEDHHP\H5THmHEDHHP:)xHD$ fHnfHnDH(H flD$0HD$8)D$ HD$ DT$0H(E% HH(DHƃHH@1<HL|$ȰMoMumf.LDHRHH=thHPH ƃ Au]uMmAu8HߍP蛴MmMtW8P8tH5:H{HƃHH@1l>H8MPHgHƃHH@1IH5pQ`H5"H5)QlϻuŻH5/:DHU:zHM9*mHeHPzHR:>(HoHEqHUDHLH߾[BHEDHHP]H"1HD$ MLDHtH55PH迭I}tDHL HͬLDHoH髷HB8*t ǃ0HRDHOM9A>_HHL\9\;HcH HHPXHHxHHchDlHH-L`L^hIHMYLH6LHteA9龶H(鲶EL 靶}0H ~(fHnflw-|HEME1L0H5Nhff.USHHHtbBHՃW4KfHn‰BH4HH)$HD$HHm4H[]@ǃ0H[]ff.@AWAVAUATAUHSHHPw_HHcH>fDHUDH)HH= HPH)ƃ)H[]A\A]A^A_ÐHHDH[]A\A]A^A_@H-NHLm bff.ff.ff.ff.ff.DHHBHHD$DI9ZDeH=uHƃHHH@HǃD#DL9De{H-EMHLm Bff.ff.fDHHBHHD$DI9DeH=uHƃHHH@HǃD#DI9GDe{H-LHLmBff.ff.fDHHBHHD$DI9DeH=uHƃHHH@HǃD#DI9De{HH=MHPH&ƃ&H[]A\A]A^A_L-KHM}Bff.ff.fDHHBIHD4DM9EuH=uIƃHHH@HǃD3DM9Eu{HHHBH ƃ HH=HPH ƃ HU!fDAHH=HPH*ƃ*HUHH-0LmRff.ff.ff.ff.HHBHHD$DI9ZDeH=uHƃHHH@HǃD#DI9De{H-yIHLm Bff.ff.fDHHBHHD$DI9DeH=uHƃHHH@HǃD#DI9GDe{H-HHLm Bff.ff.fDHHBHHD$DL9DeH=uHƃHHH@HǃD#DL9De{(cHUDHH-GLmIH&HHBHHD$DI9DeH=uHƃHHH@HǃD#DI9De{L-SGHM} Bff.ff.fDHHBIHD4DM9"EuH=uIƃHHH@HǃD3DM9Eu{H-VFHLmBff.ff.fDHHBHHD$DI9DeH=uHƃHHH@HǃD#DI9GDe{L-EHM} Bff.ff.fDHHBIHD4DM9EuH=uIƃHHH@HǃD3DM9Eu{HHHBH Ƈ H}5H=aHPH(ƃ(HUf.HH=UHPH ƃ ofHƇH@1KHƇH@1JƇH H@fHƃHH@1HƃHH@1H}HƃHH@1sHƇH@1HƇH@1Wff.AWAVIAUAATIUSHHHH1HI8Pu5HP ,w"HHHL]1҃! HHuL(L1DHǃ(HqHHHBH(ƃ(7IVHt DHKHH=(HPHDLH)ƃ)L(H[]A\A]A^A_fH H=HPH1LD(L(Hƃ(Hǃ(uHH=HPH)ƃ)HHƃHH@1H-@LE?ff.ff.DHHBHH I9}MH=uЈL$HHƃHL$LZ@H@Hǃ I9MqfDЃ<(kHH=tHƃHH@1HHƃHH@1H=txHPH Hƃ f.HƃH)H@IVH)ƃHH H@b1uHsAWI?AVAAUAATUHSHH8)H7Is2ff.HHtf0u\CuHSEtHKCL H *W+rtJDHHL HuH8[]A\A]A^A_HKCL H uL(HRDHHDž(L(HAL-;IMSff.ff.ff.ff.HHBIHD|DI9E}H=uƅHIHH :H@HDžD}DL9tvE}vH DHL H8[]A\A]A^A_H DHL H8[]A\A]A^A_H=ttHPHD.ƅ.HCLhAEIt|H?7wHsMmAE7vLDHL H8[]A\A]A^A_HƅHH@1`HQ9HHK #HHBHHD|DH9teD;H=uƅHHHH 8H@HDžD}DH9tD;|AEH\$H5HߍP1FHΙHHHH#HHBHHD|DH9tlD;H=uHL$HHHƅHL$H@HDžD}DH9tD;yH7HK#HHBHHD|DH9tdD;H=uƅHHHH 7H@HDžD}DH9tD;|MmAE{fDAWHAVIAUAATIUSHHHt1ff.HHHu1LDHHH=JHPH ƃ HHBH[ƃ[IVHtDH}HH=HPH]ƃ]H[]A\A]A^A_DH@8+ L1DHHHhHƃHH@Hǃ[ƃ[IVHAUHƃHH@1"HƃH [H@fHǃƃ[IVHH-k.HHM6ff.fHHBHHD<DH9tnD}H=uƃHHHH -D;H@HǃDH9tD}|fL1DH@HHtHBH)ƃ)_HƃH) H@fXff.@AUATUSHH:3tH[]A\A]HBLchHhMHIIff.ff.ff.fDHHBHHD$DL9t^DeH=uHƃHHH@HǃD#DI9tDeH[]A\A]DAUATAUHSHH2wFHCHs6E4A~\ǃ0H[]A\A]HH=HPH(ƃ(Eo4cE1fHnHDEHH߃4HH)$~HD$HHm4E\HDǃ0HHBH)ƃ)H[]A\A]ƃHH(ƃ(EH@Hǃ4 ǃ0rHƃHH@1CHBH@H9fTAWE1AVAUATAUSHHHBL@LpA8=_D<ǃ<AfH1HcHHHCH߀8FrHEHQwH $HPHHHEH$HUH,$HtjC8;C<}bHS0HcȃH,ʉC8QkLCLHMkL1ɾEHHH$HHtHC8tHPHS8Ef1HH[]A\A]A^A_@SHH` ucHHHsC1ɾ)HHa~H$Hf.HgC8;C<[HS0HcȃH,H,$C8CHH߾[]A\A]A^A_!DHHHs1ɾ&HH}H$HDHFHC~HFHCFF<0HHcH>HH$H,@HHHsX1ɾ'HHV}H$Hf.HHHs 1ɾ%HH}H$HfHHHs1ɾ#HH|H$HfHHHs1ɾ$HH|H$HbfHLcH$HA<$IB{PiHC8;C<HS0HcȃH,1ɉC8A$PwIHLcBHHH/|H$HHNHKF<_0< Iff.ff.MILCA0< vDH)H|HHAAL<_HHHK~H+HH{{H$HHHHsHHHlH4HHXH,H({H$HHd|HSD"AbJAxt A_E1s(H;s,Hc΃HHHK H1HMH Gs(H5 HMfEE_DeHS1蔉HHMH‹CHAAЉCHC(;C,HcȃC(HHY%HK HAHHAAK~_C(;C,3HcHHHk HEC(ED;{HHEHC8_HHHCH.HHyH$HYC(;C,[HcȃHHK HAH͉C(HE(HACHC(;C,HcȃHHK HAH͉C(HE(HACHGC(;C,׉HcȃHHK HAH͉C(H6E(HACHC(;C,HcȃHHK HAH͉C(HD(HACH C(;C,SHcȃHHK HAH͉C(HD(HACH C(;C,HcȃHHK HAH͉C(H0D(HACH ?C(;C,1HcȃC(HHqHK HAHHAAC(;C,HcȃHHK HAH͉C(HiD(HACHC(;C,HHcȃHHK HAH͉C(HD(HACHvH<1ɾMHH:wH$HfDHHHsH$HHC8IHH"HHvH$HDaHn?HHHЋS(;S,wHcHHHK HAH͉S(HA@(CHHs1HHHCiHHHVvHJDcLCLHk DcLHHKLCAuID$HD{(Ds8HCDkHHS:ItLcD{(Ds8DkHHS8;S<HK0HcH,S8vHC(HS;C,YHc1HHK HqH͉C(HzBHACH(HDcLCLHHsz DcLHHUUDHG8TuUHSHHPtHxtH[]A\A]A^fHP:(uHRz uދR)SHH@DH1[]A\A]A^fUSHHHGDEHPHWDXDEt0HPHWDXAvAC< ff.fI1L r?f)щHcH II1fL[@ff.HHHCzHNHHmHHC8BtL[@HI q@wHDqHCC(;C,rHcHHk HEC(HPHEEDuHUHHCC(;C,HcHHk HEC(HHEEMHU먹롹뚹f8UHPHSxlHHt$HD$HC8D|$IEwHHfM&IFHS:ELHBHCR_t*n2HZmAHC8_HHCC(;C,HcHHk HEC(EHLuD}HE1HCIAMHC8Et*HRx1ɾTHHMmkIMuHHHC.HPHSPJπ[HHDrHCHS@1oIHCHH1USHHHG8Jt^t:HHHtI@It&HSC8;C<GHK0HcHC8H(H[]A\A]11HfHBHGzHHt$?IH1H\IľHIEHMtHD$Ld$ID$HC8EHHT$HC)fHt{C8;C<}sHK0HcH1ɉC8I<wHHHT$HsHT$HHYHHHL$g\HL$`f.1fHIHBHGG(;G,}7LcG(IHBLg ID$A$ID$AD$CHzS1 @HPHS@<_B8*'H@E1fUSHHOHAGHHGTtRGunHPHWxt`HPHWPV@~FAw>H BHcH>fHPHWxtHPHW@A<5vH1[]fDHMHcH>@11ɾHHH[]TfxVHPHWxn@$HsC(LN;C,HcȃAHHK HAC(CQLKMLھBHRIHEX1LھADICh<$`I@H9uAPLcLHA)SLKHMLKHqgfDHH1HHE1 v,T%HC.FPv<_t 0< FLNff.AAIPHЀ€ u<_tff.f<.uAAA0< w5AAIIIɍPЀ wff.AAIPЀ v<.tLKDH)zOL¾PHjNA9.Iu L)E1HL[]HHHOPHHIUHAUIATISHHhWH}H]HEHUHUHcHHHH]H)E@HH)EEHEHEEEHUHeHtdtmw;v&wNH@HuHe[A\A]]f.t,H@fDu@AEHe[A\A]]@He1[A\A]]@A$ATUSHW:Lu~HBHHGJ_kZtnHHtT8(LcA $A>nEsID$HCHHEu1H[]A\_HPHS@n,ff.ID$A?HCAL$ID)LHLHDHtKHHCFDHB1HCRZ*@HHHC ILc1HGLtdIwbHHGDXuKUHHHGoLGLH|$H|$HWoL:Eu!HHWH]1ff.UAfIHATSHpHHƅxHDžpHEHEHEHUHMHEHEHE)EGM}EHcŰEܹIDHHE…HNHEH)ԅNHHHH)HULHeHLHUHpƄ5pUU1He[A\]UHAWIAVAUATSH?_H@H8@H5oLQd1E1AEAGAXAHpD_H`AEMg A _Leu A ZL牍PHH$RPnHHEHLL$H`XL13HLIQM LMt HE8u MI}EHhLyQLpI ]HxL}MEEEHEHEEEv _VHcHHhHHH)HHT$H)HHHeHUHIAoH`~IfDH`I@IG HpHEAG p $D!CνDD$EB$1AZ(DDD$D1D!AD1ʉ D1!A1ӉD1DEZD\$!11A|Aj EZ<Ήl$!1*ƇGAj1l$!A1 F0 1!A11A5FDEb Dd$!1AؘiEb, 1Dd$!1ADEB41!1 [ 1!1A4\Eb81I@!1Az |$ԍ"k1!1Aq1!1A Cy 1!1A3!I1!1|$ ΍b%1!1@@1!1|$ QZ^&1!1A6Ƕ1!1|$ ΍]/։1!1SD1!1A ؉ 1!1|$l$э71!1!ȋl$ 1!1A7É1!1|$  1!5ZE11͉l$!1A㩉 1=L*!Љl$1t$1!A og1 1!1Ή1!ʼnl$1l$ B91D$q11‹D$ 0"am1A< 81Ɖ11|$ D꾤11|$K1A5`K1׉p 1111A~( 1A>'111|$ 0ԉ11׋T$211֋T$ 9ى11ʋL$111A;|l$ 1NjD$0eVĉ11AD")Dt$  1A *CA<# A1A  19DAAՋl$ 1|$ Y[eD 1A Dt$ A1A3}  1|$΍]DA A1AO~oDDt$  1A ,D\$ 15CƋl$  1ANAAD 1A~S  1A5: 1|$ 7* 1ӆ A1 T$AAHD$L$I9EL$EEL$A@w\LM)HHDHLHLHHHH)ATH)Ã%1ǃL;L99r DLH/DK>?HAT$HAbAAL$ PDfDADAD$oIl$ HTLh@oCBoC B oC0B0LH@I@It$`LH>Nf.HIL$ HtHt IL$(HH)H)1L8L99rAL$ DDt LLDLfLIl$ ufo$fo9G@HʉWʉVWʉVW ʉV WʉVfAWHAIAVHAUL4ATUSHH0JDSDCHT$؉D$NjBʉL$EыK DT$II I9Ht$DSLt$ЉD$L$DCHt$M9;DAЉAHL$1ff.ff.AʉHH@uDT$DDd$1l$Dl$D!AI@Dt$AyZ1\$D<$A4yZDD1!ByZD1F yZЉD1!D1Elj1!1A5yZADAA1A!A1AyZADAA1A!A1AyZD|$AȉDAA1A!A1AyZD|$AЉDAA1A!A1A?yZD|$ ADAA1A!A1A7yZD|$ADAA1A!A1AyZD|$ADAA1A!A1AyZD|$AȉDAA1A!A1AyZD|$AЉDAA1A!A1A?yZD|$ ADAA1A!A1A7yZD|$$AA1D3T$DAD3T$A1A1AD3L$ D3L$ A!A1AyZAADAA1A!A1AyZAȉDAA1A!A1AyZAЉDAA1D1A!A1ADDD$AA1؉AE11A!1A8yZ߉A1ӉD13|$!D11Ǎ7yZD4$AD13t$D11AD1卌nAEAϋL$D11D13L$A1D1E1nDAՋ$3T$3T$ A1AnDAAƋD$3D$ E13D$$1A1F nEEAEDd$D3d$DT$E1A1AEEA1AnDT$E1ADEAA܋\$ 3\$D11AډD1G:nDT$D1ADEAAߋ\$3\$D11ADD1A*nDT$DT$D1DAl$3l$1D1ADD1G2nDT$DT$D1ADAAAl$3l$ 1D1ADD1G*nDT$DT$1DEAAl$3l$$1D1AD1G"nDT$DT$D1DEAAAl$3l$ 1D1AD1G:nDT$DT$D1AADDD|$$E1A1A1E1AEEE1AnDT$DT$E1ADAE1ADD|$E1D|$E1EAEEE1DT$G2nAA1AEEDt$E1Dt$A111E1AEEA1EG/nEA1AEEDl$E1Dl$E1AEAA1EG&nEE1AEAEDd$D1Dd$D1AD1AA-nDE1DAl$1D11ADD1ΉAnD1Aދ\$1D1DD1Bn1ىً\$1ڋ\$1D1D1AB nAA1ADDT$DDL$D1D1AD1A1A1ABnADADL$AD$D1DL$D1A1A!D$8ܼDlj !D DL$|$D1D11lj|$D ADAA!!D DL$A1ܼDL$|$D1AD1D1E!|$ܼωD !D DL$|$D1DL$D1D1lj|$ AE!!D DL$AܼAt$׉|$1|$D11Ɖt$BܼAADAE DAE!!D t$DD$\$D1DD$1D1AA ȉt$E!!D DD$AܼDD$ƉЋT$D11ڋ\$1‰T$F ܼAA!AЉ !D DL$DDD$E1E1E1EAAA!DL$AA A!E DL$E1A ܼDL$AȉDDD$E1E1E1DL$E1AAA!DD$EܼA !D DL$DDD$E1AE1A AAA!A!E A?ܼADDD$AE1DD$E1AAAA!A1A6ܼA1DAA A!E At$A1ADAA ōܼ\$EAA!A!DED ADt$AD1Dd$D1D1ƍܼD AD!A!A ȉl$AAD11E!D1D DDl$! ꍄܼDD$ՋT$1‹D$1D1EA!ݍ:ܼDA D!D ANjD$E EAD1DT$E!A!D1EA1E ADd$FܼEEDl$EDL$E1AE1A!A1AEAܼEADl$DAA E!E Dd$Aً\$D1D11É\$D ADAA!!D Dd$GܼDd$ADDDD$E1EE1A1AE!DD$A(ܼAADEAE A!E Dd$Al$D1Dd$D1D1AD A=ܼDl$Dl$AE!D!D Dd$D|$D11D1AD1GbDl$Dl$D1AADDT$E1Dl$A1E1AEAE1G bDl$Dl$A1EAAEEDd$E1A1E1AEEA1AbDd$Dd$A1DEAAى|$D11D1AA1E1ԉ|$BbEADDd$AADDl$D1D1D1AE1A1|$E1Dl$A|$/bDDE1A1l$A1l$A1DD1AAAbʉD|$E1D|$EDDd$Al$E1E1ED|$A1A1AE1D|$CbADt$DAAl$A1D1AAC bEDl$A1A11DAAl$A1E1A1D1D|$BbED1t$DDd$AAD1AD1E1E1A9bDljL$DDd$D1ED1E1E1čbʉ$Dl$A1l$11ʼnD$DD1l$BbAAAD$A1DDd$AE1DD|$1D11ADA1F bʉl$EAċD$EDL$E1AA1A1A1E1AGbDL$ EEAED|$D$AA1NjD$E1AA1E1׋D$AE1AA>bDt$DEADD|$A1E1EA1E1ADAD1AD|$Abl$ADDl$D11DD1D1AA1BbDT$DAىl$AD1DAD$A1DE11AA1DL$G!bADDL$DE1AA1щAE11A1GbDL$ DL$DDD$DE1AA1D$fAnA1AAbDD$$DD$lj11ljAȋL$fAnNjD$fnfbHD$fnHL$fbʉXflI9s$\$̉L$HL$H@ L$ĉD$H0[]A\A]A^A_fUHSHHW7A@8AsDKssADKH)DD BD E A%AD A H5QD LK D IHsOHtmPt_TfTSAxAGDHPHxHHHTHTH)HH)HHHLLHHH[]DZPTTff.AWAVAUATIUHSHHB"I?H\$I@Mt$L} IMnIIoH@LH@AoCAGoCAG oCAG06L9uHD$IIH@Od4L)HËuMDI7AA5EtA2II?DeH[]A\A]A^A_ÐMHHA?ILLMH[]A\A]A^A_@AŸLz L)K9r0u DADn LLDLfLL} ~@USHHfoXH)$foi)D$HH$HĨ[]f.AWAVIAUAATUHSHfoL$)$fo)D$1f.HHtH#uOLI<HH) HHuHLf.+ ¸uIHu(LLM1H[]A\A]A^A_fHHL1SH=nv1 t tHHEH[f.fATUSHH?HtfHHH|uzHcH2H}IHtF1@KIHH|HuLHL[]A\fHE1fDHt7UHSHH?HtH%H{HHuHH[]%ff.@AWAVE1AUATUSH8HHE1H-%TE1MHxDE11LHD$D$ff.fHDE@uLct$LIEt AAN199HEHωT$IcD $HRT$D $HN1ID#EucI3HDu@t!ff.@sHHDu@uZH|$I$H8L[]A\A]A^A_L\$&f1A tE#IDcHEtSADE@tDD WuA\txEE1A'tHE#IAD#Eu@AH|$HL$ DL$T$L$L$HL$ D$DL$IT$ND1@Eu$EAsH=HL$(LD$ DL$L\$L\$DL$HLD$ HL$($t_Df.Eu;A'tWA"A@$$AHfE1A"E#E1IAA1E1E1fDHAWAVIAUI!ATL%GQUHSHHHuGp@DAT@u "<:wIsH\tcHDxtSHuI9t#H Vt1I^IHu1%HH=-uff.H[]A\A]A^A_@fAWAVAUIATUSH?H6QHt$8IHE1D$0AIcH,H H $}@ l$0vHHT$@H"D$X%=@fHH5HH1HH HD$H11H`HD$Hx詞HT$HHHD$HH9D$tHHD$HT$KHD$HH|$8HIEH9:H9M1fHH<uH<H4AH|$H<H|$HHt$HHLUID$H\$'ID$AaAuNAw$LID$\UAf0ID$HID$HH|$$ff.ff.ff.Hڃ r0BWNHHAuHD$EDE~IAPHcI00000000HHcH)HAA*Et 0A,)HcH)HL;LID$'ID$H8H[]A\A]fE1HfHL>H81[H]A\A]þLID$uID$룾LID$uLfID$끾LID$LID$aDLLLHHHH)DE1EAN A9rHCH^LID$A\xfDAID$HH|$XfLID$\uAf8ID$HfHt$HHH|$L-u&HL{ID$ueuI\$QL-pAUHt$L\$C0000BD000000fBLAMALLfAUATUHSHHNu@~Au:~Nu4HHENaf0@NHHEH[]A\A]I/H5HADEEHLcDHEHH0xfHE3HHE.HESHADUt/ff.LHIA$HADUu H5HHHLH+[]A\DHtݐH5H|H5H`H5ުHDH5Ҫt#H5ӪH%iH5\LID$I$H9H)ЃHHHCIT$AH5HH5tLID$I$H9H)ЃHHHCIT$f. H5:Hl LID$s)Hthis(thiHfPHC ID$ D H5HXH5LID$I$H9H)ЃHHHC IT$0fL#ID$thisHCID$fH5LID$I$H9tZH)ЃHHHC IT$f.LID$~thi@sHCID$H5HH1HmAVAUATUSH Ht/t(A<9w!IH/HHcH>1H H[]A\A]A^fDLH HHHCHfunctionHHCDH LH1[]A\A]A^&fDfHHHD$)$SL,$HHD$I9xL)LcHt%EMtxL1ID$(ID$HID$ff.LcID$)ID$H<$HtgH(H[]A\A]A^A_DMuH<$1ҾLHYIFfov@-C) IFHHD=LsL=b%@I^HMuE1t>HHmHE..f8@.HEMf.H3HEe @saffPHEHHEI;N/Nf.HHEretu@urn HEHHHEAc @nogfDXHEH@HHEHnothrow HHEHUDHSHEpure@ HEH(H#HEAe @livfDHHEHHHEAe scopfDPHEH HHEy H@propertHfHHEH @HHEref HEHd@ HcHEH@trustedH@ HEH 1LHY0IFfoIFHHD LHYIFHextern(PHPascal) HHHIFHHD LHYIF) Hextern(CHfpIF HHD LHYIFHextern(CH@++) IF HHDiHHYHDYfMQuCH~Ht$5IHt-HD$H9|#LH)Et">tCHLHfDEu+1E1HLDsHtHL[]A\A]A^A_DsE1AWAVLvAUIATIHUHLSHH$A|$0LHH"fIHD$PI)D$@D$HHD$@Ld$(E1HD$Ll$0Hl$ LIEut M@HCHH9DDMcLHSHHL[]A\A]A^A_fDIpHCHH9CEWMcLHS;LHLT$LT$OfDfH|$ E1HD$0)D$ HLT$ HHCL\$(H9ff.@SHHH0Ht 8ZuHH0[fDfH|$HHHD$ )D$H|$HtHD$JHD$H0[ff.@AVAUATUSH Ht?It5B@~_H^f1H H[]A\A]A^fDHH H[]A\A]A^}DH~Ht$T$Ht8_uHLh[HEL5L%)"HD$HEHPHT$Hf.AEA4FHfHAEAH~Ht$HHHH`HE[HE@HD$LhLl$HiHM11HHH[MtƾH HE, fHEfDHHHHHE+HEH;cHsHHHHEiHEfH HH[]A\A]A^xH^HOHEnullHE}HD$H~HgHH[Mt)LHHIH}LLQLuHHE(HE@HD$LhLl$HHM11HHHMtƾHHE, fHEfDH^HL$ [HEL$ H-HEAFHt$H0HD$HPHT$HI{D6H~LJ"H LHH[]A\A]A^8HHHHE[HEfDHD$LhLl$HHM11HWHHHNHEHM11H:HE HHdMtHHE, f0HEl@HHE HEf.HHEA\rfDHEHHEA\ffDHEcHsHEA\vfDHE;HKHEA\nfDHEHA\tHEfD(HE0 LfDHHE)HEf.HHE]HEfHHE\xLf8HHE]Lf.HcHE"HE|$aHt$HJwDHSHH0??_DfH5HD$ )D$ue bHHD$H@ HD$ infGHGD maHD$H9tfH)~_H|$HD$HD$H0[@H@H|$HHH$D$H|$Ht8tHt_H01[HD$|fD1f.f.fHO1t/H=h/\HDkCHDQuÐff.@HcHfDATUSH HHHHH'HA\HT1E[]A\AUATUSH(HxyHtH(H[]A\A]fKIŋJyAEuH=HHt8/taf.EeHA"u.HHc`HHHeHtHxq@D%x1DH$Hƿ uHH5{}jH$H9D$WH$H9$E@H1HkHi$@BHD$HiT$@BHHD$HĘD1H9H'$\4RBH )-4RB5))1׉)) 1ʉ)) 1))1))1))1Ή)) 1)1E1H ;ff.ff.fD)B HH H9rD9u߉HH9rfDD@PHH=^1H5@AWAVAUIATUSHLgHo HG(H+G0H<IH9nH H9HBH9UIEXEuhHiI}PHHgIEIE0I)E(IE0Im H-EuhMM>ILAUEMhMEAIDLIAqAI EIH )A‰D)I4H>HteHEIAAsI} MI D)DA)f.HHH9r)I4HHuL>II9+IEHHtmLH[]A\A]A^A_fHtAƉH,IEXHHAU@HH1[]A\A]A^A_IE`HtI}PLff.HG HG(H+G0AWAVIAUIATULSLHHL$HHAĉHD<pHH$tnLHH $HAHtBHD$Ly DahHAHD$PL1LiHYPHiXHA`HH[]A\A]A^A_H|$Pt HHT$P1f.AWAVIAUIATIULSHLD$HLD$pHÉHD<AHHD$tXLHT$HBHt1HD$PLz ZhL2LjLbHj@HBHHH[]A\A]A^A_H|$PtHT$P1ff.fHAQM.HfHD$H7HWHOLGPLOXHG`ff.@H5CL{ZMHff.H5CLCMHff.ATUHSHLgt_ xIEwHH A)AANjEDLI D)DA)IwEIN$LT$M$M>It@H4$HT$LAWIwLT$N$AGhHT$E1HHHߋO ?HDA]HH A)AAADD)@H4$AWIwAG<AAGHHCHtHEHC0H[]fDAUIATIUSHH_HG H,H;v LHAՅt HH9rH[]A\A]fAU IATIUSHHG(H+G0HHW H9HBH9r;H_H,H;v LHAԅt HH9rH[]A\A]fH|$H|$HW ff.G8ftWKc@y y yyyyyyyy ΍ ))Ή 1))1Ɖ)) 1‰ȉ)) 1))1))։1))1Ή)) 1)1D Ay7y7fQAD1)D)A D1))AD1A))A D1))A D1))AD1))AщD1))AD1)A )A H D1)AщD1A ][Ay7y7Af.@f.f.Ht#ff.HdHHH HIIH H¸I9LBI|HUHHH)HDžLl$IH@IHIA<:tIWuL9thLLH)H H LA/fHLLt0A?IWHDǍAEfAEDHLxX%=uL_fDt( fIDME1H(I?IH(DAI9u⋍ )D4vA9~6Hc)M~EHEHE@H[]fHE)ډUH HMH[]H1[]UHSHH_Htf.HHHuHH[]fAWAVAUATUSHLoMtIHIL1HCI9t7HHt#H{uL9s HI9rHHHu跺LcMtgHI9t ff.@LMmTL9uH]H{t@HH{uHD)Le]H[]A\A]A^A_fDI9M}Hu+LM8fDLHT$L9t~MHT$M?L9uHL9taIM;wrMtFH9t&HIHM;wsLHD$HD$MMt#HLeMD)AH9tHMIf.f.HH=1?H1H5p@,BfAUATUSHHHtnILjIHLk0HDH3CPt[H{HS8HHtZJD-HkL!HCHCHHHEHC HEcPH[]A\A]IA덐HS8HHu>f.HgPHO8LG@7Hff.fHOPHO8LG@LOHHfAV1AUATUSHoHH+oLoHHw0HHHHHH9HDdHBH9HCIGPu{HS8IMK&LsHMnHC IHC0HsMdHI!L蘻CPuHC0ITHH!H9Ct-LcIcPLc[]A\A]A^DHHS8I@IEIFCPtH{HLS@fDLS@HGHt)H9sH90sH@Hu1f.fATIUSHwHHu=H{HS@KPHt&HL9sL9&s#HnCPuHS@KPHuMtMLcLcHHsHC []A\HG1Ht#ff.fDHH)H@HHuHf.AWMAVI1AUMATIHU1SH4HLLt$PMMHHFZYHHt!HAJHH[]A\A]A^A_HT$@HHuHD$HH-[f.@ff.S1xH5Y[铺1[ff.H5(nff.H锷@uDAWAVIAUAATMUDSHH$ L|$pH$LD$t4H$H [HD$H[]A\A]A^A_f.@LSH$HZHL t$t 詶Qf.$t@t<$vH$H=ZH8dzD$$( $$ H$H=fZH8uHD$ HHD$.ujR$$H|$^H$HHH|$.@H$H5YH0H$HYH該D$$H|$诹$$A`MHT$H4$MLD%7AH|$LMH$H5XD$H0fDH|$1҉"tnH$H=H8D$H|$$H|$ H$H=H8nH|$蔸H$H5H0A$H|$_DkH$HWD$HfH|$H$H5H0ff.H1A|ff.H11`AUMATIUSHHEu?HtKH1Lfo$foD$Cx41HĘ[]A\A]DHu1LӵH$HVIEff.H {P9f.fDa@wH@HcH>f1DH2,HVHXVH%RHH:VHVHGHVHUHUHUHUHUHUHUH!/HUHMUH%RHQWuiUHSHHWHGHH)H9sCHH9r]HһHEHH9r@H9rH}H'HtHEH]H[]H}v1fHEEEH[]f.HIHHHAff.ATIHUHSH'CuH{HH;L>Hk[]A\DDhHHH1L RA@HH HHHB H;Br5HHHHr H;rr9B(fEu1B(HH2<_uHHB HLE2EtHAHr AAAt0HHcmfDAaAwWHcH RHW HHE1H9Lr0HcL HV H9rEDV(EF(11LA@HL)HҨut;WHcL H<_t5N(u6tHHV ft<HcL wDHHV IAH<_BHHV 1F(AUHE1ATUSD^4HV LVAL9@(gL@ HHJM9rft`@(L C DBkt#HH@uo@(HH@AtC<_L@ HLHH @(E1111[HGH]A\LHWA]HwI0L@ HcH4@uu#HAHP DL9H4@LB@H-HDL@ D]e@0AM9B<_L1I9'LEt?HtmH1 HHtoHA<_uHtjHHH)L f11H1E1fM9EtRI1@(11DHH)LHIg-@AT$Hc҃11HJ1HH IATUHSHH H(u[HWH=SHC(HLc@I)IAaD$$HuHSHSH []A\DHtLg@I)Iv1LH?H%H{(uH薩HSHHSH []A\HuHSHCH [H=@]A\DHuHSH=?S}ff.HG H;GrDAVAUATUSHH<GHHG ;IHH{(uHSH=NS1L5,0ff.HC@LeHjI9t%H{(uHSLSLf.H{(u!HSHCH=]N[]A\A]A^[]A\A]A^ff.@USHH8Ht$HHvDH{(uIH=HSSH{ H)H;H{(u%HSHCH8H[]fDHuC(H8[]DHL$Hl$1H=H(H{(uH虧HSHHSf.H(}AWAVAUIATUSHX4L$H$jL$<AMuff.fMI9rJL$L$HHD$HHHL$p11DfATHH9uM7Ll$ E11 $HML YHD$$AE1H)/DaH$IMMA$I)MH9>HHrH9HFHHDL9HE\-LGYAuAfHA$<_(L50G5IE(HBA|$.~H6IHDA$<$<.t1ff.fA,<$#<.HH9uI}(u M<,IUHLAUMfDH)uHX[]A\A]A^A_Ll$ AE(HX[]A\A]A^A_L@HtA$HAD$JfHI9JHD$Ht$HL$0H|$(茧H|$(HL$0HIzHD$HL$8L\$0I4H)H~HHt$(躧$Ht$(L +L\$0HL$8=$ ? к<$F? ЈF?ȀFI9BL1LT$1Ht$1IIHJ HvBIff.ff.HHH$IHHW>wHHr&1HD$HHHL9HL1<$% AE( ,A< $IU(t5ff.fI}(D$OIUHLAUDD$OHuIUH|$OAUHIA|$Pu*뀻A|$$IH$HWHGHXHL[]A\A]A^A_MH<$IULAUH<$5A|$P(@AD$JW <0̐AUATUSHH8G8t G8=wHC HSH9r!C8C(tC8H8[]A\A]ÐH3,@Btc@tHxH{ @y@gMAIAulARuZ@puH{(u;HSH=5SC8yHHHC Ps,DC8Q@a=H9S(uHC(uϋC0tH{(uHSH=S,S@HH蚞H{(HuHSHSC8fD@b@clHt$HHHH{(nLd$I I I ID$H\vxLl$1LHLrH{(uSLHSLHSH{(u7HSH=J1SHC(HuHSH=dSC(Ht$HHu5HD$Ht;Hu%H{(uHSH==SC(xC(<@H{(uHSH=g=SC(CfD|n HH{(HC  HSH=@Sf.HSH=SLd$HC(I tvI I IT$H\Dd$HHSH|$SHC(K(Hk HC uHiHk C8DHHSH=ASHC(cHrHSH=ASHC(>HMHSH=ASHC(HHSH=~ASAWAVAUATUSHH((tH([]A\A]A^A_fHC HKH9C(E1@HHt0H{(uH9HSHHHCH([]A\A]A^A_C8tPS8AD$<w=HHcH>HD$EpHAHC ifDS(Hk u 1HrfC8 C8H([]A\A]A^A_H{(uHSH=!SHKHC H9ARtH{(uHSH=@SHH{(uHSH=!8SHC(APHtĐH{(uHSH=DSH.AAH{(HSH=*SH{(uHSH=1SDk(1EuLHC H;C>HtH{(uHSH= SHHDc(EtHhH{(HSH="Smk(Lc@u HHKHC H9H{(uHSH=>SD[(1EuBHC H;CHtH{(uHSH=SHHDS(EtH{(HSH=tSHC H;CGH{(uHSH=5>SHLc@H{(uHSH=>SDK(Hk@Eu|HDC(EukHS E1L%=,H HS H;S2s(Iu3HCH9ZMtH{(uHSLS{(tHS HCHk@H9C(HK,Hk HC HHk H <paHHS HS(HuHSH=SHH$H HfoD$ $foD$0D$SH H{(uHSH=SH HS H;Sbf.H{(HSH=f:SHS fC(C8H <EHHS fDH<EHHC fDH<EMHHC tfDHC H;CH<uHHC H{(HSH= 9SuH<LKHHHC H2HH4H{(H9D[(Dk,C,Eu HADk,H{(uHSH=SHAMt1H{(HSH=?7SDS(Eu 1HH{(HSH=4SC8DK(Eu HtH{(HSH=/SH{(HSH=ASDC(Ez1L%5HtH{(uHSLSHH{(:HC H;CsH<EuHHC fDS(tHPs,mC8 H9C(E1E1L5Dl$CfD{(EuHDd$HSHC 1H9dH|$0HHD$0H D$@ICfH{(HSH=h5SD$HS(ELg~Ld$(IoHoHf>17]~hSILl$ @H$H8L9d$@s=LLT$Ht1HD$LT$HHL$@HD$(OH|$8hHx1HA#JWEÉHAD H9tJЀ w҃01HHfuH1HD$@uHl$(H|&LLH LfoD$ $foD$0D$HD$`H H;D$(s&HtH|$HuHt$8H|$0HD랋D$HdfSfH@H HH$D$D$_t;HND$tH$H [@HD$H$f.H<$H 1[f.DHc @AVIAUIATUS1HSHHBEzHZHCHUHBHjHEII.LHuAVAąt~H]HH]HtpH3LAVtNyHSHtCHBHZHCExHUHBHjHEHZHCHUHBHjHEfDExHCHkHEI[]A\A]A^HCHkHEI[]A\A]A^ATI8UHSHe H~.PfHnHflL`HhHXH@0@ []A\fAWMAVIAUI8ATILUHSLHHLhL`LpHh Lx(HX0H[]A\A]A^A_@AWIAVI8AUATIULSLHLl$@LHLpL`LxHh HX(Lh0H[]A\A]A^A_fAUIATUSHH/HHGHtH}IEHtH}HEff.fH1IfIEHt H}HkIEHt H}HkLeL#Iu0HAU(MtSLLcMt?IEHt I<$LcIEHt I|$LcI,$HkHuLfDIHWIu0IE(HL[]A\A]AUATIUHSHHH?tkHHt^H8HSAHHt EHs0 S HH(L`HEy8fHnB@HB;fDHs0 S HH(L`Hte~BfHnfl@HBHH[]A\A]DHSHtH8HHSHt HxHH(L`H[]A\A]f@ff.H?t~ATUHSHHHt_H8HSuRH;HCHoLgHtH?H;HCHt HH;Hs0S(Ht(H+MtHHmHuL`[]A\L#[]A\H?tFUHSHHHHtH8HSuHH[]fDH1[]1ff.fHHt@HH@HuH1ff.HHt@HH@HuH1ff.H?tfUHSHH5HHH8SHxHBHt)fHH@HuHH[]f.H1H[]@1ff.fH?tfUHSHHHHH8SHHBHt)fHH@HuHH[]f.H1H[]@1ff.fAWAdAVIAUIATUS1HH/ IHtD9t6HcÃI,HmHutALHcI,HAօu(HmfD<LIcHIL膅H[]A\A]A^A_D19Lff.H9r1H9fSHHHH~¸uT$t HĐ[H}HĐ[HHt$(HT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$H$Ht$D$HD$HD$ D$ 0HD$HUSHH-Ht/f.]xHcDTHyHmHuH[]@UHSHH=tYHRHcCPSHl1H[]DFHt1HH@H1@H9H뗃f.HSHtЉD@H=|H=t f.H1E~HVHfUSH1HH-2HtI~H)IH[H IH H=H5$:HE1膂<}H@H)IHSHEHHHt[HUDUSHHt)HHHtHHHtH[]HHHSHEHHtH?Ht[Hh~Hf.@AUATIHUHSHHIH9rHHLL[]A\A]}H)H<(1H{f.USHHzHhHHHHH[].}f.@StHt[DH?H5 HH[f.UHSH>{HxH2HHHH[]|f.ATIUHS-HcLHHHD~H[]A\f.fAWAVAUATAUSHt$ Hcw09wPHH@HIIHC@D{PD;{0IcAHff.fHKHHs8MHHHH4.HEHS@HH@ AVDD$AHHA!XZD9{0D{PHD[]A\A]A^A_Hcs0H{HH_HCHNfDAUSHHt5H֨tHHH11[]cHHH[]H_HHH-dx~HH-H|HYztEH1H1bHH1IvDžxC>yHH[]@HH[]ҹfH(HH1[]鳹H1&~DAUAATIUHSHHH?fD(L`Hh@H@ HP(@0H@H@PH@h@pH@xHHǀ@8@XH[]A\A]ÐAWIAVAUIATULSH8HXHL$LD$HtvH.IGXI HL$x1HT$ LIIw LAąAG(AIG AALIHt$(LT$P(T$2D$(Dt$,AGEH|$p@A,IىHt$p LPŅHIAtAWHEL$HL$0QRLUAVLD$@HL$8PH0!EAA4DHD$xHޙHD$ E@AA1IDLPEtIDLPtILPHD$ H8[]A\A]A^A_DEgEAAXHAAEADAGIHLPAƅT sH\$xHHD$ E\E1IDD$DLPDD$E6HzHD$ )DHLSIHA1H9AW(LMw 8AGEI zAG(f.Ao,+I@gHt$(LP(YD$(l$,AG,IwHD$xH8H[]A\A]A^A_HD$xHnHD$ E1۽Af{qH\$xH3fDI1H1DD$+]DLHIAGHPDD$AHxLABMAGpIxT$AGpHH4L9T$LIGxIcpHt)9fpH\$xHHD$ EIDLPAG0I8AG0HH42IcW0IG8\1#pH\$xH)HD$ EtAAA11f.HD$xHHD$ ES?1A&LOT$HIGxoH\$xHHD$ EsDD$moH\$xEDD$HPHD$ `~DHt$AQME1gHfAUATUSHO0ukGHaH uZIIHtS H5HLHEtHtF1M9HCXLk S(H[]A\A]nH1[]A\A]L8vfDAUATUSHW0cHt[GTH uM1HHt$@ʼnP(x;Ht$ HP8l$Ht,kH[]A\A]fDmH1[]A\A]mHD(IHPHt$ HPE,$ff.@USHHH tR1HL$HT$teHH5hH{ HEhsS(HC`uMHC H[]fDw~,HP0CHC`H[] mT$1뼐H{ tC(HC`f.w,~#HSHP0C,HCh[1ff.fATIUHSHH@tMHcE09|%Hu@HcLHjpH[]A\@)I<1HcHn]01HL$HT$u뼐ATIUHSHH@teHuHHtqE09|%HcLHoH[]A\Hc)1HHcHHI<n]0HuHf1HL$HT$/u1USHHw~ HPs,~ HHPH{`HtPlH{hHtBlH{@S(|H{8rH{@rH{HrCp~61HCxH<kHCxHu1D$ =w[D$ ERPHT$HBHD$HD$EbHHHHD$HT$HBHD$'HD$뤃iHHAXf.AWfIϹpAVIDAUATUSHHHI.ILd$H|$L)D$PHD$`7AŅHD$H\$1D$0HD$(1D$fD$0T$uH9HFʼnD$0H)ŅuI9IFljD$I)1ML@ÅtHD$8LIP3DEHĈD[]A\A]A^A_@ADHHH HHD HHHf.f.f.f.f.HGxE1WPHHpHL Hff.ff.fpH)9ABfI9uHOp1HAJHLHff.DpH)9BfL9ufDAW1AVAUATUHSLO`DUPEDM$9E)A9\$L]pDCHcЋ]XM9ElE;r|$DD9AG|$ !A KA9HcLD8:uD8l:uA<$@8:uA|$@8zuD$I|$HgDB8GB8GB8GB8GB8GB8GHH8utL9soB8GtD$Hff.fD)9D$9}z!HcA KElEA9D9[]AGA\A]A^A_ËD$멋D$H럋D$H땋D$H닋D$H끋D$HtD$HgATUSG9FЉՅu[]A\)HAH7GHLHtfHHC8@0tt(L#Lc[]A\fH{`HRHC`@H{`H:HC`@AWAVAUATUSHHDoPLDElfDH;DOEDHHs`Ɖ,HD@Et}SPHKhDAA)A)9rH{`)ȍ0J4/\e)L))艃;,s,HAH;DOE8H8HChH9s(HH9HH9!H[]A\A]A^A_fLC`D)‰EBDAAD1D>D!ȉbf.DBAD#sXAAD1L[xD!ȉICL[pD8fGE)AOAx   Hx , Hp ADffAtEH!B8f DpD DA)֍BDzrAA9rIHK`PDAHKxD1#AD#[XHQHKpD:fFkI>EE9DHIAFIv`ʉL$HT$vVL$I>HT$A)HW)O HW(IEHwDI>DD) WHGHG(\$A)AFPIN`91EIvhAL)LI9H7LLHL)UA,AFPA)9GAA,I f.\$E1)pAHI98sI8E|I>_EnhA)A9sIAFPH9D9AG݅A~PI98sI8A4IH*IFH)ȹH9HG)9AG9sR@@tH(D[]A\A]A^A_ulI;tA9F1ɃuII@1A9!D$ LIv`HII>|DEnhA)A9Iv`eA~PA,A)9AGA,ADAdž(H7HH)SAVPAI>9FD$ $H))I~`IAH4^SA(w A(I>AFPA_A;,sA,Aʼn)H4HASA(w A(EE;,sE,I>IN`ff.@HG8HtH;8t f.@*t09t+q.D~H@EH҉1҉1=@Ht[H@tTHHtMHW8HtOH;:t fR*t@9t;q>D~H@EHÐf.1D1@AWAVAUATUSH[H)!Lg8IA\$0 IA$AD$0AD$P9EEuImAELM}A$\$ @A$I\$`H,$A$E$MT$xML$p|ED$XA$@pE43A!1։D!ډA$I4r.fC,yf9uA$LH,$ADŽ$jA$Y\$ A$A$,A$I$HADŽ$I$1ADŽ$ImEuA\$0H[]A\A]A^A_ÅuJA$I|$x11f GHINAD$PADŽ$IDŽ$ADŽ$,)IeA|$*u5A$u)H`L褏IE`AD$PAD$09s&Rff.@ATUSHtwH@tpHHtiHŅu[H8H񋇬DWPB49FAHtuHtD#[]A\ÉƉLH)Hw`HN[]A\@ATUSHH@HHHt~AąurHo8HG(HGHEHG0GXHE E0HE(y؉E0t>E*111\HC`HEL{D[]A\ÐA[]DA\fE9111ff.UHSH"Åt H[]Hm811EPH}xHHEhf GHLHcHHHfnfn@HDžDž,@fafDžpfaHHDžHDžfօH[]ff.@Ht+H@t$HHt8uHW8z0u Hr8Df.HHt8H@t1HHt*u!Ht HW8HR(HtHW84øf.AUATUSHHH@HHALg8ID$ HI9$rwDA$4L)9O݉ڃA$4D!fA $0{A)uH[]A\A]H[]A\A]ýAAHt=H@t6HHt/u&Hw8DDDfDfLFHF?LHHHH 0u5HG8P0tQtlH҃xTu tHDHA HHHH HLHHHÐD EuLH8MtIyt AQ HIy(HtH)@H|uIy8HtH)fH|uAyD5H,AWAVAUATUSHHD$   HLo8s Wt H?b AE=uI s  I}(AuLAmLl=q *Ee0ECAEqIcAz HHLTP AU0D$ IE(HK`HpIEAIu(IE(HK`IUHpIu(,IU(HC`IMHrHIu(IU(HC`IMHrHIu(IE(HKIUHpIu( IE(HKIUHpIu(,IU(HCIMHrHIu(HCIU(IMHHrIu(HAE0~AE01I}(D$ 6t-zO9=7DsECHEE8HA}"vDAET -xAEEt IMHi҅BH ))BIU(HrIu($IU(IMHrIu(EE111HHC`AEqI}(AE9rEYIp[ gIE8@DfLPt{ | H<{ u DAELD$ H[]A\A]A^A_DHD{ EtAEKfDI1H)HxIu`1LwAI}IIED` EkAAIU`ADžIA rA A IrA A IrA AfAAWAAAA9 KLEE3ADž,} E EIIA1H)HxIu`1LvAI}I`IED@ Ef.IE8HpHDp I}@M}(IEA)EK'E1HL[]A\A]A^A_AEycAEOVAE\IAE\É]@fDH}HLH)NfnEu~4?v fx<DFXB< w~XHD!HFP1fDfHFP1FXff.AWHKAVfHnAUATUSHh~Nt$fl)D$ D$kLWIM[L'MDMw8AF=??u AF@?@?E_ AoLT$MnPA^XD\$l$H-4?H=JHcH@E1II Mn Mo`E1AF>?ENE111D\$0TD\$0IF IG`AF??D$EF EKAFN?LT$IAV/J0ff.A$IHIŃuމ7oD$2foT$ HSAFG?|$IFxAVh)IIDAFH?_ AR HD$t$E_ LM'IGAoMnPA^X[IGE_ M'AoMnPA^XHD$AF=??5AdžLw A$كIT$HIDAF LHAFA?IIԉكI)6ff.ff.fA$IHIŃuff.LT$@EFdEKAFL?Et$AF`D)9B)A9F@k A\ H-D$LT$IG0AFQ?ff.E_ AoAn AF@?// )ff.A$IHIŃ u f!A$IHIŃufAv IF0HtHAV\9FD9H|$AG)A)Íp1AV\ff.HHH9uHD$EV\HD0HD$EqAFD$LT$.AFR?fDD$-MF0MtIIpHt@EH E@$D\$8L$0DA)D)DE9HCHLkAVD\$8L$0t AF)IAF\)AF\D9!A$IHID9u1E1@AFP?D$;fAfA@AA9r5ff.E$IIM9uJf.1E1fD>HA AD!Fff.ff.A$IHDIDD!DЉHBB 9rDDDR)IE1E19ff.ff.DA$IHIŃtuILT$DLT$fDHL$H)AF\DIF0HtLhAFt AFqAF7?E11 LLDHH IAAAw SH|$D$LT$IG0AFQ?fDEnAXLT$HͥIG0AFQ?k LAHH5H9HD$LT$IG0AFQ?t|$AFG?D$LT$NfDAAAFK?AF`EFdD9U9ff.ff.DA$IHID9uIDED)D!AF\IAF\كv%OfA$IHIŃ-uكIF0En\HtDh Avt AF|%AF9?1E1ˋL$D)ىIG(IF(EFEM;n [HD\$IG0AFQ?|DED)D!IAF`2AŃ|$AFB?AF\1E1AbLT$HOD$ot ITIF0Ht @HAV?DLHHHB!BHHH)HHHHHH)H9DIAF8DAN8HբD$LT$IG0AFQ?LT$IIHŢD$IG0AFQ?QDD)E1IEIAA DA9<AB<ff.ff.@ȃfEF9uAJAI9Aʉ-ff.@A$IHID9u I~ LD\$8L$02DD\$8L$0IF A@@H5D$LT$IG0AFQ?ADDQDHH I;F 6D\$1E1I~ Ht$\D\$0Dl$\CD\$0IF dHD$LT$IG0AFQ?Adž1AFE?\AA93ff.ff.E$IIM9uENLD\$H)LT$I~ EBLT$D\$AVIF IG`AFO?A~1D\$E1DDD)E1IEIAAA AAEAKff.ff.ff.ff.A$IHID‰D!H QD D9rDq)IE)Av\IEMˉwLH|9)HrH1H m9H A1HfAFH9uAdžIX1AFxIIMFxIIFhMLT$8D\$0 D\$0LT$8HMD$LT$IG0AFQ?;M$AFO?#AAFI?EFdEIV0Ht LHAFt AFAF6?E116DzI~ Ht$\D\$0fDl$\]@AVD\$0IF %TDD)IEOIENAA- 9D\$LT$"AAFF?MAdžAE1gLT$E_ M'MWAoD$MnPA^XA^8uAF8111D\$0}?A1E1IF HHt$\fD\$\V?AF5?D\$0IF ,1AFO?E1D\$IXAFx MIVhIMFxIID\$LLL$@HL$8Ht$0 Ht$0HL$8LL$@D\$LHLT$IG0AFQ?H4D$LT$IG0AFQ?D$LT$9E111EV1AFD\$0/7AD\$0IF IG`AF??1I~ Ht$\D\$0fDl$\=D\$0IF @IAF|MF|AD\$0IFpAHHp D\$0oHLT$IG0AFQ?v1LT$I|$ILT$1E1AF=?E11)ff.USHHu>Hw8HFHHtHHPSHHs8H{PSHHC8H[]ffHH@HHUSHH_8HtH;;uHsHՍv H[]DS@t/Ht*sDH)HsHKSDHsHHC@H)H<2HtC@EH1[]fDfAUATUSHHuxLo8IAUAEu5=>?t5HLou[AEH[]A\A]=>?u)1114LH4I9E t@fAER?랐Ht[H@tTHHtMHG8HtH;8uH4?v f@t1Hp0FHf.ATHUSHD_LG8AEAxXAxS?aI@PA@S?HHHT$ GLL HЈHHI9uAIHP1A@XA)7AEu,A)A 9HDtxD wEtZA1AxS?AxXI@PA@S?AxXHI@PH41 f.AwAD^EH. hH1A$D)ljEHD9s2@t-9Auƃ@ǃHD9rALALN)VAH.LNEX1AtA@A@HH^(uI@<A@DLNH^(EXA@??HD[]A\ZHD9s91AHD9r1D@AfDH.A1E1AAzAoE11ff.HtKH@tDHHt=HW8HtH;:uJv1A?uRX1f.AUATIHUSH[MZRHLn8H~PS@HHBMEHMYAM8H{PS@IHoH}HLHIXA$oCH)H)΁AD$oC AD$ oC0AD$0oC@AD$@oCPAD$PoC`AD$`IEHEIHHLeIEhH9sQIH)HXHAM8IuHLaILEH1Il$8H[]A\A]IH9rHXH)HHEhIEpHH)HEpIH)HMuE1f.oH}HLHIXA$oCH)H)΁AD$oC AD$ oC0AD$0oC@AD$@oCPAD$PoC`AD$`IEHEIHHLeIEhH9rIH9IH)HXH.DH{PHSHf.HtKH@tDHHt=HW8HtH;:urvǂf.Ht[H@tTHHtMHW8HtH;:uJ4?vBtt B1@B1f.HtkH@tdHHt]HW8HHtH;:uJv fHcHC?t-L?uۋ+r\HHR\HfHt[H@tTHHtMHW8HHtH;:urv fHHXH)Hf.Hf.f.@AWfMAVAUATUSHH0Ht$LL$)D$)D$t"Ht$HH4NfHfDLH9uHD$Af8uJHAuHD$HP@H@@D$AH01[]A\A]A^A_fALL$AL#ff.ff.AHE9tf8tLL\$1)HI9utA1A71L\$ fL$ 1ɐfA fA HHuA1tHL\$Ld$ff.ff.ACftLTifALflTHL9uD9ָAGD9ƉABЉщT$D$u9|$TH0[]A\A]A^A_H0[]A\A]A^A_ÃD$ց|$PT$ ЈD$uH )D$HD$H9)HD$!HD$D$D$HD$HD$D$D$H+L|$1Dd$H\$E11҃Hl$ADӉD$D$H|$D|$EE)E1GHD9rD9H|$D)D GH|$ $$ =syntax errorError: discardingError: poppingmemory exhaustedCleanup: discarding lookaheadCleanup: poppingPT_NULLPT_LOADPT_DYNAMICPT_INTERPPT_NOTEPT_SHLIBPT_PHDRPT_TLS"end of file"LNAMEPLUSEQMINUSEQMULTEQDIVEQ'='LSHIFTEQRSHIFTEQANDEQXOREQ'?'':'ORORANDAND'|''^''&''<''>''+''-''*''/''%'UNARY'('ALIGN_KBINDSQUADLONGSHORTASCIZSECTIONSINSERT_KAFTERBEFORELINKER_VERSIONDATA_SEGMENT_ALIGNDATA_SEGMENT_RELRO_ENDDATA_SEGMENT_ENDSORT_BY_NAMESORT_BY_ALIGNMENTSORT_NONESORT_BY_INIT_PRIORITYREVERSE'{''}'SIZEOF_HEADERSOUTPUT_FORMATFORCE_COMMON_ALLOCATIONOUTPUT_ARCHINHIBIT_COMMON_ALLOCATIONFORCE_GROUP_ALLOCATIONSEGMENT_STARTINCLUDEMEMORYREGION_ALIASLD_FEATURENOLOADOVERLAYREADONLYDEFINEDTARGET_KSEARCH_DIRMAPNEXTSIZEOFALIGNOFLOADADDRMAX_KMIN_KSTARTUPHLLSYSLIBNOFLOATNOCROSSREFSNOCROSSREFS_TOORIGINFILLLENGTHCREATE_OBJECT_SYMBOLSOUTPUTCONSTRUCTORSALIGNMODSUBALIGNPROVIDEPROVIDE_HIDDENAS_NEEDEDCHIPABSOLUTENEWLINEENDWORDNAMEWORDASSERT_KLOG2CEILPUBLICDEFSYMENDBASETRUNCATEINPUT_SCRIPTINPUT_MRI_SCRIPTINPUT_DEFSYMCASEEXTERNVERS_TAGVERS_IDENTIFIERGLOBALVERSIONKINPUT_VERSION_SCRIPTINPUT_SECTION_ORDERING_SCRIPTKEEPONLY_IF_ROONLY_IF_RWSPECIALINPUT_SECTION_FLAGSALIGN_WITH_INPUTEXCLUDE_FILECONSTANTINPUT_DYNAMIC_LIST','';'')''['']''!''~'$acceptfilenamedefsym_expr$@1mri_script_file$@2mri_script_linesmri_script_command$@3ordernamelistmri_load_name_listmri_abs_name_listcasesymlistextern_name_list$@4ifile_listifile_p1$@5$@6$@7input_list$@8input_list1@9@10@11sec_or_group_p1statement_anywhere$@12wildcard_namewildcard_maybe_excludewildcard_maybe_reversefilename_specsection_name_specsect_flag_listsect_flagsexclude_name_listsection_name_listinput_section_spec_no_keepinput_section_spec$@13statement$@14$@15statement_liststatement_list_optlengthfill_expfill_optassign_opseparatorassignmentopt_commamemory_spec_list_optmemory_spec_listmemory_spec$@16$@17origin_speclength_specattributes_optattributes_listattributes_stringstartuphigh_level_libraryhigh_level_library_NAME_listlow_level_librarylow_level_library_NAME_listfloating_point_supportnocrossref_listparen_script_name$@18mustbe_exp$@19$@20$@21memspec_at_optopt_atopt_alignopt_align_with_inputopt_subalignsect_constraint$@22$@23$@24$@25$@26$@27$@28$@29$@30$@31$@32atypeopt_exp_with_typeopt_exp_without_typeopt_nocrossrefsmemspec_optphdr_optoverlay_section$@33$@34$@35phdrsphdr_listphdr$@36$@37phdr_typephdr_qualifiersphdr_valdynamic_list_file$@38dynamic_list_nodesdynamic_list_nodedynamic_list_tagversion_script_file$@39$@40vers_nodesvers_nodeverdepvers_tagvers_defns@41@42opt_semicolonsection_ordering_script_file$@43section_ordering_listsection_order$@44$@45\%03o%F%P: EOF in comment ldlex.l in script in expressionbad buffer in yy_scan_bytes()%F: macros nested too deeply --shared--library=%s%P: %s: missing argument %P: unrecognized option '%s' nodefinitionsnosymbolicpure-text--defsym%F%P: invalid number `%s' Usage: %s [options] file... Options:%s-%c%s-%s%s @FILERead options from FILE%s: supported targets:%s: supported emulations: ELF emulations:both Report bugs to %s ignore-allreport-allignore-in-object-filesignore-in-shared-libs%F%P: bad -plugin-opt option %s%c%s%F%P: -shared not supported %F%P: -pie not supported descendingascending.text-segment.rodata-segment.ldata-segmentplacewarndiscardshare-unconflictedshare-duplicated%s%s%s%s%s%s.mapKEYWORDSet architecturemri-scriptRead MRI format linker scriptdpdependency-fileWrite dependency fileforce-group-allocationSet start addressExport all dynamic symbolsno-export-dynamicenable-non-contiguous-regionsdisable-linker-versionenable-linker-versionLink big-endian objectsLink little-endian objectsauxiliaryfilterIgnoredgpsizesonameFILENAMEPROGRAMno-dynamic-linkerSearch for library LIBNAMElibrary-pathDIRECTORYsysroot=Set emulationprint-mapnmagicDo not page align datano-omagicSet output file nameOptimize output fileout-implibGenerate import libraryPLUGINLoad named pluginplugin-optplugin-save-tempsfltoflto-partition=fuse-ld=no-map-whole-filesQyemit-relocsrelocatableGenerate relocatable outputjust-symbolsremap-inputs-fileremap-inputsPATTERN=FILEstrip-allStrip all symbolsstrip-debugStrip debugging symbolsno-strip-discardedtraceTrace file opensRead linker scriptdefault-scriptRead default linker scriptdTrequire-defined[=SECTION]UrPrint version informationdiscard-allDiscard all local symbolsdiscard-localsdiscard-nonetrace-symbolTrace mentions of SYMBOLstart-groupStart a groupend-groupEnd a groupno-accept-unknown-input-archno-add-neededno-as-neededassertBdynamicLink against shared librariescall_sharedBstaticdnnon_sharedBno-symbolicBsymbolicBsymbolic-functionsno-check-sectionsno-copy-dt-needed-entriescrefOutput cross reference tableSYMBOL=EXPRESSIONDefine a symbol[=STYLE]disable-multiple-abs-defsembedded-relocsGenerate embedded relocsTreat warnings as errorsno-fatal-warningsCall SYMBOL at unload-timeforce-exe-suffixno-gc-sectionsno-print-gc-sectionsgc-keep-exportedhash-size=Print option helpCall SYMBOL at load-timeMapFILE/DIRno-define-commonDo not define Common storageno-demangleDo not demangle symbol namesno-keep-memoryno-undefinedno-warningsno-allow-shlib-undefinedallow-multiple-definitionAllow multiple definitionserror-handling-scriptAllow undefined versionno-undefined-versionDisallow undefined versiondefault-symverCreate default symbol versiondefault-imported-symverno-warn-mismatchno-warn-search-mismatchno-whole-archiveTurn off --whole-archivenoinhibit-execnoinhibit_execnostdliboformatSpecify target of output fileprint-output-formatPrint default output formatprint-sysrootPrint current sysrootqmagicreduce-memory-overheadsmax-cache-size=SIZEno-relaxretain-symbols-filerpathrpath-linkCreate a shared libraryBshareablepic-executableno-piesort-common[=ascending|descending]sort_commonsort-sectionname|alignmentsection-ordering-filespare-dynamic-tagssplit-by-file[=SIZE]split-by-reloc[=COUNT]statsPrint memory usage statisticstarget-helptask-linkDo task level linkingtraditional-formatsection-startSECTION=ADDRESSSet address of named sectionimage-baseSet image base addressTbssSet address of .bss sectionTdataSet address of .data sectionTtextSet address of .text sectionTtext-segmentSet address of text segmentTrodata-segmentSet address of rodata segmentTldata-segmentSet address of ldata segmentunresolved-symbols=[=NUMBER]dll-verboseversion-scriptversion-exports-sectiondynamic-list-datadynamic-list-cpp-newdynamic-list-cpp-typeinfoUse C++ typeinfo dynamic listdynamic-listRead dynamic listexport-dynamic-symbolExport the specified symbolexport-dynamic-symbol-listwarn-commonwarn-constructorsno-error-execstackwarn-execstack-objectsno-warn-execstackno-error-rwx-segmentsno-warn-rwx-segmentswarn-multiple-gpwarn-oncewarn-section-alignwarn-textrelwarn-shared-textrelwarn-alternate-emwarn-unresolved-symbolserror-unresolved-symbolswrapignore-unresolved-symbolpush-statepop-stateprint-memory-usageReport target memory usageorphan-handling=MODEno-print-map-discardedno-print-map-localsno-ctf-variablesctf-share-types=no-poison-system-directories../../ld/ldlang.c0x%s %W %pB %W (size before relaxing) 0x%V (local) %s CTF warningCTF error*?[?*[/DISCARD/relocation count is negative%P%F: copy_section: %s: %s failed to copy private data%P%F: setup_section: %s: %s .init.fini [%B].ctf Allocating common symbols %*s0x%-16s %10lu B%10lu GB%10lu MB%10lu KB%F%P: invalid data statement [unresolved]*undef*[!provide]Fail with %d SORT (CONSTRUCTORS) CONSTRUCTORS EXCLUDE_FILE(%sSORT_BY_NAME(REVERSE(SORT_BY_ALIGNMENT(SORT_NONE(SORT_BY_INIT_PRIORITY(Address of section %s set to CREATE_OBJECT_SYMBOLS FILL mask 0x0x%V %W %s 0x%v0x%V %W RELOC %s %s+ *fill*0x%V %W %s0x%V %W load address 0x%V%-34sTARGET(%s) OUTPUT(%sLOAD %s START GROUP END GROUP INSERT %s %s .ctors.dtorself32-bigelf64-bigelf32-littleelf64-little-l$SYSROOTload basesubsection alignment*ABS* Discarded input sections Memory Configuration AttributesLengthOriginName%-16s %-18s %-18s %s 0x%-16s 0x%*s.init_array.fini_arraySHT_PROGBITSSHT_STRTABSHT_NOTESHT_NOBITSSHT_INIT_ARRAYSHT_FINI_ARRAYSHT_PREINIT_ARRAY,:%F%P: target %s not found 0x%V %pT %pI %F %FGNU ld (GNU Binutils) 2.44?*]%F%P: multiple STARTUP files .note.gnu.build-idprogram header type__load_start_%s__load_stop_%sC++JavaObject-only input files: %pB (%pT) .exports__start_%s__ehdr_start.stabstr.startof.%sphdr flagsphdr load addresstypeinfo name for*typeinfo for*operator new*operator delete*SANE_EXPR%X%P: unknown feature `%s' %16s: %6.2f%%error copying sectionserror setting up sections.obj-only.o.gnu_object_only%F%P: unknown format type %s Set Symbol %G %P: %pB: reference to %s %P: %pB: definition of %s ../../ld/ldmain.c; %D: first defined here__imp_%s(%s)%X%H:+%v%P: %H: %s%s using multiple gp values%P: %C: %s%s %P: %s%s %P: %pB: %s%s elf_x86_64--sysroot=x86_64-conda-linux-gnuCOLLECT_NO_DEMANGLE_finiLDEMULATION%F%P: missing argument to -m -mips1-mips2-mips3-mips4-mips5-mips32-mips32r2-mips32r3-mips32r5-mips32r6-mips64-mips64r2-mips64r3-mips64r5-mips64r6-m486built in linker scriptusing internal linker script:%F%P: no input files %P: mode %s %s: \ %s %s: .exe.dll%P: error writing file `%s' %P: error closing file `%s' undefined-symbolerror handling script%X%X%P: %s: %E a.out../../ld/ldwrite.c.stab$GDB_STRINGS$$GDB_SYMBOLS$%F%P: final link failed: %E %F%P: final link failed %X%P: %s ../../ld/ldexp.c%F%P:%pS %% by zero %F%P:%pS / by zero NEXT_SECTIONMAXPAGESIZECOMMONPAGESIZENULL TREE %pB:%s+0x%vPROVIDE (%s = ("", ASSERT (, %s) (%s)+=-=*=/=<<=>>=&=|=^=||&&==!=<<>>MAXMINGNUTARGET%pS SYSLIB ignored %pS HLL ignored Supported emulations: %s: GNU ld %s Supported emulations: %s %F%P: please report this bug ../../ld/ldmisc.c0x%lx%10s%pB: in function `%pT': %pT%u%s(%pA+0x%v)%s generated(%s)%s%s+0x%v (type %s)%s:%uno symbol%p%%%c%P: warning: %s ignored %F%P: internal error %s %d comma]lbrace]quot]rbrace]space]/ldscriptscannot find script file %s opened script file %s /dev/nullNULremove input file '%s' Input File Remapping Pattern: %s Maps To: %s attempt to open %s failed attempt to open %s succeeded %P: cannot find %s (%s): %E %P: cannot find %s: %E .a%P: cannot find %s inside %s missing-lib../../ld/ldcref.c%X%P: cref alloc failed: %E Cross Reference Table SymbolFile No symbols ../../ld/plugin.c.gnu.linkonce.t.%P: warning: %P: error: (symbol from plugin)WEAKDEFWEAKUNDEFDEFAULTPROTECTEDINTERNALunknown LTO kind value %x%P: %s: duplicated plugin pass-through=_onload%F%P: %s: plugin error: %d UNKNOWNPREVAILING_DEFPREVAILING_DEF_IRONLYPREEMPTED_REGPREEMPTED_IRRESOLVED_IRRESOLVED_EXECRESOLVED_DYNPREVAILING_DEF_IRONLY_EXPmd5sha1uuid/dev/urandomi386:x86-64zstdsysvbothundefsmuldefsmax-page-size=common-page-size=stack-size=noexecstacknounique-symbolglobalauditnostart-stop-gcstart-stop-visibility=start-stop-visibility=defaultstart-stop-visibility=hiddennosectionheaderinitfirstinterposeloadfltrnodefaultlibnodeletenodlopennodumplazyoriginnouniquenocombrelocnocopyrelocnomemory-sealnorelronoseparate-codenocommonnotexttextoffnoextern-protected-datanoindirect-extern-accessnodynamic-undefined-weaknoreloc-overflowcall-nop=prefix-addrsuffix-nopprefix-suffix-ibtpltibtshstkcet-report=report-relative-relocx86-64-baselinex86-64-visa-level-report=lam-u48lam-u48-report=lam-u57lam-u57-report=lam-report=nomark-pltnopack-relative-relocs-z %sBgrouppackage-metadatacompress-debug-sectionsno-rosegmentdepauditdisable-new-dtagsenable-new-dtagsno-eh-frame-hdrexclude-libshash-styleno-ld-generated-unwind-infoelf64-x86-64i386:x64-32elf32_x86_64elf32-x86-64elf_i386elf32-i386ldscripts/elf_iamcu.xuldscripts/elf_iamcu.xrldscripts/elf_iamcu.xbnldscripts/elf_iamcu.xnldscripts/elf_iamcu.xdwerldscripts/elf_iamcu.xdweldscripts/elf_iamcu.xdwldscripts/elf_iamcu.xdcerldscripts/elf_iamcu.xdceldscripts/elf_iamcu.xdcldscripts/elf_iamcu.xderldscripts/elf_iamcu.xdeldscripts/elf_iamcu.xdldscripts/elf_iamcu.xswerldscripts/elf_iamcu.xsweldscripts/elf_iamcu.xswldscripts/elf_iamcu.xscerldscripts/elf_iamcu.xsceldscripts/elf_iamcu.xscldscripts/elf_iamcu.xserldscripts/elf_iamcu.xseldscripts/elf_iamcu.xsldscripts/elf_iamcu.xwerldscripts/elf_iamcu.xweldscripts/elf_iamcu.xwldscripts/elf_iamcu.xcerldscripts/elf_iamcu.xceldscripts/elf_iamcu.xcldscripts/elf_iamcu.xerldscripts/elf_iamcu.xeldscripts/elf_iamcu.xelf_iamcuelf32-iamcu%P: %pB: bfd_stat failed: %E includelibc.sofound %s at %s lib64RIGIN}IB}../../ld/ldelf.c%.*s%s/%s%.*s%s%s needed by %pB LD_LIBRARY_PATHLD_RUN_PATH/var/run/ld-elf.so.hints/etc/ld.so.conf-z dynamic-undefined-weak.note.package.note.GNU-stack.eh_frame_entry.eh_frame.eh_frame_hdr.gnu.warning%s/lib%s%s.so.rela.dyn.mbind.bss.mbind.data.mbind.rodata.mbind.text.rel.dyn.rel.gnu.warning..note.tdata.interp.sdata.comment../../bfd/archive.c%-10lu! ! __.SYMDEF __.SYMDEF/ / /SYM64/ #1/20 __.SYMDEF SORTED__.SYMDEFARFILENAMES/ // %-ld:%-ldARFILENAMES///#1/%lu__gnu_lto_slim%-12ld%-8lo` SOURCE_DATE_EPOCH%-7lobinaryUNKNOWN!unknownBFDBFD %s assertion fail %s:%dPlease report this bug. ../../bfd/bfd.cerror reading %s: %s-+ #0'IhlL%s[%s]%s: coff-go32pe-i386pei-i386pe-x86-64pei-x86-64pe-aarch64-littlepei-aarch64-littlepe-arm-wince-littlepei-arm-wince-littlepei-loongarch64pei-riscv64-littleaixcoff-rs6000aix5coff64-rs6000mach-ono errorsystem call errorinvalid bfd targetfile in wrong formatinvalid operationno symbolsno more archived filesmalformed archiveDSO missing from command linefile format not recognizedfile format is ambiguoussection has no contentsbad valuefile truncatedfile too big#../../bfd/bfdio.c1.2.12zlibzlib-gnu../../bfd/compress.c.zdebug_.note.gnu.propertyZLIB.debug_strzlib-gabi../../bfd/elf-properties.cMerging program properties .gnu.lto_.lto.../../bfd/format.cinvalidcore../../bfd/hash.c../../bfd/libbfd.c../../bfd/linker.c__real___wrap_../../bfd/opncls.c.gnu_debuglink%s.debug/%s/usr/lib/debug/usr/lib/debug/usr.gnu_debugaltlinkr+../../bfd/reloc.ccoff-z8k.debug_rangesunusedVRT32@@uninitialized@@BFD_RELOC_64BFD_RELOC_32BFD_RELOC_26BFD_RELOC_24BFD_RELOC_16BFD_RELOC_14BFD_RELOC_8BFD_RELOC_64_PCRELBFD_RELOC_32_PCRELBFD_RELOC_24_PCRELBFD_RELOC_16_PCRELBFD_RELOC_12_PCRELBFD_RELOC_8_PCRELBFD_RELOC_32_SECRELBFD_RELOC_16_SECIDXBFD_RELOC_32_GOT_PCRELBFD_RELOC_16_GOT_PCRELBFD_RELOC_8_GOT_PCRELBFD_RELOC_32_GOTOFFBFD_RELOC_16_GOTOFFBFD_RELOC_LO16_GOTOFFBFD_RELOC_HI16_GOTOFFBFD_RELOC_HI16_S_GOTOFFBFD_RELOC_8_GOTOFFBFD_RELOC_64_PLT_PCRELBFD_RELOC_32_PLT_PCRELBFD_RELOC_24_PLT_PCRELBFD_RELOC_16_PLT_PCRELBFD_RELOC_8_PLT_PCRELBFD_RELOC_64_PLTOFFBFD_RELOC_32_PLTOFFBFD_RELOC_16_PLTOFFBFD_RELOC_LO16_PLTOFFBFD_RELOC_HI16_PLTOFFBFD_RELOC_HI16_S_PLTOFFBFD_RELOC_8_PLTOFFBFD_RELOC_SIZE32BFD_RELOC_SIZE64BFD_RELOC_68K_GLOB_DATBFD_RELOC_68K_JMP_SLOTBFD_RELOC_68K_RELATIVEBFD_RELOC_68K_TLS_GD32BFD_RELOC_68K_TLS_GD16BFD_RELOC_68K_TLS_GD8BFD_RELOC_68K_TLS_LDM32BFD_RELOC_68K_TLS_LDM16BFD_RELOC_68K_TLS_LDM8BFD_RELOC_68K_TLS_LDO32BFD_RELOC_68K_TLS_LDO16BFD_RELOC_68K_TLS_LDO8BFD_RELOC_68K_TLS_IE32BFD_RELOC_68K_TLS_IE16BFD_RELOC_68K_TLS_IE8BFD_RELOC_68K_TLS_LE32BFD_RELOC_68K_TLS_LE16BFD_RELOC_68K_TLS_LE8BFD_RELOC_32_BASERELBFD_RELOC_16_BASERELBFD_RELOC_LO16_BASERELBFD_RELOC_HI16_BASERELBFD_RELOC_HI16_S_BASERELBFD_RELOC_8_BASERELBFD_RELOC_RVABFD_RELOC_8_FFnnBFD_RELOC_32_PCREL_S2BFD_RELOC_16_PCREL_S2BFD_RELOC_23_PCREL_S2BFD_RELOC_HI22BFD_RELOC_LO10BFD_RELOC_GPREL16BFD_RELOC_GPREL32BFD_RELOC_NONEBFD_RELOC_SPARC_WDISP22BFD_RELOC_SPARC22BFD_RELOC_SPARC13BFD_RELOC_SPARC_GOT10BFD_RELOC_SPARC_GOT13BFD_RELOC_SPARC_GOT22BFD_RELOC_SPARC_PC10BFD_RELOC_SPARC_PC22BFD_RELOC_SPARC_WPLT30BFD_RELOC_SPARC_COPYBFD_RELOC_SPARC_GLOB_DATBFD_RELOC_SPARC_JMP_SLOTBFD_RELOC_SPARC_RELATIVEBFD_RELOC_SPARC_UA16BFD_RELOC_SPARC_UA32BFD_RELOC_SPARC_UA64BFD_RELOC_SPARC_GOTDATA_HIX22BFD_RELOC_SPARC_GOTDATA_LOX10BFD_RELOC_SPARC_GOTDATA_OPBFD_RELOC_SPARC_JMP_IRELBFD_RELOC_SPARC_IRELATIVEBFD_RELOC_SPARC_BASE13BFD_RELOC_SPARC_BASE22BFD_RELOC_SPARC_10BFD_RELOC_SPARC_11BFD_RELOC_SPARC_OLO10BFD_RELOC_SPARC_HH22BFD_RELOC_SPARC_HM10BFD_RELOC_SPARC_LM22BFD_RELOC_SPARC_PC_HH22BFD_RELOC_SPARC_PC_HM10BFD_RELOC_SPARC_PC_LM22BFD_RELOC_SPARC_WDISP16BFD_RELOC_SPARC_WDISP19BFD_RELOC_SPARC_7BFD_RELOC_SPARC_6BFD_RELOC_SPARC_5BFD_RELOC_SPARC_PLT32BFD_RELOC_SPARC_PLT64BFD_RELOC_SPARC_HIX22BFD_RELOC_SPARC_LOX10BFD_RELOC_SPARC_H44BFD_RELOC_SPARC_M44BFD_RELOC_SPARC_L44BFD_RELOC_SPARC_REGISTERBFD_RELOC_SPARC_H34BFD_RELOC_SPARC_SIZE32BFD_RELOC_SPARC_SIZE64BFD_RELOC_SPARC_WDISP10BFD_RELOC_SPARC_REV32BFD_RELOC_SPARC_TLS_GD_HI22BFD_RELOC_SPARC_TLS_GD_LO10BFD_RELOC_SPARC_TLS_GD_ADDBFD_RELOC_SPARC_TLS_GD_CALLBFD_RELOC_SPARC_TLS_LDM_HI22BFD_RELOC_SPARC_TLS_LDM_LO10BFD_RELOC_SPARC_TLS_LDM_ADDBFD_RELOC_SPARC_TLS_LDM_CALLBFD_RELOC_SPARC_TLS_LDO_HIX22BFD_RELOC_SPARC_TLS_LDO_LOX10BFD_RELOC_SPARC_TLS_LDO_ADDBFD_RELOC_SPARC_TLS_IE_HI22BFD_RELOC_SPARC_TLS_IE_LO10BFD_RELOC_SPARC_TLS_IE_LDBFD_RELOC_SPARC_TLS_IE_LDXBFD_RELOC_SPARC_TLS_IE_ADDBFD_RELOC_SPARC_TLS_LE_HIX22BFD_RELOC_SPARC_TLS_LE_LOX10BFD_RELOC_SPARC_TLS_DTPMOD32BFD_RELOC_SPARC_TLS_DTPMOD64BFD_RELOC_SPARC_TLS_DTPOFF32BFD_RELOC_SPARC_TLS_DTPOFF64BFD_RELOC_SPARC_TLS_TPOFF32BFD_RELOC_SPARC_TLS_TPOFF64BFD_RELOC_SPU_IMM7BFD_RELOC_SPU_IMM8BFD_RELOC_SPU_IMM10BFD_RELOC_SPU_IMM10WBFD_RELOC_SPU_IMM16BFD_RELOC_SPU_IMM16WBFD_RELOC_SPU_IMM18BFD_RELOC_SPU_PCREL9aBFD_RELOC_SPU_PCREL9bBFD_RELOC_SPU_PCREL16BFD_RELOC_SPU_LO16BFD_RELOC_SPU_HI16BFD_RELOC_SPU_PPU32BFD_RELOC_SPU_PPU64BFD_RELOC_SPU_ADD_PICBFD_RELOC_ALPHA_GPDISP_HI16BFD_RELOC_ALPHA_GPDISP_LO16BFD_RELOC_ALPHA_GPDISPBFD_RELOC_ALPHA_LITERALBFD_RELOC_ALPHA_ELF_LITERALBFD_RELOC_ALPHA_LITUSEBFD_RELOC_ALPHA_HINTBFD_RELOC_ALPHA_LINKAGEBFD_RELOC_ALPHA_CODEADDRBFD_RELOC_ALPHA_GPREL_HI16BFD_RELOC_ALPHA_GPREL_LO16BFD_RELOC_ALPHA_BRSGPBFD_RELOC_ALPHA_NOPBFD_RELOC_ALPHA_BSRBFD_RELOC_ALPHA_LDABFD_RELOC_ALPHA_BOHBFD_RELOC_ALPHA_TLSGDBFD_RELOC_ALPHA_TLSLDMBFD_RELOC_ALPHA_DTPMOD64BFD_RELOC_ALPHA_GOTDTPREL16BFD_RELOC_ALPHA_DTPREL64BFD_RELOC_ALPHA_DTPREL_HI16BFD_RELOC_ALPHA_DTPREL_LO16BFD_RELOC_ALPHA_DTPREL16BFD_RELOC_ALPHA_GOTTPREL16BFD_RELOC_ALPHA_TPREL64BFD_RELOC_ALPHA_TPREL_HI16BFD_RELOC_ALPHA_TPREL_LO16BFD_RELOC_ALPHA_TPREL16BFD_RELOC_MIPS_JMPBFD_RELOC_MICROMIPS_JMPBFD_RELOC_MIPS16_JMPBFD_RELOC_MIPS16_GPRELBFD_RELOC_HI16BFD_RELOC_HI16_SBFD_RELOC_LO16BFD_RELOC_HI16_PCRELBFD_RELOC_HI16_S_PCRELBFD_RELOC_LO16_PCRELBFD_RELOC_MIPS16_GOT16BFD_RELOC_MIPS16_CALL16BFD_RELOC_MIPS16_HI16BFD_RELOC_MIPS16_HI16_SBFD_RELOC_MIPS16_LO16BFD_RELOC_MIPS16_TLS_GDBFD_RELOC_MIPS16_TLS_LDMBFD_RELOC_MIPS16_TLS_GOTTPRELBFD_RELOC_MIPS_LITERALBFD_RELOC_MICROMIPS_LITERALBFD_RELOC_MIPS16_16_PCREL_S1BFD_RELOC_MIPS_21_PCREL_S2BFD_RELOC_MIPS_26_PCREL_S2BFD_RELOC_MIPS_18_PCREL_S3BFD_RELOC_MIPS_19_PCREL_S2BFD_RELOC_MICROMIPS_GPREL16BFD_RELOC_MICROMIPS_HI16BFD_RELOC_MICROMIPS_HI16_SBFD_RELOC_MICROMIPS_LO16BFD_RELOC_MIPS_GOT16BFD_RELOC_MICROMIPS_GOT16BFD_RELOC_MIPS_CALL16BFD_RELOC_MICROMIPS_CALL16BFD_RELOC_MIPS_GOT_HI16BFD_RELOC_MICROMIPS_GOT_HI16BFD_RELOC_MIPS_GOT_LO16BFD_RELOC_MICROMIPS_GOT_LO16BFD_RELOC_MIPS_CALL_HI16BFD_RELOC_MICROMIPS_CALL_HI16BFD_RELOC_MIPS_CALL_LO16BFD_RELOC_MICROMIPS_CALL_LO16BFD_RELOC_MIPS_SUBBFD_RELOC_MICROMIPS_SUBBFD_RELOC_MIPS_GOT_PAGEBFD_RELOC_MICROMIPS_GOT_PAGEBFD_RELOC_MIPS_GOT_OFSTBFD_RELOC_MICROMIPS_GOT_OFSTBFD_RELOC_MIPS_GOT_DISPBFD_RELOC_MICROMIPS_GOT_DISPBFD_RELOC_MIPS_SHIFT5BFD_RELOC_MIPS_SHIFT6BFD_RELOC_MIPS_INSERT_ABFD_RELOC_MIPS_INSERT_BBFD_RELOC_MIPS_DELETEBFD_RELOC_MIPS_HIGHESTBFD_RELOC_MICROMIPS_HIGHESTBFD_RELOC_MIPS_HIGHERBFD_RELOC_MICROMIPS_HIGHERBFD_RELOC_MIPS_SCN_DISPBFD_RELOC_MICROMIPS_SCN_DISPBFD_RELOC_MIPS_16BFD_RELOC_MIPS_RELGOTBFD_RELOC_MIPS_JALRBFD_RELOC_MICROMIPS_JALRBFD_RELOC_MIPS_TLS_DTPMOD32BFD_RELOC_MIPS_TLS_DTPREL32BFD_RELOC_MIPS_TLS_DTPMOD64BFD_RELOC_MIPS_TLS_DTPREL64BFD_RELOC_MIPS_TLS_GDBFD_RELOC_MICROMIPS_TLS_GDBFD_RELOC_MIPS_TLS_LDMBFD_RELOC_MICROMIPS_TLS_LDMBFD_RELOC_MIPS_TLS_GOTTPRELBFD_RELOC_MIPS_TLS_TPREL32BFD_RELOC_MIPS_TLS_TPREL64BFD_RELOC_MIPS_TLS_TPREL_HI16BFD_RELOC_MIPS_TLS_TPREL_LO16BFD_RELOC_MIPS_EHBFD_RELOC_MIPS_COPYBFD_RELOC_MIPS_JUMP_SLOTBFD_RELOC_MOXIE_10_PCRELBFD_RELOC_FT32_10BFD_RELOC_FT32_20BFD_RELOC_FT32_17BFD_RELOC_FT32_18BFD_RELOC_FT32_RELAXBFD_RELOC_FT32_SC0BFD_RELOC_FT32_SC1BFD_RELOC_FT32_15BFD_RELOC_FT32_DIFF32BFD_RELOC_FRV_LABEL16BFD_RELOC_FRV_LABEL24BFD_RELOC_FRV_LO16BFD_RELOC_FRV_HI16BFD_RELOC_FRV_GPREL12BFD_RELOC_FRV_GPRELU12BFD_RELOC_FRV_GPREL32BFD_RELOC_FRV_GPRELHIBFD_RELOC_FRV_GPRELLOBFD_RELOC_FRV_GOT12BFD_RELOC_FRV_GOTHIBFD_RELOC_FRV_GOTLOBFD_RELOC_FRV_FUNCDESCBFD_RELOC_FRV_FUNCDESC_GOT12BFD_RELOC_FRV_FUNCDESC_GOTHIBFD_RELOC_FRV_FUNCDESC_GOTLOBFD_RELOC_FRV_FUNCDESC_VALUEBFD_RELOC_FRV_GOTOFF12BFD_RELOC_FRV_GOTOFFHIBFD_RELOC_FRV_GOTOFFLOBFD_RELOC_FRV_GETTLSOFFBFD_RELOC_FRV_TLSDESC_VALUEBFD_RELOC_FRV_GOTTLSDESC12BFD_RELOC_FRV_GOTTLSDESCHIBFD_RELOC_FRV_GOTTLSDESCLOBFD_RELOC_FRV_TLSMOFF12BFD_RELOC_FRV_TLSMOFFHIBFD_RELOC_FRV_TLSMOFFLOBFD_RELOC_FRV_GOTTLSOFF12BFD_RELOC_FRV_GOTTLSOFFHIBFD_RELOC_FRV_GOTTLSOFFLOBFD_RELOC_FRV_TLSOFFBFD_RELOC_FRV_TLSDESC_RELAXBFD_RELOC_FRV_GETTLSOFF_RELAXBFD_RELOC_FRV_TLSOFF_RELAXBFD_RELOC_FRV_TLSMOFFBFD_RELOC_MN10300_GOTOFF24BFD_RELOC_MN10300_GOT32BFD_RELOC_MN10300_GOT24BFD_RELOC_MN10300_GOT16BFD_RELOC_MN10300_COPYBFD_RELOC_MN10300_GLOB_DATBFD_RELOC_MN10300_JMP_SLOTBFD_RELOC_MN10300_RELATIVEBFD_RELOC_MN10300_SYM_DIFFBFD_RELOC_MN10300_ALIGNBFD_RELOC_MN10300_TLS_GDBFD_RELOC_MN10300_TLS_LDBFD_RELOC_MN10300_TLS_LDOBFD_RELOC_MN10300_TLS_GOTIEBFD_RELOC_MN10300_TLS_IEBFD_RELOC_MN10300_TLS_LEBFD_RELOC_MN10300_TLS_DTPMODBFD_RELOC_MN10300_TLS_DTPOFFBFD_RELOC_MN10300_TLS_TPOFFBFD_RELOC_MN10300_32_PCRELBFD_RELOC_MN10300_16_PCRELBFD_RELOC_386_GOT32BFD_RELOC_386_PLT32BFD_RELOC_386_COPYBFD_RELOC_386_GLOB_DATBFD_RELOC_386_JUMP_SLOTBFD_RELOC_386_RELATIVEBFD_RELOC_386_GOTOFFBFD_RELOC_386_GOTPCBFD_RELOC_386_TLS_TPOFFBFD_RELOC_386_TLS_IEBFD_RELOC_386_TLS_GOTIEBFD_RELOC_386_TLS_LEBFD_RELOC_386_TLS_GDBFD_RELOC_386_TLS_LDMBFD_RELOC_386_TLS_LDO_32BFD_RELOC_386_TLS_IE_32BFD_RELOC_386_TLS_LE_32BFD_RELOC_386_TLS_DTPMOD32BFD_RELOC_386_TLS_DTPOFF32BFD_RELOC_386_TLS_TPOFF32BFD_RELOC_386_TLS_GOTDESCBFD_RELOC_386_TLS_DESC_CALLBFD_RELOC_386_TLS_DESCBFD_RELOC_386_IRELATIVEBFD_RELOC_386_GOT32XBFD_RELOC_X86_64_GOT32BFD_RELOC_X86_64_PLT32BFD_RELOC_X86_64_COPYBFD_RELOC_X86_64_GLOB_DATBFD_RELOC_X86_64_JUMP_SLOTBFD_RELOC_X86_64_RELATIVEBFD_RELOC_X86_64_GOTPCRELBFD_RELOC_X86_64_32SBFD_RELOC_X86_64_DTPMOD64BFD_RELOC_X86_64_DTPOFF64BFD_RELOC_X86_64_TPOFF64BFD_RELOC_X86_64_TLSGDBFD_RELOC_X86_64_TLSLDBFD_RELOC_X86_64_DTPOFF32BFD_RELOC_X86_64_GOTTPOFFBFD_RELOC_X86_64_TPOFF32BFD_RELOC_X86_64_GOTOFF64BFD_RELOC_X86_64_GOTPC32BFD_RELOC_X86_64_GOT64BFD_RELOC_X86_64_GOTPCREL64BFD_RELOC_X86_64_GOTPC64BFD_RELOC_X86_64_GOTPLT64BFD_RELOC_X86_64_PLTOFF64BFD_RELOC_X86_64_TLSDESC_CALLBFD_RELOC_X86_64_TLSDESCBFD_RELOC_X86_64_IRELATIVEBFD_RELOC_X86_64_PC32_BNDBFD_RELOC_X86_64_PLT32_BNDBFD_RELOC_X86_64_GOTPCRELXBFD_RELOC_NS32K_IMM_8BFD_RELOC_NS32K_IMM_16BFD_RELOC_NS32K_IMM_32BFD_RELOC_NS32K_IMM_8_PCRELBFD_RELOC_NS32K_IMM_16_PCRELBFD_RELOC_NS32K_IMM_32_PCRELBFD_RELOC_NS32K_DISP_8BFD_RELOC_NS32K_DISP_16BFD_RELOC_NS32K_DISP_32BFD_RELOC_NS32K_DISP_8_PCRELBFD_RELOC_NS32K_DISP_16_PCRELBFD_RELOC_NS32K_DISP_32_PCRELBFD_RELOC_PDP11_DISP_8_PCRELBFD_RELOC_PDP11_DISP_6_PCRELBFD_RELOC_PJ_CODE_HI16BFD_RELOC_PJ_CODE_LO16BFD_RELOC_PJ_CODE_DIR16BFD_RELOC_PJ_CODE_DIR32BFD_RELOC_PJ_CODE_REL16BFD_RELOC_PJ_CODE_REL32BFD_RELOC_PPC_B26BFD_RELOC_PPC_BA26BFD_RELOC_PPC_TOC16BFD_RELOC_PPC_TOC16_LOBFD_RELOC_PPC_TOC16_HIBFD_RELOC_PPC_B16BFD_RELOC_PPC_B16_BRTAKENBFD_RELOC_PPC_B16_BRNTAKENBFD_RELOC_PPC_BA16BFD_RELOC_PPC_BA16_BRTAKENBFD_RELOC_PPC_BA16_BRNTAKENBFD_RELOC_PPC_COPYBFD_RELOC_PPC_GLOB_DATBFD_RELOC_PPC_JMP_SLOTBFD_RELOC_PPC_RELATIVEBFD_RELOC_PPC_LOCAL24PCBFD_RELOC_PPC_EMB_NADDR32BFD_RELOC_PPC_EMB_NADDR16BFD_RELOC_PPC_EMB_NADDR16_LOBFD_RELOC_PPC_EMB_NADDR16_HIBFD_RELOC_PPC_EMB_NADDR16_HABFD_RELOC_PPC_EMB_SDAI16BFD_RELOC_PPC_EMB_SDA2I16BFD_RELOC_PPC_EMB_SDA2RELBFD_RELOC_PPC_EMB_SDA21BFD_RELOC_PPC_EMB_MRKREFBFD_RELOC_PPC_EMB_RELSEC16BFD_RELOC_PPC_EMB_RELST_LOBFD_RELOC_PPC_EMB_RELST_HIBFD_RELOC_PPC_EMB_RELST_HABFD_RELOC_PPC_EMB_BIT_FLDBFD_RELOC_PPC_EMB_RELSDABFD_RELOC_PPC_VLE_REL8BFD_RELOC_PPC_VLE_REL15BFD_RELOC_PPC_VLE_REL24BFD_RELOC_PPC_VLE_LO16ABFD_RELOC_PPC_VLE_LO16DBFD_RELOC_PPC_VLE_HI16ABFD_RELOC_PPC_VLE_HI16DBFD_RELOC_PPC_VLE_HA16ABFD_RELOC_PPC_VLE_HA16DBFD_RELOC_PPC_VLE_SDA21BFD_RELOC_PPC_VLE_SDA21_LOBFD_RELOC_PPC_16DX_HABFD_RELOC_PPC_REL16DX_HABFD_RELOC_PPC_NEGBFD_RELOC_PPC64_HIGHERBFD_RELOC_PPC64_HIGHER_SBFD_RELOC_PPC64_HIGHESTBFD_RELOC_PPC64_HIGHEST_SBFD_RELOC_PPC64_TOC16_LOBFD_RELOC_PPC64_TOC16_HIBFD_RELOC_PPC64_TOC16_HABFD_RELOC_PPC64_TOCBFD_RELOC_PPC64_PLTGOT16BFD_RELOC_PPC64_PLTGOT16_LOBFD_RELOC_PPC64_PLTGOT16_HIBFD_RELOC_PPC64_PLTGOT16_HABFD_RELOC_PPC64_ADDR16_DSBFD_RELOC_PPC64_ADDR16_LO_DSBFD_RELOC_PPC64_GOT16_DSBFD_RELOC_PPC64_GOT16_LO_DSBFD_RELOC_PPC64_PLT16_LO_DSBFD_RELOC_PPC64_SECTOFF_DSBFD_RELOC_PPC64_SECTOFF_LO_DSBFD_RELOC_PPC64_TOC16_DSBFD_RELOC_PPC64_TOC16_LO_DSBFD_RELOC_PPC64_PLTGOT16_DSBFD_RELOC_PPC64_ADDR16_HIGHBFD_RELOC_PPC64_ADDR16_HIGHABFD_RELOC_PPC64_REL16_HIGHBFD_RELOC_PPC64_REL16_HIGHABFD_RELOC_PPC64_REL16_HIGHERBFD_RELOC_PPC64_REL16_HIGHERABFD_RELOC_PPC64_REL16_HIGHESTBFD_RELOC_PPC64_ADDR64_LOCALBFD_RELOC_PPC64_ENTRYBFD_RELOC_PPC64_REL24_NOTOCBFD_RELOC_PPC64_REL24_P9NOTOCBFD_RELOC_PPC64_D34BFD_RELOC_PPC64_D34_LOBFD_RELOC_PPC64_D34_HI30BFD_RELOC_PPC64_D34_HA30BFD_RELOC_PPC64_PCREL34BFD_RELOC_PPC64_GOT_PCREL34BFD_RELOC_PPC64_PLT_PCREL34BFD_RELOC_PPC64_D28BFD_RELOC_PPC64_PCREL28BFD_RELOC_PPC_TLSBFD_RELOC_PPC_TLSGDBFD_RELOC_PPC_TLSLDBFD_RELOC_PPC_TLSLEBFD_RELOC_PPC_TLSIEBFD_RELOC_PPC_TLSMBFD_RELOC_PPC_TLSMLBFD_RELOC_PPC_DTPMODBFD_RELOC_PPC_TPREL16BFD_RELOC_PPC_TPREL16_LOBFD_RELOC_PPC_TPREL16_HIBFD_RELOC_PPC_TPREL16_HABFD_RELOC_PPC_TPRELBFD_RELOC_PPC_DTPREL16BFD_RELOC_PPC_DTPREL16_LOBFD_RELOC_PPC_DTPREL16_HIBFD_RELOC_PPC_DTPREL16_HABFD_RELOC_PPC_DTPRELBFD_RELOC_PPC_GOT_TLSGD16BFD_RELOC_PPC_GOT_TLSGD16_LOBFD_RELOC_PPC_GOT_TLSGD16_HIBFD_RELOC_PPC_GOT_TLSGD16_HABFD_RELOC_PPC_GOT_TLSLD16BFD_RELOC_PPC_GOT_TLSLD16_LOBFD_RELOC_PPC_GOT_TLSLD16_HIBFD_RELOC_PPC_GOT_TLSLD16_HABFD_RELOC_PPC_GOT_TPREL16BFD_RELOC_PPC_GOT_TPREL16_LOBFD_RELOC_PPC_GOT_TPREL16_HIBFD_RELOC_PPC_GOT_TPREL16_HABFD_RELOC_PPC_GOT_DTPREL16BFD_RELOC_PPC_GOT_DTPREL16_LOBFD_RELOC_PPC_GOT_DTPREL16_HIBFD_RELOC_PPC_GOT_DTPREL16_HABFD_RELOC_PPC64_TLSGDBFD_RELOC_PPC64_TLSLDBFD_RELOC_PPC64_TLSLEBFD_RELOC_PPC64_TLSIEBFD_RELOC_PPC64_TLSMBFD_RELOC_PPC64_TLSMLBFD_RELOC_PPC64_TPREL16_DSBFD_RELOC_PPC64_TPREL16_LO_DSBFD_RELOC_PPC64_TPREL16_HIGHBFD_RELOC_PPC64_TPREL16_HIGHABFD_RELOC_PPC64_DTPREL16_DSBFD_RELOC_PPC64_DTPREL16_HIGHBFD_RELOC_PPC64_TPREL34BFD_RELOC_PPC64_DTPREL34BFD_RELOC_PPC64_TLS_PCRELBFD_RELOC_I370_D12BFD_RELOC_CTORBFD_RELOC_ARM_PCREL_BRANCHBFD_RELOC_ARM_PCREL_BLXBFD_RELOC_THUMB_PCREL_BLXBFD_RELOC_ARM_PCREL_CALLBFD_RELOC_ARM_PCREL_JUMPBFD_RELOC_THUMB_PCREL_BRANCH5BFD_RELOC_THUMB_PCREL_BFCSELBFD_RELOC_ARM_THUMB_BF17BFD_RELOC_ARM_THUMB_BF13BFD_RELOC_ARM_THUMB_BF19BFD_RELOC_ARM_THUMB_LOOP12BFD_RELOC_THUMB_PCREL_BRANCH7BFD_RELOC_THUMB_PCREL_BRANCH9BFD_RELOC_ARM_OFFSET_IMMBFD_RELOC_ARM_THUMB_OFFSETBFD_RELOC_ARM_TARGET1BFD_RELOC_ARM_ROSEGREL32BFD_RELOC_ARM_SBREL32BFD_RELOC_ARM_TARGET2BFD_RELOC_ARM_PREL31BFD_RELOC_ARM_MOVWBFD_RELOC_ARM_MOVTBFD_RELOC_ARM_MOVW_PCRELBFD_RELOC_ARM_MOVT_PCRELBFD_RELOC_ARM_THUMB_MOVWBFD_RELOC_ARM_THUMB_MOVTBFD_RELOC_ARM_GOTFUNCDESCBFD_RELOC_ARM_GOTOFFFUNCDESCBFD_RELOC_ARM_FUNCDESCBFD_RELOC_ARM_FUNCDESC_VALUEBFD_RELOC_ARM_TLS_GD32_FDPICBFD_RELOC_ARM_TLS_LDM32_FDPICBFD_RELOC_ARM_TLS_IE32_FDPICBFD_RELOC_ARM_JUMP_SLOTBFD_RELOC_ARM_GLOB_DATBFD_RELOC_ARM_GOT32BFD_RELOC_ARM_PLT32BFD_RELOC_ARM_RELATIVEBFD_RELOC_ARM_GOTOFFBFD_RELOC_ARM_GOTPCBFD_RELOC_ARM_GOT_PRELBFD_RELOC_ARM_TLS_GD32BFD_RELOC_ARM_TLS_LDO32BFD_RELOC_ARM_TLS_LDM32BFD_RELOC_ARM_TLS_DTPOFF32BFD_RELOC_ARM_TLS_DTPMOD32BFD_RELOC_ARM_TLS_TPOFF32BFD_RELOC_ARM_TLS_IE32BFD_RELOC_ARM_TLS_LE32BFD_RELOC_ARM_TLS_GOTDESCBFD_RELOC_ARM_TLS_CALLBFD_RELOC_ARM_THM_TLS_CALLBFD_RELOC_ARM_TLS_DESCSEQBFD_RELOC_ARM_THM_TLS_DESCSEQBFD_RELOC_ARM_TLS_DESCBFD_RELOC_ARM_ALU_PC_G0_NCBFD_RELOC_ARM_ALU_PC_G0BFD_RELOC_ARM_ALU_PC_G1_NCBFD_RELOC_ARM_ALU_PC_G1BFD_RELOC_ARM_ALU_PC_G2BFD_RELOC_ARM_LDR_PC_G0BFD_RELOC_ARM_LDR_PC_G1BFD_RELOC_ARM_LDR_PC_G2BFD_RELOC_ARM_LDRS_PC_G0BFD_RELOC_ARM_LDRS_PC_G1BFD_RELOC_ARM_LDRS_PC_G2BFD_RELOC_ARM_LDC_PC_G0BFD_RELOC_ARM_LDC_PC_G1BFD_RELOC_ARM_LDC_PC_G2BFD_RELOC_ARM_ALU_SB_G0_NCBFD_RELOC_ARM_ALU_SB_G0BFD_RELOC_ARM_ALU_SB_G1_NCBFD_RELOC_ARM_ALU_SB_G1BFD_RELOC_ARM_ALU_SB_G2BFD_RELOC_ARM_LDR_SB_G0BFD_RELOC_ARM_LDR_SB_G1BFD_RELOC_ARM_LDR_SB_G2BFD_RELOC_ARM_LDRS_SB_G0BFD_RELOC_ARM_LDRS_SB_G1BFD_RELOC_ARM_LDRS_SB_G2BFD_RELOC_ARM_LDC_SB_G0BFD_RELOC_ARM_LDC_SB_G1BFD_RELOC_ARM_LDC_SB_G2BFD_RELOC_ARM_V4BXBFD_RELOC_ARM_IRELATIVEBFD_RELOC_ARM_IMMEDIATEBFD_RELOC_ARM_ADRL_IMMEDIATEBFD_RELOC_ARM_T32_IMMEDIATEBFD_RELOC_ARM_T32_ADD_IMMBFD_RELOC_ARM_T32_IMM12BFD_RELOC_ARM_T32_ADD_PC12BFD_RELOC_ARM_SHIFT_IMMBFD_RELOC_ARM_SMCBFD_RELOC_ARM_HVCBFD_RELOC_ARM_SWIBFD_RELOC_ARM_MULTIBFD_RELOC_ARM_CP_OFF_IMMBFD_RELOC_ARM_CP_OFF_IMM_S2BFD_RELOC_ARM_T32_CP_OFF_IMMBFD_RELOC_ARM_ADR_IMMBFD_RELOC_ARM_LDR_IMMBFD_RELOC_ARM_LITERALBFD_RELOC_ARM_IN_POOLBFD_RELOC_ARM_OFFSET_IMM8BFD_RELOC_ARM_T32_OFFSET_U8BFD_RELOC_ARM_T32_OFFSET_IMMBFD_RELOC_ARM_HWLITERALBFD_RELOC_ARM_THUMB_ADDBFD_RELOC_ARM_THUMB_IMMBFD_RELOC_ARM_THUMB_SHIFTBFD_RELOC_SH_PCDISP8BY2BFD_RELOC_SH_PCDISP12BY2BFD_RELOC_SH_IMM3BFD_RELOC_SH_IMM3UBFD_RELOC_SH_DISP12BFD_RELOC_SH_DISP12BY2BFD_RELOC_SH_DISP12BY4BFD_RELOC_SH_DISP12BY8BFD_RELOC_SH_DISP20BFD_RELOC_SH_DISP20BY8BFD_RELOC_SH_IMM4BFD_RELOC_SH_IMM4BY2BFD_RELOC_SH_IMM4BY4BFD_RELOC_SH_IMM8BFD_RELOC_SH_IMM8BY2BFD_RELOC_SH_IMM8BY4BFD_RELOC_SH_PCRELIMM8BY2BFD_RELOC_SH_PCRELIMM8BY4BFD_RELOC_SH_SWITCH16BFD_RELOC_SH_SWITCH32BFD_RELOC_SH_USESBFD_RELOC_SH_COUNTBFD_RELOC_SH_ALIGNBFD_RELOC_SH_CODEBFD_RELOC_SH_DATABFD_RELOC_SH_LABELBFD_RELOC_SH_LOOP_STARTBFD_RELOC_SH_LOOP_ENDBFD_RELOC_SH_COPYBFD_RELOC_SH_GLOB_DATBFD_RELOC_SH_JMP_SLOTBFD_RELOC_SH_RELATIVEBFD_RELOC_SH_GOTPCBFD_RELOC_SH_GOT_LOW16BFD_RELOC_SH_GOT_MEDLOW16BFD_RELOC_SH_GOT_MEDHI16BFD_RELOC_SH_GOT_HI16BFD_RELOC_SH_GOTPLT_LOW16BFD_RELOC_SH_GOTPLT_MEDLOW16BFD_RELOC_SH_GOTPLT_MEDHI16BFD_RELOC_SH_GOTPLT_HI16BFD_RELOC_SH_PLT_LOW16BFD_RELOC_SH_PLT_MEDLOW16BFD_RELOC_SH_PLT_MEDHI16BFD_RELOC_SH_PLT_HI16BFD_RELOC_SH_GOTOFF_LOW16BFD_RELOC_SH_GOTOFF_MEDLOW16BFD_RELOC_SH_GOTOFF_MEDHI16BFD_RELOC_SH_GOTOFF_HI16BFD_RELOC_SH_GOTPC_LOW16BFD_RELOC_SH_GOTPC_MEDLOW16BFD_RELOC_SH_GOTPC_MEDHI16BFD_RELOC_SH_GOTPC_HI16BFD_RELOC_SH_COPY64BFD_RELOC_SH_GLOB_DAT64BFD_RELOC_SH_JMP_SLOT64BFD_RELOC_SH_RELATIVE64BFD_RELOC_SH_GOT10BY4BFD_RELOC_SH_GOT10BY8BFD_RELOC_SH_GOTPLT10BY4BFD_RELOC_SH_GOTPLT10BY8BFD_RELOC_SH_GOTPLT32BFD_RELOC_SH_SHMEDIA_CODEBFD_RELOC_SH_IMMU5BFD_RELOC_SH_IMMS6BFD_RELOC_SH_IMMS6BY32BFD_RELOC_SH_IMMU6BFD_RELOC_SH_IMMS10BFD_RELOC_SH_IMMS10BY2BFD_RELOC_SH_IMMS10BY4BFD_RELOC_SH_IMMS10BY8BFD_RELOC_SH_IMMS16BFD_RELOC_SH_IMMU16BFD_RELOC_SH_IMM_LOW16BFD_RELOC_SH_IMM_LOW16_PCRELBFD_RELOC_SH_IMM_MEDLOW16BFD_RELOC_SH_IMM_MEDHI16BFD_RELOC_SH_IMM_HI16BFD_RELOC_SH_IMM_HI16_PCRELBFD_RELOC_SH_PT_16BFD_RELOC_SH_TLS_GD_32BFD_RELOC_SH_TLS_LD_32BFD_RELOC_SH_TLS_LDO_32BFD_RELOC_SH_TLS_IE_32BFD_RELOC_SH_TLS_LE_32BFD_RELOC_SH_TLS_DTPMOD32BFD_RELOC_SH_TLS_DTPOFF32BFD_RELOC_SH_TLS_TPOFF32BFD_RELOC_SH_GOT20BFD_RELOC_SH_GOTOFF20BFD_RELOC_SH_GOTFUNCDESCBFD_RELOC_SH_GOTFUNCDESC20BFD_RELOC_SH_GOTOFFFUNCDESCBFD_RELOC_SH_GOTOFFFUNCDESC20BFD_RELOC_SH_FUNCDESCBFD_RELOC_ARC_NONEBFD_RELOC_ARC_8BFD_RELOC_ARC_16BFD_RELOC_ARC_24BFD_RELOC_ARC_32BFD_RELOC_ARC_N8BFD_RELOC_ARC_N16BFD_RELOC_ARC_N24BFD_RELOC_ARC_N32BFD_RELOC_ARC_SDABFD_RELOC_ARC_SECTOFFBFD_RELOC_ARC_S21H_PCRELBFD_RELOC_ARC_S21W_PCRELBFD_RELOC_ARC_S25H_PCRELBFD_RELOC_ARC_S25W_PCRELBFD_RELOC_ARC_SDA32BFD_RELOC_ARC_SDA_LDSTBFD_RELOC_ARC_SDA_LDST1BFD_RELOC_ARC_SDA_LDST2BFD_RELOC_ARC_SDA16_LDBFD_RELOC_ARC_SDA16_LD1BFD_RELOC_ARC_SDA16_LD2BFD_RELOC_ARC_S13_PCRELBFD_RELOC_ARC_WBFD_RELOC_ARC_32_MEBFD_RELOC_ARC_32_ME_SBFD_RELOC_ARC_N32_MEBFD_RELOC_ARC_SECTOFF_MEBFD_RELOC_ARC_SDA32_MEBFD_RELOC_ARC_W_MEBFD_RELOC_AC_SECTOFF_U8BFD_RELOC_AC_SECTOFF_U8_1BFD_RELOC_AC_SECTOFF_U8_2BFD_RELOC_AC_SECTOFF_S9BFD_RELOC_AC_SECTOFF_S9_1BFD_RELOC_AC_SECTOFF_S9_2BFD_RELOC_ARC_SECTOFF_ME_1BFD_RELOC_ARC_SECTOFF_ME_2BFD_RELOC_ARC_SECTOFF_1BFD_RELOC_ARC_SECTOFF_2BFD_RELOC_ARC_SDA_12BFD_RELOC_ARC_SDA16_ST2BFD_RELOC_ARC_32_PCRELBFD_RELOC_ARC_PC32BFD_RELOC_ARC_GOT32BFD_RELOC_ARC_GOTPC32BFD_RELOC_ARC_PLT32BFD_RELOC_ARC_COPYBFD_RELOC_ARC_GLOB_DATBFD_RELOC_ARC_JMP_SLOTBFD_RELOC_ARC_RELATIVEBFD_RELOC_ARC_GOTOFFBFD_RELOC_ARC_GOTPCBFD_RELOC_ARC_S21W_PCREL_PLTBFD_RELOC_ARC_S25H_PCREL_PLTBFD_RELOC_ARC_TLS_DTPMODBFD_RELOC_ARC_TLS_TPOFFBFD_RELOC_ARC_TLS_GD_GOTBFD_RELOC_ARC_TLS_GD_LDBFD_RELOC_ARC_TLS_GD_CALLBFD_RELOC_ARC_TLS_IE_GOTBFD_RELOC_ARC_TLS_DTPOFFBFD_RELOC_ARC_TLS_DTPOFF_S9BFD_RELOC_ARC_TLS_LE_S9BFD_RELOC_ARC_TLS_LE_32BFD_RELOC_ARC_S25W_PCREL_PLTBFD_RELOC_ARC_S21H_PCREL_PLTBFD_RELOC_ARC_NPS_CMEM16BFD_RELOC_ARC_JLI_SECTOFFBFD_RELOC_BFIN_16_IMMBFD_RELOC_BFIN_16_HIGHBFD_RELOC_BFIN_4_PCRELBFD_RELOC_BFIN_5_PCRELBFD_RELOC_BFIN_16_LOWBFD_RELOC_BFIN_10_PCRELBFD_RELOC_BFIN_11_PCRELBFD_RELOC_BFIN_12_PCREL_JUMPBFD_RELOC_BFIN_GOT17M4BFD_RELOC_BFIN_GOTHIBFD_RELOC_BFIN_GOTLOBFD_RELOC_BFIN_FUNCDESCBFD_RELOC_BFIN_FUNCDESC_GOTHIBFD_RELOC_BFIN_FUNCDESC_GOTLOBFD_RELOC_BFIN_FUNCDESC_VALUEBFD_RELOC_BFIN_GOTOFF17M4BFD_RELOC_BFIN_GOTOFFHIBFD_RELOC_BFIN_GOTOFFLOBFD_RELOC_BFIN_GOTBFD_RELOC_BFIN_PLTPCBFD_ARELOC_BFIN_PUSHBFD_ARELOC_BFIN_CONSTBFD_ARELOC_BFIN_ADDBFD_ARELOC_BFIN_SUBBFD_ARELOC_BFIN_MULTBFD_ARELOC_BFIN_DIVBFD_ARELOC_BFIN_MODBFD_ARELOC_BFIN_LSHIFTBFD_ARELOC_BFIN_RSHIFTBFD_ARELOC_BFIN_ANDBFD_ARELOC_BFIN_ORBFD_ARELOC_BFIN_XORBFD_ARELOC_BFIN_LANDBFD_ARELOC_BFIN_LORBFD_ARELOC_BFIN_LENBFD_ARELOC_BFIN_NEGBFD_ARELOC_BFIN_COMPBFD_ARELOC_BFIN_PAGEBFD_ARELOC_BFIN_HWPAGEBFD_ARELOC_BFIN_ADDRBFD_RELOC_D10V_10_PCREL_RBFD_RELOC_D10V_10_PCREL_LBFD_RELOC_D10V_18BFD_RELOC_D10V_18_PCRELBFD_RELOC_D30V_6BFD_RELOC_D30V_9_PCRELBFD_RELOC_D30V_9_PCREL_RBFD_RELOC_D30V_15BFD_RELOC_D30V_15_PCRELBFD_RELOC_D30V_15_PCREL_RBFD_RELOC_D30V_21BFD_RELOC_D30V_21_PCRELBFD_RELOC_D30V_21_PCREL_RBFD_RELOC_D30V_32BFD_RELOC_D30V_32_PCRELBFD_RELOC_DLX_HI16_SBFD_RELOC_DLX_LO16BFD_RELOC_DLX_JMP26BFD_RELOC_M32C_HI8BFD_RELOC_M32C_RL_JUMPBFD_RELOC_M32C_RL_1ADDRBFD_RELOC_M32C_RL_2ADDRBFD_RELOC_M32R_24BFD_RELOC_M32R_10_PCRELBFD_RELOC_M32R_18_PCRELBFD_RELOC_M32R_26_PCRELBFD_RELOC_M32R_HI16_ULOBFD_RELOC_M32R_HI16_SLOBFD_RELOC_M32R_LO16BFD_RELOC_M32R_SDA16BFD_RELOC_M32R_GOT24BFD_RELOC_M32R_26_PLTRELBFD_RELOC_M32R_COPYBFD_RELOC_M32R_GLOB_DATBFD_RELOC_M32R_JMP_SLOTBFD_RELOC_M32R_RELATIVEBFD_RELOC_M32R_GOTOFFBFD_RELOC_M32R_GOTOFF_HI_ULOBFD_RELOC_M32R_GOTOFF_HI_SLOBFD_RELOC_M32R_GOTOFF_LOBFD_RELOC_M32R_GOTPC24BFD_RELOC_M32R_GOT16_HI_ULOBFD_RELOC_M32R_GOT16_HI_SLOBFD_RELOC_M32R_GOT16_LOBFD_RELOC_M32R_GOTPC_HI_ULOBFD_RELOC_M32R_GOTPC_HI_SLOBFD_RELOC_M32R_GOTPC_LOBFD_RELOC_NDS32_20BFD_RELOC_NDS32_9_PCRELBFD_RELOC_NDS32_WORD_9_PCRELBFD_RELOC_NDS32_15_PCRELBFD_RELOC_NDS32_17_PCRELBFD_RELOC_NDS32_25_PCRELBFD_RELOC_NDS32_HI20BFD_RELOC_NDS32_LO12S3BFD_RELOC_NDS32_LO12S2BFD_RELOC_NDS32_LO12S1BFD_RELOC_NDS32_LO12S0BFD_RELOC_NDS32_LO12S0_ORIBFD_RELOC_NDS32_SDA15S3BFD_RELOC_NDS32_SDA15S2BFD_RELOC_NDS32_SDA15S1BFD_RELOC_NDS32_SDA15S0BFD_RELOC_NDS32_SDA16S3BFD_RELOC_NDS32_SDA17S2BFD_RELOC_NDS32_SDA18S1BFD_RELOC_NDS32_SDA19S0BFD_RELOC_NDS32_GOT20BFD_RELOC_NDS32_9_PLTRELBFD_RELOC_NDS32_25_PLTRELBFD_RELOC_NDS32_COPYBFD_RELOC_NDS32_GLOB_DATBFD_RELOC_NDS32_JMP_SLOTBFD_RELOC_NDS32_RELATIVEBFD_RELOC_NDS32_GOTOFFBFD_RELOC_NDS32_GOTOFF_HI20BFD_RELOC_NDS32_GOTOFF_LO12BFD_RELOC_NDS32_GOTPC20BFD_RELOC_NDS32_GOT_HI20BFD_RELOC_NDS32_GOT_LO12BFD_RELOC_NDS32_GOTPC_HI20BFD_RELOC_NDS32_GOTPC_LO12BFD_RELOC_NDS32_INSN16BFD_RELOC_NDS32_LABELBFD_RELOC_NDS32_LONGCALL1BFD_RELOC_NDS32_LONGCALL2BFD_RELOC_NDS32_LONGCALL3BFD_RELOC_NDS32_LONGJUMP1BFD_RELOC_NDS32_LONGJUMP2BFD_RELOC_NDS32_LONGJUMP3BFD_RELOC_NDS32_LOADSTOREBFD_RELOC_NDS32_9_FIXEDBFD_RELOC_NDS32_15_FIXEDBFD_RELOC_NDS32_17_FIXEDBFD_RELOC_NDS32_25_FIXEDBFD_RELOC_NDS32_LONGCALL4BFD_RELOC_NDS32_LONGCALL5BFD_RELOC_NDS32_LONGCALL6BFD_RELOC_NDS32_LONGJUMP4BFD_RELOC_NDS32_LONGJUMP5BFD_RELOC_NDS32_LONGJUMP6BFD_RELOC_NDS32_LONGJUMP7BFD_RELOC_NDS32_PLTREL_HI20BFD_RELOC_NDS32_PLTREL_LO12BFD_RELOC_NDS32_SDA12S2_DPBFD_RELOC_NDS32_SDA12S2_SPBFD_RELOC_NDS32_LO12S2_DPBFD_RELOC_NDS32_LO12S2_SPBFD_RELOC_NDS32_DWARF2_OP1BFD_RELOC_NDS32_DWARF2_OP2BFD_RELOC_NDS32_DWARF2_LEBBFD_RELOC_NDS32_UPDATE_TABFD_RELOC_NDS32_GOT_LO15BFD_RELOC_NDS32_GOT_LO19BFD_RELOC_NDS32_GOTOFF_LO15BFD_RELOC_NDS32_GOTOFF_LO19BFD_RELOC_NDS32_GOT15S2BFD_RELOC_NDS32_GOT17S2BFD_RELOC_NDS32_5BFD_RELOC_NDS32_10_UPCRELBFD_RELOC_NDS32_RELAX_ENTRYBFD_RELOC_NDS32_GOT_SUFFBFD_RELOC_NDS32_GOTOFF_SUFFBFD_RELOC_NDS32_PLT_GOT_SUFFBFD_RELOC_NDS32_MULCALL_SUFFBFD_RELOC_NDS32_PTRBFD_RELOC_NDS32_PTR_COUNTBFD_RELOC_NDS32_PTR_RESOLVEDBFD_RELOC_NDS32_PLTBLOCKBFD_RELOC_NDS32_MINUENDBFD_RELOC_NDS32_SUBTRAHENDBFD_RELOC_NDS32_DIFF8BFD_RELOC_NDS32_DIFF16BFD_RELOC_NDS32_DIFF32BFD_RELOC_NDS32_DIFF_ULEB128BFD_RELOC_NDS32_EMPTYBFD_RELOC_NDS32_25_ABSBFD_RELOC_NDS32_DATABFD_RELOC_NDS32_TRANBFD_RELOC_NDS32_17IFC_PCRELBFD_RELOC_NDS32_10IFCU_PCRELBFD_RELOC_NDS32_TPOFFBFD_RELOC_NDS32_GOTTPOFFBFD_RELOC_NDS32_TLS_LE_HI20BFD_RELOC_NDS32_TLS_LE_LO12BFD_RELOC_NDS32_TLS_LE_20BFD_RELOC_NDS32_TLS_LE_15S0BFD_RELOC_NDS32_TLS_LE_15S1BFD_RELOC_NDS32_TLS_LE_15S2BFD_RELOC_NDS32_TLS_LE_ADDBFD_RELOC_NDS32_TLS_LE_LSBFD_RELOC_NDS32_TLS_IE_HI20BFD_RELOC_NDS32_TLS_IE_LO12BFD_RELOC_NDS32_TLS_IE_LO12S2BFD_RELOC_NDS32_TLS_IEGP_HI20BFD_RELOC_NDS32_TLS_IEGP_LO12BFD_RELOC_NDS32_TLS_IEGP_LWBFD_RELOC_NDS32_TLS_DESCBFD_RELOC_NDS32_TLS_DESC_HI20BFD_RELOC_NDS32_TLS_DESC_LO12BFD_RELOC_NDS32_TLS_DESC_20BFD_RELOC_NDS32_TLS_DESC_ADDBFD_RELOC_NDS32_TLS_DESC_FUNCBFD_RELOC_NDS32_TLS_DESC_CALLBFD_RELOC_NDS32_TLS_DESC_MEMBFD_RELOC_NDS32_REMOVEBFD_RELOC_NDS32_GROUPBFD_RELOC_NDS32_LSIBFD_RELOC_V850_9_PCRELBFD_RELOC_V850_22_PCRELBFD_RELOC_V850_TDA_6_8_OFFSETBFD_RELOC_V850_TDA_7_8_OFFSETBFD_RELOC_V850_TDA_7_7_OFFSETBFD_RELOC_V850_TDA_4_5_OFFSETBFD_RELOC_V850_TDA_4_4_OFFSETBFD_RELOC_V850_LONGCALLBFD_RELOC_V850_LONGJUMPBFD_RELOC_V850_ALIGNBFD_RELOC_V850_16_PCRELBFD_RELOC_V850_17_PCRELBFD_RELOC_V850_23BFD_RELOC_V850_32_PCRELBFD_RELOC_V850_32_ABSBFD_RELOC_V850_16_S1BFD_RELOC_V850_LO16_S1BFD_RELOC_V850_32_GOTPCRELBFD_RELOC_V850_16_GOTBFD_RELOC_V850_32_GOTBFD_RELOC_V850_22_PLT_PCRELBFD_RELOC_V850_32_PLT_PCRELBFD_RELOC_V850_COPYBFD_RELOC_V850_GLOB_DATBFD_RELOC_V850_JMP_SLOTBFD_RELOC_V850_RELATIVEBFD_RELOC_V850_16_GOTOFFBFD_RELOC_V850_32_GOTOFFBFD_RELOC_V850_CODEBFD_RELOC_V850_DATABFD_RELOC_TIC30_LDPBFD_RELOC_TIC54X_PARTLS7BFD_RELOC_TIC54X_PARTMS9BFD_RELOC_TIC54X_23BFD_RELOC_TIC54X_16_OF_23BFD_RELOC_TIC54X_MS7_OF_23BFD_RELOC_C6000_PCR_S21BFD_RELOC_C6000_PCR_S12BFD_RELOC_C6000_PCR_S10BFD_RELOC_C6000_PCR_S7BFD_RELOC_C6000_ABS_S16BFD_RELOC_C6000_ABS_L16BFD_RELOC_C6000_ABS_H16BFD_RELOC_C6000_SBR_U15_BBFD_RELOC_C6000_SBR_U15_HBFD_RELOC_C6000_SBR_U15_WBFD_RELOC_C6000_SBR_S16BFD_RELOC_C6000_SBR_L16_BBFD_RELOC_C6000_SBR_L16_HBFD_RELOC_C6000_SBR_L16_WBFD_RELOC_C6000_SBR_H16_BBFD_RELOC_C6000_SBR_H16_HBFD_RELOC_C6000_SBR_H16_WBFD_RELOC_C6000_SBR_GOT_U15_WBFD_RELOC_C6000_SBR_GOT_L16_WBFD_RELOC_C6000_SBR_GOT_H16_WBFD_RELOC_C6000_DSBT_INDEXBFD_RELOC_C6000_PREL31BFD_RELOC_C6000_COPYBFD_RELOC_C6000_JUMP_SLOTBFD_RELOC_C6000_EHTYPEBFD_RELOC_C6000_PCR_H16BFD_RELOC_C6000_PCR_L16BFD_RELOC_C6000_ALIGNBFD_RELOC_C6000_FPHEADBFD_RELOC_C6000_NOCMPBFD_RELOC_FR30_48BFD_RELOC_FR30_20BFD_RELOC_FR30_6_IN_4BFD_RELOC_FR30_8_IN_8BFD_RELOC_FR30_9_IN_8BFD_RELOC_FR30_10_IN_8BFD_RELOC_FR30_9_PCRELBFD_RELOC_FR30_12_PCRELBFD_RELOC_MCORE_PCREL_IMM8BY4BFD_RELOC_MCORE_PCREL_IMM4BY2BFD_RELOC_MCORE_PCREL_32BFD_RELOC_MCORE_RVABFD_RELOC_MEP_8BFD_RELOC_MEP_16BFD_RELOC_MEP_32BFD_RELOC_MEP_PCREL8A2BFD_RELOC_MEP_PCREL12A2BFD_RELOC_MEP_PCREL17A2BFD_RELOC_MEP_PCREL24A2BFD_RELOC_MEP_PCABS24A2BFD_RELOC_MEP_LOW16BFD_RELOC_MEP_HI16UBFD_RELOC_MEP_HI16SBFD_RELOC_MEP_GPRELBFD_RELOC_MEP_TPRELBFD_RELOC_MEP_TPREL7BFD_RELOC_MEP_TPREL7A2BFD_RELOC_MEP_TPREL7A4BFD_RELOC_MEP_UIMM24BFD_RELOC_MEP_ADDR24A4BFD_RELOC_MEP_GNU_VTINHERITBFD_RELOC_MEP_GNU_VTENTRYBFD_RELOC_METAG_HIADDR16BFD_RELOC_METAG_LOADDR16BFD_RELOC_METAG_RELBRANCHBFD_RELOC_METAG_GETSETOFFBFD_RELOC_METAG_HIOGBFD_RELOC_METAG_LOOGBFD_RELOC_METAG_REL8BFD_RELOC_METAG_REL16BFD_RELOC_METAG_HI16_GOTOFFBFD_RELOC_METAG_LO16_GOTOFFBFD_RELOC_METAG_GETSET_GOTOFFBFD_RELOC_METAG_GETSET_GOTBFD_RELOC_METAG_HI16_GOTPCBFD_RELOC_METAG_LO16_GOTPCBFD_RELOC_METAG_HI16_PLTBFD_RELOC_METAG_LO16_PLTBFD_RELOC_METAG_RELBRANCH_PLTBFD_RELOC_METAG_GOTOFFBFD_RELOC_METAG_PLTBFD_RELOC_METAG_COPYBFD_RELOC_METAG_JMP_SLOTBFD_RELOC_METAG_RELATIVEBFD_RELOC_METAG_GLOB_DATBFD_RELOC_METAG_TLS_GDBFD_RELOC_METAG_TLS_LDMBFD_RELOC_METAG_TLS_LDO_HI16BFD_RELOC_METAG_TLS_LDO_LO16BFD_RELOC_METAG_TLS_LDOBFD_RELOC_METAG_TLS_IEBFD_RELOC_METAG_TLS_IENONPICBFD_RELOC_METAG_TLS_TPOFFBFD_RELOC_METAG_TLS_DTPMODBFD_RELOC_METAG_TLS_DTPOFFBFD_RELOC_METAG_TLS_LEBFD_RELOC_METAG_TLS_LE_HI16BFD_RELOC_METAG_TLS_LE_LO16BFD_RELOC_MMIX_GETABFD_RELOC_MMIX_GETA_1BFD_RELOC_MMIX_GETA_2BFD_RELOC_MMIX_GETA_3BFD_RELOC_MMIX_CBRANCHBFD_RELOC_MMIX_CBRANCH_JBFD_RELOC_MMIX_CBRANCH_1BFD_RELOC_MMIX_CBRANCH_2BFD_RELOC_MMIX_CBRANCH_3BFD_RELOC_MMIX_PUSHJBFD_RELOC_MMIX_PUSHJ_1BFD_RELOC_MMIX_PUSHJ_2BFD_RELOC_MMIX_PUSHJ_3BFD_RELOC_MMIX_JMPBFD_RELOC_MMIX_JMP_1BFD_RELOC_MMIX_JMP_2BFD_RELOC_MMIX_JMP_3BFD_RELOC_MMIX_ADDR19BFD_RELOC_MMIX_ADDR27BFD_RELOC_MMIX_REG_OR_BYTEBFD_RELOC_MMIX_REGBFD_RELOC_MMIX_LOCALBFD_RELOC_AVR_7_PCRELBFD_RELOC_AVR_13_PCRELBFD_RELOC_AVR_16_PMBFD_RELOC_AVR_LO8_LDIBFD_RELOC_AVR_HI8_LDIBFD_RELOC_AVR_HH8_LDIBFD_RELOC_AVR_MS8_LDIBFD_RELOC_AVR_LO8_LDI_NEGBFD_RELOC_AVR_HI8_LDI_NEGBFD_RELOC_AVR_HH8_LDI_NEGBFD_RELOC_AVR_MS8_LDI_NEGBFD_RELOC_AVR_LO8_LDI_PMBFD_RELOC_AVR_LO8_LDI_GSBFD_RELOC_AVR_HI8_LDI_PMBFD_RELOC_AVR_HI8_LDI_GSBFD_RELOC_AVR_HH8_LDI_PMBFD_RELOC_AVR_LO8_LDI_PM_NEGBFD_RELOC_AVR_HI8_LDI_PM_NEGBFD_RELOC_AVR_HH8_LDI_PM_NEGBFD_RELOC_AVR_CALLBFD_RELOC_AVR_LDIBFD_RELOC_AVR_6BFD_RELOC_AVR_6_ADIWBFD_RELOC_AVR_8_LOBFD_RELOC_AVR_8_HIBFD_RELOC_AVR_8_HLOBFD_RELOC_AVR_DIFF8BFD_RELOC_AVR_DIFF16BFD_RELOC_AVR_DIFF32BFD_RELOC_AVR_LDS_STS_16BFD_RELOC_AVR_PORT6BFD_RELOC_AVR_PORT5BFD_RELOC_RISCV_HI20BFD_RELOC_RISCV_PCREL_HI20BFD_RELOC_RISCV_PCREL_LO12_IBFD_RELOC_RISCV_PCREL_LO12_SBFD_RELOC_RISCV_LO12_IBFD_RELOC_RISCV_LO12_SBFD_RELOC_RISCV_GPREL12_IBFD_RELOC_RISCV_GPREL12_SBFD_RELOC_RISCV_TPREL_HI20BFD_RELOC_RISCV_TPREL_LO12_IBFD_RELOC_RISCV_TPREL_LO12_SBFD_RELOC_RISCV_TPREL_ADDBFD_RELOC_RISCV_CALLBFD_RELOC_RISCV_CALL_PLTBFD_RELOC_RISCV_ADD8BFD_RELOC_RISCV_ADD16BFD_RELOC_RISCV_ADD32BFD_RELOC_RISCV_ADD64BFD_RELOC_RISCV_SUB8BFD_RELOC_RISCV_SUB16BFD_RELOC_RISCV_SUB32BFD_RELOC_RISCV_SUB64BFD_RELOC_RISCV_GOT_HI20BFD_RELOC_RISCV_TLS_GOT_HI20BFD_RELOC_RISCV_TLS_GD_HI20BFD_RELOC_RISCV_JMPBFD_RELOC_RISCV_TLS_DTPMOD32BFD_RELOC_RISCV_TLS_DTPREL32BFD_RELOC_RISCV_TLS_DTPMOD64BFD_RELOC_RISCV_TLS_DTPREL64BFD_RELOC_RISCV_TLS_TPREL32BFD_RELOC_RISCV_TLS_TPREL64BFD_RELOC_RISCV_TLSDESC_HI20BFD_RELOC_RISCV_TLSDESC_CALLBFD_RELOC_RISCV_ALIGNBFD_RELOC_RISCV_RVC_BRANCHBFD_RELOC_RISCV_RVC_JUMPBFD_RELOC_RISCV_RELAXBFD_RELOC_RISCV_CFABFD_RELOC_RISCV_SUB6BFD_RELOC_RISCV_SET6BFD_RELOC_RISCV_SET8BFD_RELOC_RISCV_SET16BFD_RELOC_RISCV_SET32BFD_RELOC_RISCV_32_PCRELBFD_RELOC_RISCV_SET_ULEB128BFD_RELOC_RISCV_SUB_ULEB128BFD_RELOC_RL78_NEG8BFD_RELOC_RL78_NEG16BFD_RELOC_RL78_NEG24BFD_RELOC_RL78_NEG32BFD_RELOC_RL78_16_OPBFD_RELOC_RL78_24_OPBFD_RELOC_RL78_32_OPBFD_RELOC_RL78_8UBFD_RELOC_RL78_16UBFD_RELOC_RL78_24UBFD_RELOC_RL78_DIR3U_PCRELBFD_RELOC_RL78_DIFFBFD_RELOC_RL78_GPRELBBFD_RELOC_RL78_GPRELWBFD_RELOC_RL78_GPRELLBFD_RELOC_RL78_SYMBFD_RELOC_RL78_OP_SUBTRACTBFD_RELOC_RL78_OP_NEGBFD_RELOC_RL78_OP_ANDBFD_RELOC_RL78_OP_SHRABFD_RELOC_RL78_ABS8BFD_RELOC_RL78_ABS16BFD_RELOC_RL78_ABS16_REVBFD_RELOC_RL78_ABS32BFD_RELOC_RL78_ABS32_REVBFD_RELOC_RL78_ABS16UBFD_RELOC_RL78_ABS16UWBFD_RELOC_RL78_ABS16ULBFD_RELOC_RL78_RELAXBFD_RELOC_RL78_HI16BFD_RELOC_RL78_HI8BFD_RELOC_RL78_LO16BFD_RELOC_RL78_CODEBFD_RELOC_RL78_SADDRBFD_RELOC_RX_NEG8BFD_RELOC_RX_NEG16BFD_RELOC_RX_NEG24BFD_RELOC_RX_NEG32BFD_RELOC_RX_16_OPBFD_RELOC_RX_24_OPBFD_RELOC_RX_32_OPBFD_RELOC_RX_8UBFD_RELOC_RX_16UBFD_RELOC_RX_24UBFD_RELOC_RX_DIR3U_PCRELBFD_RELOC_RX_DIFFBFD_RELOC_RX_GPRELBBFD_RELOC_RX_GPRELWBFD_RELOC_RX_GPRELLBFD_RELOC_RX_SYMBFD_RELOC_RX_OP_SUBTRACTBFD_RELOC_RX_OP_NEGBFD_RELOC_RX_ABS8BFD_RELOC_RX_ABS16BFD_RELOC_RX_ABS16_REVBFD_RELOC_RX_ABS32BFD_RELOC_RX_ABS32_REVBFD_RELOC_RX_ABS16UBFD_RELOC_RX_ABS16UWBFD_RELOC_RX_ABS16ULBFD_RELOC_RX_RELAXBFD_RELOC_390_12BFD_RELOC_390_GOT12BFD_RELOC_390_PLT32BFD_RELOC_390_COPYBFD_RELOC_390_GLOB_DATBFD_RELOC_390_JMP_SLOTBFD_RELOC_390_RELATIVEBFD_RELOC_390_GOTPCBFD_RELOC_390_GOT16BFD_RELOC_390_PC12DBLBFD_RELOC_390_PLT12DBLBFD_RELOC_390_PC16DBLBFD_RELOC_390_PLT16DBLBFD_RELOC_390_PC24DBLBFD_RELOC_390_PLT24DBLBFD_RELOC_390_PC32DBLBFD_RELOC_390_PLT32DBLBFD_RELOC_390_GOTPCDBLBFD_RELOC_390_GOT64BFD_RELOC_390_PLT64BFD_RELOC_390_GOTENTBFD_RELOC_390_GOTOFF64BFD_RELOC_390_GOTPLT12BFD_RELOC_390_GOTPLT16BFD_RELOC_390_GOTPLT32BFD_RELOC_390_GOTPLT64BFD_RELOC_390_GOTPLTENTBFD_RELOC_390_PLTOFF16BFD_RELOC_390_PLTOFF32BFD_RELOC_390_PLTOFF64BFD_RELOC_390_TLS_LOADBFD_RELOC_390_TLS_GDCALLBFD_RELOC_390_TLS_LDCALLBFD_RELOC_390_TLS_GD32BFD_RELOC_390_TLS_GD64BFD_RELOC_390_TLS_GOTIE12BFD_RELOC_390_TLS_GOTIE32BFD_RELOC_390_TLS_GOTIE64BFD_RELOC_390_TLS_LDM32BFD_RELOC_390_TLS_LDM64BFD_RELOC_390_TLS_IE32BFD_RELOC_390_TLS_IE64BFD_RELOC_390_TLS_IEENTBFD_RELOC_390_TLS_LE32BFD_RELOC_390_TLS_LE64BFD_RELOC_390_TLS_LDO32BFD_RELOC_390_TLS_LDO64BFD_RELOC_390_TLS_DTPMODBFD_RELOC_390_TLS_DTPOFFBFD_RELOC_390_TLS_TPOFFBFD_RELOC_390_20BFD_RELOC_390_GOT20BFD_RELOC_390_GOTPLT20BFD_RELOC_390_TLS_GOTIE20BFD_RELOC_390_IRELATIVEBFD_RELOC_SCORE_GPREL15BFD_RELOC_SCORE_DUMMY2BFD_RELOC_SCORE_JMPBFD_RELOC_SCORE_BRANCHBFD_RELOC_SCORE_IMM30BFD_RELOC_SCORE_IMM32BFD_RELOC_SCORE16_JMPBFD_RELOC_SCORE16_BRANCHBFD_RELOC_SCORE_BCMPBFD_RELOC_SCORE_GOT15BFD_RELOC_SCORE_GOT_LO16BFD_RELOC_SCORE_CALL15BFD_RELOC_SCORE_DUMMY_HI16BFD_RELOC_IP2K_FR9BFD_RELOC_IP2K_BANKBFD_RELOC_IP2K_ADDR16CJPBFD_RELOC_IP2K_PAGE3BFD_RELOC_IP2K_LO8DATABFD_RELOC_IP2K_HI8DATABFD_RELOC_IP2K_EX8DATABFD_RELOC_IP2K_LO8INSNBFD_RELOC_IP2K_HI8INSNBFD_RELOC_IP2K_PC_SKIPBFD_RELOC_IP2K_TEXTBFD_RELOC_IP2K_FR_OFFSETBFD_RELOC_VPE4KMATH_DATABFD_RELOC_VPE4KMATH_INSNBFD_RELOC_VTABLE_INHERITBFD_RELOC_VTABLE_ENTRYBFD_RELOC_IA64_IMM14BFD_RELOC_IA64_IMM22BFD_RELOC_IA64_IMM64BFD_RELOC_IA64_DIR32MSBBFD_RELOC_IA64_DIR32LSBBFD_RELOC_IA64_DIR64MSBBFD_RELOC_IA64_DIR64LSBBFD_RELOC_IA64_GPREL22BFD_RELOC_IA64_GPREL64IBFD_RELOC_IA64_GPREL32MSBBFD_RELOC_IA64_GPREL32LSBBFD_RELOC_IA64_GPREL64MSBBFD_RELOC_IA64_GPREL64LSBBFD_RELOC_IA64_LTOFF22BFD_RELOC_IA64_LTOFF64IBFD_RELOC_IA64_PLTOFF22BFD_RELOC_IA64_PLTOFF64IBFD_RELOC_IA64_PLTOFF64MSBBFD_RELOC_IA64_PLTOFF64LSBBFD_RELOC_IA64_FPTR64IBFD_RELOC_IA64_FPTR32MSBBFD_RELOC_IA64_FPTR32LSBBFD_RELOC_IA64_FPTR64MSBBFD_RELOC_IA64_FPTR64LSBBFD_RELOC_IA64_PCREL21BBFD_RELOC_IA64_PCREL21BIBFD_RELOC_IA64_PCREL21MBFD_RELOC_IA64_PCREL21FBFD_RELOC_IA64_PCREL22BFD_RELOC_IA64_PCREL60BBFD_RELOC_IA64_PCREL64IBFD_RELOC_IA64_PCREL32MSBBFD_RELOC_IA64_PCREL32LSBBFD_RELOC_IA64_PCREL64MSBBFD_RELOC_IA64_PCREL64LSBBFD_RELOC_IA64_LTOFF_FPTR22BFD_RELOC_IA64_LTOFF_FPTR64IBFD_RELOC_IA64_SEGREL32MSBBFD_RELOC_IA64_SEGREL32LSBBFD_RELOC_IA64_SEGREL64MSBBFD_RELOC_IA64_SEGREL64LSBBFD_RELOC_IA64_SECREL32MSBBFD_RELOC_IA64_SECREL32LSBBFD_RELOC_IA64_SECREL64MSBBFD_RELOC_IA64_SECREL64LSBBFD_RELOC_IA64_REL32MSBBFD_RELOC_IA64_REL32LSBBFD_RELOC_IA64_REL64MSBBFD_RELOC_IA64_REL64LSBBFD_RELOC_IA64_LTV32MSBBFD_RELOC_IA64_LTV32LSBBFD_RELOC_IA64_LTV64MSBBFD_RELOC_IA64_LTV64LSBBFD_RELOC_IA64_IPLTMSBBFD_RELOC_IA64_IPLTLSBBFD_RELOC_IA64_COPYBFD_RELOC_IA64_LTOFF22XBFD_RELOC_IA64_LDXMOVBFD_RELOC_IA64_TPREL14BFD_RELOC_IA64_TPREL22BFD_RELOC_IA64_TPREL64IBFD_RELOC_IA64_TPREL64MSBBFD_RELOC_IA64_TPREL64LSBBFD_RELOC_IA64_LTOFF_TPREL22BFD_RELOC_IA64_DTPMOD64MSBBFD_RELOC_IA64_DTPMOD64LSBBFD_RELOC_IA64_LTOFF_DTPMOD22BFD_RELOC_IA64_DTPREL14BFD_RELOC_IA64_DTPREL22BFD_RELOC_IA64_DTPREL64IBFD_RELOC_IA64_DTPREL32MSBBFD_RELOC_IA64_DTPREL32LSBBFD_RELOC_IA64_DTPREL64MSBBFD_RELOC_IA64_DTPREL64LSBBFD_RELOC_IA64_LTOFF_DTPREL22BFD_RELOC_M68HC11_HI8BFD_RELOC_M68HC11_LO8BFD_RELOC_M68HC11_3BBFD_RELOC_M68HC11_RL_JUMPBFD_RELOC_M68HC11_RL_GROUPBFD_RELOC_M68HC11_LO16BFD_RELOC_M68HC11_PAGEBFD_RELOC_M68HC11_24BFD_RELOC_M68HC12_5BBFD_RELOC_XGATE_RL_JUMPBFD_RELOC_XGATE_RL_GROUPBFD_RELOC_XGATE_LO16BFD_RELOC_XGATE_GPAGEBFD_RELOC_XGATE_24BFD_RELOC_XGATE_PCREL_9BFD_RELOC_XGATE_PCREL_10BFD_RELOC_XGATE_IMM8_LOBFD_RELOC_XGATE_IMM8_HIBFD_RELOC_XGATE_IMM3BFD_RELOC_XGATE_IMM4BFD_RELOC_XGATE_IMM5BFD_RELOC_M68HC12_9BBFD_RELOC_M68HC12_16BBFD_RELOC_M68HC12_9_PCRELBFD_RELOC_M68HC12_10_PCRELBFD_RELOC_M68HC12_LO8XGBFD_RELOC_M68HC12_HI8XGBFD_RELOC_S12Z_15_PCRELBFD_RELOC_CR16_NUM8BFD_RELOC_CR16_NUM16BFD_RELOC_CR16_NUM32BFD_RELOC_CR16_NUM32aBFD_RELOC_CR16_REGREL0BFD_RELOC_CR16_REGREL4BFD_RELOC_CR16_REGREL4aBFD_RELOC_CR16_REGREL14BFD_RELOC_CR16_REGREL14aBFD_RELOC_CR16_REGREL16BFD_RELOC_CR16_REGREL20BFD_RELOC_CR16_REGREL20aBFD_RELOC_CR16_ABS20BFD_RELOC_CR16_ABS24BFD_RELOC_CR16_IMM4BFD_RELOC_CR16_IMM8BFD_RELOC_CR16_IMM16BFD_RELOC_CR16_IMM20BFD_RELOC_CR16_IMM24BFD_RELOC_CR16_IMM32BFD_RELOC_CR16_IMM32aBFD_RELOC_CR16_DISP4BFD_RELOC_CR16_DISP8BFD_RELOC_CR16_DISP16BFD_RELOC_CR16_DISP20BFD_RELOC_CR16_DISP24BFD_RELOC_CR16_DISP24aBFD_RELOC_CR16_SWITCH8BFD_RELOC_CR16_SWITCH16BFD_RELOC_CR16_SWITCH32BFD_RELOC_CR16_GOT_REGREL20BFD_RELOC_CR16_GOTC_REGREL20BFD_RELOC_CR16_GLOB_DATBFD_RELOC_CRX_REL4BFD_RELOC_CRX_REL8BFD_RELOC_CRX_REL8_CMPBFD_RELOC_CRX_REL16BFD_RELOC_CRX_REL24BFD_RELOC_CRX_REL32BFD_RELOC_CRX_REGREL12BFD_RELOC_CRX_REGREL22BFD_RELOC_CRX_REGREL28BFD_RELOC_CRX_REGREL32BFD_RELOC_CRX_ABS16BFD_RELOC_CRX_ABS32BFD_RELOC_CRX_NUM8BFD_RELOC_CRX_NUM16BFD_RELOC_CRX_NUM32BFD_RELOC_CRX_IMM16BFD_RELOC_CRX_IMM32BFD_RELOC_CRX_SWITCH8BFD_RELOC_CRX_SWITCH16BFD_RELOC_CRX_SWITCH32BFD_RELOC_CRIS_BDISP8BFD_RELOC_CRIS_UNSIGNED_5BFD_RELOC_CRIS_SIGNED_6BFD_RELOC_CRIS_UNSIGNED_6BFD_RELOC_CRIS_SIGNED_8BFD_RELOC_CRIS_UNSIGNED_8BFD_RELOC_CRIS_SIGNED_16BFD_RELOC_CRIS_UNSIGNED_16BFD_RELOC_CRIS_LAPCQ_OFFSETBFD_RELOC_CRIS_UNSIGNED_4BFD_RELOC_CRIS_COPYBFD_RELOC_CRIS_GLOB_DATBFD_RELOC_CRIS_JUMP_SLOTBFD_RELOC_CRIS_RELATIVEBFD_RELOC_CRIS_32_GOTBFD_RELOC_CRIS_16_GOTBFD_RELOC_CRIS_32_GOTPLTBFD_RELOC_CRIS_16_GOTPLTBFD_RELOC_CRIS_32_GOTRELBFD_RELOC_CRIS_32_PLT_GOTRELBFD_RELOC_CRIS_32_PLT_PCRELBFD_RELOC_CRIS_32_GOT_GDBFD_RELOC_CRIS_16_GOT_GDBFD_RELOC_CRIS_32_GDBFD_RELOC_CRIS_DTPBFD_RELOC_CRIS_32_DTPRELBFD_RELOC_CRIS_16_DTPRELBFD_RELOC_CRIS_32_GOT_TPRELBFD_RELOC_CRIS_16_GOT_TPRELBFD_RELOC_CRIS_32_TPRELBFD_RELOC_CRIS_16_TPRELBFD_RELOC_CRIS_DTPMODBFD_RELOC_CRIS_32_IEBFD_RELOC_OR1K_REL_26BFD_RELOC_OR1K_SLO16BFD_RELOC_OR1K_PCREL_PG21BFD_RELOC_OR1K_LO13BFD_RELOC_OR1K_SLO13BFD_RELOC_OR1K_GOTPC_HI16BFD_RELOC_OR1K_GOTPC_LO16BFD_RELOC_OR1K_GOT_AHI16BFD_RELOC_OR1K_GOT16BFD_RELOC_OR1K_GOT_PG21BFD_RELOC_OR1K_GOT_LO13BFD_RELOC_OR1K_PLT26BFD_RELOC_OR1K_PLTA26BFD_RELOC_OR1K_GOTOFF_SLO16BFD_RELOC_OR1K_COPYBFD_RELOC_OR1K_GLOB_DATBFD_RELOC_OR1K_JMP_SLOTBFD_RELOC_OR1K_RELATIVEBFD_RELOC_OR1K_TLS_GD_HI16BFD_RELOC_OR1K_TLS_GD_LO16BFD_RELOC_OR1K_TLS_GD_PG21BFD_RELOC_OR1K_TLS_GD_LO13BFD_RELOC_OR1K_TLS_LDM_HI16BFD_RELOC_OR1K_TLS_LDM_LO16BFD_RELOC_OR1K_TLS_LDM_PG21BFD_RELOC_OR1K_TLS_LDM_LO13BFD_RELOC_OR1K_TLS_LDO_HI16BFD_RELOC_OR1K_TLS_LDO_LO16BFD_RELOC_OR1K_TLS_IE_HI16BFD_RELOC_OR1K_TLS_IE_AHI16BFD_RELOC_OR1K_TLS_IE_LO16BFD_RELOC_OR1K_TLS_IE_PG21BFD_RELOC_OR1K_TLS_IE_LO13BFD_RELOC_OR1K_TLS_LE_HI16BFD_RELOC_OR1K_TLS_LE_AHI16BFD_RELOC_OR1K_TLS_LE_LO16BFD_RELOC_OR1K_TLS_LE_SLO16BFD_RELOC_OR1K_TLS_TPOFFBFD_RELOC_OR1K_TLS_DTPOFFBFD_RELOC_OR1K_TLS_DTPMODBFD_RELOC_H8_DIR16A8BFD_RELOC_H8_DIR16R8BFD_RELOC_H8_DIR24A8BFD_RELOC_H8_DIR24R8BFD_RELOC_H8_DIR32A16BFD_RELOC_H8_DISP32A16BFD_RELOC_XSTORMY16_REL_12BFD_RELOC_XSTORMY16_12BFD_RELOC_XSTORMY16_24BFD_RELOC_XSTORMY16_FPTR16BFD_RELOC_RELCBFD_RELOC_VAX_GLOB_DATBFD_RELOC_VAX_JMP_SLOTBFD_RELOC_VAX_RELATIVEBFD_RELOC_MT_PC16BFD_RELOC_MT_HI16BFD_RELOC_MT_LO16BFD_RELOC_MT_GNU_VTINHERITBFD_RELOC_MT_GNU_VTENTRYBFD_RELOC_MT_PCINSN8BFD_RELOC_MSP430_10_PCRELBFD_RELOC_MSP430_16_PCRELBFD_RELOC_MSP430_16BFD_RELOC_MSP430_16_BYTEBFD_RELOC_MSP430_2X_PCRELBFD_RELOC_MSP430_RL_PCRELBFD_RELOC_MSP430_ABS8BFD_RELOC_MSP430X_PCR16BFD_RELOC_MSP430X_PCR20_CALLBFD_RELOC_MSP430X_ABS16BFD_RELOC_MSP430_ABS_HI16BFD_RELOC_MSP430_PREL31BFD_RELOC_MSP430_SYM_DIFFBFD_RELOC_MSP430_SET_ULEB128BFD_RELOC_MSP430_SUB_ULEB128BFD_RELOC_PRU_U16BFD_RELOC_PRU_U16_PMEMIMMBFD_RELOC_PRU_LDI32BFD_RELOC_PRU_S10_PCRELBFD_RELOC_PRU_U8_PCRELBFD_RELOC_PRU_32_PMEMBFD_RELOC_PRU_16_PMEMBFD_RELOC_PRU_GNU_DIFF8BFD_RELOC_PRU_GNU_DIFF16BFD_RELOC_PRU_GNU_DIFF32BFD_RELOC_PRU_GNU_DIFF16_PMEMBFD_RELOC_PRU_GNU_DIFF32_PMEMBFD_RELOC_IQ2000_OFFSET_16BFD_RELOC_IQ2000_OFFSET_21BFD_RELOC_IQ2000_UHI16BFD_RELOC_XTENSA_RTLDBFD_RELOC_XTENSA_GLOB_DATBFD_RELOC_XTENSA_JMP_SLOTBFD_RELOC_XTENSA_RELATIVEBFD_RELOC_XTENSA_PLTBFD_RELOC_XTENSA_DIFF8BFD_RELOC_XTENSA_DIFF16BFD_RELOC_XTENSA_DIFF32BFD_RELOC_XTENSA_SLOT0_OPBFD_RELOC_XTENSA_SLOT1_OPBFD_RELOC_XTENSA_SLOT2_OPBFD_RELOC_XTENSA_SLOT3_OPBFD_RELOC_XTENSA_SLOT4_OPBFD_RELOC_XTENSA_SLOT5_OPBFD_RELOC_XTENSA_SLOT6_OPBFD_RELOC_XTENSA_SLOT7_OPBFD_RELOC_XTENSA_SLOT8_OPBFD_RELOC_XTENSA_SLOT9_OPBFD_RELOC_XTENSA_SLOT10_OPBFD_RELOC_XTENSA_SLOT11_OPBFD_RELOC_XTENSA_SLOT12_OPBFD_RELOC_XTENSA_SLOT13_OPBFD_RELOC_XTENSA_SLOT14_OPBFD_RELOC_XTENSA_SLOT0_ALTBFD_RELOC_XTENSA_SLOT1_ALTBFD_RELOC_XTENSA_SLOT2_ALTBFD_RELOC_XTENSA_SLOT3_ALTBFD_RELOC_XTENSA_SLOT4_ALTBFD_RELOC_XTENSA_SLOT5_ALTBFD_RELOC_XTENSA_SLOT6_ALTBFD_RELOC_XTENSA_SLOT7_ALTBFD_RELOC_XTENSA_SLOT8_ALTBFD_RELOC_XTENSA_SLOT9_ALTBFD_RELOC_XTENSA_SLOT10_ALTBFD_RELOC_XTENSA_SLOT11_ALTBFD_RELOC_XTENSA_SLOT12_ALTBFD_RELOC_XTENSA_SLOT13_ALTBFD_RELOC_XTENSA_SLOT14_ALTBFD_RELOC_XTENSA_OP0BFD_RELOC_XTENSA_OP1BFD_RELOC_XTENSA_OP2BFD_RELOC_XTENSA_ASM_EXPANDBFD_RELOC_XTENSA_ASM_SIMPLIFYBFD_RELOC_XTENSA_TLSDESC_FNBFD_RELOC_XTENSA_TLSDESC_ARGBFD_RELOC_XTENSA_TLS_DTPOFFBFD_RELOC_XTENSA_TLS_TPOFFBFD_RELOC_XTENSA_TLS_FUNCBFD_RELOC_XTENSA_TLS_ARGBFD_RELOC_XTENSA_TLS_CALLBFD_RELOC_XTENSA_PDIFF8BFD_RELOC_XTENSA_PDIFF16BFD_RELOC_XTENSA_PDIFF32BFD_RELOC_XTENSA_NDIFF8BFD_RELOC_XTENSA_NDIFF16BFD_RELOC_XTENSA_NDIFF32BFD_RELOC_Z80_DISP8BFD_RELOC_Z80_BYTE0BFD_RELOC_Z80_BYTE1BFD_RELOC_Z80_BYTE2BFD_RELOC_Z80_BYTE3BFD_RELOC_Z80_WORD0BFD_RELOC_Z80_WORD1BFD_RELOC_Z80_16_BEBFD_RELOC_Z8K_DISP7BFD_RELOC_Z8K_CALLRBFD_RELOC_Z8K_IMM4LBFD_RELOC_LM32_CALLBFD_RELOC_LM32_BRANCHBFD_RELOC_LM32_16_GOTBFD_RELOC_LM32_GOTOFF_HI16BFD_RELOC_LM32_GOTOFF_LO16BFD_RELOC_LM32_COPYBFD_RELOC_LM32_GLOB_DATBFD_RELOC_LM32_JMP_SLOTBFD_RELOC_LM32_RELATIVEBFD_RELOC_MACH_O_SECTDIFFBFD_RELOC_MACH_O_PAIRBFD_RELOC_MACH_O_SUBTRACTOR32BFD_RELOC_MACH_O_SUBTRACTOR64BFD_RELOC_MACH_O_X86_64_GOTBFD_RELOC_MACH_O_X86_64_TLVBFD_RELOC_MACH_O_ARM64_ADDENDBFD_RELOC_MICROBLAZE_32_LOBFD_RELOC_MICROBLAZE_32_ROSDABFD_RELOC_MICROBLAZE_32_RWSDABFD_RELOC_MICROBLAZE_32_NONEBFD_RELOC_MICROBLAZE_64_NONEBFD_RELOC_MICROBLAZE_64_GOTPCBFD_RELOC_MICROBLAZE_64_GOTBFD_RELOC_MICROBLAZE_64_PLTBFD_RELOC_MICROBLAZE_COPYBFD_RELOC_MICROBLAZE_64_TLSBFD_RELOC_MICROBLAZE_64_TLSGDBFD_RELOC_MICROBLAZE_64_TLSLDBFD_RELOC_KVX_RELOC_STARTBFD_RELOC_KVX_NONEBFD_RELOC_KVX_16BFD_RELOC_KVX_32BFD_RELOC_KVX_64BFD_RELOC_KVX_S16_PCRELBFD_RELOC_KVX_PCREL17BFD_RELOC_KVX_PCREL27BFD_RELOC_KVX_32_PCRELBFD_RELOC_KVX_S37_PCREL_LO10BFD_RELOC_KVX_S37_PCREL_UP27BFD_RELOC_KVX_S43_PCREL_LO10BFD_RELOC_KVX_S43_PCREL_UP27BFD_RELOC_KVX_S43_PCREL_EX6BFD_RELOC_KVX_S64_PCREL_LO10BFD_RELOC_KVX_S64_PCREL_UP27BFD_RELOC_KVX_S64_PCREL_EX27BFD_RELOC_KVX_64_PCRELBFD_RELOC_KVX_S16BFD_RELOC_KVX_S32_LO5BFD_RELOC_KVX_S32_UP27BFD_RELOC_KVX_S37_LO10BFD_RELOC_KVX_S37_UP27BFD_RELOC_KVX_S37_GOTOFF_LO10BFD_RELOC_KVX_S37_GOTOFF_UP27BFD_RELOC_KVX_S43_GOTOFF_LO10BFD_RELOC_KVX_S43_GOTOFF_UP27BFD_RELOC_KVX_S43_GOTOFF_EX6BFD_RELOC_KVX_32_GOTOFFBFD_RELOC_KVX_64_GOTOFFBFD_RELOC_KVX_32_GOTBFD_RELOC_KVX_S37_GOT_LO10BFD_RELOC_KVX_S37_GOT_UP27BFD_RELOC_KVX_S43_GOT_LO10BFD_RELOC_KVX_S43_GOT_UP27BFD_RELOC_KVX_S43_GOT_EX6BFD_RELOC_KVX_64_GOTBFD_RELOC_KVX_GLOB_DATBFD_RELOC_KVX_COPYBFD_RELOC_KVX_JMP_SLOTBFD_RELOC_KVX_RELATIVEBFD_RELOC_KVX_S43_LO10BFD_RELOC_KVX_S43_UP27BFD_RELOC_KVX_S43_EX6BFD_RELOC_KVX_S64_LO10BFD_RELOC_KVX_S64_UP27BFD_RELOC_KVX_S64_EX27BFD_RELOC_KVX_S43_GOTADDR_EX6BFD_RELOC_KVX_64_DTPMODBFD_RELOC_KVX_64_DTPOFFBFD_RELOC_KVX_S37_TLS_GD_LO10BFD_RELOC_KVX_S37_TLS_GD_UP27BFD_RELOC_KVX_S43_TLS_GD_LO10BFD_RELOC_KVX_S43_TLS_GD_UP27BFD_RELOC_KVX_S43_TLS_GD_EX6BFD_RELOC_KVX_S37_TLS_LD_LO10BFD_RELOC_KVX_S37_TLS_LD_UP27BFD_RELOC_KVX_S43_TLS_LD_LO10BFD_RELOC_KVX_S43_TLS_LD_UP27BFD_RELOC_KVX_S43_TLS_LD_EX6BFD_RELOC_KVX_64_TPOFFBFD_RELOC_KVX_S37_TLS_IE_LO10BFD_RELOC_KVX_S37_TLS_IE_UP27BFD_RELOC_KVX_S43_TLS_IE_LO10BFD_RELOC_KVX_S43_TLS_IE_UP27BFD_RELOC_KVX_S43_TLS_IE_EX6BFD_RELOC_KVX_S37_TLS_LE_LO10BFD_RELOC_KVX_S37_TLS_LE_UP27BFD_RELOC_KVX_S43_TLS_LE_LO10BFD_RELOC_KVX_S43_TLS_LE_UP27BFD_RELOC_KVX_S43_TLS_LE_EX6BFD_RELOC_KVX_8BFD_RELOC_KVX_RELOC_ENDBFD_RELOC_AARCH64_RELOC_STARTBFD_RELOC_AARCH64_NULLBFD_RELOC_AARCH64_NONEBFD_RELOC_AARCH64_64BFD_RELOC_AARCH64_32BFD_RELOC_AARCH64_16BFD_RELOC_AARCH64_64_PCRELBFD_RELOC_AARCH64_32_PCRELBFD_RELOC_AARCH64_16_PCRELBFD_RELOC_AARCH64_MOVW_G0BFD_RELOC_AARCH64_MOVW_G0_NCBFD_RELOC_AARCH64_MOVW_G1BFD_RELOC_AARCH64_MOVW_G1_NCBFD_RELOC_AARCH64_MOVW_G2BFD_RELOC_AARCH64_MOVW_G2_NCBFD_RELOC_AARCH64_MOVW_G3BFD_RELOC_AARCH64_MOVW_G0_SBFD_RELOC_AARCH64_MOVW_G1_SBFD_RELOC_AARCH64_MOVW_G2_SBFD_RELOC_AARCH64_ADD_LO12BFD_RELOC_AARCH64_LDST8_LO12BFD_RELOC_AARCH64_TSTBR14BFD_RELOC_AARCH64_BRANCH19BFD_RELOC_AARCH64_JUMP26BFD_RELOC_AARCH64_CALL26BFD_RELOC_AARCH64_LDST16_LO12BFD_RELOC_AARCH64_LDST32_LO12BFD_RELOC_AARCH64_LDST64_LO12BFD_RELOC_AARCH64_TLSDESC_LDRBFD_RELOC_AARCH64_TLSDESC_ADDBFD_RELOC_AARCH64_COPYBFD_RELOC_AARCH64_GLOB_DATBFD_RELOC_AARCH64_JUMP_SLOTBFD_RELOC_AARCH64_RELATIVEBFD_RELOC_AARCH64_TLS_DTPMODBFD_RELOC_AARCH64_TLS_DTPRELBFD_RELOC_AARCH64_TLS_TPRELBFD_RELOC_AARCH64_TLSDESCBFD_RELOC_AARCH64_IRELATIVEBFD_RELOC_AARCH64_RELOC_ENDBFD_RELOC_AARCH64_LDST_LO12BFD_RELOC_TILEPRO_COPYBFD_RELOC_TILEPRO_GLOB_DATBFD_RELOC_TILEPRO_JMP_SLOTBFD_RELOC_TILEPRO_RELATIVEBFD_RELOC_TILEPRO_BROFF_X1BFD_RELOC_TILEPRO_JOFFLONG_X1BFD_RELOC_TILEPRO_IMM8_X0BFD_RELOC_TILEPRO_IMM8_Y0BFD_RELOC_TILEPRO_IMM8_X1BFD_RELOC_TILEPRO_IMM8_Y1BFD_RELOC_TILEPRO_MT_IMM15_X1BFD_RELOC_TILEPRO_MF_IMM15_X1BFD_RELOC_TILEPRO_IMM16_X0BFD_RELOC_TILEPRO_IMM16_X1BFD_RELOC_TILEPRO_IMM16_X0_LOBFD_RELOC_TILEPRO_IMM16_X1_LOBFD_RELOC_TILEPRO_IMM16_X0_HIBFD_RELOC_TILEPRO_IMM16_X1_HIBFD_RELOC_TILEPRO_IMM16_X0_HABFD_RELOC_TILEPRO_IMM16_X1_HABFD_RELOC_TILEPRO_MMSTART_X0BFD_RELOC_TILEPRO_MMEND_X0BFD_RELOC_TILEPRO_MMSTART_X1BFD_RELOC_TILEPRO_MMEND_X1BFD_RELOC_TILEPRO_SHAMT_X0BFD_RELOC_TILEPRO_SHAMT_X1BFD_RELOC_TILEPRO_SHAMT_Y0BFD_RELOC_TILEPRO_SHAMT_Y1BFD_RELOC_TILEPRO_TLS_GD_CALLBFD_RELOC_TILEPRO_TLS_IE_LOADBFD_RELOC_TILEPRO_TLS_TPOFF32BFD_RELOC_TILEGX_HW0BFD_RELOC_TILEGX_HW1BFD_RELOC_TILEGX_HW2BFD_RELOC_TILEGX_HW3BFD_RELOC_TILEGX_HW0_LASTBFD_RELOC_TILEGX_HW1_LASTBFD_RELOC_TILEGX_HW2_LASTBFD_RELOC_TILEGX_COPYBFD_RELOC_TILEGX_GLOB_DATBFD_RELOC_TILEGX_JMP_SLOTBFD_RELOC_TILEGX_RELATIVEBFD_RELOC_TILEGX_BROFF_X1BFD_RELOC_TILEGX_JUMPOFF_X1BFD_RELOC_TILEGX_IMM8_X0BFD_RELOC_TILEGX_IMM8_Y0BFD_RELOC_TILEGX_IMM8_X1BFD_RELOC_TILEGX_IMM8_Y1BFD_RELOC_TILEGX_DEST_IMM8_X1BFD_RELOC_TILEGX_MT_IMM14_X1BFD_RELOC_TILEGX_MF_IMM14_X1BFD_RELOC_TILEGX_MMSTART_X0BFD_RELOC_TILEGX_MMEND_X0BFD_RELOC_TILEGX_SHAMT_X0BFD_RELOC_TILEGX_SHAMT_X1BFD_RELOC_TILEGX_SHAMT_Y0BFD_RELOC_TILEGX_SHAMT_Y1BFD_RELOC_TILEGX_IMM16_X0_HW0BFD_RELOC_TILEGX_IMM16_X1_HW0BFD_RELOC_TILEGX_IMM16_X0_HW1BFD_RELOC_TILEGX_IMM16_X1_HW1BFD_RELOC_TILEGX_IMM16_X0_HW2BFD_RELOC_TILEGX_IMM16_X1_HW2BFD_RELOC_TILEGX_IMM16_X0_HW3BFD_RELOC_TILEGX_IMM16_X1_HW3BFD_RELOC_TILEGX_TLS_DTPMOD64BFD_RELOC_TILEGX_TLS_DTPOFF64BFD_RELOC_TILEGX_TLS_TPOFF64BFD_RELOC_TILEGX_TLS_DTPMOD32BFD_RELOC_TILEGX_TLS_DTPOFF32BFD_RELOC_TILEGX_TLS_TPOFF32BFD_RELOC_TILEGX_TLS_GD_CALLBFD_RELOC_TILEGX_TLS_IE_LOADBFD_RELOC_BPF_64BFD_RELOC_BPF_DISP32BFD_RELOC_BPF_DISPCALL32BFD_RELOC_BPF_DISP16BFD_RELOC_EPIPHANY_SIMM8BFD_RELOC_EPIPHANY_SIMM24BFD_RELOC_EPIPHANY_HIGHBFD_RELOC_EPIPHANY_LOWBFD_RELOC_EPIPHANY_SIMM11BFD_RELOC_EPIPHANY_IMM11BFD_RELOC_EPIPHANY_IMM8BFD_RELOC_VISIUM_HI16BFD_RELOC_VISIUM_LO16BFD_RELOC_VISIUM_IM16BFD_RELOC_VISIUM_REL16BFD_RELOC_VISIUM_HI16_PCRELBFD_RELOC_VISIUM_LO16_PCRELBFD_RELOC_VISIUM_IM16_PCRELBFD_RELOC_WASM32_LEB128BFD_RELOC_WASM32_LEB128_GOTBFD_RELOC_WASM32_LEB128_PLTBFD_RELOC_WASM32_PLT_INDEXBFD_RELOC_WASM32_ABS32_CODEBFD_RELOC_WASM32_COPYBFD_RELOC_WASM32_CODE_POINTERBFD_RELOC_WASM32_INDEXBFD_RELOC_WASM32_PLT_SIGBFD_RELOC_CKCORE_NONEBFD_RELOC_CKCORE_ADDR32BFD_RELOC_CKCORE_PCREL32BFD_RELOC_CKCORE_GNU_VTENTRYBFD_RELOC_CKCORE_RELATIVEBFD_RELOC_CKCORE_COPYBFD_RELOC_CKCORE_GLOB_DATBFD_RELOC_CKCORE_JUMP_SLOTBFD_RELOC_CKCORE_GOTOFFBFD_RELOC_CKCORE_GOTPCBFD_RELOC_CKCORE_GOT32BFD_RELOC_CKCORE_PLT32BFD_RELOC_CKCORE_ADDRGOTBFD_RELOC_CKCORE_ADDRPLTBFD_RELOC_CKCORE_ADDR_HI16BFD_RELOC_CKCORE_ADDR_LO16BFD_RELOC_CKCORE_GOTPC_HI16BFD_RELOC_CKCORE_GOTPC_LO16BFD_RELOC_CKCORE_GOTOFF_HI16BFD_RELOC_CKCORE_GOTOFF_LO16BFD_RELOC_CKCORE_GOT12BFD_RELOC_CKCORE_GOT_HI16BFD_RELOC_CKCORE_GOT_LO16BFD_RELOC_CKCORE_PLT12BFD_RELOC_CKCORE_PLT_HI16BFD_RELOC_CKCORE_PLT_LO16BFD_RELOC_CKCORE_ADDRGOT_HI16BFD_RELOC_CKCORE_ADDRGOT_LO16BFD_RELOC_CKCORE_ADDRPLT_HI16BFD_RELOC_CKCORE_ADDRPLT_LO16BFD_RELOC_CKCORE_TOFFSET_LO16BFD_RELOC_CKCORE_DOFFSET_LO16BFD_RELOC_CKCORE_GOTOFF_IMM18BFD_RELOC_CKCORE_GOT_IMM18BY4BFD_RELOC_CKCORE_PLT_IMM18BY4BFD_RELOC_CKCORE_TLS_LE32BFD_RELOC_CKCORE_TLS_IE32BFD_RELOC_CKCORE_TLS_GD32BFD_RELOC_CKCORE_TLS_LDM32BFD_RELOC_CKCORE_TLS_LDO32BFD_RELOC_CKCORE_TLS_DTPMOD32BFD_RELOC_CKCORE_TLS_DTPOFF32BFD_RELOC_CKCORE_TLS_TPOFF32BFD_RELOC_CKCORE_NOJSRIBFD_RELOC_CKCORE_CALLGRAPHBFD_RELOC_CKCORE_IRELATIVEBFD_RELOC_S12Z_OPRBFD_RELOC_LARCH_TLS_DTPMOD32BFD_RELOC_LARCH_TLS_DTPREL32BFD_RELOC_LARCH_TLS_DTPMOD64BFD_RELOC_LARCH_TLS_DTPREL64BFD_RELOC_LARCH_TLS_TPREL32BFD_RELOC_LARCH_TLS_TPREL64BFD_RELOC_LARCH_TLS_DESC32BFD_RELOC_LARCH_TLS_DESC64BFD_RELOC_LARCH_MARK_LABFD_RELOC_LARCH_MARK_PCRELBFD_RELOC_LARCH_SOP_PUSH_DUPBFD_RELOC_LARCH_SOP_ASSERTBFD_RELOC_LARCH_SOP_NOTBFD_RELOC_LARCH_SOP_SUBBFD_RELOC_LARCH_SOP_SLBFD_RELOC_LARCH_SOP_SRBFD_RELOC_LARCH_SOP_ADDBFD_RELOC_LARCH_SOP_ANDBFD_RELOC_LARCH_SOP_IF_ELSEBFD_RELOC_LARCH_SOP_POP_32_UBFD_RELOC_LARCH_ADD8BFD_RELOC_LARCH_ADD16BFD_RELOC_LARCH_ADD24BFD_RELOC_LARCH_ADD32BFD_RELOC_LARCH_ADD64BFD_RELOC_LARCH_SUB8BFD_RELOC_LARCH_SUB16BFD_RELOC_LARCH_SUB24BFD_RELOC_LARCH_SUB32BFD_RELOC_LARCH_SUB64BFD_RELOC_LARCH_B16BFD_RELOC_LARCH_B21BFD_RELOC_LARCH_B26BFD_RELOC_LARCH_ABS_HI20BFD_RELOC_LARCH_ABS_LO12BFD_RELOC_LARCH_ABS64_LO20BFD_RELOC_LARCH_ABS64_HI12BFD_RELOC_LARCH_PCALA_HI20BFD_RELOC_LARCH_PCALA_LO12BFD_RELOC_LARCH_PCALA64_LO20BFD_RELOC_LARCH_PCALA64_HI12BFD_RELOC_LARCH_GOT_PC_HI20BFD_RELOC_LARCH_GOT_PC_LO12BFD_RELOC_LARCH_GOT64_PC_LO20BFD_RELOC_LARCH_GOT64_PC_HI12BFD_RELOC_LARCH_GOT_HI20BFD_RELOC_LARCH_GOT_LO12BFD_RELOC_LARCH_GOT64_LO20BFD_RELOC_LARCH_GOT64_HI12BFD_RELOC_LARCH_TLS_LE_HI20BFD_RELOC_LARCH_TLS_LE_LO12BFD_RELOC_LARCH_TLS_LE64_LO20BFD_RELOC_LARCH_TLS_LE64_HI12BFD_RELOC_LARCH_TLS_IE_HI20BFD_RELOC_LARCH_TLS_IE_LO12BFD_RELOC_LARCH_TLS_IE64_LO20BFD_RELOC_LARCH_TLS_IE64_HI12BFD_RELOC_LARCH_TLS_LD_HI20BFD_RELOC_LARCH_TLS_GD_HI20BFD_RELOC_LARCH_32_PCRELBFD_RELOC_LARCH_RELAXBFD_RELOC_LARCH_DELETEBFD_RELOC_LARCH_ALIGNBFD_RELOC_LARCH_PCREL20_S2BFD_RELOC_LARCH_CFABFD_RELOC_LARCH_ADD6BFD_RELOC_LARCH_SUB6BFD_RELOC_LARCH_ADD_ULEB128BFD_RELOC_LARCH_SUB_ULEB128BFD_RELOC_LARCH_64_PCRELBFD_RELOC_LARCH_CALL36BFD_RELOC_LARCH_TLS_DESC_HI20BFD_RELOC_LARCH_TLS_DESC_LO12BFD_RELOC_LARCH_TLS_DESC_LDBFD_RELOC_LARCH_TLS_DESC_CALLBFD_RELOC_LARCH_TLS_LE_HI20_RBFD_RELOC_LARCH_TLS_LE_ADD_RBFD_RELOC_LARCH_TLS_LE_LO12_R../../bfd/section.c.%d*COM**UND**IND* %c%c%c%c%c%c%c.drectve.$0123456789unsupported .stab relocation.edata.idata.pdatai[3-7]86-*-elf*unknown file formatECOFFXCOFFELFTekhexSrecVerilogIhexSOMMSDOSEvaxmmoMACH_OPEFPEF_XLIB../../bfd/targets.ci[3-7]86-*-rtems*i[3-7]86-*-genode*i[3-7]86-*-nto*i[3-7]86-*-aros*i[3-7]86-*-dicos*i[3-7]86-*-dragonfly*i[3-7]86-*-netbsd*i[3-7]86-*-knetbsd*-gnui[3-7]86-*-openbsd*i[3-7]86-*-linux-*i[3-7]86-*-redox*x86_64-*-dicos*x86_64-*-elf*x86_64-*-rtems*x86_64-*-fuchsiax86_64-*-genode*x86_64-*-dragonfly*x86_64-*-haiku*x86_64-*-netbsd*x86_64-*-openbsd*x86_64-*-linux-*x86_64-*-mingw*x86_64-*-pex86_64-*-pepx86_64-*-cygwinx86_64-*-rdos*x86_64-*-redox*x86_64-*-gnu*i[3-7]86-*-lynxos*i[3-7]86-*-gnu*i[3-7]86-*-moss*i[3-7]86-*-beos*i[3-7]86-*-haiku*i[3-7]86-*-interix*i[3-7]86-*-rdos*ia16-*-elf_binary_%s_%s../../bfd/ihex.c.sec%dihex %-5s %s$$ $$ $%lx ../../bfd/srec.csymbolsrec../../bfd/tekhex.c%0781010 tekhexverilog../../bfd/elf64-x86-64.cGLIBC_ABI_DT_RELRGLIBC_2.36.reg.lrodata.ldataR_X86_64_IRELATIVER_X86_64_RELATIVELARGE_COMMON.plt.got.plt.sec.plt.bndR_X86_64_32hidden symbol internal symbol protected symbol undefined a PIE objecta PDE objecta shared object; recompile with -fPIC; recompile with -fPIER_X86_64_TLSDESC_CALLhidden symbolinternal symbolprotected symbolfunctionR_X86_64_RELATIVE64%F%P: corrupt input: %pB %pB: bad symbol index: %delf64-x86-64-sol2elf64-x86-64-freebsdelf64-x86-64-cloudabi.gnu.linkonce.lb.gnu.linkonce.lr.gnu.linkonce.lt.lbssR_X86_64_NONER_X86_64_64R_X86_64_PC32R_X86_64_GOT32R_X86_64_PLT32R_X86_64_COPYR_X86_64_GLOB_DATR_X86_64_JUMP_SLOTR_X86_64_GOTPCRELR_X86_64_32SR_X86_64_16R_X86_64_PC16R_X86_64_8R_X86_64_PC8R_X86_64_DTPMOD64R_X86_64_DTPOFF64R_X86_64_TPOFF64R_X86_64_TLSGDR_X86_64_TLSLDR_X86_64_DTPOFF32R_X86_64_GOTTPOFFR_X86_64_TPOFF32R_X86_64_PC64R_X86_64_GOTOFF64R_X86_64_GOTPC32R_X86_64_GOT64R_X86_64_GOTPCREL64R_X86_64_GOTPC64R_X86_64_GOTPLT64R_X86_64_PLTOFF64R_X86_64_SIZE32R_X86_64_SIZE64R_X86_64_GOTPC32_TLSDESCR_X86_64_TLSDESCR_X86_64_PC32_BNDR_X86_64_PLT32_BNDR_X86_64_GOTPCRELXR_X86_64_REX_GOTPCRELXR_X86_64_CODE_4_GOTPCRELXR_X86_64_CODE_4_GOTTPOFFR_X86_64_CODE_5_GOTPCRELXR_X86_64_CODE_5_GOTTPOFFR_X86_64_CODE_6_GOTPCRELXR_X86_64_CODE_6_GOTTPOFFR_X86_64_GNU_VTINHERITR_X86_64_GNU_VTENTRY.rela%pB: x86 ISA needed: %pB: x86 ISA used: x86-64-v2x86-64-v3x86-64-v4../../bfd/elfxx-x86.c/lib/ld64.so.1RAX/lib/ldx32.so.1/usr/lib/libc.so.1___tls_get_addrR_386_RELATIVEEAX__bss_start_end_edata.tls_vars_TLS_MODULE_BASE_*unknown*.got.plt%X%P: %pB: error: missing %s %P: %pB: warning: missing %s IBT and SHSTK propertiesIBT propertySHSTK propertyLAM_U48 propertyLAM_U57 property.sframe.rela.ifunc.rel.ifunc.rela.iplt.rel.iplt.igot.plt.igot../../bfd/elf-ifunc.c__GOTT_BASE____GOTT_INDEX__.rela.plt.unloaded.rel.plt.unloaded.tls_data../../bfd/elfcode.hSFRAME.dynamic../../bfd/elf.cFreeBSDNetBSD-COREOpenBSDQNXSPU/GNUstapsdt%s/%ld.shstrtab(*none*)elf %s %-11s .internal .hidden .protected 0x%02x%s%d%s TLS: %pA non-TLS: %pA.symtab.strtab.dynstr.gnu.libstr.symtab_shndx%pB: too many sections: %u.dynsymLOPROC+%7.7xLOOS+%7.7x%8.8x%pB: %s unsupported%s/%d.reg2%s/%i.qnx_core_info.qnx_core_status/%ld.qnx_core_status.reg-xfp.auxv.wcookie.note.netbsdcore.procinfo.note.netbsdcore.lwpstatus.thrmisc.note.freebsdcore.proc.note.freebsdcore.files.note.freebsdcore.vmmap.reg-x86-segbases.reg-xstate.note.freebsdcore.lwpinfo.reg-aarch-tls.reg-arm-vfpwin32NOTE_INFO_PROCESSNOTE_INFO_THREADNOTE_INFO_MODULENOTE_INFO_MODULE64.reg/%ld.module/%08lx.module/%016lxLINUX.reg-ppc-vmx.reg-ppc-vsx.reg-ppc-tar.reg-ppc-ppr.reg-ppc-dscr.reg-ppc-ebb.reg-ppc-pmu.reg-ppc-tm-cgpr.reg-ppc-tm-cfpr.reg-ppc-tm-cvmx.reg-ppc-tm-cvsx.reg-ppc-tm-spr.reg-ppc-tm-ctar.reg-ppc-tm-cppr.reg-ppc-tm-cdscr.reg-s390-high-gprs.reg-s390-timer.reg-s390-todcmp.reg-s390-todpreg.reg-s390-ctrs.reg-s390-prefix.reg-s390-last-break.reg-s390-system-call.reg-s390-tdb.reg-s390-vxrs-low.reg-s390-vxrs-high.reg-s390-gs-cb.reg-s390-gs-bc.reg-arc-v2.reg-aarch-hw-break.reg-aarch-hw-watch.reg-aarch-sve.reg-aarch-pauth.reg-aarch-mte.reg-aarch-ssve.reg-aarch-za.reg-aarch-ztGDB.gdb-tdesc.reg-riscv-csr.reg-loongarch-cpucfg.reg-loongarch-lbt.reg-loongarch-lsx.reg-loongarch-lasx.note.linuxcore.file.note.linuxcore.siginfoshlib.rel.plt.rela.plt.debug.gnu.debuglto_.debug_.gnu.linkonce.wi..zdebug.gnu.build.attributes.note.gnu.line.gdb_index.gnu.linkonce Program Header: %8s off 0x vaddr 0x paddr 0x align 2**%u filesz 0x memsz 0x flags %c%c%c %lx Dynamic Section: %-20s %#lxGNU_HASHFILTERUSEDAUXILIARYVERNEEDNUMVERNEEDVERDEFNUMVERDEFVERSYMFLAGS_1RELCOUNTRELACOUNTSYMINFOMOVETABPLTPADDEPAUDITCONFIGSYMINENTSYMINSZPOSFLAG_1MOVESZMOVEENTPLTPADSZCHECKSUMPREINIT_ARRAYSZRUNPATHFINI_ARRAYSZBIND_NOWJMPRELTEXTRELRELRENTRELRSZRELENTSYMBOLICRPATHSONAMEFINIINITSYMENTSTRSZRELAENTRELASZPLTGOTPLTRELSZ Version definitions: %d 0x%2.2x 0x%8.8lx %s Version References: required from %s: .zdebug_line.zdebug_info.zdebug_abbrev.zdebug_aranges.tbss.rodata1.relr.dyn.relro_padding.persistent.bss.persistent.preinit_array.noinit.gnu.linkonce.b.gnu.linkonce.n.gnu.linkonce.p.gnu.lto_.gnu.version.gnu.version_d.gnu.version_r.gnu.liblist.gnu.conflict.gnu.hash.data1.debug_line.debug_info.debug_abbrev.debug_arangesSHT_NULLSHT_SYMTABSHT_RELASHT_HASHSHT_DYNAMICSHT_RELSHT_SHLIBSHT_DYNSYM../../bfd/elflink.c.endlibc.so.GLIBC_2.~division by zero^.rela.got.rel.got_GLOBAL_OFFSET_TABLE_.rela.bss.rel.bss.rela.data.rel.ro.rel.data.rel.ro_PROCEDURE_LINKAGE_TABLE_.dynbss.tcommon%!%pB: %s not absolute%s: undefined version: %s.MIPS.xhash.eh_frame..gcc_except_tableELFCLASS64ELFCLASS32ELFCLASSNONE.gnu.attributescould not find section %s.debug_line.__patchable_function_entries.gnu.linkonce..gnu.linkonce.r.SHF_WRITESHF_ALLOCSHF_EXECINSTRSHF_MERGESHF_STRINGSSHF_INFO_LINKSHF_LINK_ORDERSHF_OS_NONCONFORMINGSHF_GROUPSHF_TLSSHF_MASKOSSHF_EXCLUDE../../bfd/elf-attrs.cerror adding attribute../../bfd/elf-strtab.c../../bfd/elf-eh-frame.c__GNU_EH_FRAME_HDR%pB: %pA not in order.eh_frame_hdr entry overflow../../bfd/elf-sframe.c%s/%s/%s../../bfd/dwarf2.c.debug_frame.zdebug_frame.debug_loc.zdebug_loc.debug_macinfo.zdebug_macinfo.debug_macro.zdebug_macro.debug_pubnames.zdebug_pubnames.debug_pubtypes.zdebug_pubtypes.zdebug_ranges.debug_rnglists.zdebug_rnglist.debug_static_func.zdebug_static_func.debug_static_vars.zdebug_static_vars.zdebug_str.debug_str_offsets.zdebug_str_offsets.debug_addr.zdebug_addr.debug_line_str.zdebug_line_str.debug_types.zdebug_types.debug_sfnames.zdebug_sfnames.debug_srcinfo.zebug_srcinfo.debug_funcnames.zdebug_funcnames.debug_typenames.zdebug_typenames.debug_varnames.zdebug_varnames.debug_weaknames.zdebug_weaknames../../bfd/elf32-i386.c.relocR_386_IRELATIVER_386_TLS_DESC_CALLelf32-i386-vxworkself32-i386-sol2elf32-i386-freebsdR_386_NONER_386_32R_386_PC32R_386_GOT32R_386_PLT32R_386_COPYR_386_GLOB_DATR_386_JUMP_SLOTR_386_GOTOFFR_386_GOTPCR_386_TLS_TPOFFR_386_TLS_IER_386_TLS_GOTIER_386_TLS_LER_386_TLS_GDR_386_TLS_LDMR_386_16R_386_PC16R_386_8R_386_PC8R_386_TLS_LDO_32R_386_TLS_IE_32R_386_TLS_LE_32R_386_TLS_DTPMOD32R_386_TLS_DTPOFF32R_386_TLS_TPOFF32R_386_SIZE32R_386_TLS_GOTDESCR_386_TLS_DESCR_386_GOT32XR_386_GNU_VTINHERITR_386_GNU_VTENTRY../../bfd/coff-i386.c../../bfd/coffcode.h../../bfd/peicode.h%pB: too many sections (%d).lib.bf.idata$4.idata$5.idata$6__IMPORT_DESCRIPTOR_pei-.gnu.linkonce.wt. warning:STYP_GROUPSTYP_COPYIMAGE_SCN_MEM_NOT_CACHEDIMAGE_SCN_LNK_OTHERSTYP_OVERSTYP_DSECTIMAGE_SCN_MEM_NOT_PAGED.sbssdir32rva32secidxsecrel32../../bfd/peXXigen.c%03x %*.s TypeLanguage %03x %*.s Entry: name: [val: %08lx len %d]: ^%c%.1s ID: %#08lx, Value: %#08lx (resource id range: %d - %d).rsrc%pB:%.8s: RVA truncated(none)Unknown%2d %2d %08x (%s) PE32ROMPE32+unspecifiedXBOXSAL runtime driverEFI runtime driverEFI boot service driverEFI applicationWince CUIPOSIX CUIWindows CUIWindows GUINT native Characteristics 0x%x relocations stripped %s line numbers strippedsymbols strippedlarge address awarelittle endian32 bit wordsdebugging information removedsystem fileDLLbig endian Time/Date %08lx Time/Date %sMagic %04x (%s) MajorLinkerVersion %d MinorLinkerVersion %d SizeOfCode SizeOfInitializedData SizeOfUninitializedData AddressOfEntryPoint BaseOfCode BaseOfData ImageBase SectionAlignment %08x FileAlignment %08x MajorOSystemVersion %d MinorOSystemVersion %d MajorImageVersion %d MinorImageVersion %d MajorSubsystemVersion %d MinorSubsystemVersion %d Win32Version %08x SizeOfImage %08x SizeOfHeaders %08x CheckSum %08x Subsystem %08x DllCharacteristics %08x %sHIGH_ENTROPY_VA %sDYNAMIC_BASE %sFORCE_INTEGRITY %sNX_COMPAT %sNO_ISOLATION %sNO_SEH %sNO_BIND %sAPPCONTAINER %sWDM_DRIVER %sGUARD_CF %sTERMINAL_SERVICE_AWARE SizeOfStackReserve SizeOfStackCommit SizeOfHeapReserve SizeOfHeapCommit LoaderFlags %08lx NumberOfRvaAndSizes %08lx The Data Directory Entry %1x %08lx %08lx DLL Name: %.*s %08lx %5u %08lx %04x %.*sExport Flags %lx Time/Date stamp %lx Major/Minor %d/%d Name (outside .edata section) Ordinal Base %ld Number in: Table Addresses Export Address Table Name Pointer Table Ordinal Table Forwarder RVAExport RVA [%4ld] +base[%4ld] %08lx %s %x (%4x)__tls_used.idata$2__IAT_start____IAT_end__CodeViewFPOMiscExceptionFixupOMAP-to-SRCOMAP-from-SRCBorlandReservedCLSIDFeatureCoffGrpILTCGMPXReproHIGHLOWHIGHADJMIPS_JMPADDRRESERVED1MIPS_JMPADDR16DIR64HIGH3ADJResource Directory [.rsrc]Exception Directory [.pdata]Security DirectoryDebug DirectoryDescription DirectorySpecial DirectoryLoad Configuration DirectoryBound Import DirectoryDelay Import DirectoryCLR Runtime Header../../bfd/cofflink.c-attr-heap-aligncomm:strange../../bfd/coffgen.ccoff %s %s[%3ld] %sFile ftype %d fname "%s"AUX scnlen %#lx nreloc %ld endndx %ld %s : %4d : %-5s %s %s %s.vectors.xdata../../bfd/coff-x86_64.c__ImageBase__executable_startpe-bigobj-x86-64.rdataIMAGE_REL_AMD64_ADDR64IMAGE_REL_AMD64_ADDR32IMAGE_REL_AMD64_ADDR32NBIMAGE_REL_AMD64_REL32IMAGE_REL_AMD64_REL32_1IMAGE_REL_AMD64_REL32_2IMAGE_REL_AMD64_REL32_3IMAGE_REL_AMD64_REL32_4IMAGE_REL_AMD64_REL32_5IMAGE_REL_AMD64_SECTIONIMAGE_REL_AMD64_SECRELsmallersame %016lx: %016lx %016lx has negative begin address has negative end address Dump of %s shares information with pdata element at 0x%016lxunknown pdata element Version %u (unknown). Version: %d, Flags: %03x: %02xUNW_FLAG_EHANDLERUNW_FLAG_UHANDLER Nbr codes: %u, Frame reg: %s Too many unwind codes (%ld) warning: corrupt unwind data [pad] pc+0x%02x: push %ssave %s at rsp + 0x%xsave mm%u at rsp + 0x%xepilog %02x %01xsave xmm%u at rsp + 0x%x,ErrorCode), unknown(%u))Unknown: %x [Unexpected!] Handler: %016lx. unwind data: %016lx. User data: UNW_FLAG_CHAININFOunknown flags value 0x%xraxrcxrdxrbxrsprbprsirdir8r9r10r11r12r13r14r15../../bfd/plugin.cbfd plugin: plugi8086i386:inteli386:x86-64:inteli386:x64-32:inteliamcu:intel../../bfd/cache.cw+reopening %pB: %s../../bfd/merge.c../../bfd/stabs.c../../libctf/ctf-create.c(unnamed member)Unknown error%s#%liopening CTF %s failedunnamed-CUiterating over data symbols../../libctf/ctf-link.c(unnamed)one_outnoutputs == 1deduplication failed for %soutputs[0] == fpdid->cid_sym.st_name != NULLsymbol from linker: %s (%x) archive writinghash creationCTF archive buffer allocationfilepos resettingfilesize determinationseeking to endtempfile creationctf_dict reallocationname reallocation../../libctf/ctf-lookup.c!sym.st_nameidx_setcannot sort function symidxcannot sort object symidx%s not found in idx !sym->st_nameidx_setautoregister_Restrictctf_set_base: CU name %s loaded %lu symtab entries detected invalid CTF kind: %x../../libctf/ctf-open.csize == v2sizevbytes == v2bytesCTF dict %p is a child CTF dict %p is a parent fp->ctf_typemax == typemax%lu total types processed %zu enum names hashed ctf_dict_close(%p) refcnt=%u flipping endianness vbytes == 0structenumoverlapping CTF sectionszlib inflate err: %sPARENTILP32LP64_START__END_../../libctf/ctf-serialize.cthis_link_sym != NULLerror serializing symtypetabsi == nvarsLIBCTF_WRITE_FOREIGN_ENDIANzlib deflate err: %s(?)../../libctf/ctf-string.cout_of_memory == 0atomLIBCTF_DEBUGlibctf DEBUG: CTF debugging set to %i %s: %s (%s) ../../libctf/ctf-types.ctype %lx cycle detected(i->ctn_next == NULL)[%u](*) (struct %sunion %senum %s(nonrepresentable type)(nonrepresentable type %s)cannot close BFD: %scannot read string tablecannot malloc symbol tableCTF section is NULLcannot read symbol table../../libctf/ctf-open-bfd.cctf_bfdopen(): %s: %s(unknown file)cannot open BFD from %s: %sBFD format problem in %s: %sctf_arc_write(): cannot mmapheadersz is %lu u Marking %s as conflicted ../../libctf/ctf-dedup.c%i/%lx: unimplemented type parents[input_num] <= ninputstarget_idfunction argsfloat/inttypedefpointer or cvr-qualsliceunknown typeforwardstructure/unionone_type != two_typeerror doing memory allocationWalking: unimplemented type ID %i/%lx has hash %s hashvalcannot walk conflicted typeerror getting func type infoerror getting func arg typeerror getting encodingerror getting array infoerror: unknown type kinderror tracking citerscannot intern hasherror updating citerserror hash caching00000000000000000000scanning for ambiguous namesInput %i: %s Computing type hashes iteration failed: %stype_idstype_idconflictifying unshared typesTriggering emission. Populating struct members. found != 0hval != NULL../../libsframe/sframe.coffset_size = %u SFRAME_DEBUG%u total fidx size %u total fre bytes fre_size == ehp->sfh_fre_lenglobal == ehp->sfh_num_fresOabs'Read'Write'Input'Output.Finalize.Adjust_elabb_ada_<%s>'Elab_Body_elabs'Elab_Spec_size'Size_alignment'Alignment_assign.":="OandOmodOnotOorOremOxorOeqOneOltOleOgtOgeOaddOsubtractOconcatOmultiplyOdivideOexpon**Demangling disabledgnu-v3javaJava style demanglinggnatGNAT style demanglingdlangDLANG style demanglingrustRust style demangling$TT$T$N(anonymous namespace)[abi:{default arg#}::JArrayauto:initializer for module VTT for construction vtable for -in-typeinfo for typeinfo name for typeinfo fn for non-virtual thunk to covariant return thunk to java Class for guard variable for TLS init function for TLS wrapper function for reference temporary #hidden alias for non-transaction clone for operatoroperator >(clqunew ulfalsetruejava resource decltype (this{parm#global constructors keyed to global destructors keyed to {lambda)#{unnamed type# [clone [friend]typenametemplate class requires restrict volatile const transaction_safe noexcept throw _Complex _Imaginary::* __vector(this (......) ... decltype(auto)string literaldecltype(nullptr)_GLOBAL_std::allocatorstd::basic_stringstd::stringstd::istreambasic_istreamstd::ostreambasic_ostreamstd::iostreambasic_iostreamboolbooleanbytelong doublefloat__float128unsigned charunsigned intunsignedunsigned longunsigned __int128unsigned shortvoidwchar_tunsigned long longdecimal32decimal64decimal128halfchar8_tchar16_tchar32_t_Floatstd::bfloat16_taNaSaaalignof awco_await azccconst_castcm,codVdX[...]=delete[] dynamic_castdldelete .*dveOeofLfRflfrlSoperator"" mImLmimlmm--nanew[]nwnxoRoopLplpm->*pp->?rM%=rSreinterpret_castsPsizeof...static_cast<=>sizeof sztwthrow $`"\ ""NINF__ctor__dtor__initZinitializer for __vtblZ__ClassZClassInfo for __postblitMFZ__InterfaceZInterface for __ModuleInfoZModuleInfo for _DmainPWD/tmpTMPDIRTMPTEMPpex_get_status failedposix_spawnattr_initposix_spawnattr_setflagsposix_spawn_file_actions_initposix_spawnpposix_spawnclosewaiti8i16i32i64i128isizeu8u16u32u64u128usizef32f64for<\t\r\n\u{mut const ; unsafe extern "fn( -> dyn + ::{closureshim as 17hundocumented error #%dXXXXXXclosing pipeline input fileopen temporary filepipeline already completepipeopen temporary output fileopen error filewbrb-+ #0out of memoryunknown header flags setunknown compression methodincorrect header checkinvalid window sizeheader crc mismatchinvalid block typeinvalid stored block lengthsinvalid code lengths setinvalid literal/lengths setinvalid distances setinvalid literal/length codeinvalid distance codeinvalid distance too far backincorrect data checkincorrect length checkinvalid bit length repeatneed dictionarystream endfile errorstream errordata errorinsufficient memorybuffer errorincompatible version%P:%s: file format not recognized; treating as linker script Reducing stack by rule %d (line %d): %F%P: unrecognised keyword in MRI style script '%s' %X%P:%pS: unknown phdr type `%s' (try integer literal) %X%P:%pS: PHDRS syntax error at `%s' %F%s: file not recognized: %E %P:%pS: ignoring invalid character `%s'%s out of dynamic memory in yyensure_buffer_stack()out of dynamic memory in yy_create_buffer()fatal flex scanner internal error--end of buffer missedfatal error - scanner input buffer overflow%F%P: read in flex scanner failed out of dynamic memory in yy_get_next_buffer()fatal flex scanner internal error--no action foundout of dynamic memory in yy_scan_buffer()out of dynamic memory in yy_scan_bytes()%F:includes nested too deeply %F%P: invalid hex number `%s' %F%P: Error: unable to disambiguate: %s (did you mean -%s ?) %P: Warning: grouped short command line options are deprecated: %s %F%P: use the --help option for usage information %F%P: unrecognized -a option `%s' %F%P: unrecognized -assert option `%s' %F%P: unknown demangling style `%s' %s: emulation specific options: --ld-generated-unwind-info Generate exception handling info for PLT --no-ld-generated-unwind-info Don't generate exception handling info for PLT --build-id[=STYLE] Generate build ID note Styles: none,md5,sha1,uuid,0xHEX --package-metadata[=JSON] Generate package metadata note --compress-debug-sections=[none|zlib|zlib-gnu|zlib-gabi|zstd] Compress DWARF debug sections Default: %s -z common-page-size=SIZE Set common page size to SIZE -z max-page-size=SIZE Set maximum page size to SIZE -z defs Report unresolved symbols in object files -z undefs Ignore unresolved symbols in object files -z muldefs Allow multiple definitions -z stack-size=SIZE Set size of stack segment -z execstack Mark executable as requiring executable stack -z noexecstack Mark executable as not requiring executable stack --warn-execstack-objects Generate a warning if an object file requests an executable stack --warn-execstack Generate a warning if creating an executable stack (default) --no-warn-execstack Do not generate a warning if creating an executable stack --error-execstack Turn warnings about executable stacks into errors --no-error-execstack Do not turn warnings about executable stacks into errors --warn-rwx-segments Generate a warning if a LOAD segment has RWX permissions (default) --no-warn-rwx-segments Do not generate a warning if a LOAD segments has RWX permissions --error-rwx-segments Turn warnings about loadable RWX segments into errors --no-error-rwx-segments Do not turn warnings about loadable RWX segments into errors -z unique-symbol Avoid duplicated local symbol names -z nounique-symbol Keep duplicated local symbol names (default) -z globalaudit Mark executable requiring global auditing -z start-stop-gc Enable garbage collection on __start/__stop -z nostart-stop-gc Don't garbage collect __start/__stop (default) -z start-stop-visibility=V Set visibility of built-in __start/__stop symbols to DEFAULT, PROTECTED, HIDDEN or INTERNAL -z sectionheader Generate section header (default) -z nosectionheader Do not generate section header --audit=AUDITLIB Specify a library to use for auditing -Bgroup Selects group name lookup rules for DSO --disable-new-dtags Disable new dynamic tags --enable-new-dtags Enable new dynamic tags --eh-frame-hdr Create .eh_frame_hdr section --no-eh-frame-hdr Do not create .eh_frame_hdr section --exclude-libs=LIBS Make all symbols in LIBS hidden --hash-style=STYLE Set hash style to sysv/gnu/both. Default: -P AUDITLIB, --depaudit=AUDITLIB Specify a library to use for auditing dependencies -z combreloc Merge dynamic relocs into one section and sort -z nocombreloc Don't merge dynamic relocs into one section -z global Make symbols in DSO available for subsequently loaded objects -z initfirst Mark DSO to be initialized first at runtime -z interpose Mark object to interpose all DSOs but executable -z unique Mark DSO to be loaded at most once by default, and only in the main namespace -z nounique Don't mark DSO as a loadable at most once -z lazy Mark object lazy runtime binding (default) -z loadfltr Mark object requiring immediate process -z nocopyreloc Don't create copy relocs -z nodefaultlib Mark object not to use default search paths -z nodelete Mark DSO non-deletable at runtime -z nodlopen Mark DSO not available to dlopen -z nodump Mark DSO not available to dldump -z now Mark object non-lazy runtime binding -z origin Mark object requiring immediate $ORIGIN processing at runtime -z relro Create RELRO program header (default) -z norelro Don't create RELRO program header -z separate-code Create separate code program header (default) -z noseparate-code Don't create separate code program header --rosegment With -z separate-code, create a single read-only segment --no-rosegment With -z separate-code, creste two read-only segments (default) -z common Generate common symbols with STT_COMMON type -z nocommon Generate common symbols with STT_OBJECT type -z text Treat DT_TEXTREL in output as error (default) -z text Treat DT_TEXTREL in output as error -z notext Don't treat DT_TEXTREL in output as error (default) -z textoff Don't treat DT_TEXTREL in output as error (default) -z notext Don't treat DT_TEXTREL in output as error -z textoff Don't treat DT_TEXTREL in output as error -z memory-seal Mark object be memory sealed -z nomemory-seal Don't mark oject to be memory sealed (default) %F%P: bad --unresolved-symbols option: %s %F%P: unrecognised option: %s %F%P: -r and %s may not be used together %P: SONAME must not be empty string; keeping previous one %F%P: invalid common section sorting option: %s %F%P: invalid section sorting option: %s %P: warning: section ordering file changed. Ignoring earlier definition %F%P: invalid argument to option "--section-start" %F%P: missing argument(s) to option "--section-start" %F%P: group ended before it began (--help for usage) %F%P: failed to add remap file %s %F%P: invalid argument to option --remap-inputs %F%P: invalid cache memory size: %s %X%P: --hash-size needs a numeric argument %F%P: no state pushed before popping %F%P: invalid argument to option "--orphan-handling" %F%P: bad --ctf-share-types option: %s %P: no file/directory name provided for map output; ignored %P: cannot stat linker map file: %E %P: linker map file is not a regular file %P: SONAME must not be empty string; ignored BR_COMPILER_PARANOID_UNSAFE_PATH%P: missing --end-group; added as last command line option %F%P: -r and -z nosectionheader may not be used together %F%P: -F may not be used without -shared %F%P: -f may not be used without -shared Shared library control for HP/UX compatibilitySpecify target for following input filesForce common symbols to be definedForce group members out of groupsUndo the effect of --export-dynamicEnable support of non-contiguous memory regionsenable-non-contiguous-regions-warningsEnable warnings when --enable-non-contiguous-regions may cause unexpected behaviourDisable the LINKER_VERSION linker script directiveEnable the LINKER_VERSION linker script directiveAuxiliary filter for shared object symbol tableFilter for shared object symbol tableSmall data size (if no size, same as --shared)Set internal name of shared librarySet PROGRAM as the dynamic linker to useProduce an executable with no program interpreter headerAdd DIRECTORY to library search pathOverride the default sysroot locationPrint map file on standard outputDo not page align data, do not make text readonlyPage align data, make text readonlySend arg to last-loaded pluginStore plugin intermediate files permanentlyIgnored for GCC LTO option compatibilityIgnored for GCC linker option compatibilityIgnored for gold option compatibilityIgnored for SVR4 compatibilityGenerate relocations in final outputJust link symbols (if directory, same as --rpath)Provide a FILE containing input remapingsRemap input files matching PATTERN to FILEStrip symbols in discarded sectionsDo not strip symbols in discarded sectionsStart with undefined reference to SYMBOLRequire SYMBOL be defined in the final outputDon't merge input [SECTION | orphan] sectionsBuild global constructor/destructor tablesPrint version and emulation informationDiscard temporary local symbols (default)Don't discard any local symbolsDefault search path for Solaris compatibilityAccept input files whose architecture cannot be determinedReject input files whose architecture is unknownOnly set DT_NEEDED for following dynamic libs if usedAlways set DT_NEEDED for dynamic libraries mentioned on the command lineIgnored for SunOS compatibilityDo not link against shared librariesDon't bind global references locallyBind global references locallyBind global function references locallyCheck section addresses for overlaps (default)Do not check section addresses for overlapsCopy DT_NEEDED links mentioned inside DSOs that followDo not copy DT_NEEDED links mentioned inside DSOs that followDemangle symbol names [using STYLE]Do not allow multiple definitions with symbols included in filename invoked by -R or --just-symbolsDo not treat warnings as errors (default)Force generation of file with .exe suffixRemove unused sections (on some targets)Don't remove unused sections (default)List removed unused sections on stderrDo not list removed unused sectionsKeep exported symbols when removing unused sectionsSet default hash table size close to Write a linker map to FILE or DIR/.mapUse less memory and more disk I/ODo not allow unresolved references in object filesDo not display any warning or error messagesAllow unresolved references in shared librariesDo not allow unresolved references in shared libsProvide a script to help with undefined symbol errorsCreate default symbol version for imported symbolsDon't warn about mismatched input filesDon't warn on finding an incompatible libraryCreate an output file even if errors occurOnly use library directories specified on the command lineIgnored for Linux compatibilityReduce memory overheads, possibly taking much longerSet the maximum cache size to SIZE bytesReduce code size by using target specific optimizationsDo not use relaxation techniques to reduce code sizeKeep only symbols listed in FILESet runtime shared library search pathSet link time shared library search pathCreate a position independent executableCreate a position dependent executable (default)Sort common symbols by alignment [in specified order]Sort sections by name or maximum alignmentSort sections by statements in FILEHow many tags to reserve in .dynamic sectionSplit output sections every SIZE octetsSplit output sections every COUNT relocsDisplay target specific optionsUse same format as native linkerHow to handle unresolved symbols. is: ignore-all, report-all, ignore-in-object-files, ignore-in-shared-libsOutput lots of information during linkRead version information scriptTake export symbols list from .exports, using SYMBOL as the version.Add data symbols to dynamic listUse C++ operator new/delete dynamic listRead export dynamic symbol listWarn about duplicate common symbolsWarn if global constructors/destructors are seenWarn if the multiple GP values are usedWarn only once per undefined symbolWarn if start of section changes due to alignmentWarn if output has DT_TEXTREL (default)Warn if an object has alternate ELF machine codeReport unresolved symbols as warningsReport unresolved symbols as errorsInclude all objects from following archivesUse wrapper functions for SYMBOLUnresolved SYMBOL will not cause an error or warningPush state of flags governing input file handlingPop state of flags governing input file handlingControl how orphan sections are handled.Show discarded sections in map file output (default)Do not show discarded sections in map file outputShow local symbols in map file outputDo not show local symbols in map file output (default)Emit names and types of static variables in CTFDo not emit names and types of static variables in CTFHow to share CTF types between translation units. is: share-unconflicted (default), share-duplicatedDo not warn for -L options using system directorieserror-poison-system-directoriesGive an error for -L options using system directories%X%P: address 0x%v of %pB section `%s' is not within region `%s' %X%P: %pB section `%s' will not fit in region `%s' CTF error: cannot get CTF errors: `%s' %F%P: bfd_link_hash_lookup failed: %E %P: invalid origin for memory region %s %P: invalid length for memory region %s %F%P: relocatable linking with relocations from format %s (%pB) to format %s (%pB) is not supported %X%P: %s architecture of input file `%pB' is incompatible with %s output %X%P: failed to merge target specific data of file %pB %X%P: region `%s' overflowed by %lu byte %X%P: region `%s' overflowed by %lu bytes %X%P: section %s VMA wraps around address space %X%P: section %s LMA wraps around address space %X%P: section %s LMA [%V,%V] overlaps section %s LMA [%V,%V] %X%P: section %s VMA [%V,%V] overlaps section %s VMA [%V,%V] %F%P: --gc-sections requires a defined symbol root specified by -e or -u %F%P: %s: can't set start address %F%P: can't set start address %P: warning: cannot find entry symbol %s; defaulting to %V %P: warning: cannot find entry symbol %s; not setting start address failed to create output section%P: warning: CTF section emission failed; output will have no CTF section: %s %F%P: could not define common symbol `%pT': %E Common symbol size file %F%P: invalid reloc statement SORT_BY_NAME(SORT_BY_ALIGNMENT(SORT_BY_ALIGNMENT(SORT_BY_NAME(%P:%pS: warning: --enable-non-contiguous-regions makes section `%pA' from `%pB' match /DISCARD/ clause. %P:%pS: warning: --enable-non-contiguous-regions may change behaviour for section `%pA' from `%pB' (assigned to %pA, but additional match: %pA) %P:%pS: warning: redeclaration of memory region `%s' %P:%pS: warning: memory region `%s' not declared %X%P:%pS: section has both a load address and a load region %F%P:%pS: non constant or forward reference address expression for section %s %X%P: internal error on COFF shared library section %s %F%P: error: no memory region specified for loadable section `%s' %P: warning: no memory region specified for loadable section `%s' %P: warning: start of section %s changed by %ld %P: warning: dot moved backwards before `%s' %F%P: can't relax section: %E %F%P: Output section `%pA' not large enough for the linker-created stubs section `%pA'. %F%P: Relaxation not supported with --enable-non-contiguous-regions (section `%pA' would overflow `%pA' after it changed size). %F%P:%pS: error: alias for default memory region %F%P:%pS: error: memory region `%s' for alias `%s' does not exist %F%P:%pS: error: redefinition of memory region alias `%s' %F%P: failed creating section `%s': %E %F%P: can not create hash table: %E %F%P: illegal use of `%s' section %F%P: output format %s cannot represent section called %s: %E warning: INSERT statement in linker script is incompatible with --enable-non-contiguous-regions. %F%P: %s not found for insert There are no discarded input sections Linker script and memory map %X%P: error: unplaced orphan section `%pA' from `%pB' %P: warning: orphan section `%pA' from `%pB' being placed in section `%s' %F%P: invalid type for output section `%s' %F%P: input file '%s' is the same as output file %P: warning: could not find any targets that match endianness requirement %F%P: cannot open output file %s: %E %F%P: %s: can not make object file: %E %F%P: %s: can not set architecture: %E %F%P: invalid character %c (%d) in flags %P: %pB: file not recognized: %E; matching formats:%F%P: %pB: file not recognized: %E %F%P: %pB: member %pB in archive is not an object %F%P: %pB: error adding symbols: %E %P: warning: %s contains output sections; did you forget -T? %F%P:%pS: error: output section '%s' must already exist %F%P:%pS: error: align with input and explicit align specified %X%P:%pS: PHDRS and FILEHDR are not supported when prior PT_LOAD headers lack them %X%P: unknown language `%s' in version information %X%P: anonymous version tag cannot be combined with other version tags %X%P: duplicate version tag `%s' %X%P: duplicate expression `%s' in version information %F%P: %s: plugin reported error after all symbols read As-needed library included to satisfy reference by file (symbol) %P: warning: CTF section in %pB not loaded; its types will be discarded: %s %P: warning: CTF output not created: `%s' %X%P: unable to read .exports section contents %F%P: bfd_merge_sections failed: %E %P: warning: CTF section in %pB cannot be linked: `%s' %P: warning: CTF linking failed; output will have no CTF section: %s %F%P: no sections assigned to phdrs %F%P: bfd_record_phdr failed: %E %X%P: section `%s' assigned to non-existent phdr `%s' %P: warning: --enable-non-contiguous-regions discards section `%pA' from `%pB' %X%P: required symbol `%s' not defined %X%P: unable to find version dependency `%s' Memory region Used Size Region Size %%age Used error copying private BFD dataerror adding object-only sectioncan't set object-only section sizecan't create object-only sectionerror copying private header data%P%F: Failed to create hash table %P%F:%s: final close failed on object-only output: %E %P%F:%s: cannot open object-only output: %E %P%F:%s: cannot stat object-only output: %E %P%F:%s: read failed on object-only output: %E %P%F: failed to finish output with object-only section %P%F: failed to rename output with object-only section %P%F: failed to add object-only section: %s %P%F: cannot extract object-only section from %B: %E %X%P: different relocs used in set %s %X%P: different object file formats composing set %s %X%P: %s does not support reloc %s for set %s %X%P: special section %s does not support reloc %s for set %s %X%P: unsupported size %d for set %s %X%H: reloc refers to symbol `%pT' which is not being output %X%H: dangerous relocation: %s %P: %C: warning: multiple definition of `%pT'%X%P: %C: multiple definition of `%pT'%P: disabling relaxation; it will not work with multiple definitions %pI: no new IR symbols to claim Archive member included to satisfy reference by file (symbol) /home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/sysroot additional relocation overflows omitted from the output relocation truncated to fit: %s against undefined symbol `%pT' relocation truncated to fit: %s against symbol `%pT' defined in %pA section in %pB relocation truncated to fit: %s against `%pT'%F%P: %pB: could not read relocs: %E %P: warning: global constructor %s used %F%P: BFD backend error: BFD_RELOC_CTOR unsupported %P: %pB: warning: definition of `%pT' overriding common from %pB %P: %pB: warning: definition of `%pT' overriding common %P: %pB: warning: common of `%pT' overridden by definition from %pB %P: %pB: warning: common of `%pT' overridden by definition %P: %pB: warning: common of `%pT' overridden by larger common from %pB %P: %pB: warning: common of `%pT' overridden by larger common %P: %pB: warning: common of `%pT' overriding smaller common from %pB %P: %pB: warning: common of `%pT' overriding smaller common %P: %pB and %pB: warning: multiple common of `%pT' %P: %pB: warning: multiple common of `%pT' %F%P: %pB: could not read symbols: %E %F%P: fatal error: libbfd ABI mismatch /home/wildlama/miniconda3/envs/lam_a2e/bin/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/bin%X%P: can't set BFD default target to `%s': %E using external linker script: %s ================================================== %F%P: --no-define-common may not be used without -shared %F%P: cannot open map file %s: %E %F%P: cannot open dependency file %s: %E %P: link errors found, deleting executable `%s' %F%P: %s: final close failed: %E %F%P: unable to open for source of copy `%s' %F%P: unable to open for destination of copy `%s' %s: total time in link: %ld.%06ld %F%P: bfd_hash_table_init failed: %E %F%P: bfd_hash_lookup failed: %E %P: About to run error handling script '%s' with arguments: '%s' '%s' %P: Failed to run error handling script '%s', reason: %X%P: %H: undefined reference to `%pT' %P: %H: warning: undefined reference to `%pT' %X%P: %D: more undefined references to `%pT' follow %P: %D: warning: more undefined references to `%pT' follow %X%P: %pB: undefined reference to `%pT' %P: %pB: warning: undefined reference to `%pT' %X%P: %pB: more undefined references to `%pT' follow %P: %pB: warning: more undefined references to `%pT' follow %X%P: error: duplicate retain-symbols-file %F%P: bfd_hash_lookup for insertion failed: %E %P: `-retain-symbols-file' overrides `-s' and `-S' %F%P: bfd_new_link_order failed: %E %F%P: cannot create split section name for %s %F%P: clone section failed: %E %F%P: bfd_hash_allocate failed creating symbol %s %P: warning: address of `%s' isn't multiple of maximum page size %F%P:%pS can not PROVIDE assignment to location counter %F%P:%pS invalid assignment to location counter %F%P:%pS assignment to location counter invalid outside of SECTIONS %F%P:%pS cannot move location counter backwards (from %V to %V) %F%P:%s: hash creation failed %F%P: bfd_hash_lookup failed creating symbol %s %X%P:%pS: unresolvable symbol `%s' referenced in expression %F%P:%pS: undefined symbol `%s' referenced in expression %F%P:%pS: undefined section `%s' referenced in expression %F%P:%pS: undefined MEMORY region `%s' referenced in expression %F%P:%pS: unknown constant `%s' referenced in expression %F%P:%pS: nonconstant expression for %s %P: unrecognised emulation mode: %s no emulation specific options. Copyright (C) 2025 Free Software Foundation, Inc.This program is free software; you may redistribute it under the terms of the GNU General Public License version 3 or (at your option) a later version. This program has absolutely no warranty.%P: internal error: aborting at %s:%d in %s %P: internal error: aborting at %s:%d %P: error: unsupported option: %s %F%P: malformed remap file entry: %s remap input file '%s' to '%s' based upon pattern '%s' remove input file '%s' based upon pattern '%s' remap input file '%s' to '%s' %F%P: error: linker script file '%s' appears multiple times /home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib%F%P: cannot open linker script file %s: %E %F%P: invalid BFD target `%s' %P: skipping incompatible %s when searching for %s %F%P: attempted static link of dynamic object `%s' %P: have you installed the static version of the %s library ? %P: note to link with %s use -l:%s or rename it to lib%s %F%P: cannot represent machine `%s' %X%P: %H: prohibited cross reference from %s to `%pT' in %s %P: symbol `%pT' missing from main hash table %X%P: bfd_hash_table_init of cref table failed: %E %X%P: cref_hash_lookup failed: %E %F%P: plugin_strdup failed to allocate memory: %s %F%P: unsupported input file size: %s (%ld bytes) %F%P: %s: non-ELF symbol in ELF BFD! %F%P: unknown ELF symbol visibility: %d! %F%P: could not create dummy IR bfd: %E %F%P: plugin failed to allocate memory for input: %s %F%P: %s: plugin reported error claiming file %F%P: %s: plugin symbol table corrupt (sym type %d) unknown LTO visibility value %x%P: %pB: symbol `%s' definition: %s, visibility: %s, resolution: %s %F%P: %s: error loading plugin: %s %P: %s: error in plugin cleanup: %d (ignored) /* Script for -Ur */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) /* For some reason, the Solaris linker makes bad executables if gld -r is used and the intermediate file has sections starting at non-zero addresses. Could be a Solaris ld bug, could be a GNU ld bug. But for now assigning the zero vmas works. */ SECTIONS { /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id 0: { *(.note.gnu.build-id) } .interp 0 : { *(.interp) } .hash 0 : { *(.hash) } .gnu.hash 0 : { *(.gnu.hash) } .dynsym 0 : { *(.dynsym) } .dynstr 0 : { *(.dynstr) } .gnu.version 0 : { *(.gnu.version) } .gnu.version_d 0: { *(.gnu.version_d) } .gnu.version_r 0: { *(.gnu.version_r) } .rela.init 0 : { *(.rela.init) } .rela.text 0 : { *(.rela.text) } .rela.fini 0 : { *(.rela.fini) } .rela.rodata 0 : { *(.rela.rodata) } .rela.data.rel.ro 0 : { *(.rela.data.rel.ro) } .rela.data 0 : { *(.rela.data) } .rela.tdata 0 : { *(.rela.tdata) } .rela.tbss 0 : { *(.rela.tbss) } .rela.ctors 0 : { *(.rela.ctors) } .rela.dtors 0 : { *(.rela.dtors) } .rela.got 0 : { *(.rela.got) } .rela.bss 0 : { *(.rela.bss) } .rela.ldata 0 : { *(.rela.ldata) } .rela.lbss 0 : { *(.rela.lbss) } .rela.lrodata 0 : { *(.rela.lrodata) } .rela.ifunc 0 : { *(.rela.ifunc) } .rela.plt 0 : { *(.rela.plt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init 0 : { KEEP (*(SORT_NONE(.init))) } .plt 0 : { *(.plt) } .plt.got 0 : { *(.plt.got) } .plt.sec 0 : { *(.plt.sec) } .text 0 : { *(.text .stub) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini 0 : { KEEP (*(SORT_NONE(.fini))) } /* Start of the Read Only Data region. */ .rodata 0 : { *(.rodata) } .rodata1 0 : { *(.rodata1) } .eh_frame_hdr 0 : { *(.eh_frame_hdr) } .eh_frame 0 : ONLY_IF_RO { KEEP (*(.eh_frame)) } .sframe 0 : ONLY_IF_RO { *(.sframe) } .gcc_except_table 0 : ONLY_IF_RO { *(.gcc_except_table) } .gnu_extab 0 : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges 0 : ONLY_IF_RO { *(.exception_ranges) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Exception handling. */ .eh_frame 0 : ONLY_IF_RW { KEEP (*(.eh_frame)) } .sframe 0 : ONLY_IF_RW { *(.sframe) } .gnu_extab 0 : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table 0 : ONLY_IF_RW { *(.gcc_except_table) } .exception_ranges 0 : ONLY_IF_RW { *(.exception_ranges) } /* Thread Local Storage sections. */ .tdata 0 : { *(.tdata) } .tbss 0 : { *(.tbss) } .jcr 0 : { KEEP (*(.jcr)) } .dynamic 0 : { *(.dynamic) } .got 0 : { *(.got) } .got.plt 0 : { *(.got.plt) } .data 0 : { *(.data) SORT(CONSTRUCTORS) } .data1 0 : { *(.data1) } .bss 0 : { *(.bss) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ } .lbss 0 : { *(.lbss) } /* Start of the Large Data region. */ .lrodata 0 : { *(.lrodata) } .ldata 0 : { *(.ldata) } /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } } /* Script for -r */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) /* For some reason, the Solaris linker makes bad executables if gld -r is used and the intermediate file has sections starting at non-zero addresses. Could be a Solaris ld bug, could be a GNU ld bug. But for now assigning the zero vmas works. */ SECTIONS { /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id 0: { *(.note.gnu.build-id) } .interp 0 : { *(.interp) } .hash 0 : { *(.hash) } .gnu.hash 0 : { *(.gnu.hash) } .dynsym 0 : { *(.dynsym) } .dynstr 0 : { *(.dynstr) } .gnu.version 0 : { *(.gnu.version) } .gnu.version_d 0: { *(.gnu.version_d) } .gnu.version_r 0: { *(.gnu.version_r) } .rela.init 0 : { *(.rela.init) } .rela.text 0 : { *(.rela.text) } .rela.fini 0 : { *(.rela.fini) } .rela.rodata 0 : { *(.rela.rodata) } .rela.data.rel.ro 0 : { *(.rela.data.rel.ro) } .rela.data 0 : { *(.rela.data) } .rela.tdata 0 : { *(.rela.tdata) } .rela.tbss 0 : { *(.rela.tbss) } .rela.ctors 0 : { *(.rela.ctors) } .rela.dtors 0 : { *(.rela.dtors) } .rela.got 0 : { *(.rela.got) } .rela.bss 0 : { *(.rela.bss) } .rela.ldata 0 : { *(.rela.ldata) } .rela.lbss 0 : { *(.rela.lbss) } .rela.lrodata 0 : { *(.rela.lrodata) } .rela.ifunc 0 : { *(.rela.ifunc) } .rela.plt 0 : { *(.rela.plt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init 0 : { KEEP (*(SORT_NONE(.init))) } .plt 0 : { *(.plt) } .plt.got 0 : { *(.plt.got) } .plt.sec 0 : { *(.plt.sec) } .text 0 : { *(.text .stub) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini 0 : { KEEP (*(SORT_NONE(.fini))) } /* Start of the Read Only Data region. */ .rodata 0 : { *(.rodata) } .rodata1 0 : { *(.rodata1) } .eh_frame_hdr 0 : { *(.eh_frame_hdr) } .eh_frame 0 : ONLY_IF_RO { KEEP (*(.eh_frame)) } .sframe 0 : ONLY_IF_RO { *(.sframe) } .gcc_except_table 0 : ONLY_IF_RO { *(.gcc_except_table) } .gnu_extab 0 : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges 0 : ONLY_IF_RO { *(.exception_ranges) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Exception handling. */ .eh_frame 0 : ONLY_IF_RW { KEEP (*(.eh_frame)) } .sframe 0 : ONLY_IF_RW { *(.sframe) } .gnu_extab 0 : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table 0 : ONLY_IF_RW { *(.gcc_except_table) } .exception_ranges 0 : ONLY_IF_RW { *(.exception_ranges) } /* Thread Local Storage sections. */ .tdata 0 : { *(.tdata) } .tbss 0 : { *(.tbss) } .jcr 0 : { KEEP (*(.jcr)) } .dynamic 0 : { *(.dynamic) } .got 0 : { *(.got) } .got.plt 0 : { *(.got.plt) } .data 0 : { *(.data) } .data1 0 : { *(.data1) } .bss 0 : { *(.bss) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ } .lbss 0 : { *(.lbss) } /* Start of the Large Data region. */ .lrodata 0 : { *(.lrodata) } .ldata 0 : { *(.ldata) } /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } } /* Script for -N */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = .; /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -n */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc -z separate-code -z relro -z now --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc -z separate-code -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc -z separate-code -z relro -z now --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc -z separate-code -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc -z separate-code -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc -z separate-code -z relro -z now --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Default linker script, for normal executables */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib64"); SEARCH_DIR("=/usr/local/lib64"); SEARCH_DIR("=/lib64"); SEARCH_DIR("=/usr/lib64"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 64 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(64 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 64 / 8 : 1); } . = ALIGN(64 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } -z noextern-protected-data Do not treat protected data symbol as external -z indirect-extern-access Enable indirect external access -z noindirect-extern-access Disable indirect external access (default) -z dynamic-undefined-weak Make undefined weak symbols dynamic -z nodynamic-undefined-weak Do not make undefined weak symbols dynamic -z noreloc-overflow Disable relocation overflow check -z call-nop=PADDING Use PADDING as 1-byte NOP for branch -z ibtplt Generate IBT-enabled PLT entries -z ibt Generate GNU_PROPERTY_X86_FEATURE_1_IBT -z shstk Generate GNU_PROPERTY_X86_FEATURE_1_SHSTK -z cet-report=[none|warning|error] (default: none) Report missing IBT and SHSTK properties -z report-relative-reloc Report relative relocations -z x86-64-{baseline|v[234]} Mark x86-64-{baseline|v[234]} ISA level as needed -z isa-level-report=[none|all|needed|used] (default: none) Report x86-64 ISA level -z lam-u48 Generate GNU_PROPERTY_X86_FEATURE_1_LAM_U48 -z lam-u48-report=[none|warning|error] (default: none) Report missing LAM_U48 property -z lam-u57 Generate GNU_PROPERTY_X86_FEATURE_1_LAM_U57 -z lam-u57-report=[none|warning|error] (default: none) Report missing LAM_U57 property -z lam-report=[none|warning|error] (default: none) Report missing LAM_U48 and LAM_U57 properties -z mark-plt Mark PLT with dynamic tags -z nomark-plt Do not mark PLT with dynamic tags (default) -z pack-relative-relocs Pack relative relocations -z nopack-relative-relocs Do not pack relative relocations (default) /home/wildlama/miniconda3/envs/lam_a2e%X%P: .eh_frame/.stab edit: %E %F%P: --compress-debug-sections=zstd: ld is not built with zstd support %F%P: invalid --compress-debug-sections option: `%s' %F%P: invalid hash style `%s' %F%P: invalid maximum page size `%s' %F%P: invalid common page size `%s' %F%P: invalid stack size `%s' start-stop-visibility=internalstart-stop-visibility=protected%F%P: invalid visibility in `-z %s'; must be default, internal, hidden, or protected%F%P: invalid number for -z call-nop=prefix-: %s %F%P: invalid number for -z call-nop=suffix-: %s %F%P: unsupported option: -z %s %F%P: invalid option for -z cet-report=: %s %F%P: invalid x86-64 ISA level: %s %F%P: invalid option for -z isa-level-report=: %s %F%P: invalid option for -z lam-u48-report=: %s %F%P: invalid option for -z lam-u57-report=: %s %F%P: invalid option for -z lam-report=: %s /* Script for -Ur */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) /* For some reason, the Solaris linker makes bad executables if gld -r is used and the intermediate file has sections starting at non-zero addresses. Could be a Solaris ld bug, could be a GNU ld bug. But for now assigning the zero vmas works. */ SECTIONS { /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id 0: { *(.note.gnu.build-id) } .interp 0 : { *(.interp) } .hash 0 : { *(.hash) } .gnu.hash 0 : { *(.gnu.hash) } .dynsym 0 : { *(.dynsym) } .dynstr 0 : { *(.dynstr) } .gnu.version 0 : { *(.gnu.version) } .gnu.version_d 0: { *(.gnu.version_d) } .gnu.version_r 0: { *(.gnu.version_r) } .rela.init 0 : { *(.rela.init) } .rela.text 0 : { *(.rela.text) } .rela.fini 0 : { *(.rela.fini) } .rela.rodata 0 : { *(.rela.rodata) } .rela.data.rel.ro 0 : { *(.rela.data.rel.ro) } .rela.data 0 : { *(.rela.data) } .rela.tdata 0 : { *(.rela.tdata) } .rela.tbss 0 : { *(.rela.tbss) } .rela.ctors 0 : { *(.rela.ctors) } .rela.dtors 0 : { *(.rela.dtors) } .rela.got 0 : { *(.rela.got) } .rela.bss 0 : { *(.rela.bss) } .rela.ldata 0 : { *(.rela.ldata) } .rela.lbss 0 : { *(.rela.lbss) } .rela.lrodata 0 : { *(.rela.lrodata) } .rela.ifunc 0 : { *(.rela.ifunc) } .rela.plt 0 : { *(.rela.plt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init 0 : { KEEP (*(SORT_NONE(.init))) } .plt 0 : { *(.plt) } .plt.got 0 : { *(.plt.got) } .plt.sec 0 : { *(.plt.sec) } .text 0 : { *(.text .stub) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini 0 : { KEEP (*(SORT_NONE(.fini))) } /* Start of the Read Only Data region. */ .rodata 0 : { *(.rodata) } .rodata1 0 : { *(.rodata1) } .eh_frame_hdr 0 : { *(.eh_frame_hdr) } .eh_frame 0 : ONLY_IF_RO { KEEP (*(.eh_frame)) } .sframe 0 : ONLY_IF_RO { *(.sframe) } .gcc_except_table 0 : ONLY_IF_RO { *(.gcc_except_table) } .gnu_extab 0 : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges 0 : ONLY_IF_RO { *(.exception_ranges) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Exception handling. */ .eh_frame 0 : ONLY_IF_RW { KEEP (*(.eh_frame)) } .sframe 0 : ONLY_IF_RW { *(.sframe) } .gnu_extab 0 : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table 0 : ONLY_IF_RW { *(.gcc_except_table) } .exception_ranges 0 : ONLY_IF_RW { *(.exception_ranges) } /* Thread Local Storage sections. */ .tdata 0 : { *(.tdata) } .tbss 0 : { *(.tbss) } .jcr 0 : { KEEP (*(.jcr)) } .dynamic 0 : { *(.dynamic) } .got 0 : { *(.got) } .got.plt 0 : { *(.got.plt) } .data 0 : { *(.data) SORT(CONSTRUCTORS) } .data1 0 : { *(.data1) } .bss 0 : { *(.bss) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ } .lbss 0 : { *(.lbss) } /* Start of the Large Data region. */ .lrodata 0 : { *(.lrodata) } .ldata 0 : { *(.ldata) } /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } } /* Script for -r */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) /* For some reason, the Solaris linker makes bad executables if gld -r is used and the intermediate file has sections starting at non-zero addresses. Could be a Solaris ld bug, could be a GNU ld bug. But for now assigning the zero vmas works. */ SECTIONS { /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id 0: { *(.note.gnu.build-id) } .interp 0 : { *(.interp) } .hash 0 : { *(.hash) } .gnu.hash 0 : { *(.gnu.hash) } .dynsym 0 : { *(.dynsym) } .dynstr 0 : { *(.dynstr) } .gnu.version 0 : { *(.gnu.version) } .gnu.version_d 0: { *(.gnu.version_d) } .gnu.version_r 0: { *(.gnu.version_r) } .rela.init 0 : { *(.rela.init) } .rela.text 0 : { *(.rela.text) } .rela.fini 0 : { *(.rela.fini) } .rela.rodata 0 : { *(.rela.rodata) } .rela.data.rel.ro 0 : { *(.rela.data.rel.ro) } .rela.data 0 : { *(.rela.data) } .rela.tdata 0 : { *(.rela.tdata) } .rela.tbss 0 : { *(.rela.tbss) } .rela.ctors 0 : { *(.rela.ctors) } .rela.dtors 0 : { *(.rela.dtors) } .rela.got 0 : { *(.rela.got) } .rela.bss 0 : { *(.rela.bss) } .rela.ldata 0 : { *(.rela.ldata) } .rela.lbss 0 : { *(.rela.lbss) } .rela.lrodata 0 : { *(.rela.lrodata) } .rela.ifunc 0 : { *(.rela.ifunc) } .rela.plt 0 : { *(.rela.plt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init 0 : { KEEP (*(SORT_NONE(.init))) } .plt 0 : { *(.plt) } .plt.got 0 : { *(.plt.got) } .plt.sec 0 : { *(.plt.sec) } .text 0 : { *(.text .stub) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini 0 : { KEEP (*(SORT_NONE(.fini))) } /* Start of the Read Only Data region. */ .rodata 0 : { *(.rodata) } .rodata1 0 : { *(.rodata1) } .eh_frame_hdr 0 : { *(.eh_frame_hdr) } .eh_frame 0 : ONLY_IF_RO { KEEP (*(.eh_frame)) } .sframe 0 : ONLY_IF_RO { *(.sframe) } .gcc_except_table 0 : ONLY_IF_RO { *(.gcc_except_table) } .gnu_extab 0 : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges 0 : ONLY_IF_RO { *(.exception_ranges) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Exception handling. */ .eh_frame 0 : ONLY_IF_RW { KEEP (*(.eh_frame)) } .sframe 0 : ONLY_IF_RW { *(.sframe) } .gnu_extab 0 : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table 0 : ONLY_IF_RW { *(.gcc_except_table) } .exception_ranges 0 : ONLY_IF_RW { *(.exception_ranges) } /* Thread Local Storage sections. */ .tdata 0 : { *(.tdata) } .tbss 0 : { *(.tbss) } .jcr 0 : { KEEP (*(.jcr)) } .dynamic 0 : { *(.dynamic) } .got 0 : { *(.got) } .got.plt 0 : { *(.got.plt) } .data 0 : { *(.data) } .data1 0 : { *(.data1) } .bss 0 : { *(.bss) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ } .lbss 0 : { *(.lbss) } /* Start of the Large Data region. */ .lrodata 0 : { *(.lrodata) } .ldata 0 : { *(.ldata) } /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } } /* Script for -N */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = .; /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -n */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc -z separate-code -z relro -z now --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc -z separate-code -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc -z separate-code -z relro -z now --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc -z separate-code -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc -z separate-code -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc -z separate-code -z relro -z now --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) *(.rela.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.dyn : { *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Default linker script, for normal executables */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-x86-64", "elf32-x86-64", "elf32-x86-64") OUTPUT_ARCH(i386:x64-32) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/libx32"); SEARCH_DIR("=/usr/local/libx32"); SEARCH_DIR("=/libx32"); SEARCH_DIR("=/usr/libx32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rela.init : { *(.rela.init) } .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) } .rela.fini : { *(.rela.fini) } .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) } .rela.data.rel.ro : { *(.rela.data.rel.ro .rela.data.rel.ro.* .rela.gnu.linkonce.d.rel.ro.*) } .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) } .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) } .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) } .rela.ctors : { *(.rela.ctors) } .rela.dtors : { *(.rela.dtors) } .rela.got : { *(.rela.got) } .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.ldata : { *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*) } .rela.lbss : { *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*) } .rela.lrodata : { *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*) } .rela.ifunc : { *(.rela.ifunc) } .rela.plt : { *(.rela.plt) PROVIDE_HIDDEN (__rela_iplt_start = .); *(.rela.iplt) PROVIDE_HIDDEN (__rela_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } .lbss : { *(.dynlbss) *(.lbss .lbss.* .gnu.linkonce.lb.*) *(LARGE_COMMON) } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.lrodata .lrodata.* .gnu.linkonce.lr.*) } .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) : { *(.ldata .ldata.* .gnu.linkonce.l.*) . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -Ur */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) /* For some reason, the Solaris linker makes bad executables if gld -r is used and the intermediate file has sections starting at non-zero addresses. Could be a Solaris ld bug, could be a GNU ld bug. But for now assigning the zero vmas works. */ SECTIONS { /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id 0: { *(.note.gnu.build-id) } .interp 0 : { *(.interp) } .hash 0 : { *(.hash) } .gnu.hash 0 : { *(.gnu.hash) } .dynsym 0 : { *(.dynsym) } .dynstr 0 : { *(.dynstr) } .gnu.version 0 : { *(.gnu.version) } .gnu.version_d 0: { *(.gnu.version_d) } .gnu.version_r 0: { *(.gnu.version_r) } .rel.init 0 : { *(.rel.init) } .rel.text 0 : { *(.rel.text) } .rel.fini 0 : { *(.rel.fini) } .rel.rodata 0 : { *(.rel.rodata) } .rel.data.rel.ro 0 : { *(.rel.data.rel.ro) } .rel.data 0 : { *(.rel.data) } .rel.tdata 0 : { *(.rel.tdata) } .rel.tbss 0 : { *(.rel.tbss) } .rel.ctors 0 : { *(.rel.ctors) } .rel.dtors 0 : { *(.rel.dtors) } .rel.got 0 : { *(.rel.got) } .rel.bss 0 : { *(.rel.bss) } .rel.ifunc 0 : { *(.rel.ifunc) } .rel.plt 0 : { *(.rel.plt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init 0 : { KEEP (*(SORT_NONE(.init))) } .plt 0 : { *(.plt) } .plt.got 0 : { *(.plt.got) } .plt.sec 0 : { *(.plt.sec) } .text 0 : { *(.text .stub) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini 0 : { KEEP (*(SORT_NONE(.fini))) } /* Start of the Read Only Data region. */ .rodata 0 : { *(.rodata) } .rodata1 0 : { *(.rodata1) } .eh_frame_hdr 0 : { *(.eh_frame_hdr) } .eh_frame 0 : ONLY_IF_RO { KEEP (*(.eh_frame)) } .sframe 0 : ONLY_IF_RO { *(.sframe) } .gcc_except_table 0 : ONLY_IF_RO { *(.gcc_except_table) } .gnu_extab 0 : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges 0 : ONLY_IF_RO { *(.exception_ranges) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Exception handling. */ .eh_frame 0 : ONLY_IF_RW { KEEP (*(.eh_frame)) } .sframe 0 : ONLY_IF_RW { *(.sframe) } .gnu_extab 0 : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table 0 : ONLY_IF_RW { *(.gcc_except_table) } .exception_ranges 0 : ONLY_IF_RW { *(.exception_ranges) } /* Thread Local Storage sections. */ .tdata 0 : { *(.tdata) } .tbss 0 : { *(.tbss) } .jcr 0 : { KEEP (*(.jcr)) } .dynamic 0 : { *(.dynamic) } .got 0 : { *(.got) } .got.plt 0 : { *(.got.plt) } .data 0 : { *(.data) SORT(CONSTRUCTORS) } .data1 0 : { *(.data1) } .bss 0 : { *(.bss) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ } /* Start of the Large Data region. */ /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } } /* Script for -r */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) /* For some reason, the Solaris linker makes bad executables if gld -r is used and the intermediate file has sections starting at non-zero addresses. Could be a Solaris ld bug, could be a GNU ld bug. But for now assigning the zero vmas works. */ SECTIONS { /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id 0: { *(.note.gnu.build-id) } .interp 0 : { *(.interp) } .hash 0 : { *(.hash) } .gnu.hash 0 : { *(.gnu.hash) } .dynsym 0 : { *(.dynsym) } .dynstr 0 : { *(.dynstr) } .gnu.version 0 : { *(.gnu.version) } .gnu.version_d 0: { *(.gnu.version_d) } .gnu.version_r 0: { *(.gnu.version_r) } .rel.init 0 : { *(.rel.init) } .rel.text 0 : { *(.rel.text) } .rel.fini 0 : { *(.rel.fini) } .rel.rodata 0 : { *(.rel.rodata) } .rel.data.rel.ro 0 : { *(.rel.data.rel.ro) } .rel.data 0 : { *(.rel.data) } .rel.tdata 0 : { *(.rel.tdata) } .rel.tbss 0 : { *(.rel.tbss) } .rel.ctors 0 : { *(.rel.ctors) } .rel.dtors 0 : { *(.rel.dtors) } .rel.got 0 : { *(.rel.got) } .rel.bss 0 : { *(.rel.bss) } .rel.ifunc 0 : { *(.rel.ifunc) } .rel.plt 0 : { *(.rel.plt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init 0 : { KEEP (*(SORT_NONE(.init))) } .plt 0 : { *(.plt) } .plt.got 0 : { *(.plt.got) } .plt.sec 0 : { *(.plt.sec) } .text 0 : { *(.text .stub) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini 0 : { KEEP (*(SORT_NONE(.fini))) } /* Start of the Read Only Data region. */ .rodata 0 : { *(.rodata) } .rodata1 0 : { *(.rodata1) } .eh_frame_hdr 0 : { *(.eh_frame_hdr) } .eh_frame 0 : ONLY_IF_RO { KEEP (*(.eh_frame)) } .sframe 0 : ONLY_IF_RO { *(.sframe) } .gcc_except_table 0 : ONLY_IF_RO { *(.gcc_except_table) } .gnu_extab 0 : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges 0 : ONLY_IF_RO { *(.exception_ranges) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Exception handling. */ .eh_frame 0 : ONLY_IF_RW { KEEP (*(.eh_frame)) } .sframe 0 : ONLY_IF_RW { *(.sframe) } .gnu_extab 0 : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table 0 : ONLY_IF_RW { *(.gcc_except_table) } .exception_ranges 0 : ONLY_IF_RW { *(.exception_ranges) } /* Thread Local Storage sections. */ .tdata 0 : { *(.tdata) } .tbss 0 : { *(.tbss) } .jcr 0 : { KEEP (*(.jcr)) } .dynamic 0 : { *(.dynamic) } .got 0 : { *(.got) } .got.plt 0 : { *(.got.plt) } .data 0 : { *(.data) } .data1 0 : { *(.data1) } .bss 0 : { *(.bss) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ } /* Start of the Large Data region. */ /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } } /* Script for -N */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x08048000)); . = SEGMENT_START("text-segment", 0x08048000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.init : { *(.rel.init) } .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } .rel.fini : { *(.rel.fini) } .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } .rel.data.rel.ro : { *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) } .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } .rel.ctors : { *(.rel.ctors) } .rel.dtors : { *(.rel.dtors) } .rel.got : { *(.rel.got) } .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rel.ifunc : { *(.rel.ifunc) } .rel.plt : { *(.rel.plt) PROVIDE_HIDDEN (__rel_iplt_start = .); *(.rel.iplt) PROVIDE_HIDDEN (__rel_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = .; /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -n */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x08048000)); . = SEGMENT_START("text-segment", 0x08048000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.init : { *(.rel.init) } .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } .rel.fini : { *(.rel.fini) } .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } .rel.data.rel.ro : { *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) } .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } .rel.ctors : { *(.rel.ctors) } .rel.dtors : { *(.rel.dtors) } .rel.got : { *(.rel.got) } .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rel.ifunc : { *(.rel.ifunc) } .rel.plt : { *(.rel.plt) PROVIDE_HIDDEN (__rel_iplt_start = .); *(.rel.iplt) PROVIDE_HIDDEN (__rel_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc -z separate-code -z relro -z now --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc -z separate-code -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc -z separate-code -z relro -z now --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x08048000)); . = SEGMENT_START("text-segment", 0x08048000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) PROVIDE_HIDDEN (__rel_iplt_start = .); *(.rel.iplt) PROVIDE_HIDDEN (__rel_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.init : { *(.rel.init) } .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } .rel.fini : { *(.rel.fini) } .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } .rel.data.rel.ro : { *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) } .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } .rel.ctors : { *(.rel.ctors) } .rel.dtors : { *(.rel.dtors) } .rel.got : { *(.rel.got) } .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rel.ifunc : { *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.init : { *(.rel.init) } .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } .rel.fini : { *(.rel.fini) } .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } .rel.data.rel.ro : { *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) } .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } .rel.ctors : { *(.rel.ctors) } .rel.dtors : { *(.rel.dtors) } .rel.got : { *(.rel.got) } .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rel.ifunc : { *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.init : { *(.rel.init) } .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } .rel.fini : { *(.rel.fini) } .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } .rel.data.rel.ro : { *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) } .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } .rel.ctors : { *(.rel.ctors) } .rel.dtors : { *(.rel.dtors) } .rel.got : { *(.rel.got) } .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rel.ifunc : { *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc -z separate-code -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -pie -z combreloc -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0)); . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x08048000)); . = SEGMENT_START("text-segment", 0x08048000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) PROVIDE_HIDDEN (__rel_iplt_start = .); *(.rel.iplt) PROVIDE_HIDDEN (__rel_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.init : { *(.rel.init) } .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } .rel.fini : { *(.rel.fini) } .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } .rel.data.rel.ro : { *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) } .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } .rel.ctors : { *(.rel.ctors) } .rel.dtors : { *(.rel.dtors) } .rel.got : { *(.rel.got) } .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rel.ifunc : { *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.init : { *(.rel.init) } .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } .rel.fini : { *(.rel.fini) } .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } .rel.data.rel.ro : { *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) } .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } .rel.ctors : { *(.rel.ctors) } .rel.dtors : { *(.rel.dtors) } .rel.got : { *(.rel.got) } .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rel.ifunc : { *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.init : { *(.rel.init) } .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } .rel.fini : { *(.rel.fini) } .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } .rel.data.rel.ro : { *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) } .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } .rel.ctors : { *(.rel.ctors) } .rel.dtors : { *(.rel.dtors) } .rel.got : { *(.rel.got) } .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rel.ifunc : { *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc -z separate-code -z relro -z now */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x08048000)); . = SEGMENT_START("text-segment", 0x08048000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) PROVIDE_HIDDEN (__rel_iplt_start = .); *(.rel.iplt) PROVIDE_HIDDEN (__rel_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc -z separate-code -z relro -z now --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x08048000)); . = SEGMENT_START("text-segment", 0x08048000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) PROVIDE_HIDDEN (__rel_iplt_start = .); *(.rel.iplt) PROVIDE_HIDDEN (__rel_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (0, .); .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x08048000)); . = SEGMENT_START("text-segment", 0x08048000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) PROVIDE_HIDDEN (__rel_iplt_start = .); *(.rel.iplt) PROVIDE_HIDDEN (__rel_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -shared -z combreloc */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) *(.rel.iplt) } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { KEEP (*(.preinit_array)) } .init_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) } .fini_array : { KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } PROVIDE (_edata = .); PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); PROVIDE (__bss_start = .); .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); PROVIDE (_end = .); PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z combreloc */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x08048000)); . = SEGMENT_START("text-segment", 0x08048000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.dyn : { *(.rel.init) *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) *(.rel.fini) *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) *(.rel.ctors) *(.rel.dtors) *(.rel.got) *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) *(.rel.ifunc) } .rel.plt : { *(.rel.plt) PROVIDE_HIDDEN (__rel_iplt_start = .); *(.rel.iplt) PROVIDE_HIDDEN (__rel_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z separate-code --rosegment */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x08048000)); . = SEGMENT_START("text-segment", 0x08048000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.init : { *(.rel.init) } .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } .rel.fini : { *(.rel.fini) } .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } .rel.data.rel.ro : { *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) } .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } .rel.ctors : { *(.rel.ctors) } .rel.dtors : { *(.rel.dtors) } .rel.got : { *(.rel.got) } .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rel.ifunc : { *(.rel.ifunc) } .rel.plt : { *(.rel.plt) PROVIDE_HIDDEN (__rel_iplt_start = .); *(.rel.iplt) PROVIDE_HIDDEN (__rel_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Script for -z separate-code */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x08048000)); . = SEGMENT_START("text-segment", 0x08048000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.init : { *(.rel.init) } .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } .rel.fini : { *(.rel.fini) } .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } .rel.data.rel.ro : { *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) } .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } .rel.ctors : { *(.rel.ctors) } .rel.dtors : { *(.rel.dtors) } .rel.got : { *(.rel.got) } .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rel.ifunc : { *(.rel.ifunc) } .rel.plt : { *(.rel.plt) PROVIDE_HIDDEN (__rel_iplt_start = .); *(.rel.iplt) PROVIDE_HIDDEN (__rel_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Align the text segment. */ . = ALIGN(CONSTANT (MAXPAGESIZE)); /* Start of the Read Only Data region. */ /* Adjust the address for the rodata segment. We want to adjust up to the same address within the page on the next page up. */ . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } /* Default linker script, for normal executables */ /* Copyright (C) 2014-2025 Free Software Foundation, Inc. Copying and distribution of this script, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. */ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") OUTPUT_ARCH(i386) ENTRY(_start) SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/x86_64-conda-linux-gnu/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib32"); SEARCH_DIR("=/usr/local/lib32"); SEARCH_DIR("=/lib32"); SEARCH_DIR("=/usr/lib32"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/i386-conda-linux-gnu/lib"); SEARCH_DIR("=/home/wildlama/miniconda3/envs/lam_a2e/lib"); SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib"); SEARCH_DIR("=/usr/lib"); SECTIONS { /* Read-only sections, merged into text segment: */ PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x08048000)); . = SEGMENT_START("text-segment", 0x08048000) + SIZEOF_HEADERS; /* Place the build-id as close to the ELF headers as possible. This maximises the chance the build-id will be present in core files, which GDB can then use to locate the associated debuginfo file. */ .note.gnu.build-id : { *(.note.gnu.build-id) } .interp : { *(.interp) } .hash : { *(.hash) } .gnu.hash : { *(.gnu.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } .rel.init : { *(.rel.init) } .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) } .rel.fini : { *(.rel.fini) } .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) } .rel.data.rel.ro : { *(.rel.data.rel.ro .rel.data.rel.ro.* .rel.gnu.linkonce.d.rel.ro.*) } .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) } .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) } .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) } .rel.ctors : { *(.rel.ctors) } .rel.dtors : { *(.rel.dtors) } .rel.got : { *(.rel.got) } .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) } .rel.ifunc : { *(.rel.ifunc) } .rel.plt : { *(.rel.plt) PROVIDE_HIDDEN (__rel_iplt_start = .); *(.rel.iplt) PROVIDE_HIDDEN (__rel_iplt_end = .); } .relr.dyn : { *(.relr.dyn) } /* Start of the executable code region. */ .init : { KEEP (*(SORT_NONE(.init))) } .plt : { *(.plt) *(.iplt) } .plt.got : { *(.plt.got) } .plt.sec : { *(.plt.sec) } .text : { *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(SORT(.text.sorted.*)) *(.text .stub .text.* .gnu.linkonce.t.*) /* .gnu.warning sections are handled specially by elf.em. */ *(.gnu.warning) } .fini : { KEEP (*(SORT_NONE(.fini))) } PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); /* Start of the Read Only Data region. */ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .eh_frame_hdr : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) } .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RO { *(.sframe) *(.sframe.*) } .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) } .gnu_extab : ONLY_IF_RO { *(.gnu_extab*) } /* These sections are generated by the Sun/Oracle C++ compiler. */ .exception_ranges : ONLY_IF_RO { *(.exception_ranges*) } /* Various note sections. Placed here so that they are always included in the read-only segment and not treated as orphan sections. The current orphan handling algorithm does place note sections after R/O data, but this is not guaranteed to always be the case. */ .note.build-id : { *(.note.build-id) } .note.GNU-stack : { *(.note.GNU-stack) } .note.gnu-property : { *(.note.gnu-property) } .note.ABI-tag : { *(.note.ABI-tag) } .note.package : { *(.note.package) } .note.dlopen : { *(.note.dlopen) } .note.netbsd.ident : { *(.note.netbsd.ident) } .note.openbsd.ident : { *(.note.openbsd.ident) } /* Start of the Read Write Data region. */ /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE)); /* Exception handling. */ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) } .sframe : ONLY_IF_RW { *(.sframe) *(.sframe.*) } .gnu_extab : ONLY_IF_RW { *(.gnu_extab) } .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) } .exception_ranges : ONLY_IF_RW { *(.exception_ranges*) } /* Thread Local Storage sections. */ .tdata : { PROVIDE_HIDDEN (__tdata_start = .); *(.tdata .tdata.* .gnu.linkonce.td.*) } .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } .preinit_array : { PROVIDE_HIDDEN (__preinit_array_start = .); KEEP (*(.preinit_array)) PROVIDE_HIDDEN (__preinit_array_end = .); } .init_array : { PROVIDE_HIDDEN (__init_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors)) PROVIDE_HIDDEN (__init_array_end = .); } .fini_array : { PROVIDE_HIDDEN (__fini_array_start = .); KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*))) KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors)) PROVIDE_HIDDEN (__fini_array_end = .); } .ctors : { /* gcc uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it doesn't matter if the user does not actually link against crtbegin.o; the linker won't look for a file to match a wildcard. The wildcard also means that it doesn't matter which directory crtbegin.o is in. */ KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) } .dtors : { KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) } .jcr : { KEEP (*(.jcr)) } .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) } .dynamic : { *(.dynamic) } .got : { *(.got) *(.igot) } . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 12 ? 12 : 0, .); .got.plt : { *(.got.plt) *(.igot.plt) } .data : { *(.data .data.* .gnu.linkonce.d.*) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } _edata = .; PROVIDE (edata = .); . = ALIGN(ALIGNOF(NEXT_SECTION)); __bss_start = .; .bss : { *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) *(COMMON) /* Align here to ensure that in the common case of there only being one type of .bss section, the section occupies space up to _end. Align after .bss to ensure correct alignment even if the .bss section disappears because there are no input sections. FIXME: Why do we need it? When there is no .bss section, we do not pad the .data section. */ . = ALIGN(. != 0 ? 32 / 8 : 1); } . = ALIGN(32 / 8); /* Start of the Large Data region. */ . = SEGMENT_START("ldata-segment", .); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); . = DATA_SEGMENT_END (.); /* Start of the Tiny Data region. */ /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 (INFO) : { *(.comment); LINKER_VERSION; } .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) } /* DWARF debug sections. Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */ /* DWARF 1. */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions. */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2. */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2. */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line .debug_line.* .debug_line_end) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } /* SGI/MIPS DWARF 2 extensions. */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* DWARF 3. */ .debug_pubtypes 0 : { *(.debug_pubtypes) } .debug_ranges 0 : { *(.debug_ranges) } /* DWARF 5. */ .debug_addr 0 : { *(.debug_addr) } .debug_line_str 0 : { *(.debug_line_str) } .debug_loclists 0 : { *(.debug_loclists) } .debug_macro 0 : { *(.debug_macro) } .debug_names 0 : { *(.debug_names) } .debug_rnglists 0 : { *(.debug_rnglists) } .debug_str_offsets 0 : { *(.debug_str_offsets) } .debug_sup 0 : { *(.debug_sup) } .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) } /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) *(.gnu_object_only) } } %P: warning: %s, needed by %pB, may conflict with %s %P: warning: .note.gnu.build-id section discarded, --build-id ignored %P: warning: .note.package section discarded, --package-metadata ignored %F%P: failed to record assignment to %s: %E %F%P: %pB: bfd_elf_get_bfd_needed_list failed: %E %F%P: %pB: bfd_stat failed: %E unrecognised or unsupported token '%s' in search path %F%P: failed to add DT_NEEDED dynamic tag %P: warning: %s, needed by %pB, not found (try using -rpath or -rpath-link) %F%P: common page size (0x%v) > maximum page size (0x%v) %F%P: %pB: --just-symbols may not be used on DSO %P: warning: unrecognized --build-id style ignored %P: warning: cannot create .note.gnu.build-id section, --build-id ignored %P: warning: --package-metadata is empty, ignoring %P: warning: cannot create .note.package section, --package-metadata ignored %F%P: %s: can't open for writing: %E %F%P: cannot use executable file '%pB' as input to a link %F%P: compact frame descriptions incompatible with DWARF2 .eh_frame from %pB %P: warning: cannot create .eh_frame_hdr section, --eh-frame-hdr ignored %F%P: failed to parse EH frame entries %F%P: failed to set dynamic section sizes: %E %F%P: %pB: can't read contents of section .gnu.warning: %E %F%P: %pA has both ordered and unordered sections %F%P: map sections to segments failed: %E %F%P: failed to strip zero-sized dynamic sections %F%P: looping in map_segments %F%P: warning: CTF strtab association failed; strings will not be shared: %s %F%P: warning: CTF symbol addition failed; CTF will not be tied to symbols: %s %F%P: warning: CTF symbol shuffling failed; CTF will not be tied to symbols: %s %F%P: %pB(%s): error opening thin archive member: %E %pB: plugin needed to handle lto objectwarning: writing archive was slow: rewriting timestampReading archive file mod timestampWriting updated armap timestamp%s: BFD %s internal error, aborting at %s:%d in %s %s: BFD %s internal error, aborting at %s:%d archive object file in wrong formatarchive has no index; run ranlib to add onenonrepresentable section on outputsymbol needs debug section which does not existsorry, cannot handle this fileerror: %pB(%pA) is too large (%#lx bytes)%pB: out of memory in _bfd_elf_get_propertywarning: %pB: corrupt GNU_PROPERTY_TYPE (%ld) size: %#lxwarning: %pB: corrupt GNU_PROPERTY_TYPE (%ld) type (0x%x) datasz: 0x%xwarning: %pB: corrupt stack size: 0x%xwarning: %pB: corrupt no copy on protected size: 0x%xwarning: %pB: corrupt memory sealing size: 0x%xerror: %pB: warning: %pB: unsupported GNU_PROPERTY_TYPE (%ld) type: 0x%x%F%P: failed to create GNU property section Removed property %W to merge %pB (0x%v) and %pB (0x%v) Removed property %W to merge %pB (0x%v) and %pB (not found) Removed property %W to merge %pB and %pB Removed property %W to merge %pB and %pB (not found) Updated property %W (0x%v) to merge %pB (0x%v) and %pB (0x%v) Updated property %W (%v) to merge %pB (0x%v) and %pB (not found) Removed property %W to merge %pB (not found) and %pB (0x%v) %pB: unable to get decompressed section %pA%pB: mapped section %pA has non-NULL bufferattempt to do relocatable link with %s input and %s output%pB: indirect symbol `%s' to `%s' is a loop%P: %pB: note: the message above does not take linker garbage collection into account %pB: ignoring duplicate section `%pA' %pB: duplicate section `%pA' has different size %pB: could not read contents of section `%pA' %pB: duplicate section `%pA' has different contents %F%P: already_linked_table: %E %pB: compiled for a big endian system and target is little endian%pB: compiled for a little endian system and target is big endian%P%F: --relax and -r may not be used together INPUT_SECTION_FLAGS are not supported%X%P: %pB(%pA): error: relocation for offset %V has no value %X%P: %pB(%pA): relocation "%pR" goes out of range %X%P: %pB(%pA): relocation "%pR" is not supported %X%P: %pB(%pA): relocation "%pR" returns an unrecognized value %x %pB: unrecognized relocation type %#x in section `%pA'is this version of the linker - %s - out of date ?BFD_RELOC_SPARC_GOTDATA_OP_HIX22BFD_RELOC_SPARC_GOTDATA_OP_LOX10BFD_RELOC_MIPS16_TLS_DTPREL_HI16BFD_RELOC_MIPS16_TLS_DTPREL_LO16BFD_RELOC_MIPS16_TLS_TPREL_HI16BFD_RELOC_MIPS16_TLS_TPREL_LO16BFD_RELOC_MICROMIPS_7_PCREL_S1BFD_RELOC_MICROMIPS_10_PCREL_S1BFD_RELOC_MICROMIPS_16_PCREL_S1BFD_RELOC_MIPS_TLS_DTPREL_HI16BFD_RELOC_MICROMIPS_TLS_DTPREL_HI16BFD_RELOC_MIPS_TLS_DTPREL_LO16BFD_RELOC_MICROMIPS_TLS_DTPREL_LO16BFD_RELOC_MICROMIPS_TLS_GOTTPRELBFD_RELOC_MICROMIPS_TLS_TPREL_HI16BFD_RELOC_MICROMIPS_TLS_TPREL_LO16BFD_RELOC_FRV_FUNCDESC_GOTOFF12BFD_RELOC_FRV_FUNCDESC_GOTOFFHIBFD_RELOC_FRV_FUNCDESC_GOTOFFLOBFD_RELOC_X86_64_GOTPC32_TLSDESCBFD_RELOC_X86_64_REX_GOTPCRELXBFD_RELOC_X86_64_CODE_4_GOTPCRELXBFD_RELOC_X86_64_CODE_4_GOTTPOFFBFD_RELOC_X86_64_CODE_4_GOTPC32_TLSDESCBFD_RELOC_X86_64_CODE_5_GOTPCRELXBFD_RELOC_X86_64_CODE_5_GOTTPOFFBFD_RELOC_X86_64_CODE_5_GOTPC32_TLSDESCBFD_RELOC_X86_64_CODE_6_GOTPCRELXBFD_RELOC_X86_64_CODE_6_GOTTPOFFBFD_RELOC_X86_64_CODE_6_GOTPC32_TLSDESCBFD_RELOC_PPC_VLE_SDAREL_LO16ABFD_RELOC_PPC_VLE_SDAREL_LO16DBFD_RELOC_PPC_VLE_SDAREL_HI16ABFD_RELOC_PPC_VLE_SDAREL_HI16DBFD_RELOC_PPC_VLE_SDAREL_HA16ABFD_RELOC_PPC_VLE_SDAREL_HA16DBFD_RELOC_PPC64_PLTGOT16_LO_DSBFD_RELOC_PPC64_REL16_HIGHESTABFD_RELOC_PPC64_ADDR16_HIGHER34BFD_RELOC_PPC64_ADDR16_HIGHERA34BFD_RELOC_PPC64_ADDR16_HIGHEST34BFD_RELOC_PPC64_ADDR16_HIGHESTA34BFD_RELOC_PPC64_REL16_HIGHER34BFD_RELOC_PPC64_REL16_HIGHERA34BFD_RELOC_PPC64_REL16_HIGHEST34BFD_RELOC_PPC64_REL16_HIGHESTA34BFD_RELOC_PPC64_TPREL16_HIGHERBFD_RELOC_PPC64_TPREL16_HIGHERABFD_RELOC_PPC64_TPREL16_HIGHESTBFD_RELOC_PPC64_TPREL16_HIGHESTABFD_RELOC_PPC64_DTPREL16_LO_DSBFD_RELOC_PPC64_DTPREL16_HIGHABFD_RELOC_PPC64_DTPREL16_HIGHERBFD_RELOC_PPC64_DTPREL16_HIGHERABFD_RELOC_PPC64_DTPREL16_HIGHESTBFD_RELOC_PPC64_DTPREL16_HIGHESTABFD_RELOC_PPC64_GOT_TLSGD_PCREL34BFD_RELOC_PPC64_GOT_TLSLD_PCREL34BFD_RELOC_PPC64_GOT_TPREL_PCREL34BFD_RELOC_PPC64_GOT_DTPREL_PCREL34BFD_RELOC_THUMB_PCREL_BRANCH12BFD_RELOC_THUMB_PCREL_BRANCH20BFD_RELOC_THUMB_PCREL_BRANCH23BFD_RELOC_THUMB_PCREL_BRANCH25BFD_RELOC_ARM_THUMB_MOVW_PCRELBFD_RELOC_ARM_THUMB_MOVT_PCRELBFD_RELOC_ARM_THUMB_ALU_ABS_G0_NCBFD_RELOC_ARM_THUMB_ALU_ABS_G1_NCBFD_RELOC_ARM_THUMB_ALU_ABS_G2_NCBFD_RELOC_ARM_THUMB_ALU_ABS_G3_NCBFD_RELOC_ARM_T32_CP_OFF_IMM_S2BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMMBFD_RELOC_SH_IMM_MEDLOW16_PCRELBFD_RELOC_SH_IMM_MEDHI16_PCRELBFD_RELOC_BFIN_12_PCREL_JUMP_SBFD_RELOC_BFIN_24_PCREL_CALL_XBFD_RELOC_BFIN_24_PCREL_JUMP_LBFD_RELOC_BFIN_FUNCDESC_GOT17M4BFD_RELOC_BFIN_FUNCDESC_GOTOFF17M4BFD_RELOC_BFIN_FUNCDESC_GOTOFFHIBFD_RELOC_BFIN_FUNCDESC_GOTOFFLOBFD_RELOC_NDS32_PLT_GOTREL_HI20BFD_RELOC_NDS32_PLT_GOTREL_LO12BFD_RELOC_NDS32_PLT_GOTREL_LO20BFD_RELOC_NDS32_PLT_GOTREL_LO15BFD_RELOC_NDS32_PLT_GOTREL_LO19BFD_RELOC_NDS32_SDA_FP7U2_RELABFD_RELOC_NDS32_RELAX_REGION_BEGINBFD_RELOC_NDS32_RELAX_REGION_ENDBFD_RELOC_NDS32_TLS_IEGP_LO12S2BFD_RELOC_NDS32_TLS_DESC_SDA17S2BFD_RELOC_V850_SDA_16_16_OFFSETBFD_RELOC_V850_SDA_15_16_OFFSETBFD_RELOC_V850_ZDA_16_16_OFFSETBFD_RELOC_V850_ZDA_15_16_OFFSETBFD_RELOC_V850_TDA_16_16_OFFSETBFD_RELOC_V850_SDA_16_16_SPLIT_OFFSETBFD_RELOC_V850_ZDA_16_16_SPLIT_OFFSETBFD_RELOC_V850_CALLT_6_7_OFFSETBFD_RELOC_V850_CALLT_16_16_OFFSETBFD_RELOC_V850_LO16_SPLIT_OFFSETBFD_RELOC_V850_16_SPLIT_OFFSETBFD_RELOC_V850_CALLT_15_16_OFFSETBFD_RELOC_MCORE_PCREL_IMM11BY2BFD_RELOC_MCORE_PCREL_JSR_IMM11BY2BFD_RELOC_METAG_TLS_IENONPIC_HI16BFD_RELOC_METAG_TLS_IENONPIC_LO16BFD_RELOC_MMIX_PUSHJ_STUBBABLEBFD_RELOC_MMIX_BASE_PLUS_OFFSETBFD_RELOC_RISCV_TLSDESC_LOAD_LO12BFD_RELOC_RISCV_TLSDESC_ADD_LO12BFD_RELOC_IA64_LTOFF_FPTR32MSBBFD_RELOC_IA64_LTOFF_FPTR32LSBBFD_RELOC_IA64_LTOFF_FPTR64MSBBFD_RELOC_IA64_LTOFF_FPTR64LSBBFD_RELOC_MSP430_16_PCREL_BYTEBFD_RELOC_MSP430X_PCR20_EXT_SRCBFD_RELOC_MSP430X_PCR20_EXT_DSTBFD_RELOC_MSP430X_PCR20_EXT_ODSTBFD_RELOC_MSP430X_ABS20_EXT_SRCBFD_RELOC_MSP430X_ABS20_EXT_DSTBFD_RELOC_MSP430X_ABS20_EXT_ODSTBFD_RELOC_MSP430X_ABS20_ADR_SRCBFD_RELOC_MSP430X_ABS20_ADR_DSTBFD_RELOC_MACH_O_LOCAL_SECTDIFFBFD_RELOC_MACH_O_X86_64_BRANCH32BFD_RELOC_MACH_O_X86_64_BRANCH8BFD_RELOC_MACH_O_X86_64_GOT_LOADBFD_RELOC_MACH_O_X86_64_PCREL32_1BFD_RELOC_MACH_O_X86_64_PCREL32_2BFD_RELOC_MACH_O_X86_64_PCREL32_4BFD_RELOC_MACH_O_ARM64_GOT_LOAD_PAGE21BFD_RELOC_MACH_O_ARM64_GOT_LOAD_PAGEOFF12BFD_RELOC_MACH_O_ARM64_POINTER_TO_GOTBFD_RELOC_MICROBLAZE_32_LO_PCRELBFD_RELOC_MICROBLAZE_32_SYM_OP_SYMBFD_RELOC_MICROBLAZE_64_GOTOFFBFD_RELOC_MICROBLAZE_32_GOTOFFBFD_RELOC_MICROBLAZE_32_TLSDTPMODBFD_RELOC_MICROBLAZE_32_TLSDTPRELBFD_RELOC_MICROBLAZE_64_TLSDTPRELBFD_RELOC_MICROBLAZE_64_TLSGOTTPRELBFD_RELOC_MICROBLAZE_64_TLSTPRELBFD_RELOC_MICROBLAZE_64_TEXTPCRELBFD_RELOC_MICROBLAZE_64_TEXTRELBFD_RELOC_KVX_S37_GOTADDR_LO10BFD_RELOC_KVX_S37_GOTADDR_UP27BFD_RELOC_KVX_S43_GOTADDR_LO10BFD_RELOC_KVX_S43_GOTADDR_UP27BFD_RELOC_KVX_S64_GOTADDR_LO10BFD_RELOC_KVX_S64_GOTADDR_UP27BFD_RELOC_KVX_S64_GOTADDR_EX27BFD_RELOC_KVX_S37_TLS_DTPOFF_LO10BFD_RELOC_KVX_S37_TLS_DTPOFF_UP27BFD_RELOC_KVX_S43_TLS_DTPOFF_LO10BFD_RELOC_KVX_S43_TLS_DTPOFF_UP27BFD_RELOC_KVX_S43_TLS_DTPOFF_EX6BFD_RELOC_AARCH64_MOVW_PREL_G0BFD_RELOC_AARCH64_MOVW_PREL_G0_NCBFD_RELOC_AARCH64_MOVW_PREL_G1BFD_RELOC_AARCH64_MOVW_PREL_G1_NCBFD_RELOC_AARCH64_MOVW_PREL_G2BFD_RELOC_AARCH64_MOVW_PREL_G2_NCBFD_RELOC_AARCH64_MOVW_PREL_G3BFD_RELOC_AARCH64_LD_LO19_PCRELBFD_RELOC_AARCH64_ADR_LO21_PCRELBFD_RELOC_AARCH64_ADR_HI21_PCRELBFD_RELOC_AARCH64_ADR_HI21_NC_PCRELBFD_RELOC_AARCH64_LDST128_LO12BFD_RELOC_AARCH64_GOT_LD_PREL19BFD_RELOC_AARCH64_ADR_GOT_PAGEBFD_RELOC_AARCH64_LD64_GOT_LO12_NCBFD_RELOC_AARCH64_LD32_GOT_LO12_NCBFD_RELOC_AARCH64_MOVW_GOTOFF_G0_NCBFD_RELOC_AARCH64_MOVW_GOTOFF_G1BFD_RELOC_AARCH64_LD64_GOTOFF_LO15BFD_RELOC_AARCH64_LD32_GOTPAGE_LO14BFD_RELOC_AARCH64_LD64_GOTPAGE_LO15BFD_RELOC_AARCH64_TLSGD_ADR_PAGE21BFD_RELOC_AARCH64_TLSGD_ADR_PREL21BFD_RELOC_AARCH64_TLSGD_ADD_LO12_NCBFD_RELOC_AARCH64_TLSGD_MOVW_G0_NCBFD_RELOC_AARCH64_TLSGD_MOVW_G1BFD_RELOC_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21BFD_RELOC_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NCBFD_RELOC_AARCH64_TLSIE_LD32_GOTTPREL_LO12_NCBFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_PREL19BFD_RELOC_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NCBFD_RELOC_AARCH64_TLSIE_MOVW_GOTTPREL_G1BFD_RELOC_AARCH64_TLSLD_ADD_DTPREL_HI12BFD_RELOC_AARCH64_TLSLD_ADD_DTPREL_LO12BFD_RELOC_AARCH64_TLSLD_ADD_DTPREL_LO12_NCBFD_RELOC_AARCH64_TLSLD_ADD_LO12_NCBFD_RELOC_AARCH64_TLSLD_ADR_PAGE21BFD_RELOC_AARCH64_TLSLD_ADR_PREL21BFD_RELOC_AARCH64_TLSLD_LDST16_DTPREL_LO12BFD_RELOC_AARCH64_TLSLD_LDST16_DTPREL_LO12_NCBFD_RELOC_AARCH64_TLSLD_LDST32_DTPREL_LO12BFD_RELOC_AARCH64_TLSLD_LDST32_DTPREL_LO12_NCBFD_RELOC_AARCH64_TLSLD_LDST64_DTPREL_LO12BFD_RELOC_AARCH64_TLSLD_LDST64_DTPREL_LO12_NCBFD_RELOC_AARCH64_TLSLD_LDST8_DTPREL_LO12BFD_RELOC_AARCH64_TLSLD_LDST8_DTPREL_LO12_NCBFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G0BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G0_NCBFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G1BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G1_NCBFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G2BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G2BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1_NCBFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0_NCBFD_RELOC_AARCH64_TLSLE_ADD_TPREL_HI12BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_LO12BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_LO12_NCBFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12_NCBFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12_NCBFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12_NCBFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12_NCBFD_RELOC_AARCH64_TLSDESC_LD_PREL19BFD_RELOC_AARCH64_TLSDESC_ADR_PREL21BFD_RELOC_AARCH64_TLSDESC_ADR_PAGE21BFD_RELOC_AARCH64_TLSDESC_LD64_LO12BFD_RELOC_AARCH64_TLSDESC_LD32_LO12_NCBFD_RELOC_AARCH64_TLSDESC_ADD_LO12BFD_RELOC_AARCH64_TLSDESC_OFF_G1BFD_RELOC_AARCH64_TLSDESC_OFF_G0_NCBFD_RELOC_AARCH64_TLSDESC_CALLBFD_RELOC_AARCH64_GAS_INTERNAL_FIXUPBFD_RELOC_AARCH64_TLSLD_LDST_DTPREL_LO12BFD_RELOC_AARCH64_TLSLD_LDST_DTPREL_LO12_NCBFD_RELOC_AARCH64_TLSLE_LDST_TPREL_LO12BFD_RELOC_AARCH64_TLSLE_LDST_TPREL_LO12_NCBFD_RELOC_AARCH64_LD_GOT_LO12_NCBFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_LO12_NCBFD_RELOC_AARCH64_TLSDESC_LD_LO12_NCBFD_RELOC_TILEPRO_JOFFLONG_X1_PLTBFD_RELOC_TILEPRO_DEST_IMM8_X1BFD_RELOC_TILEPRO_IMM16_X0_PCRELBFD_RELOC_TILEPRO_IMM16_X1_PCRELBFD_RELOC_TILEPRO_IMM16_X0_LO_PCRELBFD_RELOC_TILEPRO_IMM16_X1_LO_PCRELBFD_RELOC_TILEPRO_IMM16_X0_HI_PCRELBFD_RELOC_TILEPRO_IMM16_X1_HI_PCRELBFD_RELOC_TILEPRO_IMM16_X0_HA_PCRELBFD_RELOC_TILEPRO_IMM16_X1_HA_PCRELBFD_RELOC_TILEPRO_IMM16_X0_GOTBFD_RELOC_TILEPRO_IMM16_X1_GOTBFD_RELOC_TILEPRO_IMM16_X0_GOT_LOBFD_RELOC_TILEPRO_IMM16_X1_GOT_LOBFD_RELOC_TILEPRO_IMM16_X0_GOT_HIBFD_RELOC_TILEPRO_IMM16_X1_GOT_HIBFD_RELOC_TILEPRO_IMM16_X0_GOT_HABFD_RELOC_TILEPRO_IMM16_X1_GOT_HABFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADDBFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADDBFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADDBFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADDBFD_RELOC_TILEPRO_IMM16_X0_TLS_GDBFD_RELOC_TILEPRO_IMM16_X1_TLS_GDBFD_RELOC_TILEPRO_IMM16_X0_TLS_GD_LOBFD_RELOC_TILEPRO_IMM16_X1_TLS_GD_LOBFD_RELOC_TILEPRO_IMM16_X0_TLS_GD_HIBFD_RELOC_TILEPRO_IMM16_X1_TLS_GD_HIBFD_RELOC_TILEPRO_IMM16_X0_TLS_GD_HABFD_RELOC_TILEPRO_IMM16_X1_TLS_GD_HABFD_RELOC_TILEPRO_IMM16_X0_TLS_IEBFD_RELOC_TILEPRO_IMM16_X1_TLS_IEBFD_RELOC_TILEPRO_IMM16_X0_TLS_IE_LOBFD_RELOC_TILEPRO_IMM16_X1_TLS_IE_LOBFD_RELOC_TILEPRO_IMM16_X0_TLS_IE_HIBFD_RELOC_TILEPRO_IMM16_X1_TLS_IE_HIBFD_RELOC_TILEPRO_IMM16_X0_TLS_IE_HABFD_RELOC_TILEPRO_IMM16_X1_TLS_IE_HABFD_RELOC_TILEPRO_TLS_DTPMOD32BFD_RELOC_TILEPRO_TLS_DTPOFF32BFD_RELOC_TILEPRO_IMM16_X0_TLS_LEBFD_RELOC_TILEPRO_IMM16_X1_TLS_LEBFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LOBFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LOBFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HIBFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HIBFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HABFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HABFD_RELOC_TILEGX_JUMPOFF_X1_PLTBFD_RELOC_TILEGX_IMM16_X0_HW0_LASTBFD_RELOC_TILEGX_IMM16_X1_HW0_LASTBFD_RELOC_TILEGX_IMM16_X0_HW1_LASTBFD_RELOC_TILEGX_IMM16_X1_HW1_LASTBFD_RELOC_TILEGX_IMM16_X0_HW2_LASTBFD_RELOC_TILEGX_IMM16_X1_HW2_LASTBFD_RELOC_TILEGX_IMM16_X0_HW0_PCRELBFD_RELOC_TILEGX_IMM16_X1_HW0_PCRELBFD_RELOC_TILEGX_IMM16_X0_HW1_PCRELBFD_RELOC_TILEGX_IMM16_X1_HW1_PCRELBFD_RELOC_TILEGX_IMM16_X0_HW2_PCRELBFD_RELOC_TILEGX_IMM16_X1_HW2_PCRELBFD_RELOC_TILEGX_IMM16_X0_HW3_PCRELBFD_RELOC_TILEGX_IMM16_X1_HW3_PCRELBFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_PCRELBFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_PCRELBFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_PCRELBFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_PCRELBFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_PCRELBFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_PCRELBFD_RELOC_TILEGX_IMM16_X0_HW0_GOTBFD_RELOC_TILEGX_IMM16_X1_HW0_GOTBFD_RELOC_TILEGX_IMM16_X0_HW0_PLT_PCRELBFD_RELOC_TILEGX_IMM16_X1_HW0_PLT_PCRELBFD_RELOC_TILEGX_IMM16_X0_HW1_PLT_PCRELBFD_RELOC_TILEGX_IMM16_X1_HW1_PLT_PCRELBFD_RELOC_TILEGX_IMM16_X0_HW2_PLT_PCRELBFD_RELOC_TILEGX_IMM16_X1_HW2_PLT_PCRELBFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_GOTBFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_GOTBFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_GOTBFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_GOTBFD_RELOC_TILEGX_IMM16_X0_HW3_PLT_PCRELBFD_RELOC_TILEGX_IMM16_X1_HW3_PLT_PCRELBFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_GDBFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_GDBFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LEBFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LEBFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LEBFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LEBFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LEBFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LEBFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_GDBFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_GDBFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_GDBFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_GDBFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_IEBFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_IEBFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_PLT_PCRELBFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_PLT_PCRELBFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_PLT_PCRELBFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_PLT_PCRELBFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_PLT_PCRELBFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_PLT_PCRELBFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_IEBFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_IEBFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_IEBFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_IEBFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADDBFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADDBFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADDBFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADDBFD_RELOC_TILEGX_IMM8_X0_TLS_ADDBFD_RELOC_TILEGX_IMM8_X1_TLS_ADDBFD_RELOC_TILEGX_IMM8_Y0_TLS_ADDBFD_RELOC_TILEGX_IMM8_Y1_TLS_ADDBFD_RELOC_WASM32_LEB128_GOT_CODEBFD_RELOC_CKCORE_PCREL_IMM8BY4BFD_RELOC_CKCORE_PCREL_IMM11BY2BFD_RELOC_CKCORE_PCREL_IMM4BY2BFD_RELOC_CKCORE_PCREL_JSR_IMM11BY2BFD_RELOC_CKCORE_GNU_VTINHERITBFD_RELOC_CKCORE_PCREL_IMM26BY2BFD_RELOC_CKCORE_PCREL_IMM16BY2BFD_RELOC_CKCORE_PCREL_IMM16BY4BFD_RELOC_CKCORE_PCREL_IMM10BY2BFD_RELOC_CKCORE_PCREL_IMM10BY4BFD_RELOC_CKCORE_PCREL_JSR_IMM26BY2BFD_RELOC_CKCORE_PCREL_IMM18BY2BFD_RELOC_CKCORE_DOFFSET_IMM18BFD_RELOC_CKCORE_DOFFSET_IMM18BY2BFD_RELOC_CKCORE_DOFFSET_IMM18BY4BFD_RELOC_CKCORE_PCREL_IMM7BY4BFD_RELOC_CKCORE_PCREL_FLRW_IMM8BY4BFD_RELOC_CKCORE_PCREL_BLOOP_IMM4BY4BFD_RELOC_CKCORE_PCREL_BLOOP_IMM12BY4BFD_RELOC_LARCH_SOP_PUSH_PCRELBFD_RELOC_LARCH_SOP_PUSH_ABSOLUTEBFD_RELOC_LARCH_SOP_PUSH_GPRELBFD_RELOC_LARCH_SOP_PUSH_TLS_TPRELBFD_RELOC_LARCH_SOP_PUSH_TLS_GOTBFD_RELOC_LARCH_SOP_PUSH_TLS_GDBFD_RELOC_LARCH_SOP_PUSH_PLT_PCRELBFD_RELOC_LARCH_SOP_POP_32_S_10_5BFD_RELOC_LARCH_SOP_POP_32_U_10_12BFD_RELOC_LARCH_SOP_POP_32_S_10_12BFD_RELOC_LARCH_SOP_POP_32_S_10_16BFD_RELOC_LARCH_SOP_POP_32_S_10_16_S2BFD_RELOC_LARCH_SOP_POP_32_S_5_20BFD_RELOC_LARCH_SOP_POP_32_S_0_5_10_16_S2BFD_RELOC_LARCH_SOP_POP_32_S_0_10_10_16_S2BFD_RELOC_LARCH_TLS_IE_PC_HI20BFD_RELOC_LARCH_TLS_IE_PC_LO12BFD_RELOC_LARCH_TLS_IE64_PC_LO20BFD_RELOC_LARCH_TLS_IE64_PC_HI12BFD_RELOC_LARCH_TLS_LD_PC_HI20BFD_RELOC_LARCH_TLS_GD_PC_HI20BFD_RELOC_LARCH_TLS_DESC_PC_HI20BFD_RELOC_LARCH_TLS_DESC_PC_LO12BFD_RELOC_LARCH_TLS_DESC64_PC_LO20BFD_RELOC_LARCH_TLS_DESC64_PC_HI12BFD_RELOC_LARCH_TLS_DESC64_LO20BFD_RELOC_LARCH_TLS_DESC64_HI12BFD_RELOC_LARCH_TLS_LD_PCREL20_S2BFD_RELOC_LARCH_TLS_GD_PCREL20_S2BFD_RELOC_LARCH_TLS_DESC_PCREL20_S2@@overflow: BFD_RELOC_UNUSED@@warning: writing section `%pA' at huge (ie negative) file offset%pB 64-bit address %#lx out of range for Intel Hex file%pB: address %#lx out of range for Intel Hex file%pB:%d: unexpected character `%s' in Intel Hex file%pB: internal error in ihex_read_section%pB: bad section length in ihex_read_section%pB:%u: bad checksum in Intel Hex file (expected %u, found %u)%pB:%u: bad extended address record length in Intel Hex file%pB:%u: bad extended start address length in Intel Hex file%pB:%u: bad extended linear address record length in Intel Hex file%pB:%u: bad extended linear start address length in Intel Hex file%pB:%u: unrecognized ihex type %u in Intel Hex file%pB:%d: unexpected character `%s' in S-record file%pB:%d: byte count %d too small%pB:%d: bad checksum in S-record file%F%P: discarded output section: `%pA' %F%pB: PC-relative offset overflow in PLT entry for `%s' Local IFUNC function `%s' in %pB %F%pB: branch displacement overflow in PLT entry for `%s' %F%pB: PC-relative offset overflow in GOT PLT entry for `%s' %pB: unsupported relocation type %#x%pB: relocation %s against %s%s`%s' can not be used when making %s%s%pB: relocation %s against STT_GNU_IFUNC symbol `%s' isn't supported%pB: relocation %s against STT_GNU_IFUNC symbol `%s' has non-zero addend: %ld%pB: relocation R_X86_64_GOTOFF64 against undefined %s `%s' can not be used when making a shared object%pB: relocation R_X86_64_GOTOFF64 against protected %s `%s' can not be used when making a shared object%pB: addend %s%#x in relocation %s against symbol `%s' at %#lx in section `%pA' is out of range%pB(%pA+%#lx): unresolvable %s relocation against symbol `%s' failed to convert GOTPCREL relocation against '%s'; relink with --no-relax %pB(%pA+%#lx): reloc against `%s': error %d%pB: relocation %s against symbol `%s' isn't supported in x32 mode%pB: '%s' accessed both as normal and thread local symbol%pB: non-canonical reference to canonical protected function `%s' in %pB%pB: unsupported relocation %s against symbol `%s'R_X86_64_CODE_4_GOTPC32_TLSDESCR_X86_64_CODE_5_GOTPC32_TLSDESCR_X86_64_CODE_6_GOTPC32_TLSDESC%F%P: %pB: failed to allocate relative reloc record %F%P: %pB: failed to allocate 64-bit DT_RELR bitmap %F%P: %pB: failed to allocate 32-bit DT_RELR bitmap %F%P: %pB: size of compact relative reloc section is changed: new (%lu) != old (%lu) %F%P: %pB: relocation %s against absolute symbol `%s' in section `%pA' is disallowed %P: %pB: warning: relocation in read-only section `%pA' discarded output section: `%pA'%pB: %s (offset: 0x%v, info: 0x%v, addend: 0x%v) against '%s' for section '%pA' in %pB %pB: %s (offset: 0x%v, info: 0x%v) against '%s' for section '%pA' in %pB %F%P: %pB: failed to allocate memory for section `%pA' %F%P: %pB: failed to allocate compact relative reloc section %pB: TLS transition from %s to %s against `%s' at 0x%v in section `%pA' failed %pB(%pA+0x%v): relocation %s against `%s' must be used in ADD only %pB(%pA+0x%v): relocation %s against `%s' must be used in ADD or MOV only %pB(%pA+0x%v): relocation %s against `%s' must be used in ADD, SUB or MOV only %pB(%pA+0x%v): relocation %s against `%s' must be used in indirect CALL with %s register only %pB(%pA+0x%v): relocation %s against `%s' must be used in LEA only %F%P: %pB: copy relocation against non-copyable protected symbol `%s' in %pB error: %pB: %F%pA: failed to align section %F%P: failed to create VxWorks dynamic sections %F%P: failed to create GOT sections %F%P: failed to create ifunc sections %F%P: failed to create GOT PLT section %F%P: failed to create IBT-enabled PLT section %F%P: failed to create PLT .eh_frame section %F%P: failed to create GOT PLT .eh_frame section %F%P: failed to create the second PLT .eh_frame section %F%P: failed to create PLT .sframe section %F%P: failed to create second PLT .sframe section %F%P: failed to create PLT GOT .sframe section %X%P: attempted static link of dynamic object `%pB' %F%P: dynamic STT_GNU_IFUNC symbol `%s' with pointer equality in `%pB' can not be used when making an executable; recompile with -fPIE and relink with -pie warning: %pB has a section extending past end of file%pB: version count (%ld) does not match symbol count (%ld)%pB(%pA): relocation %d has invalid symbol index %ldwarning: %pB has a corrupt string table indexwarning: %pB has a program header with invalid alignmentwarning: %pB has a segment extending past end of file%pB: GNU_MBIND section `%pA' has invalid sh_info field: %d%pB: error: alignment power %d of section `%pA' is too bigwarning: section `%pA' type changed to PROGBITS%pB: invalid sh_link field (%d) in section number %d%pB: failed to find link section for section %d%pB: failed to find info section for section %d%pB: string table [%u] is corrupt%pB: attempt to load strings from a non-string section (number %d)%pB: invalid string offset %u >= %lu for section `%s'%pB symbol number %lu references nonexistent SHT_SYMTAB_SHNDX section%pB: DT_STRTAB table is corrupt%F%P: failed to size relative relocations %pB: TLS sections are not adjacent:%pB: sh_link of section `%pA' points to discarded section `%pA' of `%pB'%pB: sh_link of section `%pA' points to removed section `%pA' of `%pB'%pB: Unable to handle section index %x in ELF symbol. Using ABS instead.unable to find equivalent output section for symbol '%s' from section '%s'%pB: The first section in the PT_DYNAMIC segment is not the .dynamic section%pB: not enough room for program headers, try linking with -N%pB: section %pA lma %#lx adjusted to %#lx%pB: error: PHDR segment not covered by LOAD segment%pB: section `%pA' can't be allocated in segment %u%pB: warning: allocated section `%s' not in segment%pB: warning: unable to allocate any sections to PT_GNU_RELRO segment%pB: error: non-load segment %d includes file header and/or program headererror: %pB has a TLS segment with execute permissionwarning: %pB has a TLS segment with execute permissionerror: %pB has a LOAD segment with RWX permissionswarning: %pB has a LOAD segment with RWX permissions%pB: symbol `%s' required but not present%pB: warning: segment alignment of %#lx is too large%pB: warning: empty loadable segment detected at vaddr=%#lx, is this intentional?%pB: .gnu.version_r invalid entry%pB: .gnu.version_d invalid entry%pB:%pA: error: attempting to write over the end of the section%pB:%pA: error: attempting to write section into an empty buffer%pB: warning: win32pstatus %s of size %lu bytes is too small%pB: win32pstatus NOTE_INFO_MODULE of size %lu is too small to contain a name of size %uGNU_MBIND section is supported only by GNU and FreeBSD targetssymbol type STT_GNU_IFUNC is supported only by GNU and FreeBSD targetssymbol binding STB_GNU_UNIQUE is supported only by GNU and FreeBSD targetsGNU_RETAIN section is supported only by GNU and FreeBSD targets%pB(%pA): relocation %zu has invalid symbol index %lu%pB(%pA): link section cannot be set because the output file does not have a symbol table%pB(%pA): info section index is invalid%pB(%pA): info section index cannot be set because the section is not in the output%pB(%pA): error: secondary reloc section processed twice%pB(%pA): error: secondary reloc section has zero sized entries%pB(%pA): error: secondary reloc section has non-standard sized entries%pB(%pA): error: secondary reloc section is empty!%pB(%pA): error: internal relocs missing for secondary reloc section%pB(%pA): error: secondary reloc %zu references a missing symbol%pB(%pA): error: secondary reloc %zu references a deleted symbol%pB(%pA): error: secondary reloc %zu is of an unknown type%pB: unable to compress section %s%pB: unable to decompress section %s%pB: section %s is compressed with zstd, but BFD is not built with zstd support%pB: warning: loop in section dependencies detected%pB: warning: multiple symbol tables detected - ignoring the table in section %u%pB: warning: multiple dynamic symbol tables detected - ignoring the table in section %u%pB: invalid link %u for reloc section %s (index %u)%pB: warning: secondary relocation section '%s' for section %pA found - ignoring%pB: unknown type [%#x] section `%s'%pB: sh_link [%d] in section `%pA' is incorrect%pB: could not read contents of group [%u]%pB: invalid entry (%#x) in group [%u]%pB: unexpected type (%#x) section `%s' in group [%u]%pB: section group entry number %u is corrupt 0x%8.8lx 0x%2.2x %2.2d %s %P%X: can not read symbols: %E %pB: bad reloc symbol index (%#lx >= %#lx) for offset %#lx in section `%pA'%pB: non-zero symbol index (%#lx) for offset %#lx in section `%pA' when the object file has no symbol table%F%P: %pB: failed to add %s to first hash %pB:%pA: error: relocation references symbol %s which was removed by garbage collection%pB:%pA: error: try relinking with --gc-keep-exported enabled%pB: unable to sort relocs - they are in more than one size%pB: unable to sort relocs - they are of an unknown sizenot enough memory to sort relocations%pB: dynamic relocation against `%pT' in read-only section `%pA' %P: %pB: warning: relocation against `%s' in read-only section `%pA' undefined %s reference in complex symbol: %sunknown operator '%c' in complex symbol%pB: internal symbol `%s' in %pB is referenced by DSO%pB: hidden symbol `%s' in %pB is referenced by DSO%pB: local symbol `%s' in %pB is referenced by DSO%pB: protected symbol `%s' isn't defined%pB: internal symbol `%s' isn't defined%pB: hidden symbol `%s' isn't defined%pB: could not find output section %pA for input section %pA%pB: no symbol version section for versioned symbol `%s'%pB: too many sections: %d (>= %d)%pB: version node not found for symbol %swarning: type and size of dynamic symbol `%s' are not defined%s: TLS definition in %pB section %pA mismatches non-TLS definition in %pB section %pA%s: TLS reference in %pB mismatches non-TLS reference in %pB%s: TLS definition in %pB section %pA mismatches non-TLS reference in %pB%s: TLS reference in %pB mismatches non-TLS definition in %pB section %pA%pB: relocation size mismatch in %pB section %pA%P: copy reloc against protected `%pT' is dangerous %F%P: first_hash failed to create: %E alternate ELF machine code found (%d) in %pB, expecting %d%pB: invalid version offset %lx (max %lx)%pB: %s local symbol at index %lu (>= sh_info of %lu)%pB: not enough version information%pB: %s: invalid version %u (max %d)%pB: %s: invalid needed version %d%pB: unexpected redefinition of indirect versioned symbol `%s'warning: alignment %u of common symbol `%s' in %pB is greater than the alignment (%u) of its section %pAwarning: alignment %u of normal symbol `%s' in %pB is smaller than %u used by the common definition in %pBwarning: NOTE: alignment discrepancies can cause real problems. Investigation is advised.warning: size of symbol `%s' changed from %lu in %pB to %lu in %pBwarning: NOTE: size discrepancies can cause real problems. Investigation is advised.warning: type of symbol `%s' changed from %d to %d in %pB%pB: undefined reference to symbol '%s'%pB: stack size specified and %s seterror: creating an executable stack because of -z execstack command line optionwarning: enabling an executable stack because of -z execstack command line optionerror: %s: is triggering the generation of an executable stack (because it has an executable .note.GNU-stack section)warning: %s: requires executable stack (because the .note.GNU-stack section is executable)error: %s: is triggering the generation of an executable stack because it does not have a .note.GNU-stack sectionwarning: %s: missing .note.GNU-stack section implies executable stackNOTE: This behaviour is deprecated and will be removed in a future version of the linker%pB: .preinit_array section is not allowed in DSO%F%P: %pB: failed to finish relative relocations error: %pB contains a reloc (%#lx) for section %pA that references a non-existent global symbol%X`%s' referenced in section `%pA' of %pB: defined in discarded section `%pA' of %pB error: %pB: size of section %pA is not multiple of address size%pB: file class %s incompatible with %s%pB: no symbol found for import library%pB: failed to generate import librarywarning: %s section has zero sizewarning: section '%s' is being made into a note%P%X: read-only segment has dynamic relocations %P: warning: creating DT_TEXTREL in a shared object %P: warning: creating DT_TEXTREL in a PDE %P: warning: creating DT_TEXTREL in a PIE %F%P: %pB(%pA): error: need linked-to section for --gc-sections warning: gc-sections option ignoredremoving unused section '%pA' in file '%pB'%pB: %pA+%#lx: no symbol found for INHERIT%pB: section '%pA': corrupt VTENTRY entryunrecognized INPUT_SECTION_FLAG %s %P: warning: GNU indirect functions with DT_TEXTREL may result in a segfault at runtime; recompile with %s %pB: error: attribute section '%pA' too big: %#llx%pB: error: attribute section length too small: %lderror: %pB: object has vendor-specific contents that must be processed by the '%s' toolchainerror: %pB: object tag '%d, %s' is incompatible with tag '%d, %s'discarding zero address range FDE in %pB(%pA). error in %pB(%pA); no .eh_frame_hdr table will be createdFDE encoding in %pB(%pA) prevents .eh_frame_hdr table being createdfurther warnings about FDE encoding preventing .eh_frame_hdr generation dropped%pB: %pA invalid input section size%pB: %pA points past end of text sectionDW_EH_PE_datarel unspecified for this architectureinvalid output section for .eh_frame_entry: %pAinvalid contents in %pA section.eh_frame_hdr refers to overlapping FDEserror in %pB(%pA); no .sframe will be createdinput SFrame sections with different abi prevent .sframe generationinput SFrame sections with different format versions prevent .sframe generationDWARF error: can't find %s section.DWARF error: section %s has no contentsDWARF error: section %s is too bigDWARF error: offset (%lu) greater than or equal to %s size (%lu)DWARF error: mangled line number section (bad file number)DWARF error: info pointer extends beyond end of attributes/home/wildlama/miniconda3/envs/lam_a2e/lib/debugDWARF error: invalid or unhandled FORM value: %#xDWARF error: zero format countDWARF error: data count (%lx) larger than buffer sizeDWARF error: unknown format content type %luDWARF error: found dwarf version '%u', this reader only handles version 2, 3, 4 and 5 informationDWARF error: found address size '%u', this reader can not handle sizes greater than '%u'DWARF error: found address size '%u', this reader can only handle address sizes '2', '4' and '8'DWARF error: could not find abbrev number %uDWARF error: DW_AT_comp_dir attribute encountered with a non-string formDWARF error: line info section is too small (%ld)DWARF error: line info data is bigger (%#lx) than the space remaining in the section (%#lx)DWARF error: unhandled .debug_line version %dDWARF error: ran out of room reading prologueDWARF error: line info unsupported segment selector size %uDWARF error: invalid maximum operations per instructionDWARF error: ran out of room reading opcodesDWARF error: mangled line number sectionDWARF error: could not find variable specification at offset 0x%lxDWARF error: abstract instance recursion detectedDWARF error: invalid abstract instance DIE refDWARF error: unable to read alt ref %luDWARF error: unable to locate abstract instance DIE ref %lu%pB: unsupported relocation type: %#x%pB: direct GOT relocation R_386_GOT32X against `%s' without base register can not be used when making a shared object%pB: `%s' accessed both as normal and thread local symbol%pB: unsupported non-PIC call to IFUNC `%s'%pB: direct GOT relocation %s against `%s' without base register can not be used when making a shared object%pB: relocation R_386_GOTOFF against undefined %s `%s' can not be used when making a shared object%pB: relocation R_386_GOTOFF against protected %s `%s' can not be used when making a shared object%pB: %pA+%lx: relocation addend %lx too largewarning: %pB: local symbol `%s' has no section%pB: overflow reloc count too small%pB: warning: claims to have 0xffff relocs, without overflow%pB: unrecognized storage class %d for %s symbol `%s'%pB: warning: line number table read failed%pB: warning: illegal symbol index 0x%lx in line number entry %d%pB: warning: illegal symbol in line number entry %d%pB: warning: duplicate line number information for `%s'%pB: warning: illegal symbol index %ld in relocs%pB: illegal relocation type %d at address %#lx%pB: unrecognised machine type (0x%x) in Import Library Format archive%pB: recognised but unhandled machine type (0x%x) in Import Library Format archive%pB: size field is zero in Import Library Format header%pB: string not null terminated in ILF object file%pB: unrecognized import type; %x%pB: missing import name for IMPORT_NAME_EXPORTAS for %s%pB: unrecognized import name type; %x%pB: adjusting invalid SectionAlignment%pB: adjusting invalid FileAlignment%pB: invalid NumberOfRvaAndSizes%pB: error: debug data ends beyond end of debug directory%pB: section %pA: string table overflow at offset %ld%pB:%s section %s: alignment 2**%u not representable%pB: reloc against a non-existent symbol index: %ld%pB: warning: ignoring section flag %s in section %s%pB: unable to load COMDAT section name%pB: warning: no symbol for section '%s' found%pB: error: unexpected symbol '%s' in COMDAT section%pB: warning: COMDAT symbol '%s' does not match section name '%s'%pB (%s): section flag %s (%#lx) ignored Table: Char: %d, Time: %08lx, Ver: %d/%d, Num Names: %d, IDs: %d %03x %*.s Leaf: Addr: %#08lx, Size: %#08lx, Codepage: %d .rsrc merge failure: multiple non-default manifests.rsrc merge failure: dirs with differing characteristics.rsrc merge failure: differing directory versions.rsrc merge failure: a directory matches a leaf.rsrc merge failure: duplicate string resource: %d.rsrc merge failure: duplicate leaf.rsrc merge failure: duplicate leaf: %s%pB: unable to find name for empty section%pB: out of memory creating name for empty section%pB: unable to create fake empty section%pB:%.8s: section below image base%pB: line number overflow: 0x%lx > 0xffff There is a debug directory, but the section containing it could not be found There is a debug directory in %s, but that section has no contents Error: section %s contains the debug data starting address but it is too small There is a debug directory in %s at 0x%lx The debug data size field in the data directory is too big for the sectionType Size Rva Offset %2ld %14s %08lx %08lx %08lx (format %c%c%c%c signature %s age %ld pdb %s) The debug directory size is not a multiple of the debug directory entry size warning, .pdata section size (%ld) is not a multiple of %d The Function Table (interpreted .pdata section contents) vma: Begin Prolog Function Flags Exception EH Address Length Length 32b exc Handler Data copy to swap file if on removable mediacopy to swap file if on network mediarun only on uniprocessor machine (This is a reproducible build file hash, not a timestamp) There is an import table, but the section containing it could not be found There is an import table in %s, but that section has no contents There is an import table in %s at 0x%lx The Import Tables (interpreted %s section contents) vma: Hint Time Forward DLL First Table Stamp Chain Name Thunk %08lx %08lx %08lx %08lx %08lx vma: Ordinal Hint Member-Name Bound-To There is a first thunk, but the section containing it could not be found There is an export table, but the section containing it could not be found There is an export table in %s, but it is too small (%d) There is an export table in %s, but contents cannot be read There is an export table in %s at 0x%lx The Export Tables (interpreted %s section contents) Export Address Table %08lx [Name Pointer/Ordinal] Table %08lx Export Address Table -- Ordinal Base %ld Ordinal Address Type Invalid Export Address Table rva (0x%lx) or entry count (0x%lx) [%4ld] +base[%4ld] %08lx %s -- %.*s [Ordinal/Name Pointer] Table -- Ordinal Base %ld Ordinal Hint Name Invalid Name Pointer Table rva (0x%lx) or entry count (0x%lx) Invalid Ordinal Table rva (0x%lx) or entry count (0x%lx) [%4ld] +base[%4ld] %04lx [%4ld] +base[%4ld] %04lx %.*s vma: Begin End EH EH PrologEnd Exception Address Address Handler Data Address Mask Virtual size of .pdata section (%ld) larger than real size (%ld) PE File Base Relocations (interpreted .reloc section contents) Virtual Address: %08lx Chunk size %ld (0x%lx) Number of fixups %ld reloc %4d offset %4x [%4lx] %s The .rsrc Resource Directory section: Corrupt .rsrc section detected! WARNING: Extra data in .rsrc section - it will be ignored by Windows: String table starts at offset: %#03x Resources start at offset: %#03x %pB: Data Directory (%lx bytes at %lx) extends across section boundary at %lxfailed to update file offsets in debug directory%pB: failed to read debug data section%pB: unable to fill in DataDictionary[1] because .idata$2 is missing%pB: unable to fill in DataDictionary[1] because .idata$4 is missing%pB: unable to fill in DataDictionary[12] because .idata$5 is missing%pB: unable to fill in DataDictionary[PE_IMPORT_ADDRESS_TABLE (12)] because .idata$6 is missing%pB: unable to fill in DataDictionary[PE_IMPORT_ADDRESS_TABLE(12)] because .idata$6 is missing%pB: unable to fill in DataDictionary[9] because __tls_used is missing%pB: .rsrc merge failure: corrupt .rsrc section%pB: .rsrc merge failure: unexpected .rsrc sizeExport Directory [.edata (or where ever we found it)]Import Directory [parts of .idata]Base Relocation Directory [.reloc]Thread Storage Directory [.tls]Import Address Table Directory%pB: stripping non-representable symbol '%s' (value 0x%lx)%pB: %pA: reloc overflow: %#x > 0xffff%pB: warning: %pA: line number overflow: %#x > 0xffffwarning: symbol `%s' is both section and non-section%pB: relocs in section `%pA', but it has no contents%pB: illegal symbol index %ld in relocs%pB: bad reloc address %#lx in section `%pA'%pB: bad string table size %lu(sec %2d)(fl 0x%02x)(ty %4x)(scl %3d) (nx %d) 0xAUX scnlen 0x%lx nreloc %d nlnno %d checksum 0x%x assoc %d comdat %dAUX tagndx %ld ttlsiz 0x%lx lnnos %ld next %ldAUX lnno %d size 0x%x tagndx %ldR_AMD64_IMAGEBASE with __ImageBase undefinedWarning: %s section size (%ld) is not a multiple of %d Warning: %s section size is zero Warning: %s section size (%ld) is smaller than virtual size (%ld) The Function Table (interpreted %s section contents) vma: BeginAddress EndAddress UnwindData has %s begin address as predecessor has negative unwind address also used for function at %016lx (rva: %08x): %016lx - %016lx warning: xdata section corrupt UNW_FLAG_EHANDLER | UNW_FLAG_UHANDLERPrologue size: 0x%02x, Frame offset: 0x%x, v2 epilog (length: %02x) at pc+:alloc large area: rsp = rsp - 0x%xalloc small area: rsp = rsp - 0x%xFPReg: %s = rsp + 0x%x (info = 0x%x)interrupt entry (SS, old RSP, EFLAGS, CS, RIP Chain: start: %016lx, end: %016lx%pB: Relocations in generic ELF (EM: %d)%pB: relocations in generic ELF (EM: %d)%s: failed to open to extract object only section: %s%pB: invalid file to extract object only section: %s%pB: failed to extract object only section: %s%pB: failed to open object only section: %s%pB: failed to get symbol table in object only section: %splugin framework: out of file descriptors. Try using fewer objects/archives Failed to load plugin '%s', reason: %s /home/wildlama/miniconda3/envs/lam_a2e/lib/bfd-plugins/home/wildlama/miniconda3/envs/lam_a2e/bin/../lib/bfd-plugins%pB: access beyond end of merged section (%ld)%pB(%pA+%#lx): stabs entry has invalid string indexconflict due to enum %s iteration errorconflict due to enum value change: %i versus %iconflict due to struct member %s iteration errorconflict due to struct member %s offset change: %lx versus %lxkind == CTF_K_INTEGER || kind == CTF_K_FLOATctf_add_array: index type %lx is incompletectf_add_unknown: cannot add unknown type named %s: type of this name already definedctf_add_member_offset: cannot add member %s of incomplete type %lx to struct %lx without specifying explicit offset ctf_add_member_offset: cannot add member %s of type %lx to struct %lx without specifying explicit offset after member %s of type %lx, which is an incomplete type ctf_add_type: conflict for type %s: kinds differ, new: %i; old (ID %lx): %iconflict for type %s against ID %lx: array info differs, old %lx/%lx/%x; new: %lx/%lx/%xconflict for type %s against ID %lx: union size differs, old %li, new %liconflict for type %s against ID %lx: members differ, see aboveconflict for enum %s against ID %lx: members differ, see aboveiteration error counting deduplicating CTF link inputserror in deduplicating CTF link input allocationcannot create per-CU CTF archive for input CU %siteration error removing old outputsiteration error in deduplicating link input freeingiterating over function symbolsctf_type_isparent (fp, dst_type)type %lx for symbol %s in input file %s not found: skippedsymbol %s in input file %s found conflicting even when trying in per-CU dict.Inexpressible duplicate variable %s skipped. Variable %s in input file %s depends on a type %lx hidden due to conflicts: skipped. type %lx for variable %s in input file %s not found: skippedallocating CTF dedup atoms tabletoo many inputs in deduplicating link: %licannot open archive %s in CU-mapped CTF linkcannot add intermediate files to linkcannot create per-CU CTF archive for %sCU-mapped deduplication failed for %sCU-mapped deduplicating link type emission failed for %sCU-mapped deduplicating link variable emission failed for %siteration error in CU-mapped deduplicating linkdeduplicating link type emission failed for %sout of memory allocating link outputsdeduplicating link variable emission failed for %sdeduplicating link symbol emission failed for %siteration error creating empty CUsNo symbols: not a final link. symp->st_symidx <= fp->ctf_dynsymmaxerror iterating over shuffled symbolsreading archive from temporary filelinker input %s has CTF func info but uses an old, unreleased func info format: this func info section will be dropped.error checking for outdated inputscannot write archive in link: %s failureIndex section unsorted: sorting. %s not found in idx: dict is dynamic Looking up type of object with symtab idx %lx or name %s in indexed symtypetab Symbol %lx (%s) is of type %x cannot allocate memory for symbol lookup hashtabLooking up type of object with symname %s in writable dict symtypetab Looking up type of object with symtab idx %lx in writable dict symtypetab Looking up object type %lx in 1:1 dict symtypetab ctf_set_base: parent name %s (label %s) cth->cth_stroff >= cth->cth_typeoff(size_t) t2p - (size_t) fp->ctf_buf == cth->cth_stroffinit_static_types(): unhandled CTF kind: %x%zu conflicting enumerators identified %zu struct names hashed (%d long) %zu union names hashed (%d long) %zu base type names and identifiers hashed vbytes == sizeof (ctf_array_t)vbytes == sizeof (ctf_slice_t)unhandled CTF kind in endianness conversion: %xctf_bufopen: magic=0x%x version=%u ctf_bufopen: CTF version %d symsect not supportedctf_bufopen: invalid header flags: %xctf_bufopen: uncompressed size=%lu header offset exceeds CTF sizeCTF sections not properly alignedObject index section is neither empty nor the same length as the object section: %u versus %u bytesFunction index section is neither empty nor the same length as the function section: %u versus %u byteszlib inflate short: got %lu of %lu bytes%lu byte long CTF dictionary overruns %lu byte long CTF sectioninit_symtab (fp, fp->ctf_header, &fp->ctf_ext_symtab) == 0iterating over linker-known symbols during serializationsymbol %s (%x) added to CTF as a function but is of type %x. The symbol type lookup tables are probably corruptedsymbol %s (%x) added to CTF as a data object but is of type %x. The symbol type lookup tables are probably corruptediterating over CTF symtypetab during serializationiterating over linker-known symbols during CTF serializationEmitting table of size %i, outmax %u, %u symtypetab entries, flags %i (((char *) dpp) - (char *) dp) < sizeEmitting index of size %i, %u entries reported by linker, flags %i !(flags & CTF_SYMTYPETAB_EMIT_PAD)(((char *) dpp) - (char *) dp) <= sizeObject symtypetab: %i objects, max %i, unpadded size %i, %i bytes of pads, index size %i Function symtypetab: %i functions, max %i, unpadded size %i, %i bytes of pads, index size %i Emitting unindexed objt symtypetab Emitting indexed objt symtypetab Emitting unindexed func symtypetab Emitting indexed func symtypetab t == (unsigned char *) buf + sizeof (ctf_header_t) + hdr.cth_varofft == (unsigned char *) buf + sizeof (ctf_header_t) + hdr.cth_typeofft == (unsigned char *) buf + sizeof (ctf_header_t) + hdr.cth_stroffrawbufsiz >= sizeof (ctf_header_t)ctf_write_mem: cannot allocate %li bytesctf_compress_write: error writingctf_str_write_strtab: error counting strtab entries: %s %lu bytes of strings in strtab: %lu pre-existing. ctf_str_write_strtab: error iterating over atoms while updating refs: %s ctf_version: client using version %d %s: %lu: libctf assertion failed: %sn < LCTF_INFO_VLEN (fp, tp->ctt_info)(n + 1) * sizeof (ctf_lmember_t) <= vbytessymhdr->sh_entsize == get_elf_backend_data (abfd)->s->sizeof_symctf_bfdopen(): cannot malloc CTF section: %sctf_arc_write(): cannot determine file position while writing to archivectf_arc_write(): cannot write CTF file to archivectf_arc_write(): cannot get current file position in archivectf_arc_write(): cannot write name table to archivearc_mmap_writeout(): cannot sync after writing to %s: %sctf_arc_write(): cannot extend file while writingarc_mmap_munmap(): cannot unmap after writing to %s: %sctf_arc_write(): error writing named CTF to archiveWriting CTF archive with %lu files ctf_arc_write(): cannot create %sctf_arc_write(): cannot close after writing to archivectf_arc_bufopen(): cannot open CTFctf_arc_open(): cannot stat %sctf_arc_open(): cannot read in %sctf_arc_open(): %s: invalid magic numberctf_arc_open(): cannot open %sctf_dict_open_internal(%s): opening ctf_dict_open_by_offset(%lu): opening Out of memory marking %s as conflicted ctf_dynhash_elements (d->cd_output_mapping) > 0Looked up type kind by nonexistent hash %s. Counting hash %s: kind %i: num_non_forwards is %i Using synthetic forward for conflicted struct/union with hval %s Cross-TU conflicted struct: passing back forward, %lx Mapping %i/%lx to target %p (%s) hval && td->cd_output_emission_hashescannot add synthetic forward for type %i/%lxLooking up %i/%lx, hash %s, in target Checking shared parent for target (target != output) && (target->ctf_flags & LCTF_CHILD)%i: Emitting type with hash %s from %s: determining target %i: Type %s in %i/%lx is conflicted: inserting into per-CU target. cannot create per-CU CTF archive for CU %s%s: lookup failure for type %lx%i: Emitting type with hash %s (%s), into target %i/%p %s (%i): cannot add enumeration value %s from input type %lx%i: Noting need to emit members of %p -> %p %s: unknown type kind for input type %lxout of memory tracking deduplicated global type IDs%i: Inserted %s, %i/%lx -> %lx into emission hash for target %p (%s) out of memory creating emission-tracking hashes%s (%i): while emitting deduplicated %s, error getting input type %lx%s (%i): while emitting deduplicated %s, error emitting target type from input type %lxone_ninput < arg->ninputs && two_ninput < arg->ninputserror during func type info lookuperror doing func arg type lookuperror during array info lookupCTF dict corruption: unknown type kind%lu: Starting walk over type %s, %i/%lx (%p), from %s, kind %i Looking up ID %i/%lx in type hashes %s in input file %s at type ID %lxlooked up type kind by nonexistent hash %sout of memory tracking already-visited typeserror doing array contents type hashingerror doing array index type hashingerror getting func return typeerror doing func arg type hashingerror doing enum member iterationerror doing struct/union member type hashingerror doing struct/union member iterationerror doing referenced type hashingerror doing slice-referenced type hashing%s (%i): out of memory during forwarding-stub hashing for type with GID %p%s (%i): %s: during type hashing for type %lx, kind %ierror calling population function%s (%i): lookup failure for type %lx: flags %x%s (%i): %s: during type hashing, type %lx, kind %ierror finding commonest conflicting typemarking uncommon conflicting typeserror marking conflicting structs/unionsctf_dedup_init: cannot initialize: out of memoryctf_dedup: cannot initialize: %s iteration failure computing type hashesDetecting type name ambiguity Marking %p, with hash %s, conflicting: one of many non-forward GIDs for %s Marking %s, an uncommon hash for %s, conflicting error marking hashes as conflictingConflictifying unshared types iteration error propagating conflictednesscannot recurse over output mapping%s (%i): error emitting members for structure type %lxiteration failure emitting structure membersout of memory allocating link outputs array!cu_mapped || (cu_mapped && num_outputs == 1)dict %p passed to ctf_dedup_type_mapping is not a deduplicated outputfre_size == (addr_size + sizeof (fre->fre_info) + stack_offsets_sz)fre_type == 0 || fre_type == 1 || fre_type == 2fde_type == 0 || fde_type == 1sframe_decode: magic=0x%x version=%u flags=%u fre->fre_start_addr < fdep->sfde_func_sizefre->fre_start_addr == fdep->sfde_func_sizefrep->fre_start_addr < fdep->sfde_func_sizefrep->fre_start_addr == fdep->sfde_func_size(uint64_t)frep->fre_start_addr <= bitmask(fre_start_addr_sz + sizeof (frep->fre_info) + fre_stack_offsets_sz) == fre_sz(size_t)(contents - encoder->sfe_data) == buf_sizeAutomatic selection based on executableGNU (g++) V3 (Itanium C++ ABI) style demanglingtemplate parameter object for std::basic_string, std::allocator >std::basic_istream >std::basic_ostream >std::basic_iostream >%s: error: too many @-files encountered %s: error: @-file refers to a directory Cannot find prime bigger than %lu Cannot create temporary file in %s: %s posix_spawn_file_actions_adddup2posix_spawn_file_actions_addclose %s%sout of memory allocating %lu bytes after a total of %lu bytes could not create temporary fileboth ERRNAME and PEX_STDERR_TO_PIPE specified.PEX_STDERR_TO_PIPE used in the middle of pipelineinternal error: deflate stream corruptrequested length does not fit in intrequest does not fit in a size_tstring length does not fit in inttoo many length or distance symbolsinvalid code -- missing end-of-block|~kZI8+  Q@/"3$ ~nbrhZM?1vdOA7#   _ O - 1< } DHjH&cpF:.~qcVI</"dB _R?a   n a J /  r W < !  x]B*rZ; p X K = / A Ax}UAyl_}H % $  nnG``#6`(OrOhVr\I4-cp .OtvcRA0#I8'+vfZj`RE7)n\G9/WG%) y4u y < @ b @  [ h>2&} v i [ N A 4 '  \:yWJ7{Y}fYB' jO4pU:" jR3hPC5'99puM9qdWu@  }ff?XX  .X ~GjG`N~jTA,%|[ h&G             ! ""###$$%%%%%&&&&'&(&&&&&&&))+*,,,./-*+pqr>"#,>012ABCDEGHIJSTUV^_`abcdijk} !'Gmtuvwxz{| &&&%&>#-&>>34&&>&&&&&&&&&&&&&& &'(678@FRWXYZ[\]egw}~y?%?G&&> &&&&&&&&&&&&& !"#   >&&?.?GOj??s"&&($>%&&s?%&>*+,-./59;=Gfhl}&) &s)'&&&&&&&9:;<=&9?&KLMNOPQ&&nc ne%&?&&=l9&&&&&&&&/& &'%>&& )&&9:9:9<Q&og?%&&&&&& (&? &>> ?? >n  ?    QO!f[9l %>?IL>KLMNOPQ ?GAMH>78>9:;<=&IL&  ?&G=34>?>&(pqrsn9&;9=;=s&s9:s=99<    -9s !"#$%&'()*+,-./01234BCDs:;o#&>S!"#?&&ln,012&&9:&&= !"#ABCDE=GHIJ&q !"#&STUV&&^&^_`abcd&ijk&|pqrl}yn?? &'(678@&&>VF&&&KLMNOPQR&&&&WXYZ[\]pqr&&e&g%&&}& >?Pw&?G}~ ?O&GV[ OV45j pqrw&'(j>}pqr&&678}>@F&&&R&&WXYZ[\]&&K?&eOg&R&&n c%ew&&}~?&&& &&&&&&'(& &>'&&678 @&o&F Q&'()R &WXYZ[\]678g?e%g@&&F&&&& w&R }~WXYZ[\]&>eg>&?>n?w}~ &'(-6789D c@=dF "8w&'(}RWXYZ[\]678eg@FwR}~WXYZ[\]eg w}~*+,-./59;=G !"#fhlpqr }% 012ABCDE&GHIJSTUV^_`abcdijkpqr} !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"# !"#?GOV'jpqr}%'G !"#&Gmtuvwxyz{|mtuvwxz{| !"# !"# !"# !"# !"# !"# !"#cQxC]ln?zF@@@tu8:?f%&X@RSTUVWXD:1LbGEPM!wABCDEbJmFFnY@o~5@@a2p<[p\A\YvgKKp'b`~FF@zk}~9@FG0  >oILp@ @qrst/01%bkbImqr|}b/$%&~+,-./01'()*+~,-./-./010123C456789:b;<=xy>JKLM?)*+./@1JKL:Q3Q  RSTUVWX  67=>>BCDEHRPN]dSeafgTS3h3iTjqrsy3|}YUU>> $(0"46789;=>-2NO?QIS^P[i_:cjomrswz{@4 b!p -\4369:;;?BC&J'()*+{xM^IN!lA=|bcdefghijk !"#$%&'()*+,-./01bcdefghijkbcdefghijk$%&'()*+,-./0123456789:;<=>'()*+,-./01? !"#$%&'()*+,-./01@ !"#$%&'()*+,-./01 !"#$%&'()*+,-./01 !"#$%&'()*+,-./01 !"#$%&'()*+,-./01 !"#$%&'()*+,-./01 !"#$%&'()*+,-./01 !"#$%&'()*+,-./01 !"#$%&'()*+,-./01 !"#$%&'()*+,-./01 !"#$%&'()*+,-./01 !"#$%&'()*+,-./01 !"#$%&'()*+,-./01t !"#$%&'()*+,-./01u !"#$%&'()*+,-./01v !"#$%&'()*+,-./01x !"#$%&'()*+,-./01y !"#$%&'()*+,-./01 !"#$%&'()*+,-./01 !"#$%&'()*+,-./01 !"#$%&'()*+,-./01 !"#$%&'()*+,-./01 !"#$%&'()*+,-./01 !"#$%&'()*+,-./01  !"#$%&'()*+,-./01# !"#$%&'()*+,-./01,Q#$%&'()*+,-./012 !"#$%&'()*+,-./01 !"#$%&'()*+,-./01MST3MNU>NO !"#$%&'()*+,-./01\OPQRSTUVWXYZ[\]P^_`QRSTUVWXYZ[\]^_` !"#$%&'()*+,-./01b !"#$%&'()*+,-./01 !"#$%&'()*+,-./01!"#$%&'()*+,-./01"#$%&'()*+,-./01$%&'()*+,-./01%&'()*+,-./01 a Aw#qBVGH  <   FlDE_nFGHI ,<`W"8O$KeZd7@.5HRJZh"#~KLuv53 {O$E(^#jc|zS: d^=; oeh_`NPORsG<?E>ABCD@F/4ut|~oi|~apSU_Yr)2 0!"%&5'7(+ pc[\=_.8zjwv}b'm,1onURTKMf^HITqWXQad`J,31-$#69qrmk?4?VgcfSZg*  xnlvxz?pFG2XY]kbeu~6789:<@BEH\Vit   {>A 5"pYLhs{|yu=?"-ZWlyw&3]YjC#$%(.[};!M?NJD)JIKKO/KL*0P+Q!=27?{ m/96gp"'(-7<}`aefinpqruyzR{{X TW@EieKPTW#Z]_bclostyMtvwxzMe  e e"+ 1' eeeeb v891Ek=vW99$$eeeeeu6 #!FH?M,-02:;@DSu&I}~J]QemqQTeB+kX~^`adefghlrs[uw $ uV]_++m+  b+3=/c[?45<>ACe\S=gg|uG++++UY\_knot}vx|}u5u-- -     "$&++12789:;<=>?@ACEGJLNPRTVUY\[^bffhjlnssx{~ 1FS\gp{   '+/77;>>ABGFLKQXefjkoqv{|    !#)*./3489=>BCDEIPY[Hmoqwl25BKNUUabfjss"#&! " >? $%'()*+,-./0123456789:;<=@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~m nZF2cO;'w^J6"jVB3:&\H4~jpuaM9%s_K7r#o[G33 kWC\\HHyeQ=)V4 ~zfRV4 ~pzfR, /Npb.2uvwyylex$$ee  /-,/,-,1- 1,0V,,3703556&9867V865889` ;q^;ggpq;`;;^pk;k^jkjrkjkkjsrsjjs zaa"bbbbllllammvlvmllvbmmvza"aba'!)%%%%%&&&&&!%%557&%&*7+%%%&&00NN-TTTTTTTTTTT;'~'v.;'a~''vaTTTTTT_____/_______(_(__a(O0_((1O______O_)_)__#2)_iiiii))11Riiiiii1iRSic11dR3iiS#cidS4iiiiii5i26227:;2i22c<d=>?ABCEGHIKMNOPQRSTUXZ[\`bcdfghijklmnoqrsuvxyz{|~JJJJJJJJJJJJJJJJJJJJJ{{{{{{{{{{{  {{{{{ !"#$%&'()*,-./{0123456789:;<=>?@ABCD{{{EFGIJKLMNOPRTUVWXZ[\]^[_acdefgiejkl[mnopqrsetuvz{|}$"!     ~zyxtsrponmlkjihgfdcb`_^]\ZYWVTSRQPONMLKJIHGFEDCBA@?=<;:9876543210/.-,+)('&$      }|{zyxponmlkjihgfeb`_^]\[ZYXWVUTQGEDCBA@?>=<:98643/.,+&"    ~xwutonf\ZYRQPNLKFEB@?>=<:42.+)"  !"#$%&&&&'()*+,-./01234##56789#:;<#=#####>###########?##@######ABCDEFHIJKLMN"#zEFHIJKLMN8%&6n9"#7' 'o'':0^./<u;=v>_OPQRSTUVWXYZ[\]^_`aabcdefghijklmm]no]]pqrst]uvw]]]]]]O]Ox]mmmmmm]]]]]]]]]]]]]]yz{|}~ !"'AC()ABC%&N1'I'2'N'AiBjI3CDFYRNZcvwyIz{SNF|TNNIIIUNWVINI}NI~hfagNNbIIde''N#"I'' skNt!m!lI' !'''''''N'(')''*IN+NN,-II*I''''''*''*JJJJJ>JJJJJJ''''?n]UJJJJJJNNNNNNONNNNPQPNNNNNNPPJJJJJJJJJJJ     JJJJJJ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqtuvrwxyz{~|s}yxwtsrqpojihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@=<;:9876543GGGGGGGGGGGG210/.-,+GGGGGGGGGGGGII*IIIIIIK)KKKKKKKKKKM(MMMMMMMMMMqqqqqqqqqq'&%$#"!      ~}|{zyxwvurqponmlkjihgfedcba`_^\[ZYXWVTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$      H~}|{xutsrpmlk `]\[X$LH E@?54$      __aiiii__ab_abiiiiiiiSJsuCW_[y]^Zukxtypot~]QRgzxwv8NQYuvJOic^jOUo0nlkj8iAY_eSOQdP-A1-/c_^]\[Y^>d>LKEM?;JP]Q]C\ea" KJ4B1;0<311*7('+')3*&&$$&((##&$XA  @^  q   !Kt!;H|}}txopsSo[ZOXPIVTSLDEGilk\ma`g^TX\_O`^PM_KlSLOJIOE9I=C@NBL;M:;G7IF687&;.6.70;47,1%,.1,/0&#$%&##  '9ynhrVPIXRGL0yH%w}2/6[tt %''%* '"1,688>9*E645GBJKP]O]RTX`]aXgiy[cl`kapbux|{zy   % -.$#$&"&6)+'0242.88B=>,7A@J=KMA@LRKLJYL[f`Tbagj`dqntjp}kqssyxxxlyp~)5AMYbkt           !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRS*) !+,&{y('*)#*) !"+,$&%('#",$&%&   \F=>|z=>93C93stCucXa_lV52A^LK52rdb`@WBU4-0JG]H@4p0GB@;N~fixY1;N~ix~~o<:?T<:?qMn/vwIvwg[g.PjZEEhDhDe88k66}Om7R7QS\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ļ\\\\\\\\\\\\\\\\\\\\\߼\\\\\\\\\Rj\[\q\\\\\\\# \Ϻ\\\C]\p|-9\\\\\\\\\\\\\\\\\\\\\\\\\\\\JPc\!O\'3?KWczmaϺxkH`k $<}b]-9EQ!4@Lp*OmBZHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH P 0 0 p $hPPPBExxb! #xx#!!!"-"w"""""xxxxxxxxxxxxxxx!!xxxxxxxxxxxxtxxxxxxx!xxxL!xx|!xt!xti")" ! ! ! ! ! !# ! ! ! ! ! ! ! !#-!R#-!vfinfo8ZYYhY`Z hk hj hjjjjjjtjdjTjDj4j$jjj h h h h h hi h h h h h h h h higet_symbols #   wIxwwwwwwwwwwwwwwwZxfxwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwrx~xxxxxyyjyyyz:P:############### #######################################################".Qiu}eqz:P:Qbnzͥ٥rɦզz:P:ԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷԷ{oL4(Ըx`ݷz:P:pz((ldelf_search_neededDlSSSDSSSSDbfd_dont_truncate_arname{UPTTTpTTT_bfd_set_gp_value_bfd_doprnt_bfd_doprnt_scanbfd_set_input_errorbfd_set_errorbfd_compress_section_contentsbfd_update_compression_headerelf_write_gnu_propertieself_merge_gnu_propertieself_merge_gnu_property_list_bfd_elf_get_propertybfd_hash_replacebfd_hash_rename=???bfd_init_pagesize_bfd_generic_get_section_contents_bfd_mmap_read_temporary_bfd_munmap_temporarybfd_get_bitsbfd_put_bits(xPh@ c@p,0,|_bfd_handle_already_linked_bfd_default_link_order_bfd_generic_reloc_link_order_bfd_generic_link_output_symbolsset_symbol_from_hash_bfd_generic_link_add_one_symbol           0w,aQ mjp5c飕d2yҗ+L |~-d jHqA}mQDžӃVlkdzbeO\lcc=  n;^iLA`rqgjm Zjz  ' }Dңhi]Wbgeq6lknv+ӉZzJgo߹ホCՎ`~ѡ8ROggW?K6H+ L J6`zA`Ugn1yiFafo%6hRw G "/&U;( Z+j\1е,[d&c윣ju m ?6grWJz+{8 Ғ |! ӆBhn[&wowGZpj;f\ eibkaElx TN³9a&g`MGiIwn>JjѮZf @;7SŞϲG0򽽊º0S$6к)WTg#.zfJah]+o*7 Z-bfd_fdopenrDL\tX-8+-(--,-_bfd_relocate_contentswrite_relocread_relocbfd_check_overflowbfd_malloc_and_get_sectionbfd_map_over_sectionsbfd_get_unique_section_nameSRRSSSSSSSSS@SPS`SpS S0Sbfd_flavour_name0fhggeHeg0123456789ABCDEF {q~V~({v {vT}F~`~0123456789ABCDEFߐɐout0123456789ABCDEF0123456789ABCDEF0@VV%%%%%%%%%%%%km%%%%%%%%"%%%%oh {hhhh h { {hAw /UU''hhhhhhhhh0r6KK69((KKKKK;,P?????????????d????????|<<Tv||||T<<|||Td|z<ooTToT  elf_x86_64_check_tls_transitionH=fH=elf_x86_64_relocate_sectionelf_x86_64_finish_dynamic_symbolelf_x86_64_reloc_type_clasself_x86_64_link_setup_gnu_properties  zRx zRx $FJ w?9*3$"zRx $FJ w?:*3$"zRx $FJ w?5*3$"zRx $FJ w?;*3$"5%%fD%D%%fhfhhD5%%h5%@H ~     % &!"#$%'()*+,-./0123%RPQxQQQRQ_bfd_x86_elf_link_setup_gnu_properties_bfd_x86_elf_merge_gnu_properties_bfd_x86_elf_link_report_tls_transition_error_bfd_x86_elf_finish_dynamic_sectionself_x86_allocate_local_dynreloc_bfd_elf_x86_valid_reloc_pelf_x86_size_or_finish_relative_reloc_bfd_x86_elf_link_relax_section_bfd_elf_allocate_ifunc_dyn_relocsTl̕,(P@`bfd_elf64_write_relocsbfd_elf64_swap_symbol_outP 0@hH(ppp888hH2 22/00 20/000003````  ]LШ( Ȳx`HX08HHHH Xн@(`xXȻXȻȻȻXpHp $ $ d $<|0@0 00{{0000Z=1fI,~aD' y\bE(9VsY KKKKKKKK<   1    _bfd_elf_link_munmap_section_contents_bfd_elf_munmap_section_contentself_mmap_section_contents_bfd_elf_no_info_to_howto_bfd_elf_get_linenoget_program_header_sizeassign_file_positions_for_non_load_sectionsbfd_elf_get_elf_symsFj[ jiFjFjiiA{zzz5{yy2x2xzzz$xwzzz2x2xzzzzzzwxxewzzz wvelf_link_adjust_relocself_reloc_link_orderelf_link_input_bfdelf_link_convert_common_typeelf_link_check_versioned_symbolelf_link_output_extsymbfd_elf_final_linkput_valueget_valuebfd_elf_size_dynsym_hash_dynstrelf_link_add_object_symbols%Ca  @_bfd_elf_parse_attributes_bfd_elf_obj_attrs_arg_type_bfd_elf_copy_obj_attributesbfd_elf_set_obj_attr_contentslBpPPPllPPPVVVVVVYVVVVVVVVVVVVVVllPVVVVVVVVVVVVVVVVlVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVPVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVl|2| write_compact_eh_frame_hdr_bfd_elf_fixup_eh_frame_hdr_4d////01`11p45p49 64054x;45P4P40763`5P4405430;j54 ;::p4p4P:94933p4p988877X7`8 @?l>???GFFFFFFFFFFFFGpG@GGFFFFFFFFLJJJJJJJJJJJJLrL[LNLJJJJJJJ}J1[ZrZ=ZYYYY[ZeTeTeTeTeTeTeTeTeetfTeTeTeTeTeTeTeTeTeTeTeeTeTeTeTeTeTeTeTeTeTeTeTeTe'fTeTeffTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeestash_comp_unitscan_unit_for_symbolsread_addressp`P@0 Ь0 P@`p^^H^^8^0^@^(^ ^^^^^^^^^^^^^^^^^^^^^^^2X?ʰʰ?????????????X?????PPPPiPw`F#9Z{ZLSZ{"ZZelf_i386_get_synthetic_symtabelf_i386_check_tls_transitionelf_i386_relocate_sectionelf_i386_finish_dynamic_symbolelf_i386_reloc_type_clasself_i386_link_setup_gnu_propertieszR| zR| $F J tx?9*2$"zR| $F J tx?;*2$"fD%fD@hf5%@f%fh%h5% x h  bfd_elf32_write_relocsbfd_elf32_swap_symbol_out L LL L L@L LPL L`L LpL LLLL L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L LL.MOOOO@MO@MOOOOOO@MOOOO@MP@M@MO@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@MyPyPOSOO]M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@M@MO~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ pe_ILF_save_relocs !L!This program cannot be run in DOS mode. $ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/coff_set_alignment_hookdummy_reloc16_estimatecoff_i386_relocLx`N<$ۢLcLJ*LߡơcAB_bfd_coff_generic_relocate_section_bfd_coff_reloc_link_order_bfd_coff_write_global_sym_bfd_coff_link_input_bfdcoff_link_add_symbolscoff_fix_symbol_name؞p؞؞`؞P@0؞ ؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞؞~3I&3&3333333333Iɺɺ3IIIjp  !L!This program cannot be run in DOS mode. $ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/coff_set_alignment_hookdummy_reloc16_estimateǡK jܸ|dF-jQ?////)))c/)A///...XXXXXXXXXpXX`XXPX@X8XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXruuuururuuuuuuruuuurWvrrurrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr)v)vu[yuu srrrrrrrrrrrrrrrrrrrruփ0 u,qE Kϊ pe_ILF_save_relocs !L!This program cannot be run in DOS mode. $ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/coff_set_alignment_hookdummy_reloc16_estimatef@DfDff.bfd_cache_lookup_workercache_bmmap_bfd_write_merged_section_bfd_add_merge_section%HC(CACDbBbBEE0EAAA8C"-Uk(Ju&NmDk =g@W ,Yy .WFile is not in CTF or ELF format.BFD error.CTF dict version is too new for libctf.Ambiguous BFD target.Symbol table uses invalid entry size.Symbol table data buffer is not valid.String table data buffer is not valid.File data structure corruption detected.File does not contain CTF data.Buffer does not contain CTF data.Symbol table information is not available.The parent CTF dictionary is needed but unavailable.Data model mismatch.File added to link too late.Failed to allocate (de)compression buffer.Failed to decompress CTF data.External string table is not available.String name offset is corrupt.Invalid type identifier.Type is not a struct or union.Type is not an enum.Type is not a struct, union, or enum.Type is not an integer, float, or enum.Type is not an array.Type does not reference another type.Buffer is too small to hold type name.No type found corresponding to name.Syntax error in type name.Symbol table entry or type is not a function.No function information available for function.Symbol table entry does not refer to a data object.No type information available for symbol.No label found corresponding to name.File does not contain any labels.Feature not supported.Enumerator name not found.Member name not found.CTF container is read-only.CTF type is full (no more members allowed).CTF container is full.Duplicate member, enumerator, or variable name.Conflicting type is already defined.Attempt to roll back past a ctf_update.Failed to compress CTF data.Error creating CTF archive.Name not found in CTF archive.Overflow of type bitness or offset in slice.Unknown section number in dump.Section changed in middle of dump.Feature not yet implemented.Internal error: assertion failure.Type not representable in CTF.End of iteration.Wrong iteration function called.Iteration entity changed in mid-iterate.CTF header contains flags unknown to libctf.This feature needs a libctf with BFD support.Type is not a complete type.Type name must not be empty.Invalid CTF dict flag specified.ctf_lookup_symbol_name *008888p00000Ԩ$$ԨܨܨܨܨԨԨԨԨԨ4`í(ȯXí$$d4ľľctf_symsect_endiannessupgrade_types_v1init_static_types_internalflip_types.ctfB&||ctf_serializectf_str_move_refs)*l*))|*)+++**,0,4.t.t./D/4.D.D.. -655\94977t7\765666ctf_bfdopen_ctfsect,cbbbbbblbaaabwttruwsspvt urrrx~~~~$~~~~~~~~~hhpHH8XppppPsort_output_mapping0123456789abcdefsframe_encoder_write_fresframe_encoder_write_sframesframe_encoder_add_fresframe_decoder_get_fresframe_decode_fresframe_fre_start_addr_sizesframe_fde_create_func_infoB=88BB=xxxxxx,,,,L ,,,,,,,,,,,,,,, PPP588 P I HP PP P`` XA(7(+((K(/++++++++++++++++++++++,-+,-D5D/+t//D./01++++D2+3++++++++++++++++++++++++++++++++3++4.RP0P`PPPPPPPPPRPP QPPQPQROOOOOOOOOOOOONOOOOOOOOOOOOUOrSU?UTOTJVOOOOVOVOOyTN7TSs``l`<_e`^`ywwwwwwwxwwwwwwwwxwDxwx |w{ww4|w{{{wwwwwwww{zw{{wwwwwwwwwww4{wwwwzwwwwwwwwwwwwwfz00oM0DP xH xX0p@`0o 5 8xHPpxP(,' %I$ <;G]tB{= 0$~`2fCOmA oE!a  0P AA ?  &*"@ `0PHX? "A!)?cccccccccccccccccccccccccccccccccccccccccccccccc ccccccc cccccccccccccccccccccccccc ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc/var/tmp/tmpp`pP@0p pppx46@35@34@3@3@3@3@3@3@3@333334W4=@?;;;;;<;;;<=;;;;;;;;;<@  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ABCDEFGHIJKLMNOPQRSTUVWXYZ{|}~  !"#$%&'()*+,-./0123456789:;<=>?@abcdefghijklmnopqrstuvwxyz[\]^_`abcdefghijklmnopqrstuvwxyz{|}~CBBBBQ00000000000000000000000000000000^^^^^ deflate 1.2.12 Copyright 1995-2022 Jean-loup Gailly and Mark Adler ҧ__________________________J___________=_0____________#____ _____________0Xо0xе@ й@`A@!  @a`10  @`Psp0  ` @ X ;x8 h( H T+t4  d$ D \ S|< l,  L R#r2  b" B Z Cz: j*  J V@3v6 f& F  ^ c~> n. N `Qq1  a! A Y ;y9 i)  I U+u5  e% E ] S}= m-  M S#s3  c# C [ C{; k+  K W@3w7 g' G  _ c? o/ O `Psp0  ` @ X ;x8 h( H T+t4  d$ D \ S|< l,  L R#r2  b" B Z Cz: j*  J V@3v6 f& F  ^ c~> n. N `Qq1  a! A Y ;y9 i)  I U+u5  e% E ] S}= m-  M S#s3  c# C [ C{; k+  K W@3w7 g' G  _ c? o/ O      @@ !1Aa  0@` #+3;CScs inflate 1.2.12 Copyright 1995-2022 Mark Adler   0@`  0@`  (08@P`p        L,l\<|B"bR2r J*jZ:zF&fV6vN.n^>~A!aQ1q I)iY9yE%eU5u M-m]=}   S S  3 3  s s    K K  + +  k k     [ [  ; ;  { {     G G  ' '  g g     W W  7 7  w w     O O  / /  o o     _ _  ? ?     @ `P0pH(hX8xD$dT4tC#c      @  풰%j}bgDшjDp~'dGMT -/60ÜZ{i1*lMNz_7ٺ^N.NrB*0Ц <,GD"*CИayUW=sz70w1P gP /rN[1!qv[!@f$f"bF!Πl 2(^SQVqt2r#G5bB>%zM`gBH獢40pbMQ 7RsCXi C˲AӝSc!e<+os943cl$RìRpFz~e=:ʵ!O@һjb0-C IJ 25ZS`tJq0Ò>K"a %[CA\ak{<Dn1Vk;P/k,rW 9O}}A@_(c8-J33RwR(xop9&~b #&Bs)`_nYƀUفv \N0 ^Q,sh#ʳe;$O|@+E}l9g0 Lĥw573`VJ\tJ >M_'㻂FAdbk]&hD,:}4n*mU;wUICW%}ҖD(ֆYf:~0t-y>6iűR.WIu x x&\?&hG%/aseYHvه/5k\VT X#vꌎɗA'z*>QFGОdUq6z P4MpU4a刀&w/pe[7!$qEנ$`g'X!R@7 PėV^ott+3=ty2&GM#eDdg̅N HbD57TT7vsi%"EfCD[Uf<2uQ69(êWll"Feu NR(UL#ܯ?G|42W"\RW@ɄpK@ntSy>X,7 lgkKr{pytⷩ>&4,zH8kjylV~-c9QH+ၢbMF0ZQIeT{.n5rF|yϨڃ@Sͻ AP 2b9,^%.~FXuMi b_V]FA:J tz)_"(> 5J6 X#dmruN;`'P5 Gllō ">2 u۹rg^ !t+ o7&<28uj]gVwr8|v``k_'TH5DHC ˏb\ 0.Jý|Xnջ @ ME֖_إ w^ 9ɗ Rޅ[LKi'Yк"őLp ى^Bǽpn>< mf!z&Dq3hZEZNtRǡYf4:s1f-a?&q&Cx 4*s,׋ar~<`&ɿ@24˨!\ܺk3%BtYfē3:8L$Ah/^v=s$  dűoJs XxLK$TGj[YP`gMK[8Л,Xat:w?YaX,9m󲵏:8u Z&cb.A [~œ ;OcYR 5 y=tp2,fU+L ujJF\M!-.sőNH^_8v`DzO?r/+wd)LwX:6:8{ǰ<:`mLj [:=9 dY̆=AWH=/=a4bɊ}4CQZU44:6ɲ΋n34 3yc3;%γoB["3ӯ'L Ći,ˋ'FPE't"'z- 1 M|1 j'V uc)v3)~)N(hO.%). p.wD\/R..O;MuH *umȈ(up{a6u9rۏ)^rIWrArrq {r Gإ{UCk{J {*T|"|so3|+y4x|K4h֕\Shf^~3uf>a-JgߨaRDfa?aׄ_ O:]ֿOp[(MqOOHNHq,Ha)HIw):bH*WA.0AJcҼAu{8Ar#FKÙ+DFYhOFsFCR+Rf$dR<꯴p\=oR԰U7ePѲU\]J|UU=.\>̡^I\^eH\\f_Z[)=[?dߦ[grv?[(`?aZVSnA~´i24~aV\7dž2dhĔ\ d|c9PX zxeD+*ǺpJ.{b'ztLW%U%^<:^}Uufҕ>y@.;eJ̥{c5rE gq߿_p/sS_(;ʺo_n4s]?/6O6MޣKi-wFn/1޾+DNOJ>ږ. ^cwhΒ~ΔT[j/?<~LvflFE>t"3xX |j 61Ϗ\Z[,RA} *nН-C']2\V(oέzMa=BmB&9m(TZX}!0xly8?$SDh@g:HQ8xJi8 !CDݴ9H`I|#d]PY4&)fh ~yLMz؄K7;)xuok{=T) R?YV+q[= a.&9؁ ]MUz$vʔOZe *:KJI0-cڸ jqah)MD>ӋSjDGsz̻mIEͶԈABoAvے KDOSdm Rz)`!8>-)LN必!JWl% $=hI^jPGۏ'4n#S-彜)U[>/Bb1z+mSf(DVې C[X fGmKz D^Sz>ђ)O]cm+>ՠt)KoDlSmO(zh.CṟjqGi ۔-&SbDdz/?m #LfU)g>+#'a幮j%:ꁡI#&P𭘟nbl{3*!?⡿Yh<廷@%x>)6)~/d:\m9z-D}ES`ۖ4xapE ڟsáA 7z}mM1dSDu)Iv>׹2(AS?J V9{ۚlEUR EVOIS<ڞP%Ml]{%ERhr?!պ(lk^`X-wdЦ)[n ŷ+B܉f/g~bAGn(?#̪RjbE{{'lDFOŽ _ڜIJ,K5CE RǒlGLZ{ك)O0?(C ?>(G9' }TlC~{ݱE:MR<;"xOQژ{KH?{#ulvlRnE2(1?'ujfspi+7Ҟb4ˠ/p`-i`-y ).djehl?%|((E+Rllo{!+&Iښb2MAaXꐞ%.RE #{ߨ7lAgdD](E ?6Q$lIZmD  ۂc۝-g|)jmIEin$s8%H4ϻl0H{]M =!9RdW>4ѓeSH^lp!Z%F3lKpbo*h&we٨&aĄ㴷퍐 Oo&YZo5 K*n{XJ'\=n ?QQ׵gU";xNV?2'CJ6nfؖ7Z֕^T"bsS 8MWi}iK9MK '=0^4/n.Cju;g!jchL L衏hR !0j\GU62O$@?k~H;";" UWxka)QOް\VgMnxg{?C!|. *q{uխ`D)^ ;aKW$"zsH~~fs 7)wD`vE@-a ,G)(ט$R ;̺jNJ_(i.G 3aCEu+ eS4B=c*!؈!dRǡ 41?*S؉ r=o)ۏ"z>@bPTEa9E>P)3ێzQ8copU`.V;! ȱ;C(ڍb? :a0W;R?.(sڌx&N3##A'Օ` 0 "y2O3P0&'qՔg&ԗ r1BzXLMc !M1X&1Ԗr S {grM &"}K<@2a%)א)|Jϣ <3'%Qבp2Bɱ3!$W֒C }$hbI$h֓}Ȏ03W~RH Bs%#lџy!Ċ4SCrDb F)Fŵ4#S0ў yR(lssE-pޓF" 8+@"Нa5 *q3G8Q5"-pМI6\ !ӚvB,cwcAc!ӛv16v\S@Ir-.#uCA77"` Ҙуt"B72/ Pҙq70w,aQ mjp5c飕d2yҗ+L |~-d jHqA}mQDžӃVlkdzbeO\lcc=  n;^iLA`rqgjm Zjz  ' }Dңhi]Wbgeq6lknv+ӉZzJgo߹ホCՎ`~ѡ8ROggW?K6H+ L J6`zA`Ugn1yiFafo%6hRw G "/&U;( Z+j\1е,[d&c윣ju m ?6grWJz+{8 Ғ |! ӆBhn[&wowGZpj;f\ eibkaElx TN³9a&g`MGiIwn>JjѮZf @;7SŞϲG0򽽊º0S$6к)WTg#.zfJah]+o*7 Z-;U 0V`XV$ ɔӔMߔ cp ')'8:HNM@QRSWUmUL`V0pVV VVhW@WWW4XTXxXpXXPXYhYY0YZZ@HZZPZpZZZ [ [4[H[\[p[[[[[[[,\h\ |\P\\\\\@\`]]0]l]@&]p&]&]&]'^P'0^'D^(|^)^*^+^0+_P+ _p+8_+X_,x_0_1@`02d`3`3`4a6Dap7daP8a8a`9bp=b@b0CHcDcF>>>>?0?lCEFG00HDH`IJ M MT 0N PR!RP!T![!\("`\<"0]"a"Pb"c4#e# f#f$`g4$g`$g$Ph$h$@i%i<%iX%jl%Pj%j%`k%l%Pl&Pm&`n&n&q4'Pr\'prp'r's'`v'D(((H))Љ) *@L***@+`+P++@++В+pH,Ф\,p,,,<-- --. .0. |....0/D/`/ |/0//` @0 \0 p0P!0p!0!0 #,1P#L1#t1#1P$1%82%L2'2(2 (2)03*x3+3-L4@/p4/4@1 5`3`575950Jd6M6PO$7P7PR7 Tl8 V8@V9`V9V<9VX9Vt9W9 W9@W9`W9W:W:W8:WT:Xp: X:@X:`X:X:X:X;X4;YP; Yl;@Y;`Y;Y;Y;Y;Y<Z0< ZL<@Zh<`Z<Z<Z<Z<Z<[= [,=@[H=`[d=[=[=[=[=\= \ >@\(>d0@eL@e@gAg A@hDAPhXAhA0iAiAPmB`n8BpnLBn`BsBtCx`CytCyCyCD`DDГDP$EHE\E|EФEPEEFF,FЦ@FxFFpFFpF8G@GGGЮ,HPxH0HI0III`J \J0J@J K4K\KK0L`$LLL@`LLLL0M|M MN@XNplNNN4O O`O P0RDS`SS T XT`TT$U pU0UU.hV1V3(W4Y?YP@ZpAtZCZ`E<[pEP[Ed[E[ G[PG[H@\]]] D^^p^L___(`PH`h``` ``aa,a@a Taкa abp8b`tb@,c@c\c@cdp xdp d d`,e e e fPpff fpg"g"g"g#g # h#,hP$xh$hP%h%i'ti@'i*i@*i*,j +Lj+j`,j-j-$k/pk 0k0k@1k1l02\l2lp5l@6@m7m@;nXpADhDEH `N\QRȡWWD`Xp`Z@^@_ct`pЖܥ0x ħPt 0P`$8 lP \p@ȫpP```ḫ l0    `0 08`T@P$|p$P,(,<,P,d-/ 3lP3@4`4p4д44 5<6l 606@666е666 7<8l9;Զp> P@CDdE|E@F`F̸PG0H,@Ip0JJMXMxpNNغO0O$0PTPtXĻXػX YZL ^P_ȼoyxyz{||H }p}Ѐ<P<    @LxPЪ`T `(t\0,x`pDX0l@P0DXPl`p 8`8pXp0t  \@ |   ` ( H` 2p266HIJ\$ffg@g`gg g4hP hh0h|@h`hhhhi  i$@i<`iTiliiimL`n oqrT rhsPtw,yyyyyz {0`{X@|P`HЂd ,t``@d@HtP0 HpHP0`P`pЧ0D0X@lP Dи` 8мdp(h`@d@`,p@TPpLP`p$``pH\@4P` ,0p` @Xp0P|p 8pPh080tp0X lPp@`Tl@@P0pL`@pp(@l04@  0 4P P`p\ P<@Pp((`)t0*p-3@3l558|;B8BLpCEPFHFtGI KtOOOPP QpQ Q0Q@QPQ`QQQSHUpVPWg0`jlj0ppq`q<{|} }L~`~t0~P~p~~~~P4`HtЃ 0@(T@<PТp T0@` P, `@      8 `d  `     P  P  @P @ p   4 `H \ кt  л 0 p \pP0D tx @X`p TpHtPH0p4@@hpp8 0 `4H\p@`,pLpd ,0@PT`hp| |0`00PDh0 h  @ p0 D X l    p`!t!!pD"pt""""X##0#P$$P`$$ $0-%@.d&.&7'`9(E4)pI*I * Kl*PV*[<+]x+^+ ^+^+_+@_+_,b\,@f,f, g-Pg-g0-gD-gX-hl-Ph-`k-pk-k-k.k.k0.kD.m.n.`n.n.0p0/p/Pq/`q/q/q/q/ux0v0w0p}81}L1~x112$2Ѕ82pL2`2@t2202`22p83L3`333Ќ34`,4Pd4P4@44 546Ph6647708|88P49p99909p9PX:P::<;`;;<(<"<@#<%H=&=@(=,>.d>4>`6>7?p9???@@`@$@p@8@@T@@h@ A@PA@pA@A@HAI@APLAPMA N(BQh>h@AdhAhBhC iC i D4iEiPEi`Fi@XiZ8jZhj]j^j` ka\kPckd leXlftlpflPglgmPidmimPjm0kn l0no|nonon0pnppn@qorTorho0s|opsoso0toPtotp u0p@vppwpwpxpxqyLqzqzq0{qr,rdr@rrrr8sLsp`stsstPt tPtpuPu0dupxuu upu@ (tMrBMI MFB NpHo I O I (XNQFM bFAxN*BBB B(A0A8G\3 8C0A(B BBBH \a]I]F]I\\I]I]D]I\Dlx?BIB B(H0A8 0A(B BBBH (yADG0v AAD y&D@zAAD d AAD C AAK u AAA 8zA~ A X${aMc H [|p{{4{~BBA D(G0g(A ABB($|XBIC z ABA (X|IAD i ABv H |BBB B(A0A8D@  8C0A(B BBBD (lAAD U AAC yDa K HHtBBB B(A0A8Dp 8A0A(B BBBA Jz\( BAH pAB8LBAA o ABJ C DBA ,TjBDD D ABA AL$8L`|txt$pAAD AA,HDD  AEE 80BEA D(F0 (A ABBH l%%%Ԙ%% %(%D P= |84BGD A(J@ (A ABBH Pp,b.BBB J(A0A8JO 8A0A(B BBBA x!99IA` G `4!4H4ADG  EAF HEA0AK D I G E K G A (DAG  DF iDDU DQ$ (DV< 0{A\ C V\ j@ F Pd| TBBB B(D0A8Gp 8A0A(B BBBD  8D0A(B BBBO \ BIB B(A0A8GP 8A0A(B BBBJ U8A0A(B BBB D xpAk D c M `h lBBB B(A0A8GPL 8A0A(B BBBI h 8A0A(B BBBF  ( AAD  AAF 8 <BBA A(D0 (A ABBI H {HF B @h AKG i GAL D IAJ d AAA 4 pBDD G ABD RCB4 AAG ` AAE D CAH | @ BBB B(A0A8Dp 8A0A(B BBBK IxSVxApY 8D0A(B BBBG DxJUxAp` BAA D0  AABD   HABI   AABC Y  AABC H !BBJ E(D0A8Dp 8D0A(B BBBH xL RBB B(A0A8G`P8A0A(B BBBEH`\ 8J0A(B BBBI t 9OBB B(A0D8DPK 8A0A(B BBBE 8K0C(B BBBOP@}(T8ACG  AAG `*XBB A(A0n(A BBBEX0xH00jAD0aAAFp0,BAA U HDE HAH  AJ HlLBA A(GP(F ABBHPPdrDDHSBBB B(A0A8D`l 8A0A(B BBBD @ BBB B(A0A8Dpu 8C0A(B BBBI _ 8A0A(B BBBO  8A0A(B BBBE  8F0A(B BBBI H 8C0A(B BBBL N 8K0H(B BBBG | 8J0A(B BBBI  8C0A(B BBBN ) 8M0A(B BBBI TI,hBDD I ABJ 0BIA D0_  AABE 8`KAD t FBD ACBA@KED A(D0X (A ABBI B LPJi E `0pKAA @ ABH 8BEA A(G0 (C ABBG 8\HAD  CBE K CBH Oh y H8>BBE E(D0D8DP 8D0A(B BBBJ (aYAG  FAI <BEE D(D0 (A BBBG dlVEB B(A0A8Dq 8A0A(B BBBH  A(XAAD L AAD 08KHD  ABG @  6q0k8BDC v ABN P AHG DxDPL\<BBA A(D0 (D ABBF U (D ABBA \pBEG E(G0D8DPI 8A0A(B BBBK T8L0A(B BBBH BBB B(A0A8D 8A0A(B BBBD HX2BBE B(G0A8NP 8A0A(B BBBA `BBI E(G0G8D@ 8A0A(B BBBB O 8A0A(B BBBG (@AAD ! AAG 4HAHG o AAG P AAF ,, BDH z ABE d MBBB B(A0A8D@r 8A0A(B BBBF p 8J0A(B BBBM 4jBAC R ABE FABHP, BHB E(A0A8DPP 8D0A(B BBBD H$BBB B(A0A8D`g 8H0A(B BBBJ H4'zBEE H(D0D8DP 8A0A(B BBBD (4h*RBDD @ABH`*BBB B(A0A8DP 8A0A(B BBBI d -r KIE B(A0A8Gx 8A0A(B BBBJ XH<86KBI D(A0~(A BBBA$T6i\ K H A Dp| 7EBBA A(G0Q (A ABBD O (A ABBC  (A ABBC D (A ABBF 99:)NM E D08:WAID s DAJ DAA$l@:vAID eAA:K:pYO H 4(;IHA { AII dAI,;tBAD \ ABJ ,;5@;GD BX4<Hl=BFB B(E0A8G@h 8A0A(B BBBE $>;AAD rAA$>;AAD rAA>H Q H(d?jBBB B(A0A8D`P 8D0A(B BBBE dtD-BBB B(A0A8D`k 8A0A(B BBBE   8J0A(B BBBI PHH\HBEE E(D0D8DPt 8D0A(B BBBB <I8AvXIlPJ|D C HKBIB B(H0G8K@E 8A0A(B BBBH LNJBBA A(D@_ (A ABBA  (A ABBE $O1FbH<@,O)OBA A(O0(A ABBE`PBBB E(D0D8FPr 8A0A(B BBBK 8H0A(B BBB4hSTBBI D(G0u(A ABB S'0 S$D S>AAL mAAl S$ S>AAL mAA( SABHD oAB< TBBB D(A0 (A BBBI D!UBBE J(D0D8G@U8A0A(B BBB$\!V>AAL mAA$!V5AAK eAA!0VY[ j!xV(!tVAAN v AAA `"V: BBB E(D0G8GtJKDI 8D0A(B BBBF h"_9(|"_RBHI tAB"`qAc H "t`0kH"`BJE E(D0A8FPo 8A0A(B BBBF (#Ta6AtD#xa6At(`#aVADG m AAE (#aA_B B(B0I[ F 8#TbBIA A(G0 (A ABBI H#dmBBE H(J0A8Dp 8A0A(B BBBE H@$,fBEJ E(D0D8D@a 8A0A(B BBBK $$g<AIL cAAd$gBBB B(A0A8DPL 8A0A(B BBBL  8A0A(B BBBH \%kBBB B(A0A8Dpe xAOEIpb 8A0A(B BBBK 4|%`xBAD J ABD \AB0%wADD s AAB tAA0%kAAG o AAF hAA&0Ad K ^<&Ad K ^P\&0KII I(D0A8D@ 8A0A(B BBBJ O4&BKA A(D0(A ABBL&BIB B(A0A8Gw 8D0A(B BBBE 8'4KBB B(A0A8GPO 8A0A(B BBBE xHP@ 8J0A(B BBBE '@YJoGAH'BEE E(A0D8GPs 8A0A(B BBBF ((<(P(td(XPBB B(A0A8D@bHLPDXB`I@ 8A0A(B BBBK pA@(( )]AG@I PO ()4 <)01P)\DKh)d|)p)|)xpAg A F4)ȗjBIA A(D0R(A ABBT)^BEE D(D0D@ 0A(A BBBA O 0C(A BBBG dT*8BBB B(A0A8DP| 8A0A(B BBBL l 8A0A(B BBBA * *ܝ**L +BBA D(G0n (F ABBG W (F ABBN D\+XDA  ABD xH g ALD D+ȟBEJ D(I0D 0A(A BBBF +pVHG A A ,`AQIDL0,OIEE A(A0 (A BBBI A (A BBBH h,'REB E(D0A8DPS 8A0A(B BBBD  8A0A(B BBBJ `,BEE E(D0D8GPZ 8A0A(B BBBD  8A0A(B BBBH LP-|IEE D(D0O (A BBBG b (A BBBG \-tOEA A(L@R (C ABBL (C ABBS@$.,KBA D(D0t (A ABBH D (D ABBA [C0,>qLJA KABK@> BDD l ABG M ABH YAB`?BBE B(D0A8DP, 8A0A(B BBBF N 8A0A(B BBBH dh?BBB B(A0D8GP 8F0A(B BBBH  8A0A(B BBBJ l?BEB E(A0D8DPXJ`WXAPX 8F0A(B BBBA D 8C0A(B BBBH l@@RBA A(G`E (A ABBH g (A ABBC hRpIhA` (A ABBJ @@ @ $@~ADD rAA<AoACG m AAF N AAH DMA,TAbAAD YAA AXSAG f AA (AjADG I FAD LABBB B(A0A8DS 8A0A(B BBBE p$B8 0BEB B(D0D8Dpv 8A0A(B BBBI  8D0A(B BBBI |xM`xApB -LB BLB B(A0A8DR 8F0A(B BBBA `B` >IIE A(D0^ (A BBBG E (A BBBD m (A BBBD ``C< SBA A(D0 (C ABBA 0 (F ABBC oF0`CpBOB B(A0F8N`2 8A0A(B BBBJ 8N0H(B BBB(D9T`DD(XDWBAD q ABE TD4BBE D(D0G@x 0A(A BBBH t 0F(A BBBG (DKADG d AAF E@HO I _(E4@HO I _HET@HO I _hEt@HO I _E;IZ E EOIe B ^EWIh G ^HE(\BBB E(A0A8G@{ 8A0A(B BBBG d0F<BBE B(D0A8Dp 8C0A(B BBBC " 8F0A(B BBBG 0FAG CH s CB kC|FLEB E(A0A8G_ 8H0A(B BBBG  8C0A(B BBBH hHLLGP BIN B(A0A8J? 8A0A(B BBBH G$DPG$DPG$CI` G G%8G%BIA t DBJ ] HBI 8H%K`ATTH&RDB B(A0A8DP@ 8A0A(B BBBA (H)oAAG V AAG H*bA[Hh*vAU J (I*oAMG A CAF $@I +AMG DAXhI+*BEE D(K0M 0A(A BBBJ n 0F(A BBBE ITIX-MLD A(h(Z  ABBI V  EBBA cMc,cSc(cAJ AD UAd ,dL|K DdAf I @ H (hdAJ AD bAdd!d ddd eQDL$e 8eCLe00DkdeHxeTe`,e|,eNe(eBDK l(J0T(A ft'O(fADF c AAH HHfBLB E(A0A8G` 8A0A(B BBBE \fXBBB B(A0A8G 8A0A(B BBBE PBOAXfjBBB A(A0J  0A(A BBBF E 0A(A BBBK PgG I MpgL<gHmBIE D(K0Mx0A(A BBB8gxBBA D(J{(A ABBh;NN4hAAD a CAE RAFPh\ dhX<xh>h]heMhTeMhh,Hh/BBG E(D0C8G`j 8A0A(B BBBF 0Di mADG X IHK XHH0xi mADG X IHK XHHi ki| 3D[ A Oi 3D[ A OHj BBB B(D0A8GP 8D0A(B BBBH Lj `j ttj j j j <$j( /AAG cAA(j0 BAA | ABE <k BBE D(A0D (A BBBG <Xk4gBEB D(A0I (A BBBB kdk`0k\]AAD o DAF WDA4kAAG w DAK W CAA ,lC @l<xD H D V A \dlBED A(G0 (C ABBF w (C ABBI f (C ABBA 8lRBDD  ABG K HBK 8m BDD e ABF Y ABD (BBB B(A0A8DPU 8A0A(B BBBC  8A0A(B BBBF HHt47CBBB E(A0A8DP 8A0A(B BBBA Ht88BBB B(D0D8J 8A0A(B BBBD tG$tGhAy F M C D L u H:H4uHHBEE D(H0w (A BBBJ i(C BBBuH uHAU8uHBEJ A(I@U (D ABBA `uJBEB B(D0D8DP 8D0A(B BBBA \ 8J0A(B BBBI ,PvKBDA  ABJ vL`H4vMzAHG { DAH N DAE vLM>D\ H vpMfT e G <wMtBBE A(A0N (A BBBH HwNt]`wN_AH G NwNA[wNAP\wNBED D(D0k (A ABBD q (A ABBA D (H ABBG xO\,xOBBB B(A0A8DP 8C0A(B BBBH t8F0A(B BBBTx0PBEE D(A0I8M@N8A0A (A BBBB K(C BBBxxPxtP ypPDP$yxPDPBBB B(A0A8Dh 8F0A(B BBBK  8A0A(B BBBG pHh BEE B(D0C8D` hLpWhA`  8F0A(B BBBJ F 8A0A(B BBBH p(uYBEB B(D0A8D`g 8A0A(B BBBK D 8H0A(B BBBK hBpBxAI`pwWBBB B(A0A8DP 8F0A(B BBBF H 8C0A(B BBBD XJ`DXAPyAAp G `,yBBE E(D0A8GP 8A0A(B BBBE D 8D0A(B BBBO H,{ BBB B(D0A8Dp 8D0A(B BBBB ܆7$,HAN i FB DCT(h4 8|07BBD D(G@U (A ABBB L4ZKD I(G0X (G ABBK n (C ABBB B<ЉBBB A(A0 (A BBBE H\BBB E(A0A8G@W 8F0A(B BBBF D @kOT M sEHBBB B(A0A8D`{ 8D0A(B BBBJ ,D XD Xlpte G D@<ĉ8 ؉40,(($< Pdx  /̊0 A^40"E\D,@@Dy@̰TȰhİ0|ADG x DAG eDA L{AG D DH ԖDEu F Cر:Ax3IZ E F\0BEA A(D0u (E ABBD o (E ABBG R (A ABBH 8|zGIA X ABD ACBAH̗BBB B(A0A8DP} 8D0A(B BBBH H$BEB H(A0D8D@ 8D0A(B BBBA LdAAD n AAJ j HAE D HAK N GAJ HhBBB A(A0 (A BBBH K(C BBB 4BAA  ABI KCBL` t8lBBB D(A0x (A BBBF Hęص`BBA A(D0{ (D ABBB D(F ABB5dP@(BBA D0{  CBBE j  ABBA ,l%M H Z F SUR N +SĚؚ AD r AH $H&8d3L=lP4d:ADD (A0D8H@KAAE AV\ĹTBB B(A0A8D@e8A0A(B BBBAP@d(,p^ADG { AAG LXBBE D(C0\ (A BBBE A (A BBBH H| BBB E(D0A8G 8A0A(B BBBE D*A_ H A(T<PPLdHxD@<8ȝ4ܝ0,($, @DBDH r ABE Y ABD NABH{BBB A(A0[ (A BBBF A(C BBBԞDHn J C<ADG v AAD ~ AAH DDA@4X BBE D(D0Dp 0D(A BBBI x4{Ay(BBKD jDBQ9ܟ`KBBB B(A0A8DP 8M0A(B BBBI D 8F0A(B BBBE h (|BDD AB8TBBI D(D0 (A ABBA ((?BFD oAB0<AGb HF S AD D4Af I Cxd+KBB E(A0A8D@M 8F0A(B BBBJ P@D 8C0A(B BBBH AJ ,A\@ Ad #BBB B(A0A8Dp 8C0A(B BBBF  8K0C(B BBBH 0dpBKC G0x  AABE HBBB E(D0A8Dk 8A0A(B BBBG Pd BBB B(D0A8G 8A0A(B BBBC \ p8%BBA D(D0_ (A ABBF ` zBBB G(D0D8GP{ 8F0A(B BBBJ D 8C0A(B BBBH $(%8D 4L@;BGA J  AABD 0HGADG L AAF ^CA`dBBB B(A0A8G 8C0A(B BBBG g 8A0A(B BBBG 0 DdH~ J S4d(GKD FPu  AABK `tGEB B(A0D8Gt 8F0A(B BBBA P8A0A(B BBBFPLBFE B(A0A8G 8A0A(B BBBH dxAG  AG DAG  AG  DJ|AWD @ 44AKG F AAE @AAHl`&BBB E(D0D8GP 8A0A(B BBBE D&TQЧ\)TTt A^xAJ | ,4xBDA g ABG 8d;BOG H(T@ (A ABBA DAu J Cd,qBBB B(A0D8GV 8F0A(B BBBG V 8A0A(B BBBH @(D]BAD M ABI T DKM EABl`DLuBBB B(A0A8J 8A0A(B BBBA HԩBFA A(J (F ABBB (C ABB AG  AI `D*BBE J(D0D8GPg 8F0A(B BBBH D 8C0A(B BBBH %THk E [dܪ(BBB B(A0A8D 8F0A(B BBBH  8C0A(B BBBA DXl! T BBB A(A0DP 0C(A BBBH D 0H(A BBBE  P4 Dp K P D0j B | D p BBB D(D0JNVAG 0A(A BBBG \MON L y KL N,xBAD  CBB 4$ADG j IHI D CAH \<\_$tNAKF wCA8|BDD  FBD i CBJ LحD BBB B(A0A8DZ 8A0A(B BBBF ( HDR(`AAD L AAD p3HBBD D(D0\ (C ABBD D(G ABB50 RHG G0m  AABG 4h Ht DX`| DX\x BLB B(D0A8GJKAK 8A0A(B BBBE 4د&BDA  ABD ACBl&($&+(8&0BDD bAB0d&FAG NFAEH $'0'S8|'BDD (D0\(A A ABG <) BBB A(D0{ (A BBBC <)9 BBE E(D0A8G`hBpAxG]`D 8C0A(B BBBH I 8F0A(B BBBH  hDpCxE 27BBB B(A0A8Gd 8A0A(B BBBA D]AFDNBMBBLBHIkaG]DEBBIBBIk*&MOAMSBhBBB B(A0A8Gs 8A0A(B BBBB M^BLEBADBBG`KYA  H Lp`ltx|ijس AG  DK 8TDZ$P\dADD QDAx^AI F I`BBEE B(D0D8GPe 8F0A(B BBBG C 8C0A(B BBBI HІBED A(G0l (A ABBK } (A ABBE HHDBED A(G0l (A ABBK } (A ABBE |BBB B(D0A8D` 8A0A(B BBBF  8A0A(B BBBA  8D0A(B BBBC H8BEE B(A0A8D@ 8J0A(B BBBI 0` BAA D@  AABE ' @d4BBB B(A0A8D 8A0A(B BBBH  8A0A(B BBBG `D[0܏DZH \>p @HBBE D(D0Gm 0D(A BBBH 8ȷ$BAI N ABC   AEF (xADG X GAL |0lPBB E(D0A8D`T 8C0A(B BBBF  8F0A(B BBBE @F`HBBB B(A0A8DY 8A0A(B BBBG d BBB B(A0A8D` 8A0A(B BBBA ~ 8G0A(B BBBE HdXaBBB B(A0A8Dp 8D0A(B BBBD T|BBB B(D0A8DPXU`BhBpIPD8A0A(B BBBD"`00<SAD0TAABH0ddBHE D(D0{8N@AHBPK0A (A BBBJ r8M@D8A0A(A BBBL̺pBEB B(G0A8D 8A0A(B BBBH L0 PDB A(A0(A BBBGH0DlLDA A(GP\(A ABBEPP`hBEB E(D0D8DPXH`TXAPD 8F0A(B BBBH XJ`WXAP#L,*BBA D(G0r (G ABBJ ` (A ABBB |2D XFD JABAH ZABKؼ BBB B(A0A8GIABW 8A0A(B BBBJ ^GXA WABP ` NBE B(A0A8DPO 8C0A(B BBBH HP\XN`QXAP{ 8F0A(B BBBJ TONe D k\ N#L0BBB B(A0A8G 8A0A(B BBBJ 0{AFM0i AAA sFA( v D XY G  LBEB B(A0A8DL 8D0A(B BBBA DxX4/@lPBAA D0R  FABE \  CABF @BEB A(A0 (A BBBC hLAR E n$FADG rFAH<BBA A(G0 (F ABBK D(C ABBDA]cHx^fBB B(A0A80D(E EBB(~AHG I DAJ <ADN a CAH Q KAK DFA \`[v G {E8LBDD [ ABH TAB<@BBE D(D0 (A BBBD 88BBD D(G0 (A ABBD H8BBD D(G0# (A ABBD [(A ABB(HBDD AI(8BDD jAB(@BDD rAB(7BDD aAI(4(JBDD tAI(`L0BDD bAB(P7BDD aAI8dBED D(G0 (A ABBB 8OBBD D(G0 (A ABBD `0KBE B(A0A8D8A0A(B BBBEHHH-BBB B(A0A8Gl 8A0A(B BBBI \,BEB B(A0A8DJ[A 8D0A(B BBBG d@ BBB E(D0A8Gz 8C0A(B BBBC A 8F0A(B BBBH | BBB B(A0A8D`M 8F0A(B BBBF EhJp[hA`\hJp`hA`C 8C0A(B BBBG 8(BBD D(G0 (A ABBG 4d(BED D(G0(A ABBLFED H(Np| (F ABBD D(C ABBAHgBBE B(D0D8G=8F0A(B BBBH8BJB B(A0A8Jq 8A0A(B BBBI HhBBB G(A0D8JG 8D0A(B BBBH      84 BAA y ABH K CBH HpL!BJB B(A0A8Jq 8A0A(B BBBI L$BDB B(A0D8JR 8A0A(B BBBK  & '4h(8H(BEH G(K0r(A BBBH)da4),BAA g ABB E FBC H*BBB B(K0D8I@9 8E0A(B BBBI 4 ,wBAD ] ABI ACB@XD-BAD Y ABE A ABL J CBI h-RBB B(D0A8DP 8A0D(B BBBH t 8A0A(B BBBJ HD1BEE D(G0f (D BBBI A(C BBB\T1BBE E(D0D8DP 8A0A(B BBBH p8C0A(B BBBHH2BBB B(A0A8DP 8A0A(B BBBI ( 9ADG  AAE ,9I@@:LEB A(A0D@ 0D(A BBBE L:BEB B(A0A8G 8C0A(B BBBH >vLd?@BBA C(G0 (C ABBJ M (C CBBI H8T@iBBB B(D0A8GPd 8C0A(B BBBD XxABDH K(G0G| 0F(A BBBH D 0C(A BBBJ (BEB B(A0D8D 8D0A(B BBBD $8JAc D N J A`JtJKf\`KTLBE B(A0A8D`N8F0A(B BBBHP`H`N@ BGB B(A0D8Gk 8A0A(B BBBB HHT[eKG T AAC ] GAK } AAA P []A E $]BIB E(A0D8GPl 8D0A(B BBBI  8I0H(B BBBH o 8K0C(B BBBK D 8A0A(B BBBB `L@_ BEF G(H0O`]hOpKhA`v 0D(A BBBD O 0D(A BBBF _#H`BBB E(A0A8GP^ 8D0A(B BBBA <`AAD A AAG l GAL DCA0P`ADG X GAL \CAdXaBGB E(D0A8GH 8F0A(B BBBE < 8C0A(B BBBH eLZ\J4e4@eqADG k GAI X AAF HTeBBB B(A0D8DP 8A0A(B BBBG  ffZf/AmdfBBB B(A0D8G 8F0A(B BBBA V 8C0A(B BBBA L x[H`lxBBA A(G0[ (C AEBE T(C ABBy~0,zAD a CG l CA CCHz>BBB B(A0A8GZ 8A0A(B BBBK d@L~BEB B(A0A8D^ 8A0A(B BBBG  8F0A(B BBBG d`~h0BED F0>  FBBG udP H4BBB B(A0A8Gj 8A0A(B BBBK L74xACD M DAF q DAA (AAD  DAA aP G O I (ADL g AAF Ht(Ebd+Ee( AAD  AAA HmBBB B(A0D8D@; 8D0A(B BBBA H BBE B(A0A8G 8A0A(B BBBD DAV` tD+|{BEB E(D0D8G`ShHpGxGBBQ`N 8D0A(B BBBJ DhMpOhA`wh]pDxBN`0&DD D(B0W$P7DS H(B0B8E@Nx0 ADD  DAC DDAxJBBE E(D0D8GP~ 8F0A(B BBBF D 8P0A(B BBBK U 8A0A(B BBBI <`D@PlXDG  CAA Z FAA jP $AAG yDAP`LBBE E(D0D8D 8F0A(B BBBH D 8C0A(B BBBH D4xBBE E(D0D8J@8J0A(E BBB\|IBIB E(K0I8G` 8A0A(B BBBI ~8A0A(B BBBpBBA D(GO (F ABBF X (G ABBL \ (H ABBG D (C ABBD PHGl E  L (tUBDF BDBl[ED _FBEP  CBB S ABJ S ABJ SABP,BAD  ABE P DBJ [ FBE I CBJ `dNBBB B(A0D8G@ 8A0A(B BBBE u 8D0A(B BBBF (AAJ] AAE pBBB A(D0GG 0A(A BBBG  0D(A BBBJ p 0G(A BBBE phKAD ^ ABO (K0\(A ICBDH d (K0I (K0\(A | (K0I HQBEE B(D0A8G` 8D0A(B BBBH d($@BBE E(D0D8Js 8A0A(B BBBC NK[DH[lBBE D(D0GH[D 0A(A BBBB K[D0A(A BBBlLBBE D(D0JK[G 0A(A BBBI K[G0A(A BBBtpBBE E(D0D8J[DTAL 8A0A(B BBBF mYAcF4 DL O8 DL O <<DfB O@\ DL O\` DL Oxd DL Oh DL Ol DL Op DL Ot DL Ox DL O | DL O< DL OX DL Ot DL O DL O DL O DL O DL O DL O DL O8 DL OT DL Op DL O DL O DL O DL O DL O DL O DL O4 DL OP DL Ol DL O DL O DL O DL O DL O DL O DL O0 DL OL DL Oh DL O DL O DL O DL O DL O DL O  DL O,BEE E(K0G8G@a HHPE DHKPVHA@D 8A0A(B BBBD D HKPQ DHKPQ@c HKPJ D HKPI D HKPI D HKPI D HKPI D HKPI D HKPI D HKPI D HKPI D HKPI D HKPE D HKPE D HKPE D HKPE D HKPE D HKPE D HKPE D HKPE D HKPE D HKPE D HKPE D HHPE D HHPE D HHPE D HHPE D HHPE E HHPE H HEPE E HHPE D HHPE D HHPE D HHPE D HHPE E HHPE D HHPE D HHPE D HHPE D HHPE E HHPE H HEPE E HOPE E HOPE D HHPE D HHPE DHHP4$ DL OLP$RBE D(D0m (F BBBF I (C BBBF h<%JK KP D HL D HL d HL D HL _ CF DHL YA &3]U $&HA[ D V A H&8\&BEA A(D0j (D ABBH T'3'QJ xFH(zBBB B(A0A8Dy 8D0A(B BBBD 4+AF I B F < , P,]Hdh,.BBB E(D0A8GP 8D0A(B BBBD `L0XBB B(A0A8DPPPd 8A0A(B BBBJ L10BEB B(A0A8G~ 8D0A(B BBBA d5 x5$5F_ K DM`5 BBB E(D0D8I`P 8F0A(B BBBE  8A0A(B BBBH H= BBB B(A0A8D` 8D0A(B BBBK \dxJBHE B(A0A8D 8D0A(B BBBI aPANLN}BBB B(A0D8GF 8A0A(B BBBD ($]yGSFAL]`,^qTt H `^H8_zMAD  FBC hH N ABG l`3```0`4D`LAA FBDP |@aNKqDtaWl_ E Fa+AiaA_ H Dxb0BED A(J0 (A ABBE Y8L@R8A0L<`cKED D(G0O (A ABBD D(F ABBI,cbZAA   ABG $d.AGG \AAHdBEB E(D0D8Gpj 8A0A(B BBBG H0fBBA D(D0y (A ABBD H (A ABBB L|fBEB B(A0A8G 8A0A(B BBBG H`lBBB B(H0A8G@ 8D0A(B BBBD |n BBB B(A0A8Di 8D0A(B BBBD RVBD^B\JXA xSAG ^ AI xSAG f AA 4 ykAAG h FAH K CAA DDyMBB D(A0 (A BBBB X@`yBEB D(D0D@ 0A(A BBBB D{MBB D(A0 (A BBBG h P|AG M AJ $|ADG AA$8D}pADD ]DAd`}BBB E(D0D8GpG 8A0A(B BBBE , 8A0A(B BBBJ H$@BBB B(D0A8D` 8C0A(B BBBF !$(4|G`IPk E PZ$d؂;ADG lAA"A`^AT K LH}BBB B(D0A8G 8A0A(B BBBE G H4X BBE B(A0A8DP 8A0A(B BBBH LBJB B(A0A8D! 8D0A(B BBB\ HLBIA H(D0O (D ABBH D(D DBB<BEE D(D0L (A BBBI \!pM88QDD x CBJ TADGt̎xBBB B(D0A8Dn 8C0A(B BBBA KXA 8F0A(B BBBA `8ԑBBB B(A0A8DPL 8F0A(B BBBG h 8C0A(B BBBD H8BBB B(A0A8G`O 8D0A(B BBBC tdWF A  BEB E(D0D8J  8A0A(B BBBD  G!L B  G!N A h G!F B  G!O B h G!F A k G!O B h G!F A _ G!N A h G!G B o G!O B h G!F A  G!N A h G!G B t G!O B h G!F A  G!N A h G!G B x G!K B h G!L B o G!O B h G!F A  G!N A h G!G B  G!O B h G!F A  G!N A h G!G B  G!O B h G!F A e G!N A h G!G B w G!O B h G!F A e G!N A h G!F B w G!O B h G!G B | G!N A h G!F A dL|BBB B(A0D8GX 8F0A(B BBBE J 8A0A(B BBBD Hd| v\ dd8BJG A(D0G@HMPBXB`I@[ 0D(A BBBB D 0C(D BBBG LWBBB A(A0U (A BBBD  (C BBBF <bBB A(A0 (A BBBA H\`BBB B(A0D8GP 8C0A(B BBBF @RBB A(A0G@ 0A(A BBBH 8BBD A(G0G (A ABBC H(tBBB E(A0A8G`e 8C0A(B BBBK 8tRAA  ABJ m FBK ,|vGDG ^ AAF x4BBB B(A0D8Jy 8A0A(B BBBF XOA^ 8D0A(B BBBF ]XA`lBBB B(A0A8DPS 8A0A(B BBBE  8G0A(B BBBG XREA D(GpzxaKxAp (F ABBD n (A ABBA ,H$@vA_ H _ I ch,|IBAD I0t AAB04T _@X)BAD G0[  FABF r  CABH HDBBB B(A0A8Dp` 8D0A(B BBBE LTBHE A(D0W (A EBBK a (A BBBH L7LBB A(A0(A BBBCP0`BEE B(D0D8G`! 8F0A(B BBBC i 8C0A(B BBBK l "<]@JAG  AAB e DAA UC  J D MKs`8 BBB B(A0A8D` 8A0A(B BBBH D 8C0A(B BBBH `xPDB B(A0A8Gp 8A0A(B BBBD pPp`eBBB B(A0D8G`R 8A0A(B BBBH 8D0A(E BBB@T>hD"DL Q\X:HBB B(A0D8DPS8A0A(B BBBDHP8%HT@BJB B(D0D8IPX 8D0A(B BBBJ dDH?BEB B(A0A8G 8A0A(B BBBC yXBBQK[AL\ARIIIIIIIF^ZABBNK^B HQQQQBBQQU^ZGGGGBBGGePBGVIBGN*20,*AAD m AAK DFAP*BEB A(A0G@S 0A(A BBBC hHYPIXB`I@xH+BBB B(A0A8J 8A0A(B BBBJ  [BBNH[BBI8(C|BBA D(D0c (A ABBA L lCBEE D(A0 (A BBBB L (A BBBA HP ,D$RBB B(A0D8Jt 8A0A(B BBBK ` SHBBB E(D0A8D@ 8A0A(B BBBE D8G0H(B BBB( SADG } AAE , UVAi F eL V?AN A n$l  VsAAG gAAH xVBBA I(D0 (D ABBF L(D DBB  W* (W2 TW= W0 WD W2HX WBBB B(A0A8Dc 8A0A(B BBBE  (YJH dYBGB B(A0J8Gp 8A0A(B BBBC 4 ]BAA r ABG hAB8< 0^BBA A(D0y (D ABBD x ^@BBB B(A0A8G 8C0A(B BBBA  DKAG_BBEBM^A 10  HD H%]|` \rBBB B(D0D8GP 8A0A(B BBBG D 8A0A(B BBBJ D 8D0A(B BBBG 0 \ADG@u AAE DFAdȢBBE B(A0H8D 8F0A(B BBBD  8C0A(B BBBA 4|YDG ~ FAG W FAB 4BBA A(D0t(A ABB@ZBBE H(A0D;0A(A BBBd0,BBB B(A0A8D 8C0A(B BBBC R 8F0A(B BBBG (AID  AAA HXjBBB B(A0A8D@ 8A0A(B BBBF `|BBB B(A0A8D`G 8A0A(B BBBA  8C0A(B BBBD HtذBBB B(A0A8D`B 8A0A(B BBBF 01ADG M CAC DGA|(NBB B(A0A8GN 8A0A(B BBBK H 8D0A(E BBBE HtH BBB B(H0A8Dpw 8A0A(B BBBJ   [YJ vAH0LBBB B(A0A8D@W 8D0A(B BBBF $|лkADD _AA8BED D(D0C (G DBBK 8lBED D(D0C (G DBBK XBMF D(D0 (D ABBH D (F ABBA t(D ABBx4\BBA A(D0 (K ABBE _ (F ABBH ] (A ABBE :,BDD pAB(5XIBDD {AB(5|7BDD aAI(5JBDD tAI((66BDD hAB(T67BDD aAI86BED D(G0 (A ABBB 86`_BBD D(G0 (A ABBB `6 KBB B(A0D8GB8A0A(B BBBGHH\7 EBBB B(A0A8Gl 8A0A(B BBBI \7 BEB B(A0A8DsJ[A 8D0A(B BBBG d8$BBB E(D0A8Gz 8C0A(B BBBC A 8F0A(B BBBH |p8BBB B(A0A8D`M 8F0A(B BBBF EhJp[hA`\hJp`hA`C 8C0A(B BBBG 88 BBD D(G0 (A ABBE 4,9BED D(G0(A ABBLd9XFED H(NP| (F ABBD D(C ABBAH9gBBE B(D0D8G=8F0A(B BBBH:oBJB B(A0A8Jq 8A0A(B BBBI HL:%{BBB G(A0D8JG 8D0A(B BBBH :+ :+:*:+:+8: +BAA y ABH K CBH H8;+BJB B(A0A8Jq 8A0A(B BBBI L;H/BDB B(A0D8JR 8A0A(B BBBK ;0(;0IBDD {AB(<1NBDD {FB,@<<1BHD  ABG p<1<1<1 <1T<<2<82!<T2;<2=|2 l$=x2)BBB A(A0D@ 0D(A BBBG F 0D(A BBBG f 0D(A BBBG L=85BEB A(D0h (F BBBF   (F BBBC =6D=6zb`>7BBE E(A0A8D`` 8G0A(B BBBL T 8F0A(B BBBE t>8AY>8A I Cd>9BBB B(D0A8Dp 8C0A(B BBBH  8A0A(B BBBF x?D>'BBE B(A0D8GP 8F0A(B BBBE t 8A0A(B BBBB Q 8C0A(B BBBA ?>t0n4??BDD  ABD QCB8?X@BFD I ABH N ABG d @@BBB B(D0D8G 8A0A(B BBBE  8M0A(B BBBF @CDO E 0@xC5ADF Q AAB RAA4@CTBDH d CBI LAFAC`$ACBEI F(A0D8GP" 8A0A(B BBBB |8M0A(B BBB$AE2AAG fAA<AE.BEE D(D0 (A BBBF \A FBEB G(D0A8G@[ 8A0A(B BBBG D8M0A(B BBBPB\FDAR E kpBFdWLBDGMBBE B(A0A8D@ 8C0A(B BBBA BDOBPOCLO-HChOBBB B(A0D8G@W 8D0A(B BBBH H`C PBEB B(D0D8D^ 8A0A(B BBBA LCSBFB B(A0A8J  8D0A(B BBBA 8CfJBBH D(G0 (A ABBK L8DgBBJ B(A0A8G@ 8A0A(B BBBE `D$y BEB B(D0A8M. 8A0A(B BBBK ZQAD$EHEBIB B(A0A8Hp 8A0A(B BBBD ,`E,JDD  AAB P(E^BDG MAB,EcLAD JABB`E0BBB E(D0A8D@ 8M0A(B BBBE D8A0A(B BBB4PF̆;BDD  ABJ ABpFԇ~BBB B(A0E8DpU 8A0A(B BBBG xEaxEpsxORxBpTxLQxApF2BGB L(K0D8G`e 8A0A(B BBBD r 8A0A(F BBBH whEp]hE`F 8J0A(E BBBN hGLBEE E(D0D8G@ 8A0A(B BBBG DHJPHXB`L@PHLPLXB`L@tGxBBE E(A0I8G HZAs 8D0A(B BBBC 4 8D0A(B BBBG dlH  BFB B(A0A8G 8A0A(B BBBF L 8F0A(B BBBM THȜBBB D(D0G@n 0A(A BBBE g 0A(A BBBA ,,IpBDD  ABI \I0BFB D(A0 (A BBBF x (A BBBA  (A BBBD  (A BBBI Q(A BBBI BHB D(D0 (F BBBH  (F BBBD  (F BBBH  (A BBBG T(A BBB(lJ6BDD hAB(J$:BDD gFBHJ8BBB E(A0D8G@6 8A0A(B BBBI LKBBB E(D0D8D 8F0A(B BBBF <`KBBE D(A0: (F BBBD (KLBDD FBLKJBBB B(D0D8J 8D0A(B BBBG (LBDD AB(HLdBDD FBHtLBBE E(F0A8J 8A0A(B BBBE LBBB B(A0A8G} 8A0A(B BBBH OXAyNPAANA]`DM6BBB E(D0D8G@m 8C0A(B BBBE  8D0A(B BBBC HMԻNBBB B(D0A8N 8A0A(B BBBE Mؿ6"BDE L(A0A8G  8F0A(B BBBD HMAVWAGkEHxNREB B(A0A8DS 8A0A(B BBBB (N8[AG0J AAA N\O[ BLB B(A0A8Jn 8A0A(B BBBJ dKlA0dOAGD0e FAH |AA OdcAG m AJ OSAG ^ AI OSAG ^ AI tP(sBBB B(A0D8Gb 8F0A(B BBBK V\A 8C0A(B BBBD |P0QmD ^AHPpsBII K(K0a (C ABBE D(M ABB4PBAI M AEA bAB Q BEB B(A0A8Jj 8A0A(B BBBE G 8H0A(B BBBH BAEYbWA 8D0A(B BBBI Q4$BEB B(A0A8G 8A0A(B BBBA `TBJeMB{[HAGuA,{BGTA 8D0A(B BBBE uWAC[PATR&.BBB E(D0A8GPXG`CXAP 8A0A(B BBBD \S(BIB B(A0A8Gn 8D0A(B BBBE BZApxS9BBB B(A0A8DM\Ap 8A0A(B BBBB MKAS0?T,?T8?(T4?L0bDz B a0w>5ADF Q AAB RAA4w>TBDH d CBI LAFw>`x>BEI F(A0D8GP" 8A0A(B BBBB |8M0A(B BBB$dxH@2AAG fAA<x`@.BEE D(D0 (A BBBF \xPABEB G(D0A8G@[ 8A0A(B BBBG D8M0A(B BBB,yADAR E kLLyA=BBE B(A0A8D@ 8C0A(B BBBA yIyIyI-HyIBBB B(A0D8G@W 8D0A(B BBBH L$zJMBBB B(A0A8G 8A0A(B BBBB tz 0zhanAKG0\ FAJ kAAHzaBEB B(D0D8D^ 8A0A(B BBBA 4{heHBDI W ABG TABLL{eBFB B(A0A8J  8D0A(B BBBD 8{wJBBH D(G0 (A ABBJ L{yBBJ B(A0A8GP 8A0A(B BBBE `(|Ċ BEB B(D0A8M. 8A0A(B BBBK ZQA|$|=AKG0gAA|4?Qm|X|`$}l=AKG0gAA8}?QmT}l} }}DW}};A] B Z}ܔDW}DW~DW(~DZ@~DZX~DZp~ DZ~ ~AV~BEB B(A0A8DO 8A0A(B BBBF  8D0A(B BBBO X 8A0A(B BBBN ] 8C0A(B BBBG HPpBEI D(D0m (C ABBC T(F ABB AJCH\eBBB B(A0A8G`d 8A0A(B BBBA H BEI D(D0x (C ABBH T(F ABBX@lBEE A(D0Gw 0A(A BBBI 0zAFD P AAC QCAHhBBB E(D0D8Jb 8C0A(B BBBE `0ܟnBBE B(A0A8GS 8I0A(B BBBG ] 8D0A(B BBBF  #PNԁ4ACG S DAE N DAE $41ADG bAA<\ACG  DAI Q DAJ MDA` BGB B(A0A8Jj 8A0A(B BBBC f 8F0A(B BBBK HL BOB B(A0H8] 8D0A(B BBBF LnT s I (hdAFG L CAB fMh K Q8A K ,ԃت AJ` AD l CA (SADD n AAG D0bBAA | ABE W ABF m AEA Hx,BBE E(D0D8GP 8D0A(B BBBJ (ĄADG N CAB lwAA F W A ,ȮwBDC H ABD DqA H Z F HhtBEA D(G0L (D ABBH B(K ABBHBEB E(A0A8G@ 8D0A(B BBBF #AM B R( ̰KADD c CAH (LbBAA q ABH 8x4CBED D(D0{ (C ABBJ H ȆD7Ad K F`-\Px-\P-\P4:ZP<LвKAD lAABP NFApd̳wH8BBD D(G0e (F ABBE L(C ABBHFBBB E(D0G8GPB 8D0A(B BBBD LLb BBB E(D0A8G 8A0A(B BBBA dBBB B(A0A8D` 8C0A(B BBBB  8F0A(B BBBA \(BBA A(G0n (A ABBG V (A ABBD F (D AEBF ,dxfFDD TAAAЉ  4=H\pLGBBB B(A0A8Ju 8D0A(B BBBJ ԊSAG ^ AI L$R BBB B(A0A8G 8A0A(B BBBE LH4OBBB B(A0A8D 8D0A(B BBBD H4BBB B(D0D8G`^ 8G0A(B BBBK <WAD } CBB a FBG `$8[(<AAG g AAF 0hdAAG0 AAK LCAHBED A(G0 (A ABBH l(A ABB@BDD G0h  AABC `  FABG <,RDD J0d  AABD D8M@U8A0Hl0BEB B(A0A8D`> 8D0A(B BBBD ̍H8BED D(J0v (A ABBK HtBBE B(A0A8DP& 8D0A(B BBBD HhBBB B(D0D8D@ 8D0A(B BBBN X'Ȏtg(܎QADJ i AAF $BADG lDA0, D(HX4BBB B(A0A8GP 8A0A(B BBBA <)]EA G0 AABFp0TBGB D(A0D@b 0A(A BBBB ] 0A(A BBBK HP\BBD A(D@ (H DBBH (D ABB  Đ LؐJBBA D(DP (A ABBG c (A ABBG 8(BHA D(G0} (A ABBG HdX8BBB B(A0D8Dpq 8D0A(B BBBA @LVBEE D(D0D@~ 0D(A BBBG h@dVBEE D(D0D@~ 0D(A BBBG L8`|RBED D(D@| (D ABBH HBEE D(D0x (D BBBJ k(H BBBLBHA A(D@f (A ABBD V (A ABBD (8TAAF@F DAE @dBGD D@~  ABBD W  ABBD @tBFD D0R  AABJ ]  AABG @BFD D0R  AABJ ]  AABG @0LBFD D0R  AABJ ]  AABG t/BEB B(A0D8Dk 8F0A(B BBBB ' 8C0A(B BBBE SFFV[F`BXp BEB B(D0D8G5 8D0A(B BBBD GGHIGNSMeA>IhA<8BHE D(D0m (A BBBE ԕ 8>BHA D(G@ (A ABBE 4$TBDD g ABL KFB8\BBD D(G@Z (A ABBE HdbBJD E(G0O (L ABBL N(F ABB4TBII Z ABO PAB4TBLI ] ABI PAB(TrBGD | ABD d,BHE E(A0A8D`W 8C0A(B BBBC  8F0A(B BBBI &D^8|BDD q ABB nKB<DlWT l !D\$( 6AAG jAA@ <Av0Șd GADG Y FAD OFA< @BBE D(D0 (A BBBF 8< gBBD D(G0 (A ABBC dx :BBH E(D0D8Gw 8A0A(B BBBG  8A0A(B BBBJ     DT$4 +AAD ]FA\ '$p +AAD ]FA H BHE E(A0A8D@ 8D0A(B BBBF DH PUBLE E(D0D8D`r 8A0A(B BBBH Xd*D0ep|xt/D0j$YAJG@BCA؛$D _2D0m)D0d  4ATP!,d8BDA [ ABK ,МTDz B dAJ E  `TAF I C@,dKFD W ABA YABDH p4D0o#A]4zBAA e ABD AFBTLBBB G(D0D@h 0D(A BBBH D0C(D BBBH8XBBB H(D0D8G` 8A0A(B BBBH LBEE B(A0A8GN 8D0A(B BBBF LԞ8 BHE B(A0D8J 8D0A(B BBBA $ 8A]HTBBB E(A0D8G@ 8A0A(B BBBA @iBEB D(D0D@ 0D(A BBBE 8BBA D(D@X (A ABBA < LrBDD J0f  AABB k ACBh`BBE D(A0D@v 0A(A BBBH ` 0A(A BBBH P0A(A BBBT̠BBB E(D0D8D` 8A0A(B BBBE hCpMhA`p$BEE E(A0D8GP 8A0A(B BBBH  8F0A(B BBBD XC`HXAPTyKEE B(A0D8G`8 8A0A(B BBBA P 68!EDG p ABM P FBH H@!aBBB E(A0D8G@" 8A0A(B BBBE ##t# BBB B(A0A8G3SKD+ 8C0A(B BBBC \ 8A0A(B BBBJ H,`/BBB B(A0A8G` 8A0A(B BBBK (x/ADG u AAE H01BBB B(A0D8D`m 8C0A(B BBBF P|3BFB B(A0A8J 8D0A(B BBBH (D89@BDA kDE4pL95AAGPg DAK | ADG TT:BHE D(D0D@f 0D(A BBBD ~ 0D(A BBBA |:BBB B(D0A8Gp 8A0A(B BBBH  8A0A(B BBBI N 8H0A(B BBBA l,=;BBE D(D0Gpy 0D(A BBBD  0D(A BBBH I 0A(D BBBD H?BBB B(A0A8Gp 8A0A(B BBBD <`F 4P\FADG N AAD y EAA `FBBB E(D0D8GPm 8H0A(B BBBH  8A0A(B BBBD \HBBB B(A0D8DPW 8A0A(B BBBF q8A0A(B BBB(LI`BDD R ABA Lx4IBEA D(G@i (D ABBK Y (D ABBF HȧIJBEB B(D0A8GPX 8D0A(B BBBD `KLBBE E(D0A8GPp 8A0A(B BBBD  8A0A(B BBBF HxLrBEE E(A0D8G@ 8D0A(B BBBH ĨPبP4PdBOC k ABN KFBL$(QzBPF A(G0b (M ABBL N(F ABBtQ Q Q|QĩxQ ةtQpQ4Q24QADG  CAJ DAAdLRBBE E(A0A8G| 8C0A(B BBBA $ 8F0A(B BBBE T|k̪U|kLhVBLE B(A0A8Gd 8A0A(B BBBD 84eUBBA A(G0 (D ABBI phdhi1BDE E(A0A8D`2 8C0A(B BBBD  8F0A(B BBBF @nn(nYFj H JFHDd@o3 BBB E(D0D8GO 8D0A(B BBBJ  8A0A(B BBBA HxcBED D(G0X (I ABBL D(M ABB,yvAG AG  AD ($hzYFj H JFHDPzdzxzzzz`fUFЭzzz( zPADG r AAA 8{(L{PADG r AAA ,x4{BAA  ABD ,}BAA  ABK خ~@  (,:BDA eDE(X$qBGA R ABA hx?BBB B(D0D8G 8A0A(B BBBB M OD dOcALLBDE H(D0K8D 8A0A(B BBBH H@̅:BGL E(A0D8Ip 8A0A(B BBBH BHH E(A0A8JPIBqPLLDr 8D0A(B BBBG MGH[H[KHL\NUAPcEHNxOGHSiJSANVB4@BAA t ABE C CBH DıBBB B(A0A8G`8A0A(B BBBH fBBB E(D0K8Dpv 8D0A(B BBBG @X4BBE A(C0D@} 0C(A BBBA  IJ4زBEA A(D0r(A ABB1AR M L0LDBBD D(D0k (D ABBD M (D ABBB HxBBE E(D0A8G@z 8D0A(B BBBG tvF{ G F(<PAr E E C U K 0hBJD D0  AABD `RAC L A7Df F Fܴ7Dg E F7Dg E F4EHJ { FBF q CBA LThTEI D(D0T(C BBBIC0DإBBB E(A0D8D@8A0A(B BBB`(D cLxBGB B(A0I8Dp 8D0A(B BBBJ LTBBA D(G@g (D ABBH t (D ABBK -DhdжKBE E(D0D8G@I 8D0A(B BBBD I8A0A(B BBBA8@L.`,>TixT(PAJe AG kA_Dw E ԷX@GX I l|BEE D(D0G 0A(A BBBA g 0A(A BBBA O 0A(A BBBI `t(,DI ^LHoBBD D(G0G (A ABBH | (A ABBF `hBEE E(D0D8G@@ 8C0A(B BBBD _ 8F0A(B BBBB `HBBE E(D0A8G@q 8A0A(B BBBK  8A0A(E BEBG  HԹBBD D(GPK (D ADBG V(A ABBT \BBB D(D0GPY 0D(A DBBE V0A(A BBBTxBBB D(D0GPU 0D(A DBBI V0A(A BBBHкBBB B(D0A8DP 8D0A(B BBBD \PBEB E(D0A8GUKUA^ 8D0A(B BBBE |p(AL?D e G N̻ID e G X1D e A PBDD D@H  AABF Z  HABK G  AABE 4\pADD0{ DAG K DAH `ȷ BIE E(D0D8D`r 8A0A(B BBBC P 8A0A(B BBBF \tBBB E(D0D8G`Q 8D0A(D BBBF V8A0A(B BBB@XĹBAD G0q  AABE w  AABE LBEB E(D0D8G 8D0A(B BBBH \BBB B(D0D8Gpr 8D0A(D BBBH V8A0A(B BBB(L JAG W AH Y AA @xDBAD G0I  DAEG K  HABB LоKBBD D(G`} (C ABBH  (F ABBG  пp( ,qADD0L AAI LLBEB B(A0D8D 8C0A(B BBBK 8BED D(DPY (A ABBF \ؿT9BDA DP  AABF T  AABH \  CABF T AAB84;BBB B(A0D8D3 8A0A(B BBBB o 8A0A(B BBBG T 8A0A(B BBBB l 8A0A(B BBBJ HBEB B(A0A8GY 8C0A(B BBBG L BEA C(DP (A ABBD O (C ABBA Tl+BBE D(A0GP 0A(A BBBJ U 0A(A BBBC 8BBD D(DP (A ABBJ 8lBBD D(G` (A ABBJ L<PBBE B(A0A8Jh 8A0A(B BBBG <vBEE D(A0@ (A BBBH 8fBBE D(A0P(A BBBDL I$%8$$L@1`ltxD08fBBB A(A0V(A BBBAP 0SFoS8PBFI | ABA `ABOPMKb\BEB B(A0D8Gq 8D0A(B BBBK yK[AX pBID A(Gpv (A ABBE t (A ABBF \(I ABBh$ BBE D(D0IK 0A(A BBBC oJVEM^FAG 0A(A BBBK GIPA8dBID D(D0j (D ABBF 0DX lLBGE B(A0D8QW 8A0A(B BBBA HLBGB J(I0D8G@w 8C0A(B BBBD `BJJ E(D0D8GPi 8A0A(B BBBC q 8A0A(B BBBE |!*DBED D(D0n8J@K8A0D (D ABBD @ )BBE D(A0G 0D(A BBBF 4 HJ` F HHlBEB B(A0D8Gp 8D0A(B BBBE L4BED D(D0a (D ABBC r (D ABBE ` BBB B(A0A8Dp 8A0A(B BBBH  8D0A(B BBBJ HlBBE E(D0D8G~ 8D0A(B BBBH HdBBE E(D0D8Dpb 8A0A(B BBBJ )$-Ak48)HT\Pp\ XdTLEB B(A0D8G@U 8A0A(B BBBH D8C0A(B BBBA`BBB B(D0A8Gpx 8A0A(B BBBJ ^ 8A0A(B BBBA d44x4NBFD E(D0n(A ABBLbBBB B(A0D8Gp 8A0A(B BBBE  8A0A(B BBBE F 8A0A(B BBBH e 8A0A(B BBBI ,H$AJ] AG g AH x ,sFDG0f AAG p8@BHA D(D0J (A ABBE `BBB E(D0D8GPg 8A0A(B BBBE 8F0A(B BBBH\ BBB B(D0D8DPP 8D0A(B BBBG 8BEF G(G@K (A ABBA @HBDB A(D0G@^ 0A(A BBBF 8($BBA D(G0b (A ABBA Hd[BBH E(G0D8GP 8D0A(B BBBE HBBB B(A0A8DP# 8D0A(B BBBB  BBB E(D0D8GH 8A0A(B BBBD E\AkCYBMYAE]BiKpEb!M^AfKbBK\B]E_AMdBh0KBA A(G0u (A DBBD H(F ABBEH0D (F ABBA HhzBBD D(D0Q (D ABBF s (G ABBA MBBB E(D0A8D[A\DQ 8C0A(B BBBC _MHGAA_D 8A0A(B BBBF GUAL 8F0A(B BBBK J^AMZBMZBMZBFWAEm (EBBE E(A0D8GEADan 8C0A(B BBBI TPAAXD 8A0A(B BBBD N 8F0A(B BBBA U BBB B(D0D8G 8D0A(B BBBE KGAU HGBU ZKAk8BIB B(A0A8DpS 8D0A(B BBBK xUKxAp xBBO \xQBDBGNpMxUKxApfxGMGIpjxBBDKESpxCGxBpheQY F tH$1BBE I(D0C8F@8A0A(B BBBLp % BBB B(D0D8J 8A0A(B BBBF |+bBDB B(D0D8QKWBsK_Az 8A0A(B BBBH LJdA8@|0BED D(G@P (A ABBA $|2sAAG@dDAX2d2Ge D B3#D 3,g<3H3BBB B(A0A8FPi 8A0A(B BBBE ``L6MBB B(D0A8D8A0A(B BBBEF(x9qFAG ]AAC9XDQ E  :, ,:!4H: HD:9\p:2p:1H:BBB E(D0A8G` 8D0A(B BBBE === = |=4x=HHt=#BBB B(A0A8D 8C0A(B BBBA X?d?N?f`?RBBB B(A0A8D 8C0A(B BBBF D 8F0A(B BBBE L4@BBB A(A0Y (A BBBH O (A BBBA (HAqFAG ]AACAAAAxAmBB B(A0D8D` 8A0A(B BBBK pF`O 8F0A(B BBBD 8|E/KHC G0J  AABE ,FKFAG n AAB GP$FWBBB B(A0A8G 8A0A(B BBBC <0LA(PlLAFDF mABH|LpFNB B(H0A8G`y 8A0A(B BBBE HQEDD H FAL ^ AAH | AAJ DFAhR(TSC<SPTodxTTxTwX\ D ~<$UnJDG ^ AAK  AAJ mTV)pV58VFED A(G0@ (A ABBC <0W1P\WS(dWjACG i AAJ WT48XBBA G(G0(A ABB<XJDG Q AAH r AAD XY|40,ZBMA D(DP(A ABB@hZBBB D(A0GP 0A(A BBBD \,|]:AA AH | AC ,_NDv AG FAA _JBBB B(A0A8J 8A0A(B BBBE N 8D0A(B BBBE  8D0A(B BBBL  8J0A(B BBBE c 8J0A(B BBBE K 8G0A(B BBBE v 8D0A(B BBBE  8D0A(B BBBE  8F0A(B BBBE 08AAG0` AAE NAA|l2 BBB B(D0D8G@] 8A0A(B BBBB G 8G0A(B BBBI  8A0A(B BBBI HBBE E(D0A8GP 8A0A(B BBBJ 8dKLE E(A0D8Gp 8A0A(B BBBD 6 8A0A(B BBBA Y 8A0A(B BBBA q 8A0A(B BBBA ApH1BEE E(D0A8G@ 8A0A(B BBBF H4BBA A(G0I (A ABBL (A ABBLLBBD D(G@ (A ABBH  (A ABBI dVEB B(D0A8GP=HPK 8F0A(B BBBF H8 BBB B(A0C8DP 8C0A(B BBBF ;;@;l;d FBB B(A0A8GP! 8D0A(B BBBE  8I0A(B BBBJ <Z!PH\JDG F CAA XFAQ Y KAK <kBDD D0w  KABM D CABTBLH K(A0G@ 0A(A BBBC l0C(A BBB@@|AAG  AAE u AAA  AAA H-BBB E(A0A8G`5 8D0A(B BBBJ 4zAAG q LAI V CAF Ai F L D t,BBB A(A0j (D BBBD _ (A BBBJ  (A BBBH A (A BBBH XBBD A(G@h (C ABBH Q (A ABBA U(A ABBH<1BGE B(A0D8GP 8D0A(B BBBE \L0!BBA A(G@b (C DBBF \ (A ABBF U (A ABBE ,BDC N ABF 8`BBA C(GPo (D ABBI LBBF D(D0 (D ABBA q (J FBBK 4htAAG0 CAG m DAN (,ECG O DAA 4)AC BED K k E L D 8BAA  ABD J ABK $@,nH uADP  h EM C 4AC BJ@ H O I 0FKD DPR  DABF L LH0v B (4 <0TH0{ E Xtl(H _(H _@YIHF B(A0A840A(B BBB8FEA A(G0o (A ABBG `D8FBB B(D0D8GP 8A0A(B BBBI i 8A0A(B BBBE @ FEH D(A0G" 0D(A BBBA <` FBA D(G (A ABBG , `@=FBB E(D0A8G@ 8A0A(B BBBI f 8A0A(B BBBH .HFKF F(A0A8Gh8A0A(B BBB(D$REDG  GAJ `Dx%<FBB B(D0D8GP 8A0A(B BBBB i 8A0A(B BBBE $T(FEAJsAAH|(FBE H(A0D8G" 8A0A(B BBBJ  )MGE,<`)FAA m ABH (l)AJDD dDAH)FBE B(A0A8Dp 8D0A(B BBBH L,OBE L(H0D8D@8A0A(B BBBEL4(-FBB E(A0A8Gd 8A0A(B BBBJ /1D0FBB B(A0A8DPf8D0A(B BBB0X0EADp DAD FDA80FBD A(D (D ABBE ,Th1FAA Dp AAB<1iFBA A(D (D ABBE D(3yFEB A(A0D$ 0D(A BBBF  p4 444h5AMD(Q AAK J CAB @l5BAA \ ABE h ABE kAB46xBDG K ABE TAB8d6BBE A(D0k (A BBBH 4$6,AAD  DAC p AAF L\7BGJ A(D` (D ABBC d (C DBBA ;BBA D(G0~ (A ABBD + (D ABBD A (A ABBI D (F ABBA _ (A ABBK ,4=FDD Q ABF ldx@N BBB A(A0DPz 0D(A BBBG | 0J(A BBBK  0F(A BBBO HXJBFE B(D0A8D` 8D0A(B BBBF 8 ,Q=BLD A(J (D ABBD H\0RBBB B(A0D8DP 8D0A(B BBBA LRhBBF E(G0G8Jq 8D0A(B BBBK lWBEI D(D0D@ 0J(A BBBL q 0D(A BBBL n 0D(A BBBA LhDYBEB B(D0D8G* 8D0A(B BBBG $[qAP@W AG AL\BBB A(A0DPJ 0D(A BBBG K 0D(A BBBJ   0H(A BBBM  0J(A BBBM 0hbNG@ AE } CH Pc c cAcHN(cIFAA zDB<dFBA A(GS (D ABBC \d;Kote eypeo`eBBB E(A0A8D@v 8F0A(B BBBJ ~ 8C0A(B BBBA ,G@8tg Lpg H`lgFBE E(A0D8GP} 8D0A(B BBBH HgFBE E(D0D8DPt 8D0A(B BBBA dhHB Lhh!(h"HF SDh"HF S@`h}FAD y HBB S LBG AAB8hFBA D(D0 (A ABBB Hi5FGI B(A0D8FP8D0A(B BBB$,j(EDJ FIAHTjFEB E(A0A8D`f 8D0A(B BBBE (Ll*FDD TAB$Pl?ECG mAA$hl%EDJ FIA$plZEAD MAADD 4\lGFED A(D0l(A ABB8lFJD A(D@G (A ABBJ l)m9DmHNLm$o<o5P pbdhp%|p/EJ ^AHpBGB B(D0D8D@ 8D0A(B BBBI ,DrAC HKZ G x,x 4DxZHA Gd  AABF H|0{0FBB E(D0A8DP 8D0A(B BBBF AP{{QE A H4|EDI o AAE c AAC U AAI DCA$d|>EDD gDAL|FBB B(A0A8DP 8A0A(B BBBG @~.H8\~BBA A(G0i (A ABBD ,~#HZD~'H^<\FDB A(A0 (A BBBF ?07(xFDA iABm? $6T,PFEG E(G0E8D@IHJPTHA@T 8D0A(B BBBH 4Ec H CĀЀ ̀ HȀ%FBE E(D0D8GJ 8A0A(B BBBK @$TȄ8hĄFED C(Jx (A ABBF 8@h8HDD ZAADA bAA (  ;FGD fABL `4tȈBHA A(  HBIL P BAD G@X  AABF K  AABA Q  FHBG P܋RBB A(A0 (A BBBE A(A BBB4TxAAGPJ DAH P AAF MBB E(A0A8D= 8A0A(B BBBA Q8A0A(B BBBJ 8G0A(B BBBB 8$8BBA A(G`{ (A ABBB ` BBB B(A0A8G`K 8A0A(B BBBJ I 8A0A(B BBBE  8A0A(B BBBH a`a@ WdܠBBB B(A0C8G{ 8A0A(B BBBH edd8h~BAA H ABA C CBH LȧgFBB A(A0SL 0A(A BBBE f$EO0~ AE eCP 0L HDHBEE A(A0 (A BBBD P(A BBB(WFID @ABD0\FEE J(G0D8G@e8A0A(B BBBDH^FEJ B(D0D8G@m8A0A(B BBB4L`FEA A(D0(D ABBL8FBD D(G0 (A ABBF n (A ABBD <LAD pABDH DAB4hSKDG a AAG DCAHL$`$4tȮsKDG z DAK DFAE4sKDG z DAK DFAEDXFHE E(A0A8F@~8C0A(B BBB, @ ̯T د h ԯ ,| ЯYERl AD OA K$ LEAD AA, EDD k AAF $ L< 7dRT 8xEAI t +MU A ( PEAD d AAH  бBMZ I < SFBG D(G0Q (J ABBF $  2EAG UJAD 85EM F \$d X6EDD _DA, p4FDD bABT BBB B(G0A8DPXF`[XAPN 8D0A(B BBBH X 8AAD _ EAE G DAD f DAE D DAG T CAH 4p ̳FJD D(G0y(A ABB 4{FEB E(A0D8FpMxOFADBSp 8A0A(B BBBF  8H0A(B BBBH , 0HDB OLL 0FBA A(D0c (A ABBI O (C ABBI L FBA A(D@] (A ABBG O (C ABBA 4 ECG0P AAG b AAD $3URI0@FDD F0k  AABE 0tFDD F0o  AABI (tEAG0 DAF DhFBB A(D0GPH 0D(A BBBG H BNH B(A0A8Q8D0A(B BBBht |pD4 BFB B(A0D8 0A(F BBBA 4BAA Q ABH z ABC |(TBBB B(A0A8G@; 8A0A(B BBBJ  8A0A(B BBBA l 8A0A(B BBBA HzBBA A(G0a (A ABBD {(A ABBd BBB I(A0C8GPy 8A0A(B BBBC  8A0D(B BBBA H\BBB B(A0A8GP 8C0A(B BBBH HBBE B(A0C8D` 8D0A(B BBBH lDHQBBB B(A0C8DP 8A0A(B BBBA 4hBAA X ABA fCB8,BAA  ABB G AEC 0ADD O CAD AA|6$FL8BBA A(D0 (C ABBI D (F CBBA tNHBBB B(A0A8GP 8A0A(B BBBF <@BBB D(A0 (D BBBJ ,<BAA  ABK dl`BBB B(D0A8DP9 8A0A(B BBBL Y 8A0A(B BBBE #DJF N,BAG  ABE 8$BAA k ABF K(K0F(A ``2BBB E(A0A8F@ 8F0A(B BBBD ` 8A0A(B BBBF HBBA D(G0t (C ABBD d(F ABBHBBB B(A0A8DP. 8A0A(B BBBJ \`MYOP x[ViACW,bF0 AH p AG o8|BBA A(D0J (D ABBC \rBBA A(D0 (C ABBC e (A CBBC D (C CBBB hG,XmFAG o AAA gLBBA A(D0v (D ABBG l (A AEBK ,(BAA  ABH H4qBBB B(A0A8DP 8D0A(B BBBA   4jBAA P ABI CDBL> xJ B nA<$JDG k AAF Y HAF Xl88$^Fs G G I HA$^Fs G G I HAHTK$ qFU E f J `L4BBD C(G0{ (A ABBE L (O CPBH 8*BHD A(D0 (A ABBD ND F RHBBA A(D0 (A ABBJ T(F ABB8PL]AA x ABF pF Lx EBIG B(A0A8D 8A0A(B BBBD (x(WAAG y CAJ 40(`FD f AAF ECAG8h$)BBA C(G0B (A ABBI )h0)BDA D0B  DABD ,V8,BBG A(D0A (A ABBI <`/VP/fd0x0h|0BIB B(A0A8Gh 8C0A(B BBBJ 5 8F0A(B BBBD D 8F0A(B BBBA D p5BJB B(A0A8 0A(B BBBJ LT(6BBB B(A0A8G 8A0A(B BBBD $x;.s G PY<=BEB A(A0 (A BBBK D `DGBHB B(A0A8 0A(I BHBJ ThHehH70|IAIL  AAF [AAJXKJdLBEE E(H0A8DP 8A0A(B BBBA  8D0A(B BBBE @ RLT SBEE B(A0A8G  8D0A(B BBBH  UD S  U U U $U  ! U$!UpBLF E(A0A8 0A(B FBEA L 0A(B HBfA ^ 0A(B EBOL 0F(B BBB!Y!X!Y!Zx"Z\"ZBBB B(A0A8l 0A(E BBBn  0C(B BBBA t"8_"4_KAI"h_[AY"_"_"_7D"`0BHB B(A0A8S 0A(B BBBD DD#eeFEE E(H0H8G@n8A0A(B BBB#fGNU hgg%-6>EoD ISY`houyz$;;òDz˲ϲӲБٲݲ I%D  /BYjwȳֳ+9AHU`|RgoRx>ɴʹִԴܴ L '4 =VFN]g}lbu}ϳO̵ݵ4RWbmuöǶ˶϶Ӷ׶۶߶.%8<J]o{˷ηҷxַ #:HZitƸ˸ոڸ߸$.9CXiuzȹй.EUglws|Ⱥ:غݺ '<LXaqv{»Իٻ#(-8BIR]aesaAAbb@ÿcc ο:ddpd Xee,\E>Yk@,+@G~DffFF8gGG/` h$I!rllF3NLL[(ePmyMMxnnNNoo O    H *  <P AP Q ] Z m pqq |rriRR  !. X!-!ssSS !!0tt6RTT GZ  i +uu " @"p""vV"xxXX"(#yy YH#'((3A))KZx#W#wt#($$}$$%(% P% %%%6;Xjz(&P&&  ' 8'h'/','A'R(re wH(((w()@)5OjKx)) )*6G`@*o~p***  (+7X+4+= +Q+W,?bzH,x,,, -@-p-&5->Db-n x-%BHes.. .* /Bx/T/i   / /0."+#>$X%U&j)g*'}(P0x000181 `1R1$ 1) 1B2MP2Wj222(3P33 3!3!44"53I     m@ I%!/7AAxBCDEFHGI>JflKLlst|'/(B)YTV5+1 '4)17IV{/]nPyz|}0~@AV{/]nPyz|}0~@AV{/]nPyz|}0~@AV{/]nPyz|}0~@A 55lil|(&P&#>W&&oy؛& u2 21102`22p2X_ew 0BVj-D[r2CTk $<Tk4Kdx *BTf|0I^s &H&)@Sf|3EWi*AXp/Kh-He.ATh}"6J`|'@[v ">Ws)<Ti5Mc{p&&&&& &@&8Sn7Ol":Ro5Kb~  9Uq`&&&ȥ& &)D_&}@&);Pcv3I_s h&&&&=Tk 8Rl ! 9 Q i        6 P l       * > R e |        . C Y r       ( ? W l       .Hb{)@\uȦ&0&&8&`&&&ا&&(&P&Kax,Ig5M_r)EXo#@Ys*D]t4Lx&&&ب&&&g} #<Ui &B^y8&!<XuX&2Ib{x&&&&&0&P&p& 1EYl !;Uo,If.Lbx%&&ت&&C &_@&`&&&Ы&}& &H&p&  7 P i       !(!&&ج&&F!_!z!!!!!!!")"B"["&8&t""""""#7#O#f#z#######$,$G$b$|$$$$$$%.%E%`%x%%%%%% &$&=&V&n&&&&&&''4'L'd'}'''''' (X&&&Э&"(:(W(s((((((()");)W)&&t))))))**7*O*g*******++0+D+[+m+++++++,,3,E,X,k,},,,,,,,-$-7-N-h------..4.M.c.}.....//7/K/c/{//////0!040G0^0q0000000 1&1@&@1`&Y1o11111112,2F2_2r222222 33/3@3Q3b3s33333334454I4`4x44444445)5>5W5n5555555646O6g666666677'7>7U7l7777778818K8d8}888889969L9c9z99999&&&9 : :5:&M:k::&(&P&::::;;.;D;X;l;;;;;;;;<'<;<O<c<x<<<<<<<=(=?=X=j======= >>2>F>Y>p>>>>>>>?*?>?S?h???????@-@F@]@y@@@@@@A(AEA^AwAAAAAABB4BLBdB|BBBBBB C%C:CSClCCCCCCDD9DTDkDDDDDDEE7EOEhEEEEEEFF6FPFlFx&&FFFFF G(GCG&د&&]GvGGGGGG H&#H?HXHtHHHHHH8&`&I*IEI[IrIIIIIIIJ6JLJeJJJJJJ K&K@K\KxKKK&KKL%LCL&_L|LLLLLMM-Mа&&&0&EMcMMP&MMp&&&&MM N& N8NPNbNzN0&NNP&NNNOO;OOOgOOOOOOOPP7PKPePPPPPPPQ'QAQ[QuQQQQQQR)RGReRRRRRRRS+SASXSnSSSSSSSTTx&8TVT&oTTTTTTTTU,U@UTUhU|UUUUUUUV5VNVgVVVVVVV W(WFWaW|WWWWWWX'X@XYXrXXXXXX Y&&'YAY\YwYYYYYYZZ3ZLZeZ~ZZZZZ&Z[[.[C[Y[o[[0&[[[[[ \\5\K\e\\\\\\\]0]M]j]]]]]]]] ^^4^I^b^v^^^^^^ _"_<_V_q______``4`J`_`u``````a$aAa^a{aaaP&x&aabb7bMbabvbbbbbbcc1cFc[cpcccccccdd,dBdXdkddddddd e e9eOefe}eeeeeeeff.fAfTfgfzffffffffg$g=gQgcgvggggggghh-hAhThkhhhhhhhii1iHi^iuiiiiiiij%jz  go ooo o  o  #  * 8*  G P[dm"+yR\ft~ @*8#1ARbJs#/<L]jx -U(U( U(, V(V( V(V(`U(@8V(0V( U(,pV( `V( PV(@V(U(@4 (   n ^ @o Z R `X j p_ W X V PW W W #@w Ќ Ќ   Ќ  Ќ   Ќ jЌ wЌ Ќ }Ќ Ќ Ѧȶ`imr|lx! ='='3P>'cs8>'X>'#R@w #:Qj     " ȶ`imr|lx! ='='3P>'cs8>'X>'#@w `#`:`Q`j```` ` ` `  `````"` `F'G'hg(ig(kg(ng(rg(wg(}g(g(g(g( EE ?i`?,@@Ei ?i>,@@E ?i>@,  ?i`?,  ?i`? ,@@ ! ?i>` ,@@3 ?i>ON`NMI`MLK0lPkkk[[[[[[[[f[[[['[  `p0@P0@P0@Pcu010( '*s'>@s'EJ`e{tvva b s t'F i Xt'1 o  t'1 d' t'25u u DI|Q[[V V bbh h s s     | ||        $$++;>A8NDMP ZD]` Hknpsvy : (W~}||||] \(~ae@0/90K 9(" " {, 8<D<tJGJ 0@0     ( (((((l|[[ ,,+=,P,`,q,,,ķ,ط,,T, +<T,MT,aT,qT,T,θ ,޸T,T,T, ,,.,?,P,b,v,,T,,@l,6,, ,`,@,,@,, ,,(, 3,/,!, %,@,%s ppPg>b  @`GS@g0O ?>O`oPppЀ rra an0\\p&P0@\P\\plll)--.P0a  pppg>b`  @`GS@g0O ?>Op`opЀ 0@a ap@0\\p&P0@\P\\plll)--.P0as ppг g>b0  @`GS@g0O ?>O`oСppЀ rra aPН\\p&P0@\P\\plll)--.P0as pp g>b0  @`GS@g0O ?>O`oСppЀ rra aPН\\p&P0@\P\\plll)--.P0as pppg>b0  @`GS@g0O ?>O@`pppЀ rra a\\p&P0@\P\\plll)--.P0as pp`g>b  @`GS@g0O ?>Op`opЀ 0@a a0000@1P1`1p1P011 10111-1P0a)?/  q 0? 0a 30  W g @O 7 а  д W   ApE`MQPc`9`NP>=O ` I H pP P rr 0 `p P \b P ` &e` v P6 p6 l -Pz  0 :,)>AP N O  fP` 0@le ` P1 Ppj p p  h `P p P P P P  z  @p`2 p2 `T 7 +`+ oPвW 2 8 >C?/  P0? 0a 30  W g @O 7 а  д W     ApE`MQPc`9`NP>=O ` I H pP P rr 0 `p P \b P ` &e` v P6 p6 l -Pz  0 A,)>AP N O  fP` 0@le ` P1 Ppj p p  h `P p P P P P  @p`2 p2 `T +`+ oPвW 2 8  >C?/  P0? 0a 30  W g @O 7 а  д W     ApE`MQPc`9`NP>=O ` I H pP P rr 0 `p P \b P ` &e` v P6 p6 l -Pz  0 I,)> AP N O  fP` 0@le ` P1 Ppj p p  h `P p P P P P  @p`2 p2 `T 7 +`+ oPвW 2 8 >C?/  P0? 0a 30  W g @O 7 а  д W     ApE`MQPc`9`NP>=O ` I H pP P rr 0 `p P \b P ` &e` v P6 p6 l -Pz  0 P,)>AP N O  fP` 0@le ` P1 Ppj p p  h `P p P P P P  @p`2 p2 `T 7 +`+ oPвW 2 8 >C?/  P0? 0a 30  W g @O 7 а  д W     ApE`MQPc`9`NP>=O ` I H pP P rr 0 `p P \b P ` &e` v P6 p6 l -Pz  0 X,)>AP N O  fP` 0@le ` P1 Ppj p p  h `P p P P P P  @p`2 p2 `T 7 +`+ oPвW 2 8 >C6 e6 s6 6 6 6 6 6 ˼6 ~ 6 ޼ 6  6  6  6 6 6 "6 /6 A6 S6 d6 s6 6 6 6 6 Ž6 ׽6 6 6 6 6 . 6 @!6 P"6 `#6 Y$6 y%6 k&6 '6 (6 )6 *6 ¾+6 پ,6 -6 @&.6 /6 &06 `&16 ?26 Y36 &r  6 ?/  q 0? 0a 30  W g @O 7 а д W   ApE`MQPc`9`NP>=O ` I H  pP P rr 0 `  p P \b P ` &e` v P6 p6 l -Pz  0 @h,A`Q `Q P = N O  ` fP` 0P l pj p p  h ` `P 0 P P P P z Є `2 p2 `T 7 + oPв W 2 8 >SB?/  q 0? 0a 30  W g @O 7 а д W   ApE`MQPc`9`NP>=O ` I H  pP P rr 0 `  p P \b P ` &e` v P6 p6 l -Pz  0 o, A`Q `Q  P = N O p fP` 0P l P1 pj p p  h ` `P 0 P P P P z Є `2 p2 `T 7 + oPв W 2 8 >S?/  q 0? 0a 30  W g @O 7 а д W   ApE`MQPc`9`NP>=O ` I H  pP P rr 0 `  p P \b P ` &e` v P6 p6 l -Pz  0 @w,A`Q `Q P = N O p fP` 0P l P1 pj p p  h ` `P 0 P P P P z Є `2 p2 `T + oPв W 2 8  >S?/  q 0? 0a 30  W g @O 7 а д W   ApE`MQPc`9`NP>=O ` I H  pP P rr 0 `  p P \b P ` &e` v P6 p6 l -Pz  0 ~, A`Q `Q P = N O p fP` 0P l P1 pj p p   ` `P 0 P P P P z Є `2 p2 `T 7 + oPв W 2 8 >S??/  q 0? 0a 30  W g @O 7 а д W   ApE`MQPc`9`NP>=O ` I H  pP P rr 0 `  p P \b P ` &e` v P6 p6 l -Pz  0 @,A`Q `Q P = N O p fP` 0P l P1 pj p p  h ` `P 0 P P P P z Є `2 p2 `T 7 + oPв W 2 8 >S6 6 6 6 6 6 6 6 6 V 6  6 %6 16 A6 N6 ^6 k6 x6 6 6 6  6 !6 "6 #6 $6 %6 &6 '6 "(6 m)6 4*6 ]+6 CP d?_/   0? 0 3 WgP P M@ @`ApE`MQPc`9`NP>=O@0@M pP`rrp ` ` ` \\a b&P0P\\pl l--.P0a@, p0 ` ( `   @ К Б 0  M ?/   0?   3P#WgP  @`ApE`MQPc`9`NP>=O@0@`pP`rr`p\\a&P0P\\pl l--.P0a,?/   0?   3P#WgP  @`ApE`MQPc`9`NP>=O@0@`pP`rr`p\\a&P0P\\pl l--.P0a,@ e0 @e` Pi s8( 0e "@P 30 Ppp_ \ea ^@e`rPi s(  e "@P 30 Ppp?/  0? 3WgP @`ApE`MQPc`9`NP>=O@0@`pP`rrp`@\\a b&P0P\\pl l--.P0a,_ \ea ^@enPi s( иe Pp `Pй0pp<?/  P0? `/ 30  W g @O 7 а д W     ApE`MQPc`9`NP>=O ` I H pP P rr 0 `[ ap P \\p*& ` \P6 p6 l -Pz . - 0 ,@,%?/ppP0? `/ 30  W g @O 7 а д W     ApE`MQPc`9`NP>=O ` I H pP P rr 0 `[ ap P \\p*& ` \P6 p6 l -Pz . - 0 @,@,,A*@+P = N O ` P1 pj p p @ h x y @, P P P P  K `2 p2 `T 7 + oPW 2 8 8@/?/  q 0? `/ 30  W g @O 7 а д W   ApE`MQPc`9`NP>=O ` I H pP P rr 0 `[ ap P \\p+& ` \P6 p6 l -Pz . - 0 ,@,?/ppq 0? `/ 30  W g @O 7 а д W   ApE`MQPc`9`NP>=O ` I H pP P rr 0 `[ ap P \\p+& ` \P6 p6 l -Pz . - 0 @,@,,A`+,P = N O ` P1 pj p p @ h x y @, P P P P z Є K `2 p2 `T 7 + oPW 2 8 8@w/  ;0? 3Wg>b-`-@- --, T,ApE`MQPc`9`NP>=O, 3-`,-pЀ rra an@,\\p&P0@\P\\plll)--.P0a  HHli`? ,  EEli`?,s(Ze P B+B+o@  ,H H9 oo(ooo! P  ,6PFPVPfPvPPPPPPPPPQQ&Q6QFQVQfQvQQQQQQQQQRR&R6RFRVRfRvRRRRRRRRRSS&S6SFSVSfSvSSSSSSSSSTT&T6TFTVTfTvTTTTTTTTTUU&U6UFUVUfUvUUUUUUUUUVV&V6VFVVVfVvVVVVVVVVVWW&W6WFWVWfWvWWWWWWWWWXX&X6XFXVX(, ,X,,@, p@  F FIqno o^,,,,,@,,[,`4403 И@!2@~!0  Д`)))`4403 б@!2)!0  P`))) 443 @!26?!0@`)))443 @@!2p8B!P0`)))+##++#@@/,@+5,p+t,+;,+T,`,+, , #, ,vv ,[GCC: (GNU) 8.5.0 20210514 (Red Hat 8.5.0-20)GCC: (GNU) 14.3.0GA$3a1P GA$3p11130GA*GA$annobin gcc 8.5.0 20210514GA$plugin name: annobinGA$running gcc 8.5.0 20210514GA*GA*GA! GA*FORTIFYGA+GLIBCXX_ASSERTIONS GA*GOW*GA*cf_protectionGA+omit_frame_pointerGA+stack_clashGA!stack_realign GA*FORTIFY0GA+GLIBCXX_ASSERTIONS.shstrtab.interp.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.plt.got.text.fini.rodata.eh_frame_hdr.eh_frame.note.ABI-tag.tbss.init_array.fini_array.data.rel.ro.dynamic.got.plt.data.bss.comment.gnu.build.attributes o @@% -o8:o((ISBH9H9H ]PPX P P@c`X`X lXX%K@r x ((U))#=+=+ B+B+B+B+B+B+B+B+z ,,g,,X,,0 , ,  , , 0 ,?-`,D,