From 792bc24b215070db072589117141e8b0fed91bd1 Mon Sep 17 00:00:00 2001 From: IgorA Date: Mon, 19 Mar 2012 22:35:36 +0000 Subject: [PATCH] 'log_el' - add cursors, other small changes git-svn-id: svn://kolibrios.org@2482 a494cfbc-eb01-0410-851d-a64ba20cac60 --- programs/media/log_el/docs/about.png | Bin 22319 -> 23223 bytes programs/media/log_el/docs/readme.htm | 5 +- programs/media/log_el/docs/tb_element.png | Bin 0 -> 411 bytes programs/media/log_el/trunk/cursors.png | Bin 0 -> 1845 bytes programs/media/log_el/trunk/cursors_gr.png | Bin 0 -> 686 bytes programs/media/log_el/trunk/log_el.asm | 221 ++++++++++++++++++--- programs/media/log_el/trunk/toolbar.png | Bin 5054 -> 5791 bytes 7 files changed, 192 insertions(+), 34 deletions(-) create mode 100644 programs/media/log_el/docs/tb_element.png create mode 100644 programs/media/log_el/trunk/cursors.png create mode 100644 programs/media/log_el/trunk/cursors_gr.png diff --git a/programs/media/log_el/docs/about.png b/programs/media/log_el/docs/about.png index 3fef1926bb42aeed93550dd9c668a34c0c8ffafc..19dd92e80dac6ddb8e7f00dea04eeea790e255be 100644 GIT binary patch literal 23223 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 F{s&7>*gF6K diff --git a/programs/media/log_el/docs/readme.htm b/programs/media/log_el/docs/readme.htm index aef9f5c774..b3f8adca73 100644 --- a/programs/media/log_el/docs/readme.htm +++ b/programs/media/log_el/docs/readme.htm @@ -48,7 +48,7 @@ table -

╦юушўхёъшх ¤ыхьхэЄ√ тхЁёш  юЄ 15.03.2012

+

╦юушўхёъшх ¤ыхьхэЄ√ тхЁёш  юЄ 20.03.2012

