TempleOSCDV4.04.ISO

This commit is contained in:
Terry A. Davis authored and minexew committed 2018-09-08 21:47:07 +02:00
1 parent 0f1a4a5d65
commit d1856315e0
65 files changed
+702 -677

No files matched your search

Binary file not shown.
+2 -2
View File
@@ -11,8 +11,8 @@ U0 LoadDocDefines()
//This is cut and replaced when I generate a distro.
//See $LK,"DD_TEMPLEOS_LOC",A="FF:::/Demo/AcctExample/TOSDistro.CPP,DD_TEMPLEOS_LOC"$.
$TR-C,"LineRep"$
$ID,4$DefinePrint("DD_TEMPLEOS_LOC","119,687");
DefinePrint("DD_TEMPLEOS_LOC_OFFICIAL","80,688");
$ID,4$DefinePrint("DD_TEMPLEOS_LOC","119,708");
DefinePrint("DD_TEMPLEOS_LOC_OFFICIAL","80,702");
$ID,-4$
DefinePrint("DD_KERNEL","%08X",bfh);
bfh(I64)+=bfh->file_size-1;
+2 -2
View File
@@ -17,7 +17,7 @@ extern U0 DocBinDel(CDoc *doc,CDocBin *b);
extern U0 DocBinsValidate(CDoc *doc);
extern U0 DocBottom(CDoc *doc=NULL);
extern U0 DocCenter(CDoc *doc=NULL,I64 recalc=RECALCt_NORMAL);
extern U0 DocClear(CDoc *doc=NULL);
extern U0 DocClear(CDoc *doc=NULL,Bool clear_holds=FALSE);
extern Bool DocCursor(Bool show=OFF,CDoc *doc=NULL);
extern U0 DocD(U8 *buf,I64 cnt=0x80);
extern U0 DocDataFmt(CDoc *doc,CDocEntry *doc_e,I64 d=DOCM_CANCEL);
@@ -35,7 +35,7 @@ extern U0 DocInsEntry(CDoc *doc,CDocEntry *doc_e);
extern Bool DocLock(CDoc *doc);
extern U0 DocMax(I64 i=MAX_I32);
extern CDoc *DocNew(U8 *filename=NULL,CTask *task=NULL);
extern CDocEntry *DocPrint(CDoc *doc,U8 *src,...);
extern CDocEntry *DocPrint(CDoc *doc=NULL,U8 *src,...);
extern CDoc *DocPut(CTask *task=NULL);
extern CDoc *DocRead(U8 *name=NULL,I64 flags=0);
extern Bool DocRecalc(CDoc *doc,I64 recalc_flags=RECALCt_NORMAL);
+10 -1
View File
@@ -103,6 +103,16 @@ U0 EdRIExp(CRILex *rx)
rx->depth-=3;
if (rx->depth<0) rx->depth=0;
}
} else if (rx->cc1->token=='[') {
if (!rx->exp_depth++)
rx->depth+=3;
EdRILex(rx);
while (rx->cc1->token && rx->cc1->token!=']')
EdRIExp(rx);
if (!--rx->exp_depth) {
rx->depth-=3;
if (rx->depth<0) rx->depth=0;
}
}
EdRILex(rx);
}
@@ -171,7 +181,6 @@ U0 EdRIStmt(CRILex *rx,Bool indent)
EdRILex(rx);
break;
case KW_SWITCH:
case KW_NOBOUND_SWITCH:
EdRILex(rx);
EdRIExp(rx);
if (rx->cc1->token=='{') {
+2 -2
View File
@@ -4,8 +4,8 @@ extern I64 DocEntryRun(CDoc *doc,CDocEntry *doc_e,
Bool exited,I64 *_has_action=NULL);
extern U0 DocFormBwd(CDoc *doc,Bool giveup=FALSE);
extern U0 DocLoad(CDoc *doc,U8 *src2,I64 size);
extern U0 DocPrintAtomic(CDoc *doc,U8 *fmt,...);
extern U0 DocPrintPartial(CDoc *doc,U8 *fmt,...);
extern U0 DocPrintAtomic(CDoc *doc=NULL,U8 *fmt,...);
extern U0 DocPrintPartial(CDoc *doc=NULL,U8 *fmt,...);
extern CDocEntry *DocPutS(CDoc *doc,U8 *st);
extern U8 *DocSave(CDoc *doc,I64 *_size=NULL);
extern I64 EdLeftClickLink(CDoc *doc,CDocEntry *doc_e);
+1 -1
View File
@@ -8,7 +8,7 @@ U32 *DocHighlight(CDocEntry *doc_e,U8 *src,I64 len,I64 _temp_u32_attr)
I64 ch,ch1,last_ch,temp_u32_attr,mask_temp_u32_attr=_temp_u32_attr&0xFFFFF000,
comment_depth,brace_depth=s->brace_depth,paren_depth=s->paren_depth;
CHash *temph;
nobound_switch (s->state) {
switch [s->state] {
case DOCSS_NORMAL:
hl_normal:
while (len) {
+7 -7
View File
@@ -81,7 +81,7 @@ U8 *Doc2PlainText(CDoc *doc,CDocEntry *doc_e)
}
buf2=MStrPrint("%s,",buf);
Free(buf); buf=buf2;
nobound_switch (doc_e->type_u8) {
switch [doc_e->type_u8] {
case DOCT_HEX_ED:
buf2=MStrPrint("%s%d,",buf,doc_e->len);
Free(buf); buf=buf2;
@@ -114,14 +114,14 @@ U8 *Doc2PlainText(CDoc *doc,CDocEntry *doc_e)
buf2=MStrPrint("%s%d,",buf,doc_e->attr);
Free(buf); buf=buf2;
}
case DOCT_NUM_TYPES-1: //nobound_switch
case DOCT_NUM_TYPES-1: //nobound switch
break;
}
de_flags=doc_e->de_flags & DOCEG_HAS_ARG;
while (de_flags) {
j=Bsf(de_flags);
Btr(&de_flags,j);
nobound_switch (j) {
switch [j] {
case DOCEf_TAG:
if (doc_e->type_u8==DOCT_DATA || doc_e->type_u8==DOCT_MACRO &&
(doc_e->de_flags&DOCEF_LEFT_MACRO &&
@@ -202,7 +202,7 @@ U8 *Doc2PlainText(CDoc *doc,CDocEntry *doc_e)
case DOCEf_USER_DATA:
buf2=MStrPrint("%sU=0x%X,",buf,doc_e->user_data);
break;
case DOCEf_NUM_FLAGS-1: //nobound_switch
case DOCEf_NUM_FLAGS-1: //nobound switch
break;
}
Free(buf); buf=buf2;
@@ -243,7 +243,7 @@ CDocEntry *PrsDollarCmd(CDoc *doc,U8 *st)
doc_e->len=DOCE_LEN_DFT;
j=PrsDocFlags(cc,&doc_e->de_flags,&doc_e->type);
cc->htc.hash_table_lst=old_hash_table_lst;
nobound_switch (i) {
switch [i] {
case DOCT_CHECK_BOX:
doc_e->raw_type=RT_I8;
break;
@@ -305,7 +305,7 @@ CDocEntry *PrsDollarCmd(CDoc *doc,U8 *st)
j=Bsf(de_flags);
if (j<0 || Bts(&processed_flags,j))
goto pd_err;
nobound_switch (j) {//TODO: Might check for expression errors
switch [j] {//TODO: Might check for expression errors
case DOCEf_TAG:
if (!doc_e->tag) {
//If a $$MA,LM=""$$, Tag is filled when the LM is processed.
@@ -458,7 +458,7 @@ CDocEntry *PrsDollarCmd(CDoc *doc,U8 *st)
else
goto pd_err;
break;
case DOCEf_NUM_FLAGS-1: //nobound_switch
case DOCEf_NUM_FLAGS-1: //nobound switch
break;
}
}
+4 -4
View File
@@ -155,7 +155,7 @@ CDocEntry *DocPutS(CDoc *doc,U8 *st)
return result;
}
public CDocEntry *DocPrint(CDoc *doc,U8 *fmt,...)
public CDocEntry *DocPrint(CDoc *doc=NULL,U8 *fmt,...)
{//You must not print partial doc cmds.
U8 *buf=StrPrintJoin(NULL,fmt,argc,argv);
CDocEntry *result=DocPutS(doc,buf);
@@ -163,13 +163,13 @@ public CDocEntry *DocPrint(CDoc *doc,U8 *fmt,...)
return result;
}
public U0 DocPrintPartial(CDoc *doc,U8 *fmt,...)
public U0 DocPrintPartial(CDoc *doc=NULL,U8 *fmt,...)
{//Lets you print half a doc cmd, if you like.
U8 *buf,*st,*src,*dst,*ptr,*ptr2;
Bool unlock;
CDocEntry *doc_ce,*doc_ne;
I64 ch,i,j;
if (!fmt)
if (!doc && !(doc=DocPut))
return;
buf=StrPrintJoin(NULL,fmt,argc,argv);
ptr=buf;
@@ -238,7 +238,7 @@ Bool KDDocPutS(U8 *st)
return FALSE;
}
public U0 DocPrintAtomic(CDoc *doc,U8 *fmt,...)
public U0 DocPrintAtomic(CDoc *doc=NULL,U8 *fmt,...)
{//Prints multiple whole cmds all-at-once. Might need this when printing trees.
U8 *buf;
Bool unlock;
+9 -5
View File
@@ -258,7 +258,7 @@ public Bool DocRecalc(CDoc *doc,I64 recalc_flags=RECALCt_NORMAL)
CDocBin *tempb;
CDocSettings *s;
Bool del_cl,skipped_update,tree_collapsed,same_win,more=FALSE,
find_cursor=FALSE,blink_flag,full_refresh=TRUE,unlock;
find_cursor=FALSE,blink_flag,full_refresh=TRUE,unlock,clear_holds;
CTask *win_task,*mem_task;
CDC *dc;
U8 *bptr,*ptr,buf[STR_LEN],ch;
@@ -289,7 +289,7 @@ public Bool DocRecalc(CDoc *doc,I64 recalc_flags=RECALCt_NORMAL)
mem_task=doc->mem_task;
blink_flag=Blink;
dc=NULL;
nobound_switch (recalc_flags&RECALCG_MASK) {
switch [recalc_flags&RECALCG_MASK] {
case RECALCt_FIND_CURSOR:
find_cursor=TRUE;
if (win_task)
@@ -620,7 +620,7 @@ public Bool DocRecalc(CDoc *doc,I64 recalc_flags=RECALCt_NORMAL)
}
}
}
nobound_switch (doc_e->type_u8) {
switch [doc_e->type_u8] {
case DOCT_TEXT:
if (!col2 && !(doc_e->de_flags
&(DOCEF_TREE|DOCEF_LST|DOCEF_TAG_CB|DOCEF_DEFINE|
@@ -1036,13 +1036,17 @@ rc_adjust_xy:
break;
case DOCT_CLEAR:
next_clear_found=doc_e;
if (doc_e->de_flags&DOCEF_HOLD)
clear_holds=TRUE;
else
clear_holds=FALSE;
break;
case DOCT_HTML_CODE:
if (recalc_flags&RECALCF_TO_HTML &&
doc_e->de_flags&DOCEF_TAG && doc_e->tag)
x-=StrLen(doc_e->tag);
break;
case DOCT_NUM_TYPES-1: //nobound_switch
case DOCT_NUM_TYPES-1: //nobound switch
default:
break;
}
@@ -1309,7 +1313,7 @@ rc_skip:
if (full_refresh) {
i=num_entries-doc->max_entries;
if (next_clear_found) {
DocDelToEntry(doc,next_clear_found);
DocDelToEntry(doc,next_clear_found,clear_holds);
DocRecalc(doc,recalc_flags);
} else if (i>1024) {
DocDelToNum(doc,i);
+7 -4
View File
@@ -22,12 +22,12 @@ U0 DocDelToNum(CDoc *doc,I64 num)
}
}
U0 DocDelToEntry(CDoc *doc,CDocEntry *clear_entry)
U0 DocDelToEntry(CDoc *doc,CDocEntry *clear_entry,Bool clear_holds)
{
CDocEntry *doc_e=doc->root.next,*doc_e2;
while (doc_e!=doc) {
doc_e2=doc_e->next;
if (!(doc_e->de_flags & (DOCEF_HOLD|DOCEF_FILTER_SKIP))) {
if (!(doc_e->de_flags & (DOCEF_HOLD|DOCEF_FILTER_SKIP))||clear_holds) {
if (doc_e==doc->cur_entry) {
doc->cur_entry=doc_e2;
doc->cur_col=doc_e2->min_col;
@@ -117,13 +117,16 @@ public U0 DocBottom(CDoc *doc=NULL)
DocUnlock(doc);
}
public U0 DocClear(CDoc *doc=NULL)
public U0 DocClear(CDoc *doc=NULL,Bool clear_holds=FALSE)
{//Clear all doc entries, except +H, hold entries.
Bool unlock;
if (!doc && !(doc=DocPut))
return;
unlock=DocLock(doc);
DocBottom(doc);
if (clear_holds)
DocPrint(doc,"$$CL+H$$");
else
DocPrint(doc,"$$CL$$");
DocRecalc(doc);
if (unlock)
@@ -171,7 +174,7 @@ public U0 DocCollapse(Bool collapse=TRUE,CDoc *doc=NULL)
#help_index "DolDoc/Cmd Line (Typically);Cmd Line (Typically)"
public I64 DocMax(I64 i=MAX_I64)
{//Set max document entries. (Cmd line buffer.)
{//Set max document entries. (Cmd line buffer size.)
//Adjusts the size of the cmd line buf.
//Normally, the cmd line deletes entries
//when more are added and the old scroll up.
+2 -2
View File
@@ -121,7 +121,7 @@ public U8 *GodDoodleSprite(U8 *hex=NULL)
for (i=0;i<3;i++) {
god.doodle_dc->color=RED;
for (j=0;j<29;j++)
nobound_switch (GodDoodleBits(3)) {
switch [GodDoodleBits(3)] {
case 0:
GrEllipse3(god.doodle_dc,
(w-1)*GodDoodleBits(5)/15.5-w/2,
@@ -149,7 +149,7 @@ public U8 *GodDoodleSprite(U8 *hex=NULL)
for (j=0;j<6;j++) {
x=(w-1)*GodDoodleBits(5)/31+w/64;
y=(h-1)*GodDoodleBits(5)/31+h/64;
nobound_switch (GodDoodleBits(2)) {
switch [GodDoodleBits(2)] {
case 0: god.doodle_dc->color=BLACK; break;
case 1: god.doodle_dc->color=DKGRAY; break;
case 2: god.doodle_dc->color=LTGRAY; break;
+3 -2
View File
@@ -82,7 +82,7 @@ Shakespeare? $FG,4$had a "vile heart"$FG$
Likes $FG,4$Beverly Hillbillies (Oil is a gift from God)$FG$
$FG,4$God likes being hero. Don't be proud of heart$FG$
$FG,4$and not accept a gift from God!$FG$
Likes $FG,4$Gomer Pile$FG$
Likes $FG,4$Gomer Pyle$FG$
Favorite saint? $FG,4$"ho_ho_ho"$FG$
Favorite animal? $FG,4$"Elephant two"$FG$
Favorite animal? $FG,4$"Bears"$FG$
@@ -139,7 +139,7 @@ Favorite actor? $FG,4$Hugh Grant$FG$
Favorite vocalist? $FG,4$Mick Jagger$FG$
Favorite guitarist? $FG,4$"$TX,"Simmons Destroyer",HTML="http://www.youtube.com/watch?v=nNADrrjTysk&t=3m55s"$"$FG$
Favorite National Anthem? $FG,4$$TX,"Latvia's National Anthem",HTML="http://www.youtube.com/watch?v=qKITbBjO4nE"$$FG$
America the Beautiful? $FG,4$Hates it. Poet was too in love with own beauty.$FG$
America the Beautiful? $FG,4$Hates it. Poet made self cry with own beauty.$FG$
Model for new $TX,"Sistine Chapel",HTML="http://en.wikipedia.org/wiki/Sistine_chapel"$? $FG,4$Ben Franklin$FG$
Voice if God wanted to sing? $FG,4$$TX,"Stabbing Westward's singer",HTML="https://www.youtube.com/watch?v=5NZsCYOM4j0"$$FG$
Stonehenge? $FG,4$Landmark for boundaries.$FG$
@@ -192,6 +192,7 @@ $TX,"Saturn's hexagon pole cloud?",HTML="http://en.wikipedia.org/wiki/Saturn's_h
Liquid moon's odd atmosphere? $FG,4$"Surf"$FG$
How many E.T. civs in Universe? $FG,4$20 or 80 (I forgot. I died laughing.)$FG$
Are they peaceful? $FG,4$Fight them! (Also, funny.)$FG$
Most difficult control system? $FG,4$$TX,"Dung beetle",HTML="http://www.youtube.com/watch?v=Q1zbgd6xpGQ"$$FG$
How can Judge Judy improve? $FG,4$No hard feelings$FG$
How can Chef Ramsay improve? $FG,4$Make so it doesn't seem like toil for cooks.$FG$
How can Hawking communicate? $FG,4$Blow from a nostril on a candle.$FG$
+11 -11
View File
@@ -44,7 +44,7 @@ public Bool GrPlot0(CDC *dc=gr.dc,I64 x,I64 y)
}
}
dst=dc->body+d;
nobound_switch (color.c0.rop) {
switch [color.c0.rop] {
case ROPB_EQU:
case ROPB_MONO:
*dst=color.c0.color;
@@ -733,7 +733,7 @@ public I64 GrPutChar(CDC *dc=gr.dc,I64 x,I64 y,U8 ch)
src=font_ptr;
if (bit_shift)
src--;
nobound_switch (color.c0.rop) {
switch [color.c0.rop] {
case ROPB_EQU:
case ROPB_MONO:
for (j=h2-h1;j;j--) {
@@ -763,7 +763,7 @@ public I64 GrPutChar(CDC *dc=gr.dc,I64 x,I64 y,U8 ch)
src=font_ptr+1;
if (bit_shift)
src--;
nobound_switch (color.c0.rop) {
switch [color.c0.rop] {
case ROPB_EQU:
case ROPB_MONO:
for (j=h2-h1;j;j--) {
@@ -792,7 +792,7 @@ public I64 GrPutChar(CDC *dc=gr.dc,I64 x,I64 y,U8 ch)
src=font_ptr;
if (bit_shift)
src--;
nobound_switch (color.c0.rop) {
switch [color.c0.rop] {
case ROPB_EQU:
case ROPB_MONO:
for (j=h1;j<h2;j++) {
@@ -826,7 +826,7 @@ public I64 GrPutChar(CDC *dc=gr.dc,I64 x,I64 y,U8 ch)
src=font_ptr+1;
if (bit_shift)
src--;
nobound_switch (color.c0.rop) {
switch [color.c0.rop] {
case ROPB_EQU:
case ROPB_MONO:
for (j=h1;j<h2;j++) {
@@ -1047,7 +1047,7 @@ public I64 GrRect(CDC *dc=gr.dc,I64 x,I64 y,I64 w,I64 h)
color.c0=dither_colors.c1;
else
color.c0=dither_colors.c0;
nobound_switch (color.c0.rop) {
switch [color.c0.rop] {
case ROPB_EQU:
case ROPB_MONO:
if (win_z_buf_ptr) {
@@ -1163,7 +1163,7 @@ public I64 GrRect(CDC *dc=gr.dc,I64 x,I64 y,I64 w,I64 h)
} else {
if (((x+w1-original_leading_pixels)^(y+h1))&1)
SwapU16(&color.c0,&color.c1);
nobound_switch (color.c0.rop) {
switch [color.c0.rop] {
case ROPB_EQU:
case ROPB_MONO:
if (win_z_buf_ptr) {
@@ -1271,7 +1271,7 @@ public I64 GrRect(CDC *dc=gr.dc,I64 x,I64 y,I64 w,I64 h)
}
} else {
color_mask=gr.to_8_colors[color.c0.color];
nobound_switch (color.c0.rop) {
switch [color.c0.rop] {
case ROPB_EQU:
case ROPB_MONO:
if (win_z_buf_ptr) {
@@ -1537,7 +1537,7 @@ I64 GrRayLen(CDC *dc,I64 *x1,I64 y,I64 z=0,I32 *db=NULL)
if ((x3^y3)&1)
c=color.c1.color;
}
nobound_switch (color.c0.rop) {
switch [color.c0.rop] {
case ROPB_EQU:
case ROPB_MONO:
*dst=c;
@@ -1614,7 +1614,7 @@ I64 GrRayLen(CDC *dc,I64 *x1,I64 y,I64 z=0,I32 *db=NULL)
if ((x3^y3)&1)
c=color.c1.color;
}
nobound_switch (color.c0.rop) {
switch [color.c0.rop] {
case ROPB_EQU:
case ROPB_MONO:
*dst=c;
@@ -1765,7 +1765,7 @@ public I64 GrHLine(CDC *dc=gr.dc,I64 x1,I64 x2,I64 y,I64 z1=0,I64 z2=0)
if (plot) {
dst=dc->body+d;
c=color.c0.color;
nobound_switch (color.c0.rop) {
switch [color.c0.rop] {
case ROPB_EQU:
case ROPB_MONO:
*dst=c;
+1 -1
View File
@@ -179,7 +179,7 @@ I64 GrFloodFillRay(CDC *dc,I64 x,I64 y,I64 z,I32 *db)
f->y=y;
f->state=0;
do {
nobound_switch (f->state) {
switch [f->state] {
case 0:
f->state++;
result+=f->ray_len=GrRayLen(dc,&f->x,f->y,z,db);
+2 -2
View File
@@ -596,9 +596,9 @@ U0 TimeOut()
x+=Fs->pix_width;
//It takes too much CPU do do all these all the time.
nobound_switch (main_loop_pass&7) {
switch [main_loop_pass&7] {
case 0:
nobound_switch (main_loop_pass>>3&7) {
switch [main_loop_pass>>3&7] {
case 0:
if (--y<20)
game_over=TRUE;
+47 -42
View File
@@ -351,7 +351,7 @@ U0 ICMulEqu(CIntermediateCode *tempi,I64 ip)
r=tempi->a1.reg;
else
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,ip);
if (r>7)
j=0xC0004D;
@@ -363,13 +363,13 @@ U0 ICMulEqu(CIntermediateCode *tempi,I64 ip)
ICU24(tempi,0x6900+j+(r&7)<<16+(r&7)<<19);
ICU32(tempi,i);
}
ICMov(tempi,tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
ICMov(tempi,tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,TY_REG+RT_I64,r,0,ip);
} else {
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,
tempi->a1.type,tempi->a1.reg,tempi->a1.disp,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RBX,0,
TY_DISP+tempi->a1.type_pointed,REG_RCX,0,ip);
TY_DISP+tempi->a1.type_pointed_to,REG_RCX,0,ip);
r=REG_RBX;
if (MIN_I8<=i<=MAX_I8)
ICU32(tempi,i<<24+0xDB6B48);
@@ -377,7 +377,7 @@ U0 ICMulEqu(CIntermediateCode *tempi,I64 ip)
ICU24(tempi,0xDB6948);
ICU32(tempi,i);
}
ICMov(tempi,TY_DISP+tempi->a1.type_pointed,REG_RCX,0,
ICMov(tempi,TY_DISP+tempi->a1.type_pointed_to,REG_RCX,0,
TY_REG+RT_I64,REG_RBX,0,ip);
}
} else {
@@ -388,7 +388,7 @@ U0 ICMulEqu(CIntermediateCode *tempi,I64 ip)
if (tempi->ic_flags & ICF_NOT_ADDR) {
if (tempi->ic_flags & ICF_A1_FIRST) {
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RBX,0,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,ip);
@@ -396,11 +396,11 @@ U0 ICMulEqu(CIntermediateCode *tempi,I64 ip)
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RBX,0,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,ip);
}
ICU24(tempi,i);
ICMov(tempi,tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
ICMov(tempi,tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,TY_REG+RT_I64,REG_RAX,0,ip);
} else {
if (tempi->ic_flags & ICF_A1_FIRST) {
@@ -415,9 +415,9 @@ U0 ICMulEqu(CIntermediateCode *tempi,I64 ip)
tempi->a1.type,tempi->a1.reg,tempi->a1.disp,ip);
}
ICMov(tempi,TY_REG+RT_I64,REG_RBX,0,
TY_DISP+tempi->a1.type_pointed,REG_RCX,0,ip);
TY_DISP+tempi->a1.type_pointed_to,REG_RCX,0,ip);
ICU24(tempi,i);
ICMov(tempi,TY_DISP+tempi->a1.type_pointed,REG_RCX,0,
ICMov(tempi,TY_DISP+tempi->a1.type_pointed_to,REG_RCX,0,
TY_REG+RT_I64,REG_RAX,0,ip);
}
}
@@ -454,7 +454,7 @@ U0 ICDivEqu(CIntermediateCode *tempi,Bool is_mod,I64 ip)
if (tempi->ic_flags & ICF_NOT_ADDR) {
if (tempi->ic_flags & ICF_A1_FIRST) {
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,ip);
@@ -462,7 +462,7 @@ U0 ICDivEqu(CIntermediateCode *tempi,Bool is_mod,I64 ip)
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,ip);
}
if (tempi->ic_class->raw_type&1) {
@@ -473,10 +473,10 @@ U0 ICDivEqu(CIntermediateCode *tempi,Bool is_mod,I64 ip)
ICU24(tempi,0xF9F748);
}
if (is_mod)
ICMov(tempi,tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
ICMov(tempi,tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,TY_REG+RT_I64,REG_RDX,0,ip);
else
ICMov(tempi,tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
ICMov(tempi,tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,TY_REG+RT_I64,REG_RAX,0,ip);
} else {
if (tempi->ic_flags & ICF_A1_FIRST) {
@@ -492,7 +492,7 @@ U0 ICDivEqu(CIntermediateCode *tempi,Bool is_mod,I64 ip)
tempi->a1.type,tempi->a1.reg,tempi->a1.disp,ip);
}
//dangerous might clobber RBX in Mov, but it doesn't
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,TY_DISP+tempi->a1.type_pointed,
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,TY_DISP+tempi->a1.type_pointed_to,
REG_RBX,0,ip);
if (tempi->ic_class->raw_type&1) {
ICZero(tempi,REG_RDX);
@@ -502,10 +502,10 @@ U0 ICDivEqu(CIntermediateCode *tempi,Bool is_mod,I64 ip)
ICU24(tempi,0xF9F748);
}
if (is_mod)
ICMov(tempi,TY_DISP+tempi->a1.type_pointed,REG_RBX,0,
ICMov(tempi,TY_DISP+tempi->a1.type_pointed_to,REG_RBX,0,
TY_REG+RT_I64,REG_RDX,0,ip);
else
ICMov(tempi,TY_DISP+tempi->a1.type_pointed,REG_RBX,0,
ICMov(tempi,TY_DISP+tempi->a1.type_pointed_to,REG_RBX,0,
TY_REG+RT_I64,REG_RAX,0,ip);
}
if (tempi->r.type&TY_MASK) {
@@ -542,7 +542,7 @@ U0 ICMod(CIntermediateCode *tempi,I64 ip)
TY_REG+RT_I64,REG_RDX,0,ip);
}
U0 ICAddSubEctEqu(CIntermediateCode *tempi,I64 type_pointed,
U0 ICAddSubEctEqu(CIntermediateCode *tempi,I64 type_pointed_to,
I64 t1,I64 r1,I64 d1,I64 t2,I64 r2,I64 d2,
I64 t3,I64 r3,I64 d3,I64 op,I64 ip)
{
@@ -551,14 +551,14 @@ U0 ICAddSubEctEqu(CIntermediateCode *tempi,I64 type_pointed,
if (tempi->ic_flags & ICF_NOT_ADDR) {
if (t3&TY_MASK==TY_IMM) {
ICAddSubEctImm(tempi,
t2&TY_MASK+type_pointed,r2,d2,t2&TY_MASK+
type_pointed,r2,d2,d3,op,ip);
t2&TY_MASK+type_pointed_to,r2,d2,t2&TY_MASK+
type_pointed_to,r2,d2,d3,op,ip);
if (t1&TY_MASK)
ICMov(tempi,t1,r1,d1,t2&TY_MASK+type_pointed,r2,d2,ip);
ICMov(tempi,t1,r1,d1,t2&TY_MASK+type_pointed_to,r2,d2,ip);
return;
} else {
done=FALSE;
if (type_pointed>=RT_I64) {
if (type_pointed_to>=RT_I64) {
if (!(t1&TY_MASK) &&
TY_REG<=t2&TY_MASK<=TY_RIP_DISP32) {
if (t3&TY_MASK==TY_REG)
@@ -567,7 +567,7 @@ U0 ICAddSubEctEqu(CIntermediateCode *tempi,I64 type_pointed,
temp=REG_RCX;
ICMov(tempi,TY_REG+RT_I64,temp,0,t3,r3,d3,ip);
}
i=ICModr1(temp,t2&TY_MASK+type_pointed,r2,d2);
i=ICModr1(temp,t2&TY_MASK+type_pointed_to,r2,d2);
if (tempi->ic_flags&ICF_LOCK)
ICU8(tempi,OC_LOCK_PREFIX);
ICRex(tempi,i.u8[1]);
@@ -583,13 +583,13 @@ U0 ICAddSubEctEqu(CIntermediateCode *tempi,I64 type_pointed,
result_reg=REG_RCX;
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,t2,r2,d2,ip);
}
i=ICModr1(result_reg,t3&TY_MASK+type_pointed,r3,d3);
i=ICModr1(result_reg,t3&TY_MASK+type_pointed_to,r3,d3);
if (tempi->ic_flags&ICF_LOCK)
ICU8(tempi,OC_LOCK_PREFIX);
ICRex(tempi,i.u8[1]);
ICU16(tempi,i.u8[2]<<8+op.u8[0]);
ICModr2(tempi,i,d3,ip+4);
ICMov(tempi,t2&TY_MASK+type_pointed,r2,d2,
ICMov(tempi,t2&TY_MASK+type_pointed_to,r2,d2,
TY_REG+RT_I64,result_reg,0,ip);
done=TRUE;
}
@@ -601,7 +601,7 @@ U0 ICAddSubEctEqu(CIntermediateCode *tempi,I64 type_pointed,
else {
result_reg=REG_RCX;
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,
t2&TY_MASK+type_pointed,r2,d2,ip);
t2&TY_MASK+type_pointed_to,r2,d2,ip);
}
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,t3,r3,d3,ip);
} else {
@@ -611,7 +611,7 @@ U0 ICAddSubEctEqu(CIntermediateCode *tempi,I64 type_pointed,
else {
result_reg=REG_RCX;
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,
t2&TY_MASK+type_pointed,r2,d2,ip);
t2&TY_MASK+type_pointed_to,r2,d2,ip);
}
}
if (tempi->ic_flags&ICF_LOCK)
@@ -621,7 +621,7 @@ U0 ICAddSubEctEqu(CIntermediateCode *tempi,I64 type_pointed,
else
ICU8(tempi,0x48);
ICU16(tempi,0xC000+op.u8[0]+(result_reg&7)<<11);
ICMov(tempi,t2&TY_MASK+type_pointed,r2,d2,
ICMov(tempi,t2&TY_MASK+type_pointed_to,r2,d2,
TY_REG+RT_I64,result_reg,0,ip);
}
}
@@ -631,25 +631,25 @@ U0 ICAddSubEctEqu(CIntermediateCode *tempi,I64 type_pointed,
if (!d3.u32[1]) {
if (tempi->ic_flags&ICF_NO_DEPEND_RESULT &&
t2&TY_MASK==TY_REG && d3(U64)<=MAX_I8) {
ICSlashOp(tempi,TY_DISP+type_pointed,r2,0,0x838000+op.u8[4],ip);
ICSlashOp(tempi,TY_DISP+type_pointed_to,r2,0,0x838000+op.u8[4],ip);
ICU8(tempi,d3);
done=TRUE;
} else if (op.u8[2]==0x24) {//AND
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,t2,r2,d2,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
TY_DISP+type_pointed,REG_RCX,0,ip);
TY_DISP+type_pointed_to,REG_RCX,0,ip);
result_reg=REG_RAX;
if (tempi->ic_flags&ICF_LOCK)
ICU8(tempi,OC_LOCK_PREFIX);
ICU16(tempi,op.u8[3]<<8+0x40);
ICU32(tempi,d3);
ICMov(tempi,TY_DISP+type_pointed,REG_RCX,0,
ICMov(tempi,TY_DISP+type_pointed_to,REG_RCX,0,
TY_REG+RT_I64,result_reg,0,ip);
done=TRUE;
} else if (type_pointed&RT_MASK<RT_I64) {//OR/XOR
} else if (type_pointed_to&RT_MASK<RT_I64) {//OR/XOR
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,t2,r2,d2,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
TY_DISP+type_pointed,REG_RCX,0,ip);
TY_DISP+type_pointed_to,REG_RCX,0,ip);
result_reg=REG_RAX;
if (tempi->ic_flags&ICF_LOCK)
ICU8(tempi,OC_LOCK_PREFIX);
@@ -663,7 +663,7 @@ U0 ICAddSubEctEqu(CIntermediateCode *tempi,I64 type_pointed,
ICU16(tempi,op.u8[2]<<8+0x40);
ICU8(tempi,d3);
}
ICMov(tempi,TY_DISP+type_pointed,REG_RCX,0,
ICMov(tempi,TY_DISP+type_pointed_to,REG_RCX,0,
TY_REG+RT_I64,result_reg,0,ip);
done=TRUE;
}
@@ -677,13 +677,14 @@ U0 ICAddSubEctEqu(CIntermediateCode *tempi,I64 type_pointed,
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,t3,r3,d3,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,t2,r2,d2,ip);
}
ICMov(tempi,TY_REG+RT_I64,REG_RBX,0,TY_DISP+type_pointed,REG_RCX,0,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RBX,0,TY_DISP+type_pointed_to,REG_RCX,0,ip);
result_reg=REG_RBX;
if (tempi->ic_flags&ICF_LOCK)
ICU8(tempi,OC_LOCK_PREFIX);
ICU8(tempi,0x48);
ICU16(tempi,0xC000+op.u8[0]+(result_reg&7)<<11);
ICMov(tempi,TY_DISP+type_pointed,REG_RCX,0,TY_REG+RT_I64,result_reg,0,ip);
ICMov(tempi,TY_DISP+type_pointed_to,REG_RCX,0,
TY_REG+RT_I64,result_reg,0,ip);
}
}
if (t1&TY_MASK)
@@ -723,8 +724,9 @@ U0 ICShift(CIntermediateCode *tempi,I64 t1,I64 r1,I64 d1,
ICMov(tempi,t1,r1,d1,TY_REG+RT_I64,result_reg,0,ip);
}
U0 ICShiftEqu(CIntermediateCode *tempi,I64 type_pointed,I64 t1,I64 r1,I64 d1,
I64 t2,I64 r2,I64 d2,I64 t3,I64 r3,I64 d3,I64 us,I64 is,I64 ip)
U0 ICShiftEqu(CIntermediateCode *tempi,I64 type_pointed_to,
I64 t1,I64 r1,I64 d1,I64 t2,I64 r2,I64 d2,I64 t3,I64 r3,I64 d3,
I64 us,I64 is,I64 ip)
{
I64 result_reg;
if (tempi->ic_class->raw_type&1 || tempi->ic_flags & ICF_USE_UNSIGNED)
@@ -735,7 +737,8 @@ U0 ICShiftEqu(CIntermediateCode *tempi,I64 type_pointed,I64 t1,I64 r1,I64 d1,
result_reg=r2;
else {
result_reg=REG_RAX;
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,t2&TY_MASK+type_pointed,r2,d2,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
t2&TY_MASK+type_pointed_to,r2,d2,ip);
}
if (t3&TY_MASK!=TY_IMM)
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,t3,r3,d3,ip);
@@ -746,7 +749,8 @@ U0 ICShiftEqu(CIntermediateCode *tempi,I64 type_pointed,I64 t1,I64 r1,I64 d1,
result_reg=r2;
else {
result_reg=REG_RAX;
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,t2&TY_MASK+type_pointed,r2,d2,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
t2&TY_MASK+type_pointed_to,r2,d2,ip);
}
}
if (result_reg>7)
@@ -762,7 +766,7 @@ U0 ICShiftEqu(CIntermediateCode *tempi,I64 type_pointed,I64 t1,I64 r1,I64 d1,
}
} else
ICU16(tempi,is.u16[1]+(result_reg&7)<<8);
ICMov(tempi,t2&TY_MASK+type_pointed,r2,d2,TY_REG+RT_I64,result_reg,0,ip);
ICMov(tempi,t2&TY_MASK+type_pointed_to,r2,d2,TY_REG+RT_I64,result_reg,0,ip);
} else {
if (tempi->ic_flags & ICF_A1_FIRST) {
ICMov(tempi,TY_REG+RT_I64,REG_RDX,0,t2,r2,d2,ip);
@@ -773,7 +777,7 @@ U0 ICShiftEqu(CIntermediateCode *tempi,I64 type_pointed,I64 t1,I64 r1,I64 d1,
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,t3,r3,d3,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RDX,0,t2,r2,d2,ip);
}
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,TY_DISP+type_pointed,REG_RDX,0,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,TY_DISP+type_pointed_to,REG_RDX,0,ip);
result_reg=REG_RAX;
ICU8(tempi,0x48);
if (t3&TY_MASK==TY_IMM) {
@@ -785,7 +789,8 @@ U0 ICShiftEqu(CIntermediateCode *tempi,I64 type_pointed,I64 t1,I64 r1,I64 d1,
}
} else
ICU16(tempi,is.u16[1]+(result_reg&7)<<8);
ICMov(tempi,TY_DISP+type_pointed,REG_RDX,0,TY_REG+RT_I64,result_reg,0,ip);
ICMov(tempi,
TY_DISP+type_pointed_to,REG_RDX,0,TY_REG+RT_I64,result_reg,0,ip);
}
if (t1&TY_MASK)
ICMov(tempi,t1,r1,d1,TY_REG+RT_I64,result_reg,0,ip);
+20 -20
View File
@@ -397,17 +397,17 @@ U0 ICPreIncDec(CIntermediateCode *tempi,I64 op,I64 ip)
if (tempi->ic_flags & ICF_NOT_ADDR) {
if (tempc->ptr_stars_cnt && tempc1->size!=1) {
ICAddSubEctImm(tempi,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,tempc1->size,op.u16[3],ip);
} else
ICSlashOp(tempi,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,op,ip);
if (tempi->r.type&TY_MASK)
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,ip);
} else {
if (tempi->a1.type&TY_MASK==TY_REG)
@@ -419,15 +419,15 @@ U0 ICPreIncDec(CIntermediateCode *tempi,I64 op,I64 ip)
}
if (tempc->ptr_stars_cnt &&
tempc1->size!=1) {
ICAddSubEctImm(tempi,TY_DISP+tempi->a1.type_pointed,r,0,
TY_DISP+tempi->a1.type_pointed,r,0,
ICAddSubEctImm(tempi,TY_DISP+tempi->a1.type_pointed_to,r,0,
TY_DISP+tempi->a1.type_pointed_to,r,0,
tempc1->size,op.u16[3],ip);
} else
ICSlashOp(tempi,
TY_DISP+tempi->a1.type_pointed,r,0,op,ip);
TY_DISP+tempi->a1.type_pointed_to,r,0,op,ip);
if (tempi->r.type&TY_MASK)
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
TY_DISP+tempi->a1.type_pointed,r,0,ip);
TY_DISP+tempi->a1.type_pointed_to,r,0,ip);
}
}
@@ -438,17 +438,17 @@ U0 ICPostIncDec(CIntermediateCode *tempi,I64 op,I64 ip)
if (tempi->ic_flags & ICF_NOT_ADDR) {
if (tempi->r.type&TY_MASK)
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,ip);
if (tempc->ptr_stars_cnt && tempc1->size!=1)
ICAddSubEctImm(tempi,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,tempc1->size,op.u16[3],ip);
else
ICSlashOp(tempi,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,op,ip);
} else {
if (tempi->a1.type&TY_MASK==TY_REG &&
@@ -461,12 +461,12 @@ U0 ICPostIncDec(CIntermediateCode *tempi,I64 op,I64 ip)
}
if (tempi->r.type&TY_MASK)
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
TY_DISP+tempi->a1.type_pointed,r,0,ip);
TY_DISP+tempi->a1.type_pointed_to,r,0,ip);
if (tempc->ptr_stars_cnt && tempc1->size!=1)
ICAddSubEctImm(tempi,TY_DISP+tempi->a1.type_pointed,r,0,
TY_DISP+tempi->a1.type_pointed,r,0,tempc1->size,op.u16[3],ip);
ICAddSubEctImm(tempi,TY_DISP+tempi->a1.type_pointed_to,r,0,
TY_DISP+tempi->a1.type_pointed_to,r,0,tempc1->size,op.u16[3],ip);
else
ICSlashOp(tempi,TY_DISP+tempi->a1.type_pointed,r,0,op,ip);
ICSlashOp(tempi,TY_DISP+tempi->a1.type_pointed_to,r,0,op,ip);
}
}
@@ -475,8 +475,8 @@ U0 ICDerefPostIncDec(CIntermediateCode *tempi,I64 op,I64 ip)
I64 t,r;
CHashClass *tempc1=tempi->ic_class;
t=tempi->r.type&RT_MASK;
if (t>tempi->a1.type_pointed)
t=tempi->a1.type_pointed;
if (t>tempi->a1.type_pointed_to)
t=tempi->a1.type_pointed_to;
if (tempi->ic_flags & ICF_NOT_ADDR) {
if (tempi->a1.type&TY_MASK==TY_REG)
r=tempi->a1.reg;
@@ -526,7 +526,7 @@ U0 ICAssignPostIncDec(CIntermediateCode *tempi,I64 op,I64 ip)
tempi->a1.type&TY_MASK+RT_I64,tempi->a1.reg,tempi->a1.disp,ip);
r=REG_RDX;
}
ICMov(tempi,TY_DISP+tempi->a1.type_pointed,r,0,
ICMov(tempi,TY_DISP+tempi->a1.type_pointed_to,r,0,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,ip);
if (tempi->r.type&TY_MASK)
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
@@ -540,7 +540,7 @@ U0 ICAssignPostIncDec(CIntermediateCode *tempi,I64 op,I64 ip)
ICMov(tempi,TY_REG+RT_I64,REG_RDX,0,
tempi->a1.type,tempi->a1.reg,tempi->a1.disp,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,TY_DISP+RT_I64,REG_RDX,0,ip);
ICMov(tempi,TY_DISP+tempi->a1.type_pointed,REG_RCX,0,
ICMov(tempi,TY_DISP+tempi->a1.type_pointed_to,REG_RCX,0,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,ip);
if (tempi->r.type&TY_MASK)
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
+9 -8
View File
@@ -160,13 +160,13 @@ U0 ICAssign(CIntermediateCode *tempi,I64 ip)
{
CIntermediateCode *tempi1;
if (tempi->ic_flags & ICF_NOT_ADDR) {
ICMov(tempi,tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
ICMov(tempi,tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,ip);
if (tempi->r.type&TY_MASK) {
if (tempi->a1.type&TY_MASK==TY_REG)
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,ip);
else
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
@@ -182,7 +182,8 @@ U0 ICAssign(CIntermediateCode *tempi,I64 ip)
tempi->a2.reg==tempi->a1.reg ||
tempi->r.type&TY_MASK ||
tempi1->ic_flags&~ICG_NO_CVT_MASK) {
ICMov(tempi,TY_DISP+tempi->a1.type_pointed,tempi->a1.reg,tempi->a1.disp,
ICMov(tempi,
TY_DISP+tempi->a1.type_pointed_to,tempi->a1.reg,tempi->a1.disp,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,ip);
if (tempi->r.type&TY_MASK)
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
@@ -192,14 +193,14 @@ U0 ICAssign(CIntermediateCode *tempi,I64 ip)
~ICF_CODE_FINAL|ICF_DONT_RESTORE;
tempi->a1.disp=tempi1->ic_data;
OptSetNOP1(tempi1); //This better not be last pass!
ICMov(tempi,TY_DISP+tempi->a1.type_pointed,
ICMov(tempi,TY_DISP+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,ip);
}
} else {
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,
tempi->a1.type,tempi->a1.reg,tempi->a1.disp,ip);
ICMov(tempi,TY_DISP+tempi->a1.type_pointed,REG_RCX,0,
ICMov(tempi,TY_DISP+tempi->a1.type_pointed_to,REG_RCX,0,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,ip);
if (tempi->r.type&TY_MASK)
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
@@ -706,7 +707,7 @@ U0 ICAndEqu(CIntermediateCode *tempi,I64 ip2)
return;
}
}
ICAddSubEctEqu(tempi,tempi->a1.type_pointed,
ICAddSubEctEqu(tempi,tempi->a1.type_pointed_to,
tempi->r.type,tempi->r.reg,tempi->r.disp,
tempi->a1.type,tempi->a1.reg,tempi->a1.disp,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,0x210425240423,ip2);
@@ -727,7 +728,7 @@ U0 ICOrEqu(CIntermediateCode *tempi,I64 ip2)
return;
}
}
ICAddSubEctEqu(tempi,tempi->a1.type_pointed,
ICAddSubEctEqu(tempi,tempi->a1.type_pointed_to,
tempi->r.type,tempi->r.reg,tempi->r.disp,
tempi->a1.type,tempi->a1.reg,tempi->a1.disp,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,0x09010D0C010B,ip2);
@@ -748,7 +749,7 @@ U0 ICXorEqu(CIntermediateCode *tempi,I64 ip2)
return;
}
}
ICAddSubEctEqu(tempi,tempi->a1.type_pointed,
ICAddSubEctEqu(tempi,tempi->a1.type_pointed_to,
tempi->r.type,tempi->r.reg,tempi->r.disp,
tempi->a1.type,tempi->a1.reg,tempi->a1.disp,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,0x310635340633,ip2);
+18 -18
View File
@@ -9,7 +9,7 @@ U0 CmpNoteFloatOp(CCmpCtrl *cc,CIntermediateCode *tempi,
Bool link=FALSE;
if (cc->pass==7 && cc->last_float_op_ic &&
cc->last_dont_popable && dont_pushable) {
nobound_switch (pos) {
switch [pos] {
case CN_A2:
if (cc->last_float_op_ic!=tempi && cc->dont_push_float)
link=TRUE;
@@ -589,15 +589,15 @@ U0 ICFModEqu(CCmpCtrl *cc,CIntermediateCode *tempi,I64 ip)
if (tempi->ic_flags & ICF_NOT_ADDR) {
if (dont_push_float) {
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,ip);
if (tempi->a1.type_pointed!=RT_F64)
if (tempi->a1.type_pointed_to!=RT_F64)
ICFCvt2(cc,tempi,REG_RAX,TY_REG+RT_I64,REG_RAX,0,FALSE,ip);
} else if (tempi->ic_flags & ICF_A1_FIRST) {
ICMov(tempi,TY_REG+RT_I64,REG_RDX,0,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,ip);
if (tempi->a1.type_pointed!=RT_F64)
if (tempi->a1.type_pointed_to!=RT_F64)
ICFCvt2(cc,tempi,REG_RDX,TY_REG+RT_I64,REG_RDX,0,FALSE,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,ip);
@@ -605,28 +605,28 @@ U0 ICFModEqu(CCmpCtrl *cc,CIntermediateCode *tempi,I64 ip)
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RDX,0,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,ip);
if (tempi->a1.type_pointed!=RT_F64)
if (tempi->a1.type_pointed_to!=RT_F64)
ICFCvt2(cc,tempi,REG_RDX,TY_REG+RT_I64,REG_RDX,0,FALSE,ip);
}
//TODO: unpushable,unpop? Not sure
ICCopyTemplate(cc,tempi,CMP_TEMPLATE_MOD,FALSE,FALSE,FALSE,CN_MAIN);
if (tempi->a1.type_pointed!=RT_F64)
if (tempi->a1.type_pointed_to!=RT_F64)
ICFCvt2(cc,tempi,REG_RAX,TY_REG+RT_I64,REG_RAX,0,TRUE,ip);
ICMov(tempi,tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
ICMov(tempi,tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,TY_REG+RT_I64,REG_RAX,0,ip);
if (tempi->r.type&TY_MASK)
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed,
tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to,
tempi->a1.reg,tempi->a1.disp,ip);
} else {
if (dont_push_float) {
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,tempi->a1.type,
tempi->a1.reg,tempi->a1.disp,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
TY_DISP+tempi->a1.type_pointed,REG_RCX,0,ip);
if (tempi->a1.type_pointed!=RT_F64)
TY_DISP+tempi->a1.type_pointed_to,REG_RCX,0,ip);
if (tempi->a1.type_pointed_to!=RT_F64)
ICFCvt2(cc,tempi,REG_RAX,TY_REG+RT_I64,REG_RAX,0,FALSE,ip);
} else if (tempi->ic_flags & ICF_A1_FIRST) {
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,tempi->a1.type,
@@ -634,8 +634,8 @@ U0 ICFModEqu(CCmpCtrl *cc,CIntermediateCode *tempi,I64 ip)
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RDX,0,
TY_DISP+tempi->a1.type_pointed,REG_RCX,0,ip);
if (tempi->a1.type_pointed!=RT_F64)
TY_DISP+tempi->a1.type_pointed_to,REG_RCX,0,ip);
if (tempi->a1.type_pointed_to!=RT_F64)
ICFCvt2(cc,tempi,REG_RDX,TY_REG+RT_I64,REG_RDX,0,FALSE,ip);
} else {
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
@@ -643,15 +643,15 @@ U0 ICFModEqu(CCmpCtrl *cc,CIntermediateCode *tempi,I64 ip)
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,tempi->a1.type,
tempi->a1.reg,tempi->a1.disp,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RDX,0,
TY_DISP+tempi->a1.type_pointed,REG_RCX,0,ip);
if (tempi->a1.type_pointed!=RT_F64)
TY_DISP+tempi->a1.type_pointed_to,REG_RCX,0,ip);
if (tempi->a1.type_pointed_to!=RT_F64)
ICFCvt2(cc,tempi,REG_RDX,TY_REG+RT_I64,REG_RDX,0,FALSE,ip);
}
//TODO: unpushable,unpop? Not sure
ICCopyTemplate(cc,tempi,CMP_TEMPLATE_MOD,FALSE,FALSE,FALSE,CN_MAIN);
if (tempi->a1.type_pointed!=RT_F64)
if (tempi->a1.type_pointed_to!=RT_F64)
ICFCvt2(cc,tempi,REG_RAX,TY_REG+RT_I64,REG_RAX,0,TRUE,ip);
ICMov(tempi,TY_DISP+tempi->a1.type_pointed,REG_RCX,0,
ICMov(tempi,TY_DISP+tempi->a1.type_pointed_to,REG_RCX,0,
TY_REG+RT_I64,REG_RAX,0,ip);
if (tempi->r.type&TY_MASK)
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
+46 -43
View File
@@ -16,31 +16,32 @@ U0 ICFOpEqu(CCmpCtrl *cc,CIntermediateCode *tempi,I64 op,U8 *buf2,I64 ip)
if (tempi->ic_flags & ICF_NOT_ADDR) {
p1_mem=FALSE;
if (dont_push_float) {
if (a1->type_pointed!=RT_F64) {
if (a1->type_pointed_to!=RT_F64) {
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
a1->type&TY_MASK+a1->type_pointed,a1->reg,a1->disp,ip);
a1->type&TY_MASK+a1->type_pointed_to,a1->reg,a1->disp,ip);
ICFCvt2(cc,tempi,REG_RAX,TY_REG+RT_I64,REG_RAX,0,FALSE,ip);
ICPush(tempi,TY_REG+RT_I64,REG_RAX,0,ip);
t1=TY_SIB+RT_I64; r1=REG_RSP+REG_RSP<<8; d1=0;
rsp_size+=8;
} else {
if (a1->type_pointed>=RT_I64 && (a1->type&TY_MASK==TY_DISP ||
if (a1->type_pointed_to>=RT_I64 && (a1->type&TY_MASK==TY_DISP ||
a1->type&TY_MASK==TY_RIP_DISP32 || a1->type&TY_MASK==TY_SIB)) {
t1=a1->type_pointed+a1->type&TY_MASK;
t1=a1->type_pointed_to+a1->type&TY_MASK;
r1=a1->reg;
d1=a1->disp;
p1_mem=TRUE;
} else {
ICPush(tempi,a1->type_pointed+a1->type&TY_MASK,a1->reg,a1->disp,ip);
ICPush(tempi,
a1->type_pointed_to+a1->type&TY_MASK,a1->reg,a1->disp,ip);
t1=TY_SIB+RT_I64; r1=REG_RSP+REG_RSP<<8; d1=0;
rsp_size+=8;
}
}
} else if (tempi->ic_flags & ICF_A1_FIRST) {
if (a1->type_pointed!=RT_F64 || a2->type&TY_MASK==TY_STK) {
if (a1->type_pointed_to!=RT_F64 || a2->type&TY_MASK==TY_STK) {
ICMov(tempi,TY_REG+RT_I64,REG_RDX,0,
a1->type&TY_MASK+a1->type_pointed,a1->reg,a1->disp,ip);
if (a1->type_pointed!=RT_F64)
a1->type&TY_MASK+a1->type_pointed_to,a1->reg,a1->disp,ip);
if (a1->type_pointed_to!=RT_F64)
ICFCvt2(cc,tempi,REG_RDX,TY_REG+RT_I64,REG_RDX,0,FALSE,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
a2->type,a2->reg,a2->disp,ip);
@@ -50,14 +51,15 @@ U0 ICFOpEqu(CCmpCtrl *cc,CIntermediateCode *tempi,I64 op,U8 *buf2,I64 ip)
t1=TY_SIB+RT_I64; r1=REG_RSP+REG_RSP<<8; d1=8;
t2=TY_SIB+RT_I64; r2=REG_RSP+REG_RSP<<8; d2=0;
} else {
if (a1->type_pointed>=RT_I64 && (a1->type&TY_MASK==TY_DISP ||
if (a1->type_pointed_to>=RT_I64 && (a1->type&TY_MASK==TY_DISP ||
a1->type&TY_MASK==TY_RIP_DISP32 || a1->type&TY_MASK==TY_SIB)) {
t1=a1->type_pointed+a1->type&TY_MASK;
t1=a1->type_pointed_to+a1->type&TY_MASK;
r1=a1->reg;
d1=a1->disp;
p1_mem=TRUE;
} else {
ICPush(tempi,a1->type_pointed+a1->type&TY_MASK,a1->reg,a1->disp,ip);
ICPush(tempi,
a1->type_pointed_to+a1->type&TY_MASK,a1->reg,a1->disp,ip);
t1=TY_SIB+RT_I64; r1=REG_RSP+REG_RSP<<8; d1=0;
rsp_size+=8;
}
@@ -83,11 +85,11 @@ U0 ICFOpEqu(CCmpCtrl *cc,CIntermediateCode *tempi,I64 op,U8 *buf2,I64 ip)
}
}
} else {
if (a1->type_pointed!=RT_F64 || a1->type&TY_MASK==TY_STK) {
if (a1->type_pointed_to!=RT_F64 || a1->type&TY_MASK==TY_STK) {
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,a2->type,a2->reg,a2->disp,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RDX,0,
a1->type&TY_MASK+a1->type_pointed,a1->reg,a1->disp,ip);
if (a1->type_pointed!=RT_F64)
a1->type&TY_MASK+a1->type_pointed_to,a1->reg,a1->disp,ip);
if (a1->type_pointed_to!=RT_F64)
ICFCvt2(cc,tempi,REG_RDX,TY_REG+RT_I64,REG_RDX,0,FALSE,ip);
ICU16(tempi,0x5052); //PUSH EDX PUSH EAX
rsp_size=16;
@@ -112,14 +114,15 @@ U0 ICFOpEqu(CCmpCtrl *cc,CIntermediateCode *tempi,I64 op,U8 *buf2,I64 ip)
rsp_size+=8;
}
}
if (a1->type_pointed>=RT_I64 && (a1->type&TY_MASK==TY_DISP ||
if (a1->type_pointed_to>=RT_I64 && (a1->type&TY_MASK==TY_DISP ||
a1->type&TY_MASK==TY_RIP_DISP32 || a1->type&TY_MASK==TY_SIB)) {
t1=a1->type_pointed+a1->type&TY_MASK;
t1=a1->type_pointed_to+a1->type&TY_MASK;
r1=a1->reg;
d1=a1->disp;
p1_mem=TRUE;
} else {
ICPush(tempi,a1->type_pointed+a1->type&TY_MASK,a1->reg,a1->disp,ip);
ICPush(tempi,
a1->type_pointed_to+a1->type&TY_MASK,a1->reg,a1->disp,ip);
t1=TY_SIB+RT_I64; r1=REG_RSP+REG_RSP<<8; d1=0;
rsp_size+=8;
if (r2==REG_RSP+REG_RSP<<8)
@@ -127,7 +130,7 @@ U0 ICFOpEqu(CCmpCtrl *cc,CIntermediateCode *tempi,I64 op,U8 *buf2,I64 ip)
}
}
}
if (!rsp_size && !(p1_mem && a1->type_pointed==RT_F64)) {
if (!rsp_size && !(p1_mem && a1->type_pointed_to==RT_F64)) {
rsp_size=8;
ICAddRSP(tempi,-8);
}
@@ -143,7 +146,7 @@ U0 ICFOpEqu(CCmpCtrl *cc,CIntermediateCode *tempi,I64 op,U8 *buf2,I64 ip)
}
ICSlashOp(tempi,t1,r1,d1,op,ip);
CmpNoteFloatOp(cc,tempi,TRUE,FALSE,CN_MAIN);
if (p1_mem && a1->type_pointed==RT_F64) {
if (p1_mem && a1->type_pointed_to==RT_F64) {
ICSlashOp(tempi,t1,r1,d1,SLASH_OP_FSTP,ip);
if (rsp_size)
ICAddRSP(tempi,rsp_size);
@@ -156,39 +159,39 @@ U0 ICFOpEqu(CCmpCtrl *cc,CIntermediateCode *tempi,I64 op,U8 *buf2,I64 ip)
SLASH_OP_FSTP,ip);
ICAddRSP(tempi,rsp_size-8);
}
if (a1->type_pointed!=RT_F64) {
if (a1->type_pointed_to!=RT_F64) {
ICPop(tempi,TY_REG+RT_I64,REG_RAX,0,ip);
ICFCvt2(cc,tempi,REG_RAX,TY_REG+RT_I64,REG_RAX,0,TRUE,ip);
ICMov(tempi,a1->type&TY_MASK+a1->type_pointed,a1->reg,a1->disp,
ICMov(tempi,a1->type&TY_MASK+a1->type_pointed_to,a1->reg,a1->disp,
TY_REG+RT_I64,REG_RAX,0,ip);
} else
ICPop(tempi,a1->type_pointed+a1->type&TY_MASK,a1->reg,a1->disp,ip);
ICPop(tempi,a1->type_pointed_to+a1->type&TY_MASK,a1->reg,a1->disp,ip);
}
if (tempi->r.type&TY_MASK)
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
a1->type&TY_MASK+a1->type_pointed,a1->reg,a1->disp,ip);
a1->type&TY_MASK+a1->type_pointed_to,a1->reg,a1->disp,ip);
} else {
if (a1->type_pointed>=RT_I64)
if (a1->type_pointed_to>=RT_I64)
p1_mem=TRUE;
else
p1_mem=FALSE;
if (dont_push_float) {
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,a1->type,a1->reg,a1->disp,ip);
if (a1->type_pointed!=RT_F64) {
if (a1->type_pointed_to!=RT_F64) {
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,
TY_DISP+a1->type_pointed,REG_RCX,0,ip);
TY_DISP+a1->type_pointed_to,REG_RCX,0,ip);
ICFCvt2(cc,tempi,REG_RAX,TY_REG+RT_I64,REG_RAX,0,FALSE,ip);
ICPush(tempi,TY_REG+RT_I64,REG_RAX,0,ip);
} else
ICPush(tempi,a1->type_pointed+TY_DISP,REG_RCX,0,ip);
ICPush(tempi,a1->type_pointed_to+TY_DISP,REG_RCX,0,ip);
t1=TY_SIB+RT_I64; r1=REG_RSP+REG_RSP<<8; d1=0;
rsp_size+=8;
} else if (tempi->ic_flags & ICF_A1_FIRST) {
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,a1->type,a1->reg,a1->disp,ip);
if (a1->type_pointed!=RT_F64 || a2->type&TY_MASK==TY_STK) {
if (a1->type_pointed_to!=RT_F64 || a2->type&TY_MASK==TY_STK) {
ICMov(tempi,TY_REG+RT_I64,REG_RDX,0,
TY_DISP+a1->type_pointed,REG_RCX,0,ip);
if (a1->type_pointed!=RT_F64)
TY_DISP+a1->type_pointed_to,REG_RCX,0,ip);
if (a1->type_pointed_to!=RT_F64)
ICFCvt2(cc,tempi,REG_RDX,TY_REG+RT_I64,REG_RDX,0,FALSE,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,a2->type,a2->reg,a2->disp,ip);
@@ -197,7 +200,7 @@ U0 ICFOpEqu(CCmpCtrl *cc,CIntermediateCode *tempi,I64 op,U8 *buf2,I64 ip)
t1=TY_SIB+RT_I64; r1=REG_RSP+REG_RSP<<8; d1=8;
t2=TY_SIB+RT_I64; r2=REG_RSP+REG_RSP<<8; d2=0;
} else {
ICPush(tempi,TY_DISP+a1->type_pointed,REG_RCX,0,ip);
ICPush(tempi,TY_DISP+a1->type_pointed_to,REG_RCX,0,ip);
t1=TY_SIB+RT_I64; r1=REG_RSP+REG_RSP<<8; d1=0;
rsp_size+=8;
if (a2->type&RT_MASK>=RT_I64 && (a2->type&TY_MASK==TY_DISP ||
@@ -222,12 +225,12 @@ U0 ICFOpEqu(CCmpCtrl *cc,CIntermediateCode *tempi,I64 op,U8 *buf2,I64 ip)
}
}
} else {
if (a1->type_pointed!=RT_F64 || a1->type&TY_MASK==TY_STK) {
if (a1->type_pointed_to!=RT_F64 || a1->type&TY_MASK==TY_STK) {
ICMov(tempi,TY_REG+RT_I64,REG_RAX,0,a2->type,a2->reg,a2->disp,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,a1->type,a1->reg,a1->disp,ip);
ICMov(tempi,TY_REG+RT_I64,REG_RDX,0,
TY_DISP+a1->type_pointed,REG_RCX,0,ip);
if (a1->type_pointed!=RT_F64)
TY_DISP+a1->type_pointed_to,REG_RCX,0,ip);
if (a1->type_pointed_to!=RT_F64)
ICFCvt2(cc,tempi,REG_RDX,TY_REG+RT_I64,REG_RDX,0,FALSE,ip);
ICU16(tempi,0x5052); //PUSH EDX PUSH EAX
rsp_size=16;
@@ -253,14 +256,14 @@ U0 ICFOpEqu(CCmpCtrl *cc,CIntermediateCode *tempi,I64 op,U8 *buf2,I64 ip)
}
}
ICMov(tempi,TY_REG+RT_I64,REG_RCX,0,a1->type,a1->reg,a1->disp,ip);
ICPush(tempi,TY_DISP+a1->type_pointed,REG_RCX,0,ip);
ICPush(tempi,TY_DISP+a1->type_pointed_to,REG_RCX,0,ip);
t1=TY_SIB+RT_I64; r1=REG_RSP+REG_RSP<<8; d1=0;
rsp_size+=8;
if (r2==REG_RSP+REG_RSP<<8)
d2+=8;
}
}
if (!rsp_size && !(p1_mem && a1->type_pointed==RT_F64)) {
if (!rsp_size && !(p1_mem && a1->type_pointed_to==RT_F64)) {
rsp_size=8;
ICAddRSP(tempi,-8);
}
@@ -277,8 +280,8 @@ U0 ICFOpEqu(CCmpCtrl *cc,CIntermediateCode *tempi,I64 op,U8 *buf2,I64 ip)
}
ICSlashOp(tempi,t1,r1,d1,op,ip);
CmpNoteFloatOp(cc,tempi,TRUE,FALSE,CN_MAIN);
if (p1_mem && a1->type_pointed==RT_F64) {
ICSlashOp(tempi,TY_DISP+a1->type_pointed,REG_RCX,0,
if (p1_mem && a1->type_pointed_to==RT_F64) {
ICSlashOp(tempi,TY_DISP+a1->type_pointed_to,REG_RCX,0,
SLASH_OP_FSTP,ip);
if (rsp_size)
ICAddRSP(tempi,rsp_size);
@@ -292,9 +295,9 @@ U0 ICFOpEqu(CCmpCtrl *cc,CIntermediateCode *tempi,I64 op,U8 *buf2,I64 ip)
ICAddRSP(tempi,rsp_size-8);
}
ICPop(tempi,TY_REG+RT_I64,REG_RAX,0,ip);
if (a1->type_pointed!=RT_F64)
if (a1->type_pointed_to!=RT_F64)
ICFCvt2(cc,tempi,REG_RAX,TY_REG+RT_I64,REG_RAX,0,TRUE,ip);
ICMov(tempi,TY_DISP+a1->type_pointed,REG_RCX,0,
ICMov(tempi,TY_DISP+a1->type_pointed_to,REG_RCX,0,
TY_REG+RT_I64,REG_RAX,0,ip);
}
if (tempi->r.type&TY_MASK)
@@ -569,13 +572,13 @@ U0 ICFCmpAndBranch(CCmpCtrl *cc,CIntermediateCode *tempi,I64 ip,
U0 ICFMul(CCmpCtrl *cc,CIntermediateCode *tempi,U8 *buf,I64 ip)
{
if (tempi->a1.type&TY_MASK==TY_IMM &&
tempi->a1.type_pointed&RT_MASK==RT_F64 &&
tempi->a1.type_pointed_to&RT_MASK==RT_F64 &&
tempi->a1.disp(F64)==1.0) {
CmpNoteFloatOp(cc,tempi,FALSE,FALSE,CN_MAIN);
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,ip);
} else if (tempi->a2.type&TY_MASK==TY_IMM &&
tempi->a2.type_pointed&RT_MASK==RT_F64 &&
tempi->a2.type_pointed_to&RT_MASK==RT_F64 &&
tempi->a2.disp(F64)==1.0) {
CmpNoteFloatOp(cc,tempi,FALSE,FALSE,CN_MAIN);
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
@@ -587,7 +590,7 @@ U0 ICFMul(CCmpCtrl *cc,CIntermediateCode *tempi,U8 *buf,I64 ip)
U0 ICFDiv(CCmpCtrl *cc,CIntermediateCode *tempi,U8 *buf,I64 ip)
{
if (tempi->a2.type&TY_MASK==TY_IMM &&
tempi->a2.type_pointed&RT_MASK==RT_F64 &&
tempi->a2.type_pointed_to&RT_MASK==RT_F64 &&
tempi->a2.disp(F64)==1.0) {
CmpNoteFloatOp(cc,tempi,FALSE,FALSE,CN_MAIN);
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
+3 -3
View File
@@ -222,7 +222,7 @@ I64 ICModr1(I64 r,I64 t2,I64 r2,I64 d2)
U0 ICModr2(CIntermediateCode *tempi,I64 i,I64 d,I64 ip=0)
{//t=0 means no SIB
nobound_switch (i.u8[0]) {
switch [i.u8[0]] {
case MDR_REG:
break;
case MDR_INDIRECT_REG:
@@ -648,8 +648,8 @@ U0 ICDeref(CIntermediateCode *tempi,I64 ip)
{
I64 t;
t=tempi->r.type&RT_MASK;
if (t>tempi->a1.type_pointed)
t=tempi->a1.type_pointed;
if (t>tempi->a1.type_pointed_to)
t=tempi->a1.type_pointed_to;
if (tempi->a1.type&TY_MASK==TY_REG)
ICMov(tempi,tempi->r.type,tempi->r.reg,tempi->r.disp,
TY_DISP+t,tempi->a1.reg,tempi->a1.disp,ip);
+2 -2
View File
@@ -140,10 +140,10 @@ U0 ICClassPut(CHashClass *c)
U0 ICArgPut(CICArg *a)
{
if (a->type_pointed)
if (a->type_pointed_to)
"%Z %Z %Z ",
a->type&RT_MASK,"ST_RAW_TYPES",
a->type_pointed&RT_MASK,"ST_RAW_TYPES",
a->type_pointed_to&RT_MASK,"ST_RAW_TYPES",
a->type>>4,"ST_TY_TYPES";
else
"%Z %Z ",
+1 -1
View File
@@ -3,7 +3,7 @@ import U0 DocBinsValidate(CDoc *doc);
import U0 DocDel(CDoc *doc);
import U0 DocLoad(CDoc *doc,U8 *src2,I64 size);
import CDoc *DocNew(U8 *filename=NULL,CTask *task=NULL);
import CDocEntry *DocPrint(CDoc *doc,U8 *fmt,...);
import CDocEntry *DocPrint(CDoc *doc=NULL,U8 *fmt,...);
import CDocEntry *DocPutLine(CDoc *doc,CDocEntry *doc_e);
import I64 DocSize(CDoc *doc);
import Bool DocWrite(CDoc *doc,Bool prompt=FALSE);
+4 -4
View File
@@ -184,7 +184,7 @@ U0 CmpFixUpJITAsm(CCmpCtrl *cc,CAOT *tempaot)
while (tempa) {
tempa1=tempa->next;
ptr=ip2+tempa->ip;
nobound_switch (tempa->type) {
switch [tempa->type] {
case AAT_ADD_U8: *ptr(U8 *) +=ip2; break;
case AAT_SUB_U8: *ptr(U8 *) -=ip2; break;
case AAT_ADD_U16: *ptr(U16 *)+=ip2; break;
@@ -250,7 +250,7 @@ U0 CmpFixUpJITAsm(CCmpCtrl *cc,CAOT *tempaot)
}
if (tempex || g_lb) {
ptr=tempie->ip+ip2;
nobound_switch (tempie->type) {
switch [tempie->type] {
case IET_REL_I0:
case IET_IMM_U0:
break;
@@ -313,7 +313,7 @@ U0 CmpFixUpAOTAsm(CCmpCtrl *cc,CAOT *tempaot)
tempa1=tempa->next;
tempa->next=aotc->abss;
ptr=tempaot->buf+tempaot->ip+tempa->ip;
nobound_switch (tempa->type) {
switch [tempa->type] {
case AAT_ADD_U8: *ptr(U8 *)+=ip2; break;
case AAT_SUB_U8: *ptr(U8 *)-=ip2; break;
case AAT_ADD_U16: *ptr(U16 *)+=ip2; break;
@@ -350,7 +350,7 @@ U0 CmpFixUpAOTAsm(CCmpCtrl *cc,CAOT *tempaot)
ptr=tempaot->buf+tempaot->ip+tempie->ip;
if (g_lb) {
i=g_lb->addr+tempaot->buf;
nobound_switch (tempie->type) {
switch [tempie->type] {
case IET_REL_I0:
case IET_IMM_U0:
break;
Binary file not shown.
+115 -129
View File
@@ -21,11 +21,11 @@ $LK,"AsmStoreNum",A="FL:::/Compiler/Asm.CPP.Z,263",BI=18$
$LK,"MDR_SIB_D8_INDIRECT_REG",A="FL:::/Compiler/BackLib.CPP.Z,137"$
$LK,"OptPass012",A="FL:::/Compiler/OptPass012.CPP.Z,23",BI=19$
$LK,"MemberLstSize",A="FL:::/Compiler/LexLib.CPP.Z,191",BI=20$
$LK,"ICQueIns",A="FL:::/Compiler/BackC.CPP.Z,411",BI=21$
$LK,"ICQueIns",A="FL:::/Compiler/BackC.CPP.Z,412",BI=21$
$LK,"ICAndBranch",A="FL:::/Compiler/BackC.CPP.Z,1",BI=22$
$LK,"MDR_D8_INDIRECT_REG",A="FL:::/Compiler/BackLib.CPP.Z,134"$
$LK,"U",A="FL:::/Compiler/UAsm.CPP.Z,649",BI=23$
$LK,"ICQueRem",A="FL:::/Compiler/BackC.CPP.Z,493",BI=24$
$LK,"ICQueRem",A="FL:::/Compiler/BackC.CPP.Z,494",BI=24$
$LK,"CN_R",A="FL:::/Compiler/BackFA.CPP.Z,4"$
$LK,"OptLead1",A="FL:::/Compiler/OptLib.CPP.Z,73",BI=25$
$LK,"CmpNoteFloatOp",A="FL:::/Compiler/BackFA.CPP.Z,6",BI=26$
@@ -75,7 +75,7 @@ $LK,"ICAdd",A="FL:::/Compiler/PrsLib.CPP.Z,79",BI=53$
$LK,"CmpRawType",A="FL:::/Compiler/OptLib.CPP.Z,509",BI=54$
$LK,"ICFOpEqu",A="FL:::/Compiler/BackFB.CPP.Z,1",BI=55$
$LK,"LexExpressionI64",A="FL:::/Compiler/PrsExp.CPP.Z,1135",BI=56$
$LK,"ICQueInsRev",A="FL:::/Compiler/BackC.CPP.Z,452",BI=57$
$LK,"ICQueInsRev",A="FL:::/Compiler/BackC.CPP.Z,453",BI=57$
$LK,"LexExpression",A="FL:::/Compiler/PrsExp.CPP.Z,1163",BI=58$
$LK,"PrsExpression",A="FL:::/Compiler/PrsExp.CPP.Z,264",BI=59$
$LK,"PrsClassNew",A="FL:::/Compiler/PrsLib.CPP.Z,40",BI=60$
@@ -87,7 +87,7 @@ $LK,"OptPass5",A="FL:::/Compiler/OptPass5.CPP.Z,1",BI=64$
$LK,"OptPass6",A="FL:::/Compiler/OptPass6.CPP.Z,111",BI=65$
$LK,"Echo",A="FL:::/Compiler/CMisc.CPP.Z,24",BI=66$
$LK,"PrsGlblVarLst",A="FL:::/Compiler/PrsStmt.CPP.Z,201",BI=67$
$LK,"ICQueInit",A="FL:::/Compiler/BackC.CPP.Z,397",BI=68$
$LK,"ICQueInit",A="FL:::/Compiler/BackC.CPP.Z,398",BI=68$
$LK,"ICCmp",A="FL:::/Compiler/BackB.CPP.Z,136",BI=69$
$LK,"ICAddRSP",A="FL:::/Compiler/BackLib.CPP.Z,69",BI=70$
$LK,"ICDiv",A="FL:::/Compiler/BackA.CPP.Z,428",BI=71$
@@ -111,7 +111,7 @@ $LK,"OptSetNOP1",A="FL:::/Compiler/OptLib.CPP.Z,17",BI=87$
$LK,"OptPass789A",A="FL:::/Compiler/OptPass789A.CPP.Z,1",BI=88$
$LK,"OptSetNOP2",A="FL:::/Compiler/OptLib.CPP.Z,25",BI=89$
$LK,"FBO1_F64",A="FL:::/Compiler/OptLib.CPP.Z,94"$
$LK,"ICXorEqu",A="FL:::/Compiler/BackC.CPP.Z,736",BI=90$
$LK,"ICXorEqu",A="FL:::/Compiler/BackC.CPP.Z,737",BI=90$
$LK,"ICToUpper",A="FL:::/Compiler/BackB.CPP.Z,355",BI=91$
$LK,"AsmLexExpression",A="FL:::/Compiler/AsmLib.CPP.Z,129",BI=92$
$LK,"ICMov",A="FL:::/Compiler/BackLib.CPP.Z,435",BI=93$
@@ -126,12 +126,12 @@ $LK,"ICSub",A="FL:::/Compiler/BackA.CPP.Z,207",BI=99$
$LK,"COCFloatConstFind",A="FL:::/Compiler/PrsLib.CPP.Z,164",BI=100$
$LK,"ICPut",A="FL:::/Compiler/CExcept.CPP.Z,186",BI=101$
$LK,"PrsArrayDims",A="FL:::/Compiler/PrsVar.CPP.Z,247",BI=102$
$LK,"ICSqr",A="FL:::/Compiler/BackC.CPP.Z,581",BI=103$
$LK,"ICSqr",A="FL:::/Compiler/BackC.CPP.Z,582",BI=103$
$LK,"FBO1_NOT_CONST",A="FL:::/Compiler/OptLib.CPP.Z,92"$
$LK,"CMP_TEMPLATES_DONT_POP",A="FL:::/Compiler/Templates.CPP.Z,178"$
$LK,"PrsClass",A="FL:::/Compiler/PrsStmt.CPP.Z,1",BI=104$
$LK,"MemberMetaData",A="FL:::/Compiler/LexLib.CPP.Z,45",BI=105$
$LK,"ICSwitch",A="FL:::/Compiler/BackC.CPP.Z,757",BI=106$
$LK,"ICSwitch",A="FL:::/Compiler/BackC.CPP.Z,758",BI=106$
$LK,"OptBrNotZero",A="FL:::/Compiler/OptLib.CPP.Z,358",BI=107$
$LK,"LexPutToken",A="FL:::/Compiler/CExcept.CPP.Z,1",BI=108$
$LK,"SLASH_OP_FDIV",A="FL:::/Compiler/BackLib.CPP.Z,268"$
@@ -140,14 +140,14 @@ $LK,"UAsmHashLoad",A="FL:::/Compiler/UAsm.CPP.Z,188",BI=110$
$LK,"UnusedExternWarning",A="FL:::/Compiler/CExcept.CPP.Z,104",BI=111$
$LK,"SLASH_OP_FILD",A="FL:::/Compiler/BackLib.CPP.Z,273"$
$LK,"ICXorXor",A="FL:::/Compiler/BackB.CPP.Z,98",BI=112$
$LK,"PrsTryBlk",A="FL:::/Compiler/PrsStmt.CPP.Z,831",BI=113$
$LK,"PrsTryBlk",A="FL:::/Compiler/PrsStmt.CPP.Z,838",BI=113$
$LK,"CInit",A="FL:::/Compiler/CMain.CPP.Z,684",BI=114$
$LK,"MemberMetaFind",A="FL:::/Compiler/LexLib.CPP.Z,56",BI=115$
$LK,"ExePrint2",A="FL:::/Compiler/CMain.CPP.Z,646",BI=116$
$LK,"FBO1_INT",A="FL:::/Compiler/OptLib.CPP.Z,93"$
$LK,"PE_DO_UNARY_OP",A="FL:::/Compiler/PrsExp.CPP.Z,8"$
$LK,"PrsVarInit",A="FL:::/Compiler/PrsVar.CPP.Z,1",BI=117$
$LK,"ICOrEqu",A="FL:::/Compiler/BackC.CPP.Z,715",BI=118$
$LK,"ICOrEqu",A="FL:::/Compiler/BackC.CPP.Z,716",BI=118$
$LK,"ICModr1",A="FL:::/Compiler/BackLib.CPP.Z,141",BI=119$
$LK,"ICModr2",A="FL:::/Compiler/BackLib.CPP.Z,223",BI=120$
$LK,"SLASH_OP_FMUL",A="FL:::/Compiler/BackLib.CPP.Z,267"$
@@ -162,20 +162,20 @@ $LK,"SLASH_OP_IMUL",A="FL:::/Compiler/BackLib.CPP.Z,259"$
$LK,"SLASH_OP_FSTP",A="FL:::/Compiler/BackLib.CPP.Z,271"$
$LK,"COCDel",A="FL:::/Compiler/PrsLib.CPP.Z,186",BI=127$
$LK,"PE_UNARY_TERM1",A="FL:::/Compiler/PrsExp.CPP.Z,1"$
$LK,"ICFAdd",A="FL:::/Compiler/BackFB.CPP.Z,599",BI=128$
$LK,"ICFAdd",A="FL:::/Compiler/BackFB.CPP.Z,602",BI=128$
$LK,"PE_UNARY_TERM2",A="FL:::/Compiler/PrsExp.CPP.Z,2"$
$LK,"CmdLinePmt",A="FL:::/Compiler/CMisc.CPP.Z,88",BI=129$
$LK,"AsmMakeArgMask",A="FL:::/Compiler/Asm.CPP.Z,172",BI=130$
$LK,"COCHeaderPut",A="FL:::/Compiler/PrsLib.CPP.Z,229",BI=131$
$LK,"PrsGlblInit",A="FL:::/Compiler/PrsVar.CPP.Z,206",BI=132$
$LK,"ICAndEqu",A="FL:::/Compiler/BackC.CPP.Z,694",BI=133$
$LK,"ICAndEqu",A="FL:::/Compiler/BackC.CPP.Z,695",BI=133$
$LK,"LexD2I32",A="FL:::/Compiler/CMisc.CPP.Z,52",BI=134$
$LK,"MemberLstNew",A="FL:::/Compiler/LexLib.CPP.Z,150",BI=135$
$LK,"LexD3I32",A="FL:::/Compiler/CMisc.CPP.Z,68",BI=136$
$LK,"OptClassFwd",A="FL:::/Compiler/OptLib.CPP.Z,9",BI=137$
$LK,"ICFCmp",A="FL:::/Compiler/BackFA.CPP.Z,545",BI=138$
$LK,"PrsSwitch",A="FL:::/Compiler/PrsStmt.CPP.Z,575",BI=139$
$LK,"ICFDiv",A="FL:::/Compiler/BackFB.CPP.Z,587",BI=140$
$LK,"ICFDiv",A="FL:::/Compiler/BackFB.CPP.Z,590",BI=140$
$LK,"AOTStoreCodeU8At",A="FL:::/Compiler/AsmLib.CPP.Z,108",BI=141$
$LK,"PE_PUSH_LOWER",A="FL:::/Compiler/PrsExp.CPP.Z,11"$
$LK,"OptPass6Lag",A="FL:::/Compiler/OptPass6.CPP.Z,28",BI=142$
@@ -188,7 +188,7 @@ $LK,"PrsOffsetOf",A="FL:::/Compiler/PrsExp.CPP.Z,348",BI=148$
$LK,"MDR_REG",A="FL:::/Compiler/BackLib.CPP.Z,132"$
$LK,"GetOption",A="FL:::/Compiler/CMisc.CPP.Z,6",BI=149$
$LK,"PrsDoWhile",A="FL:::/Compiler/PrsStmt.CPP.Z,503",BI=150$
$LK,"ICShift",A="FL:::/Compiler/BackA.CPP.Z,693",BI=151$
$LK,"ICShift",A="FL:::/Compiler/BackA.CPP.Z,694",BI=151$
$LK,"ICFMod",A="FL:::/Compiler/BackFA.CPP.Z,249",BI=152$
$LK,"COCPop",A="FL:::/Compiler/PrsLib.CPP.Z,121",BI=153$
$LK,"PrsExpression2",A="FL:::/Compiler/PrsExp.CPP.Z,65",BI=154$
@@ -196,12 +196,12 @@ $LK,"SLASH_OP_PUSH",A="FL:::/Compiler/BackLib.CPP.Z,262"$
$LK,"PE_DEREFERENCE",A="FL:::/Compiler/PrsExp.CPP.Z,5"$
$LK,"LexPopRestore",A="FL:::/Compiler/LexLib.CPP.Z,23",BI=155$
$LK,"ICUnaries",A="FL:::/Compiler/BackB.CPP.Z,1",BI=156$
$LK,"ICFMul",A="FL:::/Compiler/BackFB.CPP.Z,569",BI=157$
$LK,"ICShiftEqu",A="FL:::/Compiler/BackA.CPP.Z,726",BI=158$
$LK,"ICFMul",A="FL:::/Compiler/BackFB.CPP.Z,572",BI=157$
$LK,"ICShiftEqu",A="FL:::/Compiler/BackA.CPP.Z,727",BI=158$
$LK,"LexExpression2Bin",A="FL:::/Compiler/PrsExp.CPP.Z,1112",BI=159$
$LK,"ICFPow",A="FL:::/Compiler/BackFA.CPP.Z,280",BI=160$
$LK,"MapFileWrite",A="FL:::/Compiler/CHash.CPP.Z,90",BI=161$
$LK,"ICFSub",A="FL:::/Compiler/BackFB.CPP.Z,635",BI=162$
$LK,"ICFSub",A="FL:::/Compiler/BackFB.CPP.Z,638",BI=162$
$LK,"ICFModEqu",A="FL:::/Compiler/BackFA.CPP.Z,585",BI=163$
$LK,"CmpF1PushPop",A="FL:::/Compiler/OptLib.CPP.Z,529",BI=164$
$LK,"OptFree",A="FL:::/Compiler/OptLib.CPP.Z,33",BI=165$
@@ -225,7 +225,7 @@ $LK,"OptIC6",A="FL:::/Compiler/OptPass6.CPP.Z,1",BI=177$
$LK,"ICCmpAndBranch",A="FL:::/Compiler/BackB.CPP.Z,556",BI=178$
$LK,"ICDivEqu",A="FL:::/Compiler/BackA.CPP.Z,452",BI=179$
$LK,"PrsWhile",A="FL:::/Compiler/PrsStmt.CPP.Z,483",BI=180$
$LK,"ICFCmpAndBranch",A="FL:::/Compiler/BackFB.CPP.Z,306",BI=181$
$LK,"ICFCmpAndBranch",A="FL:::/Compiler/BackFB.CPP.Z,309",BI=181$
$LK,"Lex",A="FL:::/Compiler/Lex.CPP.Z,442",BI=182$
$LK,"ICTestAndBranch",A="FL:::/Compiler/BackB.CPP.Z,736",BI=183$
$LK,"uasm",A="FL:::/Compiler/Compiler.PRJ.Z,21"$
@@ -253,34 +253,34 @@ $LK,"MemberFind",A="FL:::/Compiler/LexLib.CPP.Z,67",BI=196$
$LK,"cmp",A="FL:::/Compiler/Compiler.PRJ.Z,16"$
$LK,"OptLag",A="FL:::/Compiler/OptLib.CPP.Z,40",BI=197$
$LK,"ICPostIncDec",A="FL:::/Compiler/BackB.CPP.Z,434",BI=198$
$LK,"ICFPostIncDec",A="FL:::/Compiler/BackFB.CPP.Z,677",BI=199$
$LK,"ICFPostIncDec",A="FL:::/Compiler/BackFB.CPP.Z,680",BI=199$
$LK,"ICTest",A="FL:::/Compiler/BackLib.CPP.Z,403",BI=200$
$LK,"ICModU64",A="FL:::/Compiler/BackC.CPP.Z,588",BI=201$
$LK,"ICModU64",A="FL:::/Compiler/BackC.CPP.Z,589",BI=201$
$LK,"ICLastIns",A="FL:::/Compiler/BackLib.CPP.Z,59",BI=202$
$LK,"PrsAsmImm",A="FL:::/Compiler/Asm.CPP.Z,1",BI=203$
$LK,"LexExtStr",A="FL:::/Compiler/LexLib.CPP.Z,218",BI=204$
$LK,"ICAddSubEctEqu",A="FL:::/Compiler/BackA.CPP.Z,545",BI=205$
$LK,"ICAddSubEctImm",A="FL:::/Compiler/BackA.CPP.Z,57",BI=206$
$LK,"ICPush",A="FL:::/Compiler/BackLib.CPP.Z,303",BI=207$
$LK,"ICSwap",A="FL:::/Compiler/BackC.CPP.Z,632",BI=208$
$LK,"ICSwap",A="FL:::/Compiler/BackC.CPP.Z,633",BI=208$
$LK,"CMP_TEMPLATES_DONT_PUSH",A="FL:::/Compiler/Templates.CPP.Z,267"$
$LK,"intermediate_code_table",A="FL:::/Compiler/CInit.CPP.Z,16"$
$LK,"ICZero",A="FL:::/Compiler/BackLib.CPP.Z,394",BI=209$
$LK,"CmpCtrlDel",A="FL:::/Compiler/Lex.CPP.Z,58",BI=210$
$LK,"ICClassPut",A="FL:::/Compiler/CExcept.CPP.Z,117",BI=211$
$LK,"ICAssign",A="FL:::/Compiler/BackC.CPP.Z,159",BI=212$
$LK,"ICFTemplateFun",A="FL:::/Compiler/BackFB.CPP.Z,701",BI=213$
$LK,"ICFTemplateFun",A="FL:::/Compiler/BackFB.CPP.Z,704",BI=213$
$LK,"MemberAdd",A="FL:::/Compiler/LexLib.CPP.Z,103",BI=214$
$LK,"PrsPush",A="FL:::/Compiler/PrsLib.CPP.Z,1",BI=215$
$LK,"SLASH_OP_FDIVR",A="FL:::/Compiler/BackLib.CPP.Z,269"$
$LK,"SLASH_OP_FISTTP",A="FL:::/Compiler/BackLib.CPP.Z,272"$
$LK,"CmpCtrlSize",A="FL:::/Compiler/Lex.CPP.Z,70",BI=216$
$LK,"ICLocalVarInit",A="FL:::/Compiler/BackC.CPP.Z,923",BI=217$
$LK,"ICLocalVarInit",A="FL:::/Compiler/BackC.CPP.Z,924",BI=217$
$LK,"PrsFor",A="FL:::/Compiler/PrsStmt.CPP.Z,526",BI=218$
$LK,"PassTrace",A="FL:::/Compiler/CMisc.CPP.Z,11",BI=219$
$LK,"PrsPopDeref",A="FL:::/Compiler/PrsLib.CPP.Z,21",BI=220$
$LK,"ICCopyTemplate",A="FL:::/Compiler/BackFA.CPP.Z,75",BI=221$
$LK,"PrsStmt",A="FL:::/Compiler/PrsStmt.CPP.Z,893",BI=222$
$LK,"PrsStmt",A="FL:::/Compiler/PrsStmt.CPP.Z,900",BI=222$
$LK,"PrsFun",A="FL:::/Compiler/PrsStmt.CPP.Z,132",BI=223$
$LK,"LexIncludeStr",A="FL:::/Compiler/Lex.CPP.Z,298",BI=224$
$LK,"PrsType",A="FL:::/Compiler/PrsVar.CPP.Z,287",BI=225$
@@ -289,7 +289,7 @@ $LK,"cmp_type_flags_src_code",A="FL:::/Compiler/Lex.CPP.Z,327"$
$LK,"PrsVarInit2",A="FL:::/Compiler/PrsVar.CPP.Z,123",BI=227$
$LK,"PrsPop",A="FL:::/Compiler/PrsLib.CPP.Z,6",BI=228$
$LK,"asm_seg_prefixes",A="FL:::/Compiler/Asm.CPP.Z,388"$
$LK,"ICMinMax",A="FL:::/Compiler/BackC.CPP.Z,509",BI=229$
$LK,"ICMinMax",A="FL:::/Compiler/BackC.CPP.Z,510",BI=229$
$LK,"CmpLoadDefines",A="FL:::/Compiler/CInit.CPP.Z,205",BI=230$
$LK,"PrsIf",A="FL:::/Compiler/PrsStmt.CPP.Z,456",BI=231$
$LK,"ICBuiltInFloatConst",A="FL:::/Compiler/BackLib.CPP.Z,413",BI=232$
@@ -307,12 +307,12 @@ $LK,"PE_CHECK_BINARY_OPS1",A="FL:::/Compiler/PrsExp.CPP.Z,6"$
$LK,"PE_CHECK_BINARY_OPS2",A="FL:::/Compiler/PrsExp.CPP.Z,7"$
$LK,"LexBackupLastChar",A="FL:::/Compiler/LexLib.CPP.Z,1",BI=242$
$LK,"Trace",A="FL:::/Compiler/CMisc.CPP.Z,19",BI=243$
$LK,"ICBrBitOps",A="FL:::/Compiler/BackC.CPP.Z,211",BI=244$
$LK,"ICBrBitOps",A="FL:::/Compiler/BackC.CPP.Z,212",BI=244$
$LK,"LexGetChar",A="FL:::/Compiler/Lex.CPP.Z,107",BI=245$
$LK,"LexSkipEol",A="FL:::/Compiler/Lex.CPP.Z,269",BI=246$
$LK,"ICFlagBranch",A="FL:::/Compiler/BackB.CPP.Z,785",BI=247$
$LK,"SLASH_OP_FSUBR",A="FL:::/Compiler/BackLib.CPP.Z,266"$
$LK,"ICFPreIncDec",A="FL:::/Compiler/BackFB.CPP.Z,657",BI=248$
$LK,"ICFPreIncDec",A="FL:::/Compiler/BackFB.CPP.Z,660",BI=248$
$LK,"ExeFile",A="FL:::/Compiler/CMain.CPP.Z,616",BI=249$
$LK,"COCMiscNew",A="FL:::/Compiler/PrsLib.CPP.Z,143",BI=250$
$LK,"cmp_templates_dont_pop",A="FL:::/Compiler/CExts.CPP.Z,43"$
@@ -323,120 +323,106 @@ $LK,"COCGoToLabelFind",A="FL:::/Compiler/PrsLib.CPP.Z,152",BI=254$
$LK,"OptMVCompare",A="FL:::/Compiler/OptLib.CPP.Z,556",BI=255$
$LK,"ICToBool",A="FL:::/Compiler/BackB.CPP.Z,378",BI=256$
$LK,"PrsFunJoin",A="FL:::/Compiler/PrsStmt.CPP.Z,68",BI=257$
$LK,"PrsNoUnusedWarn",A="FL:::/Compiler/PrsStmt.CPP.Z,780",BI=258$
$LK,"PrsNoUnusedWarn",A="FL:::/Compiler/PrsStmt.CPP.Z,787",BI=258$
$LK,"OptFixSizeOf",A="FL:::/Compiler/OptLib.CPP.Z,485",BI=259$
$LK,"cmp_templates_dont_push",A="FL:::/Compiler/CExts.CPP.Z,45"$
$LK,"cmp_templates_dont_push_pop",A="FL:::/Compiler/CExts.CPP.Z,46"$
$LK,"LexAttachDoc",A="FL:::/Compiler/Lex.CPP.Z,330",BI=260$
$LK,"PrsStreamBlk",A="FL:::/Compiler/PrsStmt.CPP.Z,794",BI=261$
$LK,"PrsStreamBlk",A="FL:::/Compiler/PrsStmt.CPP.Z,801",BI=261$
$LK,"cmp_templates_dont_push2",A="FL:::/Compiler/CExts.CPP.Z,44"$
$LK,"InstEntryFind",A="FL:::/Compiler/UAsm.CPP.Z,66",BI=262$
$LK,"PrsDotDotDot",A="FL:::/Compiler/PrsVar.CPP.Z,381",BI=263$
$LK,"ICMulEqu",A="FL:::/Compiler/BackA.CPP.Z,344",BI=264$
$LK,"AsmPrsInsFlags",A="FL:::/Compiler/AsmInit.CPP.Z,1",BI=265$
H2@÷#÷#$$!$&$Q$S$†$p$–$�$®$Á$¨+kk$k,k7kCkNkmkPkykkk¦k³kŞk÷k÷k!lCl[lHlgl�lzl¡l®lÙlÙlàlşlmmmmH<Jæõæõö
ööööö5öQöQö[ö|ªÅşùşù(ú*ú1ú7ú=ú?úEúKúRú_úlúú�úœú¡ú£ú¨ú²úÂúÕúåúûû8àààà à(à/à1à6àd`µöÓöÓÔÔ%Ô'Ô4Ô6ÔBÔBÔOÔQÔ^Ô`ÔlÔlÔ‚Ô‹Ô‹Ô–Ô�Ô¬Ô·Ô½ÔÂÔÄÔĞÔ×ÔæÔñÔ÷ÔüÔşÔ
Õ:Õ`ÕpÕ€Õ�Õ’Õ¢Õ²ÕÂÕÂÕÇÕáÕèÕïÕïÕïÕïÕöÕ ÖÖÖ$Ö*Ö.Ö.Ö.Ö[ÖbÖxÖ„ÖŠÖ�Ö–Ö˜Ö˜Ö¦ÖDæּֿ֦ÖÂÖÏÖÕÖâÖåÖèÖîÖğÖúÖ,cj°‡°‡¾‡È‡Ó‡Ş‡ä‡ê‡ jnŞŞì
P o6o6}6Œ6¤6ª6¼6¼6Ç6Ğ6Ö6İ6ã6 œ;^şEşEF
F#F6FIFfF‡F�F¡FÈFßFßFGGG&G-G_GlGpGxGxG‹G›GŸG£G Œ×öNNnvzˆ�””Á×ëù"'5T]movv||Œ |1W#W#m#v#�#š#š#�#¬#²#»#½#Ã#Ì#Î#Ô#Ş#å#è#è#ò#0 'ø…ø…†&†,†2†2†8†„•²H�H�\�c�j�n�’�¥�¬�½�â�í�ø�ú��*�5�@�B�I�R�T�_�f���("–ܖܥܸÜĞÜĞÜÖÜ >Ü>ÜMÜ`Üf܃˜¯˜¯½¯Ä¯Û¯ç¯ò¯°°°°5°P°\°c°i°u°°†°�°‘°“°™°¥°¯°¶°½°Á°Á°Ë°Ğ°Û°í°ş°ï°í°±?±K±R±X±d±n±u±|±€±‚±ˆ±”±�±¥±¬±°±°±½±Ë±Û±í±ş±ï±í±²?²K²R²X²d²n²u²|²€²‚²ˆ²”²�²¥²¬²°²°²º²Ê²Ü²í²Ş²Ü² ³³³&³0³7³>³B³D³J³V³`³g³n³r³r³|³Š³“³¬³¸³¼³¼³¿³È³>´ì–{–{³{Q¡»{Í{é{ô{| ||&|.|1|?|k|k|€|‚|‚|�|–|š|§|§|³|»|¿|Ì|Ì|Ì|è|ó|}} }!}0}5};}F}K}K}P}h}w}|}‚}�}’}’} }©}µ}½}Å}Í}Ğ}Ö}Û}ä}ö}ÿ}~ ~ ~%~-~5~8~>~>~C~C~C~I~L~S~^~s~˜~¯~¼~Ä~Ì~Ø~ä~ê~ñ~ú~ş~   -==JJRZcrww~‰�—�¨­­¼ÇÙßçíòı€€€#€(€(€<€B€M€S€U€e€k€k€�€´€¹€¹€Í€Ó€é€ú€���$�4�<�D�J�O�O�c�i����–�›�´�º�Ê�Ò�Ú�à�å�å�û�‚‚(‚.‚3‚B‚H‚Y‚a‚i‚o‚v‚{‚{‚‘‚—‚­‚¾‚ĂƂՂۂå‚í‚õ‚û‚ƒƒƒƒƒ.ƒ>ƒ>ƒCƒCƒQƒYƒjƒ}ƒ„ƒŠƒ’ƒ˜ƒ¨ƒ®ƒ¶ƒ¼ƒ¼ƒ¼ƒÁƒÁƒÁƒÁƒÁƒàƒìƒñƒñƒ„„„$„/„:„?„?„U„[„q„‚„ˆ„�„Ÿ„¥„ª„Äá„á„æ„æ„ò„ú„ı„… ………2…:…B…R…X…^…^…o…�…�…’…’…�…¦…©…°…¶…»…»…Û…ã…ó…ù…††-†5†M†U†X†_†e†}†…†�†¥†¨†¯†µ†µ†µ†Ô†ä†ğ†ø†û†‡‡‡'‡3‡N‡V‡Y‡`‡f‡~‡Ї¥‡­‡°‡·‡½‡½‡½‡½‡‡‡ˇÛ‡ñ‡÷‡ˆ"ˆ(ˆ-ˆ?ˆEˆJˆfˆlˆxˆ€ˆƒˆŠˆ�ˆ¹ˆÁˆш׈ވވވãˆãˆìˆ‰‰ ‰8‰K‰Q‰V‰�‰‡‰š‰щã‰ÿ‰Š ŠŠŠ,Š8ŠDŠOŠOŠTŠTŠnŠzІББЖЖамŠÈŠÓŠÓŠØŠØŠîŠôŠ‹‹ ‹‹#‹(‹7‹C‹O‹U‹[‹b‹u‹€‹‰‹•‹�‹ ‹¦‹¬‹±‹Å‹Ô‹Ü‹ô‹ü‹ÿ‹Œ Œ#Œ+ŒKŒeŒmŒpŒvŒ|Œ|Œ�Œ–Œ¢ŒªŒ­Œ´ŒºŒ¿ŒÑŒàŒèŒ�� ���0�8�W�q�y�|�ƒ�‰�‰�™�¢�®��¹�¿�Å�Ê�Ş�í�õ���� �&�>�F�h�„�Œ���•�›�›�¬�µ�Á�É�Ì�Ó�Ù�Ş�ğ�ÿ��"�*�-�4�:�R�Z�|�™�¡�¤�«�±�±�±�±�±���Ì�Ò�Ş�ä�é�û���� �)�5�=�@�G�M�R�d�s�{�“�›���¥�«�Ã�Ë�ê�‘ ‘‘‘‘‘‘-‘6‘B‘J‘M‘T‘Z‘_‘q‘€‘Œ‘§‘¯‘²‘¹‘¿‘בã‘’"’*’-’4’:’:’:’:’:’?’?’R’m’s’~’ƒ’ƒ’–’¬’²’½’¿’¿’Ò’õ’û’“““!“2“7“I“Y“Y“^“^“q“‡“�“›“ª“¯“¯““ؓޓì“û“””””9”Q”Q”{”�”†”’”›”ª”ª”¯”¯”Ŕ˔蔕•*•0•5•A•J•Y•Y•^•^•t•z•—•¯•¯•Ù•ß•ä•ğ•ù•–– – –#–)–F–^–^–ˆ–�–�–œ–¥–°–°–°–°–µ–ÖÌ–İ–ß–ñ–ş–ş–ş–——#—G—S—T—Y—n—‹—›—¿—Ï—Õ—Õ—Õ—Ú—ß—ô—˜E˜U˜[˜]˜b˜s˜‚˜´˜¼˜˜ĘɘИИÙ˜ë˜ş˜™™™™ ™/™8™C™E™N™Y™Y™z™�™‡™�™š™ ™°™¶™¾™É™Ï™Ï™Ô™Ù™à™ç™î™õ™ş™ š š šššš$š)š)š;šFšNšVš\š\š\šašašlš}š€šŒš•š¡š¨š®š³š³š¾šÏšÒšŞšçšóšúš›››››
››››››&›/›2›2›=›?›Q›X›^›m›x›ƒ›‰›’›–›–›¢›«›®›®›¹›»›Í›Ô›Ú›â›í›ø›ş›œ œœœœœ!œ#œ.œ2œ;œ>œ>œIœKœcœjœuœ€œƒœ‰œ�œ�œ•œ™œ™œ¥œ®œ±œ±œ¼œ¾œĞœלİœìœ÷œ�����!�*�-�-�8�:�L�S�Y�a�l�w�}�‡�Š�����–��� �¢�­�±�º�½�½�È�Ê�â�é�ô�ÿ��� � � �#�#�/�8�;�;�F�H�Z�a�g�y�„���•�š�š�¥�ª�ª�µ�º�º�Å�È�Ì�Ó�Ø�İ�â�â�ö�û�û�Ÿ ŸŸ%Ÿ)Ÿ=ŸDŸHŸHŸUŸaŸiŸoŸŸƒŸ”Ÿ¦Ÿ±ŸµŸµŸŸÊŸÒŸØŸØŸØŸØŸØŸÚŸÚŸèŸïŸüŸ                                                                                                             / 7 C C d r Š Œ ˜ ¥ ¥ È Õ à é ò ı ¡¡¡¡¡#¡A¡M¡M¡|£x¿Ù_4_4q4s4w4€4Œ4˜4­4­4Ù4İ4â4î45 5555$5.5°›Ã�Œ�Œ¤Œ«Œ¼ŒÁŒÖŒÃŒâŒèŒèŒôŒ �ùŒ���+�0�E�2�Q�T�T�`�u�b���‡�‡�š�­�À�Ó�æ�ğ�„�.x.xLx^xdxkxrxtxwx~x…x…x¡x¥x«x«xÃx×xèxèxğxy4yUyZy{y€yŒy—yœy©y¬yãyôyùyÿyzz
zz z#z+z4zOzoz†z™z�z¢zÄz×zÜzóz{ {{1{L{l{{„{•{š{�{Ÿ{¥{«{¼{Á{Ç{Ï{Ï{Ù{â{ù{ |||7|R|r|…|Š|¥|Å|Ü|ï|ô|ø|}-}-}H}H}H}V}n}p}p}p}~}–}˜}˜}¦}¾}¾}Ğ}Ğ}Ù}æ}ü}~6~=~G~Z~^~^~^~e~k~…~Œ~–~®~°~¶~Ğ~×~á~ï~ú~ú~H‰—PƒPƒgƒ}ƒ�ƒ”ƒ«ƒÆƒØƒÜƒ „Líü^�^�r�~�”�€� �¢�µ�È�Ó�Ş�æ�4IR~Ó~Ó‡Ó‡ÓŠÓ˜Ó¦Ó©Ó®Óä;ÖóÖóşóô ô6ôGôGôbôhômômôˆô�ô“ô“ôœôªô¶ô½ôÃôÈô õõõ"õ$õ$õ7õ=õ=õ=õMõBõ^õmõõ„õ„õ„õ‹õ’õ™õ®õµõÑõÑõãõĞL¼¢¢¢%¢0¢9¢A¢D¢K¢O¢X¢i¢m¢s¢�¢�¢«¢º¢¿¢Ë¢Ğ¢×¢ã¢è¢ë¢õ¢í¢££ £££-£6£<£<£J£M£a£j£s£z£~£ƒ£š£²£»£É£å£ñ£ñ£ ¤¤¤!¤=¤I¤Q¤d¤k¤¤ˆ¤�¤“¤�¤£¤ª¤Ç¤ô¤û¤ÿ¤¥ ¥¥¥1¥3¥D¥N¥Y¥c¥r¥�¥�¥�¥ ¥¨¥­¥/¦Xs…vHvH“H¤H±H»HÒHïH III*I0I3I?IŒ à_à_ğ_`` ` ` ` `(`(`/`I`Z`b`b`m`m`{`‹`‹`™`Ÿ`Ÿ`·`·`½`ã`(kqğ‡ğ‡ş‡
ˆˆ!ˆ'ˆ @Ua®æ®æ¼æÄæËæêæ÷æ÷æúæüæç $/4.İ.İ;İIİNİTİ!$).İİİ!İ&İ,İ"$#(ÖÜÖÜåÜôÜùÜÿÜ#4ğy__k{‘™£»ÀĞæîø  % 5 K S ] u � ‰ “ £ ¨ ¾ È Ò Ü æ ğ ú    " , 6 @ V ` j t ~ ˆ ’ œ ¦ ¼ Æ Ğ æ ğ ú !!!"!,!6!@!J!T!^!h!r!|!†!�!š!¤!®!¸!Â!Ì!Ö!à!ê!ô!ş!""""$¨DH™H™^™e™l™z™‹™�™Ÿ™¦™¬™¼™Ç™Ñ™Ü™ó™ö™ø™
šš š*š4š;šFš[šcšcšyšyšyš�š%$5:VİVİdİsİxİ~İ&¨Ek�š�š¦š­š´šÂšÓšåšçšîšôš›››$›;›>›@›R›Y›i›s›}›„›�›£›«›«›Á›Á›Á›Ö›'(&,0000&0,020(0_g¦G¦G¼GÏGŞGäGçGïG)  ß� � À È Î Û â ş       ( / ; F L V ] n n y ƒ ƒ • › « ± ½ ½ Ş ä ó ! !!!!!!#!%!%!%!6!@!E!E!Z!d!d!x!�!‡!�!£!¨!¯!Â!Æ!Æ!Î!Ô!Ú!ä!ë!ò!û! " "2"6"<"B"Q"d"j"n"t"z"€"€"‚"†"Œ"’"˜"�"�"�"�"È"Ù"Ù"ğ"ı"# ##>#>#D#G#K#Q#Q#c#t#‰#�#¥#¶#º#Ë#Ï#Õ#î#ğ#ö#$$$/$5$@$c$n$t$z$€$‰$�$¤$²$º$¾$Ï$Ó$Ù$ò$ô$ú$% %%3%9%?%E%N%T%q%d%‹%”%š%š%¯%´%´%»%Â%Ô%Ù%Ù%Ù%ó%õ%&&+&1&9&=&D&g&m&s&&–&�&£&®&³&³&º&¾&Å&Ó&Õ&İ&â&ê&õ&û&' ''' '$'3'N'^'k'z'–'˜'´'´'»'Ğ'Õ'Ş'ë'ğ'ö'û'û'(( (((%()(-(7(C(J(N(V(^(f(u(ƒ(ˆ(”(”(œ(œ(¿(¿(Í(Ó(Ø(Ü(á(á(á(á(ç(é(é( ))) )5)7)7)7)B)B)B)G)p**4+tFÅFÅ`ÅdÅ|ńŌŖŚšŧŻÅÃÅÈÅËÅÖÅáÅéÅôÅÿÅÆÆÆ%Æ0Æ;Æ=ÆHÆSÆUÆaÆjÆjƀƊơƧƭƾÆÄÆÍÆßÆåÆåÆíÆñÆüÆÇÇÇ"Ç0Ç2Ç6ÇEÇEÇEÇVÇVÇ[ÇmÇsÇáÇ+Ô@6á6áLáSáVázázá—áªá½áĞáÕáÕáóáââ'â/â/â1â1â1âDâFâFâFâMâ`âsâsâsâ†â‘â¤âºâ¿âÃâÊâßâòâùâùâüâ!ã,LAPÇ$Ç$Õ$æ$ò$ %%2%4%O%j%j%r%y% %-P~�xˆxˆ†ˆ“ˆ¡ˆ³ˆ¾ˆÌˆÙˆçˆùˆ‰‰‰‰.4
66%616B6T6]6g6m6/|¼Wîî&1WW`bbi�——¦µÑÜÜèïÿ#.0IOZj|…�•›¢ÇÌÚããêù %9@GLW]e‹”› «·ÆÚßçó   # + ; M S \ \ k q … � � ­ ¿ È Ø ë ó 
(
?
C
O
f
‚
”
š
¥
±
Á
Ñ
Ö
ß
ß
ñ
õ
  4 F L W c s ƒ • › ›   ¢ ¢ § §  ¼   Æ ?0�ÄäşÖşÖ×&×*×.×5×<×K×V×\×a×c×o×v×~ׄ׊×�×�×�×¤×¬×²×¸×º×º×Æ×18 ?/?/M/S/_/j/{/…/Œ/’/2@}‰öçöçèèè5èBèBèEèGèMè3ğh 66\ow~…‹�”›��°°ÃÎê#+0AWgy~˜°´´¹åú>FOW\m�¡£½ÕÙÙõ%.6;Lbr„‰£»¿ÒÒÒê×
÷#)AY^s�·¿ÈĞÕæø6NRRn–�§¯´ÅÛëı48KKKPp�œ¢ºÒÒÒŞäïú 3JaxxŒ¨¨¨ÉÙççğû $ 3 : J L R i x q � Ÿ º º Ó 4D}ŠffvŠ“™««¯²º5\Ob‡‡(‡7‡@‡I‡M‡Q‡]‡b‡g‡g‡x‡|‡ƒ‡›‡�‡ª‡60ıŞßŞßçßìßõßüßşßà7Ğ1>>\cju}––ªÃÃÎÒİä'5KOTf�¥ª²»âøüü I(Urr‘œ¢¸ÉÎà $,02Yos�·¿ÄÈÍŞô4EI[[[[`|¼›Èåğö ">fnsw|�Ÿ­ÁÃÜíññ+BGOSU|’–££££¼ÆÍà÷÷#11GWe|�”š°¿¸Ôäëù<eeer«°»ÁÌëò$2J`dt“¿¯Ëè.?DZpt�¸ÀÅÉÎßõ5FJ\\\\a}œË»×ôÿ,1Mu}‚†‹œ®¼ĞÒëü 5KO\\\ou†™°°°ÌÜêê%9LQWm|u‘¡¯ÌÌèèõ58Do|2;ASSWZb9°Äìö�ö� ��$�)�>�+�J�P�P�\�t�a�€�ƒ�…�“�˜�­�š�¹�¼�¼�È�İ�Ê�é�ï�ï���(�;�N�X�:<‹–¾¾Îßèîòı;”)æéæéîéòéşéêê!ê,ê>êIêTêcêtê{ê”ê˜ê¥ê¥ê¯ê¶êÉêÒêàêôêëë2ë<d(=8†8†D†X†[†o†w†{†…†�†—†š† †=$t¹ÀEÀEäEçEëEøEF FF F*FRFRF^F`F`FlFqFqF}F‚F‚F�F“F“FŸF¤F¤F°FµFµFÁFÆFÆFÒF×F×F×FÚFÚFóFGG%G%G'G'G3G9G>G>GDGPGPG[GgGtG‰G‘G—G—G¨G¨G±G´GH>è w~£~£›£££¦£´££×£à£ø£¤ ¤+¤<¤@¤R¤U¤`¤i¤u¤ˆ¤¹¤®¤”¤ɤݤî¤ú¤¥&¥8¥\¥m¥o¥�¥v¥«¥«¥®¥³¥¶¥¶¥½¥Ô¥Û¥è¥í¥ü¥ ¦¦¦0¦4¦a¦a¦y¦~¦~¦�¦–¦¦¦°¦À¦ʦÚ¦æ¦ë¦ë¦û¦§§§-§7§G§S§X§X§X§z§ˆ§’§—§¤§¹§¹§¾§ȧ×§ܧâ§ç§ç§ì§ö§¨
¨¨¨¨¨!¨&¨&¨5¨H¨T¨a¨m¨€¨ˆ¨�¨—¨®¨¨Ó¨à¨å¨ı¨©'©4©<©O©W©]©f©o©o©t©t©t©t©t©€©€©€©‰©¢©·©¿©Ú©ë©ø©ú©ªªªªª,ª1ª1ª8ªFªKªcªoª�ª�ª“ª¢ª¦ª¯ª¸ªÕªáªçªíª«««=«N«[«]«k«k«p«p«w«…«Š«�«©«µ«»«¿«È«Í«Í«Í«Í«Í«å«ê«ê«ê«ê«ê«û«û«û«û«û«û«û«û«û«û«¬¬2¬:¬U¬f¬s¬u¬‰¬•¬š¬š¬š¬£¬½¬ɬάğ¬ü¬ü¬­­­­­­­­­­­­,­7­<­<­G­Y­q­ƒ­¤­Ä­Ï­à­å­å­å­î­®®*®.®F®V®^®f®q®›®¤®¨®À®Ğ®Ğ®Ğ®Ğ®Ğ®ò®+¯4¯8¯>¯C¯L¯U¯Z¯Z¯Z¯Z¯i¯}¯›¯¦¯«¯±¯¶¯¶¯ɯݯ°°°°°!°!°0°D°b°m°r°x°}°}°�°¤°ʰÕ°ݰã°ã°è°è°è°ñ°
± ±'±B±S±`±b±q±s±s±s±s±s±‡±‡±‡±‡±‡±‡±‡±‡±‡±‡±‡±‡±‡±‡±‡±‡±–±¥±°±²±²±»±½±½±ѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱѱÓ±Ó±ê±ò±ş±ş±²²²2²G²V²b²x²’²•²Ÿ²«²Ѳñ²³5³7³J³x³P³“³“³–³¦³®³ɳÚ³ݳ÷³´´)´)´T´W´f´z´›´¬´È´´´ä´ö´µGµEµ:µ/µ µUµUµUµXµ]µ`µzµˆµ¶µصص)¶J¶[¶w¶c¶“¶“¶±¶ä¶â¶×¶̶½¶ò¶ò¶ò¶õ¶ú¶ú¶··2·>·“º?°«ÓfÀfÀ|À€À‹À’À�À±À±À¼ÀÍÀÔÀáÀíÀúÀÁÁÁÁ!Á)Á9ÁGÁVÁaÁtÁtÁ‡Á‡Á�ÁÉÁÉÁİÁßÁßÁéÁñÁñÁûÁ Â&Â+Â+Â/Â7Â;ÂAÂFÂFÂRÂgÂwÂ�”™¡¡¦¦­¹ÂÎÂŞÂèÂğÂö ÃÃÃÃÃ!Ã(Ã3Ã[ÃfÃuÃÇÃ�ßåêêêêêêêêêõÃÁÃÎÃŞÃäÃìÃÿÃÄ ÄÄÄÄÄÄ&Ä.Ä7Ä?ÄDÄLÄQÄXÄcċĖÄ�Ä­Ä·ÄÉÄÎÄÔÄÙÄÙÄàÄòÄúÄ ÅÅÅ2Å4Å?ÅGÅ\Å\ÅdÅxŀŇÅ�őŕŤũŵÅËÅ×ÅßÅôÅÆÆÆÆ!Æ!Æ!ÆBÆ\ÆaÆiÆxƀƈÆ�ƢƭƵÆÊÆÏÆÏÆÛÆñÆıÆÇÇ&Ç+Ç7ÇBÇGÇGÇGÇGÇGÇGÇRÇRÇRÇRÇRÇRÇRÇRÇRÇRÇRÇRÇ]Ç}ǚǪǰǸÇËÇĞÇØÇàÇâÇêÇıÇÈ ÈÈÈ5È=ÈFÈNÈVÈ[È`ÈgÈrÈšÈ¥È­È¼ÈÆÈßÈäÈìÈñÈñÈñÈúÈÉÉÉÉ0É2ÉDÉVÉVÉVÉaÉfɃɈɈɑɖɖɖɖɖɖɖɖɖɖɖɖɖɖɖɖɡɭɹÉÙÉìÉôÉÊÊ!Ê(Ê5Ê=ÊFÊNÊUÊZÊZÊbÊjʆÊ�ʑʓʣʭʭʭʯÊÂÊÓÊÖÊÙÊáÊæÊæÊïÊôÊüÊËË)Ë0Ë5ËMËWËrˋ˓ˠ˹ËÀËÀËÅËÅËÅËÅËÅËÅËÅËÍËØËãËòË÷Ë÷ËÿËÌÌÌÌÌÌ"Ì"Ì2Ì7Ì7Ì7ÌCÌJÌPÌ`ÌqÌ�̠̦̮ÌÃÌÊÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÒÌÔÌÔÌïÌùÌÍÍ ÍÍÍ:ÍGÍGÍGÍKÍVÍtÍ‚ÍzÏ@ü|~Ï~ϔϟϦϱϼÏÓÏŞÏåÏõÏĞĞĞ.ĞHĞOĞXĞ_ĞbĞnĞwĞ~Ğ�ІМЦиоĞÊĞßĞæĞîĞúĞÑÑÑÑ$Ñ2Ñ<Ñ?ÑMÑWÑZÑlÑqÑvцщÑ�Ñ�ѡѥѮѶÑÈÑĞÑĞÑĞÑæÑğÑÒÒÒ)Ò0Ò8ÒJÒPÒ_ÒpÒpÒwÒwÒwÒ…Ò“Ò�Ò Ò®Ò¸Ò»ÒÍÒÒÒ×ÒçÒêÒïÒÿÒÓÓÓÓ)Ó1Ó1Ó=ÓJÓRÓRÓUÓ`Ó~ÓŒÓÕÓAhoÅ6Ø6ØPØcØjØqØ|Ø�ؒ؛آإصØÃØÎØÙØÜØòØşØÙÙ)Ù4Ù?ÙJÙaÙmلٌٕÙ�ÙªÙÅÙÈÙÎÙÓÙæÙìÙôÙÚ ÚÚÚ#Ú5ÚBÚUÚ[ÚcÚvÚ|Ú„Ú„Ú­Ú²ÚÑÚÔÚÔÚÛÚèÚìÚ÷ÚÛÛ-ÛMÛiÛ}Û…Û�Û®ÛÂÛÂÛ8ÜB >+>+H+P+U+CÉÇnSnS‹S–S©S–SÃSÑSÑSáSêSñSõSşSşST
T(T4T@TFTQTsTsT†T‘T—T�T£T£T¶TÁTÌTÓTÛTèTèTúTÿTÿTUUUU'U,U?UEULUaUuUuUzUzUŠU�U�U”U›U£UªU¬U´U»U»UÊUĞUİUäUçU V VV V+V2V4VHVWV\VaVaVaVtVyVˆV�V–V«V¿V¿VÄVÄVÌVâVçVûVWWWW"W4WCWVWZWiWwW…W”W±W¼WÁWĞWäWëWòWXXX"X$X2X?XOXVXkXrX~X�X¦X¨X´X¿XÁXÁXÌXàXíXõX÷X YY$Y4Y@YaYhYtY’Y’Y’YšY¥Y©Y±YµY½YÄYÔYßYùYşYZZZ!Z&Z&Z5ZBZPZ[ZfZtZzZ€Z†Z�Z•Z¤Z±Z¹ZÅZÓZêZìZõZ[[[,[2[8[>[G[X[[‡[‘[�[¶[½[É[Ø[í[í[ú[ÿ[\\\\\Ó\DD�šŒŒ2Œ>ŒTŒ@Œ`ŒbŒtŒ†Œ�ŒEìˆÿöYöYZ"ZUZdZzZ�Z£Z§Z¯Z¸ZÇZÎZ×ZÜZñZ[![)[+[J[R[a[h[t[y[€[ˆ[�[�[¬[±[Ç[³[Ó[Ù[Ù[á[ê[ù[\ \!\@\G\G\G\[\o\s\�\”\Œ\¬\±\¼\Ã\Ë\Ñ\Ó\ï\ô\
]ö\]]]8]=]V]B]b]h]m]‰]�]¤]�]°]¶]½]Å]Ë]Í]é]î]^ğ]^^^^^'^'^1^1^I^y^�^‘^Ÿ^²^ª^Ê^Ê^Ü^FüE€¾İ¾İİİùİşİ Ş=ŞLŞjŞ~Ş–Ş�Ş¢ŞÃŞáŞğŞ ßß5ß9ß9ß=ßBßGßQßTß^ßdß�߄߄߄߉ß�߫߹ßÅßÎßâßêßóßàà&à/àCàCàRàWàWàeàGl¬ÃvDvD„D�D‹D½DªDÉDŞDËDıDêD EE E*E,E7EBEBEaEgEHP‡—óó*ó7óFóRóXó‚ó˜ó„ó¯ó¤óÇóÏóIŒg†¦ñ¦ñØñûñûñòò1òEòJòJòWò_ògò|òˆò™ò�ò¯òÃòÈòÊòÊòÊòãòûòûòóJP�­6767_7a7o7u7“7¢7±7À7Î7Ù7Ü7ì7Kì8>0>0h0k0n0t0y0�0§0¾0Ğ0ö01 191P1b1o1‚1•1š1¢1¬1´1´1»1Ä1Ä1Ï1÷12202I2K2e2k2„2�2¥2°2°2º2º2Ì2
3 313L$ty†d†d±dšd»dÃdMLu„æÇæÇøÇ ÈÈ/È6È>ÈNÈVÈgÈmÈŸÈNTHY�b�b¢b¤b­b¶bÄbÉbÒbÕbÚbèbòbõbÿbO¨!Gè`è`ø`aa!a-a9aEaQahahawa‚a‹a’a›a²aÅaÊaÜaëa÷a b bb2b2b4bGbIbcbobrb‰bPxîˆ0m0mImTmdm­m´mÈmÏm×mßmèmğmømúmn
nnn7nOnXnXn�n·nÀnânünoCoOoqosozo�o�o¤o½oäoıo$p=pdp}p¤p½päpıp$q$q3q@qEqEqTqaqfqfqmqxqŠq£q¼qÕq×q×q×qŞqŞqëqğqğqğqrr"r7rqrxrxrxr€r�r«rÉrÒrÛrèrörs,s,s,s?sMsis‡s‡s‡s’s•sÂsÄsÛsásòsûsıs
t ttt(t(tLtNtUtftotqtt�t�t‘tŸtŸt¿t¿t¿t¿tÌtßtòtu u9uAuEuMuQu_umuouwu{uu‡u•u£u£u½uÈuŞuğuv'v2v<vCv\vhvovˆvˆvšvŸv¡v§v¸vÉvØvßvğvùvûv w www)w)w)wMwMwjwqwxw{w‡wŠw˜wœwªw®w¼wÀwÀwÙwàwåwówx x!xAxTxcxextxvx…x�x�x�x¦x¼xÃxèxíxyFyKyYy[yiyryŒy�y�y—y¨y±y³yÁyÃyÑyÓyáyáyzzzzz z z z+zGzlz…zŠzŠzŠz¬z±z±z±zÑzÖzÖzÖzõzúzúz{{{ { { {{{{{;{Q{v{’{¦{«{«{Æ{Ó{Õ{ä{í{| | || |/|1|1|9|4|r|r|r|‘|‘|‘|²|·|·|·|Ù|Ş|Ş|Ş|ş|}}}"}'}'}B}P}R}a}j}„}†}†}‹}†}¬}®}®}¶}±}ï}ï}ï}ú}ú}$~$~N~f~~~‰~Ÿ~¯~Ä~Ü~ğ~
 7NUMƒQ|.ää2äFäQäfä„ä�ä­ä­ä­äºäÒäÔäÔäÔäáäùäûäûä åå.å.å?åSåRçeÆ×Æ×à×é× Ø ØØØ Ø'Ø/Ø5ØBØBØ_ØdØdØjØoØoØuØzØz؀؅؅Ø�ذضػػØÄØäØäØäØëØíØíØôØöØöØüØüØÙÙÙ Ù ÙÙÙÙÙÙ!Ù!Ù)Ù/Ù5Ù=Ù=Ù=Ù=ÙIÙQÙYÙaÙiÙqÙyÙٗ٦ٰٳٳٽÙÃÙÉÙÉÙÍÙÕÙÜÙàÙèÙğÙöÙşÙÚ ÚÚÚ Ú*Ú0Ú=ÚIÚOÚWÚ[ÚbÚjÚrÚvÚ|Ú„Ú‹Ú“Ú›ÚŸÚ¥Ú°ÚµÚËÚÜÚáÚäÚŠÛSL˜§ „ „9„;„B„X„h„n„†„�„¡„³„û„TÔ*[6ë6ëJë_ënërë€ë†ë•ë•ë¤ë¯ëºëÅëÌëÜëóëì ììì%ì%ì;ì=ìGìhìsìuì�ì’ì ì¥ì¥ì¬ì¸ìÀìÓì=íU$nsFdFdqdZd{dƒdVl  NHNH\HvHcH•H‚H¡H¶H£HÕHÂHáHïH÷HIIIII9I?IW,>Ò>ÒGÒMÒUÒdÒsÒxÒXTÒ�¡�¡¿¡Ñ¡Ü¡å¡¢¢ ¢9¢F¢F¢P¢P¢W¢j¢h¢x¢x¢ƒ¢�¢“¢™¢œ¢ª¢±¢É¢Ğ¢Ó¢å¢ê¢õ¢££5£I£f£ˆ£�£“£™£¤£±£Ï£·£Ø£Ü£â£ê£ï£¤÷£¤¤"¤*¤/¤/¤<¤B¤]¤I¤i¤m¤s¤{¤€¤€¤¡¤¥¤«¤³¤¤ݤɤé¤í¤ó¤û¤¥¥!¥%¥+¥3¥3¥8¥E¥c¥K¥l¥p¥v¥~¥�¥†¥§¥«¥±¥¹¥¹¥Æ¥ä¥Ì¥í¥ñ¥÷¥ÿ¥ ¦¦(¦,¦2¦:¦:¦:¦P¦P¦P¦P¦[¦e¦n¦�¦š¦¨¦­¦»¦ϦÔ¦Ô¦ߦç¦ï¦ø¦§§%§4§C§]§b§b§m§u§‚§�§š§¥§¿§ѧã§î§ó§ó§ş§¨!¨)¨5¨C¨H¨V¨j¨j¨r¨j¨Ѝ�¨�¨�¨£¨£¨²¨·¨·¨Ȩͨͨިã¨ã¨ö¨©
©
©©,©1©?©1©S©X©f©X©z©©�©©¡©¦©´©¦©È©Í©Í©ê©ï©ªª$ªª8ª=ª=ªZª_ª�ª†ª”ª†ª¨ª­ª­ªʪϪñªöª«öª«««:«?«a«f«t«f«ˆ«�«�«¨«­«­«È«Í«Í«è«í«í«¬ ¬ ¬(¬-¬-¬H¬M¬M¬h¬m¬m¬ˆ¬�¬�¬�¬£¬£¬´¬¹¬¹¬ŬЬå¬ê¬ê¬ö¬­­7­>­H­M­^­h­}­ˆ­�­�­©­±­¶­¶­º­¾­Å­Ï­Ù­Ù­ì­ñ­ñ­ñ­õ­ ®®®7®<®<®D®X®a®{®ˆ®“®�®©®»®Ç®Ğ®Õ®Õ®Õ®æ®¯¯¯#¯(¯3¯;¯@¯@¯K¯S¯\¯g¯w¯�¯§¯»¯À¯À¯˯ޯè¯ó¯° °.°3°A°E°J°J°Z°e°m°r°}°а•°¯°Á°Ó°ްã°î°ö°û°±±±8±J±\±\±\±\±a±f±f±r±ƒ±ƒ±©±«±DZDZѱå±ï±ñ±ı±²"²3²=²H²k²|²�²�²©²Á²ѲÖ²Ö²á²æ²æ²î²ù²ş²ş²³³³³³<³&³T³Y³Y³a³³i³—³œ³°³œ³ȳͳͳڳ߳߳ç³ì³ì³ø³ ´´ ´ ´4´ ´L´Q´Q´Y´^´^´q´v´v´‰´�´�´¨´¸´½´½´×´ç´ì´ì´µµµµ5µEµJµaµJµyµ~µ~µ‰µ�µʵ¸µ¦µ�µâµçµ#¶ÿµçµ;¶@¶@¶O¶_¶d¶d¶s¶ƒ¶ˆ¶ˆ¶—¶¥¶ª¶Ò¶À¶ª¶ê¶ï¶··ï¶/·4·\·J·4·t·y·y·–·€·À·Ğ·Õ·Õ·ğ·Ü·¸*¸/¸/¸;¸@¸@¸L¸Q¸Q¸d¸t¸y¸y¸Œ¸œ¸¡¸¡¸´¸ĸɸɸܸì¸ñ¸ñ¸ù¸ş¸ş¸¹ ¹ ¹¹¹¹ ¹%¹%¹8¹=¹=¹P¹U¹£¹‘¹¹m¹U¹°¹µ¹ºñ¹ß¹͹µ¹ººº$º?ºDºDºUºpºuºuº†º”º™º™º¡º¦º¦º®º³º³º»ºÀºÀºøºæºÔºǺ»2»7»7»o»]»K»>»�»©»®»à»λÆ»®»ø»ı»/¼¼¼ı»G¼L¼f¼P¼L¼~¼ƒ¼ ¼мƒ¼¸¼½¼½¼ɼâ¼ò¼½½)½+½A½G½G½c½p½¡½ã½Ò½À½ï½÷½÷½÷½¾¾¾¾&¾0¾5¾@¾J¾O¾O¾i¾n¾n¾v¾{¾�¾{¾›¾¦¾«¾¿¾«¾˾Ö¾Û¾Û¾æ¾ô¾ù¾ù¾¿¿¿¿%¿*¿*¿;¿@¿@¿Z¿e¿j¿r¿j¿~¿ƒ¿—¿ƒ¿£¿¨¿°¿¨¿¼¿Á¿Õ¿Á¿á¿æ¿æ¿ú¿æ¿ÀÀÀ ÀÀ À*À/À/À;À/ÀNÀSÀSÀ_ÀSÀrÀwÀwÀƒÀwÀ–À›À¯À›À»ÀÇÀÒÀİÀâÀöÀâÀÁÁÁ$Á)Á=Á)ÁQÁIÁZÁ_Á_ÁgÁlÁlÁuÁzÁzÁƒÁˆÁˆÁ‘Á–Á–Á¡Á¦Á¦Á±Á¶Á¶ÁÁÁÆÁÆÁÑÁÖÁÖÁáÁæÁæÁñÁöÁöÁÂÂÂÂ&Â1Â<ÂGÂLÂLÂVÂ[Â[ÂeÂjÂjÂtÂyÂyƒˆˆÂ�••¢§§´¹¹¹¹¹ÂÁÂÆÂÆÂÎÂÓÂÓÂÛÂàÂàÂèÂíÂíÂõÂúÂÃúÂÃ+Ã0Ã0ÃBÃMÃmÃrÈÓìØøÃÃÃÎÃÓÃÓÃåÃğÃÄÄ+Ä6ÄOÄ;Ä[ÄfÄqÄvÄvĈēijĸÄÎÄÙÄòÄŞÄşÄ ÅÅÅÅ?Å+ÅKÅkÅpņőŖűÅ�ÅÑŽÅİÅóÅßÅÆÿÅ Æ*Æ/Æ/ÆUÆAÆaÆ�ƆƜƧƬÆÇƳÆçÆÓÆóÆ ÇõÆ)ÇÇ5Ç@ÇEÇEÇkÇWÇwǗǜDzǽÇÂÇİÇÉÇıÇéÇ È È È?È+ÈKÈVÈ[È[ÈjÈoÈoÈ~ȃȃȃȉÈ�È�È�ȘȚȚȤȱÈÑÈÓÈÓÈİÈİÈİÈİÈİÈßÈßÈöÈıÈÉÉÉÉ"É-É8ÉCÉNÉYÉSÉ|ÉtɔɢɜÉÅɽÉİÉİÉİÉæÉîÉÊÊÊ(Ê(Ê@ÊJÊ^ÊxÊxÊxʙʩʾÊĞÊàÊàÊËËË0Ë0Ë4Ë9Ë@ËPËoËoËsˊˑ˖˖˚˥˱˿ËìËõËÌÌGÌSÌXÌnÌ‚Ì�̡̜̯ÌËÌöÌÍ Í/Í1Í1Í5ÍTÍ_Í_ÍbÍp͛ͻͻͻ;ÍçÏY, ~Ò~ҌҒҖҥҴҺÒZ`àô.™.™D™f™s™w™†™Ÿ™£™©™¼™Ù™Û™Û™ šú™Û™+š5š[8cmÖcÖc÷cäcddd$d/d;dAd\\�”�œ�œ�œ œ«œ³œ¾œÉœÔœÖœìœìœşœ
���E�]ܳf¾é¾éğéùéê)ê)ê:êGêeêmêšêŸêÈêåêëë ë.ëTëYë‚ëœëÂëÙëßëãëüëì ìì"ìAìGìKìdìlì‹ì�ì¡ì©ìÈìÍìÕìÛìßìãìõìıì í í$í6í;íLíQícílí€í‹í°íàíî
î
î
îî!î/î<î^î^îuîzîzî‘î“î“î§î©î©îÀîÂîÂîÙîÛîÛîòîòîïïïï=ïOïTïTïTïTïlï�ï¢ïÀïÀïÀïÍïäïæïæïæïóï
ğ ğ ğğ0ğ0ğGğIğcğ�ğ�ğ�ğ…ğ‡ğ‡ğ‡ğŒğ�ğ�ğ“ğ“ğ�ğ¢ğ¢ğÀğÀğÀğÈğÊğÊğÊğÒğÔğÔğÜğÜğŞğåğñññ.ñ.ñ.ñ.ñ.ñAñYñañañ¤ñ^`
æTæTøTU"U>UKUbUuU€U•U‚U¡U©U´UÇUÀUßUåU_ôW¶=¶=Ô=×=é=ğ=÷=ü=ş=> >>">T>n>[>†>‹>¬>¬>¸>À>Ï> ??;?C?H?Q?\?d?k?Š?�?¯?±?Ğ?Û?ò?@@@@$@'@+@<@\@n@`$fÜfÜuÜ�Ü�Ü“Üaxb|çç&çHçHçRçWçWçvçƒç…ç…ç…ç…ç’çšç­çÁçÃçÃçËçŞçŞçğçb”"†/†/¨/²/¾/Ã/Ó/Ù/î/00 0-0D0L0V0e0m0z0‚0…0…0…0‡0–0 0©0±0´0Æ0cHϾ9¾9æ9ó9ö9ÿ9::3:J:\:Š:¦:À:Å:Ê:Õ:ì:ş: ;;4;H;M;X;x;};€;š;´;¼;Ä;É;ã;ı;< <<,<4<9<Y<^<a<{<•<�<¥<§<Á<Û<ã<ë<í<=====$=$=/=/=;=;=M=�=£=£=³=dd¤¹Ğ‰Ğ‰à‰ç‰ó‰ù‰ŠŠ"Š.ŠEŠRŠRŠUŠcŠsŠŠŠ�Š–Šeºû++-+2+F+u+�+�+˜+¨+¨+¿+Æ+İ+ä+í+,,,,0,0,F,F,\,\,r,r,ˆ,ˆ,�,�,´,´,Ë,Ë,â,â,ù,ù,--'-'->->-U-U-m-m-…-�-˜-©-´-Å-È-Ê-á-è-ô.f¬÷��¨®µ½ÅÈÓååù  "*@CQTW^bjxŠš�ìg(EK–’–’½’ª’É’Ø’à’hCNKNKqK†K‹K“K›K£K°K¶K¿KÅKÊKÒKîKôKöKøKLLLL#L)L+L-L:L:L:L?LHLPLYLaLcLkLsL{LˆL�L™L L°L»LÇLåLìL÷LıLMMMM.M>MFMIM¯Mi8-77070K0O0T0_0j0m0q0y0j¤õš6š6šTšxš~š…š…šŒš¬š±šÇšãšÏšïš›››%›/›M›_›h›p›z›“››Ÿ›±›»›ÛÈ›ã›Ï›œï›œ%œœEœ1œQœcœmœuœuœ~œ†œœœµœÇœÖœÚœÚœáœæœ�� ��,�,�,�0�<�]�k�u�‚�£�±�»�½�½�×�ê�ø�û�� �>�B�e�i�ˆ�Œ�Œ�Œ�’� �ª�Ã�É�Ô�à�â�ê�ğ� ŸŸ"Ÿ,ŸEŸHŸPŸ\Ÿ^ŸfŸiŸ‚Ÿ„Ÿ�Ÿ’ŸšŸ Ÿ¹ŸÑŸİŸòŸ÷Ÿ   1 B B M X p | ‘ – ¨ · Ğ á á ç ò ú ¡¡!¡kfä�Û�Û¨Û±ÛÑÛÑÛ×ÛßÛçÛïÛ÷ÛıÛ
Ü
ÜÜÜÜ#Ü(Ü(Ü.Ü3Ü3Ü9Ü>Ü>ÜVÜiÜoÜtÜtÜ}Ü�Ü�Ü�ܤܦܦܭܯܯܼܾܾܵܵÜÄÜÄÜËÜÍÜÍÜÓÜÓÜÚÜÚÜâÜèÜîÜöÜöÜöÜöÜİ
İİİ"İ*İ2İ8İPİ_İiİlİlİvİ|݂݂݆İ�İ•İ�İ¥İ©İ¯İ·İ¾İÆİÎİÒİØİãİéİöİŞŞŞŞŞ#Ş+Ş/Ş5Ş=ŞDŞLŞTŞXŞ^ŞiŞnބޕޚŞ�ŞCßl`'"'"0"7"K"_"d"‚"‡"¥"§"Å"Ç"Ş"ò"û"ı"#!#R#m|2ÍØ‘Ø‘î‘ÿ‘’!’2’C’V’^’l’Š’•’›’¨’½’½’Ğ’á’ç’ü’““,“1“9“A“G“_“r“}“�“‹“ “¦“¨“µ“·“ɓɓГؓê“ê“ù“”””(”,”8”<”H”L”X”\”\”o”‚”ˆ”Œ”–”𔩔­”¼”À”Ӕההההܔî”ı” ••5•E•U•Z•Z•Z•f•n•v•|•‘•™•§•±•¿•ŕǕǕǕǕǕǕǕǕǕӕەã•镺•–
–– –&–&–&–8–>–J–P–]–x–ˆ–”–š–§–¹–Ç–æ–@˜nÔ¼íPkPkbksk~k‰kŸk±kÉkÎk×kŞkëkòkll l llll3lMlcl{l€l‰l�l�l±lÌlÓlÕlØlİlmm*mo$hm×&×&å&ù&''p¤b‡�X�X²X¹XßXËXëXğX÷X÷XY-YY9Y_YKYkYpYwYwYY†Y‘YœY¤Y¬Y·YÂYÕYÍYíYõYq?|¦l¦lÂlÉlálùlmmmmm*m5mCmSmcmjmpm…mšmšm®m¶mÆmÓmâmïmnn n-n4n:nOndndnxn…n–n¦n¬n½n½nÃnÑnânïnÿnaor8¬şJşJKK KK+K4K9K>K@Ks88B00“0—0œ0§0±0´0¸0À0t0†�FIFI\IoI|I‚I…I�IuÜtşş +6?Oagms‰x�ª­µÇÍÒõ )/?EQ_dr‹™¢²´»ÀÈçõ:AKZ`flrˆ©½Éàëú#3AXdiw–¨¿ÈÎÙŞäû(79GVhhp“�Òv`Ëߘ˜4˜V˜c˜g˜v˜•˜™˜Ÿ˜²˜Ϙјј™ğ˜ј!™+™wT�Şfàfà~à†à“à³àÅàÌàÖàÜàâàæàêà á áááá*á.á[á_ádádákánásáá�á‘á¢á±áµá·áÆáÊáìáğáõáõá â ââ"â)âOâZâ^âcâ™â°â»â¿âĞâÛâßâáâìâğâğâ
ããããã ã9ã=ã=ã=ãAãdãxˆßıfãfãzã�ã�ã�ã’ã’ã™ã›ã›ã¢ã¤ã¤ã±ã³ã³ãÀãÇãÉãÉãÖãİãßãßã÷ãüãüã äy°‰±>e>eVe^eieÃe®e£e�eweÉeÛeËeöeöeff<fAfMfXfmfZfyff†f§f™f�f»f½fÖfÖfãf
g
g
ggz †*F´F´c´j´r´}´”´�´�´µ´¿´Ú´ğ´ş´µ"µ6µJµQµUµnµxµ‰µ–µ–µ�µ¤µ©µ®µ³µºµÁµÛµâµòµöµöµ+¶>¶Q¶Q¶W¶b¶i¶q¶|¶ƒ¶‹¶–¶��¨¶Æ¶Ê¶â¶Ó¶ı¶ı¶·
··!·/·6·:·<·N·N·N·`·h·�·œ·œ· ·µ·½·Í·Ø·í·ò·¸¸¸%¸0¸4¸9¸A¸E¸T¸V¸e¸g¸v¸x¸‡¸�¸’¸¦¸®¸¼¸Ã¸Ç¸×¸â¸ç¸¹ ¹¹"¹&¹.¹<¹C¹G¹O¹c¹k¹v¹z¹z¹z¹…¹�¹ ¹¬¹Â¹Ê¹Õ¹ä¹ì¹÷¹ü¹ººº º*º/ºAºIºTºTºTºTºbºqº�ºšº¢º²ºÂºàºäº»»ùº#»#»-»4»C»R»Z»h»o»s»u»„»Œ»š»¡»¥»¥»§»¹»¹»Ë»Ë»Ë»Ñ»İ»ï»÷»¼;¼I¼M¼k¼r¼y¼„¼š¼œ¼£¼¶¼¾¼Ì¼Ó¼×¼Ù¼ì¼ô¼½ ½ ½ ½ ½ ½½&½5½=½K½V½Z½Z½_½g½k½z½|½‹½�½œ½�½­½´½¸½Ì½Ô½â½é½í½ı½¾ ¾+¾3¾A¾H¾L¾T¾b¾i¾m¾u¾‰¾‘¾œ¾ ¾ ¾ ¾«¾²¾À¾Ú¾ê¾õ¾
¿¿¿*¿6¿L¿T¿_¿n¿v¿�¿†¿�¿™¿¥¿©¿´¿¹¿Ë¿Ó¿Ş¿Ş¿Ş¿Ş¿ò¿ÀÀ$À(À<ÀMÀbÀoÀsÀ�À–À¦À½ÀÖÀïÀñÀüÀÁÁ Á*Á;ÁRÁkÁyÁ„Á�Á˜ÁšÁ¥Á­Á­Á­ÁÇÁÕÁãÁøÁÂÂ+ÂIÂPÂPÂ`ÂtÂ�Â�’¨·ÂÒÂİÂôÂüÂüÂÃÃ1ÃLÃUÃjÄÓàþÃÌÃâÃûà Ä#Ä#Ä;Ä;ÄGÄ_ÄwĀĀĀČÄ�ĵľľÄÅÄÎÄÔÄàÄFÅ{ÌL»¶ö¶öÔößöêö÷÷÷ ÷*÷0÷A÷P÷_÷l÷l÷r÷w÷|÷�÷¢÷­÷±÷Ã÷Ğ÷Ø÷ã÷ß÷ú÷øøøø.øø?ø6øIøKøgøSøoø}ø}øø›ø›ø¢ø¨ø±ø¸ø»øİøñøäøùøÿøùùùù ù ù(ù(ù3ùHùQùQùQùQùmù„ùŠù�ù�ù¤ùªù¯ù¯ù»ùØùøùıùúúú+ú:úIúQúVú\úaúaúhúoú’ú¯ú±úÎúãúãúéúéúöúÿúÿúû,û7û<ûIûTû\ûdûtû‹û‹û›û›û­û³ûÛûäûäûæûíûòûòûÿû
üüüü,ü9üKüVüdümürü™ü¢ü­ü²ü¹üÁüÔüéüîüõüı ıı0ı7ı=ıFıFıOıiıpıuıƒı“ı¡ı¡ı§ı®ı·ı·ıÊıÜıßıßığıøış ş)ş0ş=ş?şFşZşişişiş�ş�ş�ş�ş�ş²ş½şÏşÜşçşõşÿÿÿÿ0ÿCÿEÿTÿiÿkÿyÿ�ÿ�ÿ”ÿ�ÿ�ÿªÿ°ÿÂÿÂÿÏÿÒÿİÿïÿöÿ %:<Vkkkmtz‹™««±¸ÁÆçğğöÿÿ+.4=EPbhss€ƒ‰’𥷽ÈÈÕØŞçé 39DV\ddddoê|”�¾g3g3{33ˆ3‹3”3�3¯3¯3Ø3Ü3á3ä3í3ı34444 4'4/474>4N4N4Z4}Œ >æUæUúUV1VV=VBVIVIViVVkV‹V»V§VÇVÌVÓVÓVÛVâVíVõVWW W+W3W~À-ee6eFePePeZeZedeveƒe†eˆe‘e�e�e¬eÀeÀeäeñeñefff1f>f>fTfwf�f°f¹fÆfÆféfófóf&gYg_g_g_gqg¸ºä˜Š˜Š°Š²Š¾ŠÂŠÏŠÒŠìŠìŠìŠòŠöŠşŠ ‹‹)‹+‹+‹4‹6‹6‹?‹A‹A‹J‹L‹L‹U‹U‹^‹d‹g‹q‹‚‹ˆ‹”‹”‹ü‹€œWzş)ş)*-*P*W*p*h*ˆ*¨*”*´*Å*Ê*ë*×*+++2+K+C+c+ƒ+o+�+ +¶+¢+Î+Û+Û+ó+ó+ı+�œX{Ö-Ö-â-ò-ı-'.W.d.u.‡.�.•.©.°.¾.Ö.å.ò.õ.///-/9/E/I/P/†/‚x¬p¬p¬†¬�¬”¬³¬Â¬Ñ¬à¬ï¬ş¬­­ ­­'­6­;­V­p­p­†­˜­œ­ª­±­¶­¶­½­Ï­Ø­Ú­è­ú­ú­ú­ ®®)®4®A®F®V®[®k®w®|®‰®�®�®£®³®µ®Å®Ç®×®Ù®ê®ó®ó®õ®¯ ¯¯¯7¯I¯[¯m¯}¯}¯}¯€¯“¯ƒ\åøŒŒŒ"Œ'Œ5ŒJŒQŒ[ŒiŒlŒnŒxŒŠŒŠŒ‘ŒÇŒ„0ÎÖÖÖî0$øöDL…`Ê——$—F—S—]—l—…—‰—�—¢—¿—Á—Á—ò—à—Á—˜˜†L4CN,N,\,n,t,|,�,”,�,¯,µ,¸,ô,‡(–œ7373E3T3X3[3a3ˆ\DWö,ö,---$-6-<-E-W-]-f-x-~-�-Ï-‰, ÒÒ$Ò+Ò3Ò8Ò>ÒŠ¬!HÖ Ö ô 


#
(
G
G
L
k
p
w
†
ˆ
§
§
Æ
Û
È
ç
ö
ø
    & ? 8 W a ‹@? –a–a³a»aÂaçaùaÿa
b!b0b;b?bJbVbabmb„b›b®bÅbÚbêbêbübccc)c)cAcAcfcfckckcqc}cŠc–c«cÂcÑcÜcîcúcd)dJdJdSdXdXdXdXdhdqdyd~dŒdšdªd¯d¯d½d½dÂdÂdÌd×dédïdûd ee e$e-eFeIeYe`e~e‡e‡e–e¦e¶e½eÃeÏe×eâeéeíeffff$f4fDfDfqf“fŸf§f²f¹fÄfÆfÑfÑfáfæfæfğfûf gg!g.g;gEgIgRgkgng~g…gŠgŠg�g�g£g§g·gÀgÒgØgÚgÚgègîgôgh hh'h'h'h,hDhDhShVhjhˆh“h¼hÎhÙhëhïhôhûh ii5i<i@iFiNiYi\jŒ<KVN)N)h)t)†)œ)½)ª)Õ)í)í)÷)�`l€Ø›Ø›ø›ÿ›œœœ'œ/œ>œHœKœoœqœ�œ�œ�œ�XnşÔşÔ$Õ6Õ;ÕRÕdÕnÕxÕ†Õ�Õ�Õ³ÕµÕ¾ÕÔÕâÕêÕòÕôÕÿÕ
Ö
ÖÖÖ$Ö,Ö6Ö?ÖGÖJÖSÖnÖÖ‘Ö”Ö™Ö¬ÖÄÖØÖàÖàÖòÖõÖúÖ ×%×9×A×A×b×e×j×}׃ט׮װ×Å×Û×ã×ã×î× ØØ Ø6Ø�83=ÓÓ Ó Ó-Ó1Ó?ÓBÓGÓ�8>HNÓNÓWÓWÓeÓiÓpÓsÓxÓ‘D*V+V+p+ƒ+�+”+ +¸+Á+Å+×+İ+ü+’Ğy©~ø~ø¨ø«ø²ø¸ø¾øÀøÆøÌøÌøŞøéøğøıø
ùù,ù@ùFùHùOùUù_ù_ùpùrùyùù‰ù‰ù‰ù ù²ù¹ùÈùÊùÜùëùëùıù“0+3ş+ş+,-,>,D,D,L,”„\y>í>íPíeíoíxízí�í‘íœí�í¨í¨í®í¿íÂíÂíãíîíğí îîî î3î†î• 
¦*¦*¯*Í*Ò*–h÷ ö^ö^ __"_0_;_A_R_X_i_o_{_’_’_¤_µ_Â_È_Ù_ß_-`—�µÕ¾O¾OìOñOP PP P(P(P-P:PPPzPP£P«P°P·PÍPãPåPûPQ5QOQaQ˜ˆùöüöüı ı'ı.ıMıRıqıvı�ı}ı¯ıœı»ıĞı½ıïıÜıûıûıûı şş3ş3ş;ş™ y}XˆXˆaˆmˆrˆš(A&ã&ãHãPãVã^ã`ã`ãqãqãqãyã�ã“ã¢ã“ã·ã¹ã¹ãÓãÕãÕãàãåãÿãäääää(ä*ä7ä9äFäNäVä]äläyä{äŒä™ä™ä™ä¢ä´äÇäÍäÕä×äääääùäùäùäåå&å+å+å+å9å?åDåLåWåiåtåyåyå€å„å’å–åŸå¦åÄåÑåØåáåıåææææ
ææ#æ#æCæCæCæJæXægæzæ�æ�æ�æ�æ¢æ¢æ©æ°æµæ»æÍæ×æòæç!ç!ç5ç:ç^çeçqç�ç¢ç­ç´ç¸ç¸ç¸ç¸çÃçÍçÛçıçè%è/è/è=è[è‹è�è¯èÆèÙèŞèŞèŞèæèñèééééé%éRéXéXéXécéméyé„é†é†é†é‹é—é—éáé›H%—/—/¥/¬/·/Å/Ğ/Ø/Ø/ğ/ú/00œ0 vTvT�TŠT©T¿T¸T×TßT�T9J.(.(H(T(f(|(�(Š(µ(Æ(Ø(î()ü(')?)?)I)�ÖfQfQ˜Q¬Q´Q¿QÆQÍQÖQØQÛQùQRRR$R?RFRORQRTRrRrRrR€RŠR—R·R¹RÓRÛRÛR÷RSS!S5S<SWSYS`S{S�SªS­SµSÂSâSäSşSTT"T=T=TcTuTŸTXiFF\jpv‡•£µ¹¿ÍĞÚ Lg>ş>şmşbşzş•ş�şµş¡şÁş׺Ãş÷şãşÿÿÿ ÿ0ÿ7ÿDÿOÿ[ÿfÿnÿsÿÿ„ÿ˜ÿŸÿ£ÿ®ÿ³ÿ¾ÿ×ÿàÿìÿñÿ .3Lasxƒ‹‹‹�¦»ÆĞÛİèğğıõ5¡àZ�ccc(c-c:cHcQclczcœc¥cµcÏcÚcêcìcîcøcddd!d3d;dSdWdWdWdWd\dzd”d”d›d�d¦d²d»de¢d{�ş+ş+,?,P,W,p,h,ˆ,¨,”,´,Å,Û,Ç,ó,----"-£@I•f f ~ � › à ® ¢ Ï í   ù & @ @ _ t a ¡ Œ € ­ Ç Ç Ç Ù ó ó  9 - f k ~ r   ‘ ¬ Ê â Ö õ #/MbOznœ�¨ÂÂÂÔîî 55=¤(6à6àDàgàmàràràxà¥(!'¾Ò¾ÒÇÒÕÒÛÒİÒâÒ¦D]j999%9.9:9O9W9]9c9e9e9t9§„½Ú0¦0¦c¦o¦s¦{¦ƒ¦‡¦’¦–¦š¦�¦¦¦«¦¯¦À¦Ñ¦Ó¦×¦è¦ù¦§§ §*§*§*§<§¨€@˜@˜Y˜`˜g˜n˜t˜„˜�˜™˜¤˜»˜¾˜À˜Û˜å˜ï˜ö˜™™™™1™1™C™©˜bŞ^Ş^_$_,_7_F_O_S_^_~_ƒ_�_¼_Â_Ç_Ú_``&`,`4`7`<`O`t`y`�`•`�` `À`Å`â`aaaaaaa(aHaMaga†aŒa‘a±aºa¿aŞaæaëa bbb5b=b]bbb|b›b¡b¦b¦b¦b¦b³bÄbÏbçbòbcc*c>cOcYc[coc€c…c�c�c½c½c½cÏcª°)����³�À�Å�É�Ò�ß�ë�ö�Ÿ ŸŸŸ Ÿ+Ÿ3ŸMŸsŸmŸƒŸŒŸÁŸ­ŸÑŸÑŸéŸôŸ  ; t t t t Õ «0ùAȌȌíŒùŒ����$�.�<�F�X�b�h�r�x�‚�‰�•�›�¤�Ï�Ş�á�ã�í�ÿ� ��%�:�:�=�G�\�a�q�|���•�¨�²�Ç�Õ�Ş�æ�ô���&�3�3�@�@�H�V���¬l£:n@n@‡@Ÿ@¯@Ï@á@ù@AA>AFAJAMAQAVA`AcAjApAwA}A�A†A�A¡A¨A¯A±AµA¾AÈAËAÖAâAåAöABBBB0BABJBSB[BfBqB}B�BŸB«B¹B»BÂBÉBÎBÒBßBæB CC!C+C4CMC^CgCpCxC�C‡C‹C�C”C¡C¨C¶CÀCÕCßCèCDDD$D,D5D;D?DDDJDTD^DzDˆD�D“D›D£D«D¸DÀDßDÒDñDúDE)E<ECELEUE\EeEnEwE�E€E E¤EşE­  P…P…^…}…ƒ…®À�¹?(?(H(o(](O(�( (’(Á(ä(ä(ô(ù(ù( ))).)3)3)S)X)X)l)q)q)�)�)œ)À)æ)****<*L*L*L*L*L*+¯$bg�&�&“&«&½&×&°´ª–º–º°º¿º¿ºº˺׺׺ãºøº»+»=»A»Q»q»ƒ»‰»œ»¥»©»¯»¸»¸»Ù»İ»í»ú»¼*¼0¼C¼U¼a¼c¼o¼w¼{¼�¼ммммœ¼²¼¸¼ļÙ¼à¼è¼ô¼ ½½½½½,½6½9½G½Q½T½f½k½p½€½ƒ½ˆ½˜½›½Ÿ½¨½°½½ʽÓ½é½ï½û½¾¾ ¾1¾7¾F¾W¾W¾^¾^¾^¾l¾z¾„¾‡¾•¾Ÿ¾¢¾´¾¹¾¾¾ξѾÖ¾æ¾é¾í¾ö¾ş¾¿¿!¿!¿Line truncated
ÀÀÀÀÀÀ/À;ÀCÀIÀOÀOÀQÀcÀ±xÖÓÖÓäÓùÓÔ Ô-ÔaÔ}Ô�Ô£Ô©ÔµÔ¾ÔÆÔÎÔĞÔÖÔÜÔèÔğÔöÔøÔşÔ²Ü,ßmm<mDmTm\m‰m m¤m¬m´mºmÎmÖmÖmŞmnan<n„n‰n›nªn¬nÖnÜnånìnônünooo+o3o8oBobojolovo…o¥o­o¯oÏo×o×o×oâoéoüop p pppp'p0p8pTpop‰p³p¶pÍpÚpîpq q:qTqfq�q–q˜qÂqÅqÅqÜqéqıqr r#r.r9rKrZr\r†r‰r›rªr¯rÙrßrärörss1s4sFsUsWs�s‡s‡s‡s‘s‘sœsÍsØsØsØsØsásístt/t6tBtItIt\t`t`t`tgtltt†t’t™t™t°t²t·tÊtÑtİtätätñtûtûtu#u#u5u³ ÄnEnEƒE�E¶E¡E•EÕEÂEáEöEãE#FFF/F=FEFPFRF]FhFhFmFšFŸFÌFÑFëFØF
G÷FG!G6G#GUGBGaGfGaG|GŠG’G�GŸGªGµGµGºGÕG×GòGòGÿGH#H%HDHDHDHLH´\ãö^^^.^4^?^M^Y^p^p^‚^ˆ^“^£^®^¼^É^õ^µ(2866Tgnu|€‚‰�””œµ¿¿ÓŞìı  " J N W [ ` q � � œ ° µ Î ß ã ã ã è  + 2 E I N j ’ š £ § ¬ ½ Ï ß ó õ !!!%!%!%!A!i!m!v!z!!�!­!­!»!Ï!Ô!í!ş!"""""("I"h"s"y"�" "¥"º"Ö"ş"# ###%#>#>#L#`#b#{#Œ#�#�#—#ª#®#À#Å#á# $$$$#$4$J$Z$n$s$Œ$Ÿ$£$µ$µ$µ$µ$º$Ù$è$ %%%0%A%A%A%H%[%t%t%t%ƒ%ƒ%–%­%¸%É%Î%Ô%Ş%à%ì%ì%ó%ş%&& &5&A&C&N&Z&j&q&x&‚&Š&�&’&”&™&¡&¥&·&¹&¾&Æ&Ê&Ì&Ì&Õ&â&ø&'2'>'J'Q'Q'd'h'h'h'o't'�'š'¦'­'­'Ä'Æ'Ë'å'ñ'ı'(((((-(˜ ºœ H H=HLHLHLHfHfHuHuH{H}H}HƒH…H…H‹H�H�H”H˜H�H�H�H�H�H�H¥HºHºHÏHÚHäHñHII#I%I@IEI`IeIkIkI€IƒIªI·IÏIïIïIøIıIJ J!J0J5J<JEJXJ`JhJmJmJmJvJ�J•J•J®J¼JÖJìJîJöJüJK K KKKK)K+K@KBKJKPKXK]K]K]K]KkKK�K•K•K�K£K«K°K¹KÁKÊKĞKÖKØKØKØKàKàKîKLLLLL1L7L?LDLMLXL[LaLgLpLsLsL�L�L‘L´LÑL×LßLäLíLïLïLôLöLşLşLM+M0M<MBMEM\M^MaMqMuM|M…M”M¢M¨M°MµM½MÂMÂMÊM×MïMôMşM&N1N<NGNRN]NhNsN~N~N~N†N†NŸN­NÇNİNİNßNßNèNîNğNğNöNüNüNO OO O O&O)OHOSO[OcOhOhOoOsOxO‡OŒO–O O O­OÔOÔOÚOèOùOP PP)P?PEPJPJPOPbPnPvP†P�P™P§P®P°P¹P¹P¿PÍPÙPìPÿPQQQ.Q3Q3QPQPQbQhQqQwQ€Q�Q“Q“Q¦Q¬Q®Q¹QËQŞQŞQòQşQRR!R'R*RARCRFRVR`RcRcRrR…R—RœR¨R®R±RÈRÊRÍRİRáRéR÷RüRSSSSSSSS(S.S4S>SHSVSkSnSpSzSzS|S„S‰S�S“S“S™S¡S¦S¦S«S¶S»SÀSËSĞSöSøSıSTT TTTTT T%TATKT_TsTyT�T�T�T•T›T¥T¯T½TÒTÕT×TáTğTõTõTõTıTU U UUUUU#U#U(U3U8U=UBUQUQUbUhUhUvU|U‚UŒU–U¤U¹U¼U¾UÈU×UÜUÜUÜUäUéUòU÷U÷UıUV
H2@÷#÷#$$!$&$Q$S$†$p$–$�$®$Á$¨+>k>kTk\kgksk~k�k€k©k¯k¯kÖkãkl'l'lQlsl‹lxl—l½lªlÑlŞl m mm.mAmAmAmKmH<Jöö0ö:ö>öBöGöIöeö�ö�ö‹ö|ªÅ.ú.úXúZúaúgúmúoúuú{ú‚ú�úœú¯ú½úÌúÑúÓúØúâúòúûû3ûEû8şßşßà àà à'à)à.àd`µîÓîÓ ÔÔÔ Ô,Ô.Ô:Ô:ÔGÔIÔVÔXÔdÔdÔzÔƒÔƒÔ�Ô•Ô¤Ô¯ÔµÔºÔ¼ÔÈÔÏÔŞÔéÔïÔôÔöÔÕ2ÕXÕhÕxÕˆÕŠÕšÕªÕºÕºÕ¿ÕÙÕàÕçÕçÕçÕçÕîÕÖÖÖÖ"Ö&Ö&Ö&ÖSÖZÖpÖ|Ö‚ÖˆÖ�Ö�Ö�Ö�ÖDÃ�Ö�Ö´Ö·ÖºÖÇÖÍÖÚÖİÖàÖæÖèÖòÖ,cj¨‡¨‡¶‡À‡Ë‡Ö‡Ü‡â‡ jnÖÖäùÿ
P o6o6}6Œ6¤6ª6¼6¼6Ç6Ğ6Ö6İ6ã6 œ;^öEöEşEFF.FAF^FFˆF™FÀF×F×FùFGGG%GWGdGhGpGpGƒG“G—G›G Œ×öFFfnr€†ŒŒ¹Ïãñ -LUegnntt„ |1W#W#m#v#�#š#š#�#¬#²#»#½#Ã#Ì#Î#Ô#Ş#å#è#è#ò#0 'ğ…ğ…ş…†$†*†*†0†„•²@�@�T�[�b�f�Š���¤�µ�Ú�å�ğ�ò�ı�"�-�8�:�A�J�L�W�^�ˆ�("ÆÜÆÜÕÜèÜİİİ nÜnÜ}Ü�ܖ܃�¯�¯µ¯¼¯Ó¯ß¯ê¯ü¯ °ş¯ü¯-°H°T°[°a°m°w°~°…°‰°‹°‘°�°§°®°µ°¹°¹°Ã°È°Ó°å°ö°ç°å°±7±C±J±P±\±f±m±t±x±z±€±Œ±–±�±¤±¨±¨±µ±Ã±Ó±å±ö±ç±å±²7²C²J²P²\²f²m²t²x²z²€²Œ²–²�²¤²¨²¨²²²Â²Ô²å²Ö²Ô²³ ³³³(³/³6³:³<³B³N³X³_³f³j³j³t³‚³‹³¤³°³´³´³·³À³6´ìÆ{Æ{ã{�¡ë{ı{|$|6|=|N|V|^|a|o|›|›|°|²|²|¾|Æ|Ê|×|×|ã|ë|ï|ü|ü|ü|}#}4}4}9}Q}`}e}k}v}{}{}€}˜}§}¬}²}½}Â}Â}Ğ}Ù}å}í}õ}ı}~~ ~~&~/~@~P~P~U~]~e~h~n~n~s~s~s~y~|~ƒ~�~£~È~ß~ì~ô~ü~!*.1=CJOO]mmzz‚Š“¢§§®¹¿ÇÍØİİì÷ €€€€"€-€?€E€M€S€X€X€l€r€}€ƒ€…€•€›€›€½€ä€é€é€ı€��*�0�5�N�T�d�l�t�z���“�™�¯�À�Æ�Ë�ä�ê�ú�‚
‚‚‚‚+‚1‚G‚X‚^‚c‚r‚x‚‰‚‘‚™‚Ÿ‚¦‚«‚«‚Á‚ǂ݂î‚ô‚ö‚ƒ ƒƒƒ%ƒ+ƒ2ƒ2ƒ2ƒDƒMƒ^ƒnƒnƒsƒsƒ�ƒ‰ƒšƒ­ƒ´ƒºƒƒȃ؃ރæƒìƒìƒìƒñƒñƒñƒñƒñƒ„„!„!„7„@„K„T„_„j„o„o„…„‹„¡„²„¸„½„τՄڄ󄅅……"…*…-…3…9…>…>…b…j…r…‚…ˆ…�…�…Ÿ…½…½…Â…Â…Î…Ö…Ù…à…æ…ë…ë… ††#†)†0†N†]†e†}†…†ˆ†�†•†­†µ†͆Õ†؆߆å†å†å†‡‡ ‡(‡+‡2‡8‡H‡W‡c‡~‡†‡‰‡�‡–‡®‡º‡Õ‡݇à‡ç‡í‡í‡í‡í‡ò‡ò‡û‡ ˆ!ˆ'ˆ?ˆRˆXˆ]ˆoˆuˆzˆ–ˆœˆ¨ˆ°ˆ³ˆºˆÀˆéˆñˆ‰‰‰‰‰‰‰‰4‰J‰P‰h‰{‰�‰†‰±‰·‰ʉŠŠ/Š7Š=ŠBŠBŠ\ŠhŠtŠŠŠ„Š„Š�ŠªŠ¶ŠÁŠÁŠÆŠÆŠàŠìŠøŠ‹‹‹‹‹$‹0‹6‹;‹M‹S‹X‹g‹s‹‹…‹‹‹’‹¥‹°‹¹‹Å‹Í‹Ğ‹Ö‹Ü‹á‹õ‹Œ Œ$Œ,Œ/Œ5Œ;ŒSŒ[Œ{Œ•Œ�Œ Œ¦Œ¬Œ¬Œ½ŒÆŒÒŒÚŒİŒäŒêŒïŒ���0�8�;�B�H�`�h�‡�¡�©�¬�³�¹�¹�É�Ò�Ş�æ�é�ï�õ�ú���%�?�G�J�P�V�n�v�˜�´�¼�¿�Å�Ë�Ë�Ü�å�ñ�ù�ü�� �� �/�7�R�Z�]�d�j�‚�Š�¬�É�Ñ�Ô�Û�á�á�á�á�á�æ�æ�ü�����+�1�6�D�P�Y�e�m�p�w�}�‚�”�£�«�Ã�Ë�Î�Õ�Û�ó�û�‘4‘<‘?‘F‘L‘L‘L‘]‘f‘r‘z‘}‘„‘Š‘�‘¡‘°‘¼‘בß‘â‘é‘ï‘’’5’R’Z’]’d’j’j’j’j’j’o’o’‚’�’£’®’³’³’Æ’Ü’â’í’ï’ï’“%“+“6“6“H“Q“b“g“y“‰“‰“�“�“¡“·“½“˓ړߓߓò“”””+”0”0”F”L”i”�”�”«”±”¶””˔ڔڔߔߔõ”û”•0•0•Z•`•e•q•z•‰•‰•�•�•¤•ª•Ǖߕߕ ––– –)–8–8–=–=–S–Y–v–�–�–¸–¾–À–Ì–Õ–à–à–à–à–å–ó–ü– ——!—.—.—.—>—N—S—w—ƒ—„—‰—�—»—Ë—ï—ÿ—˜˜˜
˜˜$˜7˜u˜…˜‹˜�˜’˜£˜²˜ä˜ì˜ò˜ô˜ù˜™™ ™™.™7™F™F™K™P™_™h™s™u™~™‰™‰™ª™±™·™¿™Ê™Ğ™à™æ™î™ù™ÿ™ÿ™š šššš%š.š=š=š=šBšBšBšTšYšYškšvš~š†šŒšŒšŒš‘š‘šœš­š°š¼šÅšÑšØšŞšãšãšîšÿš›››#›*›0›5›5›5›5›:›?›?›F›J›J›V›_›b›b›m›o›�›ˆ›�›�›¨›³›¹››Æ›Æ›Ò›Û›Ş›Ş›é›ë›ı›œ
œœœ(œ.œ8œ;œ?œ?œGœNœQœSœ^œbœkœnœnœyœ{œ“œšœ¥œ°œ³œ¹œ¾œ¾œÅœÉœÉœÕœŞœáœáœìœîœ�� ��'�2�8�A�E�E�Q�Z�]�]�h�j�|�ƒ�‰�‘�œ�§�­�·�º�¾�¾�Æ�Í�Ğ�Ò�İ�á�ê�í�í�ø�ú���$�/�2�8�=�=�O�S�S�_�h�k�k�v�x�Š�‘�—�©�´�¿�Å�Ê�Ê�Õ�Ú�Ú�å�ê�ê�õ�ø�ü�ŸŸ ŸŸŸ&Ÿ+Ÿ+Ÿ8Ÿ<ŸMŸUŸYŸmŸtŸxŸxŸ…Ÿ‘Ÿ™ŸŸŸ¯Ÿ³ŸÄŸÖŸáŸåŸåŸòŸúŸ      
 
    , 8 F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F H H _ g s s ” ¢ º ¼ È Õ Õ ø ¡¡¡"¡-¡4¡4¡>¡>¡A¡S¡q¡}¡}¡¬£x¿Ù_4_4q4s4w4€4Œ4˜4­4­4Ù4İ4â4î45 5555$5.5°œÄ¾Œ¾ŒÔŒÛŒìŒñŒ�óŒ���$�<�)�H�K�M�[�`�u�b���„�„���¥�’�±�·�·�Ê�İ�ğ��� �„�^x^x|x�x”x›x¢x¤x§x®xµxµxÑxÕxÛxÛxóxyyy yDydy…yŠy«y°y¼yÇyÌyÙyÜyz$z)z/z1z7z:zKzPzSz[zdzzŸz¶zÉzÎzÒzôz{ {#{6{;{?{a{|{œ{¯{´{Å{Ê{Í{Ï{Õ{Û{ì{ñ{÷{ÿ{ÿ{ ||)|<|A|E|g|‚|¢|µ|º|Õ|õ| } }$}(}J}]}]}x}x}x}†}�} } } }®}Æ}È}È}Ö}î}î}~~ ~~,~L~f~m~w~Š~�~�~�~•~›~µ~¼~Æ~Ş~à~æ~ **DH‰—HƒHƒ_ƒuƒ…ƒŒƒ£ƒ¾ƒĞƒÔƒ„Lîı����¢�®�Ä�°�Ğ�Ò�å�ø����4IRvÓvÓÓÓ‚Ó�Ó�Ó¡Ó¦Óä;ôô.ô1ôOôfôwôwô’ô˜ô�ô�ô¸ô¾ôÃôÃôÌôÚôæôíôóôøô;õEõLõRõTõTõgõmõmõmõ}õrõ�õ�õ¯õ´õ´õ´õ»õÂõÉõŞõåõöööĞL¼ø¡ø¡¢¢(¢1¢9¢<¢C¢G¢P¢a¢e¢k¢y¢–¢£¢²¢·¢Ã¢È¢Ï¢Û¢à¢ã¢í¢å¢ı¢£££ £%£.£4£4£B£E£Y£b£k£r£v£{£’£ª£³£Á£İ£é£é£¤¤¤¤5¤A¤I¤\¤c¤w¤€¤‡¤‹¤–¤›¤¢¤¿¤ì¤ó¤÷¤ù¤¥¥¥)¥+¥<¥F¥Q¥[¥j¥y¥•¥•¥˜¥ ¥¥¥'¦Xs…nHnH‹HœH©H³HÊHçHI II"I(I+I7IŒ Ø_Ø_è_ ` ````` ` `'`A`R`Z`Z`e`e`s`ƒ`ƒ`‘`—`—`¯`¯`µ`Û`(kqè‡è‡ö‡ˆˆˆ ˆ @UaŞæŞæìæôæûæç'ç'ç*ç,ç2ç $/4^İ^İkİyİ~İ„İ!$).6İ6İCİQİVİ\İ"$#(İİİ$İ)İ/İ#4ğy__k{‘™£»ÀĞæîø  % 5 K S ] u � ‰ “ £ ¨ ¾ È Ò Ü æ ğ ú    " , 6 @ V ` j t ~ ˆ ’ œ ¦ ¼ Æ Ğ æ ğ ú !!!"!,!6!@!J!T!^!h!r!|!†!�!š!¤!®!¸!Â!Ì!Ö!à!ê!ô!ş!""""$¨D@™@™V™]™d™r™ƒ™•™—™�™¤™´™¿™É™Ô™ë™î™ğ™ššš"š,š3š>šSš[š[šqšqšqš…š%$5:†İ†İ”ݣݨݮİ&¨Ekˆšˆš�š¥š¬šºšËšİšßšæšìšüš›››3›6›8›J›Q›a›k›u›|›‡›››£›£›¹›¹›¹›Î›'(&,0000&0,020(0_g�G�G´GÇGÖGÜGßGçG)  ß– – ¸ À Æ Ó Ú ö ü ü ü     ' 3 > D N U f f q { { � “ £ © ® µ µ Ö Ü ë ş !! ! !!!!!!!.!8!=!=!R!\!\!p!y!!…!›! !§!º!¾!¾!Æ!Ì!Ò!Ü!ã!ê!ó!""*"."4":"I"\"b"f"l"r"x"x"z"~"„"Š"�"•"•"•"•"À"Ñ"Ñ"è"õ"ù"##6#6#<#?#C#I#I#[#l#�#•#�#®#²#Ã#Ç#Í#æ#è#î#û#ı# $'$-$8$[$f$l$r$x$�$‡$œ$ª$²$¶$Ç$Ë$Ñ$ê$ì$ò$ÿ$% %+%1%7%=%F%L%i%\%ƒ%Line truncated
''''+'F'V'c'r'�'�'¬'¬'³'È'Í'Ö'ã'è'î'ó'ó'ú'ş'((((!(%(/(;(B(F(N(V(^(m({(€(Œ(Œ(”(”(·(·(Å(Ë(Ğ(Ô(Ù(Ù(Ù(Ù(ß(á(á()
)))-)/)/)/):):):)?)h**4+t>Å>ÅXÅ\ÅtÅ|Å„Å�ŒřşųŻÅÀÅÃÅÎÅÙÅáÅìÅ÷ÅùÅÆÆÆ(Æ3Æ5Æ@ÆKÆMÆYÆbÆbÆxÆ‚Æ™ÆŸÆ¥ÆÆ¼ÆÅÆ×ÆİÆİÆåÆéÆôÆùÆ ÇÇÇ(Ç*Ç.Ç=Ç=Ç=ÇNÇNÇSÇeÇkÇÙÇ+Ô@.á.áDáKáNárárá�á¢áµáÈáÍáÍáëáùá â â'â'â)â)â)â<â>â>â>âEâXâkâkâkâ~â‰âœâ²â·â»âÂâ×âêâñâñâôâã,LAPÇ$Ç$Õ$æ$ò$ %%2%4%O%j%j%r%y% %-P~�pˆpˆ~ˆ‹ˆ™ˆ«ˆˆÄˆÑˆßˆñˆüˆ
‰‰‰.4
66%616B6T6]6g6m6/|¼Wææ)OOXZZaˆ���­ÉÔÔàç÷ı&(AGRbt}ˆ�“š¿ÄÒÛÛâñ18?DOU]ƒŒ“˜£¯¾Ò×ßëıı  # 3 E K T T c i } † – ¥ · À Ğ ã ë ÿ 
7
;
G
^
z
Œ
’
�
©
¹
É
Î
×
×
é
í
ù
 , > D O [ k { � “ “ ˜ š š Ÿ Ÿ ® ´ º º ¾ 70�ÄäöÖöÖ××"×&×-×4×C×N×T×Y×[×g×n×v×|ׂ׆׆ולפתװײײ׾×18 ?/?/M/S/_/j/{/…/Œ/’/2@}‰&è&è4è?èFèeèrèrèuèwè}è3ğh ffŒŸ§®µ»½ÄËÎÎààóşBJS[`q‡—©®Èàääé*Fnv‡Œ�¯¿ÑÓí  %MU^fk|’¢´¹Óëï:'GSYq‰�£¿çïø(8JLf~‚‚�ÆÎ×ßäõ -2Ldh{{{€ ÀÌÒê *<Lcz‘¨¨¼ØØØù    + 9 T c j z | ‚ ™ ¨ ¡ ¾ Ï ê ê 
4D}Š^^n‚‹‘££§ª²5\Ob‡‡ ‡/‡8‡A‡E‡I‡U‡Z‡_‡_‡p‡t‡{‡“‡–‡¢‡60ıÖßÖßßßäßíßôßößûß7Ü4nnŒ“𥭯ÆÚóóş 5AWe{„–¾ÕÚâæ ë(,,<yX…¢¢ÁÌÒèùş8OT\`ƒb‰Ÿ£¿çïôøı$2FKduy‹‹‹‹�¬ìËø &<MRn–�£§¬½Ïİñó !!3[rwƒ¦…¬ÂÆÓÓÓÓæìöı''CSaaw‡•¬¿ÄÊàïè)G?l•••¢Ûàëñü2">Tbz�”¤Ãïßû7BH^otŠ ¤Àèğõùş%3GLevzŒŒŒŒ‘­Ìûë$/5K\a}¥­²»ÌŞì,00Oe{ŒŒŒŸ¥¯Éàààü 0@UNi|�‡�¬¥ÁÑßüü%EEEe8Do|*39KKORZ9°Åí&�&�<�C�T�Y�n�[�z�€�€�Œ�¤�‘�°�³�µ�Ã�È�İ�Ê�é�ì�ì�ø� �ú�� � �2�E�X�k�~�ˆ�:<‹–Æ×àæêõ;”)ŞéŞéæéêéöéê êê$ê6êAêLê[êlêsêŒê�ê�ê�ê§ê®êÁêÊêØêìêë ë*ë<d(=0†0†<†P†S†g†o†s†}†‡†�†’†˜†=$t¹ÀEÀEäEçEëEøEF FF F*FRFRF^F`F`FlFqFqF}F‚F‚F�F“F“FŸF¤F¤F°FµFµFÁFÆFÆFÒF×F×F×FÚFÚFóFGG%G%G'G'G3G9G>G>GDGPGPG[GgGtG‰G‘G—G—G¨G¨G±G´GH>è w®£®£Ë£Ó£Ö£ä£ò£¤¤(¤>¤P¤[¤l¤p¤‚¤…¤�¤™¤¥¤¸¤é¤ޤĤù¤ ¥¥*¥8¥V¥h¥Œ¥�¥Ÿ¥À¥¦¥Û¥Û¥Ş¥ã¥æ¥æ¥í¥¦ ¦¦¦,¦9¦L¦L¦`¦d¦‘¦‘¦©¦®¦®¦¾¦ƦÖ¦à¦ğ¦ú¦
§§§§+§3§C§M§]§g§w§ƒ§ˆ§ˆ§ˆ§ª§¸§§ǧÔ§é§é§î§ø§¨ ¨¨¨¨¨&¨5¨:¨@¨E¨E¨K¨Q¨V¨V¨e¨x¨„¨‘¨�¨°¨¸¨¾¨Ǩިò¨©©©-©@©W©d©l©©‡©�©–©Ÿ©Ÿ©¤©¤©¤©¤©¤©°©°©°©¹©Ò©ç©ï©
ªª(ª*ª>ªCªCªCªNª\ªaªaªhªvª{ª“ªŸª±ª½ªêÒªÖªߪ誫«««0«8«@«m«~«‹«�«›«›« « «§«µ«º«Í«Ù«å«ë«ï«ø«ı«ı«ı«ı«ı«¬¬¬¬¬¬+¬+¬+¬+¬+¬+¬+¬+¬+¬+¬4¬M¬b¬j¬…¬–¬£¬¥¬¹¬ŬʬʬʬÓ¬í¬ù¬ş¬ ­,­,­1­1­1­1­1­1­1­1­F­K­K­K­\­g­l­l­w­‰­¡­³­Ô­ô­ÿ­®®®®®@®I®Z®^®v®†®�®–®¡®Ë®Ô®Ø®ğ®¯¯¯¯¯"¯[¯d¯h¯n¯s¯|¯…¯НННН™¯­¯˯Ö¯Û¯á¯æ¯æ¯ù¯ °3°>°F°L°L°Q°Q°`°t°’°�°¢°¨°­°­°À°Ô°ú°± ±±±±±±!±:±O±W±r±ƒ±�±’±¡±£±£±£±£±£±·±·±·±·±·±·±·±·±·±·±·±·±·±·±·±·±ƱÕ±à±â±â±ë±í±í±²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²"².².²2²7²G²b²w²†²’²¨²²ŲϲÛ²³!³A³e³g³z³¨³€³óóƳÖ³޳ù³
´ ´'´5´A´Y´Y´„´‡´–´ª´Ë´Ü´ø´ä´µ&µDµwµuµjµ_µPµ…µ…µ…µˆµ�µ�µªµ¸µæµ3¶6¶E¶Y¶z¶‹¶§¶“¶ööá¶···ü¶í¶"·"·"·%·*·*·1·A·b·n·ú?°«Ó–À–À¬À°À»ÀÂÀÍÀáÀáÀìÀıÀÁÁÁ*Á2ÁCÁCÁLÁQÁYÁiÁwÁ†Á‘Á¤Á¤Á·Á·ÁÍÁùÁùÁ ÂÂÂÂ!Â!Â+Â3Â3Â3ÂDÂDÂDÂHÂPÂVÂ[Â[Â_ÂgÂkÂqÂvÂv‚—§±ÂÄÂÉÂÑÂÑÂÖÂÖÂİÂéÂşÂÃà Ã&Ã9Ã>ÃFÃLÃLÃQÃXÃcËÖåï÷ýÃÏÃÕÃÚÃÚÃÚÃÚÃÚÃÚÃÚÃÚÃÚÃåÃñÃşÃÄÄÄ/Ä4Ä<ÄAÄIÄNÄNÄNÄVÄ^ÄgÄoÄtÄ|Ä�ÄˆÄ“Ä»ÄÆÄÎÄİÄçÄùÄşÄÅ Å ÅÅ"Å*Å=ÅEÅMÅbÅdÅoÅwŌŌŔŨŰŷŽÅÁÅÅÅÔÅÙÅåÅûÅÆÆ$Æ0Æ5ÆAÆLÆQÆQÆQÆrƌƑƙƨưƸÆÍÆÒÆİÆåÆúÆÿÆÿÆ Ç!Ç-Ç5ÇJÇVÇ[ÇgÇrÇwÇwÇwÇwÇwÇwǂǂǂǂǂǂǂǂǂǂǂǂÇ�Ç­ÇÊÇÚÇàÇèÇûÇÈÈÈÈÈ-È3È;ÈCÈEÈeÈmÈvÈ~ȆȋÈ�È—È¢ÈÊÈÕÈİÈìÈöÈÉÉÉ!É!É!É*É3É6É@ÉNÉ`ÉbÉtɆɆɆɑɖɳɸɸÉÁÉÆÉÆÉÆÉÆÉÆÉÆÉÆÉÆÉÆÉÆÉÆÉÆÉÆÉÆÉÆÉÆÉÑÉİÉéÉ ÊÊ$ÊDÊIÊQÊXÊeÊmÊvÊ~ʅʊʊʒʚʶʾÊÁÊÃÊÓÊİÊİÊİÊßÊòÊËË ËËËË Ë$Ë,Ë3Ë@ËYË`ËeË}ˇˢ˻ËÃËĞËéËğËğËõËõËõËõËõËõËõËıËÌÌ"Ì'Ì'Ì/Ì7ÌDÌIÌIÌIÌMÌRÌRÌbÌgÌgÌgÌsÌzÌ€Ì�̡̽ÌĞÌÖÌŞÌóÌúÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ Í)Í7Í7Í<ÍGÍNÍjÍwÍwÍwÍ{͆ͤͲͪÏ@ü|®Ï®ÏÄÏÏÏÖÏáÏìÏĞĞĞ%Ğ8ĞBĞBĞ^ĞxĞЈĞ�Ğ’Ğ�ЧЮбжĞÌĞÖĞèĞîĞúĞÑÑÑ*Ñ?ÑFÑFÑFÑTÑbÑlÑoÑ}чъќѡѦѶѹѾÑÎÑÑÑÕÑŞÑæÑøÑÒÒÒÒ Ò2Ò8ÒDÒYÒ`ÒhÒzÒ€Ò�Ò Ò Ò§Ò§Ò§ÒµÒÃÒÍÒĞÒŞÒèÒëÒıÒÓÓÓÓ Ó/Ó2Ó6Ó?ÓGÓYÓaÓaÓmÓzÓ‚Ó‚Ó…Ó�Ó®Ó¼ÓÔAhoÅfØf؀ؚؓءجؿØÂØËØÒØÕØåØóØşØ Ù Ù"Ù.ÙCÙNÙYÙdÙoÙzÙ‘Ù�ٴټÙÅÙÍÙÚÙõÙøÙşÙÚÚÚ$Ú7Ú=ÚEÚEÚSÚeÚrÚ…Ú‹Ú“Ú¦Ú¬Ú´Ú´ÚİÚâÚÛÛÛ ÛÛÛ'ÛAÛMÛ]Û}Û™Û­ÛµÛ¿ÛŞÛòÛòÛhÜB 6+6+@+H+M+CÉÇfSfSƒS�S¡S�S»SÉSÉSÙSâSéSíSöSöSşST T,T8T>TITkTkT~T‰T�T–T›T›T®T¹TÄTËTÓTàTàTòT÷T÷TU U U U U$U7U=UDUYUmUmUrUrU‚U‡U‡UŒU“U›U¢U¤U¬U³U³UÂUÈUÕUÜUßUVV VV#V*V,V@VOVTVYVYVYVlVqV€V‡V�V£V·V·V¼V¼VÄVÚVßVóVúVÿVÿV WW,W;WNWRWaWoW}WŒW©W´W¹WÈWÜWãWêWúWüW
XXX*X7XGXNXcXjXvX‡X�X X¬X·X¹X¹XÄXØXåXíXïXYYY,Y8YYY`YlYŠYŠYŠY’Y�Y¡Y©Y­YµY¼YÌY×YñYöYıYZZZZZ-Z:ZHZSZ^ZlZrZxZ~Z‡Z�ZœZ©Z±Z½ZËZâZäZíZøZúZ[$[*[0[6[?[P[w[[‰[–[®[µ[Á[Ğ[å[å[ò[÷[ \\\\\Ë\DD�›NŒNŒbŒnŒ„ŒpŒ�Œ’Œ¤Œ¶Œ¾ŒEìˆÿ&Z&ZHZRZ…Z”ZªZÎZÓZ×ZßZèZ÷ZşZ[ [![2[Q[Y[[[z[‚[‘[˜[¤[©[°[¸[¾[À[Ü[á[÷[ã[\ \ \\\)\H\O\Q\p\w\w\w\‹\Ÿ\£\±\Ä\¼\Ü\á\ì\ó\û\]] ]$]:]&]F]L]L]h]m]†]r]’]˜]�]¹]¾]Ô]À]à]æ]í]õ]û]ı]^^4^ ^@^F^F^F^N^W^W^a^a^y^©^½^Á^Ï^â^Ú^ú^ú^ _FüE€îİîİ Ş)Ş.ŞOŞmŞ|ŞšŞ®ŞÆŞÍŞÒŞóŞß ß=ßNßeßißißmßrßwß�ß„ß�ߔ߱ߴߴߴ߹߿ßÛßéßõßşßàà#à?àJàVà_àsàsà‚à‡à‡à•àGl¬Ã¦D¦D´DÎD»DíDÚDùDEûD-EE9EGEOEZE\EgErErE‘E—EHP‡—FóFóZógóvó‚óˆó²óÈó´óßóÔó÷óÿóIŒg†ÖñÖñò+ò+ò>òBòaòuòzòzò‡ò�ò—ò¬ò¸òÉòÎòßòóòøòúòúòúòó+ó+óEóJP�­.7.7W7Y7g7m7‹7š7©7¸7Æ7Ñ7Ô7ä7Kì8n0n0˜0›0�0¤0©0À0×0î01&1M1P1i1€1’1Ÿ1²1Å1Ê1Ò1Ü1ä1ä1ë1ô1ô1ÿ1'2A2G2`2y2{2•2›2´2Í2Õ2à2à2ê2ê2ü2:3O3a3L$ty¶d¶dádÊdëdódMLu„ŞÇŞÇğÇÈÈ'È.È6ÈFÈNÈ_ÈeÈ—ÈNTHYˆbˆbšbœb¥b®b¼bÁbÊbÍbÒbàbêbíb÷bO¨!Gà`à`ğ`ù` aa%a1a=aIa`a`aoazaƒaŠa“aªa½aÂaÔaãaïabb
b*b*b,b?bAb[bgbjb�bPxîˆ(m(mAmLm\m¥m¬mÀmÇmÏm×màmèmğmòmúmn nn/nGnPnPn…n¯n¸nÚnôno;oGoiokoroyoyoœoµoÜoõop5p\pupœpµpÜpõpqq+q8q=q=qLqYq^q^qeqpq‚q›q´qÍqÏqÏqÏqÖqÖqãqèqèqèqùqrr/rirprprprxr•r£rÁrÊrÓràrîrs$s$s$s7sEsassssŠs�sºs¼sÓsÙsêsósõstttt t tDtFtMt^tgtitwtyt‡t‰t—t—t·t·t·t·tÄt×têt uu1u9u=uEuIuWueuguousuwuu�u›u›uµuÀuÖuèuv v*v4v;vTv`vgv€v€v’v—v™vŸv°vÁvĞv×vèvñvóvwwww!w!w!wEwEwbwiwpwsww‚w�w”w¢w¦w´w¸w¸wÑwØwİwëwüwxx9xLx[x]xlxnx}x‡x‡x•x�x´x»xàxåxy>yCyQySyayjy„y†yˆy�y y©y«y¹y»yÉyËyÙyÙyùyùyùyùyùyzzz#z?zdz}z‚z‚z‚z¤z©z©z©zÉzÎzÎzÎzízòzòzùzûzûz{{{ { {{{3{I{n{Š{�{£{£{¾{Ë{Í{Ü{å{ÿ{||||'|)|)|1|,|j|j|j|‰|‰|‰|ª|¯|¯|¯|Ñ|Ö|Ö|Ö|ö|û|û|û|} } }:}H}J}Y}b}|}~}~}ƒ}~}¤}¦}¦}®}©}ç}ç}ç}ò}ò}~~F~^~v~�~—~§~¼~Ô~è~/FMEƒQ|.>ä>äbävä�ä–ä´ä¿äİäİäİäêäååååå)å+å+å9åFå^å^åoåƒåRçe¾×¾×Ø×á×ØØØØØ Ø'Ø-Ø:Ø:ØWØ\Ø\ØbØgØgØmØrØrØxØ}Ø}ؕبخسسؼØÜØÜØÜØãØåØåØìØîØîØôØôØûØıØıØÙÙ
Ù Ù ÙÙÙÙÙ!Ù'Ù-Ù5Ù5Ù5Ù5ÙAÙIÙQÙYÙaÙiÙqÙwÙ�Ù�٨٫٫ٵٻÙÁÙÁÙÅÙÍÙÔÙØÙàÙèÙîÙöÙıÙÚ ÚÚÚ"Ú(Ú5ÚAÚGÚOÚSÚZÚbÚjÚnÚtÚ|ÚƒÚ‹Ú“Ú—Ú�Ú¨Ú­ÚÃÚÔÚÙÚÜÚ‚ÛSL˜§„„1„3„:„P„`„f„~„–„™„«„ó„TÔ*[.ë.ëBëWëfëjëxë~ë�ë�ëœë§ë²ë½ëÄëÔëëëşëì ì ììì3ì5ì?ì`ìkìmì†ìŠì˜ì�ì�ì¤ì°ì¸ìËì5íU$nsvdvd¡dŠd«d³dVl  ~H~HŒH¦H“HÅH²HÑHæHÓHIòHI I'I2I4I?IJIJIiIoIW,6Ò6Ò?ÒEÒMÒ\ÒkÒpÒXTÒΡΡï¡¢ ¢¢7¢A¢O¢i¢v¢v¢€¢€¢‡¢š¢˜¢¨¢¨¢³¢½¢âɢ̢ڢá¢ù¢££££%£0£J£e£y£–£¸£½£ãÉ£Ô£á£ÿ£ç£¤ ¤¤¤ ¤?¤'¤H¤L¤R¤Z¤_¤_¤l¤r¤�¤y¤™¤�¤£¤«¤°¤°¤ѤÕ¤Û¤ã¤ò¤ ¥ù¤¥¥#¥+¥0¥0¥Q¥U¥[¥c¥c¥h¥u¥“¥{¥œ¥ ¥¦¥®¥Î¥¶¥×¥Û¥á¥é¥é¥ö¥¦ü¥¦!¦'¦/¦O¦7¦X¦\¦b¦j¦j¦j¦€¦€¦€¦€¦‹¦•¦�¦¾¦ʦئݦë¦ÿ¦§§§§ §(§4§H§U§d§s§�§’§’§�§¥§²§½§ʧէ裡¨¨#¨#¨.¨D¨Q¨Y¨e¨s¨x¨†¨š¨š¨¢¨š¨º¨¿¨¿¨ΨÓ¨Ó¨â¨ç¨ç¨ø¨ı¨ı¨©©©&©5©:©:©M©\©a©o©a©ƒ©ˆ©–©ˆ©ª©¯©½©¯©Ñ©Ö©ä©Ö©ø©ı©ı©ª ªAªFªTªFªhªmªmªŠª�ª±ª¶ªĪ¶ªتݪݪúªÿª!«&«4«&«H«M«M«j«o«‘«–«¤«–«¸«½«½«Ø«İ«İ«ø«ı«ı«¬¬¬8¬=¬=¬X¬]¬]¬x¬}¬}¬˜¬�¬�¬¸¬½¬½¬άÓ¬Ó¬ä¬é¬é¬õ¬­­­­&­?­D­g­n­x­}­�­˜­­­¸­½­έÙ­á­æ­æ­ê­î­õ­ÿ­ ® ®®!®!®!®%®;®D®D®g®l®l®t®ˆ®‘®«®¸®îήÙ®ë®÷®¯¯¯¯¯3¯>¯H¯S¯X¯c¯k¯p¯p¯{¯ƒ¯Œ¯—¯§¯¿¯ׯë¯ğ¯ğ¯û¯°°#°D°P°^°c°q°u°z°z°а•°�°¢°­°º°Űß°ñ°±±±±&±+±6±C±N±h±z±Œ±Œ±Œ±Œ±‘±–±–±¢±³±³±Ù±Û±÷±÷±²² ²!²-²5²R²c²m²x²›²¬²½²βÙ²ñ²³³³³³³³)³.³.³6³A³F³F³N³l³V³„³‰³‰³‘³¯³™³dz̳à³̳ø³ı³ı³
´´´´´´(´9´K´P´P´d´P´|´�´�´‰´�´�´¡´¦´¦´¹´¾´¾´Ø´è´í´í´µµµµ6µFµKµKµeµuµzµ‘µzµ©µ®µ®µ¹µ¾µúµèµÖµ¾µS¶A¶/¶k¶p¶p¶�”¶”¶£¶³¶¸¶¸¶ǶÕ¶Ú¶·ğ¶Ú¶· ·G·5· ·_·d·Œ·z·d·¤·©·©·Æ·°·ğ·¸¸¸ ¸ ¸J¸Z¸_¸_¸k¸p¸p¸|¸�¸�¸”¸¤¸©¸©¸¼¸̸ѸѸä¸ô¸ù¸ù¸ ¹¹!¹!¹)¹.¹.¹6¹;¹;¹C¹H¹H¹P¹U¹U¹h¹m¹m¹€¹…¹Ó¹Á¹¯¹�¹…¹à¹å¹3º!ººı¹å¹@ºEºEºTºoºtºtº…º º¥º¥º¶ºĺɺɺѺÖºÖº޺ãºãºëºğºğº(»»»÷ºG»b»g»g»Ÿ»�»{»n»¾»Ù»Ş»¼ş»ö»Ş»(¼-¼_¼M¼E¼-¼w¼|¼–¼€¼|¼®¼³¼мº¼³¼è¼í¼í¼ù¼½"½3½3½Y½[½q½w½w½“½ ½ѽ¾¾ğ½ ¾'¾'¾'¾3¾8¾8¾K¾V¾`¾e¾p¾z¾¾¾™¾�¾�¾¦¾«¾¿¾«¾˾Ö¾Û¾ï¾Û¾û¾¿ ¿ ¿¿$¿)¿)¿4¿?¿D¿D¿U¿Z¿Z¿k¿p¿p¿Š¿•¿š¿¢¿š¿®¿³¿Ç¿³¿Ó¿Ø¿à¿Ø¿ì¿ñ¿Àñ¿ÀÀÀ*ÀÀ6À6À6À;ÀGÀ;ÀZÀ_À_ÀkÀ_À~ÀƒÀƒÀ�ÀƒÀ¢À§À§À³À§ÀÆÀËÀßÀËÀëÀ÷ÀÁ ÁÁ&ÁÁ2Á>ÁIÁTÁYÁmÁYÁ�ÁyÁŠÁ�Á�Á—ÁœÁœÁ¥ÁªÁªÁ³Á¸Á¸ÁÁÁÆÁÆÁÑÁÖÁÖÁáÁæÁæÁñÁöÁöÁÂÂÂÂÂÂ!Â&Â&Â1Â6ÂJÂ6ÂVÂaÂlÂwÂ|Â|†‹‹•šš¤©©³¸¸ÂÀÂÅÂÅÂÒÂ×Â×ÂäÂéÂéÂéÂéÂéÂñÂöÂöÂşÂÃà ÃÃÃÃÃÃ%Ã*Ã>Ã*ÃJÃ[Ã`Ã`ÃrÃ}Ã�âøÃÃÃÜÃÈÃèÃóÃşÃÄÄÄ Ä@ÄEÄ[ÄfÄÄkċĖġĦĦĸÄÃÄãÄèÄşÄ Å"ÅÅ.Å9ÅDÅIÅIÅoÅ[Å{śŠŶÅÁÅÆÅáÅÍÅÆíÅ Æ#ÆÆCÆ/ÆOÆZÆ_Æ_Æ…ÆqƑƱƶÆÌÆׯÜÆ÷ÆãÆÇÇ#Ç9Ç%ÇYÇEÇeÇpÇuÇuǛLJǧÇÇÇÌÇâÇíÇòÇ ÈùÇ-ÈÈ9ÈOÈ;ÈoÈ[È{ȆȋȋȚȟȟȮȳȳȳȹȾȾȾÈÈÈÊÈÊÈÔÈáÈÉÉÉ É É É É ÉÉÉ&É-É8É8ÉEÉKÉRÉ]ÉhÉsÉ~ɉɃɬɤÉÄÉÒÉÌÉõÉíÉ Ê Ê ÊÊÊ1Ê7ÊEÊXÊXÊpÊzÊ�ʨʨʨÊÉÊÙÊîÊËËË8Ë?ËNË`Ë`ËdËiËpˀ˟˟ˣ˺ËÁËÆËÆËÊËÕËáËïËÌ%Ì6ÌDÌw̃̈Ì�̲̾ÌÌÌÑÌßÌûÌ&ÍLÍOÍ_ÍaÍaÍeÍ„Í�Í�Í’Í ÍËÍëÍëÍëÍîÍĞY, vÒvÒ„ÒŠÒ�Ò�Ò¬Ò²ÒZ`áõ^™^™t™–™£™§™¶™Ï™Ó™Ù™ì™ š š š<š*š š[šeš[8cmdd'dd3d>dIdTd_dkdqd\\�”ˆœˆœ–œ˜œ£œ«œ¶œÁœÌœÎœäœäœöœ� ��=�]ܳfîéîé ê)ê7êYêYêjêwê•ê�êÊêÏêøêë1ë7ë;ë^ë„ë‰ë²ëÌëòë ììì,ì4ì9ìJìRìqìwì{ì”ìœì»ìÀìÑìÙìøìıìí ííí%í-í9íOíTífíkí|í�í“íœí°í»íàíî5î:î:î:îJîQî_îlî�î�î¥îªîªîÁîÃîÃî×îÙîÙîğîòîòî ï ï ï"ï"ï3ï8ï8ïHïmïï„ï„ï„ï„ïœï¿ïÒïğïğïğïıïğğğğ#ğ:ğ<ğ<ğIğ`ğ`ğwğyğ“ğ±ğ±ğ±ğµğ·ğ·ğ·ğ¼ğ¾ğ¾ğÃğÃğÍğÒğÒğğğğğğğøğúğúğúğñññ ñ ñññ3ñ5ñHñ^ñ^ñ^ñ^ñ^ñqñ‰ñ‘ñ‘ñÔñ^`
UU(U4URUnU{U’U¥U°UÅU²UÑUÙUäU÷UğUVV_ôWæ=æ=>>> >'>,>.>5><>@>R>„>�>‹>¶>»>Ü>Ü>è>ğ>ÿ>9?>?k?s?x?�?Œ?”?›?º?À?ß?á?@ @"@A@G@N@N@T@W@[@l@Œ@�@`$–ܖܥܽܽÜÃÜaxb|6ç6çVçxçxç‚ç‡ç‡ç¦ç³çµçµçµçµçÂçÊçİçñçóçóçûçèè èb”"~/~/ /ª/¶/»/Ë/Ñ/æ/ú/ 00%0<0D0N0]0e0r0z0}0}0}00�0˜0¡0©0¬0¾0cHÏî9î9:#:&:/:5:L:c:z:Œ:º:Ö:ğ:õ:ú:;;.;;;N;d;x;};ˆ;¨;­;°;Ê;ä;ì;ô;ù;<-<5<=<B<\<d<i<‰<�<‘<«<Å<Í<Õ<×<ñ< ====7=?=?=D=I=T=T=_=_=k=k=}=½=Ó=Ó=ã=dd¤¹È‰È‰Ø‰ß‰ë‰ñ‰ù‰ŠŠ&Š=ŠJŠJŠMŠ[ŠkЂІŠ�Šeºû++-+2+F+u+�+�+˜+¨+¨+¿+Æ+İ+ä+í+,,,,0,0,F,F,\,\,r,r,ˆ,ˆ,�,�,´,´,Ë,Ë,â,â,ù,ù,--'-'->->-U-U-m-m-…-�-˜-©-´-Å-È-Ê-á-è-ô.f¬÷†† ¦­µ½ÀËİİñøûı"8;ILOVZbp‚’•äg(FLÆ’Æ’í’Ú’ù’““hCFKFKiK~KƒK‹K“K›K¨K®K·K½KÂKÊKæKìKîKğKıKıK
LÿKL!L#L%L2L2L2L7L@LHLQLYL[LcLkLsL€L†L‘L˜L¨L³L¿LİLäLïLõLM
MMM&M6M>MAM§Mi8-77070K0O0T0_0j0m0q0y0j¤ö›fšfš„š¨š®šµšµš¼šÜšáš÷š›ÿš ›2›D›M›U›_›}›�›˜› ›ª›Û¯›Ï›á›ë›ó›ø›œÿ›3œ œ?œUœAœuœaœ�œ“œ�œ¥œ¥œ®œ¶œÌœåœ÷œ�
�
���4�6�;�F�\�\�\�`�l���›�¥�²�Ó�á�ë�í�í���(�+�K�O�n�r�•�™�¸�¼�¼�¼�Â�Ğ�Ú�ó�ù�ŸŸŸŸ Ÿ9ŸDŸRŸ\ŸuŸxŸ€ŸŒŸ�Ÿ–Ÿ™Ÿ²Ÿ´ŸÀŸŸÊŸĞŸéŸ   " ' 9 H a r r } ˆ   ¬ Á Æ Ø ç ¡¡¡¡"¡*¡8¡?¡Q¡kfä†Û†Û Û©ÛÉÛÉÛÏÛ×ÛßÛçÛïÛõÛÜÜÜÜÜÜ Ü Ü&Ü+Ü+Ü1Ü6Ü6ÜNÜaÜgÜlÜlÜuܕܕܕܜÜ�Ü�ܥܧܧܭܭܴܼܼܶܶÜÃÜÅÜÅÜËÜËÜÒÜÒÜÚÜàÜæÜîÜîÜîÜîÜúÜİ
İİİ"İ*İ0İHİWİaİdİdİnİtİzİzİ~݆İ�İ•İ�İ¡İ§İ¯İ¶İ¾İÆİÊİĞİÛİáİîİúİŞŞ ŞŞŞ#Ş'Ş-Ş5Ş<ŞDŞLŞPŞVŞaŞfŞ|Ş�Ş’Ş•Ş;ßl`'"'"0"7"K"_"d"‚"‡"¥"§"Å"Ç"Ş"ò"û"ı"#!#R#m|2ÍББæ‘÷‘’’*’;’N’V’d’‚’�’“’ ’µ’µ’È’Ù’ß’ô’““$“)“1“9“?“W“j“u“y“ƒ“˜“�“ “­“¯“Á“Á“ȓГâ“â“ñ“ÿ“”” ”$”0”4”@”D”P”T”T”g”z”€”„”�”’”¡”¥”´”¸”˔ϔϔϔϔԔæ”õ”••-•=•M•R•R•R•^•f•n•t•‰•‘•Ÿ•©•·•½•¿•¿•¿•¿•¿•¿•¿•¿•¿•˕ӕەá•ö•ş•–
–––––0–6–B–H–U–p–€–Œ–’–Ÿ–±–¿–Ş–8˜nÔ¼íHkHkZkkkvk�k—k©kÁkÆkÏkÖkãkêkøkÿkll l ll+lEl[lslxl�lˆl•l©lÄlËlÍlĞlÕlølm"mo$hm×&×&å&ù&''p¤b‡ÎXÎXâXéXYûXY Y'Y'YGY]YIYiY�Y{Y›Y Y§Y§Y¯Y¶YÁYÌYÔYÜYçYòYZıYZ%ZqFƒælælm m!m9mCmNmNmSm^mjmumƒm“m£mªm°mÅmÚmÚmîmömnn"n/n@nQn_nmntnzn�n¤n¤n¸nÅnÖnænìnınınoo"o/o?o¡or8¬öJöJúJÿJKK#K,K1K6K8Ks88B00“0—0œ0§0±0´0¸0À0t0†�>I>ITIgItIzI}I…IuÜtöö#.7GY_ek�p•¢¥­¿ÅÊí
!'7=IW\jƒ‘šª¬³¸Àßíù29CRX^dj€¡µÁØãòÿ+9P\ao� ·ÀÆÑÖÜóş  /1?N``h‹–Êv`ÌàN˜N˜d˜†˜“˜—˜¦˜ŘɘϘâ˜ÿ˜™™2™ ™™Q™[™wT�Ş–à–à®à¶àÃàãàõàüàá áááá<á<áCáFáKáZá^á‹á�á”á”á›á�á£á¯á½áÁáÒáááåáçáöáúáâ â%â%â9â<âHâRâYââŠâ�â“âÉâàâëâïâã ãããã ã ã:ã>ã@ã@ãKãOãiãmãmãmãqã”ãxˆßı–ã–ãªãÀãÀãÀãÂãÂãÉãËãËãÒãÔãÔãáãããããğã÷ãùãùãä äää'ä,ä,ä<äy°‰±nene†e�e™eóeŞeÓe¾e§eùe fûe&f&f?f3flfqf}fˆf�fŠf©f¯f¶f×fÉf½fëfífggg:g:g:gFgz †*>´>´[´b´j´u´Œ´–´–´­´·´Ò´è´ö´ú´µ.µBµIµMµfµpµ�µ�µ�µ•µœµ¡µ¦µ«µ²µ¹µÓµÚµêµîµîµøµ#¶6¶I¶I¶O¶Z¶a¶i¶t¶{¶ƒ¶�•¶•¶ ¶¾¶Â¶Ú¶Ë¶õ¶õ¶û···'·.·2·4·F·F·F·X·`·†·”·”·˜·­·µ·Å·Ğ·å·ê·ø·¸¸¸(¸,¸1¸9¸=¸L¸N¸]¸_¸n¸p¸¸†¸Š¸�¸¦¸´¸»¸¿¸Ï¸Ú¸ß¸ı¸¹¹¹¹&¹4¹;¹?¹G¹[¹c¹n¹r¹r¹r¹}¹ˆ¹˜¹¤¹º¹Â¹Í¹Ü¹ä¹ï¹ô¹ü¹ººº"º'º9ºAºLºLºLºLºZºiº†º’ºšºªºººØºÜº »»ñº»»%»,»;»J»R»`»g»k»m»|»„»’»™»�»�»Ÿ»±»±»Ã»Ã»Ã»É»Õ»ç»ï»¼3¼A¼E¼c¼j¼q¼|¼’¼”¼›¼®¼¶¼Ä¼Ë¼Ï¼Ñ¼ä¼ì¼ú¼½½½½½½½-½5½C½N½R½R½W½_½c½r½t½ƒ½…½”½–½¥½¬½°½Ä½Ì½Ú½á½å½õ½¾¾#¾+¾9¾@¾D¾L¾Z¾a¾e¾m¾�¾‰¾”¾˜¾˜¾˜¾£¾ª¾¸¾Ò¾â¾í¾¿¿¿"¿.¿D¿L¿W¿f¿n¿y¿~¿†¿‘¿�¿¡¿¬¿±¿Ã¿Ë¿Ö¿Ö¿Ö¿Ö¿ê¿ú¿ÀÀ À4ÀEÀZÀgÀkÀyÀ�À�ÀµÀÎÀçÀéÀôÀüÀüÀÁ"Á3ÁJÁcÁqÁ|ÁˆÁ�Á’Á�Á¥Á¥Á¥Á¿ÁÍÁÛÁğÁÂÂ#ÂAÂHÂHÂXÂl††Š ¯ÂÊÂÕÂìÂôÂôÂÃÃ)ÃDÃMÃbÃ|ËØöÃÄÃÚÃóÃÄÄÄ3Ä3Ä?ÄWÄoÄxÄxÄxĄĕĭĶĶĽįÄÌÄØÄ>Å{ÌL»®ö®öÌö×öâö÷÷
÷÷"÷(÷9÷H÷W÷d÷d÷j÷o÷t÷‡÷š÷¥÷©÷»÷È÷Ğ÷Û÷×÷ò÷øøø ø&øø7ø.øAøCø_øKøgøuøuøwø“ø“øšø ø©ø°ø³øÕøéøÜøñø÷øùùùùùù ù ù+ù@ùIùIùIùIùeù|ù‚ù‡ù‡ùœù¢ù§ù§ù³ùĞùğùõùúùúùú#ú2úAúIúNúTúYúYú`úgúŠú§ú©úÆúÛúÛúáúáúîú÷ú÷úû$û/û4ûAûLûTû\ûlûƒûƒû“û“û¥û«ûÓûÜûÜûŞûåûêûêû÷ûüüüü$ü1üCüNü\üeüjü‘üšü¥üªü±ü¹üÌüáüæüíüúüıı(ı/ı5ı>ı>ıGıaıhımı{ı‹ı™ı™ıŸı¦ı¯ı¯ıÂıÔı×ı×ıèığıøış!ş(ş5ş7ş>şRşaşaşaşˆşˆşˆş•ş•şªşµşÇşÔşßşíşøşÿÿÿ(ÿ;ÿ=ÿLÿaÿcÿqÿ†ÿ†ÿŒÿ•ÿ•ÿ¢ÿ¨ÿºÿºÿÇÿÊÿÕÿçÿîÿùÿşÿ 24Ncccelrƒ‘££©°¹¾ßèèî÷÷#&,5=HZ`kkx{�Š’�¯µÀÀÍĞÖßá+1<NT\\\\gà|”�¾g3g3{33ˆ3‹3”3�3¯3¯3Ø3Ü3á3ä3í3ı34444 4'4/474>4N4N4Z4}Œ >VV*V1VaVMVmVrVyVyV™V¯V›V»VëV×V÷VüVWW WWW%W0WCW;W[WcW~À-ee.e>eHeHeReRe\ene{e~e€e‰e–e–e¤e¸e¸eÜeéeéeùeff)f6f6fLfof…f¨f±f¾f¾fáfëfëfgQgWgWgWgig¸ºä�Š�Š¨ŠªŠ¶ŠºŠÇŠÊŠäŠäŠäŠêŠîŠöŠ‹‹!‹#‹#‹,‹.‹.‹7‹9‹9‹B‹D‹D‹M‹M‹V‹\‹_‹i‹z‹€‹Œ‹Œ‹ô‹€œZ}.*.*L*]*€*‡* *˜*¸*Ø*Ä*ä*õ*ú*++3+[+b+{+s+“+³+Ÿ+¿+Ğ+æ+Ò+ş+ , ,#,#,-,�œX{Î-Î-Ú-ê-õ- .O.\.m..†.�.¡.¨.¶.Î.İ.ê.í./ //%/1/=/A/H/~/‚x¬h¬h¬~¬…¬Œ¬«¬º¬É¬Ø¬ç¬ö¬­­­ ­ ­.­3­N­h­h­~­�­”­¢­©­®­®­µ­Ç­Ğ­Ò­à­ò­ò­ò­®®!®,®9®>®N®S®c®o®t®�®†®–®›®«®­®½®¿®Ï®Ñ®â®ë®ë®í®ı®¯¯¯/¯A¯S¯e¯u¯u¯u¯x¯‹¯ƒ\åøø‹ø‹ŒŒ Œ-ŒBŒIŒSŒaŒdŒfŒpŒ‚Œ‚Œ‰Œ¿Œ„0ÎÖÎÎæ(ğî<D…`·Ë>—>—T—v—ƒ—�—œ—µ—¹—¿—Ò—ï—ñ—ñ—"˜˜ñ—A˜K˜†L4CF,F,T,f,l,t,†,Œ,•,§,­,°,ì,‡(–œ7373E3T3X3[3a3ˆ\DWî,î,ü,---.-4-=-O-U-^-p-v-y-Ç-‰, ÒÒÒ#Ò+Ò0Ò6ÒŠ¬!H

$
6
=
D
S
X
w
w
|
›
 
§

¸
×
×
ö
 ø
 & ( G G G G V o h ‡ ‘ ‹\?�a�a«a³aºaßaíaïaıa
bbb2bAbLbPb[bgbrb~b•b¬b¿bÖbàbîbccc"c"c(c9c?cOcOcgcgcŒcŒc‘c‘c—c£c°c¼cÑcèc÷cdd d7dOdpdpdyd~d~d~d~d�d—dŸd¤d²dÀdĞdÕdÕdãdãdèdèdòdıdee!e1e<eFeJeSeleoee†e¤e­e­e¼eÌeÜeãeéeõeıefff&f,f9fDfJfZfjfjf—f¹fÅfÍfØfßfêfìf÷f÷fg g gg!g3g9gGgTgagkgogxg‘g”g¤g«g°g°gÄgÄgÉgÍgİgægøgşghhhhh+h1h=hMhMhMhRhjhjhyh|h�h®h¹hâhôhÿhiii!i3iCi[ibifilitii™jŒ<NY~)~)˜)¤)¶)Ì)í)Ú)***'*�`l€Ğ›Ğ›ğ›÷›ÿ›
œœ œ'œ6œ@œCœgœiœyœyœ‡œ�Xn.Õ.ÕTÕfÕkÕ‚Õ”Õ�Õ¨Õ¶Õ¾ÕÍÕãÕåÕîÕÖÖÖ"Ö$Ö/Ö:Ö:ÖBÖJÖTÖ\ÖfÖoÖwÖzÖƒÖ�Ö¯ÖÁÖÄÖÉÖÜÖôÖ×××"×%×*×=×U×i×q×qגוך׭׳×Èת×à×õ× ØØØØ=ØDØOØfØ�83=ÓÓÓÓ%Ó)Ó7Ó:Ó?Ó�8>HFÓFÓOÓOÓ]ÓaÓhÓkÓpÓ‘D*N+N+h+{+…+Œ+˜+°+¹+½+Ï+Õ+ô+’Ğy©®ø®øØøÛøâøèøîøğøöøüøüøùù ù-ù:ùMù\ùpùvùxùù…ù�ù�ù ù¢ù©ù¯ù¹ù¹ù¹ùĞùâùéùøùúù úúú-ú“0+3ö+ö+ÿ+%,6,<,<,D,”„\y6í6íHí]ígípíríyí‰í”í–í í í¦í·íºíºíÛíæíèíîî îî+î~î• 
�*�*§*Å*Ê*–h÷ î^î^___(_3_9_J_P_a_g_s_Š_Š_œ_­_º_À_Ñ_×_%`—�ÖîOîOP!P5P=PKPOPXPXP]PjP€PªP¯PÓPÛPàPçPıPQQ+QAQeQQ‘Q˜ˆù&ı&ı>ıPıWı^ı}ı‚ı¡ı¦ıÀı­ıßıÌıëışíı ş ş+ş+ş+ş=şDşcşcşkş™ y}PˆPˆYˆeˆjˆš(Aãã@ãHãNãVãXãXãiãiãiãqãyã‹ãšã‹ã¯ã±ã±ãËãÍãÍãØãİã÷ãüãüãüãää ä"ä/ä1ä>äFäNäUädäqäsä„ä‘ä‘ä‘äšä¬ä¿äÅäÍäÏäÜäÜäñäñäñäüäåå#å#å#å1å7å<åDåOåaålåqåqåxå|åŠå�å—å�å¼åÉåĞåÙåõåúåúåúåúåæ æææ;æ;æ;æBæPæ_æræ…æ‡æ‡æ‡æšæšæ¡æ¨æ­æ³æÅæÏæêæççç-ç2çVç]çiç‡çšç¥ç¬ç°ç°ç°ç°ç»çÅçÓçõçèè'è'è5èSèƒè–è§è¾èÑèÖèÖèÖèŞèéèûèé é é ééJéPéPéPé[éeéqé|é~é~é~éƒé�é�éÙé›H%—/—/¥/¬/·/Å/Ğ/Ø/Ø/ğ/ú/00œ0 ¦T¦TÍTºTÙTïTèTUU�T<M^(^(x(„(–(¬(Í(º(å(ö())?),)W)o)o)y)�,×–Q–QÈQÜQäQïQöQıQRRR R)R0RKRMRTRoRvRR�R–R„R¢R¢R¢R°RºRÇRçRéRS S S'SESJSQSeSlS‡S‰S�S«S¿SÚSİSåSòSTT.T6T6TRTRTmTmT“T¥TŸTXi>>Tbhn�›­±·ÅÈÒ Lgnşnş�ş’şªşÅş±şåşÑşñşÿóş'ÿÿ3ÿ?ÿDÿPÿ`ÿgÿtÿÿ‹ÿ–ÿ�ÿ£ÿ¯ÿ´ÿÈÿÏÿÓÿŞÿãÿîÿ!5<@@E^c|‘£¨³»»»½Öëö    -%Ee¡àZ�øbøbc c%c2c@cIcdcrc”c�c­cÇcÒcâcäcæcğcücd dd+d3dKdOdOdOdOdTdrdŒdŒd“d–d�dªd³d e¢d~“.,.,L,o,€,‡, ,˜,¸,Ø,Ä,ä,õ, -÷,#-0-0-H-H-R-£@I•– – ® À Ë ó Ş Ò ÿ  J 5 ) V p p � ¤ ‘ Ñ ¼ ° İ ÷ ÷ ÷  # # P i ] – › ® ¢ Ğ Á Ü ú 8%SD_}’ª�̽Øòòò9Feem¤(.à.à<à_àeàjàjàpà¥(!'¶Ò¶Ò¿ÒÍÒÓÒÕÒÚÒ¦D]j999%9.9:9O9W9]9c9e9e9t9§„½Ú(¦(¦[¦g¦k¦s¦{¦¦Š¦�¦’¦–¦�¦£¦§¦¸¦É¦Ë¦Ï¦à¦ñ¦ş¦§§"§"§"§4§¨€8˜8˜Q˜X˜_˜f˜l˜|˜‡˜‘˜œ˜³˜¶˜¸˜Ó˜İ˜ç˜î˜ù˜ ™™™)™)™;™©˜b__4_T_\_g_v__ƒ_�_®_³_Í_ì_ò_÷_
`7`@`V`\`d`g`l``¤`©`¿`Å`Í`Ğ`ğ`õ`a1a7a?a?aDaJaMaXaxa}a—a¶a¼aÁaáaêaïabbb;bDbFbebmb�b’b¬bËbÑbÖbÖbÖbÖbãbôbÿbc"c5cBcZcncc‰c‹cŸc°cµcÀcÍcícícícÿcª°)ˆ�ˆ�«�¸�½�Á�Ê�×�ã�î�ù�Ÿ ŸŸŸ#Ÿ+ŸEŸkŸeŸ{Ÿ„Ÿ¹Ÿ¥ŸÉŸÉŸáŸìŸ  3 l l l l Í «0ùAÀŒÀŒåŒñŒüŒ� ���&�4�>�P�Z�`�j�p�z�����“�œ�Ç�Ö�Ù�Û�å�÷����2�2�5�?�T�Y�i�t�y��� �ª�¿�Í�Ö�Ş�ì�ı� ��+�+�8�8�@�N�•�¬l£:f@f@@—@§@Ç@Ù@ñ@ A A6A>ABAEAIANAXA[AbAhAoAuAyA~AˆA™A A§A©A­A¶AÀAÃAÎAÚAİAîAùAÿABB(B9BBBKBSB^BiBuB†B—B£B±B³BºBÁBÆBÊB×BŞBCCC#C,CECVC_ChCpCyCCƒCˆCŒC™C C®C¸CÍC×CàCùC
DDD$D-D3D7D<DBDLDVDrD€D†D‹D“D›D£D°D¸D×DÊDéDòD E!E4E;EDEMETE]EfEoEˆExE˜EœEöE­  H…H…V…u…{…®À�¹?(?(H(o(](O(�( (’(Á(ä(ä(ô(ù(ù( ))).)3)3)S)X)X)l)q)q)�)�)œ)À)æ)****<*L*L*L*L*L*+¯$bg�&�&“&«&½&×&°´ªÆºƺàºïºïºòºûº»»»(»I»[»m»q»�»¡»³»¹»Ì»Õ»Ù»ß»è»è» ¼ ¼¼*¼H¼Z¼`¼s¼…¼‘¼“¼Ÿ¼§¼«¼±¼º¼º¼º¼º¼̼â¼è¼ô¼ ½½½$½9½@½@½@½N½\½f½i½w½�½„½–½›½ ½°½³½¸½Ƚ˽Ͻؽà½ò½ú½¾¾ ¾+¾@¾G¾O¾a¾g¾v¾‡¾‡¾�¾�¾�¾œ¾ª¾´¾·¾žϾÒ¾ä¾é¾î¾ş¾¿¿¿¿¿&¿.¿@¿H¿Q¿Q¿\¿s¿‹¿�¿›¿³¿»¿Á¿Í¿Ö¿Ú¿â¿ë¿ë¿ë¿À ÀÀ)À2À:À@ÀFÀFÀFÀMÀ_ÀkÀsÀyÀÀÀ�À“À±xÔÔÔ)Ô0Ô;Ô]Ô‘Ô­Ô¿ÔÓÔÙÔåÔîÔöÔşÔÕÕ ÕÕ Õ&Õ(Õ.Õ²Ü,ßNmNmlmtm„mŒm¹mĞmÔmÜmämêmşmnnnGn‘nln´n¹nËnÚnÜno ooo$o,o8o@oHo[ocohoro’ošoœo¦oµoÕoİoßoÿoppppp,p4p=p=pBpFpNpWp`php„pŸp¹pãpæpıp
qq5q9qjq„q–qÀqÆqÈqòqõqõq rr-rDrOrSr^rir{rŠrŒr¶r¹rËrÚrßr sss&s5s7sasdsvs…s‡s±s·s·s·sÁsÁsÌsıstttttt3tLt_tftrtytytŒt�t�t�t—tœt¯t¶tÂtÉtÉtàtâtçtútu uuu!u+u+u2uSuSueu³ Ä�E�E³E¾EæEÑEÅEFòEF&FFSF>F2F_FmFuF€F‚F�F˜F˜F�FÊFÏFüFGGG:G'GFGQGfGSG…GrG‘G–G‘G¬GºGÂGÍGÏGÚGåGåGêGHH"H"H/H4HSHUHtHtHtH|H´\ãöş]ş]^&^,^7^E^Q^h^h^z^€^‹^›^¦^´^Á^í^µ(5;ff„—�¥¬°²¹ÀÄÄÌåïï   - 1 6 R z ~ ‡ ‹ � ¡ ¾ ¾ Ì à å ş      F [ b u y ~ š  Ê Ó × Ü í ÿ !#!%!>!Q!U!U!U!q!™!�!¦!ª!¯!À!İ!İ!ë!ÿ!""."2"D"D"D"I"X"y"˜"£"©"¿"Ğ"Õ"ê"#.#2#;#?#D#U#n#n#|#�#’#«#¼#À#À#Ç#Ú#Ş#ğ#õ#$9$A$J$N$S$d$z$Š$�$£$¼$Ï$Ó$å$å$å$å$ê$ %%9%D%J%`%q%q%q%x%‹%¤%¤%¤%³%³%Æ%İ%è%ù%ş%&&&&&#&.&C&E&P&e&q&s&~&Š&š&¡&¨&²&º&¾&Â&Ä&É&Ñ&Õ&ç&é&î&ö&ú&ü&ü&''('H'b'n'z'�'�'”'˜'˜'˜'Ÿ'¤'¾'Ê'Ö'İ'İ'ô'ö'û'(!(-(4(4(A(K(K(](˜ ºœ H H=HLHLHLHfHfHuHuH{H}H}HƒH…H…H‹H�H�H”H˜H�H�H�H�H�H�H¥HºHºHÏHÚHäHñHII#I%I@IEI`IeIkIkI€IƒIªI·IÏIïIïIøIıIJ J!J0J5J<JEJXJ`JhJmJmJmJvJ�J•J•J®J¼JÖJìJîJöJüJK K KKKK)K+K@KBKJKPKXK]K]K]K]KkKK�K•K•K�K£K«K°K¹KÁKÊKĞKÖKØKØKØKàKàKîKLLLLL1L7L?LDLMLXL[LaLgLpLsLsL�L�L‘L´LÑL×LßLäLíLïLïLôLöLşLşLM+M0M<MBMEM\M^MaMqMuM|M…M”M¢M¨M°MµM½MÂMÂMÊM×MïMôMşM&N1N<NGNRN]NhNsN~N~N~N†N†NŸN­NÇNİNİNßNßNèNîNğNğNöNüNüNO OO O O&O)OHOSO[OcOhOhOoOsOxO‡OŒO–O O O­OÔOÔOÚOèOùOP PP)P?PEPJPJPOPbPnPvP†P�P™P§P®P°P¹P¹P¿PÍPÙPìPÿPQQQ.Q3Q3QPQPQbQhQqQwQ€Q�Q“Q“Q¦Q¬Q®Q¹QËQŞQŞQòQşQRR!R'R*RARCRFRVR`RcRcRrR…R—RœR¨R®R±RÈRÊRÍRİRáRéR÷RüRSSSSSSSS(S.S4S>SHSVSkSnSpSzSzS|S„S‰S�S“S“S™S¡S¦S¦S«S¶S»SÀSËSĞSöSøSıSTT TTTTT T%TATKT_TsTyT�T�T�T•T›T¥T¯T½TÒTÕT×TáTğTõTõTõTıTU U UUUUU#U#U(U3U8U=UBUQUQUbUhUhUvU|U‚UŒU–U¤U¹U¼U¾UÈU×UÜUÜUÜUäUéUòU÷U÷UıUV
V
VVV V$V)V8V8VIVOVOV]VcViVsV}V鰦𦸅Τ冬狽銼鯽鯽鯽沇胘揥滍滍趖鞔鎷鎷䣭WWWWW(W2W@WUWXWZWdWsWxWxWxW�W�竝㜁㜁类︱名名規鈷鈷ば炖紟巰蔜饌
X XXX(X-X-X-X5X:XCXHXHXRXZX_X_X_XeXoXuX华竪竪𤞏唓丫坩坩狷碼籬偛揯揯綆濲顲
YYY&Y0Y>Y>YCYCYNYNYNYRYWYWY]YaYfYnYtYvYY䇯鋶𢫨︳︳坡玆磐д炚紏舽貄貄貄貄貄貄貄貄貄貄饟�YZZZZ Z)Z4Z=ZEZJZJZJZPZXZ]Z]ZaZfZfZoZ}Z变𩗗涏涏刊鈽鈽璘е鄇鄇嫸蓺濢酆
[
[[[[[[[%[*[*[G[U[a[j[p[z[‚[‡[‡[‡[›[¤[ª[¼[Æ[Æ[Î[Î[Ö[Ø[Ø[ñ[û[\\\\ \\\\\\\\#\'\¢_·Ğà6u6uXunuzu˜u´uÁuØuëuöu vøuv v v/v/v7vCvYvnv}vˆv›v¡v¡v¡v¦v«vºvÅvÜvŞvãvòvıv
www"w¸”*Kؠؠğ ÷ ş ¡
¡ ¡¡¡¡9¡&¡I¡Q¡Y¡\¡^¡n¡w¡€¡†¡‰¡š¡±¡Â¡Í¡ÿ¡¹à.¢~<~<œ<§<¸<»<¿<È<Ï<İ<ì<==$=6=H=W=f=w=†=†=”=˜=œ=¡=¥=²=¹=Ç=Û=ä=ê=ø=>>>!>!>&>&>&>+>+>:>C>K>a>a>a>f>f>{>‡>’>—>—>š>Ÿ>Ÿ>»>Ç>Ô>Ö>Ö>Ú>Ü>Ü>ø>???????$?&?&?)?)?2?8?=?Y?Y?Y?Y?Y?Y?Y?Y?Y?Y?Y?Y?[?l?~?�?œ?œ? ? ?¨?Ä?È?Í?h@º,îÑîÑüÑÒ ÒÒÒ»˜?a6W6WLWRWYW‰WuW•WšW¡W¡WÁW×WÃWãWXÿW X$X+X+X+X1X4X8X@XXXcXvXnX�X˜X¼PQa§%§%µ%Ã%Ê%Ú%ë%ğ% &&&!&/&;&M&‰&½D%~à~à’à à¦àÉàÏàÕàúàáá á áá¾ô#œÆ0Æ0Î0İ0á0î0û011>1K1]11Ÿ1­1É1Û1ó1
2262T2c2~2‰2¤2½2½2Ø23363H3W3f3f3q3„3•3¨3¸3Å3Ğ3ß3ÿ3ÿ3 4 4 44)404O4X4e4i4q4|4”4¬4µ4Å4Í4Ò4ö455!555:5B5h5j5u5¨5Â5Â5Ú5é5ñ56 66#6B6J6R6]6_6o6‡6Ÿ6·6Ï6á6ø67
77*7.727¿ ˆ…ˆ…‘…°…µ…À\…X¦È¦ÈÀÈÇÈÔÈßÈäÈêÈüÈÉÉ É>ÉRÉ]ÉcɅɅɕɪɬɯɻÉÃÉËÉÓÉáÉçÉíÉùÉùÉûÉ ÊÊÊÊ/Ê/ÊMÊMÊ`ÊmÊrÊrʉʒʡʷÊÂÊĞÊÛÊëÊøÊ
ËËË&Ë3Ë5Ë5Ë=ËBËBËJËOËOËWË\Ë\ËdËiËiËoËtËtË{ˀˀˇˌˌ˗˜˜˧ˬˬ˷˼˼ËÇËÇËàËçËíËğËûËşËÌ Ì.Ì5Ì8ÌJÌLÌRÌfÌŝ̤̹̂̂̂̌ÌÉÌÚÌàÌñÌ÷ÌüÌÍÍ(Í7Í=ÍNÍYÍcÍrÍ�͇͒ͭ͘ͳÍÄÍÏÍÕÍåÍåÍõÍÎÎÎ,Î3Î9ÎJÎUÎZÎwΌΚΪζÎÈÎÓÎâÎäÎöÎşÎÏ
ÏÏÏ&Ï,Ï6Ï<ÏGÏMÏOÏ\ÏiÏsόϚϚϠϧÏçÑÁ0#«p¨p¨�¨¹¨Á¨Á¨Ï¨â¨û¨ş¨©©©"©$©$©,©.©.©6©8©8©@©@©I©O©T©T©]©i©m©r©x©}©}©…©�©”©™©™©�©ª©Â©á©ä©ù©ªªª ª"ª"ª"ª*ª,ª,ª,ª4ª6ª6ª6ª>ª@ª@ªKªKªQªVªVªVªVª]ªhªzªˆª–ª ª ª ª°ª°ª·ª»ªÁªÙªçªúª«/«2«9«K«S«\«g«g«r«x«}«}«}«„«Š«Ÿ«§«­«Ï«Û«á«æ«æ«í«ø«ø«ı«¬¬¬¬¬n¬Âd)¤B¤BÆBĞBÓBÓBİBğBòBÿBC C C(C8C=CCCKCNC`CÃLWf/1/1C1G1L1W1W1a1g1g1k1s1Ä\CVÇ0Ç0İ0İ0á0æ0ù0ü011 111 1!1+1Å8(2æÒæÒïÒïÒıÒÓÓ ÓÓÆ¨²Øgg.g6gAgZgNg‡gágÌgÁg¬g•gçgügìghh(hOhThihVhuh{h{hˆh¯h×h½hëhiiiiÇl¥¼6.6.P.x.[.„.¤.½.¶.Õ.í.Ú.ù. /,/>/Q/Q/^/}/}/‡/È4“œ®è®èÂèÇèÍèÑèÕèôèüèɼLwæ’æ’ş’ ““,“D“I“N“R“T“Z“`“v“c“‚“‚“¡“¹“¦“œϓ蓔”
”””””2” ”>”>”Q”Y”k”…”~”‘”�”Ê4;D~İ~݇ݓݲݷݹݹݾİË”"@§@§N§`§d§l§t§§Š§’§�§¨§­§Ã§Ê§Ñ§Ü§ç§é§ô§ÿ§¨ ¨¨#¨,¨4¨4¨8¨o¨Ì€Úö/5/5M5Q5U5]5k5n5q5„5Š5Œ5›5Ÿ5£5«5³5¿5Ô5å5ì5ó5ó566Í\!´FIFIxIƒI¸I©I�I¾IíIòIòIöIJ J'J.J<J>JFJ`J|J�J›J³JÇJÌJÓJøJÿJK
KK#K@KRK_KwK”K�K©K­K­K¸K¿KÑKÔKÖKìKÛKøKLL*L<L?LALWLFLcLcLcLuLuLƒL�LµL®LÊLÊLÏLÓLïLûLM4M>MBMRMqMfM}MM‘M¥M¶M¯MÅMÉMßMşMóM
N NN(N<NFNONfNpNrN†N�N�N¦NªNªNªNµN¼NĞNèNêNOO-O2ODOLOmOƒOƒOƒO¨O¨OºOÎd9Î6363l3s3{3„3•3¢3·3º3½3Á3Ê3Ø3â3ç344!4M4R4_44„4“4¿4Ç4Ì4á4 5555-5@5P5T5s5„5‰5‰5«5«5«5«5«5»5Ğ5Ó5Ö5Ú5Ú5ß56 66"6*6E6W6d6o6�6�6�6š6±6³6³6³6À6×6Ù6Ù6æ6ı6ı67737E7W7u7u7u7‚7™7›7›7›7¨7¿7Á7Á7Î7å7å7ö7ş78)8;8M8k8k8k8x8�8‘8‘8�8µ8µ8Ê8Ì8Ó8õ899 9-979999999U9]9_9_9�9»9Ϥ/TVåVåvå˜å˜å·åÇåÌåÌåÛåíåææææ+æ3æ3æ3æ5æ5æ5æ5æSæSæSæSæeægægægægæzæ…æ¨æĞxµ�”�”´”À”˔Дܔç”ì”ó”ø”••••:•'•F•H•M•X•]•]•]•�•|•›•••Õ•è•û•–––&–9–L–_–d–d–w–Š–�–°–²–²–Å–Ø–ë–ş–ş–ş– —Ñ0Š’NèNè\èbèfè…è¦è¦è¬èÒ<:E8888)858A8J8S8\8b8g8ÓluŒo'o'}'‡'�'¥'¥'ª'¬'¸'Â'Ğ'í'ï'ÿ'ÿ'(( (?(ÔÜŸÒ*TI5o|ˆ›�ÈÍùùş€&€<€R€…€”€Ì€¸€ç€ô€ �%�-�L�T�y�n�Z�‰�¢���Â�®�Ö�ã�‚‚‚‚‚ÕL½Ì�/�/¬/¾/Å/ä/ä/ö/ 000.080ÖÈg•w1w1›1Ÿ1¾1à1ì1ó1ş1 22 2 2$2.2F2Q2a2m2t22�2’2£2¥2§2§2§2¯2¯2¹2¹2Á2É2Ñ2Ù2İ2ç233× ………"…(…Ø`FZg8g8w8~8€8…8”8š8¯8¯8½8½8É8Ò8Õ8ã8í8ğ8ø8Ù<›¦&¡&¡/¡:¡E¡P¡[¡e¡ƒ¡�¡�¡Ú 2.`.`F`X`^`j`u`ƒ`�`¦`±`Á`Ó`Ù`ß`å`ø`ş`a a a%a0a8aFaSa�aÛ, Ö*Ö*ä*õ* ++ +%+Ü4¸…¸…Æ…Ğ…Ù…à…ç…ñ…ñ…÷…İÄKx^ö^öŠö�ö’öŸö¤ö¶ö¸ö¼öÀöÃöÖöïö÷÷%÷,÷E÷g÷l÷…÷§÷¬÷³÷Ì÷î÷ğ÷ ø+ø+ø+ø@øZøiø{øŞ}¾fofo„o‡o�o¡o©oºoÇoÍoÒoÒoßoèoîoşo pp-p>pEpQpapapop‚p�p‘p¢p¢p¢p§p§p³pÂpÕpÛpàpôpúpqqqq+q8q>qDqIqOqUq\qhqoqqqvq~q€q…q‘q“q˜q q¢q§q¯q±q¶q¾qÀqÅqÏqÑqÖqàqàqàqğqğqğqr rrr#r+rDrJrUrYr_rjrƒr�r™rŸr¬r±r¶r¶rËrÓrÛrùrssss$s-s2s7sLsSs\shsnszs~sƒsˆs“s�s©s«s±s¾sÃsÈsásìs÷s÷sıs
t ttt3t>tItOt\t\t`tetetvtxtxt‹t�t�t t¢t¢tµt·t·tÊtÌtÌtŞtŞtätététuu u!u)u0u6u>uQu\uSululunu†u‰u‹u—u©u¹uÅuÜuöuûuv v2v7v7v=vQvcvnvvv~v‚v�v–v›v›v¡vµvÅvÊvÊvĞvÖvÛvÛvÛvávğvwwwwww"w"w'w2w>wXwnwzwzw€w�w�wœw¨w·wÊwÊw×wãwãwãwãwçwìwıwxx"x*x,x>xCxQx]xcxpxpx‡x—x—x«x·x¹xÂxÎxåxåxëxøxúx y yyyyyy“{ß „È�O�O¼OÊOİOâOPP PP P&P5P:PFPXPXPvP�P”P›PµPÒPŞPùPQ-Q6QEQMQZQcQhQyQ‡Q§Q¬Q´QÍQßQïQõQR RRUR?R0ReR RŠR{R°R³RÓRgSà<*5dCdC…C‹C”C¦C¿CÇCİCéCá„ |îî"*--=HHKRY_ekrx‰‰‹” ¦ÌĞÓãëğğ÷ı%66?DNU\djlz‘”£¯¼¼¼¼ÂÔÚë 5<FNUU^eq�ŒŒŒ ´ÄÇ‚â„9ç6ç677737Y7o7€7‰7—7©7Â7Â7Ô7ê7ò7õ78ãX{ÍÖÖ );IO`go…� µÅÏÑáñú )47>X`z�œŸ§«½Ì×ßö#5=DHQSe|Š�”–£££¥¼ÂÂÔä 
(…(…1…E…J…å,ıDæ�æ����$�)�/�2�6�6�V�[�‘�}����¢�Â�Û�Ç�ç�î�ó�ı�‘‘ ‘"‘‘.‘.‘.‘3‘D‘I‘O‘R‘V‘V‘v‘{‘±‘�‘½‘Ö‘‘â‘ø‘ä‘’ ’’’’’ ’8’$’D’D’D’D’\’…’‘’æ˜Íï  (##72FAP__nn}}ŒŒ››ª¾¹ÈÈ׿õ^çxÈâÖ\Ö\ô\] ]]/]/]A]G]R]b]n]w]}]ƒ]�]œ]©]µ]Ã]Ò]Ò]^èd�²şèşèééé/é6éBéBéYéYépépé‡é‡é�é�éµé·é·é»é騯øûû8û?ûJû`û`ûrû}ûˆû™ûªûÁûÅûÊûÎûĞûáûóûÿûüü,ü;ü?ü?ü?üRügügüsüyüƒü�üœü£ü²ü´üÊüäüäüöüêP6FìCìCDDDD+D9D?DKDSD^DdDgDqDë ®-î7î7888 8'8.8D8U8f8x8Š8™8¨8¹8È8È8Ï8Ó8Ü8é8ğ8ù899$9$9$9$9$9094979?9M9U9b9j9r9ƒ9�9“9“9 9¦9µ9Ì9Î9Ù9æ9õ9ø9ş9ú9:):+:9:;:F:L:L:T:T:f:m:ƒ:ƒ:ƒ:ˆ:ˆ:�:«:¶:»:»:¾:Ã:Ã:ß:í:ú:ü:ü:;;;;,;8;:;:;=;?;?;L;N;N;Q;Q;Q;Q;Q;Z;`;d;p;�;�;«;²;z<ì(rx(ˆ(ˆ6ˆ=ˆMˆPˆVˆí(nt ' '('2'B'M'M'k'îTzK†î†î¤îªî­î¶îÀîØîèîñî÷îúîşîïï(ï5ï;ï?ïEïGïJïNïNïqïuï{ï{ï‚ï¤ï¹ïÌïßïåïìï÷ïğğğğğğ ğ0ğ6ğ;ğ@ğMğOğağcğjğwğyğ‹ğ‹ğ‹ğ‹ğ‹ğ¯ğºğÆğİğİğòğşğñ?ñYñ^ñuñzñˆñŸñ¤ñªñ»ñĞñÖñæñóñ òòò6òBòBòBòHòKòNògòmò�ò‡òŒò—ò—òœò©ò¶ò¶ò¼òÊòáòçòêòíòôòıòóó óó#ó#ó)ó7óNóTóWóZóaóaóróyó†ó“ó“óšó¤ó«ó±ó¸óÃó×ó×óñóöóıóô ôô ô(ô@ôEôLônôyôô‡ô ô´ô´ôÏôÏôéô÷ôşôõ'õ:õ^õ`õjõŒõŒõŒõ¥õ±õÂõÚõŞõ³öï¼Ùii.i2i@iOiZifiqi‘isi�i¢i¢iÄiôiØiËijjCjHjTj_jjaj‹j�j£jªjÇjÚjÚjıjıj kğ v*v*…*�*¤*ñ8�™�I�I§I¶IÊI×IİIãIæIJò8 ÷.÷./ // /&/,/2/2/8/ó &+&+0+8+=+ôôÓŒ‚‚<‚L‚W‚b‚{‚§‚À‚삃ƒ"ƒ*ƒ,ƒ4ƒOƒRƒ]ƒiƒ‚ƒ®ƒǃóƒ„#„)„1„6„>„Y„\„g„s„x„‘„½„Ö„…,…2…8…@…B…J…e…h…s……˜…Ä…İ… †3†9†?†G†L†T†o†r†}†‰†‰†�†”†š†¢†ª†µ†džÖ†ñ†‡/‡5‡:‡L‡[‡y‡�‡·‡½‡Ňʇ܇뇈ˆDˆJˆOˆaˆpˆ‹ˆŸˆɈψÔˆÔˆÔˆåˆğˆûˆ!‰9‰D‰L‰Y‰Y‰^‰q‰ˆ‰�‰³‰ˉÖ‰މë‰ë‰ğ‰ŠŠŠ.ŠEŠ^ŠpŠ}ЍмŠÓŠáŠãŠ÷Š‹‹‹#‹9‹R‹e‹q‹„‹ˆ‹ˆ‹ˆ‹�‹”‹§‹³‹Ê‹Ì‹Ñ‹ä‹ğ‹ı‹ŒŒŒõ”k t9t9Š9–9–9¬9·9¹9Õ9Õ9Õ9Ü9æ9ê9î9ñ9ñ9ú9ş9::J:V:a:q:�:†:‰:�:�:�:£:ª:·:¾:Æ:Ë:Ë:à:ì:ô:ù:ù:;;#;(;(;=;I;R;Z;b;n;„;�;²;¶;Ä;Ì;Ñ;Ñ;æ;<
<<<#<#<B<N<Y<^<s<<�<“<¢<¯<´<´<´<·<¼<¼<¼<Û<ç<ò<ô<÷<ü<ü<ü<====&=1=7=E=S=S=]=f=n=£=©=°=¿=Õ=Ú=Ú=í=õ=õ=÷=÷=÷=ü=ü=> > >>>>>>'>'>L>U>U>Y>tBö( tBtB‚B‹B™BŸB÷�1&w&wDwLwXwnwƒw‘wœw«w±w±w±w¶w»wÉwÔwêwìwñwÿw
xxx,xø\‘¤&-&-@-d-G-p-‰-‚-¡-¶-£-Â-Õ-ç-ú-ú-.&.&.0.ù8hröGöGHH2HAHGHMHPHqHú0�— ‰ ‰4‰@‰N‰Q‰i‰l‰t‰û0S[®Ó®ÓÂÓÊÓ×ÓáÓôÓüP>N † †¬†À†Ã†×†ß†ã†í†÷†ÿ†‡‡ıTš«JJ(J;J>JHJUJjJlJ~JˆJœJœJ¢J¥JùJş<˜£x‰x‰Œ‰“‰Ÿ‰«‰»‰À‰Ã‰Ç‰Ï‰ÿ ,0áá$á0áHzˆÆdÆdÚdædñdeódeee'e3e;e Dƒ¶M¶MÚMáMæMîMNNN N N"N<NBNDNFNSNSNSNSNWNfNoNwN€NˆN�N•N—N³N·NÉNÜNâNöNûNOOO#O*O3OAOJOjOpOtOyO~O�O‹O�O�OD ^j^jljvj€j�j•j›j§j©j»j»j½jíjlåüFßFßZßpß}߈ߌߓߗߠ߯߱߱ßÅßÇßĞßÖßÖßÖßÖߪß´Js€D€D¦D·D¼DÃDÍDÍDÕDèDìDñDEE EEE*E.E6EBEIEMEUEWE_EmEuEwEzE�E—EŸE­E±E¿E >îjîjşj
kk&k>kDkRkckkkrkˆk®kÈkÕkâkòkøkúk l-l4l:lHlPlflqlwl}l lôB»xgxg’g•gœg§gg¸gÃgÒgÒgßgígğgògòg÷güghhh h2h7hLhWhahahwhwh¤h¸hÍhÓhØhßhåhìhñhñh÷hıhiii#i;iAiFiZidikikikipipi™i�i�iÇiîióióióiöiıij
jjjjj j j7jAjKjQjtjzjŠj–jœjªj±j³jÇjÍjÔjÔjÖjÖjÖjÛjájæjêjìjïjújk k kkkkk"kLk˜}Ÿ††¢§®¸¾ÉÙáéîù   $ , < C K S [ c h s � � — \X«n@n@†@�@Ÿ@Ò@İ@é@÷@ë@AA$A,A;AuAwA¤A¬A¬AÙAñAŞA BıABB-BBBDBOBWBWBrBwB€B‹B“B�BÆB±B¥BåBÒBñBCóB3CCC?CYCGCtCyC“C€C²CŸC¾CÓCÀCòCßCşCşCD(D!D<D<D<DhDhDtD Ğ1 � �´�´�Ú�Ú�÷�û���� ��!�&�&�&�+�+�A�H�W�e�n�~�‡�‰�‰�‰�‰���—���¥�¬�³�º�Á�Á�Ã�Ã�É�Î�Õ‘
[[[[[[[%[*[*[G[U[a[j[p[z[‚[‡[‡[‡[›[¤[ª[¼[Æ[Æ[Î[Î[Ö[Ø[Ø[ñ[û[\\\\ \\\\\\\\#\'\ _·Ğàfufuˆu�uªuÈuäuñuvv&v<v(vHvPvPv_v_vgvsv‰v�v­v¸vËvÑvÑvÑvÖvÛvêvõv www"w-w:wDwDwRw¸”*KĞ Ğ è ï ö ù ¡¡¡ ¡¡1¡¡A¡I¡Q¡T¡V¡f¡o¡x¡~¡�¡’¡©¡º¡Å¡÷¡¹à.¢v<v<”<Ÿ<°<³<·<À<Ç<Õ<ä<ú< ==.=@=O=^=o=~=~=Œ=�=”=™=�=ª=±=¿=Ó=Ü=â=ğ= > >>>>>>>#>#>2>;>C>Y>Y>Y>^>^>s>>Š>�>�>’>—>—>³>¿>Ì>Î>Î>Ò>Ô>Ô>ğ>ü>?
?
? ??????!?!?*?0?5?Q?Q?Q?Q?Q?Q?Q?Q?Q?Q?Q?Q?S?d?v?…?”?”?˜?˜? ?¼?À?Å?`@º,æÑæÑôÑûÑÒÒÒ»˜?afWfW|W‚W‰W¹W¥WÅWÊWÑWÑWñWXóWXCX/XOXTX[X[X[XaXdXhXpXˆX“X¦X�X¾XÈX¼PQa§%§%µ%Ã%Ê%Ú%ë%ğ% &&&!&/&;&M&‰&½D%vàvàŠà˜à�àÁàÇàÍàòàøàşàáá á¾ô#œ¾0¾0Æ0Õ0Ù0æ0ó01161C1U1w1—1¥1Á1Ó1ë12 2.2L2[2v2�2œ2µ2µ2Ğ2ù23.3@3O3^3^3i3|3�3 3°3½3È3×3÷3÷34444!4(4G4P4]4a4i4t4Œ4¤4­4½4Å4Ê4î4ş455-525:5`5b5m5 5º5º5Ò5á5é5ø56 66:6B6J6U6W6g66—6¯6Ç6Ù6ğ6ù677"7&7*7¿ €…€…‰…¨…­…À\…X�È�ȸȿÈÌÈ×ÈÜÈâÈôÈúÈÉÉ6ÉJÉUÉ[É}É}É�ɢɤɧɳɻÉÃÉËÉÙÉßÉåÉñÉñÉóÉÊ ÊÊÊ'Ê'ÊEÊEÊXÊeÊjÊjÊ�ʊʙʯʺÊÈÊÓÊãÊğÊËËËË+Ë-Ë-Ë5Ë:Ë:ËBËGËGËOËTËTË\ËaËaËgËlËlËsËxËxË˄˄Ë�Ë”Ë”ËŸË¤Ë¤Ë¯Ë´Ë´Ë¿Ë¿ËØËßËåËèËóËöË
ÌÌ&Ì-Ì0ÌBÌDÌJÌ^ÌkÌzÌzÌzÌz̜̱̄ÌÁÌÒÌØÌéÌïÌôÌşÌÍ Í/Í5ÍFÍQÍ[ÍjÍyÍÍŠÍ�ͥͫͼÍÇÍÍÍİÍİÍíÍÎ ÎÎ$Î+Î1ÎBÎMÎRÎo΄Β΢ήÎÀÎËÎÚÎÜÎîÎöÎûÎÏÏÏÏ$Ï.Ï4Ï?ÏEÏGÏTÏaÏkτϒϒϘϟÏßÑÁ0#«h¨h¨‡¨±¨¹¨¹¨Ç¨Ú¨ó¨ö¨©©©©©©$©&©&©.©0©0©8©8©A©G©L©L©U©a©e©j©p©u©u©}©†©Œ©‘©‘©–©¢©º©Ù©Ü©ñ©ªªªªªªª"ª$ª$ª$ª,ª.ª.ª.ª6ª8ª8ªCªCªIªNªNªNªNªUª`ªrª€ª�ª˜ª˜ª˜ª¨ª¨ª¯ª³ª¹ªÑªßªòªşª'«*«1«C«K«T«_«_«j«p«u«u«u«|«‚«—«Ÿ«¥«Ç«Ó«Ù«Ş«Ş«å«ğ«ğ«õ«¬ ¬ ¬ ¬ ¬f¬Âd)¤B¤BÆBĞBÓBÓBİBğBòBÿBC C C(C8C=CCCKCNC`CÃLWf/1/1C1G1L1W1W1a1g1g1k1s1Ä\CVÇ0Ç0İ0İ0á0æ0ù0ü011 111 1!1+1Å8(2ŞÒŞÒçÒçÒõÒùÒÓÓÓÆ¨²ØFgFg^gfgqgŠg~g·ghügñgÜgÅgh,hhGhLhXhh„h™h†h¥h«h«h¸hßhiíhi6i6i6iBiÇl¨¿f.f.€.¨.‹.´.Ô.í.æ.//
/)/</\/n/�/�/�/­/­/·/È4“œŞèŞèòè÷èıèéé$é,éɼMx““.“9“C“\“t“y“~“‚“„“Š“�“¦“““²“²“Ñ“é“Ö“õ“ÿ“”0”5”:”>”@”F”L”b”O”n”n”�”‰”›”µ”®”Á”Í”Ê4;D®İ®İ·İÃİâİçİéİéİîİË”"8§8§F§X§\§d§l§w§‚§Š§•§ §¥§»§Â§É§Ô§ß§á§ì§÷§ù§¨¨¨$¨,¨,¨0¨g¨Ì€Úö/5/5M5Q5U5]5k5n5q5„5Š5Œ5›5Ÿ5£5«5³5¿5Ô5å5ì5ó5ó566Í`!µvIvI¨I³IèIÙIÀIîIJ"J"J&J0J<JWJ^JlJnJvJ�J¬J¾JËJãJ÷JüJK(K/K8K:K?KSKpK‚K�K§KÄK½KÙKİKİKèKïKLLLL L(L@LBLZLlLoLqL‡LvL“L“L“L¥L¥L³L½LåLŞLúLúLÿLM M+MFMdMnMrM‚M¡M–M­M¯MÁMÕMæMßMõMùMN.N#N:N<NNNXNlNvNN–N N¢N¶NÀNÀNÖNÚNÚNÚNåNìNOOO2OFO]ObOtO|O¤O�O³O³O³OØOØOêOÎd9Îf3f3œ3£3«3´3Å3Ò3ç3ê3í3ñ3ú3444?4D4Q4}4‚4�4¯4´4Ã4ï4÷4ü45=5E5J5J5]5p5€5„5£5´5¹5¹5Û5Û5Û5Û5Û5ë5666
6
6676<6E6R6Z6u6‡6”6Ÿ6½6½6½6Ê6á6ã6ã6ã6ğ67 7 77-7-7>7C7c7u7‡7¥7¥7¥7²7É7Ë7Ë7Ë7Ø7ï7ñ7ñ7ş788&8.838Y8k8}8›8›8›8¨8¿8Á8Á8Î8å8å8ú8ü89%9C9H9O9]9g9i9i9i9…9�9�9�9±9ë9Ϥ/T†å†å¦åÈåÈåçå÷åüåüå ææ7æ?æFæHæ[æcæcæcæeæeæeæeæƒæƒæƒæƒæ•æ—æ—æ—æ—æªæµæØæĞyΔΔä”ğ”û”• •••#•(•3•8•8•8•j•W•v•x•}•ˆ•�•�•�•¿•¬•Ë•ò•ò•––+–>–C–C–V–i–|–�–”–”–§–º–Í–à–â–â–õ–——.—.—.—<—Ñ0Š’~è~èŒè’è–èµèÖèÖèÜèÒ<:E8888)858A8J8S8\8b8g8ÓluŒo'o'}'‡'�'¥'¥'ª'¬'¸'Â'Ğ'í'ï'ÿ'ÿ'(( (?(ÔàŸÓFFZ„yeŸ¬¸Ë¾øı)€)€.€D€V€l€‚€µ€Ä€�ü€è€�$�P�U�]�|�„�©���Š�¹�Ò�¾�ò�Ş�‚‚?‚?‚?‚?‚G‚ÕLÀϾ/¾/Ü/î/õ/00&090F0?0^0h0ÖÈg•w1w1›1Ÿ1¾1à1ì1ó1ş1 22 2 2$2.2F2Q2a2m2t22�2’2£2¥2§2§2§2¯2¯2¹2¹2Á2É2Ñ2Ù2İ2ç233× ø„ø„…… …Ø`FZg8g8w8~8€8…8”8š8¯8¯8½8½8É8Ò8Õ8ã8í8ğ8ø8Ù<œ§V¡V¡_¡j¡u¡€¡‹¡•¡³¡¾¡ΡÚ 2&`&`>`P`V`b`m`{`‡`�`©`¹`Ë`Ñ`×`İ`ğ`ö`ÿ`aaa(a0a>aKaˆaÛ, Î*Î*Ü*í*++++Ü4°…°…¾…È…Ñ…Ø…ß…é…é…ï…İÄKx�ö�öºö½öÂöÏöÔöæöèöìöğöóö÷ ÷A÷J÷U÷\÷u÷—÷œ÷µ÷×÷Ü÷ã÷ü÷ø ø9ø[ø[ø[øpøŠø™ø«øŞ„¦o¦oÄoÇoÍoáoéoúop ppp p(p.p>pLpNpmp~p…p‘p¡p¡p¯pÂpÍpÑpâpâpâpçpçpópqqq q4q:qBqTqZq\qkqxq~q„q‰q�q•qœq¨q¯q±q¶q¾qÀqÅqÑqÓqØqàqâqçqïqñqöqşqrr r r rrrr4r:r@rKrPrXrqrwr‚r†rŒr—r°r»rÆrÌrÙrŞrãrãrørss&s1s<sHsBsQsZs_sdsys€s‰s•s›s§s«s°sµsÀsËsÖsØsŞsësğsõstt$t$t*t7t9t>tGt`tktvt|t‰t‰t�t’t’t£t¥t¥t¸tºtºtÍtÏtÏtâtätät÷tùtùt u uuuu-uAu6uNuVu]ucuku~u‰u€u™u™u›u³u¶u¸uÄuÖuæuòu v#v(v<vLv_vdvdvjv~v�v›v£v«v¯v½vÃvÈvÈvÎvâvòv÷v÷vıvwwwwww0w=wAwFwFwJwOwOwTw_wkw…w›w§w§w­wºw¼wÉwÕwäw÷w÷wxxxxxxx*x<xGxOxWxYxkxpx~xŠx�x�x�x´xÄxÄxØxäxæxïxûxyyy%y'y9y9yDyDyDyDyDyÀ{ß „È–O–O´OÂOÕOÚOøOşOP PPP-P2P>PPPPPnPyPŒP“P­PÊPÖPñP Q%Q.Q=QEQRQ[Q`QqQQŸQ¤Q¬QÅQ×QçQíQøQRRMR7R(R]R˜R‚RsR¨R«RËR_Sà<*5dCdC…C‹C”C¦C¿CÇCİCéCá„ |ææ"%%5@@CJQW]cjp��ƒŒ˜�ÄÈËÛãèèïõ ..7<FMT\bdr‰Œ›§´´´´ºÌÒã-4>FMMV]iy„„„˜¬¼¿zâ„9ç6ç677737Y7o7€7‰7—7©7Â7Â7Ô7ê7ò7õ78ãX{ÍÎÎù!3AGX_g}…˜­½ÇÉÙéòøı
!,/6PXr‡”—Ÿ£µÄÏ×î -5<@IK]t‚ˆŒ�›››�´ººÌä 
… …)…=…B…å,şE��2�8�C�T�Y�_�b�f�f�†�‹�Á�­�Í�æ�Ò�ò� ‘÷�‘‘#‘-‘0‘4‘9‘R‘>‘^‘^‘^‘c‘t‘y‘‘‚‘†‘†‘¦‘«‘á‘͑푒ò‘’(’’4’;’@’F’I’M’O’h’T’t’t’t’t’Œ’µ’Á’æ˜Íï  (##72FAP__nn}}ŒŒ››ª¾¹ÈÈ׿õ^çxÈâÎ\Î\ì\ş\]]']']9]?]J]Z]f]o]u]{]†]”]¡]­]»]Ê]Ê]ú]èd�².é.é2éEéEé_éféréré‰é‰é é é·é·éÎéÎéåéçéçéëé騯øFûFûhûoûzû�û�û¢û­û¸ûÉûÚûñûõûúûşûüü#ü/üAüCü\üküoüoüoü‚ü—ü—ü£ü©ü³ü¾üÌüÓüâüäüúüıı&ıêP6FìCìCDDDD+D9D?DKDSD^DdDgDqDë ®-æ7æ78 888 8&8<8M8^8p8‚8‘8 8±8À8À8Ç8Ë8Ô8á8è8ñ8ø8ü899999(9,9/979E9M9Z9b9j9{9†9‹9‹9˜9�9­9Ä9Æ9Ñ9Ş9í9ğ9ö9ò9
:!:#:1:3:>:D:D:L:L:^:e:{:{:{:€:€:•:£:®:³:³:¶:»:»:×:å:ò:ô:ô:ø:ú:ú:;$;0;2;2;5;7;7;D;F;F;I;I;I;I;I;R;X;\;h;ˆ;•;£;ª;r<ì(rx ˆ ˆ.ˆ5ˆEˆHˆNˆí(nt ' '('2'B'M'M'k'îTzK~î~îœî¢î¥î®î¸îĞîàîéîïîòîöîøîï ï-ï3ï7ï=ï?ïBïFïFïiïmïsïsïzïœï±ïÄï×ïİïäïïïùïıïğğ ğğğ(ğ.ğ3ğ8ğEğGğYğ[ğbğoğqğƒğƒğƒğƒğƒğ§ğ²ğ¾ğÕğÕğêğöğñ7ñQñVñmñrñ€ñ—ñœñ¢ñ³ñÈñÎñŞñëñò
òò.ò:ò:ò:ò@òCòFò_òeòyòò„ò�ò�ò”ò¡ò®ò®ò´òÂòÙòßòâòåòìòõòüòüòóóóó!ó/óFóLóOóRóYóYójóqó~ó‹ó‹ó’óœó£ó©ó°ó»óÏóÏóéóîóõóıóôôô ô8ô=ôDôfôqôwôô˜ô¬ô¬ôÇôÇôáôïôöôıô õ2õVõXõbõ„õ„õ„õ�õ©õºõÒõÖõ«öï¼ÙFiFi^ibipiiŠi–i¡iÁi£iÍiÒiÒiôi$jjûiFjKjsjxj„j�j¯j‘j»jÀjÓjÚj÷j
k
k-k-k9kğ n*n*}*–*œ*ñ8�™†I†IŸI®IÂIÏIÕIÛIŞIÿIò8 ÷.÷./ // /&/,/2/2/8/ó ++(+0+5+ôôÔ�N‚N‚l‚|‚‡‚’‚«‚ׂğ‚ƒFƒLƒRƒZƒ\ƒdƒƒ‚ƒ�ƒ™ƒ²ƒރ÷ƒ#„M„S„Y„a„f„n„‰„Œ„—„£„¨„Á„í„…2…\…b…h…p…r…z…•…˜…£…¯…È…ô… †9†c†i†o†w†|†„†Ÿ†¢†­†¹†¹†¾†ĆʆÒ†Ú†å†÷†‡!‡5‡_‡e‡j‡|‡‹‡©‡½‡ç‡í‡õ‡ú‡ ˆˆ6ˆJˆtˆzˆˆ‘ˆ ˆ»ˆψùˆÿˆ‰‰‰‰ ‰+‰Q‰i‰t‰|‰‰‰‰‰�‰¡‰¸‰½‰ã‰û‰ŠŠŠŠ Š3Š@ŠJŠ^ŠuŠ�Š Š­ŠØŠìŠ‹‹‹'‹>‹>‹G‹S‹i‹‚‹•‹¡‹´‹¸‹¸‹¸‹¿‹Ä‹׋ã‹ú‹ü‹ŒŒ Œ-Œ7Œ7ŒIŒõ”k t9t9Š9–9–9¬9·9¹9Õ9Õ9Õ9Ü9æ9ê9î9ñ9ñ9ú9ş9::J:V:a:q:�:†:‰:�:�:�:£:ª:·:¾:Æ:Ë:Ë:à:ì:ô:ù:ù:;;#;(;(;=;I;R;Z;b;n;„;�;²;¶;Ä;Ì;Ñ;Ñ;æ;<
<<<#<#<B<N<Y<^<s<<�<“<¢<¯<´<´<´<·<¼<¼<¼<Û<ç<ò<ô<÷<ü<ü<ü<====&=1=7=E=S=S=]=f=n=£=©=°=¿=Õ=Ú=Ú=í=õ=õ=÷=÷=÷=ü=ü=> > >>>>>>'>'>L>U>U>Y>tBö( tBtB‚B‹B™BŸB÷�1VwVwtw|wˆw�w³wÁwÌwÛwáwáwáwæwëwùwxxx!x/x:xGxNx\xø\”§V-V-p-”-w- -¹-²-Ñ-æ-Ó-ò-..*.*.7.V.V.`.ù8hrîGîGHH*H9H?HEHHHiHú0�—‰‰,‰8‰F‰I‰a‰d‰l‰û0S[¦Ó¦ÓºÓÂÓÏÓÙÓìÓüP>N˜†˜†¤†¸†»†Ï†×†Û†å†ï†÷†ú†‡ıTš«JJ J3J6J@JMJbJdJvJ€J”J”JšJ�JñJş<˜£p‰p‰„‰‹‰—‰£‰³‰¸‰»‰¿‰Ç‰ÿ ,0ááá(áHzˆödöd
ee!e7e#eCeEeLeWeceke Dƒ®M®MÒMÙMŞMæMN N NNNN4N:N<N>NKNKNKNKNON^NgNoNxN€N‡N�N�N«N¯NÁNÔNÚNîNóNOOOO"O+O9OBObOhOlOqOvOyOƒO†O–OD �j�j¬j¶jÀjĞjÕjÛjçjéjûjûjıj-klåü>ß>ßRßhßu߀߄ߋß�ߘߧߩߩ߽߿ßÈßÎßÎßÎßÎßÖß´Js€D€D¦D·D¼DÃDÍDÍDÕDèDìDñDEE EEE*E.E6EBEIEMEUEWE_EmEuEwEzE�E—EŸE­E±E¿E !E.k.k>kJkVkfk~k„k’k£k«k²kÈkîkll"l2l8l:lKlmltlzlˆl�l¦l±l·l½làlôB»pgpgŠg�g”gŸg®g°g»gÊgÊg×gågègêgêgïgôgıghhh*h/hDhOhYhYhohohœh°hÅhËhĞh×hİhähéhéhïhõhúhúh ii3i9i>iRi\icicicihihi‘i–i–i¿iæiëiëiëiîiõiûijjj jjjj/j9jCjIjljrj‚j�j”j¢j©j«j¿jÅjÌjÌjÎjÎjÎjÓjÙjŞjâjäjçjòjşjkkkk k kkDk˜}Ÿ~~šŸ¦°ÁÑÙáæñû   $ 4 ; C K S [ ` k y y � \X«�@�@¶@½@Ï@A AA'AAHAHATA\AkA¥A§AÔAÜAÜA B!BB<B-BHBNB]BrBtBB‡B‡B¢B§B°B»BÃBÎBöBáBÕBCC!C6C#CcCNCBCoC‰CwC¤C©CÃC°CâCÏCîCDğC"DD.D.DIDXDQDlDlDlD˜D˜D¤D Ğ1˜�˜�¬�¬�Ò�Ò�ï�ó�ø�ø�ø�� �����#�#�9�@�O�]�f�v����������ˆ���–���¤�«�²�¹�¹�»�»�Á�Æ�Í‘
+27 -28
View File
@@ -258,34 +258,33 @@ class CIntermediateStruct
#define KW_EXE 18
#define KW_BREAK 19
#define KW_SWITCH 20
#define KW_NOBOUND_SWITCH 21
#define KW_SUB_SWITCH_START 22
#define KW_SUB_SWITCH_END 23
#define KW_CASE 24
#define KW_DFT 25
#define KW_PUBLIC 26
#define KW_OFFSET 27
#define KW_IMPORT 28
#define KW__IMPORT 29
#define KW_IFDEF 30
#define KW_IFNDEF 31
#define KW_IFAOT 32
#define KW_IFJIT 33
#define KW_ENDIF 34
#define KW_ASSERT 35
#define KW_REG 36
#define KW_NOREG 37
#define KW_LASTCLASS 38
#define KW_NOUNUSEDWARN 39
#define KW_HELP_INDEX 40
#define KW_HELP_FILE 41
#define KW_STATIC 42
#define KW_LOCK 43
#define KW_DEFINED 44
#define KW_INTERRUPT 45
#define KW_HASERRCODE 46
#define KW_ARGPOP 47
#define KW_NOARGPOP 48
#define KW_SUB_SWITCH_START 21
#define KW_SUB_SWITCH_END 22
#define KW_CASE 23
#define KW_DFT 24
#define KW_PUBLIC 25
#define KW_OFFSET 26
#define KW_IMPORT 27
#define KW__IMPORT 28
#define KW_IFDEF 29
#define KW_IFNDEF 30
#define KW_IFAOT 31
#define KW_IFJIT 32
#define KW_ENDIF 33
#define KW_ASSERT 34
#define KW_REG 35
#define KW_NOREG 36
#define KW_LASTCLASS 37
#define KW_NOUNUSEDWARN 38
#define KW_HELP_INDEX 39
#define KW_HELP_FILE 40
#define KW_STATIC 41
#define KW_LOCK 42
#define KW_DEFINED 43
#define KW_INTERRUPT 44
#define KW_HASERRCODE 45
#define KW_ARGPOP 46
#define KW_NOARGPOP 47
#define AKW_ALIGN 64
#define AKW_MODULE_ORG 65
+5 -5
View File
@@ -116,7 +116,7 @@ lgc_start1:
cc->cur_buf_ptr=NULL;
goto lgc_here;
}
nobound_switch (cc->last_U16=*src++) {
switch [cc->last_U16=*src++] {
case 0:
lgc_here:
tempf=cc->lex_include_stk;
@@ -127,7 +127,7 @@ lgc_here:
lgc_start2:
if (doc_e!=doc) {
tempf->cur_entry=doc_e;
nobound_switch (doc_e->type_u8) {
switch [doc_e->type_u8] {
case DOCT_TEXT:
if (doc_e->de_flags & ~(DOCEF_TAG|DOCEF_DEFINE|DOCEF_TAG_CB|
DOCG_BL_IV_UL|DOCEF_WORD_WRAP|DOCEF_HIGHLIGHT|
@@ -203,7 +203,7 @@ lgc_start2:
case DOCT_CURSOR:
doc_e=doc_e->next;
goto lgc_start2;
case 0xFF: //nobound_switch
case 0xFF: //nobound switch
default:
if (LexDollar(cc,doc,doc_e) && *(src=cc->dollar_buf)) {
tempf->line_num=doc_e->y+1;
@@ -254,7 +254,7 @@ lgc_start2:
tempf->line_start=src;
}
break;
case 0xFF: //nobound_switch
case 0xFF: //nobound switch
}
lgc_done:
if (cc->last_U16==CH_SHIFT_SPACE)
@@ -448,7 +448,7 @@ I64 Lex(CCmpCtrl *cc)
cc->last_line_num=cc->lex_include_stk->line_num;
while (TRUE) {
lex_cont:
nobound_switch (ch=LexGetChar(cc)) {
switch [ch=LexGetChar(cc)] {
case 0:
return cc->token=TK_EOF;
case TK_SUPERSCRIPT:
+27 -28
View File
@@ -156,34 +156,33 @@ KEYWORD goto 17;
KEYWORD exe 18;
KEYWORD break 19;
KEYWORD switch 20;
KEYWORD nobound_switch 21;
KEYWORD sub_switch_start 22;
KEYWORD sub_switch_end 23;
KEYWORD case 24;
KEYWORD default 25;
KEYWORD public 26;
KEYWORD offset 27;
KEYWORD import 28;
KEYWORD _import 29;
KEYWORD ifdef 30;
KEYWORD ifndef 31;
KEYWORD ifaot 32;
KEYWORD ifjit 33;
KEYWORD endif 34;
KEYWORD assert 35;
KEYWORD reg 36;
KEYWORD noreg 37;
KEYWORD lastclass 38;
KEYWORD nounusedwarn 39;
KEYWORD help_index 40;
KEYWORD help_file 41;
KEYWORD static 42;
KEYWORD lock 43;
KEYWORD defined 44;
KEYWORD interrupt 45;
KEYWORD haserrcode 46;
KEYWORD argpop 47;
KEYWORD noargpop 48;
KEYWORD sub_switch_start 21;
KEYWORD sub_switch_end 22;
KEYWORD case 23;
KEYWORD default 24;
KEYWORD public 25;
KEYWORD offset 26;
KEYWORD import 27;
KEYWORD _import 28;
KEYWORD ifdef 29;
KEYWORD ifndef 30;
KEYWORD ifaot 31;
KEYWORD ifjit 32;
KEYWORD endif 33;
KEYWORD assert 34;
KEYWORD reg 35;
KEYWORD noreg 36;
KEYWORD lastclass 37;
KEYWORD nounusedwarn 38;
KEYWORD help_index 39;
KEYWORD help_file 40;
KEYWORD static 41;
KEYWORD lock 42;
KEYWORD defined 43;
KEYWORD interrupt 44;
KEYWORD haserrcode 45;
KEYWORD argpop 46;
KEYWORD noargpop 47;
ASM_KEYWORD ALIGN 64;
ASM_KEYWORD MODULE_ORG 65;
+3 -3
View File
@@ -44,7 +44,7 @@ args.
tempi->ic_class2=tempc;
tempi_push=tempi;
MemSet(&tempi->a1,0,sizeof(CICArg)*4);
nobound_switch (intermediate_code_table[code].arg_cnt) {
switch [intermediate_code_table[code].arg_cnt] {
case IS_V_ARG:
ps->ptr-=tempi->ic_data>>2;
break;
@@ -59,12 +59,12 @@ args.
tempi->t.a1t=tempi1;
tempi->t.a1c=PrsPop(ps);
break;
case IS_0_ARG: //nobound_switch
case IS_0_ARG: //nobound switch
break;
}
if (intermediate_code_table[code].not_const)
cc->flags|=CCF_NOT_CONST;
nobound_switch (code) {
switch [code] {
case IC_IMM_F64:
tempi->ic_flags&=~ICF_R_TO_F64;
if (cc->pass==2 && tempi->ic_flags&ICF_R_TO_INT) {
+15 -15
View File
@@ -63,7 +63,7 @@ U0 OptPass3(CCmpCtrl *cc,COptReg *reg_offsets)
} else
tempil1=tempil2=&cmp.ic_nop;
tempc=tempi->ic_class;
nobound_switch (intermediate_code_table[code].arg_cnt) {
switch [intermediate_code_table[code].arg_cnt] {
case IS_V_ARG:
ps->ptr-=tempi->ic_data>>3;
break;
@@ -76,7 +76,7 @@ U0 OptPass3(CCmpCtrl *cc,COptReg *reg_offsets)
else
tempc2=tempi->t.a2c;
tempi->a2.type=TY_STK+CmpRawType(tempc2);
tempi->a2.type_pointed=CmpRawTypePointed(tempc2);
tempi->a2.type_pointed_to=CmpRawTypePointed(tempc2);
tempi->ic_flags|=ICF_A2_WAS_STK;
case IS_1_ARG:
tempi1=PrsPop(ps);
@@ -87,19 +87,19 @@ U0 OptPass3(CCmpCtrl *cc,COptReg *reg_offsets)
else
tempc1=tempi->t.a1c;
tempi->a1.type=TY_STK+CmpRawType(tempc1);
tempi->a1.type_pointed=CmpRawTypePointed(tempc1);
tempi->a1.type_pointed_to=CmpRawTypePointed(tempc1);
tempi->ic_flags|=ICF_A1_WAS_STK;
break;
case IS_0_ARG: //nobound_switch
case IS_0_ARG: //nobound switch
break;
}
if (intermediate_code_table[code].result_cnt) {
tempi->r.type=TY_STK+CmpRawType(tempc);
tempi->r.type_pointed=CmpRawTypePointed(tempc);
tempi->r.type_pointed_to=CmpRawTypePointed(tempc);
tempi->ic_flags|=ICF_R_WAS_STK;
PrsPush(ps,tempi);
}
nobound_switch (code) {
switch [code] {
case IC_IMM_F64:
tempi->ic_flags&=~ICF_R_TO_F64;
if (tempi->ic_flags&ICF_R_TO_INT) {
@@ -121,13 +121,13 @@ U0 OptPass3(CCmpCtrl *cc,COptReg *reg_offsets)
tempi->a1.reg=REG_RBP;
break;
case IC_DEREF:
tempi->a1.type_pointed=tempi->r.type&RT_MASK;
tempi->a1.type_pointed_to=tempi->r.type&RT_MASK;
if (tempi1->ic_code==IC_LEA) {
tempi->ic_flags|=tempi1->ic_flags;
tempi->a1.reg=tempi1->a1.reg;
tempi->a1.disp=tempi1->a1.disp;
tempi->a1.type=TY_DISP+tempi->r.type&RT_MASK;
tempi->a1.type_pointed=tempi->r.type_pointed;
tempi->a1.type_pointed_to=tempi->r.type_pointed_to;
tempi->ic_code=IC_MOV;
OptFree(tempi1);
if (tempi->a1.reg==REG_RBP)
@@ -143,7 +143,7 @@ U0 OptPass3(CCmpCtrl *cc,COptReg *reg_offsets)
tempi->a1.reg=tempil2->a1.reg;
tempi->a1.disp=tempi->ic_data;
tempi->a1.type=TY_DISP+tempi->r.type&RT_MASK;
tempi->a1.type_pointed=tempi->r.type_pointed;
tempi->a1.type_pointed_to=tempi->r.type_pointed_to;
tempi->ic_code=IC_MOV;
OptFree(tempil2);
OptFree(tempil1);
@@ -154,7 +154,7 @@ U0 OptPass3(CCmpCtrl *cc,COptReg *reg_offsets)
case IC__MM:
case IC_PP_:
case IC_MM_:
tempi->r.type_pointed=CmpRawTypePointed(tempi->t.a1c);
tempi->r.type_pointed_to=CmpRawTypePointed(tempi->t.a1c);
case IC_DEREF_PP:
case IC_DEREF_MM:
if (tempi1->ic_code==IC_LEA &&
@@ -166,7 +166,7 @@ U0 OptPass3(CCmpCtrl *cc,COptReg *reg_offsets)
mv[i].score++;
break;
}
tempi->a1.type_pointed=tempi->r.type&RT_MASK;
tempi->a1.type_pointed_to=tempi->r.type&RT_MASK;
break;
case IC_MUL:
case IC_DIV:
@@ -186,7 +186,7 @@ U0 OptPass3(CCmpCtrl *cc,COptReg *reg_offsets)
tempi->t.a1c=tempi->t.a2c;
tempi->ic_data=tempi1->ic_data;
tempi->ic_code=IC_ADD_CONST;
tempi->a1.type_pointed=tempi->r.type&RT_MASK;
tempi->a1.type_pointed_to=tempi->r.type&RT_MASK;
tempi->a2.type=TY_NULL;
OptFree(tempi1);
if (tempil2->ic_code==IC_REG &&
@@ -250,8 +250,8 @@ U0 OptPass3(CCmpCtrl *cc,COptReg *reg_offsets)
mv[i].score++;
break;
}
tempi->a1.type_pointed=tempi->r.type&RT_MASK;
tempi->r.type_pointed=CmpRawTypePointed(tempi->t.a1c);
tempi->a1.type_pointed_to=tempi->r.type&RT_MASK;
tempi->r.type_pointed_to=CmpRawTypePointed(tempi->t.a1c);
break;
case IC_RETURN_VAL:
case IC_RETURN_VAL2:
@@ -375,7 +375,7 @@ U0 OptPass3(CCmpCtrl *cc,COptReg *reg_offsets)
mv[i].score++;
break;
}
tempi->a1.type_pointed=CmpRawType(tempc);
tempi->a1.type_pointed_to=CmpRawType(tempc);
goto here1;
case IC_BR_LESS:
case IC_BR_GREATER_EQU:
+18 -18
View File
@@ -73,14 +73,14 @@ Bool OptIC4(CIntermediateCode *tempi)
ty=ty1;
tempil1->a2.type=tempil2->a1.type&TY_MASK+ty;
pt=tempil1->a2.type_pointed;
pt1=tempil2->a1.type_pointed;
pt=tempil1->a2.type_pointed_to;
pt1=tempil2->a1.type_pointed_to;
if (pt1 && pt1<pt && pt!=RT_F64)
pt=pt1;
pt1=tempil2->r.type_pointed;
pt1=tempil2->r.type_pointed_to;
if (pt1 && pt1<pt && pt!=RT_F64)
pt=pt1;
tempil1->a2.type_pointed=pt;
tempil1->a2.type_pointed_to=pt;
tempil1->a2.reg=tempil2->a1.reg;
tempil1->a2.disp=tempil2->a1.disp;
@@ -113,14 +113,14 @@ Bool OptIC4(CIntermediateCode *tempi)
ty=ty1;
tempil1->a1.type=tempil2->a1.type&TY_MASK+ty;
pt=tempil1->a1.type_pointed;
pt1=tempil2->a1.type_pointed;
pt=tempil1->a1.type_pointed_to;
pt1=tempil2->a1.type_pointed_to;
if (pt1 && pt1<pt && pt!=RT_F64)
pt=pt1;
pt1=tempil2->r.type_pointed;
pt1=tempil2->r.type_pointed_to;
if (pt1 && pt1<pt && pt!=RT_F64)
pt=pt1;
tempil1->a1.type_pointed=pt;
tempil1->a1.type_pointed_to=pt;
tempil1->a1.reg=tempil2->a1.reg;
tempil1->a1.disp=tempil2->a1.disp;
@@ -138,7 +138,7 @@ Bool OptIC4(CIntermediateCode *tempi)
!Bt(&cmp.non_ptr_vars_mask,tempil2->a1.reg)) {
tempil1->ic_flags|=tempil2->ic_flags;
tempil1->ic_code=IC_MOV;
tempil1->a1.type=TY_DISP+tempil1->a1.type_pointed;
tempil1->a1.type=TY_DISP+tempil1->a1.type_pointed_to;
tempil1->a1.reg=tempil2->a1.reg;
tempil1->a1.disp=i;
OptSetNOP2(tempil2,-1);
@@ -149,7 +149,7 @@ Bool OptIC4(CIntermediateCode *tempi)
tempil1->a1.type&TY_MASK==TY_STK) {
tempil1->ic_flags|=tempil2->ic_flags;
tempil1->ic_code=IC_MOV;
tempil1->a1.type=tempil2->a1.type&TY_MASK+tempil1->a1.type_pointed;
tempil1->a1.type=tempil2->a1.type&TY_MASK+tempil1->a1.type_pointed_to;
tempil1->a1.reg=tempil2->a1.reg;
tempil1->a1.disp=tempil2->a1.disp;
OptFree(tempil2);
@@ -159,7 +159,7 @@ Bool OptIC4(CIntermediateCode *tempi)
}
if (tempil1->ic_code==IC_DEREF) {
if (tempil1->a1.type&TY_MASK==TY_REG) {
tempil1->a1.type=TY_DISP+tempil1->a1.type_pointed;
tempil1->a1.type=TY_DISP+tempil1->a1.type_pointed_to;
tempil1->a1.disp=0;
tempil1->ic_code=IC_MOV;
return TRUE;
@@ -204,7 +204,7 @@ U0 OptPass4(CCmpCtrl *cc,COptReg *reg_offsets,I64 *_type)
tempil2=tempil3=&cmp.ic_nop;
} else
tempil1=tempil2=tempil3=&cmp.ic_nop;
nobound_switch (intermediate_code_table[code].arg_cnt) {
switch [intermediate_code_table[code].arg_cnt] {
case IS_V_ARG:
ps->ptr-=tempi->ic_data>>3;
break;
@@ -215,10 +215,10 @@ U0 OptPass4(CCmpCtrl *cc,COptReg *reg_offsets,I64 *_type)
tempi1=PrsPop(ps);
tempc1=tempi1->ic_class;
break;
case IS_0_ARG: //nobound_switch
case IS_0_ARG: //nobound switch
break;
}
nobound_switch (code) {
switch [code] {
case IC_IMM_I64:
case IC_TYPE:
tempi->a1.type=TY_IMM+RT_I64;
@@ -228,7 +228,7 @@ U0 OptPass4(CCmpCtrl *cc,COptReg *reg_offsets,I64 *_type)
case IC_IMM_F64:
tempi->a1.type=TY_IMM+RT_I64;
tempi->a1.disp=tempi->ic_data;
tempi->a1.type_pointed=RT_F64;
tempi->a1.type_pointed_to=RT_F64;
tempi->ic_code=IC_MOV;
break;
case IC_MOV:
@@ -267,7 +267,7 @@ U0 OptPass4(CCmpCtrl *cc,COptReg *reg_offsets,I64 *_type)
tempi->a1.disp=tempi1->a1.disp;
tempi->ic_flags|=tempi1->ic_flags;
tempi->ic_code=IC_MOV;
tempi->a1.type=TY_RIP_DISP32+tempi->a1.type_pointed;
tempi->a1.type=TY_RIP_DISP32+tempi->a1.type_pointed_to;
tempi->a1.reg=REG_RIP;
OptFree(tempi1);
}
@@ -313,7 +313,7 @@ p4_lea_gone:
tempi->a1.disp=tempi1->ic_data;
else
tempi->a1.disp=tempi1->a1.disp;
tempi->a1.type=TY_RIP_DISP32+tempi->a1.type_pointed;
tempi->a1.type=TY_RIP_DISP32+tempi->a1.type_pointed_to;
tempi->a1.reg=REG_RIP;
tempi->ic_flags|=ICF_NOT_ADDR;
OptFree(tempi1);
@@ -339,7 +339,7 @@ p4_sib:
tempi->ic_code=IC_LEA;
tempi->a1.type=TY_SIB+RT_I64;
tempi->a1.type_pointed=RT_I64;
tempi->a1.type_pointed_to=RT_I64;
tempi->a2.type=TY_NULL+tempi->a2.type&RT_MASK;
}
+8 -8
View File
@@ -51,14 +51,14 @@ U0 OptPass5(CCmpCtrl *cc)
ty=ty1;
tempi->a2.type=tempi1->a1.type&TY_MASK+ty;
pt=tempi->a2.type_pointed;
pt1=tempi1->a1.type_pointed;
pt=tempi->a2.type_pointed_to;
pt1=tempi1->a1.type_pointed_to;
if (pt1 && pt1<pt && pt!=RT_F64)
pt=pt1;
pt1=tempi1->r.type_pointed;
pt1=tempi1->r.type_pointed_to;
if (pt1 && pt1<pt && pt!=RT_F64)
pt=pt1;
tempi->a2.type_pointed=pt;
tempi->a2.type_pointed_to=pt;
tempi->a2.reg=tempi1->a1.reg;
tempi->a2.disp=tempi1->a1.disp;
@@ -95,14 +95,14 @@ U0 OptPass5(CCmpCtrl *cc)
ty=ty1;
tempi->a1.type=tempi1->a1.type&TY_MASK+ty;
pt=tempi->a1.type_pointed;
pt1=tempi1->a1.type_pointed;
pt=tempi->a1.type_pointed_to;
pt1=tempi1->a1.type_pointed_to;
if (pt1 && pt1<pt && pt!=RT_F64)
pt=pt1;
pt1=tempi1->r.type_pointed;
pt1=tempi1->r.type_pointed_to;
if (pt1 && pt1<pt && pt!=RT_F64)
pt=pt1;
tempi->a1.type_pointed=pt;
tempi->a1.type_pointed_to=pt;
tempi->a1.reg=tempi1->a1.reg;
tempi->a1.disp=tempi1->a1.disp;
+4 -4
View File
@@ -10,14 +10,14 @@ Bool OptIC6(CIntermediateCode *tempi)
if (tempil1->a1.type&TY_MASK==TY_REG) {
tempi->ic_flags=tempi->ic_flags&~ICF_A1_WAS_STK | tempil1->ic_flags;
tempi->ic_code=IC_MOV;
tempi->a1.type=TY_DISP+tempi->a1.type_pointed;
tempi->a1.type=TY_DISP+tempi->a1.type_pointed_to;
tempi->a1.reg=tempil1->a1.reg;
tempi->a1.disp=tempil1->ic_data;
OptSetNOP2(tempil1,-1);
} else {
tempil1->ic_code=IC_MOV;
tempi->ic_code=IC_MOV;
tempi->a1.type=TY_DISP+tempi->a1.type_pointed;
tempi->a1.type=TY_DISP+tempi->a1.type_pointed_to;
tempi->a1.disp=tempil1->ic_data;
}
return TRUE;
@@ -137,8 +137,8 @@ U0 OptPass6(CCmpCtrl *cc)
tempil2->ic_code!=IC_SET_RAX &&
!(tempi->ic_flags&(ICF_A2_TO_F64|ICF_A2_TO_INT)) &&
!(tempil2->ic_flags&(ICF_R_TO_F64|ICF_R_TO_INT))) {
tempil2->r.type =tempi->a1.type&TY_MASK+tempi->a1.type_pointed;
tempil2->r.type_pointed=tempi->a1.type_pointed;
tempil2->r.type =tempi->a1.type&TY_MASK+tempi->a1.type_pointed_to;
tempil2->r.type_pointed_to=tempi->a1.type_pointed_to;
tempil2->r.reg =tempi->a1.reg;
tempil2->r.disp =tempi->a1.disp;
tempil2->ic_flags=tempil2->ic_flags
+5 -5
View File
@@ -147,7 +147,7 @@ cc->pass==10 is final pass, code is placed into buf.
}
}
}
nobound_switch (tempi->ic_code) {
switch [tempi->ic_code] {
sub_switch_start:
sub_switch_start:
case IC_ABS_ADDR:
@@ -667,14 +667,14 @@ cc->pass==10 is final pass, code is placed into buf.
ICAssignPostIncDec(tempi,SLASH_OP_DEC,ip2);
break;
case IC_SHL_EQU:
ICShiftEqu(tempi,tempi->a1.type_pointed,
ICShiftEqu(tempi,tempi->a1.type_pointed_to,
tempi->r.type,tempi->r.reg,tempi->r.disp,
tempi->a1.type,tempi->a1.reg,tempi->a1.disp,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,
0xE0D1E0D3E0C1,0xE0D1E0D3E0C1,ip2);
break;
case IC_SHR_EQU:
ICShiftEqu(tempi,tempi->a1.type_pointed,
ICShiftEqu(tempi,tempi->a1.type_pointed_to,
tempi->r.type,tempi->r.reg,tempi->r.disp,
tempi->a1.type,tempi->a1.reg,tempi->a1.disp,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,
@@ -709,7 +709,7 @@ cc->pass==10 is final pass, code is placed into buf.
break;
case IC_ADD_EQU:
if (tempi->ic_flags&ICF_USE_INT)
ICAddSubEctEqu(tempi,tempi->a1.type_pointed,
ICAddSubEctEqu(tempi,tempi->a1.type_pointed_to,
tempi->r.type,tempi->r.reg,tempi->r.disp,
tempi->a1.type,tempi->a1.reg,tempi->a1.disp,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,
@@ -719,7 +719,7 @@ cc->pass==10 is final pass, code is placed into buf.
break;
case IC_SUB_EQU:
if (tempi->ic_flags&ICF_USE_INT)
ICAddSubEctEqu(tempi,tempi->a1.type_pointed,
ICAddSubEctEqu(tempi,tempi->a1.type_pointed_to,
tempi->r.type,tempi->r.reg,tempi->r.disp,
tempi->a1.type,tempi->a1.reg,tempi->a1.disp,
tempi->a2.type,tempi->a2.reg,tempi->a2.disp,
+1 -1
View File
@@ -73,7 +73,7 @@ U0 PrsExpression2(CCmpCtrl *cc,I64 *_max_prec,CPrsStk *ps)
goto pe_unary_term1;
while (TRUE) {
nobound_switch (state) {
switch [state] {
case PE_UNARY_TERM1:
pe_unary_term1:
unary_pre_prec=PREC_NULL;
+16 -12
View File
@@ -572,17 +572,21 @@ class CSwitchCase {
CSubSwitch *ss;
};
U0 PrsSwitch(CCmpCtrl *cc,Bool nobound,I64 try_cnt)
U0 PrsSwitch(CCmpCtrl *cc,I64 try_cnt)
{
CSwitchCase *header=NULL,*temps,*temps1; //Leaks on except
CSubSwitch root,*tempss; //Leaks on except
CCodeMisc *lb_dft,*lb_fwd_case,*mc_jt,*lb_entry,**jmp_table;
CIntermediateCode *tempi_sub,*tempi_cmp,*tempi_jmp,*tempi_start;
Bool dft_found=FALSE;
Bool dft_found=FALSE,nobound;
I64 i,k_start=MIN_I64,k_end,lo=MAX_I64,hi=MIN_I64,range;
if (cc->token!='(')
LexExcept(cc,"expecting '(' at ");
if (cc->token=='(')
nobound=FALSE;
else if (cc->token=='[')
nobound=TRUE;
else
LexExcept(cc,"expecting '(' or '[' at ");
Lex(cc);
QueInit(&root);
@@ -598,12 +602,15 @@ U0 PrsSwitch(CCmpCtrl *cc,Bool nobound,I64 try_cnt)
tempi_sub=ICAdd(cc,IC_IMM_I64,0,cmp.internal_types[RT_I64]);
ICAdd(cc,IC_SUB,0,cmp.internal_types[RT_I64]);
tempi_cmp=ICAdd(cc,IC_IMM_I64,0,cmp.internal_types[RT_I64]);
if (nobound)
if (nobound) {
ICAdd(cc,IC_NOBOUND_SWITCH,mc_jt,0);
else
if (cc->token!=']')
LexExcept(cc,"missing ']' at ");
} else {
ICAdd(cc,IC_SWITCH,mc_jt,0);
if (cc->token!=')')
LexExcept(cc,"missing ')' at ");
}
if (Lex(cc)!='{')
LexExcept(cc,"expecting '{' at ");
Lex(cc);
@@ -925,8 +932,8 @@ Bool PrsStmt(CCmpCtrl *cc,I64 try_cnt=0,
if (tempex=cc->hash_entry) {
if (tempex->type & HTT_KEYWORD) {
i=tempex(CHashGeneric *)->user_data0;
nobound_switch (i) {
case KW_NUM_KEYWORDS-1: //nobound_switch
switch [i] {
case KW_NUM_KEYWORDS-1: //nobound switch
default: //A keyword that is not valid here is just a symbol.
goto sm_not_keyword_afterall;
sub_switch_start:
@@ -971,11 +978,8 @@ Bool PrsStmt(CCmpCtrl *cc,I64 try_cnt=0,
case KW_DO:
PrsDoWhile(cc,try_cnt);
break;
case KW_NOBOUND_SWITCH:
PrsSwitch(cc,TRUE,try_cnt);
break;
case KW_SWITCH:
PrsSwitch(cc,FALSE,try_cnt);
PrsSwitch(cc,try_cnt);
break;
sub_switch_end:
sub_switch_end:
+1 -1
View File
@@ -95,7 +95,7 @@ CInstruction *InstEntryFind(U8 *ip,I64 opsize,I64 seg_size)
if (m=o1-o2)
goto ief_compare_done;
} else
nobound_switch (tempi->uasm_slash_val) {
switch [tempi->uasm_slash_val] {
case 0...7:
if (!(m=ip[n]>>3&7-tempi->slash_val)) {
if ((Bt(&uasm.mem_arg_mask,a1) || Bt(&uasm.mem_arg_mask,a2)) &&
Binary file not shown.
+12 -6
View File
@@ -27,8 +27,6 @@ $WW,1$$FG,5$$TX+CX,"TODO"$$FG$
* $LK,"DOCEF_REMALLOC_DATA",A="FF:::/Adam/DolDoc/DocChar.CPP,DOCEF_REMALLOC_DATA"$ HexEdit Remalloc.
* No way to clear $LK,"DOCEf_HOLD",A="MN:DOCEf_HOLD"$ entries.
* $LK,"DOCF_DBL_DOLLARS",A="MN:DOCF_DBL_DOLLARS"$ in $LK,"Reindention",A="MN:EdCodeTools2"$.
* Compiler Optimization: Local array vars --> reg. Might exist.
@@ -42,8 +40,6 @@ $WW,1$$FG,5$$TX+CX,"TODO"$$FG$
* 01/10/2016 find-replace editor hung on $LK,"CounterRenaissance",A="FI:::/Home/Web/TAD/CounterRenaissance.TXT"$ "Rennaisance"
* 01/06/2016 Editor filter "str" applied to output from LineRep looks broken.
* Document $$DA zero terminator. Explain str or not.
* Document, perhaps with video, $LK,"GetStr",A="MN:GetStr"$() all the way down into $LK,"PutKey",A="MN:PutKey"$() code.
* Better dictionary.
@@ -173,7 +169,7 @@ CHashFun *fun_ptr;
$ID,-5$
* extern of fun with dft arg of str?
* Might want to warn switch() dup case numbers.
* Might want to warn switch[] dup case numbers.
* Make $LK,"Clamp",A="MN:Clamp"$(), $LK,"Min",A="MN:Min"$(), $LK,"Max",A="MN:Max"$() into asm routines?
@@ -392,12 +388,13 @@ Offer only in approved place $TX,"Deuteronomy 12:13-18",HTML="http://www.bibleg
Jesus' zeal for the Temple $TX,"John 2:14-19",HTML="http://www.biblegateway.com/passage/?search=John%202:14-19&version=NIV"$
Famine not for bread $TX,"Amos 8:11-12",HTML="http://www.biblegateway.com/passage/?search=Amos%208:11-12&version=NIV"$
Meek and humble of heart $TX,"Matthew 11:29",HTML="http://www.biblegateway.com/verse/en/Matthew%2011:29"$
There is no council against the Lord $TX,"Proverbs 21:30",HTML="http://www.biblegateway.com/verse/en/Proverbs%2021:30"$
$FG,5$$TX+CX,"Misc Notes"$$FG$
Intel CEO's name: Brian Krzanich
>$FG,2$lspci -v$FG$
Size:$TX,"17358 KB",D="DD_TEMPLEOSCD_K_SIZE"$
Size:$TX,"17364 KB",D="DD_TEMPLEOSCD_K_SIZE"$
$FG,5$$TX+CX,"My Web Bookmarks"$$FG$$WW,0$
$TX,"My FireFox Bookmarks",HTML="http://www.templeos.org/Wb/Home/Downloads/Blog/Bookmarks"$
@@ -406,11 +403,16 @@ Frosting $HC,"<center><img src=\"http://www.templeos.org/images/Frosting.jpg\" w
Soap Carvings $HC,"<center><img src=\"http://www.templeos.org/images/SoapCarvings.jpg\" width=\"640\" height=\"480\" alt=\"\"></center>"$
CottonTail $HC,"<center><img src=\"http://www.templeos.org/images/CttnTail.jpg\" width=\"644\" height=\"1113\" alt=\"\"></center>"$
TempleOS Logo $HC,"<center><img src=\"http://www.templeos.org/images/Logo128x152.jpg\" width=\"640\" height=\"760\" alt=\"\"></center>"$
Pew Pew Pew $HC,"<center><img src=\"http://i.imgur.com/sMpJ0ch.jpg\" width=\"640\" height=\"480\" alt=\"\"></center>"$
Iceberg $HC,"<center><img src=\"https://upload.wikimedia.org/wikipedia/commons/3/38/Blue_ice_in_South_Greenland_-_Visit_Greenland.jpg\" width=\"640\" height=\"480\" alt=\"\"></center>"$
I made dis $HC,"<center><img src=\"http://i.imgur.com/cZKkxTX.jpg\" width=\"640\" height=\"800\" alt=\"\"></center>"$
NIST Beacon $HC,"<center><img src=\"http://www.nist.gov/itl/csd/ct/images/beacon_architecture_2013.jpg\" width=\"550\" height=\"278\" alt=\"\"></center>"$
$TX,"SimStructure",HTML="http://www.templeos.org/files/SimStrSetUp.zip"$
$TX,"ASU_Transcripts",HTML="http://www.templeos.org/files/ASU_Transcripts.pdf"$ $TX,"ASU Course Catalog (See page 261)",HTML="https://catalog.asu.edu/files/shared/archives/1994-1996/general/UG1994-1996.pdf/1994-1996-UG-241-267.pdf"$
$TX,"Dr. David Pheanis",HTML="https://webapp4.asu.edu/directory/person/77201"$ $TX,"Dr. Konstantinos S. Tsakalis",HTML="http://ecee.engineering.asu.edu/directory/tenured-and-tenure-track-faculty/kostantinos-s-tsakalis"$ $TX,"Dr. Walter Higgins",HTML="https://webapp4.asu.edu/directory/directorysearch?cn=Walter+Higgins"$
$TX,"Peter Gadwa",HTML="http://www.wired.com/magazine/2010/11/mf_ticketmaster/all/1"$
$TX,"Tom Foley",HTML="http://web.gccaz.edu/~tfoley/perspage.html"$
$TX,"Graphic Technologies",HTML="https://web.archive.org/web/20020811060541/http://www.graphic-technologies.com/"$ $TX,"Lexmark vs Static Control",HTML="https://en.wikipedia.org/wiki/Lexmark_International,_Inc._v._Static_Control_Components,_Inc."$
$FG,5$$TX+CX,"Web Bookmarks"$$FG$
@@ -422,12 +424,16 @@ $TX,"Look at PCI interrupt routing.",HTML="http://forum.osdev.org/viewtopic.php?
$TX,"The sins of Newton",HTML="https://www.brainpickings.org/2012/01/04/isaac-newton-list-of-sins"$
$TX,"Stalin's Tanks",HTML="https://boardgamegeek.com/boardgame/5198/stalins-tanks"$
$TX,"Lamp shades",HTML="http://www.lampsplus.com/products/lamp-shades"$
$TX,"The Original Jewish Temple",HTML="http://www.jewishvirtuallibrary.org/jsource/Judaism/The_Temple.html"$
$TX,"KingJamesBible with LineNums",HTML="http://www.templeos.org/files/NumBible.TXT"$
$TX,"Higgs 5-Sigma Proof",HTML="http://understandinguncertainty.org/explaining-5-sigma-higgs-how-well-did-they-do"$
$TX,"Dwight: Nerd torture",HTML="http://www.noob.us/humor/the-office-dwight-faces-nerd-torture-of-the-highest-form"$
$TX,"TOSZ Compression",HTML="http://www.templeos.org/Wb/Linux/TOSZ.CPP"$
$TX,"ATA/ATAPI spec",HTML="http://www.t13.org/Documents/UploadedDocuments/docs2007/D1532v1r4b-AT_Attachment_with_Packet_Interface_-_7_Volume_1.pdf"$
$TX,"WWW.OSDEV.ORG",HTML="http://www.osdev.org"$
$TX,"NIST Beacon",HTML="http://www.nist.gov/itl/csd/ct/nist_beacon.cfm"$
$TX,"The Perfect Coin Toss",HTML="http://hackaday.com/2014/12/19/nist-randomness-beacon"$
$TX,"BBC",HTML="http://www.knpr.org"$
$TX,"KNPR",HTML="http://www.knpr.org"$
$TX,"BBC_News_24",HTML="http://www.wherever.tv/tv-channels/BBC-News-24.jsf"$
+3 -3
View File
@@ -2,7 +2,7 @@ $TR-UL,"Adam"$
$ID,2$$TR,"SysMsgFlags"$
$ID,2$sys_msg_flags[0]=0xFF;
$ID,-2$$TR,"SysRegVer"$
$ID,2$registry_version=4.030;
$ID,2$registry_version=4.040;
$ID,-2$$ID,-2$$TR-UL,"TempleOS"$
$ID,2$$TR,"TOS"$
$ID,2$I64 tos_code_walk_thru=105,tos_after_egypt_in_action=46;
@@ -39,7 +39,7 @@ $ID,-2$$TR,"BomberGolf"$
$ID,2$I64 best_score=175;
$ID,-2$$ID,-2$$TR,"DemoCompany"$
$ID,2$$TR,"Game1"$
$ID,2$F64 best_score=166.32939;
$ID,2$F64 best_score=1344.86889;
$TR,"SimpleVal"$
$ID,2$1298;
$ID,2$1300;
$ID,-2$$ID,-2$$ID,-2$
+15 -6
View File
@@ -4,7 +4,7 @@ U8 *BlogLocalDir(CDate cdt=0)
CDateStruct ds;
if (!cdt) cdt=Now+local_time_offset;
Date2Struct(&ds,cdt);
StrPrint(dir,"::/Home/Web/" PERSONAL_INITIALS "/Blog/%d%Z",
StrPrint(dir,BLOG_LOCAL_BASE "/%d%Z",
ds.year,ds.mon-1,"ST_MONTHS");
if (!FileFind(dir,,FUF_JUST_DIRS))
MkDir(dir);
@@ -28,7 +28,7 @@ U8 *BlogWebDir(CDate cdt=0)
CDateStruct ds;
if (!cdt) cdt=Now+local_time_offset;
Date2Struct(&ds,cdt);
StrPrint(dir,PERSONAL_WEB "/Home/Web/" PERSONAL_INITIALS "/Blog/%d%Z",
StrPrint(dir,BLOG_WEB_BASE "/%d%Z",
ds.year,ds.mon-1,"ST_MONTHS");
return dir;
}
@@ -85,23 +85,32 @@ U0 BlogScreenShot()
public U0 MakeWebSitePartial()
{
MkDir("D:/Wb");
MkDir("D:/Wb/Home");
MkDir("D:/Wb/Home/Web");
MkDir("D:/Wb/Home/Web/TAD");
MkDir("D:/Wb/Home/Web/TAD/Blog");
FreshenWebDir("/Home/Web");
FreshenWebDir("/Home/Web/" PERSONAL_INITIALS);
FreshenWebDir(BlogLocalDir+2);
Drv('C');
}
U0 Blog()
public U0 Blog()
{
if (!FileFind(BlogLocalFile,,FUF_JUST_FILES))
Copy("::/Home/Downloads/Blog/DailyBlogHeader.TXT.Z",BlogLocalFile);
WinMax;
AutoComplete;
WinBorder;
WinMax;
Msg(MSG_KEY_DOWN_UP,0,SC_CURSOR_DOWN|SCF_CTRL);
Msg(MSG_KEY_DOWN_UP,0,SC_F6|SCF_ALT);
Msg(MSG_KEY_DOWN_UP,'\n',0);
if (Ed(BlogLocalFile,EDF_WAS_WRITE)) {
Copy(BlogLocalFile,"::Home/Web/" PERSONAL_INITIALS "/DailyBlog.TXT.Z");
MakeWebSitePartial;
Copy(BlogLocalFile,"::" DAILY_BASE ".TXT.Z");
Copy(BlogLocalFile,"D:" DAILY_BASE ".TXT.Z");
Copy(BlogLocalFile,"D:/Wb" DAILY_BASE ".TXT.Z");
TOSWebFile("D:/Wb" DAILY_BASE ".TXT.Z");
}
}
+4
View File
@@ -2,6 +2,10 @@
#define PERSONAL_WEB "http:/" "/www.templeos.org/Wb"
#define PERSONAL_INITIALS "TAD"
#define BLOG_BASE "/Home/Web/" PERSONAL_INITIALS "/Blog"
#define DAILY_BASE "/Home/Web/" PERSONAL_INITIALS "/DailyBlog"
#define BLOG_LOCAL_BASE "::" BLOG_BASE
#define BLOG_WEB_BASE PERSONAL_WEB BLOG_BASE
#define SLOP BLK_SIZE
U0 TOSBootRescueDrv1()
+6 -10
View File
@@ -230,10 +230,6 @@ U0 TOSDistroPrep()
virtual machine, not bare metal hardware because it's settings could cause
problems. The hard drive must be partitioned. Install Std Distro, then
install this on top.
>$LK,"TSInstall",A="FF:::/Demo/AcctExample/TOSDistro.CPP,TSInstall"$;
>$LK,"TSUpgrade",A="FF:::/Demo/AcctExample/TOSDistro.CPP,TSUpgrade"$;
See $LK,"MakeDistrosAndBackUp",A="FF:::/Demo/AcctExample/TOSDistro.CPP,MakeDistrosAndBackUp"$() to reproduce the ISO's in $FG,4$E:/Wb$FG$. It makes this
website, too.
*/
Drv('C');
DistroPrep;
@@ -249,7 +245,7 @@ U0 MakeTOSDistro()
ISOFileCreate(TOS_ISO_NAME,TOS_DISTRO_DIR "/*",,
TOS_DISTRO_DIR BOOT_DIR_KERNEL_BIN_C);
DefinePrint("DD_TEMPLEOSTS_SIZE",
"Download $TX,"TempleOS V4.03",D="DD_OS_NAME_VERSION"$ - T.S. Company Internal Distro (%0.1f MB)",
"Download $TX,"TempleOS V4.04",D="DD_OS_NAME_VERSION"$ - T.S. Company Internal Distro (%0.1f MB)",
0.1*(10*Size(TOS_ISO_NAME,"+s")/1024/1024));
Drv('C');
}
@@ -284,7 +280,7 @@ U0 MakeDbgDistro()
ISOFileCreate(TOS_ISO_NAME,TOS_DISTRO_DIR "/*",,
TOS_DISTRO_DIR BOOT_DIR_KERNEL_BIN_C);
DefinePrint("DD_TEMPLEOSDBG_SIZE",
"Download $TX,"TempleOS V4.03",D="DD_OS_NAME_VERSION"$ - Debug Distro (%0.1f MB)",
"Download $TX,"TempleOS V4.04",D="DD_OS_NAME_VERSION"$ - Debug Distro (%0.1f MB)",
0.1*(10*Size(TOS_ISO_NAME,"+s")/1024/1024));
Drv('C');
}
@@ -332,7 +328,7 @@ U0 MakeLiteDistro()
ISOFileCreate(TOS_ISO_NAME,TOS_DISTRO_DIR "/*",,
TOS_DISTRO_DIR BOOT_DIR_KERNEL_BIN_C);
DefinePrint("DD_TEMPLEOSLITE_SIZE",
"Download $TX,"TempleOS V4.03",D="DD_OS_NAME_VERSION"$ - Lite Distro (%0.1f MB)",
"Download $TX,"TempleOS V4.04",D="DD_OS_NAME_VERSION"$ - Lite Distro (%0.1f MB)",
0.1*(10*Size(TOS_ISO_NAME,"+s")/1024/1024));
Drv('C');
}
@@ -365,7 +361,7 @@ U0 MakeUltraDistro()
ISOFileCreate(TOS_ISO_NAME,TOS_DISTRO_DIR "/*",,
TOS_DISTRO_DIR BOOT_DIR_KERNEL_BIN_C);
DefinePrint("DD_TEMPLEOSULTRA_SIZE",
"Download $TX,"TempleOS V4.03",D="DD_OS_NAME_VERSION"$ - UltraLite Distro (%0.1f MB)",
"Download $TX,"TempleOS V4.04",D="DD_OS_NAME_VERSION"$ - UltraLite Distro (%0.1f MB)",
0.1*(10*Size(TOS_ISO_NAME,"+s")/1024/1024));
Drv('C');
}
@@ -374,12 +370,12 @@ U0 UpdateISODocDefines()
{
try {
DefinePrint("DD_TEMPLEOSCD_SIZE",
"Download $TX,"TempleOS V4.03",D="DD_OS_NAME_VERSION"$ - Standard Distro (%0.1f MB)",
"Download $TX,"TempleOS V4.04",D="DD_OS_NAME_VERSION"$ - Standard Distro (%0.1f MB)",
0.1*(10*Size("D:/Wb/TempleOSCD.ISO","+s")/1024/1024));
DefinePrint("DD_TEMPLEOSCD_K_SIZE",
"%d KB",Size("D:/Wb/TempleOSCD.ISO","+s")/1024);
DefinePrint("DD_TEMPLEOSULTRA_SIZE",
"Download $TX,"TempleOS V4.03",D="DD_OS_NAME_VERSION"$ - UltraSmall Distro (%0.1f MB)",
"Download $TX,"TempleOS V4.04",D="DD_OS_NAME_VERSION"$ - UltraSmall Distro (%0.1f MB)",
0.1*(10*Size("D:/Wb/TempleOSUltra.ISO","+s")/1024/1024));
DefinePrint("DD_TEMPLEOSULTRA_K_SIZE",
"%d KB",Size("D:/Wb/TempleOSUltra.ISO","+s")/1024);
+42 -39
View File
@@ -322,8 +322,6 @@ U0 MyBibleLines(U8 *st,I64 num_lines,I64 radix,Bool modulo,Bool plus_one)
I64 i,start;
U8 *verse;
if (*st && (doc_out=DocPut)) {
DocPrint(doc_out,"$$BG,LTGRAY$$");
i=Str2I64(st,radix);
if (modulo) {
if (radix==16)
@@ -344,7 +342,7 @@ U0 MyBibleLines(U8 *st,I64 num_lines,I64 radix,Bool modulo,Bool plus_one)
DocPrint(doc_out,"-->Line:%d\n",start);
verse=BibleLine2Verse(start);
DocPrint(doc_out,"$TX,"KingJamesBible",HTML="http://www.templeos.org/files/NumBible.TXT"$ (%s)\n$$BG$$\nGod says...\n$$RED$$",verse);
DocPrint(doc_out,"$TX,"KingJamesBible",HTML="http://www.templeos.org/files/NumBible.TXT"$ (%s)\n\nGod says...\n$$RED$$",verse);
Free(verse);
doc_in=DocNew;
@@ -377,23 +375,26 @@ U0 MyBibleLines(U8 *st,I64 num_lines,I64 radix,Bool modulo,Bool plus_one)
}
}
#define GBP_SHORT 0
#define GBP_MEDIUM 1
#define GBP_LONG 2
public U0 GodBooksPassage(U8 *files_find_mask,I64 len=512,
I64 rand_i32=MIN_I64,Bool full=FALSE)
I64 rand_i32=MIN_I64,I64 verbosity=GBP_SHORT)
{//Make God pick a book passage. $LK+PU,"Holy Spirit Instructions",A="FI:::/Adam/God/HSNotes.TXT"$
CDirEntry *tempde=FilesFind(files_find_mask,
FUF_RECURSE|FUF_JUST_FILES|FUF_JUST_TXT),
*tempde1=tempde;
I64 i=0;
U8 *st,*st2=NULL;
"$$BG,LTGRAY$$";
while (tempde) {
st=FileRead(tempde->full_name);
tempde->user_data=StrLen(st);
if (full)
if (verbosity==GBP_LONG)
"%08X-",i;
if (tempde->user_data>=len)
i+=tempde->user_data+1-len;
if (full)
if (verbosity==GBP_LONG)
"%08X:$$LK,\"%s\",A=\"FI:%s\"$$\n",
i-1,tempde->full_name+2,tempde->full_name;
Free(st);
@@ -401,10 +402,12 @@ public U0 GodBooksPassage(U8 *files_find_mask,I64 len=512,
}
if (rand_i32<0)
rand_i32=GodBits(32);
if (full)
" \n%08X*%08X",rand_i32,i;
if (verbosity==GBP_LONG)
'\n';
if (verbosity>=GBP_MEDIUM)
"%08X*%08X",rand_i32,i;
i*=rand_i32;
if (full)
if (verbosity>=GBP_MEDIUM)
"=%08X.%08X\n",i.u32[1],i.u32[0];
i=i.u32[1];
tempde=tempde1;
@@ -415,7 +418,7 @@ public U0 GodBooksPassage(U8 *files_find_mask,I64 len=512,
st=FileRead(tempde->full_name);
st2=st+(tempde->user_data+1-len)+i;
st2[len]=0;
"%s\n$$BG$$\nGod says...\n$$RED$$%s$$FG$$\n",tempde->full_name,st2;
"%s\nGod says...\n$$RED$$%s$$FG$$\n",tempde->full_name,st2;
Free(st);
}
}
@@ -424,7 +427,7 @@ public U0 GodBooksPassage(U8 *files_find_mask,I64 len=512,
DirTreeDel(tempde1);
}
#define NIST_TIME_OFFSET (-7884-local_time_offset/CDATE_FREQ)
#define NIST_TIME_OFFSET (-7900-local_time_offset/CDATE_FREQ)
#define NIST_TIME_TO_SWITCH 3
public U0 NISTSync()
@@ -456,29 +459,29 @@ U0 InsMyURL()
"GenerateData\0WebBookMark\0Roulette\0Movie\0Metallica\0")) {
case:
if (DocForm(url(CRandHexBeacon5Form *))) {
"$$BG,LTGRAY$$";
// if (FileFind("::/Home/Web/TAD/NISTPassage.TXT.Z"))
// Type("::/Home/Web/TAD/NISTPassage.TXT.Z",0);
"$$TX,\"Guidelines for Talking with God.\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\t";
"$$TX,\"How this random Bible passage was chosen.\","
"HTML=\"http://www.templeos.org/Wb"
"/Home/Web/TAD/NISTPassage.html\"$$\n";
tag=MStrPrint("https:/beacon.nist.gov/rest/record/%d",url->timestamp);
"$$TX,\"%Q\",HTML=\"%Q\"$$\n$$BG$$",tag,tag;
"$$TX,\"%Q\",HTML=\"%Q\"$$\n",tag,tag;
Free(tag);
MyBibleLines(url->special,20,16,TRUE,TRUE);
}
break;
case:
if (DocForm(url(CRandHexBeacon8Form *))) {
"$$BG,LTGRAY$$";
// if (FileFind("::/Home/Web/TAD/NISTPick.TXT.Z"))
// Type("::/Home/Web/TAD/NISTPick.TXT.Z",0);
"$$TX,\"Guidelines for Talking with God.\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\t";
"$$TX,\"How this random book pick was chosen.\","
"HTML=\"http://www.templeos.org/Wb"
"/Home/Web/TAD/NISTPick001.html\"$$\n";
tag=MStrPrint("https:/beacon.nist.gov/rest/record/%d",url->timestamp);
"$$TX,\"%Q\",HTML=\"%Q\"$$\n$$BG$$",tag,tag;
"$$TX,\"%Q\",HTML=\"%Q\"$$\n",tag,tag;
Free(tag);
GodBooksPassage("C:/Home/Downloads/Text/*",,
Str2I64(url->special,16),TRUE);
Str2I64(url->special,16),GBP_MEDIUM);
}
break;
case:
@@ -554,69 +557,69 @@ U0 InsMyURL()
break;
case:
if (DocForm(url(CRandDecForm *))) {
"$$BG,LTGRAY$$$$TX,\"Guidelines for Talking with God\","
"$$TX,\"Guidelines for Talking with God\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
tag="http://www.randomnumbers.info";
"$$TX,\"%Q\",HTML=\"%Q\"$$\n$$BG$$",tag,tag;
"$$TX,\"%Q\",HTML=\"%Q\"$$\n",tag,tag;
MyBibleLines(url->special,20,10,FALSE,TRUE);
}
break;
case:
if (DocForm(url(CRandDecForm *))) {
"$$BG,LTGRAY$$$$TX,\"Guidelines for Talking with God\","
"$$TX,\"Guidelines for Talking with God\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
tag="http://www.random.org";
"$$TX,\"%Q\",HTML=\"%Q\"$$\n$$BG$$",tag,tag;
"$$TX,\"%Q\",HTML=\"%Q\"$$\n",tag,tag;
MyBibleLines(url->special,20,10,FALSE,FALSE);
}
break;
case:
if (DocForm(url(CRandDecForm *))) {
"$$BG,LTGRAY$$$$TX,\"Guidelines for Talking with God\","
"$$TX,\"Guidelines for Talking with God\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
tag="https://passed.pw";
"$$TX,\"%Q\",HTML=\"%Q\"$$\n$$BG$$",tag,tag;
"$$TX,\"%Q\",HTML=\"%Q\"$$\n",tag,tag;
MyBibleLines(url->special,20,10,FALSE,FALSE);
}
break;
case:
if (DocForm(url(CRandCertForm *))) {
"$$BG,LTGRAY$$$$TX,\"Guidelines for Talking with God\","
"$$TX,\"Guidelines for Talking with God\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
tag="http://virtual-notary.org";
"$$TX,\"%Q\",HTML=\"%Q\"$$\n",tag,tag;
tag="Here is the certificate";
st=MStrPrint("http://www.templeos.org/Certs/virtual-notary-cert"
"-randomnum-%d.p12",url->cert);
"\n$$TX,\"%Q: %d\",HTML=\"%Q\"$$.\n$$BG$$",tag,url->cert,st;
"\n$$TX,\"%Q: %d\",HTML=\"%Q\"$$.\n",tag,url->cert,st;
Free(st);
MyBibleLines(url->special,20,10,FALSE,FALSE);
}
break;
case:
if (DocForm(url(CRandHexForm *))) {
"$$BG,LTGRAY$$$$TX,\"Guidelines for Talking with God\","
"$$TX,\"Guidelines for Talking with God\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
tag="http://qrng.anu.edu.au/NIST.php";
"$$TX,\"%Q\",HTML=\"%Q\"$$\n$$BG$$",tag,tag;
"$$TX,\"%Q\",HTML=\"%Q\"$$\n",tag,tag;
MyBibleLines(url->special,20,16,TRUE,TRUE);
}
break;
case:
if (DocForm(url(CRandHexForm *))) {
"$$BG,LTGRAY$$$$TX,\"Guidelines for Talking with God\","
"$$TX,\"Guidelines for Talking with God\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
tag="https://www.fourmilab.ch/hotbits/secure_generate.html";
"$$TX,\"%Q\",HTML=\"%Q\"$$\n$$BG$$",tag,tag;
"$$TX,\"%Q\",HTML=\"%Q\"$$\n",tag,tag;
MyBibleLines(url->special,20,16,TRUE,TRUE);
}
break;
case:
if (DocForm(url(CRandDecForm *))) {
"$$BG,LTGRAY$$$$TX,\"Guidelines for Talking with God\","
"$$TX,\"Guidelines for Talking with God\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
tag="http://www.generatedata.com";
"$$TX,\"%Q\",HTML=\"%Q\"$$\n$$BG$$",tag,tag;
"$$TX,\"%Q\",HTML=\"%Q\"$$\n",tag,tag;
MyBibleLines(url->special,20,10,FALSE,FALSE);
}
break;
@@ -631,10 +634,10 @@ U0 InsMyURL()
break;
case:
if (DocForm(url(CRandDecForm *))) {
"$$BG,LTGRAY$$$$TX,\"Guidelines for Talking with God\","
"$$TX,\"Guidelines for Talking with God\","
"HTML=\"http://www.templeos.org/Wb/Adam/God/HSNotes.html\"$$\n";
tag="https://www.dublinbet.com";
"$$TX,\"%Q\",HTML=\"%Q\"$$\n$$BG$$",tag,tag;
"$$TX,\"%Q\",HTML=\"%Q\"$$\n",tag,tag;
MyBibleLines(url->special,20,10,FALSE,FALSE);
}
break;
+13 -11
View File
@@ -150,7 +150,7 @@ public CDoc *Doc2Html(CDoc *doc_in,U8 *html_header=NULL,U8 *body_header=NULL,
"<head>\n"
"<meta http-equiv=\"Content-Type\" "
"content=\"text/html;charset=US-ASCII\">\n"
"<meta name=\"generator\" content=\"$TX,"TempleOS V4.03",D="DD_OS_NAME_VERSION"$\">\n";
"<meta name=\"generator\" content=\"$TX,"TempleOS V4.04",D="DD_OS_NAME_VERSION"$\">\n";
if (!body_header) body_header=
"<body>\n"
"<pre style=\"font-family:courier;font-size:10pt\">\n";
@@ -173,14 +173,14 @@ public CDoc *Doc2Html(CDoc *doc_in,U8 *html_header=NULL,U8 *body_header=NULL,
y=doc_e->y;
while (doc_e!=doc_in) {
if (!(doc_e->de_flags&DOCEF_SKIP)) {
if (line_anchors && y!=old_y) {
if (y!=old_y && line_anchors) {
DocPrint(doc_out,"<a name=\"l%d\"></a>",y+1);
old_y=y;
}
while (y<doc_e->y) {
HtmlPutS(doc_out,doc_e->settings.final_u32_attr,
&old_u32_attr,"\n",&col,style_bitmap);
if (line_anchors && ++y!=old_y) {
if (++y!=old_y && line_anchors) {
DocPrint(doc_out,"<a name=\"l%d\"></a>",y+1);
old_y=y;
}
@@ -349,12 +349,19 @@ U0 TOSWebFile(U8 *name)
{
U8 *name2;
CDirEntry de;
Bool line_anchors;
if (FileFind(name,&de)) {
Free(de.full_name);
"File:%s\n",name;
UncollapseFile(name,NULL);
Touch(name,"",,de.datetime);
name2=ChgExt(name,"html");
if (StrMatch(BLOG_BASE,name) || StrMatch(DAILY_BASE,name))
line_anchors=FALSE;
else
line_anchors=TRUE;
TOSToHtml(name,name2,
"<!DOCTYPE HTML>\n"
"<html style=\"background-color:#FFFFFF;\">\n"
@@ -365,7 +372,7 @@ U0 TOSWebFile(U8 *name)
"<meta name=\"keywords\" "
"content=\"Operating System,64-Bit,64 Bit,"
"Temple,OS,TempleOS,Free,Open Source,Public Domain,x86_64\">\n"
"<meta name=\"generator\" content=\"$TX,"TempleOS V4.03",D="DD_OS_NAME_VERSION"$\">\n",
"<meta name=\"generator\" content=\"$TX,"TempleOS V4.04",D="DD_OS_NAME_VERSION"$\">\n",
"<body style=\"background-color:#55FFFF; border-style:solid;
border-width:8px; border-color:#0000AA;
@@ -374,7 +381,7 @@ U0 TOSWebFile(U8 *name)
"<div style=\"margin-left:auto; margin-right:auto;"
" width: 640px;\">\n",
"</div></pre></body>\n",
"</html>\n");
"</html>\n",,line_anchors);
Touch(name2,"",,de.datetime);
Free(name2);
}
@@ -411,12 +418,6 @@ U0 FreshenWebDir(U8 *dirname)
CDirEntry *tempde,*tempde1;
U8 *src,*dst;
MkDir("D:/Wb");
MkDir("D:/Wb/Home");
MkDir("D:/Wb/Home/Web");
MkDir("D:/Wb/Home/Web/TAD");
MkDir("D:/Wb/Home/Web/TAD/Blog");
src=MStrPrint("D:/Wb%s",dirname);
MkDir(src);
Free(src);
@@ -439,3 +440,4 @@ U0 FreshenWebDir(U8 *dirname)
}
DirTreeDel(tempde1);
}
+28 -36
View File
@@ -20,35 +20,36 @@ F64 gate_
$BG,10$#define GE_COW 0
$SP,"<1>",BI=1$
$SP,"<1>",BI=1$ $SP,"<2>",BI=2$ $SP,"<3>",BI=3$
#define GE_BULL 1
$SP,"<2>",BI=2$
$SP,"<4>",BI=4$ $SP,"<5>",BI=5$ $SP,"<6>",BI=6$
#define GE_HORSE 2
$SP,"<3>",BI=3$
$SP,"<7>",BI=7$ $SP,"<8>",BI=8$
#define GE_NUM 3
$SP,"<4>",BI=4$
$SP,"<9>",BI=9$
$BG$
class RHCSprite
{
U8 *img;
I64 min_x,max_x,min_y,max_y;
} rh_sprite[GE_NUM];
#define ANIMAL_WIDTH 20
#define ANIMAL_HEIGHT 16
U8 *cow_imgs[4] ={$IB,"<1>",BI=1$,$IB,"<2>",BI=2$,$IB,"<3>",BI=3$,$IB,"<2>",BI=2$},
*bull_imgs[4] ={$IB,"<4>",BI=4$,$IB,"<5>",BI=5$,$IB,"<6>",BI=6$,$IB,"<5>",BI=5$},
*horse_imgs[4]={$IB,"<7>",BI=7$,$IB,"<8>",BI=8$,$IB,"<7>",BI=7$,$IB,"<8>",BI=8$};
#define NUM_ANIMALS 100
class Animal
{
I64 num,x,y,dx,dy;
RHCSprite *ge;
U8 **imgs;
U32 buddy;
U8 type;
Bool dead,pad[2];
U8 type,frame0;
Bool dead,pad;
} *a;
//************************************
@@ -199,7 +200,7 @@ U0 DrawIt(CTask *task,CDC *dc)
static I64 last_pos_x=0;
static Bool left=TRUE;
F64 t;
I64 i,
I64 i,frame=4*tS,
cx=(MAP_WIDTH -task->pix_width)/2,
cy=(MAP_HEIGHT-task->pix_height)/2;
if (task->scroll_x+cx<0)
@@ -222,7 +223,8 @@ U0 DrawIt(CTask *task,CDC *dc)
dc->flags|=DCF_JUST_MIRROR|DCF_SYMMETRY;
DCSymmetrySet(dc,a[i].x.i32[1]-cx,0,a[i].x.i32[1]-cx,1);
}
Sprite3(dc,a[i].x.i32[1]-cx,a[i].y.i32[1]-cy,0,a[i].ge->img);
Sprite3(dc,a[i].x.i32[1]-cx,a[i].y.i32[1]-cy,0,
a[i].imgs[(frame+a[i].frame0)&3]);
dc->flags&=~(DCF_JUST_MIRROR|DCF_SYMMETRY);
}
@@ -235,9 +237,8 @@ U0 DrawIt(CTask *task,CDC *dc)
DCSymmetrySet(dc,ip.pos.x-task->pix_left-task->scroll_x,0,
ip.pos.x-task->pix_left-task->scroll_x,1);
}
Sprite3(dc,
ip.pos.x-task->pix_left-task->scroll_x,
ip.pos.y-task->pix_top -task->scroll_y,0,rh_sprite[GE_HORSE].img);
Sprite3(dc,ip.pos.x-task->pix_left-task->scroll_x,
ip.pos.y-task->pix_top -task->scroll_y,0,horse_imgs[frame&3]);
dc->flags&=~(DCF_JUST_MIRROR|DCF_SYMMETRY);
last_pos_x=ip.pos.x;
@@ -393,13 +394,13 @@ U0 AnimateTask(CTask *parent)
}
//Keep on map
if (!(MAP_BORDER-tempa->ge->min_x
<=tempa->x.i32[1]<MAP_WIDTH-MAP_BORDER-tempa->ge->max_x)) {
if (!(MAP_BORDER+ANIMAL_WIDTH/2
<=tempa->x.i32[1]<MAP_WIDTH-MAP_BORDER-ANIMAL_WIDTH/2)) {
tempa->x -=tempa->dx;
tempa->dx=-tempa->dx;
}
if (!(MAP_BORDER-tempa->ge->min_y
<=tempa->y.i32[1]<MAP_HEIGHT-MAP_BORDER-tempa->ge->max_y)) {
if (!(MAP_BORDER+ANIMAL_HEIGHT
<=tempa->y.i32[1]<MAP_HEIGHT-MAP_BORDER)) {
tempa->y -=tempa->dy;
tempa->dy=-tempa->dy;
}
@@ -464,7 +465,7 @@ U0 ReInit()
//Plot fence
for (i=FENCE_WIDTH;i>0;i-=16)
Sprite3(map_dc,i,FENCE_HEIGHT,0,$IB,"<4>",BI=4$);
Sprite3(map_dc,i,FENCE_HEIGHT,0,$IB,"<9>",BI=9$);
map_dc->pen_width=1;
map_dc->color=BROWN;
for (i=0;i<FENCE_HEIGHT-16;i+=16)
@@ -489,9 +490,10 @@ U0 ReInit()
a[i].y=(64+RandU32%(MAP_WIDTH-128))<<32;
} while (!CheckMap(a[i].x>>32,a[i].y>>32));
if (i&1)
a[i].ge=&rh_sprite[GE_COW];
a[i].imgs=cow_imgs;
else
a[i].ge=&rh_sprite[GE_BULL];
a[i].imgs=bull_imgs;
a[i].frame0=RandU16&3;
BuddySelect(i);
}
outside_cnt=NUM_ANIMALS;
@@ -504,16 +506,6 @@ U0 ReInit()
U0 Init()
{
I64 i;
RHCSprite *ge;
rh_sprite[0].img=$IB,"<1>",BI=1$;
rh_sprite[1].img=$IB,"<2>",BI=2$;
rh_sprite[2].img=$IB,"<3>",BI=3$;
for (i=0;i<GE_NUM;i++) {
ge=&rh_sprite[i];
SpriteExtents(ge->img,&ge->min_x,&ge->max_x,&ge->min_y,&ge->max_y);
}
RiverNew;
rd_lock=0;
QueInit(&rd_root);
@@ -590,9 +582,9 @@ rh_done:
}
RawHide;
ňö˙˙˙đ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙bö˙˙˙ô˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙Âö˙˙˙đ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙d
ö˙˙˙ď˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙’ö˙˙˙ó˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙Úö˙˙˙ď˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ d
ùÿÿÿ
úÿÿÿðÿÿÿúÿÿÿ
ÿÿÿÿðÿÿÿÿÿÿÿ
ðÿÿÿÿÿÿÿÿÿÿÿúÿÿÿ
˙˙˙˙˙˙˙˙đ˙˙˙ú˙˙˙
˙˙˙˙˙˙˙˙đ˙˙˙ú˙˙˙zö˙˙˙ó˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙zö˙˙˙ó˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙Úö˙˙˙ď˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙Úö˙˙˙ď˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ń˙˙˙ę˙˙˙" ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙ ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙
+1 -1
View File
@@ -1 +1 @@
rZÅ¡Jþ‘?¨È³a©h·?£û(JéqÌ?»±wÌݧÖ?Œ@ð­ß?•¡âŽ@Pà?@55¼Ã;â?ÉSä[}Pä?vŽ’)é?¯B5´´Õï?
8ý!/Û ˜?"v¬ùâ°»?äÌq¡À?jAÊ?õŸƒ¶3Í?¬ax “Ø?]¦"Þ?L–o`öÞ?ŠìÁxÅß? Ñ”ìžë?
+10 -10
View File
@@ -1,11 +1,11 @@
//This is sorted.
0.167187
0.196175
0.280106
0.366963
0.403184
0.591110
0.726180
0.749633
0.795656
0.926049
0.256505
0.347373
0.349509
0.367545
0.563530
0.626343
0.703852
0.753115
0.897487
0.941150
+1 -1
View File
@@ -1 +1 @@
¯B5´´Õï?¨È³a©h·?@55¼Ã;â?vŽ’)é?»±wÌݧÖ?£û(JéqÌ?•¡âŽ@Pà?Œ@ð­ß?ÉSä[}Pä?rZÅ¡Jþ‘?
jAÊ?¬ax “Ø?]¦"Þ?"v¬ùâ°»?äÌq¡À?ŠìÁxÅß?õŸƒ¶3Í?8ý!/Û ˜?L–o`öÞ? Ñ”ìžë?
+10 -10
View File
@@ -1,11 +1,11 @@
//This is unsorted.
0.926049
0.591110
0.196175
0.749633
0.403184
0.280106
0.366963
0.726180
0.167187
0.795656
0.941150
0.347373
0.626343
0.256505
0.753115
0.367545
0.897487
0.563530
0.703852
0.349509
+3 -3
View File
@@ -148,7 +148,7 @@ public CDoc *Doc2Html(CDoc *doc_in,U8 *html_header=NULL,U8 *body_header=NULL,
"<head>\n"
"<meta http-equiv=\"Content-Type\" "
"content=\"text/html;charset=US-ASCII\">\n"
"<meta name=\"generator\" content=\"$TX,"TempleOS V4.03",D="DD_OS_NAME_VERSION"$\">\n";
"<meta name=\"generator\" content=\"$TX,"TempleOS V4.04",D="DD_OS_NAME_VERSION"$\">\n";
if (!body_header) body_header=
"<body>\n"
"<pre style=\"font-family:courier;font-size:10pt\">\n";
@@ -171,14 +171,14 @@ public CDoc *Doc2Html(CDoc *doc_in,U8 *html_header=NULL,U8 *body_header=NULL,
y=doc_e->y;
while (doc_e!=doc_in) {
if (!(doc_e->de_flags&DOCEF_SKIP)) {
if (line_anchors && y!=old_y) {
if (y!=old_y && line_anchors) {
DocPrint(doc_out,"<a name=\"l%d\"></a>",y+1);
old_y=y;
}
while (y<doc_e->y) {
HtmlPutS(doc_out,doc_e->settings.final_u32_attr,
&old_u32_attr,"\n",&col,style_bitmap);
if (line_anchors && ++y!=old_y) {
if (++y!=old_y && line_anchors) {
DocPrint(doc_out,"<a name=\"l%d\"></a>",y+1);
old_y=y;
}
+13 -1
View File
@@ -2,7 +2,19 @@ $WW,1$$FG,5$$TX+CX,"Change Log"$$FG$
Use $LK,"R",A="MN:R"$() to rename if I change a label.
$IV,1$----02/10/16 13:51:44----$IV,0$
$IV,1$----03/14/16 05:57:27----$IV,0$
* $BK,1$TempleOS version 4.04 Released$BK,0$
* Changed $FG,2$nobound_switch$FG$ so it uses [].
* Changed $LK,"KbdMouseCmdAck",A="MN:KbdMouseCmdAck"$().
$IV,1$----02/19/16 18:48:51----$IV,0$
* Fixed bug in $LK,"::/Demo/ToHtmlToTXTExample/ToHtml.CPP"$.
$IV,1$----02/15/16 23:31:15----$IV,0$
* Improved $LK,"::/Demo/Games/RawHide.CPP"$.
$IV,1$----02/13/16 17:02:34----$IV,0$
* Added $FG,2$$$CL+H$$$FG$ to clear all, including hold entries.
$IV,1$----02/10/16 08:56:49----$IV,0$
* Improved $FG,2$<CTRL-l>$FG$ prompting.
+4 -2
View File
@@ -2,6 +2,8 @@ $WW,1$$FG,5$$TX+CX,"Demands"$$FG$
I, Terry Davis, am high priest of God's official temple, TempleOS. TempleOS is an operating system for PC desktops that will always dual boot along-side Windows or Linux. I am in charge of the core 100,000 lines of TempleOS code and I do continual offerings to keep God entertained. I have divine authority to command any company in the computer industry to do anything that I deem necessary to make God's temple more beautiful, glorious and perfect. I have authority similar to a building inspector or an enforcer of the Americans with Disability Act -- I make commands, God signs-off with a miraculous authentication from an oracle, and Intel, Microsoft or VMware obeys.
$HC,"<object width=\"640\" height=\"520\"><param name=\"movie\" value=\"http://www.youtube.com/v/RvL7T4gIJN8\"></param><param name=\"allowscriptaccess\" value=\"always\"></param><embed src=\"http://www.youtube.com/v/RvL7T4gIJN8\" type=\"application/x-shockwave-flash\" allowscriptaccess=\"always\" width=\"640\" height=\"520\"></embed></object>"$
* Windows, Linux and VMware (because of mounted drives) must support $LK,"RedSea",A="FI:::/Doc/RedSea.TXT"$ file system so I can get rid of 2,000 lines of redundant, blemished code -- FAT32 and ISO9660. God's temple must be perfect. Redundant code for multiple file systems is imperfect. For this operating system, we want low line count. More than one file system type is actually bad, just as more than one driver for the same type of device is bad.
$LK,"::/Kernel/BlkDev/FileSysRedSea.CPP"$
$LK,"::/Kernel/BlkDev/FileSysFAT.CPP"$ :965 lines for FAT32 gets eliminated.
@@ -11,7 +13,7 @@ $LK,"::/Kernel/BlkDev/DskCluster.CPP"$ :152 All the cluster operations become bl
* Microsoft must cancel SecureBoot because it makes dual booting impossible. TempleOS is an additional operating system that must be used along-side Windows or Linux, not as a replacement. It must dual boot because it has no networking. Real hardware as opposed to VMware is like the difference between looking in a telescope eye piece vs just looking at an off-line image. God said the C64/Apple II generation owned ancestral lands. VMware is like being taken off of our land and moved onto a reservation. In this case, however, it will not stand.
* VMware needs to support ATAPI CD/DVD/BlueRay disk burning, directly to real hardware.
* VMware needs to support ATAPI CD/DVD/Blu-ray disk burning, directly to real hardware.
* VMware has a bug stretching 640x480 16 color to full screen.
@@ -21,7 +23,7 @@ $LK,"::/Kernel/BlkDev/DskCluster.CPP"$ :152 All the cluster operations become bl
* VMware and others must list TempleOS as an official 64-bit operating system.
* Until super simple block devices are available, hard disk should be placed at IDE primary master 1F0/3F6 and CD/DVD/BlueRay should be placed at the IDE secondary master 170/376.
* Until super simple block devices are available, hard disk should be placed at IDE primary master 1F0/3F6 and CD/DVD/Blu-ray should be placed at the IDE secondary master 170/376.
$LK,"/Kernel/BlkDev/DskATAId.CPP",A="FI:::/Kernel/BlkDev/DskATAId.CPP"$ :280 lines to figure-out I/O ports is gone.
$LK,"/Kernel/PCIBIOS.CPP",A="FI:::/Kernel/PCIBIOS.CPP"$ :290 could be eliminated, but maybe we will keep it so people can play with PCI devices.
+2 -2
View File
@@ -106,6 +106,8 @@ $ID,2$
$FG,2$if (13<=age<20)
"Teen-ager";
$FG$$ID,-2$
* if you know a switch stmt will not exceed the lowest or highest case values. $FG,2$switch []$FG$ is a little faster because it doesn't check.
* $FG,2$switch$FG$ stmts always use a jump table. Don't use them with cases with really big, sparse ranges.
* Allows ranges like "$FG,2$case 4...7:$FG$" in $FG,2$switch$FG$ stmts.
@@ -123,8 +125,6 @@ for (i=0;i<20;i++)
case: "Eleven\n"; break; //One plus previous case.
}$FG$$ID,-2$
* $FG,2$nobound_switch$FG$ can be used if you know a switch stmt will not exceed the lowest or highest case values. It's a little faster because it doesn't check.
* $FG,2$sub_switch_start$FG$/$FG,2$sub_switch_end$FG$ allow a new type of nested-switch control flow. (Don't goto, throw exception or return out of $FG,2$sub_switch_start$FG$ front porch area.) See $LK,"::/Demo/SubSwitch.CPP"$.
$ID,2$$FG,2$I64 i;
+1 -1
View File
@@ -103,7 +103,7 @@ U0 DirFilesSort(CDirEntry **_tempde,I64 key)
sort_buf[i++]=tempde1;
tempde1=tempde1->next;
}
nobound_switch (key) {
switch [key] {
case SK_NAME:
QSortI64(sort_buf,cnt,&DirEntryCompareName);
break;
+1 -1
View File
@@ -221,7 +221,7 @@ Bool MapDrv(U8 drv_let,CDrv *dv)
}
Bool Drv(U8 drv_let)
{//Set drive. You can set drive with $LK,"Cd",A="MN:Cd"$() as well.
{//Change drive. You can set drive with $LK,"Cd",A="MN:Cd"$() as well.
CDrv *dv=Let2Drv(drv_let);
CBlkDev *bd;
bd=BlkDevChk(dv->bd);
+1 -1
View File
@@ -258,7 +258,7 @@ U8 *ExpandBuf(CArcCompress *arc,CTask *mem_task=NULL)
result=MAlloc(arc->expanded_size+1,mem_task);
result[arc->expanded_size]=0; //terminate
nobound_switch (arc->compression_type) {
switch [arc->compression_type] {
case CT_NONE:
MemCpy(result,&arc->body,arc->expanded_size);
break;
+3 -3
View File
@@ -8,7 +8,7 @@ I64 HashTypeNum(CHash *temph)
I64 HashVal(CHash *temph)
{//Returns most likely desired value.
nobound_switch (HashTypeNum(temph)) {
switch [HashTypeNum(temph)] {
case HTt_EXPORT_SYS_SYM:
return temph(CHashExport *)->val;
case HTt_IMPORT_SYS_SYM:
@@ -40,8 +40,8 @@ I64 HashVal(CHash *temph)
case HTt_FRAME_PTR:
return temph(CHashGeneric *)->user_data0;
case -1: //nobound_switch
case HTt_NUM_TYPES: //nobound_switch
case -1: //nobound switch
case HTt_NUM_TYPES: //nobound switch
default:
return 0;
}
+55 -54
View File
@@ -2,7 +2,7 @@ $LK,"DrvTextAttrGet",A="FL:::/Kernel/BlkDev/DskDrv.CPP.Z,281",BI=1$
$LK,"ARGT_R64",A="FL:::/Kernel/KernelA.HPP,1874"$
$LK,"MAlloc",A="FL:::/Kernel/Mem/MAllocFree.CPP.Z,387"$
$LK,"BOOT_SRC_NULL",A="FL:::/Kernel/KernelA.HPP,3862"$
$LK,"KbdTypeMatic",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,83",BI=2$
$LK,"KbdTypeMatic",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,86",BI=2$
$LK,"KbdLEDsSet",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,52",BI=3$
$LK,"LXchgU32",A="FL:::/Kernel/KernelB.HPP,261"$
$LK,"LXchgU16",A="FL:::/Kernel/KernelB.HPP,260"$
@@ -144,7 +144,7 @@ $LK,"IEF_OP_SIZE16",A="FL:::/Kernel/KernelA.HPP,1706"$
$LK,"HTT_INTERNAL_TYPE",A="FL:::/Kernel/KernelA.HPP,683"$
$LK,"BD_SIGNATURE_VAL",A="FL:::/Kernel/KernelA.HPP,2636"$
$LK,"DOCEf_ESC",A="FL:::/Kernel/KernelA.HPP,1079"$
$LK,"ScanCode2Char",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,133",BI=28$
$LK,"ScanCode2Char",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,136",BI=28$
$LK,"NUM_DRVS",A="FL:::/Kernel/KernelA.HPP,2687"$
$LK,"FSt_ISO13346",A="FL:::/Kernel/KernelA.HPP,2663"$
$LK,"_D3_ADD",A="FL:::/Kernel/KMathA.CPP.Z,131"$
@@ -157,7 +157,7 @@ $LK,"ARGT_RAX",A="FL:::/Kernel/KernelA.HPP,1899"$
$LK,"EDf_WAS_WRITE",A="FL:::/Kernel/KernelA.HPP,1245"$
$LK,"EDF_WAS_WRITE",A="FL:::/Kernel/KernelA.HPP,1239"$
$LK,"DOCF_NO_SCROLL_BARS",A="FL:::/Kernel/KernelA.HPP,1260"$
$LK,"KbdMsgsQue",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,464",BI=30$
$LK,"KbdMsgsQue",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,467",BI=30$
$LK,"ARGT_ST0",A="FL:::/Kernel/KernelA.HPP,1912"$
$LK,"RT_I64",A="FL:::/Kernel/KernelA.HPP,1551"$
$LK,"FifoI64Cnt",A="FL:::/Kernel/KDataTypes.CPP.Z,312",BI=31$
@@ -197,7 +197,7 @@ $LK,"IET_ABS_ADDR",A="FL:::/Kernel/KernelA.HPP,407"$
$LK,"PressAKey",A="FL:::/Kernel/StrB.CPP.Z,103",BI=43$
$LK,"DOF_WIN_MAX",A="FL:::/Kernel/KernelA.HPP,1208"$
$LK,"CCodeCtrl",A="FL:::/Kernel/KernelA.HPP,1993"$
$LK,"Char2ScanCode",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,97",BI=44$
$LK,"Char2ScanCode",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,100",BI=44$
$LK,"Mem32DevInit",A="FL:::/Kernel/Mem/MemPhysical.CPP.Z,30",BI=45$
$LK,"_BIT_FIELD_OR_U32",A="FL:::/Kernel/KUtils.CPP.Z,154"$
$LK,"DOCf_NO_SCROLL_BARS",A="FL:::/Kernel/KernelA.HPP,1296"$
@@ -345,7 +345,7 @@ $LK,"DOCEf_LEFT_CB",A="FL:::/Kernel/KernelA.HPP,1063"$
$LK,"DOCEF_LEFT_CB",A="FL:::/Kernel/KernelA.HPP,977"$
$LK,"RFLAGf_DIR",A="FL:::/Kernel/KernelA.HPP,312"$
$LK,"ClusterNumNext",A="FL:::/Kernel/BlkDev/DskCluster.CPP.Z,1",BI=81$
$LK,"KbdMouseEvtTime",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,483",BI=82$
$LK,"KbdMouseEvtTime",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,486",BI=82$
$LK,"ip_last",A="FL:::/Kernel/KGlbls.CPP.Z,24"$
$LK,"CDirEntry",A="FL:::/Kernel/KernelA.HPP,2529"$
$LK,"TK_STR",A="FL:::/Kernel/KernelA.HPP,2050"$
@@ -696,7 +696,7 @@ $LK,"Dr",A="FL:::/Kernel/KDbg.CPP.Z,328",BI=151$
$LK,"CPUId",A="FL:::/Kernel/KernelB.HPP,258"$
$LK,"FilesFind2",A="FL:::/Kernel/BlkDev/DskFind.CPP.Z,1",BI=152$
$LK,"TaskKillDying",A="FL:::/Kernel/KTask.CPP.Z,496",BI=153$
$LK,"scan_code_map",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,154"$
$LK,"scan_code_map",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,157"$
$LK,"MSize2",A="FL:::/Kernel/Mem/MAllocFree.CPP.Z,385"$
$LK,"REGG_C_TEMP_CLOBBERED",A="FL:::/Kernel/KernelA.HPP,1771"$
$LK,"MemSetU32",A="FL:::/Kernel/KernelB.HPP,183"$
@@ -736,14 +736,14 @@ $LK,"FifoI64Peek",A="FL:::/Kernel/KDataTypes.CPP.Z,290",BI=162$
$LK,"_EXP",A="FL:::/Kernel/KMathA.CPP.Z,558"$
$LK,"SYS_SEMA_SYS_TIMER",A="FL:::/Kernel/KernelA.HPP,591"$
$LK,"IET_END",A="FL:::/Kernel/KernelA.HPP,390"$
$LK,"KbdHandler",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,438",BI=163$
$LK,"KbdHandler",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,441",BI=163$
$LK,"GSF_WITH_NEW_LINE",A="FL:::/Kernel/KernelA.HPP,3761"$
$LK,"SPF_TRUNCATE",A="FL:::/Kernel/StrPrint.CPP.Z,3"$
$LK,"SYS_HASH_FIND1",A="FL:::/Kernel/KHashA.CPP.Z,81"$
$LK,"GetRSP",A="FL:::/Kernel/KernelB.HPP,250"$
$LK,"_D3_DIST",A="FL:::/Kernel/KMathA.CPP.Z,39"$
$LK,"ScanKey",A="FL:::/Kernel/SerialDev/Message.CPP.Z,123",BI=164$
$LK,"MouseDriverInstall",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,238",BI=165$
$LK,"MouseDriverInstall",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,222",BI=165$
$LK,"mouse_last",A="FL:::/Kernel/KGlbls.CPP.Z,27"$
$LK,"D3DistSqr",A="FL:::/Kernel/KernelB.HPP,157"$
$LK,"_RDI",A="FL:::/Kernel/KernelA.HPP,3401"$
@@ -802,12 +802,12 @@ $LK,"ac",A="FL:::/Kernel/KGlbls.CPP.Z,18"$
$LK,"_FSTSW",A="FL:::/Kernel/KMathA.CPP.Z,641"$
$LK,"ARGT_IMM32",A="FL:::/Kernel/KernelA.HPP,1863"$
$LK,"ARGT_IMM16",A="FL:::/Kernel/KernelA.HPP,1862"$
$LK,"MouseSpeedSet",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,130",BI=176$
$LK,"MouseSpeedSet",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,114",BI=176$
$LK,"Name2ParentDirCluster",A="FL:::/Kernel/BlkDev/DskStrB.CPP.Z,54",BI=177$
$LK,"Free",A="FL:::/Kernel/Mem/MAllocFree.CPP.Z,383"$
$LK,"DOCEf_AUX_STR",A="FL:::/Kernel/KernelA.HPP,1047"$
$LK,"DOCEF_AUX_STR",A="FL:::/Kernel/KernelA.HPP,961"$
$LK,"Char2KeyName",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,198",BI=178$
$LK,"Char2KeyName",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,201",BI=178$
$LK,"Mem512Free",A="FL:::/Kernel/Mem/Mem512.CPP.Z,83",BI=179$
$LK,"blkdev",A="FL:::/Kernel/KGlbls.CPP.Z,19"$
$LK,"TK_NUM_TK",A="FL:::/Kernel/KernelA.HPP,2088"$
@@ -815,7 +815,7 @@ $LK,"TY_SIB",A="FL:::/Kernel/KernelA.HPP,1565"$
$LK,"CWinMgrGlbls",A="FL:::/Kernel/KernelA.HPP,1459"$
$LK,"DOCEf_TREE",A="FL:::/Kernel/KernelA.HPP,1094"$
$LK,"DOCEF_TREE",A="FL:::/Kernel/KernelA.HPP,1010"$
$LK,"MouseUpdatePre",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,140",BI=180$
$LK,"MouseUpdatePre",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,124",BI=180$
$LK,"ISO1FileFind",A="FL:::/Kernel/BlkDev/FileSysISO.CPP.Z,130",BI=181$
$LK,"TASK_SIGNATURE_VAL",A="FL:::/Kernel/KernelA.HPP,3276"$
$LK,"SysDefinesLoad",A="FL:::/Kernel/KDefine.CPP.Z,97",BI=182$
@@ -924,7 +924,7 @@ $LK,"pi",A="FL:::/Kernel/KernelA.HPP,48"$
$LK,"ICF_ALTERNATE_TEMPLATE",A="FL:::/Kernel/KernelA.HPP,1597"$
$LK,"ATTRF_UNDERLINE",A="FL:::/Kernel/KernelA.HPP,887"$
$LK,"ATTRf_UNDERLINE",A="FL:::/Kernel/KernelA.HPP,892"$
$LK,"KbdMouseVarsInit",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,294",BI=212$
$LK,"KbdMouseVarsInit",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,276",BI=212$
$LK,"DOCF_BWD_MOVEMENT",A="FL:::/Kernel/KernelA.HPP,1265"$
$LK,"RT_MASK",A="FL:::/Kernel/KernelA.HPP,1559"$
$LK,"SYS_SEMA_UPDATE_WIN_Z_BUF",A="FL:::/Kernel/KernelA.HPP,604"$
@@ -1107,7 +1107,7 @@ $LK,"progress2_desc",A="FL:::/Kernel/KernelB.HPP,218"$
$LK,"DCSF_PALETTE_GET",A="FL:::/Kernel/KernelA.HPP,3622"$
$LK,"SC_F9",A="FL:::/Kernel/KernelA.HPP,3561"$
$LK,"DOCEF_SOLID_BORDER",A="FL:::/Kernel/KernelA.HPP,997"$
$LK,"KbdBuildSC",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,298",BI=250$
$LK,"KbdBuildSC",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,301",BI=250$
$LK,"IOAPICID",A="FL:::/Kernel/KernelA.HPP,508"$
$LK,"RFLAGf_SIGN",A="FL:::/Kernel/KernelA.HPP,309"$
$LK,"AMAllocIdentical",A="FL:::/Kernel/Mem/MAllocFree.CPP.Z,418",BI=251$
@@ -1349,7 +1349,7 @@ $LK,"XchgI64",A="FL:::/Kernel/KernelB.HPP,266"$
$LK,"SC_CURSOR_DOWN",A="FL:::/Kernel/KernelA.HPP,3544"$
$LK,"DOF_DONT_WINMGR_SYNC",A="FL:::/Kernel/KernelA.HPP,1210"$
$LK,"I_SINGLE_STEP",A="FL:::/Kernel/KernelA.HPP,285"$
$LK,"KbdMouseRst",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,228",BI=304$
$LK,"KbdMouseRst",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,212",BI=304$
$LK,"ATA_WRITE_MULTI",A="FL:::/Kernel/KernelA.HPP,2243"$
$LK,"DOC_COLOR_KEYWORD",A="FL:::/Kernel/KernelA.HPP,1132"$
$LK,"XTalkStr",A="FL:::/Kernel/SrvCmd.CPP.Z,490",BI=305$
@@ -1723,14 +1723,14 @@ $LK,"WBlks",A="FL:::/Kernel/BlkDev/DskBlk.CPP.Z,68",BI=387$
$LK,"DOCT_ERROR",A="FL:::/Kernel/KernelA.HPP,936"$
$LK,"CopySingle",A="FL:::/Kernel/BlkDev/DskCopy.CPP.Z,23",BI=388$
$LK,"EXT_WIN_TO_TOP",A="FL:::/Kernel/KernelA.HPP,571"$
$LK,"MouseIPSet",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,216",BI=389$
$LK,"MouseIPSet",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,200",BI=389$
$LK,"ATAPIReadCapacity",A="FL:::/Kernel/BlkDev/DskATA.CPP.Z,253",BI=390$
$LK,"MkDir",A="FL:::/Kernel/BlkDev/DskDirB.CPP.Z,146",BI=391$
$LK,"IsDir",A="FL:::/Kernel/BlkDev/DskDirB.CPP.Z,76",BI=392$
$LK,"SetMSR",A="FL:::/Kernel/KernelB.HPP,264"$
$LK,"ToI64",A="FL:::/Kernel/KernelB.HPP,120"$
$LK,"IET_MAIN",A="FL:::/Kernel/KernelA.HPP,412"$
$LK,"ScanCode2KeyName",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,245",BI=393$
$LK,"ScanCode2KeyName",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,248",BI=393$
$LK,"DOCf_INVERT",A="FL:::/Kernel/KernelA.HPP,1311"$
$LK,"DOCF_INVERT",A="FL:::/Kernel/KernelA.HPP,1274"$
$LK,"sys_heap_limit",A="FL:::/Kernel/KernelB.HPP,200"$
@@ -1742,7 +1742,7 @@ $LK,"OPTf_USE_IMM64",A="FL:::/Kernel/KernelA.HPP,1537"$
$LK,"Raw",A="FL:::/Kernel/KMisc.CPP.Z,243",BI=395$
$LK,"Msg",A="FL:::/Kernel/SrvCmd.CPP.Z,257",BI=396$
$LK,"OPTf_GLBLS_ON_DATA_HEAP",A="FL:::/Kernel/KernelA.HPP,1534"$
$LK,"KbdInit",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,421",BI=397$
$LK,"KbdInit",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,424",BI=397$
$LK,"chars_bmp_zero_tab_ff_cr_nl_cursor_dollar",A="FL:::/Kernel/StrA.CPP.Z,368"$
$LK,"ToBool",A="FL:::/Kernel/KernelB.HPP,118"$
$LK,"TASKf_KILL_AFTER_DBG",A="FL:::/Kernel/KernelA.HPP,3265"$
@@ -1784,7 +1784,7 @@ $LK,"SYS_PROGRESS4_MAX",A="FL:::/Kernel/KStart.CPP.Z,218"$
$LK,"SUF_TO_UPPER",A="FL:::/Kernel/KernelA.HPP,3770"$
$LK,"MBR_PT_REDSEA",A="FL:::/Kernel/KernelA.HPP,2679"$
$LK,"MBR_PT_NTFS",A="FL:::/Kernel/KernelA.HPP,2678"$
$LK,"MouseHandler",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,179",BI=404$
$LK,"MouseHandler",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,163",BI=404$
$LK,"SCF_IP_L_DOWN",A="FL:::/Kernel/KernelA.HPP,3523"$
$LK,"SCf_IP_L_DOWN",A="FL:::/Kernel/KernelA.HPP,3508"$
$LK,"MSG_IP_L_DOWN",A="FL:::/Kernel/KernelA.HPP,3201"$
@@ -1886,7 +1886,7 @@ $LK,"SUF_SCALE_INDENT",A="FL:::/Kernel/KernelA.HPP,3774"$
$LK,"CT_7_BIT",A="FL:::/Kernel/KernelA.HPP,3723"$
$LK,"PUSH_REGS",A="FL:::/Kernel/KernelA.HPP,1748"$
$LK,"MAX_I8",A="FL:::/Kernel/KernelA.HPP,23"$
$LK,"KbdMouseHandler",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,257",BI=422$
$LK,"KbdMouseHandler",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,241",BI=422$
$LK,"Color2Str",A="FL:::/Kernel/KDefine.CPP.Z,126",BI=423$
$LK,"EDF_COLLAPSE",A="FL:::/Kernel/KernelA.HPP,1237"$
$LK,"LAPIC_DFR",A="FL:::/Kernel/KernelA.HPP,482"$
@@ -1971,7 +1971,7 @@ $LK,"LAPIC_LDR",A="FL:::/Kernel/KernelA.HPP,483"$
$LK,"BptFind",A="FL:::/Kernel/KDbg.CPP.Z,344",BI=439$
$LK,"kbd",A="FL:::/Kernel/KGlbls.CPP.Z,25"$
$LK,"progress4_max",A="FL:::/Kernel/KernelB.HPP,227"$
$LK,"MouseUpdatePost",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,147",BI=440$
$LK,"MouseUpdatePost",A="FL:::/Kernel/SerialDev/Mouse.CPP.Z,131",BI=440$
$LK,"HashDel",A="FL:::/Kernel/KHashB.CPP.Z,59",BI=441$
$LK,"CKbdStateGlbls",A="FL:::/Kernel/KernelA.HPP,2973"$
$LK,"LinkedLstCopy",A="FL:::/Kernel/KDataTypes.CPP.Z,11",BI=442$
@@ -2160,7 +2160,7 @@ $LK,"FUf_SINGLE",A="FL:::/Kernel/KernelA.HPP,2556"$
$LK,"DVDImageWriteTask",A="FL:::/Kernel/BlkDev/DskCDDVD.CPP.Z,49",BI=476$
$LK,"LTGRAY",A="FL:::/Kernel/KernelA.HPP,2936"$
$LK,"CoreAPSethInit",A="FL:::/Kernel/MultiProc.CPP.Z,276",BI=477$
$LK,"IRQKbd",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,408",BI=478$
$LK,"IRQKbd",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,411",BI=478$
$LK,"QueVectU8Del",A="FL:::/Kernel/KDataTypes.CPP.Z,132",BI=479$
$LK,"SwapU32",A="FL:::/Kernel/KernelB.HPP,114"$
$LK,"SwapU16",A="FL:::/Kernel/KernelB.HPP,112"$
@@ -2557,7 +2557,7 @@ $LK,"ICF_PREVIOUS_DELETED",A="FL:::/Kernel/KernelA.HPP,1602"$
$LK,"ACD_DEF_FILENAME_Z",A="FL:::/Kernel/KernelA.HPP,1491"$
$LK,"ATARepFind",A="FL:::/Kernel/BlkDev/DskATAId.CPP.Z,194",BI=562$
$LK,"QSort2a",A="FL:::/Kernel/QSort.CPP.Z,32",BI=563$
$LK,"num_lock_map",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,176"$
$LK,"num_lock_map",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,179"$
$LK,"QSort2b",A="FL:::/Kernel/QSort.CPP.Z,55",BI=564$
$LK,"KDF_HAS_DESCS",A="FL:::/Kernel/KernelA.HPP,3788"$
$LK,"CBlkPool",A="FL:::/Kernel/KernelA.HPP,2865"$
@@ -2708,7 +2708,7 @@ $LK,"DOCF_PLAIN_TEXT_TABS",A="FL:::/Kernel/KernelA.HPP,1249"$
$LK,"Cf_INTERNAL_TYPE",A="FL:::/Kernel/KernelA.HPP,826"$
$LK,"FAT32DrvInit",A="FL:::/Kernel/BlkDev/FileSysFAT.CPP.Z,22",BI=590$
$LK,"DOCT_ANCHOR",A="FL:::/Kernel/KernelA.HPP,920"$
$LK,"KbdPktRead",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,385",BI=591$
$LK,"KbdPktRead",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,388",BI=591$
$LK,"KbdCmdRead",A="FL:::/Kernel/SerialDev/Keyboard.CPP.Z,36",BI=592$
$LK,"D3DivEqu",A="FL:::/Kernel/KernelB.HPP,159"$
$LK,"ARGT_FS",A="FL:::/Kernel/KernelA.HPP,1908"$
@@ -2764,14 +2764,14 @@ $LK,"c32_edi",A="FL:::/Kernel/PCIBIOS.CPP.Z,157"$
$LK,"PURPLE",A="FL:::/Kernel/KernelA.HPP,2934"$
$LK,"TASKf_BREAK_LOCKED",A="FL:::/Kernel/KernelA.HPP,3262"$
$LK,"FILEMASK_SRC",A="FL:::/Kernel/KernelA.HPP,2267"$
D&9Æ9ÆCÆWÆYÆgÆ}ƌƦÆÕÆÙÆÙÆÞÆDS`““—¦²¾ÊØäëðýþ@4@kksw�§¿ÎÚèïüý,š¡#M#M,M<MAMAMFMHƒÑF|F|J|\|i|n|w|||�|†|‹|�|¨|É|Ö|ð|ý|} }}}}#}(}F}F}K}[}a}k}p}y}€}~}Ž}“}£}ª}ì}~~~"~C~A~Q~]~t~}~„~�~œ~¾~¾~Å~Ì~Ñ~Ø~á~â~ë~ð~¦<#ccvŒ¡ª±³³¼ÊDŽ›{ { ‰ — ¦ ® ´ À Ó Ó Ü ˆ/MbŸbŸrŸ}ŸˆŸ�Ÿ�Ÿ®ŸºŸÉŸÖŸãŸèŸîŸýŸ 
D&9Æ9ÆCÆWÆYÆgÆ}ƌƦÆÕÆÙÆÙÆÞÆDVc»»¿ÎÚæò %&*@4@kksw�§¿ÎÚèïüý,š¡#M#M,M<MAMAMFMHƒÑF|F|J|\|i|n|w|||�|†|‹|�|¨|É|Ö|ð|ý|} }}}}#}(}F}F}K}[}a}k}p}y}€}~}Ž}“}£}ª}ì}~~~"~C~A~Q~]~t~}~„~�~œ~¾~¾~Å~Ì~Ñ~Ø~á~â~ë~ð~¦<#ccvŒ¡ª±³³¼ÊDŽ›{ { ‰ — ¦ ® ´ À Ó Ó Ü ˆ/MbŸbŸrŸ}ŸˆŸ�Ÿ�Ÿ®ŸºŸÉŸÖŸãŸèŸîŸýŸ 
 
       .  0ÎÖu�u�Ź�§�ş�Ľ�Ľ�Ć�
Ě ;x3x3�3–3°3ł3ż3Ô3Ú3ŕ3ć34
444 4&4+4P4V4X4g4k4z4€4ƒ4…4”4˜4§4­4°4²4Â4Æ4Ú4Ý4à4â4ñ4ô45 Ä¥Ò11"1,1/1?1W1a1g1j1m1p1¬1¯1²1´1Ç1Ê1Í1Õ1Û1à1à1æ1ò1ô1ý1ý1ý1ý122 222(2 ˆCa"ª"ªHªLªTªZªcªkªqªtª€ª€ªªª·ªÁªĪǪΪÖªܪéªéªÿª 4æïM‰M‰g‰u‰�‰ ‰¢‰¢‰¬‰`FZÀ[À[Î[Ñ[Þ[ë[ò[ù[\\ \#\5\D\L\U\W\W\_\44=PCPC^CzCzC}C”C”CšC TXqáqáá�á(-3##+AFZ\fHÜê‰e‰e©ee»eÇeáeçeíeúefff(Z`öÌöÌÍ"Í*Í0Í8Í$üdzdzmzuz{z€z0ƒ‹Ê¼ʼà¼ë¼ü¼þ¼½8ž¨@^@^N^U^`^e^g^~^~^‡^�^P|ŒP]P]^]e]p]u]~]�]“]š]œ]Ÿ]ª]°]€Zv¯¯H¯L¯P¯g¯w¯�¯£¯µ¯µ¯ѯÖ¯â¯è¯ë¯ò¯ö¯ú¯þ¯°°°¿°à:.ÂtÂtÛtãtþt uuu*u7uKu^u{u†u”u¤u­u°uºu¾uÙuÞuåuíuÿuvv v0v6v<vHvWvovsvxv…v¢v±v¸v¿v¿vÆvÎvÛvÝvïv÷vùvw
444 4&4+4P4V4X4g4k4z4€4ƒ4…4”4˜4§4­4°4²4Â4Æ4Ú4Ý4à4â4ñ4ô45 Ä¥Ò11"1,1/1?1W1a1g1j1m1p1¬1¯1²1´1Ç1Ê1Í1Õ1Û1à1à1æ1ò1ô1ý1ý1ý1ý122 222(2 ˆCa"ª"ªHªLªTªZªcªkªqªtª€ª€ªªª·ªÁªĪǪΪÖªܪéªéªÿª 4æïM‰M‰g‰u‰�‰ ‰¢‰¢‰¬‰`FZÀ[À[Î[Ñ[Þ[ë[ò[ù[\\ \#\5\D\L\U\W\W\_\44=PCPC^CzCzC}C”C”CšC TXqáqáá�á(-3##+AFZ\fHÜê‘e‘e±e¾eÃeÏeéeïeõef f ff(Z`öÌöÌÍ"Í*Í0Í8Í$üdzdzmzuz{z€z0ƒ‹Ê¼ʼà¼ë¼ü¼þ¼½8ž¨@^@^N^U^`^e^g^~^~^‡^�^P|ŒP]P]^]e]p]u]~]�]“]š]œ]Ÿ]ª]°]€Zv¯¯H¯L¯P¯g¯w¯�¯£¯µ¯µ¯ѯÖ¯â¯è¯ë¯ò¯ö¯ú¯þ¯°°°¿°à:.ÂtÂtÛtãtþt uuu*u7uKu^u{u†u”u¤u­u°uºu¾uÙuÞuåuíuÿuvv v0v6v<vHvWvovsvxv…v¢v±v¸v¿v¿vÆvÎvÛvÝvïv÷vùvw
w
w
www w+w4wBwXw„w„w¨w¨w¯w¹wÏwñwöwöwýwxx=xBxBxExdxgxsxvxyx—x—xœxœx¤x©x­x½xÀxÙxÙxÞxÞxñxøxyy6y9y;y;yNyUy]ysy‘y”y–y–y±y´yÔyïyøyzzzzz6z6z6z;z;z;zGzZzdzuzxz{z€z€z…z�z zÆzÊzåzþz{{{"{({+{0{0{@{C{F{T{]{c{f{k{k{{‹{—{§{¿{ä{ñ{õ{ |%|3|<|@|C|C|S|Y|k|p|x||‹|¨|«|­|¾|Å|Ñ|ê|÷|ú|}}}}1}8}F}F}F}M}Y}c}q}z}€}‡}’}›}ª}¹}È}è}ñ}[~4×à͈͈áˆïˆ‰‰‰‰‰@>JKKSZgv…𮽯èì`…™KKYfppƒ‹ž ³³·ÁÆÆÌ|w’j‘j‘Б𑥑ª‘¬‘²‘đ֑æ‘÷‘’ ’ ’ ’’(’E’U’W’W’`’l’XÐâk(k(w(y(ˆ(ž(ª(±(È(Ê(á(á(ã(æ(ì( @8D„{„{’{”{¶{Ã{Ã{Í{ |ýY Y Š � › ¤ ¤ » Ì á æ ù ý 
www w+w4wBwXw„w„w¨w¨w¯w¹wÏwñwöwöwýwxx=xBxBxExdxgxsxvxyx—x—xœxœx¤x©x­x½xÀxÙxÙxÞxÞxñxøxyy6y9y;y;yNyUy]ysy‘y”y–y–y±y´yÔyïyøyzzzzz6z6z6z;z;z;zGzZzdzuzxz{z€z€z…z�z zÆzÊzåzþz{{{"{({+{0{0{@{C{F{T{]{c{f{k{k{{‹{—{§{¿{ä{ñ{õ{ |%|3|<|@|C|C|S|Y|k|p|x||‹|¨|«|­|¾|Å|Ñ|ê|÷|ú|}}}}1}8}F}F}F}M}Y}c}q}z}€}‡}’}›}ª}¹}È}è}ñ}[~4×à͈͈áˆïˆ‰‰‰‰‰@>JKKSZgv…𮽯èì`ˆœss�Ž˜˜«³ÆÈÛÛßéîîô|w’j‘j‘Б𑥑ª‘¬‘²‘đ֑æ‘÷‘’ ’ ’ ’’(’E’U’W’W’`’l’XÓå“(“(Ÿ(¡(°(Æ(Ò(Ù(ð(ò( ) ) ))) @8D„{„{’{”{¶{Ã{Ã{Í{ |ýY Y Š � › ¤ ¤ » Ì á æ ù ý 
!
*
:
@@ -2780,10 +2780,9 @@ w�w�w� w�+w�4w�Bw�Xw�
a
d
™
!4ÑÚ``/`A`P`a`t`z`ƒ`"¬(FdFd`dqdƒd’d¢d¶dÁdÇdßdßdëdýdeeee'e'e-e-e”e™e™eÁeÁeÏeÒeÕeãeéeòef#,Ûâƒ`ƒ`‘`´`Ÿ`Ä`Ê`ñ`$ †ŠpVpVyV†V‹V%H—¥NòNòiòkò|òˆò�ò™ò™ò�ò§ò&Œ¬Ë¶é¶é×éÚéãéÿéêêê"ê*êDêLê_êiênêzê€ê‡ê”ê—ê ê£ê¦ê«êÒê' }�^¼^¼r¼€¼†¼(Dævævwwww,w9w?wBwNw)p¼Ô.ó.ó<óJó`óoótó„ó†óŒó•ó�ó¨óÂóÒóáóáóèóèóèóÜô*h#9 h h¶h¸hÇhÛhÝhæhèhèhëhiGiTi^inixiƒi†i”i+$glkkk,k7kRk,œa„"/<Iauw‹‹“¨µµÂÊÙëó!5<<F-|9¨Z¨Z²Z¿ZÐZÚZáZèZñZùZ[[ [)[1[8[?[G[M[X[\[^[^[b[.X ΘΘí˜ð˜õ˜ø˜™ ™ ™)™1™5™8™8™>™A™O™/D*7ÄJÄJØJèJïJýJK K KK0 
!4ÑÚ#`#`7`I`X`i`|`‚`‹`"¬(FdFd`dqdƒd’d¢d¶dÁdÇdßdßdëdýdeeee'e'e-e-e”e™e™eÁeÁeÏeÒeÕeãeéeòef#,Ûâ‹`‹`™`¼`§`Ì`Ò`ù`$ †ŠpVpVyV†V‹V%H—¥NòNòiòkò|òˆò�ò™ò™ò�ò§ò&Œ¬Ë¶é¶é×éÚéãéÿéêêê"ê*êDêLê_êiênêzê€ê‡ê”ê—ê ê£ê¦ê«êÒê' }�^¼^¼r¼€¼†¼(Dævævwwww,w9w?wBwNw)p¼Ô.ó.ó<óJó`óoótó„ó†óŒó•ó�ó¨óÂóÒóáóáóèóèóèóÜô*h#9 h h¶h¸hÇhÛhÝhæhèhèhëhiGiTi^inixiƒi†i”i+$glkkk,k7kRk,œd‡++AJWdq‰�Ÿ³³»ÐÝÝêò/AI]ddn-|9¨Z¨Z²Z¿ZÐZÚZáZèZñZùZ[[ [)[1[8[?[G[M[X[\[^[^[b[.X ΘΘí˜ð˜õ˜ø˜™ ™ ™)™1™5™8™8™>™A™O™/D*7ÄJÄJØJèJïJýJK K KK0 
‹‹‹,‹F‹1”9ŮňŮňáňóó ó+ó9óKóYóaóoó�ó¶ó¸óĽóĽóÇóŇóáóđóôô#ô5ô<ô<ôNôOôSô2Xßń>őLőZőZőrőxő�ő‰ő”őžőĄő˝ő˝ő˝őÄőÄőĹőËő3P„z„z�z¨z®złzłzÁzĹzĘzĘzŇz4 $(ĐBĐBŢBňBřB5ڎŔj†j†‰†…†�†¨†µ†ą†˝†ŕ†í†ů†‡‡‡X‡`‡‡–‡¤‡«‡˛‡ą‡Ú‡ŕ‡ç‡ę‡�6Śţâ·â·ě·î·¸¸1¸:¸h¸k¸t¸˘¸Ą¸©¸®¸ş¸Á¸ă¸ć¸č¸ď¸ąąąą"ą)ą0ą7@8DKK$K-K4K;KBKCKKK8<đűüyüyzz)z:zBzJzRzUz]z9,ZaEE ECESEyE†E�E:,JQřCřCüC3DCDiDwDyD;”ŁÄYăYătă~ă�ăźăµăşăÇăĚăčăä äää6äKäMägä|ä|ä�ä�ä�ä(ĺ<$�ŤC C L Z p u =<‰”JÁJÁTÁjÁyÁÁŽÁ”ÁŁÁ©Á«Á°Á>H!ÔzÔzâzîzózóz{{{{{?LďţŠŠŠŠ Š)Š/Š<ŠPŠPŠoŠoŠŚŠ�Š”ŠšŠ@ �‡ţţA\�«éé"é0é5é;éFéOéOé_ékéoé‡éŽé‘é“é¶éB4�‘$4UjjjnC,jqFF FCFSFyF�F…FD¸ťÇ¶!¶!ľ!Ć!Ń!đ!ů!"#"-"9"D"D"S"t"•"˘"Ş"Ŕ"Ë"Ó"Ó"â"#$#1#9#O#Z#l#l#z#�#“#“#ˇ#ˇ#˘#µ#E ’–nnr�F —›††Š­±Gp]uŔŔ,Ŕ>ŔZŔZŔaŔcŔcŔqŔsŔsŔŔŔ…ŔŤŔ‘ŔśŔ´ŔÎŔÎŔÎŔŰŔHě<©ĺ©ĺ±ĺ˝ĺÝĺńĺőĺććć,ćdćdć“ć°ćşćÉćÇćóćóćç&ç&ç5çDçXç}ç�ç�ç�çŹçŹç‘ç‘çˇç­ç­ç±ç¶çżçŃçŘçĺçôç č(č:č:č@č‹éI|XsYęYęqę{ę‚ęŽę‘ęźę˘ę¦ę¨ę«ę®ę¶ęąęÁęŐęßęőęűęţęëëëJ4•ž˛k˛kĽkľkĹkËkÝkŢkăkK,'.fÜfÜpÜrÜzܔܙܟÜLPŤť°]°]Â]Ĺ]Đ]Ő]â]í]ü]^^%^.^1^;^M�[{`\`\z\…\Š\“\¦\ľ\Ć\Î\Ű\ĺ\ě\ó\÷\ű\] ]]]"](]+]9];]I]Né%đđ+đ2đCđFđgđzđ‡đ•đľđÚđćđíđďđňđřđüđ ńńń ń#ń%ń1ńAńIńOń\ń_ńbńpń�ń‘ńťńźńŻńĽńÂńĎńăńćńéńńńńńńńůńňňňň-ňO ś şĎÓP„ *NĘNĘhĘkĘ~ʋʧʪʰʹĘĹĘÇĘÚĘíĘńĘË
ËËË)Ë+Ë+Ë;Ë>ËTËQˆ !Í!Í)Í4ÍDÍSÍ_̓̓̓͋Í�Í�Í´ÍÃÍäÍüÍÎÎÎÎÎ$Î+Î+Î=ÎBÎJÎR,ãêó(ó(÷()))SL@O^^�ˆ’–šž¨¨²ÅÈÖT ¡¥ÖÖÚéíU äèæâæâêâããVHú™f™f¹fÆfËf×fñf÷fýf
ggg gWHëùff1f>fCfOfifofuf‚f‹fŒf˜fX ¦ªîîò÷ûY «¯þþZ<ÈÓzÃzË×ÛçéõüÃÂÃÊÃ[d^s»J»JÃJÇJÇJÖJøJKKK1KCKLKSKvKK†K’K”K\°¥Í>=>=I=Y=j=y=„=“= =¹=Ð=Ô=Ø=à=è=ñ=>>.>2>6>:>B>J>S>q>„>�>ž>¥>¥>¶>¿>]0&¶“¶“¿“¿“Ö“ó“ó“ø“^8 °(°(Ê(Î(Ñ(Ü(ú(þ())_ ëMëMôMÿMN`D»È__*_A_N_N_X_r_|_aL™¨ûPûP QQQ Q!Q/Q:QCQCQDQJQb,biˆEˆEŒEÃEÓEùEFFc,RY€D€D„D»DËDñDÿDEd0ÁɈˆˆUˆ\ˆbˆoˆ‚ˆŽˆeY™
ËËË)Ë+Ë+Ë;Ë>ËTËQˆ !Í!Í)Í4ÍDÍSÍ_̓̓̓͋Í�Í�Í´ÍÃÍäÍüÍÎÎÎÎÎ$Î+Î+Î=ÎBÎJÎR,æí)) )8)?)A)SL@O^^�ˆ’–šž¨¨²ÅÈÖT ¡¥ÖÖÚéíU äèæâæâêâããVHú¡f¡fÁfÎfÓfßfùfÿfgggg(gWHëùff9fFfKfWfqfwf}fŠf“f”f fX ¦ªîîò÷ûY «¯þþZ<ÈÓzÃzË×ÛçéõüÃÂÃÊÃ[d^sÃJÃJËJÏJÏJÞJKKK!K9KKKTK[K~K‡KŽKšKœK\°¥Í>=>=I=Y=j=y=„=“= =¹=Ð=Ô=Ø=à=è=ñ=>>.>2>6>:>B>J>S>q>„>�>ž>¥>¥>¶>¿>]0&¶“¶“¿“¿“Ö“ó“ó“ø“^8 °(°(Ê(Î(Ñ(Ü(ú(þ())_ ëMëMôMÿMN`D»È__*_A_N_N_X_r_|_aL™¨ûPûP QQQ Q!Q/Q:QCQCQDQJQb,biˆEˆEŒEÃEÓEùEFFc,RY€D€D„D»DËDñDÿDEd0ÁɈˆˆUˆ\ˆbˆoˆ‚ˆŽˆeY™
™
ˇ
¬
@@ -2792,17 +2791,18 @@ g�����g�g� g�W�������H������
ä
í
  $ 1 D b k x � Ž “ ° µ µ Â Ě ß ě   ' C N V q | ‘ Ż » Ä É ć ď ű 
 8 C K V V V [ i t { † ‹ ’ f,ryˆFˆFŒFÃFÓFùFGGg$ûWW;WHWNWZWh$+0VËVË_Ëp˂˾Ëi<$/*”*”8”@”H”U”`”j”™”›”¡”jô–Ï‹C‹CŸC®C½CÇCÖCåCåCDD'D.DJDWDeDsD�D�D¯D¥D»DÍDØDêDùDEEEE#E3E;EKEUEŒE›E£E¦E´Ek@nz¶–¶–Ö˖Ζܖà–ä–ç–õ–ü–—l$bJoJo]ocoro|o�o�o�o”o™o£o´oÅoÙoÛoöo&p=pSp^p~p€p‹p•p pªpµp¿pÊpØpßpípíp÷pq8qCqZq_qaqkq‡q�q˜q³qmdÆÛ»U»UÉUÎUÞUãUòU÷UùUÿUVVV$V/V3V9VnD/<¦Ü¦Ü¯ÜÄÜÐÜÛÜäÜòÜýÜÝ
Ýo<²½C^C^Y^l^€^†^ ^§^½^Ã^É^ÿ^p,ã ã ç  + T b d q<bmn–n–{–ƒ–†–”–˜–œ–ª–®–³–r|0vúvú‡ú‘úŸú·úÏúäúÿúûû û+û2ûCûMûMû^ûfûkûrû|û�û›ûsL𩵆µ†Ñ†Ø†ß†ë†ô†‡‡‡'‡=‡L‡V‡V‡k‡t8ÃQÃQÙQæQøQ RR#R-Ru 6ä6ä:äSävÔ,]1ÿ1ÿ9ÿAÿOÿbÿqÿ{ÿ‡ÿ’ÿ ÿ¯ÿÀÿÜÿäÿðÿøÿ  ".@T†—¤¿ÜÞðùù   22@@EIw4¨±Ã]Ã]×]é]ï] ^^&^,^?^x0DLBB B!B,B;BUB]ByPZjõ„õ„………%…*…-…3…6…;…F…L…V…zd¦»®ò®òÇòÊòØòØòáòìòñòôòóóóóóó!ó-ó{H<Jææææ'æ0æ3æ@æIæIæMæPæXæ|$PUÖÖßíóø}4ÕÞÞôÞôìôúôõ õ&õ+õ2õ8õ~¬LsÂhÂhÔhãhéhýhi'i:iQidi{i’i©iÁiÅiÌiÒiÖièijjj,j0j7j=jAjSjljyjj‚jŒj?6&6&>&F&W&f&p&|&|&€&ˆ&Œ&¥&ß&ñ&','5'>'>'C'V'['f'|'�'—'È'þ'( (5(I(P(�(·(È(Ø(Ø(ß(ñ(ñ(ÿ(ÿ())) )$)()€P—§#]#]9]L][]t]~]€]Œ]¥]°]]º]Â]�0jrfftƒŽ”––œ‚<KVjj!j+j;j=jpjwjwjwjzjƒ˜òÎõÎõÔõÒõâõoú„4ŠÓ>Â>ÂVÂ^ÂlÂwÂ{Â�‡•ª¯µÂÌÂÑÂ×ÂîÂóÂùÂÃÃÃ)Ã-ÃIÃ\ÃlÃqÀÃ�Ã�ìùÃÌÃÒÃÙÃÛÃîÃÄ ÄÄ,Ä,Ä?ÄAÄTÄVÄiÄkÄ~Ä~ĚıķĽÄÈÄìÄ…HVäVä_äzäƒäŽä�ä’ä¡ä¡ä°ä²ä²ä·ä†\Üï;V;VKVYVdVfVmVwV�V˜VšVŸV¡V¢V¢VªV‡( ¦éÛéÛôÛÜÜ܈D¾Ëöáöáââ"â.â5âDâPâPâVâ‰d9×9×I×d×d×f×f×f×n×׈יץרת׭ׯׯׯ׻׊D-:sAsAˆA–A–AžA´A¸A¸A¼AÄA‹Ô
;nn n#n&n0n6nBnInPnYnfntn}n€n†nŒn“nšnœn¦n«n´nÂnÈn×nãnænénñnön ooooooo!o)o1o=o@oRoŒ81;¾Ë¾ËÌËãËîËîËùËýËýËÌ�$<�ññù +:CQ^eoz�œ¤¸ÅÙæú"6@Taany„˜¿ÍÛèóþ$9ISdu†—ÊØí)2A\s|‡Ž™£¬¼Ž0t|›K›KŸK¬KÈKÝKâKüK�02:½ƒ½ƒÑƒÜƒîƒöƒùƒ„�¼KvûQûQR8RJRQR^RjRrR}R…R�R›R¿RÎRÕRÜRíRïR÷RS SS#S&S(S.S4SLSUSUSYSrS‘,ÑØöêöêëë'ë+ë-ëAë’8K>H>HXH[HaHmHoH~H…H‹H´H»HèHïHóH II4I=I=I=IJIƒI�I›I¨I»IÉIÚIíIúI J$J+J6JRJRJ^J`J`JlJnJnJzJ|J|JŒJ�J�J›J§JÀJÊJÓJÞJôJKKKK,K3K:K@KCK�K“Pîþ®u®uÎuáuíuùuvv v&v+v-vFv”4#ˆBˆB‘B¦B¦B³BÈBÈBÍB• ÌÐÖêÖêäêíêóê–0ÊÒ’ˆ’ˆ¦ˆåˆìˆòˆ
 8 C K V V V [ i t { † ‹ ’ f,ryˆFˆFŒFÃFÓFùFGGg$û#W#WCWPWVWbWh$+0VËVË_Ëp˂˾Ëi<$/*”*”8”@”H”U”`”j”™”›”¡”jô–Ï“C“C§CCÅCÏCÞCíCíCD$D/D6DRD_DmD{D‰D—D·D­DÃDÕDàDòDEEEE#E+E;ECESE]E”E£E«E®E¼Ek@nz¶–¶–Ö˖Ζܖà–ä–ç–õ–ü–—l$bJoJo]ocoro|o�o�o�o”o™o£o´oÅoÙoÛoöo&p=pSp^p~p€p‹p•p pªpµp¿pÊpØpßpípíp÷pq8qCqZq_qaqkq‡q�q˜q³qmdÆÛÃUÃUÑUÖUæUëUúUÿUVVVVV,V7V;VAVnD/<¦Ü¦Ü¯ÜÄÜÐÜÛÜäÜòÜýÜÝ
Ýo<²½K^K^a^t^ˆ^Ž^¨^¯^Å^Ë^Ñ^_p,ã ã ç  + T b d q<bmn–n–{–ƒ–†–”–˜–œ–ª–®–³–r|0vúvú‡ú‘úŸú·úÏúäúÿúûû û+û2ûCûMûMû^ûfûkûrû|û�û›ûsL𩵆µ†Ñ†Ø†ß†ë†ô†‡‡‡'‡=‡L‡V‡V‡k‡t8ÃQÃQÙQæQøQ RR#R-Ru 6ä6ä:äSävÔ,]1ÿ1ÿ9ÿAÿOÿbÿqÿ{ÿ‡ÿ’ÿ ÿ¯ÿÀÿÜÿäÿðÿøÿ  ".@T†—¤¿ÜÞðùù   22@@EIw4¨±Ë]Ë]ß]ñ]÷]^^.^4^G^x0DL B BB)B4BCB]BeByPZjõ„õ„………%…*…-…3…6…;…F…L…V…zd¦»®ò®òÇòÊòØòØòáòìòñòôòóóóóóó!ó-ó{H<Jææææ'æ0æ3æ@æIæIæMæPæXæ|$PUÖÖßíóø}4ÕÞÞôÞôìôúôõ õ&õ+õ2õ8õ~¬LsÂhÂhÔhãhéhýhi'i:iQidi{i’i©iÁiÅiÌiÒiÖièijjj,j0j7j=jAjSjljyjj‚jŒj?6&6&>&F&W&f&p&|&|&€&ˆ&Œ&¥&ß&ñ&','5'>'>'C'V'['f'|'�'—'È'þ'( (5(I(P(�(·(È(Ø(Ø(ß(ñ(ñ(ÿ(ÿ())) )$)()€P—§+]+]A]T]c]|]†]ˆ]”]­]¸]¾]Â]Ê]�0jrfftƒŽ”––œ‚<KVjj!j+j;j=jpjwjwjwjzjƒ˜òÎõÎõÔõÒõâõoú„4ŠÓ>Â>ÂVÂ^ÂlÂwÂ{Â�‡•ª¯µÂÌÂÑÂ×ÂîÂóÂùÂÃÃÃ)Ã-ÃIÃ\ÃlÃqÀÃ�Ã�ìùÃÌÃÒÃÙÃÛÃîÃÄ ÄÄ,Ä,Ä?ÄAÄTÄVÄiÄkÄ~Ä~ĚıķĽÄÈÄìÄ…HVäVä_äzäƒäŽä�ä’ä¡ä¡ä°ä²ä²ä·ä†\ÜïCVCVSVaVlVnVuVV•V V¢V§V©VªVªV²V‡( ¦éÛéÛôÛÜÜ܈D¾Ëöáöáââ"â.â5âDâPâPâVâ‰d9×9×I×d×d×f×f×f×n×׈יץרת׭ׯׯׯ׻׊D-:{A{A�AžAžA¦A¼AÀAÀAÄAÌA‹Ô
;nn n#n&n0n6nBnInPnYnfntn}n€n†nŒn“nšnœn¦n«n´nÂnÈn×nãnænénñnön ooooooo!o)o1o=o@oRoŒ81;¾Ë¾ËÌËãËîËîËùËýËýËÌ�$<�ññù +:CQ^eoz�œ¤¸ÅÙæú"6@Taany„˜¿ÍÛèóþ$9ISdu†—ÊØí)2A\s|‡Ž™£¬¼Ž0t|£K£K§K´KÐKåKêKL�02:½ƒ½ƒÑƒÜƒîƒöƒùƒ„�¼KvRR R@RRRYRfRrRzR…R�R˜R£RÇRÖRÝRäRõR÷RÿR
SS$S+S.S0S6S<STS]S]SaSzS‘,ÑØöêöêëë'ë+ë-ëAë’8K>H>HXH[HaHmHoH~H…H‹H´H»HèHïHóH II4I=I=I=IJIƒI�I›I¨I»IÉIÚIíIúI J$J+J6JRJRJ^J`J`JlJnJnJzJ|J|JŒJ�J�J›J§JÀJÊJÓJÞJôJKKKK,K3K:K@KCK�K“Pîþ®u®uÎuáuíuùuvv v&v+v-vFv”4#ˆBˆB‘B¦B¦B³BÈBÈBÍB• ÌÐÖêÖêäêíêóê–0ÊÒ’ˆ’ˆ¦ˆåˆìˆòˆ
‰ ‰‰—0HPćďćďôďđ
ð-ðFðnð˜€ÞAÞAòAùAB B%B%B3B5B5BEBGBGBUBWBWBgBoBoBxB„B¡B¡B³B³B·BÞB™Xð{O{O…O™OªOµOÑOÔOâOèOëOüOPPš@$01à1à?àDàGàYà_àbàdàjà›HªÅªÅ¿ÅËÅÎÅ×ÅãÅëÅÆÆÆ Æ,Æœ îò.ã.ã2ã@ãBã�ä{°ØkØkökÿk"l,l>lAlIlLlRlUlalsl€l†l“lžl£l©l»l»lÊlÍl×lÚlælølm mm#m(m.m@m@m@m@mKmKmYmž Ñõ#;#;B;D;U;Z;h;‰;—;¡;¬;Ä;Ë;Í;Í;ß;å;ë;í;ó;ù;ü;<< << < < <&<7<ŸT…–ÆñÆñêñíñûñûñò ò*ò0ò;ò;ò;ò?òMò `p„.ñ.ñKñQñ_ñ_ñsñ~ñ‚ñ‰ñŒñ–ñ�ñ­ñ±ñ±ñ±ñµñÁñ¡HïýR·R·y·”·¢·­·±·µ·¹·÷Í·Í·Ï·Ý·¢D"/${${2{>{C{C{T{Y{Y{_{£tÏ;';'C'T'x''�'´'Â'Ð'Ù'ì'ó'ý' (!(7(9(O(e(e(e(g(¤X{�c8c8|8Œ8¤8°8¼8¼8Î8Ô8Ô8à8ì8î8î8ö8¥Xîû12 22)2?2G2Z2d2{2€2‡2•2œ2¤2©2¦8w�°°ȰưÖ°ñ°ý°ÿ°ÿ°ƒ±§8>H C C®C´C»CÑCÑCØCïCïCõC¨<u€r¡r¡Š¡˜¡Ÿ¡£¡¦¡ª¡±¡Ñ¡á¡©`«¿"l"l&l/lWl}lˆl—l¦l«l±l³lªL)ß)ßDß`ß`ßmßmßzßzߊߎߎߞߠߠß×ß«d@Õ.).)9)O)V)t)…)”)¡)°)Ä)Ü)ô)**(*J*e*€*¥*ª*Ã*Ø*ø*+ +!+W+®++}+Í+Þ+å+,,4,4,[,[,z,�,½,Ë,+-ü,ú,J-Q-V-h-p-p-•-¥-Â-.Õ-Ý-È-1.c.k.k.‹. .½.Ç.Þ.æ.Ñ.:/:/:/?/?/P/k/y/‘/ª/Ã/Þ/ö/ 0$020=0=0P0i0}0’0¬0°0®0þ0 11*1B1]1h1€1–1–1í1¾1¼1 22*2E2]2s2u2¿2�2Ž2Þ2Þ2ç2ð233332323C3C3F3J3¬4
”t”t¢t§tªt°t³tµt»t­,szˆkˆkŒk‘k›k«k«k×k®T©º�^�^ž^«^¸^Ö^Ù^à^ç^õ^ù^û^_ _¯Ô%VS6S6s6�6†6�6�6—6¥6¨6¯6¯6¶6Ä6Ç6Ë6×6×6ã6é6ö67777 7777&7?7B7U7U7X7[7k7°4‚‹ë,ë,õ,õ,%-;-w-…-‰-±À6b1Õ1Õ<Õ@ÕdÕoÕ~ÕŠÕšÕ¹ÕÁÕÙÕéÕ Ö Ö1Ö3Ö3ÖWÖYÖYÖ}ÖÖÖ‹Ö‹Ö“Ö“ÖŸÖ³ÖÃÖËÖËÖÝÖäÖäÖöÖ××2×²ÈÆôÓÓëõ/44FKK]bbtyyyy€……—œœ®³³Êú  $+4C¦³ˆSq“O“O©O®OºOºOÆOÎOÖOáOêOòO÷OùOýO PP P'P(P(P2P´(Œ’‹-‹-”-›-»-Â-Å-µü‚½‘ë‘ë™ë�ë¾ëÉëÒëèëüëì ì3ìTìŠì¬ìÁìÊìÌìÔìÜìóìûìííííí0í7íJíZíaíví‹í�í‘í‘í‘í�í©í©í®í·íÉíÐíÐíâíèíýí€a}>Í>ÍBÍQÍQÍ`Í`ÍoÍoÍ~Í�Í�͜ͰͫͺͺÍÉÍÉÍØÍ/Ò·¨r˜3P3PMPePzP�PŒP’P’P•PœP§P«P°P¶PÀPÆPÉPËPÎPÑPÑPÖPåPèPúP¸Ltƒ’j’j¦j³j¶jºjÈjÓjÜjûjkkkk+k¹TÉÚ¶Õ¶ÕÄÕËÕÖÕùÕÖÖÖ!Ö&Ö4Ö:Ö=ÖCÖº¼�ÈæÓæÓøÓþÓ Ô Ô)Ô3ÔKÔOÔgÔkÔ…Ô…Ô˜Ô¡Ô¬ÔµÔÂÔËÔÝÔçÔôÔýÔÿÔÕÕÕ9Õ<ÕTÕdÕuÕyÕ}ՈՈՌՌՌյջ4uuuuuu u$u*u¼(ãéó`ó` a%a7a=aXa½”"€g€gšg¹gÅgØgÞgïg÷gûghh%h+h.h1h4h9h;h?hKh\hkhqhthwhzhzh„h‡h™h¾„d�®Y®YÑYÕYâYçYëYþY Z)Z)Z?ZKZRZeZjZnZ�Z¢Z¬Z¬ZÀZÀZÃZÑZ¿�]}†Ù†Ù�Ù�Ù�ÙµÙËÙÚÙóÙÚÚ7ÚSÚYÚgÚuÚƒÚ‘Ú“Ú©Ú¿ÚÕÚëÚëÚìÚñÚÀL�ž<r<rJrVrarrr†rŠr˜r­r¿rÈrÍrßrõrÁܙ̙ø™ø¡ø¥øÆøÓøÞøçøýøù%ù9ùEùUùhùuùˆù¦ù¯ù¼ùÇùÒùÒùßùéùøù ú"ú:úSúWúYú^úcúlú~ú…ú…ú—ú�úÄúÂ,z�&ß&ß*ß`ßsßsß}ßÃ,fm•|•|£|©|µ|À|Ä|Ê|ÄH­»dsdsmsysŒs—s¯s±s·sÂsÆsÊsÍsÅd¼ÑÔsÔsÝsõsttt4tJt]tst�t‘tƬ޵û8û89939B9e9o9t9™9 9¢9¢9±9»9Æ9Ë9Î9Ý9â9ñ9
:::#:/:3:=:ÇP,ë@ë@AA A1A:AEAJAOA`AfAhApAÈ ÿ¶ã¶ãÀãÓãØãÉŒ'Fþ“þ“”””3”A”F”I”W”\”u”}”§”«”˔͔Քÿ”•#•-•4•J•e•�•�•¹•À•ȕʰS{.ý.ýJýQý[ý`ýsý~ý”ýžý³ý¸ýÂýÌýÖýÔýäýþþþ,þFþjþpþwþ‹þ“þšþ¡þ¨þ¯þÀþÅþÅþ;ÿËøµïí�í� ��1�7�>�>�L�[�b�h�z�z�����¤�³�Æ�Ò�é�ë�‘‘‘
ð-ðFðnð˜€ÞAÞAòAùAB B%B%B3B5B5BEBGBGBUBWBWBgBoBoBxB„B¡B¡B³B³B·BÞB™XðƒOƒO�O¡O²O½OÙOÜOêOðOóOP P#Pš@$01à1à?àDàGàYà_àbàdàjà›HªÅªÅ¿ÅËÅÎÅ×ÅãÅëÅÆÆÆ Æ,Æœ îò.ã.ã2ã@ãBã�ä{°ØkØkökÿk"l,l>lAlIlLlRlUlalsl€l†l“lžl£l©l»l»lÊlÍl×lÚlælølm mm#m(m.m@m@m@m@mKmKmYmž Ñõ+;+;J;L;];b;p;‘;Ÿ;©;´;Ì;Ó;Õ;Õ;ç;í;ó;õ;û;<<
< <<!<'<'<'<.<?<ŸT…–ÆñÆñêñíñûñûñò ò*ò0ò;ò;ò;ò?òMò `p„.ñ.ñKñQñ_ñ_ñsñ~ñ‚ñ‰ñŒñ–ñ�ñ­ñ±ñ±ñ±ñµñÁñ¡HïýR·R·y·”·¢·­·±·µ·¹·÷Í·Í·Ï·Ý·¢D"/${${2{>{C{C{T{Y{Y{_{£t¹Òc'c'k'|' '§'¸'Ü'ê'ø'(((%(3(I(_(a(w(�(�(�(�(¤X{�k8k8„8”8¬8¸8Ä8Ä8Ö8Ü8Ü8è8ô8ö8ö8þ8¥XÞð2 22#212G2O2b2l2ƒ2ˆ2�2�2¤2¬2±2¦8w�°°ȰưÖ°ñ°ý°ÿ°ÿ°ƒ±§8>H C C®C´C»CÑCÑCØCïCïCõC¨<u€r¡r¡Š¡˜¡Ÿ¡£¡¦¡ª¡±¡Ñ¡á¡©`«¿"l"l&l/lWl}lˆl—l¦l«l±l³lªL)ß)ßDß`ß`ßmßmßzßzߊߎߎߞߠߠß×ß«d@Õ.).)9)O)V)t)…)”)¡)°)Ä)Ü)ô)**(*J*e*€*¥*ª*Ã*Ø*ø*+ +!+W+®++}+Í+Þ+å+,,4,4,[,[,z,�,½,Ë,+-ü,ú,J-Q-V-h-p-p-•-¥-Â-.Õ-Ý-È-1.c.k.k.‹. .½.Ç.Þ.æ.Ñ.:/:/:/?/?/P/k/y/‘/ª/Ã/Þ/ö/ 0$020=0=0P0i0}0’0¬0°0®0þ0 11*1B1]1h1€1–1–1í1¾1¼1 22*2E2]2s2u2¿2�2Ž2Þ2Þ2ç2ð233332323C3C3F3J3¬4
”t”t¢t§tªt°t³tµt»t­,szˆkˆkŒk‘k›k«k«k×k®T©º�^�^ž^«^¸^Ö^Ù^à^ç^õ^ù^û^_ _¯Ô%V[6[6{6‰6Ž6˜6˜6Ÿ6­6°6·6·6¾6Ì6Ï6Ó6ß6ß6ë6ñ6þ6 777777"7"7.7G7J7]7]7`7c7s7°4r{ó,ó,ý,ý,--C--�-‘-±À6b1Õ1Õ<Õ@ÕdÕoÕ~ÕŠÕšÕ¹ÕÁÕÙÕéÕ Ö Ö1Ö3Ö3ÖWÖYÖYÖ}ÖÖÖ‹Ö‹Ö“Ö“ÖŸÖ³ÖÃÖËÖËÖÝÖäÖäÖöÖ××2ײÈÉ÷ûû..@EEW\\nss…ŠŠœ¡¡¡¡¨­­¿ÄÄÖÛÛò"33ELS\kγˆSq“O“O©O®OºOºOÆOÎOÖOáOêOòO÷OùOýO PP P'P(P(P2P´(|‚“-“-œ-£-Ã-Ê-Í-µü‚½‘ë‘ë™ë�ë¾ëÉëÒëèëüëì ì3ìTìŠì¬ìÁìÊìÌìÔìÜìóìûìííííí0í7íJíZíaíví‹í�í‘í‘í‘í�í©í©í®í·íÉíÐíÐíâíèíýí€a}>Í>ÍBÍQÍQÍ`Í`ÍoÍoÍ~Í�Í�͜ͰͫͺͺÍÉÍÉÍØÍ/Ò·¨r˜3P3PMPePzP�PŒP’P’P•PœP§P«P°P¶PÀPÆPÉPËPÎPÑPÑPÖPåPèPúP¸Ltƒ’j’j¦j³j¶jºjÈjÓjÜjûjkkkk+k¹TÉÚ¶Õ¶ÕÄÕËÕÖÕùÕÖÖÖ!Ö&Ö4Ö:Ö=ÖCÖº¼�ÈæÓæÓøÓþÓ Ô Ô)Ô3ÔKÔOÔgÔkÔ…Ô…Ô˜Ô¡Ô¬ÔµÔÂÔËÔÝÔçÔôÔýÔÿÔÕÕÕ9Õ<ÕTÕdÕuÕyÕ}ՈՈՌՌՌյջ4uuuuuu u$u*u¼(ãéû`û`a-a?aEa`a½”"€g€gšg¹gÅgØgÞgïg÷gûghh%h+h.h1h4h9h;h?hKh\hkhqhthwhzhzh„h‡h™h¾„d�®Y®YÑYÕYâYçYëYþY Z)Z)Z?ZKZRZeZjZnZ�Z¢Z¬Z¬ZÀZÀZÃZÑZ¿�]}†Ù†Ù�Ù�Ù�ÙµÙËÙÚÙóÙÚÚ7ÚSÚYÚgÚuÚƒÚ‘Ú“Ú©Ú¿ÚÕÚëÚëÚìÚñÚÀL�ž<r<rJrVrarrr†rŠr˜r­r¿rÈrÍrßrõrÁܙ̙ø™ø¡ø¥øÆøÓøÞøçøýøù%ù9ùEùUùhùuùˆù¦ù¯ù¼ùÇùÒùÒùßùéùøù ú"ú:úSúWúYú^úcúlú~ú…ú…ú—ú�úÄúÂ,z�&ß&ß*ß`ßsßsß}ßÃ,fm•|•|£|©|µ|À|Ä|Ê|ÄH­»dsdsmsysŒs—s¯s±s·sÂsÆsÊsÍsÅd¼ÑÔsÔsÝsõsttt4tJt]tst�t‘tƬ޵99 9!9;9J9m9w9|9¡9¨9ª9ª9¹9Ã9Î9Ó9Ö9å9ê9ù9:::+:7:;:E:ÇP,ó@ó@AA'A9ABAMARAWAhAnApAxAÈ ÿ¶ã¶ãÀãÓãØãÉŒ'Fþ“þ“”””3”A”F”I”W”\”u”}”§”«”˔͔Քÿ”•#•-•4•J•e•�•�•¹•À•ȕʰS{.ý.ýJýQý[ý`ýsý~ý”ýžý³ý¸ýÂýÌýÖýÔýäýþþþ,þFþjþpþwþ‹þ“þšþ¡þ¨þ¯þÀþÅþÅþ;ÿËøµïí�í� ��1�7�>�>�L�[�b�h�z�z�����¤�³�Æ�Ò�é�ë�‘‘‘
‘
‘‘‘‘!‘!‘%‘0‘6‘B‘J‘l‘‚‘“‘Ş‘±‘·‘ş‘Ň‘ĚÜř+ŮüŮüáüĺüđüţüýý1ý;ýGýRý`ýoýŹý©ýÁýĹýŢýöýţ ţţ ţ+ţ:ţIţlţzţ‰ţ˛ţżţĂţĐţâţâţđţ÷ţ ˙ ˙˙˙˙,˙Í”1Ržűžű¬ű¸űŘűăűôűü ü5üJüSüXüXühütüzü†üťüŔüĐüĐüŮüŢüäüĺü*ý΀5í�í� ‚‚%‚)‚-‚<‚P‚X‚^‚r‚�‚Ť‚™‚ť‚ ‚˘‚´‚‚ƂЂԂ݂ă‚ö‚Ď$).řBřBC C!C'CĐ,“š˝˝˝/˝:˝@˝C˝K˝Ń¨Çívtvt�t“t«t¶tĆtŘtÜtętótuuu'u2u@uJuRuVuVuVuYu[u_u_uduru€uŽu“u•u•u«uŇLęůîëîë
ìì1ì<ìIì]ìcìoìÓ ÞãÞãâãðãòãÔ`&:ƒ3ƒ3‡3ž3®3¾3Ñ3Ø3ï3ÿ34 414B4c4„4›4¦4±4ë4ÕTã?ã?ç?@@!@&@<@C@U@h@{@•@¥@ª@ª@¬@Ö`¶_Ï_Ñ_Ù_õ_þ_` `%`8`O`U`a`q`q`ƒ`Ã`×H_m£7£7Ã7Ñ7×7ë7ñ7ö7þ78 8Ø$zGGG#G1G<GÙÀnšÍ|Í|å|ì|ô| }}}-}3}3}=}D}O}T}^}r}t}}}Ž}–}¡}¥}ª}®}¹}¿}Â}Å}Ê}Ñ}Û}ë}Ú@/;b~b~€~Œ~™~¤~°~½~Ã~Æ~É~Û~Û0 '��(�@�y������‡�Ü�k‹]…]…s…v…‚…‚…„…‘…Ÿ…¤…§…²…µ…º…Ð…â…í…ù…††† † †††††,†Ý<€‹@G@GNG\GaGgGsGsGyG�G“GÞ8%º½º½Ľ̽à½õ½ý½¾¾¾߀¾Úîî îî î*î5î>îTîhîqî…î¬îÂîÜîäîï ïï.ï9ï@ïKïPïeïàLN]2 2 ; ; J Y j n { ‘ • • š á85?r�r�‚�¡�­�±�µ�¹�Á�É�âœ$ë4ë4ó4ù45545M5M5Y5j5u5�5�5Ž5 5¥5Ì5Ó5à5ê5ï5ï5ï56/6I6N6S6ãx‚œÁÁÕßåñ!$-0Bhpyy«°Ãä8;P;PKPNPSPVPdPjPmPoPwPåD&ÜÜÜ&Ü.Ü6Ü>ÜFÜNÜVÜ^ÜbÜfÜædavÊ�Ê�Ú�æ�ñ�ö�‘ ‘‘‘‘$‘,‘4‘S‘V‘a‘a‘i‘çH~ŒöÚöÚÛ Û0Û5ÛAÛ_ÛeÛqÛ�Û•Û•Û¡Ûè8—¡èVèVþVWWW%W(W2Wé(.42�2�;�I�X�g�l�ê0ª€ª€¸€Ѐ �����ëDŒ™-†-†Y†g†r†v†z†~†‚†Ž†›†ž†®†ì€ÍéÉúÉúÔúÜúçúòúýúûû0û9ûMûtûŠû¤û¬ûÈûÓûÞûöûüüüü,üí< ))#)A)R)b)s))™)±)³)µ)îLÁУ:£:½:Ð:å:ë:ñ:;;;;;ïˆú���?�Q�Q�c�j�€�€���’�’�’�£�®�µ�¹�Á�Å�Í�Ó�Ù�Ù�Ü�ê�ð8ÿ šŠšŠ¨Š³Š¾ŠÝŠóŠöŠ‹ñ?æwæwïwûw xx)x7xExZxaxtx‡x™x¡x¿xÓxÖxÞxîxÿx&y9yKy€y‚y“yŸy¤y¬yÎyáyíyzòHÿ FvFv`vsvŒv¡v§v­v­vµv·vãvó<:Eh[h[y[{[€[‰[ª[³[¸[À[ô8JTvÌv̛̦̦̱̹̹̄̿ÌõDê÷1ü1üCüOüeüüŠüŠü›ü«ü­üØüöX@Rzzz+z>zVz_zjzuz–z˜z£z®z·zÀzÑzäzäzæz÷$ôùå€å€î€÷€ý€�ø 
NNN'N8NùDÌÙVâVâeâjâsâ…â†âšâ�â£âúh*€k!k!“!•!ž!²!µ!º!¾!Ý!ñ!ô!"""."7"9"R"["["["`"–" "ª"´"¾"Å"Ñ"Ý"ç"ç"ç"########'#)#)#.#0#0#5#5#5#9#T#j#u#Š#“#˜# #¬##Â#Õ#ì#þ#$ $#$1$S$p$Ž$Ž$Ž$Ž$Ž$˜$¡$¨$(%û ¢¦8W8WAWNWSWü@ÅÑ)å)å7å>åCåYå[ådåvå|å§åý4ÞÛÞÛæÛîÛöÛþÛÜÜÜÜþ,¶Û¶Û¾ÛÆÛÎÛÖÛÚÛÞÛÿx7..BGQXk„„“©²ÁÈÈËÕëòô÷ùù”
ìì1ì<ìIì]ìcìoìÓ ÞãÞãâãðãòãÔ`(‹3‹3�3¦33Æ3Ù3à3÷344(494J4k4Œ4£4®4¹4ó4ÕTë?ë?ï?@@)@.@D@K@]@p@ƒ@�@­@²@²@´@Ö`¶_Ï_Ñ_Ù_õ_þ_` `%`8`O`U`a`q`q`ƒ`Ã`×H_m«7«7Ë7Ù7ß7ó7ù7þ78 88Ø$zGGG#G1G<GÙÀnšÍ|Í|å|ì|ô| }}}-}3}3}=}D}O}T}^}r}t}}}Ž}–}¡}¥}ª}®}¹}¿}Â}Å}Ê}Ñ}Û}ë}Ú@/;b~b~€~Œ~™~¤~°~½~Ã~Æ~É~Û~Û0 '��(�@�y������‡�Ü�k‹]…]…s…v…‚…‚…„…‘…Ÿ…¤…§…²…µ…º…Ð…â…í…ù…††† † †††††,†Ý<€‹@G@GNG\GaGgGsGsGyG�G“GÞ8%º½º½Ľ̽à½õ½ý½¾¾¾߀¾Úîî îî î*î5î>îTîhîqî…î¬îÂîÜîäîï ïï.ï9ï@ïKïPïeïàLN]2 2 ; ; J Y j n { ‘ • • š á85?r�r�‚�¡�­�±�µ�¹�Á�É�âœ$ó4ó4û4555<5U5U5a5r5}5‰5‰5–5¨5­5Ô5Û5è5ò5÷5÷5÷5676Q6V6[6ãx‚œÁÁÕßåñ!$-0Bhpyy«°Ãä8CPCPSPVP[P^PlPrPuPwPPåD&ÜÜÜ&Ü.Ü6Ü>ÜFÜNÜVÜ^ÜbÜfÜædavÊ�Ê�Ú�æ�ñ�ö�‘ ‘‘‘‘$‘,‘4‘S‘V‘a‘a‘i‘çH~ŒöÚöÚÛ Û0Û5ÛAÛ_ÛeÛqÛ�Û•Û•Û¡Ûè8—¡èVèVþVWWW%W(W2Wé(.42�2�;�I�X�g�l�ê0ª€ª€¸€Ѐ �����ëDŒ™-†-†Y†g†r†v†z†~†‚†Ž†›†ž†®†ì€ÍéÉúÉúÔúÜúçúòúýúûû0û9ûMûtûŠû¤û¬ûÈûÓûÞûöûüüüü,üí< C)C)K)i)z)Š)›)§)Á)Ù)Û)Ý)îLÁЫ:«:Å:Ø:í:ó:ù:;;;;$;ïˆú���?�Q�Q�c�j�€�€���’�’�’�£�®�µ�¹�Á�Å�Í�Ó�Ù�Ù�Ü�ê�ð8ÿ šŠšŠ¨Š³Š¾ŠÝŠóŠöŠ‹ñ?æwæwïwûw xx)x7xExZxaxtx‡x™x¡x¿xÓxÖxÞxîxÿx&y9yKy€y‚y“yŸy¤y¬yÎyáyíyzòHÿ FvFv`vsvŒv¡v§v­v­vµv·vãvó<:Eh[h[y[{[€[‰[ª[³[¸[À[ô8JTvÌv̛̦̦̱̹̹̄̿ÌõDê÷1ü1üCüOüeüüŠüŠü›ü«ü­üØüöX@Rzzz+z>zVz_zjzuz–z˜z£z®z·zÀzÑzäzäzæz÷$ôùå€å€î€÷€ý€�ø 
NNN'N8NùDÌÙVâVâeâjâsâ…â†âšâ�â£âúh-ƒ“!“!»!½!Æ!Ú!Ý!â!æ!"""."6"="V"_"a"z"ƒ"ƒ"ƒ"ˆ"¾"È"Ò"Ü"æ"í"ù"####0#0#9#;#;#D#F#F#O#Q#Q#V#X#X#]#]#]#a#|#’#�#²#»#À#È#Ô#Þ#ê#ý#$&$*$5$K$Y${$˜$$$$$$À$É$Ð$P%û ¢¦8W8WAWNWSWü@ÅÑ)å)å7å>åCåYå[ådåvå|å§åý4ÞÛÞÛæÛîÛöÛþÛÜÜÜÜþ,¶Û¶Û¾ÛÆÛÎÛÖÛÚÛÞÛÿx7..BGQXk„„“©²ÁÈÈËÕëòô÷ùù”
Ű|f f ‡ ‰   © ´ ż Á Ô â í ř  ˇˇˇ ˇ$ˇ'ˇ-ˇ1ˇ4ˇ7ˇJˇ_ˇgˇjˇ‚ˇ’ˇ•ˇ›ˇžˇ±ˇĆˇÎˇŃˇéˇůˇţˇţˇ˘˘)˘)˘)˘-˘/˘/˘3˘5˘5˘9˘;˘;˘?˘?˘?˘B˘D˘D˘G˘L˘R˘U˘Y˘[˘a˘d˘|˘�˘•˘›˘ž˘Ł˘¶˘Ń˘Ó˘é˘é˘é˘î˘î˘đ˘đ˘ő˘ř˘ŁŁŁ6Ł<ŁSŁbŁqنŁ�Ł˝ŁÂŁÂŁÚŁřŁýŁý٤3¤5¤5¤M¤i¤k¤k¤�¤ź¤ź¤˝¤É¤Î¤Î¤ć¤ý¤ĄĄĄ6Ą;Ą;Ą?ĄWĄuĄyĄ{Ą{ĄĄ—ĄµĄąĄąĄ×ĄÜĄÜĄôĄ ¦¦¦¦/¦F¦M¦[¦k¦Ź¦–¦�¦�¦¦¦®¦×¦Ů¦Ů¦ń¦ń¦§7§V§[§[§s§s§Ś§ˇ§Ă§·§Ű§ú§¨¨#¨#¨;¨R¨\¨a¨r¨r¨x¨�¨�¨ť¨§¨·¨·¨í¨ű¨©©©%©%©1©5©5©>©M©V©V©_©i©…©š©·©Ć©Ě©á©é©ő©˙©˙©ŞŞ$Ş<Ş>Ş^Ş^ŞcŞcŞ™Ş§Ş°Ş°ŞĽŞŔŞŔŞÉŞŘŞáŞáŞęŞđŞ ««/«1«<«T«V«r«r«r«‚«Ł«Ą«Ą«˝«Ô«Ů«Ů«ń«¬¬¬-¬-¬D¬D¬P¬T¬Z¬c¬r¬{¬{¬„¬Ź¬§¬©¬Ĺ¬Đ¬ë¬í¬í¬ö¬­­/­<­D­e­g­o­‰­Ś­•­š­»­Ĺ­Ĺ­ŕ­ę­ő­®$®7®?®I®I®R®V®i®ˇ®¬®¬®¬®Ŕ®É®Í®ŕ®ŻŻŻŻ2Ż<ŻDŻDŻMŻQŻdŻśŻ­ŻłŻĆŻÎŻŰŻŕŻŕŻéŻíݰ8°I°R°W°W°b°f°~°•°ź°¤°ş°Ň°Ň°ü°±±#±'±:±B±I±T±Y±`±`±e±�±¬±Ć±Ů±ă±í±í±ý±#˛3˛E˛Q˛U˛o˛�˛Ť˛‘˛‘˛‘˛‘˛•˛š˛š˛Ą˛©˛Á˛Ř˛â˛ç˛ý˛łł?łIłkłpłpłpł{łł—ł®ł¸ł˝łÓłÓłëłëł´'´D´K´V´[´€´†´ ´˛´ş´Ľ´Ň´ŕ´ý´ µ µ:µ<µfµhµ€µ‹µ•µźµ¦µŔµÉµÉµňµ
(¶(¶(¶-¶2¶e¶y¶“¶¦¶«¶µ¶ż¶č¶ü¶˙¶···· ·6·I·S·X·X·p·‡·‘·ˇ·ˇ·˝·Ń·Ô·ć·÷·ý·¸¸!¸&¸&¸&¸B¸V¸Y¸k¸„¸‰¸‰¸ˇ¸¸¸Â¸Ň¸Ň¸î¸ąąą(ą.ąAąIąRąWąWąWąsą‡ąŠąśąµąşąşąşąŇąéąóąşş(ş9şJşPşcşkştşyşyşyşžşŻşČşÍşÍşâşâşâşţşţş» »\Ľ@J‹J‹^‹l‹l‹y‹ž‹©‹­‹»‹ľ‹Ć‹|�śâˇâˇ˙ˇ˘˘˘˘0˘X˘{˘‰˘™˘Ľ˘¤˘Ö˘ö˘ ŁŁŁŁ"Ł%Ł1Ł8v€âŔâŔńŔ˙ŔÁÁÁÁÁ Á¬§Î!Ü!Ü1ÜGÜ]Ü[ÜkÜsÜzÜ~܆ܖܤܹܳÜÁÜÍÜÓÜÓÜÚÜŢÜŢÜŕÜGŢ8ÔŢĘĂĘĂŮĂďĂţĂÄÄ#Ä%Ä%Ä+Ä@&2
ľ
@@ -2817,12 +2817,13 @@ g�����g�g� g�W�������H������
N
Z
Ź
 (-3ÛÛßùD x«««#«&«G«g«w«œ«¬«µ«ã«ð«¬¬¬¬(¬+¬0¬0¬@¬F¬I¬¬¬ @=I‘é‘é£é®é»éÃéËéÓéÛéãéëéñéX7‰ÀÀ,À2À9ÀIÀPÀXÀ^ÀeÀ{À‰À�À’À˜À¦À©À®À±À±ÀÁÀÏÀÑÀãÀåÀòÀ÷ÀþÀÁ ÁÁÁ Á-Á0Á2Á>Á@Á`ÁeÁlÁuÁ{Á�ÁˆÁ‹Á‹Á›Á©Á«ÁÓÁõÁ÷ÁþÁ   Â$Â$Â:ÂD3@‚¾‚¾‘¾¨¾¶¾¾¾Ö¾ë¾÷¾¿¿ ¿@ˆ”ƒLƒL™L»LÁLÆLÙLæLìLïL÷L0ÙßÙßâßçßðßößößûß,;B"•"•1•=•K•T•Y•_•8ˆ’ÖßÖßäßðßà%à'à.à6à8à>àä6.¾.¾L¾O¾R¾f¾n¾u¾‰¾Œ¾Ž¾±¾±¾´¾Ä¾Æ¾Æ¾É¾Ë¾Ë¾Î¾å¾ú¾¿ ¿)¿1¿1¿1¿3¿3¿8¿W¿]¿l¿y¿�¿š¿œ¿®¿»¿À¿À¿Ì¿Ì¿Ù¿Ü¿Ü¿Àô…¾N—N—`—c—m—z—~—„—„—ˆ—�—‘—•—œ—¢—©—¯—¶—¼—×ɗЗ֗ݗã—ê—ð—ù—ÿ—˜ ˜˜˜˜˜.˜A˜C˜S˜Z˜e˜p˜{˜†˜‘˜œ˜œ˜¦˜LWf€j€j‰j™j™j·j½jÍjÓjÙjéjëjëjëjkhÝó%€%€:€I€N€^€f€f€t€~€�€•€¡€°€¼€Ç€Í€Ø€Û€ã€D<IÌÌÌ6ÌDÌTÌVÌXÌcÌgÌgÌoÌP„”2k2kAkJkTkVkhkhkhkjkqkwk—k¥k¦k¬k0Ž–Ó\Ó\é\ü\]]] ]<ZeÔpÔpâpópûpÿp qqqq\ÇÚ..2EXkvŠ›½ßú0Kf�œfTK\j¿j¿x¿Š¿�¿š¿²¿¸¿º¿Å¿Ý¿é¿ÀÀÀÀÀ ÀX£µÁcÁcácîcócÿcd d,d9d@dIdMdYd X†˜yÒyҔҜҧÒÃÒÃÒÌÒÌÒÑÒâÒëÒöÒöÒÓÓ ,£ª¾½¾½Ò½ä½é½ú½'¾!ä6ŠŠ/Š2Š5Š;ŠOŠVŠYŠtŠ~ŠƒŠŠŠ�Š�Š Š’Š®ŠÅŠÑŠåŠîŠöŠ‹‹‹‹‹%‹'‹2‹8‹W‹g‹o‹�‹Š‹›‹£‹µ‹¸‹¸‹¸‹¸‹Ä‹Œ" IFVFVfVuV�VŒV—V«V¾VÉVÕVæVïVûVWW W"W.W.WIW[WoW}W’W˜W¼WÄWÄWÐWÔWØWðWþW)XX8XCXZX^XeXpXuXuXuXŠX�X¯X´X´XÀXÆXÌXÎXÞX#œ'JáÆáÆõÆÇÇ&Ç*Ç3Ç:Ç@ÇBÇUÇ]ǪDžÇgǺÇÉÇÚÇàÇïÇÈÈÈ&È7ÈAÈåÈ$Lйй™¹¡¹¡¹®¹À¹̹Թڹ߹å¹ç¹ç¹í¹%<}ˆrrrr€r‹r–r�rÇr¥rÕr!s&˜Õ÷2m2m\mmmmŒmœm¤m¨m¬m°m´m¼mÄmÖmämîmómn n!n'n+n=n' GK’h’h¡h»hÁh(Ü4®j®jÌjØjájÿjÿjkkkk k-k@kIkUkXk]kyk”k”k¦k¨k¨kºk¼k¼kÈkÈkÙkêkðkókókökûklll!l2l5lQlQlVlVlVlql)ðh „„„2„B„B„V„`„d„h„u„†„�„“„¢„µ„»„„фԄ߄… …,…4…>…L…]…p…}…Ž…¡…©…´…ʅ؅؅䅆† †&†,†3†<†?†d†*4AJ¿¿¿#¿/¿@¿H¿P¿c¿h¿+ �´h7h7‚7ˆ7ˆ7—7£7ª7°7°7º7Ã7Ã7É7Í7Ð7Ú7å7å7ô7ý7ý78 88888 8 8 8 8 8.8, ÚÞ¦â¦âªâ¸âºâ-¤O´öföf gg g1g5gIg[gig{g„gŠg�g¦g¯gÇg×g×gägògþgh h h$h*h2h<h<h@hDhShchghŒhŒh›h�h£h«h½hÒhÜhëhðhðhühüh
iii"iLiPiSiWi^iiii”i£i²i½i¿iÅiÒiØißiìiòiòiùijjj$j-j4j=j¬j.€%�K*K*S*W*^*e*m*{*Œ*”*›*›*­*­*¼*Á*Í*Ù*ã*ù*+ +++)+?+S+Z+g+h+r+|+†+�+—+ž+£+­+´+¹+Ã+Ê+Ô+Þ+å+ï+ó+ü+, ,*,1,>,?,C,e,r,‡,’,Ÿ,Ÿ,¦,È,Õ,Û,å,/,ý‚ý‚ƒ!ƒ'ƒ'ƒ,ƒ04äí³1³1·1¼1È1Ô1à1ë1ò1ô11(êð[a[aua‡a“a™a¡a2»ü2š2š@šHšMšSš{šžš¦š®š¹š¾šКÝšæšëš›!›)›+›4›C›J›q›q›z›‘› ›Á›É›Ü›ì›ü› œœ+œ;œKœeœjœrœrœwœ…œ”œµœÀœÏœßœïœÿœ���"�(�3˜£ÅóTóT UU(U8U>U>UIUTUWU\UfUtU{U|UˆUŽU”U—U U¡U¡U­U¯U»U4˜Ìî-¶7¶C¶J¶S¶f¶€¶†¶޶«¶±¶±¶À¶Ƕ̶ê¶í¶ö¶û¶···· ·,·<·?·Q·58}‡LLLL0LELVL_LdL€L6p !!g!g5gBgGgSgYg`g|g²g»gÄgÐg7 ‚Áбб©±¼±ȱȱÙ±à±à±é±ú±²$²)²B²I²I²_²k²k²’²•²´²Ó²ò²þ²³,³.³?³V³m³Œ³«³·³γå³ê³û³´)´)´1´?´P´g´~´�´¦´½´Ç´д×´í´ö´ε88s}žž¬»ÅÖÞààæ980:¢”¢”«”Ó”ö”••••:,•œûLûLM M M&M+M;0 ÆmÆmÔmÞmòmømúmn<,8?,=KQW=,&V&V/V:V<V<VAV>\fyqq>qBqNq_qkqtq“qŸq¨q®q²qÀq?€�Y�Y Y§YºYÆYíY÷YZ ZZZ%Z7ZIZcZoZxZ†ZŒZ’Z•ZœZ¤Z@X�ï+M+M7M@MIMOM[MgMoMuM{MƒM‘MœM¤M½MÏMÚMãMãMèMíMûMNNN NNN%N-N6N6N>NMNQN^NkNpNzNzNƒNŠN–N¡N½N½N½NÅNÌNÓNÚNáNèNïNöNýNO
OOO,O=O\OkOnOtOA|Kf^æ^æ}æ‹æ›æ§æ­æ¶æ½æÄæÉæÕæÙæãæãæêæíæóæóæýæ çççç çB,  !,Rv~CX ]“W“W›W¦W¸W¾WÆWÐWóWóWXX&X3X;XIX„X’XÊXÏXÏXáXîXYYY#YXY_YlYrYwYwY‰Y–YªY·Y¼YËYÿYZZZZZ#Z#Z0ZEZKZ^Z…Z’Z¢Z§Z­ZºZÅZËZÖZÖZÜZåZðZ[['[4[A[F[F[J[c[DàÈü )8BK\lŒŸ½ÆÓÞééö%7Vhhˆ”ɵÚßñõýý  $ + 6 D D I U ELRa––#–+–.–<–?–F–J–M–Q–_–f–k–F8GQÎ•Î•Û•ã•æ•ô•ø•–
––G0#').HXÏáIÞIÞSÞfÞyÞ�Þ²Þß'ßI(KQóóû  $ & Jœ'JëPëPQ&Q8Q?QLQXQ`QkQvQƒQ’Q›Q¢Q¦Q¦Q¬Q²QÊQÓQÙQâQçQçQçQëQõQK8}‡û
 (-3ÛÛßùD x«««#«&«G«g«w«œ«¬«µ«ã«ð«¬¬¬¬(¬+¬0¬0¬@¬F¬I¬¬¬ @=I‘é‘é£é®é»éÃéËéÓéÛéãéëéñéX7‰ÀÀ,À2À9ÀIÀPÀXÀ^ÀeÀ{À‰À�À’À˜À¦À©À®À±À±ÀÁÀÏÀÑÀãÀåÀòÀ÷ÀþÀÁ ÁÁÁ Á-Á0Á2Á>Á@Á`ÁeÁlÁuÁ{Á�ÁˆÁ‹Á‹Á›Á©Á«ÁÓÁõÁ÷ÁþÁ   Â$Â$Â:ÂD3@‚¾‚¾‘¾¨¾¶¾¾¾Ö¾ë¾÷¾¿¿ ¿@ˆ”‹L‹L¡LÃLÉLÎLáLîLôL÷LÿL0ÙßÙßâßçßðßößößûß,;B"•"•1•=•K•T•Y•_•8ˆ’ÖßÖßäßðßà%à'à.à6à8à>àä6.¾.¾L¾O¾R¾f¾n¾u¾‰¾Œ¾Ž¾±¾±¾´¾Ä¾Æ¾Æ¾É¾Ë¾Ë¾Î¾å¾ú¾¿ ¿)¿1¿1¿1¿3¿3¿8¿W¿]¿l¿y¿�¿š¿œ¿®¿»¿À¿À¿Ì¿Ì¿Ù¿Ü¿Ü¿Àô…¾N—N—`—c—m—z—~—„—„—ˆ—�—‘—•—œ—¢—©—¯—¶—¼—×ɗЗ֗ݗã—ê—ð—ù—ÿ—˜ ˜˜˜˜˜.˜A˜C˜S˜Z˜e˜p˜{˜†˜‘˜œ˜œ˜¦˜LWf€j€j‰j™j™j·j½jÍjÓjÙjéjëjëjëjkhÝó%€%€:€I€N€^€f€f€t€~€�€•€¡€°€¼€Ç€Í€Ø€Û€ã€D<IÌÌÌ6ÌDÌTÌVÌXÌcÌgÌgÌoÌP„”2k2kAkJkTkVkhkhkhkjkqkwk—k¥k¦k¬k0Ž–Û\Û\ñ\]]] ]']<ZeÔpÔpâpópûpÿp qqqq\ÇÚ..2EXkvŠ›½ßú0Kf�œfTK\j¿j¿x¿Š¿�¿š¿²¿¸¿º¿Å¿Ý¿é¿ÀÀÀÀÀ ÀX£µÉcÉcécöcûcd!d'd4dAdHdQdUdad X†˜yÒyҔҜҧÒÃÒÃÒÌÒÌÒÑÒâÒëÒöÒöÒÓÓ ,£ª¾½¾½Ò½ä½é½ú½'¾!ä6ŠŠ/Š2Š5Š;ŠOŠVŠYŠtŠ~ŠƒŠŠŠ�Š�Š Š’Š®ŠÅŠÑŠåŠîŠöŠ‹‹‹‹‹%‹'‹2‹8‹W‹g‹o‹�‹Š‹›‹£‹µ‹¸‹¸‹¸‹¸‹Ä‹Œ" IFVFVfVuV�VŒV—V«V¾VÉVÕVæVïVûVWW W"W.W.WIW[WoW}W’W˜W¼WÄWÄWÐWÔWØWðWþW)XX8XCXZX^XeXpXuXuXuXŠX�X¯X´X´XÀXÆXÌXÎXÞX#œ'JáÆáÆõÆÇÇ&Ç*Ç3Ç:Ç@ÇBÇUÇ]ǪDžÇgǺÇÉÇÚÇàÇïÇÈÈÈ&È7ÈAÈåÈ$Lйй™¹¡¹¡¹®¹À¹̹Թڹ߹å¹ç¹ç¹í¹%<}ˆrrrr€r‹r–r�rÇr¥rÕr!s&˜Õ÷2m2m\mmmmŒmœm¤m¨m¬m°m´m¼mÄmÖmämîmómn n!n'n+n=n' GK’h’h¡h»hÁh(Ü4®j®jÌjØjájÿjÿjkkkk k-k@kIkUkXk]kyk”k”k¦k¨k¨kºk¼k¼kÈkÈkÙkêkðkókókökûklll!l2l5lQlQlVlVlVlql)ðh „„„2„B„B„V„`„d„h„u„†„�„“„¢„µ„»„„фԄ߄… …,…4…>…L…]…p…}…Ž…¡…©…´…ʅ؅؅䅆† †&†,†3†<†?†d†*4AJ¿¿¿#¿/¿@¿H¿P¿c¿h¿+ �´h7h7‚7ˆ7ˆ7—7£7ª7°7°7º7Ã7Ã7É7Í7Ð7Ú7å7å7ô7ý7ý78 88888 8 8 8 8 8.8, ÚÞ¦â¦âªâ¸âºâ-¤O´öföf gg g1g5gIg[gig{g„gŠg�g¦g¯gÇg×g×gägògþgh h h$h*h2h<h<h@hDhShchghŒhŒh›h�h£h«h½hÒhÜhëhðhðhühüh
iii"iLiPiSiWi^iiii”i£i²i½i¿iÅiÒiØißiìiòiòiùijjj$j-j4j=j¬j.@%qs*s*{**†*�*•*£*´*¼*Ã*Ã*Õ*Õ*ä*é*õ*++'+6+;+C+J+W+m+�+ˆ+•+–+¹+¾+Ð+Õ+ø+ü+, ,,3,:,G,H,L,n,{,�,›,¨,¨,¯,Ñ,Þ,ä,î,/,ý‚ý‚ƒ!ƒ'ƒ'ƒ,ƒ04ÔÝ»1»1¿1Ä1Ð1Ü1è1ó1ú1ü11(êðcaca}a�a›a¡a©a2»ü2š2š@šHšMšSš{šžš¦š®š¹š¾šКÝšæšëš›!›)›+›4›C›J›q›q›z›‘› ›Á›É›Ü›ì›ü› œœ+œ;œKœeœjœrœrœwœ…œ”œµœÀœÏœßœïœÿœ���"�(�3˜£ÅûTûTU"U0U@UFUFUQU\U_UdUnU|UƒU„U�U–UœUŸU¨U©U©UµU·UÃU4˜Ìî-¶7¶C¶J¶S¶f¶€¶†¶޶«¶±¶±¶À¶Ƕ̶ê¶í¶ö¶û¶···· ·,·<·?·Q·58}‡ L LLL8LML^LgLlLˆL6p !)g)g=gJgOg[gaghg„gºgÃgÌgØg7 ‚Áбб©±¼±ȱȱÙ±à±à±é±ú±²$²)²B²I²I²_²k²k²’²•²´²Ó²ò²þ²³,³.³?³V³m³Œ³«³·³γå³ê³û³´)´)´1´?´P´g´~´�´¦´½´Ç´д×´í´ö´ε88s}žž¬»ÅÖÞààæ980:¢”¢”«”Ó”ö”••••:,•œMM MM(M.M3M;0 ÆmÆmÔmÞmòmømúmn<,8?,=KQW=,&V&V/V:V<V<VAV>\fyqq>qBqNq_qkqtq“qŸq¨q®q²qÀq?€�Y�Y Y§YºYÆYíY÷YZ ZZZ%Z7ZIZcZoZxZ†ZŒZ’Z•ZœZ¤Z@X�ï3M3M?MHMQMWMcMoMwM}MƒM‹M™M¤M¬MÅM×MâMëMëMðMõMN
NNNNN!N-N5N>N>NFNUNYNfNsNxN‚N‚N‹N’NžN©NÅNÅNÅNÍNÔNÛNâNéNðN÷NþNO OOO!O4OEOdOsOvO|OA|Kf^æ^æ}æ‹æ›æ§æ­æ¶æ½æÄæÉæÕæÙæãæãæêæíæóæóæýæ çççç çB,  !,Rv~CX ]›W›W£W®WÀWÆWÎWØWûWûW XX.X;XCXQXŒXšXÒX×X×XéXöX
YYY+Y`YgYtYzYYY‘YžY²Y¿YÄYÓYZZZ!Z#Z#Z+Z+Z8ZMZSZfZ�ZšZªZ¯ZµZÂZÍZÓZÞZÞZäZíZøZ[ [/[<[I[N[N[R[k[DàÈü )8BK\lŒŸ½ÆÓÞééö%7Vhhˆ”ɵÚßñõýý  $ + 6 D D I U ELRa––#–+–.–<–?–F–J–M–Q–_–f–k–F8GQÎ•Î•Û•ã•æ•ô•ø•–
––G0#').HXÏáIÞIÞSÞfÞyÞ�Þ²Þß'ßI(KQóóû  $ & Jœ'JóPóP Q.Q@QGQTQ`QhQsQ~Q‹QšQ£QªQ®Q®Q´QºQÒQÛQáQêQïQïQïQóQýQK8}‡û
ű
  ! ! ( 7 > > C LÄ^‹6T6T\T_TmTˆT–T�TªT­T±T»TÈTèTîTèTUUUU&U(U(U8U:U:UJUJUnUuU~UˆUŒU¥U§UÌUÕUÛUâU$VM<#²“²“À“È“ГÝ“è“ò“!”#”)”N$PP$P-P3P8POY²¬²¬Ƭͬݬä¬ä¬ú¬­-­L­k­w­ˆ­Œ­’­ ­¤­ª­¸­¸­¸­×­ö­
  ! ! ( 7 > > C LÄ^‹6T6T\T_TmTˆT–T�TªT­T±T»TÈTèTîTèTUUUU&U(U(U8U:U:UJUJUnUuU~UˆUŒU¥U§UÌUÕUÛUâU$VM<#²“²“À“È“ГÝ“è“ò“!”#”)”N$#P#P,P5P;P@POY²¬²¬Ƭͬݬä¬ä¬ú¬­-­L­k­w­ˆ­Œ­’­ ­¤­ª­¸­¸­¸­×­ö­
® ®#®)®7®;®A®S®S®S®S®V®[®`®f®w®{®�®Ś®�®–®ˇ®ˇ®ˇ®¦®¬®˝®Á®Ç®Ň®Ö®Ü®ĺ®ĺ®ĺ®ŻPDo|“
“
—
@@ -2838,24 +2839,24 @@ O�O�����O�,O�����=O�\O�����kO�����nO�tO�A������|������K���f���^
÷
ů
Q¬Íô:Ą:Ą\ĄaĄjĄjĄvĄ…Ą’Ą–Ą Ą˛Ą˛ĄÂĄÎĄÓĄÓĄčĄóĄűĄ¦¦¦¦¦(¦6¦@¦C¦H¦U¦b¦b¦t¦R�-Mö7ö7#8&848=8=8T8e8z88’8ź8¤8¨8ą8ß8ç8ë8đ8ř8
999P9SH¾ä¾äÇäÜäåäðäòäôäååååååT¸9£~C~CŸC¢C¥CÂCæCíCøCDD&D.D4DADQDeDjDyDŒD¬DµD¬DÇDÉDÒDÉDäDæDïDæDEEEEE!E2E7EcEŠEŠE�E“E¸EÀEÆEÓEãE÷EüE FFAFMF`F€F�F€F›F F­F F»FÀFÍFÀFÛFàFàFðFðFGGGEGGGlGlGrGuGƒGˆG›G¦GµGµG¾G:HU0 ÓÓ Ó)Ó/Ó8Ó?ÓCÓIÓV(ˆŽ r rrr"r-r6rW¼w¢sSsS�S S¼SÎSÕSâSîSýSTT TT&T/THTHTOTUT\TiTtTƒT‰T‹T�T“T™T±TºTºTÁTÜTßTñTX  CÙÉÙÉáÉåÉñÉÊ ÊÊ'Ê0ÊEÊnÊzÊzÊ�ʞʩÊÇÊÇÊîÊðÊðÊðÊËËË!Ë;Ë;Ë;ËMËTËTËfËlËtËYD�œ!! !,!B!\!g!g!x!ˆ!Š!´!Z¼Bú§ú§¨¨"¨.¨<¨L¨t¨—¨¦¨ѨÕ¨ݨ稩2©@©P©[©†©–©›©£©ΩÒ©ä©é©ö©ªªªª"ª[@nz888<8@8S8\8`8b8\ *nvv�…�®»Ì×àö 2>Vfy��²½Åêïù $3@UMpˆŒ‘‘¢¢µÇÚðòò      ( : A A S Y  ]@1=qàqàà„à‡à™àŸà¢à¤àªà^è�ƶr¶rÐrèrôrssss&s)s:s:s:sAsNsQsVsSs°sÇsÊsÌsãsæsèsðstt tt&t6tDtMtTtYtYtYt_tst_D J§J§^§†§©§¶§çΧê§ò§ú§`   öãöãäääa4|…>ÿ>ÿLÿUÿ\ÿeÿb8äЉÖ‰߉å‰ë‰ô‰÷‰ý‰ctRk>c>cccec~cžc¤cžc»c½cÃc½cÚcÜcÜcìcîcîcþcþcdBdd0³@³@¼@Î@Ü@à@ä@ä@é@e@b½b½q½y½�½—½Ÿ½§½¬½²½´½´½º½fØNʋʋà‹ï‹ú‹ Œ#Œ#Œ4ŒLŒYŒlŒxŒƒŒ“ŒµŒ·ŒÔŒáŒáŒáŒòŒ�%�.�4�;�A�F�L�P�W�b�h�’�gè[‘LL-L/L>LJLVLkLpLyL|L�L‹L‹L•L˜L®LÆLÂLÔLÙL÷LMMM M$MHMJMfM`M’M’M¢M²M¹M¿MÂMÇM×MÞMáM³Nh” *k k � ² × ü 
999P9SH¾ä¾äÇäÜäåäðäòäôäååååååT¸9£~C~CŸC¢C¥CÂCæCíCøCDD&D.D4DADQDeDjDyDŒD¬DµD¬DÇDÉDÒDÉDäDæDïDæDEEEEE!E2E7EcEŠEŠE�E“E¸EÀEÆEÓEãE÷EüE FFAFMF`F€F�F€F›F F­F F»FÀFÍFÀFÛFàFàFðFðFGGGEGGGlGlGrGuGƒGˆG›G¦GµGµG¾G:HU0 ÓÓ Ó)Ó/Ó8Ó?ÓCÓIÓV(ˆŽ r rrr"r-r6rW¼w¢{S{S¥S¨SÄSÖSÝSêSöST T TT T.T7TPTPTWT]TdTqT|T‹T‘T“T•T›T¡T¹TÂTÂTÉTäTçTùTX  CÙÉÙÉáÉåÉñÉÊ ÊÊ'Ê0ÊEÊnÊzÊzÊ�ʞʩÊÇÊÇÊîÊðÊðÊðÊËËË!Ë;Ë;Ë;ËMËTËTËfËlËtËYD�œ!! !,!B!\!g!g!x!ˆ!Š!´!Z¼Bú§ú§¨¨"¨.¨<¨L¨t¨—¨¦¨ѨÕ¨ݨ稩2©@©P©[©†©–©›©£©ΩÒ©ä©é©ö©ªªªª"ª[@nz88#8D8H8[8d8h8j8\ *nvv�…�®»Ì×àö 2>Vfy��²½Åêïù $3@UMpˆŒ‘‘¢¢µÇÚðòò      ( : A A S Y  ]@1=qàqàà„à‡à™àŸà¢à¤àªà^è�ƶr¶rÐrèrôrssss&s)s:s:s:sAsNsQsVsSs°sÇsÊsÌsãsæsèsðstt tt&t6tDtMtTtYtYtYt_tst_D J§J§^§†§©§¶§çΧê§ò§ú§`   öãöãäääa4|…>ÿ>ÿLÿUÿ\ÿeÿb8äЉÖ‰߉å‰ë‰ô‰÷‰ý‰ctRk>c>cccec~cžc¤cžc»c½cÃc½cÚcÜcÜcìcîcîcþcþcdBdd0»@»@Ä@Ö@ä@è@ì@ì@ñ@e@b½b½q½y½�½—½Ÿ½§½¬½²½´½´½º½fØNʋʋà‹ï‹ú‹ Œ#Œ#Œ4ŒLŒYŒlŒxŒƒŒ“ŒµŒ·ŒÔŒáŒáŒáŒòŒ�%�.�4�;�A�F�L�P�W�b�h�’�gè[‘LL-L/L>LJLVLkLpLyL|L�L‹L‹L•L˜L®LÆLÂLÔLÙL÷LMMM M$MHMJMfM`M’M’M¢M²M¹M¿MÂMÇM×MÞMáM³Nh” *k k � ² × ü 
G „ Á Ă Ń ß í í !>P`uŽ °ĹŢĺě$0i€]6P6PJPLP\PjPtP�PĽPÄPÖPäPîP˙PQQ"Q'Q@Q`QjQ`Q�Q�QŤQ�Q¤Q¦Q°Q¦QÇQÉQÉQŮQŮQßQâQçQýQR
R#RFRRRyRƒRyRšRœR¦RœR½RÂRÌRÂRãRèRèRøRøRSSS$S4STS@S`S`SlSpS|SŠS“S§S»SÂSÉSÌS4TjTAR *6DMTYfw‰‰�kðñ)¦¦ÄÇÊÔâí :GR`q~‰²·½ãíóö-=Edio‹�¤¼Ïâù I_btl<5@¬u¬uÄuÓuÚußuêuÿuvvvm0 BBB(B(B<B@BDBn¼
R#RFRRRyRƒRyRšRœR¦RœR½RÂRÌRÂRãRèRèRøRøRSSS$S4STS@S`S`SlSpS|SŠS“S§S»SÂSÉSÌS4Tj`AU !))1@Lgpw|‰š¬°µ·kðñ)¦¦ÄÇÊÔâí :GR`q~‰²·½ãíóö-=Edio‹�¤¼Ïâù I_btl<5@¬u¬uÄuÓuÚußuêuÿuvvvm0 BBB(B(B<B@BDBn¼
5IÓIÓTÓXÓ|Ó‡Ó–Ó˘Ó®ÓÍÓĺÓőÓÔÔ6Ô8Ô8ÔYÔ[Ô[Ô|Ô~Ô~ÔŠÔŠÔ’Ô’ÔžÔ˛ÔÂÔĘÔĘÔÜÔăÔăÔőÔŐŐŐ1Őo\Qd˘˘˛´żÄ×ŕĺęú€€ €€pŚoކ † ‘ ™ ¤ Ż ş Ă Ů í ö 
1 G a i  ‡ ¥ ° » Ó Þ å ð õ !qxˆ¢ÉâÉâåâêâíâúâãã ãã#ã+ã+ã6ã6ã>ã@ã@ãGãJãVãr0 €€(€2€I€O€Q€W€s ää"ä0ä2ätL+NwNwfwhwrw›w©w«wÀwËwÑwæwu, R;N;NSNUNaNaNmNzN‡N�N”NšNœN N°N¾NÎNÙNÞNÞNåNåNðNðNOO(O*O0O2O4O6O6OAOCOKOQOSOSO_OiOlOlOlOlOwOOƒO�Ovx8ÞBÞBôBCC$C3C9C=CRC`CfClCoCyCw¨5[vlvlšl¥l­l¼lÁlÆlÖlÛlölölýlm mm m%m'm'm.m4m:mBmPmVmXmXmhmjmjmzmÄmx M»G»GÕGãGüGHH'H9HNH^HeHuH€H�HšHHHºHÅHÑHÓHÓHÓHÙHÙHÜHæHæHIIII#I6I<IEIOI\IlI�I�I¨I¨IºIºIºIÐIÝIôIýIJJJJJJ3Jy,07d{d{m{w{x{}{zpß÷2Ä2ÄCÄOÄ]ÄiÄuÄ�Ä�Ä�Ä�Ä—Ä£ÄÀÄÜÄÜÄÜÄÜÄâÄâÄòÄôÄôÄÅ{$‚‡~ß~ß‚ß�ßÄßÐß|<7B Œ Œ!Œ!Œ=ŒEŒUŒ\Œ^ŒfŒ},hBhBlB€B„B„BˆB~,
1 G a i  ‡ ¥ ° » Ó Þ å ð õ !qxˆ¢ÉâÉâåâêâíâúâãã ãã#ã+ã+ã6ã6ã>ã@ã@ãGãJãVãr0 €€(€2€I€O€Q€W€s ää"ä0ä2ätL+NwNwfwhwrw›w©w«wÀwËwÑwæwu, R;N;NSNUNaNaNmNzN‡N�N”NšNœN N°N¾NÎNÙNÞNÞNåNåNðNðNOO(O*O0O2O4O6O6OAOCOKOQOSOSO_OiOlOlOlOlOwOOƒO�Ovx8ÞBÞBôBCC$C3C9C=CRC`CfClCoCyCw¨5[vlvlšl¥l­l¼lÁlÆlÖlÛlölölýlm mm m%m'm'm.m4m:mBmPmVmXmXmhmjmjmzmÄmx MÃGÃGÝGëGHH"H/HAHVHfHmH}HˆH—H¢H¾H¾HÂHÍHÙHÛHÛHÛHáHáHäHîHîH IIII+I>IDIMIWIdItI˜I¥I°I°IÂIÂIÂIØIåIüIJ JJ J J$J$J;Jy,07d{d{m{w{x{}{zpß÷2Ä2ÄCÄOÄ]ÄiÄuÄ�Ä�Ä�Ä�Ä—Ä£ÄÀÄÜÄÜÄÜÄÜÄâÄâÄòÄôÄôÄÅ{$‚‡~ß~ß‚ß�ßÄßÐß|<7B Œ Œ!Œ!Œ=ŒEŒUŒ\Œ^ŒfŒ},hBhBlB€B„B„BˆB~,
HBHBLB`BdBdBhBhN¤V9V9a9l9|9„9Ą9´9Ĺ9Î9â9ú9
::-:5:Q:f:q:y:ž:£:­:º:Ì:å:ô:ô:;*;4;Q;\;d;;Š;Ÿ;¨;Â;Ñ;Ý;æ;ë;<<<4<0<J<U<]<h<h<h<s<s<„<„<—<©<¼<Å<Å<Ø<è<ð<ð<ð<þ< ====0=4=;=€DÛèiïiï{ï‡ï�ï·ïÂïÂïÓïãïåïð�LN]3J3J<JAJHJHJgJŠJ‘J J¯J´JJ¸J¸J‚l£º*™*™>™J™X™g™g™�™²™½™Ç™ЙÝ™è™õ™ššš#š'š/šƒœDgyËyË�˅ˑˡˬ˻ËÇËÐËèËúËÌ8ÌDÌOÌmÌm̖̖̖̮̮̔ÌÀÌÇÌáÌáÌáÌóÌúÌúÌ ÍÍ„øQÆ`ä`þ`aa.a7a@aGaPaYaqa€a˜a«a´a½aËaãaöaÿabbb&b,b7b9b<bDbYbnbqb|b‚bŠbŽb b¦b¬b³b¹bÉbÏbábèbêb:c…<Øãó0ó01#1(1L1p1”1›1¢1§1³1†lý*�*�>�G�X�€�£�²�¿�Ê�ç�ú� ž žžž*ž<žFžNž‡œ’µ¶N¶NÈNÊNØNäNýNOO,O1OGOCOSOsOsOˆOŠOŠOŸO¡O¡O±O³O³OÃOÃOÊOÊOÐO0PˆHLZ–K–KªK¿KÉKÝKäKéKíKóKúKýKL‰àõ)««¾Åãã  =R^ˆŽ“¸Õò,Ifƒ ½Ú÷1Nkˆ¥Âßü6SpФ¾Øðððÿg!Š<
Z€Z€n€}€�€�€’€š€�€¥€‹(óùFãFãPãZã„ã‰ãŒ$[W[WuW‘W�P¥µ›&›&Ÿ&®&³&¿&Ë&×&à&ì&ó&ø&''.'0'Ž@ »)»)Ç)Î)Ô)Û)ï)ö)ø)ý)*�X�¢r˜r˜‡˜‘˜•˜•˜½˜à˜ë˜ ™™™™$™�,›¢N½N½b½t½y½Š½�½·½‘x£½ÖàÖàßàìàûà áá=áRáXá^áeáráŽáŽá¢á¬á´á½áÕáÞáÞáóá’8ÀC:C:_:l:q:‡:Š:Ÿ:“(¿Å¦˜¦˜®˜¸˜Ë˜” ³×³/³/Á/Æ/Î/Ö/ã/õ/ÿ/00+0A0W0m00†0†0œ0©0©0¿0Î0Î0Õ0Ü0ã0è0ð0•8�§ÉÉ×ßç'-–P:J˜i˜i°i¼iÄiËiÔiÚiÝiÝiñiþijjj—øE››(›8›?›G›N›j›…›…›‹›”›�›¦›¯›±›º›Ã›Å›Å›Î›Ý›â›â›ë›ô›ù›ù›œ œœœœ"œ'œ'œ'œ0œ9œ>œ>œJœSœXœoœsœsœ�œ�œ�œ�œ¡œ�˜XµÇ¢Â¢ÂªÂ¶ÂÁÂÐÂÜÂåÂìÂúÂÃFÃFÃXÃ_Ã_ÃqÃrÃvÙÈÝ p2p2Œ2’2œ2Ÿ2Ÿ2¨2³2½2Ç2Ó2Õ2Û2â2å2è2ð2ü233 3333#3)32323:3C3I3R3R3R3R3X3`3c3s3š,�ˆ"Á"Á+Á7Á?ÁDÁIÁ›8_i&&4>HS[]]cœx^xc[c[y[€[Ž[Ž[š[¥[Ô[Ô[×[Ù[Ù[Þ[Þ[à[à[à[â[â[â[ë[î[ñ[þ[�,ÛâŒyŒy•yŸy y¥yž$(-����*�0�Ÿ<@KÊ�Ê�à�ê�î�ó�ÿ��� ��  úþŽãŽã’ã³ãµã¡t.RžRžbžnžwžˆž°žÓžâžïžŸúž$Ÿ8Ÿ>Ÿ@ŸBŸHŸJŸWŸZŸbŸ¢h^tš š ¼  Ë Ë Ô ã ð ¡&¡.¡0¡B¡B¡B¡S¡`¡`¡n¡£Ht‚î{î{÷{ü{ý{ ||| |#|'|7|<|?|¤<ðûÕ‘Õ‘ê‘Ù‘ù‘!’¥€�¹2£2£P£a£i£|£Ž£™£¤£º£¾£Σà£è£è£2¤7¤7¤Y¤Y¤p¤�¤–¤¸¤¦ %«2«2»2Å2Ê2Ï2Ï2Þ2ã2è2ò2ü23 33333"3$33353A3K3Y3^3m3t3v3v3v3|3§€~š6Ò6Ò?ÒBÒYÒYÒpÒ„Ò¢Ò¤Ò¼ÒÏÒÚÒëÒÓÓÓ-ÓKÓMÓeÓxÓxÓ{ÓÔÓ¨4<E5550525=5?5?5G5©X€Ò��2�B�I�Q�X�t�x�—�—�¹�¹�¹�Â�Ä�Ä�Í�Ï�Ï�Ø�Ú�Ú�ã�å�å�î�ð�ð�ù�û�û�žžžžžžžžžžžž7žGž[žkžkžmžmžvžyž~ž~ž‡ž‡žŒžŒž•ž¢ž§ž§ž°žÄžÇžÌžÌžÕžÕžãžçžÀŸª`Uis?s?“?ž?¤?¯?±?Â?Ï?Õ?Õ?á?«0;CËAËAÔAâAèAúAüAüAB¬(‹‘�V�V¤V¯V¸V»VÃV­ \€ÉÐÉÐÑÐÜÐìÐûÐÑ+Ñ+Ñ@ÑHÑMÑMÑZÑpÑ|фьўÑËÑ×ÑêÑòÑ÷Ñ÷ÑÒÒÒÒÒ.Ò3Ò:Ò®°.V±Î±Î¹ÎÄÎÔÎãÎïÎÏÏ@ÏeÏjÏjÏχόόϳϻÏÃÏÕÏÐÐ!Ð)Ð.ÐCÐEÐEÐQÐQÐcÐjÐjÐ|Ð�Ð�Я8LVDvDvTvWvYv^vgvjvovwv° ~‚ææêùý±({P{P„PŽP™P¡P¦P²DÐXÐXäXöXýXYYYY'Y*Y2Y³h°Æ8OYj€¤»»Ñô  *´X=OÝÝÝÝ/Ý7ÝUÝYÝeÝeÝy݂݆݊ݵ\ReFpFp\pcprpyp‚p‚p˜p£p«p¿pÈpÎpÙpÙp÷pPFVH5H5f5l5q5�5“5˜5¶5¸5Æ5Ì5Ï5Ý5·lXo¦ð¦ðÇðÊðØðØðäðëðððóðùðüðñ ñ ñññññ'ñ¸Œ“²Ë-Ë-Ô-ý-&.O.™.¦.¨.À.Line truncated
///1/1/A/a/h/m/w/ž/¥/§/¬/¯/¹ˆ;Y„„„„„(„5„>„G„P„Y„m„m„x„~„€„�„—„¦„¯„¸„ՄՄׄç„í„ò„º4 ¼t¼tÐtßtätòtõtûtu»\•¨²Á²ÁÈÁÔÁÖÁäÁúÁ   Â;ÂCÂK¼¨'’�’�¤�¯�´�Â�Î�Ú�ã�î�ù�Ž ŽŽ%Ž3ŽLŽWŽ^ŽrŽ‘Ž™Ž¡Ž¬Ž®Ž¿ŽÊŽÑŽߎêŽìŽõŽÿ޽ W[‘БЫнÐÇоDt�ëë-ë7ëIëPëWëgërë€ëƒë‹ë¿<)4\u\usuvu{u~u‘u—ušuœu¦uÀ´^ÇIITu|‹˜¤³Ç×íú .=JSSl�­àåÿ/:ZckxŠœ¼Ñäþ-9KPbtŒœ¨»»îù,8DDIXf©°µÕÜ$2\^^c~…��ž³³ÄËààññôüÁh
 öìöìí í+í7íCíLíUí^ígípíyí‚í‹í”í�í¦í¯í¸í¸íÐíÂ0¾Æ__!_=_T_`_f_l_‹_ÃX’¤ 0 0®0·0Ã0É0Ì0Ñ0×0Ú0ß0ß0ì0ð0ó0ó0ù0ÄÜ‚µÖZÖZüZ[[%[%[;[B[R[a[a[f[�[„[‰[—[«[²[¼[¼[Ñ[Ñ[ç[õ[û[\\,\6\9\<\A\O\e\o\r\u\}\‹\¡\«\®\®\µ\¹\Ë\ÅLü KGKGZGhGhGrG|G™G¤G­G³G´GºGÆ PTŽÝŽÝ’ݾÝÀÝÇôȶ#¶#¾#Â#Ê#Û#ê#ô#$;$M$_$_$c$r$|$�$—$›$ª$Ç$Ì$Ì$â$ê$ý$ %-%:%B%G%Z%i%Š%—%¢%´%Æ%á%è%ú%ú%&& &&&)&-&1&È8AKvv$v'v)v.v1v4v9vAvÉDz‡ÄqÄqÈqÎqÔqÚqàqæqìqòqøqþqrrÊhÖ,N3N3Y3q3‚3‘3›3¤3µ3Í3å3õ344,4A4W4_4„4‰4“4¤4¶4Í4Í4ñ455585G5O5O5n5~5˜5Ø5«5³5ž5þ56 6 696N6h6r6…6�6x6Ø6Ø6Ø677 7 727D7L7_7w7Š7’7’7 7©7´7Â7É7Ô7â7â7ç7ó7Ë4{„———— —4—;—@—H—Ì<²½ÈWÈWìWðWXX$X.X1XAXÍ8§±XWXW|W€W–WªW´W·WÇWÎLú vìvì’ìžì¹ìÂìÏìãìéìõìÏ`L`��:�F�Q�V�d�o�~�„�•�™���£�¦�­�¸�¸�Ä�Ð Ÿ£êkêkîkùkûkÑ #GÖíÖíëíòíüí
::-:5:Q:f:q:y:ž:£:­:º:Ì:å:ô:ô:;*;4;Q;\;d;;Š;Ÿ;¨;Â;Ñ;Ý;æ;ë;<<<4<0<J<U<]<h<h<h<s<s<„<„<—<©<¼<Å<Å<Ø<è<ð<ð<ð<þ< ====0=4=;=€DÛèiïiï{ï‡ï�ï·ïÂïÂïÓïãïåïð�LN];J;JDJIJPJPJoJ’J™J¨J·J¼J¾JÀJÀJ‚l£º*™*™>™J™X™g™g™�™²™½™Ç™ЙÝ™è™õ™ššš#š'š/šƒœDgyËyË�˅ˑˡˬ˻ËÇËÐËèËúËÌ8ÌDÌOÌmÌm̖̖̖̮̮̔ÌÀÌÇÌáÌáÌáÌóÌúÌúÌ ÍÍ„øQÆ`ä`þ`aa.a7a@aGaPaYaqa€a˜a«a´a½aËaãaöaÿabbb&b,b7b9b<bDbYbnbqb|b‚bŠbŽb b¦b¬b³b¹bÉbÏbábèbêb:c…<ÈÓû0û01+101T1x1œ1£1ª1¯1»1†lý*�*�>�G�X�€�£�²�¿�Ê�ç�ú� ž žžž*ž<žFžNž‡œ’µ¶N¶NÈNÊNØNäNýNOO,O1OGOCOSOsOsOˆOŠOŠOŸO¡O¡O±O³O³OÃOÃOÊOÊOÐO0PˆHLZ–K–KªK¿KÉKÝKäKéKíKóKúKýKL‰àø,ÓÓæí  ))GGez†°»àý7TqŽ«Èå <Yv“°Íê$A^{˜²Ìæ    ' �!Š<
Z€Z€n€}€�€�€’€š€�€¥€‹(óùFãFãPãZã„ã‰ãŒ$cWcW}W™W�P¨¸Ã&Ã&Ç&Ö&Û&ç&ó&ÿ&''' '-'D'V'X'Ž@ ã)ã)ï)ö)ü)*** *%*0*�X�¢r˜r˜‡˜‘˜•˜•˜½˜à˜ë˜ ™™™™$™�,›¢N½N½b½t½y½Š½�½·½‘x£½ÖàÖàßàìàûà áá=áRáXá^áeáráŽáŽá¢á¬á´á½áÕáÞáÞáóá’8ÀK:K:g:t:y:�:’:§:“(¿Å¦˜¦˜®˜¸˜Ë˜” £Ç»/»/É/Î/Ö/Þ/ë/ý/0 0030I0_0u0‡0Ž0Ž0¤0±0±0Ç0Ö0Ö0Ý0ä0ë0ð0ø0•8�§ÉÉ×ßç'-–P:J˜i˜i°i¼iÄiËiÔiÚiÝiÝiñiþijjj—øE››(›8›?›G›N›j›…›…›‹›”›�›¦›¯›±›º›Ã›Å›Å›Î›Ý›â›â›ë›ô›ù›ù›œ œœœœ"œ'œ'œ'œ0œ9œ>œ>œJœSœXœoœsœsœ�œ�œ�œ�œ¡œ�˜XµÇ¢Â¢ÂªÂ¶ÂÁÂÐÂÜÂåÂìÂúÂÃFÃFÃXÃ_Ã_ÃqÃrÃvÙÈÝ p2p2Œ2’2œ2Ÿ2Ÿ2¨2³2½2Ç2Ó2Õ2Û2â2å2è2ð2ü233 3333#3)32323:3C3I3R3R3R3R3X3`3c3s3š,�ˆ"Á"Á+Á7Á?ÁDÁIÁ›8_i&&4>HS[]]cœx^xk[k[�[ˆ[–[–[¢[­[Ü[Ü[ß[á[á[æ[æ[è[è[è[ê[ê[ê[ó[ö[ù[\�,ÛâŒyŒy•yŸy y¥yž$(-����*�0�Ÿ<@KÊ�Ê�à�ê�î�ó�ÿ��� ��  úþŽãŽã’ã³ãµã¡t.RžRžbžnžwžˆž°žÓžâžïžŸúž$Ÿ8Ÿ>Ÿ@ŸBŸHŸJŸWŸZŸbŸ¢h^tš š ¼  Ë Ë Ô ã ð ¡&¡.¡0¡B¡B¡B¡S¡`¡`¡n¡£Ht‚î{î{÷{ü{ý{ ||| |#|'|7|<|?|¤<ðûÕ‘Õ‘ê‘Ù‘ù‘!’¥€�¹2£2£P£a£i£|£Ž£™£¤£º£¾£Σà£è£è£2¤7¤7¤Y¤Y¤p¤�¤–¤¸¤¦˜ñ³2³2Ã2Í2Ò2×2×2æ2ë23
33333 3*3,3;3=3I3S3a3f3u3|3~3~3~3„3§€~š6Ò6Ò?ÒBÒYÒYÒpÒ„Ò¢Ò¤Ò¼ÒÏÒÚÒëÒÓÓÓ-ÓKÓMÓeÓxÓxÓ{ÓÔÓ¨4<E5550525=5?5?5G5©X€Ò��2�B�I�Q�X�t�x�—�—�¹�¹�¹�Â�Ä�Ä�Í�Ï�Ï�Ø�Ú�Ú�ã�å�å�î�ð�ð�ù�û�û�žžžžžžžžžžžž7žGž[žkžkžmžmžvžyž~ž~ž‡ž‡žŒžŒž•ž¢ž§ž§ž°žÄžÇžÌžÌžÕžÕžãžçžÀŸª`Ui{?{?›?¦?¬?·?¹?Ê?×?Ý?Ý?é?«0;CÓAÓAÜAêAðABBB B¬(‹‘�V�V¤V¯V¸V»VÃV­ \€ÉÐÉÐÑÐÜÐìÐûÐÑ+Ñ+Ñ@ÑHÑMÑMÑZÑpÑ|фьўÑËÑ×ÑêÑòÑ÷Ñ÷ÑÒÒÒÒÒ.Ò3Ò:Ò®°.V±Î±Î¹ÎÄÎÔÎãÎïÎÏÏ@ÏeÏjÏjÏχόόϳϻÏÃÏÕÏÐÐ!Ð)Ð.ÐCÐEÐEÐQÐQÐcÐjÐjÐ|Ð�Ð�Я8LVDvDvTvWvYv^vgvjvovwv° ~‚ææêùý±(ƒPƒPŒP–P¡P©P®P²DÐXÐXäXöXýXYYYY'Y*Y2Y³h°Æ8OYj€¤»»Ñô  *´X=OÝÝÝÝ/Ý7ÝUÝYÝeÝeÝy݂݆݊ݵ\ReFpFp\pcprpyp‚p‚p˜p£p«p¿pÈpÎpÙpÙp÷pPFVH5H5f5l5q5�5“5˜5¶5¸5Æ5Ì5Ï5Ý5·lXo¦ð¦ðÇðÊðØðØðäðëðððóðùðüðñ ñ ñññññ'ñ¸Œƒ¢Ó-Ó-Ü-...W.¡.®.°.È.È./ /!/9/9/I/i/p/u//¦/­/¯/´/·/¹ˆ;Y„„„„„(„5„>„G„P„Y„m„m„x„~„€„�„—„¦„¯„¸„ՄՄׄç„í„ò„º4 ¼t¼tÐtßtätòtõtûtu»\•¨²Á²ÁÈÁÔÁÖÁäÁúÁ   Â;ÂCÂK¼¨'’�’�¤�¯�´�Â�Î�Ú�ã�î�ù�Ž ŽŽ%Ž3ŽLŽWŽ^ŽrŽ‘Ž™Ž¡Ž¬Ž®Ž¿ŽÊŽÑŽߎêŽìŽõŽÿ޽ W[‘БЫнÐÇоDt�ëë-ë7ëIëPëWëgërë€ëƒë‹ë¿<)4\u\usuvu{u~u‘u—ušuœu¦uÀ´^ÇIITu|‹˜¤³Ç×íú .=JSSl�­àåÿ/:ZckxŠœ¼Ñäþ-9KPbtŒœ¨»»îù,8DDIXf©°µÕÜ$2\^^c~…��ž³³ÄËààññôüÁh
 öìöìí í+í7íCíLíUí^ígípíyí‚í‹í”í�í¦í¯í¸í¸íÐíÂ0¾Æ _ _)_E_\_h_n_t_“_ÃX’¤ 0 0®0·0Ã0É0Ì0Ñ0×0Ú0ß0ß0ì0ð0ó0ó0ù0ÄÜ‚µÖZÖZüZ[[%[%[;[B[R[a[a[f[�[„[‰[—[«[²[¼[¼[Ñ[Ñ[ç[õ[û[\\,\6\9\<\A\O\e\o\r\u\}\‹\¡\«\®\®\µ\¹\Ë\ÅLü SGSGbGpGpGzG„G¡G¬GµG»G¼GÂGÆ PTŽÝŽÝ’ݾÝÀÝÇôȶ#¶#¾#Â#Ê#Û#ê#ô#$;$M$_$_$c$r$|$�$—$›$ª$Ç$Ì$Ì$â$ê$ý$ %-%:%B%G%Z%i%Š%—%¢%´%Æ%á%è%ú%ú%&& &&&)&-&1&È8AKvv$v'v)v.v1v4v9vAvÉDz‡ÄqÄqÈqÎqÔqÚqàqæqìqòqøqþqrrÊhÖ,N3N3Y3q3‚3‘3›3¤3µ3Í3å3õ344,4A4W4_4„4‰4“4¤4¶4Í4Í4ñ455585G5O5O5n5~5˜5Ø5«5³5ž5þ56 6 696N6h6r6…6�6x6Ø6Ø6Ø677 7 727D7L7_7w7Š7’7’7 7©7´7Â7É7Ô7â7â7ç7ó7Ë4{„———— —4—;—@—H—Ì<²½ÈWÈWìWðWXX$X.X1XAXÍ8§±XWXW|W€W–WªW´W·WÇWÎLú vìvì’ìžì¹ìÂìÏìãìéìõìÏ`L`��:�F�Q�V�d�o�~�„�•�™���£�¦�­�¸�¸�Ä�Ð Ÿ£êkêkîkùkûkÑ #GÖíÖíëíòíüí
î
îî+îNîPîrî‰î«îÑîóîýîïï-ïEïNïNïgïqïŠï˜ïšï¡ï¨ïáïÒ¼\‡‘á‘á­á°á¹áÂáÌáÞáááäáéáùáüáââ#â%â%â9â9â<â?âMâQâgâmâtâ{â~âƒâ˜â›â�â�â²â²â²âÄâÓ`¹Íí‡í‡ ˆ ˆˆˆ ˆ%ˆ1ˆ9ˆEˆIˆQˆ]ˆ_ˆ_ˆbˆnˆÔ ’–ÈVÈVÑVÞVãVÕ\"8Y8YHYMYWY_YhYkYrYuY}Y„YŒYÖd<QVoVonowo’o¡o¶o¼oÄoæoôop(p.p7p7pCp×\Æ>Æ>Ô>Þ>å>ë>ô>? ???(?E?N?W?]?e?Ø<±¼`m`mtmwm€m�m•m©mºmÙ|øBnBnxnlnˆnŽn�n¢n³n·n»nÅnÊnÚnànçnênünÚ´f�þpþpq!q*q>qHqSqUqiqvqqƒqƒqŒqžq£q·qÜqõqüqþq"r:r:r<r<r<rVrkrkr³rÛ° 1-ƒ-ƒ6ƒPƒPƒVƒVƒ\ƒ\ƒ\ƒ\ƒ\ƒ\ƒ\ƒ\ƒaƒaƒmƒsƒsƒyƒ~ƒ‡ƒ‡ƒšƒšƒšƒšƒšƒšƒ ƒ ƒ ƒ ƒ¢ƒ¢ƒºƒÜ„1Nff4f;fFf_ftfzfˆf�f”f f fªf¯f¶fÁfÏfÓfÖfÙfâfõfÝ0ooo o%o>oCoEoÞ@˜¤C&C&Q&X&_&i&p&r&„&‰&–&ß,„‹¬w¬wµwºwÂwÈwÈwÍwàD -QÎQÎ_Îg΃΃ΈΈΈΕΕΡΡΫÎá4›¤í}í}ö}~~ ~&~(~(~-~â /3(C(C6CJCPCãHø"Å"Å7ÅCÅFÅOÅ[ÅcÅ€Å�ŕŘŤÅä$¦Û¦ÛªÛ®Û°ÛåDÍÚTyTybynysysy€y…y…y‹yæhC™mŒmŒ‡Œ‰Œ¢Œ®Œ²ŒÎŒéŒéŒéŒéŒéŒõŒ����%�5�?�D�D�M�]�b�b�s�x�{�‡�˜�¨�ª�ª�ª�Ç�É�É�æ�æ�ì�ø�Ž ŽŽ Ž"Ž.Ž?ŽPŽRŽRŽhŽjŽjŽ€Ž€Ž†Ž’ŽžŽ¥Ž©Ž¹Ž¼ŽÈŽÙŽëŽíŽíŽíŽòŽ6�çxš´=�=�U�d�j�m�ˆ�£�£�­�¯�¯�¹�»�»�»�Æ�È�È�È�Ó�Ó�Ó�Ø�ê�è UyÞÝÞÝçÝ÷ÝÞ&Þ8Þ:ÞXÞgÞgÞ|Þ~Þ”Þ¬Þ³Þ³Þ´Þ´ÞÂÞÍÞÜÞÞÞêÞõÞß ß ßéHŒšÔwÔwèwïwxxx x%x(x-x/x7xê8ðú«V«VËVÖVäVÜV÷VWWWWë@ƒ�——Зø—˜(˜5˜@˜b˜j˜p˜ì(>D¦š¦š³šÈšôš›í ßã¾â¾âÈâÛâàâî$§¬œxœx¥x­x³x¸xï<©´RÂRÂhÂ~Â�““˜˜ Âðd Î\Î\ð\ô\ü\ ] ]#]+];];]G]V][]t]w]|]�]‘]œ]£]§]«]¹]Í]Ô]Þ]ä]ç]õ]û] ^"^$^'^'^)^C^O^U^^^j^‹^�^›^¢^©^¯^²^À^Ö^Ö^Ö^Û^ç^ÿ^______+_A_A_A_I_U_m_q_|__†_—_—_ž_´_ñÀI3R3RGRTRZRbRoRqR‡R�R�R™R²RÀRÉRÔRßRâRéRîRöRûRS S S&SLSOSjSjSjSnSsS�Sò4 (,u,u:u<uAuJuMuRuXuó Tf?f?�?‡? ?¬?¾?È?Ø?Û?è?@@@'@2@D@L@_@m@|@Ž@—@¤@³@É@Ð@á@á@í@ø@ø@ AAA+A4ADAFAYAcAsA|AŒA˜A˜A˜AžA¥AªA°A²A×Aô$N“cBcBkBxB‡BŒB BµBÎBçBïBC!C5CƒC…C‰CõXÂÔºlºlÃlÓlÓlÔlÙlÙlãlölm mm m/m1m1möhWFÖFÖ^ÖgÖmÖvÖ~Ö‡Ö�ַַֽ֔֔֜֡֡֩ÖÄÖÄÖÚÖâÖéÖðÖ÷Ö× × ×/×1×E×g×}׊×Í׵׿ר%Ø/ØFØIØMØRØ[Ød؛،؇جاØÂØØØæØLine truncated
îî+îNîPîrî‰î«îÑîóîýîïï-ïEïNïNïgïqïŠï˜ïšï¡ï¨ïáïÒ¼\‡‘á‘á­á°á¹áÂáÌáÞáááäáéáùáüáââ#â%â%â9â9â<â?âMâQâgâmâtâ{â~âƒâ˜â›â�â�â²â²â²âÄâÓ`¹Íí‡í‡ ˆ ˆˆˆ ˆ%ˆ1ˆ9ˆEˆIˆQˆ]ˆ_ˆ_ˆbˆnˆÔ ’–ÈVÈVÑVÞVãVÕ\"8Y8YHYMYWY_YhYkYrYuY}Y„YŒYÖd<QVoVonowo’o¡o¶o¼oÄoæoôop(p.p7p7pCp×\Æ>Æ>Ô>Þ>å>ë>ô>? ???(?E?N?W?]?e?Ø<±¼`m`mtmwm€m�m•m©mºmÙ|øBnBnxnlnˆnŽn�n¢n³n·n»nÅnÊnÚnànçnênünÚ´f�þpþpq!q*q>qHqSqUqiqvqqƒqƒqŒqžq£q·qÜqõqüqþq"r:r:r<r<r<rVrkrkr³rÛ° 1-ƒ-ƒ6ƒPƒPƒVƒVƒ\ƒ\ƒ\ƒ\ƒ\ƒ\ƒ\ƒ\ƒaƒaƒmƒsƒsƒyƒ~ƒ‡ƒ‡ƒšƒšƒšƒšƒšƒšƒ ƒ ƒ ƒ ƒ¢ƒ¢ƒºƒÜ„1Nff4f;fFf_ftfzfˆf�f”f f fªf¯f¶fÁfÏfÓfÖfÙfâfõfÝ0ooo o%o>oCoEoÞ@›§k&k&y&€&‡&‘&˜&š&¬&±&¾&ß,„‹¬w¬wµwºwÂwÈwÈwÍwàD -QÎQÎ_Îg΃΃ΈΈΈΕΕΡΡΫÎá4›¤í}í}ö}~~ ~&~(~(~-~â /3(C(C6CJCPCãHø"Å"Å7ÅCÅFÅOÅ[ÅcÅ€Å�ŕŘŤÅä$¦Û¦ÛªÛ®Û°ÛåDÍÚTyTybynysysy€y…y…y‹yæhC™mŒmŒ‡Œ‰Œ¢Œ®Œ²ŒÎŒéŒéŒéŒéŒéŒõŒ����%�5�?�D�D�M�]�b�b�s�x�{�‡�˜�¨�ª�ª�ª�Ç�É�É�æ�æ�ì�ø�Ž ŽŽ Ž"Ž.Ž?ŽPŽRŽRŽhŽjŽjŽ€Ž€Ž†Ž’ŽžŽ¥Ž©Ž¹Ž¼ŽÈŽÙŽëŽíŽíŽíŽòŽ6�çxš´=�=�U�d�j�m�ˆ�£�£�­�¯�¯�¹�»�»�»�Æ�È�È�È�Ó�Ó�Ó�Ø�ê�è UyÞÝÞÝçÝ÷ÝÞ&Þ8Þ:ÞXÞgÞgÞ|Þ~Þ”Þ¬Þ³Þ³Þ´Þ´ÞÂÞÍÞÜÞÞÞêÞõÞß ß ßéHŒšÔwÔwèwïwxxx x%x(x-x/x7xê8ðú³V³VÓVÞVìVäVÿVWWWWë@ƒ�——Зø—˜(˜5˜@˜b˜j˜p˜ì(>D¦š¦š³šÈšôš›í ßã¾â¾âÈâÛâàâî$§¬œxœx¥x­x³x¸xï<©´RÂRÂhÂ~Â�““˜˜ Âðd Î\Î\ð\ô\ü\ ] ]#]+];];]G]V][]t]w]|]�]‘]œ]£]§]«]¹]Í]Ô]Þ]ä]ç]õ]û] ^"^$^'^'^)^C^O^U^^^j^‹^�^›^¢^©^¯^²^À^Ö^Ö^Ö^Û^ç^ÿ^______+_A_A_A_I_U_m_q_|__†_—_—_ž_´_ñÀI3R3RGRTRZRbRoRqR‡R�R�R™R²RÀRÉRÔRßRâRéRîRöRûRS S S&SLSOSjSjSjSnSsS�Sò4 (,u,u:u<uAuJuMuRuXuó Tf?f?�?‡? ?¬?¾?È?Ø?Û?è?@@@'@2@D@L@_@m@|@Ž@—@¤@³@É@Ð@á@á@í@ø@ø@ AAA+A4ADAFAYAcAsA|AŒA˜A˜A˜AžA¥AªA°A²A×Aô$N“kBkBsB€B�B”B¨B½BÖBïB÷BC)C=C‹C�C‘CõXÂÔºlºlÃlÓlÓlÔlÙlÙlãlölm mm m/m1m1möhWFÖFÖ^ÖgÖmÖvÖ~Ö‡Ö�ַַֽ֔֔֜֡֡֩ÖÄÖÄÖÚÖâÖéÖðÖ÷Ö× × ×/×1×E×g×}׊×Í׵׿ר%Ø/ØFØIØMØRØ[Ød؛،؇جاØÂØØØæØLine truncated
� ���(�+�-�4�F�I�K�Q�Q�Q�Q�V�V�]�d�k�q�t�„8MWj»j»t»|»Ť»˘»Ş»­»Ż»ł» PÓ㉉.‰7‰P‰a‰†‰‰‰ ‰މ·‰·‰ą‰Á‰
HľĚ y yy&y+y+y8yGyLyLyRy Hao(6(6B6S6c6f6h6u6y6|6†6 l:QYôYôdôsô‚ôťôŻô»ôČôŃôŕôňôő őEőNőcőjőjőő€ő„ő  –Á×Á×ă×ć×í×ŘŘŘ&ŘDŘDŘQŘWŘ_ŘkŘpŘpŘwŘ}؉؎ؕ؜أجظŘĘŘĎŘŇŘŮŘŮŘëŘűŘŮŮ.ŮDŮWŮ[ŮvŮŽŮÂŮÂŮÉŮŇŮŘŮÚŮÚŮÚŮÚŮÚŮÚŮÚŮîŮőŮřŮÚÚÚÚÚÚ%Ú.Ú0Ú0Ú0Ú3Ú5Ú5Ú<Ú?ÚEÚEÚHÚMÚXÚlÚsÚyÚŽÚ‘Ú°Ú°ÚµÚµÚµÚĽÚĹÚÍÚÍÚÍÚŘÚäÚçÚŽŰxÇáţţ"-5R]dk‘‘™ÁĆĆÎ÷ ś`�ÄvÄvßvćvńv÷vúvúvwwww w%w.w.w.w2w<wKwSwhwsw…w‰w‹wťwˇwˇwˇw«wŚpŹ�6�6¦6©6Á6Á6Ă6Ô6á6ć6ě6 7 7777 7;7>7I7M7M7V7Y7g7d!6V™V™~™†™ ™«™®™´™Ľ™Đ™ŕ™í™ď™ý™
šš.š0š0š@š�Ssćzćzđzözýz{{>{S{S{X{_{w{�{©{®{˛{Á{Ă{Î{Ů{ä{ä{č{ UYĆĚĆĚÚĚéĚńĚ€éČéČÉÉ,É>ÉSÉYÉ^ÉdÉgÉuÉ�ɄɇɓÉ�ɡɦɭÉĂÉĂÉŮÉ@v‚———C—f—s—€—‹—®—¶—»—Ěh—&ç&çAçKçYç_çiçiçvç|ç€ç�ç…çŚç“çťç©ç˛çĆçŰçřçčç č ččAčCčPčWčnčzč‚č„čžčąčĹčŇčéěĄÜ-~-~G~O~W~f~w~y~�~˘~ž~±~Á~Ç~Í~Ô~Ý~ű~÷~
1BEJPp†“𥩮¹ÄÊÍÓâóø€€!€L&5˜G˜G¢G©G´GÀGÇGÇGÍGÔGäGæGíGòGöG,‹’μμâ¼ô¼ú¼½½<0;‰‰›«Ëßåççí<w‚r¼r¼�¼†¼¡¼¸¼¼¼¼¼Á¼Á¼Ǽ\õz¦z¦ˆ¦�¦•¦œ¦¡¦ɦì¦ù¦§§.§6§=§=§@§F§,“š>à>àLàgàqàvà‰à�à¼Ðû»E»EçEíEFF%F1F=FAFOFnFnF�F—FŸF¦F®F¸FÀFÔFåFöF GGG!G)G)G-GJG 4#àà
ààà!à'à'à,à < ÆÉÆÉÚÉíÉúÉÊÊ*Ê:Ê=ÊMÊ!4ÓÜ(2(2<2>2G2G2T2\2a2i2",W^k7k7y7{7�7•7š7 7#DJWñéñéþé êêê*ê2ê:êBêJêTêYê$ø^˜ùõùõöö#ö2ö;öIöVöaöqö†ö›ö²öÁöáöðö÷÷&÷=÷F÷U÷q÷ˆ÷˜÷¥÷²÷½÷Ò÷á÷ó÷ø÷øøø0øBøYøbømøtøø‰ø’ø–ø%(QWnðnðyð�ðœð ð&0V^þþ  $'@ ��•£±»ÌÝçñû(hr’r’{’‰’˜’£’³’Ã’Ó’ã’ò’““!“B“D“S“b“r“‚“«“«“°“)ˆ ;<;<[<e<h<p<€<€<‘<›<®<¸<º<Ù<Þ<ì<ú<==!=+=+=+=;=*PÙéFëFëdëwëƒëžë¯ë¼ëÐë×ëÝëìë+$mrXkXk\klkqk�k,H¾ÌHXHX^XcX|X‡X�X’XžX¡X¤X®X-D&«P«P´PÂPÂPÄPÊPÕPÕPäPåPêP.(¤ªlllll l"l/D.;žåžå¬åºåºåÂåáåûåûåÿåæ0d>S±à±àÊàÎàÚàÚàæàæàóàóàáá á2áGáQá`á`ájá1ÔTîÄîÄ ÅÅÅ$Å7ÅAÅGÅKÅNÅPÅVÅZÅ]ÅcÅfÅyőřŜŭÅÁÅÈÅÒÅÖÅéÅìÅøÅýÅÆ ÆÆ8Æ@ÆCÆTÆlÆsÆsÆ‚Æ�ƪƶÆÕÆÕÆæÆþÆ ÇÇÇ!Ç5Ç<ÇAÇAÇRÇfÇ}ǂǂLjǙǭÇÌÇÑÇÑÇ×ÇèÇüÇÈ È È1ÈEÈRÈWÈWÈhÈ|ȉȎȎȟȳÈÀÈÂÈÂÈÂÈÂÈÂÈÓÈëÈúÈüÈüÈ É!É*É*É0É0É9É9ÉÂÉ24ÂËÒµÒµàµåµðµóµ÷µýµ3l 7;=;=Y=\=d=x=x=Š=”=¨=²=´=Ó=Ø=æ=ô=ÿ= >>%>%>3>4ˆ7U3>3>Y>]>`>s>�>�>Ÿ>¨>º>Ã>Ê>Ï>Ù>â>ì>ï>ò>÷> ??(?<?J?Z?Z?l?5ˆXvº»º»Ñ»Ô»Ô»å»î»ø»ü»ÿ» ¼¼¼ ¼ ¼%¼,¼0¼9¼9¼B¼G¼S¼e¼g¼q¼6XÉÛñdñdee#e/eIeOe\egenewe{e‡e7XÈYdYdyd†d‹d—d±d·dÄdÑdØdádådñd8$ V’V’l’¦’¼’Ê’9 X\vÙvÙzكمÙ: éíããã#ã(ã; á剉1‰C‰K‰<(7=FšFšSšhš�š¡š=0‚І¼†¼ ¼£¼£¼¬¼½¼À¼È¼>Hª¸m‡m‡ˆ‡¥‡¯‡¶‡¶‡Õ‡Ú‡Ü‡Ü‡æ‡?Ä Lò¹ò¹ººº!º&ºDºDºMºbºwº~ºŠº–º¢º²º·º¼º¼ºúʺÓºÕºÕºܺ纻»»»&»7»7»7»B»I»N»U»X»d»@XºÌº¤º¤ܤà¤æ¤é¤ô¤ô¤¥¥¥ ¥"¥(¥6¥A¨Cib•b•‹•�•𕤕®•º•º••ë•ô•ù•––
1BEJPp†“𥩮¹ÄÊÍÓâóø€€!€L&5˜G˜G¢G©G´GÀGÇGÇGÍGÔGäGæGíGòGöG,‹’μμâ¼ô¼ú¼½½<0;‰‰›«Ëßåççí<w‚r¼r¼�¼†¼¡¼¸¼¼¼¼¼Á¼Á¼Ǽ\õz¦z¦ˆ¦�¦•¦œ¦¡¦ɦì¦ù¦§§.§6§=§=§@§F§,“š>à>àLàgàqàvà‰à�à¼ÐûÃEÃEïEõEF&F-F9FEFIFWFvFvF•FŸF§F®FFÀFÈFÜFíFþFGG#G)G1G1G5GRG 4#àà
ààà!à'à'à,à < ÆÉÆÉÚÉíÉúÉÊÊ*Ê:Ê=ÊMÊ!4ÓÜ(2(2<2>2G2G2T2\2a2i2",W^s7s7�7ƒ7•7�7¢7¨7#DJWñéñéþé êêê*ê2ê:êBêJêTêYê$ø^˜ùõùõöö#ö2ö;öIöVöaöqö†ö›ö²öÁöáöðö÷÷&÷=÷F÷U÷q÷ˆ÷˜÷¥÷²÷½÷Ò÷á÷ó÷ø÷øøø0øBøYøbømøtøø‰ø’ø–ø%(QWnðnðyð�ðœð ð&0V^þþ  $'@ ��•£±»ÌÝçñû(hr’r’{’‰’˜’£’³’Ã’Ó’ã’ò’““!“B“D“S“b“r“‚“«“«“°“)ˆ C<C<c<m<p<x<ˆ<ˆ<™<£<<À<Â<á<æ<ô<= ==)=3=3=3=C=*PÙéFëFëdëwëƒëžë¯ë¼ëÐë×ëÝëìë+$mrXkXk\klkqk�k,H¾ÌHXHX^XcX|X‡X�X’XžX¡X¤X®X-D&³P³P¼PÊPÊPÌPÒPÝPÝPìPíPòP.(¤ªlllll l"l/D.;žåžå¬åºåºåÂåáåûåûåÿåæ0d>S±à±àÊàÎàÚàÚàæàæàóàóàáá á2áGáQá`á`ájá1ÔTîÄîÄ ÅÅÅ$Å7ÅAÅGÅKÅNÅPÅVÅZÅ]ÅcÅfÅyőřŜŭÅÁÅÈÅÒÅÖÅéÅìÅøÅýÅÆ ÆÆ8Æ@ÆCÆTÆlÆsÆsÆ‚Æ�ƪƶÆÕÆÕÆæÆþÆ ÇÇÇ!Ç5Ç<ÇAÇAÇRÇfÇ}ǂǂLjǙǭÇÌÇÑÇÑÇ×ÇèÇüÇÈ È È1ÈEÈRÈWÈWÈhÈ|ȉȎȎȟȳÈÀÈÂÈÂÈÂÈÂÈÂÈÓÈëÈúÈüÈüÈ É!É*É*É0É0É9É9ÉÂÉ24ÂËÒµÒµàµåµðµóµ÷µýµ3l 7C=C=a=d=l=€=€=’=œ=°=º=¼=Û=à=î=ü=>>#>->->;>4ˆ7U;>;>a>e>h>{>—>—>§>°>Â>Ë>Ò>×>á>ê>ô>÷>ú>ÿ>? ?0?D?R?b?b?t?5ˆXvº»º»Ñ»Ô»Ô»å»î»ø»ü»ÿ» ¼¼¼ ¼ ¼%¼,¼0¼9¼9¼B¼G¼S¼e¼g¼q¼6XÉÛùdùde&e+e7eQeWedeoeveeƒe�e7XÈadad�dŽd“dŸd¹d¿dÌdÙdàdédídùd8$ V’V’l’¦’¼’Ê’9 X\vÙvÙzكمÙ: éíããã#ã(ã; á剉1‰C‰K‰<(7=FšFšSšhš�š¡š=0‚І¼†¼ ¼£¼£¼¬¼½¼À¼È¼>Hª¸m‡m‡ˆ‡¥‡¯‡¶‡¶‡Õ‡Ú‡Ü‡Ü‡æ‡?Ä Lò¹ò¹ººº!º&ºDºDºMºbºwº~ºŠº–º¢º²º·º¼º¼ºúʺÓºÕºÕºܺ纻»»»&»7»7»7»B»I»N»U»X»d»@XºÌº¤º¤ܤà¤æ¤é¤ô¤ô¤¥¥¥ ¥"¥(¥6¥A¨Cib•b•‹•�•𕤕®•º•º••ë•ô•ù•––
–
–"–7–:–=–C–J–N–}–�–‰–‹–––––›–›–ª–º–B0—Ÿ‘Û‘Û§Û³ÛÞÛàÛàÛèÛCD2¹2¹;¹C¹C¹P¹b¹j¹o¹{¹�¹ƒ¹ƒ¹ˆ¹DLÎ’Î’Þ’ì’ü’ÿ’*“N“_“¤“¨“°“EØ9"s"s<sCsGsKsVsgsus‰s•s˜s¡s¬sÃsÈsÑsÔsÞsæsésìstt t6t=tFtItKt[t^t`tgtwt{t‚t…t¥t¬t¾tF<ðû­‰­‰Ã‰Å‰Ó‰ð‰ô‰ŠŠG �…AÒAÒ[ÒmÒwÒHH -åå2å4å;åFåoåtå‹å�å�å”åœåI@EQLKLK\KiKpK~K…KŒK•KJHâð8EUjqz”—¡KPKQKQ_Q�Q�Q�Q˜QœQ£Q®Q²QºQ»QÃQLtc|ºqºqÂqÎqäqïqýq r*rDrYr^rerjrjrlrM ÍѰX°X¹XËXNt/ *7Rr’°Ááô2Mbii~ƒOh�—;%;%C%a%r%‚%‰%­%¾%Ñ%Ø%é%&&&&'&?&A&A&C&P0$,ËËÓéî  Q@
–"–7–:–=–C–J–N–}–�–‰–‹–––––›–›–ª–º–B0—Ÿ‘Û‘Û§Û³ÛÞÛàÛàÛèÛCD2¹2¹;¹C¹C¹P¹b¹j¹o¹{¹�¹ƒ¹ƒ¹ˆ¹DLÎ’Î’Þ’ì’ü’ÿ’*“N“_“¤“¨“°“EØ9"s"s<sCsGsKsVsgsus‰s•s˜s¡s¬sÃsÈsÑsÔsÞsæsésìstt t6t=tFtItKt[t^t`tgtwt{t‚t…t¥t¬t¾tF<ðû­‰­‰Ã‰Å‰Ó‰ð‰ô‰ŠŠG �…AÒAÒ[ÒmÒwÒHH -åå2å4å;åFåoåtå‹å�å�å”åœåI@EQLKLK\KiKpK~K…KŒK•KJHâð8EUjqz”—¡KPKQKQ_Q�Q�Q�Q˜QœQ£Q®Q²QºQ»QÃQLtc|ºqºqÂqÎqäqïqýq r*rDrYr^rerjrjrlrM ÍѰX°X¹XËXNt/ *7Rr’°Ááô2Mbii~ƒOh„šc%c%k%‰%š%ª%±%Õ%æ%ù%&&)&+&+&>&O&g&i&i&k&P0$,ËËÓéî  Q@
˝
½½½$½8½B½G½S½Y½[½[½`½R4ÇЋ_‹_©_Å_Ü_è_î_ô_û_`S,¢©KMKMTMqMƒMƒMˆMT<R]‰õ‰õ›õ«õËõêõðõòõòõøõU`1ò1ò9òHòTòhòyò„ò�ò•ò—ò©ò»òÂòÂòÔòÕòÙòVTDU{{–­¸ÃÞ-4;FVgnW8$ * ***&*3*5*B*B*E*
½½½$½8½B½G½S½Y½[½[½`½R4ÇГ_“_±_Í_ä_ð_ö_ü_`"`S,¢©KMKMTMqMƒMƒMˆMT<R]‰õ‰õ›õ«õËõêõðõòõòõøõU`1ò1ò9òHòTòhòyò„ò�ò•ò—ò©ò»òÂòÂòÔòÕòÙòVTDU{{–­¸ÃÞ-4;FVgnW8$3*3*<*L*T*a*c*p*p*s*
+1 -1
View File
@@ -1609,7 +1609,7 @@ public class CAutoCompleteDictGlbls
class CICArg
{
U8 type,type_pointed;
U8 type,type_pointed_to;
U16 reg; //low is reg, high is index_reg+scale<<6
I64 disp;
};
-1
View File
@@ -172,7 +172,6 @@ public extern U8 *TaskCaller(CTask *task=NULL,
I64 num=0,Bool saved_context=FALSE);
public extern I64 UnusedStk(CTask *task=NULL);
public extern CDbgGlbls dbg;
#help_index "Debugging/Debugger"
public extern Bool B(U8 *addr,CTask *task=NULL,Bool live=TRUE) //Toggle bpt.
public extern I64 B2(CTask *task=NULL,Bool live=TRUE);
+8 -5
View File
@@ -62,14 +62,16 @@ U0 KbdLEDsSet(I64 sc)
Fs->catch_except=TRUE;
}
U0 KbdMouseCmdAck(U8 val)
U0 KbdMouseCmdAck(...)
{
I64 ack,timeout=5;
I64 i,ack,timeout;
for (i=0;i<argc;i++) {
timeout=5;
do {
ack=0;
try {
KbdCmdSend(KBD_CTRL,0xD4);
KbdCmdSend(KBD_PORT,val);
KbdCmdSend(KBD_PORT,argv[i]);
ack=KbdCmdRead;
} catch {
KbdCmdFlush;
@@ -79,6 +81,7 @@ U0 KbdMouseCmdAck(U8 val)
if (!timeout)
throw;
}
}
U0 KbdTypeMatic(U8 delay)
{//Set speed of repeated keys.
@@ -200,7 +203,7 @@ U8 *Char2KeyName(I64 ch,Bool include_ctrl=TRUE)
I64 i;
U8 buf[STR_LEN];
if (ch<=CH_SPACE) {
nobound_switch (ch) {
switch [ch] {
case '\n':
StrCpy(buf,"ENTER");
break;
@@ -216,7 +219,7 @@ U8 *Char2KeyName(I64 ch,Bool include_ctrl=TRUE)
case CH_SHIFT_ESC:
StrCpy(buf,"SHIFT_ESC");
break;
case 0: //nobound_switch
case 0: //nobound switch
case 29:
case 30:
*buf=0;
+6 -24
View File
@@ -75,27 +75,11 @@ Bool MouseRst()
catch
Fs->catch_except=TRUE;
KbdMouseCmdAck(0xF3);
KbdMouseCmdAck(200);
KbdMouseCmdAck(0xF3); // enable Mouse
KbdMouseCmdAck(100); // Set Rate
KbdMouseCmdAck(0xF3);
KbdMouseCmdAck(80); //Resolution
MouseGetDevType; // enable Mouse
KbdMouseCmdAck(0xF3);
KbdMouseCmdAck(10);
MouseGetDevType; // enable Mouse
KbdMouseCmdAck(0xE8); //Resolution
KbdMouseCmdAck(0x03);
KbdMouseCmdAck(0xE6);
KbdMouseCmdAck(0xF3); // Set Rate
KbdMouseCmdAck(100);
KbdMouseCmdAck(0xF4); // enable Mouse
KbdMouseCmdAck(0xF3,200,0xF3,100,0xF3,80);
MouseGetDevType;
KbdMouseCmdAck(0xF3,10);
MouseGetDevType;
KbdMouseCmdAck(0xE8,0x03,0xE6,0xF3,100,0xF4);
result=TRUE;
//Enable IRQ 12
@@ -263,9 +247,7 @@ U0 KbdMouseHandler(Bool poll_kbd,Bool poll_mouse)
if (kbd.rst)
KbdMouseRst;
else {
if (poll_mouse &&
mouse.installed &&
!mouse.irqs_working) {
if (poll_mouse && mouse.installed && !mouse.irqs_working) {
PUSHFD
CLI
while (InU8(KBD_CTRL)&1)
+1 -1
View File
@@ -17,7 +17,7 @@ HashTablePurge(adam_task->hash_table);
#help_index "Misc"
//Use Dbg("Type 'G;'"); to debug before window mgr is running.
public F64 os_version=4.03;//Operating system version.
public F64 os_version=4.040;//Operating system version.
#include "/Adam/MakeAdam"