From a2bc4dde6725f4df19b20523adfff3bd16bc1b03 Mon Sep 17 00:00:00 2001 From: Carmelo Messina Date: Wed, 8 May 2024 15:00:50 +0200 Subject: [PATCH] Cromite Branding: #884 Fix logo --- build/patches/Cromite-Branding.patch | 730 ++++++++++++++++++++++++++- 1 file changed, 718 insertions(+), 12 deletions(-) diff --git a/build/patches/Cromite-Branding.patch b/build/patches/Cromite-Branding.patch index 0a806fee..f3869d2b 100644 --- a/build/patches/Cromite-Branding.patch +++ b/build/patches/Cromite-Branding.patch @@ -4,12 +4,12 @@ Subject: Cromite Branding License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html --- - build/BUILD.gn | 8 ++++ - build/config/BUILDCONFIG.gn | 4 ++ + build/BUILD.gn | 8 ++ + build/config/BUILDCONFIG.gn | 4 + chrome/android/java/AndroidManifest.xml | 2 +- - .../res/xml/legal_information_preferences.xml | 12 ------ - .../android/java/res/xml/main_preferences.xml | 8 ++-- - .../drawable/themed_app_icon.xml | 32 +++++++++------- + .../res/xml/legal_information_preferences.xml | 12 --- + .../android/java/res/xml/main_preferences.xml | 8 +- + .../drawable/themed_app_icon.xml | 32 +++--- .../mipmap-hdpi/app_icon.png | Bin 2435 -> 5784 bytes .../mipmap-hdpi/layered_app_icon.png | Bin 1836 -> 7839 bytes .../layered_app_icon_background.png | Bin 1487 -> 20191 bytes @@ -26,18 +26,18 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html .../mipmap-xxxhdpi/layered_app_icon.png | Bin 3652 -> 29220 bytes .../layered_app_icon_background.png | Bin 3519 -> 142032 bytes .../chrome/browser/omaha/UpdateConfigs.java | 2 +- - .../inline/BromiteInlineUpdateController.java | 21 +++++++++-- + .../inline/BromiteInlineUpdateController.java | 21 +++- chrome/app/extensions_strings.grdp | 4 +- chrome/app/settings_strings.grdp | 2 +- - chrome/app/theme/chromium/BRANDING | 8 ++-- + chrome/app/theme/chromium/BRANDING | 8 +- chrome/app/theme/chromium/win/chromium.ico | Bin 54121 -> 79443 bytes chrome/app/theme/chromium/win/tiles/Logo.png | Bin 27775 -> 32045 bytes .../theme/chromium/win/tiles/SmallLogo.png | Bin 9784 -> 12363 bytes .../chromium/product_logo_32.png | Bin 822 -> 2301 bytes chrome/browser/BUILD.gn | 1 + - .../prefs/chrome_pref_service_factory.cc | 6 +-- + .../prefs/chrome_pref_service_factory.cc | 6 +- .../profiles/profile_shortcut_manager_win.cc | 2 +- - .../settings/settings_menu/settings_menu.html | 5 ++- + .../settings/settings_menu/settings_menu.html | 5 +- .../strings/android_chrome_strings.grd | 2 +- chrome/common/url_constants.h | 4 +- .../strings/android/browser_ui_strings.grd | 2 +- @@ -46,9 +46,14 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html .../drawable-xhdpi/fre_product_logo.png | Bin 5151 -> 34576 bytes .../drawable-xxhdpi/fre_product_logo.png | Bin 7720 -> 60959 bytes .../drawable-xxxhdpi/fre_product_logo.png | Bin 10740 -> 93273 bytes - tools/grit/grit/grd_reader.py | 35 ++++++++++++++++++ + .../vector_icons/product_chrome_refresh.icon | 93 +++++++++--------- + .../chromium/product_logo.png | Bin 1562 -> 3577 bytes + .../chromium/product_logo_white.png | Bin 1417 -> 3040 bytes + .../chromium/product_logo.png | Bin 2714 -> 7923 bytes + .../chromium/product_logo_white.png | Bin 2512 -> 6790 bytes + tools/grit/grit/grd_reader.py | 35 +++++++ ui/base/ui_base_features.cc | 2 + - 44 files changed, 109 insertions(+), 53 deletions(-) + 49 files changed, 155 insertions(+), 100 deletions(-) diff --git a/build/BUILD.gn b/build/BUILD.gn --- a/build/BUILD.gn @@ -13209,7 +13214,7 @@ diff --git a/chrome/browser/resources/settings/settings_menu/settings_menu.html diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -2164,7 +2164,7 @@ Your Google account may have other forms of browsing history like searches and a +@@ -2158,7 +2158,7 @@ Your Google account may have other forms of browsing history like searches and a About Chrome @@ -18147,6 +18152,707 @@ z-aP~TXJZ`-(Yg4YH}L#8=YM{CKWmuBV|oH(e6M*W+WLnfYBCzOQRGLiPvyZq6&Nv6 z4G!>zy1hcOdP%7GG2>1P`Or}=o{p{?6G1~J{`Cl{gUX-*clf=;TVY)NXwP)pSt4TybRCodHoC|PNRhq~D-@TpgbRK~`c!Wn_!XtnP3y3_HVJvsR +zRTqWN!g6>#@GV(?c5DD@C +znIy6h!XqL5xaZq*Z{M_?PIr^kvRWJNzc_U-=ezgZ$Nk;!eCIp2ga0qGWQouX&EB>u +zn^{a@AttcUMhYQPIfuLG|vO?>w?#;_O{V{8whdlBNF( +z&pKyEMYx3`^bjtaCrEng!4sU^oyh1~eA9t_5&e^P|};O+g>7$-1Cvo0K`w +z0JUFcA01QxMq6(j_BUG|)|4}&aU+A?vnBI?!BUrGLxg^?t9l>{_5kbvg}Z%YRRiO? +z2wG2#{y}JiuptD!q|TK +zNOz_}B_%|$x$WI@o4>o(3;{+?dR9BAVcJjr^)z1Jzje^ql)f(<0Sa-Ot2J41rTVmu +zB>bH-Cd|bk$_@y66F@YqR?IqYw|6p_cN(L9GbUvgxDgCsh$9UTkC=|!UZHNCD72f9 +zc3q017{E$fWPR9nvi=NecK;`iU%LP&RN1hYcA#`koV1purOQfvAhI*leKnqS??u}! +z&q}lc%xWaY0U)UXl%Y-LBy +z31=G5p?YsEPPAM^s*(gDG?jrB0E*E?6)tnlCa48~7|lQ{6zr;5U%nX;Dq2>yOn|dU +zYkQ@-y1K1!S=m1kVFZ9Lsw>^UL4=kqTQMZ4Xp@OCmO=dhK1#rm>dNvz$Ast6|O%f2fFzE429Anfy2x;KTlUHa4Bu(dq~md7T1CWsDs*SojHxTcvz%5>Sz +z5pR`yi&0myyqM%Q0I-K1ftXiVQkG}D^x*mpmF4dsLQBfZ`YJ)5NsI|#auVSXlX9qf +z{n~>)*0cU_?`!&y{Zl>RFCs?zJ}ro{;nPvjC(jsI`2&7z-SZySeEJT)(){SH*r2m{ +zMFcR~(F@D(o{t&hrW*hg2p6w5;orA!!WY*rB8Ak5ysXwB!5?>Mx%=YHK`nimh<<_2 +z+TmmWqSrm1`p|Y|?-5}ZLCh6QKa>018@@=5@-}Q(_hrayl`UYPQf}L;bMMQwY~#nh +z6&2^AJl#GJO%e*-qX_YHfaXT+`K|>0fufSq2L#|I(BPs +zaX(_7TQg#um)XdcYEStbm@<#`DuD)c-jseVJ@Sh^H5)KZmRv?;oT_1RuUrhv9th3! +zs9Scvi>LQ*MlZ#V(e`xY+MF1W4=g5>HFNv%xeVmV{+Tq6~)(V0R3p`k3iUL +zg1Sl&&jZP87kC_u2D#rH(v)}OzS$bTse>xp{;dumfbFK`ehJ?;2E9$7dI)|rbe{MV +zLVDTda;4yAV*Z6Jt_V-^s(#&q#S=oI@<^|29%}%}YZRa{Ov+e*e`V}P{9Adgg*`M3 +zpveH62>>>3Q;-?sbMl}ns&Uuq&eq}i!|$LVxi^#;>DeSwFwCBYial>)RNhGR&FYIZ +zXBzI!pM-s%)WRVF=Z@Y9DY&ud=~3?U&{E@?k7wqLZC~0*z(n +z-$+mPv{|(_;+W5vYk!oXfrKrrU9t=Q2rTvx(U_&nmanY#tXtiwZ9O^d1fUuTR9#hGX=Vc|Af*X<&0Do@ +zJ35I%*TJ-WgU9WTFdUUVkszX%NI-wdYkHh#C1BXs34oAS%utiiH#O7ns4N%nX`2CR +zlq8Hx2vh*ztORv_r}iq>eM&^`(0vdOMWvT1wB$81{@l{RCh!NC(voOFMTG>_lw1#h +zu+5A)hog&PW?{CdMcayselpnzahPw&7s?%NPqy(|^UWGpQc{xD^E@lTZaxuxVSv?3 +zO_CRGhpvDYz`3S+^pkZrlT)#wzNrx`LJg)koXC=)!X;lz^bAD8Zjps3ATnN!PtXMs +zF&Qr!(OWU??JoyocYH|j0TF&mp!}%D+Z*|?^9|%v0wMcGxBEhjBR83C3`Exzki`+p +zpsAFv7)})pg(a>f#Ke(yU-0XA%g;$e05tU|SmTS$MfY5_;f=xVlL1ltbJR-QLyrLg +z0^)S{lI?=y(4TKWCm(Wxof`pTn}I7=u5_$kz1r8|+F0q-wn$>#9-qeb@>_+ +zz^Xv`4x~aa6nPW1swkxNJkQE#iKIsX8PlgX0)C|0Q(&{%FtB$&G&LNS9@l=e4_MGY +zvtKy(+UmQ3%fTB^h(H`dI3)Hb_LNF0q~v~1bVE$Uaq5F+&yf~)Uq#6vVSsfd5>!IS +zYkz|ZBnT015RtxeR1@?>XF!GAMD9;$^Hx^u?{Tm)a5_4lbydRpRm)`~zpCGy3HjsD +z_SySj#D8o-78v13$LPF*P<%@Y>Mu3oQqYe+5_0a~Oz9L7NI+atU;sa?OOP688D9$H +zlo==ti2H&F9$|(Qr_gH5<@HOJji(zAGr5I2XA&xdyC0zYn|59zm+2#(J9j6MI%Pnrm}#3nZ9N +zx2Ks3U9MqqfclYnqPJ{zjSWb<>zAn|L3z{^a^qM{#^IykR5yXpA7UP}?-vcA$RZljY +z!PX0P`k*U%Y<&s9o`etCFPPdPc`mWxEs<1uV5xASP#!@k{)6c8BGUIAyWm>GP1v77gl+froeHIH*((B~l +ztGGwzS^qeBas9kK-mL`uxINoS6!NZbo;iS$gpJ*Ufd3gx|DoqZW&X2X0=ixPzX61)0LB}eD0tGdeoZ~T +zRq;CjO((+B@*Jl!(+IgfRHob%!>ZVxC85nGq6bw!4iuJ@?jq(o24w&kO#$2sCcWpX +z>Y3jLFn$MMkt}N1NQ4W4Hq?Cnq5P0#8V1XOlTB4IYG?rphKw{q1Oh>ob;hifUlf=B-@fud-?#>P@Yzk)>qI4NpJY1oa#IT(2GR46TqEv2?kCOi+}ZcD!k~r +zjNGiuw~i<9YJg`L)24cRj8=d@V(`!9pk!aHm?W-zp}R;#-1S&Gv0AS-y_AxkJqm;+ +z`in)OSUY^J-t}whWDd0;NJ%d_pCJ%xJM$ty3*I% +zB$N&i?(aVe<8z0jmov?r*`hF*nh4^0TdR>*)orpa{MFUfmTUOn@D9{|u?In+c@Mf? +zDMUB5*yYN#1u=$%T4&7jM@e?;Nr8Z)cU9Hu|3(*8ROGr-*o3HAzy2r^NDmog+o|!| +zE-qf#M^Rd}%F4>7c=lNPE?&Gcx3vdD>cVwy6QfuQcF+{JSt& +zW)4&}0$7s3wqC=|&-a~w@+0?D{QCWFe|&Ap62>fgBfMF3j6 +z2bRku22@#+KzMlMbW9okH*m=AUzorW$fpTy&ZM-y@57R%Tl#}RAzo(|$P+mG#@ +zdZ#1v8}0fnS${t0aakT@7TGaF0KKqL-z3+!Lh$cCUi|!CShDmj{b9CT3FO@p#z_*& +ze7S5Ng!v@IrzFJtS@2%@huP|3$&w{Yx2ygKqk|g(gO6mB00000NkvXXu0mjf6%Eow + +delta 1556 +zcmV+v2J89x8=4G|8Gi!+003G+crX9}0oqVZR7C&)0AFKhUt?%sXlPzyXkTJzU1Dfp +zU}#=rXkcV$U|?upV`pGxWnW`xUSnurU~pezXBcSDU1DY#XVPF`U|?csU}R`vV`*S; +zaA0F+ug~{hVrXWZ^=O~>USnsj%lfX%`emKm%=%wqXIx`u +zUt?*n&;J=`(i&#d8D`QNXwt39`e0>hWt{XGXVPY#^{vbLUSen%WzrdE)2_?>7-rNN +zXVDsH(_dm|V1Hn0Uu0=$pYL8|XsyfnUu0)yoAs^C`e&Z@aG(EYoc68C_g`aZ|NsAH +zo%R`L(zw(38guBz-1)A{`qbt7Q1cc +z?Oc}ejJ5chyzJrY{iVhEZ=&`$gzG19)Ha0cYF`a6H(>+}BN?E2g2 +z{q^|%xYPH-*!!)@^iz-RM1|&gsrTdT{&=YOHhR~%(fWa|_r==#j<@*Y?f#m*>p+6! +zxY7G3aoJOi-Ph&)smAUsblcP8_eqH9aHIF<@BXjL`qSg~l)Cu3CQ?rT003KbQchC< +zzn>t0-+y30pg +zpb$`SpYKqw5WjzqpI|VMkI%obV9!rqkbjRb&me$+&w!A>5WiqId_1cF00WdsL_t(| +z+RT;(d*nC_Koy!Wl$n|Nn30_mZoZ}R$q2qwfeG!sw7*vdGKVm +zBX>g)t-2n=WzcW+z?JdryP4vbAKqtd|Cz7%H0Xu`JVXyJomNDID`V>D0b%<3X~quL +z>wkM0JN}MxUAT&_kl+kl5z}e_#Vl<<*wJ4soeF`T=gqf-_>9@`&hc(0uAg)*T)U%+S#8kD7<1DV4J2PG9nS| +zv~9>!B3nic9yIJgexnSr;M@E#FW7HDDSt1gIlpJwZ|seA*L~~*={gG%LqkqDPp*Ma +z3tn5p8sG9D2t@{Wu`wK{l%7s;t~n2`qAtF1YN!F2sP`bJ!w6Nu5{9_z$phIRd&yFA +z@I%$GN;Sk=qqZ&!{eZiMR#%&YsFCY4sOb?HKF=^IBX{+2rmHK-Q&6L0aj~n9I)814 +z7_~V*kCl)TKW3r@6d$oY5)e3O@g8kW@L}#si#f!YyJ9<#GX=c_L+*-}2$EW>kIlud +zbk;+}n*qQ@^e*gr^gy|5D`E$50+&j6$e_!0=rZn8&++^`YV)m}MH#&vmx^62TD%}H +z)W_xW9w7dF^R11pZ|~pS12*EOIe)MM980*GkkgC_5EM}PHHwm9v8$$z$bvN};lWh! +z3EQ`>dY+w;t`7lm8-@ilOS)2h^;luE?y8l$>X+i$D_u{q-RrJ(_LG`f%GED*Rrjj? +z-xqdmz6{sNRC0(NQ>w?cqmp@Yb<;u6r_wzpnC$k?I(_H1qedUc1x +zp8XVJ#}2M8qGo%x#>Y>I>(i7r9A1`dU)tdFZ@*{ky+fzY6}%@5EF{{Y*p=uqF)#qUyFMrZ3OLuwmnx<&YX4A`c%s^#0iIqgu*M=z`9++Y*-(=2< +zZ#ivwo%Wb^T#E1-t}GZpDbu4{RKHZJgHSp8w#c4Us@+g^*>5VQS|WSyY=u>c7gNP| +zLiMFPptAJ!%4_AK0}I_yY5re?hD@YlY?i!^MbzL7Qvk)du3t?@Kn>jh0000pQl1W5CRCodHTnlg&)fxWwZgOvK9+39~LckCbPy|T~4@7iSuu1_1 +zTCu33b*jaOwK`gzcI=2#)X}zDg+U#$5+6=WacmTWOsPC7gg|%;L?8h%2`R*o_szY# +zr{6B;#`U^451Ya??3elG-#!1oXYcNQ_usSs*&F=7z<~n=y}$ +zuItfU2HRR`E65#W>86_&oq~gN0Y|Jq_{Wk$itrwa@><#q5)>%dKw%!_+N;1=BC$YLqRcsOsP>D +zeTuNUZP5alm^2i#FS!b-@yVI~fWLT0>&e-0U_uDtCZ~}JaPa+y0kb}PW17%KF>mvp +z;H}+yyAS9AvpbfTZx`qe=L_t9tefa}3FhBoVq$Q-7+e-K%A|hs9?2caxN34IL +z`4L&JC`thw^av5wmDyX~9894u2ZRR-XueUj#+7E>kHHaMOidbw%(!I4y1iyhV|z1> +zeO-&Kbw`jBo%kK0D*O}dbAQ#r<@n>giTLHp^L-2(kXE%3@^dsXeG9H+i-s4F7hqXu3B;jnMAH4?ZoN~18yiSDufW5ji-M3w9i%DysZ!Q#A5!4$;cR( +z!Zra#IkTBgzX6xaWeV2tS=)oY!_`$-QTlfrY^sA7Dm&IEmEXO@zO3a85qvam@>-tf +zPvF2Nvnt9x5JI)e*iX?8a>wA7kyDWpn_!C25agG&Ut(X?e$+P9nPME0Gzb?ByAbKg +z>4x9ZrGl#3V|cTy7+lM#5#%ARKNS)?l%|jzO{S6i$i0mFG|c{uEI5Gv=jHn4G}n-EsWe7E<4CWuFS);+{W`PWSoU@@ +zkAAmN@YgLhRG${W&vPatFC_~ah1%ioK*`omuw?gYoX|QD?}~t-&C|LcqdWt#aQqxh +z88g`wu)@ESjrI7``gd@s=_H~R)$*XG)lm3jb}d|XvKyfq0(scRwTb*OFHDV$GcwRL +zau)d@d6gwLi*aAdxVbd1lLKw~EGF+`?6Hu~u#KjGypnuK?!$_Yxy|*AyB@$Ya!82( +zLHb_|>GKJiC&{jnkk6ceY5>*d^7z8i;jDKL`a=fG{n0m<+Gv4d=z^$m}_?ECfvt{sv +z8v88nLa2)^LVc86N9K}qB`+gahHSQ2X3Qlrvt3R$$o_7o31&e6uvONluO^?T|1}EgyJPX{)>Rmpm5bEGRK$8?aaDE!w(Tf}$K{6jmKu>S#cC(i9Gb_24;(!4 +zf0oPJ$#?0WM|&6{kV1Wm@lVM0r54|BrG20N2QBSe*xyFlt>lGVzMuY=5CSRGndWU< +z3ZAiV(B3YEx=D^RTjepVq^T!kWtr+tbOCPny4)@(*0>Y31)^Axx~IJX`;Q*zdQl8i73e?;MJ~RjCFKahqf*uohxgHYxxsx6 +zLU@d@#`e*dBnYLC#9Aq>m)B(7dHU9s*!dk5Q)oL+9z#G2nDx;SStIbssB3Vby}=Y+ +zD2(#f7rxWDJAW23k~2)P`Z|0lJ-Qb$F4gXeZtsD(W}+`3FS0B%h5G{BEN$7j`Xz=$ +zOBZ*6DrvKM9Qo&|SW(tF7?-)zL$PjetihpE$IUuvgewAbrp&^xMqh`6{#I0Uw4h$| +zF>Cs;zoQwAdH~N(Sb!_XT>*hJS@m#D6-w$VjEAmoCm{u=WT_||mdWv8vYZ&OJ`qnK +z*O2%2R20lY@6rUnkW0C3v`vxza+%eh{2qc6eJIu%X(xrLS_Eswi_BT95EyOb9sPDv +z;Qhh{)i-P{Dp7!+1gotIjgehfRh8q;s5qn#NJ4Z}G;X?b9tv{CVRz+T)HIwhMVZBk +zgR#TMAS-=H@Pt9Zo~hGn^uCO4!2TX(AG_qN%*B$BvpRpE +zzX-j6QJZCdhA3Ymr&y*&LyXx5dz{V8`W!iuyhV!AK#}D*DtH`u#>^NwN6zL2 +z(M*0!F7Nj*U-Ny|6%^d9*0-*V<#vkF!_e!}M`CP74hDK-<;<4SDNIcdpt-%(tgF&z +zwgun1YHVr3x;>jvd}u2Ix>mIFu9t7?<(o(uG#8Q;a-KibA4wBW-@kj&ry+iw+wAKm +zE}AALT;KGk&}j76hx6NQ%k}|mZ|q{f@p9_7va4(_Uv?Qr9%tMU^kXPCFJEt=Kr^jk +zHAs=6InaSr)s2hd(#)5y)f +zLg-1hLjZ%qY_I2X33TzoXA2gW!GVKw^pDvxD9G^?V*y2(O&fd&^HIb{DB|rx7iIj% +iY}Ghl;lP0d2mb*n*v&t$?XgV&0000q^Xt$#qIjbq*hoeCP<}F@}pyhTDUEFqub7c^sXDEtSccQId`^ +zIgeqjc9lCDzt~#xh^$GCt;6hPbL;cDf8f5K@B97vd_Ui-u+RYG9hN&lAdqoTpkIVe +zw(1DFO<%`jeRGe3Kzik{;7EU+x%vMAf*!ZP03Cq5ouk4~<+=tsrGu*i;{X(89Z8W{ +zqQ+5mG9+aUL6z#FRA7@ftg=LpL(pUYB?FtNx-|%z2SMqapV0!v*X5w=*D+KnvThAk +zFQai(mKdHTX50cf-p<+36%fIpnj9lxGEfV6J57X8~(h2ZmzCLA5ZaoS~guWDrqtxwUr +z`6X4?s4BNb?wLOyRQjQ?U5>jeuk2Oy@#LgD%RZ3joi +z6Uu4BYxWuZsYT6C)&KO3sl9Fu3Uv24fsY7%1#QXw!0SU}P_?qw@gFyNzL4LlGxszN$ +zR#KD49)nL?tGEa|u|zc;X9~+9zn4gy;`120&LkWT-kghMFp6iJl4GMq{4T%?=gJxN +z#*41Q+g`fob>pfT=lhuBa8q=Ss6^oOv2m&1%40e$McrxEt(hP=B%IB$_M*(VnLg~_ +z`pAZE_~Dw+F2ZKBzlo{jm_OcF0pQ3=dM&QNEf)qt_=!hKAa)w`_8RVLGGh5OnweJ+ +zT@8g)5Nt!-cFK;IkA&=r;U1IH1CH!#xK;85BUnwYeH11*zzvs~Un8rVCwg~*YtoqEP!~Ol_M&-{QTmxg? +z$oC2P$%`FO`Qmh^@5U0C6m|S+Fdyo6XVN4n%NtnQOIPZ_U3+NQbD5;Md+Zb^ +zf{#!1!ILQXyX{+JY=gsjMcbIMtqk&12^lmy(|@$9%LOzo;loW+!@nHj=}X+b9Dc95 +zQuefmuq%TZwRr8R6Q&sJDb=H-zaglz#RIE3620xy879T$`~P_9hy|?co99%X&8OIe +z*7s?hyR)+&df%?ys9==!mm;y3hVjPGlu^edm({7E*dLLy>>ic6v%X7URvsm=+8l7^ +z#N4IO(&CnZi#gbiLRnslb7fXQ+|a_!kxbF$TYCvMtxfS+XPG@l*xo`J8-mqH+}^25 +zHJ5hgZ+vJY4~NuXhBI1X563CE_)>%s78v}d(lC16?;~CK7+)W@MVKBuqd{K_0P8zZ +zjjqU|=Py*9CRS4SwKb-FReDm8lziLNdt;jdpNAY+$Y;ZR0y+tYX*J@BC#Ss2U?FWH +zc63Y@-#o_5`r-*im1{>t;n<;bxX4A1{;PqB4_HwPZyUcGTJbUF+OL?ew)hYO;fEGT +z*=!tIT*AufT*YjBQ%f=Yv%w(o{0oFZ +u@0pwa7KSc#GC7l!VPY0V##_}T>;N6qa~*pjrAb6VRCodHoe6jpRo3_ar@FecF9{(D350ziqAa+K;G*NMqu`8; +z3wweIpy>C`jL!4T^3E`yoc$LVF3 +zUZ&`a0x&#;)k9pxNxeME%zO3nBL=_aX0iLDTOSaRNF)Bfk5^B=B+L?V$y5DLBlH@sIg8^8uI?gx;Bo?vtdsDEu| +ze^mni5+n)mT~RjM2S0hMbRHxUi6nwh(FeZw{vQS~^Z$T34`7Szv7gTYRN&@KX +zk7SWl0>fvOxlUuo*n|vRkaHGB4;q2^=-9m0_SQGIww@RZiA3`6g!HlAxS@1BgI@;o +z7*AiRu`qh**|+*ih1KsGxUO|Om!@GvTq-UZHW9glMqcpAR$(!zz4n@5=l5Z +zuWs73dH@(}0gUZkDhUMcQ8+a)+(I*jQgm6V1i;3fDz9|y1*asMIz=@tDh}TrItk|t +z9j{xe38od>14didZf~!I6pw}6d0CxC=Yv;0aGLu0OR5YAU7o&IY}8vjY~wd +zE|d`5E4AQDoCMZc{L>z +zP*gu!n*;C$X3nv8LiN@e)gjz^A#h$&7A_bx7K4*B5aWmjQRn7t{PR#{0s+)n5|LTA +zrM(rORegbmjuuQFnv29BMb+hY<8aLpd~$FHK0Le|_0G0R1-N)i!IPDcNcz3gYw?>z +zxYnb`YgKt!@tu%Ji#34a-p@b|f`C2ZQ(H6_M#UuInjsT0YT#fvR0jkLa{&ja4+glq +zG>DCk#pK}=;1+Huqy#0Znx^4MZ52K~xDy}fqT1kUgN-N$%=ZJh8~uz#LWC&G8V4l) +zkUrL#|ES0XVNS2{SmZ5^t-_5f(ncU}!WGEX1NT*%3QcIHD256%n__Gu1wr_MO?Sf4 +zx@vs<`8I4gybF!44yfIA=S(TSD;NEaM8Z*)PB1B~l7JTL-Mx7*QGi&5qjs!b{X`8yR*q}XDRX(JxQ +zpaw<5NxNOE*4x>NFp{62pX!1-3Q*ePqv+s@6)Tz%B+Hg9i)v`oMiFbtq~Z9QHO2dJ +zx?n_s5H{xCb=LrD7unFyO+cx0z*bjQ_S8}Qdm(+SH*a1yikbfbAeDsx5Fovu$I>R; +zxG8g-DXKQbW~}oOR7FwX*4#MRRFC5)kK;sR9bC?KfE2{W#34O74e2QZ5g!u|qD~7m +zSgQ5?ZP@oQ-u-G9Iy4s)z+Zdozb5 +zdOf}tMArex4&bhNgP32}J9&yi47~pZ5#0)=6aYt{;NJ38MIU(_doF|TB%+Hg2do6) +z@h=Bw{NMGmtzOW?sEQa!HIQDW*~Vka^5lAHv%prbJg)|D0Q>h+rCFPQ^~s{vd^ +zpiEd{-T}f(D%_8kmX_Ax-vVi|&IBkG5C|gHzw`A!btoN~oqI`!k&ERnPx +zr;yrtZulKe1G8r@OH`wrk2CRnLQl{|04^Ffa@>!HkIKD!P3g+#;SaWD6Y(T;lBqz9 +zH-$UD@G8OLIfB35Xu2*sp=v6CP4LC2d%a-#83@yXURnvd0Yo><&nvu#i62~BTCxs7 +zK%k)jP3YQvHZzR^@X>+=1!oIIc?4vNhrfzB#=RQ$RrOuN3+|e+rsS!w1@2niLd|G# +zJ`PYp0LNz{fI@|}JLlyWE?rw%TpXnPX$BD~UEQg}H9=Vbc3Q%+egM!}9-)TT^UVTz +zcF1<45KjlNE3mLHy%rEZ2l%2M?+4L20M2o-de7Xv!e3OB6|aCKa(%2fZ+X`Eej|Yq +z3{KX}j;hOsny>$UMAe3R-9mkF!z=jF>yM#m-+MUL(S#vt48}VWFg~hlal|7@QL(e( +z2>$oSFJSqrk7MJ`O{O3#qy#jzYZ_~@e$Qt7T^DN?Yp@aZ=tE%r+$OACq#(@9Sy(vH +z7VY`~MDs)F1xaV{bMqG#<_B3};QU2PrZVVn1SBH>HenSG5RPM4Eug*RT +z$*~DOzEQ(^t*))Y%D=9`Z+E_lXtE*49t($F2C_b56}u_2N80MKY<(GC-S`IDo$Y?b +zm56Y#`Vd~N+y+eu*q{WH{a~s}_6Z0hvu4e**%YiJ;A~6eL>&t*V&?k*{wbKt0ek`r +ztkCU2T7nr6;yqvC!d`tjhAxCnxc!MLfgXhqypM_hn}Iu-F@p@(1GtRA_3(in(8cxs +z(Er0J6PWQAOV{Vy%=}o__1Wg{M~B$`knw}15pO2YSdSCl1EP}7HxXVB<~HB@%CFH+ +z2*O`G?;Gy|;|nmmEiRK9Fse*f2J->4eat(IIz+T9V4ebno`nxwMvQzx?y-W!d4e&I +zng84Op3^TEXE2f{>b +z!hoj$c#Ai4xz^#h=jo@PX!P~L7EBQe-9ug0ErB%z0Yh95qL}XQ{IJ&Uc;M7A<}F%! +z7C~IKc2)6auj3UIoXwg=RGFIr{78?#`~&=xZ&*df18h;OhjeT3pGI(f2wwe#9&N5x +zpxm>jwCH(n;a|LjfEC`=Xr@iUOs{o}pRXw^e$euxaXv9#24N7oIoGfV^=wto;Tuv> +zT5MSA#$uwoMhvk$%cE6)D=#aWgOH#{tv|wGF4Wum0=)U8vlDdDv#hE`1YGcS9iqqP +z<`sNcQC9K^A`KaCMVEtvORGu*oI7v?9IEL8@E-Z(a^lsG-o%T?_Zn7e9~(v(s|)gj +z+uy*JecOB@34{>HOwGWh*|})YTnHLQ*b-|Puc;suT8{UUE?5iviK@YxH6>ft>VFr& +z>`rTkb|WadMHNg-bU)(#p2t|bYQ=87ljt#65N_oW-%CQXEu!k%&Q-<#3BcDXBDx=a +zf%$-7y2_tVd2MOYO2ew}#bUp0O~PJnzDO#h%t2%!h4lxY{4o*0_^t=lk5j%IHwz4nO2FWxfxgx%DcJqR +zr&ziFeO(yiz~7{CM98u^@W+3?j@pJ=!xHv!H%uHd9*H&;0vv1#t#Ol9EJ;8ZaDx}a +z0;}S_;4Gn{XLM1>(5;;xAtd;n^0Jjh2!i>G7JtXbuSry*r^b5~K~P>=^f-WbEmCsz +z!i9yop*0y*(D=rlddP)SE$ty;%J8<_`Bs5eImjDgM?*`7FvBS^g3_w +zgJ#r3FX+(##|Zp8%YXSh5LrlJWpEb2889HPc~E?Gs)Gf_CZr?Q5$$8Gwso}O?Ohv? +zOg0b*-;`KI#k&oMv337;SP?8RWMCF9Ngr*F_#*P~2m~Ipn+D?4@QlKtS(g9krE5z{ +zJ`d?R3kiO=ytMd=;EhBS!h)iS6(K6gYM=W6x(UIfk&SLCFE81P9;m2zsuqC1SND5$ +z_r^=TTaLWWqQ;pB16CnrA~%9$-kpoD17VEE{b}WnmIs4AvfJt|!NA$ZkDMf;Tmd-% +z;^84qJw54z;|KV3DjDC8o~Xh*$M%}ZQ~Ha+wkT{mxCQ$3D_$-EW=3>WG{$8PN2}1h +z+TDYuCxVfKer8VI;tAFmP-1!sVMIW=3!yRHVlBPAdUf&k(2|uDRe*8KVnLo4f`#_l +znm?@E7-aZUwdK3pw3>rLskaP0jh(%0Sz;Ih!8LfJ1zlILH3H!Cb?er(AV`J{%dCV2 +zm1rs=3Ms6q9%>ZOTWlEr2R#lV#n6HO4K!;^bvDrU_e4D +zqLr?E0&Hov|8wql>qQ~H%=f_wUndzecIpEJ_8>?WE?hQ{fYDxUW@SSk)nvWp`+31v +zB@TL9rYh^2pzjCcq|drG(eL-2t=+sFiYtIFvWS03gIAU>UoL!S;N(G&MBo4cKJ^~W +zfnq_CU{evNM*F0+)`W&5C#w-pwtf~Z!WXVq)6Y62W3Z3VC&t7f+2$~Pzl!g?g}xAM +zVX#~*|Dm~U&6=XG5H=X0AZ)IYzHVqf)Hh2RRf_kyXN05KtnkUcx|7_bwJ1<59iAGY +z|IsY&Aa@AYVx*TX!ODd=wm3$%B%`#%Yr9d^YAmnN+3_78`}f=sfEPdE|gvB(^vCosi&TLeU( +zgjE3_^?oNH$DBDoj$60xk(PdyRtrSm?9N4n=T2zWIJn@eaxy@k=a&H(3;Ay9^MwNE +zE|5f&D}aKXUXXfuJ_z9;uv9V_N~hEWeF|Y{UZSN@HHai^oD3^2dt={hW#y=kXhqe> +z2UnNFYNelkSfCFS6cpG2iVMS2vK5klIjWEQO8{oc2#A|I=dJRBJFV8}s2I4I(ceUq +z0*52YuR^+AozuQhm-aHBeqkjhH^}P%iHIObkkiLsZr2=r)RIhC;);*N#?~VkzKPYz +zk*KVsp%3WU!d!aN7q{m#$maAgwB1jH0|U@HkHx|)N&n6eM#*|ffF>9lD^?f34oO4_ +zs~b$d{RC|FcLL4Ag=SYfQjqlZ1`IaiN(UvSqlvYCb^|a5tI$^Rqz1)OMeXe9*cJM*kz;X#wEpFZCpr*j7!e3T>%04i +z8;K~@VDXyD{NkTQi7!|CWV-X;Mh_($yW_AdPgCz`0C*ox!B$c2{;ZOM +z%8q6nsz2tF9EF)NdGtgq7%~M%Tx}qHGd_2>;`T|`V$gt02%-779`+yo0ted~42#t} +zvz3AW=I`6Kq^JS?OhrXWC4f&Y+IMT{)2jsgU~ykW;BS@-n5JiEnjO+E6zlXhT&oW; +zeE~tj#N2lSk2&&mm6|Ol7`$(t#YSI`jj{}qGj1}$4*~B4EbRG}ygRWr*BnH<%jq-B +zG%h+0Kb$rblM^yf=kDmUxbAT_W7+6SF@3^?z6~b@&27zi|BJ1LwHlP>P}ezzaWvF( +zmg9|{pTFd-;HCvByiD&UK0tO_5x#d;TRE%{-Ite_mw+HJrcp67pm{;-PNP3F0^ugh +zf3m3vlCE@%o2>KA>C^cPf#i%5)(?Ws&SNC3-qBox&rW;=g~(?FR(5(8?!96G#wVns +z($yN80I<+SwFyf{PRFc^W+Emk+Rqd%jBN*ZVsrgbL@PG$cVi0pAZq40h6yHm&d=H_ +zbC}7U{>8MB>OR+79q% +zARZ48AUI%1E18uEe>uDx*$HVF5T6812(NspBL|Pf{nstVpEkXQvdWKu82M74m@WQ1ceD;E&NEci+8!Qi{r6%`-Hw-|=|ErM$G{Xe7M@6iNhmk@## +z1s4jYc?xmfn$qGwThc|A>+YCoo>R>baJEX=t4|=gU4iYFE^=*EU2)CMs5aFuL}rAc6qU&H@ILV^VPEhzoFW?u8hZ +zH4HXV0?yWISM8WSVv;H5J5C<%a$t0|j1Z{#&uw44vK3)O&u#jE{-8_%k;T7ClZh}H +zV0eyU_tjDU8^XvlD_5Rec;}KiLWt)8O83nE1mI3ma3{WQA%Td^(g)^+dbau(5q_*z +zdPK2y)vDdPi{x1ltoM64gAI}WIx)NehWK|06c_40$QeYKVd?yw$lzC1RsppG4ov}| +zbPeFK43(5bcCG*h$^k3}Bgt1x{pU;lp#BKrbzkRIBd5Y)vqP}(64z))G|nG?9wv-9 +z3$tpE;YiI99BVjXPJd0t6CD$etkg_o56nhd@&MS4eF)*TA8Q9$OjHcU4;}?ou_5Yn +z6VC(=ioE`*=CyD60)XSg{VruB&2YKeayu#lT(f{gWkjOq3{5B+! +zDXcG_KWER(e^fjJV2P)iau0n8af%IpIex$tyemgcL5w5H%PnB6*SJ$)M`R7hi0t7I +zg1e_AB9h?v|vW9nEM;8@6Vf`Ok9=vn}_01w1LFuhfDS%7#*UdR#C7%eF +z^>V#866j_9N8{lT`0*3CPoLy>sqxUNZg9rMr_UKN3LE5FI0Ku)YYgxC>PM` +zk`MI3AmiL@|2+uv0$o4hq<4CL+bRB!d5adU0^5EHrmM}QEIo6C!5f+Ibj7OTS0ITP +z2!7CoH5aVkFmMtCgV8B?V2{%CGXz*LT7(lPF0N?_DG*)TgcC!M+npWwvbqwV +ze7Osot3N}ds{<VMrT%hbR1&sQHX|u#`Y#OxXhUhz5=kQ>b1=ckVqtwf2FYQTlG?dF0Qo% +z+zbok6W7FEVr%P)7^v!K#^%~XI8alGhUSxSIy<^Lr5MVotyw_R+-UA-Lv2$%zBqme +zn?B!$m-lVNj$;QAZ?hvgHo=HE2tr&{b8te8F0L`8qP@KhbICH$I8sxki*#k_Po{l;5l$l#iA18JSNNx3oXx=b +z@WC24>L0^;RTaA_vThcrcDCTKXflNJ>j?mDUBkc<%+Ii_PYB +z3i|+je{yWv9!Mk-Nu&#_DXyzutr@fM#5tTby1a;szf4*cwx1O>ua@R7T)v{fHVRo`%HlntSf+fPlr!_ +z>QR@tHnlaI;_9%eh>eOVi;Iq3a87iJ^r=cDk_ZpC>V+HLE1JuU2N;~wJ=|63Wp6`Z +zt$!1Nx3|g501l6?;3H9{c`BEU+yczE>Sd~53lx6Vu?Qr(zI6pR +z0Q?LyKe=i4e|-vxL?SsOh1J3}Z$B{-%(pZ1EqZyjUMl{QwfG9D2qdhUUhdb+m-TY( +z#yfs1d;BF5$+tvUEnNNA$6^6YVdjg$JWVgh=}RV<7M)Wfhi9{liNF)-8 +dL?V$${y%O5_7mmYB=`UT002ovPDHLkV1fn9_uc>i + +literal 2714 +zcmWkv3p~^78=p(M9S#+_RXZWMRMIj2oQ_LYZfS0lx$MVg*J2`(WT+E!nRF_-7sas6 +z5l3o{OHquLx$HDfLKihmGMkzC|9U^~=lMME^S;mb`+c7G{e0eRgzqWMZHC(*5QwIy +zhr2%nqJji{mn~|bP0VIzLLjPX2%kVWxCF2SLWMLUihwU)L1PHuWN}xc%Ov$&DG*Iy +z^P~WU0z?tnybbUq5FHIvh*Roh=qS7ao)1KmA~1ME+%Ou0$Ca%_Vu%ru1Oxm~1cu<8 +zF{4l5fk8AD&+M1tN+kNxd~_6nHK0Iai2#NG0ECE0JfT7iQiEAc?kcWy1&9J2S?kc+ +z`#B{5P_!vLZ0RztWCdgaus8$UPz5LhgJTZJ@ue%wzEzM29Yu^TTL!>E0CVL429GWI +z-q63w;>yFLaJW(ldjNC@Ad4ZM4{8RL>*GcMAR1G;1Yn2;_+b`T!RAUqKwP;b41+`e +z2=XI-*dY+qkT47u5{bp*Dx|DF83+hg0RTip9N!Q>^aBus|IrN`KLU#f0366`NZ^Yl +z3UEswHw4C+{qpG2WiYN!02}qA@MMOxq+9Z^XZ2Q_tfFg`)-0QvTTf?6<%*5DC1vb` +z69#O(Uaf}*x};pO<6M5bi)uRIx&%h#0Vac>{L +zmW!5@(+djggmKt4QP`btIk|~N;1f(u@b?XXxIn2LlNFO<7XYeF(WcsHi+Phav1#l{ +zbY*P8BvecXs6YjpR{$-5rWH`x07Wd;)~=)!P$=4nf&ywK5735o#JW^YQg{_WV}+QG +zwm~3xXIwgX2zCd$z$MM)Oj={*Btp!ii^cRa2yum&O$9S~E**gSH>W)i$mY|Y?yiAJ +z!ujIsmrBF*I>p$37|))KUy?85KPK`vgp)apz~b~#Lmbfa2( +zN*A5R1Sy}p)&`H$o#-yGKN3P8$HhI)b$c9C(t2)wOM13!su*X`J#FXo3q^%9R1SNzfMW^vpL!E&gXU +zgM94mGrL;Tn;QzQHO`t?`P{I4cxm$~@@H}Tm877;cc~oZ*XJhYu-rNpDn44{=b(Oi +zk2H}XSg`cEDT*!Q)%iqA#uJu>mMI)3G}9^0v|9_is* +zKHwT;3&&2>w8)paW;^j{hm>%`Fwus^IK1~*RT%GBeehu&mJR#wd?2*iZaWu#yQEfP +zi)u+u^=>F40;~*kLXmbn{ayX?R9!KjMqxS*Fhfigvu@?@GGYCGZGf5?%95N!2z^di0mO +zZ>Q4G40bd9PS(95p#}s;be)%4XeFE2=?1?a*l>GfHKTv}v~S)NVLGiDi8$Z*tB1GlblZw6)!nFm0{r|FqYzlhDQ0DEnW0U8nz1 +zbztvO&a2kh#stnI5b +zXd;k6au^D(5q3i=Y>B#9O_g2C7mnyrv;s)O*YqsM+(d!($r-y%voYA= +z%O~E3?bGS>a%=Z{sc6Be45PIVT~49uQM`z`~Oik2km*0*H62JP-UVzRDIx{!*)7F +z7LD$7)Hhsw^2G^_0W`nCYe){Q9aFzL=@=Jjd!wGKX6otHsBw~i=a;JAKNXIc(rk#I +zI7B-)tG9^8^0&QeM7Yx6+)hGF$bn4mft;6vy4!{Ajv&mq}} +z9F^Bew_Ybe-c|h7W +z?k*WMh}=b{H4>AAo{*LU4e9@AIVJj^`S`^&z4`V2;B+s(JYcAQt7qY2<)~65F&&cc +zv>Aqx12XF4M`=bD>o$-4;iG<{#0QeQ!H*YI=WN#0Qk@a2sJOoZ1+CQ=A9%=ul208H +z%%3_GNZwzG+#8h29TlE6ox`y;N}H8oTNN23=5|Ly*5?dj4uytpb5>h1Hsvk9j8;GzoD;(x}>akyKb&azj7GLg;oz8h8^!(xnD +z&`~v2MmgDrzqi0@mfZM`@aj2SL>fL7{whM#c(q+*<(BSfz~0;Tlx&7Rol$k`@Zx>l +zG;5~1sZJrXDjr^J!{!_9N)cteXi!ew6xBEAm&@*Hp~*@7y8P($$9wIzy+2{~=~Z5C +zUpHSEl)ws>@Q!$SbCrteR}0R<<`qakWmH5$FlzREGixUf4n8+Q&dfP~2_+ljPt@Nh +zoDcJE9wHXFJA_|&718kTW^MBe58#gN^~dS>02a!#@0dF5l-2oso%aD&Cf`$Qy$Ai +zTX}6Pe_l81U!;2f^+53LMb;^1QbOJ?Iu(k#fB&uJwMV*tWG@)6myExr{bW+FS +zZlUIP1S!u{eVAtd!gu7v$hOIB)?9q7+E0e3W6ZX=<@H%C@@7~1jhVuq-$S=J7?fCP +zOce%jTh5+G+K*h%svM`TC);W7=P0i|G`=8GEzQ=qyz|`oT#uu!>dxfj+9B)vl8zg8 +zlH3I}STF|Kt@gZhts(8^Ys;@HzZDJ(+uMqFN$TI-BkWE&n8Y~wA;Bz)zF_A$FMwRx +zk==rv>+t)U5BQrr$}Mv(sV^QUodEV<&`X@}Xs{!*NDD=6Oz*&&a@mpFMRi|Vv7AHT +P4-fH#`?|B-fQpfI7vi7RCodHoe7*%)%o{-C&^@zS(s&pVVHpdSr`~Wb`fxqx-SY^ +z_oY>_E>+uqm+JfJZeMF(_0_g-QEBT^#nxI|u_(1J1qB2|WJf?2%D}KN`@ST(&-HGf9RF4RF4E9-idpo|BVhetGV5mV=~5qtR$I8jVJy5jaMi|BolVAnHp*gV_25 +zN)vIcyGq5G1TY +z;%d~g-_Q5AvR_G{_x)sSUU~f^1~eLt=42Gsi$9n%jL5i(2$zFs5)q|=j8GAUylp3} +zhMm~9@U7J_=xz4%m*4pF9nfernv+3TFIn_V84=wNq8r%fD3LS`!5%ipLT(#2$JoR4 +zGMfD}`#CFa{>A6eXf&D=QCKfsJhy;A-vQCxL`D_}UD2mSP;CTLorj>u413WS!9oFZbvvo!FNfT?djHs2?T=(qp}JI4lgKq +zX-V~-bNc1Q*BB=s|utVmt01-+v +z`(aASsTkgW2r@irceJ#%ytB5YsuUWH=6FI2>lI6%AH{9~+vLcJS_(27g#C3s+005Q)AIGGfv9MR=qz^A*wWdy2q9j@ +zu|T79tXD37aU>DF0bm4dprBi1YPAtPBM>J(!$5y;Ce9r^7Gp|ESyVG^>rridgCo~j +zEUsIjiHsK28SEBWjtymTeFVLUMyCRXK}4+Z$Wii6At@YS!Dh2 +z2nXD7m^sz#6b~+7QJpZj41Hvz%4NDk=3Lu4+9sDD+V>cMJ7JGTBYK)1>s;>wxonj} +zh{MptiWb(HD_*)4pxO3=r__B4z9&G^t9z|Rzzm5;rstt7rx+z!{gBJiriX>n?Q}s% +zVPy=%K!@MQV%UnR#yb4Fx&j+2cVlD2VPw19xQKJAlZK2&rZ*!dQI&O7R357C_ACf%O8R}MxTeW{zKq$x)3k|N)+RcBup`O3I}4y1DolD{WS;i>CSan +zx^EL2eC=>`mAz%cZ|^HZV$f((wXnvG7FHGAWg!|tQ%qY812c=taCzw&=;O__6;uIX +zc33%`&Tw-$Wn|i;p;-nD9H=>j72DV1!@Zl)6zG7u|XCFsd4A;Ol4ugac{bbQEOg +zqadd*GQ1fOqB8=Gm4jU0(ruq&@!m~n5BT5!?Alwy|4mtY&oeuYaSpGLT|Qd|TP0f+ +zzrOke)?bXylua7j2CloZ2X*AIlkM!!Cfimk-&U@xrI+8ETz13Q+SqpS^EJg$HdU3) +zW;@Jfw;#jLbTzw)=;F`({5K}B{ycWY>b2EK^22( +zsJ_w^)kQ3-9sE2_H8R0wA(!0F*M|Rl4F2#Yv%8J$QntZ1k1u2Q7TZ%o2!A*A$aKti +zl;|B`dyLP2O+7Y_-4EHmY$@}Oe4Tt=N0c_oau=&knBoZMEM)gK*EKiJ*Du?3J)0El +z3bt=@9V;yzMqgt)%TlhK-T!0zwcY!o&XH}to$Wfy@dkFU%Fma}?m&#Fi7(^O$sxA8 +zxco-TIS;G%DP8@54L~So^EtcNcd)f9?*pUi+XO52pY?@o7pTwM`uGNR^X2=)_0{0` +zK}W1tt$B@A(6<;wXGdL-TJ`=9O3lPqN1lx=Z>G$NT13@}y2e_(_u0QNZ_8p-2Rcy5 +z0_qk{+YT%l`R?(zf&FyZ0zo>}Dj%j?} +ziU@T|vHw2Xbi~dUHaVo|l^EZL-&@8H-zv-U@i73NRN~PcyV+(+fwM%Y^1Zz)YGw%d +zI+y)zjBO2AQeqc#*>^4HNMSq`J>wp0TWo$Pe!zAnVxyMrhg|0~I8M+x)_{Msy2Oc^ +z>m(I1URZo8veUvvRYtD|s}JDWcmIH&Z+r(H;Y3MFnysip)s^N*!6&LBRa7mA2yOfpyM=Lzs$>+~JTBkUv6=;3_9FJ{V-QuzDQq9ebtzQ4OI6vsV*F0e +z_}vGu;N8kEOtFjykHdwbEX+S!_m(N3S4_QBjxY#K3-Ixh{37J1c+lu;@6r>Z +zBdRaGb+y=ZlCKfikYG`DvXjxARkUkVWVuuQ!I!DXXA(lWk?nazrytvg2xlu>j(S|; +zk07c~A)IaM5_6}Dpogh8UTq`Zk8nLc{!AW6e2i9+YA_$LZDRAVoxwKF=11o-BKj%& +zC2V~x5%f~F2DPf$>1OlkCDOW=LU*26gHhCiNWxw<|?PjG;51d>vS@@*TW! +zc&jO@)T2;Zpp?r#x_%*wbBi$L)X5>jDm%9dbNk_(;xhbk=PKkn-G~Xo3?(p$Q~jT +zO1Fl7vL7 +zt?jM&VAE1$3#XYkJzCNnE-bF!hqc?+!-~x74(wZmvkQisGroif$_PYGHs(W6E)vH* +z2sjzvJ=?Vr--AFj|aIF64U45FZEFu87h@-d#H6 +zYB?gJn|A(p +zmCXD5s}5k%p{?fPDT!i$GZia#tpRVpVv2W=Xuy-|!N|f>&|(Ba+TD$&_W_{yiw=DeQ%5i8>DQGU^GMaeiLx@)-ITcf-e)hZ`#MGn`RkLXxOEfgN3 +z2-P1)w0enUUE>xhtcaawY&tZ{ph;R`%?(zgNFg7A%pU%1ZwBo0v3m}cW52)6%#kLF +zbVmx-)|8{Bq1GzqW)t!_aUIJM8wahTrK09osIy-1$RTjYKv)Ba9qR~yo&5Tm5j%VAM!P_hJKZ69Rtol31QON2 +za}mx4^d1|95L@C9{=V#nBb24+86O>muu_~UgPxYHRlc{QRwIGJx+BgXIlB$z`a_fK +zGq0%o9jl28$@%_lmJi$%)|R$rxP=3WM&?u7+S}}3gfj&x4kvs8!`g0p2#Lb_g>L2d +zVK0)0q0u9r9t&PS^bWNN9y2PEDHUMznM{+T45ADfw-T`Y?dC(1w8AQ)D3awwit>1( +ziQF&(b*3K3dSG_QKLP$x;FJ +z5%R*D5I-ddr9}wQj+2uBdQJmdF1lFB@8j2@Ibl-)2c%GhMtqS+2JCIBhG7_C9Zbc2 +zi!d#J2pR)EB#Lr>JEja8i;T1k8NG%Gxm=QPS9Jwagv}x>0(Qf%8X>T^mxMJ-tudM` +z)I|_hBtTfVBX&rq0wVs{6+v_23ab!i6juWYb>C+sd;PaHR-#$1JY^ZMFU9Y?QPWWo +z=s+TnxzkB$d6+O_9E7lpL~sbyHPvH7^&WGE7M~C?n@XYMB=;jRY(_Z4kSy3=VvbGF +z2!kbv3!Ms3Y_!gQ!HJ6&*1t`>sUDzhI0D&-s=6)rk}7X+!k)TAAv2+li0k;_V{zNS +z38?V39(6Kcr@sX^j=LEB^9o@Yfv~j1_WirDtF>N6tf4DgN$i`yZQZ?d>ya2fML1U^ +zi^#~F9=lZtRC{X{erCp3D3z{f!70xT4KSA=$At*YFG +zHeW~BG}ClXIw+OCS?5*LQRLQ_Bb*0tLZgLs84z2S +zzFe?+LsKQbsM>3$1FSQ!iVKSH>-ZlSM&6wvom%Bo^!3_TfbIevE>8F53<@|GT$%$!?JtBFcwNiWXLL4*3@l)S0i8uAAu31%ZF=+l=a_dh1Lqvtw)M +zfT4Ksl6!DN$s}y^HKQ)j4#O&tmgNZdvIzSDJTmdixMjxm$jay=>#}}1QQzEvHT$=l +zqDnR~4%v@Z-An>&dRbT{=M&M7yW7G=E#SOZp(h=^`P>{z#Iak4FxOHjsfm2(x_E9!ZZ89k+S{^Xk)d6(7&AdIq~ +z#uR!;<~8?qG~xY!uf?npQ<0kD4iQe76D{gnggY;~6=&?4!244z$H$f1@$ZgSQxft~SMko*S@mcKOU|Xv?1}7=I+A_Fapm%wI?Ho%-$%Sm|iAaj>0wtJ@ +zYSh3Kwre9qV)yZDK8%wayDO4E5z%lpl#SS?s(kire!mu4zB4cJxzj9L&5U8&%E#BM +z#l_dEl!Hsn%qn0jRcj5L%{I`o)<80&*9xG{OUHXa$g&Yr+x1eH)m0#abDb9qod~yO +z^FJxB9=8XlkD83pLr%rD)rU|~S%E|KRp$2BGWtyOW}qmy5XF6qk)NH{xq+Zzgw$j0 +zAoHerF>1gtxExNT?sQ>I)gA;8P+MQy4i&4hZiSIRag|$^jJCynzC59o$Go7%*hhMmq2Yj948a}=CwYB#=v!fUP*lr-AW&n4@ +z*}E)v0eI>dh`~o{pQX8$ZKq@1rS+#F+ni|Tuze|pj;s1^K9gBQ^h*H$gPyUC?E@qo +z8b>!@n);aI1p%ZNmB*yFc2dP8u0sk3 +zV=AWwrWckX!|8^f$eJ6j7r>ljAYQXoN6*42V;y&~J{2LJ64|MIz4+^?%y|2!bTci}FcyY;qF&NeF6nNd9PVpo{ +zJg5b&JL?BU`;wd6WbZk=59{}A!6*B-qN=?aEI%myYbB^hd79w)1h$f#cPyNwX +ztA&l%#ZgbTx_ocoat9OK#x!=*R9>}^Erso%5}Vche3eI0cfN||s^YDO%VwzdG;`Sl +zah7$d*-V0MKbQB#P-eJVLtzh}-_*nRu}oRMdJng8U7z)!E-BU{f<6=3p2Nzvs3CsG +zF!x7gPI>z$tk}$Vg2$Hv=T7vcZ!Oq*EyY +zpmSZ=gxVB?2i|eMn+pvnob$@F;oDh4t@R=;E`U|PiXpRZa +zh{>Dh=GTwB^QvkAToqZ330(?_u2rtoh=Bv`O;}aE2RkauQQuUHj*fQKDMfG`Ih$k} +zz>lW(R#Z3EVfW!ZSg~^*-rTkv8xHM4hBF1(X_@ATgJ`6!iBcBR@8K~ +zd}G~RbCy7((P)kl0#Uef#UGvn(d_VORYk0Xu46D@cb?A(m@8rlzMbiCA;;x0w^A`L +z_X+SDJ{CY0){Yj``#K;GdW6HQzr>r38G}y4sl~(5hXt02DJ@V@d4NT_{Q2)ryZTOO +zG#bq@#D%EPLm-SH;B;8Aj2pE@MXxSLiWFIM62QTZX6!Q>k91&}Wu2-gt&c0EOPnFF +zr=<>ycCR-V)*f9v0y!C3Q9HC!Q&QzBTdVT3avwsnpwVb_D&Pp)p8tDm>Filc)qwK6 +zP+6tW1zQl?(*1G@tP5mV2`Q}R +z1OcbLxPHMlYpgeSE0Pn9Mx%vQsnrXAuPVKL<|1<*JdhtEpu(z+6!)Hh!O<#35Z5{u +z*ZS5*xFO(8ahr>?IGs-Gfa$Bpr{!-!a--2`w6H31eQ`nMh}*AtAD#Ku;xHu?07Vg2 +zOWMHpd|}%urNq_OiiVa(q>zBenbH}#I-F4Jj$Y5An(UFPMx)WfY8BVFsz=;@<$M77 +z0vK$Ltxcx5x}7dL&h>?KPugv#d2)14Rin}T*AX}hF8grq +ztweZ)KqXz12n^Fpi#V|W*2j#<=Ud7hc@Do}V30Sbd_w!UVU=9E +z_}LO7`W}E=*=N}atGaFP5!3lrL9S<;x3#_TiMrWOm*a#$qtR$#wQ$Lzr^`sLEkJZV +z`&`=y6gJ1muoqFgvIf-yB-g#1v*PAoe2x9)u^+?UVY66^ +zjgT6Vgf+l^JNq};zr6gWpKrlQfkvaz!fN5dcYl?}ZUPaV1)^!}N3s?2?F?(q)RLcV +z;{Oh^-^zYD`=ubPTXw_Gns73s(P*@=S~>q8Ps)9sia|7heI8)jc~#ARA6v!JYktyz +o1f$VtG#ZUYqtR$I8ja@v1EW5lyFeR*TL1t607*qoM6N<$f+JcSi2wiq + +literal 2512 +zcmX9-7Bbe7?`~eBbZ$Jn!fIeBMk)`%4P4U|9eFpkQrf;RFDP +zxrs1LMqK1$GD)cb08rEMvWulC^v7%jVYz$%8KIB&69klOVyQpj9ul+l6A}9b$l@Ou +zS@OdZ|05%@Tw>o2iONM{IHZ1_C`st$sRdDgRs%{nU?iQ;w-aBx9ZyW?k=&NI&qOpIt;vIf2Dne#PtfKCXHo +zO)Y??h8z|VMEK_<;6R!v6xoH8S#S{j2PcTC7DN{vB=&5pA%{d6btDZO^n)e>FNXN) +zf%GZ%?g~dBDuIzSk-lgEaNy8?GC!O~@Gz!>L!aYMvxK5uOzwX6db$=~!40oo>l)vw +z>D@xNu!raPtDIfY47ko6?7JOsBomhMJ&U{@SHtZb)UR9rwa`B)m{}HJ-f=kFdyt5) +z=nl@A#2KDoFNL&S+_v+1PU!r2X^kVeRlY^&-Q@9iS?jy~6MXtCcV=m~b4)PJ77k1b +zv_n7Fe%!H09ep{(n^_W6cJXdvMKiNF+q-wFxpyk(AHCR~VeeSxuxFPA*U_8o_1&gV +zJkf24cE43RTivw`i5LbtkPAgm#5>B#-WdSXN}6oLuJ|gR$PK?m^&yo`I!-=LoYYFf +zuHL$(z>s +z$%;i3)b@hITxN^vFUQbuTu7V#pM`5{AbOa%tQT|$`WE<1sr+KxtkCM_eoevsWr_BM +zQ}oXh7^TkKy=XUrvQZ_|k#|PA!zpn2tk{Q5xhvj2tU83jYVHwqU2Dl~+2xY`5B-kO +zC<}=6eTErKtJkL=HD%!z?FOM=Ufldte2srF>EFe4m4(p|f@-U@ip3?`7~{{IS(A%9 +zEAIj(3A!IM;-XtXBFS{usm1Lpf8* +zU1m$hE=uwPtt~8 +zj)EpkQ;Wfvvv_?mUyTDcW9`%NYZ!d6B=Bk$BB1ClTt=treOfwr!`%5~G7};!Yd&Oi +z&3qe!)Z9|}Ek^Tw==|A4#y`r#C!*9$B33gN7PQ>`&rS8%j02OJF0*`<(*CuK#4*$X +zLN_62<2fTu7$h4DOJxX3S)VTIqA@zX5@9kY;hyx;pO8><4$nHxxC!rc_S+Ed% +zuDch|EC+pfOwuJfq8G!JX&QK99y(zH(f7WT=e5v$WwFAB*O5@#fcM+1H94VT5Pz)~ +z&_Xk0#&E)p=egNkS%iZW>0{1vQWMQ)hc!LD2oOLFgZ^4>YE?c%=0@)Czx3TaPD8wV +zl;Y-V(}pjG@f>vw!X+|zkypXY&ONJ1+scAv&$Ov2Z(!drqTwSj$(TbXiY0AP+?a&f +zE7j)`EN!*SdgrrV%QyCFnt_1%aM-Fv=SXr7ndXn%hmMsj4+5ho8V-0y`@9{Goe!~) +zl$6QFX`Pd`v}=6O03Fs=QqlVxg(KcxZEKZ~zf5ABeiC*-Z|dYe4~M6pa)$}TVJA*tc?Id0#B01ge(SIiARw|PC)vVI>8}+W^vxjUjhHYvWUzOX}a6BrbH!@$pNjl&Ew!3Zr*@J`v +zrb}W9IVMuAYV=HSk;eJpX++Kwgq;&dB9PSw@_V&wq=<_?17J@fq-BBJ^F=oL(e=+V +z?^qxPjt1eJlH8>M{0_G&V7uo3G@E!+uW3O`o!+)D+eeHLa&^98DIYm`n0D2VbGkz_>=sD%Vl*(Gjz{M@`oPx`EBLT$vX^x*!t?`43 +zGDaop{?4BLUpYgB~HJWI=<%=Eatea?Fl +z)$;W)p^#WSr=Rrlb=a#}s4VI}BCSDQYcTjE;U(-myaLfFv+B%dK!32lW?#J*%W&nf +zZe<6)83>5z$#QQk%zKVlW1>%7`pXDm`RSIcksY47{2_9kv|XZFldIyH2`9_ySMe84 +zMS}^Zzm9KWs$Jz{Z+r#&NGYZ}eQjR4*Q1<6uVOyBV(9kVN*Ywz?Nt7XEVy9eanbF8 +zyox&NMe-_tQ8F)Y69NtNj8e^2>h`oh;|0=XjcFSfeGVvMbWd^oW%25%yP*-BS}Pcw +z%lwlC#@8v20MrdyXS4Cd9v0(a*!707Mi)DWKCPo$-?g#BRX!@}3RwzBwgOM1&^{Rc +z3=3bI32q;3&^A^#@RQ;k{^t41Rq+f34W3u|*@1288y{>q;|6&;qJI})ZE0^oH1|#U +EKU(of)Bpeg + diff --git a/tools/grit/grit/grd_reader.py b/tools/grit/grit/grd_reader.py --- a/tools/grit/grit/grd_reader.py +++ b/tools/grit/grit/grd_reader.py