╬уыртыхэшх

  • ╬ яЁюуЁрььх
  • @@ -90,6 +90,7 @@ table

    - єёЄрэютър Ёхцшьр Ёшёютрэш  яЁютюфют

    - єёЄрэютър Ёхцшьр Ёшёютрэш  Єюўхъ фы  яЁютюфют схч яхЁхёхўхэшщ

    - єёЄрэютър Ёхцшьр ёЄшЁрэш  яЁютюфют

    +

    - єёЄрэютър Ёхцшьр Ёшёютрэш  ыюушўхёъшї ¤ыхьхэЄют

    ╨хфръЄшЁютрэшх ьэюушї юс·хъЄют х∙х эх ёфхырэю :( ... ╧юър ьюцэю ЁхфръЄшЁютрЄ№ Їрщы√ ёю ёїхьрьш ЄхъёЄют√ьш ЁхфръЄюЁрьш, эю ¤Єю эх єфюсэю. ╧юЄюьє ёючфрэшх эют√ї ёїхь ёхщўрё яЁюсыхьрЄшўэю.

    ╤юїЁрэхэшх

    @@ -101,7 +102,7 @@ table

    ═р Ёшёєэъх ўшёыю a (a0+a1 = 1+2 = 3) єьэюцрхЄё  эр b (b1+b3 = 2+8 = 10) ш эр т√їюфх яюыєўрхЄё  c (c1+c2+c3+c4 = 2+4+8+16 = 30).

    ┬шф√ юс·хъЄют

    -

    ┬ Їрщырї ёю ёїхьрьш хёЄ№ 4 тшфр юс·хъЄют.

    +

    ┬ Їрщырї ёю ёїхьрьш хёЄ№ 4 тшфр юс·хъЄют: ъы■ўхт√х Єюўъш, яЁютюфр схч яхЁхёхўхэшщ, ыюушўхёъшх ¤ыхьхэЄ√ ш эрфяшёш.

    ╩ы■ўхтр  Єюўър

    ╩ы■ўхтр  Єюўър ¤Єю яЁюьхцєЄюўэ√щ юс·хъЄ, ъюЄюЁ√щ ёыєцшЄ фы  ёючфрэш  яЁютюфют. ╩ы■ўхтр  Єюўър ёюёЄюшЄ шч 2-ї ъююЁфшэрЄ ш яхЁхьхээющ эряЁртыхэшщ. ═ряЁртыхэшщ ьюцхЄ с√Є№ ьръёшьєь 4 (ттхЁї, тэшч, тыхтю, тяЁртю). ╬эш юяЁхфхы ■Є т ъръє■ ёЄюЁюэє юЄ фрэющ Єюўъш ЁшёютрЄ№ яЁютюф. ╧Ёш тёЄЁхўх фЁєующ ъы■ўхтющ Єюўъш шыш фюёЄшцхэшш ъюэЎр ёїхь√ Ёшёютрэшх яЁютюфр яЁхъЁр∙рхЄё . ╥ръшь юсЁрчюь ъы■ўхт√х Єюўъш ¤Єю тхъЄюЁэ√х юс·хъЄ√ эр юёэютх ъюЄюЁ√ї Ёшёє■Єё  яЁютюфр, ўЄю яючтюы хЄ єьхэ№°шЄ№ ЁрчьхЁ Їрщыр ёю ёїхьющ.

    diff --git a/programs/media/log_el/docs/tb_element.png b/programs/media/log_el/docs/tb_element.png new file mode 100644 index 0000000000000000000000000000000000000000..bbb24d6b83f80342bd723abd2a6e9767595991d6 GIT binary patch literal 411 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DinK$vl=HlH+5P^!c=q9iy!t)x7$D3u`~F*C13&(AePq0Cs%RL{`B;7id$1_nlP zPZ!4!3;*Oh<*)zOvvDy9vsN99(ll!jyvyxp$HTK~|2u;ffA+C2d2e(lEjVq*;Z-b4 zLM6WC9xTysT^)`zMt7%;T9 z8d>;EGe~RZ-L>Pr8S@R+6AVi@*g_;4*czAx7Fm|a9$~#M@$B%`2405NMvmvY8!m@7 zbR`~OKGBfLc2VI&^c}XNP8-B0IGbyRG0C+mFejd4+nI9jk+=j~Lo#EE7Ekjd>6_IJHKr(o``njxgN@xNA D7<-g> literal 0 HcmV?d00001 diff --git a/programs/media/log_el/trunk/cursors.png b/programs/media/log_el/trunk/cursors.png new file mode 100644 index 0000000000000000000000000000000000000000..ae69fbd4058c12ced6832c214cf678bef0e285ec GIT binary patch literal 1845 zcmV-52g>+~P)N2bPDNB8 zb~7$DE-^4L^m3s900yy1L_t(&L+zODPg`{q$8RL@kLU{*qyK_2`cB`fGbU=HF*>91 zVN2$sZ`4GiM$Hx{PMyw8x3M{=Fs86ZVH;0F5M=8H?ba6h2x~7bEp6B5-kt}~1%!bu zw}s0q`%7Om^w;m_obNfm^Sedi=4Si8eY|B$(bW|t{rKbYojbRJq)6!L?c0SBQIx5> z?;hE6Ny@MO=PS9^lEPbV-;X47;6EhGb#YgWmE>3$fyc1i?JTS6ovs{^9*Ca z`i$O(A6|bR)&y9GF?#R4<^ZZO!jC;>8lWO0y?eKrfJH{{Ll2GIb5HouM-A0wf2}px z@Xgi$7+Tk`s9}+z1BM%vp2OVsjmvP~hBqjp{)&aad@iCT0`WULz3Tfta+ADGUlaN(HCsC=WD$f$Z{n#EY}PBw*MaOrQJ zVf<9FNro{%pN7@X;JZ%^ne*^ljj`*&tL6ZzUMm9yz}JHt_N)U zpN|--H+~<~^5jv|IjBXb+MWi$(7lF58?h*r84vWIOU@2-F_iEmOiX0-l2$zf#4T52faOYBF1zX5Ir{uGKI!E7@GThTpC0S~Dj zl2EeU0B6fM07m+^{aX_QNVbK}k-|#s`++}!;)gK%8H9dBZ$E{d6b?{mnsvqqCjJ2R zSBMT7B(XA!N?|HG5rQB z)3ldvjbZtsUW39x2sguY3%Yx0=K3mi0o)97Xp&-=Fx3fZE99g*s;sqFX3UP^J`7mF zaTaY>oEV^>gF^n5*q4)-32?wcv*$713VADNVsE8Y=}w-2at|cBAu@!)ahmZ}P+!CZ zeC)nV!46c9LqUwK6~K&_0nS5q0OoC|daDBTVz_C(2UDjZeiD*>6_Tj@R3UeOHl#Ou z_994A8Z*vg<|oLvLQ#5T^{V>VQn-Qn9?;G}whQJ*QCf4^{WWibKAyTl-cGc);mr#* z10;^J3v+#Xvj;Dr+eYGeHHPY<`QI_q0tFdXGKOzk1`l2`U(;Qno`LCZl%XrZR%Gba z{+qnN;Zz64WfIp8ke#_Jm^ug1HV9up-vmwjD=-8+IYzz?^mO8Uy#Spdb5N$jX$W_r zZ@dCSb<(^Q(?3A=7!-Qz%wRFy>|dDt1tKRPWJT|_RSe0=e~r|3jDHKIAJ?9SIv##A zgBUvjGlwA1j;_Bc;MKhnb>CGApTWr2kUS!7T~8PN_h9A*G538r_r4a|TXr19p*C_H z!O%zL>|0vu^YX3knh)AK)A6R0LhY!2TrTd?_+|YCyS4nm@*3-x73#3)c4{QTZa0r# zW0#Xvb-i0>g8;*eY_l0O0JS?{xU*5@hDC-B7;b2EQNtob2Mjkfx~O51p#z2+8eP<| j$j|}94UI1PA6WDcmPE+bcO#ks00000NkvXXu0mjfA4y>l literal 0 HcmV?d00001 diff --git a/programs/media/log_el/trunk/cursors_gr.png b/programs/media/log_el/trunk/cursors_gr.png new file mode 100644 index 0000000000000000000000000000000000000000..55e5c6fc76c4c821c62c3a0d1856fd19b9492719 GIT binary patch literal 686 zcmV;f0#W^mP)N2bPDNB8 zb~7$DE-^4L^m3s900JsWL_t(|UhSH}l7t`(M92C6f8JGVv~&hZC+WbYy?6lO+36sp zT>jSUwO-4zY`5XpasXUs9tpF(c8lTUsfKx5ntvi>bqlwf0Ncow5IX=Oa}@-nz@cvi zgbSb|947!0h6*Ka3e14`3BhQHrUynsJeqJ6L^lgYK$vM*4PgSHD`hlAA%IE<7{CjG zejZ%_6%cL!Hbe-32@wY9L3mPk-xH#SspywdfB_@`DIf);z3>p!$HBhMq%4Bt=aC?=j2^0RdD(zyMwdbVK3-sDN+- zupvSKOo%Xm>I10Dt$wKxSc4<&0+0eyV7da2mD2Bxg=c4kh0fy31>&unHGYq5^whE z<~1f +;txt_mov_l db 27,0 ;<- +;txt_mov_r db 26,0 ;-> txt_size db 'size',0 txt_elements db 'elements',0 @@ -150,7 +152,7 @@ run_file_70 FileInfoBlock image_data dd 0 ;указатель на временную память. для нужен преобразования изображения IMAGE_TOOLBAR_ICON_SIZE equ 16*16*3 -IMAGE_TOOLBAR_SIZE equ IMAGE_TOOLBAR_ICON_SIZE*15 +IMAGE_TOOLBAR_SIZE equ IMAGE_TOOLBAR_ICON_SIZE*20 image_data_toolbar dd 0 TREE_ICON_SYS16_BMP_SIZE equ IMAGE_TOOLBAR_ICON_SIZE*11+54 ;размер bmp файла с системными иконками @@ -161,6 +163,9 @@ icon_toolbar dd 0 ;ука IMAGE_FONT_SIZE equ 128*144*3 image_data_gray dd 0 ;память с временными серыми изображениями в формате 24-bit, из которых будут создаваться трафареты +cursors_count equ 4 +IMAGE_CURSORS_SIZE equ 4096*cursors_count ;размер картинки с курсорами + macro load_image_file path,buf,size { ;макрос для загрузки изображений ;path - может быть переменной или строковым параметром if path eqtype '' ;проверяем задан ли строкой параметр path @@ -231,6 +236,7 @@ start: mov eax,dword[icon_toolbar] mov dword[tree1.data_img],eax + ;*** загрузка шрифта load_image_file 'font6x9.bmp', image_data_gray,IMAGE_FONT_SIZE stdcall [buf2d_create_f_img], buf_font,[image_data_gray] ;создаем буфер stdcall mem.Free,[image_data_gray] ;освобождаем память @@ -238,6 +244,18 @@ start: stdcall [buf2d_conv_24_to_8], buf_font,1 ;делаем буфер прозрачности 8 бит stdcall [buf2d_convert_text_matrix], buf_font + ;*** загрузка курсоров + load_image_file 'cursors_gr.png',image_data_gray,IMAGE_CURSORS_SIZE + stdcall [buf2d_create_f_img], buf_curs_8,[image_data_gray] ;создаем буфер + stdcall mem.Free,[image_data_gray] ;освобождаем память + + load_image_file 'cursors.png',image_data_gray, IMAGE_CURSORS_SIZE + stdcall [buf2d_create_f_img], buf_curs,[image_data_gray] ;создаем буфер + stdcall mem.Free,[image_data_gray] ;освобождаем память + + stdcall [buf2d_conv_24_to_8], buf_curs_8,1 ;делаем буфер прозрачности 8бит + stdcall [buf2d_conv_24_to_32],buf_curs,buf_curs_8 ;делаем буфер rgba 32бит + stdcall sign_init, 3000 mcall 26,9 @@ -304,7 +322,12 @@ mouse: push eax ebx ecx edx mcall 37,2 ;нажатые кнопки мыши bt eax,0 ;левая кнопка нажата? - jnc .end_buf_wnd + jc @f + xor eax,eax + mov [pen_coord_x],eax + mov [pen_coord_y],eax + jmp .end_buf_wnd + @@: mcall 37,1 ;eax = (x shl 16) + y cmp ax,word[buf_0.t] @@ -340,15 +363,50 @@ mouse: jge .end_buf_wnd cmp byte[pen_mode],1 - jne @f + jne .end_mode_1 ;режим рисования провода + cmp dword[pen_coord_x],0 + jne @f + cmp dword[pen_coord_y],0 + jne @f + mov [pen_coord_x],eax + mov [pen_coord_y],ebx + @@: + + cmp dword[pen_coord_x],eax + je .beg_draw + cmp dword[pen_coord_y],ebx + je .beg_draw + + mov ecx,eax + sub ecx,[pen_coord_x] + bt ecx,31 + jnc @f + neg ecx + inc ecx + @@: + mov edx,ebx + sub edx,[pen_coord_y] + bt edx,31 + jnc @f + neg edx + inc edx + @@: + cmp ecx,edx + jl @f + mov ebx,[pen_coord_y] ;привязка к координате y + jmp .beg_draw + @@: + mov eax,[pen_coord_x] ;привязка к координате x + + .beg_draw: stdcall pole_cell_creat, pole,eax,ebx,0 ;ничего не убралось redraw_pole не подходит, т. к. чистить поле не нужно stdcall pole_paint, pole stdcall [buf2d_draw], buf_0 ;stdcall but_test_pole, pole jmp .end_buf_wnd - @@: + .end_mode_1: cmp byte[pen_mode],2 jne @f ;режим рисования изоляции для провода @@ -366,6 +424,14 @@ mouse: ;stdcall but_test_pole, pole jmp .end_buf_wnd @@: + cmp byte[pen_mode],4 + jne @f + ;режим создания элементов + stdcall shem_element_creat, eax,ebx + stdcall pole_paint, pole + stdcall [buf2d_draw], buf_0 + jmp .end_buf_wnd + @@: .end_buf_wnd: pop edx ecx ebx eax @@ -519,12 +585,25 @@ pushad mov edx,txt_set_1 int 0x40 - add ebx,35 shl 16 - mov edx,txt_mov_l + ; *** рисование иконок на кнопках *** + mov eax,7 + mov ebx,[image_data_toolbar] + mov ecx,(16 shl 16)+16 + mov edx,(62 shl 16)+panel_1_coord_top+2 + + add ebx,IMAGE_TOOLBAR_ICON_SIZE*16 int 0x40 - add ebx,25 shl 16 - mov edx,txt_mov_r + add ebx,IMAGE_TOOLBAR_ICON_SIZE + add edx,(25 shl 16) + int 0x40 + + add ebx,IMAGE_TOOLBAR_ICON_SIZE + add edx,(25 shl 16) + int 0x40 + + add ebx,IMAGE_TOOLBAR_ICON_SIZE + add edx,(25 shl 16) int 0x40 ; *** создание кнопок рисования провода *** @@ -547,6 +626,10 @@ pushad mov edx,33 int 0x40 + add ebx,25 shl 16 + mov edx,34 + int 0x40 + ; *** рисование иконок на кнопках *** mov eax,7 mov ebx,[image_data_toolbar] @@ -568,6 +651,10 @@ pushad add edx,(25 shl 16) ;icon pen 3 int 0x40 + add ebx,IMAGE_TOOLBAR_ICON_SIZE + add edx,(25 shl 16) ;icon add elemet + int 0x40 + mcall 12,2 popad ret @@ -656,33 +743,49 @@ button: @@: cmp ah,31 jne @f - call but_set_pen_1 + stdcall set_pen_mode,1,0 ;установка режима рисования провода @@: cmp ah,32 jne @f - call but_set_pen_2 + stdcall set_pen_mode,2,1 @@: cmp ah,33 jne @f - call but_set_pen_3 + stdcall set_pen_mode,3,2 ;установка режима стирания провода + @@: + cmp ah,34 + jne @f + stdcall set_pen_mode,4,3 ;установка режима создания элементов @@: cmp ah,1 jne still .exit: stdcall [buf2d_delete],buf_0 stdcall [buf2d_delete],buf_font + stdcall [buf2d_delete],buf_curs stdcall mem.Free,[image_data_toolbar] stdcall pole_delete, pole call sign_delete stdcall [tl_data_clear], tree1 + cmp [cursor_pointer],0 + je @f + mcall 37,6,[cursor_pointer] + @@: mcall -1 - +;создание новой схемы align 4 -but_new_file: +proc but_new_file uses eax + call but_set_none + stdcall [tl_info_clear],tree1 + stdcall [tl_draw],tree1 + xor eax,eax + mov [shem_elems],eax + mov [shem_captions],eax stdcall pole_clear, pole call redraw_pole ret +endp align 4 f_size dd 0 ;размер открываемого файла @@ -1026,6 +1129,7 @@ but_open_file: ;--- call but_center ;центровка схемы с учетом shem_w и shem_h + call but_set_none .end_open_file: popad ret @@ -1460,6 +1564,31 @@ proc make_list_capts uses eax ebx ecx edi, buf:dword, txt:dword ret endp +;добавление нового элемента управления на схему +;при добавлении используются стандартные настройки +align 4 +proc shem_element_creat uses eax ebx, coord_x:dword, coord_y:dword + mov eax,dword[coord_x] + mov dword[txt_buf],eax ;координата x + mov eax,dword[coord_y] + mov dword[txt_buf+4],eax ;координата y + + xor eax,eax + mov byte[txt_buf+8],al ;направление + ;по адресу edi название элемента + ;stdcall el_get_name, edi + mov byte[txt_buf+sp_offs_el_type],al ;тип элемента + + movzx ebx,al + imul ebx,size_el_opt + add ebx,el_opt_beg+el_offs_nam + stdcall make_list_capts,txt_buf,ebx + stdcall [tl_node_add], txt_buf,(el_icon_elems shl 16)+1, tree1 + stdcall [tl_cur_next], tree1 + stdcall [tl_draw], tree1 + ret +endp + ;output: ; eax - тип элемента align 4 @@ -1842,27 +1971,33 @@ endp align 4 proc but_set_none mov byte[pen_mode],0 + cmp [cursor_pointer],0 + je @f + push eax ebx ecx + mcall 37,6,[cursor_pointer] + pop ecx ebx eax + @@: ret endp -;установка режима рисования провода align 4 -proc but_set_pen_1 - mov byte[pen_mode],1 - ret -endp +proc set_pen_mode uses eax ebx ecx edx, mode:dword, icon:dword + mov eax,[mode] + cmp byte[pen_mode],al + je @f + mov byte[pen_mode],al + ;mov edx,((cx shl 8) + cy) shl 16 + mov edx,2 ;LOAD_INDIRECT + mov ecx,[icon] + shl ecx,12 ;умножаем на 4 кб + add ecx,[buf_curs.data] + mcall 37,4 -; -align 4 -proc but_set_pen_2 - mov byte[pen_mode],2 - ret -endp - -;установка режима стирания провода -align 4 -proc but_set_pen_3 - mov byte[pen_mode],3 + cmp eax,0 + je @f + mov [cursor_pointer],eax + mcall 37,5,[cursor_pointer] + @@: ret endp @@ -1935,6 +2070,28 @@ buf_font: ; dd 0 ;+16 color db 24 ;+20 bit in pixel +align 4 +buf_curs: ;буфер с курсорами +.data: dd 0 ;указатель на буфер изображения + dw 0 ;+4 left + dw 0 ;+6 top + dd 32 ;+8 w + dd 32*cursors_count ;+12 h + dd 0 ;+16 color + db 24 ;+20 bit in pixel + +align 4 +buf_curs_8: ;буфер с курсорами +.data: dd 0 ;указатель на буфер изображения + dw 0 ;+4 left + dw 0 ;+6 top + dd 32 ;+8 w + dd 32*cursors_count ;+12 h + dd 0 ;+16 color + db 24 ;+20 bit in pixel + +cursor_pointer dd 0 ;указатель на данные для курсора + el_focus dd 0 tree1 tree_list 32,points_max+2, tl_key_no_edit, 16,16,\ 0x8080ff,0x0000ff,0xffffff, 5,panel_3_coord_top,145,250, 0,capt_offs,0,\ diff --git a/programs/media/log_el/trunk/toolbar.png b/programs/media/log_el/trunk/toolbar.png index 16c0a6c9d9c438a819857ac79e34c477a77964d0..92f417fff47e722224b0c052be29e3200162930f 100644 GIT binary patch delta 5773 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 LNkvXXu0mjfIh_58 delta 5030 zcmV;X6Itw^Exsp^77GCI2nGNE013C`k` z000v^Nkls9;A;B0)3>cBBL=k)d7kjZ-_4=$<@70C2 z%et)hdV80aTD#h7i&WOKYHzO(d?0F-OVuhEK;eQAAPGds1Co$;CX;!;=k9$bGnsGZ z`(`F}+4hfnW}WrT_kDZ+&OU#yz4zJYe5zfi0)fi3J`4>F!RPZKUMegsM7L*-gha&v zS?0sI;DQUF(P*Gjsbn#{UM~(FJc!cLQVEEfskvlkcDY=VY_r*5u~;xRHU_O$i^|GM z^!4>&uI@~@5COo6OJ)!zRIAnD%+EtoWoKujzP=v){rzE(FaU!vW8{C80r^=7ASERQ zdc7V?mMp>W@NkeevcgQvOp%iCe`Yk9OfVXaVa5=j1R$~jLsbfaF^Ep5LuzWOq>&{6 z(aj$X!tKK#5~<^M{AA-sS8ZAVp&sIEs8N#w2m}I%%v>G5k4|yhfQciSLgOPT2|_&* z8c31XqyR#7PYQrVOEiBIBTEg<9Z?9+#`*eQF`fN>f1+L$@3}X4YIitGg8)f!DG((M zu=h`|!{PKGJ0lHCR;~}jB?a*E@3!Ffd+!f3?IWO^kpBoeTQ< zM-^+gWz#e8_(^{-b8T%dO3Ts(vD)u}+ULT%JB`pQus`>kU&DXv*TNSdU9s)uX9BC& z%!Eo!nrM=l0sNz1;q8OP@Opfdz3`Au^ilSDeW+RYbQoIe^OGj_x}equM9CV;DsvBM z8ar;fxGP46-|onfJX5{);?se(tMZ_ydCts#-e(a6et&>U^TX@&Q|T-PT`98!{LJeM zz)x2#51xR>NxFZ}k24*EaCoxt4@)d`uZbv$R6UOtzZdYh=<2}nmJ$5^BPX<6$AHHH zwaSf_zDyM5`=NG|6yBgDB6*#p`)%+!9q`!g=o=Wr3!luyy2n4HYLiHQlHhFb1Og=X zk_s!8LYb4#1GpyObBx0|VTOIe1RLe8`yCkTKOF2eFByLo9|0Wh&O%v<4=T?Da{_J~ z0?u*5nt;nZ0f*Tr^4YJtajM6M?{66i0+bG(=aXbgaLSp@_=#^azY7+hH05648RXK+XmdwkqZ+qGfjv-+>NJy zu>Q}T@&m^pO5q%NzmNfENj9=NfG{IV`HP>;UoZrnxckb zlXZXTgB7H@NDo9Lc56O=wi9J#WjJ^4oS>Do0Y6{~*axy&o%s0Y$3-@otRnL>e#eR3 zykH{+B@o@{rV`mgGm+iyMsabm$oxN)BLT#inUqohta#u;e736zRPuPF=+I4=#CKlaeyfj;=!3gv49DC)!~ z9t;|e`c-DEz4l7kh7FGcrMFGDl%RQM7T*7Gw<3TTUZK+Ds2BuW*$(WMl_WSmDG5S_ z6b~fnMpUX!(f~@*B@NI>?I719q8pVOG1M+f%#z6zEh2+5Ks@Gz;~)`pTnQBWH0pmv z(vA4Fd*K@ckj%#N!A-D^bPBgGKzdKDPC;7!Je({4kz$jC0SZq10GgCcRI8*e{&D+8 zcr4>Ef9rW!5YdRtoLjy$hMC{h8XiY}<>fFm-6IcBHn2&QJbQ4pqL_2c--cG7iTu`| z#n7m2BOS6OM^i4I@l%-lPQ(KE+{%9z`JV&-g73NR!EF!@=sVPo8dE2rvFEG9Fx#$g+7>g5_OqB3BO=w@6GFI^-lJ|PAY%TW~auY*ulR} z#ZE%RVj!jOyB7sjmt(HwAH{Re+YiN*%+fG$>;LvjB#5gIm~v0sohUf33Yo=ormqhI ztS`MD%vp9RG7C%o&h){|oM2N-OCJn8c@bvJFM!*kM*4mKGkpL#eelh>IERlvix+pw zoAgLYWF_bydJAu#+kt;hRgaRM4L^?o7_@E2bH{#@_QA(kJWU59>LAt3V z;_UP@sCDS2u;9bBZ%kEzZ^kHsQEJGAUaLcDw{SkO!;Zg<*fE4I3(7jyo1&x{(>qx=qMY8=%qt1>=B=yMOKj6A(2E$v55Q1 zUP4WNbt3-h>4U%SbWSMyBtgPv-e;3qt!Utc0BvI@@qEwSiUK7B;GokSO%Aqn-zf`{ z7=R-DCcho!DLLR#8lA*s`eb+`+Q!-y#mr07!$xuTf|P#@^iin%q3Tz|v_gVogRPip z$UwF}6t=wa}J;lT2K%eH{4|3gnp^NI%sJJ7C$HQgAy3?mv_(Y0L6o-Db{5K^c$uRP!TA@cV@4_tfCubYdS6e;IDtL4|sqjN{WrhrY<$rFB!H;SAmVJ zBWoDvOe4ZtZ8~{ta{7RM10FbRq0hMn#rS7aSCWw}JC(yjng6g?vib8DaHi^zFz=CR z#BCMUN=~VWHei2f^N|jZT=lij@2q^(FwC`;LnO=e9NA zyiM3@khV+9W zHSxZaB0#1t8#=0cqNE6rtH~Fn0RX9^M`R6HO{O$FDtOW0$eq4B>>`Z@hW|wY7;p4K^kZr`~!4{MixKD+<-%)Mli$p~GrPa+!Csag3>6Cr>Pu?H4Xb}N zw!~*jj==7-3&+Am`-<%16zbE3O5+q_4g)N%eGnTK-6K>Qn{i`+cKZX);7%}|(O~~5 zL!ByA8vD?ZDclBZJU3kWec=O?sAfxu*tzPm8-*7iofLHSy}#`gUVD^SxYB1ZW;m@&H{7M_{zF{_M=2OI0 z?x+?mecL*0cxn4N+q(gM3=lq`OLP=EYg8YA=mu{zc zG5M8~CnES%L~Q2wOc&x40FAeQh;-*D9Umaqo+gl&&mvJ~Nvtj}Otgh=w7D^6bz$7< z7IaL{d;-Aj_TrX@KSOI2sPNh^ z8*$($NkI%&4#@MV2x>@wRAzrA%XCc7d;(zq8>?YA6o`!}4>5`kP|Eaz>6o7R1VEcH zcz{f&GYEem9zVZlx)7gac+D-%$H`L;7*aGyBa;@L`8mI5x=@k~q=3(=4Oks~Nob;N)qlpw^he*JoU`Q?|G9XKTckpxYnj}bX( zf8otH-;^A~?d6Ftd>niC?giJMPX(2imt#O9?=MTLzz5%%nM-A9PM$o8 zWy_X{MpQ}?06wtx>Z`BfiYu-VjQjWR2cN$(7z`+IwI=Qb7I%O7^5sI@R#O2A3JTEL z+KQDcSK`2d1Bn4{POiY~k?Tk3f}@q+tn+4nqIh79qNwT6&=7LTDP-CO3bXn98^FP1+i_Q%n)C(z#mu zeLseZq8LgkrWb5~KS6!TB`{vP9BCIVk2^qPyK%H1Dw;fl^J|dypXO2Ik2=51^@9p)TwErbRPHoi3|Hj(a{8{LNSg|cU_O%$2LnGO+KEZDw@LgaCLH6?J{;YD6cdB;2mBHOyt_RG zH(pbPx;Yo)!0vrXPNqq+_LeUwP?v>OcXr_q+lG;uC8)&b8BzPxtks ze(6=oOK@QCXXqcKgUvn%o%wfQ{dXph<3~X#O7MTyTYRXQ4|h3HI@5^ShHH}72cPWx z5aYD(=;yBn=u?A#x{)*l{;>e zeu5Q^6eEG1&g*Y~;W9MTrlVo82gMcFPfs6=4SQio)1bV}f(IUn-PK7bLDN1Xe!lqw zti69V)&|Il5>th%8q;vk5AIEFHu0p5{F-RPLx+-PWWvpx8oqw~AgKUEz3~`EKm9`J zwfw8Tg`@cwh9ylnoi7|aijhw~$GpXhQPI$V;Xm&~-RP9p78l?`B4mbn^hx44edEY} zQWYKU8v1AtYKMczkrk`JrHl}B#iB*RcjSK~Wg^B**Sx$uv^MQQ@wLn30cx^`#Yd3m zpEbio%*-UV%_py>o*n^mrn4(nCo(gChFM)*4e!c}#92*Vk&Dmt=sMQj9sXpG7buc8 zsHV-h9zthk_F9?1uzp1tWOS05Kh^AL{|Y5*mQMkkmob2|XU_^|_L)Q9DDX9P-IaeB z>gp1~IcDzs>J&=WuE5FJmjnS8r1#^@nKP)VsR6tAk<9$Rn@aZIuv{>A5p(JFEAdsy z(qJ!8eFIETTU#rbqZ3QTTO~O;IbsoZQN|3MF28JQAn^iX;lhRBZ(5^E=65W1Mn(n> zA3lr)3l>P28ATmhr9?A#baaH74;_9wB&s*4jor*w&z(CLO-)V6%*>qpKE;m^Ge2YI zy1F`v7av(oF%pZtCvo)XQ7m1$RE)Y%VzC=&{2L8*iql*G@JfsutGBmTND=zBlh+IL w=FJnIriQ+A<^Q~W#L?ZRP8y+K_w&U617g6^k)#8>ZvX%Q07*qoM6N<$g8XNXp#T5?