From 1b70e0b94dfff49b7a531a8d07e3a06fc63ccfa1 Mon Sep 17 00:00:00 2001 From: aurhat Date: Sat, 14 Feb 2015 15:52:08 +0100 Subject: [PATCH] Remove obsolete utf8 code/dependencies It reverts part of e232a3f3aca69f0ab87d44c490787674351958f8 , also removes dependencies from all IDE. --- source/codeblocks/AssaultCube.cbp | 2 - source/src/i18n.cpp | 2 - source/src/i18n.h | 5 - source/src/protos.h | 2 - source/vcpp/cube.vcproj | 4 +- .../Frameworks/SDL_ttf.framework/Headers | 1 - .../Frameworks/SDL_ttf.framework/Resources | 1 - .../Frameworks/SDL_ttf.framework/SDL_ttf | 1 - .../Versions/A/Headers/SDL_ttf.h | 249 ------------------ .../Versions/A/Resources/Info.plist | 26 -- .../SDL_ttf.framework/Versions/A/SDL_ttf | Bin 85912 -> 0 bytes .../SDL_ttf.framework/Versions/Current | 1 - 12 files changed, 2 insertions(+), 292 deletions(-) delete mode 120000 source/xcode/Frameworks/SDL_ttf.framework/Headers delete mode 120000 source/xcode/Frameworks/SDL_ttf.framework/Resources delete mode 120000 source/xcode/Frameworks/SDL_ttf.framework/SDL_ttf delete mode 100644 source/xcode/Frameworks/SDL_ttf.framework/Versions/A/Headers/SDL_ttf.h delete mode 100644 source/xcode/Frameworks/SDL_ttf.framework/Versions/A/Resources/Info.plist delete mode 100755 source/xcode/Frameworks/SDL_ttf.framework/Versions/A/SDL_ttf delete mode 120000 source/xcode/Frameworks/SDL_ttf.framework/Versions/Current diff --git a/source/codeblocks/AssaultCube.cbp b/source/codeblocks/AssaultCube.cbp index 3736e44b..e5dc15cb 100755 --- a/source/codeblocks/AssaultCube.cbp +++ b/source/codeblocks/AssaultCube.cbp @@ -35,7 +35,6 @@ - @@ -75,7 +74,6 @@ - diff --git a/source/src/i18n.cpp b/source/src/i18n.cpp index 64362482..7cba7f68 100644 --- a/source/src/i18n.cpp +++ b/source/src/i18n.cpp @@ -10,8 +10,6 @@ i18nmanager::i18nmanager(const char *domain, const char *basepath) : domain(doma locale = setlocale(LC_ALL, ""); // use current default locale bindtextdomain(domain, basepath); // set base path textdomain(domain); - bind_textdomain_codeset(domain, "UTF-8"); // we use the utf-8 charset only - setlocale(LC_NUMERIC, "C"); // make sure numeric is consistent (very important for float usage in scripts) } diff --git a/source/src/i18n.h b/source/src/i18n.h index 80a73476..bf31ced8 100644 --- a/source/src/i18n.h +++ b/source/src/i18n.h @@ -12,8 +12,3 @@ struct i18nmanager }; extern char *lang; - -enum { CF_NONE = 0, CF_OK, CF_FAIL, CF_SIZE }; - -#define FONTSTART 33 -#define FONTCHARS 94 diff --git a/source/src/protos.h b/source/src/protos.h index 0df56234..dc24a2be 100644 --- a/source/src/protos.h +++ b/source/src/protos.h @@ -566,8 +566,6 @@ struct font extern int VIRTW; // virtual screen size for text & HUD extern bool ignoreblinkingbit; extern font *curfont; - -extern void initfont(); extern bool setfont(const char *name); extern font *getfont(const char *name); extern void pushfont(const char *name); diff --git a/source/vcpp/cube.vcproj b/source/vcpp/cube.vcproj index 2cb7c78a..3276f98a 100644 --- a/source/vcpp/cube.vcproj +++ b/source/vcpp/cube.vcproj @@ -84,7 +84,7 @@ /> major = SDL_TTF_MAJOR_VERSION; \ - (X)->minor = SDL_TTF_MINOR_VERSION; \ - (X)->patch = SDL_TTF_PATCHLEVEL; \ -} - -/* Backwards compatibility */ -#define TTF_MAJOR_VERSION SDL_TTF_MAJOR_VERSION -#define TTF_MINOR_VERSION SDL_TTF_MINOR_VERSION -#define TTF_PATCHLEVEL SDL_TTF_PATCHLEVEL -#define TTF_VERSION(X) SDL_TTF_VERSION(X) - -/* This function gets the version of the dynamically linked SDL_ttf library. - it should NOT be used to fill a version structure, instead you should - use the SDL_TTF_VERSION() macro. - */ -extern DECLSPEC const SDL_version * SDLCALL TTF_Linked_Version(void); - -/* ZERO WIDTH NO-BREAKSPACE (Unicode byte order mark) */ -#define UNICODE_BOM_NATIVE 0xFEFF -#define UNICODE_BOM_SWAPPED 0xFFFE - -/* This function tells the library whether UNICODE text is generally - byteswapped. A UNICODE BOM character in a string will override - this setting for the remainder of that string. -*/ -extern DECLSPEC void SDLCALL TTF_ByteSwappedUNICODE(int swapped); - -/* The internal structure containing font information */ -typedef struct _TTF_Font TTF_Font; - -/* Initialize the TTF engine - returns 0 if successful, -1 on error */ -extern DECLSPEC int SDLCALL TTF_Init(void); - -/* Open a font file and create a font of the specified point size. - * Some .fon fonts will have several sizes embedded in the file, so the - * point size becomes the index of choosing which size. If the value - * is too high, the last indexed size will be the default. */ -extern DECLSPEC TTF_Font * SDLCALL TTF_OpenFont(const char *file, int ptsize); -extern DECLSPEC TTF_Font * SDLCALL TTF_OpenFontIndex(const char *file, int ptsize, long index); -extern DECLSPEC TTF_Font * SDLCALL TTF_OpenFontRW(SDL_RWops *src, int freesrc, int ptsize); -extern DECLSPEC TTF_Font * SDLCALL TTF_OpenFontIndexRW(SDL_RWops *src, int freesrc, int ptsize, long index); - -/* Set and retrieve the font style */ -#define TTF_STYLE_NORMAL 0x00 -#define TTF_STYLE_BOLD 0x01 -#define TTF_STYLE_ITALIC 0x02 -#define TTF_STYLE_UNDERLINE 0x04 -#define TTF_STYLE_STRIKETHROUGH 0x08 -extern DECLSPEC int SDLCALL TTF_GetFontStyle(const TTF_Font *font); -extern DECLSPEC void SDLCALL TTF_SetFontStyle(TTF_Font *font, int style); -extern DECLSPEC int SDLCALL TTF_GetFontOutline(const TTF_Font *font); -extern DECLSPEC void SDLCALL TTF_SetFontOutline(TTF_Font *font, int outline); - -/* Set and retrieve FreeType hinter settings */ -#define TTF_HINTING_NORMAL 0 -#define TTF_HINTING_LIGHT 1 -#define TTF_HINTING_MONO 2 -#define TTF_HINTING_NONE 3 -extern DECLSPEC int SDLCALL TTF_GetFontHinting(const TTF_Font *font); -extern DECLSPEC void SDLCALL TTF_SetFontHinting(TTF_Font *font, int hinting); - -/* Get the total height of the font - usually equal to point size */ -extern DECLSPEC int SDLCALL TTF_FontHeight(const TTF_Font *font); - -/* Get the offset from the baseline to the top of the font - This is a positive value, relative to the baseline. - */ -extern DECLSPEC int SDLCALL TTF_FontAscent(const TTF_Font *font); - -/* Get the offset from the baseline to the bottom of the font - This is a negative value, relative to the baseline. - */ -extern DECLSPEC int SDLCALL TTF_FontDescent(const TTF_Font *font); - -/* Get the recommended spacing between lines of text for this font */ -extern DECLSPEC int SDLCALL TTF_FontLineSkip(const TTF_Font *font); - -/* Get/Set whether or not kerning is allowed for this font */ -extern DECLSPEC int SDLCALL TTF_GetFontKerning(const TTF_Font *font); -extern DECLSPEC void SDLCALL TTF_SetFontKerning(TTF_Font *font, int allowed); - -/* Get the number of faces of the font */ -extern DECLSPEC long SDLCALL TTF_FontFaces(const TTF_Font *font); - -/* Get the font face attributes, if any */ -extern DECLSPEC int SDLCALL TTF_FontFaceIsFixedWidth(const TTF_Font *font); -extern DECLSPEC char * SDLCALL TTF_FontFaceFamilyName(const TTF_Font *font); -extern DECLSPEC char * SDLCALL TTF_FontFaceStyleName(const TTF_Font *font); - -/* Check wether a glyph is provided by the font or not */ -extern DECLSPEC int SDLCALL TTF_GlyphIsProvided(const TTF_Font *font, Uint16 ch); - -/* Get the metrics (dimensions) of a glyph - To understand what these metrics mean, here is a useful link: - http://freetype.sourceforge.net/freetype2/docs/tutorial/step2.html - */ -extern DECLSPEC int SDLCALL TTF_GlyphMetrics(TTF_Font *font, Uint16 ch, - int *minx, int *maxx, - int *miny, int *maxy, int *advance); - -/* Get the dimensions of a rendered string of text */ -extern DECLSPEC int SDLCALL TTF_SizeText(TTF_Font *font, const char *text, int *w, int *h); -extern DECLSPEC int SDLCALL TTF_SizeUTF8(TTF_Font *font, const char *text, int *w, int *h); -extern DECLSPEC int SDLCALL TTF_SizeUNICODE(TTF_Font *font, const Uint16 *text, int *w, int *h); - -/* Create an 8-bit palettized surface and render the given text at - fast quality with the given font and color. The 0 pixel is the - colorkey, giving a transparent background, and the 1 pixel is set - to the text color. - This function returns the new surface, or NULL if there was an error. -*/ -extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderText_Solid(TTF_Font *font, - const char *text, SDL_Color fg); -extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderUTF8_Solid(TTF_Font *font, - const char *text, SDL_Color fg); -extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderUNICODE_Solid(TTF_Font *font, - const Uint16 *text, SDL_Color fg); - -/* Create an 8-bit palettized surface and render the given glyph at - fast quality with the given font and color. The 0 pixel is the - colorkey, giving a transparent background, and the 1 pixel is set - to the text color. The glyph is rendered without any padding or - centering in the X direction, and aligned normally in the Y direction. - This function returns the new surface, or NULL if there was an error. -*/ -extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderGlyph_Solid(TTF_Font *font, - Uint16 ch, SDL_Color fg); - -/* Create an 8-bit palettized surface and render the given text at - high quality with the given font and colors. The 0 pixel is background, - while other pixels have varying degrees of the foreground color. - This function returns the new surface, or NULL if there was an error. -*/ -extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderText_Shaded(TTF_Font *font, - const char *text, SDL_Color fg, SDL_Color bg); -extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderUTF8_Shaded(TTF_Font *font, - const char *text, SDL_Color fg, SDL_Color bg); -extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderUNICODE_Shaded(TTF_Font *font, - const Uint16 *text, SDL_Color fg, SDL_Color bg); - -/* Create an 8-bit palettized surface and render the given glyph at - high quality with the given font and colors. The 0 pixel is background, - while other pixels have varying degrees of the foreground color. - The glyph is rendered without any padding or centering in the X - direction, and aligned normally in the Y direction. - This function returns the new surface, or NULL if there was an error. -*/ -extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderGlyph_Shaded(TTF_Font *font, - Uint16 ch, SDL_Color fg, SDL_Color bg); - -/* Create a 32-bit ARGB surface and render the given text at high quality, - using alpha blending to dither the font with the given color. - This function returns the new surface, or NULL if there was an error. -*/ -extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderText_Blended(TTF_Font *font, - const char *text, SDL_Color fg); -extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderUTF8_Blended(TTF_Font *font, - const char *text, SDL_Color fg); -extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderUNICODE_Blended(TTF_Font *font, - const Uint16 *text, SDL_Color fg); - -/* Create a 32-bit ARGB surface and render the given glyph at high quality, - using alpha blending to dither the font with the given color. - The glyph is rendered without any padding or centering in the X - direction, and aligned normally in the Y direction. - This function returns the new surface, or NULL if there was an error. -*/ -extern DECLSPEC SDL_Surface * SDLCALL TTF_RenderGlyph_Blended(TTF_Font *font, - Uint16 ch, SDL_Color fg); - -/* For compatibility with previous versions, here are the old functions */ -#define TTF_RenderText(font, text, fg, bg) \ - TTF_RenderText_Shaded(font, text, fg, bg) -#define TTF_RenderUTF8(font, text, fg, bg) \ - TTF_RenderUTF8_Shaded(font, text, fg, bg) -#define TTF_RenderUNICODE(font, text, fg, bg) \ - TTF_RenderUNICODE_Shaded(font, text, fg, bg) - -/* Close an opened font file */ -extern DECLSPEC void SDLCALL TTF_CloseFont(TTF_Font *font); - -/* De-initialize the TTF engine */ -extern DECLSPEC void SDLCALL TTF_Quit(void); - -/* Check if the TTF engine is initialized */ -extern DECLSPEC int SDLCALL TTF_WasInit(void); - -/* We'll use SDL for reporting errors */ -#define TTF_SetError SDL_SetError -#define TTF_GetError SDL_GetError - -/* Ends C function definitions when using C++ */ -#ifdef __cplusplus -} -#endif -#include "close_code.h" - -#endif /* _SDL_TTF_H */ diff --git a/source/xcode/Frameworks/SDL_ttf.framework/Versions/A/Resources/Info.plist b/source/xcode/Frameworks/SDL_ttf.framework/Versions/A/Resources/Info.plist deleted file mode 100644 index eef74781..00000000 --- a/source/xcode/Frameworks/SDL_ttf.framework/Versions/A/Resources/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleExecutable - SDL_ttf - CFBundleGetInfoString - http://www.libsdl.org - CFBundleIdentifier - SDL_ttf - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - Simple DirectMedia Layer - CFBundlePackageType - FMWK - CFBundleShortVersionString - 2.0.6 - CFBundleSignature - SDL_ttfX - CFBundleVersion - 2.0.10 - - diff --git a/source/xcode/Frameworks/SDL_ttf.framework/Versions/A/SDL_ttf b/source/xcode/Frameworks/SDL_ttf.framework/Versions/A/SDL_ttf deleted file mode 100755 index 5b89d2bba11da5a5cbab212c7af642543aca155f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 85912 zcmeFa3w%`7wLiY+5g2r21{^g?#8HA0K}i%fAyMaqImsDFAV3DFuLMIPNO%+`8tjBj zoTSb1kT$m1VvCrz=#REk=`96RgalI(ygm@A;^Wq+sFMzDQMn;dWPabZ&z{L70ma|% ze*XXayPr9qoU>nRuf6u#kG1wXC$nBY{roP*n90D{Pzo8dBe-`59#-5UFM#NhgCcJv zLR?32m#o8s;1XAY0|^c!IFR5#f&&Q-Bsh@ZK!O7a4kS2`;6Q={2@d=>=D_PG|9%>W zd;<>tYzXf2aUV)ztbyAB7`qhdY9mhiCB^c*Vk8D$t^pY$O@;%Y;RXbPC@JxkSNkZY zUjy;|$)e{kOVh(>T7WZVW`S57k&=>?tCrlmtg>XKuj<~6!StoxphLHcN|c6;BX(H? zKI$`Fzz0Mn3(G5)m#^UI{{1~H@D&Lp(KN42k3sa6t@N!}wDdj!FtERqCg}x#6y?#h zNHVaz-&ImlwruIjJ_ZiN7ZUgc8yTes;)q9BQc|__!9`0Klq_0Wu?z(R@f{WTHi}A= zHpe3v5HBeyUszJHV*ZkHyH<<1EqJAQ& z2PCyq(dIa9+ovb1ofT~%qiuVu?b$qsvaX;he~^q*V#FnX~ik{?BdO^O6NprOEMdKhrY;kWj^M0D&;+J6hSguO{GBVc=z+7XXKe1c*N;Z|Kd?!QM8iej01}LLFB@W*20Fvz6;&zhtJc7TcG}fvS(YAb&7_n z8mekbdUeFJ74={0+aC2@Ib)xk@m}{csNgBv=eBJ#XH-aaz5iqnWJpaj4N{ZGC_CMZ@f)PJE~_-GRVmv?MH%6As`vqWAe~nXwi&4sL8eQn#$lp0 z4p8a_N6+mT!qhtkH-)8gWD;sd_|xP(&1MsGz9rH0>I6wPOlN1Ey%-bLqJ^>A5b-t>~Dt9A&|Fi{OXkm5Mo5 zkNOo5%Nd6&f-h_#P~ULR;`VA!lRwE73J^0R?Mm>aYERuM5;9eXDx~0xTdE20Vo%eH zF2p!m=`QK+ecdxqp)bj&bnvvH%G$v>K%yjkW$?7IFT=>f_KeoxX_IYjtD#lZ8P$CU z(9m*FA9U{PE))qZKjr)flhp@Pg0ESFoz|?qz9IX%(^051)3&`w(Qe<@{mfX#sBV;J z#0({5A;Pq5N+g9=0YuSW2odc(<2-O$3$`MS!N33ncTkbq5h+T>g3;O5{R!3Ts_egpDVd3{5xt>Hb)y#nopbwDHa{Ml}+e;U(4>KS6U zHLORhXNuimt6zgskCyLJf?cgjQ_<~8L#tx*>{r@O4w2M3^H7wo1Y2*{ixs_CX;a#I zhZyz%;4Y6gS5bl=p>8e;51{TIDpcD*+yd0j?5i!1D>}f-X;i;d(%h-mv`#=T?0)1M zX({T%c1BwALCcx?vA|PSpK1Y{6m6PIY3oX|?KWG`EdVzuw}V+q8;BMZb>uAsA;guq z=K2v2YAcl;v_aGD8RJe(R-UIilvJ|zR}G_Xjgt&{cPTqaU8Fk>jFJTA_)@aj-Ki5o zH;rNJOWTB2sv!l3+udq7__4t^1fyl}Ii%nxMq9lJYAw=6Tf>PYRPT^UzOk>xKMhbV zMAerzd(sKa47B$hw1=kltNYtdULhU#r;=<@BnvV5U z50l>6_URC%3`@VJRnBP5*vAE3$OI@wt7;Wu@1LRH5*omS{sR&9ugCuy{M7gy@i*f@ zf%?zTqsW!iKV$Wd1XO3J3~9HzWPSH1W}5Xiot|JvdiW|)k?0Bn0^k;`j_y_fdFncd z^1`O27Ee=Ndc%7KHh0LQ4fUupjlBh-1)&|G9bq!UWQ35}vQx5c%fBqgP&HI)E4P@! z7v`Ass4;BGF;|(TH_9zvJ3lTE^Fy{s2HE_zW0)MBBO^e+K1cLgk|q;h>)kj8Nw#NY zi&EAb>UDx^Y6sDbm5g0mUhhIDyI&_D%}an@03OKb3B3bQIpaY0zc3pmZLYi)3-q}qCi zHX54DBV!2(DFS1CImRaQU;5{mFd4hdeGq0!C-tS1C_SVvJtX*%p>gI==xP>Eq*d)q z>y@(d&9)z{z{cG@4*d}%nyT&&d!ppEpiM0DNT=<|7)^0`l0hdTKFb*V$OskjNy$WN zVO&$SzwK@_5U0NYCp_xs9<>+ao*N#6#-xb4r|zSpXf1ehxn%np3wGIpy+bA2lP-fN z*lP4d+T3cZPIB$*-K&7dwk=3R3!AM_S5b=P|UfG**3lZU|{ux z({0->R+{n+8T)$n1bjpGx*)mCcyd|TrbJqUCoDd*;Xt@ciR_hvtrj^u-|T<6n?Cr# zq`fbOvBP7M?HQ5qRH%plLr$jgm0sU3;h>4ZK< z^af9uv0=4!8N(fDE7)O{vTM!$E#0)pz?=vAHwEyMNN;p{Mphq(jQ~r;c0w zycF3dH|$&WII0hU7%+s*cp7Pc)3u(}DWp+&e_jE}xm=UiL%CUaC+Tt0JyMCTr{IKf z2q%m#oG@_GsKQC3hE5tq&>AtnL-t0w)wXS~q;{xpLjQW6%s-)&q#B%RHz>;(qT>|(xvAZ0%-?w*mF)~WJE%RAj_lf#fD?6Z$*}E+k0&v z(_YbmaUAxNZJXRW>?QTxjGhAZc<5>XW1h`Xd%;O}YNk?l)MN6cx)k+uiOyWMXFHmT zOhBdVY3nsYHZ?gKfRlMlbDUu-Ew8q&w!d9r*z?B87(fdE3b4Ux zV50^$YG9)VHflBE)D^D?&hw~H=6V#>+pMUCjczSzC+ycUHr@-NQhq@_Z4J$at*e{t zyl(BfU!oZ2kc(%mmTs> zVuH{Vxm2grMm=*Y1xl0L3PB#|Hew7bZjGF-N|H1F9=28ldrw!5l3t|Asx(b8db0is z-4F>3S@)X=<%YlejNfm!Z9n?F9Z8av=ly3Sf^~QvSB1N;;*;V&sB$%%nD2V6W-D~? zYb4E|YDQ#CfhGqs_Ngbes;wUF_E7jz>LX|&9Z}xN!DOgI^Wqm+ezNA>sXT|~gwE6n zscD)!jS>6^~p|?fFUlq{1Q%ket zjVRlw;;&{a^-)n@vTZk2(2V}#G#zkinwih0$t@;%$9Sw8&D*RRk=w|8d78XKGUZ#x z%NrG~uu(OTEX>+pV^l{-J^7eMV=*d|2%<@eNaJTNNC>9b6AtlC1VsY8~CDZf=E=ms`Di4Yur$rMAP-)h!Kc$MSAL;8s7%Af+x4a--=2?M3RQ zn6FSXFgv#>YQu75c0UuHpu;+3I)AY61$>g?(6feSsi!I5SdhgL*cw(N2Nelh_X_I% z-D|Ktiup?07d92Q`q)C0hh~34%yVlz<-3?uv-1+v?~nt4WZk6Ec(i*mwb_$Y?<=x) zk5g`VuXeaL<*xBl=4I`%P2Z!+ujsSoR<~BT9=ow`k~Z7iaKLw6fySxN*r!#k_h`38 z+dOqK@N4KCrn_iaGVCeH=Hyoa^*pzFAZ<^i)oq)803y4v?B#H^Tis)ty|8*ofp&L5 z%AW10Dbs3Rfef@gJB2nx#kA6;luet54RH!K#6A5sL{F31pcrrj`_SkyO>>4v+P3A< zo_M}=$~~-$j94&L*`C}}kkxJbaVx|j=`QvAs}4z^A$v-?|6#XjcE96G-hk7KSvJiX zr`>5*?_N(s;ZZw4$WXqTWUMBsClAZwQc0VG-E|IjS6Hi{x(8@?pMOLzxA;;dEw68X zjRUz2AYfQPscWY-F<{A@MSi98o%TN^^(_Uhq=M%jwY{m@2=T5MA|V3}g8CAvytHIC zV$8AgzH280e&2AQiKd{m1`H!ekpmv?x?vE1! z>P2a4MpY@ErX|RTqsgw*Bnz5y1x<=E<3RX=T-fZctx(;wjZps7{ZiJ!+9S$3n8YMn zbx}fp^RF18=Ltf|x^YelfJ;$vCQ|>?Ll(o=h>0IK1~73aG6ccUDQ_(SPr<~s$dz_t zbw$D%1Nrzsn1to$1?ow#k{`p~?Zx=(yu1$;-RH_nSZxN7=c0Dw`FVMN@>;mS%XO{M-`RYEJ{|IbEbFe-6+}N59Q=D$ZEmZdws;`qyMM5;x`FAcslflSToziK* zy@UAJy#WA)5W43p+LTPqHBZ8clgz#od0M$kQmv_d!crMCWx)CzYMM5VUbwAkih_r}H|Cj(ZBydpOoUY%5s_2r6p z1?vYJ-sWMJtP`Sh3m2X3>YM7zZGW>jdZE_-8EUPhz82GK-L%sPU5QiyI%+}m!<0TN zlhiFm-LK6`*Oo_hTm~H%v|-QKhmHCUfpiFK}dnuzw$CD9}UZ@KM0v>HD&e)yO@vz(Qa@)zFh`04#0h?2k zQ|JZw0LQni;C8ojM3gC?`rEE~FILzm$LrS3F? zb)%{oJ>68G-Rr`bwkX;>CntoArfvF+%DKr)VVDVk5<@Rm*973yE7kY_Q4UTWupUQG9gmSp=GJZ6Pjo@?hsm==!GUZ8(IgeZZA@Im~XPiJAgAxx~{&Z zL4Bh>Kz;iY*%1`2LFZ0pXfi%_z+C4VoMiZOK{oG%P~H9}RJXrz)$P^re4)C{0U1Pd z_Do03)IrLdZMy`$Z9naUCdpY~=v2yP&r_PL_V6&$)+|yarlfr?l(a}2bhMA6I@;rI z)8aTCEy{#3SeyM1O>WcuTvdC5I>iS8stk5jb1K)@rqk(1?`n^W7O++nUA=$eGaU`8**lLd?1;=7{%8rI>&h@CjW@$ss4?X+OeO-{Ome3xKe)YXqtd=ddt`*gTlkrAga zbzxMnd@n*S>2QN|kCPvf4)?jcPxttJpL!I=_aEo1$3=CIKHAz*y`S#!OJu~+=GJLj zgWURYuok~q^_jCPx2OfEejnyOnV1TV77+y(WXZ$gqSVdq0O{t-?fV~>zVi7^FbMo z8GPT}PtRBDzfm&i*>AZUm%}!eYiXQkrogtXu(eT1 z(xcw3jYT-m?xN2aNyqOTMo0^H6ln8d#4mv`>=--6--wfAdOs@SW=sFeUOc&h?Y zX7i1#QGSy18#3>Mn9N(kb4raMLNV={< zQw59yd41#Xw!1M?j6+Lo9D2MUtnkT3Wx!Ch#D;>KZR1DdcxW;;i`N(N28WtHk>qXG zE_e{954CU&>}~;A4?1MpYNE1;w)pNkbdSrT0Y-$;{fr1T0b4^cAh}^|8t2Fw9Oi{A zqFIX(j2`73*i!n;2bdPeL#y!)6?3KgPE_@1cS8hOVK~4rpHcXbl_^J)*Fo&uq>G*F z!C|lFad# z^1fc?e0T<#WASeoXcvHH-tVm@>;hihF0gK(U0{V+17=^p^}%hfH)CJcZLR~?2QR(^ z#bj~)KQ{+l1YY(NC0``bh{wzUk6{q8Dqcn|ZPyd{IZ-zSkOI5q{djA@{ikA^@>8gA z&QhemHQ-@X?I%G>`jceTNxDUl^nYRvXzLSqr=ai?p@XdfeHO^z5xl`XrG5!1hfTRv zyJ-Z@qd1)wfO$AartlZ9WTO8}ia1iSzc;k58in$QP!8rbp$VL&I%yepmq0b%ZC`~g zzY*CU_0NDyrwNUT|0b4N=krtub0E08f+}h<-VV3WHyY|X`eDDia zJCGaog#URe)GOaa5KR}gy$h{FojtBVElc*4?N!t%_UEx%0Z5SBpLjRk3#CF6jb z%>KMb*!?>@>N?Rl)l}5S`Nt&CMe6oarlQ?y$9a^XaF}TgdC)}=_9zI0QE3wIf##HY z+^O`{#3XD7QrlB$s;GaHp||7U;A;hVHV2RUrXmW8Hl%b8`cnaFKN~1fKdE~Qz{pyk z*;EvfvO3(h!jnX)TYZi`%gKw!6q^+ntWF3%$*^UY=(*308FE zLax(}EV9*HicSZc zCrMi2q=tR97O6v~A!i7a5pdzv<4QLAs3e(6kTUp^q+nsP5z-+UCY=-%ISCkHDuG0Y z9zyoAMXj&Cg14Qa3jsI|Z}_j3EnnKclk^?T7ozx~QM zu&;Y9#4CM|m9cMM_YTyFjQte)Ze(nTKmW#`NBHv}{CSi=zu?bf{Mo~wz5IESKTq-J zY5t^-u_I%R{AuRTA^d6K&-3`x%AdpelTL+^u_O7@!JilNXEJ|Y#-AztIhsG6{CO3B zrs7%9bou3ISehLfdjZ1ch3Giz{uCWs2$Le~#`YgsIDujZC?-*?lVbEidG{`gEv492 ziq%u>w-oyY#abx#CyM=)Vy{wc4aGj9*uxb2l48{q8;UXMUP`es6k9;C$rPin=N8VU z7#&d;E~Qu=#lBCm9Ev?bu^TA1m15&4_6Eg9Q|wcUIVg6TV&_rpLM+E_MzL!t)`QJw zVJ^jvP;4&6KB8DT#ST$y1;t*YSRKXMDb`G}=PC9i#kL?eWm#3_f~D8^oQsw&@;USH z#d|Tncz2dBy>HRda#pbD-WBs#ta2`0rUNXRU%BX^@&&9I|NrA$IDe({q4E{WoDVKq z;9JOMRQa6CDx6Eomn>VcipB6&;2%?*_f@W1zK~6sPYtasFJFw-ocNcT^7%{p04tZx zU*N1*w$$gWSX5cwm%p+cIh4H;O|upEVgy(q|MlauZv%H2Ud!_Tb(%!kxF|&5=)&u7 zgW-*NNd(5;z|W$*VKMV~0n&7zxSdM$I946LzaPnp`72CjqW@W1JdBxl3}c3$LJ==M zpBbJ$pPB7e#u}~65JEWi0%p9<$&xlWnQ_B4EXg*G88>IJA=Voh!~ZCmMlgDNi+?Ym z2QI@yvzVdUZm?U2TAEQZ0eM9KS2R^|H4+eAoXp|&?;FiT)&&s8{37@Q+}<~J_^b5n zuZ8ymCSSl?zX6_jw;A^s0bh7Fcr$I-O{O*GAS9#SkHZKvMZLdLCS3#j!P7w#^}~Vw ze=6W{RMW44@FJVw-GJZyE#Q5CU-vEGHv;~<-va(1;HQ2Icrzwtl&|N~-${T!CFaF9 zjT`Z20pJe_c-TJm>udPA7Vz5zJoeFVgl`A@+HV1W4DjC-@aNLsRLu0L-vYiE@M8r0 zx$vhR@R2w4b#pH8TLJ%`fKNLI{u~DUK>cIu!K5|j zCScdsSpn*e6aCIPTRo9a^TH4KNdo>{#(6W~M+o>U&H?}XfM)`pt8rB4Yv!F5Ea(#b zE+tsH2Eq$I5&b!Uw+sBYa^N$-i+tj1CEza?@SCuQ^J@@(;zV%hnjuX|KQ#Y{kH<#T zYr@HduK8HoXRb&3;*U%}G&d!!84?^y?Y)nB+uqabO~9Pz*EzK3z^49NoFnMEk&iBF z4ys2S?N2A2@Sf_@>piKrc7}R`>8wXR>xX*1U!AqyV7}}`y$3|S-=4MJ;P#H8UP#pY z{aNb`Zf^q4(s#pjLzm@SjKc!dyY6GX-gnR19)MVI$eN@k^AEvu8o%|(su1-)IBR=@ z={$&f7kr|(xBpv=pA~cRsgPdpf1Q=i!TfZio}*i@clL1@Os609zAx&18@_Bsz1`7z zXXVRaI**`U@85JfQ@#aXQnA&&4-+U|^h%vygVw{~_U=Nx+<)lxzRkQ|i+Y-!d_aT&5k4ZqwIbXg!c8LlHxcd> z;a(B$7vZ}iJS@V0h_F|LMq0SItRlQvgiaA&D?%MA@l0?a!GQz^5*$cyAi;qI2NE1e za3H~f1P2lvNO0hP76(RLX)kr6OBcHEb5#rUAHlm9uix+^cr(Atn%Q^lBU~kU#U<`# zOUq00=9iUIUUGb%c>PED&ba)1{`wA?&OJf8Bum>E#bncFTZlG)38)3?p47 z^iyn8@VeAjJ}W4JxKAt6a8XTKOshKNOcA!_j59&{a}azNoT-KthzFpH8F1QA#YC zUs<`VjFP=PS-zxfImZ?-Qfc`TyyB(OMoQwfaAo;YBykx^ii`6~*f4f}!J?&$%NLZ0 zAE0AZxvPBTvmczle0li-?{v?U8E%<9l!uqZtTvy$WSGq!HqM>DlBNuM)HJgS!B0(7 zDwnM+=P;cnUh=9*A7ysHMAL&8{Ugc5UL1*E9QAA8mytt=}C@~sAU zxgLAY0E)_IFJ82q?K1GC)M_-bpI(HTPts!(J^q0I6*89lIO4w;_!|1HiJ7B|;VZ*z z-zu>CVG~}R(@bPPFe!_c`e>o7F`3x&an*lfr1^F_uJ#MYDC{p{^;=9j#-~vGCDb;r zWdAUFR$?iXFPO_;(tl~po4;gH<*MoQ^M z^mvjUzoSQUG9Itc;~iLK(Mr*ZWe+S`fR6)SG8LBN=Q7Jyvaj&|x|cv2FU2EtDSjrB zuhbIOZSt~Tn&~rw682X!Gv;EUiMvGL3_>gUn};*_0KR`442aBXjd)Q2AOm9=$nuJarpj z7S1QKev-7Ta?t|zE`T;jvE1M2xgQ|+D|ak+x1M_#xvv()a{r>|b|d##A&~#52#>&Q zJl1~)kLU4uic#N9|CPjkG=v#v&1DTk*ds$s?EO0du(=G6H46;LejIu07GQbM>!#6B z+dSe9+{2NM{@&`fB8~4D_(f)5D#tes{F)-t__l#xMIw#w9Qbv&NaH&Pek~H|>zsOe zwMgUJ2Y&q+&(W~?M}JSX1?l0iV@H4Y@(&{I01N5bgPY2eMfz=#c8YWt(l*drBIxZE zX?%adFZu+B%AW)dx-JpvO(H!`r0G+6x?CcCNTlx&>0=`OU6Fo8qyr*N-+$0W-)vBO ze-Pc3kv=NY)uKO17*N7LR=jw01Rq zZW3ww-h{3xB8_iQ_%%nQ-@i^zFBa)!0slRb9xv!=5b0O3bK-YC5U2~P5&KK!Gnw~Bd=_dL}23NI6 z7Yh7866y65^zx@fn!eGY>p78rNsPyd_yJvVMI$Al*G6{rQ0Oi2-Q?-f_p{8^+Vvr^N*s!zSa-#!cU9(Dw_FDeQLK zF5D9CT-;M|yK&37^Kj?mR&aZ8PsKeAcLDA~+|zN-z)gGgOx&|@&&FMh+lzY+?zy<< z;l|~n`~Pn`ocIOfB@0XVZ|LGzxgk;U+s&leEm$%CLDHj2qT;_~)?8@03s{Ml#JO)- zNmRKj$*ZhdxlriiA~9ut*}`&Gl7|ycw4fi-*}ClR-_mR@$no)E)xA#r2f|nCw9xmD z(a#%sm3yILuGCdbRs!{m^v?(MA3(nT=3CNlrcC~Iq+b6F8YxH9r*`rrDT6|rjHRPW zWh{df$~Zl(Uw%Jzu3t%?GS@F#^p6@A`fRK?ro-|a91A#*P(kDKqAF{AUQ}s~&(qaU zJ%{w&IIXZRGpZf(9IlD;7>J2i@p)cMFYlMq^`yaB(2e?KM$`NNz)N(6U)MonbB-oW zd_nxY>6g!^P8=StzMcUM&mW9M&mM?G%<#S?&__u;dwOGQl+u^j!( zPssu1h-g-SfEfK$A>R1F!FfiX*@5zCX7(8zC@0R;KuKX_plF|Yfu{x;7ARMrO3|GP z8DN-hMIlCDAJcQ(6<-(1S_(+D}s4=*N%%2O8A+9skCmvA! zc$x(`4}fF7Z+>6SKpYm-CAuj*JC3jSQD;S6>IPl$IH=#zi{kWu#U&-4!lD_o$n>mV zWR#}LA|xKr9j#kZa(~s5ol%7zb(^`sf8qx*GzY1aOD%H#B^%cEe zptks!k#`Z?QGa%`Zk{N-#|`#qM|EicV|6)q&V?^$_hm;oC!GN&r$MBn)jIMsB>lK zS^UQc?+k&l$y&$#9%UCE#m^hp@AsMEAMu@FyZs)x#^bbo2Q=-iy9VSLn|QFdZX6P9 zZ(SOK^Wbkp2U9;G*Kl>GV53By`bqG}IP#uSb4sgms8zin66M-*YxF10HQB08N>$yd z=E%ixbZ~_xA5&`_TFoi7%F-d*$!es^R&BajtLohs`4G>HR+MtwbJV@TBaRM$z@M9o z+pIK~1Ha>GQ_ZQNf8bltjy%{&!R5RO(cD8kcLL>BbmYM-6l{0g!?Dd(JLUvCGKuMX z!PpM@7zYaOYNXHyw;`cM{18o0K2{v;C=Tu|uB$mlww$W>HTh^oa7QEJ%x4GFk}?qm z=eo&JsrvSu*>y)Y1B~U0gq}G z*^d(1raurykZ?4V1e9=`rY@fZ=!_msuGeP4AJ>{O#w@wsR)4nzy+yrUPFA7T{8-Dv zu+}S-xq@6EUyS+jV>O5KJ2VX+s%qXfYOWbI5Yg&(pcM=Seh=0h1#$zZp%uSa-(Vyx zGm6#M)WUVay~)A0${xAit`@Gh)vv}dY4RG4ZL;g$#%v9Xk=2uLG5D(SGw5338vH_R z1O0$3{3F9XvN|&pzD?j5R{z;qlqk3BeuNEsfJiOM(ekWksO8r3%<9|yD*+5YN1N86 zu5xKLjc`6ozuT*XA4I!xjRGsRTa>Bg+0Rtput%LqjmA~sbh^Q8t#KW~zgDDn8wUH)6Ts)XNS2WiQh48Dtc@*RdM8}U0g$CRI{=H^g=(RVFIp+|BU ztFF|faWsL)Wdd8xns@FFz;&%0Fy!ZGLv{8Bo9H)D?HUhg2+z}M>Vuyd)S9(E3wqka z48DsoI`DjaJ8YAH=rO|g@r@KOZ0wK^6QMm4euLM;Tbu$P$HA@R$SdN0vI1%~>+y@a z(zuwf17G=$)I9l)I>+7CeOiJ)pjx2Mqc&`vuI-M5H^F?6eFa*(xdIzfYz~DR5`Y zD+32={srhXxhq;8owqf5HbMM`N7oW2+D-_PFaq-Up_#CU*q)Dj;tipUV6&QWvF-koy z%(1I97oTJ8Hxaity~ACgV7R%%1cPKTNM^L84W-`|pM{qywrBG#yIe#FI{i2*fmwUh ze5Do4mW62rh}elD7M`uu?67UK<*PM2 zcGG(s5OEZN?lyT`U-P=#WW9NEmto?q!+CNX0p=N1twDLGkrS|!2>4Yv1w97`FmJP|trfzZ zC480@wrdYr4JWvlC?vwS@v?TvXLzwx_lDE3B|)%IjbaXQ)Cb255@N32lD)WRb|C+nuUX4_`HMLk+k zcjBMyfs_i{F86IlJd1C`8ZZUBZpZ3v`^Y+MPuK~N57+}^IfwyI$1PYTaS+I|-V*%q z_F->?F9+;y_Q1t?$TJVs3%agA8L$m&gKC18)?63#*zBq!wlxo6ejuN+JIuL6 zxmDdSSVM}g%gnjNqn5s?wJ&P#i#qkF7aO2OEfOgpVVbT>6BeeqEc=38X5zg_J7O46 zn9LJU^T0B~qd~#M@7I@1#Q!TjM-r8e7PCW$usefCQZRIIiftw3{Ag&N?z#A)reMx! zJ}#jaRNH|rM#9z5;xUTnYk5#S?V2l7H9}p#l#;F-b!bl>rt#cro2>jD1OI3 z2A-_BTo8G3N-QTubGa$UiJTOU(y6%$RO3K2#*Efrdx}2So*OBs4<0F{BgGzdFLz#e z$hPeuI@;*PNy%#s{p1)qqOmpHg1N8NShQO5P?&=+g32g*!v896X4Bea1c|zhbNZ5J2itIFPYzI|`plA+@T#t-Re%zPe@jFO&}< z(7f%yr;9?UNyQL_lYxQjR@jCLH2I+BeMPIGb?unk-I4cteq+^)JG#X0IAw(#uyRR5V7GIj?h1jJngi1kQTU+-P225_t8z(|RfQ5&4$giNA z(5hYuwwFdHbD>3>nXE~U^JQ!BWoRqO!A@(|exGHZ+S$DeznmGHgklQP-1A!1qLh8z zPoh{%S67OFvx1CZFBF`Phw0QoI%W8(V6U++!^pxTg1si&+E&}PRzs`G;r6NfyNmkJ z1*k5^7@N`#Ew~E9jfr(BTso*c0k=TG24vEXHf;jmU+#=M*J^e7DCB73)<&fkOy`KI zE^G=;!bb;G`$wqV-Ahv|I0=R5gevdUj6E)k%Qqap$5FzxTukdKaB&CqO9SJotWaA! zL&ho-H zIGmm!+uNz-yRxwArpvEj@oDl_Ro)Li!EkZ9Y0l{i>dYtbset_mZmC9K*`=Wh7FVI& zBzLL?O(t7_7u0Bl4mdd*FTY}v4WrOqcRXS4)t!>HLUu!N@fn&FTkc+SV7c|CO0!v>RzNU zBllKegB@`xe(#qyRw|f`f^b#^Ia;PAbE3&*3`KfLusEPbm@x#{$?be&f?z;}+3*QU zR+EmcLMz;tZ#$*#)lXg4CY*3+lanoc|Lmk;C9GdT zE8*_by@wkP(4@z2PVh>yRfoKZ zkYPf1lRtI7>~Or=iZvz{UsJ9zd@=XAK3Xf>nnhLkDr}N)#P*^N1aEgCEwTZtkmOhB z823A8Ye>h~(-w)j=$eEzq7|j8-ou&)C+J$c+6JLIUdj|+)ekrH@Kw6ecMJA)t%$o+ z=d09fX_60t)qP78^F?2x4_-s#b%-xf=#xZf)rD9iT5cwk$h18!+YB5Uy_>`)6Ry;t zYbO3fU#4gPlQT2(6!!EmKc1{}yH*s0pvdW|ON`M@>P(PVuXWC=+Y z9!^d=XOK^IdCM^A6gMko74ES8tQAL_JoxGSAVNDtJ63%5RHt9natko(26@wIxe z^!Kr7A6``tXB<#Z1lx=i9YZ6h!_e@o@RL5dLN(9K&3dbr)YX|ZLF|Bx?kup*5QgXA zw}=#jy`kR$SFn9TpSDjnQXGztxYWXfs`se2!eQG!%dWm*dse{~bxLmI$td#-SY& z&mMJerdUO8XMZOiEkGYG}J(s-5__8ML#0HV(5Tomp#Yof0d>^ z>^^4S#cHSKv8Z2+S0;Eullm5q#dkSi)Gy*!2I+w#01`Ihr1r#w!rST>8NA5$o(XVjUQt4l!b%$40C(He%~B zVz8AB8Z?Ncm1v%J8(k5E;A)|ntxa_{?5pB}YZD2sEI1%od67mbA|%fiNFIsg&fy3&3vVkN*=C>T|2cI41Li6)$QuVqo{hY8 zb5!zd2H8=`Q`xt8%)VqHcIc?H$rE}HK8eMWv)~j)8YB)`n_@DDR@QcckvE--w2{EM zK53JRR8-o$IXo(DB3EFypV%jDLLG3jFj&;w8WS~#P+^d$`7hqp>5$ELr-#tk*YE0e zN16dlV#w>jD3g{7V{Eq_+e#yphHbAk%AI_NKd$fahqx6W^bEWu(+>X}&GK*9;kTY? zhu4q!x&4m$%`ke9in`8LPcCV&Q>Z6x+wccB%rF*g%7};s+aa$7(O72dRTu%t4scwp z+L$K8mMR}glQ)r)*&$QMSXvv**qXdvt7_2{^NzYeAaMMjYHwTb6>Xmy4JX@94o%ym z$t_0j@kU3T=3UPrXjfX&tjWzLZ!5HB!#4>cAKHvo=V{32NA32nyNB(?~~L>Ixjev6^Z&R~*&P&&*s7Ota-;>FtoU2w}#1$O9f zA!|ZW~v7ZQJlC z?@(W)_kJ0Xv<3>1v#FzDo~VR(klb6e#w%-0gcciEzbW@&bjpd@^me0Txb_$|hS$T# ze^011j?nZN#iJ8TK;sQJ=3XB-k*jf{O^;DL3U2gnYAnt$YL5|-5#B$o$&aY%Me4DE z<2E!=mAV&s?=c9rhABwXbkSvKdPhSk0n})>%_V4%jp!z z;VG#FpMtqUm!}QnD3UViHM=*^y#WZLA~nE8Y9p2Q6R80%QX8phE>iD9j6`Y)LcDbE zCsO&D&It!mv>S1T^oi89+Dv|?zz(@20<^2G;15Gvs(5%jCvKd2%DsHlwL+HQxus4OkVu!t}bt-V!gYoDuLm1ly z&hhi+SC@d2;&VRlIcU=)1p%A9#tlJc2vFJ&Pt!RVhe3Yw`vb7{Kl$~&G>9HYe+igA z3hR*~>B*0y^reA*9KDCg`@cGl)_oa0j;5RgQPzG${qy2DqBbN&iQ0$kZ^JV>cyhKK zhKPjqoWu-$ArmUZ+*0=vAHl#HVC~1Vc$@SmXdG7IYnp=eGj|032}}mCPhvdBh@2aM zU-q! zH3h#!9yR#}n(UCf2%tLvVTJSU&SD&xJ2@$;+(lNuKMLTD$n3rYP+B3$M+-s5&|?pN z0_C*m@EJxky~iUvVyV}Fme9T|DH{*K2uLt*;d`%p5$$vN^R(sM+-uvNpGSlB zIu3^A+SvVi-+;xc+|x|bpi{!Gzp(Wxl|aw^eR)SO4WcWWYHsA zz6#rd4pu~9(**(1FSo>}OcMmmEP}a~P;t-T5P*Gn(z`c;BU*k6NXVA$@LCRQqg}<{ zqvBI480niFjkeve?14|V-A3AX!2M7UL@K>u%y*(LKDcV`kT_fM1q|w-r`lX6|47TW z+wllM)R|`btV|GRw{6caLNTm_daiI)jyG)iv(Av84rXaZ=?w>JhjzHqX$655nz17n zLqv|rtw!HaB&YxhgKs$JsUz5F#5X#4slZ*gZys{)IC<@qH*V z@QLPVaEj&|wTNt}4|uO;B`qS<34s&aJ%UG)VM7EYH#fy0ZoqEC_ZJS)XGR7j869ak z=oG91x_vL98QmB3nfy(k&3iR|wl2<7HT^=}Kws7|Z1k&;gS=w@SNX9fCh;K}5YmP~ z*CcUA{ZvyL+aLa~-vHwr)gEx!yMAQBJs>xcOmHBI;#)-g za>QFj{5Hf7h`4_YW1ot+2l*#O{5s?h2Xl!AJK|0eUk8||FXk?RT4c?<`{gGC*sBE`&S}93i%`Oi4pPYZ&xukM#L4+kRjr4047(&hk%|U5pPBQ-H1nh z4=;|3$NNNH6PN#FT>STO@fYLbuf@ebii;nMi<|ICT(sTcaq*P6_ziLKDRFUcTzpYn z{Gqt`BXRMc>v4=4=44!aS6uw{xcGm>#s3}`KOGmhV$Fem^oX$w%_QWrIb<3}05#l>_eqAO){ConxqTgTP zzf1TvT7=kc_~jHKmL0z^mHCA!%CA%rjuqk6BD_X~^x-L8SW5iD(&QJGE5ESZ_(gj& zUDxXYnwxG*)y) z`K_n=KT&4HI2bVoM)2PV-W$PpBY18Ezm4Fv5qvg+$42ni2;LgOS0i{z+qcn)8+kFjN6NQ4(_?Q=i&Yi?mKWh;h|)p&+Go~PZuq{ z56-YFmysFFK5@_PAN$_k zr+cQ%aLXlU@NFF}>6_*PTf#>+cN|S_vlBkDt5#IZFT)C*?Jg+!@8BbQCFDY7xpT>~ z1yz;hEO8|`aLyb!{r8iv0T}8Tzo6lft1)vIl)47QaS}5qXY~KaT)cvA6<|Y=NW#s} z5Z~ng52yOg&|2@(LuM3+SU|7NlO-j~7nQACwdCGql`DN!_ht;HA={!iM`1r4l%~rG zAA(=&|BtcT3HCD)#^^v^EdEV?2vPSa;GyR7(1iGzF5=^wfxh>2-k~bzC54=igoAh~ zR6L65*O}{+8$=fY#Aw!`^=C;*<@^$zk0r}}q&B*xVkoqImy38101gV{anP7Laih-C z%5T8Y2r!Jji^6yuG@o3!sV`sahY(!q&p>hiKG?w+t@`F!8PiPv90F>l5E zCFKt;Td{cMM3N9bU&UGd-ccbCF*;f%Piy-1&|&j0FIoF!_xqWlSAT;%>I05QGihw@ z#tGL6FNf8LV~uh`5%9H3>leo#e)M+YRJ>46&uv8rO6ML!h~tTO0YVA4xTvq}O59f5 zIQj^eenT(?ai5DXKv5UR8d3M0`EpjC02QYPN45Sqzs?unpgQwR=Tpz)>&#xY(pSFZ z`rMcUL24;+B{-1aK!O7a4kS2`;J|-t4)`s`r*ofVNi~her~MYw(=~yz>RX{L)~&g* zphh)4?YEku=|j^4W@n97Ry{2ec_mhFp;4>0F1-ON4#+WdmO5f*SWYh5aHcwI+#`PqoKikW?K%_5`2RmZIUq?vEkq!}Fn z6H5t{v2<$3^#sc-W|ka(nbD!(m0YpQJ~=a&8T|VU*9XkZQu{DySsyvlg5O=tEQ>^n znRzndm>9%6lqZ<8R-NZ6SkIi9E+~JI$o?oFC|#rIyvT%(c`Jnw+S5}<;A}e-nh;+4#D%N2( zuoRjjncpkUs;>_BBllPf;J}q*3-%s9UlY$SiNyN7R zP9U{TmRb8a@x{^-d>6jOTbOg=2A*yXe2aRZhLbbxiU)PNM!1KjB{0l}^ zQ$F(E@z;!6<$Bn1*Gea|2RE?dtQ3}e-(H-H{9NSc8rJfDjbb@<=PE_bcQRMtGR&o6tO$4&@Z`+xDOg7X>k}WTy@hCRG1^;<_7Vh zX?vcH%PHZ9MnkJH-BoLPsT%vFt8OwgV{H`t{rBt!gsw;DGvyRpNVL)XUf^fb-a@`x zVb_iTz7(;~Z3(0>CC7E|qS9R7%G!XP=IMIccWZ+mV@{3xgzv?5=v!I(5!9{H=U7s2 z;OAIV*f%m;F^A`~oXjq~8?H~k0WjYU06ud*%cOGP_>jtxe<}KJ%?vOj=79wv6EF-o z2#(KR=~v(p>LQ({u%zYy_>jGarJ&BZf%SD7)8-4B7G%HA3J50q7tBI!Aan-q0ez#f z|KG;Ub*q`B8J2`cbHJ+3qEO`9yOoHEVO}8ZecEe>7{Rh-)XdOH2axV z+F(|wKJgsoEU*)Ev?YyTWQCa~1$Kdcl-FFI_Ll!E!&}mi4V#D$;ES~`2m7nwhrbc@ z-#68PemDBdM^$G5A9zvOco<_@k9VwH!*hy1+jqLyIDB$3+jrXk@%(3sJ;O7LbN8KI zmxTAPkuO+#E}M(_Q@CwUj|JN@`rX7Vb-Z}3h^goL`KN1~>}qe?EvNk^>6t7GGuM!vcp zLN3oH5rnayr&3%y5+ELY5Qly7)eQ7kHA{2#Z=4);H&iap-Nu?8Dmt zH*}(r4UKOT@}800&n#m`j#uS)+ktnT-)w(|^U*Zo8SHNcUaspNA(U4Sn5zp=Zp|vi z_}+yvYs5UcZzSn2IiSnJ>2XFPevj#Cou+*e>@C*E$8f$`Km&9xdQUz)CznMIXDt@| z);K+_XwM?}U3r#v+-S#qtJCYHwy2%?Y2G<{TW`OJw(P~ZuIv4|%1<+MBN1w^m|Z-X z+C+O@Xiw*>-rf$-y$>6;I9-i(s=+>h`~^sxGXX=q zLSI?Uwa`g-GB^5Vp#A_R6Z@H?aTsHb9>B2+u_v>XzVt{3>P4WhT2Lpl4scm%kqG+p z3ixTDy{8uZbUhJSmt~1WCN?6zKH?*sBy&oKG6Tsc;N)@%Q^yFIOZ$1I(9^JwUiHg= z`xh(9ZUHe@vXZ3x(=Q=C3{Q|Xvb`>@@HKsd? zJfb7Z1zNi>Cl-z(eznx37ClpwJGZya?!^#S^`S%el5 zT199VA?JB>knu2p^%S@l-)>P|J#Hy38~RXO+7TB|7C12W&aSAAyZg$>VR5Fg)0u*F zT>r`J>Y7WZ@bg7Y_B5`G(;01A4qR)x+$Fr}`o5nlDGapZCM%YQ7A4Twjji zcQ;>(ykBs*9D%<8dR{#K)HwXfgg>*C_>DG3>3blhW9I?lMf_QW(yK;sKKNVsxoafx zp?Fl@ZN-=Ey{$Oq`?pPte7TQ!;@V|M4!*-Ckxa^LWzPAQ2+QeWkt`>R-0H%4bOUsP zUCgPlE6YiD!5Rt8eb{yV+|t14%m8S@Jn^TzSzX&eI@p!-g={Nrxt!UvTP(wdChg6%Cp8ZnV=h2C=YEuzjj=22^2&jA z^|GrvV*6 z1s%{y^WDJrn^JZoNe*8 z8+(3w;33FVGtM%tm?IyO{-2@-3^wby24va5u}LGY;z5YmistZA(9Yekr%N- zA6{&Mg%P&+FkX<5h4@+!P6S@pGG9Un5j2sp0yveEmG%i?H*Ii>2S{)csqES*P8<)J zIyQws0DlaQ-HAQ5DGsiyct{yBD*N~qjL`~oMB2c0cCst`24h+c!azZ{*1-BBoDy5L;1TowRl)b_hisc) z(Hn~en~M85zM5+@pO{OJ{95Og4i+1=!S8S+gFuxS%tAP4fvujIUT z-lC{cZ0=w-L3Hd`SL`Keuh?G6!Nl_}VuP{2R=5cJTY&v7zPBoPf;K!TIm1u7G&c2s z4_){&dYnv~t7%tLaW(VnQDPsj^`NTMcA7pEJI(wHIBj)E6`VkavC;0gtlM!W#wjo3 zlGC+L@+Oi`TzvX#>&P>#P(HD}Q7hM{ZDBt8X(jYi;#Z&OMFrRAoIfId*-g2+?Id=; z*D97WvHPOy8Uu>Xwr@Lm<@(N#kF-mlitbh@{o7^e?s;236S^CSe)o(D7AQA%Bu99J z`6@b3-BbN^`55`h!Rr!(yLzri2hh=rbs7vnr*ms#@4RheTxa>`hmdD!G3= z{_0WYa54FUHR!0DJR|W8b2JlwFnIlLeeU4(=q=YMx5yJ3{V%cZR;u&iAI9~c@$rlP zS8Lt(qwBPpd-HK_oeRcK&Wx(#bzCP9?9+4q0A-<$YusbzT1xULIr`c?YKI;(t}nP5 z$pSNJoA|aji&}fJMg_D>LjuHa$m=~6?$9+Pq}6}eHr)7OYj?&_OlmD zECaswVj~#CIL6jgOB?#C!Pqmpo%npwKOo1_6RQ{8e`8}bIo%{ipZiePbt}Q>Kmwzw6QzC;(FK{SH)5B+x<86k_VIDimxts6aC&9 zJ%6Qbx?LuB9`|#8=8E-2+WYy%qqSdLh+WRdE*FVkeD24_FZOoVs~OnXOwn1fyR!li z{YgI2YaN!nUEVU8GtAYu&=0V(?|k$J=gvnDW*6Et8JQDL-waW7V z`4Rd406A0nzHgiI$oGAZs$u&3Rcbir-qZc3%GZq@;r>gxo>%%_)BtMeoqrS1f?ZQ;9 zpILF7xg^*ZA9LwT$9(RGeS0q#`+j@R(AYPY9Pk+MC!1n>RS2>kTj0e-F${1m*57Cf!-aob7%#@T%u^Uk4@_^%Fp+&cgt{Rw}2S3__PX0G>@QRWBaWHrP#W;Ay!y%PBfiame5C>~x zznMD#1Am*uz}%_YW|%zO=Zq6E8z*u{epZ|~b|Q8r{L6(^k*|ZjXTgQn@2wIXbL3KX zYG2-O`|`E1H#-bwY~A)Bm%xngVqc$E^HicJ!`757GjB9w+y;X@AZLB@65}!$& zRvUZQ&L0jIqbaW6@(_n{mLujE@N)h(?5FL57l)Al_xRw z?aHUezEAROqfd(uVm%Lr1XlQD-pHJZWHKKnvi{>{KKv2$;n(r`P~+>!bj*iEW|QteC7DxT*2P%3=bQ=_DLYn#Oa4TBD(YU0g@f0%u~7V?L1IOjSM)Kl z;v07U=U6Pv+$-!p{TX6K@-Cb^XmY>(W5usCUf68>7ReP=hgA0JI1XyRjW!R&LHtNN zR(u10y-)6S02cZkSjarmSh&z&Vf`RjxWS2qZ~hmt@Ra!0eHQ=JD(e9zHf$9=jbmZ7 z$6#TeBR0$_H*6!nOz0OWK1E zf2^^Pxu)#^dhfIYm!C%(p<}pY%r)Y^i}5gLZ%B<8!?;``kMs{yoS10mkv^9F2qup- zBEKIlI&#bLT&>P|NgioHY#8~aGv_rz;txlBm@T;~M|>zbuMzBp$ZnynTYsnVA@(*B zj}I4;E7LLJKmA17W5l<{x&fcQ6ikob25aah*p5dZ#rQS#ohhKzp` zb1migW!>L@{IbUPA3wpC?6Q!`eDw1fzw<9A?=kZ(Jx7NcKh`nhIZm+i;7xxI78Ga8 zUI(#hW%gQI_ICEh=(Q$UFSUeO(6N3 z;jf8(kapF^eswp$m%T>f=ao`_wcG>y4ReAue|vD3tOrrHbB*=|+&cGMgg@ZeFR9}b z`}Zy>k1S=GRK)q5cx;-!)iW>Uk-zqx@DWA8@TQ%9c|$Yrt{(L+zl= zh0$#<(fsQ%&+WT`KKkz7>r84$(Rk5zOddcIv_OX6Q z+XwCol=6;_C680)y`Mdl2Z~kQfc=kU2iB@Ay!ax=0*#Yi z{Od0I^u)HTjZ)Utsp{`oVyWjJ%4+Q$p+>#Dk36;t<%QL`3)C;ERP)O3pUZkW@%t%= zeSf8&DCK`gWlVdifY@AeOz4JSxO2@lq5rb)c0c-mY;t0KMQl&ypE19-4_iyW&e3y~ zb!)LBdX48fJ5PxoxsI59yW}$uGH3sl`Zr5Gu|N8nj(xqNH|)Fpmdsu1Tk$q@Y;=EL z_J@mqanHAh&5(WN?E6Tr(e^L*q$tl!QSKeO+|!q$+)7ctJ4JbGit<$L)BEl(-9H)6 z41NBL$5NEPm7@IN6y>25<$)CCbt%d#Qr#Qds_|U(1?M+c0Nl~5{Kl3=9rpDIR2KzY*4aq0hY~Iqa;m*zSz?~LS%qsDw zzYQ&$)(5`QdUxAKb$Ra%WPR>4zd4ZWHEz0QYhX)r^H&2cn*#hxdvoI*G$YxL);k;5 z2R7WfX=`9Z3lD%uv~No@N96F9mTxpGwVB2*vXrX2<%3_$E5{~sjz8)13T3j*<+1-= zqA}@Dx(CudknVwW52Sk_-2>?!NcTXx2hu%|?tydF%1^xROhD&N$&R=Obvi?5baMIBF`%=SsD4G6FI$ZO5 z!&e!;*6{U)Z#2Bs@HWG@8s2Vr#Bj^-?S}8LInSJSsrbhy??15fA!>?|U+2IABfo`Q zZ_6V+$ZbYmi+rywkK%sS9~=2N@;+PsVgUJok$aGzu;u(!$j{pHMEX*_X3J&tgL-!q zqeLG{Th%D`nj-H+9&O~^$X6M8FY=8>=KQW|d7eIRAqXJX+p_-^CcyqEMwJYWI6wPMh>#X;I`$W2y&h|UX6UMIX)k`%E&X2>r5TS z#ocUV?$>SFHq(pTWgj2;4)Pvbo_!wq&y6gm1yo^~AhUu=2u6H0l8*>cfR;r>IOM|)`R6X>HX1yv&mq6-kYh=C_(+FbDtiFz1m&eiTS1U+8X_K^b8N~cn>;ThkUjdhMu{&BVf#g1<-8|}E-@}*TUxMVm z7DGJRUf)kOyx!suA9+TleE5$s{qY$-#_&AD#~SW8Jm2tfh8GxKXn2v~#fD#Lc);-S zhF@j))rO<9`ZK}siH2WeICfEgCK-OM;gbz7Gkl8S@@N(LTyHZ~ZunHgrx`xo@EL~R zVE9bKZ!|n;xNHrS&up9Nf4>s3(*8cY1ulIXZ1BB&U;5(+@$p{t;)p%Q2UG!eQ6DupIN*Fuw_GH42P9mEqSR5>&ing&gW zWjk_Vha(SUca^ynIp3 KE&s>g;qaff$v9vD diff --git a/source/xcode/Frameworks/SDL_ttf.framework/Versions/Current b/source/xcode/Frameworks/SDL_ttf.framework/Versions/Current deleted file mode 120000 index 8c7e5a66..00000000 --- a/source/xcode/Frameworks/SDL_ttf.framework/Versions/Current +++ /dev/null @@ -1 +0,0 @@ -A \ No newline at end of file