From 524168b20b3a32d26cc9ca38f982940eda1a468e Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 2 Oct 2025 17:15:14 +0200 Subject: [PATCH 001/104] experiment: remove opengl adjusted segs in theory this should improve levelload times and reduce memory usage? gotta see if it really does, visually so far there seems to be no difference at all --- src/hardware/hw_bsp.c | 103 ---------------------------------- src/hardware/hw_main.cpp | 116 ++++++++------------------------------- src/p_setup.c | 11 ++++ src/r_defs.h | 12 ++-- 4 files changed, 43 insertions(+), 199 deletions(-) diff --git a/src/hardware/hw_bsp.c b/src/hardware/hw_bsp.c index 8cad91168..5889dcb44 100644 --- a/src/hardware/hw_bsp.c +++ b/src/hardware/hw_bsp.c @@ -80,14 +80,6 @@ static poly_t *HWR_AllocPoly(INT32 numpts) return p; } -static polyvertex_t *HWR_AllocVertex(void) -{ - polyvertex_t *p; - size_t size = sizeof(polyvertex_t); - p = Z_Malloc(size, PU_HWRPLANE, NULL); - return p; -} - /// \todo polygons should be freed in reverse order for efficiency, /// for now don't free because it doesn't free in reverse order static void HWR_FreePoly(poly_t *poly) @@ -855,100 +847,6 @@ static INT32 SolveTProblem(void) return numsplitpoly; } -#define NEARDIST (0.75f) -#define MYMAX (10000000000000.0f) - -/* Adjust true segs (from the segs lump) to be exactely the same as - * plane polygone segs - * This also convert fixed_t point of segs in float (in moste case - * it share the same vertice - */ -static void AdjustSegs(void) -{ - size_t i, count; - INT32 j; - seg_t *lseg; - poly_t *p; - INT32 v1found = 0, v2found = 0; - float nearv1, nearv2; - - for (i = 0; i < numsubsectors; i++) - { - count = subsectors[i].numlines; - lseg = &segs[subsectors[i].firstline]; - p = extrasubsectors[i].planepoly; - - if (!p) - continue; - - for (; count--; lseg++) - { - float distv1,distv2,tmp; - nearv1 = nearv2 = MYMAX; - - // Don't touch polyobject segs. We'll compensate - // for this when we go about drawing them. - if (lseg->polyseg) - continue; - - for (j = 0; j < p->numpts; j++) - { - distv1 = p->pts[j].x - FIXED_TO_FLOAT(lseg->v1->x); - tmp = p->pts[j].y - FIXED_TO_FLOAT(lseg->v1->y); - distv1 = distv1*distv1+tmp*tmp; - - if (distv1 <= nearv1) - { - v1found = j; - nearv1 = distv1; - } - - // the same with v2 - distv2 = p->pts[j].x - FIXED_TO_FLOAT(lseg->v2->x); - tmp = p->pts[j].y - FIXED_TO_FLOAT(lseg->v2->y); - distv2 = distv2*distv2+tmp*tmp; - - if (distv2 <= nearv2) - { - v2found = j; - nearv2 = distv2; - } - } - - if (nearv1 <= NEARDIST*NEARDIST) - // share vertice with segs - lseg->pv1 = &(p->pts[v1found]); - else - { - // BP: here we can do better, using PointInSeg and compute - // the right point position also split a polygone side to - // solve a T-intersection, but too mush work - - // convert fixed vertex to float vertex - polyvertex_t *pv = HWR_AllocVertex(); - pv->x = FIXED_TO_FLOAT(lseg->v1->x); - pv->y = FIXED_TO_FLOAT(lseg->v1->y); - lseg->pv1 = pv; - } - - if (nearv2 <= NEARDIST*NEARDIST) - lseg->pv2 = &(p->pts[v2found]); - else - { - polyvertex_t *pv = HWR_AllocVertex(); - pv->x = FIXED_TO_FLOAT(lseg->v2->x); - pv->y = FIXED_TO_FLOAT(lseg->v2->y); - lseg->pv2 = pv; - } - - lseg->pv1->x2 = FloatToFixed(lseg->pv1->x); - lseg->pv1->y2 = FloatToFixed(lseg->pv1->y); - lseg->pv2->x2 = FloatToFixed(lseg->pv2->x); - lseg->pv2->y2 = FloatToFixed(lseg->pv2->y); - } - } -} - // call this routine after the BSP of a Doom wad file is loaded, // and it will generate all the convex polys for the hardware renderer @@ -1017,7 +915,6 @@ void HWR_CreatePlanePolygons(INT32 bspnum) #else SolveTProblem(); #endif - AdjustSegs(); #ifdef DEBUG_HWBSP //debug debug.. diff --git a/src/hardware/hw_main.cpp b/src/hardware/hw_main.cpp index c88b075a1..dc8cb55c0 100644 --- a/src/hardware/hw_main.cpp +++ b/src/hardware/hw_main.cpp @@ -741,27 +741,11 @@ static void HWR_RenderPlane(subsector_t *subsector, extrasubsector_t *xsub, bool P_ClosestPointOnLine(viewx, viewy, ld, &v); dist = FixedToFloat(R_PointToDist(v.x, v.y)); - if (line->pv1) - { - x1 = line->pv1->x; - y1 = line->pv1->y; - } - else - { - x1 = FixedToFloat(line->v1->x); - y1 = FixedToFloat(line->v1->y); - } + x1 = (line->fv1.x); + y1 = (line->fv1.y); - if (line->pv2) - { - xd = line->pv2->x - x1; - yd = line->pv2->y - y1; - } - else - { - xd = FixedToFloat(line->v2->x) - x1; - yd = FixedToFloat(line->v2->y) - y1; - } + xd = (line->fv2.x) - x1; + yd = (line->fv2.y) - y1; // Based on the seg length and the distance from the line, split horizon into multiple poly sets to reduce distortion dist = sqrtf((xd*xd) + (yd*yd)) / dist / 16.0f; @@ -825,11 +809,11 @@ static void HWR_DrawSegsSplats(FSurfaceInfo * pSurf) M_ClearBox(segbbox); M_AddToBox(segbbox, - FloatToFixed(gl_curline->pv1->x), - FloatToFixed(gl_curline->pv1->y)); + FloatToFixed(gl_curline->fv1.x), + FloatToFixed(gl_curline->fv1.y)); M_AddToBox(segbbox, - FloatToFixed(gl_curline->pv2->x), - FloatToFixed(gl_curline->pv2->y)); + FloatToFixed(gl_curline->fv2.x), + FloatToFixed(gl_curline->fv2.y)); splat = (wallsplat_t *)gl_curline->linedef->splats; for (; splat; splat = splat->next) @@ -1324,35 +1308,15 @@ void HWR_ProcessSeg(void) // Sort of like GLWall::Process in GZDoom const boolean noencore = (gl_linedef->flags & ML_TFERLINE); - if (LIKELY(gl_curline->pv1)) - { - vs.x = gl_curline->pv1->x; - vs.y = gl_curline->pv1->y; - v1x = gl_curline->pv1->x2; - v1y = gl_curline->pv1->y2; - } - else - { - vs.x = FixedToFloat(gl_curline->v1->x); - vs.y = FixedToFloat(gl_curline->v1->y); - v1x = gl_curline->v1->x; - v1y = gl_curline->v1->y; - } + vs.x = (gl_curline->fv1.x); + vs.y = (gl_curline->fv1.y); + v1x = gl_curline->v1->x; + v1y = gl_curline->v1->y; - if (LIKELY(gl_curline->pv2)) - { - ve.x = gl_curline->pv2->x; - ve.y = gl_curline->pv2->y; - v2x = gl_curline->pv2->x2; - v2y = gl_curline->pv2->y2; - } - else - { - ve.x = FixedToFloat(gl_curline->v2->x); - ve.y = FixedToFloat(gl_curline->v2->y); - v2x = gl_curline->v2->x; - v2y = gl_curline->v2->y; - } + ve.x = (gl_curline->fv2.x); + ve.y = (gl_curline->fv2.y); + v2x = gl_curline->v2->x; + v2y = gl_curline->v2->y; #define SLOPEPARAMS(slope, end1, end2, normalheight) \ end1 = P_GetZAt(slope, v1x, v1y, normalheight); \ @@ -2203,27 +2167,11 @@ static boolean CheckClip(sector_t * afrontsector, sector_t * abacksector) { fixed_t v1x, v1y, v2x, v2y; // the seg's vertexes as fixed_t - if (LIKELY(gl_curline->pv1)) - { - v1x = gl_curline->pv1->x2; - v1y = gl_curline->pv1->y2; - } - else - { - v1x = gl_curline->v1->x; - v1y = gl_curline->v1->y; - } + v1x = gl_curline->v1->x; + v1y = gl_curline->v1->y; - if (LIKELY(gl_curline->pv2)) - { - v2x = gl_curline->pv2->x2; - v2y = gl_curline->pv2->y2; - } - else - { - v2x = gl_curline->v2->x; - v2y = gl_curline->v2->y; - } + v2x = gl_curline->v2->x; + v2y = gl_curline->v2->y; #define SLOPEPARAMS(slope, end1, end2, normalheight) \ end1 = P_GetZAt(slope, v1x, v1y, normalheight); \ @@ -2428,27 +2376,11 @@ static void HWR_AddLine(seg_t *line) gl_curline = line; - if (LIKELY(gl_curline->pv1)) - { - v1x = gl_curline->pv1->x2; - v1y = gl_curline->pv1->y2; - } - else - { - v1x = gl_curline->v1->x; - v1y = gl_curline->v1->y; - } + v1x = gl_curline->v1->x; + v1y = gl_curline->v1->y; - if (LIKELY(gl_curline->pv2)) - { - v2x = gl_curline->pv2->x2; - v2y = gl_curline->pv2->y2; - } - else - { - v2x = gl_curline->v2->x; - v2y = gl_curline->v2->y; - } + v2x = gl_curline->v2->x; + v2y = gl_curline->v2->y; // OPTIMIZE: quickly reject orthogonal back sides. angle1 = R_PointToAngle64(v1x, v1y); diff --git a/src/p_setup.c b/src/p_setup.c index 2ccbd1821..afdda1ded 100644 --- a/src/p_setup.c +++ b/src/p_setup.c @@ -544,7 +544,18 @@ static void P_LoadSegs(UINT8 *data) { li->v1 = &vertexes[SHORT(ml->v1)]; li->v2 = &vertexes[SHORT(ml->v2)]; +#ifdef HWRENDER + if (rendermode == render_opengl) + { + li->fv1.x = FixedToFloat(li->v1->x); + li->fv1.y = FixedToFloat(li->v1->y); + //li->fv1.z = FixedToFloat(li->v1->z); // z is unused in gl + li->fv2.x = FixedToFloat(li->v2->x); + li->fv2.y = FixedToFloat(li->v2->y); + //li->fv2.z = FixedToFloat(li->v2->z); + } +#endif li->length = P_SegLength(li); li->angle = (SHORT(ml->angle))<offset = (SHORT(ml->offset))< Date: Thu, 2 Oct 2025 18:37:05 +0200 Subject: [PATCH 002/104] a thousand curses upon you polyobjects! --- src/hardware/hw_main.cpp | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/src/hardware/hw_main.cpp b/src/hardware/hw_main.cpp index dc8cb55c0..1c7234d2c 100644 --- a/src/hardware/hw_main.cpp +++ b/src/hardware/hw_main.cpp @@ -729,6 +729,9 @@ static void HWR_RenderPlane(subsector_t *subsector, extrasubsector_t *xsub, bool for (i = 0; i < subsector->numlines; i++, line++) { + if (line->polyseg) + continue; + line_t* ld = line->linedef; // this check sucks and is a hotspot lel @@ -1308,16 +1311,26 @@ void HWR_ProcessSeg(void) // Sort of like GLWall::Process in GZDoom const boolean noencore = (gl_linedef->flags & ML_TFERLINE); - vs.x = (gl_curline->fv1.x); - vs.y = (gl_curline->fv1.y); v1x = gl_curline->v1->x; v1y = gl_curline->v1->y; - - ve.x = (gl_curline->fv2.x); - ve.y = (gl_curline->fv2.y); v2x = gl_curline->v2->x; v2y = gl_curline->v2->y; + if (gl_curline->polyseg) + { + vs.x = FixedToFloat(v1x); + vs.y = FixedToFloat(v1y); + ve.x = FixedToFloat(v2x); + ve.y = FixedToFloat(v2y); + } + else + { + vs.x = gl_curline->fv1.x; + vs.y = gl_curline->fv1.y; + ve.x = gl_curline->fv2.x; + ve.y = gl_curline->fv2.y; + } + #define SLOPEPARAMS(slope, end1, end2, normalheight) \ end1 = P_GetZAt(slope, v1x, v1y, normalheight); \ end2 = P_GetZAt(slope, v2x, v2y, normalheight); -- 2.54.0 From a3e97b90f692b7a7d8d07ec5aa2936e9e36421ea Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 23 Oct 2025 15:53:50 +0100 Subject: [PATCH 003/104] dont force directsound for sdl versions from 2.26.5 on windows directsound is deprecated since 13 years! superseeded by wasapi 2.26.5 sdl brought some major improvements to resampling which fixes the issues this aimed to work around, but instead this workaround caused a plethora of issues, like breaking loops in some cases or the votescreen music --- src/sdl/mixer_sound.c | 3 ++- src/sdl/sdl_sound.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/sdl/mixer_sound.c b/src/sdl/mixer_sound.c index 646d44135..484fe4550 100644 --- a/src/sdl/mixer_sound.c +++ b/src/sdl/mixer_sound.c @@ -169,9 +169,10 @@ void I_StartupSound(void) if (sound_started) return; -#ifdef _WIN32 +#if defined(_WIN32) && !SDL_VERSION_ATLEAST(2,26,5) // Force DirectSound instead of WASAPI // SDL 2.0.6+ defaults to the latter and it screws up our sound effects + // SDL 2.26.5 brought imrovements to resampling so this just screws up other stuff now SDL_setenv("SDL_AUDIODRIVER", "directsound", 1); #endif diff --git a/src/sdl/sdl_sound.c b/src/sdl/sdl_sound.c index c986b9b54..280b8f0d0 100644 --- a/src/sdl/sdl_sound.c +++ b/src/sdl/sdl_sound.c @@ -1073,9 +1073,10 @@ void I_StartupSound(void) // Configure sound device CONS_Printf("I_StartupSound:\n"); -#ifdef _WIN32 +#if defined(_WIN32) && !SDL_VERSION_ATLEAST(2,26,5) // Force DirectSound instead of WASAPI // SDL 2.0.6+ defaults to the latter and it screws up our sound effects + // SDL 2.26.5 brought imrovements to resampling so this just screws up other stuff now SDL_setenv("SDL_AUDIODRIVER", "directsound", 1); #endif -- 2.54.0 From 92ec4e65c1955597258ac1dfa6b55209695dd13c Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 23 Oct 2025 15:54:40 +0100 Subject: [PATCH 004/104] update sdl2_mixer to 2.8.1 since we use wasapi now we can finally update this to 2.8.1 hopefully without any regressions now --- libs/SDL2_mixer/CHANGES.txt | 66 + libs/SDL2_mixer/COPYING.txt | 20 - libs/SDL2_mixer/LICENSE.FLAC.txt | 32 - libs/SDL2_mixer/LICENSE.modplug.txt | 5 - libs/SDL2_mixer/LICENSE.mpg123.txt | 776 ----- libs/SDL2_mixer/LICENSE.ogg-vorbis.txt | 32 - libs/SDL2_mixer/LICENSE.opus.txt | 48 - libs/SDL2_mixer/LICENSE.opusfile.txt | 32 - libs/SDL2_mixer/LICENSE.txt | 17 + libs/SDL2_mixer/README.txt | 55 +- .../i686-w64-mingw32/bin/SDL2_mixer.dll | Bin 0 -> 322560 bytes .../i686-w64-mingw32/include/SDL2/SDL_mixer.h | 2858 +++++++++++++++-- .../lib/cmake/SDL2_mixer/FindFLAC.cmake | 44 + .../lib/cmake/SDL2_mixer/FindFluidSynth.cmake | 44 + .../lib/cmake/SDL2_mixer/FindOpusFile.cmake | 49 + .../lib/cmake/SDL2_mixer/FindVorbis.cmake | 44 + .../lib/cmake/SDL2_mixer/Findgme.cmake | 48 + .../cmake/SDL2_mixer/Findlibxmp-lite.cmake | 45 + .../lib/cmake/SDL2_mixer/Findlibxmp.cmake | 44 + .../lib/cmake/SDL2_mixer/Findmodplug.cmake | 43 + .../lib/cmake/SDL2_mixer/Findmpg123.cmake | 44 + .../lib/cmake/SDL2_mixer/Findtremor.cmake | 44 + .../lib/cmake/SDL2_mixer/Findwavpack.cmake | 37 + .../cmake/SDL2_mixer/PkgConfigHelper.cmake | 34 + .../sdl2_mixer-config-version.cmake | 12 + .../cmake/SDL2_mixer/sdl2_mixer-config.cmake | 195 ++ .../i686-w64-mingw32/lib/libSDL2_mixer.a | Bin 748702 -> 418580 bytes .../i686-w64-mingw32/lib/libSDL2_mixer.dll.a | Bin 48846 -> 65872 bytes .../i686-w64-mingw32/lib/libSDL2_mixer.la | 10 +- .../lib/pkgconfig/SDL2_mixer.pc | 11 +- .../x86_64-w64-mingw32/bin/SDL2_mixer.dll | Bin 0 -> 305152 bytes .../include/SDL2/SDL_mixer.h | 2858 +++++++++++++++-- .../lib/cmake/SDL2_mixer/FindFLAC.cmake | 44 + .../lib/cmake/SDL2_mixer/FindFluidSynth.cmake | 44 + .../lib/cmake/SDL2_mixer/FindOpusFile.cmake | 49 + .../lib/cmake/SDL2_mixer/FindVorbis.cmake | 44 + .../lib/cmake/SDL2_mixer/Findgme.cmake | 48 + .../cmake/SDL2_mixer/Findlibxmp-lite.cmake | 45 + .../lib/cmake/SDL2_mixer/Findlibxmp.cmake | 44 + .../lib/cmake/SDL2_mixer/Findmodplug.cmake | 43 + .../lib/cmake/SDL2_mixer/Findmpg123.cmake | 44 + .../lib/cmake/SDL2_mixer/Findtremor.cmake | 44 + .../lib/cmake/SDL2_mixer/Findwavpack.cmake | 37 + .../cmake/SDL2_mixer/PkgConfigHelper.cmake | 34 + .../sdl2_mixer-config-version.cmake | 12 + .../cmake/SDL2_mixer/sdl2_mixer-config.cmake | 195 ++ .../x86_64-w64-mingw32/lib/libSDL2_mixer.a | Bin 889966 -> 429240 bytes .../lib/libSDL2_mixer.dll.a | Bin 47780 -> 64498 bytes .../x86_64-w64-mingw32/lib/libSDL2_mixer.la | 10 +- .../lib/pkgconfig/SDL2_mixer.pc | 11 +- libs/dll-binaries/i686/SDL2_mixer.dll | Bin 119296 -> 356864 bytes libs/dll-binaries/i686/libogg-0.dll | Bin 47104 -> 30720 bytes libs/dll-binaries/i686/libopus-0.dll | Bin 114688 -> 348672 bytes libs/dll-binaries/i686/libopusfile-0.dll | Bin 49664 -> 51712 bytes libs/dll-binaries/x86_64/SDL2_mixer.dll | Bin 123904 -> 421376 bytes libs/dll-binaries/x86_64/libogg-0.dll | Bin 52224 -> 35328 bytes libs/dll-binaries/x86_64/libopus-0.dll | Bin 124928 -> 370176 bytes libs/dll-binaries/x86_64/libopusfile-0.dll | Bin 46592 -> 51200 bytes 58 files changed, 6613 insertions(+), 1682 deletions(-) delete mode 100644 libs/SDL2_mixer/COPYING.txt delete mode 100644 libs/SDL2_mixer/LICENSE.FLAC.txt delete mode 100644 libs/SDL2_mixer/LICENSE.modplug.txt delete mode 100644 libs/SDL2_mixer/LICENSE.mpg123.txt delete mode 100644 libs/SDL2_mixer/LICENSE.ogg-vorbis.txt delete mode 100644 libs/SDL2_mixer/LICENSE.opus.txt delete mode 100644 libs/SDL2_mixer/LICENSE.opusfile.txt create mode 100644 libs/SDL2_mixer/LICENSE.txt create mode 100644 libs/SDL2_mixer/i686-w64-mingw32/bin/SDL2_mixer.dll create mode 100644 libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/FindFLAC.cmake create mode 100644 libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/FindFluidSynth.cmake create mode 100644 libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/FindOpusFile.cmake create mode 100644 libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/FindVorbis.cmake create mode 100644 libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findgme.cmake create mode 100644 libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findlibxmp-lite.cmake create mode 100644 libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findlibxmp.cmake create mode 100644 libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findmodplug.cmake create mode 100644 libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findmpg123.cmake create mode 100644 libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findtremor.cmake create mode 100644 libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findwavpack.cmake create mode 100644 libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/PkgConfigHelper.cmake create mode 100644 libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/sdl2_mixer-config-version.cmake create mode 100644 libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/sdl2_mixer-config.cmake create mode 100644 libs/SDL2_mixer/x86_64-w64-mingw32/bin/SDL2_mixer.dll create mode 100644 libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/FindFLAC.cmake create mode 100644 libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/FindFluidSynth.cmake create mode 100644 libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/FindOpusFile.cmake create mode 100644 libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/FindVorbis.cmake create mode 100644 libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findgme.cmake create mode 100644 libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findlibxmp-lite.cmake create mode 100644 libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findlibxmp.cmake create mode 100644 libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findmodplug.cmake create mode 100644 libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findmpg123.cmake create mode 100644 libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findtremor.cmake create mode 100644 libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findwavpack.cmake create mode 100644 libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/PkgConfigHelper.cmake create mode 100644 libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/sdl2_mixer-config-version.cmake create mode 100644 libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/sdl2_mixer-config.cmake diff --git a/libs/SDL2_mixer/CHANGES.txt b/libs/SDL2_mixer/CHANGES.txt index 7760ddfe3..e76e27305 100644 --- a/libs/SDL2_mixer/CHANGES.txt +++ b/libs/SDL2_mixer/CHANGES.txt @@ -1,3 +1,69 @@ +2.8.1: + * Added Stop/Start/Pause/Resume for Fluidsynth + +2.8.0: + * Added support for loading wavpack sound files (https://www.wavpack.com/) + * Added support for loading classic console sound files using Game_Music_Emu (https://github.com/libgme/game-music-emu) + * Use minimp3 instead of dr_mp3 as the default backend for MP3 music + * Use libxmp instead of modplug as the default backend for MOD music + To use libmodplug instead, configure using --enable-music-mod-modplug --disable-music-mod-xmp + * Added support for FLAC audio in Ogg containers + * Added Mix_PauseAudio() to pause and resume all audio playback + * Added Mix_GetNumTracks() and Mix_StartTrack() for managing tracks in GME files + +2.6.2: + * Updated autotools to use ax_compute_relative_paths, fixing homebrew on macOS + +2.6.1: + * Fixed issue with incorrect version reported by pkg-config + +2.6.0: + * Added support for building with CMake + * Added support for playing Ogg files using stb_vorbis, which is now the default Vorbis backend. + To use libvorbis instead, configure using --disable-music-ogg-stb --enable-music-ogg-vorbis + * Added support for playing FLAC files using dr_flac, which is now the default FLAC music backend. + To use libflac instead, configure using --disable-music-flac-drflac --enable-music-flac-libflac + * Added support for playing MP3 files using dr_mp3, which is now the default MP3 music backend. + To use libmpg123 instead, configure using --disable-music-mp3-drmp3 --enable-music-mp3-mpg123 + * Added libxmp support for mod music playback. Modplug is still the default backend for MOD music. + To use libxmp instead, configure using --disable-music-mod-modplug --enable-music-mod-xmp + * Removed support for libmad as a MP3 music backend. + * Removed support for libmikmod as a MOD music backend. + * Added Mix_MasterVolume() for additional volume control over all channels + * Update Mix_Init() return value to match documentation, including MIXER_INIT_* flags for already-initialized modules + * Added Mix_HasMusicDecoder() + * Memory leak fixes and F32 format support to fluidsynth player + * Fixed distorted MIDI playback with FluidSynth if sample rate is out of library's limits + * Added Mix_ModMusicJumpToOrder() for mod music formats + * Enabled module internal loops in modplug player + * Respect original mp3 file offset + * Support setting soundfont via SDL_SOUNDFONTS in OSX native midi + * Fixed mp3 file detection + * Fixes to ogg playback on big-endian devices + * Added functions to get metadata information: + Mix_GetMusicTitle() + Mix_GetMusicTitleTag() + Mix_GetMusicArtistTag() + Mix_GetMusicAlbumTag() + Mix_GetMusicCopyrightTag() + * Add functions to get loop point information: + Mix_GetMusicLoopStartTime() + Mix_GetMusicLoopEndTime() + Mix_GetMusicLoopLengthTime() + * Added Mix_GetMusicVolume() and Mix_GetMusicPosition() + * Added Mix_MusicDuration() to return music duration in seconds + * Fixed music_mpg123 seek bug when sample rate of the file and the stream don't match + * Timidity improvements, added Mix_SetTimidityCfg() + * Improved mp3 tag detection/skipping + * Extended support for WAV files + * Allow rmid files be opened by native midi + * Fixed possible crash in win32 native midi + * Prevent clipping due to volume settings in modplug music + * Added looping support for Opus files + * Added looping support for FLAC files + * Improved OGG looping support + * Fixed loading Opus audio as audio chunks + 2.0.4: Ozkan Sezer - Wed, 10 Oct 2018 14:56:10 * Removed smpeg support for mp3 music, now that it's replaced by libmpg123 diff --git a/libs/SDL2_mixer/COPYING.txt b/libs/SDL2_mixer/COPYING.txt deleted file mode 100644 index 234a5a5ef..000000000 --- a/libs/SDL2_mixer/COPYING.txt +++ /dev/null @@ -1,20 +0,0 @@ -/* - SDL_mixer: An audio mixer library based on the SDL library - Copyright (C) 1997-2018 Sam Lantinga - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. -*/ diff --git a/libs/SDL2_mixer/LICENSE.FLAC.txt b/libs/SDL2_mixer/LICENSE.FLAC.txt deleted file mode 100644 index 2e67b77cb..000000000 --- a/libs/SDL2_mixer/LICENSE.FLAC.txt +++ /dev/null @@ -1,32 +0,0 @@ -The source code to this library used with SDL_mixer can be found here: -https://hg.libsdl.org/SDL_mixer/file/default/external ---- - -Copyright (C) 2000,2001,2002,2003,2004,2005,2006,2007 Josh Coalson - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: - -- Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. - -- Redistributions in binary form must reproduce the above copyright -notice, this list of conditions and the following disclaimer in the -documentation and/or other materials provided with the distribution. - -- Neither the name of the Xiph.org Foundation nor the names of its -contributors may be used to endorse or promote products derived from -this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR -CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/libs/SDL2_mixer/LICENSE.modplug.txt b/libs/SDL2_mixer/LICENSE.modplug.txt deleted file mode 100644 index a89532db8..000000000 --- a/libs/SDL2_mixer/LICENSE.modplug.txt +++ /dev/null @@ -1,5 +0,0 @@ -The source code to this library used with SDL_mixer can be found here: -https://hg.libsdl.org/SDL_mixer/file/default/external ---- - -ModPlug-XMMS and libmodplug are now in the public domain. diff --git a/libs/SDL2_mixer/LICENSE.mpg123.txt b/libs/SDL2_mixer/LICENSE.mpg123.txt deleted file mode 100644 index 2111cd79f..000000000 --- a/libs/SDL2_mixer/LICENSE.mpg123.txt +++ /dev/null @@ -1,776 +0,0 @@ -The source code to this library used with SDL_mixer can be found here: -https://hg.libsdl.org/SDL_mixer/file/default/external ---- - -This is the file that contains the terms of use, copying, etc. for the mpg123 distribution package. - -Main message, to include in "About ..." boxes, etc: - - Copyright (c) 1995-2013 by Michael Hipp and others, - free software under the terms of the LGPL v2.1 - -There is an attempt to cover the actual list of authors in the AUTHORS file. -Project maintainer since 2006 is Thomas Orgis and many people have contributed -since the Michael Hipp era, but he stays the initial source and it would -be impractical to count them all individually, so it's "and others". -Source files contain the phrase "the mpg123 project" to the same effect -in their license boilerplate; especially those that were added after -maintainership changed. The person mainly responsible for the first version -is usually named in the phrase "initially written by ...". - -All files in the distribution that don't carry a license note on their own are -licensed under the terms of the LGPL 2.1; exceptions may apply, especially to -files not in the official distribution but in the revision control repository. - -The formal license text follows. - -======================= -1. The LGPL version 2.1 -======================= - - - GNU LESSER GENERAL PUBLIC LICENSE - Version 2.1, February 1999 - - Copyright (C) 1991, 1999 Free Software Foundation, Inc. - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -[This is the first released version of the Lesser GPL. It also counts - as the successor of the GNU Library Public License, version 2, hence - the version number 2.1.] - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. - - This license, the Lesser General Public License, applies to some -specially designated software packages--typically libraries--of the -Free Software Foundation and other authors who decide to use it. You -can use it too, but we suggest you first think carefully about whether -this license or the ordinary General Public License is the better -strategy to use in any particular case, based on the explanations below. - - When we speak of free software, we are referring to freedom of use, -not price. Our General Public Licenses are designed to make sure that -you have the freedom to distribute copies of free software (and charge -for this service if you wish); that you receive source code or can get -it if you want it; that you can change the software and use pieces of -it in new free programs; and that you are informed that you can do -these things. - - To protect your rights, we need to make restrictions that forbid -distributors to deny you these rights or to ask you to surrender these -rights. These restrictions translate to certain responsibilities for -you if you distribute copies of the library or if you modify it. - - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link other code with the library, you must provide -complete object files to the recipients, so that they can relink them -with the library after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. - - We protect your rights with a two-step method: (1) we copyright the -library, and (2) we offer you this license, which gives you legal -permission to copy, distribute and/or modify the library. - - To protect each distributor, we want to make it very clear that -there is no warranty for the free library. Also, if the library is -modified by someone else and passed on, the recipients should know -that what they have is not the original version, so that the original -author's reputation will not be affected by problems that might be -introduced by others. - - Finally, software patents pose a constant threat to the existence of -any free program. We wish to make sure that a company cannot -effectively restrict the users of a free program by obtaining a -restrictive license from a patent holder. Therefore, we insist that -any patent license obtained for a version of the library must be -consistent with the full freedom of use specified in this license. - - Most GNU software, including some libraries, is covered by the -ordinary GNU General Public License. This license, the GNU Lesser -General Public License, applies to certain designated libraries, and -is quite different from the ordinary General Public License. We use -this license for certain libraries in order to permit linking those -libraries into non-free programs. - - When a program is linked with a library, whether statically or using -a shared library, the combination of the two is legally speaking a -combined work, a derivative of the original library. The ordinary -General Public License therefore permits such linking only if the -entire combination fits its criteria of freedom. The Lesser General -Public License permits more lax criteria for linking other code with -the library. - - We call this license the "Lesser" General Public License because it -does Less to protect the user's freedom than the ordinary General -Public License. It also provides other free software developers Less -of an advantage over competing non-free programs. These disadvantages -are the reason we use the ordinary General Public License for many -libraries. However, the Lesser license provides advantages in certain -special circumstances. - - For example, on rare occasions, there may be a special need to -encourage the widest possible use of a certain library, so that it becomes -a de-facto standard. To achieve this, non-free programs must be -allowed to use the library. A more frequent case is that a free -library does the same job as widely used non-free libraries. In this -case, there is little to gain by limiting the free library to free -software only, so we use the Lesser General Public License. - - In other cases, permission to use a particular library in non-free -programs enables a greater number of people to use a large body of -free software. For example, permission to use the GNU C Library in -non-free programs enables many more people to use the whole GNU -operating system, as well as its variant, the GNU/Linux operating -system. - - Although the Lesser General Public License is Less protective of the -users' freedom, it does ensure that the user of a program that is -linked with the Library has the freedom and the wherewithal to run -that program using a modified version of the Library. - - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, whereas the latter must -be combined with the library in order to run. - - GNU LESSER GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License Agreement applies to any software library or other -program which contains a notice placed by the copyright holder or -other authorized party saying it may be distributed under the terms of -this Lesser General Public License (also called "this License"). -Each licensee is addressed as "you". - - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. - - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) - - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control compilation -and installation of the library. - - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the -Library. - - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) The modified work must itself be a software library. - - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. - - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. - - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. - - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. - -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. - - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. - - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. - - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. - - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. - - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. - - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. - - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. - - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) - - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. - - 6. As an exception to the Sections above, you may also combine or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. - - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: - - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) - - b) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (1) uses at run time a - copy of the library already present on the user's computer system, - rather than copying library functions into the executable, and (2) - will operate properly with a modified version of the library, if - the user installs one, as long as the modified version is - interface-compatible with the version that the work was made with. - - c) Accompany the work with a written offer, valid for at - least three years, to give the same user the materials - specified in Subsection 6a, above, for a charge no more - than the cost of performing this distribution. - - d) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. - - e) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. - - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the materials to be distributed need not include anything that is -normally distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. - - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. - - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: - - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. - - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. - - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. - - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. - - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties with -this License. - - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. - -If any portion of this section is held invalid or unenforceable under any -particular circumstance, the balance of the section is intended to apply, -and the section as a whole is intended to apply in other circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License may add -an explicit geographical distribution limitation excluding those countries, -so that distribution is permitted only in or among countries not thus -excluded. In such case, this License incorporates the limitation as if -written in the body of this License. - - 13. The Free Software Foundation may publish revised and/or new -versions of the Lesser General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. - - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. - - NO WARRANTY - - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. - - END OF TERMS AND CONDITIONS - - -==================== -2. The GPL version 2 -==================== - - - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Lesser General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS diff --git a/libs/SDL2_mixer/LICENSE.ogg-vorbis.txt b/libs/SDL2_mixer/LICENSE.ogg-vorbis.txt deleted file mode 100644 index 6456dc4ed..000000000 --- a/libs/SDL2_mixer/LICENSE.ogg-vorbis.txt +++ /dev/null @@ -1,32 +0,0 @@ -The source code to this library used with SDL_mixer can be found here: -https://hg.libsdl.org/SDL_image/file/default/external ---- - -Copyright (c) 2002-2008 Xiph.org Foundation - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: - -- Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. - -- Redistributions in binary form must reproduce the above copyright -notice, this list of conditions and the following disclaimer in the -documentation and/or other materials provided with the distribution. - -- Neither the name of the Xiph.org Foundation nor the names of its -contributors may be used to endorse or promote products derived from -this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION -OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/libs/SDL2_mixer/LICENSE.opus.txt b/libs/SDL2_mixer/LICENSE.opus.txt deleted file mode 100644 index adb56a854..000000000 --- a/libs/SDL2_mixer/LICENSE.opus.txt +++ /dev/null @@ -1,48 +0,0 @@ -The source code to this library used with SDL_mixer can be found here: -https://hg.libsdl.org/SDL_mixer/file/default/external ---- - -Copyright 2001-2011 Xiph.Org, Skype Limited, Octasic, - Jean-Marc Valin, Timothy B. Terriberry, - CSIRO, Gregory Maxwell, Mark Borgerding, - Erik de Castro Lopo - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: - -- Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. - -- Redistributions in binary form must reproduce the above copyright -notice, this list of conditions and the following disclaimer in the -documentation and/or other materials provided with the distribution. - -- Neither the name of Internet Society, IETF or IETF Trust, nor the -names of specific contributors, may be used to endorse or promote -products derived from this software without specific prior written -permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER -OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -Opus is subject to the royalty-free patent licenses which are -specified at: - -Xiph.Org Foundation: -https://datatracker.ietf.org/ipr/1524/ - -Microsoft Corporation: -https://datatracker.ietf.org/ipr/1914/ - -Broadcom Corporation: -https://datatracker.ietf.org/ipr/1526/ diff --git a/libs/SDL2_mixer/LICENSE.opusfile.txt b/libs/SDL2_mixer/LICENSE.opusfile.txt deleted file mode 100644 index dfc9681fc..000000000 --- a/libs/SDL2_mixer/LICENSE.opusfile.txt +++ /dev/null @@ -1,32 +0,0 @@ -The source code to this library used with SDL_mixer can be found here: -https://hg.libsdl.org/SDL_mixer/file/default/external ---- - -Copyright (c) 1994-2013 Xiph.Org Foundation and contributors - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: - -- Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. - -- Redistributions in binary form must reproduce the above copyright -notice, this list of conditions and the following disclaimer in the -documentation and/or other materials provided with the distribution. - -- Neither the name of the Xiph.Org Foundation nor the names of its -contributors may be used to endorse or promote products derived from -this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION -OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/libs/SDL2_mixer/LICENSE.txt b/libs/SDL2_mixer/LICENSE.txt new file mode 100644 index 000000000..52d0ed38b --- /dev/null +++ b/libs/SDL2_mixer/LICENSE.txt @@ -0,0 +1,17 @@ +Copyright (C) 1997-2025 Sam Lantinga + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. diff --git a/libs/SDL2_mixer/README.txt b/libs/SDL2_mixer/README.txt index a639c37bc..66246a729 100644 --- a/libs/SDL2_mixer/README.txt +++ b/libs/SDL2_mixer/README.txt @@ -1,54 +1,31 @@ SDL_mixer 2.0 -The latest version of this library is available from: -http://www.libsdl.org/projects/SDL_mixer/ +The latest version of this library is available from GitHub: +https://github.com/libsdl-org/SDL_mixer/releases Due to popular demand, here is a simple multi-channel audio mixer. -It supports 8 channels of 16 bit stereo audio, plus a single channel -of music. +It supports 8 channels of 16 bit stereo audio, plus a single channel of music. It can load FLAC, MP3, Ogg, VOC, and WAV format audio. It can also load MIDI, MOD, and Opus audio, depending on build options (see the note below for details.) -See the header file SDL_mixer.h and the examples playwave.c and playmus.c -for documentation on this mixer library. +See the header file SDL_mixer.h and the examples playwave.c and playmus.c for documentation on this mixer library. This documentation is also available online at https://wiki.libsdl.org/SDL2_mixer -The mixer can currently load Microsoft WAVE files and Creative Labs VOC -files as audio samples, it can load FLAC files with libFLAC, it can load -Ogg Vorbis files with Ogg Vorbis or Tremor libraries, it can load MP3 files -using mpg123 or libmad, and it can load MIDI files with Timidity, -FluidSynth, and natively on Windows, Mac OSX, and Linux, and finally it can -load the following file formats via ModPlug or MikMod: .MOD .S3M .IT .XM. +The process of mixing MIDI files to wave output is very CPU intensive, so if playing regular WAVE files sound great, but playing MIDI files sound choppy, try using 8-bit audio, mono audio, or lower frequencies. -Tremor decoding is disabled by default; you can enable it by passing - --enable-music-ogg-tremor -to configure, or by defining MUSIC_OGG and OGG_USE_TREMOR. - -libmad decoding is disabled by default; you can enable it by passing - --enable-music-mp3-mad -to configure, or by defining MUSIC_MP3_MAD -vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv -WARNING: The license for libmad is GPL, which means that in order to - use it your application must also be GPL! -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The process of mixing MIDI files to wave output is very CPU intensive, -so if playing regular WAVE files sound great, but playing MIDI files -sound choppy, try using 8-bit audio, mono audio, or lower frequencies. - -To play MIDI files using FluidSynth, you'll need to set the SDL_SOUNDFONTS -environment variable to a Sound Font 2 (.sf2) file containing the musical -instruments you want to use for MIDI playback. +If you have built with FluidSynth support, you'll need to set the SDL_SOUNDFONTS environment variable to a Sound Font 2 (.sf2) file containing the musical instruments you want to use for MIDI playback. (On some Linux distributions you can install the fluid-soundfont-gm package) -To play MIDI files using Timidity, you'll need to get a complete set of -GUS patches from: +To play MIDI files using Timidity, you'll need to get a complete set of GUS patches from: http://www.libsdl.org/projects/mixer/timidity/timidity.tar.gz and unpack them in /usr/local/lib under UNIX, and C:\ under Win32. -iOS: -In order to use this library on iOS, you should include the SDL.xcodeproj -and Xcode-iOS/SDL_mixer.xcodeproj in your application, add the SDL/include -and SDL_mixer directories to your "Header Search Paths" setting, then add the -libSDL2.a and libSDL2_mixer.a to your "Link Binary with Libraries" setting. +This library is under the zlib license, see the file "LICENSE.txt" for details. -This library is under the zlib license, see the file "COPYING.txt" for details. +Note: +Support for software MIDI, MOD, and Opus are not included by default because of the size of the decode libraries, but you can get them by running external/download.sh +- When building with CMake, you can enable the appropriate SDL2MIXER_* options defined in CMakeLists.txt. SDL2MIXER_VENDORED allows switching between system and vendored libraries. +- When building with configure/make, you can build and install them normally and the configure script will detect and use them. +- When building with Visual Studio, you will need to build the libraries and then add the appropriate LOAD_* preprocessor define to the Visual Studio project. +- When building with Xcode, you can edit the config at the top of the project to enable them, and you will need to include the appropriate framework in your application. +- For Android, you can edit the config at the top of Android.mk to enable them. +The default MP3 support is provided using minimp3. SDL_mixer also supports using libmpg123: you can enable it by passing --enable-music-mp3-mpg123 to configure. diff --git a/libs/SDL2_mixer/i686-w64-mingw32/bin/SDL2_mixer.dll b/libs/SDL2_mixer/i686-w64-mingw32/bin/SDL2_mixer.dll new file mode 100644 index 0000000000000000000000000000000000000000..ee8cad87e40176e0ea244e72f6a88b08f6ae37bb GIT binary patch literal 322560 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 z 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 CWJyc_ literal 0 HcmV?d00001 diff --git a/libs/SDL2_mixer/i686-w64-mingw32/include/SDL2/SDL_mixer.h b/libs/SDL2_mixer/i686-w64-mingw32/include/SDL2/SDL_mixer.h index 009d8a2da..ce8bdae59 100644 --- a/libs/SDL2_mixer/i686-w64-mingw32/include/SDL2/SDL_mixer.h +++ b/libs/SDL2_mixer/i686-w64-mingw32/include/SDL2/SDL_mixer.h @@ -1,6 +1,6 @@ /* SDL_mixer: An audio mixer library based on the SDL library - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2025 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -19,6 +19,13 @@ 3. This notice may not be removed or altered from any source distribution. */ +/** + * \file SDL_mixer.h + * + * Header file for SDL_mixer library + * + * A simple library to play and mix sounds and musics + */ #ifndef SDL_MIXER_H_ #define SDL_MIXER_H_ @@ -34,13 +41,15 @@ extern "C" { #endif -/* Printable format: "%d.%d.%d", MAJOR, MINOR, PATCHLEVEL -*/ +/** + * Printable format: "%d.%d.%d", MAJOR, MINOR, PATCHLEVEL + */ #define SDL_MIXER_MAJOR_VERSION 2 -#define SDL_MIXER_MINOR_VERSION 0 -#define SDL_MIXER_PATCHLEVEL 4 +#define SDL_MIXER_MINOR_VERSION 8 +#define SDL_MIXER_PATCHLEVEL 1 -/* This macro can be used to fill a version structure with the compile-time +/** + * This macro can be used to fill a version structure with the compile-time * version of the SDL_mixer library. */ #define SDL_MIXER_VERSION(X) \ @@ -56,60 +65,169 @@ extern "C" { #define MIX_PATCHLEVEL SDL_MIXER_PATCHLEVEL #define MIX_VERSION(X) SDL_MIXER_VERSION(X) +#if SDL_MIXER_MAJOR_VERSION < 3 && SDL_MAJOR_VERSION < 3 + /** - * This is the version number macro for the current SDL_mixer version. + * This is the version number macro for the current SDL_mixer version. + * + * In versions higher than 2.9.0, the minor version overflows into the + * thousands digit: for example, 2.23.0 is encoded as 4300. This macro will + * not be available in SDL 3.x or SDL_mixer 3.x. + * + * Deprecated, use SDL_MIXER_VERSION_ATLEAST or SDL_MIXER_VERSION instead. */ #define SDL_MIXER_COMPILEDVERSION \ SDL_VERSIONNUM(SDL_MIXER_MAJOR_VERSION, SDL_MIXER_MINOR_VERSION, SDL_MIXER_PATCHLEVEL) +#endif /* SDL_MIXER_MAJOR_VERSION < 3 && SDL_MAJOR_VERSION < 3 */ /** - * This macro will evaluate to true if compiled with SDL_mixer at least X.Y.Z. + * This macro will evaluate to true if compiled with SDL_mixer at least X.Y.Z. */ #define SDL_MIXER_VERSION_ATLEAST(X, Y, Z) \ - (SDL_MIXER_COMPILEDVERSION >= SDL_VERSIONNUM(X, Y, Z)) + ((SDL_MIXER_MAJOR_VERSION >= X) && \ + (SDL_MIXER_MAJOR_VERSION > X || SDL_MIXER_MINOR_VERSION >= Y) && \ + (SDL_MIXER_MAJOR_VERSION > X || SDL_MIXER_MINOR_VERSION > Y || SDL_MIXER_PATCHLEVEL >= Z)) -/* This function gets the version of the dynamically linked SDL_mixer library. - it should NOT be used to fill a version structure, instead you should - use the SDL_MIXER_VERSION() macro. +/** + * Query the version of SDL_mixer that the program is linked against. + * + * This function gets the version of the dynamically linked SDL_mixer library. + * This is separate from the SDL_MIXER_VERSION() macro, which tells you what + * version of the SDL_mixer headers you compiled against. + * + * This returns static internal data; do not free or modify it! + * + * \returns a pointer to the version information. + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC const SDL_version * SDLCALL Mix_Linked_Version(void); -typedef enum +/** + * Initialization flags + */ +typedef enum MIX_InitFlags { MIX_INIT_FLAC = 0x00000001, MIX_INIT_MOD = 0x00000002, MIX_INIT_MP3 = 0x00000008, MIX_INIT_OGG = 0x00000010, MIX_INIT_MID = 0x00000020, - MIX_INIT_OPUS = 0x00000040 + MIX_INIT_OPUS = 0x00000040, + MIX_INIT_WAVPACK= 0x00000080 } MIX_InitFlags; -/* Loads dynamic libraries and prepares them for use. Flags should be - one or more flags from MIX_InitFlags OR'd together. - It returns the flags successfully initialized, or 0 on failure. +/** + * Initialize SDL_mixer. + * + * This function loads dynamic libraries that SDL_mixer needs, and prepares + * them for use. + * + * Note that, unlike other SDL libraries, this call is optional! If you load a + * music file, SDL_mixer will handle initialization on the fly. This function + * will let you know, up front, whether a specific format will be available + * for use. + * + * Flags should be one or more flags from MIX_InitFlags OR'd together. It + * returns the flags successfully initialized, or 0 on failure. + * + * Currently, these flags are: + * + * - `MIX_INIT_FLAC` + * - `MIX_INIT_MOD` + * - `MIX_INIT_MP3` + * - `MIX_INIT_OGG` + * - `MIX_INIT_MID` + * - `MIX_INIT_OPUS` + * - `MIX_INIT_WAVPACK` + * + * More flags may be added in a future SDL_mixer release. + * + * This function may need to load external shared libraries to support various + * codecs, which means this function can fail to initialize that support on an + * otherwise-reasonable system if the library isn't available; this is not + * just a question of exceptional circumstances like running out of memory at + * startup! + * + * Note that you may call this function more than once to initialize with + * additional flags. The return value will reflect both new flags that + * successfully initialized, and also include flags that had previously been + * initialized as well. + * + * As this will return previously-initialized flags, it's legal to call this + * with zero (no flags set). This is a safe no-op that can be used to query + * the current initialization state without changing it at all. + * + * Since this returns previously-initialized flags as well as new ones, and + * you can call this with zero, you should not check for a zero return value + * to determine an error condition. Instead, you should check to make sure all + * the flags you require are set in the return value. If you have a game with + * data in a specific format, this might be a fatal error. If you're a generic + * media player, perhaps you are fine with only having WAV and MP3 support and + * can live without Opus playback, even if you request support for everything. + * + * Unlike other SDL satellite libraries, calls to Mix_Init do not stack; a + * single call to Mix_Quit() will deinitialize everything and does not have to + * be paired with a matching Mix_Init call. For that reason, it's considered + * best practices to have a single Mix_Init and Mix_Quit call in your program. + * While this isn't required, be aware of the risks of deviating from that + * behavior. + * + * After initializing SDL_mixer, the next step is to open an audio device to + * prepare to play sound (with Mix_OpenAudio() or Mix_OpenAudioDevice()), and + * load audio data to play with that device. + * + * \param flags initialization flags, OR'd together. + * \returns all currently initialized flags. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_Quit */ extern DECLSPEC int SDLCALL Mix_Init(int flags); -/* Unloads libraries loaded with Mix_Init */ +/** + * Deinitialize SDL_mixer. + * + * This should be the last function you call in SDL_mixer, after freeing all + * other resources and closing all audio devices. This will unload any shared + * libraries it is using for various codecs. + * + * After this call, a call to Mix_Init(0) will return 0 (no codecs loaded). + * + * You can safely call Mix_Init() to reload various codec support after this + * call. + * + * Unlike other SDL satellite libraries, calls to Mix_Init do not stack; a + * single call to Mix_Quit() will deinitialize everything and does not have to + * be paired with a matching Mix_Init call. For that reason, it's considered + * best practices to have a single Mix_Init and Mix_Quit call in your program. + * While this isn't required, be aware of the risks of deviating from that + * behavior. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_Init + */ extern DECLSPEC void SDLCALL Mix_Quit(void); -/* The default mixer has 8 simultaneous mixing channels */ +/** + * The default mixer has 8 simultaneous mixing channels + */ #ifndef MIX_CHANNELS #define MIX_CHANNELS 8 #endif /* Good default values for a PC soundcard */ -#define MIX_DEFAULT_FREQUENCY 22050 -#if SDL_BYTEORDER == SDL_LIL_ENDIAN -#define MIX_DEFAULT_FORMAT AUDIO_S16LSB -#else -#define MIX_DEFAULT_FORMAT AUDIO_S16MSB -#endif +#define MIX_DEFAULT_FREQUENCY 44100 +#define MIX_DEFAULT_FORMAT AUDIO_S16SYS #define MIX_DEFAULT_CHANNELS 2 #define MIX_MAX_VOLUME SDL_MIX_MAXVOLUME /* Volume of a chunk */ -/* The internal format for an audio chunk */ +/** + * The internal format for an audio chunk + */ typedef struct Mix_Chunk { int allocated; Uint8 *abuf; @@ -117,15 +235,19 @@ typedef struct Mix_Chunk { Uint8 volume; /* Per-sample volume, 0-128 */ } Mix_Chunk; -/* The different fading types supported */ -typedef enum { +/** + * The different fading types supported + */ +typedef enum Mix_Fading { MIX_NO_FADING, MIX_FADING_OUT, MIX_FADING_IN } Mix_Fading; -/* These are types of music files (not libraries used to load them) */ -typedef enum { +/** + * These are types of music files (not libraries used to load them) + */ +typedef enum Mix_MusicType { MUS_NONE, MUS_CMD, MUS_WAV, @@ -136,218 +258,1162 @@ typedef enum { MUS_MP3_MAD_UNUSED, MUS_FLAC, MUS_MODPLUG_UNUSED, - MUS_OPUS + MUS_OPUS, + MUS_WAVPACK, + MUS_GME } Mix_MusicType; -/* The internal format for a music chunk interpreted via mikmod */ -typedef struct _Mix_Music Mix_Music; +/** + * The internal format for a music chunk interpreted via codecs + */ +typedef struct Mix_Music Mix_Music; -/* Open the mixer with a certain audio format */ +/** + * Open the default audio device for playback. + * + * An audio device is what generates sound, so the app must open one to make + * noise. + * + * This function will check if SDL's audio system is initialized, and if not, + * it will initialize it by calling `SDL_Init(SDL_INIT_AUDIO)` on your behalf. + * You are free to (and encouraged to!) initialize it yourself before calling + * this function, as this gives your program more control over the process. + * + * This function might cover all of an application's needs, but for those that + * need more flexibility, the more powerful version of this function is + * Mix_OpenAudioDevice(). This function is equivalent to calling: + * + * ```c + * Mix_OpenAudioDevice(frequency, format, nchannels, chunksize, NULL, + * SDL_AUDIO_ALLOW_FREQUENCY_CHANGE | + * SDL_AUDIO_ALLOW_CHANNELS_CHANGE); + * ``` + * + * If you aren't particularly concerned with the specifics of the audio + * device, and your data isn't in a specific format, the values you use here + * can just be reasonable defaults. SDL_mixer will convert audio data you feed + * it to the correct format on demand. + * + * That being said, if you have control of your audio data and you know its + * format ahead of time, you may save CPU time by opening the audio device in + * that exact format so SDL_mixer does not have to spend time converting + * anything behind the scenes, and can just pass the data straight through to + * the hardware. On some platforms, where the hardware only supports specific + * settings, you might have to be careful to make everything match, but your + * own data is often easier to control, so aim to open the device for what you + * need. + * + * The other reason to care about specific formats: if you plan to touch the + * mix buffer directly (with Mix_SetPostMix, a registered effect, or + * Mix_HookMusic), you might have code that expects it to be in a specific + * format, and you should specify that here. + * + * The audio device frequency is specified in Hz; in modern times, 48000 is + * often a reasonable default. + * + * The audio device format is one of SDL's AUDIO_* constants. AUDIO_S16SYS + * (16-bit audio) is probably a safe default. More modern systems may prefer + * AUDIO_F32SYS (32-bit floating point audio). + * + * The audio device channels are generally 1 for mono output, or 2 for stereo, + * but the brave can try surround sound configs with 4 (quad), 6 (5.1), 7 + * (6.1) or 8 (7.1). + * + * The audio device's chunk size is the number of sample frames (one sample + * per frame for mono output, two samples per frame in a stereo setup, etc) + * that are fed to the device at once. The lower the number, the lower the + * latency, but you risk dropouts if it gets too low. 2048 is often a + * reasonable default, but your app might want to experiment with 1024 or + * 4096. + * + * You may only have one audio device open at a time; if you want to change a + * setting, you must close the device and reopen it, which is not something + * you can do seamlessly during playback. + * + * This function does not allow you to select a specific audio device on the + * system, it always chooses the best default it can on your behalf (which, in + * many cases, is exactly what you want anyhow). If you must choose a specific + * device, you can do so with Mix_OpenAudioDevice() instead. + * + * If this function reports success, you are ready to start making noise! Load + * some audio data and start playing! + * + * The app can use Mix_QuerySpec() to determine the final device settings. + * + * When done with an audio device, probably at the end of the program, the app + * should dispose of the device with Mix_CloseAudio(). + * + * \param frequency the frequency to playback audio at (in Hz). + * \param format audio format, one of SDL's AUDIO_* values. + * \param channels number of channels (1 is mono, 2 is stereo, etc). + * \param chunksize audio buffer size in sample FRAMES (total samples divided + * by channel count). + * \returns 0 if successful, -1 on error. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_OpenAudioDevice + * \sa Mix_CloseAudio + */ extern DECLSPEC int SDLCALL Mix_OpenAudio(int frequency, Uint16 format, int channels, int chunksize); -/* Open the mixer with specific device and certain audio format */ + +/** + * Open a specific audio device for playback. + * + * (A slightly simpler version of this function is available in + * Mix_OpenAudio(), which still might meet most applications' needs.) + * + * An audio device is what generates sound, so the app must open one to make + * noise. + * + * This function will check if SDL's audio system is initialized, and if not, + * it will initialize it by calling `SDL_Init(SDL_INIT_AUDIO)` on your behalf. + * You are free to (and encouraged to!) initialize it yourself before calling + * this function, as this gives your program more control over the process. + * + * If you aren't particularly concerned with the specifics of the audio + * device, and your data isn't in a specific format, the values you use here + * can just be reasonable defaults. SDL_mixer will convert audio data you feed + * it to the correct format on demand. + * + * That being said, if you have control of your audio data and you know its + * format ahead of time, you can save CPU time by opening the audio device in + * that exact format so SDL_mixer does not have to spend time converting + * anything behind the scenes, and can just pass the data straight through to + * the hardware. On some platforms, where the hardware only supports specific + * settings, you might have to be careful to make everything match, but your + * own data is often easier to control, so aim to open the device for what you + * need. + * + * The other reason to care about specific formats: if you plan to touch the + * mix buffer directly (with Mix_SetPostMix, a registered effect, or + * Mix_HookMusic), you might have code that expects it to be in a specific + * format, and you should specify that here. + * + * The audio device frequency is specified in Hz; in modern times, 48000 is + * often a reasonable default. + * + * The audio device format is one of SDL's AUDIO_* constants. AUDIO_S16SYS + * (16-bit audio) is probably a safe default. More modern systems may prefer + * AUDIO_F32SYS (32-bit floating point audio). + * + * The audio device channels are generally 1 for mono output, or 2 for stereo, + * but the brave can try surround sound configs with 4 (quad), 6 (5.1), 7 + * (6.1) or 8 (7.1). + * + * The audio device's chunk size is the number of sample frames (one sample + * per frame for mono output, two samples per frame in a stereo setup, etc) + * that are fed to the device at once. The lower the number, the lower the + * latency, but you risk dropouts if it gets too low. 2048 is often a + * reasonable default, but your app might want to experiment with 1024 or + * 4096. + * + * You may only have one audio device open at a time; if you want to change a + * setting, you must close the device and reopen it, which is not something + * you can do seamlessly during playback. + * + * This function allows you to select specific audio hardware on the system + * with the `device` parameter. If you specify NULL, SDL_mixer will choose the + * best default it can on your behalf (which, in many cases, is exactly what + * you want anyhow). SDL_mixer does not offer a mechanism to determine device + * names to open, but you can use SDL_GetNumAudioDevices() to get a count of + * available devices and then SDL_GetAudioDeviceName() in a loop to obtain a + * list. If you do this, be sure to call `SDL_Init(SDL_INIT_AUDIO)` first to + * initialize SDL's audio system! + * + * The `allowed_changes` parameter specifies what settings are flexible. These + * are the `SDL_AUDIO_ALLOW_*` flags from SDL. These tell SDL_mixer that the + * app doesn't mind if a specific setting changes. For example, the app might + * need stereo data in Sint16 format, but if the sample rate or chunk size + * changes, the app can handle that. In that case, the app would specify + * `SDL_AUDIO_ALLOW_FORMAT_CHANGE|SDL_AUDIO_ALLOW_SAMPLES_CHANGE`. In this + * case, if the system's hardware requires something other than the requested + * format, SDL_mixer can select what the hardware demands instead of the app. + * If the `SDL_AUDIO_ALLOW_` flag is not specified, SDL_mixer must convert + * data behind the scenes between what the app demands and what the hardware + * requires. If your app needs precisely what is requested, specify zero for + * `allowed_changes`. + * + * If changes were allowed, the app can use Mix_QuerySpec() to determine the + * final device settings. + * + * If this function reports success, you are ready to start making noise! Load + * some audio data and start playing! + * + * When done with an audio device, probably at the end of the program, the app + * should dispose of the device with Mix_CloseDevice(). + * + * \param frequency the frequency to playback audio at (in Hz). + * \param format audio format, one of SDL's AUDIO_* values. + * \param channels number of channels (1 is mono, 2 is stereo, etc). + * \param chunksize audio buffer size in sample FRAMES (total samples divided + * by channel count). + * \param device the device name to open, or NULL to choose a reasonable + * default. + * \param allowed_changes Allow change flags (see SDL_AUDIO_ALLOW_* flags). + * \returns 0 if successful, -1 on error. + * + * \since This function is available since SDL_mixer 2.0.2. + * + * \sa Mix_OpenAudio + * \sa Mix_CloseDevice + * \sa Mix_QuerySpec + */ extern DECLSPEC int SDLCALL Mix_OpenAudioDevice(int frequency, Uint16 format, int channels, int chunksize, const char* device, int allowed_changes); -/* Dynamically change the number of channels managed by the mixer. - If decreasing the number of channels, the upper channels are - stopped. - This function returns the new number of allocated channels. +/** + * Suspend or resume the whole audio output. + * + * \param pause_on 1 to pause audio output, or 0 to resume. + * + * \since This function is available since SDL_mixer 2.8.0. + */ +extern DECLSPEC void SDLCALL Mix_PauseAudio(int pause_on); + +/** + * Find out what the actual audio device parameters are. + * + * If Mix_OpenAudioDevice() was called with `allowed_changes` set to anything + * but zero, or Mix_OpenAudio() was used, some audio device settings may be + * different from the application's request. This function will report what + * the device is actually running at. + * + * Note this is only important if the app intends to touch the audio buffers + * being sent to the hardware directly. If an app just wants to play audio + * files and let SDL_mixer handle the low-level details, this function can + * probably be ignored. + * + * If the audio device is not opened, this function will return 0. + * + * \param frequency On return, will be filled with the audio device's + * frequency in Hz. + * \param format On return, will be filled with the audio device's format. + * \param channels On return, will be filled with the audio device's channel + * count. + * \returns 1 if the audio device has been opened, 0 otherwise. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_OpenAudio + * \sa Mix_OpenAudioDevice + */ +extern DECLSPEC int SDLCALL Mix_QuerySpec(int *frequency, Uint16 *format, int *channels); + +/** + * Dynamically change the number of channels managed by the mixer. + * + * SDL_mixer deals with "channels," which is not the same thing as the + * mono/stereo channels; they might be better described as "tracks," as each + * one corresponds to a separate source of audio data. Three different WAV + * files playing at the same time would be three separate SDL_mixer channels, + * for example. + * + * An app needs as many channels as it has audio data it wants to play + * simultaneously, mixing them into a single stream to send to the audio + * device. + * + * SDL_mixer allocates `MIX_CHANNELS` (currently 8) channels when you open an + * audio device, which may be more than an app needs, but if the app needs + * more or wants less, this function can change it. + * + * If decreasing the number of channels, any upper channels currently playing + * are stopped. This will deregister all effects on those channels and call + * any callback specified by Mix_ChannelFinished() for each removed channel. + * + * If `numchans` is less than zero, this will return the current number of + * channels without changing anything. + * + * \param numchans the new number of channels, or < 0 to query current channel + * count. + * \returns the new number of allocated channels. + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_AllocateChannels(int numchans); -/* Find out what the actual audio device parameters are. - This function returns 1 if the audio has been opened, 0 otherwise. +/** + * Load a supported audio format into a chunk. + * + * SDL_mixer has two separate data structures for audio data. One it calls a + * "chunk," which is meant to be a file completely decoded into memory up + * front, and the other it calls "music" which is a file intended to be + * decoded on demand. Originally, simple formats like uncompressed WAV files + * were meant to be chunks and compressed things, like MP3s, were meant to be + * music, and you would stream one thing for a game's music and make repeating + * sound effects with the chunks. + * + * In modern times, this isn't split by format anymore, and most are + * interchangeable, so the question is what the app thinks is worth + * predecoding or not. Chunks might take more memory, but once they are loaded + * won't need to decode again, whereas music always needs to be decoded on the + * fly. Also, crucially, there are as many channels for chunks as the app can + * allocate, but SDL_mixer only offers a single "music" channel. + * + * If `freesrc` is non-zero, the RWops will be closed before returning, + * whether this function succeeds or not. SDL_mixer reads everything it needs + * from the RWops during this call in any case. + * + * There is a separate function (a macro, before SDL_mixer 2.6.0) to read + * files from disk without having to deal with SDL_RWops: + * `Mix_LoadWAV("filename.wav")` will call this function and manage those + * details for you. + * + * When done with a chunk, the app should dispose of it with a call to + * Mix_FreeChunk(). + * + * \param src an SDL_RWops that data will be read from. + * \param freesrc non-zero to close/free the SDL_RWops before returning, zero + * to leave it open. + * \returns a new chunk, or NULL on error. + * + * \since This function is available since SDL_mixer 2.6.0 (and as a macro + * since 2.0.0). + * + * \sa Mix_LoadWAV + * \sa Mix_FreeChunk */ -extern DECLSPEC int SDLCALL Mix_QuerySpec(int *frequency,Uint16 *format,int *channels); - -/* Load a wave file or a music (.mod .s3m .it .xm) file */ extern DECLSPEC Mix_Chunk * SDLCALL Mix_LoadWAV_RW(SDL_RWops *src, int freesrc); -#define Mix_LoadWAV(file) Mix_LoadWAV_RW(SDL_RWFromFile(file, "rb"), 1) + +/** + * Load a supported audio format into a chunk. + * + * SDL_mixer has two separate data structures for audio data. One it calls a + * "chunk," which is meant to be a file completely decoded into memory up + * front, and the other it calls "music" which is a file intended to be + * decoded on demand. Originally, simple formats like uncompressed WAV files + * were meant to be chunks and compressed things, like MP3s, were meant to be + * music, and you would stream one thing for a game's music and make repeating + * sound effects with the chunks. + * + * In modern times, this isn't split by format anymore, and most are + * interchangeable, so the question is what the app thinks is worth + * predecoding or not. Chunks might take more memory, but once they are loaded + * won't need to decode again, whereas music always needs to be decoded on the + * fly. Also, crucially, there are as many channels for chunks as the app can + * allocate, but SDL_mixer only offers a single "music" channel. + * + * If you would rather use the abstract SDL_RWops interface to load data from + * somewhere other than the filesystem, you can use Mix_LoadWAV_RW() instead. + * + * When done with a chunk, the app should dispose of it with a call to + * Mix_FreeChunk(). + * + * Note that before SDL_mixer 2.6.0, this function was a macro that called + * Mix_LoadWAV_RW(), creating a RWops and setting `freesrc` to 1. This macro + * has since been promoted to a proper API function. Older binaries linked + * against a newer SDL_mixer will still call Mix_LoadWAV_RW directly, as they + * are using the macro, which was available since the dawn of time. + * + * \param file the filesystem path to load data from. + * \returns a new chunk, or NULL on error. + * + * \since This function is available since SDL_mixer 2.6.0 (and as a macro + * since 2.0.0). + * + * \sa Mix_LoadWAV_RW + * \sa Mix_FreeChunk + */ +extern DECLSPEC Mix_Chunk * SDLCALL Mix_LoadWAV(const char *file); + + +/** + * Load a supported audio format into a music object. + * + * SDL_mixer has two separate data structures for audio data. One it calls a + * "chunk," which is meant to be a file completely decoded into memory up + * front, and the other it calls "music" which is a file intended to be + * decoded on demand. Originally, simple formats like uncompressed WAV files + * were meant to be chunks and compressed things, like MP3s, were meant to be + * music, and you would stream one thing for a game's music and make repeating + * sound effects with the chunks. + * + * In modern times, this isn't split by format anymore, and most are + * interchangeable, so the question is what the app thinks is worth + * predecoding or not. Chunks might take more memory, but once they are loaded + * won't need to decode again, whereas music always needs to be decoded on the + * fly. Also, crucially, there are as many channels for chunks as the app can + * allocate, but SDL_mixer only offers a single "music" channel. + * + * When done with this music, the app should dispose of it with a call to + * Mix_FreeMusic(). + * + * \param file a file path from where to load music data. + * \returns a new music object, or NULL on error. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_FreeMusic + */ extern DECLSPEC Mix_Music * SDLCALL Mix_LoadMUS(const char *file); -/* Load a music file from an SDL_RWop object (Ogg and MikMod specific currently) - Matt Campbell (matt@campbellhome.dhs.org) April 2000 */ +/** + * Load a supported audio format into a music object. + * + * SDL_mixer has two separate data structures for audio data. One it calls a + * "chunk," which is meant to be a file completely decoded into memory up + * front, and the other it calls "music" which is a file intended to be + * decoded on demand. Originally, simple formats like uncompressed WAV files + * were meant to be chunks and compressed things, like MP3s, were meant to be + * music, and you would stream one thing for a game's music and make repeating + * sound effects with the chunks. + * + * In modern times, this isn't split by format anymore, and most are + * interchangeable, so the question is what the app thinks is worth + * predecoding or not. Chunks might take more memory, but once they are loaded + * won't need to decode again, whereas music always needs to be decoded on the + * fly. Also, crucially, there are as many channels for chunks as the app can + * allocate, but SDL_mixer only offers a single "music" channel. + * + * If `freesrc` is non-zero, the RWops will be closed before returning, + * whether this function succeeds or not. SDL_mixer reads everything it needs + * from the RWops during this call in any case. + * + * As a convenience, there is a function to read files from disk without + * having to deal with SDL_RWops: `Mix_LoadMUS("filename.mp3")` will manage + * those details for you. + * + * This function attempts to guess the file format from incoming data. If the + * caller knows the format, or wants to force it, it should use + * Mix_LoadMUSType_RW() instead. + * + * When done with this music, the app should dispose of it with a call to + * Mix_FreeMusic(). + * + * \param src an SDL_RWops that data will be read from. + * \param freesrc non-zero to close/free the SDL_RWops before returning, zero + * to leave it open. + * \returns a new music object, or NULL on error. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_FreeMusic + */ extern DECLSPEC Mix_Music * SDLCALL Mix_LoadMUS_RW(SDL_RWops *src, int freesrc); -/* Load a music file from an SDL_RWop object assuming a specific format */ +/** + * Load an audio format into a music object, assuming a specific format. + * + * SDL_mixer has two separate data structures for audio data. One it calls a + * "chunk," which is meant to be a file completely decoded into memory up + * front, and the other it calls "music" which is a file intended to be + * decoded on demand. Originally, simple formats like uncompressed WAV files + * were meant to be chunks and compressed things, like MP3s, were meant to be + * music, and you would stream one thing for a game's music and make repeating + * sound effects with the chunks. + * + * In modern times, this isn't split by format anymore, and most are + * interchangeable, so the question is what the app thinks is worth + * predecoding or not. Chunks might take more memory, but once they are loaded + * won't need to decode again, whereas music always needs to be decoded on the + * fly. Also, crucially, there are as many channels for chunks as the app can + * allocate, but SDL_mixer only offers a single "music" channel. + * + * This function loads music data, and lets the application specify the type + * of music being loaded, which might be useful if SDL_mixer cannot figure it + * out from the data stream itself. + * + * Currently, the following types are supported: + * + * - `MUS_NONE` (SDL_mixer should guess, based on the data) + * - `MUS_WAV` (Microsoft WAV files) + * - `MUS_MOD` (Various tracker formats) + * - `MUS_MID` (MIDI files) + * - `MUS_OGG` (Ogg Vorbis files) + * - `MUS_MP3` (MP3 files) + * - `MUS_FLAC` (FLAC files) + * - `MUS_OPUS` (Opus files) + * - `MUS_WAVPACK` (WavPack files) + * + * If `freesrc` is non-zero, the RWops will be closed before returning, + * whether this function succeeds or not. SDL_mixer reads everything it needs + * from the RWops during this call in any case. + * + * As a convenience, there is a function to read files from disk without + * having to deal with SDL_RWops: `Mix_LoadMUS("filename.mp3")` will manage + * those details for you (but not let you specify the music type explicitly).. + * + * When done with this music, the app should dispose of it with a call to + * Mix_FreeMusic(). + * + * \param src an SDL_RWops that data will be read from. + * \param type the type of audio data provided by `src`. + * \param freesrc non-zero to close/free the SDL_RWops before returning, zero + * to leave it open. + * \returns a new music object, or NULL on error. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_FreeMusic + */ extern DECLSPEC Mix_Music * SDLCALL Mix_LoadMUSType_RW(SDL_RWops *src, Mix_MusicType type, int freesrc); -/* Load a wave file of the mixer format from a memory buffer */ +/** + * Load a WAV file from memory as quickly as possible. + * + * Unlike Mix_LoadWAV_RW, this function has several requirements, and unless + * you control all your audio data and know what you're doing, you should + * consider this function unsafe and not use it. + * + * - The provided audio data MUST be in Microsoft WAV format. + * - The provided audio data shouldn't use any strange WAV extensions. + * - The audio data MUST be in the exact same format as the audio device. This + * function will not attempt to convert it, or even verify it's in the right + * format. + * - The audio data must be valid; this function does not know the size of the + * memory buffer, so if the WAV data is corrupted, it can read past the end + * of the buffer, causing a crash. + * - The audio data must live at least as long as the returned Mix_Chunk, + * because SDL_mixer will use that data directly and not make a copy of it. + * + * This function will do NO error checking! Be extremely careful here! + * + * (Seriously, use Mix_LoadWAV_RW instead.) + * + * If this function is successful, the provided memory buffer must remain + * available until Mix_FreeChunk() is called on the returned chunk. + * + * \param mem memory buffer containing of a WAV file. + * \returns a new chunk, or NULL on error. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_LoadWAV_RW + * \sa Mix_FreeChunk + */ extern DECLSPEC Mix_Chunk * SDLCALL Mix_QuickLoad_WAV(Uint8 *mem); -/* Load raw audio data of the mixer format from a memory buffer */ +/** + * Load a raw audio data from memory as quickly as possible. + * + * The audio data MUST be in the exact same format as the audio device. This + * function will not attempt to convert it, or even verify it's in the right + * format. + * + * If this function is successful, the provided memory buffer must remain + * available until Mix_FreeChunk() is called on the returned chunk. + * + * \param mem memory buffer containing raw PCM data. + * \param len length of buffer pointed to by `mem`, in bytes. + * \returns a new chunk, or NULL on error. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_FreeChunk + */ extern DECLSPEC Mix_Chunk * SDLCALL Mix_QuickLoad_RAW(Uint8 *mem, Uint32 len); -/* Free an audio chunk previously loaded */ +/** + * Free an audio chunk. + * + * An app should call this function when it is done with a Mix_Chunk and wants + * to dispose of its resources. + * + * SDL_mixer will stop any channels this chunk is currently playing on. This + * will deregister all effects on those channels and call any callback + * specified by Mix_ChannelFinished() for each removed channel. + * + * \param chunk the chunk to free. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_LoadWAV + * \sa Mix_LoadWAV_RW + * \sa Mix_QuickLoad_WAV + * \sa Mix_QuickLoad_RAW + */ extern DECLSPEC void SDLCALL Mix_FreeChunk(Mix_Chunk *chunk); + +/** + * Free a music object. + * + * If this music is currently playing, it will be stopped. + * + * If this music is in the process of fading out (via Mix_FadeOutMusic()), + * this function will *block* until the fade completes. If you need to avoid + * this, be sure to call Mix_HaltMusic() before freeing the music. + * + * \param music the music object to free. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_LoadMUS + * \sa Mix_LoadMUS_RW + * \sa Mix_LoadMUSType_RW + */ extern DECLSPEC void SDLCALL Mix_FreeMusic(Mix_Music *music); -/* Get a list of chunk/music decoders that this build of SDL_mixer provides. - This list can change between builds AND runs of the program, if external - libraries that add functionality become available. - You must successfully call Mix_OpenAudio() before calling these functions. - This API is only available in SDL_mixer 1.2.9 and later. - - // usage... - int i; - const int total = Mix_GetNumChunkDecoders(); - for (i = 0; i < total; i++) - printf("Supported chunk decoder: [%s]\n", Mix_GetChunkDecoder(i)); - - Appearing in this list doesn't promise your specific audio file will - decode...but it's handy to know if you have, say, a functioning Timidity - install. - - These return values are static, read-only data; do not modify or free it. - The pointers remain valid until you call Mix_CloseAudio(). -*/ +/** + * Get a list of chunk decoders that this build of SDL_mixer provides. + * + * This list can change between builds AND runs of the program, if external + * libraries that add functionality become available. You must successfully + * call Mix_OpenAudio() or Mix_OpenAudioDevice() before calling this function, + * as decoders are activated at device open time. + * + * Appearing in this list doesn't promise your specific audio file will + * decode...but it's handy to know if you have, say, a functioning Ogg Vorbis + * install. + * + * These return values are static, read-only data; do not modify or free it. + * The pointers remain valid until you call Mix_CloseAudio(). + * + * \returns number of chunk decoders available. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_GetChunkDecoder + * \sa Mix_HasChunkDecoder + */ extern DECLSPEC int SDLCALL Mix_GetNumChunkDecoders(void); + +/** + * Get a chunk decoder's name. + * + * The requested decoder's index must be between zero and + * Mix_GetNumChunkDecoders()-1. It's safe to call this with an invalid index; + * this function will return NULL in that case. + * + * This list can change between builds AND runs of the program, if external + * libraries that add functionality become available. You must successfully + * call Mix_OpenAudio() or Mix_OpenAudioDevice() before calling this function, + * as decoders are activated at device open time. + * + * \param index index of the chunk decoder. + * \returns the chunk decoder's name. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_GetNumChunkDecoders + */ extern DECLSPEC const char * SDLCALL Mix_GetChunkDecoder(int index); + +/** + * Check if a chunk decoder is available by name. + * + * This result can change between builds AND runs of the program, if external + * libraries that add functionality become available. You must successfully + * call Mix_OpenAudio() or Mix_OpenAudioDevice() before calling this function, + * as decoders are activated at device open time. + * + * Decoder names are arbitrary but also obvious, so you have to know what + * you're looking for ahead of time, but usually it's the file extension in + * capital letters (some example names are "AIFF", "VOC", "WAV"). + * + * \param name the decoder name to query. + * \returns SDL_TRUE if a decoder by that name is available, SDL_FALSE + * otherwise. + * + * \since This function is available since SDL_mixer 2.0.2. + * + * \sa Mix_GetNumChunkDecoders + * \sa Mix_GetChunkDecoder + */ extern DECLSPEC SDL_bool SDLCALL Mix_HasChunkDecoder(const char *name); + +/** + * Get a list of music decoders that this build of SDL_mixer provides. + * + * This list can change between builds AND runs of the program, if external + * libraries that add functionality become available. You must successfully + * call Mix_OpenAudio() or Mix_OpenAudioDevice() before calling this function, + * as decoders are activated at device open time. + * + * Appearing in this list doesn't promise your specific audio file will + * decode...but it's handy to know if you have, say, a functioning Ogg Vorbis + * install. + * + * These return values are static, read-only data; do not modify or free it. + * The pointers remain valid until you call Mix_CloseAudio(). + * + * \returns number of music decoders available. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_GetMusicDecoder + * \sa Mix_HasMusicDecoder + */ extern DECLSPEC int SDLCALL Mix_GetNumMusicDecoders(void); + +/** + * Get a music decoder's name. + * + * The requested decoder's index must be between zero and + * Mix_GetNumMusicDecoders()-1. It's safe to call this with an invalid index; + * this function will return NULL in that case. + * + * This list can change between builds AND runs of the program, if external + * libraries that add functionality become available. You must successfully + * call Mix_OpenAudio() or Mix_OpenAudioDevice() before calling this function, + * as decoders are activated at device open time. + * + * \param index index of the music decoder. + * \returns the music decoder's name. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_GetNumMusicDecoders + */ extern DECLSPEC const char * SDLCALL Mix_GetMusicDecoder(int index); + +/** + * Check if a music decoder is available by name. + * + * This result can change between builds AND runs of the program, if external + * libraries that add functionality become available. You must successfully + * call Mix_OpenAudio() or Mix_OpenAudioDevice() before calling this function, + * as decoders are activated at device open time. + * + * Decoder names are arbitrary but also obvious, so you have to know what + * you're looking for ahead of time, but usually it's the file extension in + * capital letters (some example names are "MOD", "MP3", "FLAC"). + * + * \param name the decoder name to query. + * \returns SDL_TRUE if a decoder by that name is available, SDL_FALSE + * otherwise. + * + * \since This function is available since SDL_mixer 2.6.0 + * + * \sa Mix_GetNumMusicDecoders + * \sa Mix_GetMusicDecoder + */ extern DECLSPEC SDL_bool SDLCALL Mix_HasMusicDecoder(const char *name); -/* Find out the music format of a mixer music, or the currently playing - music, if 'music' is NULL. -*/ +/** + * Find out the format of a mixer music. + * + * If `music` is NULL, this will query the currently playing music (and return + * MUS_NONE if nothing is currently playing). + * + * \param music the music object to query, or NULL for the currently-playing + * music. + * \returns the Mix_MusicType for the music object. + * + * \since This function is available since SDL_mixer 2.0.0 + */ extern DECLSPEC Mix_MusicType SDLCALL Mix_GetMusicType(const Mix_Music *music); -/* Set a function that is called after all mixing is performed. - This can be used to provide real-time visual display of the audio stream - or add a custom mixer filter for the stream data. -*/ -extern DECLSPEC void SDLCALL Mix_SetPostMix(void (SDLCALL *mix_func)(void *udata, Uint8 *stream, int len), void *arg); - -/* Add your own music player or additional mixer function. - If 'mix_func' is NULL, the default music player is re-enabled. +/** + * Get the title for a music object, or its filename. + * + * This returns format-specific metadata. Not all file formats supply this! + * + * If `music` is NULL, this will query the currently-playing music. + * + * If music's title tag is missing or empty, the filename will be returned. If + * you'd rather have the actual metadata or nothing, use + * Mix_GetMusicTitleTag() instead. + * + * Please note that if the music was loaded from an SDL_RWops instead of a + * filename, the filename returned will be an empty string (""). + * + * This function never returns NULL! If no data is available, it will return + * an empty string (""). + * + * \param music the music object to query, or NULL for the currently-playing + * music. + * \returns the music's title if available, or the filename if not, or "". + * + * \since This function is available since SDL_mixer 2.6.0. + * + * \sa Mix_GetMusicTitleTag + * \sa Mix_GetMusicArtistTag + * \sa Mix_GetMusicAlbumTag + * \sa Mix_GetMusicCopyrightTag */ -extern DECLSPEC void SDLCALL Mix_HookMusic(void (SDLCALL *mix_func)(void *udata, Uint8 *stream, int len), void *arg); +extern DECLSPEC const char *SDLCALL Mix_GetMusicTitle(const Mix_Music *music); -/* Add your own callback for when the music has finished playing or when it is - * stopped from a call to Mix_HaltMusic. +/** + * Get the title for a music object. + * + * This returns format-specific metadata. Not all file formats supply this! + * + * If `music` is NULL, this will query the currently-playing music. + * + * Unlike this function, Mix_GetMusicTitle() produce a string with the music's + * filename if a title isn't available, which might be preferable for some + * applications. + * + * This function never returns NULL! If no data is available, it will return + * an empty string (""). + * + * \param music the music object to query, or NULL for the currently-playing + * music. + * \returns the music's title if available, or "". + * + * \since This function is available since SDL_mixer 2.6.0. + * + * \sa Mix_GetMusicTitle + * \sa Mix_GetMusicArtistTag + * \sa Mix_GetMusicAlbumTag + * \sa Mix_GetMusicCopyrightTag */ -extern DECLSPEC void SDLCALL Mix_HookMusicFinished(void (SDLCALL *music_finished)(void)); +extern DECLSPEC const char *SDLCALL Mix_GetMusicTitleTag(const Mix_Music *music); -/* Get a pointer to the user data for the current music hook */ +/** + * Get the artist name for a music object. + * + * This returns format-specific metadata. Not all file formats supply this! + * + * If `music` is NULL, this will query the currently-playing music. + * + * This function never returns NULL! If no data is available, it will return + * an empty string (""). + * + * \param music the music object to query, or NULL for the currently-playing + * music. + * \returns the music's artist name if available, or "". + * + * \since This function is available since SDL_mixer 2.6.0. + * + * \sa Mix_GetMusicTitleTag + * \sa Mix_GetMusicAlbumTag + * \sa Mix_GetMusicCopyrightTag + */ +extern DECLSPEC const char *SDLCALL Mix_GetMusicArtistTag(const Mix_Music *music); + +/** + * Get the album name for a music object. + * + * This returns format-specific metadata. Not all file formats supply this! + * + * If `music` is NULL, this will query the currently-playing music. + * + * This function never returns NULL! If no data is available, it will return + * an empty string (""). + * + * \param music the music object to query, or NULL for the currently-playing + * music. + * \returns the music's album name if available, or "". + * + * \since This function is available since SDL_mixer 2.6.0. + * + * \sa Mix_GetMusicTitleTag + * \sa Mix_GetMusicArtistTag + * \sa Mix_GetMusicCopyrightTag + */ +extern DECLSPEC const char *SDLCALL Mix_GetMusicAlbumTag(const Mix_Music *music); + +/** + * Get the copyright text for a music object. + * + * This returns format-specific metadata. Not all file formats supply this! + * + * If `music` is NULL, this will query the currently-playing music. + * + * This function never returns NULL! If no data is available, it will return + * an empty string (""). + * + * \param music the music object to query, or NULL for the currently-playing + * music. + * \returns the music's copyright text if available, or "". + * + * \since This function is available since SDL_mixer 2.6.0. + * + * \sa Mix_GetMusicTitleTag + * \sa Mix_GetMusicArtistTag + * \sa Mix_GetMusicAlbumTag + */ +extern DECLSPEC const char *SDLCALL Mix_GetMusicCopyrightTag(const Mix_Music *music); + +typedef void (SDLCALL *Mix_MixCallback)(void *udata, Uint8 *stream, int len); + +/** + * Set a function that is called after all mixing is performed. + * + * This can be used to provide real-time visual display of the audio stream or + * add a custom mixer filter for the stream data. + * + * The callback will fire every time SDL_mixer is ready to supply more data to + * the audio device, after it has finished all its mixing work. This runs + * inside an SDL audio callback, so it's important that the callback return + * quickly, or there could be problems in the audio playback. + * + * The data provided to the callback is in the format that the audio device + * was opened in, and it represents the exact waveform SDL_mixer has mixed + * from all playing chunks and music for playback. You are allowed to modify + * the data, but it cannot be resized (so you can't add a reverb effect that + * goes past the end of the buffer without saving some state between runs to + * add it into the next callback, or resample the buffer to a smaller size to + * speed it up, etc). + * + * The `arg` pointer supplied here is passed to the callback as-is, for + * whatever the callback might want to do with it (keep track of some ongoing + * state, settings, etc). + * + * Passing a NULL callback disables the post-mix callback until such a time as + * a new one callback is set. + * + * There is only one callback available. If you need to mix multiple inputs, + * be prepared to handle them from a single function. + * + * \param mix_func the callback function to become the new post-mix callback. + * \param arg a pointer that is passed, untouched, to the callback. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_HookMusic + */ +extern DECLSPEC void SDLCALL Mix_SetPostMix(Mix_MixCallback mix_func, void *arg); + +/** + * Add your own music player or additional mixer function. + * + * This works something like Mix_SetPostMix(), but it has some crucial + * differences. Note that an app can use this _and_ Mix_SetPostMix() at the + * same time. This allows an app to replace the built-in music playback, + * either with it's own music decoder or with some sort of + * procedurally-generated audio output. + * + * The supplied callback will fire every time SDL_mixer is preparing to supply + * more data to the audio device. This runs inside an SDL audio callback, so + * it's important that the callback return quickly, or there could be problems + * in the audio playback. + * + * Running this callback is the first thing SDL_mixer will do when starting to + * mix more audio. The buffer will contain silence upon entry, so the callback + * does not need to mix into existing data or initialize the buffer. + * + * Note that while a callback is set through this function, SDL_mixer will not + * mix any playing music; this callback is used instead. To disable this + * callback (and thus reenable built-in music playback) call this function + * with a NULL callback. + * + * The data written to by the callback is in the format that the audio device + * was opened in, and upon return from the callback, SDL_mixer will mix any + * playing chunks (but not music!) into the buffer. The callback cannot resize + * the buffer (so you must be prepared to provide exactly the amount of data + * demanded or leave it as silence). + * + * The `arg` pointer supplied here is passed to the callback as-is, for + * whatever the callback might want to do with it (keep track of some ongoing + * state, settings, etc). + * + * As there is only one music "channel" mixed, there is only one callback + * available. If you need to mix multiple inputs, be prepared to handle them + * from a single function. + * + * \param mix_func the callback function to become the new post-mix callback. + * \param arg a pointer that is passed, untouched, to the callback. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_SetPostMix + */ +extern DECLSPEC void SDLCALL Mix_HookMusic(Mix_MixCallback mix_func, void *arg); + +typedef void (SDLCALL *Mix_MusicFinishedCallback)(void); + +/** + * Set a callback that runs when a music object has stopped playing. + * + * This callback will fire when the currently-playing music has completed, or + * when it has been explicitly stopped from a call to Mix_HaltMusic. As such, + * this callback might fire from an arbitrary background thread at almost any + * time; try to limit what you do here. + * + * It is legal to start a new music object playing in this callback (or + * restart the one that just stopped). If the music finished normally, this + * can be used to loop the music without a gap in the audio playback. + * + * Do not call SDL_LockAudio() from this callback; you will either be inside + * the audio callback, or SDL_mixer will explicitly lock the audio before + * calling your callback. + * + * A NULL pointer will disable the callback. + * + * \param music_finished the callback function to become the new notification + * mechanism. + * + * \since This function is available since SDL_mixer 2.0.0. + */ +extern DECLSPEC void SDLCALL Mix_HookMusicFinished(Mix_MusicFinishedCallback music_finished); + +/** + * Get a pointer to the user data for the current music hook. + * + * This returns the `arg` pointer last passed to Mix_HookMusic(), or NULL if + * that function has never been called. + * + * \returns pointer to the user data previously passed to Mix_HookMusic. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC void * SDLCALL Mix_GetMusicHookData(void); -/* - * Add your own callback when a channel has finished playing. NULL - * to disable callback. The callback may be called from the mixer's audio - * callback or it could be called as a result of Mix_HaltChannel(), etc. - * do not call SDL_LockAudio() from this callback; you will either be - * inside the audio callback, or SDL_mixer will explicitly lock the audio - * before calling your callback. +typedef void (SDLCALL *Mix_ChannelFinishedCallback)(int channel); + +/** + * Set a callback that runs when a channel has finished playing. + * + * The callback may be called from the mixer's audio callback or it could be + * called as a result of Mix_HaltChannel(), etc. + * + * The callback has a single parameter, `channel`, which says what mixer + * channel has just stopped. + * + * Do not call SDL_LockAudio() from this callback; you will either be inside + * the audio callback, or SDL_mixer will explicitly lock the audio before + * calling your callback. + * + * A NULL pointer will disable the callback. + * + * \param channel_finished the callback function to become the new + * notification mechanism. + * + * \since This function is available since SDL_mixer 2.0.0. */ -extern DECLSPEC void SDLCALL Mix_ChannelFinished(void (SDLCALL *channel_finished)(int channel)); +extern DECLSPEC void SDLCALL Mix_ChannelFinished(Mix_ChannelFinishedCallback channel_finished); -/* Special Effects API by ryan c. gordon. (icculus@icculus.org) */ +#define MIX_CHANNEL_POST (-2) -#define MIX_CHANNEL_POST -2 - -/* This is the format of a special effect callback: +/** + * This is the format of a special effect callback: * - * myeffect(int chan, void *stream, int len, void *udata); + * myeffect(int chan, void *stream, int len, void *udata); * - * (chan) is the channel number that your effect is affecting. (stream) is - * the buffer of data to work upon. (len) is the size of (stream), and - * (udata) is a user-defined bit of data, which you pass as the last arg of - * Mix_RegisterEffect(), and is passed back unmolested to your callback. - * Your effect changes the contents of (stream) based on whatever parameters - * are significant, or just leaves it be, if you prefer. You can do whatever - * you like to the buffer, though, and it will continue in its changed state - * down the mixing pipeline, through any other effect functions, then finally - * to be mixed with the rest of the channels and music for the final output - * stream. + * (chan) is the channel number that your effect is affecting. (stream) is the + * buffer of data to work upon. (len) is the size of (stream), and (udata) is + * a user-defined bit of data, which you pass as the last arg of + * Mix_RegisterEffect(), and is passed back unmolested to your callback. Your + * effect changes the contents of (stream) based on whatever parameters are + * significant, or just leaves it be, if you prefer. You can do whatever you + * like to the buffer, though, and it will continue in its changed state down + * the mixing pipeline, through any other effect functions, then finally to be + * mixed with the rest of the channels and music for the final output stream. * * DO NOT EVER call SDL_LockAudio() from your callback function! */ typedef void (SDLCALL *Mix_EffectFunc_t)(int chan, void *stream, int len, void *udata); -/* - * This is a callback that signifies that a channel has finished all its - * loops and has completed playback. This gets called if the buffer - * plays out normally, or if you call Mix_HaltChannel(), implicitly stop - * a channel via Mix_AllocateChannels(), or unregister a callback while - * it's still playing. +/** + * This is a callback that signifies that a channel has finished all its loops + * and has completed playback. + * + * This gets called if the buffer plays out normally, or if you call + * Mix_HaltChannel(), implicitly stop a channel via Mix_AllocateChannels(), or + * unregister a callback while it's still playing. * * DO NOT EVER call SDL_LockAudio() from your callback function! */ typedef void (SDLCALL *Mix_EffectDone_t)(int chan, void *udata); -/* Register a special effect function. At mixing time, the channel data is - * copied into a buffer and passed through each registered effect function. - * After it passes through all the functions, it is mixed into the final - * output stream. The copy to buffer is performed once, then each effect - * function performs on the output of the previous effect. Understand that - * this extra copy to a buffer is not performed if there are no effects - * registered for a given chunk, which saves CPU cycles, and any given - * effect will be extra cycles, too, so it is crucial that your code run - * fast. Also note that the data that your function is given is in the - * format of the sound device, and not the format you gave to Mix_OpenAudio(), - * although they may in reality be the same. This is an unfortunate but - * necessary speed concern. Use Mix_QuerySpec() to determine if you can - * handle the data before you register your effect, and take appropriate - * actions. - * You may also specify a callback (Mix_EffectDone_t) that is called when - * the channel finishes playing. This gives you a more fine-grained control - * than Mix_ChannelFinished(), in case you need to free effect-specific - * resources, etc. If you don't need this, you can specify NULL. +/** + * Register a special effect function. + * + * At mixing time, the channel data is copied into a buffer and passed through + * each registered effect function. After it passes through all the functions, + * it is mixed into the final output stream. The copy to buffer is performed + * once, then each effect function performs on the output of the previous + * effect. Understand that this extra copy to a buffer is not performed if + * there are no effects registered for a given chunk, which saves CPU cycles, + * and any given effect will be extra cycles, too, so it is crucial that your + * code run fast. Also note that the data that your function is given is in + * the format of the sound device, and not the format you gave to + * Mix_OpenAudio(), although they may in reality be the same. This is an + * unfortunate but necessary speed concern. Use Mix_QuerySpec() to determine + * if you can handle the data before you register your effect, and take + * appropriate actions. + * + * You may also specify a callback (Mix_EffectDone_t) that is called when the + * channel finishes playing. This gives you a more fine-grained control than + * Mix_ChannelFinished(), in case you need to free effect-specific resources, + * etc. If you don't need this, you can specify NULL. + * * You may set the callbacks before or after calling Mix_PlayChannel(). - * Things like Mix_SetPanning() are just internal special effect functions, - * so if you are using that, you've already incurred the overhead of a copy - * to a separate buffer, and that these effects will be in the queue with - * any functions you've registered. The list of registered effects for a - * channel is reset when a chunk finishes playing, so you need to explicitly - * set them with each call to Mix_PlayChannel*(). + * + * Things like Mix_SetPanning() are just internal special effect functions, so + * if you are using that, you've already incurred the overhead of a copy to a + * separate buffer, and that these effects will be in the queue with any + * functions you've registered. The list of registered effects for a channel + * is reset when a chunk finishes playing, so you need to explicitly set them + * with each call to Mix_PlayChannel*(). + * * You may also register a special effect function that is to be run after - * final mixing occurs. The rules for these callbacks are identical to those - * in Mix_RegisterEffect, but they are run after all the channels and the - * music have been mixed into a single stream, whereas channel-specific - * effects run on a given channel before any other mixing occurs. These - * global effect callbacks are call "posteffects". Posteffects only have - * their Mix_EffectDone_t function called when they are unregistered (since - * the main output stream is never "done" in the same sense as a channel). - * You must unregister them manually when you've had enough. Your callback - * will be told that the channel being mixed is (MIX_CHANNEL_POST) if the - * processing is considered a posteffect. + * final mixing occurs. The rules for these callbacks are identical to those + * in Mix_RegisterEffect, but they are run after all the channels and the + * music have been mixed into a single stream, whereas channel-specific + * effects run on a given channel before any other mixing occurs. These global + * effect callbacks are call "posteffects". Posteffects only have their + * Mix_EffectDone_t function called when they are unregistered (since the main + * output stream is never "done" in the same sense as a channel). You must + * unregister them manually when you've had enough. Your callback will be told + * that the channel being mixed is `MIX_CHANNEL_POST` if the processing is + * considered a posteffect. * * After all these effects have finished processing, the callback registered - * through Mix_SetPostMix() runs, and then the stream goes to the audio - * device. + * through Mix_SetPostMix() runs, and then the stream goes to the audio + * device. * - * DO NOT EVER call SDL_LockAudio() from your callback function! + * DO NOT EVER call SDL_LockAudio() from your callback function! You are + * already running in the audio thread and the lock is already held! * - * returns zero if error (no such channel), nonzero if added. - * Error messages can be retrieved from Mix_GetError(). + * Note that unlike most SDL and SDL_mixer functions, this function returns + * zero if there's an error, not on success. We apologize for the API design + * inconsistency here. + * + * \param chan the channel to register an effect to, or MIX_CHANNEL_POST. + * \param f effect the callback to run when more of this channel is to be + * mixed. + * \param d effect done callback. + * \param arg argument. + * \returns zero if error (no such channel), nonzero if added. Error messages + * can be retrieved from Mix_GetError(). + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_RegisterEffect(int chan, Mix_EffectFunc_t f, Mix_EffectDone_t d, void *arg); -/* You may not need to call this explicitly, unless you need to stop an - * effect from processing in the middle of a chunk's playback. - * Posteffects are never implicitly unregistered as they are for channels, - * but they may be explicitly unregistered through this function by - * specifying MIX_CHANNEL_POST for a channel. - * returns zero if error (no such channel or effect), nonzero if removed. - * Error messages can be retrieved from Mix_GetError(). +/** + * Explicitly unregister a special effect function. + * + * You may not need to call this at all, unless you need to stop an effect + * from processing in the middle of a chunk's playback. + * + * Posteffects are never implicitly unregistered as they are for channels (as + * the output stream does not have an end), but they may be explicitly + * unregistered through this function by specifying MIX_CHANNEL_POST for a + * channel. + * + * Note that unlike most SDL and SDL_mixer functions, this function returns + * zero if there's an error, not on success. We apologize for the API design + * inconsistency here. + * + * \param channel the channel to unregister an effect on, or MIX_CHANNEL_POST. + * \param f effect the callback stop calling in future mixing iterations. + * \returns zero if error (no such channel or effect), nonzero if removed. + * Error messages can be retrieved from Mix_GetError(). + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_UnregisterEffect(int channel, Mix_EffectFunc_t f); - -/* You may not need to call this explicitly, unless you need to stop all - * effects from processing in the middle of a chunk's playback. Note that - * this will also shut off some internal effect processing, since - * Mix_SetPanning() and others may use this API under the hood. This is - * called internally when a channel completes playback. - * Posteffects are never implicitly unregistered as they are for channels, - * but they may be explicitly unregistered through this function by - * specifying MIX_CHANNEL_POST for a channel. - * returns zero if error (no such channel), nonzero if all effects removed. - * Error messages can be retrieved from Mix_GetError(). +/** + * Explicitly unregister all special effect functions. + * + * You may not need to call this at all, unless you need to stop all effects + * from processing in the middle of a chunk's playback. + * + * Note that this will also shut off some internal effect processing, since + * Mix_SetPanning() and others may use this API under the hood. This is called + * internally when a channel completes playback. Posteffects are never + * implicitly unregistered as they are for channels, but they may be + * explicitly unregistered through this function by specifying + * MIX_CHANNEL_POST for a channel. + * + * Note that unlike most SDL and SDL_mixer functions, this function returns + * zero if there's an error, not on success. We apologize for the API design + * inconsistency here. + * + * \param channel the channel to unregister all effects on, or + * MIX_CHANNEL_POST. + * \returns zero if error (no such channel), nonzero if all effects removed. + * Error messages can be retrieved from Mix_GetError(). + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_UnregisterAllEffects(int channel); @@ -364,288 +1430,1402 @@ extern DECLSPEC int SDLCALL Mix_UnregisterAllEffects(int channel); */ -/* Set the panning of a channel. The left and right channels are specified - * as integers between 0 and 255, quietest to loudest, respectively. +/** + * Set the panning of a channel. * - * Technically, this is just individual volume control for a sample with - * two (stereo) channels, so it can be used for more than just panning. - * If you want real panning, call it like this: + * The left and right channels are specified as integers between 0 and 255, + * quietest to loudest, respectively. * - * Mix_SetPanning(channel, left, 255 - left); + * Technically, this is just individual volume control for a sample with two + * (stereo) channels, so it can be used for more than just panning. If you + * want real panning, call it like this: * - * ...which isn't so hard. + * ```c + * Mix_SetPanning(channel, left, 255 - left); + * ``` * - * Setting (channel) to MIX_CHANNEL_POST registers this as a posteffect, and - * the panning will be done to the final mixed stream before passing it on - * to the audio device. + * Setting `channel` to MIX_CHANNEL_POST registers this as a posteffect, and + * the panning will be done to the final mixed stream before passing it on to + * the audio device. * * This uses the Mix_RegisterEffect() API internally, and returns without - * registering the effect function if the audio device is not configured - * for stereo output. Setting both (left) and (right) to 255 causes this - * effect to be unregistered, since that is the data's normal state. + * registering the effect function if the audio device is not configured for + * stereo output. Setting both `left` and `right` to 255 causes this effect to + * be unregistered, since that is the data's normal state. * - * returns zero if error (no such channel or Mix_RegisterEffect() fails), - * nonzero if panning effect enabled. Note that an audio device in mono - * mode is a no-op, but this call will return successful in that case. - * Error messages can be retrieved from Mix_GetError(). + * Note that an audio device in mono mode is a no-op, but this call will + * return successful in that case. Error messages can be retrieved from + * Mix_GetError(). + * + * Note that unlike most SDL and SDL_mixer functions, this function returns + * zero if there's an error, not on success. We apologize for the API design + * inconsistency here. + * + * \param channel The mixer channel to pan or MIX_CHANNEL_POST. + * \param left Volume of stereo left channel, 0 is silence, 255 is full + * volume. + * \param right Volume of stereo right channel, 0 is silence, 255 is full + * volume. + * \returns zero if error (no such channel or Mix_RegisterEffect() fails), + * nonzero if panning effect enabled. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_SetPosition + * \sa Mix_SetDistance */ extern DECLSPEC int SDLCALL Mix_SetPanning(int channel, Uint8 left, Uint8 right); -/* Set the position of a channel. (angle) is an integer from 0 to 360, that - * specifies the location of the sound in relation to the listener. (angle) - * will be reduced as neccesary (540 becomes 180 degrees, -100 becomes 260). - * Angle 0 is due north, and rotates clockwise as the value increases. - * For efficiency, the precision of this effect may be limited (angles 1 - * through 7 might all produce the same effect, 8 through 15 are equal, etc). - * (distance) is an integer between 0 and 255 that specifies the space - * between the sound and the listener. The larger the number, the further - * away the sound is. Using 255 does not guarantee that the channel will be - * culled from the mixing process or be completely silent. For efficiency, - * the precision of this effect may be limited (distance 0 through 5 might - * all produce the same effect, 6 through 10 are equal, etc). Setting (angle) - * and (distance) to 0 unregisters this effect, since the data would be - * unchanged. +/** + * Set the position of a channel. + * + * `angle` is an integer from 0 to 360, that specifies the location of the + * sound in relation to the listener. `angle` will be reduced as necessary + * (540 becomes 180 degrees, -100 becomes 260). Angle 0 is due north, and + * rotates clockwise as the value increases. For efficiency, the precision of + * this effect may be limited (angles 1 through 7 might all produce the same + * effect, 8 through 15 are equal, etc). `distance` is an integer between 0 + * and 255 that specifies the space between the sound and the listener. The + * larger the number, the further away the sound is. Using 255 does not + * guarantee that the channel will be removed from the mixing process or be + * completely silent. For efficiency, the precision of this effect may be + * limited (distance 0 through 5 might all produce the same effect, 6 through + * 10 are equal, etc). Setting `angle` and `distance` to 0 unregisters this + * effect, since the data would be unchanged. * * If you need more precise positional audio, consider using OpenAL for - * spatialized effects instead of SDL_mixer. This is only meant to be a - * basic effect for simple "3D" games. + * spatialized effects instead of SDL_mixer. This is only meant to be a basic + * effect for simple "3D" games. * - * If the audio device is configured for mono output, then you won't get - * any effectiveness from the angle; however, distance attenuation on the - * channel will still occur. While this effect will function with stereo - * voices, it makes more sense to use voices with only one channel of sound, - * so when they are mixed through this effect, the positioning will sound - * correct. You can convert them to mono through SDL before giving them to - * the mixer in the first place if you like. + * If the audio device is configured for mono output, then you won't get any + * effectiveness from the angle; however, distance attenuation on the channel + * will still occur. While this effect will function with stereo voices, it + * makes more sense to use voices with only one channel of sound, so when they + * are mixed through this effect, the positioning will sound correct. You can + * convert them to mono through SDL before giving them to the mixer in the + * first place if you like. * - * Setting (channel) to MIX_CHANNEL_POST registers this as a posteffect, and - * the positioning will be done to the final mixed stream before passing it - * on to the audio device. + * Setting the channel to MIX_CHANNEL_POST registers this as a posteffect, and + * the positioning will be done to the final mixed stream before passing it on + * to the audio device. * * This is a convenience wrapper over Mix_SetDistance() and Mix_SetPanning(). * - * returns zero if error (no such channel or Mix_RegisterEffect() fails), - * nonzero if position effect is enabled. - * Error messages can be retrieved from Mix_GetError(). + * Note that unlike most SDL and SDL_mixer functions, this function returns + * zero if there's an error, not on success. We apologize for the API design + * inconsistency here. + * + * \param channel The mixer channel to position, or MIX_CHANNEL_POST. + * \param angle angle, in degrees. North is 0, and goes clockwise. + * \param distance distance; 0 is the listener, 255 is maxiumum distance away. + * \returns zero if error (no such channel or Mix_RegisterEffect() fails), + * nonzero if position effect is enabled. Error messages can be + * retrieved from Mix_GetError(). + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_SetPosition(int channel, Sint16 angle, Uint8 distance); -/* Set the "distance" of a channel. (distance) is an integer from 0 to 255 - * that specifies the location of the sound in relation to the listener. - * Distance 0 is overlapping the listener, and 255 is as far away as possible - * A distance of 255 does not guarantee silence; in such a case, you might - * want to try changing the chunk's volume, or just cull the sample from the - * mixing process with Mix_HaltChannel(). - * For efficiency, the precision of this effect may be limited (distances 1 - * through 7 might all produce the same effect, 8 through 15 are equal, etc). - * (distance) is an integer between 0 and 255 that specifies the space - * between the sound and the listener. The larger the number, the further - * away the sound is. - * Setting (distance) to 0 unregisters this effect, since the data would be - * unchanged. - * If you need more precise positional audio, consider using OpenAL for - * spatialized effects instead of SDL_mixer. This is only meant to be a - * basic effect for simple "3D" games. +/** + * Set the "distance" of a channel. * - * Setting (channel) to MIX_CHANNEL_POST registers this as a posteffect, and - * the distance attenuation will be done to the final mixed stream before - * passing it on to the audio device. + * `distance` is an integer from 0 to 255 that specifies the location of the + * sound in relation to the listener. Distance 0 is overlapping the listener, + * and 255 is as far away as possible. A distance of 255 does not guarantee + * silence; in such a case, you might want to try changing the chunk's volume, + * or just cull the sample from the mixing process with Mix_HaltChannel(). For + * efficiency, the precision of this effect may be limited (distances 1 + * through 7 might all produce the same effect, 8 through 15 are equal, etc). + * (distance) is an integer between 0 and 255 that specifies the space between + * the sound and the listener. The larger the number, the further away the + * sound is. Setting the distance to 0 unregisters this effect, since the data + * would be unchanged. If you need more precise positional audio, consider + * using OpenAL for spatialized effects instead of SDL_mixer. This is only + * meant to be a basic effect for simple "3D" games. + * + * Setting the channel to MIX_CHANNEL_POST registers this as a posteffect, and + * the distance attenuation will be done to the final mixed stream before + * passing it on to the audio device. * * This uses the Mix_RegisterEffect() API internally. * - * returns zero if error (no such channel or Mix_RegisterEffect() fails), - * nonzero if position effect is enabled. - * Error messages can be retrieved from Mix_GetError(). + * Note that unlike most SDL and SDL_mixer functions, this function returns + * zero if there's an error, not on success. We apologize for the API design + * inconsistency here. + * + * \param channel The mixer channel to attenuate, or MIX_CHANNEL_POST. + * \param distance distance; 0 is the listener, 255 is maxiumum distance away. + * \returns zero if error (no such channel or Mix_RegisterEffect() fails), + * nonzero if position effect is enabled. Error messages can be + * retrieved from Mix_GetError(). + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_SetDistance(int channel, Uint8 distance); -/* - * !!! FIXME : Haven't implemented, since the effect goes past the - * end of the sound buffer. Will have to think about this. - * --ryan. - */ -#if 0 -/* Causes an echo effect to be mixed into a sound. (echo) is the amount - * of echo to mix. 0 is no echo, 255 is infinite (and probably not - * what you want). +/** + * Cause a channel to reverse its stereo. * - * Setting (channel) to MIX_CHANNEL_POST registers this as a posteffect, and - * the reverbing will be done to the final mixed stream before passing it on - * to the audio device. + * This is handy if the user has his speakers hooked up backwards, or you + * would like to have a trippy sound effect. * - * This uses the Mix_RegisterEffect() API internally. If you specify an echo - * of zero, the effect is unregistered, as the data is already in that state. - * - * returns zero if error (no such channel or Mix_RegisterEffect() fails), - * nonzero if reversing effect is enabled. - * Error messages can be retrieved from Mix_GetError(). - */ -extern no_parse_DECLSPEC int SDLCALL Mix_SetReverb(int channel, Uint8 echo); -#endif - -/* Causes a channel to reverse its stereo. This is handy if the user has his - * speakers hooked up backwards, or you would like to have a minor bit of - * psychedelia in your sound code. :) Calling this function with (flip) - * set to non-zero reverses the chunks's usual channels. If (flip) is zero, - * the effect is unregistered. + * Calling this function with `flip` set to non-zero reverses the chunks's + * usual channels. If `flip` is zero, the effect is unregistered. * * This uses the Mix_RegisterEffect() API internally, and thus is probably - * more CPU intensive than having the user just plug in his speakers - * correctly. Mix_SetReverseStereo() returns without registering the effect - * function if the audio device is not configured for stereo output. + * more CPU intensive than having the user just plug in his speakers + * correctly. Mix_SetReverseStereo() returns without registering the effect + * function if the audio device is not configured for stereo output. * - * If you specify MIX_CHANNEL_POST for (channel), then this the effect is used - * on the final mixed stream before sending it on to the audio device (a - * posteffect). + * If you specify MIX_CHANNEL_POST for `channel`, then this effect is used on + * the final mixed stream before sending it on to the audio device (a + * posteffect). * - * returns zero if error (no such channel or Mix_RegisterEffect() fails), - * nonzero if reversing effect is enabled. Note that an audio device in mono - * mode is a no-op, but this call will return successful in that case. - * Error messages can be retrieved from Mix_GetError(). + * Note that unlike most SDL and SDL_mixer functions, this function returns + * zero if there's an error, not on success. We apologize for the API design + * inconsistency here. + * + * \param channel The mixer channel to reverse, or MIX_CHANNEL_POST. + * \param flip non-zero to reverse stereo, zero to disable this effect. + * \returns zero if error (no such channel or Mix_RegisterEffect() fails), + * nonzero if reversing effect is enabled. Note that an audio device + * in mono mode is a no-op, but this call will return successful in + * that case. Error messages can be retrieved from Mix_GetError(). + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_SetReverseStereo(int channel, int flip); -/* end of effects API. --ryan. */ +/* end of effects API. */ -/* Reserve the first channels (0 -> n-1) for the application, i.e. don't allocate - them dynamically to the next sample if requested with a -1 value below. - Returns the number of reserved channels. + +/** + * Reserve the first channels for the application. + * + * While SDL_mixer will use up to the number of channels allocated by + * Mix_AllocateChannels(), this sets channels aside that will not be available + * when calling Mix_PlayChannel with a channel of -1 (play on the first unused + * channel). In this case, SDL_mixer will treat reserved channels as "used" + * whether anything is playing on them at the moment or not. + * + * This is useful if you've budgeted some channels for dedicated audio and the + * rest are just used as they are available. + * + * Calling this function will set channels 0 to `n - 1` to be reserved. This + * will not change channel allocations. The number of reserved channels will + * be clamped to the current number allocated. + * + * By default, no channels are reserved. + * + * \param num number of channels to reserve, starting at index zero. + * \returns the number of reserved channels. + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_ReserveChannels(int num); + /* Channel grouping functions */ -/* Attach a tag to a channel. A tag can be assigned to several mixer - channels, to form groups of channels. - If 'tag' is -1, the tag is removed (actually -1 is the tag used to - represent the group of all the channels). - Returns true if everything was OK. +/** + * Assign a tag to a channel. + * + * A tag is an arbitary number that can be assigned to several mixer channels, + * to form groups of channels. + * + * If 'tag' is -1, the tag is removed (actually -1 is the tag used to + * represent the group of all the channels). + * + * This function replaces the requested channel's current tag; you may only + * have one tag per channel. + * + * You may not specify MAX_CHANNEL_POST for a channel. + * + * \param which the channel to set the tag on. + * \param tag an arbitrary value to assign a channel. + * \returns non-zero on success, zero on error (no such channel). + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_GroupChannel(int which, int tag); -/* Assign several consecutive channels to a group */ + +/** + * Assign several consecutive channels to the same tag. + * + * A tag is an arbitary number that can be assigned to several mixer channels, + * to form groups of channels. + * + * If 'tag' is -1, the tag is removed (actually -1 is the tag used to + * represent the group of all the channels). + * + * This function replaces the requested channels' current tags; you may only + * have one tag per channel. + * + * You may not specify MAX_CHANNEL_POST for a channel. + * + * Note that this returns success and failure in the _opposite_ way from + * Mix_GroupChannel(). We regret the API design mistake. + * + * \param from the first channel to set the tag on. + * \param to the last channel to set the tag on, inclusive. + * \param tag an arbitrary value to assign a channel. + * \returns 0 if successful, negative on error. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_GroupChannels(int from, int to, int tag); -/* Finds the first available channel in a group of channels, - returning -1 if none are available. + +/** + * Finds the first available channel in a group of channels. + * + * A tag is an arbitary number that can be assigned to several mixer channels, + * to form groups of channels. + * + * This function searches all channels with a specified tag, and returns the + * channel number of the first one it finds that is currently unused. + * + * If no channels with the specified tag are unused, this function returns -1. + * + * \param tag an arbitrary value, assigned to channels, to search for. + * \returns first available channel, or -1 if none are available. + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_GroupAvailable(int tag); -/* Returns the number of channels in a group. This is also a subtle - way to get the total number of channels when 'tag' is -1 + +/** + * Returns the number of channels in a group. + * + * If tag is -1, this will return the total number of channels allocated, + * regardless of what their tag might be. + * + * \param tag an arbitrary value, assigned to channels, to search for. + * \returns the number of channels assigned the specified tag. + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_GroupCount(int tag); -/* Finds the "oldest" sample playing in a group of channels */ + +/** + * Find the "oldest" sample playing in a group of channels. + * + * Specifically, this function returns the channel number that is assigned the + * specified tag, is currently playing, and has the lowest start time, based + * on the value of SDL_GetTicks() when the channel started playing. + * + * If no channel with this tag is currently playing, this function returns -1. + * + * \param tag an arbitrary value, assigned to channels, to search through. + * \returns the "oldest" sample playing in a group of channels. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_GroupNewer + */ extern DECLSPEC int SDLCALL Mix_GroupOldest(int tag); -/* Finds the "most recent" (i.e. last) sample playing in a group of channels */ + +/** + * Find the "most recent" sample playing in a group of channels. + * + * Specifically, this function returns the channel number that is assigned the + * specified tag, is currently playing, and has the highest start time, based + * on the value of SDL_GetTicks() when the channel started playing. + * + * If no channel with this tag is currently playing, this function returns -1. + * + * \param tag an arbitrary value, assigned to channels, to search through. + * \returns the "most recent" sample playing in a group of channels. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_GroupOldest + */ extern DECLSPEC int SDLCALL Mix_GroupNewer(int tag); -/* Play an audio chunk on a specific channel. - If the specified channel is -1, play on the first free channel. - If 'loops' is greater than zero, loop the sound that many times. - If 'loops' is -1, loop inifinitely (~65000 times). - Returns which channel was used to play the sound. -*/ -#define Mix_PlayChannel(channel,chunk,loops) Mix_PlayChannelTimed(channel,chunk,loops,-1) -/* The same as above, but the sound is played at most 'ticks' milliseconds */ +/** + * Play an audio chunk on a specific channel. + * + * If the specified channel is -1, play on the first free channel (and return + * -1 without playing anything new if no free channel was available). + * + * If a specific channel was requested, and there is a chunk already playing + * there, that chunk will be halted and the new chunk will take its place. + * + * If `loops` is greater than zero, loop the sound that many times. If `loops` + * is -1, loop "infinitely" (~65000 times). + * + * Note that before SDL_mixer 2.6.0, this function was a macro that called + * Mix_PlayChannelTimed() with a fourth parameter ("ticks") of -1. This + * function still does the same thing, but promotes it to a proper API + * function. Older binaries linked against a newer SDL_mixer will still call + * Mix_PlayChannelTimed directly, as they are using the macro, which was + * available since the dawn of time. + * + * \param channel the channel on which to play the new chunk. + * \param chunk the new chunk to play. + * \param loops the number of times the chunk should loop, -1 to loop (not + * actually) infinitely. + * \returns which channel was used to play the sound, or -1 if sound could not + * be played. + * + * \since This function is available since SDL_mixer 2.6.0 (and as a macro + * since 2.0.0). + */ +extern DECLSPEC int SDLCALL Mix_PlayChannel(int channel, Mix_Chunk *chunk, int loops); + +/** + * Play an audio chunk on a specific channel for a maximum time. + * + * If the specified channel is -1, play on the first free channel (and return + * -1 without playing anything new if no free channel was available). + * + * If a specific channel was requested, and there is a chunk already playing + * there, that chunk will be halted and the new chunk will take its place. + * + * If `loops` is greater than zero, loop the sound that many times. If `loops` + * is -1, loop "infinitely" (~65000 times). + * + * `ticks` specifies the maximum number of milliseconds to play this chunk + * before halting it. If you want the chunk to play until all data has been + * mixed, specify -1. + * + * Note that this function does not block for the number of ticks requested; + * it just schedules the chunk to play and notes the maximum for the mixer to + * manage later, and returns immediately. + * + * \param channel the channel on which to play the new chunk. + * \param chunk the new chunk to play. + * \param loops the number of times the chunk should loop, -1 to loop (not + * actually) infinitely. + * \param ticks the maximum number of milliseconds of this chunk to mix for + * playback. + * \returns which channel was used to play the sound, or -1 if sound could not + * be played. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_PlayChannelTimed(int channel, Mix_Chunk *chunk, int loops, int ticks); + +/** + * Play a new music object. + * + * This will schedule the music object to begin mixing for playback. + * + * There is only ever one music object playing at a time; if this is called + * when another music object is playing, the currently-playing music is halted + * and the new music will replace it. + * + * Please note that if the currently-playing music is in the process of fading + * out (via Mix_FadeOutMusic()), this function will *block* until the fade + * completes. If you need to avoid this, be sure to call Mix_HaltMusic() + * before starting new music. + * + * \param music the new music object to schedule for mixing. + * \param loops the number of loops to play the music for (0 means "play once + * and stop"). + * \returns zero on success, -1 on error. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_PlayMusic(Mix_Music *music, int loops); -/* Fade in music or a channel over "ms" milliseconds, same semantics as the "Play" functions */ +/** + * Play a new music object, fading in the audio. + * + * This will start the new music playing, much like Mix_PlayMusic() will, but + * will start the music playing at silence and fade in to its normal volume + * over the specified number of milliseconds. + * + * If there is already music playing, that music will be halted and the new + * music object will take its place. + * + * If `loops` is greater than zero, loop the music that many times. If `loops` + * is -1, loop "infinitely" (~65000 times). + * + * Fading music will change it's volume progressively, as if Mix_VolumeMusic() + * was called on it (which is to say: you probably shouldn't call + * Mix_VolumeMusic() on fading music). + * + * \param music the new music object to play. + * \param loops the number of times the chunk should loop, -1 to loop (not + * actually) infinitely. + * \param ms the number of milliseconds to spend fading in. + * \returns zero on success, -1 on error. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_FadeInMusic(Mix_Music *music, int loops, int ms); + +/** + * Play a new music object, fading in the audio, from a starting position. + * + * This will start the new music playing, much like Mix_PlayMusic() will, but + * will start the music playing at silence and fade in to its normal volume + * over the specified number of milliseconds. + * + * If there is already music playing, that music will be halted and the new + * music object will take its place. + * + * If `loops` is greater than zero, loop the music that many times. If `loops` + * is -1, loop "infinitely" (~65000 times). + * + * Fading music will change it's volume progressively, as if Mix_VolumeMusic() + * was called on it (which is to say: you probably shouldn't call + * Mix_VolumeMusic() on fading music). + * + * This function allows the caller to start the music playback past the + * beginning of its audio data. You may specify a start position, in seconds, + * and the playback and fade-in will start there instead of with the first + * samples of the music. + * + * An app can specify a `position` of 0.0 to start at the beginning of the + * music (or just call Mix_FadeInMusic() instead). + * + * To convert from milliseconds, divide by 1000.0. + * + * \param music the new music object to play. + * \param loops the number of times the chunk should loop, -1 to loop (not + * actually) infinitely. + * \param ms the number of milliseconds to spend fading in. + * \param position the start position within the music, in seconds, where + * playback should start. + * \returns zero on success, -1 on error. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_FadeInMusicPos(Mix_Music *music, int loops, int ms, double position); -#define Mix_FadeInChannel(channel,chunk,loops,ms) Mix_FadeInChannelTimed(channel,chunk,loops,ms,-1) + +/** + * Play an audio chunk on a specific channel, fading in the audio. + * + * This will start the new sound playing, much like Mix_PlayChannel() will, + * but will start the sound playing at silence and fade in to its normal + * volume over the specified number of milliseconds. + * + * If the specified channel is -1, play on the first free channel (and return + * -1 without playing anything new if no free channel was available). + * + * If a specific channel was requested, and there is a chunk already playing + * there, that chunk will be halted and the new chunk will take its place. + * + * If `loops` is greater than zero, loop the sound that many times. If `loops` + * is -1, loop "infinitely" (~65000 times). + * + * A fading channel will change it's volume progressively, as if Mix_Volume() + * was called on it (which is to say: you probably shouldn't call Mix_Volume() + * on a fading channel). + * + * Note that before SDL_mixer 2.6.0, this function was a macro that called + * Mix_FadeInChannelTimed() with a fourth parameter ("ticks") of -1. This + * function still does the same thing, but promotes it to a proper API + * function. Older binaries linked against a newer SDL_mixer will still call + * Mix_FadeInChannelTimed directly, as they are using the macro, which was + * available since the dawn of time. + * + * \param channel the channel on which to play the new chunk, or -1 to find + * any available. + * \param chunk the new chunk to play. + * \param loops the number of times the chunk should loop, -1 to loop (not + * actually) infinitely. + * \param ms the number of milliseconds to spend fading in. + * \returns which channel was used to play the sound, or -1 if sound could not + * be played. + * + * \since This function is available since SDL_mixer 2.6.0 (and as a macro + * since 2.0.0). + */ +extern DECLSPEC int SDLCALL Mix_FadeInChannel(int channel, Mix_Chunk *chunk, int loops, int ms); + +/** + * Play an audio chunk on a specific channel, fading in the audio, for a + * maximum time. + * + * This will start the new sound playing, much like Mix_PlayChannel() will, + * but will start the sound playing at silence and fade in to its normal + * volume over the specified number of milliseconds. + * + * If the specified channel is -1, play on the first free channel (and return + * -1 without playing anything new if no free channel was available). + * + * If a specific channel was requested, and there is a chunk already playing + * there, that chunk will be halted and the new chunk will take its place. + * + * If `loops` is greater than zero, loop the sound that many times. If `loops` + * is -1, loop "infinitely" (~65000 times). + * + * `ticks` specifies the maximum number of milliseconds to play this chunk + * before halting it. If you want the chunk to play until all data has been + * mixed, specify -1. + * + * Note that this function does not block for the number of ticks requested; + * it just schedules the chunk to play and notes the maximum for the mixer to + * manage later, and returns immediately. + * + * A fading channel will change it's volume progressively, as if Mix_Volume() + * was called on it (which is to say: you probably shouldn't call Mix_Volume() + * on a fading channel). + * + * \param channel the channel on which to play the new chunk, or -1 to find + * any available. + * \param chunk the new chunk to play. + * \param loops the number of times the chunk should loop, -1 to loop (not + * actually) infinitely. + * \param ms the number of milliseconds to spend fading in. + * \param ticks the maximum number of milliseconds of this chunk to mix for + * playback. + * \returns which channel was used to play the sound, or -1 if sound could not + * be played. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_FadeInChannelTimed(int channel, Mix_Chunk *chunk, int loops, int ms, int ticks); -/* Set the volume in the range of 0-128 of a specific channel or chunk. - If the specified channel is -1, set volume for all channels. - Returns the original volume. - If the specified volume is -1, just return the current volume. -*/ +/** + * Set the volume for a specific channel. + * + * The volume must be between 0 (silence) and MIX_MAX_VOLUME (full volume). + * Note that MIX_MAX_VOLUME is 128. Values greater than MIX_MAX_VOLUME are + * clamped to MIX_MAX_VOLUME. + * + * Specifying a negative volume will not change the current volume; as such, + * this can be used to query the current volume without making changes, as + * this function returns the previous (in this case, still-current) value. + * + * If the specified channel is -1, this function sets the volume for all + * channels, and returns _the average_ of all channels' volumes prior to this + * call. + * + * The default volume for a channel is MIX_MAX_VOLUME (no attenuation). + * + * \param channel the channel on set/query the volume on, or -1 for all + * channels. + * \param volume the new volume, between 0 and MIX_MAX_VOLUME, or -1 to query. + * \returns the previous volume. If the specified volume is -1, this returns + * the current volume. If `channel` is -1, this returns the average + * of all channels. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_Volume(int channel, int volume); + +/** + * Set the volume for a specific chunk. + * + * In addition to channels having a volume setting, individual chunks also + * maintain a separate volume. Both values are considered when mixing, so both + * affect the final attenuation of the sound. This lets an app adjust the + * volume for all instances of a sound in addition to specific instances of + * that sound. + * + * The volume must be between 0 (silence) and MIX_MAX_VOLUME (full volume). + * Note that MIX_MAX_VOLUME is 128. Values greater than MIX_MAX_VOLUME are + * clamped to MIX_MAX_VOLUME. + * + * Specifying a negative volume will not change the current volume; as such, + * this can be used to query the current volume without making changes, as + * this function returns the previous (in this case, still-current) value. + * + * The default volume for a chunk is MIX_MAX_VOLUME (no attenuation). + * + * \param chunk the chunk whose volume to adjust. + * \param volume the new volume, between 0 and MIX_MAX_VOLUME, or -1 to query. + * \returns the previous volume. If the specified volume is -1, this returns + * the current volume. If `chunk` is NULL, this returns -1. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_VolumeChunk(Mix_Chunk *chunk, int volume); + +/** + * Set the volume for the music channel. + * + * The volume must be between 0 (silence) and MIX_MAX_VOLUME (full volume). + * Note that MIX_MAX_VOLUME is 128. Values greater than MIX_MAX_VOLUME are + * clamped to MIX_MAX_VOLUME. + * + * Specifying a negative volume will not change the current volume; as such, + * this can be used to query the current volume without making changes, as + * this function returns the previous (in this case, still-current) value. + * + * The default volume for music is MIX_MAX_VOLUME (no attenuation). + * + * \param volume the new volume, between 0 and MIX_MAX_VOLUME, or -1 to query. + * \returns the previous volume. If the specified volume is -1, this returns + * the current volume. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_VolumeMusic(int volume); -/* Halt playing of a particular channel */ +/** + * Query the current volume value for a music object. + * + * \param music the music object to query. + * \returns the music's current volume, between 0 and MIX_MAX_VOLUME (128). + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC int SDLCALL Mix_GetMusicVolume(Mix_Music *music); + +/** + * Set the master volume for all channels. + * + * SDL_mixer keeps a per-channel volume, a per-chunk volume, and a master + * volume, and considers all three when mixing audio. This function sets the + * master volume, which is applied to all playing channels when mixing. + * + * The volume must be between 0 (silence) and MIX_MAX_VOLUME (full volume). + * Note that MIX_MAX_VOLUME is 128. Values greater than MIX_MAX_VOLUME are + * clamped to MIX_MAX_VOLUME. + * + * Specifying a negative volume will not change the current volume; as such, + * this can be used to query the current volume without making changes, as + * this function returns the previous (in this case, still-current) value. + * + * Note that the master volume does not affect any playing music; it is only + * applied when mixing chunks. Use Mix_VolumeMusic() for that.\ + * + * \param volume the new volume, between 0 and MIX_MAX_VOLUME, or -1 to query. + * \returns the previous volume. If the specified volume is -1, this returns + * the current volume. + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC int SDLCALL Mix_MasterVolume(int volume); + +/** + * Halt playing of a particular channel. + * + * This will stop further playback on that channel until a new chunk is + * started there. + * + * Specifying a channel of -1 will halt _all_ channels, except for any playing + * music. + * + * Any halted channels will have any currently-registered effects + * deregistered, and will call any callback specified by Mix_ChannelFinished() + * before this function returns. + * + * You may not specify MAX_CHANNEL_POST for a channel. + * + * \param channel channel to halt, or -1 to halt all channels. + * \returns 0 on success, or -1 on error. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_HaltChannel(int channel); + +/** + * Halt playing of a group of channels by arbitrary tag. + * + * This will stop further playback on all channels with a specific tag, until + * a new chunk is started there. + * + * A tag is an arbitrary number that can be assigned to several mixer + * channels, to form groups of channels. + * + * The default tag for a channel is -1. + * + * Any halted channels will have any currently-registered effects + * deregistered, and will call any callback specified by Mix_ChannelFinished() + * before this function returns. + * + * \param tag an arbitrary value, assigned to channels, to search for. + * \returns zero, whether any channels were halted or not. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_HaltGroup(int tag); + +/** + * Halt playing of the music stream. + * + * This will stop further playback of music until a new music object is + * started there. + * + * Any halted music will call any callback specified by + * Mix_HookMusicFinished() before this function returns. + * + * \returns zero, regardless of whether any music was halted. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_HaltMusic(void); -/* Change the expiration delay for a particular channel. - The sample will stop playing after the 'ticks' milliseconds have elapsed, - or remove the expiration if 'ticks' is -1 -*/ +/** + * Change the expiration delay for a particular channel. + * + * The channel will halt after the 'ticks' milliseconds have elapsed, or + * remove the expiration if 'ticks' is -1. + * + * This overrides the value passed to the fourth parameter of + * Mix_PlayChannelTimed(). + * + * Specifying a channel of -1 will set an expiration for _all_ channels. + * + * Any halted channels will have any currently-registered effects + * deregistered, and will call any callback specified by Mix_ChannelFinished() + * once the halt occurs. + * + * Note that this function does not block for the number of ticks requested; + * it just schedules the chunk to expire and notes the time for the mixer to + * manage later, and returns immediately. + * + * \param channel the channel to change the expiration time on. + * \param ticks number of milliseconds from now to let channel play before + * halting, -1 to not halt. + * \returns the number of channels that changed expirations. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_ExpireChannel(int channel, int ticks); -/* Halt a channel, fading it out progressively till it's silent - The ms parameter indicates the number of milliseconds the fading - will take. +/** + * Halt a channel after fading it out for a specified time. + * + * This will begin a channel fading from its current volume to silence over + * `ms` milliseconds. After that time, the channel is halted. + * + * Any halted channels will have any currently-registered effects + * deregistered, and will call any callback specified by Mix_ChannelFinished() + * once the halt occurs. + * + * A fading channel will change it's volume progressively, as if Mix_Volume() + * was called on it (which is to say: you probably shouldn't call Mix_Volume() + * on a fading channel). + * + * Note that this function does not block for the number of milliseconds + * requested; it just schedules the chunk to fade and notes the time for the + * mixer to manage later, and returns immediately. + * + * \param which the channel to fade out. + * \param ms number of milliseconds to fade before halting the channel. + * \returns the number of channels scheduled to fade. + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_FadeOutChannel(int which, int ms); + +/** + * Halt a playing group of channels by arbitrary tag, after fading them out + * for a specified time. + * + * This will begin fading a group of channels with a specific tag from their + * current volumes to silence over `ms` milliseconds. After that time, those + * channels are halted. + * + * A tag is an arbitrary number that can be assigned to several mixer + * channels, to form groups of channels. + * + * The default tag for a channel is -1. + * + * Any halted channels will have any currently-registered effects + * deregistered, and will call any callback specified by Mix_ChannelFinished() + * once the halt occurs. + * + * A fading channel will change it's volume progressively, as if Mix_Volume() + * was called on it (which is to say: you probably shouldn't call Mix_Volume() + * on a fading channel). + * + * Note that this function does not block for the number of milliseconds + * requested; it just schedules the group to fade and notes the time for the + * mixer to manage later, and returns immediately. + * + * \param tag an arbitrary value, assigned to channels, to search for. + * \param ms number of milliseconds to fade before halting the group. + * \returns the number of channels that were scheduled for fading. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_FadeOutGroup(int tag, int ms); + +/** + * Halt the music stream after fading it out for a specified time. + * + * This will begin the music fading from its current volume to silence over + * `ms` milliseconds. After that time, the music is halted. + * + * Any halted music will call any callback specified by + * Mix_HookMusicFinished() once the halt occurs. + * + * Fading music will change it's volume progressively, as if Mix_VolumeMusic() + * was called on it (which is to say: you probably shouldn't call + * Mix_VolumeMusic() on a fading channel). + * + * Note that this function does not block for the number of milliseconds + * requested; it just schedules the music to fade and notes the time for the + * mixer to manage later, and returns immediately. + * + * \param ms number of milliseconds to fade before halting the channel. + * \returns non-zero if music was scheduled to fade, zero otherwise. If no + * music is currently playing, this returns zero. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_FadeOutMusic(int ms); -/* Query the fading status of a channel */ +/** + * Query the fading status of the music stream. + * + * This reports one of three values: + * + * - `MIX_NO_FADING` + * - `MIX_FADING_OUT` + * - `MIX_FADING_IN` + * + * If music is not currently playing, this returns `MIX_NO_FADING`. + * + * \returns the current fading status of the music stream. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC Mix_Fading SDLCALL Mix_FadingMusic(void); + +/** + * Query the fading status of a channel. + * + * This reports one of three values: + * + * - `MIX_NO_FADING` + * - `MIX_FADING_OUT` + * - `MIX_FADING_IN` + * + * If nothing is currently playing on the channel, or an invalid channel is + * specified, this returns `MIX_NO_FADING`. + * + * You may not specify MAX_CHANNEL_POST for a channel. + * + * You may not specify -1 for all channels; only individual channels may be + * queried. + * + * \param which the channel to query. + * \returns the current fading status of the channel. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC Mix_Fading SDLCALL Mix_FadingChannel(int which); -/* Pause/Resume a particular channel */ +/** + * Pause a particular channel. + * + * Pausing a channel will prevent further playback of the assigned chunk but + * will maintain the chunk's current mixing position. When resumed, this + * channel will continue to mix the chunk where it left off. + * + * A paused channel can be resumed by calling Mix_Resume(). + * + * A paused channel with an expiration will not expire while paused (the + * expiration countdown will be adjusted once resumed). + * + * It is legal to halt a paused channel. Playing a new chunk on a paused + * channel will replace the current chunk and unpause the channel. + * + * Specifying a channel of -1 will pause _all_ channels. Any music is + * unaffected. + * + * You may not specify MAX_CHANNEL_POST for a channel. + * + * \param channel the channel to pause, or -1 to pause all channels. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC void SDLCALL Mix_Pause(int channel); + +/** + * Resume a particular channel. + * + * It is legal to resume an unpaused or invalid channel; it causes no effect + * and reports no error. + * + * If the paused channel has an expiration, its expiration countdown resumes + * now, as well. + * + * Specifying a channel of -1 will resume _all_ paused channels. Any music is + * unaffected. + * + * \param channel the channel to resume, or -1 to resume all paused channels. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC void SDLCALL Mix_Resume(int channel); + +/** + * Query whether a particular channel is paused. + * + * If an invalid channel is specified, this function returns zero. + * + * \param channel the channel to query, or -1 to query all channels. + * \return 1 if channel paused, 0 otherwise. If `channel` is -1, returns the + * number of paused channels. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_Paused(int channel); -/* Pause/Resume the music stream */ +/** + * Pause the music stream. + * + * Pausing the music stream will prevent further playback of the assigned + * music object, but will maintain the object's current mixing position. When + * resumed, this channel will continue to mix the music where it left off. + * + * Paused music can be resumed by calling Mix_ResumeMusic(). + * + * It is legal to halt paused music. Playing a new music object when music is + * paused will replace the current music and unpause the music stream. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC void SDLCALL Mix_PauseMusic(void); + +/** + * Resume the music stream. + * + * It is legal to resume an unpaused music stream; it causes no effect and + * reports no error. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC void SDLCALL Mix_ResumeMusic(void); + +/** + * Rewind the music stream. + * + * This causes the currently-playing music to start mixing from the beginning + * of the music, as if it were just started. + * + * It's a legal no-op to rewind the music stream when not playing. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC void SDLCALL Mix_RewindMusic(void); + +/** + * Query whether the music stream is paused. + * + * \return 1 if music is paused, 0 otherwise. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_PauseMusic + * \sa Mix_ResumeMusic + */ extern DECLSPEC int SDLCALL Mix_PausedMusic(void); -/* Set the current position in the music stream. - This returns 0 if successful, or -1 if it failed or isn't implemented. - This function is only implemented for MOD music formats (set pattern - order number) and for OGG, FLAC, MP3_MAD, MP3_MPG and MODPLUG music - (set position in seconds), at the moment. -*/ +/** + * Jump to a given order in mod music. + * + * This only applies to MOD music formats. + * + * \param order order. + * \returns 0 if successful, or -1 if failed or isn't implemented. + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC int SDLCALL Mix_ModMusicJumpToOrder(int order); + +/** + * Start a track in music object. + * + * This only applies to GME music formats. + * + * \param music the music object. + * \param track the track number to play. 0 is the first track. + * \returns 0 if successful, or -1 if failed or isn't implemented. + * + * \since This function is available since SDL_mixer 2.8.0. + */ +extern DECLSPEC int SDLCALL Mix_StartTrack(Mix_Music *music, int track); + +/** + * Get number of tracks in music object. + * + * This only applies to GME music formats. + * + * \param music the music object. + * \returns number of tracks if successful, or -1 if failed or isn't + * implemented. + * + * \since This function is available since SDL_mixer 2.8.0. + */ +extern DECLSPEC int SDLCALL Mix_GetNumTracks(Mix_Music *music); + +/** + * Set the current position in the music stream, in seconds. + * + * To convert from milliseconds, divide by 1000.0. + * + * This function is only implemented for MOD music formats (set pattern order + * number) and for WAV, OGG, FLAC, MP3, and MODPLUG music at the moment. + * + * \param position the new position, in seconds (as a double). + * \returns 0 if successful, or -1 if it failed or not implemented. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_SetMusicPosition(double position); -/* Check the status of a specific channel. - If the specified channel is -1, check all channels. -*/ +/** + * Get the time current position of music stream, in seconds. + * + * To convert to milliseconds, multiply by 1000.0. + * + * \param music the music object to query. + * \returns -1.0 if this feature is not supported for some codec. + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC double SDLCALL Mix_GetMusicPosition(Mix_Music *music); + +/** + * Get a music object's duration, in seconds. + * + * To convert to milliseconds, multiply by 1000.0. + * + * If NULL is passed, returns duration of current playing music. + * + * \param music the music object to query. + * \returns music duration in seconds, or -1.0 on error. + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC double SDLCALL Mix_MusicDuration(Mix_Music *music); + +/** + * Get the loop start time position of music stream, in seconds. + * + * To convert to milliseconds, multiply by 1000.0. + * + * If NULL is passed, returns duration of current playing music. + * + * \param music the music object to query. + * \returns -1.0 if this feature is not used for this music or not supported + * for some codec. + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC double SDLCALL Mix_GetMusicLoopStartTime(Mix_Music *music); + +/** + * Get the loop end time position of music stream, in seconds. + * + * To convert to milliseconds, multiply by 1000.0. + * + * If NULL is passed, returns duration of current playing music. + * + * \param music the music object to query. + * \returns -1.0 if this feature is not used for this music or not supported + * for some codec. + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC double SDLCALL Mix_GetMusicLoopEndTime(Mix_Music *music); + +/** + * Get the loop time length of music stream, in seconds. + * + * To convert to milliseconds, multiply by 1000.0. + * + * If NULL is passed, returns duration of current playing music. + * + * \param music the music object to query. + * \returns -1.0 if this feature is not used for this music or not supported + * for some codec. + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC double SDLCALL Mix_GetMusicLoopLengthTime(Mix_Music *music); + +/** + * Check the playing status of a specific channel. + * + * If the channel is currently playing, this function returns 1. Otherwise it + * returns 0. + * + * If the specified channel is -1, all channels are checked, and this function + * returns the number of channels currently playing. + * + * You may not specify MAX_CHANNEL_POST for a channel. + * + * Paused channels are treated as playing, even though they are not currently + * making forward progress in mixing. + * + * \param channel channel. + * \returns non-zero if channel is playing, zero otherwise. If `channel` is + * -1, return the total number of channel playings. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_Playing(int channel); + +/** + * Check the playing status of the music stream. + * + * If music is currently playing, this function returns 1. Otherwise it + * returns 0. + * + * Paused music is treated as playing, even though it is not currently making + * forward progress in mixing. + * + * \returns non-zero if music is playing, zero otherwise. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_PlayingMusic(void); -/* Stop music and set external music playback command */ +/** + * Run an external command as the music stream. + * + * This halts any currently-playing music, and next time the music stream is + * played, SDL_mixer will spawn a process using the command line specified in + * `command`. This command is not subject to shell expansion, and beyond some + * basic splitting up of arguments, is passed to execvp() on most platforms, + * not system(). + * + * The command is responsible for generating sound; it is NOT mixed by + * SDL_mixer! SDL_mixer will kill the child process if asked to halt the + * music, but otherwise does not have any control over what the process does. + * + * You are strongly encouraged not to use this function without an extremely + * good reason. + * + * \param command command. + * \returns 0 if successful, -1 on error. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_SetMusicCMD(const char *command); -/* Synchro value is set by MikMod from modules while playing */ +/** + * This function does nothing, do not use. + * + * This was probably meant to expose a feature, but no codecs support it, so + * it only remains for binary compatibility. + * + * Calling this function is a legal no-op that returns -1. + * + * \param value this parameter is ignored. + * \returns -1. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_SetSynchroValue(int value); + +/** + * This function does nothing, do not use. + * + * This was probably meant to expose a feature, but no codecs support it, so + * it only remains for binary compatibility. + * + * Calling this function is a legal no-op that returns -1. + * + * \returns -1. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_GetSynchroValue(void); -/* Set/Get/Iterate SoundFonts paths to use by supported MIDI backends */ +/** + * Set SoundFonts paths to use by supported MIDI backends. + * + * You may specify multiple paths in a single string by separating them with + * semicolons; they will be searched in the order listed. + * + * This function replaces any previously-specified paths. + * + * Passing a NULL path will remove any previously-specified paths. + * + * Note that unlike most SDL and SDL_mixer functions, this function returns + * zero if there's an error, not on success. We apologize for the API design + * inconsistency here. + * + * \param paths Paths on the filesystem where SoundFonts are available, + * separated by semicolons. + * \returns 1 if successful, 0 on error (out of memory). + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_SetSoundFonts(const char *paths); -extern DECLSPEC const char* SDLCALL Mix_GetSoundFonts(void); -extern DECLSPEC int SDLCALL Mix_EachSoundFont(int (SDLCALL *function)(const char*, void*), void *data); -/* Get the Mix_Chunk currently associated with a mixer channel - Returns NULL if it's an invalid channel, or there's no chunk associated. -*/ +/** + * Get SoundFonts paths to use by supported MIDI backends. + * + * There are several factors that determine what will be reported by this + * function: + * + * - If the boolean _SDL hint_ `"SDL_FORCE_SOUNDFONTS"` is set, AND the + * `"SDL_SOUNDFONTS"` _environment variable_ is also set, this function will + * return that environment variable regardless of whether + * Mix_SetSoundFounts() was ever called. + * - Otherwise, if Mix_SetSoundFonts() was successfully called with a non-NULL + * path, this function will return the string passed to that function. + * - Otherwise, if the `"SDL_SOUNDFONTS"` variable is set, this function will + * return that environment variable. + * - Otherwise, this function will search some common locations on the + * filesystem, and if it finds a SoundFont there, it will return that. + * - Failing everything else, this function returns NULL. + * + * This returns a pointer to internal (possibly read-only) memory, and it + * should not be modified or free'd by the caller. + * + * \returns semicolon-separated list of sound font paths. + * + * \since This function is available since SDL_mixer 2.0.0. + */ +extern DECLSPEC const char* SDLCALL Mix_GetSoundFonts(void); + +typedef int (SDLCALL *Mix_EachSoundFontCallback)(const char*, void*); + +/** + * Iterate SoundFonts paths to use by supported MIDI backends. + * + * This function will take the string reported by Mix_GetSoundFonts(), split + * it up into separate paths, as delimited by semicolons in the string, and + * call a callback function for each separate path. + * + * If there are no paths available, this returns 0 without calling the + * callback at all. + * + * If the callback returns non-zero, this function stops iterating and returns + * non-zero. If the callback returns 0, this function will continue iterating, + * calling the callback again for further paths. If the callback never returns + * 1, this function returns 0, so this can be used to decide if an available + * soundfont is acceptable for use. + * + * \param function the callback function to call once per path. + * \param data a pointer to pass to the callback for its own personal use. + * \returns non-zero if callback ever returned non-zero, 0 on error or the + * callback never returned non-zero. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_GetSoundFonts + */ +extern DECLSPEC int SDLCALL Mix_EachSoundFont(Mix_EachSoundFontCallback function, void *data); + +/** + * Set full path of the Timidity config file. + * + * For example, "/etc/timidity.cfg" + * + * This is obviously only useful if SDL_mixer is using Timidity internally to + * play MIDI files. + * + * \param path path to a Timidity config file. + * \returns 1 if successful, 0 on error. + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC int SDLCALL Mix_SetTimidityCfg(const char *path); + +/** + * Get full path of a previously-specified Timidity config file. + * + * For example, "/etc/timidity.cfg" + * + * If a path has never been specified, this returns NULL. + * + * This returns a pointer to internal memory, and it should not be modified or + * free'd by the caller. + * + * \returns the previously-specified path, or NULL if not set. + * + * \since This function is available since SDL_mixer 2.6.0. + * + * \sa Mix_SetTimidityCfg + */ +extern DECLSPEC const char* SDLCALL Mix_GetTimidityCfg(void); + +/** + * Get the Mix_Chunk currently associated with a mixer channel. + * + * You may not specify MAX_CHANNEL_POST or -1 for a channel. + * + * \param channel the channel to query. + * \returns the associated chunk, if any, or NULL if it's an invalid channel. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC Mix_Chunk * SDLCALL Mix_GetChunk(int channel); -/* Close the mixer, halting all playing audio */ +/** + * Close the mixer, halting all playing audio. + * + * Any halted channels will have any currently-registered effects + * deregistered, and will call any callback specified by Mix_ChannelFinished() + * before this function returns. + * + * Any halted music will call any callback specified by + * Mix_HookMusicFinished() before this function returns. + * + * Do not start any new audio playing during callbacks in this function. + * + * This will close the audio device. Attempting to play new audio after this + * function returns will fail, until another successful call to + * Mix_OpenAudio() or Mix_OpenAudioDevice(). + * + * Note that (unlike Mix_OpenAudio optionally calling SDL_Init(SDL_INIT_AUDIO) + * on the app's behalf), this will _not_ deinitialize the SDL audio subsystem + * in any case. At some point after calling this function and Mix_Quit(), some + * part of the application should be responsible for calling SDL_Quit() to + * deinitialize all of SDL, including its audio subsystem. + * + * This function should be the last thing you call in SDL_mixer before + * Mix_Quit(). However, the following notes apply if you don't follow this + * advice: + * + * Note that this will not free any loaded chunks or music; you should dispose + * of those resources separately. It is probably poor form to dispose of them + * _after_ this function, but it is safe to call Mix_FreeChunk() and + * Mix_FreeMusic() after closing the device. + * + * Note that any chunks or music you don't free may or may not work if you + * call Mix_OpenAudio again, as the audio device may be in a new format and + * the existing chunks will not be converted to match. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_Quit + */ extern DECLSPEC void SDLCALL Mix_CloseAudio(void); /* We'll use SDL for reporting errors */ + +/** + * Report SDL_mixer errors + * + * \sa Mix_GetError + */ #define Mix_SetError SDL_SetError + +/** + * Get last SDL_mixer error + * + * \sa Mix_SetError + */ #define Mix_GetError SDL_GetError + +/** + * Clear last SDL_mixer error + * + * \sa Mix_SetError + */ #define Mix_ClearError SDL_ClearError +/** + * Set OutOfMemory error + */ +#define Mix_OutOfMemory SDL_OutOfMemory + /* Ends C function definitions when using C++ */ #ifdef __cplusplus } #endif + #include "close_code.h" #endif /* SDL_MIXER_H_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/FindFLAC.cmake b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/FindFLAC.cmake new file mode 100644 index 000000000..d471fecfb --- /dev/null +++ b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/FindFLAC.cmake @@ -0,0 +1,44 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_FLAC QUIET flac) + +find_library(FLAC_LIBRARY + NAMES FLAC + HINTS ${PC_FLAC_LIBDIR} +) + +find_path(FLAC_INCLUDE_PATH + NAMES FLAC/all.h + HINTS ${PC_FLAC_INCLUDEDIR} +) + +if(PC_FLAC_FOUND) + get_flags_from_pkg_config("${FLAC_LIBRARY}" "PC_FLAC" "_flac") +endif() + +set(FLAC_COMPILE_OPTIONS "${_flac_compile_options}" CACHE STRING "Extra compile options of FLAC") + +set(FLAC_LINK_LIBRARIES "${_flac_link_libraries}" CACHE STRING "Extra link libraries of FLAC") + +set(FLAC_LINK_OPTIONS "${_flac_link_options}" CACHE STRING "Extra link flags of FLAC") + +set(FLAC_LINK_DIRECTORIES "${_flac_link_directories}" CACHE PATH "Extra link directories of FLAC") + +find_package_handle_standard_args(FLAC + REQUIRED_VARS FLAC_LIBRARY FLAC_INCLUDE_PATH +) + +if(FLAC_FOUND) + if(NOT TARGET FLAC::FLAC) + add_library(FLAC::FLAC UNKNOWN IMPORTED) + set_target_properties(FLAC::FLAC PROPERTIES + IMPORTED_LOCATION "${FLAC_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${FLAC_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${FLAC_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${FLAC_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${FLAC_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${FLAC_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/FindFluidSynth.cmake b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/FindFluidSynth.cmake new file mode 100644 index 000000000..4e97ad012 --- /dev/null +++ b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/FindFluidSynth.cmake @@ -0,0 +1,44 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_FLUIDSYNTH QUIET fluidsynth) + +find_library(FluidSynth_LIBRARY + NAMES fluidsynth libfluidsynth + HINTS ${PC_FLUIDSYNTH_LIBDIR} +) + +find_path(FluidSynth_INCLUDE_PATH + NAMES fluidsynth.h + HINTS ${PC_FLUIDSYNTH_INCLUDEDIR} +) + +if(PC_FLUIDSYNTH_FOUND) + get_flags_from_pkg_config("${FluidSynth_LIBRARY}" "PC_FLUIDSYNTH" "_fluidsynth") +endif() + +set(FluidSynth_COMPILE_OPTIONS "${_fluidsynth_compile_options}" CACHE STRING "Extra compile options of FluidSynth") + +set(FluidSynth_LINK_LIBRARIES "${_fluidsynth_link_libraries}" CACHE STRING "Extra link libraries of FluidSynth") + +set(FluidSynth_LINK_OPTIONS "${_fluidsynth_link_options}" CACHE STRING "Extra link flags of FluidSynth") + +set(FluidSynth_LINK_DIRECTORIES "${_fluidsynth_link_directories}" CACHE PATH "Extra link directories of FluidSynth") + +find_package_handle_standard_args(FluidSynth + REQUIRED_VARS FluidSynth_LIBRARY FluidSynth_INCLUDE_PATH +) + +if(FluidSynth_FOUND) + if(NOT TARGET FluidSynth::libfluidsynth) + add_library(FluidSynth::libfluidsynth UNKNOWN IMPORTED) + set_target_properties(FluidSynth::libfluidsynth PROPERTIES + IMPORTED_LOCATION "${FluidSynth_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${FluidSynth_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${FluidSynth_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${FluidSynth_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${FluidSynth_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${FluidSynth_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/FindOpusFile.cmake b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/FindOpusFile.cmake new file mode 100644 index 000000000..93be59938 --- /dev/null +++ b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/FindOpusFile.cmake @@ -0,0 +1,49 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_OPUSFILE QUIET opusfile) + +find_library(OpusFile_LIBRARY + NAMES opusfile + HINTS ${PC_OPUSFILE_LIBDIR} +) + +find_path(OpusFile_INCLUDE_PATH + NAMES opusfile.h + PATH_SUFFIXES opus + HINTS ${PC_OPUSFILE_INCLUDEDIR} +) + +if(PC_OPUSFILE_FOUND) + get_flags_from_pkg_config("${OpusFile_LIBRARY}" "PC_OPUSFILE" "_opusfile") +endif() + +set(OpusFile_COMPILE_OPTIONS "${_opusfile_compile_options}" CACHE STRING "Extra compile options of opusfile") + +set(OpusFile_LINK_LIBRARIES "${_opusfile_link_libraries}" CACHE STRING "Extra link libraries of opusfile") + +set(OpusFile_LINK_OPTIONS "${_opusfile_link_options}" CACHE STRING "Extra link flags of opusfile") + +set(OpusFile_LINK_DIRECTORIES "${_opusfile_link_directories}" CACHE PATH "Extra link directories of opusfile") + +find_package_handle_standard_args(OpusFile + REQUIRED_VARS OpusFile_LIBRARY OpusFile_INCLUDE_PATH +) + +if (OpusFile_FOUND) + set(OpusFile_dirs ${OpusFile_INCLUDE_PATH}) + if(EXISTS "${OpusFile_INCLUDE_PATH}/opus") + list(APPEND OpusFile_dirs "${OpusFile_INCLUDE_PATH}/opus") + endif() + if (NOT TARGET OpusFile::opusfile) + add_library(OpusFile::opusfile UNKNOWN IMPORTED) + set_target_properties(OpusFile::opusfile PROPERTIES + IMPORTED_LOCATION "${OpusFile_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${OpusFile_dirs}" + INTERFACE_COMPILE_OPTIONS "${OpusFile_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${OpusFile_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${OpusFile_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${OpusFile_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/FindVorbis.cmake b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/FindVorbis.cmake new file mode 100644 index 000000000..7ebcc5c3f --- /dev/null +++ b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/FindVorbis.cmake @@ -0,0 +1,44 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_VORBIS QUIET vorbisfile) + +find_library(Vorbis_vorbisfile_LIBRARY + NAMES vorbisfile + HINTS ${PC_VORBIS_LIBDIR} +) + +find_path(Vorbis_vorbisfile_INCLUDE_PATH + NAMES vorbis/vorbisfile.h + HINTS ${PC_VORBIS_INCLUDEDIR} +) + +if(PC_VORBIS_FOUND) + get_flags_from_pkg_config("${Vorbis_vorbisfile_LIBRARY}" "PC_VORBIS" "_vorbisfile") +endif() + +set(Vorbis_vorbisfile_COMPILE_OPTIONS "${_vorbisfile_compile_options}" CACHE STRING "Extra compile options of vorbisfile") + +set(Vorbis_vorbisfile_LINK_LIBRARIES "${_vorbisfile_link_libraries}" CACHE STRING "Extra link libraries of vorbisfile") + +set(Vorbis_vorbisfile_LINK_OPTIONS "${_vorbisfile_link_options}" CACHE STRING "Extra link flags of vorbisfile") + +set(Vorbis_vorbisfile_LINK_DIRECTORIES "${_vorbisfile_link_directories}" CACHE PATH "Extra link directories of vorbisfile") + +find_package_handle_standard_args(Vorbis + REQUIRED_VARS Vorbis_vorbisfile_LIBRARY Vorbis_vorbisfile_INCLUDE_PATH +) + +if (Vorbis_FOUND) + if (NOT TARGET Vorbis::vorbisfile) + add_library(Vorbis::vorbisfile UNKNOWN IMPORTED) + set_target_properties(Vorbis::vorbisfile PROPERTIES + IMPORTED_LOCATION "${Vorbis_vorbisfile_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${Vorbis_vorbisfile_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${Vorbis_vorbisfile_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${Vorbis_vorbisfile_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${Vorbis_vorbisfile_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${Vorbis_vorbisfile_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findgme.cmake b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findgme.cmake new file mode 100644 index 000000000..e47c7ed0f --- /dev/null +++ b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findgme.cmake @@ -0,0 +1,48 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_GME QUIET libgme) + +find_library(gme_LIBRARY + NAMES gme + HINTS ${PC_GME_LIBDIR} +) + +find_path(gme_INCLUDE_PATH + NAMES gme/gme.h + HINTS ${PC_GME_INCLUDEDIR} +) + +if(PC_GME_FOUND) + get_flags_from_pkg_config("${gme_LIBRARY}" "PC_GME" "_gme") +endif() + +set(gme_COMPILE_OPTIONS "${_gme_compile_options}" CACHE STRING "Extra compile options of gme") + +set(gme_LINK_LIBRARIES "${_gme_link_libraries}" CACHE STRING "Extra link libraries of gme") + +set(gme_LINK_OPTIONS "${_gme_link_options}" CACHE STRING "Extra link flags of gme") + +set(gme_LINK_DIRECTORIES "${_gme_link_directories}" CACHE PATH "Extra link directories of gme") + +find_package_handle_standard_args(gme + REQUIRED_VARS gme_LIBRARY gme_INCLUDE_PATH +) + +if(gme_FOUND) + set(gme_dirs ${gme_INCLUDE_PATH}) + if(EXISTS "${gme_INCLUDE_PATH}/gme") + list(APPEND gme_dirs "${gme_INCLUDE_PATH}/gme") + endif() + if(NOT TARGET gme::gme) + add_library(gme::gme UNKNOWN IMPORTED) + set_target_properties(gme::gme PROPERTIES + IMPORTED_LOCATION "${gme_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${gme_dirs}" + INTERFACE_COMPILE_OPTIONS "${gme_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${gme_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${gme_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${gme_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findlibxmp-lite.cmake b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findlibxmp-lite.cmake new file mode 100644 index 000000000..a9b6018be --- /dev/null +++ b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findlibxmp-lite.cmake @@ -0,0 +1,45 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_XMPLITE QUIET libxmp-lite) + +find_library(libxmp_lite_LIBRARY + NAMES xmp-lite libxmp-lite + HINTS ${PC_XMPLITE_LIBDIR} +) + +find_path(libxmp_lite_INCLUDE_PATH + NAMES xmp.h + PATH_SUFFIXES libxmp-lite + HINTS ${PC_XMPLITE_INCLUDEDIR} +) + +if(PC_XMPLITE_FOUND) + get_flags_from_pkg_config("${libxmp_lite_LIBRARY}" "PC_XMPLITE" "_libxmp_lite") +endif() + +set(libxmp_lite_COMPILE_OPTIONS "${_libxmp_lite_compile_options}" CACHE STRING "Extra compile options of libxmp_lite") + +set(libxmp_lite_LINK_LIBRARIES "${_libxmp_lite_link_libraries}" CACHE STRING "Extra link libraries of libxmp_lite") + +set(libxmp_lite_LINK_OPTIONS "${_libxmp_lite_link_options}" CACHE STRING "Extra link flags of libxmp_lite") + +set(libxmp_lite_LINK_DIRECTORIES "${_libxmp_lite_link_directories}" CACHE PATH "Extra link directories of libxmp_lite") + +find_package_handle_standard_args(libxmp-lite + REQUIRED_VARS libxmp_lite_LIBRARY libxmp_lite_INCLUDE_PATH +) + +if(libxmp-lite_FOUND) + if(NOT TARGET libxmp-lite::libxmp-lite) + add_library(libxmp-lite::libxmp-lite UNKNOWN IMPORTED) + set_target_properties(libxmp-lite::libxmp-lite PROPERTIES + IMPORTED_LOCATION "${libxmp_lite_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${libxmp_lite_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${libxmp_lite_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${libxmp_lite_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${libxmp_lite_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${libxmp_lite_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findlibxmp.cmake b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findlibxmp.cmake new file mode 100644 index 000000000..a4bb175ea --- /dev/null +++ b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findlibxmp.cmake @@ -0,0 +1,44 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_XMP QUIET libxmp) + +find_library(libxmp_LIBRARY + NAMES xmp + HINTS ${PC_XMP_LIBDIR} +) + +find_path(libxmp_INCLUDE_PATH + NAMES xmp.h + HINTS ${PC_XMP_INCLUDEDIR} +) + +if(PC_XMP_FOUND) + get_flags_from_pkg_config("${libxmp_LIBRARY}" "PC_XMP" "_libxmp") +endif() + +set(libxmp_COMPILE_OPTIONS "${_libxmp_compile_options}" CACHE STRING "Extra compile options of libxmp") + +set(libxmp_LINK_LIBRARIES "${_libxmp_link_libraries}" CACHE STRING "Extra link libraries of libxmp") + +set(libxmp_LINK_OPTIONS "${_libxmp_link_options}" CACHE STRING "Extra link flags of libxmp") + +set(libxmp_LINK_DIRECTORIES "${_libxmp_link_directories}" CACHE PATH "Extra link flags of libxmp") + +find_package_handle_standard_args(libxmp + REQUIRED_VARS libxmp_LIBRARY libxmp_INCLUDE_PATH +) + +if(libxmp_FOUND) + if(NOT TARGET libxmp::libxmp) + add_library(libxmp::libxmp UNKNOWN IMPORTED) + set_target_properties(libxmp::libxmp PROPERTIES + IMPORTED_LOCATION "${libxmp_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${libxmp_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${libxmp_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${libxmp_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${libxmp_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${libxmp_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findmodplug.cmake b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findmodplug.cmake new file mode 100644 index 000000000..af1e82ea3 --- /dev/null +++ b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findmodplug.cmake @@ -0,0 +1,43 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_MODPLUG QUIET libmodplug) + +find_library(modplug_LIBRARY + NAMES modplug +) + +find_path(modplug_INCLUDE_PATH + NAMES libmodplug/modplug.h +) + +if(PC_MODPLUG_FOUND) + get_flags_from_pkg_config("${modplug_LIBRARY}" "PC_MODPLUG" "_modplug") +endif() + +set(modplug_COMPILE_OPTIONS "${_modplug_compile_options}" CACHE STRING "Extra compile options of modplug") + +set(modplug_LINK_LIBRARIES "${_modplug_link_libraries}" CACHE STRING "Extra link libraries of modplug") + +set(modplug_LINK_OPTIONS "${_modplug_link_options}" CACHE STRING "Extra link flags of modplug") + +set(modplug_LINK_DIRECTORIES "${_modplug_link_directories}" CACHE PATH "Extra link directories of modplug") + +find_package_handle_standard_args(modplug + REQUIRED_VARS modplug_LIBRARY modplug_INCLUDE_PATH +) + +if (modplug_FOUND) + if (NOT TARGET modplug::modplug) + add_library(modplug::modplug UNKNOWN IMPORTED) + set_target_properties(modplug::modplug PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES "CXX" + IMPORTED_LOCATION "${modplug_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${modplug_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${modplug_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${modplug_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${modplug_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${modplug_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findmpg123.cmake b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findmpg123.cmake new file mode 100644 index 000000000..ae4e54df1 --- /dev/null +++ b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findmpg123.cmake @@ -0,0 +1,44 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_MPG123 QUIET libmpg123) + +find_library(mpg123_LIBRARY + NAMES mpg123 + HINTS ${PC_MPG123_LIBDIR} +) + +find_path(mpg123_INCLUDE_PATH + NAMES mpg123.h + HINTS ${PC_MPG123_INCLUDEDIR} +) + +if(PC_MPG123_FOUND) + get_flags_from_pkg_config("${mpg123_LIBRARY}" "PC_MPG123" "_mpg123") +endif() + +set(mpg123_COMPILE_OPTIONS "${_mpg123_compile_options}" CACHE STRING "Extra compile options of mpg123") + +set(mpg123_LINK_LIBRARIES "${_mpg123_link_libraries}" CACHE STRING "Extra link libraries of mpg123") + +set(mpg123_LINK_OPTIONS "${_mpg123_link_options}" CACHE STRING "Extra link flags of mpg123") + +set(mpg123_LINK_DIRECTORIES "${_mpg123_link_directories}" CACHE PATH "Extra link directories of mpg123") + +find_package_handle_standard_args(mpg123 + REQUIRED_VARS mpg123_LIBRARY mpg123_INCLUDE_PATH +) + +if(mpg123_FOUND) + if(NOT TARGET MPG123::libmpg123) + add_library(MPG123::libmpg123 UNKNOWN IMPORTED) + set_target_properties(MPG123::libmpg123 PROPERTIES + IMPORTED_LOCATION "${mpg123_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${mpg123_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${mpg123_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${mpg123_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${mpg123_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${mpg123_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findtremor.cmake b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findtremor.cmake new file mode 100644 index 000000000..a3bc256a0 --- /dev/null +++ b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findtremor.cmake @@ -0,0 +1,44 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_TREMOR QUIET vorbisidec) + +find_library(tremor_LIBRARY + NAMES vorbisidec libvorbisidec + HINTS ${PC_TREMOR_LIBDIR} +) + +find_path(tremor_INCLUDE_PATH + NAMES tremor/ivorbisfile.h + HINTS ${PC_TREMOR_INCLUDEDIR} +) + +if(PC_TREMOR_FOUND) + get_flags_from_pkg_config("${tremor_LIBRARY}" "PC_TREMOR" "_tremor") +endif() + +set(tremor_COMPILE_OPTIONS "${_tremor_compile_options}" CACHE STRING "Extra compile options of vorbis") + +set(tremor_LINK_LIBRARIES "${_tremor_link_libraries}" CACHE STRING "Extra link libraries of vorbis") + +set(tremor_LINK_OPTIONS "${_tremor_link_options}" CACHE STRING "Extra link flags of vorbis") + +set(tremor_LINK_DIRECTORIES "${_tremor_link_directories}" CACHE PATH "Extra link directories of vorbis") + +find_package_handle_standard_args(tremor + REQUIRED_VARS tremor_LIBRARY tremor_INCLUDE_PATH +) + +if (tremor_FOUND) + if (NOT TARGET tremor::tremor) + add_library(tremor::tremor UNKNOWN IMPORTED) + set_target_properties(tremor::tremor PROPERTIES + IMPORTED_LOCATION "${tremor_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${tremor_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${tremor_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${tremor_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${tremor_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${tremor_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findwavpack.cmake b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findwavpack.cmake new file mode 100644 index 000000000..71c0f87cd --- /dev/null +++ b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/Findwavpack.cmake @@ -0,0 +1,37 @@ +include(FindPackageHandleStandardArgs) + +if(WIN32) + set(wavpack_find_names wavpack libwavpack wavpackdll) +else() + set(wavpack_find_names wavpack) +endif() +find_library(wavpack_LIBRARY + NAMES ${wavpack_find_names} +) + +find_path(wavpack_INCLUDE_PATH + NAMES wavpack/wavpack.h +) + +set(wavpack_COMPILE_OPTIONS "" CACHE STRING "Extra compile options of wavpack") + +set(wavpack_LINK_LIBRARIES "" CACHE STRING "Extra link libraries of wavpack") + +set(wavpack_LINK_OPTIONS "" CACHE STRING "Extra link flags of wavpack") + +find_package_handle_standard_args(wavpack + REQUIRED_VARS wavpack_LIBRARY wavpack_INCLUDE_PATH +) + +if (wavpack_FOUND) + if (NOT TARGET WavPack::WavPack) + add_library(WavPack::WavPack UNKNOWN IMPORTED) + set_target_properties(WavPack::WavPack PROPERTIES + IMPORTED_LOCATION "${wavpack_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${wavpack_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${wavpack_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${wavpack_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${wavpack_LINK_OPTIONS}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/PkgConfigHelper.cmake b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/PkgConfigHelper.cmake new file mode 100644 index 000000000..7070fac79 --- /dev/null +++ b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/PkgConfigHelper.cmake @@ -0,0 +1,34 @@ +# Helper for Find modules + +function(get_flags_from_pkg_config _library _pc_prefix _out_prefix) + if("${_library}" MATCHES "${CMAKE_STATIC_LIBRARY_SUFFIX}$") + set(_cflags ${_pc_prefix}_STATIC_CFLAGS_OTHER) + set(_link_libraries ${_pc_prefix}_STATIC_LIBRARIES) + set(_link_options ${_pc_prefix}_STATIC_LDFLAGS_OTHER) + set(_library_dirs ${_pc_prefix}_STATIC_LIBRARY_DIRS) + else() + set(_cflags ${_pc_prefix}_CFLAGS_OTHER) + set(_link_libraries ${_pc_prefix}_LIBRARIES) + set(_link_options ${_pc_prefix}_LDFLAGS_OTHER) + set(_library_dirs ${_pc_prefix}_LIBRARY_DIRS) + endif() + + # The *_LIBRARIES lists always start with the library itself + list(POP_FRONT "${_link_libraries}") + + # Work around CMake's flag deduplication when pc files use `-framework A` instead of `-Wl,-framework,A` + string(REPLACE "-framework;" "-Wl,-framework," "_filtered_link_options" "${${_link_options}}") + + set(${_out_prefix}_compile_options + "${${_cflags}}" + PARENT_SCOPE) + set(${_out_prefix}_link_libraries + "${${_link_libraries}}" + PARENT_SCOPE) + set(${_out_prefix}_link_options + "${_filtered_link_options}" + PARENT_SCOPE) + set(${_out_prefix}_link_directories + "${${_library_dirs}}" + PARENT_SCOPE) +endfunction() diff --git a/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/sdl2_mixer-config-version.cmake b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/sdl2_mixer-config-version.cmake new file mode 100644 index 000000000..ee02b4a8c --- /dev/null +++ b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/sdl2_mixer-config-version.cmake @@ -0,0 +1,12 @@ +# sdl2_mixer cmake project-config-version input for ./configure scripts + +set(PACKAGE_VERSION "2.8.1") + +if(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION) + set(PACKAGE_VERSION_COMPATIBLE FALSE) +else() + set(PACKAGE_VERSION_COMPATIBLE TRUE) + if(PACKAGE_FIND_VERSION STREQUAL PACKAGE_VERSION) + set(PACKAGE_VERSION_EXACT TRUE) + endif() +endif() diff --git a/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/sdl2_mixer-config.cmake b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/sdl2_mixer-config.cmake new file mode 100644 index 000000000..da5d0021a --- /dev/null +++ b/libs/SDL2_mixer/i686-w64-mingw32/lib/cmake/SDL2_mixer/sdl2_mixer-config.cmake @@ -0,0 +1,195 @@ +# sdl2_mixer cmake project-config input for ./configure scripts + +include(FeatureSummary) +set_package_properties(SDL2_mixer PROPERTIES + URL "https://www.libsdl.org/projects/SDL_mixer/" + DESCRIPTION "SDL_mixer is a sample multi-channel audio mixer library" +) + +set(SDL2_mixer_FOUND TRUE) + +set(SDL2MIXER_VENDORED 0) + +set(SDL2MIXER_CMD 0) + +set(SDL2MIXER_FLAC_LIBFLAC 0) +set(SDL2MIXER_FLAC_DRFLAC 1) +if(SDL2MIXER_FLAC_LIBFLAC OR SDL2MIXER_FLAC_DRFLAC) + set(SDL2MIXER_FLAC 1) +else() + set(SDL2MIXER_FLAC 0) +endif() + +set(SDL2MIXER_GME 1) + +set(SDL2MIXER_MOD_MODPLUG 0) +set(SDL2MIXER_MOD_XMP 1) +set(SDL2MIXER_MOD_XMP_LITE 0) +if(SDL2MIXER_MOD_MODPLUG OR SDL2MIXER_MOD_XMP OR SDL2MIXER_MOD_XMP_LITE) + set(SDL2MIXER_MOD 1) +else() + set(SDL2MIXER_MOD 0) +endif() + +set(SDL2MIXER_MP3_MINIMP3 1) +set(SDL2MIXER_MP3_MPG123 0) +if(SDL2MIXER_MP3_MINIMP3 OR SDL2MIXER_MP3_MPG123) + set(SDL2MIXER_MP3 1) +else() + set(SDL2MIXER_MP3 0) +endif() + +set(SDL2MIXER_MIDI_FLUIDSYNTH 0) +set(SDL2MIXER_MIDI_NATIVE 1) +set(SDL2MIXER_MIDI_TIMIDITY 1) +if(SDL2MIXER_MIDI_FLUIDSYNTH OR SDL2MIXER_MIDI_NATIVE OR SDL2MIXER_MIDI_TIMIDITY) + set(SDL2MIXER_MIDI 1) +else() + set(SDL2MIXER_MIDI 0) +endif() + +set(SDL2MIXER_OPUS 1) + +set(SDL2MIXER_VORBIS) +set(SDL2MIXER_VORBIS_STB 1) +set(SDL2MIXER_VORBIS_VORBISFILE 0) +set(SDL2MIXER_VORBIS_TREMOR 0) +if(SDL2MIXER_VORBIS_STB) + set(SDL2MIXER_VORBIS STB) +endif() +if(SDL2MIXER_VORBIS_VORBISFILE) + set(SDL2MIXER_VORBIS VORBISFILE) +endif() +if(SDL2MIXER_VORBIS_TREMOR) + set(SDL2MIXER_VORBIS TREMOR) +endif() + +set(SDL2MIXER_WAVE 1) + +set(SDL2MIXER_WAVPACK 1) + +set(SDL2MIXER_SDL2_REQUIRED_VERSION 2.0.9) + +get_filename_component(CMAKE_CURRENT_LIST_DIR ${CMAKE_CURRENT_LIST_DIR} REALPATH) +get_filename_component(prefix "${CMAKE_CURRENT_LIST_DIR}/../../.." ABSOLUTE) +set(exec_prefix "${prefix}") +set(bindir "${prefix}/bin") +set(includedir "${prefix}/include") +set(libdir "${prefix}/lib") +set(_sdl2mixer_extra_static_libraries ";winmm") +string(REGEX REPLACE "(^[;]+|[;]+$)" "" _sdl2mixer_extra_static_libraries "${_sdl2mixer_extra_static_libraries}") + +set(_sdl2mixer_bindir "${bindir}") +set(_sdl2mixer_libdir "${libdir}") +set(_sdl2mixer_incdir "${includedir}/SDL2") + +include(CMakeFindDependencyMacro) + +set(_original_cmake_module_path "${CMAKE_MODULE_PATH}") +list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}") + +include("${CMAKE_CURRENT_LIST_DIR}/PkgConfigHelper.cmake") + +if("modplug::modplug" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(modplug) +endif() + +if("libxmp::libxmp" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(libxmp) +endif() + +if("libxmp-lite::libxmp-lite" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(libxmp-lite) +endif() + +if("FluidSynth::libfluidsynth" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(FluidSynth) +endif() + +if("Vorbis::vorbisfile" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(Vorbis) +endif() + +if("tremor::tremor" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(tremor) +endif() + +if("FLAC::FLAC" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(FLAC) +endif() + +if("MPG123::libmpg123" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(mpg123) +endif() + +if("OpusFile::opusfile" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(OpusFile) +endif() + +if("WavPack::WavPack" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(wavpack) +endif() + +set(CMAKE_MODULE_PATH "${_original_cmake_module_path}") +unset(_original_cmake_module_path) + +unset(prefix) +unset(exec_prefix) +unset(bindir) +unset(includedir) +unset(libdir) + +include(CMakeFindDependencyMacro) + +if(NOT TARGET SDL2_mixer::SDL2_mixer) + if(WIN32) + set(_sdl2mixer_dll "${_sdl2mixer_bindir}/SDL2_mixer.dll") + set(_sdl2mixer_imp "${_sdl2mixer_libdir}/${CMAKE_STATIC_LIBRARY_PREFIX}SDL2_mixer.dll${CMAKE_STATIC_LIBRARY_SUFFIX}") + if(EXISTS "${_sdl2mixer_dll}" AND EXISTS "${_sdl2mixer_imp}") + add_library(SDL2_mixer::SDL2_mixer SHARED IMPORTED) + set_target_properties(SDL2_mixer::SDL2_mixer + PROPERTIES + IMPORTED_LOCATION "${_sdl2mixer_dll}" + IMPORTED_IMPLIB "${_sdl2mixer_imp}" + ) + endif() + unset(_sdl2mixer_dll) + unset(_sdl2mixer_imp) + else() + set(_sdl2mixer_shl "${_sdl2mixer_libdir}/${CMAKE_SHARED_LIBRARY_PREFIX}SDL2_mixer${CMAKE_SHARED_LIBRARY_SUFFIX}") + if(EXISTS "${_sdl2mixer_shl}") + add_library(SDL2_mixer::SDL2_mixer SHARED IMPORTED) + set_target_properties(SDL2_mixer::SDL2_mixer + PROPERTIES + IMPORTED_LOCATION "${_sdl2mixer_shl}" + ) + endif() + endif() + if(TARGET SDL2_mixer::SDL2_mixer) + set_target_properties(SDL2_mixer::SDL2_mixer + PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES "${_sdl2mixer_incdir}" + COMPATIBLE_INTERFACE_BOOL "SDL2_SHARED" + INTERFACE_SDL2_SHARED "ON" + ) + endif() +endif() + +if(NOT TARGET SDL2_mixer::SDL2_mixer-static) + set(_sdl2mixer_stl "${_sdl2mixer_libdir}/${CMAKE_STATIC_LIBRARY_PREFIX}SDL2_mixer${CMAKE_STATIC_LIBRARY_SUFFIX}") + if(EXISTS "${_sdl2mixer_stl}") + add_library(SDL2_mixer::SDL2_mixer-static STATIC IMPORTED) + set_target_properties(SDL2_mixer::SDL2_mixer-static + PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES "${_sdl2mixer_incdir}" + IMPORTED_LOCATION "${_sdl2mixer_stl}" + INTERFACE_LINK_LIBRARIES "${_sdl2mixer_extra_static_libraries}" + ) + endif() + unset(_sdl2mixer_stl) +endif() + +unset(_sdl2mixer_extra_static_libraries) +unset(_sdl2mixer_bindir) +unset(_sdl2mixer_libdir) +unset(_sdl2mixer_incdir) diff --git a/libs/SDL2_mixer/i686-w64-mingw32/lib/libSDL2_mixer.a b/libs/SDL2_mixer/i686-w64-mingw32/lib/libSDL2_mixer.a index 5c780be5148ee4805f223a3c96d636098608e65c..a341375bf794bd7ae84f8de99e774486626b12f5 100644 GIT binary patch literal 418580 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 LE6oEWTg3h^JmDwN literal 748702 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'~mIUX!xomP6Oq<9(SubH}#U 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%0D-Ux*C(M=MTvq8 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

#W9Xauw-ME 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 XEPWk_C2CkpVO%GZ)5?1eYw-UUNcv;o diff --git a/libs/SDL2_mixer/i686-w64-mingw32/lib/libSDL2_mixer.dll.a b/libs/SDL2_mixer/i686-w64-mingw32/lib/libSDL2_mixer.dll.a index ac90388f2af7c0bc6ff1008b2bc3d210517539fb..b97496395af997408b17068a659ec0a8ca57d52f 100755 GIT binary patch literal 65872 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 R+}FfpDv7`fl!YSJ{{u_!KVAR; literal 48846 zcmeI5O^h5z6@bg*#CD8HoWyY)$4NHEG0xv+_Sbe|f;V1o?BJix+HpXD){~ufcJS=X zYIfGKg+M5ZK>P?<5r`il6h$BeLJ zYRj#CGrg}~*K}2X{i^D9b@zjZ8oh}gU<~EpE+J1rUMQb{-$6MHyNmM7tdQw9 z7(mwV<`P!2)Xoc#!#+2DddY^Wenv@e-ZMP zos6Np`UN4c!G5584e~?zI^>1&O(+-2x4{X(JQ{%6KezPne*_dt*GgTD#+(GJE? zehl@1@&?o$%9|eu`RO6XP=59eAwT~+V<^8I7V_3>jG_Dr_7~+hP}eBGeO1Ws|H>H3 zA9o3P8|w1y{`{Hg6QlD>t;pibg3Zq_7LBHp#^z79F3+FqwpW*mldCJO z1u$zZEzkREV|Qe6wR6$8lWJq zB#~Q)#W{ykw0?fIW$`NhmnjPuPjul7dvWR<-8nF!3AXLr)Qjb|JVDqNy(?#y3+v2$ zepM^cX13k90vLEzZ0m_7{Y_~kY7hS@%|Uo_vc>QbZCZoJgCoHe&4DLmhBoB6Dpr0hx4Xj)jbCJEB^)anvHit?~q9vZgr zlg)M%my+$AWVs#xF+6dsIw}N8LQgFb(&K?DR=uju0mIX0MXb-*U?n0xl_SdRAFRfXJ zW&h-GR}PEmXn3MN0t4SsJ{+DL7lYu@$x%6cKEL_Iy7df~pMc!N*KS@n+-kzL2~B?e;6xR#^Ft`bU4)-&Lz-@H7mAC&uXhtOKL0@OP$oNH+D;!4$3XsTYS2x`I@-v#z$ezoMutZKYjUHiNxrAosayW*e%<0$ zm_Ot7%U9r|#_I4H81b3|Oh(6o;)%+~V8S{EqUIliow0_Xe725p^WJkH3K2~V=0m$xhyGcmm%QpD@k6brj z^>?p5g#TT=YIG3kVdx}i&_EmmJPsSUA(nO{U&G(0YqVZ)m-N}hYrs02cv-~}r{^H% zsJG(#kF~#^9llUB`or})=6da#IO~*G5%n!NxeL;9!JLKWG5){!sIg~Y#Sed&riPZg zoG`)C_zjjwy&}V9EImh965W(F%#zm+6D%opS$s~gG*+FZ5gBS8!q!#zrG0QpT+c6Y zhXlt9&z?bkX)_wYBEG_YXi0KSP&qJ2GqP@t_7^o&-gXPoxU1U=|buSd@&auf&Aa|f{-)T-?&xAW-PTW+W6 zfzW$pdX8~=OsH7~rxT(GdziQwigZPQw#H7tC#T3OBngX`q=o&`NOiI%e7`gfNAG%M zZ6QZ^5Lw%a-5|1t%I!R|9x1oe6$%$zDwFlBLl(J6kq}+?Ly2)QbUiH;{IkZ+!nZ>g zDQGESR(hDS>LVk#5KBfzdHJsyPMLdEE2UQO9?6p-OrMsJQe)34!rVd; zd#^FSUCd>)cT{s_V!7$`tnT)hs!I)i)z}Pta z6KV-7_p<;UyO6e{a?`?O?XOPO=%m*I=HjW2D6-Ua3Vw!*7VyJA2Hb`Y2^Q1(Jt7qR zv&Ig?xAIh~fHqG?8z!lGoId9W=QD&PF>5BJepKZMC-^5|rfgaeQHNQIiI(T_XZtotqXWDS(gn1g6H$l#QbgoD zW0pR_S)wz=*Cb1{fP^Jm9cC#aKAtg4ha^kpZh|$+k}06Y5>*FTnuv&rXFSv3DZ&zT zl@c1yRi0^}?x`_jIjsrP6B7Z?_e$N9iXQ7mrIaYDe5KC2<;udzD*u4FbQ2Nr?=d^ozgCLNye{^&K$)8IS92l%I$h_~Md&tN3}7fC(mm!gl*@dRan6wSkcEVN(soIW=^?>GXY^8IcnyeiWEGI0 zt-N!gL`Z<#FVU#JgW0kM}yM-j3Y(FXN zk8Z@Y$ten}<XkW>w!u&);v@`Zfdj&uCL-v#6sJd6O z3rW3_n-ZofBDS6JY}5Sa&1<#3#iAo+23jSGRr{J4MCH+DYcT|=b_DB&?Zt)0vc(PJ{Pu2aH%~nEQ zsd7|FV?%pNR2gRIM#P((rm$KbncOWHa^C8bQe>%e#5?A#Mg!Wt8xij+Ts4=S>c2hQynO)+j^X>y?lpr3|-kF|lrcCO|HC0z9A@ zlG6skd8NZq<=JhBj4B}QbzAB%OA*oTjAu&T&spMUrhNI}nq-L5i8G_vAYOk{LRNXFlHCjW6Vts zGZqm;&v;C@O)b_( ziUKVnCr1~ugesC2CMzPUp7EW)cUWY}hA^qVR?N7Nlcfq-0+vY%a}^O|&zP&*6<4%l zv1Yll3TboYB!#((h_#RS^IURy#@tqmtCU*6JLCw^j0yKj4Sv-aju6$DkV9j|*bA8U zvf8-_x-dZz@%4;nli$V(n&}km!M9wpwW%p6RP@~!EyevFXO08Mt8JjbtfYcjV>M%<*4IIf$@VSw%;Ty^5 z+Hk+P+~+Cct!V4naH|Q?^ga7giLIvA@VB4gcwKA8(FSwW8hltK!?*mcXNNBojs9>Q zZ~14}uAv4Ow8jOsm^)*Y=SNBZqzdUXWm3XaMa01~rfQR>>Uf9u#%H@YsMD0s$Wyp1kZNf8w@#w#Q@G-!$L%c#RFMMS21P|s62sbRt*BI6lH5pL#$9lgBV>OqvR(diWJ zgxbH#Q3Shy1S&Tn%u_^^JY$}25*dFQO?Tu5|aWFm@I9Wq=1WlYL{sHiPqHD`g``M1 u5ZI?mNpyWL%A^i>}U;t1(@smk*-y+RVOO47= 2.0.7 +Version: 2.8.1 +Requires: sdl2 >= 2.0.9 Libs: -L${libdir} -lSDL2_mixer Cflags: -I${includedir}/SDL2 - +Requires.private: +Libs.private: -lwinmm diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/bin/SDL2_mixer.dll b/libs/SDL2_mixer/x86_64-w64-mingw32/bin/SDL2_mixer.dll new file mode 100644 index 0000000000000000000000000000000000000000..73376f0fdbf945e7da7c2670f06512654cd01f18 GIT binary patch literal 305152 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"i2vD&obTc(X3fBq(qLP$zGLb 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 A + Copyright (C) 1997-2025 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -19,6 +19,13 @@ 3. This notice may not be removed or altered from any source distribution. */ +/** + * \file SDL_mixer.h + * + * Header file for SDL_mixer library + * + * A simple library to play and mix sounds and musics + */ #ifndef SDL_MIXER_H_ #define SDL_MIXER_H_ @@ -34,13 +41,15 @@ extern "C" { #endif -/* Printable format: "%d.%d.%d", MAJOR, MINOR, PATCHLEVEL -*/ +/** + * Printable format: "%d.%d.%d", MAJOR, MINOR, PATCHLEVEL + */ #define SDL_MIXER_MAJOR_VERSION 2 -#define SDL_MIXER_MINOR_VERSION 0 -#define SDL_MIXER_PATCHLEVEL 4 +#define SDL_MIXER_MINOR_VERSION 8 +#define SDL_MIXER_PATCHLEVEL 1 -/* This macro can be used to fill a version structure with the compile-time +/** + * This macro can be used to fill a version structure with the compile-time * version of the SDL_mixer library. */ #define SDL_MIXER_VERSION(X) \ @@ -56,60 +65,169 @@ extern "C" { #define MIX_PATCHLEVEL SDL_MIXER_PATCHLEVEL #define MIX_VERSION(X) SDL_MIXER_VERSION(X) +#if SDL_MIXER_MAJOR_VERSION < 3 && SDL_MAJOR_VERSION < 3 + /** - * This is the version number macro for the current SDL_mixer version. + * This is the version number macro for the current SDL_mixer version. + * + * In versions higher than 2.9.0, the minor version overflows into the + * thousands digit: for example, 2.23.0 is encoded as 4300. This macro will + * not be available in SDL 3.x or SDL_mixer 3.x. + * + * Deprecated, use SDL_MIXER_VERSION_ATLEAST or SDL_MIXER_VERSION instead. */ #define SDL_MIXER_COMPILEDVERSION \ SDL_VERSIONNUM(SDL_MIXER_MAJOR_VERSION, SDL_MIXER_MINOR_VERSION, SDL_MIXER_PATCHLEVEL) +#endif /* SDL_MIXER_MAJOR_VERSION < 3 && SDL_MAJOR_VERSION < 3 */ /** - * This macro will evaluate to true if compiled with SDL_mixer at least X.Y.Z. + * This macro will evaluate to true if compiled with SDL_mixer at least X.Y.Z. */ #define SDL_MIXER_VERSION_ATLEAST(X, Y, Z) \ - (SDL_MIXER_COMPILEDVERSION >= SDL_VERSIONNUM(X, Y, Z)) + ((SDL_MIXER_MAJOR_VERSION >= X) && \ + (SDL_MIXER_MAJOR_VERSION > X || SDL_MIXER_MINOR_VERSION >= Y) && \ + (SDL_MIXER_MAJOR_VERSION > X || SDL_MIXER_MINOR_VERSION > Y || SDL_MIXER_PATCHLEVEL >= Z)) -/* This function gets the version of the dynamically linked SDL_mixer library. - it should NOT be used to fill a version structure, instead you should - use the SDL_MIXER_VERSION() macro. +/** + * Query the version of SDL_mixer that the program is linked against. + * + * This function gets the version of the dynamically linked SDL_mixer library. + * This is separate from the SDL_MIXER_VERSION() macro, which tells you what + * version of the SDL_mixer headers you compiled against. + * + * This returns static internal data; do not free or modify it! + * + * \returns a pointer to the version information. + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC const SDL_version * SDLCALL Mix_Linked_Version(void); -typedef enum +/** + * Initialization flags + */ +typedef enum MIX_InitFlags { MIX_INIT_FLAC = 0x00000001, MIX_INIT_MOD = 0x00000002, MIX_INIT_MP3 = 0x00000008, MIX_INIT_OGG = 0x00000010, MIX_INIT_MID = 0x00000020, - MIX_INIT_OPUS = 0x00000040 + MIX_INIT_OPUS = 0x00000040, + MIX_INIT_WAVPACK= 0x00000080 } MIX_InitFlags; -/* Loads dynamic libraries and prepares them for use. Flags should be - one or more flags from MIX_InitFlags OR'd together. - It returns the flags successfully initialized, or 0 on failure. +/** + * Initialize SDL_mixer. + * + * This function loads dynamic libraries that SDL_mixer needs, and prepares + * them for use. + * + * Note that, unlike other SDL libraries, this call is optional! If you load a + * music file, SDL_mixer will handle initialization on the fly. This function + * will let you know, up front, whether a specific format will be available + * for use. + * + * Flags should be one or more flags from MIX_InitFlags OR'd together. It + * returns the flags successfully initialized, or 0 on failure. + * + * Currently, these flags are: + * + * - `MIX_INIT_FLAC` + * - `MIX_INIT_MOD` + * - `MIX_INIT_MP3` + * - `MIX_INIT_OGG` + * - `MIX_INIT_MID` + * - `MIX_INIT_OPUS` + * - `MIX_INIT_WAVPACK` + * + * More flags may be added in a future SDL_mixer release. + * + * This function may need to load external shared libraries to support various + * codecs, which means this function can fail to initialize that support on an + * otherwise-reasonable system if the library isn't available; this is not + * just a question of exceptional circumstances like running out of memory at + * startup! + * + * Note that you may call this function more than once to initialize with + * additional flags. The return value will reflect both new flags that + * successfully initialized, and also include flags that had previously been + * initialized as well. + * + * As this will return previously-initialized flags, it's legal to call this + * with zero (no flags set). This is a safe no-op that can be used to query + * the current initialization state without changing it at all. + * + * Since this returns previously-initialized flags as well as new ones, and + * you can call this with zero, you should not check for a zero return value + * to determine an error condition. Instead, you should check to make sure all + * the flags you require are set in the return value. If you have a game with + * data in a specific format, this might be a fatal error. If you're a generic + * media player, perhaps you are fine with only having WAV and MP3 support and + * can live without Opus playback, even if you request support for everything. + * + * Unlike other SDL satellite libraries, calls to Mix_Init do not stack; a + * single call to Mix_Quit() will deinitialize everything and does not have to + * be paired with a matching Mix_Init call. For that reason, it's considered + * best practices to have a single Mix_Init and Mix_Quit call in your program. + * While this isn't required, be aware of the risks of deviating from that + * behavior. + * + * After initializing SDL_mixer, the next step is to open an audio device to + * prepare to play sound (with Mix_OpenAudio() or Mix_OpenAudioDevice()), and + * load audio data to play with that device. + * + * \param flags initialization flags, OR'd together. + * \returns all currently initialized flags. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_Quit */ extern DECLSPEC int SDLCALL Mix_Init(int flags); -/* Unloads libraries loaded with Mix_Init */ +/** + * Deinitialize SDL_mixer. + * + * This should be the last function you call in SDL_mixer, after freeing all + * other resources and closing all audio devices. This will unload any shared + * libraries it is using for various codecs. + * + * After this call, a call to Mix_Init(0) will return 0 (no codecs loaded). + * + * You can safely call Mix_Init() to reload various codec support after this + * call. + * + * Unlike other SDL satellite libraries, calls to Mix_Init do not stack; a + * single call to Mix_Quit() will deinitialize everything and does not have to + * be paired with a matching Mix_Init call. For that reason, it's considered + * best practices to have a single Mix_Init and Mix_Quit call in your program. + * While this isn't required, be aware of the risks of deviating from that + * behavior. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_Init + */ extern DECLSPEC void SDLCALL Mix_Quit(void); -/* The default mixer has 8 simultaneous mixing channels */ +/** + * The default mixer has 8 simultaneous mixing channels + */ #ifndef MIX_CHANNELS #define MIX_CHANNELS 8 #endif /* Good default values for a PC soundcard */ -#define MIX_DEFAULT_FREQUENCY 22050 -#if SDL_BYTEORDER == SDL_LIL_ENDIAN -#define MIX_DEFAULT_FORMAT AUDIO_S16LSB -#else -#define MIX_DEFAULT_FORMAT AUDIO_S16MSB -#endif +#define MIX_DEFAULT_FREQUENCY 44100 +#define MIX_DEFAULT_FORMAT AUDIO_S16SYS #define MIX_DEFAULT_CHANNELS 2 #define MIX_MAX_VOLUME SDL_MIX_MAXVOLUME /* Volume of a chunk */ -/* The internal format for an audio chunk */ +/** + * The internal format for an audio chunk + */ typedef struct Mix_Chunk { int allocated; Uint8 *abuf; @@ -117,15 +235,19 @@ typedef struct Mix_Chunk { Uint8 volume; /* Per-sample volume, 0-128 */ } Mix_Chunk; -/* The different fading types supported */ -typedef enum { +/** + * The different fading types supported + */ +typedef enum Mix_Fading { MIX_NO_FADING, MIX_FADING_OUT, MIX_FADING_IN } Mix_Fading; -/* These are types of music files (not libraries used to load them) */ -typedef enum { +/** + * These are types of music files (not libraries used to load them) + */ +typedef enum Mix_MusicType { MUS_NONE, MUS_CMD, MUS_WAV, @@ -136,218 +258,1162 @@ typedef enum { MUS_MP3_MAD_UNUSED, MUS_FLAC, MUS_MODPLUG_UNUSED, - MUS_OPUS + MUS_OPUS, + MUS_WAVPACK, + MUS_GME } Mix_MusicType; -/* The internal format for a music chunk interpreted via mikmod */ -typedef struct _Mix_Music Mix_Music; +/** + * The internal format for a music chunk interpreted via codecs + */ +typedef struct Mix_Music Mix_Music; -/* Open the mixer with a certain audio format */ +/** + * Open the default audio device for playback. + * + * An audio device is what generates sound, so the app must open one to make + * noise. + * + * This function will check if SDL's audio system is initialized, and if not, + * it will initialize it by calling `SDL_Init(SDL_INIT_AUDIO)` on your behalf. + * You are free to (and encouraged to!) initialize it yourself before calling + * this function, as this gives your program more control over the process. + * + * This function might cover all of an application's needs, but for those that + * need more flexibility, the more powerful version of this function is + * Mix_OpenAudioDevice(). This function is equivalent to calling: + * + * ```c + * Mix_OpenAudioDevice(frequency, format, nchannels, chunksize, NULL, + * SDL_AUDIO_ALLOW_FREQUENCY_CHANGE | + * SDL_AUDIO_ALLOW_CHANNELS_CHANGE); + * ``` + * + * If you aren't particularly concerned with the specifics of the audio + * device, and your data isn't in a specific format, the values you use here + * can just be reasonable defaults. SDL_mixer will convert audio data you feed + * it to the correct format on demand. + * + * That being said, if you have control of your audio data and you know its + * format ahead of time, you may save CPU time by opening the audio device in + * that exact format so SDL_mixer does not have to spend time converting + * anything behind the scenes, and can just pass the data straight through to + * the hardware. On some platforms, where the hardware only supports specific + * settings, you might have to be careful to make everything match, but your + * own data is often easier to control, so aim to open the device for what you + * need. + * + * The other reason to care about specific formats: if you plan to touch the + * mix buffer directly (with Mix_SetPostMix, a registered effect, or + * Mix_HookMusic), you might have code that expects it to be in a specific + * format, and you should specify that here. + * + * The audio device frequency is specified in Hz; in modern times, 48000 is + * often a reasonable default. + * + * The audio device format is one of SDL's AUDIO_* constants. AUDIO_S16SYS + * (16-bit audio) is probably a safe default. More modern systems may prefer + * AUDIO_F32SYS (32-bit floating point audio). + * + * The audio device channels are generally 1 for mono output, or 2 for stereo, + * but the brave can try surround sound configs with 4 (quad), 6 (5.1), 7 + * (6.1) or 8 (7.1). + * + * The audio device's chunk size is the number of sample frames (one sample + * per frame for mono output, two samples per frame in a stereo setup, etc) + * that are fed to the device at once. The lower the number, the lower the + * latency, but you risk dropouts if it gets too low. 2048 is often a + * reasonable default, but your app might want to experiment with 1024 or + * 4096. + * + * You may only have one audio device open at a time; if you want to change a + * setting, you must close the device and reopen it, which is not something + * you can do seamlessly during playback. + * + * This function does not allow you to select a specific audio device on the + * system, it always chooses the best default it can on your behalf (which, in + * many cases, is exactly what you want anyhow). If you must choose a specific + * device, you can do so with Mix_OpenAudioDevice() instead. + * + * If this function reports success, you are ready to start making noise! Load + * some audio data and start playing! + * + * The app can use Mix_QuerySpec() to determine the final device settings. + * + * When done with an audio device, probably at the end of the program, the app + * should dispose of the device with Mix_CloseAudio(). + * + * \param frequency the frequency to playback audio at (in Hz). + * \param format audio format, one of SDL's AUDIO_* values. + * \param channels number of channels (1 is mono, 2 is stereo, etc). + * \param chunksize audio buffer size in sample FRAMES (total samples divided + * by channel count). + * \returns 0 if successful, -1 on error. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_OpenAudioDevice + * \sa Mix_CloseAudio + */ extern DECLSPEC int SDLCALL Mix_OpenAudio(int frequency, Uint16 format, int channels, int chunksize); -/* Open the mixer with specific device and certain audio format */ + +/** + * Open a specific audio device for playback. + * + * (A slightly simpler version of this function is available in + * Mix_OpenAudio(), which still might meet most applications' needs.) + * + * An audio device is what generates sound, so the app must open one to make + * noise. + * + * This function will check if SDL's audio system is initialized, and if not, + * it will initialize it by calling `SDL_Init(SDL_INIT_AUDIO)` on your behalf. + * You are free to (and encouraged to!) initialize it yourself before calling + * this function, as this gives your program more control over the process. + * + * If you aren't particularly concerned with the specifics of the audio + * device, and your data isn't in a specific format, the values you use here + * can just be reasonable defaults. SDL_mixer will convert audio data you feed + * it to the correct format on demand. + * + * That being said, if you have control of your audio data and you know its + * format ahead of time, you can save CPU time by opening the audio device in + * that exact format so SDL_mixer does not have to spend time converting + * anything behind the scenes, and can just pass the data straight through to + * the hardware. On some platforms, where the hardware only supports specific + * settings, you might have to be careful to make everything match, but your + * own data is often easier to control, so aim to open the device for what you + * need. + * + * The other reason to care about specific formats: if you plan to touch the + * mix buffer directly (with Mix_SetPostMix, a registered effect, or + * Mix_HookMusic), you might have code that expects it to be in a specific + * format, and you should specify that here. + * + * The audio device frequency is specified in Hz; in modern times, 48000 is + * often a reasonable default. + * + * The audio device format is one of SDL's AUDIO_* constants. AUDIO_S16SYS + * (16-bit audio) is probably a safe default. More modern systems may prefer + * AUDIO_F32SYS (32-bit floating point audio). + * + * The audio device channels are generally 1 for mono output, or 2 for stereo, + * but the brave can try surround sound configs with 4 (quad), 6 (5.1), 7 + * (6.1) or 8 (7.1). + * + * The audio device's chunk size is the number of sample frames (one sample + * per frame for mono output, two samples per frame in a stereo setup, etc) + * that are fed to the device at once. The lower the number, the lower the + * latency, but you risk dropouts if it gets too low. 2048 is often a + * reasonable default, but your app might want to experiment with 1024 or + * 4096. + * + * You may only have one audio device open at a time; if you want to change a + * setting, you must close the device and reopen it, which is not something + * you can do seamlessly during playback. + * + * This function allows you to select specific audio hardware on the system + * with the `device` parameter. If you specify NULL, SDL_mixer will choose the + * best default it can on your behalf (which, in many cases, is exactly what + * you want anyhow). SDL_mixer does not offer a mechanism to determine device + * names to open, but you can use SDL_GetNumAudioDevices() to get a count of + * available devices and then SDL_GetAudioDeviceName() in a loop to obtain a + * list. If you do this, be sure to call `SDL_Init(SDL_INIT_AUDIO)` first to + * initialize SDL's audio system! + * + * The `allowed_changes` parameter specifies what settings are flexible. These + * are the `SDL_AUDIO_ALLOW_*` flags from SDL. These tell SDL_mixer that the + * app doesn't mind if a specific setting changes. For example, the app might + * need stereo data in Sint16 format, but if the sample rate or chunk size + * changes, the app can handle that. In that case, the app would specify + * `SDL_AUDIO_ALLOW_FORMAT_CHANGE|SDL_AUDIO_ALLOW_SAMPLES_CHANGE`. In this + * case, if the system's hardware requires something other than the requested + * format, SDL_mixer can select what the hardware demands instead of the app. + * If the `SDL_AUDIO_ALLOW_` flag is not specified, SDL_mixer must convert + * data behind the scenes between what the app demands and what the hardware + * requires. If your app needs precisely what is requested, specify zero for + * `allowed_changes`. + * + * If changes were allowed, the app can use Mix_QuerySpec() to determine the + * final device settings. + * + * If this function reports success, you are ready to start making noise! Load + * some audio data and start playing! + * + * When done with an audio device, probably at the end of the program, the app + * should dispose of the device with Mix_CloseDevice(). + * + * \param frequency the frequency to playback audio at (in Hz). + * \param format audio format, one of SDL's AUDIO_* values. + * \param channels number of channels (1 is mono, 2 is stereo, etc). + * \param chunksize audio buffer size in sample FRAMES (total samples divided + * by channel count). + * \param device the device name to open, or NULL to choose a reasonable + * default. + * \param allowed_changes Allow change flags (see SDL_AUDIO_ALLOW_* flags). + * \returns 0 if successful, -1 on error. + * + * \since This function is available since SDL_mixer 2.0.2. + * + * \sa Mix_OpenAudio + * \sa Mix_CloseDevice + * \sa Mix_QuerySpec + */ extern DECLSPEC int SDLCALL Mix_OpenAudioDevice(int frequency, Uint16 format, int channels, int chunksize, const char* device, int allowed_changes); -/* Dynamically change the number of channels managed by the mixer. - If decreasing the number of channels, the upper channels are - stopped. - This function returns the new number of allocated channels. +/** + * Suspend or resume the whole audio output. + * + * \param pause_on 1 to pause audio output, or 0 to resume. + * + * \since This function is available since SDL_mixer 2.8.0. + */ +extern DECLSPEC void SDLCALL Mix_PauseAudio(int pause_on); + +/** + * Find out what the actual audio device parameters are. + * + * If Mix_OpenAudioDevice() was called with `allowed_changes` set to anything + * but zero, or Mix_OpenAudio() was used, some audio device settings may be + * different from the application's request. This function will report what + * the device is actually running at. + * + * Note this is only important if the app intends to touch the audio buffers + * being sent to the hardware directly. If an app just wants to play audio + * files and let SDL_mixer handle the low-level details, this function can + * probably be ignored. + * + * If the audio device is not opened, this function will return 0. + * + * \param frequency On return, will be filled with the audio device's + * frequency in Hz. + * \param format On return, will be filled with the audio device's format. + * \param channels On return, will be filled with the audio device's channel + * count. + * \returns 1 if the audio device has been opened, 0 otherwise. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_OpenAudio + * \sa Mix_OpenAudioDevice + */ +extern DECLSPEC int SDLCALL Mix_QuerySpec(int *frequency, Uint16 *format, int *channels); + +/** + * Dynamically change the number of channels managed by the mixer. + * + * SDL_mixer deals with "channels," which is not the same thing as the + * mono/stereo channels; they might be better described as "tracks," as each + * one corresponds to a separate source of audio data. Three different WAV + * files playing at the same time would be three separate SDL_mixer channels, + * for example. + * + * An app needs as many channels as it has audio data it wants to play + * simultaneously, mixing them into a single stream to send to the audio + * device. + * + * SDL_mixer allocates `MIX_CHANNELS` (currently 8) channels when you open an + * audio device, which may be more than an app needs, but if the app needs + * more or wants less, this function can change it. + * + * If decreasing the number of channels, any upper channels currently playing + * are stopped. This will deregister all effects on those channels and call + * any callback specified by Mix_ChannelFinished() for each removed channel. + * + * If `numchans` is less than zero, this will return the current number of + * channels without changing anything. + * + * \param numchans the new number of channels, or < 0 to query current channel + * count. + * \returns the new number of allocated channels. + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_AllocateChannels(int numchans); -/* Find out what the actual audio device parameters are. - This function returns 1 if the audio has been opened, 0 otherwise. +/** + * Load a supported audio format into a chunk. + * + * SDL_mixer has two separate data structures for audio data. One it calls a + * "chunk," which is meant to be a file completely decoded into memory up + * front, and the other it calls "music" which is a file intended to be + * decoded on demand. Originally, simple formats like uncompressed WAV files + * were meant to be chunks and compressed things, like MP3s, were meant to be + * music, and you would stream one thing for a game's music and make repeating + * sound effects with the chunks. + * + * In modern times, this isn't split by format anymore, and most are + * interchangeable, so the question is what the app thinks is worth + * predecoding or not. Chunks might take more memory, but once they are loaded + * won't need to decode again, whereas music always needs to be decoded on the + * fly. Also, crucially, there are as many channels for chunks as the app can + * allocate, but SDL_mixer only offers a single "music" channel. + * + * If `freesrc` is non-zero, the RWops will be closed before returning, + * whether this function succeeds or not. SDL_mixer reads everything it needs + * from the RWops during this call in any case. + * + * There is a separate function (a macro, before SDL_mixer 2.6.0) to read + * files from disk without having to deal with SDL_RWops: + * `Mix_LoadWAV("filename.wav")` will call this function and manage those + * details for you. + * + * When done with a chunk, the app should dispose of it with a call to + * Mix_FreeChunk(). + * + * \param src an SDL_RWops that data will be read from. + * \param freesrc non-zero to close/free the SDL_RWops before returning, zero + * to leave it open. + * \returns a new chunk, or NULL on error. + * + * \since This function is available since SDL_mixer 2.6.0 (and as a macro + * since 2.0.0). + * + * \sa Mix_LoadWAV + * \sa Mix_FreeChunk */ -extern DECLSPEC int SDLCALL Mix_QuerySpec(int *frequency,Uint16 *format,int *channels); - -/* Load a wave file or a music (.mod .s3m .it .xm) file */ extern DECLSPEC Mix_Chunk * SDLCALL Mix_LoadWAV_RW(SDL_RWops *src, int freesrc); -#define Mix_LoadWAV(file) Mix_LoadWAV_RW(SDL_RWFromFile(file, "rb"), 1) + +/** + * Load a supported audio format into a chunk. + * + * SDL_mixer has two separate data structures for audio data. One it calls a + * "chunk," which is meant to be a file completely decoded into memory up + * front, and the other it calls "music" which is a file intended to be + * decoded on demand. Originally, simple formats like uncompressed WAV files + * were meant to be chunks and compressed things, like MP3s, were meant to be + * music, and you would stream one thing for a game's music and make repeating + * sound effects with the chunks. + * + * In modern times, this isn't split by format anymore, and most are + * interchangeable, so the question is what the app thinks is worth + * predecoding or not. Chunks might take more memory, but once they are loaded + * won't need to decode again, whereas music always needs to be decoded on the + * fly. Also, crucially, there are as many channels for chunks as the app can + * allocate, but SDL_mixer only offers a single "music" channel. + * + * If you would rather use the abstract SDL_RWops interface to load data from + * somewhere other than the filesystem, you can use Mix_LoadWAV_RW() instead. + * + * When done with a chunk, the app should dispose of it with a call to + * Mix_FreeChunk(). + * + * Note that before SDL_mixer 2.6.0, this function was a macro that called + * Mix_LoadWAV_RW(), creating a RWops and setting `freesrc` to 1. This macro + * has since been promoted to a proper API function. Older binaries linked + * against a newer SDL_mixer will still call Mix_LoadWAV_RW directly, as they + * are using the macro, which was available since the dawn of time. + * + * \param file the filesystem path to load data from. + * \returns a new chunk, or NULL on error. + * + * \since This function is available since SDL_mixer 2.6.0 (and as a macro + * since 2.0.0). + * + * \sa Mix_LoadWAV_RW + * \sa Mix_FreeChunk + */ +extern DECLSPEC Mix_Chunk * SDLCALL Mix_LoadWAV(const char *file); + + +/** + * Load a supported audio format into a music object. + * + * SDL_mixer has two separate data structures for audio data. One it calls a + * "chunk," which is meant to be a file completely decoded into memory up + * front, and the other it calls "music" which is a file intended to be + * decoded on demand. Originally, simple formats like uncompressed WAV files + * were meant to be chunks and compressed things, like MP3s, were meant to be + * music, and you would stream one thing for a game's music and make repeating + * sound effects with the chunks. + * + * In modern times, this isn't split by format anymore, and most are + * interchangeable, so the question is what the app thinks is worth + * predecoding or not. Chunks might take more memory, but once they are loaded + * won't need to decode again, whereas music always needs to be decoded on the + * fly. Also, crucially, there are as many channels for chunks as the app can + * allocate, but SDL_mixer only offers a single "music" channel. + * + * When done with this music, the app should dispose of it with a call to + * Mix_FreeMusic(). + * + * \param file a file path from where to load music data. + * \returns a new music object, or NULL on error. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_FreeMusic + */ extern DECLSPEC Mix_Music * SDLCALL Mix_LoadMUS(const char *file); -/* Load a music file from an SDL_RWop object (Ogg and MikMod specific currently) - Matt Campbell (matt@campbellhome.dhs.org) April 2000 */ +/** + * Load a supported audio format into a music object. + * + * SDL_mixer has two separate data structures for audio data. One it calls a + * "chunk," which is meant to be a file completely decoded into memory up + * front, and the other it calls "music" which is a file intended to be + * decoded on demand. Originally, simple formats like uncompressed WAV files + * were meant to be chunks and compressed things, like MP3s, were meant to be + * music, and you would stream one thing for a game's music and make repeating + * sound effects with the chunks. + * + * In modern times, this isn't split by format anymore, and most are + * interchangeable, so the question is what the app thinks is worth + * predecoding or not. Chunks might take more memory, but once they are loaded + * won't need to decode again, whereas music always needs to be decoded on the + * fly. Also, crucially, there are as many channels for chunks as the app can + * allocate, but SDL_mixer only offers a single "music" channel. + * + * If `freesrc` is non-zero, the RWops will be closed before returning, + * whether this function succeeds or not. SDL_mixer reads everything it needs + * from the RWops during this call in any case. + * + * As a convenience, there is a function to read files from disk without + * having to deal with SDL_RWops: `Mix_LoadMUS("filename.mp3")` will manage + * those details for you. + * + * This function attempts to guess the file format from incoming data. If the + * caller knows the format, or wants to force it, it should use + * Mix_LoadMUSType_RW() instead. + * + * When done with this music, the app should dispose of it with a call to + * Mix_FreeMusic(). + * + * \param src an SDL_RWops that data will be read from. + * \param freesrc non-zero to close/free the SDL_RWops before returning, zero + * to leave it open. + * \returns a new music object, or NULL on error. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_FreeMusic + */ extern DECLSPEC Mix_Music * SDLCALL Mix_LoadMUS_RW(SDL_RWops *src, int freesrc); -/* Load a music file from an SDL_RWop object assuming a specific format */ +/** + * Load an audio format into a music object, assuming a specific format. + * + * SDL_mixer has two separate data structures for audio data. One it calls a + * "chunk," which is meant to be a file completely decoded into memory up + * front, and the other it calls "music" which is a file intended to be + * decoded on demand. Originally, simple formats like uncompressed WAV files + * were meant to be chunks and compressed things, like MP3s, were meant to be + * music, and you would stream one thing for a game's music and make repeating + * sound effects with the chunks. + * + * In modern times, this isn't split by format anymore, and most are + * interchangeable, so the question is what the app thinks is worth + * predecoding or not. Chunks might take more memory, but once they are loaded + * won't need to decode again, whereas music always needs to be decoded on the + * fly. Also, crucially, there are as many channels for chunks as the app can + * allocate, but SDL_mixer only offers a single "music" channel. + * + * This function loads music data, and lets the application specify the type + * of music being loaded, which might be useful if SDL_mixer cannot figure it + * out from the data stream itself. + * + * Currently, the following types are supported: + * + * - `MUS_NONE` (SDL_mixer should guess, based on the data) + * - `MUS_WAV` (Microsoft WAV files) + * - `MUS_MOD` (Various tracker formats) + * - `MUS_MID` (MIDI files) + * - `MUS_OGG` (Ogg Vorbis files) + * - `MUS_MP3` (MP3 files) + * - `MUS_FLAC` (FLAC files) + * - `MUS_OPUS` (Opus files) + * - `MUS_WAVPACK` (WavPack files) + * + * If `freesrc` is non-zero, the RWops will be closed before returning, + * whether this function succeeds or not. SDL_mixer reads everything it needs + * from the RWops during this call in any case. + * + * As a convenience, there is a function to read files from disk without + * having to deal with SDL_RWops: `Mix_LoadMUS("filename.mp3")` will manage + * those details for you (but not let you specify the music type explicitly).. + * + * When done with this music, the app should dispose of it with a call to + * Mix_FreeMusic(). + * + * \param src an SDL_RWops that data will be read from. + * \param type the type of audio data provided by `src`. + * \param freesrc non-zero to close/free the SDL_RWops before returning, zero + * to leave it open. + * \returns a new music object, or NULL on error. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_FreeMusic + */ extern DECLSPEC Mix_Music * SDLCALL Mix_LoadMUSType_RW(SDL_RWops *src, Mix_MusicType type, int freesrc); -/* Load a wave file of the mixer format from a memory buffer */ +/** + * Load a WAV file from memory as quickly as possible. + * + * Unlike Mix_LoadWAV_RW, this function has several requirements, and unless + * you control all your audio data and know what you're doing, you should + * consider this function unsafe and not use it. + * + * - The provided audio data MUST be in Microsoft WAV format. + * - The provided audio data shouldn't use any strange WAV extensions. + * - The audio data MUST be in the exact same format as the audio device. This + * function will not attempt to convert it, or even verify it's in the right + * format. + * - The audio data must be valid; this function does not know the size of the + * memory buffer, so if the WAV data is corrupted, it can read past the end + * of the buffer, causing a crash. + * - The audio data must live at least as long as the returned Mix_Chunk, + * because SDL_mixer will use that data directly and not make a copy of it. + * + * This function will do NO error checking! Be extremely careful here! + * + * (Seriously, use Mix_LoadWAV_RW instead.) + * + * If this function is successful, the provided memory buffer must remain + * available until Mix_FreeChunk() is called on the returned chunk. + * + * \param mem memory buffer containing of a WAV file. + * \returns a new chunk, or NULL on error. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_LoadWAV_RW + * \sa Mix_FreeChunk + */ extern DECLSPEC Mix_Chunk * SDLCALL Mix_QuickLoad_WAV(Uint8 *mem); -/* Load raw audio data of the mixer format from a memory buffer */ +/** + * Load a raw audio data from memory as quickly as possible. + * + * The audio data MUST be in the exact same format as the audio device. This + * function will not attempt to convert it, or even verify it's in the right + * format. + * + * If this function is successful, the provided memory buffer must remain + * available until Mix_FreeChunk() is called on the returned chunk. + * + * \param mem memory buffer containing raw PCM data. + * \param len length of buffer pointed to by `mem`, in bytes. + * \returns a new chunk, or NULL on error. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_FreeChunk + */ extern DECLSPEC Mix_Chunk * SDLCALL Mix_QuickLoad_RAW(Uint8 *mem, Uint32 len); -/* Free an audio chunk previously loaded */ +/** + * Free an audio chunk. + * + * An app should call this function when it is done with a Mix_Chunk and wants + * to dispose of its resources. + * + * SDL_mixer will stop any channels this chunk is currently playing on. This + * will deregister all effects on those channels and call any callback + * specified by Mix_ChannelFinished() for each removed channel. + * + * \param chunk the chunk to free. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_LoadWAV + * \sa Mix_LoadWAV_RW + * \sa Mix_QuickLoad_WAV + * \sa Mix_QuickLoad_RAW + */ extern DECLSPEC void SDLCALL Mix_FreeChunk(Mix_Chunk *chunk); + +/** + * Free a music object. + * + * If this music is currently playing, it will be stopped. + * + * If this music is in the process of fading out (via Mix_FadeOutMusic()), + * this function will *block* until the fade completes. If you need to avoid + * this, be sure to call Mix_HaltMusic() before freeing the music. + * + * \param music the music object to free. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_LoadMUS + * \sa Mix_LoadMUS_RW + * \sa Mix_LoadMUSType_RW + */ extern DECLSPEC void SDLCALL Mix_FreeMusic(Mix_Music *music); -/* Get a list of chunk/music decoders that this build of SDL_mixer provides. - This list can change between builds AND runs of the program, if external - libraries that add functionality become available. - You must successfully call Mix_OpenAudio() before calling these functions. - This API is only available in SDL_mixer 1.2.9 and later. - - // usage... - int i; - const int total = Mix_GetNumChunkDecoders(); - for (i = 0; i < total; i++) - printf("Supported chunk decoder: [%s]\n", Mix_GetChunkDecoder(i)); - - Appearing in this list doesn't promise your specific audio file will - decode...but it's handy to know if you have, say, a functioning Timidity - install. - - These return values are static, read-only data; do not modify or free it. - The pointers remain valid until you call Mix_CloseAudio(). -*/ +/** + * Get a list of chunk decoders that this build of SDL_mixer provides. + * + * This list can change between builds AND runs of the program, if external + * libraries that add functionality become available. You must successfully + * call Mix_OpenAudio() or Mix_OpenAudioDevice() before calling this function, + * as decoders are activated at device open time. + * + * Appearing in this list doesn't promise your specific audio file will + * decode...but it's handy to know if you have, say, a functioning Ogg Vorbis + * install. + * + * These return values are static, read-only data; do not modify or free it. + * The pointers remain valid until you call Mix_CloseAudio(). + * + * \returns number of chunk decoders available. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_GetChunkDecoder + * \sa Mix_HasChunkDecoder + */ extern DECLSPEC int SDLCALL Mix_GetNumChunkDecoders(void); + +/** + * Get a chunk decoder's name. + * + * The requested decoder's index must be between zero and + * Mix_GetNumChunkDecoders()-1. It's safe to call this with an invalid index; + * this function will return NULL in that case. + * + * This list can change between builds AND runs of the program, if external + * libraries that add functionality become available. You must successfully + * call Mix_OpenAudio() or Mix_OpenAudioDevice() before calling this function, + * as decoders are activated at device open time. + * + * \param index index of the chunk decoder. + * \returns the chunk decoder's name. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_GetNumChunkDecoders + */ extern DECLSPEC const char * SDLCALL Mix_GetChunkDecoder(int index); + +/** + * Check if a chunk decoder is available by name. + * + * This result can change between builds AND runs of the program, if external + * libraries that add functionality become available. You must successfully + * call Mix_OpenAudio() or Mix_OpenAudioDevice() before calling this function, + * as decoders are activated at device open time. + * + * Decoder names are arbitrary but also obvious, so you have to know what + * you're looking for ahead of time, but usually it's the file extension in + * capital letters (some example names are "AIFF", "VOC", "WAV"). + * + * \param name the decoder name to query. + * \returns SDL_TRUE if a decoder by that name is available, SDL_FALSE + * otherwise. + * + * \since This function is available since SDL_mixer 2.0.2. + * + * \sa Mix_GetNumChunkDecoders + * \sa Mix_GetChunkDecoder + */ extern DECLSPEC SDL_bool SDLCALL Mix_HasChunkDecoder(const char *name); + +/** + * Get a list of music decoders that this build of SDL_mixer provides. + * + * This list can change between builds AND runs of the program, if external + * libraries that add functionality become available. You must successfully + * call Mix_OpenAudio() or Mix_OpenAudioDevice() before calling this function, + * as decoders are activated at device open time. + * + * Appearing in this list doesn't promise your specific audio file will + * decode...but it's handy to know if you have, say, a functioning Ogg Vorbis + * install. + * + * These return values are static, read-only data; do not modify or free it. + * The pointers remain valid until you call Mix_CloseAudio(). + * + * \returns number of music decoders available. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_GetMusicDecoder + * \sa Mix_HasMusicDecoder + */ extern DECLSPEC int SDLCALL Mix_GetNumMusicDecoders(void); + +/** + * Get a music decoder's name. + * + * The requested decoder's index must be between zero and + * Mix_GetNumMusicDecoders()-1. It's safe to call this with an invalid index; + * this function will return NULL in that case. + * + * This list can change between builds AND runs of the program, if external + * libraries that add functionality become available. You must successfully + * call Mix_OpenAudio() or Mix_OpenAudioDevice() before calling this function, + * as decoders are activated at device open time. + * + * \param index index of the music decoder. + * \returns the music decoder's name. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_GetNumMusicDecoders + */ extern DECLSPEC const char * SDLCALL Mix_GetMusicDecoder(int index); + +/** + * Check if a music decoder is available by name. + * + * This result can change between builds AND runs of the program, if external + * libraries that add functionality become available. You must successfully + * call Mix_OpenAudio() or Mix_OpenAudioDevice() before calling this function, + * as decoders are activated at device open time. + * + * Decoder names are arbitrary but also obvious, so you have to know what + * you're looking for ahead of time, but usually it's the file extension in + * capital letters (some example names are "MOD", "MP3", "FLAC"). + * + * \param name the decoder name to query. + * \returns SDL_TRUE if a decoder by that name is available, SDL_FALSE + * otherwise. + * + * \since This function is available since SDL_mixer 2.6.0 + * + * \sa Mix_GetNumMusicDecoders + * \sa Mix_GetMusicDecoder + */ extern DECLSPEC SDL_bool SDLCALL Mix_HasMusicDecoder(const char *name); -/* Find out the music format of a mixer music, or the currently playing - music, if 'music' is NULL. -*/ +/** + * Find out the format of a mixer music. + * + * If `music` is NULL, this will query the currently playing music (and return + * MUS_NONE if nothing is currently playing). + * + * \param music the music object to query, or NULL for the currently-playing + * music. + * \returns the Mix_MusicType for the music object. + * + * \since This function is available since SDL_mixer 2.0.0 + */ extern DECLSPEC Mix_MusicType SDLCALL Mix_GetMusicType(const Mix_Music *music); -/* Set a function that is called after all mixing is performed. - This can be used to provide real-time visual display of the audio stream - or add a custom mixer filter for the stream data. -*/ -extern DECLSPEC void SDLCALL Mix_SetPostMix(void (SDLCALL *mix_func)(void *udata, Uint8 *stream, int len), void *arg); - -/* Add your own music player or additional mixer function. - If 'mix_func' is NULL, the default music player is re-enabled. +/** + * Get the title for a music object, or its filename. + * + * This returns format-specific metadata. Not all file formats supply this! + * + * If `music` is NULL, this will query the currently-playing music. + * + * If music's title tag is missing or empty, the filename will be returned. If + * you'd rather have the actual metadata or nothing, use + * Mix_GetMusicTitleTag() instead. + * + * Please note that if the music was loaded from an SDL_RWops instead of a + * filename, the filename returned will be an empty string (""). + * + * This function never returns NULL! If no data is available, it will return + * an empty string (""). + * + * \param music the music object to query, or NULL for the currently-playing + * music. + * \returns the music's title if available, or the filename if not, or "". + * + * \since This function is available since SDL_mixer 2.6.0. + * + * \sa Mix_GetMusicTitleTag + * \sa Mix_GetMusicArtistTag + * \sa Mix_GetMusicAlbumTag + * \sa Mix_GetMusicCopyrightTag */ -extern DECLSPEC void SDLCALL Mix_HookMusic(void (SDLCALL *mix_func)(void *udata, Uint8 *stream, int len), void *arg); +extern DECLSPEC const char *SDLCALL Mix_GetMusicTitle(const Mix_Music *music); -/* Add your own callback for when the music has finished playing or when it is - * stopped from a call to Mix_HaltMusic. +/** + * Get the title for a music object. + * + * This returns format-specific metadata. Not all file formats supply this! + * + * If `music` is NULL, this will query the currently-playing music. + * + * Unlike this function, Mix_GetMusicTitle() produce a string with the music's + * filename if a title isn't available, which might be preferable for some + * applications. + * + * This function never returns NULL! If no data is available, it will return + * an empty string (""). + * + * \param music the music object to query, or NULL for the currently-playing + * music. + * \returns the music's title if available, or "". + * + * \since This function is available since SDL_mixer 2.6.0. + * + * \sa Mix_GetMusicTitle + * \sa Mix_GetMusicArtistTag + * \sa Mix_GetMusicAlbumTag + * \sa Mix_GetMusicCopyrightTag */ -extern DECLSPEC void SDLCALL Mix_HookMusicFinished(void (SDLCALL *music_finished)(void)); +extern DECLSPEC const char *SDLCALL Mix_GetMusicTitleTag(const Mix_Music *music); -/* Get a pointer to the user data for the current music hook */ +/** + * Get the artist name for a music object. + * + * This returns format-specific metadata. Not all file formats supply this! + * + * If `music` is NULL, this will query the currently-playing music. + * + * This function never returns NULL! If no data is available, it will return + * an empty string (""). + * + * \param music the music object to query, or NULL for the currently-playing + * music. + * \returns the music's artist name if available, or "". + * + * \since This function is available since SDL_mixer 2.6.0. + * + * \sa Mix_GetMusicTitleTag + * \sa Mix_GetMusicAlbumTag + * \sa Mix_GetMusicCopyrightTag + */ +extern DECLSPEC const char *SDLCALL Mix_GetMusicArtistTag(const Mix_Music *music); + +/** + * Get the album name for a music object. + * + * This returns format-specific metadata. Not all file formats supply this! + * + * If `music` is NULL, this will query the currently-playing music. + * + * This function never returns NULL! If no data is available, it will return + * an empty string (""). + * + * \param music the music object to query, or NULL for the currently-playing + * music. + * \returns the music's album name if available, or "". + * + * \since This function is available since SDL_mixer 2.6.0. + * + * \sa Mix_GetMusicTitleTag + * \sa Mix_GetMusicArtistTag + * \sa Mix_GetMusicCopyrightTag + */ +extern DECLSPEC const char *SDLCALL Mix_GetMusicAlbumTag(const Mix_Music *music); + +/** + * Get the copyright text for a music object. + * + * This returns format-specific metadata. Not all file formats supply this! + * + * If `music` is NULL, this will query the currently-playing music. + * + * This function never returns NULL! If no data is available, it will return + * an empty string (""). + * + * \param music the music object to query, or NULL for the currently-playing + * music. + * \returns the music's copyright text if available, or "". + * + * \since This function is available since SDL_mixer 2.6.0. + * + * \sa Mix_GetMusicTitleTag + * \sa Mix_GetMusicArtistTag + * \sa Mix_GetMusicAlbumTag + */ +extern DECLSPEC const char *SDLCALL Mix_GetMusicCopyrightTag(const Mix_Music *music); + +typedef void (SDLCALL *Mix_MixCallback)(void *udata, Uint8 *stream, int len); + +/** + * Set a function that is called after all mixing is performed. + * + * This can be used to provide real-time visual display of the audio stream or + * add a custom mixer filter for the stream data. + * + * The callback will fire every time SDL_mixer is ready to supply more data to + * the audio device, after it has finished all its mixing work. This runs + * inside an SDL audio callback, so it's important that the callback return + * quickly, or there could be problems in the audio playback. + * + * The data provided to the callback is in the format that the audio device + * was opened in, and it represents the exact waveform SDL_mixer has mixed + * from all playing chunks and music for playback. You are allowed to modify + * the data, but it cannot be resized (so you can't add a reverb effect that + * goes past the end of the buffer without saving some state between runs to + * add it into the next callback, or resample the buffer to a smaller size to + * speed it up, etc). + * + * The `arg` pointer supplied here is passed to the callback as-is, for + * whatever the callback might want to do with it (keep track of some ongoing + * state, settings, etc). + * + * Passing a NULL callback disables the post-mix callback until such a time as + * a new one callback is set. + * + * There is only one callback available. If you need to mix multiple inputs, + * be prepared to handle them from a single function. + * + * \param mix_func the callback function to become the new post-mix callback. + * \param arg a pointer that is passed, untouched, to the callback. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_HookMusic + */ +extern DECLSPEC void SDLCALL Mix_SetPostMix(Mix_MixCallback mix_func, void *arg); + +/** + * Add your own music player or additional mixer function. + * + * This works something like Mix_SetPostMix(), but it has some crucial + * differences. Note that an app can use this _and_ Mix_SetPostMix() at the + * same time. This allows an app to replace the built-in music playback, + * either with it's own music decoder or with some sort of + * procedurally-generated audio output. + * + * The supplied callback will fire every time SDL_mixer is preparing to supply + * more data to the audio device. This runs inside an SDL audio callback, so + * it's important that the callback return quickly, or there could be problems + * in the audio playback. + * + * Running this callback is the first thing SDL_mixer will do when starting to + * mix more audio. The buffer will contain silence upon entry, so the callback + * does not need to mix into existing data or initialize the buffer. + * + * Note that while a callback is set through this function, SDL_mixer will not + * mix any playing music; this callback is used instead. To disable this + * callback (and thus reenable built-in music playback) call this function + * with a NULL callback. + * + * The data written to by the callback is in the format that the audio device + * was opened in, and upon return from the callback, SDL_mixer will mix any + * playing chunks (but not music!) into the buffer. The callback cannot resize + * the buffer (so you must be prepared to provide exactly the amount of data + * demanded or leave it as silence). + * + * The `arg` pointer supplied here is passed to the callback as-is, for + * whatever the callback might want to do with it (keep track of some ongoing + * state, settings, etc). + * + * As there is only one music "channel" mixed, there is only one callback + * available. If you need to mix multiple inputs, be prepared to handle them + * from a single function. + * + * \param mix_func the callback function to become the new post-mix callback. + * \param arg a pointer that is passed, untouched, to the callback. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_SetPostMix + */ +extern DECLSPEC void SDLCALL Mix_HookMusic(Mix_MixCallback mix_func, void *arg); + +typedef void (SDLCALL *Mix_MusicFinishedCallback)(void); + +/** + * Set a callback that runs when a music object has stopped playing. + * + * This callback will fire when the currently-playing music has completed, or + * when it has been explicitly stopped from a call to Mix_HaltMusic. As such, + * this callback might fire from an arbitrary background thread at almost any + * time; try to limit what you do here. + * + * It is legal to start a new music object playing in this callback (or + * restart the one that just stopped). If the music finished normally, this + * can be used to loop the music without a gap in the audio playback. + * + * Do not call SDL_LockAudio() from this callback; you will either be inside + * the audio callback, or SDL_mixer will explicitly lock the audio before + * calling your callback. + * + * A NULL pointer will disable the callback. + * + * \param music_finished the callback function to become the new notification + * mechanism. + * + * \since This function is available since SDL_mixer 2.0.0. + */ +extern DECLSPEC void SDLCALL Mix_HookMusicFinished(Mix_MusicFinishedCallback music_finished); + +/** + * Get a pointer to the user data for the current music hook. + * + * This returns the `arg` pointer last passed to Mix_HookMusic(), or NULL if + * that function has never been called. + * + * \returns pointer to the user data previously passed to Mix_HookMusic. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC void * SDLCALL Mix_GetMusicHookData(void); -/* - * Add your own callback when a channel has finished playing. NULL - * to disable callback. The callback may be called from the mixer's audio - * callback or it could be called as a result of Mix_HaltChannel(), etc. - * do not call SDL_LockAudio() from this callback; you will either be - * inside the audio callback, or SDL_mixer will explicitly lock the audio - * before calling your callback. +typedef void (SDLCALL *Mix_ChannelFinishedCallback)(int channel); + +/** + * Set a callback that runs when a channel has finished playing. + * + * The callback may be called from the mixer's audio callback or it could be + * called as a result of Mix_HaltChannel(), etc. + * + * The callback has a single parameter, `channel`, which says what mixer + * channel has just stopped. + * + * Do not call SDL_LockAudio() from this callback; you will either be inside + * the audio callback, or SDL_mixer will explicitly lock the audio before + * calling your callback. + * + * A NULL pointer will disable the callback. + * + * \param channel_finished the callback function to become the new + * notification mechanism. + * + * \since This function is available since SDL_mixer 2.0.0. */ -extern DECLSPEC void SDLCALL Mix_ChannelFinished(void (SDLCALL *channel_finished)(int channel)); +extern DECLSPEC void SDLCALL Mix_ChannelFinished(Mix_ChannelFinishedCallback channel_finished); -/* Special Effects API by ryan c. gordon. (icculus@icculus.org) */ +#define MIX_CHANNEL_POST (-2) -#define MIX_CHANNEL_POST -2 - -/* This is the format of a special effect callback: +/** + * This is the format of a special effect callback: * - * myeffect(int chan, void *stream, int len, void *udata); + * myeffect(int chan, void *stream, int len, void *udata); * - * (chan) is the channel number that your effect is affecting. (stream) is - * the buffer of data to work upon. (len) is the size of (stream), and - * (udata) is a user-defined bit of data, which you pass as the last arg of - * Mix_RegisterEffect(), and is passed back unmolested to your callback. - * Your effect changes the contents of (stream) based on whatever parameters - * are significant, or just leaves it be, if you prefer. You can do whatever - * you like to the buffer, though, and it will continue in its changed state - * down the mixing pipeline, through any other effect functions, then finally - * to be mixed with the rest of the channels and music for the final output - * stream. + * (chan) is the channel number that your effect is affecting. (stream) is the + * buffer of data to work upon. (len) is the size of (stream), and (udata) is + * a user-defined bit of data, which you pass as the last arg of + * Mix_RegisterEffect(), and is passed back unmolested to your callback. Your + * effect changes the contents of (stream) based on whatever parameters are + * significant, or just leaves it be, if you prefer. You can do whatever you + * like to the buffer, though, and it will continue in its changed state down + * the mixing pipeline, through any other effect functions, then finally to be + * mixed with the rest of the channels and music for the final output stream. * * DO NOT EVER call SDL_LockAudio() from your callback function! */ typedef void (SDLCALL *Mix_EffectFunc_t)(int chan, void *stream, int len, void *udata); -/* - * This is a callback that signifies that a channel has finished all its - * loops and has completed playback. This gets called if the buffer - * plays out normally, or if you call Mix_HaltChannel(), implicitly stop - * a channel via Mix_AllocateChannels(), or unregister a callback while - * it's still playing. +/** + * This is a callback that signifies that a channel has finished all its loops + * and has completed playback. + * + * This gets called if the buffer plays out normally, or if you call + * Mix_HaltChannel(), implicitly stop a channel via Mix_AllocateChannels(), or + * unregister a callback while it's still playing. * * DO NOT EVER call SDL_LockAudio() from your callback function! */ typedef void (SDLCALL *Mix_EffectDone_t)(int chan, void *udata); -/* Register a special effect function. At mixing time, the channel data is - * copied into a buffer and passed through each registered effect function. - * After it passes through all the functions, it is mixed into the final - * output stream. The copy to buffer is performed once, then each effect - * function performs on the output of the previous effect. Understand that - * this extra copy to a buffer is not performed if there are no effects - * registered for a given chunk, which saves CPU cycles, and any given - * effect will be extra cycles, too, so it is crucial that your code run - * fast. Also note that the data that your function is given is in the - * format of the sound device, and not the format you gave to Mix_OpenAudio(), - * although they may in reality be the same. This is an unfortunate but - * necessary speed concern. Use Mix_QuerySpec() to determine if you can - * handle the data before you register your effect, and take appropriate - * actions. - * You may also specify a callback (Mix_EffectDone_t) that is called when - * the channel finishes playing. This gives you a more fine-grained control - * than Mix_ChannelFinished(), in case you need to free effect-specific - * resources, etc. If you don't need this, you can specify NULL. +/** + * Register a special effect function. + * + * At mixing time, the channel data is copied into a buffer and passed through + * each registered effect function. After it passes through all the functions, + * it is mixed into the final output stream. The copy to buffer is performed + * once, then each effect function performs on the output of the previous + * effect. Understand that this extra copy to a buffer is not performed if + * there are no effects registered for a given chunk, which saves CPU cycles, + * and any given effect will be extra cycles, too, so it is crucial that your + * code run fast. Also note that the data that your function is given is in + * the format of the sound device, and not the format you gave to + * Mix_OpenAudio(), although they may in reality be the same. This is an + * unfortunate but necessary speed concern. Use Mix_QuerySpec() to determine + * if you can handle the data before you register your effect, and take + * appropriate actions. + * + * You may also specify a callback (Mix_EffectDone_t) that is called when the + * channel finishes playing. This gives you a more fine-grained control than + * Mix_ChannelFinished(), in case you need to free effect-specific resources, + * etc. If you don't need this, you can specify NULL. + * * You may set the callbacks before or after calling Mix_PlayChannel(). - * Things like Mix_SetPanning() are just internal special effect functions, - * so if you are using that, you've already incurred the overhead of a copy - * to a separate buffer, and that these effects will be in the queue with - * any functions you've registered. The list of registered effects for a - * channel is reset when a chunk finishes playing, so you need to explicitly - * set them with each call to Mix_PlayChannel*(). + * + * Things like Mix_SetPanning() are just internal special effect functions, so + * if you are using that, you've already incurred the overhead of a copy to a + * separate buffer, and that these effects will be in the queue with any + * functions you've registered. The list of registered effects for a channel + * is reset when a chunk finishes playing, so you need to explicitly set them + * with each call to Mix_PlayChannel*(). + * * You may also register a special effect function that is to be run after - * final mixing occurs. The rules for these callbacks are identical to those - * in Mix_RegisterEffect, but they are run after all the channels and the - * music have been mixed into a single stream, whereas channel-specific - * effects run on a given channel before any other mixing occurs. These - * global effect callbacks are call "posteffects". Posteffects only have - * their Mix_EffectDone_t function called when they are unregistered (since - * the main output stream is never "done" in the same sense as a channel). - * You must unregister them manually when you've had enough. Your callback - * will be told that the channel being mixed is (MIX_CHANNEL_POST) if the - * processing is considered a posteffect. + * final mixing occurs. The rules for these callbacks are identical to those + * in Mix_RegisterEffect, but they are run after all the channels and the + * music have been mixed into a single stream, whereas channel-specific + * effects run on a given channel before any other mixing occurs. These global + * effect callbacks are call "posteffects". Posteffects only have their + * Mix_EffectDone_t function called when they are unregistered (since the main + * output stream is never "done" in the same sense as a channel). You must + * unregister them manually when you've had enough. Your callback will be told + * that the channel being mixed is `MIX_CHANNEL_POST` if the processing is + * considered a posteffect. * * After all these effects have finished processing, the callback registered - * through Mix_SetPostMix() runs, and then the stream goes to the audio - * device. + * through Mix_SetPostMix() runs, and then the stream goes to the audio + * device. * - * DO NOT EVER call SDL_LockAudio() from your callback function! + * DO NOT EVER call SDL_LockAudio() from your callback function! You are + * already running in the audio thread and the lock is already held! * - * returns zero if error (no such channel), nonzero if added. - * Error messages can be retrieved from Mix_GetError(). + * Note that unlike most SDL and SDL_mixer functions, this function returns + * zero if there's an error, not on success. We apologize for the API design + * inconsistency here. + * + * \param chan the channel to register an effect to, or MIX_CHANNEL_POST. + * \param f effect the callback to run when more of this channel is to be + * mixed. + * \param d effect done callback. + * \param arg argument. + * \returns zero if error (no such channel), nonzero if added. Error messages + * can be retrieved from Mix_GetError(). + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_RegisterEffect(int chan, Mix_EffectFunc_t f, Mix_EffectDone_t d, void *arg); -/* You may not need to call this explicitly, unless you need to stop an - * effect from processing in the middle of a chunk's playback. - * Posteffects are never implicitly unregistered as they are for channels, - * but they may be explicitly unregistered through this function by - * specifying MIX_CHANNEL_POST for a channel. - * returns zero if error (no such channel or effect), nonzero if removed. - * Error messages can be retrieved from Mix_GetError(). +/** + * Explicitly unregister a special effect function. + * + * You may not need to call this at all, unless you need to stop an effect + * from processing in the middle of a chunk's playback. + * + * Posteffects are never implicitly unregistered as they are for channels (as + * the output stream does not have an end), but they may be explicitly + * unregistered through this function by specifying MIX_CHANNEL_POST for a + * channel. + * + * Note that unlike most SDL and SDL_mixer functions, this function returns + * zero if there's an error, not on success. We apologize for the API design + * inconsistency here. + * + * \param channel the channel to unregister an effect on, or MIX_CHANNEL_POST. + * \param f effect the callback stop calling in future mixing iterations. + * \returns zero if error (no such channel or effect), nonzero if removed. + * Error messages can be retrieved from Mix_GetError(). + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_UnregisterEffect(int channel, Mix_EffectFunc_t f); - -/* You may not need to call this explicitly, unless you need to stop all - * effects from processing in the middle of a chunk's playback. Note that - * this will also shut off some internal effect processing, since - * Mix_SetPanning() and others may use this API under the hood. This is - * called internally when a channel completes playback. - * Posteffects are never implicitly unregistered as they are for channels, - * but they may be explicitly unregistered through this function by - * specifying MIX_CHANNEL_POST for a channel. - * returns zero if error (no such channel), nonzero if all effects removed. - * Error messages can be retrieved from Mix_GetError(). +/** + * Explicitly unregister all special effect functions. + * + * You may not need to call this at all, unless you need to stop all effects + * from processing in the middle of a chunk's playback. + * + * Note that this will also shut off some internal effect processing, since + * Mix_SetPanning() and others may use this API under the hood. This is called + * internally when a channel completes playback. Posteffects are never + * implicitly unregistered as they are for channels, but they may be + * explicitly unregistered through this function by specifying + * MIX_CHANNEL_POST for a channel. + * + * Note that unlike most SDL and SDL_mixer functions, this function returns + * zero if there's an error, not on success. We apologize for the API design + * inconsistency here. + * + * \param channel the channel to unregister all effects on, or + * MIX_CHANNEL_POST. + * \returns zero if error (no such channel), nonzero if all effects removed. + * Error messages can be retrieved from Mix_GetError(). + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_UnregisterAllEffects(int channel); @@ -364,288 +1430,1402 @@ extern DECLSPEC int SDLCALL Mix_UnregisterAllEffects(int channel); */ -/* Set the panning of a channel. The left and right channels are specified - * as integers between 0 and 255, quietest to loudest, respectively. +/** + * Set the panning of a channel. * - * Technically, this is just individual volume control for a sample with - * two (stereo) channels, so it can be used for more than just panning. - * If you want real panning, call it like this: + * The left and right channels are specified as integers between 0 and 255, + * quietest to loudest, respectively. * - * Mix_SetPanning(channel, left, 255 - left); + * Technically, this is just individual volume control for a sample with two + * (stereo) channels, so it can be used for more than just panning. If you + * want real panning, call it like this: * - * ...which isn't so hard. + * ```c + * Mix_SetPanning(channel, left, 255 - left); + * ``` * - * Setting (channel) to MIX_CHANNEL_POST registers this as a posteffect, and - * the panning will be done to the final mixed stream before passing it on - * to the audio device. + * Setting `channel` to MIX_CHANNEL_POST registers this as a posteffect, and + * the panning will be done to the final mixed stream before passing it on to + * the audio device. * * This uses the Mix_RegisterEffect() API internally, and returns without - * registering the effect function if the audio device is not configured - * for stereo output. Setting both (left) and (right) to 255 causes this - * effect to be unregistered, since that is the data's normal state. + * registering the effect function if the audio device is not configured for + * stereo output. Setting both `left` and `right` to 255 causes this effect to + * be unregistered, since that is the data's normal state. * - * returns zero if error (no such channel or Mix_RegisterEffect() fails), - * nonzero if panning effect enabled. Note that an audio device in mono - * mode is a no-op, but this call will return successful in that case. - * Error messages can be retrieved from Mix_GetError(). + * Note that an audio device in mono mode is a no-op, but this call will + * return successful in that case. Error messages can be retrieved from + * Mix_GetError(). + * + * Note that unlike most SDL and SDL_mixer functions, this function returns + * zero if there's an error, not on success. We apologize for the API design + * inconsistency here. + * + * \param channel The mixer channel to pan or MIX_CHANNEL_POST. + * \param left Volume of stereo left channel, 0 is silence, 255 is full + * volume. + * \param right Volume of stereo right channel, 0 is silence, 255 is full + * volume. + * \returns zero if error (no such channel or Mix_RegisterEffect() fails), + * nonzero if panning effect enabled. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_SetPosition + * \sa Mix_SetDistance */ extern DECLSPEC int SDLCALL Mix_SetPanning(int channel, Uint8 left, Uint8 right); -/* Set the position of a channel. (angle) is an integer from 0 to 360, that - * specifies the location of the sound in relation to the listener. (angle) - * will be reduced as neccesary (540 becomes 180 degrees, -100 becomes 260). - * Angle 0 is due north, and rotates clockwise as the value increases. - * For efficiency, the precision of this effect may be limited (angles 1 - * through 7 might all produce the same effect, 8 through 15 are equal, etc). - * (distance) is an integer between 0 and 255 that specifies the space - * between the sound and the listener. The larger the number, the further - * away the sound is. Using 255 does not guarantee that the channel will be - * culled from the mixing process or be completely silent. For efficiency, - * the precision of this effect may be limited (distance 0 through 5 might - * all produce the same effect, 6 through 10 are equal, etc). Setting (angle) - * and (distance) to 0 unregisters this effect, since the data would be - * unchanged. +/** + * Set the position of a channel. + * + * `angle` is an integer from 0 to 360, that specifies the location of the + * sound in relation to the listener. `angle` will be reduced as necessary + * (540 becomes 180 degrees, -100 becomes 260). Angle 0 is due north, and + * rotates clockwise as the value increases. For efficiency, the precision of + * this effect may be limited (angles 1 through 7 might all produce the same + * effect, 8 through 15 are equal, etc). `distance` is an integer between 0 + * and 255 that specifies the space between the sound and the listener. The + * larger the number, the further away the sound is. Using 255 does not + * guarantee that the channel will be removed from the mixing process or be + * completely silent. For efficiency, the precision of this effect may be + * limited (distance 0 through 5 might all produce the same effect, 6 through + * 10 are equal, etc). Setting `angle` and `distance` to 0 unregisters this + * effect, since the data would be unchanged. * * If you need more precise positional audio, consider using OpenAL for - * spatialized effects instead of SDL_mixer. This is only meant to be a - * basic effect for simple "3D" games. + * spatialized effects instead of SDL_mixer. This is only meant to be a basic + * effect for simple "3D" games. * - * If the audio device is configured for mono output, then you won't get - * any effectiveness from the angle; however, distance attenuation on the - * channel will still occur. While this effect will function with stereo - * voices, it makes more sense to use voices with only one channel of sound, - * so when they are mixed through this effect, the positioning will sound - * correct. You can convert them to mono through SDL before giving them to - * the mixer in the first place if you like. + * If the audio device is configured for mono output, then you won't get any + * effectiveness from the angle; however, distance attenuation on the channel + * will still occur. While this effect will function with stereo voices, it + * makes more sense to use voices with only one channel of sound, so when they + * are mixed through this effect, the positioning will sound correct. You can + * convert them to mono through SDL before giving them to the mixer in the + * first place if you like. * - * Setting (channel) to MIX_CHANNEL_POST registers this as a posteffect, and - * the positioning will be done to the final mixed stream before passing it - * on to the audio device. + * Setting the channel to MIX_CHANNEL_POST registers this as a posteffect, and + * the positioning will be done to the final mixed stream before passing it on + * to the audio device. * * This is a convenience wrapper over Mix_SetDistance() and Mix_SetPanning(). * - * returns zero if error (no such channel or Mix_RegisterEffect() fails), - * nonzero if position effect is enabled. - * Error messages can be retrieved from Mix_GetError(). + * Note that unlike most SDL and SDL_mixer functions, this function returns + * zero if there's an error, not on success. We apologize for the API design + * inconsistency here. + * + * \param channel The mixer channel to position, or MIX_CHANNEL_POST. + * \param angle angle, in degrees. North is 0, and goes clockwise. + * \param distance distance; 0 is the listener, 255 is maxiumum distance away. + * \returns zero if error (no such channel or Mix_RegisterEffect() fails), + * nonzero if position effect is enabled. Error messages can be + * retrieved from Mix_GetError(). + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_SetPosition(int channel, Sint16 angle, Uint8 distance); -/* Set the "distance" of a channel. (distance) is an integer from 0 to 255 - * that specifies the location of the sound in relation to the listener. - * Distance 0 is overlapping the listener, and 255 is as far away as possible - * A distance of 255 does not guarantee silence; in such a case, you might - * want to try changing the chunk's volume, or just cull the sample from the - * mixing process with Mix_HaltChannel(). - * For efficiency, the precision of this effect may be limited (distances 1 - * through 7 might all produce the same effect, 8 through 15 are equal, etc). - * (distance) is an integer between 0 and 255 that specifies the space - * between the sound and the listener. The larger the number, the further - * away the sound is. - * Setting (distance) to 0 unregisters this effect, since the data would be - * unchanged. - * If you need more precise positional audio, consider using OpenAL for - * spatialized effects instead of SDL_mixer. This is only meant to be a - * basic effect for simple "3D" games. +/** + * Set the "distance" of a channel. * - * Setting (channel) to MIX_CHANNEL_POST registers this as a posteffect, and - * the distance attenuation will be done to the final mixed stream before - * passing it on to the audio device. + * `distance` is an integer from 0 to 255 that specifies the location of the + * sound in relation to the listener. Distance 0 is overlapping the listener, + * and 255 is as far away as possible. A distance of 255 does not guarantee + * silence; in such a case, you might want to try changing the chunk's volume, + * or just cull the sample from the mixing process with Mix_HaltChannel(). For + * efficiency, the precision of this effect may be limited (distances 1 + * through 7 might all produce the same effect, 8 through 15 are equal, etc). + * (distance) is an integer between 0 and 255 that specifies the space between + * the sound and the listener. The larger the number, the further away the + * sound is. Setting the distance to 0 unregisters this effect, since the data + * would be unchanged. If you need more precise positional audio, consider + * using OpenAL for spatialized effects instead of SDL_mixer. This is only + * meant to be a basic effect for simple "3D" games. + * + * Setting the channel to MIX_CHANNEL_POST registers this as a posteffect, and + * the distance attenuation will be done to the final mixed stream before + * passing it on to the audio device. * * This uses the Mix_RegisterEffect() API internally. * - * returns zero if error (no such channel or Mix_RegisterEffect() fails), - * nonzero if position effect is enabled. - * Error messages can be retrieved from Mix_GetError(). + * Note that unlike most SDL and SDL_mixer functions, this function returns + * zero if there's an error, not on success. We apologize for the API design + * inconsistency here. + * + * \param channel The mixer channel to attenuate, or MIX_CHANNEL_POST. + * \param distance distance; 0 is the listener, 255 is maxiumum distance away. + * \returns zero if error (no such channel or Mix_RegisterEffect() fails), + * nonzero if position effect is enabled. Error messages can be + * retrieved from Mix_GetError(). + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_SetDistance(int channel, Uint8 distance); -/* - * !!! FIXME : Haven't implemented, since the effect goes past the - * end of the sound buffer. Will have to think about this. - * --ryan. - */ -#if 0 -/* Causes an echo effect to be mixed into a sound. (echo) is the amount - * of echo to mix. 0 is no echo, 255 is infinite (and probably not - * what you want). +/** + * Cause a channel to reverse its stereo. * - * Setting (channel) to MIX_CHANNEL_POST registers this as a posteffect, and - * the reverbing will be done to the final mixed stream before passing it on - * to the audio device. + * This is handy if the user has his speakers hooked up backwards, or you + * would like to have a trippy sound effect. * - * This uses the Mix_RegisterEffect() API internally. If you specify an echo - * of zero, the effect is unregistered, as the data is already in that state. - * - * returns zero if error (no such channel or Mix_RegisterEffect() fails), - * nonzero if reversing effect is enabled. - * Error messages can be retrieved from Mix_GetError(). - */ -extern no_parse_DECLSPEC int SDLCALL Mix_SetReverb(int channel, Uint8 echo); -#endif - -/* Causes a channel to reverse its stereo. This is handy if the user has his - * speakers hooked up backwards, or you would like to have a minor bit of - * psychedelia in your sound code. :) Calling this function with (flip) - * set to non-zero reverses the chunks's usual channels. If (flip) is zero, - * the effect is unregistered. + * Calling this function with `flip` set to non-zero reverses the chunks's + * usual channels. If `flip` is zero, the effect is unregistered. * * This uses the Mix_RegisterEffect() API internally, and thus is probably - * more CPU intensive than having the user just plug in his speakers - * correctly. Mix_SetReverseStereo() returns without registering the effect - * function if the audio device is not configured for stereo output. + * more CPU intensive than having the user just plug in his speakers + * correctly. Mix_SetReverseStereo() returns without registering the effect + * function if the audio device is not configured for stereo output. * - * If you specify MIX_CHANNEL_POST for (channel), then this the effect is used - * on the final mixed stream before sending it on to the audio device (a - * posteffect). + * If you specify MIX_CHANNEL_POST for `channel`, then this effect is used on + * the final mixed stream before sending it on to the audio device (a + * posteffect). * - * returns zero if error (no such channel or Mix_RegisterEffect() fails), - * nonzero if reversing effect is enabled. Note that an audio device in mono - * mode is a no-op, but this call will return successful in that case. - * Error messages can be retrieved from Mix_GetError(). + * Note that unlike most SDL and SDL_mixer functions, this function returns + * zero if there's an error, not on success. We apologize for the API design + * inconsistency here. + * + * \param channel The mixer channel to reverse, or MIX_CHANNEL_POST. + * \param flip non-zero to reverse stereo, zero to disable this effect. + * \returns zero if error (no such channel or Mix_RegisterEffect() fails), + * nonzero if reversing effect is enabled. Note that an audio device + * in mono mode is a no-op, but this call will return successful in + * that case. Error messages can be retrieved from Mix_GetError(). + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_SetReverseStereo(int channel, int flip); -/* end of effects API. --ryan. */ +/* end of effects API. */ -/* Reserve the first channels (0 -> n-1) for the application, i.e. don't allocate - them dynamically to the next sample if requested with a -1 value below. - Returns the number of reserved channels. + +/** + * Reserve the first channels for the application. + * + * While SDL_mixer will use up to the number of channels allocated by + * Mix_AllocateChannels(), this sets channels aside that will not be available + * when calling Mix_PlayChannel with a channel of -1 (play on the first unused + * channel). In this case, SDL_mixer will treat reserved channels as "used" + * whether anything is playing on them at the moment or not. + * + * This is useful if you've budgeted some channels for dedicated audio and the + * rest are just used as they are available. + * + * Calling this function will set channels 0 to `n - 1` to be reserved. This + * will not change channel allocations. The number of reserved channels will + * be clamped to the current number allocated. + * + * By default, no channels are reserved. + * + * \param num number of channels to reserve, starting at index zero. + * \returns the number of reserved channels. + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_ReserveChannels(int num); + /* Channel grouping functions */ -/* Attach a tag to a channel. A tag can be assigned to several mixer - channels, to form groups of channels. - If 'tag' is -1, the tag is removed (actually -1 is the tag used to - represent the group of all the channels). - Returns true if everything was OK. +/** + * Assign a tag to a channel. + * + * A tag is an arbitary number that can be assigned to several mixer channels, + * to form groups of channels. + * + * If 'tag' is -1, the tag is removed (actually -1 is the tag used to + * represent the group of all the channels). + * + * This function replaces the requested channel's current tag; you may only + * have one tag per channel. + * + * You may not specify MAX_CHANNEL_POST for a channel. + * + * \param which the channel to set the tag on. + * \param tag an arbitrary value to assign a channel. + * \returns non-zero on success, zero on error (no such channel). + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_GroupChannel(int which, int tag); -/* Assign several consecutive channels to a group */ + +/** + * Assign several consecutive channels to the same tag. + * + * A tag is an arbitary number that can be assigned to several mixer channels, + * to form groups of channels. + * + * If 'tag' is -1, the tag is removed (actually -1 is the tag used to + * represent the group of all the channels). + * + * This function replaces the requested channels' current tags; you may only + * have one tag per channel. + * + * You may not specify MAX_CHANNEL_POST for a channel. + * + * Note that this returns success and failure in the _opposite_ way from + * Mix_GroupChannel(). We regret the API design mistake. + * + * \param from the first channel to set the tag on. + * \param to the last channel to set the tag on, inclusive. + * \param tag an arbitrary value to assign a channel. + * \returns 0 if successful, negative on error. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_GroupChannels(int from, int to, int tag); -/* Finds the first available channel in a group of channels, - returning -1 if none are available. + +/** + * Finds the first available channel in a group of channels. + * + * A tag is an arbitary number that can be assigned to several mixer channels, + * to form groups of channels. + * + * This function searches all channels with a specified tag, and returns the + * channel number of the first one it finds that is currently unused. + * + * If no channels with the specified tag are unused, this function returns -1. + * + * \param tag an arbitrary value, assigned to channels, to search for. + * \returns first available channel, or -1 if none are available. + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_GroupAvailable(int tag); -/* Returns the number of channels in a group. This is also a subtle - way to get the total number of channels when 'tag' is -1 + +/** + * Returns the number of channels in a group. + * + * If tag is -1, this will return the total number of channels allocated, + * regardless of what their tag might be. + * + * \param tag an arbitrary value, assigned to channels, to search for. + * \returns the number of channels assigned the specified tag. + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_GroupCount(int tag); -/* Finds the "oldest" sample playing in a group of channels */ + +/** + * Find the "oldest" sample playing in a group of channels. + * + * Specifically, this function returns the channel number that is assigned the + * specified tag, is currently playing, and has the lowest start time, based + * on the value of SDL_GetTicks() when the channel started playing. + * + * If no channel with this tag is currently playing, this function returns -1. + * + * \param tag an arbitrary value, assigned to channels, to search through. + * \returns the "oldest" sample playing in a group of channels. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_GroupNewer + */ extern DECLSPEC int SDLCALL Mix_GroupOldest(int tag); -/* Finds the "most recent" (i.e. last) sample playing in a group of channels */ + +/** + * Find the "most recent" sample playing in a group of channels. + * + * Specifically, this function returns the channel number that is assigned the + * specified tag, is currently playing, and has the highest start time, based + * on the value of SDL_GetTicks() when the channel started playing. + * + * If no channel with this tag is currently playing, this function returns -1. + * + * \param tag an arbitrary value, assigned to channels, to search through. + * \returns the "most recent" sample playing in a group of channels. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_GroupOldest + */ extern DECLSPEC int SDLCALL Mix_GroupNewer(int tag); -/* Play an audio chunk on a specific channel. - If the specified channel is -1, play on the first free channel. - If 'loops' is greater than zero, loop the sound that many times. - If 'loops' is -1, loop inifinitely (~65000 times). - Returns which channel was used to play the sound. -*/ -#define Mix_PlayChannel(channel,chunk,loops) Mix_PlayChannelTimed(channel,chunk,loops,-1) -/* The same as above, but the sound is played at most 'ticks' milliseconds */ +/** + * Play an audio chunk on a specific channel. + * + * If the specified channel is -1, play on the first free channel (and return + * -1 without playing anything new if no free channel was available). + * + * If a specific channel was requested, and there is a chunk already playing + * there, that chunk will be halted and the new chunk will take its place. + * + * If `loops` is greater than zero, loop the sound that many times. If `loops` + * is -1, loop "infinitely" (~65000 times). + * + * Note that before SDL_mixer 2.6.0, this function was a macro that called + * Mix_PlayChannelTimed() with a fourth parameter ("ticks") of -1. This + * function still does the same thing, but promotes it to a proper API + * function. Older binaries linked against a newer SDL_mixer will still call + * Mix_PlayChannelTimed directly, as they are using the macro, which was + * available since the dawn of time. + * + * \param channel the channel on which to play the new chunk. + * \param chunk the new chunk to play. + * \param loops the number of times the chunk should loop, -1 to loop (not + * actually) infinitely. + * \returns which channel was used to play the sound, or -1 if sound could not + * be played. + * + * \since This function is available since SDL_mixer 2.6.0 (and as a macro + * since 2.0.0). + */ +extern DECLSPEC int SDLCALL Mix_PlayChannel(int channel, Mix_Chunk *chunk, int loops); + +/** + * Play an audio chunk on a specific channel for a maximum time. + * + * If the specified channel is -1, play on the first free channel (and return + * -1 without playing anything new if no free channel was available). + * + * If a specific channel was requested, and there is a chunk already playing + * there, that chunk will be halted and the new chunk will take its place. + * + * If `loops` is greater than zero, loop the sound that many times. If `loops` + * is -1, loop "infinitely" (~65000 times). + * + * `ticks` specifies the maximum number of milliseconds to play this chunk + * before halting it. If you want the chunk to play until all data has been + * mixed, specify -1. + * + * Note that this function does not block for the number of ticks requested; + * it just schedules the chunk to play and notes the maximum for the mixer to + * manage later, and returns immediately. + * + * \param channel the channel on which to play the new chunk. + * \param chunk the new chunk to play. + * \param loops the number of times the chunk should loop, -1 to loop (not + * actually) infinitely. + * \param ticks the maximum number of milliseconds of this chunk to mix for + * playback. + * \returns which channel was used to play the sound, or -1 if sound could not + * be played. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_PlayChannelTimed(int channel, Mix_Chunk *chunk, int loops, int ticks); + +/** + * Play a new music object. + * + * This will schedule the music object to begin mixing for playback. + * + * There is only ever one music object playing at a time; if this is called + * when another music object is playing, the currently-playing music is halted + * and the new music will replace it. + * + * Please note that if the currently-playing music is in the process of fading + * out (via Mix_FadeOutMusic()), this function will *block* until the fade + * completes. If you need to avoid this, be sure to call Mix_HaltMusic() + * before starting new music. + * + * \param music the new music object to schedule for mixing. + * \param loops the number of loops to play the music for (0 means "play once + * and stop"). + * \returns zero on success, -1 on error. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_PlayMusic(Mix_Music *music, int loops); -/* Fade in music or a channel over "ms" milliseconds, same semantics as the "Play" functions */ +/** + * Play a new music object, fading in the audio. + * + * This will start the new music playing, much like Mix_PlayMusic() will, but + * will start the music playing at silence and fade in to its normal volume + * over the specified number of milliseconds. + * + * If there is already music playing, that music will be halted and the new + * music object will take its place. + * + * If `loops` is greater than zero, loop the music that many times. If `loops` + * is -1, loop "infinitely" (~65000 times). + * + * Fading music will change it's volume progressively, as if Mix_VolumeMusic() + * was called on it (which is to say: you probably shouldn't call + * Mix_VolumeMusic() on fading music). + * + * \param music the new music object to play. + * \param loops the number of times the chunk should loop, -1 to loop (not + * actually) infinitely. + * \param ms the number of milliseconds to spend fading in. + * \returns zero on success, -1 on error. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_FadeInMusic(Mix_Music *music, int loops, int ms); + +/** + * Play a new music object, fading in the audio, from a starting position. + * + * This will start the new music playing, much like Mix_PlayMusic() will, but + * will start the music playing at silence and fade in to its normal volume + * over the specified number of milliseconds. + * + * If there is already music playing, that music will be halted and the new + * music object will take its place. + * + * If `loops` is greater than zero, loop the music that many times. If `loops` + * is -1, loop "infinitely" (~65000 times). + * + * Fading music will change it's volume progressively, as if Mix_VolumeMusic() + * was called on it (which is to say: you probably shouldn't call + * Mix_VolumeMusic() on fading music). + * + * This function allows the caller to start the music playback past the + * beginning of its audio data. You may specify a start position, in seconds, + * and the playback and fade-in will start there instead of with the first + * samples of the music. + * + * An app can specify a `position` of 0.0 to start at the beginning of the + * music (or just call Mix_FadeInMusic() instead). + * + * To convert from milliseconds, divide by 1000.0. + * + * \param music the new music object to play. + * \param loops the number of times the chunk should loop, -1 to loop (not + * actually) infinitely. + * \param ms the number of milliseconds to spend fading in. + * \param position the start position within the music, in seconds, where + * playback should start. + * \returns zero on success, -1 on error. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_FadeInMusicPos(Mix_Music *music, int loops, int ms, double position); -#define Mix_FadeInChannel(channel,chunk,loops,ms) Mix_FadeInChannelTimed(channel,chunk,loops,ms,-1) + +/** + * Play an audio chunk on a specific channel, fading in the audio. + * + * This will start the new sound playing, much like Mix_PlayChannel() will, + * but will start the sound playing at silence and fade in to its normal + * volume over the specified number of milliseconds. + * + * If the specified channel is -1, play on the first free channel (and return + * -1 without playing anything new if no free channel was available). + * + * If a specific channel was requested, and there is a chunk already playing + * there, that chunk will be halted and the new chunk will take its place. + * + * If `loops` is greater than zero, loop the sound that many times. If `loops` + * is -1, loop "infinitely" (~65000 times). + * + * A fading channel will change it's volume progressively, as if Mix_Volume() + * was called on it (which is to say: you probably shouldn't call Mix_Volume() + * on a fading channel). + * + * Note that before SDL_mixer 2.6.0, this function was a macro that called + * Mix_FadeInChannelTimed() with a fourth parameter ("ticks") of -1. This + * function still does the same thing, but promotes it to a proper API + * function. Older binaries linked against a newer SDL_mixer will still call + * Mix_FadeInChannelTimed directly, as they are using the macro, which was + * available since the dawn of time. + * + * \param channel the channel on which to play the new chunk, or -1 to find + * any available. + * \param chunk the new chunk to play. + * \param loops the number of times the chunk should loop, -1 to loop (not + * actually) infinitely. + * \param ms the number of milliseconds to spend fading in. + * \returns which channel was used to play the sound, or -1 if sound could not + * be played. + * + * \since This function is available since SDL_mixer 2.6.0 (and as a macro + * since 2.0.0). + */ +extern DECLSPEC int SDLCALL Mix_FadeInChannel(int channel, Mix_Chunk *chunk, int loops, int ms); + +/** + * Play an audio chunk on a specific channel, fading in the audio, for a + * maximum time. + * + * This will start the new sound playing, much like Mix_PlayChannel() will, + * but will start the sound playing at silence and fade in to its normal + * volume over the specified number of milliseconds. + * + * If the specified channel is -1, play on the first free channel (and return + * -1 without playing anything new if no free channel was available). + * + * If a specific channel was requested, and there is a chunk already playing + * there, that chunk will be halted and the new chunk will take its place. + * + * If `loops` is greater than zero, loop the sound that many times. If `loops` + * is -1, loop "infinitely" (~65000 times). + * + * `ticks` specifies the maximum number of milliseconds to play this chunk + * before halting it. If you want the chunk to play until all data has been + * mixed, specify -1. + * + * Note that this function does not block for the number of ticks requested; + * it just schedules the chunk to play and notes the maximum for the mixer to + * manage later, and returns immediately. + * + * A fading channel will change it's volume progressively, as if Mix_Volume() + * was called on it (which is to say: you probably shouldn't call Mix_Volume() + * on a fading channel). + * + * \param channel the channel on which to play the new chunk, or -1 to find + * any available. + * \param chunk the new chunk to play. + * \param loops the number of times the chunk should loop, -1 to loop (not + * actually) infinitely. + * \param ms the number of milliseconds to spend fading in. + * \param ticks the maximum number of milliseconds of this chunk to mix for + * playback. + * \returns which channel was used to play the sound, or -1 if sound could not + * be played. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_FadeInChannelTimed(int channel, Mix_Chunk *chunk, int loops, int ms, int ticks); -/* Set the volume in the range of 0-128 of a specific channel or chunk. - If the specified channel is -1, set volume for all channels. - Returns the original volume. - If the specified volume is -1, just return the current volume. -*/ +/** + * Set the volume for a specific channel. + * + * The volume must be between 0 (silence) and MIX_MAX_VOLUME (full volume). + * Note that MIX_MAX_VOLUME is 128. Values greater than MIX_MAX_VOLUME are + * clamped to MIX_MAX_VOLUME. + * + * Specifying a negative volume will not change the current volume; as such, + * this can be used to query the current volume without making changes, as + * this function returns the previous (in this case, still-current) value. + * + * If the specified channel is -1, this function sets the volume for all + * channels, and returns _the average_ of all channels' volumes prior to this + * call. + * + * The default volume for a channel is MIX_MAX_VOLUME (no attenuation). + * + * \param channel the channel on set/query the volume on, or -1 for all + * channels. + * \param volume the new volume, between 0 and MIX_MAX_VOLUME, or -1 to query. + * \returns the previous volume. If the specified volume is -1, this returns + * the current volume. If `channel` is -1, this returns the average + * of all channels. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_Volume(int channel, int volume); + +/** + * Set the volume for a specific chunk. + * + * In addition to channels having a volume setting, individual chunks also + * maintain a separate volume. Both values are considered when mixing, so both + * affect the final attenuation of the sound. This lets an app adjust the + * volume for all instances of a sound in addition to specific instances of + * that sound. + * + * The volume must be between 0 (silence) and MIX_MAX_VOLUME (full volume). + * Note that MIX_MAX_VOLUME is 128. Values greater than MIX_MAX_VOLUME are + * clamped to MIX_MAX_VOLUME. + * + * Specifying a negative volume will not change the current volume; as such, + * this can be used to query the current volume without making changes, as + * this function returns the previous (in this case, still-current) value. + * + * The default volume for a chunk is MIX_MAX_VOLUME (no attenuation). + * + * \param chunk the chunk whose volume to adjust. + * \param volume the new volume, between 0 and MIX_MAX_VOLUME, or -1 to query. + * \returns the previous volume. If the specified volume is -1, this returns + * the current volume. If `chunk` is NULL, this returns -1. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_VolumeChunk(Mix_Chunk *chunk, int volume); + +/** + * Set the volume for the music channel. + * + * The volume must be between 0 (silence) and MIX_MAX_VOLUME (full volume). + * Note that MIX_MAX_VOLUME is 128. Values greater than MIX_MAX_VOLUME are + * clamped to MIX_MAX_VOLUME. + * + * Specifying a negative volume will not change the current volume; as such, + * this can be used to query the current volume without making changes, as + * this function returns the previous (in this case, still-current) value. + * + * The default volume for music is MIX_MAX_VOLUME (no attenuation). + * + * \param volume the new volume, between 0 and MIX_MAX_VOLUME, or -1 to query. + * \returns the previous volume. If the specified volume is -1, this returns + * the current volume. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_VolumeMusic(int volume); -/* Halt playing of a particular channel */ +/** + * Query the current volume value for a music object. + * + * \param music the music object to query. + * \returns the music's current volume, between 0 and MIX_MAX_VOLUME (128). + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC int SDLCALL Mix_GetMusicVolume(Mix_Music *music); + +/** + * Set the master volume for all channels. + * + * SDL_mixer keeps a per-channel volume, a per-chunk volume, and a master + * volume, and considers all three when mixing audio. This function sets the + * master volume, which is applied to all playing channels when mixing. + * + * The volume must be between 0 (silence) and MIX_MAX_VOLUME (full volume). + * Note that MIX_MAX_VOLUME is 128. Values greater than MIX_MAX_VOLUME are + * clamped to MIX_MAX_VOLUME. + * + * Specifying a negative volume will not change the current volume; as such, + * this can be used to query the current volume without making changes, as + * this function returns the previous (in this case, still-current) value. + * + * Note that the master volume does not affect any playing music; it is only + * applied when mixing chunks. Use Mix_VolumeMusic() for that.\ + * + * \param volume the new volume, between 0 and MIX_MAX_VOLUME, or -1 to query. + * \returns the previous volume. If the specified volume is -1, this returns + * the current volume. + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC int SDLCALL Mix_MasterVolume(int volume); + +/** + * Halt playing of a particular channel. + * + * This will stop further playback on that channel until a new chunk is + * started there. + * + * Specifying a channel of -1 will halt _all_ channels, except for any playing + * music. + * + * Any halted channels will have any currently-registered effects + * deregistered, and will call any callback specified by Mix_ChannelFinished() + * before this function returns. + * + * You may not specify MAX_CHANNEL_POST for a channel. + * + * \param channel channel to halt, or -1 to halt all channels. + * \returns 0 on success, or -1 on error. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_HaltChannel(int channel); + +/** + * Halt playing of a group of channels by arbitrary tag. + * + * This will stop further playback on all channels with a specific tag, until + * a new chunk is started there. + * + * A tag is an arbitrary number that can be assigned to several mixer + * channels, to form groups of channels. + * + * The default tag for a channel is -1. + * + * Any halted channels will have any currently-registered effects + * deregistered, and will call any callback specified by Mix_ChannelFinished() + * before this function returns. + * + * \param tag an arbitrary value, assigned to channels, to search for. + * \returns zero, whether any channels were halted or not. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_HaltGroup(int tag); + +/** + * Halt playing of the music stream. + * + * This will stop further playback of music until a new music object is + * started there. + * + * Any halted music will call any callback specified by + * Mix_HookMusicFinished() before this function returns. + * + * \returns zero, regardless of whether any music was halted. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_HaltMusic(void); -/* Change the expiration delay for a particular channel. - The sample will stop playing after the 'ticks' milliseconds have elapsed, - or remove the expiration if 'ticks' is -1 -*/ +/** + * Change the expiration delay for a particular channel. + * + * The channel will halt after the 'ticks' milliseconds have elapsed, or + * remove the expiration if 'ticks' is -1. + * + * This overrides the value passed to the fourth parameter of + * Mix_PlayChannelTimed(). + * + * Specifying a channel of -1 will set an expiration for _all_ channels. + * + * Any halted channels will have any currently-registered effects + * deregistered, and will call any callback specified by Mix_ChannelFinished() + * once the halt occurs. + * + * Note that this function does not block for the number of ticks requested; + * it just schedules the chunk to expire and notes the time for the mixer to + * manage later, and returns immediately. + * + * \param channel the channel to change the expiration time on. + * \param ticks number of milliseconds from now to let channel play before + * halting, -1 to not halt. + * \returns the number of channels that changed expirations. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_ExpireChannel(int channel, int ticks); -/* Halt a channel, fading it out progressively till it's silent - The ms parameter indicates the number of milliseconds the fading - will take. +/** + * Halt a channel after fading it out for a specified time. + * + * This will begin a channel fading from its current volume to silence over + * `ms` milliseconds. After that time, the channel is halted. + * + * Any halted channels will have any currently-registered effects + * deregistered, and will call any callback specified by Mix_ChannelFinished() + * once the halt occurs. + * + * A fading channel will change it's volume progressively, as if Mix_Volume() + * was called on it (which is to say: you probably shouldn't call Mix_Volume() + * on a fading channel). + * + * Note that this function does not block for the number of milliseconds + * requested; it just schedules the chunk to fade and notes the time for the + * mixer to manage later, and returns immediately. + * + * \param which the channel to fade out. + * \param ms number of milliseconds to fade before halting the channel. + * \returns the number of channels scheduled to fade. + * + * \since This function is available since SDL_mixer 2.0.0. */ extern DECLSPEC int SDLCALL Mix_FadeOutChannel(int which, int ms); + +/** + * Halt a playing group of channels by arbitrary tag, after fading them out + * for a specified time. + * + * This will begin fading a group of channels with a specific tag from their + * current volumes to silence over `ms` milliseconds. After that time, those + * channels are halted. + * + * A tag is an arbitrary number that can be assigned to several mixer + * channels, to form groups of channels. + * + * The default tag for a channel is -1. + * + * Any halted channels will have any currently-registered effects + * deregistered, and will call any callback specified by Mix_ChannelFinished() + * once the halt occurs. + * + * A fading channel will change it's volume progressively, as if Mix_Volume() + * was called on it (which is to say: you probably shouldn't call Mix_Volume() + * on a fading channel). + * + * Note that this function does not block for the number of milliseconds + * requested; it just schedules the group to fade and notes the time for the + * mixer to manage later, and returns immediately. + * + * \param tag an arbitrary value, assigned to channels, to search for. + * \param ms number of milliseconds to fade before halting the group. + * \returns the number of channels that were scheduled for fading. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_FadeOutGroup(int tag, int ms); + +/** + * Halt the music stream after fading it out for a specified time. + * + * This will begin the music fading from its current volume to silence over + * `ms` milliseconds. After that time, the music is halted. + * + * Any halted music will call any callback specified by + * Mix_HookMusicFinished() once the halt occurs. + * + * Fading music will change it's volume progressively, as if Mix_VolumeMusic() + * was called on it (which is to say: you probably shouldn't call + * Mix_VolumeMusic() on a fading channel). + * + * Note that this function does not block for the number of milliseconds + * requested; it just schedules the music to fade and notes the time for the + * mixer to manage later, and returns immediately. + * + * \param ms number of milliseconds to fade before halting the channel. + * \returns non-zero if music was scheduled to fade, zero otherwise. If no + * music is currently playing, this returns zero. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_FadeOutMusic(int ms); -/* Query the fading status of a channel */ +/** + * Query the fading status of the music stream. + * + * This reports one of three values: + * + * - `MIX_NO_FADING` + * - `MIX_FADING_OUT` + * - `MIX_FADING_IN` + * + * If music is not currently playing, this returns `MIX_NO_FADING`. + * + * \returns the current fading status of the music stream. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC Mix_Fading SDLCALL Mix_FadingMusic(void); + +/** + * Query the fading status of a channel. + * + * This reports one of three values: + * + * - `MIX_NO_FADING` + * - `MIX_FADING_OUT` + * - `MIX_FADING_IN` + * + * If nothing is currently playing on the channel, or an invalid channel is + * specified, this returns `MIX_NO_FADING`. + * + * You may not specify MAX_CHANNEL_POST for a channel. + * + * You may not specify -1 for all channels; only individual channels may be + * queried. + * + * \param which the channel to query. + * \returns the current fading status of the channel. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC Mix_Fading SDLCALL Mix_FadingChannel(int which); -/* Pause/Resume a particular channel */ +/** + * Pause a particular channel. + * + * Pausing a channel will prevent further playback of the assigned chunk but + * will maintain the chunk's current mixing position. When resumed, this + * channel will continue to mix the chunk where it left off. + * + * A paused channel can be resumed by calling Mix_Resume(). + * + * A paused channel with an expiration will not expire while paused (the + * expiration countdown will be adjusted once resumed). + * + * It is legal to halt a paused channel. Playing a new chunk on a paused + * channel will replace the current chunk and unpause the channel. + * + * Specifying a channel of -1 will pause _all_ channels. Any music is + * unaffected. + * + * You may not specify MAX_CHANNEL_POST for a channel. + * + * \param channel the channel to pause, or -1 to pause all channels. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC void SDLCALL Mix_Pause(int channel); + +/** + * Resume a particular channel. + * + * It is legal to resume an unpaused or invalid channel; it causes no effect + * and reports no error. + * + * If the paused channel has an expiration, its expiration countdown resumes + * now, as well. + * + * Specifying a channel of -1 will resume _all_ paused channels. Any music is + * unaffected. + * + * \param channel the channel to resume, or -1 to resume all paused channels. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC void SDLCALL Mix_Resume(int channel); + +/** + * Query whether a particular channel is paused. + * + * If an invalid channel is specified, this function returns zero. + * + * \param channel the channel to query, or -1 to query all channels. + * \return 1 if channel paused, 0 otherwise. If `channel` is -1, returns the + * number of paused channels. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_Paused(int channel); -/* Pause/Resume the music stream */ +/** + * Pause the music stream. + * + * Pausing the music stream will prevent further playback of the assigned + * music object, but will maintain the object's current mixing position. When + * resumed, this channel will continue to mix the music where it left off. + * + * Paused music can be resumed by calling Mix_ResumeMusic(). + * + * It is legal to halt paused music. Playing a new music object when music is + * paused will replace the current music and unpause the music stream. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC void SDLCALL Mix_PauseMusic(void); + +/** + * Resume the music stream. + * + * It is legal to resume an unpaused music stream; it causes no effect and + * reports no error. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC void SDLCALL Mix_ResumeMusic(void); + +/** + * Rewind the music stream. + * + * This causes the currently-playing music to start mixing from the beginning + * of the music, as if it were just started. + * + * It's a legal no-op to rewind the music stream when not playing. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC void SDLCALL Mix_RewindMusic(void); + +/** + * Query whether the music stream is paused. + * + * \return 1 if music is paused, 0 otherwise. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_PauseMusic + * \sa Mix_ResumeMusic + */ extern DECLSPEC int SDLCALL Mix_PausedMusic(void); -/* Set the current position in the music stream. - This returns 0 if successful, or -1 if it failed or isn't implemented. - This function is only implemented for MOD music formats (set pattern - order number) and for OGG, FLAC, MP3_MAD, MP3_MPG and MODPLUG music - (set position in seconds), at the moment. -*/ +/** + * Jump to a given order in mod music. + * + * This only applies to MOD music formats. + * + * \param order order. + * \returns 0 if successful, or -1 if failed or isn't implemented. + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC int SDLCALL Mix_ModMusicJumpToOrder(int order); + +/** + * Start a track in music object. + * + * This only applies to GME music formats. + * + * \param music the music object. + * \param track the track number to play. 0 is the first track. + * \returns 0 if successful, or -1 if failed or isn't implemented. + * + * \since This function is available since SDL_mixer 2.8.0. + */ +extern DECLSPEC int SDLCALL Mix_StartTrack(Mix_Music *music, int track); + +/** + * Get number of tracks in music object. + * + * This only applies to GME music formats. + * + * \param music the music object. + * \returns number of tracks if successful, or -1 if failed or isn't + * implemented. + * + * \since This function is available since SDL_mixer 2.8.0. + */ +extern DECLSPEC int SDLCALL Mix_GetNumTracks(Mix_Music *music); + +/** + * Set the current position in the music stream, in seconds. + * + * To convert from milliseconds, divide by 1000.0. + * + * This function is only implemented for MOD music formats (set pattern order + * number) and for WAV, OGG, FLAC, MP3, and MODPLUG music at the moment. + * + * \param position the new position, in seconds (as a double). + * \returns 0 if successful, or -1 if it failed or not implemented. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_SetMusicPosition(double position); -/* Check the status of a specific channel. - If the specified channel is -1, check all channels. -*/ +/** + * Get the time current position of music stream, in seconds. + * + * To convert to milliseconds, multiply by 1000.0. + * + * \param music the music object to query. + * \returns -1.0 if this feature is not supported for some codec. + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC double SDLCALL Mix_GetMusicPosition(Mix_Music *music); + +/** + * Get a music object's duration, in seconds. + * + * To convert to milliseconds, multiply by 1000.0. + * + * If NULL is passed, returns duration of current playing music. + * + * \param music the music object to query. + * \returns music duration in seconds, or -1.0 on error. + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC double SDLCALL Mix_MusicDuration(Mix_Music *music); + +/** + * Get the loop start time position of music stream, in seconds. + * + * To convert to milliseconds, multiply by 1000.0. + * + * If NULL is passed, returns duration of current playing music. + * + * \param music the music object to query. + * \returns -1.0 if this feature is not used for this music or not supported + * for some codec. + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC double SDLCALL Mix_GetMusicLoopStartTime(Mix_Music *music); + +/** + * Get the loop end time position of music stream, in seconds. + * + * To convert to milliseconds, multiply by 1000.0. + * + * If NULL is passed, returns duration of current playing music. + * + * \param music the music object to query. + * \returns -1.0 if this feature is not used for this music or not supported + * for some codec. + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC double SDLCALL Mix_GetMusicLoopEndTime(Mix_Music *music); + +/** + * Get the loop time length of music stream, in seconds. + * + * To convert to milliseconds, multiply by 1000.0. + * + * If NULL is passed, returns duration of current playing music. + * + * \param music the music object to query. + * \returns -1.0 if this feature is not used for this music or not supported + * for some codec. + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC double SDLCALL Mix_GetMusicLoopLengthTime(Mix_Music *music); + +/** + * Check the playing status of a specific channel. + * + * If the channel is currently playing, this function returns 1. Otherwise it + * returns 0. + * + * If the specified channel is -1, all channels are checked, and this function + * returns the number of channels currently playing. + * + * You may not specify MAX_CHANNEL_POST for a channel. + * + * Paused channels are treated as playing, even though they are not currently + * making forward progress in mixing. + * + * \param channel channel. + * \returns non-zero if channel is playing, zero otherwise. If `channel` is + * -1, return the total number of channel playings. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_Playing(int channel); + +/** + * Check the playing status of the music stream. + * + * If music is currently playing, this function returns 1. Otherwise it + * returns 0. + * + * Paused music is treated as playing, even though it is not currently making + * forward progress in mixing. + * + * \returns non-zero if music is playing, zero otherwise. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_PlayingMusic(void); -/* Stop music and set external music playback command */ +/** + * Run an external command as the music stream. + * + * This halts any currently-playing music, and next time the music stream is + * played, SDL_mixer will spawn a process using the command line specified in + * `command`. This command is not subject to shell expansion, and beyond some + * basic splitting up of arguments, is passed to execvp() on most platforms, + * not system(). + * + * The command is responsible for generating sound; it is NOT mixed by + * SDL_mixer! SDL_mixer will kill the child process if asked to halt the + * music, but otherwise does not have any control over what the process does. + * + * You are strongly encouraged not to use this function without an extremely + * good reason. + * + * \param command command. + * \returns 0 if successful, -1 on error. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_SetMusicCMD(const char *command); -/* Synchro value is set by MikMod from modules while playing */ +/** + * This function does nothing, do not use. + * + * This was probably meant to expose a feature, but no codecs support it, so + * it only remains for binary compatibility. + * + * Calling this function is a legal no-op that returns -1. + * + * \param value this parameter is ignored. + * \returns -1. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_SetSynchroValue(int value); + +/** + * This function does nothing, do not use. + * + * This was probably meant to expose a feature, but no codecs support it, so + * it only remains for binary compatibility. + * + * Calling this function is a legal no-op that returns -1. + * + * \returns -1. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_GetSynchroValue(void); -/* Set/Get/Iterate SoundFonts paths to use by supported MIDI backends */ +/** + * Set SoundFonts paths to use by supported MIDI backends. + * + * You may specify multiple paths in a single string by separating them with + * semicolons; they will be searched in the order listed. + * + * This function replaces any previously-specified paths. + * + * Passing a NULL path will remove any previously-specified paths. + * + * Note that unlike most SDL and SDL_mixer functions, this function returns + * zero if there's an error, not on success. We apologize for the API design + * inconsistency here. + * + * \param paths Paths on the filesystem where SoundFonts are available, + * separated by semicolons. + * \returns 1 if successful, 0 on error (out of memory). + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC int SDLCALL Mix_SetSoundFonts(const char *paths); -extern DECLSPEC const char* SDLCALL Mix_GetSoundFonts(void); -extern DECLSPEC int SDLCALL Mix_EachSoundFont(int (SDLCALL *function)(const char*, void*), void *data); -/* Get the Mix_Chunk currently associated with a mixer channel - Returns NULL if it's an invalid channel, or there's no chunk associated. -*/ +/** + * Get SoundFonts paths to use by supported MIDI backends. + * + * There are several factors that determine what will be reported by this + * function: + * + * - If the boolean _SDL hint_ `"SDL_FORCE_SOUNDFONTS"` is set, AND the + * `"SDL_SOUNDFONTS"` _environment variable_ is also set, this function will + * return that environment variable regardless of whether + * Mix_SetSoundFounts() was ever called. + * - Otherwise, if Mix_SetSoundFonts() was successfully called with a non-NULL + * path, this function will return the string passed to that function. + * - Otherwise, if the `"SDL_SOUNDFONTS"` variable is set, this function will + * return that environment variable. + * - Otherwise, this function will search some common locations on the + * filesystem, and if it finds a SoundFont there, it will return that. + * - Failing everything else, this function returns NULL. + * + * This returns a pointer to internal (possibly read-only) memory, and it + * should not be modified or free'd by the caller. + * + * \returns semicolon-separated list of sound font paths. + * + * \since This function is available since SDL_mixer 2.0.0. + */ +extern DECLSPEC const char* SDLCALL Mix_GetSoundFonts(void); + +typedef int (SDLCALL *Mix_EachSoundFontCallback)(const char*, void*); + +/** + * Iterate SoundFonts paths to use by supported MIDI backends. + * + * This function will take the string reported by Mix_GetSoundFonts(), split + * it up into separate paths, as delimited by semicolons in the string, and + * call a callback function for each separate path. + * + * If there are no paths available, this returns 0 without calling the + * callback at all. + * + * If the callback returns non-zero, this function stops iterating and returns + * non-zero. If the callback returns 0, this function will continue iterating, + * calling the callback again for further paths. If the callback never returns + * 1, this function returns 0, so this can be used to decide if an available + * soundfont is acceptable for use. + * + * \param function the callback function to call once per path. + * \param data a pointer to pass to the callback for its own personal use. + * \returns non-zero if callback ever returned non-zero, 0 on error or the + * callback never returned non-zero. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_GetSoundFonts + */ +extern DECLSPEC int SDLCALL Mix_EachSoundFont(Mix_EachSoundFontCallback function, void *data); + +/** + * Set full path of the Timidity config file. + * + * For example, "/etc/timidity.cfg" + * + * This is obviously only useful if SDL_mixer is using Timidity internally to + * play MIDI files. + * + * \param path path to a Timidity config file. + * \returns 1 if successful, 0 on error. + * + * \since This function is available since SDL_mixer 2.6.0. + */ +extern DECLSPEC int SDLCALL Mix_SetTimidityCfg(const char *path); + +/** + * Get full path of a previously-specified Timidity config file. + * + * For example, "/etc/timidity.cfg" + * + * If a path has never been specified, this returns NULL. + * + * This returns a pointer to internal memory, and it should not be modified or + * free'd by the caller. + * + * \returns the previously-specified path, or NULL if not set. + * + * \since This function is available since SDL_mixer 2.6.0. + * + * \sa Mix_SetTimidityCfg + */ +extern DECLSPEC const char* SDLCALL Mix_GetTimidityCfg(void); + +/** + * Get the Mix_Chunk currently associated with a mixer channel. + * + * You may not specify MAX_CHANNEL_POST or -1 for a channel. + * + * \param channel the channel to query. + * \returns the associated chunk, if any, or NULL if it's an invalid channel. + * + * \since This function is available since SDL_mixer 2.0.0. + */ extern DECLSPEC Mix_Chunk * SDLCALL Mix_GetChunk(int channel); -/* Close the mixer, halting all playing audio */ +/** + * Close the mixer, halting all playing audio. + * + * Any halted channels will have any currently-registered effects + * deregistered, and will call any callback specified by Mix_ChannelFinished() + * before this function returns. + * + * Any halted music will call any callback specified by + * Mix_HookMusicFinished() before this function returns. + * + * Do not start any new audio playing during callbacks in this function. + * + * This will close the audio device. Attempting to play new audio after this + * function returns will fail, until another successful call to + * Mix_OpenAudio() or Mix_OpenAudioDevice(). + * + * Note that (unlike Mix_OpenAudio optionally calling SDL_Init(SDL_INIT_AUDIO) + * on the app's behalf), this will _not_ deinitialize the SDL audio subsystem + * in any case. At some point after calling this function and Mix_Quit(), some + * part of the application should be responsible for calling SDL_Quit() to + * deinitialize all of SDL, including its audio subsystem. + * + * This function should be the last thing you call in SDL_mixer before + * Mix_Quit(). However, the following notes apply if you don't follow this + * advice: + * + * Note that this will not free any loaded chunks or music; you should dispose + * of those resources separately. It is probably poor form to dispose of them + * _after_ this function, but it is safe to call Mix_FreeChunk() and + * Mix_FreeMusic() after closing the device. + * + * Note that any chunks or music you don't free may or may not work if you + * call Mix_OpenAudio again, as the audio device may be in a new format and + * the existing chunks will not be converted to match. + * + * \since This function is available since SDL_mixer 2.0.0. + * + * \sa Mix_Quit + */ extern DECLSPEC void SDLCALL Mix_CloseAudio(void); /* We'll use SDL for reporting errors */ + +/** + * Report SDL_mixer errors + * + * \sa Mix_GetError + */ #define Mix_SetError SDL_SetError + +/** + * Get last SDL_mixer error + * + * \sa Mix_SetError + */ #define Mix_GetError SDL_GetError + +/** + * Clear last SDL_mixer error + * + * \sa Mix_SetError + */ #define Mix_ClearError SDL_ClearError +/** + * Set OutOfMemory error + */ +#define Mix_OutOfMemory SDL_OutOfMemory + /* Ends C function definitions when using C++ */ #ifdef __cplusplus } #endif + #include "close_code.h" #endif /* SDL_MIXER_H_ */ - -/* vi: set ts=4 sw=4 expandtab: */ diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/FindFLAC.cmake b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/FindFLAC.cmake new file mode 100644 index 000000000..d471fecfb --- /dev/null +++ b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/FindFLAC.cmake @@ -0,0 +1,44 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_FLAC QUIET flac) + +find_library(FLAC_LIBRARY + NAMES FLAC + HINTS ${PC_FLAC_LIBDIR} +) + +find_path(FLAC_INCLUDE_PATH + NAMES FLAC/all.h + HINTS ${PC_FLAC_INCLUDEDIR} +) + +if(PC_FLAC_FOUND) + get_flags_from_pkg_config("${FLAC_LIBRARY}" "PC_FLAC" "_flac") +endif() + +set(FLAC_COMPILE_OPTIONS "${_flac_compile_options}" CACHE STRING "Extra compile options of FLAC") + +set(FLAC_LINK_LIBRARIES "${_flac_link_libraries}" CACHE STRING "Extra link libraries of FLAC") + +set(FLAC_LINK_OPTIONS "${_flac_link_options}" CACHE STRING "Extra link flags of FLAC") + +set(FLAC_LINK_DIRECTORIES "${_flac_link_directories}" CACHE PATH "Extra link directories of FLAC") + +find_package_handle_standard_args(FLAC + REQUIRED_VARS FLAC_LIBRARY FLAC_INCLUDE_PATH +) + +if(FLAC_FOUND) + if(NOT TARGET FLAC::FLAC) + add_library(FLAC::FLAC UNKNOWN IMPORTED) + set_target_properties(FLAC::FLAC PROPERTIES + IMPORTED_LOCATION "${FLAC_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${FLAC_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${FLAC_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${FLAC_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${FLAC_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${FLAC_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/FindFluidSynth.cmake b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/FindFluidSynth.cmake new file mode 100644 index 000000000..4e97ad012 --- /dev/null +++ b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/FindFluidSynth.cmake @@ -0,0 +1,44 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_FLUIDSYNTH QUIET fluidsynth) + +find_library(FluidSynth_LIBRARY + NAMES fluidsynth libfluidsynth + HINTS ${PC_FLUIDSYNTH_LIBDIR} +) + +find_path(FluidSynth_INCLUDE_PATH + NAMES fluidsynth.h + HINTS ${PC_FLUIDSYNTH_INCLUDEDIR} +) + +if(PC_FLUIDSYNTH_FOUND) + get_flags_from_pkg_config("${FluidSynth_LIBRARY}" "PC_FLUIDSYNTH" "_fluidsynth") +endif() + +set(FluidSynth_COMPILE_OPTIONS "${_fluidsynth_compile_options}" CACHE STRING "Extra compile options of FluidSynth") + +set(FluidSynth_LINK_LIBRARIES "${_fluidsynth_link_libraries}" CACHE STRING "Extra link libraries of FluidSynth") + +set(FluidSynth_LINK_OPTIONS "${_fluidsynth_link_options}" CACHE STRING "Extra link flags of FluidSynth") + +set(FluidSynth_LINK_DIRECTORIES "${_fluidsynth_link_directories}" CACHE PATH "Extra link directories of FluidSynth") + +find_package_handle_standard_args(FluidSynth + REQUIRED_VARS FluidSynth_LIBRARY FluidSynth_INCLUDE_PATH +) + +if(FluidSynth_FOUND) + if(NOT TARGET FluidSynth::libfluidsynth) + add_library(FluidSynth::libfluidsynth UNKNOWN IMPORTED) + set_target_properties(FluidSynth::libfluidsynth PROPERTIES + IMPORTED_LOCATION "${FluidSynth_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${FluidSynth_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${FluidSynth_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${FluidSynth_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${FluidSynth_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${FluidSynth_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/FindOpusFile.cmake b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/FindOpusFile.cmake new file mode 100644 index 000000000..93be59938 --- /dev/null +++ b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/FindOpusFile.cmake @@ -0,0 +1,49 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_OPUSFILE QUIET opusfile) + +find_library(OpusFile_LIBRARY + NAMES opusfile + HINTS ${PC_OPUSFILE_LIBDIR} +) + +find_path(OpusFile_INCLUDE_PATH + NAMES opusfile.h + PATH_SUFFIXES opus + HINTS ${PC_OPUSFILE_INCLUDEDIR} +) + +if(PC_OPUSFILE_FOUND) + get_flags_from_pkg_config("${OpusFile_LIBRARY}" "PC_OPUSFILE" "_opusfile") +endif() + +set(OpusFile_COMPILE_OPTIONS "${_opusfile_compile_options}" CACHE STRING "Extra compile options of opusfile") + +set(OpusFile_LINK_LIBRARIES "${_opusfile_link_libraries}" CACHE STRING "Extra link libraries of opusfile") + +set(OpusFile_LINK_OPTIONS "${_opusfile_link_options}" CACHE STRING "Extra link flags of opusfile") + +set(OpusFile_LINK_DIRECTORIES "${_opusfile_link_directories}" CACHE PATH "Extra link directories of opusfile") + +find_package_handle_standard_args(OpusFile + REQUIRED_VARS OpusFile_LIBRARY OpusFile_INCLUDE_PATH +) + +if (OpusFile_FOUND) + set(OpusFile_dirs ${OpusFile_INCLUDE_PATH}) + if(EXISTS "${OpusFile_INCLUDE_PATH}/opus") + list(APPEND OpusFile_dirs "${OpusFile_INCLUDE_PATH}/opus") + endif() + if (NOT TARGET OpusFile::opusfile) + add_library(OpusFile::opusfile UNKNOWN IMPORTED) + set_target_properties(OpusFile::opusfile PROPERTIES + IMPORTED_LOCATION "${OpusFile_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${OpusFile_dirs}" + INTERFACE_COMPILE_OPTIONS "${OpusFile_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${OpusFile_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${OpusFile_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${OpusFile_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/FindVorbis.cmake b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/FindVorbis.cmake new file mode 100644 index 000000000..7ebcc5c3f --- /dev/null +++ b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/FindVorbis.cmake @@ -0,0 +1,44 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_VORBIS QUIET vorbisfile) + +find_library(Vorbis_vorbisfile_LIBRARY + NAMES vorbisfile + HINTS ${PC_VORBIS_LIBDIR} +) + +find_path(Vorbis_vorbisfile_INCLUDE_PATH + NAMES vorbis/vorbisfile.h + HINTS ${PC_VORBIS_INCLUDEDIR} +) + +if(PC_VORBIS_FOUND) + get_flags_from_pkg_config("${Vorbis_vorbisfile_LIBRARY}" "PC_VORBIS" "_vorbisfile") +endif() + +set(Vorbis_vorbisfile_COMPILE_OPTIONS "${_vorbisfile_compile_options}" CACHE STRING "Extra compile options of vorbisfile") + +set(Vorbis_vorbisfile_LINK_LIBRARIES "${_vorbisfile_link_libraries}" CACHE STRING "Extra link libraries of vorbisfile") + +set(Vorbis_vorbisfile_LINK_OPTIONS "${_vorbisfile_link_options}" CACHE STRING "Extra link flags of vorbisfile") + +set(Vorbis_vorbisfile_LINK_DIRECTORIES "${_vorbisfile_link_directories}" CACHE PATH "Extra link directories of vorbisfile") + +find_package_handle_standard_args(Vorbis + REQUIRED_VARS Vorbis_vorbisfile_LIBRARY Vorbis_vorbisfile_INCLUDE_PATH +) + +if (Vorbis_FOUND) + if (NOT TARGET Vorbis::vorbisfile) + add_library(Vorbis::vorbisfile UNKNOWN IMPORTED) + set_target_properties(Vorbis::vorbisfile PROPERTIES + IMPORTED_LOCATION "${Vorbis_vorbisfile_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${Vorbis_vorbisfile_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${Vorbis_vorbisfile_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${Vorbis_vorbisfile_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${Vorbis_vorbisfile_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${Vorbis_vorbisfile_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findgme.cmake b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findgme.cmake new file mode 100644 index 000000000..e47c7ed0f --- /dev/null +++ b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findgme.cmake @@ -0,0 +1,48 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_GME QUIET libgme) + +find_library(gme_LIBRARY + NAMES gme + HINTS ${PC_GME_LIBDIR} +) + +find_path(gme_INCLUDE_PATH + NAMES gme/gme.h + HINTS ${PC_GME_INCLUDEDIR} +) + +if(PC_GME_FOUND) + get_flags_from_pkg_config("${gme_LIBRARY}" "PC_GME" "_gme") +endif() + +set(gme_COMPILE_OPTIONS "${_gme_compile_options}" CACHE STRING "Extra compile options of gme") + +set(gme_LINK_LIBRARIES "${_gme_link_libraries}" CACHE STRING "Extra link libraries of gme") + +set(gme_LINK_OPTIONS "${_gme_link_options}" CACHE STRING "Extra link flags of gme") + +set(gme_LINK_DIRECTORIES "${_gme_link_directories}" CACHE PATH "Extra link directories of gme") + +find_package_handle_standard_args(gme + REQUIRED_VARS gme_LIBRARY gme_INCLUDE_PATH +) + +if(gme_FOUND) + set(gme_dirs ${gme_INCLUDE_PATH}) + if(EXISTS "${gme_INCLUDE_PATH}/gme") + list(APPEND gme_dirs "${gme_INCLUDE_PATH}/gme") + endif() + if(NOT TARGET gme::gme) + add_library(gme::gme UNKNOWN IMPORTED) + set_target_properties(gme::gme PROPERTIES + IMPORTED_LOCATION "${gme_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${gme_dirs}" + INTERFACE_COMPILE_OPTIONS "${gme_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${gme_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${gme_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${gme_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findlibxmp-lite.cmake b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findlibxmp-lite.cmake new file mode 100644 index 000000000..a9b6018be --- /dev/null +++ b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findlibxmp-lite.cmake @@ -0,0 +1,45 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_XMPLITE QUIET libxmp-lite) + +find_library(libxmp_lite_LIBRARY + NAMES xmp-lite libxmp-lite + HINTS ${PC_XMPLITE_LIBDIR} +) + +find_path(libxmp_lite_INCLUDE_PATH + NAMES xmp.h + PATH_SUFFIXES libxmp-lite + HINTS ${PC_XMPLITE_INCLUDEDIR} +) + +if(PC_XMPLITE_FOUND) + get_flags_from_pkg_config("${libxmp_lite_LIBRARY}" "PC_XMPLITE" "_libxmp_lite") +endif() + +set(libxmp_lite_COMPILE_OPTIONS "${_libxmp_lite_compile_options}" CACHE STRING "Extra compile options of libxmp_lite") + +set(libxmp_lite_LINK_LIBRARIES "${_libxmp_lite_link_libraries}" CACHE STRING "Extra link libraries of libxmp_lite") + +set(libxmp_lite_LINK_OPTIONS "${_libxmp_lite_link_options}" CACHE STRING "Extra link flags of libxmp_lite") + +set(libxmp_lite_LINK_DIRECTORIES "${_libxmp_lite_link_directories}" CACHE PATH "Extra link directories of libxmp_lite") + +find_package_handle_standard_args(libxmp-lite + REQUIRED_VARS libxmp_lite_LIBRARY libxmp_lite_INCLUDE_PATH +) + +if(libxmp-lite_FOUND) + if(NOT TARGET libxmp-lite::libxmp-lite) + add_library(libxmp-lite::libxmp-lite UNKNOWN IMPORTED) + set_target_properties(libxmp-lite::libxmp-lite PROPERTIES + IMPORTED_LOCATION "${libxmp_lite_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${libxmp_lite_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${libxmp_lite_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${libxmp_lite_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${libxmp_lite_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${libxmp_lite_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findlibxmp.cmake b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findlibxmp.cmake new file mode 100644 index 000000000..a4bb175ea --- /dev/null +++ b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findlibxmp.cmake @@ -0,0 +1,44 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_XMP QUIET libxmp) + +find_library(libxmp_LIBRARY + NAMES xmp + HINTS ${PC_XMP_LIBDIR} +) + +find_path(libxmp_INCLUDE_PATH + NAMES xmp.h + HINTS ${PC_XMP_INCLUDEDIR} +) + +if(PC_XMP_FOUND) + get_flags_from_pkg_config("${libxmp_LIBRARY}" "PC_XMP" "_libxmp") +endif() + +set(libxmp_COMPILE_OPTIONS "${_libxmp_compile_options}" CACHE STRING "Extra compile options of libxmp") + +set(libxmp_LINK_LIBRARIES "${_libxmp_link_libraries}" CACHE STRING "Extra link libraries of libxmp") + +set(libxmp_LINK_OPTIONS "${_libxmp_link_options}" CACHE STRING "Extra link flags of libxmp") + +set(libxmp_LINK_DIRECTORIES "${_libxmp_link_directories}" CACHE PATH "Extra link flags of libxmp") + +find_package_handle_standard_args(libxmp + REQUIRED_VARS libxmp_LIBRARY libxmp_INCLUDE_PATH +) + +if(libxmp_FOUND) + if(NOT TARGET libxmp::libxmp) + add_library(libxmp::libxmp UNKNOWN IMPORTED) + set_target_properties(libxmp::libxmp PROPERTIES + IMPORTED_LOCATION "${libxmp_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${libxmp_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${libxmp_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${libxmp_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${libxmp_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${libxmp_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findmodplug.cmake b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findmodplug.cmake new file mode 100644 index 000000000..af1e82ea3 --- /dev/null +++ b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findmodplug.cmake @@ -0,0 +1,43 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_MODPLUG QUIET libmodplug) + +find_library(modplug_LIBRARY + NAMES modplug +) + +find_path(modplug_INCLUDE_PATH + NAMES libmodplug/modplug.h +) + +if(PC_MODPLUG_FOUND) + get_flags_from_pkg_config("${modplug_LIBRARY}" "PC_MODPLUG" "_modplug") +endif() + +set(modplug_COMPILE_OPTIONS "${_modplug_compile_options}" CACHE STRING "Extra compile options of modplug") + +set(modplug_LINK_LIBRARIES "${_modplug_link_libraries}" CACHE STRING "Extra link libraries of modplug") + +set(modplug_LINK_OPTIONS "${_modplug_link_options}" CACHE STRING "Extra link flags of modplug") + +set(modplug_LINK_DIRECTORIES "${_modplug_link_directories}" CACHE PATH "Extra link directories of modplug") + +find_package_handle_standard_args(modplug + REQUIRED_VARS modplug_LIBRARY modplug_INCLUDE_PATH +) + +if (modplug_FOUND) + if (NOT TARGET modplug::modplug) + add_library(modplug::modplug UNKNOWN IMPORTED) + set_target_properties(modplug::modplug PROPERTIES + IMPORTED_LINK_INTERFACE_LANGUAGES "CXX" + IMPORTED_LOCATION "${modplug_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${modplug_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${modplug_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${modplug_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${modplug_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${modplug_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findmpg123.cmake b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findmpg123.cmake new file mode 100644 index 000000000..ae4e54df1 --- /dev/null +++ b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findmpg123.cmake @@ -0,0 +1,44 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_MPG123 QUIET libmpg123) + +find_library(mpg123_LIBRARY + NAMES mpg123 + HINTS ${PC_MPG123_LIBDIR} +) + +find_path(mpg123_INCLUDE_PATH + NAMES mpg123.h + HINTS ${PC_MPG123_INCLUDEDIR} +) + +if(PC_MPG123_FOUND) + get_flags_from_pkg_config("${mpg123_LIBRARY}" "PC_MPG123" "_mpg123") +endif() + +set(mpg123_COMPILE_OPTIONS "${_mpg123_compile_options}" CACHE STRING "Extra compile options of mpg123") + +set(mpg123_LINK_LIBRARIES "${_mpg123_link_libraries}" CACHE STRING "Extra link libraries of mpg123") + +set(mpg123_LINK_OPTIONS "${_mpg123_link_options}" CACHE STRING "Extra link flags of mpg123") + +set(mpg123_LINK_DIRECTORIES "${_mpg123_link_directories}" CACHE PATH "Extra link directories of mpg123") + +find_package_handle_standard_args(mpg123 + REQUIRED_VARS mpg123_LIBRARY mpg123_INCLUDE_PATH +) + +if(mpg123_FOUND) + if(NOT TARGET MPG123::libmpg123) + add_library(MPG123::libmpg123 UNKNOWN IMPORTED) + set_target_properties(MPG123::libmpg123 PROPERTIES + IMPORTED_LOCATION "${mpg123_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${mpg123_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${mpg123_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${mpg123_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${mpg123_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${mpg123_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findtremor.cmake b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findtremor.cmake new file mode 100644 index 000000000..a3bc256a0 --- /dev/null +++ b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findtremor.cmake @@ -0,0 +1,44 @@ +include(FindPackageHandleStandardArgs) + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_TREMOR QUIET vorbisidec) + +find_library(tremor_LIBRARY + NAMES vorbisidec libvorbisidec + HINTS ${PC_TREMOR_LIBDIR} +) + +find_path(tremor_INCLUDE_PATH + NAMES tremor/ivorbisfile.h + HINTS ${PC_TREMOR_INCLUDEDIR} +) + +if(PC_TREMOR_FOUND) + get_flags_from_pkg_config("${tremor_LIBRARY}" "PC_TREMOR" "_tremor") +endif() + +set(tremor_COMPILE_OPTIONS "${_tremor_compile_options}" CACHE STRING "Extra compile options of vorbis") + +set(tremor_LINK_LIBRARIES "${_tremor_link_libraries}" CACHE STRING "Extra link libraries of vorbis") + +set(tremor_LINK_OPTIONS "${_tremor_link_options}" CACHE STRING "Extra link flags of vorbis") + +set(tremor_LINK_DIRECTORIES "${_tremor_link_directories}" CACHE PATH "Extra link directories of vorbis") + +find_package_handle_standard_args(tremor + REQUIRED_VARS tremor_LIBRARY tremor_INCLUDE_PATH +) + +if (tremor_FOUND) + if (NOT TARGET tremor::tremor) + add_library(tremor::tremor UNKNOWN IMPORTED) + set_target_properties(tremor::tremor PROPERTIES + IMPORTED_LOCATION "${tremor_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${tremor_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${tremor_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${tremor_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${tremor_LINK_OPTIONS}" + INTERFACE_LINK_DIRECTORIES "${tremor_LINK_DIRECTORIES}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findwavpack.cmake b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findwavpack.cmake new file mode 100644 index 000000000..71c0f87cd --- /dev/null +++ b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/Findwavpack.cmake @@ -0,0 +1,37 @@ +include(FindPackageHandleStandardArgs) + +if(WIN32) + set(wavpack_find_names wavpack libwavpack wavpackdll) +else() + set(wavpack_find_names wavpack) +endif() +find_library(wavpack_LIBRARY + NAMES ${wavpack_find_names} +) + +find_path(wavpack_INCLUDE_PATH + NAMES wavpack/wavpack.h +) + +set(wavpack_COMPILE_OPTIONS "" CACHE STRING "Extra compile options of wavpack") + +set(wavpack_LINK_LIBRARIES "" CACHE STRING "Extra link libraries of wavpack") + +set(wavpack_LINK_OPTIONS "" CACHE STRING "Extra link flags of wavpack") + +find_package_handle_standard_args(wavpack + REQUIRED_VARS wavpack_LIBRARY wavpack_INCLUDE_PATH +) + +if (wavpack_FOUND) + if (NOT TARGET WavPack::WavPack) + add_library(WavPack::WavPack UNKNOWN IMPORTED) + set_target_properties(WavPack::WavPack PROPERTIES + IMPORTED_LOCATION "${wavpack_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${wavpack_INCLUDE_PATH}" + INTERFACE_COMPILE_OPTIONS "${wavpack_COMPILE_OPTIONS}" + INTERFACE_LINK_LIBRARIES "${wavpack_LINK_LIBRARIES}" + INTERFACE_LINK_OPTIONS "${wavpack_LINK_OPTIONS}" + ) + endif() +endif() diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/PkgConfigHelper.cmake b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/PkgConfigHelper.cmake new file mode 100644 index 000000000..7070fac79 --- /dev/null +++ b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/PkgConfigHelper.cmake @@ -0,0 +1,34 @@ +# Helper for Find modules + +function(get_flags_from_pkg_config _library _pc_prefix _out_prefix) + if("${_library}" MATCHES "${CMAKE_STATIC_LIBRARY_SUFFIX}$") + set(_cflags ${_pc_prefix}_STATIC_CFLAGS_OTHER) + set(_link_libraries ${_pc_prefix}_STATIC_LIBRARIES) + set(_link_options ${_pc_prefix}_STATIC_LDFLAGS_OTHER) + set(_library_dirs ${_pc_prefix}_STATIC_LIBRARY_DIRS) + else() + set(_cflags ${_pc_prefix}_CFLAGS_OTHER) + set(_link_libraries ${_pc_prefix}_LIBRARIES) + set(_link_options ${_pc_prefix}_LDFLAGS_OTHER) + set(_library_dirs ${_pc_prefix}_LIBRARY_DIRS) + endif() + + # The *_LIBRARIES lists always start with the library itself + list(POP_FRONT "${_link_libraries}") + + # Work around CMake's flag deduplication when pc files use `-framework A` instead of `-Wl,-framework,A` + string(REPLACE "-framework;" "-Wl,-framework," "_filtered_link_options" "${${_link_options}}") + + set(${_out_prefix}_compile_options + "${${_cflags}}" + PARENT_SCOPE) + set(${_out_prefix}_link_libraries + "${${_link_libraries}}" + PARENT_SCOPE) + set(${_out_prefix}_link_options + "${_filtered_link_options}" + PARENT_SCOPE) + set(${_out_prefix}_link_directories + "${${_library_dirs}}" + PARENT_SCOPE) +endfunction() diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/sdl2_mixer-config-version.cmake b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/sdl2_mixer-config-version.cmake new file mode 100644 index 000000000..ee02b4a8c --- /dev/null +++ b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/sdl2_mixer-config-version.cmake @@ -0,0 +1,12 @@ +# sdl2_mixer cmake project-config-version input for ./configure scripts + +set(PACKAGE_VERSION "2.8.1") + +if(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION) + set(PACKAGE_VERSION_COMPATIBLE FALSE) +else() + set(PACKAGE_VERSION_COMPATIBLE TRUE) + if(PACKAGE_FIND_VERSION STREQUAL PACKAGE_VERSION) + set(PACKAGE_VERSION_EXACT TRUE) + endif() +endif() diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/sdl2_mixer-config.cmake b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/sdl2_mixer-config.cmake new file mode 100644 index 000000000..da5d0021a --- /dev/null +++ b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/cmake/SDL2_mixer/sdl2_mixer-config.cmake @@ -0,0 +1,195 @@ +# sdl2_mixer cmake project-config input for ./configure scripts + +include(FeatureSummary) +set_package_properties(SDL2_mixer PROPERTIES + URL "https://www.libsdl.org/projects/SDL_mixer/" + DESCRIPTION "SDL_mixer is a sample multi-channel audio mixer library" +) + +set(SDL2_mixer_FOUND TRUE) + +set(SDL2MIXER_VENDORED 0) + +set(SDL2MIXER_CMD 0) + +set(SDL2MIXER_FLAC_LIBFLAC 0) +set(SDL2MIXER_FLAC_DRFLAC 1) +if(SDL2MIXER_FLAC_LIBFLAC OR SDL2MIXER_FLAC_DRFLAC) + set(SDL2MIXER_FLAC 1) +else() + set(SDL2MIXER_FLAC 0) +endif() + +set(SDL2MIXER_GME 1) + +set(SDL2MIXER_MOD_MODPLUG 0) +set(SDL2MIXER_MOD_XMP 1) +set(SDL2MIXER_MOD_XMP_LITE 0) +if(SDL2MIXER_MOD_MODPLUG OR SDL2MIXER_MOD_XMP OR SDL2MIXER_MOD_XMP_LITE) + set(SDL2MIXER_MOD 1) +else() + set(SDL2MIXER_MOD 0) +endif() + +set(SDL2MIXER_MP3_MINIMP3 1) +set(SDL2MIXER_MP3_MPG123 0) +if(SDL2MIXER_MP3_MINIMP3 OR SDL2MIXER_MP3_MPG123) + set(SDL2MIXER_MP3 1) +else() + set(SDL2MIXER_MP3 0) +endif() + +set(SDL2MIXER_MIDI_FLUIDSYNTH 0) +set(SDL2MIXER_MIDI_NATIVE 1) +set(SDL2MIXER_MIDI_TIMIDITY 1) +if(SDL2MIXER_MIDI_FLUIDSYNTH OR SDL2MIXER_MIDI_NATIVE OR SDL2MIXER_MIDI_TIMIDITY) + set(SDL2MIXER_MIDI 1) +else() + set(SDL2MIXER_MIDI 0) +endif() + +set(SDL2MIXER_OPUS 1) + +set(SDL2MIXER_VORBIS) +set(SDL2MIXER_VORBIS_STB 1) +set(SDL2MIXER_VORBIS_VORBISFILE 0) +set(SDL2MIXER_VORBIS_TREMOR 0) +if(SDL2MIXER_VORBIS_STB) + set(SDL2MIXER_VORBIS STB) +endif() +if(SDL2MIXER_VORBIS_VORBISFILE) + set(SDL2MIXER_VORBIS VORBISFILE) +endif() +if(SDL2MIXER_VORBIS_TREMOR) + set(SDL2MIXER_VORBIS TREMOR) +endif() + +set(SDL2MIXER_WAVE 1) + +set(SDL2MIXER_WAVPACK 1) + +set(SDL2MIXER_SDL2_REQUIRED_VERSION 2.0.9) + +get_filename_component(CMAKE_CURRENT_LIST_DIR ${CMAKE_CURRENT_LIST_DIR} REALPATH) +get_filename_component(prefix "${CMAKE_CURRENT_LIST_DIR}/../../.." ABSOLUTE) +set(exec_prefix "${prefix}") +set(bindir "${prefix}/bin") +set(includedir "${prefix}/include") +set(libdir "${prefix}/lib") +set(_sdl2mixer_extra_static_libraries ";winmm") +string(REGEX REPLACE "(^[;]+|[;]+$)" "" _sdl2mixer_extra_static_libraries "${_sdl2mixer_extra_static_libraries}") + +set(_sdl2mixer_bindir "${bindir}") +set(_sdl2mixer_libdir "${libdir}") +set(_sdl2mixer_incdir "${includedir}/SDL2") + +include(CMakeFindDependencyMacro) + +set(_original_cmake_module_path "${CMAKE_MODULE_PATH}") +list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}") + +include("${CMAKE_CURRENT_LIST_DIR}/PkgConfigHelper.cmake") + +if("modplug::modplug" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(modplug) +endif() + +if("libxmp::libxmp" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(libxmp) +endif() + +if("libxmp-lite::libxmp-lite" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(libxmp-lite) +endif() + +if("FluidSynth::libfluidsynth" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(FluidSynth) +endif() + +if("Vorbis::vorbisfile" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(Vorbis) +endif() + +if("tremor::tremor" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(tremor) +endif() + +if("FLAC::FLAC" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(FLAC) +endif() + +if("MPG123::libmpg123" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(mpg123) +endif() + +if("OpusFile::opusfile" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(OpusFile) +endif() + +if("WavPack::WavPack" IN_LIST _sdl2mixer_extra_static_libraries) + find_dependency(wavpack) +endif() + +set(CMAKE_MODULE_PATH "${_original_cmake_module_path}") +unset(_original_cmake_module_path) + +unset(prefix) +unset(exec_prefix) +unset(bindir) +unset(includedir) +unset(libdir) + +include(CMakeFindDependencyMacro) + +if(NOT TARGET SDL2_mixer::SDL2_mixer) + if(WIN32) + set(_sdl2mixer_dll "${_sdl2mixer_bindir}/SDL2_mixer.dll") + set(_sdl2mixer_imp "${_sdl2mixer_libdir}/${CMAKE_STATIC_LIBRARY_PREFIX}SDL2_mixer.dll${CMAKE_STATIC_LIBRARY_SUFFIX}") + if(EXISTS "${_sdl2mixer_dll}" AND EXISTS "${_sdl2mixer_imp}") + add_library(SDL2_mixer::SDL2_mixer SHARED IMPORTED) + set_target_properties(SDL2_mixer::SDL2_mixer + PROPERTIES + IMPORTED_LOCATION "${_sdl2mixer_dll}" + IMPORTED_IMPLIB "${_sdl2mixer_imp}" + ) + endif() + unset(_sdl2mixer_dll) + unset(_sdl2mixer_imp) + else() + set(_sdl2mixer_shl "${_sdl2mixer_libdir}/${CMAKE_SHARED_LIBRARY_PREFIX}SDL2_mixer${CMAKE_SHARED_LIBRARY_SUFFIX}") + if(EXISTS "${_sdl2mixer_shl}") + add_library(SDL2_mixer::SDL2_mixer SHARED IMPORTED) + set_target_properties(SDL2_mixer::SDL2_mixer + PROPERTIES + IMPORTED_LOCATION "${_sdl2mixer_shl}" + ) + endif() + endif() + if(TARGET SDL2_mixer::SDL2_mixer) + set_target_properties(SDL2_mixer::SDL2_mixer + PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES "${_sdl2mixer_incdir}" + COMPATIBLE_INTERFACE_BOOL "SDL2_SHARED" + INTERFACE_SDL2_SHARED "ON" + ) + endif() +endif() + +if(NOT TARGET SDL2_mixer::SDL2_mixer-static) + set(_sdl2mixer_stl "${_sdl2mixer_libdir}/${CMAKE_STATIC_LIBRARY_PREFIX}SDL2_mixer${CMAKE_STATIC_LIBRARY_SUFFIX}") + if(EXISTS "${_sdl2mixer_stl}") + add_library(SDL2_mixer::SDL2_mixer-static STATIC IMPORTED) + set_target_properties(SDL2_mixer::SDL2_mixer-static + PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES "${_sdl2mixer_incdir}" + IMPORTED_LOCATION "${_sdl2mixer_stl}" + INTERFACE_LINK_LIBRARIES "${_sdl2mixer_extra_static_libraries}" + ) + endif() + unset(_sdl2mixer_stl) +endif() + +unset(_sdl2mixer_extra_static_libraries) +unset(_sdl2mixer_bindir) +unset(_sdl2mixer_libdir) +unset(_sdl2mixer_incdir) diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/libSDL2_mixer.a b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/libSDL2_mixer.a index b6483716ebd9dc29a36426d08b618c6f4caa563b..da3f4447112852955a822d1289a6c4f30314d5ee 100644 GIT binary patch literal 429240 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 Q$4f2%Mk#x5tMR=ExM*KdC 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%0AdQ!Jco<=lbaTTrUa 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 literal 889966 zcmdqK3wTt;89zK{FS!xiaEX8j1ju4gE(r+%yk?W#kYGqcF5DDCgajjy#9R>6a*>Oy z7(i=Vtys0yTH9)AwSag_0J&&IK&z;2McXP7ZR0&$l<)V>duH~W-9T;s&-Z`6=R0{O zd(LluGxN^-zVpt^*|WQYFRyHvd;OJhqm%4M+SrWL2@}Srj!92SN|jmG|4B(1spB)b z#GE)G#0x_7@JA%atYyNnd~4U~C!Y()%YB8@S@QpzUZ#yg~MdhS~(vOlv z6jHS7u!tVDhtsnMMKn^(=-g0R`G|<2bmp`z#a>Y&bb9m#5o<|t!yXa;G0gzyT&Xiz zbh|MtBE>uYCT!`_J4F2dN!nE};*q-d-1>b}MWDL6qPVWHrm3c`)?ZaqThk;a*DR?h zt!nbuG&WV%&aG0{ilwhBYinz2=ZjGdRn_%P4WndLi|ZCPFRH3&s=RKYE?82vxT>MC zs*k>Yk_Oxg zN-VFk(S}vdn^!THN>DW9fJDdTU=SQP`f;n>Y8iWxbm`S;k>Fw%XMMZO;ru-u_aaWG196U z*!e3K*3E^VNJ;ED%r38OI4eIqFT8|r;X-qSSz8H}3gye@a~9S$R{5Ie)zrz$qWY>@ zdF8KKTw{g>jY$T|*UhbLQf|QtDnNfim6X>~|M*%3jz#2>6^m+?KqK?3nks6W7gaD; zQwzORSI(_!lo?^5Y!mjxK$VUhK2WWonTA}DclCi|s0xGr5fy%kpYe>&(#Fc{OD_@k+caij2OfYi=pUz!0PnWS|c2PXHz?UN? z7x{||$|qLjG*n^0Cvizxm$@%{L?^#vR z#EIXRS>N0!%JQl1vKjwNA641!*&fY@(u1pOua)K@lLzYtMY zRAXR;uGmXz8XMuw6*aYuO%0d?$U`K}3N#`v&8w=eY+l%8A&Le}@Qdo3o2n|RY8O{6 zgbbpxzJB3SeMya1E~*!c;6{tz()mGIY9)y}J^uBi=mM)HhUB zC`gz7uiLPS5Gowfvqc=;HClpI6xQX`)mGQc5A|5C%ruFDb7>tG8yd-l8`+V-5-i~s zRnkOWF%ND8hf$YJb+uL3Rn{)hJyQl(+Ej+OT?1SaRsuG*QONo>pqX4G9I*rNq6lD# zp#IQk4J?NH7tlcAz+}fJ!+ymL7*(~EO*M-##>k#L^VuL8R*ldX&1P0A3{XY54Xl@I zFe?q7Kx;88)Yw#49|n+PTPc-uNhTWv8^HSEbyYPq)HMh(I{cP_{RTqB)tFTChC$Mt zINoGb)SLUJQFWsgME0+$Yv3JE2yaBtKu&GtLc(}{s9xAyGp})JZPWE3j5|bn4Pi~@ zU?#-cVMLxqb+zH>qRP2lKy{5v!ck1g>0=0t8_l;ybdUADleDCyv8ni%G)6MgQd2WC zGLn+g#-@%PGnVLc;^wXGf!ilSe0P;Y%#vp=F{-I*Ns~P1e_6RgJm(Oi>2pH@ci?}L zD4sKF9_>2LePoH^)=}3rHdF965_}= zIKfeeBzX;X-W=db1^8zLc9!~^^oi;hBzHw-}o`sqGC3xy1%`P`X;2?cuBZA@o_k>IBV2AOruR0yXH}h*M7&td8w_V z(^74kP5`e4yo4)QFH|Bc0rp5sA7@r2Upk@xrQls)@?dJ{FDu*kb*s^o?Ahw5_WZjw zZ`Dr2x9XVjh0l|apY(<2;?^%bGupoJjA&h#ea7e6<{MUh#nYncmbCqWHLc5PJ%h4@ zS&~ZhSk>m>lBmbAs&$3u1(cU{>{RtoE67=w{heoP_8DSNadDZh`I39aH(}rMAMf%E z!re(~_^Y)2)t*7CWxp)#PjUTE0`&N=+W&9$wWigx<{d~1xjh>W;v{XqMP#TfN~_G( zwFZ0a{Opc1Gzr@%k`UySEay!bCYYD({OjsHlEPw9Iu zzD4DS;YZeZu{;zYo)(_fuVV@ej~8Ef61v0fpk{=8yZ_Bl(PK&yCLFuAcVWW8q%)#b zORKfrPpUAQua!MRMvwo<*X}LdwT7xExhm!0n2{8kIuD{JyOI8k zL}DI7YWu?P8F5&3&u<*G%%?M?G0xV$#Tb7eWAOOC9;YEiTZZ@y6~g{I6@O2iX&rw* zlY~?(m2|c)YKvu@`LZ@1$SYda5fJ;J_#|{pyjP+tILVnT@G3q zulJ4c4R0k%({PL)!p%$v<*n*8mhYt#xxQv%^ILF>WwQcl`?J@_#|8I!wtm)jtS?Gt zq?@HP#>o2Hj`of12p;fkeYNdh37)O--LgDezm`1wi;ttTF>UY1w0)Qm+Y!4jJLrnb zU)AOcV8#5)Yi94-WX^9d{5R|S1-!n$R<38bB*iBC`o61`J%ync?92La8mSAi{R*r3 z71B)5!WY){e5k#!^?Z0uG|nvzn$vzbE4;n$uMatF7hy_D+u!~SMCJLX`ik=m&zc8t z?XgHIom}sjY`dLx4yZ)#sLmoG_rm~7?w&YUMb@>>%yxn3q%u6`!lhhY^cgMyHG4KZ zp=VgRKp%)p&xUo>8*Jn}Yer!KZ|#S_yBOzER7i@mR3EO+vk0rynb7`Q#Ar)AwpjICErjGam(D`kI7^?D81e01h~XI| zc2!$s!G0od)h8*Q;Tg%E;kPCy{Flz#;S|C$t*5;0NjcP>3>RQ0K98Is)ZH4XsY{R?a+T6GDb(8>WN= zc_dP8?xKEbYgM%bB(cV z-HiylNlCl(`1fHqxgB_;Jr;f3|OO5`?5c+PlX`R>7YmuT^!j;lVS$~LM?a}sQveNIHR zK9!SYSULNuSGGYrtG=7rG;>)ddQMB2Q;1E}$?9O7)Ie}16abw;6HwX_&&FshE~IVA z1w{3luRUu%q6p^?_T&QDC@@nhx%~iT1Rab|I!TovW9E15f20UV_aCNBEtLki0|rR@ z`uOG5E6+gx!>P7v-=U9DG9KqMzsAM!fbkAQ=|lyprb*we+7s`a(BauIiRP3p%yDy^ zsdP5NIW2HRSpepeR=gLc*kw_(-4s@Ol<9`Bv8{yFFfeANjHfe_toCke*(g02MeT;~ z8!{>kxKw+*&H8prp21DypTa83@}Nhu<`Zmy>O;q%C{vjwq|A>onM0ACq+B*I1_fzy z<5m>8W_HCcbA7(%jAzYHWG&fI&`XRt^-HUKN$Nx`U*AiX?Icg9u?4y54h!zCV6`I| z*{9n}rNspXR`sFdQj%cy*O1FNLL!hHG}3r*whyBQrGKdSaeO&nhsTfWJuh|@KS&hM zi@04+>zA;>rox9DCPb7Z6)!ke+#4P%?ltvcy6eB7WVq|dP1P$;alBwB=UyPZp-nUJch2G98Pp>_`@8lp*#2s~(_4jUXO2(iczY?_#^nzll77+F?jdjZ+Go5RY=cXD zSxt!Vkd*4Av5x{s^`TDbz}cr)?L`3S^lYGYc$W%}GJOF7cxIf`LYO~T2O~KR%{1&Z z*71%Atp~g&SQJhM(8JqY=4-uEi}vAsBMoQef#&T}`PSeOipQSSkI*QdX2#^VXgEM6 zQNG~I=&#h0ukB+GwDzUnIOGfNgqkp_2|9FwjK|uMdLo5opC%n`{0r)lLz{y3E~+$` z?Lv>OgSzBP(ihe7HLAyuoM|7=sH=UQwB-tji1C~q|Oy07Q2Yv6w93r%3OfJj;UUJw)21%BM@!a8E@d(1nwD z75F{dF3_D+J)7i!era8?cDFCM3q6hESt;Oo@m+8(-eqb+_Fr{+?R#<_0%a|QVsqid znz49t+c_sV?Vce$kt182UM?))$a-XiW;=M37h_tdle9hQq^W1=IqeUVf31C$a^zA5RBGoW zxAPrY1ipL=SeAPPzNzI1QF%dHJ9{>KKvC+`<5NTT5NNC4d?{pnvpRTQ^`Ulu@L(RM z*6QF?OlBV&FLNWg+{kP+J@qs-lnaBeAb(l)QoMh{OP-c>6t1?NudR*xkoF2186r7d4bj9zTlo<=i1%Dz38;`A79H_ zGKh|OdWm!KE^;Ve%iS_tRT~xo)f$!j#=1texI|bSR6f*d_aRF#)Qej3<(7MO^QHs& z8G@(bX$g7z;BlxCp;6v&TLkL`kNAVHuYHq@J2k30INKbtQCM752MZlAlCckJhY@0= z)9i_7i;x}eT!ISVT(f+%Tfur%?$4)@PpsUFSb&8zEbMuaR`GjfF~{0Bp>&w^d^iD` zEOensSSYmIS-boACcWP`{eyImAf5Xqd>o4}Sre^(e8x_)%$pPxrovkaX_8Ye)BYNE zpcdbx^#t5nll__iF<9Kq#+j+8`eA#1!tOn)C%v@Y05 zD(U<*{XldFiy5(cBhS_020U0h6zr|;YNth6X%=@?5zMLzH63)yuvNS43Nvi=;29wl zwrF19uw@TDa+(+fww`R=xRB0=xxfr}6qoGLuKhjuojGxsfstC^STacktR3W>`u#4B zS29>VBTe$|@wvQ*DheJ$CGd5Gz?V?XmvBYINQwq+=86F^gw|HH&}vtUEaTPcL*M$0 zk6|{<+O%6c$$o%MVZ7Y=PLZK2wCdKD!=^Xpdst5e5wi0Cq4mOo%`q8H;XlESwYxnp zcA$Yc84Y(z-wIoT$sJXs-Qiyy)vIVHwS@vrt+|tWjBF!E{7kG=U&l%;c#KzE!8okJ zu&$vojuop^wu98U_C2E=`a>YXn&%Md5Bf(8>R`L@;KGjjcc|KoLAZa9{nlM%Vh%mf z=N`;z7*80L7>_d@!Q-eUibj!-Ev!OXtkJG9TD_2Al9{RRn( zG7fWrcuI*&>#%HB@R+o3RQomXQMDfHb9}MhZ^giAFjK;*msRTdipMH>DJ0D9lpzDd zx2xMUO2v5C!n)Mrjn;#59gy9LKR0ahn9iw3y+!@UNgsw4agEKp@&6Ik9da^s^F6t{Du4=u2 zt(4rKVY~*jW2iDYB2fP^l>dYbIFme|2C%#(f_mB?MICaz5zLO~d7*FHF&JhhRs`5Q z1t)!iOYEFbONY@$0?@Vz4%5DXVnfK@v>v#@vL1k<_OFj4_0e)5#zXh~%=N%}>;ehe zN4aV-0HL~E33&FSF;?SJeUX@1grY(iP@~f+JDIT+@SZ$ z-#vaUZAh`{$nynX@dZB)e&!DzrCMMhxXvLS&rl$bXa^5ypXU_=&CHB32XunmYW0^!IYlWYoY07xuiI{zx6Dse?RFij&%p~(AcLz4r7>O-erz?;n6Gu=0ovh|>0-6Q+7e?sf6JI&|SUWB^R_8%XO z_T>Kd0x;z4gIBsAq{<+FRU774JP2_oicl*CYLz1zje2GrG#f?+J#jHZhJW@M`A(e_ zWD?DieA`mL7dT^5yxid-=TEfDYq}PrQSR^-U}T|D2tk{8dYwrU(UPM_3Fgjyo{deQ zAR4cLNap?x0J7=+Bo)Y}0yC)qhS_DDN4IM!ZxZFvt?M2$Pqz<3o+Y-@ehbeFOxMo~ z_&vk@$w~NMkerJDWyx7`pbo-7!gB!wuzjS*S5uCAQvQBC!0RWe&ylE}Zaw}9jrPTP z!zZ|qz39Nz%~AwR5!2yMQ1z-dj8CX|AF3mLO7qgmjTXDg8^rWZ^o-9aE1x`1Dz;Oa zfHGv9_em8?<6!a(z%6>ye+j6G6xY&PCB4}OK0Fo4TkR(y!m@>I2zodj^3f9NC5UKt zWfFDeRq6$Gr9pQE_nToOX&$=0tlviUds3tdQ=|%0phCQ{Iz8mya{ql2zK>PJjBK(H z1yoYn&1k8|Bx*(4v*a}TfhogJ?X>TcqXh;)_N9>Mlvya7#KVZ}(Le>+*re&bR842Q zTxf?TQ}{PMA5y*YM8XQsY9Gw%S-YN`YUPQfmHhnu;wve4lV|ncDS86mg!|_R)OjuL z_dDUKCtXd6o{iN&R()&$yjFt7P3h+Q$5dp6XN{YS4E&0VeBjx*L>F25C4t7`SMyrB zqj7PJ{-xo03%minse09k1kdWX(fHyrk^~p~k&V+BRQn`wG&=tsu6Dg=V?0-j`fl1H zE6Qt09RK#2GkI%TK^*ly&OH8|?X$^7^8UxF6EU7O)m%@-0a=e{^;ML;@ll}Y73%Wb zJ_m@ZFXmNM-+{Nx`p#4Jp^^O`nzfvOk(L*-UXmqfc-GRh5bZrd=kWsm;~$&+{lrga z{u}KCg8ww}Kfu2b|0BwZ@~pm(vM5lal8jGGa5aJSY_8_Vo-*sN0jlJALd1-lw{ zfh&1d@4@x*TUZ6ZKWaAld#d6+{3Cybe!nrRzK`&|_y@4*pb4%f@DKQ>`+q`u2Sll% zte-G{_ZKF=jKJHh{23pZSraI0K4pc5OeqFTQrcnP_EhvDFZhb-tOYGOBhv6hb%HyO zoOl0Te6tRY>R`^WJvqr|_TK z_XL8${|EE;y5ot6!{mm@&^PW4BSN5+HSaDNcG-X!qHzm9D9dZfIFh$M3Pa1Y`nOy@ z1q(#va}%x2pFTrs;&y@x^{n1T{dPO#rFEcfL8i;^dho zJPrIZt@_p#C%=H;huMYRNS*D*2Qg`;$x2#ZoU-O{(Vpg0u z)4UZYv2^mp`m7W*F)lB75-m~(f_vo4@fT^mu{SG)8p?;wiBQnuz5oNxm1Z_VO-m(nBlu>-ldPe4u6|AAqQBV_GAA#O-kHD#fN0AKGW>O zW~ljc*+b9j9`L(@;0IN*6tNw}ft;@6K07O`M>N5QIY}_f&--oh18*||>SnYpzJI;4R)A_3J zMs1&oJm2&9Cw%xWHhOz)@-d{2;M-CX*-u}v^_!3V!B+G%yCvSyb|PkYTg`szs&6

lWh?{go#v2bEIT_2%K+w}TKc4?#j4o|N6eL!Pb3zZhxu>pm_bSty66;0q7?g0C~< zb1=TB-b9+5=~?qAG~mZm`@x;-Xz4=DeCl5(KN#TI+KNvEU`O(Ay3cU&v31>{JkrKK z|GEKqViu>fk0ZTuyczLRYToxeQQAL;XPdTw8Ki|*{|R+!`JW}Jm7W7>Uk8Hk;0*@6 zry2<2+1oEYDSz^$yn$YMQa)KX05uA3+rKW6WHg&!H#>&g!+;&Nt`Mu~9#dWZbyF|I zNnyNy-RuE4S)AZsS2z$SxxLYm);+m{X!fb@o3(CPGCm-Hi;MUA*LA13v`0oKAhT&* znVW>$~4bR84Lxpo8iQwD5=jp=t z0{!=U3gN7U9U)iML(+J;?PSdGoi&H$h&+U60#3~EY!+{`Fbn)jvf{;Qw-500?j`yv6SbEI}j8)TeZgL52IX5{@yASbr<%y?ox@^hH z6XaK(ji2yC*mCHt{Fr2+&Z2g_Ys2Hq>^Kjy;gDYshycb)uqWDt=U{N)K-o{z-fbTy zPig(@d!8ioy+HrlU&l&LsdUxHGs7D)2Y74ylaSNge`-B|OtpWFXT))r#G_YOrZzL`|k7aokL3JOT7!=wo5L7^z*8~zH7esn>%CU3Q^JYmM5{cH9kTD|NG z;`7>YIO&$VD0bCg#B-#QVKg#~A%5Aymb79POhf9$P004?I9K;Wlz*-x|PH_Ef|Ix--chqQ-c;giU-q$pB2leKhjsc9I=s%7(uE#L4qX`_%fLzW87 z+BTKTr=eD!I0`L!Hqx^R(i~>viPpxkQjls6Re3SIk1S&wS&#wJOHWw26keq*XJ1R` zG66hU0E_t`m7EavNsCc=OG!OmTPdiwwfB&rl|t(Bg)OofrLHn`K`EWx@s~>MkOygx z+)j(J?-yj+OVOE@l?5`^Mh*dLYdbCKWc;>NY4PGvk1Ss7$Fzko07piQ+O_foeVp90 z@iufL)Un{}=#pF%Q8QRIkZRClxNXR+GNhq0xvtu^vi*Ij3A}ycncbc2C>K#EfE92X z2NB3Kg6y{|v@p}<+shCow*LsikY+;y4BuzgBkiMCgpdit3-v*|-Cb4Zrl6DZEyWf* zb@Vy{6%3CMMGu7`CY}14-qU*5lkzW53Zm@G?YCgn!Kc8G(|#RB6GXvS<#4Ms(*7mx zLP?o;HD#IAAyNCA$PJBWz0*jg&4oX>$J||oHW#$J3Lac_^wg?OM^oI3=)b_NjONj+ zPCAzP2LCPXaMp_N&NTJ*Y<;(-bmf9~X0E~Oa!>y2Z6~7xX|32T49BgA;9h#eVt1;# z{jKAP+`6QlIaY@IJLbma&vJ=`f^%?>g|;HoJzI;DgP#q4d+;IbxSDQVH$8?-fEMYN z1kF(i-D%}6W#ci@LmDY-U41N8dtZaJ$HcSncu(;#-sbhxFP-gJ;cG z=T4_^raI;r^=3V1!>zn1w}?u0&vDf|iycSJa{np+Z1pPKT4$@JPlLLNLBDc|e)l>> zuXT=4e|`=Q-c^+S!dl5a#z-~PYm`$&Ws@erQCN&y#9Ze}bMC3`0}H~ z>zyLu=kclC=ET*<7RR(k9dsRabRa)2O2n1uUP2-v=tCcL(AQ3!!6JcH_X5j?gKn21z&X3}?9VfkU-htPx8U`X zK0=Jgc`9Bf^`q|!5~3Kd?;sW6{3u=r;7%aAB9ibr8vB{)I8VjvF{F7o@4)LH2MGc5 zi&nf&8G`S6!ucG$9zj}-^P_mJPR7y_=k<7fahMSI5Ff9;i-dRt=f!wkoFc@paJ~Ys zRTo1>;^Xxw622NrzFvurwBkGquhT{eu@C2S@cKKXBRJoJ*S66@`~~L+@%jgRb<|Ou zx8n7m==f=zci{DgvCu7aT#whoNbxv7idW}2=o9A&c)bNF3Fj;Dx)6$@Jybnj-}FOo z#K-GZxzGvD%WE5(>+9I5Mlcu3=GSlfah&C)HIaEvi~n*RT|F z;kXK|AuZ2==`5kG3w=1$B_Na`JjdjfpbE`&I*VT<&k_o+< z2dPCJ4wtJM-;~!R94y$nHrC9qg(f8< z#vRHbz}bxd_#*BKoL)WRD4KEJM0L>hb$v&|7!F4?w_vNtwHs8(AZw$F+%e=a?wA26 z;*R0mXj>77i>0!IMvT5TWp~Z1Yo;#(cRfo@B)DV~CKgpuQM0JNqM~Babro})8|VwW zg{vWfB4~6O{{0gv<|xVu5mnK+w6Ox;+b6%m)Ah)(KO>Jp7`H*V9!(}Gb&Zt`^XCfJ z)3PorxLCNJ>y_!CUeQ;YxnrmuO}Gigz}S8MbeT6>{-0@K;440B8t~QKu7k1?Rq!T_ zzb%U@yng;7SVOoz=t+$!^dTW6jONJ+==u z=!9R4ha*J|OR5Zd~?D?po;2Scd zU+S?{<cXOFg%Nmup+7J^O&DQx31~tf zBUoUdK4k+7JUx42iL!tN20C5o-vaxHZK~e_1NC9yqI_(YQ5|jePMR#Da~3qzH9P1t zduBl`9kZY$5xbTh^qIY~pi=rMEoO}|CB|li0^f|H@-nMs*$O6}4!1Ceg6z8qXW+1z z!Nk+XjvZ^WgNXx9vl&9+nPY8+FyZkyY?d(bF=?svXS0Tx#W`a_7Ks~SypAQD^!3sl zUtvy>KYY+@SUHIXvQ4QpkYkFY0lz7P1_I_t)IhE|0yQwv9C;eZ6W#3M<%@VbFiCW` z16Pal>_CC=*n!C+!44FP9(JHe^t1!TqL&?*B6{0_5|L;JO2zqhpiK0!1LdNx9hfTm z*@0=|0y{8W^tS^u#D#WXrWjxc(!@YJFh&fr1L-2k4rGYIc3`X+Vh1wCP&+VAB-?@U z!fOX6h+%dhRa|5TN&;o&C50lzjt1Zi#Q`zgj%H)5m0}zQ#KrcEGGDg1#11iUgdLom zUszr$M%ux^lyYA|sTgHP3j(=i*(Ef%%fx7VR!RQEJe`+n&yyk+_)7Ccnmq$^M0sf* zWsI?Bl;WG}bBYRz3Prj-1G7tMSxHfGUO;5na}Z*u2E5fNutQYbPwTTnJ1%`v z6xl)YVNqx^ zq9OttFXlvG6GUYMmMX4`z|4_3*PbDxL@0*Lv*-GXiwp8|@aq-`7FG7F;-YC#SG664 zrOeI5bw=5DsOE1>w**u`nDOFBXME6GUwoG$vKlg+pngJ{%e& zZVZRgMMF50AsX#aV0s{@9Am1<4(A05ibb;>n;a-C7mMv!DMn;YnYbwoEh{P(OYE3$ zqA$NtEVYB>h5jOOvmJvt;+8O|sCb6B)s7YWN+I?S>|ic7T4I?Un@rtXZpWq;6_ih= z0JEYiTn_$~_8d3~PaSI_aCRPFX+~1Og4k%!E$|giOcR?T!7<{lNHAU89SLTL zA4Y;>#XXT=rub1LI8OXH5*#mn5(!Qa_u4^U0Zi$`oOYibFP%|Z5||=>YDa0y5GWA$ zhoN$!*lY(ey%v>-2kaoP_r{2y+2PVav9H8e2L6Ng4D7EP+DSLiS zc}Yp2FlR=2VSbr-y6e2s@@$#?M|(Epq?sKG!@6Z_M4ns5_?Ak8d{M*8BWne6nVLMhP-smbQeKR7D)}Fj4d@CZ4 zg*?(V4v#6BA>NM2%+4?LA>*BhjG~+}Ux9cx0yo2i_)A1iUSPUU<^I*4TaZ&$QXr0o zfu(u*Snj_ch9bI)55lmC<@w_8cC18J`HwJ=tNdpeN>zRshEbItb*Ed&`Zf-J&MhDe z!w&k&{a7*trkCMXdlxyyC4s5J*;Ni)tr&0MbyWtpx`ex{9JxS>3d@-s@aJQ;ldHSv zu)Jy0rs3^2dmEE|`2`|241{mzlo!bPDlR;$XmT+YW+kFqScWgBq7>VyoIJeuXm0{J za;w-q5~lzw&Wprzi%O>XO8mkTnI$!q5Q&!ra!UfZ|Ii~cE4!%Z>dC&6t4l@Cu*_^Z zDHI|U%C%#!vu0z-**h%LpI=%G+muerFGHsj!*Z|A_U9L1v08>--zx}+^Usnko9%O! zOf=dzEGsaHmhJt*(9(iHpjccGhGIXJCi+K$W5k8wAh~TxU>dE$2XvK}i$%M#$v`Gx z53L77Dc)MbyD#xB{q9S*JYy?YMDFj>i_xn~a|W6Y^a%ky#%h3fQt$EWkMsX z_ZN6)EXHIIg3l-diDe3Y<*$J%%9iEgO`1Y;B%083E`DPUzmf-@Un0GGF2oNu;xZsF z`&#Ov7II|^7g{SLc%p;{sM-k1lh8m}9bMp?x|nZIOBZA_AFB!w^{UM-2qz3Ah4 zMnPgU^fjz!O>G7JI5jU7?vMS&3uCLiaMC*hY>i_Q9l z@np1{oQR&~prbmTUyaT03>Bgeo^&BfKcc9H`&QP@$NT$$htoT-%aMf#GDM%1%*`aZ zHb8rek@`XVTcXdW;k+5|WZ#2y!Mnu!eRMpHc;{VrEWbc1`47>t)QI!0JD2yr5G9SL zqI;84dZD%xDAr%v>FMZrYI8J-_NTOo>iQ!W_2B(SC(?zf7vVXY3CO|W5J&Nrj`5FZ z_oqYf1Wy&Ro&@I}qybZLkr*w+M|hKQKt3*d#0qf=-5f||1~mW~ibssT0Xk>}F8V_^ zpW->AK^t+g@;o7~K^pXPTwIMG#2Z9uD=r@BEyMz(q~Dk_Oq!49e9-z}qr}k&eB5O$ z8{uz-@F7z#58);k>_<(@RDj)UDA)1>)HQ{4H`tg?8WTgGGFf{eK+-Prf*QDzi^MdF znAGH$)L~-iaWi)Ta+5wcFYZVYVy;>HV&MHu*>3`ArN+^!<5p;8h?%9Hd^KH(Q(Y@X&-?zw{9 zbA2B?$cVR}*{IC~L%O`i6e^tvsZp2gk8kWTK~&*+flbB2mDFp@3o=1|7}aJ1F|^83PAk6{5r=+d z-MET%PmgxdQGroOhq0Lk7>9|1f2>HOR@PQOFmuek4)^Z`d^h3sa zR%jH)b5Y$55_g#N?&qSCNE;WK%6Tqo6kQIJ@%Fi>33QRdc6}jA#^@B&o-aft>P-BU zFP>b(^BNY0#x9UFUIGwj1YL{a`1y7HbE@X@rlJ~4BVoiw^`j|+9#o{m3$LNW*i5SI z^DdpnMopjzc^_d`Ers0P{#&5L5_ z!)Eqlq`uG0i>Gig-ez31*m z3$v6OVH|Z!Rf!Qb^mD{|!sn&ML3ek0GLw#*`30SyIvo9!bK^nx=p9Ky`~&GPNJ(xp zsJ;jhGr%IxXvF_1*FTc`~x47t37t7e>iYJV83bwpgsd?+nuecylw+ zuse|+AEo019Rq%dfz{_zK*&xbrRQVt1d#fWzyPnHj;;l88`7wSc*+uBJ~55yqbD(^ zj5x*&4!sY$2T-MLpudRJj~=8m9&*Ru2hfFS@*f03aSyZNs)q`3Ez-a_Fn|BgslrFx zo@eoT6zCD8{+$Fq%HYIgA+A8`A8i2qC4;*GY$vdoz{eOY_j26qKZ3wtF?bB%J4pTC zpgJFC@C%IBPmyS0w;_rCQ}bt0WQH)B+==u|E*(8kHyy_2KU|^|*~E&>x=4u2kyw#U ztjHe#Sc=4oY_cn|$!$~QO{~c6pwoJU6}f~Jc?!V01VWKZS&_5gFr`QXle8jl<^KH{ z=xa!<$R9A6408-bVnr@vuo1u_0;M9CGq@ALb4X`Vi7=|&iS)cO9Yy>Cef$`{I9fVZ zwOd9atd6BiRl6@Gckw`9-H=!l)$ZKgD5_kl+C9bUQZ=lJNucK;u_kU{O*8^nL?AS= zfHkoPmoFft)|*n9%N&s=-K&AG}XeNWL0Jak-$Io~MlQ2hKh{R^Ul)*Uw zrV=Q}&*cpM8Nh1<%JFk0gYyyJ=OSI$Qia7d#G@ld)I%WS8n^c(gdXrHvK|KK0h$XW zaivL&5?hEk%k3Qsb4lXcAiWhqG(-mxuXTG16!ANdPHW;OvqnRtVmW8bc6*x@aVV5G z7)gvF85J=~pOM6L7!_{suT`Nu6v&Mz6xUUu-1k(WMJTX<3dv61t3|3Ok>$ehTQyNN9VH$j;+5{q z?-cPXkUk@#G{n7TjZUG?%z-70Qn#0WOIxaH6z0$oG>=N1zN*DINVQLOd#_c*Qjn%- z;)9x)fEnBh);>{o}*2HHuF^h=hZts(d_y>@-5K+pjnvN3c3_0>Jrn$ZEqEI?H zx}6-S$(|5-VglS&cJ3|I{%0-9UrbRFL_LX;{RM!bjJW52r+q+&7uK{U>CaM~vL;_acMy}iYv?8tmX_+RT(KTifaiZJ%S4Dgb zq+bwGsw)A5f)1BZXWG11yS+W((^3OpqrjKC_B^wYA?m62LbvxaMeL6sL+?jFh%P(U zM-#UYvB2$}r-<1gU8#xVH1Q}AC%e5Zig+_fONc1tRZT|;bw<+DVHCN&J5Y$tn?XTD zQR4Jj40DN`D?9cuYJPxfr!@tIktuawB?30U=Czn#try%j<;^N8WZUBo3#N^`U$>rtoSiK_+T#<;F z|2c#+VmRjeCt!7h#FI-LgTDgs5P@=XiDxkWQaAt-PcG*%xCFrUNK)rK1>P)*y zGW;JdFSVI_8NRsyiLL*wS;!Erkj?PI{}pioNHs*1wY#tqpaUOzGtYGG!`$AVs6v}i zV1uqbUKi@1+Anf@TNUw-AU&mt15Bb*B%Lp{Gqzn3{{qqxO`M`@oI}Jo_t>6rdD*c( zm*bWY5_jw-P25Dpcz5PyidX_tp(Z}8iLFFD&z(6>5nDhCYT`aEV+Roj!v7U<4@kQ; z@hx3rQXdcpxxHHz@i<8BM3g#xM-$bVlT?huNOF6Rt3nA^2yq?~ckJ)FP%+g$*zN6| zX=-3BNa;kBwVyJHQ9_+*i}iGS^HrglC@@{u?$Gn%3aY)A+uNXs%R%~qu02i@)tRon zx7+)eD)a~n{9M=GLl@dYwI{m02NiKYNPBhdNhZ-D)S1>yU$@si&g}5NP~a0?dy208 zDAnH2?H#3vy{^P21Bo>=S`*comi+>^cdjZl9tAR~&{zsonYvH{t)Ke4z0&Jufp86x z&Jvb{(cwy@&nnVU&o5Zlr(k?@OzLpSb^U78u>y%>Qin^f?%M!7kHj&l!)06Dcere; z`!8H_!+09>lSmwszI4e2uNR*j9E3zM=_{AqX)nQLJyPllQ?{9=Y#g6DU2^gJHW+Uq zaeO+-U}6>q8j_qoRPk7Gv^Uh!=^FbBL^`ROQgDipSn2ocNTbeTkwu4b(lz#oDs*R- z5O*MP?OSxAq(l%;y9O9goUHvRkbXx*X`NR!v6zV8x&}y+%Lf9buB@}r+>vZ^CDI2= z>7b9?(P3<^LRe)3ZF9*TeL1R`g2V>e=8`-5y8&!KVgqe+*>?2XT(*tq4mQxMpud8| z26~na6qAh)pArZIJ;w$*KL>B=Aq{*8dS#=$$ojtr=sF}eN*jZN{V0vZlg2IvHvw2i zpxlVQ#Ng}zK2(duJCeN&M&lOQHw3;xz2DE^4<-t66Vh3ghZ*+{S0a5vmyTfuzZ#pD zAYQZb?qKD;j9T^}vGVR<itq^yy_fR`Ls+X*NPW>thj*_WMx9kC0d&i+HrZ3E(gi>tm69v@f!c_IlPwj{@8R zKw^E|$oj|ykU=2y(ZKrXHyJm0kp`w}ecZ|&dIac0NUV=#4E_zkJ4lheOv_aJ_;iG| zWbR>+89t58JK)FM(R4O^-$Jaakhr7iZ1{2jQ;@i$>2|}X+YO(|9o+=_1|;t2I9GRS z>0JO%5r~eC=Z@Z0j9Uaq1GBJ8;8Am#D}ml6>plhEhQuAcg2B}QZY59}{wfAP1aOo< zX?P!l<4SNN28l;a4ukgr_#uIE)C3qDS&G}oNEdFwtg+ryQ4D@%5d-Twmv<-Ts{#9v zbu&1Nk(l^|NyI{oi1S?Dzk`@gL?+y?2^~b3>+;4U%*&ddMlD++YKju62_ROvykiyd z6OcaE#5c?ufu8$(ks7fOv&#Y`P-; z7NlQm;?=s>+CvFE>in0&2 z@6n?{%usZ78rz7uulI5X7VR|umD}W{f$6)R}`dAdE{~-YCEF{cAAS zAhD~QH%GrPFKV`Kw3*gDMn9SqdL=KjB0L28oMH|Uy)N%eMf@>HcWdJ3y2edJ z9EP~3hzCIWlO`I;TqEK$5mQ{=-zwr)AbmzesnZj>Ms=ojdJ*EEDl~EyzJ~{iHPGLz zJqou1PB8wR3cvB@}?`|ogm$ziQ_eK4iPVOd9PK(r$G805v9DT znyAjSy!~C?yHug$DA2A8`OHEN5jr#VGsxxLqY5R=Mt_jFlX<$Ohe)I(m-pX_I2NRI zO{~j)v zf@S=EY%)0ZeB+dx_GeMYHYAQc-#F!_y%WHfNE~~rfk=lvhiDTXPk1S%kjtHsFE-T8b*>! z1XV0nq#}43XPje;(Iu&pLU1M_F>$?Fzai!j(Qu7js))CPv_=yjHHlcj5z*-y@N-4{ zEl9s6qO`~MFxuiTutCK17ItIEdYW9(i*{NWAHTqdy)Dz z;xU!Ec(!mS;}fB;%a9~~6Q1VS#rWTW{S}EPqnDfs^eD*X)mR%Ku`}#t@Mi$-B~Wg6 z_A~fz03Q)3C!<#wET0c)k$AiFDuV|A>?ZIHlJ+$Q4_}Wch$Lghho+gLggP_rC5%s; z-siEKmR287gG!Lt**-N3VcLp9y`MV0A1Y!tNLiZbNkS1E@Jb^7+v)XOZPqv+q$*83 zrE7eMi2rhW$1CEUAl;#fy^>^wGy@UwGpDyw5q}TT?}#WnrkZvOb;bozsKe>qfI^ln zkfOwPMb3RzljWEkVT$0yw?3h^7o0=>p+q=>=HJk=UaEa*7kSTQ28 zKIds-JrP@-Lo*ez0HjHpc#9@(A!3_zXoVs+gH)%9cWYuo42V0OL)R(dPLN*E#CtU{ zi-^0NLw~P`r$Oq}#Kyrw9xhQ&#D6%w?5G{i$h{LtxjPBwd857NR2 zVw5;a#E+cb5sLULkbbF&>vfF@u^|4_=`B~pS3!D(h|=b&>25-uvCJrR%;~)ig)BB# z6i-*=iQ7~QpQH8;Ey~ZdC|M**yVHAA5&JE~V{J&Rh5aVcDe8&%hSM8cXlh{!NJW}> zT-W#z5&!J;j#0!VAT<$Dc1{taggVnB^-ZUDzACf@1)kKkf1ztXO0~b`^wND9>4JX- z>2*!~MiUd_Ks@5~KBI`ILF&}R1an$&i7X=i#p(S(5vME?VlonIAju?R$x6h(I=$U6 z0m!D;gLJzlj?l!1i1;_BH$xG3fz+mnxtd5{ooKx8^v+VmV<3H~iC1VMzTpW^tvS7G z6|s9Q9=}0io%%FUogqga#!;vDDHO8okrc%()R~2xD?2s@HK$VTXPq3eOIqzrq_0|} z<0XS%jm^*CrUb84R`cXI1J#rx@#MIgC&wQHxEqNl$JO@9akYJNyqzb2V_rSpIz}2e$3Zg- z^d45kdqCPmL@CA)O;l%EjNd!G(IuuBe?ozmb?sM}h48JSm`HE|OWH#mphrifEOD$>NDCLSc>M(5DqDB@y}nlzC7(_cHi*Qi1n&EO-k25QVgxbsA{Z+3cDE8;aEP1D3By7r?)e8A~_LJ@xm(p{Rk zRudE4AU^2yzNv^iK-x+~Dep2(RA*Y=pCSI0nVtL`1v+%0O=cm72%Vuq9LCR`-Yiw9 z&tl9kNZiSv=$48}q+d9_HHvsSNSA8j7ERnl#7CXpyA`n#qzWR+_5Lq3v6YCAIC={`yoE&u-wI*G|;&0uslw8+hk+2EZvKj%PR6cV0Kx zcV3G)o?UtqzOfaF<5?}ovpN8?2t+)q<9L>hU0^2Cz&VJq9M2j!AiWB7KN82YMh3er z#cB?Tqf|48nS1~N0z1(!<0b}g2e2GT8a&JFxI?HjtV-o!EO!n*U2You4EWz7vF!@X zLWbA`*^Cv=!E`rNP9VuQqc z8OkH^#B>#dy_e$yjYzx;^D+25fF}rigBr?VFny&EBazOkJggL4&P00Hk&Y`MC>_S; zp)-{7T&%nmsO459R-TKM_dI}SkXU&xyYgIiGK$a2T6oXDWSsK9P%E|odDJ$u|7U>*zWOsh+9B`j%)A{d2_)7>CxiC@ z*n||(OWZ$EqvkP3B7KuL9T(_P^YS&SqmMb{{gVTzPi_ZLLm)c(8}8^EL9~Z75Q{-r4*!fNxld&mKHqAj->CO{DJZ58}PUxlD>cP6ywDkg~&o; zW&hD3@1JCC!o+~Y%HGD{V*nl?P&(f;3?|=&4|O52^F7Ppvj83^P(JqkJcH}+#&f_( zJaS)T(032+>L8uffEc-p9f|a{>~!2>@T;*oZI&|NVm9Cg)N%(B8*nij@D%`ik=THX z?FL+IH{cRBVAPNBs38&?a48!wAHZ+|VZfW&fWP@M9!5tRm6 zG6p{a@H&C=2H0{2yWfYY>|TJFD=>F4=>93*y+H;Wn0P6{q(O?~eM*+NpbQU$^{ZdC_LL%kk(^C9`XyBWzbUcfr!N|=}0}|_a7Ds~{ z08}Hfj%V4U!7O_;s9+sG3i>aQSjTf%$L|2xM<8@u$vS@G0q7WMAc@2}p2teM5>jR$ zv5u=4d=0>U0_7w$pSzy%AhwZ6thpKnYXRJV6rqo%N_<~=MI$~Feu*QIek6bn`pRlL zjLkPzD2-g=NZk$SSE%F>B-Y3!j?3vIC;tTSJ`z3xiBCFR;>aWBkcZF@q&|~y0kD*q z*8-T1#GiT^$=bOOz>knvJEI)&)au^=9G0LkMmxIS1gQ35C?1IvmdXlyAD8bEgb$LZ zal!PTqXS6&@Cm9h3@yXutpv>zMmj^kz~#e8sbhKzd8nmKN>kOMdd&5X1d@W@wtNda z9CysckUsp)%klCfF2{_-hdf-#l_1e!Y#u*HDejmtlGO1s8ry@!iaTaZAa%t40y`rl zR@^Z|eu8fnfN4nlL9t^-F)`H##XdIV^zv)u{|bp!cHEFEI|JZV0->Kz3^~2@{w3az zMCwX(M4BB&Vn;l3aXjqcS7Y-RbCl>iSo9)Pa5WN(zJo>I0AL*wi@t+J{{X;WkXZB` zcF~_>(MLZ9`yjFC&$H-D0F)32(O+QEJ&)sN3sR)$!uY9?coa8h=!iA=)!6)-N+tJC zjf+X;g(#hi#B%@C$RtH>1+WE)<^HLWP0YAoBL*U|+&?uYTUEZ9<(`K8awL}f0hW6m zfSU<~+&^Qv(|>~xQ6h!Q%_EJzeWAukqak!YmValv|A-arsWT0KM0;_?}SFw$;h=qN7#hLk#_8}~Vi zUxYc*nv4XJ0vj&-hcKIYbp1O~xVgYV^VQhAVXhG4J_Tz0TaK+>zr!#>8h5kAJOp-ivU|lLdR{EJ7SGCAph;*6!0OsdXKab)1F2bOUFXX8D z!|!n?4XG=UF{~$LR-I^gtFW!17Rn;M-a8@=}#d^-lx(6J`*PxEm>pZlOgUff{05Ld}Bwz{dZ z9$)+JxY?j7!b$H#XDz{HFS-m-@Jj-YLOfLh%IhYjuoqnlAL&|sH3Xu7Jn$tC)mT-< zgZefkdJSnnUtCPxfw+d0O@+3MW%7k)p?p>3IWV>($s#9k@)gq1Hj_>r5kv2?Uis+5 z<@CEZbPUyAKwqLU;BjPSKZ|<+NI6?^k+T#3{8VDg00dyg`4agZNCOESM8r|g;pQUJ zASzIglZ8l0*JW}uZ=>J`kQg7;j%yMzNy#xu!_t#Q(oQq~L*$>7`6cuz?xF9PIDNVt z)eN`L27^kU`zD&tLK|}0ywIOt&)~N4KS0K-yslBG*XX;A0l7ax4yE{q2jtR^`pML% zdu}?;DRm#=&b z(LXZ=O?(t5l%f|J11DaI6H3twkTV!fQHriH2H{Z|!yD79n=__=Ob?@HbV46|wM(+- z*6m6_aHsQyGv?B6mvx)aEg$PQ*H}R>ZVw1_5|v@ezN+8l{ZOf4~4{1JZkC%;5^j_0(x7ecJ#%~ORIzgoIlFAs-NsQTD_=WelJo@R^Ojw%a;4N zxk4$CqtCW%=&Ua=Qj`_zXRDTZ7XTw+n1`nN+W;nAIKW8jRbp(+%@jkd~3Kq_|&Z>U)Hiuj^cO4Wyynodf^?x%}v++)Hg+yTV!*hPd`ylnWE@Dr@QdUR*xQ zDj#NxQSc30r?R`52sug)xf`N0VdZ@Y35*gnqHAN617T5YLg%SLhugt62(FJvqz?7{ zSU()kh#^YU>9`3BnyOB-Ovokh%+nJgsEh(Nj=5Ly zD_A|V`1HOU4SCEyU!eP5`k;9lQb#G%!~PqF0aZDys8Yv6S{>8Xsp>eXW4czk`Wi4s z51PvPt=34n(nzYQ5hg07Ofi+hs8YfqQwfYJJUqI>mhDvh;X0 z9kaD|%9VDuhal#J{u}1$k4-IXHD4XL=b_GbY7G^u(+S!&u2rrPGQqW>>iNt?FRCS5 zrfT*pOS9@cTDMWGPStmX8KO)zyD7v{r%L}|snbmDq{Zq~*##_hdYSgyVs)zQ1eQ8g zCNo5_I#m`SxlA)CKf71dB_K6t5elCS)1AQP(NpL^P&Gy7C(sWU)qDJuOUOvQe93m zjpGn$532Lzkipcc>ZT!PsZ%8nl?;i(XAVRL2i{GOJd|41K#vv6%&)zBP(h)wKTA29 zRpUy#hB?M9HB9+`*n9IhD~hXc{Py&%%bfv+VaE}XRY71tabXz{aD!o+JAlrjBEk%y zCf7CS;K}oQ zKJWX-!$;?Q>(n`?PMtcnbl-csnT2SFsu1jAUK2xA@#W!|`0{WJh6b4!9vUnXA){cq zb>o=$x^WDa5X3TMAR0Qo%Ig1NPL|dhgmF0WT6(PM~Z~H5jXv!pZ?+_-F^mu)XM{05Oszg%Ru^3w#Ym zFg?)*horFg-RoEw)UG_o@_GyAXsK)og@T#$n0l!k;14EClUo@+A=_;Y;H%6^r&he` z1=xg#$evPz+_=}VtX=oFC~=Zuin)0-4+D)+^-}Yq)2Jx5Uw|>e0B9aY0O8g=#M^DC z^AK-L58VQX22(+60=sE3FFq~iq3f6yTGRE~BE9>i?F#Qj>!M{uq${VspUQq0pm4d& zhg>vFMh=1cDW|hxqOe_Zyc)r~j8oOfA$p&NnJBoUS~ViNnU^P{jKYzU);WZ^-9+0* zN;{-=Gqa2;3P^C01H=d!IgHVpJXVH@!WS;L0q1c-8#xq^<80uc6UVeAJf7)6n0HRp=`leP4Z(9SaBB%)i3Ro(4 zq2*{|89UKMhI(p)?fxptBYLsBNh!`Ln_2W~ck|C=8?p=wim{FYcH03og8ALOeR3o~ zy@UUHYGS1}ZMKb*D;5Ur^&Q3dreQYd@O7 z#+1umixlN3<*-dyyE;O|=5ku^q$!ipyOhZ$SL%1x&;JX_yq%Mo7KG<_GTspV2dnHn zLm-J6vkQ$xC(Et|4)X<5!whSi*^forNTRTTmvzde#XHYsNdJhnb{>&k+7<@tWiQCv z7!sD1go*TB{&J9@ggFD6IFa_I_De2{c0a+|uFWNnW|EmMIALHa3FVUq%9v6A%@fG3 zFZ24*Px_yU1`1y@bHJ`FP!Pr`rElu=oy;aA`jHb&)3$9Co@J(&s%tZc9|)gTP{6U1 zlmQP9pH@&nE|MJJTVXjAaO@;GKx`H!U?^ZepjrM^Uh>8_0f^qY%bN`(k@dUK2t={d z?854UY0>5hd*@@jOY_1Gdn$!@091SlM_9^+aAgd?O0cuYtW7?GztzkrBO(jCZfU+{W_PY$(QN=ra`aisZ2ANT+s z$t;_eD81(d0YA(WMCoAuP`$uMNbu!L@g)ZcO`Emh4gf>>TT!kB3@g_LPyltq_ztU1 zW#@HPqL0f$Jm41TcQxP#!a6$M>7&skXc{2ZR?~P9gLVh_C26M`?da!A=zo+1ofvj? zEL-RPDhCC{o!D3Uj|O!<0lzCw%msuqiAci+7 z)oF0)ZhMjGBHpPnjNR7p1O}yh!GNHdRCe9URBsU-!RqPM$}`smC>!SPq3doE+dIVL253 z;p71S6_!JRzEENQk$-^51KSalYMmh9Nz5`GLBVBD>@0yi!kb3uYg62I4Pc|NW&%i)bHfVjG0EiZ_T9jg&?JZ{OFlcCK6^$~nNWaxT`gm-=voH4ZsCoLh$b zt3OZF%UqPw!e{s}(ZjV4Sk5d8c{)I$zhh2soQr#zz#6a?EUi!qJYoJUE>TpkxtngOf`KD4g$@*#L!2j=4NG zIA-%UTMHtLLDd@z@Y@oj8bEZ`Ppw!iJ@3g)>GhPM8}k}B+JelUhE|43D~kXzNJXhr zmagP#*T|xHBlHE#$UnPn5);k9rk7gW8Z)^VCeM|wECxhC$(a-|x<|alk%n!Nn@8j3 zS4&jmrH%(gc51W0@KKvRpPl?%!gD+zLP26n;W#{^7Ge%bERv!z{}yiG4QXgTAo5-N z2pno$qIQ`?Z9X9U(LTl;GLZlmF+vbJr%oyRJiX2PY`1M*pU-xuKQfaM9};Pah@cm6 zGrK=kqB-F-wMG!9xrYb}zL6P9ns_$~R+6 zw^dlWjVaAe!25Y+F1+kR`Cd`Z0fv?1%f6q2D&!KD{WLG{Smt$6Zv!a9#DlJNz(<&6 zmQ)lTbIfdj!e1S;CD_4*x!iMFQUQ-3H6mkv<4#WAx13b#9EOKjQCXot<6Ohg!is+WD>S~fum z1BlMjvcFt<-s0p=W9Y^_Y1ya7(Z+i`9+bP^F?8k@#LXpUc#^sK-PjdpZhqX{d>x4R zzqoe`hs4Y+jGJ2+H>EjobH^VNGk1L4Tzmy5V|ZQHB8glM@K$EoV`|hFUsNHNG$T!3 zppEse4Zwg|G)r278@S*M=Ax}4)nF37>O=!xE6r2`!ZJO3$~E%~Cl_rdm4ahVC~K%>qbkp}|y0)4$?k zvo@MF((=XV8tF_95U=Pms~HMEWI1AH0~GK^En;>EPyi)nnJ_PN>fM6txp38R1TqJB zJF`sNC_Lnt*#HH+ipjK%0;p*lg(sbQw*ZCrT-$(nWs+$d1-u@KnArdYP}4RF#he4C zZ4^o!vs-{d7fHq(V1<)Q2PjN-%xr)HUO;5pMgi2cjlvA4-Yr1EB~fg?=@UJ24Y{f3 z8Zb=IO``Z5(i{k4u<1VMJ3Q2gF|iN@XRhEE>f;9I;I(B)1G+VgA^kvxbPn1;cu6YB zW!T4S*u2!ylh}y!E_U0}S%Uro?j@}VfS4j)ssZmsLynUaT>e5_u7S(0;e`E94-p!j z&yDt?myFu4FnrcsA9uUaA6-rbX!u%grLZLY*@IK2u%zp}L-5FjaqhZU7-OGP=+jyQ z_W?@}4FDi0-6M4^G4c>yP>OO?$n&vufhOE`_k65Ypb43h$)XZ8!BTMtRDx1pVm?uq z@ovB^k~4DwK@+;HgN5+k!}Ao zRI|XK1zN>41SQoDz@Q1LnQXQgPJxnYH(<~NRnNoA2t)HUHh?}h70`rK&|`&{5Z*2m z{AfVXL?7@@!qD;-^`W=}+6GO^H19=jIkfUdE$K1B?gdJ=06`NR_0!lNK@;Xpwip&b zY2}OgK*7SB1+i%sUVR_|n&4WIhn2LA#ozO>NrEQDkX-A@3t|OR>H#2V(%R!4#PZm+ z6J|(phYlUlIw+Y31WhonW4L1<8_AEDk|y8;ULOh{M&ru4B;};T=xf{_8Yy%brP%3t zU=E^0%|VnX)V~t9bAWiYADv;+0Seww+f8C-0~9ij*%Fj-;R&X6$qV?TlUp9V!G&*~ z93WmIXIe%f!%;LXqtL-ITY}xVpx?i(|53|;c(t3ch{7Q4+vXmtx!6YB zFiiSf2K=b>r~we2^;4(2o`2}%K4$1fF}8o&KG6^2d8EFU5u1}^?N`L$92i7MX*oc6 z(8GikBHBi=7_7(p5MOdEw2_i{*P{)@Jz<(f+d#U}gt?AwKP7F{pbZQ(NuiBV(rj!I zLmQxo84{J2DZo9rt&-Gdows@RoOTEEo)kZ-0WoG_arjs&4pjrf*RVKv_C?n^O{)Ph z{9$qQ0o3#Gdd^VfPzma%F=0UyMw_lhxq}Es!t(8>@e)qZgfZ1C3j(JrA$# z3{5Ijg8FH^uoEn z&U;v>m;6M)UIWw8%Gbb72k17|d0KSw699AR{8`t6x_a3`HxMGd>;P{Pmt%8}o+!+f zph<~G_Tk;mdxpUQO~^m(Fy1t}^X_68KodOFF~qw^H=3u|Pz$LVz(($4;e?JW=aQ7; z3GJoM;`Y!;LPFDRQ0j)Vl#-2d4RuVmQhCG zKF3@dyv&8KoHAgVgJqOa=;)YBgP~jirIrE5I=OU!!X(FB8vEeJoF&cY^@s)nuV*Ll zuf)%}farpsTD4gE^QMz~m!TV%*sUH+Jx$Tl%`z7CfQU5Bsij%AdYd#<4~RhP4HOvu z5U)AzQ0&)Ra0t$zWxCkfhZ}@NV!_~{9A9DqqSMswVi+w<(cC@K_i8|RpbZ_xE<7cD zuLguyB(@Z84G_1g0g)yowjB6CCkBYbA+Zj?p&m6C?uo8JZ?2Wz)Bs{4k>MfvJaaIUys0~m61X_A|?5Xe6`3Qx-E7S^Td^5Y|FtJEn&jBuB zme~SOILR@y0Sc!$W=pW13wugrbAW@GWh|mF#4)o03d0<;B^bqpsZ4370i5pS(g6z9 zj+qTmnC+M?!8|U2l10Gdom@IVp~*3`0SYHLW?MH$5Md0e-q3*ivkAJ20Yqp0RP%D_ zd8Ly(n4uf<*tLyKLbP!{j|c4wcQSP58sg>(+-r%Ot9dqNt|o3Se%Lhb#m!ZJ9y3=R zHy8i7rGUA5dXAp?=Q>*-HWk%Z}N zE{gQTr72ARh(HOAP$~n0(sXMHP?@w=N&T}pzyJDKL@xkci&hA+7hV};yG+RonC7mMTv31mUfXSw7ll$M znF&z9YqLo*8=z3`Buj!3T&QPCZ3E)9*QRY0Kuy~y;BD2!%mgT$?wZL4D16T`O9B*H zUE6>cJGr6&g{_X64p8`wV`c&r?sm*jF9uR>laH~MKk7oZY z&CbTF>|d2;rHvz{joI-LEbz4xw1B*)k7Una%gAbCp%*Sz1;2IzgO`cRHNRwom^-v$ zz+kPoTmzSpR3w!*1g4M<1?5d{p;xLo^~Im{6H-Fo;h=IVK*JdI!jkX@9V{#v_epcm zYxqQurhAZkjmC);ZG~7-b9$jVk2@9`6F|^}oY9(Bvt}qw0YMWqGu|z%7s|7!VE3q5^D%WmNh%%f zrspI5K}jkTmCD52BB_$7l;^z^&-|!R%EM{_ns61T!6${N_7=u86$nxN^Yu^)jZOnCj36zpZ7v>X9~CPa*e%!6U7WGoo|9_{6nDHoQ<4K5$Si84C78s8L!2DobSGC7pfJ-h*R*kZK_3xHeR=_YU0kmR zgtz8u0EJRTb}Sg&OI)5E z4{U)miE|oRK>2$Y+x|e>s6iY1NgFk2quQ}-{zU(x7cMMw|H77CSmvSy7vb^#6owa+q-Y7x|EFWIgPp|Gre{tAf+qOtr$1&r(4>IT zAbH3e&{RX56(1z;D>fgR0r|d@>-695Y!(X+jU*swqWAl-9%#bWqf=}&i-A&b06`PX zd)`Ra3r(b$_a3Ge7Q-YTyeVu6i(*1^etJF&fhLUw1#1qA9mAA@1qhm8UORpqPng9_ zsR6*}m{oZDi!0}nl;hhU{m_SvqmhK|FHIfuL~y-0m;>C-EZU3K29L!ICf}I~nS`%; ze*wNknyCkbW!hg{GtWA?*!ZVzZCRrlax9@5Fe}*a90?e_ag_9?)oJ&%UCy$qUklRBe z3CTl_+1sl2mztiJ$#m(W7Z%IUWNfYepxS#l)(!FG4e8k&!1tL&xAltx6uxlGbb!Lw zj!EC*?5o>OrB?Q{lrGKy&tsOch{DB=nGR3@CCN+@Gb_w1oO(&HnF}{MW`_WU-!PLL z+Q#r<#{zuUsTKt&fRa0DVSeHyGXV-;IA%6Lp&jQ4sh0#OfRa0aJ)K-pfI?r#Tpieu zy1z84X7Ql6KJpkKwe(yEzDl}zB;d{B=j!GFgLpB7YNggj@i1{Gb|}=^r?b|2(O#joQS2<*@fF0* zj}+oFOe~zCEnLjSONG5$vr$BpRLV$4BgO1g?4S18{)@M}N;hz2Ut4`OQG*Uho3Z;8t_eb}#a z#lIRDeBZI)@)&6&AqTC~u9Yj-x~jmCfy z7`g0nrU5-cTM23IdDu5Y*^=KDJt;JeeH1hynLWQ#U#kd8SsS(FdDwJAX%iRf%9gq_ zO*r3BHh9PYEaydZ`y3cF!Bd}9QH`~nREvN?6SC0vPlc z6Jnb!MkQ#{*rm_wXPW~}I3RcK0t=uCLb{7Mc>R=Z(gXnnO$v^OQ&(uY563`b9fx<> zEGWeR5H!Jj#zSRjX^xur(>S_;CPY+s5r;X&YkJ$O6Qn>B+$$oZSj0k`5g=%SrgjI% z!ojk|%mxHa()5P0d>gx|=N-;MQ^a`e{)V3(&y}DFsgZ6siG@HDf~!a5qdn}nczu|r zY5?!x&A0FcR$Mukq?~kt^$E9&MiMTt@EkOIbDFNEDEPSKf_hfm&H;8}mbpodLJ!AG z2PpJ$%(cNtE)0<)M-Fflvy4R)#yRGiU?vxqIAy@)POd0Gp~W%R1Q&4ul-3NuE1XvXWBZ#9#SggpLeVzYKq!78 z+Otg$LVvXOC0u=-Xq!t06w4$=vH5EaA?V|!nT9(Uy7)H45bzE5Hq6L?B z37-UDJqS4)YREvn!(kBsrE>`&Xwq^{^9gH9FNsD2AZWs(>v{cIJ~UD>$H+WFfT^Qz z(gA}ec;oIc;5gBnqb~fV+{vQ2($M795xF|`2`4?VBYi2V7<^R zih1v0UbQiIJ?{#(bggtSwkG-M+qe=mX)I`{vCV81TMdAq3BA#dkK_%1JPsVG8o;-h zRrsJ0SI#9V=YnX6d}$YrBpfu%#{gz~tpc+GgiP@jlUxWx4hRT|QjIYHnxv zjAKQ;Mj6^uM6?>Pj#;Jd=kVrk$pg%P%BcV%Oi>lI2I_feH{>-cLH#uH4m4pR>eU*K zBK`Ef0*sMKSj$o#0uP#G-$VYQj|oD48u<*G)ExDz@9ws9BbkyI;0TUp;Uy!koJ&%U zFBx8H0Jn!m5|#}6o6PWEdzAv!gT&<=;ACc*H3Ee>j=4HGg$s4PZNF*N0bI;1qm05S zj=4Ixk_*3Z%7FJdxuO7t-#g~&;B78|QpcLSu7d=(P?To>DP?X>uB#6Nbjow;e$3+ z%)LHOdS49)zesE~9Q%zE14KfRSQ;3~L%bH?FPthM(uu?}z@dJwL0|Hy^b{eTAU&)B z#PrfW0f&0sQo+77i%&Ixpa5^ljNiobxH7{yj;L z*^}8xj4>T@(N~OT!ns$Q-LacB{vlJ^iU9Xu`-QinxNUZX z9dm8)1Q*_Bs`np;?>jmAG6Wa?>6qyNh0h&xZQ%2$fRaVPcBs<77DA!DW2OTXIyq)r zH`Nef465GdfVZ(z`nwMd(OLRZLW}hLZ%*z-hHlIY{Av?z^cLOv*$kbz`nb7zJC@PE zadQnTV&)p+<{F}gY&mYOdQ;3?b=+Lyu|1WFo2$7oX09e~E_Mx}y{qONua`Md1Nc0% z3Qy;_axO_ZKAnAO7mXxL=lI2F8||T8Gc8eA>?UwgfWlJ8Oa~~ODc#QjKIG)q1}Hq? zm_-2!PdR2fK*4pa&5O}!m-LK*`wPXXdO-MVE;3Pg)X4$D3nPcZ-<(`hqN3STM66~j zL#LUTL~+gP?J>>7Y#!OudNPqI?IwU#Y@u-a#g%hO%JKB`Qlq#%G?I{h_|OHrNd8^| z14oGCIlyVmGJ6RMvmG-Xpit|WEx~dwT++*igw|=m%b8^?qOip=(*X)MI%Z37FBksC zlq>?i?c|CA6h3gw)xjPdeo#^d9Kcn^9TfI)%yfW4g=4n$V}Aq_qo*eU@HOK696q{3Y zK!k-{gfv*Uxjv(fgh)XPk@_aCl@KXtAyT7xa*`WpD-;lc<|c+ICB!HbiP0h#h&7QI zp^MZUw7|N<`427h`XyHdt%RKwGdy36$dTId|cFQf%lFV_QTCG;C@q2H6@TA?lq4Brh;=yyq^-`JVR%`*!38(Qc$ zR_TydLcgJfey3dz&{jgfp@n`Q7T1!_I$)N3^!I3)mkogEC*3Pq{S;TbZKVO;S8-zr zpT*1f8dGQnHtA|Q!-?Qb&W6do#N=#1bd8)z0i$K&CEfYbm%8R38lNS7tOrCcYqP-c zQJbC2PX3H3eGmc&ze#L09EV3F=HkpKyu;?Xh4yH}JdvCEku+Bgh&$t9vW%m`UQ8ta20u*+0%yfXl9*)`8-7rKLgQ_oUfFG6~H2|Ws^kkS8 z>G>N@?rnx{%oFZ6x%CMxVf<(x#zoEhJW%b}VyFtNa%s035W^OdhD(Tls45!OP*u`I zie9gSo2-S0Fip3Ho!tQhT1@%kzOG!u#j;fErbIp z6w(3Ur8q93&AXbdsu|1=e#efY3_lH?+|2VxAYFwi5ac zE%dv8Tq~*H?mC2i49T5BC#gYP0)U0Zh^laqOz1bX&~MDakXAy!p@n{TbUi>@3H^o^ z`n^|NE2-bExA311TT^*_-11NlKi%>WKav^y2%a-neNxO^b=+Ly4ZI}pW?vLDH#=@F z_GMDr`M7sAx5v!Y#LXpc&t;q^doZQ#8Sod(D!e_%m2*kT@$K19K^2W8Y|rt#+fYIy z`i@(~f7;j924D{6O0%b;Fw8O20Sc3tNfrUGadK+|6mD?Lq5y@P95WrD;5ydk-R)?X z^bQF32Z~emfbiGcwMJo!lLLeoMh=BroLqbwVOvDwgIPGVQtituM2M=eUxGD_Mff}0 zD4rxOR|6t=A^UNs^q!aC5SEYxhp?H!A@n`8T*aGljld#JgHzdO7q!F*1oxa~^`$Y* z#D!r;SL?}T-7KXx0XwpV!cz~*6Gb@(7*>u?J>3?Rj}hfsKqz~uTI*H*UueQnnzn$@ z)IQh6zUZUV>$O;icTw3Kee~%(WCXpX84Ea-yF=663s5-HG1mnstdx%D05>=}FF*l( zqDJ!LU`ocH3s?_fAW?xliW!K%r+BX(k<@kYgq_1K8r^ zya0v3F^d8e9&}7UK;d1-qz6!NVK+`xY6fs3vrKqVXmZS=0EG)2(+^O1+%eMu3ND3m zwy*B5z8u2Hf5sW7mkeN-pxNb=9Qvq(#e+IpN@9SU*jihY5bB<&=K#x@Wkw%`u+2h~ z5H^+AtObM_GYL_E&4fwlr(nzp)w#}F#3xZb^)Tl!qXS2lxXQ z5idYtt78@gDBSLte()?8hL&Q8a)33=GP#DrD#xU$%!PH1=?5tMl9|*Oz~`Kt7ohO9 zW70Q&xsc)Xptk)0g)z(|i-5;DIWIt=)iH|#6fST~nh#uX1DBZki2XhsB%S)eFi{}& zbu@Rhw=wO>(||+)Ph*x%f0VxO1Oea96SVg7{?f*RcK*rjQG5VPSlwg~3Spat<_TU2oLenUE}9D39CBfc69a_9#vBUH`@~iG z34Um8s|;-o;4923xGJZhJW`Z%fMMmtv=ZfMqFf6I<%Imv5l6Fdl#V-q(9}LBUpzb+ z>+mirhc6yr1iht{1RTxXF$*OMhdSoE0EOeE<2k@noSYY+fId+pCg1Y^nCx4_dI$rF z0{)e&aPffhv&?rF58%8Q(a3Mll&H~YlR7t}ZPLI*n``6Zp_JPl#FReu1sp7_YCsp2 zgo}sHEdP?|&5rk?8&^6@i5Cxfiu^r>LzvQB23)}(_1oEk($ASof`H$(vlgu&N?o&- zOM-w4io=2^t!6F>0%ATCoT&PTG3;??@jM5(53|g+fI`@2;`|NS>@GHI0b#~$3n;*5 z!nCHdB^z-V!+AYBTD;8xu5}Su6D;N-dqjpV2lx)N$ljXZGakp` zGIBY<8O$fdyp3<7l5ScZg)kU7@=*)Y>YGONZzWUm0C2L|8d51c|4>@NToMGF#Gfcx zL6oL5mjnU#yEyfsi0;tT2SmepJv(2#%>iz85m+0H<{>*@hAs!Vm04tOZEz5e z*a%gA--(W#Pw%K@IiEFO@9Pn`x#2P@v&6q=BPYGfTAZCF!2RzY<0V2G{ z911ShJDvIm@rDyGbfG}hCW)_6a#0d&xPH1Nnlr_+eo%IOjNDlBcHbFf}3Er2GCt^y zYW<1pUuXJ0Q+$sF-*GVvg!hwur4f*2N1$eR383KV);2t zk7C-u6i@n!>Q_hfAP2gV>+ukf>=>m$E#b00w$B^YKKms6P03Tpu0^1{#&eQ^9`1c7M(k zj|7X#zrpnb`r4XdOmFUI%Xl~~p89OL?k^tn{0`f}Go3-5q(vXG+$T&^eJ#I;X{QLa zweIiNtOp9cH0wD@i?Ymb&$KJk?o3mWf9U@Rt{=^GEYpa1>{dsI3G-@9YfxeFA z@Zt?T0Xiy=`33qK>%Go2D*q(&pJw_Z)0dgzY0scheLMvk&&$UHpFyMYc;Yjt-``4< zF^$TD-<9j}1`j;RIVz7wIQM7yy_n+p%~5$gx*7BUmdB%;TKb&krz4&GXT z2RnmC<(ISll}y(&#k+f=^5=2=B}}hpir4r=<-rHNkL9;BjmrOl`Ji|!5nk>SmB&lk z1`e<_!B zMdc6Y`sqyZPBze}{K+iW%=Cf?jmlrf^;a{+d)h#w@;g}W4W`joGDhX`^0p6H9`9)b zjmm@n8O!6vYu|F&8)!8^qxu-{J}eh~6=YN%uV=&i4EJF@(5O84!&nZlR@R zR3C3yJB;P=Vl~j{+b5&?cmZ2A>(7tSsQetRKZeW(NA>5h9NrO+ zS0{r;Vc$YG0RQ`CjzmVx-rYA5(JD^d0*aba}_0}_u%Ht)>XLJ2E5&Cm3<2}q# z{qwjUbR(DXO6I8i6I}m1(^r^|+dC?0%Zr$Q7Sr>Yjv8$1r!rm5G-~Av=Kq!Hi%ef0 zVkN&~+K7*HA_mqoA9Mqk&tZBI(@jhx>Z#k95Bd<7A1NUJ7v_UL&E;nc$bZ57ZbNO$ zdoX>2>DNpr=o`BU|Gr}VubF-up;46#+bd?;Awr|_@CURX%MV~WnCU)Dqx$wm)ZR;JYzQAt~d zJm>m*(f6Q`UFzv+h zpi%jrT;H4NqzH}5Pv!cVOyLJ;RQ@WKyO!yXncm3sFA*Bm49P^F zr5`Z8pJ}xHFTo#aYl@g2&U6;j(tU0HRHnBxjoOQTGF{Cd34g>iDu2Tm%jrAL(veK- znI6ORVx})JeVgex{u0P|ra7i}Fx|m)`*>^r|1j+}$(H*toyauD^qE6#ef016x%%_# zS)Tr4=hvkj>90pvKLyF7As(@8dGm;+%NEREI-+Itf%6XBfB32N|4Brc}c ztY}`?*tC)gK7I4CdEwF}$6I{T{H5fL@Ryw2Y_T>#a^w(|$-wdz%N8`QWCOZ#`I45# zrMgU&MtH&elNT&o*yuPXk^KBcjmIx*3Gqm41r^Cf>-Wle)MVp|ljkqB+>@Mu>BEW@ z%d|W-l2Tr(SX1-Q|2*YoJf$*SyLR18WeFB%7O8Tg9ac?K6;o7slNwy5%BqOJs;g4n zRY$7J)~e2aNs}t6P{paDw4b?HjWyJxyN6V+R9!WhrUq!zYAdfrT}RDarS{OIO6{h} zR9iPgmFdzEY?b^?`(4E}+cYgSS#D#*W}iHp#u$07nVH3^#8Ce;Jps zw(F4`tOHUY7y9eE{~*7Hv|-c4MQkRI&PttM2X9m*8Na%(>Oy1Gu~rw#HYXO;BA0}P zhQoBTKob6^-Q4vg-1Xtu_0a9QO(R)gi1R048^h6QBTe^QUzhlc3nad2tw5ynTif*> z{7*#Xe`54@eKNHX=@B~8^DA7WR~Lx1iAsS;=TEa;kMyqhVApLL$z967UAMXGqt`~H z_uQD-?|(OdHWusubY=XXn6HD{@N>`qaHBH)E0CGJ^K2$((MfuvdMRagsyo+(x2j&@ zt;!YjR`n2{95xh~*8jUz*}$}YGW}1N3UdTLSn)b%tSq1>G|)k3mHso`9;&C%d$&z# zgeFte{Sz?w^45U!2RFNvlDfm_0;>qUF&FL$adMu;nQ@hz|Qc$d+>k# zf+>GJ;}kMMZqlicpFn17nxagcr>g^O0*(BCAc6iw3za>?NdnzdU=8};qeb!>lz(lx z>uXSA0u^3^IE8o(;uQLSVGSCwG2?gWYtBp~=zd36)tT_P=DIr7`ABs@<+N#2R?!Z( zg6@WlR~?KP=mgyMXn*ne%H61Nj_O4MWz$s8sj7RG>O#-SA*JGOsvEI8R;l*>X_e+y ziY|ApRGn*8Dcx$wjIfP%s8ZdIRviu_&Mafv$Sc1?6YfVGqPpoxN80A-P(=@RrQ*J} zG)8sNrGxdKx%QsP42y?rQfpWI30By!%uX=Qs*Sh&skTHnceGBO{&SQv!Um7CMyOM| zCUds=OLvMi^_#0`NiVJKo0&)s{?~6FbvRim+&bE%%Gq>$brA&yLESK(NSu11mjM@IJvOUX`D(_fYXI8eltMXg&jW%1O z8!cBn%r|QKv`ZeE?$$;;%&2v(^T11Rg)7DpkA8CS818yH@%!T#FdBuFcMKt$_Do*A9kju4(I<3B)Nh zgu0iMa>>062O?t1Iy5sc5D|xJTp)@w*%@f7fT3_(1v($@S;XTRt}V|mdnWTK^-El7`pb23fH(pjxKm&YR;4l;>2J)DR~=O<#<|Jg)L%AUxG zT9Krg7Vh{2)A1a4JWENG@lX7pO=}E&ctmy~VJ9N^V@>djGtVQn3XJ%FZ$c!6uRspR zJ3|q6k-+)bjjZTj>z-v6)~0okK(qcZjGnhltvp9U`j!lS70#Jdm>o znk`TNF((1D&5yT7jB%Pf%^n7(YP`vAtQToqrw-NRDE()=nx@G(tG2JT$)^amby41# zVv|v|TD8^?EiIZ!G1nxs#Qe=WRg}@G;#d=2I-zy5=del&mS6f1aeGt|oThqYyeitI zPthM&)sfVgOeZz`U^S^q4c(;19IuAY=&Qz6sY%n-phh)xy6U)C^`EVV(}qmP1^Osx z4DIv7&r#!Q)u3sr|5W|?mdea9pMQ1CoE2+lmA-9Kkf#=8gsa+s8M75mP$3eT8-=DdeeV_8eXr;)|;-3BUcVVKdGjII;m@>tMTEQ0k+0= ze{9BY@#rJG_D!l{t{UI0qcDJ@&_K&3b<0GX_U*iW+5U8<0ni&~$4njlRsK93oqaZL z)@qCF;-f_*8d0rjs&jojW{|S6(}V2!oj2->!{R? zj)r3i!`&WqIm|Fl|FF;kVDp~ttIsm~iZGXz~8lHgWmx>u?m;}M|BSb*wOr3sJ? zmNB8EGpAfDjMtY8;wz0}hgQ{*u7x&;uVyUSRXuLqDpmO~89O_^dMw3N^0CKOlONr> zcJ+&CLh6E9DoWx@1vx@Xg&IgQLsqFV8`Z$Z>1xIlHDrbwwNQ^N0ZGxVJ8I85NbH%7c2TQW6Ea=Zki}~BLUr(T)mgeTh@@w>sxjzJcz)A` zX?Wejyulo_^Se=}!@!NrB%3(DW2>E;-wCS#Z0q^mrPV}k0wQPT_ue{k-PE}0I&;TO zRpm#haSfCV`{==^i}rEU&GIv;pl3X#*9a}tITKJmx#>+QTp*rZp_)MJs0}v-pGZ#*^k_{>GgyqRPi(j%;WP8reRqh^`)j?)zJ%k$Hq-Q9lY4t}sJBl>dP{Y>xAw5HF>^7As*KDH zK5Q7{TUgV^k(@5~U#4qgn#-m-K(~8j{8ux!i@|9w@J8VkqhRB{InR@F{}pPQGQ}9X z*0p8ycGw4o-@os)ChE*57@&K2fbKU6nJTh8#wVs4 zexe=F-_cGN8qj-LemfeV0VSRqeykcdmJUXyjeAWSk_7j$&hMZ@yA|)N3LNsZZs-phR_T$)qkUDfa)8#I+PgChsODOr)^Z9C(GFM`4qR2Y|$!j z{JY(VlO*NQ2H@UbLhauccki)K^{r0Zxc8WKkB&aZovm^0Cylnv z`kPI)_4a8q_P&2}%-g?)y!|;e$}|4c+&|GU9)zWTmggN^kWeGE#&ovVf{VK||ct*!@M3Zs+H9Bnj-ITJUVh8n_c6v~)=dW@-t?bn5I6r8omoMMn(Nd|q<6qZ~ z7GS*?+ZnmTh-=A=zePm#e4+ELaeFg!Uv1GdtK8pA2B7^48l#%d+?40P46g1I^+UTG za!0gZVmUj@%60oDgPL)WvFB>j?TrX8tp=aDwfemLsr>;@(~BTYQ=52d=y4_nKjgLg zGg>5cOwKz^$7DDe)H$lldR@E4bevZH582vPSDFynLe`=XI7hCC+~Vst_02H0Lf(P+HkDk3RrjMusp|A&#JR%zY(Q9HZ; zy$NTDUG87WX{%3Ce6>?y&SvxM%J(l=pwZX!o34E9=%00(o>3M4x0y<7*D}iev)kF_ z`|D6UME}Zlfvixc&*r{;$ra%h;v5r9JLSK~Q!Mwxb)UmmI_>?N+A|mO zW`M{yN-wgx)wXsXxArkKC_bAwJ|7ytZ7P=gBq>w=pOB{IW+V6Vqfjr){qsZ8ALU8g zb?l=Sz4_~l347=(_b&`-d}uVV+~n7N;OZh{KF+_$*wDud&wrogsIO*xH&PvKY*f=D ztFLfXMxRLu$oGA3(R%vslmEEZ)u_} z?f-%rGoSw8v$92E`!8bKXttsSYJjdoHE)Lfs8(+jww=dxup;f)n`Qp(cKmdu|7Wob zn;HL?WORnE?W0C%GR<~pnq{`~=Vj8;|IvdOX~}%9s2k!NbSC{wgO7w8G@s^XjGX!O z&@2c>?D2v|e?>-3b97m&yyFtjw|g|}(D~Qvwq(OJBl?PipH|934qT?YBT7tPRB zsor-ye_KeCX8!}Mc`s}Jku+zTHY4{0jPhOi%6}lYlWr3j*`FC%b58H!KgWx}O`(w6 z_5bNmTyKJTGwn@ip9vj9e#+H$#WU56o2ocy^oYj?u;PSsoEIRA21f9F(v@Ue%Ya{uCx_B%!! zD?V+5muBr2|2E9hR&zOS^J@A#^(D)Ax)a^AF$>o*8FE=zK3sAnU*ie*Z+w1FEaWw z{eQN5NDZ2)hV;X|ti^Qfq|-Xx%QEWcL0t~4#(?Ml02S0D^6OIy4=p9Q?bVRs+g`@V zr*1IhIB>ohDBu6oq)?@QA&>pXr|QGLE?3x_WOn|1f;6ejP?bGne0-`N2O~<&`2NSI zx;44n|6wTmK6WWX8k8osbQ9Xm6xj+DM-rS)+50GktK z_PT+5v>xiqF%mzMr|CBwPT3O1QAFsq&I{T=S!}mQ$%FAy^MctR_=Wk`Yb|!5}-eS(s%gevxsSG zOsyJtt(sBm&IXZ>A~qKOC_+rq)ujGH7Ju=hz()}y$N{>4t3RQ{oql|pGCtFaEBNq7 z5!Sm#HKR%;eh6V)3w;PNz0D6HHp+((^|%j4p)8Ml2tl6#5m$dMVLxP~p`e)MZ~7u4 z9g1n`56rBgwz^GG>teS>xzTFQ75pK@=n48>IDNf@u3SgYQ1z6J`)JqbV~BdXSvZ=? z<4iQ`bw@_1`f+NUKBq3yx9K+`qTvrCLJ^gZoYAhht;+Yb>8yU@oER9X1r zhmEohPsch;ap_J&VLpBsLw(b?md4W^@9s)}&Z0kn7_S;AQ^wE-31(_^r6To@xZ_l% z?q6NxV+eECkUoZ>#eWS6)~Fr_)5(=SVkkeBq$SzxcgF0{n$I9A?Pm}sMd>Ypt_QqV{3%^!9pY=sc=)&(C zyQ-K=nGI$)GFNH-xAstD_-CD3=t}TwS}n|#;55E`a#w=ur7>+ofAz>vcP(k#`8QcG zKc%JbE*Sx5;oqx6?wZTIj8E?7U+QU{Dto<0pG)h~6unAn;8TBMt=j9o@5qd8&aAUW z`rB}Ge7&dTBG-GZ1&yw!k7W6JuTo#{_1E(_6J46fJI{Ycw#>mx(C5usEu>VM5sw{_;Ww~a@U{ssfie;*rJGC?P^^NZ~k z^XY1RvK``IP;3vzpR9Igi-G=m#-lk< z$Z_q*W@v0|U&ymx?uYB1=Q@335_f)XFuHcL{aZv=*U{Igb)I0o*Lwp#j(Cg3?fJkC z^X0~z&5}3s%=PfEq&mCVnIOKAr*4x>iy%w>k*7}g2(34&^F2oWHLebK=9-ZDt9j}@ z{LN_H#%V`F>skb@zmlg;x9qufx@>DU6GtxF%wjpX)i@OxtxS{c&1=Q2iWbiD1ytwz zTQF{vTBH5f$R4&Y8?McHEmD|wm;v|vYfS}d)o1*_liFx|eRu6@eY4tL&(#}yc5^U} zToW}$?U{%=-7FG8EX_YL^%N7j6YzX-6XJQ}YTDuWDr5{*cE_U>DaLLqk+)G)S#(35>*OU_HukP}72!1FD~tz=Hyf$nqE$MlZ0A^RHz_iR z$~MinoA&jg(=J&vwIppQ#rFFCx2w&^Kjr?PLP7YAYh6cz>#WOnTSIgzh6s?F34nR<*(-O8rq%BkFcyjagGJJWw*sxx|TD)*l(uAoJN z!r}Y3tk&O}urqozRnUy5>umD{6cesn-~}xNf8}u9vRdDbu{z_7PG}X_%6`~=nj9pX z#?sBMB0M~L*P~B-ioMKdW{r!T)$A`esLuSDs8%0Ln((4+?BG3eXS#OPk9Ivu5j_&Vus z5;fOJZMvZM%_TabeeHdNq%UK}98dhRR$PkqA^s#K`<%Uj*w62we==}FD}7a>Plf7t zs9rXXmr#wM6TACvWTYe&^OAnZ{8I<4qPCl(Qw6f?d(^ri4;>TuMzr65` zNOmS1KJw!6R964&hCXfXri%TKQbqgIZ_hHlvPV$e=)37>IT`<`t;```f4J`MOfy}| z(QbRP?!+x#h0av}oimF1YsKBNdT8e8yB2hNBKwT4J7Ke_(6^<|=L*d}fNE_^ROpn| zLe#9^oZakqAuGf@7))I_0tLU4B&tY)Zc>v3++N8Ctr}LVdTI&X2-!ZWmMA?;39s<-FI;6G zrc`IXGFpPW2<~y`lTR`eU^R6*@Fizo|lF@7Hv{xrC?KBKrQEmnl`* ziPV@+KPS}RK-K7V)ss-Rc_R&1iKmwl|Cox9EwyKcxO?bdBd$_qB-$}^sVaVxjQQnO z{Dew1iuk2OD)nFeElK^w*ZUg<;~PggW8>h=nG8jfYIBZ zSp7B=9B*nn=wDSGt<-1s05RX&W`wEj51Z*eo~qL~&g|N|O|Q6_*X_!CROTE?@1FX1 zms{${h3+c}-BM?MO6lE_@q<$PHQ%%JZ#KKBPBb&rPznIunO3=qS{jXF<6E{X$EksS z|6@3-m~o6MHD&t^e+p##TD2Rs)Kj-apW0^hqP?3>aT`iYfZpKhjE43)Gs}$j#=hoZ zR-V6ftJ?s;(zLu)HQk=O((a(S< zs6Lg~m;vdN`IzXUuBuO_iVV=e+~Rq5WGE)xw?=!Xqcg$pNi&hG_4C&kWnZV})}K*H z&()$cX)4>7Ea`R@Md&J1)* z9j&??p*mA^>eOy@C(VEG44t5>%)Uk5ZS|T>e&CN9N-g)$%a&dN^_-PlF3#9d=NzP} z>=GKcS=3eK7jHGa>F9s(JwpD)MLHj{lW3WV_FmEK(PL`_R#O)`xUtn6?eJDTdc$i~ zC4I}fRqbvDlRPb{^2eFahaU2t*}9pQ7XPj@Xqizuxm8IoPAb1c_G5xY1L-jlnTI3s zLp*I9%jo-W>+UuatSqy^(2kjHY9I1pJmpH0I;>T7ZB_fw)Zm5wSijN?TDHr^rmbo( z|Bqgi9_=rv%lh`z0j+AUN=3hX?612(8Aw~|-Slv~{+Y9~HJ3__d216T`W_j|^oJ;pJWpv2xtl!GL;tWH z)6DheHv|3knxp%W9l3Hmcr3sm4!hbg5u|BuzQGPnAi~S!(!r)m6M{)>DYw8KRdqx|y5F?jya@ zhnFEuJS3Dd2b#rW;=<5i>`fx$&Qjx7CbZY8+q0c1n%{-Gzm4XgQss0g(jQKdOa4}`Q|;s!nx^j^m0BCw5hD=xX-;j>A=l5oYo2L@_YWW$3C;*PSS{cc%zf z>T?s_EXjDAD`=11+tXW^e>6SWh{QY9tKwl)KFio7+t^ESmN?d&3=S|^+ulwReTL{x zx;;)+-G}OM7yEN4A$>Y7(n6?@m-;A5d1fK4ft;&Yp{K`B8|LUsM^>B}$lEM^^g`Rq z$@;=Re9qA0XE&>knGFUMmC)l-=N;D6H1GITOO`I2w|d#qRVOvhYo34n(#Cl!N2eAn zo`3SmjZ0I7L{^P9&mvvXXr5}CTD5R~^ZeAx`6n%3YW}WRVX9|0HXo*+E1H_Iq-EaR zlj-@VCr($PVZ*Q@b;KcujO{!4 zh?#ST^c`KXUj;wB7mrmcoY6>|$p0}$?e15N6i1DYd^0)jd}JCZ$F*&xAW^4H?bd+OUo|Q zaX3fE;q3IJ(!m?lq|%XR(Z!y&Fqk6Jmm<<@(u1XClOHS19?p4z_#D^Y8g7aBw}biT z6!33Yo_~|XzvY}zvv%s=?-Tu-9Pw{Ezs}@L_78bj&95!l%lXIiq3B(VpSFc~ujkj4 z{KLt&8E?dAIlsPRd8GXv%s?^I7Z<__r~?Gy8*nKf#YXe~tNvmLAt|MTaX(ew4i`b2UBU*(-VB`M>EIUS$K1 z^WH4{3h}{hiz%avyO+YuF!}muD4e;bjzp-y2Y!yqV&oRML#Q{VVOd0Or$nO zQyU|xjlq*2E$ut`FQvU`E|*PyyfjNGX8tX;B(;M(GLPd$?I!1$?nGk=8BNHxY3+;7 zEl?$aO{H$gq*A(<=~PGBdMsLA4D>W@STjxS>$J7l+JDgIVR_$BT3X(${eb2W(rKMe zT}!Cip!W&o3>rn5WHm+;vU1)5sZ@=r?M%qlt|dfDWaR=va}2svc)t>KuhjlQcpnP- zTu={sj=!}xh|pYPZ5VHOFl926XPfAJa z!9YR#60&_eNO%(k9WH2=$Q>!XV+1ux?McGBn$T?1kKYhF%Ahw0S+BkzRBL!6h*4+I zfrKpYC_?pyH(z+y5wiAvN2tNnzDdYh?oMw*uvYdURBLK~O32E+L5M_YEI$ym=UDL0 z74&yPHbNf=O4IuiEU%NGeuQirqX;z^%Toy1HjWguhLF`=FX;P%E)?{#pw|WMM(j8=n_F! z3wl~m*<@(+5;R!Q1A-nA)aejtR0ujy(6xe|6V!*6Rojn!1>Gv>--K+AuR08weG?(8 z@iL*>l+NOIha)%kAXH~~0}0vMeFZhq>SOJZNJ{VQK4}B#b3QGB#M66=tt}JOO=^1y zueYGSQaez1`ebCS43k=Y9c6jCC5v=#Y`c`O%$q2PLcq0Cgg0G~Ud^rU9O3C+TgyjF z?Qz0eC}^?N>P^mSEEm))wJpM1D`>scZV=wNg3g!Pjl#QB(3MhqjqtVzx-cuxp=N@|}I-iv~ENbT#wdrQ!JQu~qcJ{9z()P5s8 z{bmyz@id|RiSMVf!s{TYOlrFcua}_SQrlN}0|gD1+F`=em&dl<{iSxa@G1pOl-fgu zH$~8NsjU{?96_~Gd$jP56SPoj7YlExpyg8AEW8#$Yo&I*@HPlKS8C4}-bO)}O6`@x zyGGC!sl7pXHwoG*wYLfH*Mjbp+6;|jCH>z%^-~^cFZEkOhZ^3@zNr)~MO1sDpsj@T zdhey47xZsIqxzwC4k0~mUg|_b*2<}bXbT~Grwh7JkbeKWt-XSf)wo`G`mOD@_BVp= z7W6wpR^tgluL^o!bEz%r56c-r?Fm_X`mO1<-Q5KZBxL(mL1?n+(ZN!Ch@k0$ zss+^vI!4g(geDs+Ckk(wpcX-E1)VME2ZAmZbh)5Fkbb+l?Z-`otoPdmJtyb`LEQ#G zuAiWT1?jhVTPq6%wFGcQtDxTr`n{kh1wA9^1wz)ceqXRf`pv)=wc87=wHH)I$kz52USC1_ z?Z7rJQ-n8NP)=%36m+4Ws|DR8NZ;nM_WmO113_O3>Or@CtlR)WRfG;V^QcMC+fthv zjM@%_Y)s1pb(h+H!W$&$Kti^)X@o{o8(wOz@QxR>Opw0KWaWNN$a?jL)P5_xVtPxi z^`)brE`)4r2MAgz=!b-?y~_z%-KzuzQhT%TZWZ)MOMa1r3qf1B5q5&;+Ti65dQfv!!;P@D>PKEVa$TYZ3H4sr`ZQ zE)aANAsgqvirgzw`*%TaN$sb?`%;j8Pp|Fy?t=CvWMef{P^F-Wf@TStEvS}|jp;Fj ztmP$Ady=3PQhSE*S_OSyYA+Gq6@spj+M9&8RgiuIuZ_#!Mebuk{}ws@MqJy=9)zr? z`faur>G##z+5-d~E~rXSouFd`9Z$%5u#%9qw_ecsBB$T!YTM9nU$q*Kh}<($`@Eo6 zr1o9meJIGMcV^nwx(Mn+$hOg6&?rF%2|8R*m7rOK>{!krWGx>jwF?C;k=j+lJ5A6T zQu{;UT`1@hsnu^twVqxt=q9QCweao~bg$GtEIj=lR%_)MLN=!QU8lAm|CCz&K2j^E z-!N+Biiub`{dP}V+egq~Li8W4o%<27a)(Im5rT4r=s%KcAY$c~O6_t%YY5SQB)37( zby9nypj)N(E=B^T7Lw3)R7ResokE0tlVI!9VX~Nk((%TIjNm1 zXr9O|5xF%|dxoHMMebseyIyL4D(IIYw@u_8m0JBlfE}6VMecQx`%G%T66B9We>)1= zhmf_RKWepTwA4-}WaBbhYL5~$U*t{{xwTTeUeFIk?oyGvQEGoC=vN|lub>@*-VxM} zKFYA3winc$kR8iC30a>v{B@)61khD_Etf6 ziQMl+?kTB#PS9&2_nx3)x=^$I?I@@xA=}@6glvEJliC9XO%%B*k!z6Jd4iUR+)9z# zAhqWTx>)3{5%fDj4-0yYkoEZuL1m-h^WKE)Dmsdgl{-jKrPNLl-gH67N$oO0r%UZR zK^p~KD(HGaKNYl9SJt(zL3hx;~FG%g1!h2WHM^gKZ@bt|W+w)>V zb}YLJ8Y#8=3z{IcQwUj~>!kJ=L5oE06hRkC?Ztwwk=maSvi5!}wc7;!QRE&MxgApb zx}Xn4?n{v?raPaUyMlTW;@l;~xhu5?3YsW#RU+3Qwetim5xJEjw?S&p6?C!4T_bY0 zNbN5LZ4 z$omucD2ntC81K%chsimC1VWT!fB@mj0mvm_5)vFBEH?y21B3)3A&JQZ@FIaE${5%M z#baGo)b*D2UP18)pn^BzE$SlfDiL*6TtrvR`+e$ore`L&{&x58|NVU4f=++yd7gUe zsp{(Lp00YTm^*;cFqRv~=p5#r&uAHQtAV7xI_5Sox|QX20m(abA9G(|bbz_^kkoe`b7{OxYA$7NHPcoyssoZ*{6Mk} zZeZ?>jP7K)2N}J>+}9Yr&s-Xlllo3F_XkE!jK9fz6M&=~jo3+>dojvqxdlM7l*^b~ z&geqsUdFVwjILoW?UpXJ+|S&H89l@3IYw_YdXLeEK+jV;YUQO72wV&S%_}g}IM1dXl-%Gwo$YN0|E+qaT@T;xoClv=gH)jQTPfz$hI^ z*2^#;SubZXcLF0Xb7wQHkkKVTvTRqe+>Ok=h0z_%eTZp07`?#UcNu-m+)o+(i%}b+ zc#IvZk~2yMl4a`#B+Hh@+`){pm^+SXG>$FxO=Rv&rp;w^E_0VMZ8@VV=3dIQdPYsm z-ORLW7~KdY>-0__S&m1U`vjwXEcYtQ(MY;X`!&-XD2^;q2Sy!%q}=I1GLON`&15u& zi=4s+)-DrUJAj5aa4fzcC;_5sO!-v+{ejJv$Y=wl#h-(=J61tCz!hrNZRr? zbKhh1G0T0)a%PU!XEAaEsp|$L^<^?`4AZ6nNn55dn$L2@EazkHYDVi=ZUf8xk-0ZB zx`*Zd!ssA#-(+-{xt{__oBze!Hbzlk$+9H^Nx4*+;3{$?_%x$$Zn8JDAZ3mdj?j8O)u-sEFmtSnguxu3@yE<*s76KQZ?XMh~#u zE=F%N_dP}*Gxtj%Sq>8oP2Ob|BR7yNZwio<8_3*rMx$6Rm*r+LcOIifEVrD|dgg9m zbS-mlV)O)acQbl{xo-eT`#xswr;NT~xu00heYP%dBBSm=vb_C)q`u+I9mQxq%T)nE zCGOQrnOo1OiMgAZb`7Jun7fnF)6Ct^=p9DyGy06tmyG@iB&~OPwN;6XdIHJo+lSF$ zAemwWkSy=n%$>q$4$Bp>TorSDjMlK+dY1b=bN|Tb4wid><(_2j9!4Lt+>b!Ao}(t| za>Oy}1SGjVnAV%o25m5hAMt!G*zqm4kaOGb0?F&~K65{0bd2Tx$#Tvqx~`%b zB>~BNdjLs&8O$BVXdKI(&2ojzUBIZ6<*FE6&FGJeS{OYKB=bE4B=6O~GHPYH<180h zpygbQIswUYbOVz5hA=ma(U~ll&vJ8_dk&)|ELXvDbcP7gfFn2nmb69Q(qbnF~W^^x* z%;P~uk2CjKAZg26%ss^D?=1HZmLvBGsV|aIJdnJWU4f*&0n8o3Xe3ZNo&Nc(d-nJi* zlpDw>gSlri?JP#Kn7f!!1#_zzH88q@(Y1_jV6+WL*59o_(yIHJ`!J(NnfnaWo@4Yf zbKhm!2aG;q?mw7zoY6_Od5+XB078m&3^@0Z8>>j7Bo|Oh)<4odzV!v5>h-7*(*`YL@decO#?gSng() zyO+5SGJ1{WJ_VBZ;0fk_&!~;LF>`b&-HiGG$+SZmjc0ByqgjmRF)C$r0i#MFSqDBK zskxrHjg0)vy@qMOXLKWT?`GP)j2>d{Q%u{-=tUrT-QHw$oVnjJGUsZ!7$9kLHz3)b zJ&Xpj+;Eo5XYM3MvsmstmaAZHHKR*e?s7(dV(uM`9$@Y+AZg!z=Dx`2OP1>}PuF-N zkSs?sqi)PiW7=Rw+032B=v?L&F{)zZW7NRt3Pu}%q|KXwWIOmHb8lvJJ98go+9Qm1 zF?S!+USM>9x$iOUFr&XS_baCTlhOCgbr$Nnie@wfNVcIoAZh({=FVm`pSdMWD`RvS zb2l)$p1E5Y{h84Nj9M5y&FDEGS*I@pNvqyv?gxxMV(vefcAU{k=0?ufC3i831Cp9k znAV-qI3QUsvsrE-bC)nGV{R?eE@HHixmy|C$=vOXo?x__(E&!UGkOO|*2@P#()v%C z`vs%p%xzPxgX-_ly1V~=fv%T$ zMu|YOY(1IQhtWvpPGmHbxpNsUWwe~p#f;W4Y5;(GkTD@ zPcm%}qkYVMjcIQ&dXKqBnf4i@ubBHI)6Da9tvP{IYhqd#MyE5kKhp*=ngS%R$6}VN zU~V;|Rm^Q*+7*ocz}&kTJ;L0_7`?#g6-FO0I>P7^AbCAL1CnJs$=n|pndfV69FTne zc4X9rxxJazkI^9Jj%3=IjLrj+_2Of>dgeAV@-z1urv0AL-Hh&K^bn9N(Nj#@%VijIL&M3!~c^?E{i^`T>yC{3&z4V04_hZA^14)+I_})Rj?pAgONv z(}pk_%G~ix%Vji+(L6?_j4ohw5u?i(ZD6#C(KbeZV)P)RM;Pq_lC^Q1QFO5`M`s{; z1ydOHVD12>4Pi8nQ4XVtK(bzDGb&a&k&MOy$rO_rEntLY3{}3DF#0V}uIQ2ez_e|QZe{MD znf3sq#~3}yXfKeo;3G!=Vidhpb9*z&V3Z9s3bvTWLZFGlswIrd8C5Y_&FE4_jf~ba z+QeuJqpgf?Vss~??Tj8~w3AT_qo*0Y#OPHibNrmbh%R;Jy=wAY#THq(A!8ZFr=^GF4f zb)Uwx1x#DWv|E{WC(~YJ8ZG@P^(CRXOMP8|By9uJHZd)|v6=rch1ko0u7Q%->LWe_DE1#IbQm+1!zEvy;Pb0#RXq-KCJ3lv%` zGeB7m3ax_>pwxpx3ta{%*MmZ93rRoejh3@IDXaP8h!!WJ@6fK1**MUMy zJqGm9T~F;Okm@l?HB!pJe1w-lsSl!j017R=NP48q7o-4zP731ArDYPOOuDaRwNFS8 z1v2JY6Aj}^MUkg;vGB6Qq_w?!Cw*~EjZP%;GCexV=k(P9MKA(-s4ou==~V$4+;ot6 z95R(bLh0238FT`WDGcK4h?_D&=zzmveuF3LDiRM0rz;sz*XC*!3lcE~C~6eQ4)b0- zjb+{1rG_gRbPJHl#NTk42}%Z?0Ax1xu&38}hLS{WO3zIC`2{lR&X>gb)QGb)er0SInwP{)E8x+Ohc6dh^ zWltF8{V>YWAj+(~f+Dd>x3IvY@;VVDLoAaTjtE*NE{t+|7-dix#T!JS+!rm@ja+Lk zW*I7bEn?|QN*32HEh?)ht<-qY;>Fb^D|HO(iEFs18Vib-)aYn%th}tEM02o~xgnc< z>ctmdtYLa}Nokd@I$bQFZeLwpCo8R9v;ymi(-Q3ZSy+Ts)k6tI#lzd7jR>L1b=#3# z8FK2}gY{#j_fSH3hBc##irddHEO~9#i1M1nAvz^7T(72w>aJ-|i6n+A(ezLyP`;u) zOF#@)B89_C3FYBRBr#lxriWTmGi+#hok(IkN`!DbmJA!(jwOQFt`bqqP)kaO4XwGT zCgkc!Vz?4bA7Lyl@dcWwdVMRcttd9iD#~mev0}bxP1Du8U0x;b5;X22V&PBqqKg92 zrR9~27nKJqha3r%`N}FQiqsYa%3ju4Lb-}P0qgrnp&!CTM+t253^C|nj6MbVRF;6?e9{QfaLxfCYRZgkwxoN1VRg78{|4E z`{*4s+sMw%Z)#bSn$=S3?%61Wo1^oZCr384xV#N}TzUSyTz5W`%{;DM+>BL)*gY$#@Y|b^1P@6 zQTucKkfG~TzjtHj)}PwinoiVu{O<^+ zV!340se~S6_s!S3JH- z58eh#s%uI-w98CMrKhsOv&d6XSusS#)y_2^<36PPkduimUOW@BM#^1YJVRFaYAZ^{ zEiI`isV*x_NjTkawxM#>x&yZ_lvkqQ;!kZwP1({4)KFQ44;(ANA%de8fALCN z1m2Xv`=QCPigZwXao5gJ9ud)@W*O?(6RarG68a*gKEjc%79@{!Sx6M=q77&wB0Gd6 zl6D0XO&7|Yq4b!(npq-S1y7n36a8VMYoEI%2rer6&0<(YhP`3(TYW@4M%mt zWMt_ak3X;B=s;z`ccdb`92J#RSC?Z`9m8>JzrEl|A}(dM;kYf8EM<*&St&Lg4+~v( z;!4Bucw%Y@|+$oH_V$lWI^2u>}IHRnB7^#wB;pJ>``SO~wi;c)Lk|{$pO4R_x z)fEkH6q=Wnno>*b2un6EZjD(Zh}$oP8lR9JHk1fyNu9X8Z(zR>9^M5A1&qM8!45ZsYP#g&!I%Swz6mnIz-&GZ3CMAJ(Weyrh_`9!?? zA{$qX*);}zK%}c9{>BW#pIB-jv9xhg0HN|Jsl2sor~ww?<+Nmp5!FiwS>bO@QN80y zM;xWYi{VV!Bh3;Wl3|uvluHXWS%iD#$uPIxhab4{s5r52ms!?>q>>ajzO=lo3P}eM zF#^XIV7N;Sb9tAqkkiMYyoVz}C9g5e@+cv?c|n5eD9shIR1XoG&*?~y@+#!!UR>sb zXmuQkE=0R2#LE8$YYMG3fGhh$oA~r8Dk`~x97MXfe7Zfg# zC)8pYUWi03f<1)FMPmjug3yJYf99OgbY;vL@#W~U%{lobkqk;l9Px4&G;_{$lA*7S zi*dN=_B0FQNbwzrZzEcnVa^v7d>UF!5)OP2CQ-vYuj4TY&?ll&9Mrm65O2qRv}JQr zXSx&=^am?*E4>1DrRxZGI+qO1d2lw_2!rf$!;a5NXa5lG6J5V(`Mi?{~3TEO+5j8qSm_?WLcQ~YRW0Y~a zM#l)_X!L=`BBY7qgo$p{Y7`E)Zv`rEd@NPg0>sZD8q7XRn0*CebvO+5){NVEK=;%8 zgFuICrrG^;x>M+Ioo#kMZ7cvCuA93XW=FHHD>265I^EUL?9?FvS1Kaah=~~w61tTx zhQl=`=FFJUF_RK;wcOwku!h^{XQhnA&l9I(I-Xl$e1pjo5-nB(^BA6pA7R zFi)u!9CR+7&HgErG}b~=^bG0dSt&Z-{wb3Z$+GOO*X0VKc*~Y|MDmVYnC!OOqi6|1 zG`#F~j4|gVQ#PIa>r9k8OPHH@R6z(vt^3FU!?+sXB9D7 zks^%DZ5sFDoMvb%N7}?RK06?$ZPZzlwm`1I=o1x$kk(|bb#zjW&Z94w2qPrx$PvkaD zc{C)2itWmvw!#qWz zvR0w2I__0;7pNB+y-`+8(IY-i$qBOzk3odcEUB!ad7@E-X6G=f+9|8Dg-&>4i-6Xr zp?;p9vh}GX_QW&VOFSd2ESwTRr$9YxXwUi7Elny>Uu)3rXK0wJ)H{p|S8vl1trK$g z+$HX$NCVUvwGb*q?-JNRm&w{zx&RuhFOslD@APT(QVDPYR&UdhKsM7^p8|t%#;Yd+ zUNvk%_h2@XfO8c=pLJW+tv6Kuh$3`QB}q_c{f?fg;`-e@v?~kM_Y{ncz*r>J&A;N~ z@K@9k#naP`jLIrs21eKxm1p2{NYRMlLssEff$uJ>h7HXqt0*p~@ASV&N__J$j8l9s zL4L*6z9l84HR;Q!{%U+n%F7l@EI)=b9X}Bzrq3ymgB6J5maeLtbOGOIoT&?ZJ=Fw8ORUozZr&FPfjkQE< zvgS=Bo+6IJsyvAKB(KC8La}l5r&L<#waf*oFiYir-f@;S%}1Mg%e}j6=VNE^7?)?4 z*yG%E#HSZ}EH`a-9p$`4ZtIPGv{Ac0Y}p-c3g)tPU^?P_ianLs`z`Y{Fr%CUc45PB z(=vw&(dC|qC^T5QiaZ#jKK9Y?@ZgQ7#b{FKHqe3?7<&0X@BbY1JHNO1HS$aLZ`OTT zlDZr9L!pO?Yr5`TE>Lv+UeTiB`b$D!|K_~-=@I$1txG4w%(cb5F$-+5+?biRnArRC zEhz4fBhvT*e>)09{Xv>QJ%Fg|i!|u#7ZoDXm<1%|3Rw;e@l=re%u(lxeZKIQemu&3 z<|HkF<*2}ti{BV3Z8t_9=F-DJrX`Ccq8?YKr7oU+&Bhqp71uN#2cqXnjIlOSrZ5ef zJ&`PE_b_^#Q46D&869NwBM>HaL0>04(4`jqdQynyL6B9ZkqJcgVj5$ZM!%pX_d-Tn z7~KXWQ|x2fr$91~FBlyM>M1OUMS&$Zfl+Tp{TPj4G=`CvQ30bFK(cH_OeJ;-P$ zkj(9IMo%-^&*)V~Z!r3R(Gf-{q=6scXc4+Sn?@(x3lPB7r&iooa6R}dX~UT|ifIK* zqnlpJEn(U+riIVW1k0$UKS5!GikXH-Jl%tsDsnT2h< z4zmS+siuMhedw3Lqu!Ly52Gv(qtpjcu14%vnHgrE4swcD*YNMu_^cXE#K+%o;wU}G zCFn)s*Do5qE(KnLf?lYI)$VIk$m>;f#_(Ytd*FE^m@U%Yypa)EIswfap_XSDJJFHS zlbzlyLg$U#k87TX7XAY@E(B_ap8sOrh*BeT=|A-}ZzN=%hX+jZ3$TZ51M?JY{S)!1 zr>AiNdl2(RY;$mlmq`cYu2Q!d-Mb_gI&b6zI<$q5i&j5wJwh&g-Uz*w&83dS7Q}pu zka;5~A?FME5G&-`nKx37&SEk>)DWl-7jhxoJC6Q*I^5AW1abMHoex${3kq9O^ zr0p#&P1n;vHnoyU8-da{3(=+)Uq^2fM@x_XyVg^Op-bbm6J*rukdHq5x$G-=2 zCBAkibf#yNcjI~p89Cp+Tk8G?rfY0A@S`AqV{ZNN9QVNIj=Rr+Z3*9}_e7 zn8)1%TR?C5+C6{w*Y3eB4K4NSbKAV5pRauF4ZK#=duIV{f$^yNSZoNrgrE6DQ_Rm_2K1PT{QS`T2QNtuh?0 z%r^0mjLel!G{%ZXLa9oWTE`hUWIHg7pMb?10P5%-9Q51bYg{GVN(le^xgRx{oUA@7 z{Lkinkli}`*YiG}h9>*GkB(6Of0*|{zn~&rCK5%uXn^Hcp7${kSvtqy&nq}OP+4el zM9934r@#xI_d%BGITSRRRm}S!U3Q|F_u)Z57U?1{n@AVs!vZ|-BUkXe;%~N1g6DS} zNF*gXp?%&5CDn92!Q)6L%1l#j^FAmCP3CzYWV4>Y5i;-NUC2ke3W5amybt2(WVU%9 zA>_ckk5C5B`yfW}ybsFIK@&A-;zpm&3-N6HnQ0&wLOOUF$Sg{0IRBh511SSjJ}ME5 zaz(msz!|mB&eV>7h)Yi|B>Hn+U}}b|SFF6``Iwy_G@;eiJD%KsqMyefbAS~^W56Or zw-RM!hrm>a81aVI{#0IbNe5CxJuiiOZi1LAR?W)bvH-4p*9!f4Mj}nmzyjG!J07adx5{N~eMJn4cZ@j}02nm&56CfdTt? z+c>^ESW(dMeFBmg9nEWUQ?l?<)G>VUy;BegGapc0xV{EWD50Q#x6xq8Zxn5tI=3@^ zMoCOV3l=FshY?l3O-ITVF$$w(7aP4@_1(7Bg(w#Cq$(`nVbfCyYs)Ysqw~|MF%qPq zR*ey(y0CoO88IT|m#S>Hs56y)o5EkK^C`=&1@BjaqAWT>PfQB7vLBQbLo5E-vR5f# zZ5hh0^V6zPCJnV}QFa~C`Lt8^!O)IA9YJ@5A|l?EBntk!48jq{hamo%BSb-ORk&RL z+tDHY{NOh?F-R0L{xcY(G*hge7;iZ1F{|4q%UtSob+)WT%XB7MR!5v1?yn(2LmxEW zVL5NX5QS;EXf(rJNCO>(K%LTQK%=_QiU%*sxlIjh%om#DoVB2)jI~C(3btDl_gkH5 ze8oB0N)>0*N~Uw8jCwIe39)t7>2#WGrO;`LO0v}INKvQT8j5qoJo+({=!aS8`vT;rOUY}LBzqs%|Em1k* z{RM3`b1w&yTK>tj4!Cb*iqnB)3VJ<}v@?KYid&eLg|z)};LQYqEDIgO5num=rIMS# za#VAYOTU37mug!g4|AzzBrS~*)vioSZv&li#29xfu4(K9k~Ip+GAgON&qe~e5ksgB-Y%HZe2&Ul?bD3o<_%F3(y6c3DU^U}!b`a%uqNBA+8T%JP5b?#C zem7G)3WWb`G$J;jKq32AK{OELEpU$`n$k*M|@ zCVlq{53x#yTDrsJ_w^t_Jzr3cMo>RMB@7O!&?CwXGK@huQ)$NU7e&#tJgM%a42@CC zpegzdQp&6X|GyYl_&FbQ`$&TL0cHOc)Xp!eQ~eax4(ILvO8vEr*SC4#2e_~|=!Z8w z!PUdOy(hTs0Ur%Npe03%%J4O|GQ)%L@5T(v)7SAqvdf9shy52Mz zPh$te)8y6fjnjWKb|AF`|7~yVfO=jUzqW_=#t!I-xg?~K)0lw0w;&yKXI%=p^)w9w zf!aFBg^nFu2Ep}^yIskx5OU#T2NO^ycz+BE;@f=4*uf6m_Fj6R+Jca4XY8O2m3wrE z6oh)%hkQfE4!(xr8GZ0MLdnr>Dda-N4wi%7tH0Ex{|dQw#tt@w$%T&{tcQ~AkaMD~ zP>}Xz=jP1InVT~wXZDYe3j7;V_v7qsdd}Ur5^0ViVtD=U z_@5ET|LnM&NfRf!n`p9K*5_GmUN~yb&CmK26CMXCSN)J#N%i{t>K z2;iKp&V%Xf_2;E}k6pI5Eq7Yp{Mx=bJE?NA4kEi8TD-+*n+31cOH+rF+$iOTX%5 z1Zu-!Q(cNJdm3AOuEv9)Bdxk7TUuabQ#J^VE$+rqvIMK3TGUSKXsWl3anEQ%R$J>x zkla19?boLi6*N>=C-88Aa~>5Y!Xz)sK{A;+JL&n}HY=h2($u-xwbR{?%ubzG|9!Vr z6Ul$L(EUh3>ipe@lXrjUj@nO=b9R5&L85aHw7MU8E^7ay^in$D)z?naHNn7G95r3a zr}fewg{gzIsjZix^zx=?JoW>iY=h^5+Ik3aZ}SFmXXWhlAW7CiX@9f4-I{%=dHziI z4%keN%mE(m1g(B=q__EDQ3f(}=wmeb$J_jP>H#EL zKhf#F4_BhpKNp_fJ``j37Y_H16Yl$-^>^^^R)u|B_9^}jG*H=?h{E7r^x}$*!WE;t z5gC#;bt(Pt+2Au29b@X+&UgAI5GwiF><$Q6HN#xu3TDCb}?L!X}vg) z@1m*_Pg+H#&qG}g+^?%Wbj=4Cxr>%alKd9#!IDE4)|ONhUliaVnTPH_Pw}$aisiN> z#Gqcq&LFLnk%u~$b{W)fYQ`L!6S*)BE%KyWW#9(*vQw=>iQd8#P#tt5OB7b<{ zf$Zp)5(RF+1KE+5G?WMs7%?0b;TX`5eilV`h$M34E#|*)vgn<4Vot#<^c4cno{61R zO~XO-#g&!iM&xadH%N_iWR85O63x%@C7+Fm;S!D3s_ps&MO@`2r5Ju&DPjpmhcv4q>Oo4gsH&=@ zVu@i@bs>ul*D}MpFp(6vT#IWlT2pOUtK5?iN20FQx~PwdwHV727*=BvMUVu`C>U0g zh`C%fzRD`Yx?IE(FhUm#nGOlo`luwl#0e9#4C_jfg^Uh0tY(>`5uIk8Zxui;24j#* zDp%E%RT|dn7%E&0?mNS}B8H5P!EIkrxvIjjHpF~JCdATbheB(3LJQ>~3qCse4MY$t zDOqkDZ~I1T0m=o9csb@8I&<%aW5DUU#Jl#6CQcY2kw6NXb0kcEpK2aO)*g9(-B z;at>j8_tKLM7dqc!`%6o&W%VJnYb9D&PQUXZ8&kg;ICX%Jej7^-=c9rUEibY2F>z^PUGO(iM(#@93jGPLS}dm_?gr=MF=S>}BY~`QKH(tC zBV2k>i6j~wF2Juz>g{23~X-zyyKZD9z z3HnkTov{P}gmaT9Aq}&^7K!C5 zu%v>SCu(vDMDuVYmsZwREGeR=pkd|<)*~q9!#EU+o`Z%tQLx?vna1T6i=KprdA4B1 zqJ7ZMLdBwIp<#Lj>klCRj#xFmMb$p|n#WQ@rll6C)g_CEZ;`l1%qikRq~p5NDzu7) zvMlvsprk-B?*oHAVggp+u0FopcV@;7(Kcw zHswaOpmWpSVwBt70Npc8$$!W+otv3u^r%o=O7$H}7(G_n=p9j^I+ryz`T!f9o{1DD zLr;#4E`I5PPS(!1(GM#5xuCC>blYqI&qs>A!ImURT@^C*RvW#CjsAFm?isA;?=sC^ za9Xa60vYg~l!$WB4>b{b+-75UMFT6qN(QBi>YLj0W zpnG%!yPRpTF>>?ubxyk4V|rrQ4P2z@)Bzxnt+z?ZD90d4L#9oNy%_B0B-^n$0UA`J za(Rp%58G56)hg~{72+|ha_E3YEsDE|*)&E&feh%U+4+(N1E{Z|KfRT=a~La?xuqAdJnGf(0ProUM&|w|+ z^rH{ubhrj|?>`i0IwEg0d-m@SKu09zz!?9xB`+e)@iDaMg`B2B%STvgSb(A%>cS~k zv*?g$#>52Jt~lHJ6r&&}7QLW#Euxcy1Y_)ic#lhj)1O^Y94(6>*VMq87o@;VB~QTO z8NB`kUU2NwV&p0to%DJdiO7LP$&{qvi7_E7Yjh4;!9vckq17&U1rV{?g*`vD)J9i3 z4GUi&%GoNB)9fOo=k#b+jQQZ*u^Purb7yW0&DAN4nIAJRhN`-|Wn?8P4L$T+A7b>h z&Gzv~29bMd8MHRN9!Vd)9!aWwNsmd19+5*|d--q^hEM+KA4F<@eU4$cE)?KPt>H1% z(_*~~4Zl?+>13{B{F?Re7sk-KF;hjuuQ{9ZG}MYIn;F}5ERfB4($@C>YQ0!8K|`G~ z!q}Y9ej-WL@|Xyup)Dycd2mQ1?`ix;pueF9eIyb=KhbE;k;eKl7GY#@0ri828@HvFK#r`HPpp| zlrBvQx0yMiHbN>q!%#}LBG7vR1yq2xDS-_r%2aSDlcsAJu&GGH9RVo~A7j#NZMm*r z(c0f~X@;D~@@=fs5#0l!iE5||F64CN-_$~5ovwu!1GUgtrz13;N&&T? zp)R<{MMwTkEi{JJ0$pL~{^fNLxa#%oT=h}E^s3i$dH)tDZ+)GPd=@CLhPsF-Z+)GP z{G0ODhn2UJsK#GjUfr;f>z1(c;%fZD%e#e(J4`($g+d+4Q$#4#P?u21>Bzq+?v}9P zn*3==X9a!NhlvfAtpI=VMaCBNbIe8(khZXiFx~N(Hqh{buLF1AvTHo4Y{X?j#lk~SZ+;$0b5%wtgOn0%uZl}OoGT^p?A zGcgZ4!|F=%^R2G;AU00$`j53b(~>y_V(NI5^J?Ur?Ao7bb$6a=b)4^<-_QVPTHPA0 z(@Lz9WrECbT#<*F7dm*MQt$AkB!UveCKwYfZonPRs{)^qY)X>>i}erZszT zzLwNtH6y31tIFW`u0%(VLb-?!6yH;~J)l@9oKIQEN%tK=c!M(9jG6R*s)Itg2-3h> zD~hhlxfT{VvIZ7fDTP-0Sj#ikIxF3pP-vYo)=JK>qHeVMrdvIHrO@Db6D1^*x;rkO zj8w0n*xfNF9v6Q;X>xpExNdY|r6ytZTUMNFrl^<|kLh|5(dFBP5?85}RA{*hH=)8B zb|o$VFV2x%h>A9`IFk!C+STd;ocNrTaE{fb4jGKIPIo3*iE{x9tP$X)J!U10MJxjh z(@MaUd@L&^eF(O^1--Z+5xqNsS}u%ATxYqmtOQb(rA@M|Wyp6S=ZhjcV3*s8>KTHo zgLRS$_eaozUUcis#4uTIK0ZiMgcnQFoC3|U?K`3NrXZ0V8c>==!yh_9Za#)HMPwfC zP=nVX{!eG+mxuIHy7S77PxxI#ZhY6@I&$MZ8zXb$(>7Q+@tK!9bK*xeb;ya&Zgl0u zdmEzi;_o*d@0!u^-kiPh**QMhdJIIc|l91uR4Li5W&eFREC_tr}w z8vT-}8A!@)0+MoDnRYYN9tP?y((VS5X?TAw=vqmXcwb{jNWAQ4@SosMPr~# z+8oa)l~Ed_@r-gA&0$1qHA*d2K(bCRVOkv{8hn#-H!ymD(O(#S$ms8kz6Fxkh#G=K z-GHP%52Jp}9nWYkqgqB=7;R_tG@~PozGu`4gEcbWfsAq)ox`XSi0%N>xQJ;R8QsR{ z2}Xw)eF-Gfe$O;F2$Gh9le8d<(IiHT7+t|=D-iy}mfM;3Jfpudx0Pu>G0lbEP3G1e z2xMsK&$O{jo5(a;5k#iAhS9x@_Aq)4Na`Dg8(OxPk&Mn_G=b3+M$;J0V{|T~Vn$0D zRWb50!VMt4pGwabY4cIgBqC3X9ynqQ57WZEQ|vFJ5L02PI-5uvVQOmNY@ba|YzN%P zWv^_L(No1hLiY@r08gV|wCa^@^%*Le!~9$)=X1E9N!W+zcKl3Gk@O-R67(o0ZdK$( z^Tt<%NMM^8MZs+a8JaU59yTiyZUM;9eDUzGRgtJ2oodyqdz1_*aF{etJiH=zC>c>A zbGeEIpZ2I|9L}fmGkHnL;PVM&*5hw@(cV=uhJm&r@F!uEZ^9@h8?95thfz|3DCE!b zD>!e2PLKH&vefU4{E`{;E-EAHZ8GS^)b;|ZUQ5N@yRx!aIf?vxFOlJAjL!5>ATJT= z7xwmWxrQb68}|EJTtYPPa$Mvp`b-< z^lt{+lxewkb|xzv5-JC8l8_z8PC{fg&Dxhs9jwvZ0rSC|XwIOV`7J#!3j9Y3{NLrY%@eb}-Ay#8 zgo*q^40j{VS=6F{$mi1_(fdGjKLQ5|n#nzE_eZYXhZCaqQY0&CFX@O{l}WK7-r~F_ zxHTMYJM7))OC6K*C|wwx{dZpf*DCvn+A;ZACxlGXq1sNZlQ9`1r{P&MZ}f3@<2Z^4 z?*o|<$!ym6-V*C*d4t?AXhXB%It^8#EkW%oaIF|lGvvR9HO=!PM<4J-HGJRZZlZ@7 z&B4D33H)bAA`R&oto2YM@H=&d)vl)!4jv0{f@w%MHo@Ka1@vLse-Y%4;xMvWS{K81 zcTZ4#!FotHm)>+Y(X{#Id7h?&akn_V$$nb0Tz~`|Lm{{-&?k;}w*|WQucJqU)&fT;dJ_5L2gAI2R&0}gf7P0Sa z4-^?<;*`JVzO%)Auhu_6&filITYm=}RKG}QuU~i5awQQ|bG9qsZkhxME+-8~G*63k zKXQN^ABH!42mhb-DA(v$-Hr7)=j^0H=lP$_8L)rAn^_0p^pNxIm;26kfl6LI{tnWx z6XaUZvmQhvs4@Kr{{wDJUsB{}8dK}NmiYTLF!;!DVqwR*8grm3pqrnOF*Lt!M42{RBMS^lpHkZCa;~C=YGV%NCSDa zXXm;HO^eJr`0ZD^4QCxhJ^7ujKm4n$O;*usu<#+jT>cST>%!_2VH&d#(CZBh6h=Fp2%}H-TmlQ19!iw0;jv_Oh_~wixnpN zd$y)a#Z*(rZi7Ab0NS2TLRs8Rn$+5cvSA0sU~jwC6YeD@HWf0nmu;9`kUw(X>jy!ib#-aO4p_bME{-^=q7PFq{}!>!MqA z0eq0)?Ue0z3zd`nd%XU9TFubi_*XQJJn~n|&uTlin!L#n5uE2>fl&NdJy3!F)f{); zTOvKYlCsI^FuUpCnpHveB`Ev+&`MH{WPh@^d8#al(0U_uiTv`KlgWtu0edEyd-9uF zYOkb>&`mp-~X+TT-D|}QB)LkV&v|V4)=X~ zzJ0sbet!pC_S#yn|I5~R7&FzsyTFf2Aa7y1WCKuUQ9M7o=V8$J>Zh%PaoQBHS6w4{ zWm^A2T?Xn0t(qS7q9$5z0+DVz=#_-u5kb0H;c}3N)ZA$kJhQ~gU!Lkkz7kJajpyQ$ z>dLbWV#s;Ol2MGk{c1c*;P+fojSPsr1b$UZN~*DmW%)(4sbfiXRdtE4#xrUNc5d^C zADJY!s?4_xdo~KM2|@LUxzSLf^r$)bLD?xg!pzWg`em~p<)SZ=H{o~_@qghcz!P&i zjx9I}!Jh!93t!pF63^Vqvf>iYL`?Um4+3zZI<;3Aj2<8hxX8E2vkV?qaN)wPmlaET zQBtG6F+E2B{1M((>%zUQ1pP=joznHdFLDaBD#wqwvAP03f%jW_oxsr8|Joyqeuezc z9J0t>9oliodI7xu*da?K{(p-@)?756Q#)kQ8$ysnRu&P2bCh(*`a3ED4p~HoL)P~= z{UV2~*GUaKWHsrSbjZ3zN2Np7Llg}-WIc_ja>%+AHv~ImO{50_J7hgh5q8L;m~zN^ zfYJmUvdCiPkVOjY4q3GHqjJdlJF&Dw7DWOMS%Sq5Srj9OtQeeyLsla0&wxXgw2^uY z;gBVAlnz-_AQ$YAMTOH2S!A@`A?q08MlAjOBZsV~C=czB^*SN}hpgkoVu!3`+<7*K zEb?!%Ib_X4G~kexhAiw3SyT`>WQ_#*Wx#m)gMyOXQ7*DTuqZ#liYLK%vHnSvi+&iz z(KR3gB%6vJPbBdND!$V)XR?eyc9|To;E>fFr#Mng7HdPizzI|%aL6K~+IPr00fB(y zRlp&O-k<~Y3GD0irM($UuvAoz4Z02eX5qWqF$I2S?FJ?NHS%XKH z{z8Tamhc~|G85=)K0Q|`yiZ0Wm|Kb3ML3F8nS(kb;*uPr3ww}NnZxPoRD!V-M;GZr zcA?po($dqFe8`lim~afZ(CmjfYruIgwpxj_w5(yvVw)G|U<^n(ESl`7|ju zr!t=zMH$|T;|3flcBiLW$)jJ6^fMp@ZrkNzqtlgUEVZ%Qaoj=-L0o0V&}BV>;{zP0 zNuQ^`nC9vA_+m6))do1Iic8Jtb5QthH-h8A?a&oRcjEN88x*p!$KwM0w5DgNN=ai# z9^w1sA=eX+@K@?dD`Zii9XFT@M<-(Ed4z*YuV<7@4W908N{%FEL^%$N#FP}`M$f+~ z$y6A}+8mpIT0{JyQeDrJN{F1Xv=I4D^?nb!Dbyn$Frpmv4yeNE{c$O1&`pGF{55Yd zW4q(ycei42)}aC}#nFw{W!LrEZ3-eZ==uV2#v|gvokF9l-AO^83qh$xtPDq=Iz$Xu z_B|r0G%`qG11#xvmdf=AYSf7gwaqhRHAVP9nGX-JzWbp9F{9sgDutFTg#Qb?4K}NS zXR#6}x8*cj(Mh4aLJ=;H(Tj#cDNz2Gb5e+$D*x20REpn|`CreR`jl=-(K zdFrDo@(}6zTt(;#{UmioIry`Bzmq}brk<7h%_!G-sM9DHHTftP^+Em7MHS(d7F|NN z8B6z%xfykrChqNQ(?j=m8t%DlbC95mJ2l%pgEXYcTRPjEM7Q(+d6(pxv7~o^_JcJi zz()oI%rGluo(oZ-gG8Q{eJRU9$g(n%avUTxsm!H32Gb7CLx&sY zg)x+3a4lRYtA+Z(N?)~`G85HX)K0u}&*bTE* z3j3-T)xgnnWlR<2P*qZ0R*A}4C6i!_-qoGx9n2U)`H)EZ3y4L?ICT#qZpnfcFDoft zUbGC=i{ChK_7wGd5JIx7Gt#K6gJ~1-MZQ}2ox|~yxP$4%MHHyA6w3?G5qZlTsO57A!J3B)J`G2=ClPrP;1L{|bZ3Y^J>CFvY`(d!$KM3lTG!(r z0{pSA&yN5ZxLVzD^q>uX9h+~g>(N_)TkCp|=aFOc-E~*xkjomiIYb^J=^$sn1_AX#V*Q!?)>nIl0mbUWe>CYhl|&t$p|2u?hF19{nG zvW%WyB{Rq_mwJ1+6KD~L zjeMdUH))nJG#!wR$h~IwVVVrz#i64Sp@V!EhfW8egM1f<<^j+Vxg3$c0CYr_n?3$N z?bQg+NtfMo5}S9c4aDKD7q)@8c4-v5k1OZGWaS1ZY4{+bT^gA{PL1RUX-{>U@?iuG z4vp-?I42n%jF$9Z#2TpV!Ps4H6b`?3kdQ~ufa9Xa=FiAZjO5YSJK)jSN2HT(nW-RS z6?0m`ye}oqN)#KI_mk3iPAgwWSVrZSzK&`3LgJZgFA*NK?YTz|3U-eiZ1>{CLrwcw zrfVO|jC9x(wBC9qRRBhe$ar|8)`&SnwoEY$F7Ce7ARpUKlB zJd@c$%54#yiLNJjV`}&Z&Sb8JS}~PnemmKOx!PgQkD9Q73oAmv&Ma22OubH$e~iXW zOv~J+@z+et+NQCtNGi9jTms7HnAS*p98&0F_#(GNxY|x5zxQGNe9kQHA6{MM)6mSQ;sC4TeZ0+3?B9rYZ%^^-ZTbruOW*W2g zb=0PVB(t*pJ%zdj;p!HIt6N}GB;hI4%?ejHD_q^IFmSqBBGZ&o3e*5K4phU8 z(2Ph-=X8szUZQDyci?hr7^topGAsLEdVA8QyrfJKTOfpHEQmU1t+M^i64WiLvl*`d znvI4Tx@j3j8ft$?*`4Yb|8i)@SMikD%+T5N<80<=s1?iZRL26@`~v^Z?W#Q5s}!wT z>$yO``Wmw|Y*ZwNQ4_IEM;=!%tw>s+Ui)ZzH3g6^P_QXLx?aJ*2S^%zrAWvicAJg_ z3e;XB6d8Ra{$k#ZI#VmsI8e0nGnJ`1>P%u9S8_4VS4#La7)X{}e|(cH-QTjH0=kdU z9m@S7y~zR9u4y)Nd*P0d9wfB+>Xv)|DbmxbND;={Q2i@9U&*m5G}2$i_bS%Dh58rD z_v#zrdqo>%zz@ld&D0&GK6tOhzX^n$G2-Ar1t*_XNIqupZl2Y*bVHK@=UKi0|`Yo(-HStOka_o!P;BqaZ!B-f2r$8syp)ye8ezCTw9 zf2^+HCOI92rNaNlbPP@RZ6ZgZ6Kgywl@HNn%GF71QI7Z(!W*maSiqO8ZrB7QWi8-1 zq)4*5xyArz%G8qq%d8aFv|ScfXhOu1eWTI~Yn*=)eng#}E1?9QUu5WdVMy1p)&LnB z1MR~Lt?rY+8)prtlCHCQr(47EcO7V(tzJU$RHYWqXs9Lfaq8%N5Ii`rbwpKmg=M|w z0%nL}gXBO4#h1P(vR=3I4xOG-Hk{gP)MUGP`PRBcI zZj=|Sv(wRxJ?T@C1my46Y-jQthEKTKL1Jg!x?SP|_Ha6S`mBBs9^phKc2$Ov=b623 zZx*HPI?n1vu7Md=4{G^3RcA-{bg2!^GL<%vIcm7lq0(|5r+X)fJQXiObM}LE(O4_# zI&ydu&@%x-PvAy+<1+G*6Zcq>Wz8MyJO?)eJjq;>OCjNSKSI0tZL_R0c>2Lp4en&7 zGqG^&WGj9)$=rO|V>%6@>lLQtWpwMB*6=rl=Nm+?k1!LRU95y7R&2eMfIGApQu3-< z&W6OqbF65QIeD=)Dc`mStxkg0%jz@<^+J;T9`)6b$>#e6_pI6jUu$nxk_e&M}S*>PiX(GZtMy6ilI;1fF~3Acym2 z)wNuYn=Fy~k0kQKoML5x+i@(ljce=Rsh5OmCI7s5s#7SUy?kP+yV@d)32#7Tdc-iT z9^ec}w=&UG^Fb?slW8w!M=NbIdHf}gvl7xlovJEi0kpZDj$7;2$(zyD%Zi<1#m@yf zBT-luhx??IDkHrVou6Z@xmifYp#XII#yOY5?{CLtn|8t7&*}Jcgt^NxsL)x;yXgc? zsSa`E6TW*iJ(~usggYPRToq5R<9NS3zZNrM=`V0Fl-a30SnwUo_%oioWJ09zAW$EH=-a!bO~ZSY zM6-b;cLmdEH8e?E&$Nw9BfmJA7MEMeB>+hpR=!fSN13)8C{R~RZ6~CW4a!Ty=@PXtdYaLGMlUit!02^G^tL3m zyvGPY(4?;+aiy;zJ{SYVGB<%y5|HGgkm~B(q`0PWKM;-Q$B4O3GeUMO0Zh-K0#bs-wmjj;Ch(0foYqVb_yRy`I`?? zI@Bs)8Xow%X=?EKN<=-#o@63|yrU?A!=zu;bUy{cf3~|;AiYN6yK9X?mKcGxg>bLO zOdD51yC)RYufxQUgz!BN7X7`7qCk)#KPX?Y0AjZ(3OWMFyre#`1dBbSqPTq_L;g?U z;YmfJ(wxfc@g*fgt<+)Gt61>qkc#3)g-ivC7k(M3{ZPQo2bm=ThyM9m5pc^uhFV~F z_)(EiF_1Zlzj*M4glNv5S_=g|7>!n>D80jEhJ;b*O3Og0_;pl}h(gO_{}*nG)r%^Y zmegnszjTMLpeY*ZWtfJRo@s1l(CERoJroM*pI2ysF>O1Sz zxMm(>`a*mEKuM{mTaacLW6qKno&IJU(_8GG(Ij^h{Rs*6#=;hRKS68{@+^lwdw{-d zdtX63nvSz!pk0dc4fmW}54nd2V>nvbcMFn`T&U;deWmar%P@@V^JO`XI7lvhf33SL zc*R^3nlI!+JSX3ngW2_eKv~pwbkuhVeeHNomVIRycPhCEEf?ZBN#8Ml4>@}f`a(P> z@9%~AX5Zo3h2|ULIoT2AOQC&oY(eO2$8&NZ&G4}WaXpq)W1H}mC7MhhnkR?JWwwNR zSW^M&g;=Behs;Z6*BK~l7o+x+RrPEJTBkxHXZc+#@l=v zIR*_<`$#oUz&<-QUE!$W1DKWI|E}!-oH@My<3~xax9LRfA?>-dlXPPbsWfsV+UxF_ zhggtz*0CeAybYguyv-Ipb^I@o)(Ge;-V2QzlUl&YCKVfJAIOFt&$+D&;4p$s@3bS* zCfgoluz8aI^*sMG4d4CbZoHh*74P;oca|C=Tf7@1;YnDSO{FQET70y?-zrV^KTG-M zPxXTY7b3ackn*(iHamzJU(h@yA;*6d4u+z@&F7*94%L1L-x*y#+9PZ4rUL)Rp)_xE z_fcdFvW5Jc$F|$;Z?@<;5!hF&>ABV2MvFyY*Ce6zE>Vi-yv>pOW&LHf?6oB?-6VEj zOOsl>{+F9t){M(KbgVP))8%d0YmTNV*~Xewtq-nM%}H;Ivcsq7ecM&qyGb~H;d&vr zdL%O1*PqP#RnC;l+iQAr4qtnlV>yRIvWlQG+t@hW^ft%IVjcAEK7y}y2vo)IdW&fZ z9k_RiQg57Wdi}!>_(ff?0z>#HK5J3KiY)b`vp|B4;w0-w+UtMW|3bsZW^LAqy%Duj zPwaKomY>+0;BNXY#82$ab~pV6py4BryXgRczJ}0XJW8gis&O}tM?L`xl=&VKi~F*` z6Oa~^hLrkTM(!`jhT>rl&Vq7EEchbmpy`DE2`9o`;mHi!EAj^dO_wfVV@+> zD3X+TN)lExVTUAKtqHaa>OrIXonDEuPRR7-5D#jWigxdaTY_k*KYA)eqTP>l#$(0E@h9NY$?^nwO0NB^D=r{z3;$bUC&Jg!`!{#4 zN0O$4?#3L%9;JRqnCA8GMJseSz5uEh&gJDfqT;kW+*e-zr)_h|i80dM^a->o#=br9 z*n~IRS8a1$IXfev4PKE0MXs`UA!odi6yG=@ps9D4UnM5~`sYzUda# z3t*aiheb6;`H8HM)A}vQiT1Mdi8R7lc=z{k3Ow-byM551ZxOz??)$c+-j9^tVzt+t z^2HaGG?8p=p5-bimX5l*)ATk^kxd+iaCUfFLbx&YCOZ2kxB#~U`X?mp6ThpTosd-T z^}p?1`!rpxAfHoszUn%q_av|Cv8lSYqa`tOcnI@(=x65WU}h6-HuG~=qjd#T>-N;t z<|AL!wz(d9av^2bAyF{l!Y@4ECcog>2R#NVg8eRV2Q0T^9o6o(f^;XpIr< zY#0*vrA}|Fy?1mrABp?x)J>;VZM}D|P%BNl&t|_}Kg!Z1%hI|*h~x#T)W17N?afJ* zOFd4Wt+FQ|Uh1wCZI3qA{3`2nMB}QEsk{$zo}2{i9)K2|*SsY4Qulxjsr8`XuAsI) z{n%;hc{0iUr#EXR2Oi)J&zQpK(a*Ry(yDJN(@Fk)&Dlw~$N!ptW@T*cJCmBvPNRp! zfk_Q@(+%HqInDE24c|Lg-Y;$^dINz+E(B^5)RutLML}K1wl&9jVTZ^AO7QS+@x?xd z>xe5;km_waFsbvQY?I^Y1_YjWT~JIS4Q!V6z%ES^xC zu<>lO!2eINbKp2=@b3%sCX?hl#XQPny3E|~q`b#@{d*?uo0xzMjeP%MVFWzIr~CIb zwbWe&3#k;o4RGyUpbSJuumIPll^z%c>b9EHJgzqmJKe;#!I(c@SoZT)|kdl&eqinD)w&Tckr5+F;s1qF=9%Yt=9%l6GiT1-^qxEwAZ+K%G|DRd zu0ug@rN7^d?#Ke`f+r*o%yf|B9p?jctQG7~auVG#`XiMH|#6_w5s<)f0cFMOCY3u`n{Ebohg!kooBK)cgeoqW(mWmyTFxLq7h5sh>*UEY=qz9WA}8{MF8>Q`|Ry+ zTbRZlq4|5&@geff@a_An@WOxh*s7Auo(~R{`auaB?yovjN)IqF&>il1-NCodi$;AK z-C&STa<(8LSZkZ4w?`ZYiCuryd=Lexcw+u7%aB7evq)y|xXI+n8x=JnF*g_kq^HSz zc2)08YR5>9f1z30Ow|2OpPHi{^5KR{UYOsKfBg3xPdv>0h3)G!f$YH`g{q-#236lm zhLEj$A5X9INx+v+-0b|D`a!Yi-dbPi{nPeOPIfOUIk0)Stb4KwnEK?9Td;q}$*nDz zt(PJxit(j~shb4w2SwCdmMv{*b3uK<4al7ZFX2PLALEwb=oU0C>tM+^62A3qo6y!z zaZu2gt`@3S~BrMsl$_gnI~inTrg9mpN-E6d#R?xta1`fMBcKS+P+ z^~ZWI&Qv9dTh5iccAVUT0lDBqOpM;ffjdX{kVXee{?+qd@AEhQ>!hLN@!mCm-2P4# zzDfNsF~<2rwXOTB==;i;b*=)YhWgKcOZ}_xF=^Zz_6?z;JUJ47s+&>`0YlSV%r~#S z2IyT2cFujhM%|N!df%veMIo@nGCdE)DjTWupP5o`V$WU+%_m80?!r1ugBI zP+!?xbfa@aee;Ve&e|U=c_jTSyJdVNfBV0!9)J1HB>&lz?5;-(j$r5x{_FkTN00s# z!+fwW;@@#(>$>XgkKw$b95QSAbu^gJ6f+-sKM10eNAEd77@uqiatc86V4^^_vXF){ zxcxELF+^1-U)x2qgkqJn6jXh&Vt>uf5ydzPqvUw{PFl&OtltN}y3Z5rJr4Tx`#MGh z)9>oc-0|Vg%B|^DCxU0a^vLIff+f!c)9aoI_C8nL7YT%VPaMqx-`?)*tg6YfCN_`b^n)veD}SbwkHnKYX0QQcb>s5t9` zU@w^_eMcP(0NanHe4h6F`ZoE4bad3mWbm_I z43+#L)cag0z3zR|{-VEq5$(BoS^uu;8&*?txxaf1XTTlRce%f!FG#v<@dvjbwJLgp zV{2QVMy6`5f7kR@2P*pJ2P%4>M7DYx{8HsqQu&qi>za@c%I3#7cf*ywst-5gVSisK zMumnzZ_t12Pap{%Qpajl^!_(MdaNSgPtkrh`A0+V(WxVHX$6Kq_H86n{SmBNM0KJF zBWiH_eOJWe!JwhgGMlokjb(n|b6-ZMq#RqOkhP`uPVtWS|5%GuygxD znbK@U+pk3ZnbsT1e~3n&L!l|;^BqaA$X7*MVIf}!fqZ!{g zf4xulsgd*99Zzhj!3c5kctFihXuXV--*UFScK8yl9hP)t^}L3W?QLm7S}U;*X(K+{ z`;p0K!AVB|>uFfg8>dF;EhDQic9{i93}H!+_LWX?F6iy5P?n~Onp=Q={_!p2Wg<1Z z(&L_7vFn?Unz-lcoeg)C%cbS^rhlU z?pxof=qnq6gxzl*|L?xYSSWcU{f7N$FgVlAsSfVHW7=X_y}y&ItA{FjpT@06`c+q= zFbei>JGT|K3Sjv`E;-=rDRe^xM<5e79s7G9#|d3%FS;q&FeJgsO=zSa`)XwUY zGOFjjU~f%!0AH8CY7`hcN^kpTC%dyTy!%V0%DU9!h?8Rx)!C)NB?tP((VRz(wI$D_ z?|c9uYRf!v!OHI=uX%Aak|n#vYw4y4_bpcV_>h&mXzJNl^#Ck+85%~(Gd=HNHhdQ} zk#+2NU+-}VpxA$NbQy{q6>YWbC>)E^BMw(%Y{rdlSs(}?(0lP@>z_M5>@D+?Dk8n^ zXz%4?YkDX2UYyRrEqbE-uzYZ#0 z%__+iqGO*y6<}Aov2OwE>Mlw}Liru6z|uaI-_1z-zgm8@&f+Me`0`ulh#R>4UQECC zd6?%^<##8=%kmrMD8KY;cLPsl_+ro7$G_n$w>vNvVF=%Gjb`k8u#i}Gb5U-XSfUWU zYqL9g%kq26icqQ@y`7jJ$O1)CqD<|A#7s%(vdsi2dM__NmQIC<`o80(^xjTYq@SX6 z(y#gu|0rKt*FpJy_9pH=S0g^Lh+hPSD(u6QP_J+Pr~ag>53_%J_|f-kt!mwgCjQfO z?>5GCM1#@0jd)UZC*Iz&!RX1dF5vqs)k~sz9IH`xcxcJg!&IY(siq#LqR&G;5E3To zUZ&?A=79TYegC8tP*tG!plnm5O-O4qg-2c7W}sUf z^LVUa|E}$GtnJTZ79{)Qp7#&L_qWPk7?W|M_S}w_(EG{3=*mGVy9XSN$P{4GOWGnB zPkKADq;cgCq0>0)gQGvdr24UvKWtr!r(`=Xw+h~slOGJqkUCXK-JGKs^CF$jmqJ$b zuE>j2^tcsHT-RT$!d*0T= z)>{X5$%KykTT}FvAk1rHxoFRi{Ga?$au)fQiYhFU|t zn(AHV@7%l}7RQkC0O+dvX2beelj^%Lv+A5tJ)@4%BTkHueODknyn9|%@2ge4pTI8Y zo_7xU&}9=|0z!YCU|$ty^sA!h|Cl(=rf2{1$-m5tvSIHQT6)p<5?4V!@jI8wLq4~s z_Q#Jvj{i>8SGT#3wNsH{rJ6(}SM@EFBGjX#Dn6ih0Tlt4x9TtBm-m##_YGumNB@EC z2a{p!?sH)1Y;9HT8b``HhdZ5PzXXZ1e#rGaR!{%;uI%{zi&XKJGrE2fJK7vV&NsxC)uBG~cd9V~yyrV>>Y>y?}QUp){tK_`eNN6Pwrh{#YY(hL%z*GA*JFaJJ2S&jY8Ld z6|gX}dZb?RLHdr}urx*`RrSynK12DFr6zTNnR+82kt5Ub`*=Nm`#Z(3DGr$cultXX zeY1$~Q7=eQe~X>NE5;kuepTJX_7#jV#2m|;SG@-R%F}zFLf3geCh)4#PQ|*DuIO($ z>uc*lbGwIj%iBuSc&$sTTtt@HZ-WcK?Sor^Le7NW0e>Uh6u{fy ze;+QNXyB)y+oYQ#8j8LPR|@!M_z%I=0NxM3HA%=btUBP+xs6MJ-v*zamoFn4_#b0` z+X}$+`pFOBXuR47fBazVSp}R0{~+A;fDgl`W8C%trn6Kpfx81Ry=Sut?q0y#;Qt8j z0l@pvwN=r+z0=+aMYV0hX3{9LVODNX7b_a z_+|Pu+n?Y@0DcXAJ)Zt$0}jLQhNGQH+u(ag2~i9<0RNHE*b5E#F#K zC4`5+0Ox}*1004w=yV}g1EvFXyWqM3Z-f6wxJ`gxgWob%h^qiEgMT~R^?>)m_l|=M zzybKz!qNO{7yQrQZUao80LwlDXN>^Phra>tmw>my|6vyL4|pH^H{qTKd;)&OnL@k{ zI1GOa+&h4`!Cx`~r&a)72EQa5HUdl!O)i2PjPmb*-;)Dd0p13`4=xMvF8JSp%Le@8 zmHg(!|K{d)hBLBbfjkt-S;_R3yzDO#)GM zb@|KkmQ}DA70{PG=5mVm_~g;2vdYNFf>{)sJBF&GL=?^-#N-jgEs4*a_nnpd7Rq<< zpd>;k-)f!k;{7Um6{j*-6AfuN7HJF#j7NmOsJ(ryNdAHMNf0KfbLW%q8FmGSaPEBa zuQR^QL7Y3E{8YxB6x8R=Cm$L13j~Myeg29hbm8=hcwjF6P#Ye!RT)%lJp`mwB~({m z8>;0%Wh4}=5SEImTokE}g@i|kqM^_N;gx~Lx@coKTpx*rDnydR)C8lkP$W_x5k4yQ zt~S*DHQkrBw6?cjvZhV=H;_%m>@E`10iWn=oYlw}h1<&;iJ zbkXvzHj#4G2nrwx=7u6=hYa~My1LstM9NoWC;$^#NINW$a&^khtYU#k`I;1=G@c<+ z`jkX5d~(W#zUM(V0u^#a`^K&{?ILAU8f9(-CgmdKt7)Y42>qoEk#bGiCWOVvZ=;?! zr4$9|m2aK#lF`c%K!}bfPYI6RhLAslCh{U>{^;8f3S?}AIiY%V^zRYO%xGQPPWifE z#OnxVWprQGfzZ;yQ zotKo7tw7%T=tJ*QO9SZ;YU9g!>Yw`kF_Q<8p7iE=I=!kcYkGhRT4iA*9fY2hdUxOj zL}uW2<5H1&Z;H&_m??-#{rN~bc{gdy)5uZkeQ8wu$tV&We%#t7Qty|DK^giabdmbN zU{b}O(Xo8RiZwX%IQ2n^NL8hn`U`3O!DCJ$JE;$ircdk!GJ3k&)Mq(Uf0;(s%M_WU zRqC(2q_LMYv-5_}q2T64q&_mnZFzkvKBWq}e0c{h-irG zMd~rhG?M}?tsA;U>e~`ARwCB*tOe${#AHbfc%mhwz9ac%XW*!KWT{J}zB`gsouUyf zXfth_MCyAoDc?1;kEO`)1tb2!w}Sht|Aeoj?ej|_~%~&jC{g^FQ zRvoJiqBE}uMOy0W>q6RKPIOV>3^te(T`;2%1~WWstzO)qDB03H2|Se%6uK!guZ#=9 zK@DsZ7lH#FBx*JIIGF$&dxcGld;pw5{C>&Tb`OB$(x)r}15Tsg2(`(&f$8tZi2(K)hS6Kt+;j5$kI z8BpU3Q7zPX??M;hautInFPJ%VrmGw@9_RvBK`?&SOjki@bTKYhNof3xf_(b9N<&Af zm>G7744z_rcY@Apv^-c>USAR4=na}Hi9wWUtqh`Et78xqS_y*)>6T~^mAVBQ#5~>d z45CV;$&xULYBAW2m@kI75evjnH=;(QyAidx$CvMObDrzOFgK!JWVjJwG2D%45F^}( zh#2WcM8zmKA|^(=5sf0#jaVqgxDkuQX>LT5INgnC7GvFr#bTTrQ6R><5jeWujVKgZ zZbXqd(~X!ZCb$u^#6&k@w#arPibakaQ6h5Phpob5&_x+!jCZFOB^R7`avLk*3%u@KYT*qTsftSmwuTTD!MM@6dV zRhhVacbrra)A}k=;Euo;(HO0wh#BsPXsEWjyuPNsP87N$FuFuzk@|2|NEEqa(8Xdg zdZrs$USC@q6tmpOa41q;Um<3@u~DgDu^S14M{DZK7vKrKtDRI9h&geX8RDEcOre+? zhba>0#$jfP^WreG#QAZU*`hQKQ!IjUm=aMIhe6j@9*-&z74fJUBIHJeBh_`WXn7Qs+$4(mZd^DxFVq+o3*6X>P)!Io zjWup;sIEfPx>1z8g63y+ZoI6MqTY?9I*boYxQbIIZgAtEPsEL>YpkWbm)C@X5fOFA zEeN+%R4=Tq2#HuiL~UbDtU6rNEE*G|WZPSqfDhN8NiIr2hw5-=ESeJV1)@0tH$yB= zz!i!M5^zOgNdj)BSek&FB`!?B%@!>QxMHy^0aqfHC*bnMMF}|FGF#mdvX`*?kQMIO zU^rY;T^@{8qqAspM}_Mb!CWidNR*WB+*Y|GDhmq5>UdOa9*&wPF&_jHr7?ti_6_Os3We3L)C|y z#b!4yOp8L|N;k3+H(Fwg8&^x&+v>(GtgmUTr4D9We|XvWzvPZVB~e4ijs(1_Ji%yD ze!lpMI~E;hC{ib@Vz8z_eDxHuGsM-Wh%FSor-&^QUpqzYOl%l-6@^QyS>l>g#LgBw zPZ3)zu02I;iMY-kTNA9CS0HvJB4>!*iO53n^+aTm_(mdfrno*4IZND-h@36HnTRYF z-%3Q5h;O@*!5S205M$bnZhW*k8VNOso7`BMK8I?=cjB;epxEO^VtB>M=6BslHQ$>d zzUM|qL*ZZ~7z6!YcLeUj#LaOi^qt}sH%^XJswLhU7ZX8K7TDi;%#Dpz)i*|ibrn%t@4MX;6`}I#T3WE?eBI-YFK>)QLUrZMjdj&Aac}=|(Z(_v z{d0FT^rVp;j4^MyFCk7&1ytny36VUl4T%R5;>^4@BpytNq$&0<60r7+{Go)np!j71 zu1x$Y0aq>_PQX=&Unk%~Vt)dzQaqA?YeFS@Gy$sy$ODP^P^27l4e?k)Oid^n6~9S9 z&%qY))NV_NbDqdGJ!zdKRlIy zm-idLO+c%Aqu(XqgE8@R0y5N84%Nl)6C&^cB#H(b!ozS^CyeTes7MIesS$tZFHTJ> zkMtK6tf&yr^cR7)5X0?QO#HFGSTpZ@w!c_CU41Sgj^>`~p72izaZ1VO`^TfkM4H75 z36W*hbwNbDm=IB49t+lpmlE*0n-DK2#8icvf*kvbJGQ1g7O4@h#UZ0r)tK)8cN`YI zyZB2SZeC-x_^TTikt|=2Ln@YU#9@i$n{hZ|`PS*KdVn2cctmHpk-^3a%w9uHF+4u( zCng*TEyMwc{luWEg+)?-F<~rq315FPa)Oi`7gHOmsK#g~XLp0*;ubAhgl!pa>9xV? z8j%u*MBOfLtdZkYYJ60EZ5R`?h)9cz2$r`*aXVFBB?c$P$XmrBiFoQ@#n41NHlZyF zMk+*lVwAL0AQ2x4;W;JNABH7HmDSfTs0~IIL`6niWSJZk>d+O+x#REwqcP!P@kpw+kyo4FW^Kd+bq9g!s{@LN^rwP_$AF3!7Bk#mxyv+1V17Cuq40+-{KHa)Pq<6|EZ9vgCXw$po6Fxr( z@Q5$HTRyoAjHyN1^d6au5h9Z~rEl<(%AA4AhW?H-P*;y#3>DRN^K^z(poJ#6Dn}ZD z8%mEzqVrEHm&>Q7=~sGpI#_NSx*>;HG)DOm1%c(Yv{cb403z#n6@;uONr-IX zQ#cqanW2{2Uda@hK81&6lbat?lVr(;A~E>gm^bUxTiv zk@_LI^|Z2QeJi$lq^DV#w?l8A|0noQKZrm1%vn8xrboW;PW$ZsP4k{wLRF;9GExwexQmo z!q^%u0`t@UfKX{hbr*$cyFj2e@Fq}I8S~n@<>PD-2&ehZ!uCOM!N!k3H0=z8nli%6 zv1>pC77jiS`COI}Y3q{wn`L-)MwE7~1eVB9M@B{4+O}>`x5)6OjB>d#ByiE-XOOpT z8I9}779!9l!&j>v7%QPhfc{W_-@t=+pP#HdiuNabg`(u2+$Z7lzl}`?K7S|2Q?3Kj z{yzWL0jE=*?OG4g9}+1gru@5Nenl}8GWpVC##wO2vwC4t3V7U)e6Qtb#y&9uCl@JtbD*sB2KWu@i}U z60-%~DjG%Ik3XYF?y0h7%6%pQYzo=bEv#AND19dE^$)U_$|`nWfVnl>OE@L8eD(76 z>)Y1i+>Mg-tIvkSqa<-ofMAh9yZxyOTj$78gtow-imnjWTp1p0_Q+W0s;wh(D6!6y zvDiA&-rgaTpDz((WjnS?Wgsh~ZBxe@?8>r&aumwOuB_#q-7Vc~(59?1y`yQR8au4= z01ZIcMS}LN3r1KKl2N`Bi4V`vCuppYj4D!580%Jb|^pu;xkJ z+zee8gjJPsEwWw;!_i3U^EbkbRIDx7A}B3oRVUpIiWG0DENL{!$;6mOO$NpG8irX<_fSe==cxGJ@9^iI&Ecr$eppMNpJlDBL`!fMuXH38ye zb5jx*Yl#6J3o+OR*RrCm7280u8OT~X@?FW_Z}?M}B8_7cU8pmT72P>&VJhJYIGvsbUYp6$-z5fi=5YjzkiI%qcWxzkp&C3dSyoAo8 z{($<-)=N|uZIve{TM}DiK)K%qv>#3K%a*eXu;oed^A7isjXD~NCd2rtzb zFhYf}<|O-KM7Tktj}u|;8XY1X)g$$6Ba|3cI)aFfxba+8Nsd>PQR;s2~N&s6CmsO@hn1-yT^A|h|9j`#>VrXU40 zOYzdXrSdwPcG=TK=_XkXc4MMuNzE&+C{#HJ>oleHzATwq%u*h-PC-*r#c*2kc+&b& zINIw!WhJF5re2n|<`0EaB{No)%t|1Z!O4=jPxJMNWmGcbl6}8{?l}iF+Af*rHO3M* z6X6-jzW0dm6^&LUb6AH+H&rsos;65BF*UAyRQ62Sq^MldYYKGH`0T82=8AiYrYO*FVwRj>Bb-nF(^u)e>2x`sn1ro!~kxf~YHe zLac(DHV=U%h;4$KHV1**0el^9I;F{93e0ZQ$n9|X7b7qWjXn=9e-i=+0sMjxC$uE0 z14AG~)&Y7sTV8pyvlNij2Fs~vs=Rrt9r$w{_{|zm?3OS)#RC7iH#w4#waLyRcd*7% zB6l5BRV3E|Cw(Vnf@mT-cBgA zug`tsX$b!u!H)=qt@?zVL^F+WD$cuyQx#FDig+s!d*Eb6EY|WpVjs%GvXXsuke^eh z(RM{#sWFx~L4@99-$o+5M59$jyikWI56+4>$!hZS0MqQ*fPAV>!)*{#C66n+&>J;$ zWt%EVEqDT%$vW$FU z;Aa@I_QFm35dvF>;Vmz?>BJ!ad0_sE&`WRyZy~Tv3jn#i4itjwC?d)-XxIAs_8gKw2V4o;zaIG9IR!e z=|{y3*^zYOh0zUdEm#@gd9SdZ@yVf<*>q^Y+CzPSDzImKlc^%NBVTQBQ_x{N<2#@F z_u~luH{4|G_!ri*J~?k{9WKODxXEhpeNJJ23d~R73c*%hCsgiGu|!U(#!(Z`U8@78 zDe5r1B4;+*ZQgjw7**;$#RkGPqSA0{FhL71D zooyS0b&n1yjqg<ie3kEP zYR|LRw{2`eimxaE#Y&Z1e4|JeJ(kVuZ13r)Yukvu;MOIoG104Pbgfe!I+=|a&`Rir z7$ljLRVy-?rgOqt=ach@Kf%&}pfbRHjhaob_sLmq?g*4B+~hUFYFD&v2rh+F9i5b4 zzjj3%-bb=7Pzum{b98M{9u!EMjd~yzxWG4t6nGpA9woj?jirk9X(KV3!cE4anNs6I zrN%lS+b9BRv?$s?Aov7a&R8vNJSu}jC%oj0iJw)kRHE1V=!z;2Ds@36Ws`c_CMr#X zl29}Xts9PnMigp0f?MGna)Rb%ajQbfqSp!OvOD?5jjRgQ$;19&TB(>m0)`K{nU<>? z2TTy>D4z7XB3)aR2mMEtz@#g&^guMHlTC+>#`{okQ@U}(HpiDkxQh^8EOAu&b9_?? z`4kWb;3nRRfHhZXF#{9$Jh(Z;*sHVPHBbQyKF>FNS{X>L2kqD4rp-iv&Q87`?i@;- zt`nm=%S)2KirAN#+&czx;pWn`mC5}ELcc68tI+3ruNXx$@ERl4q19wdEh4omX*MiRebkj#LaNF-L0Y9n6*;wre(pW~0Ni1NhjIZCo$ zNq!d5&k%{65vwHG^~{CyV|) zNgBBmG#zl5E^A3ri!w5=TB?3fG`frS)MxbP~E!o>nQ=7XZ}& zm;1I(PKju0)`gB(s!x)P?loHXpBmk3lH_nlWm>0LsH^K`+i^0M}f zK2L}Wxw>|4QWn)nD>8u|yjbTZolP1)1J!;9H<7;ZW1X)AgfQnTr+J^$Pp>#zleB8B zV5z#kNvh4wlnf^&ok0vq&$ASpa>+B#sWcT;^?IG#7#7{oJ)ZE&N=>ij)Acx*&}Ho@ zFXhU3!kb0BFNaR6;U>roo$$_}43%Y}H-no(>wYNT6W())_Lo52OK2+d6W%JqO*|7{ z&xNb#K>)}wAw9dZsJK4x%69w}M1L7B6hIfX=6s|PxUBS~5%dPwV~F`BT+Z(?4$(#Z zL*DZ`KutS_B(ii-;$6D&A6{&5Vs3jm?gDgHJqD^)?1c4^H}zLwF>M#fCQU$HgsWtF zrpo^=VmBeC15S^D=W8W=f}u3#`MKBk0eI%j*Cet>o=aok1saoVAd@I7$v3GKiB@V7 zb-#9%&XSoaUu|hAs#1pJ>Z+;Dujry3qKNKfjrLp=;*-$hmO-I;6*))x@#5NDA$1!h8j0g)gS`B4AIwS`X*?&?;?ymfI zC<_H>@`meYmh!DVR8Q30;0~``HY&oV*7h$W=5jb)XmSRPfKSb( z0hvO(-|Kq~JafLLh1s?JI~tQL7&3{T^ZG`@;5oNz5?O$GLv@y@wih89SxxcMDaG>2 zyTuV5-UWYNqVrzU|GU zLY^%TF>2YkW(7S@xJebAYHyhI(F(qn*J|pOukt3-Aue>~DGyBcRDemVy0d6m>7YG}R`6$>1zI>cE8L+I zTk>og>nmR01|-h;hDOU$k@N7I4PmJVP3dZ{FGwfH&?QSj%#*Y5wr;tGUWGUOEAS;3 zVQuveqB~qVb%rj#@}Q*557Eg4!n)L(9MD7;7^3wdw2nz6@KWzYdZ=*=6u%KpE&FtO z=Mi&1WgSlDXp~X(W)!5=?e*aeBeW=uwsSPc5WYr)n~|dh8l`e1HN>;rFrKR*bHZx# zCex`pbj?y8@-eKERc!NSlZx%oWEGrJaizD6RD2bP=UBz(G!v|#lH}E1-*Hm$EseHS z{KOD0Bf?9dA|2^NmqW!$oSCI37**b6Is=HV+m#0m{qwjxs`8#eHMJ2g1V>%Wd{s|< zQ*bW`C;Qr|nuSL&l*Y{Jy(!;9hI5KFiQQ~>m_!VjL`~k5-%_Gonndb;*7tRY)^^@N zG#Z~=`puJy`8_Mb%dr_kvO zAjzS3*k@0{g9o@Nw9f^|0-7_t2E-A#iLyyg_saSGj;Xkdfy+CrxzeKDb>Ih0tSXV` z8LXsG&+}7-PVpYrl11)VN3`r(>_s^_&e%Di4J}rx$^rM0KQuY`Srz9XRplUg8qN}e zUP{@)O4-9e9)zn}w|v!_R$&eCrcpxA?j?B>wfcEbA6w+4`UMzXDG!Z0ZZ_gJs5rT% z+u-Tig!NskNaS6sNhq5)C=zEjf8dCY%VvrN(>{VE@)drsDmW@LWEf}M3F~H$EVcb0 zqiasG@~u6$hmmJG_zonwwD+JHt99qYVJW1oO-D?p0rSiG_|PpJ=lfQV%(r*vr`_@%tdY1ujH6xTzL}^Ded7XFQ{6`^jGs^9o${Pr#c# zd`=hEH0b}2o{Sx!pEkMye}%{)+_WSF8UaKp@F5ai4d8MLyn(=sB2-GaY0o3@Z2-F{ z@Du`KCYFy8n4S+fKM!2$fvJYepNYWt0o+J|Dg@3zFE$)5e-Q$A0l1R_D-lSVjRUGE zun~c^2rPrk{|W-47~>HIu1DZ;1bzgUe>(yxbAi z?h{ugi^5GhrjD^kuS}-L7Mro+{B<3-!VxEO=>ZH~y2tTs0W6=U{#r*^Vn0yU7LV^P zB+PkIqp4TR`E@FyaLF#N`ZcJ20-;wym;c`g+=M)Q6E61*O-HQ`d60L>d33-BT@^rn zsC4pNiA-l`d>HtlH7Wt{g%ORPs&U<5MK|2kYzsurCLO&5$@0Fc1FI3h?rIiVc)!N4 zb@Au{_uuQ7oz56(RpOs73g6cRcPN6S-O{uT5M6kmw#mbeC{f4;{G$__^R}j?BFzbD zyO8m7=rI>v6v(?o2dEP|4b4UNG)-t?@+!PZM^95x^z<(8c1Mz0PC}o_Q%UaC(XA>< z>MwGh(O6O^_iY`(W-1bhTm$)$Zob!8a`| z4U*!e-b7wGI~>V!u5$$P_UXWHk?Tb&A({i#yMd~~0f(p!Eb6B$D(_`S^bH(sG@1XV zj;4ML%?=wdXizPp`vDs2<@{a__8FehG_+bL&=by-qhp3=7LAUxJxlGfqaDjuhG#SJ(kMBd%kW(HAyBlwH9`%{v+3TgQ*HyaMta74 zO0nx`(~z)6dE~yh*>ZQ8uts|Z(^*%u&Ca$=kK7wNTb`VY2N|9bo(SUCE~jT;V>}aO z2)BJ|?-4Ks64R=lE}f?3GeL{mgLJw=FQCC;wmjC%YV^pp5K%lECotV}3 zV(>W(H-XN&0`hD+EoInT?5}{UcpAxoEG9~;NzK-jZjnN@ReXZb4qQWbSVR%^tYC8#Ud{$mwUu z0M#orh}`dMymM)`RG|9MwMcoQ5KO7?-&9Q11mwp$rB^VNrpc|pSiaRrl5?LXkrNO( z+_!4Z*rJ2#Y<+0?b`#-hjg}*PF0Ieg^?V!Y*)X_U__MP8S-B(~awWT?~C1P<Tu0j2Tmo=o-WOO{+C zz8I-j!&TvtHTIHXYX4|UN1AD5Rxp5&IhLJ4zKd9J-=&4m!LNx zCs`wCDdg)YlWXCobai7_J#NdBtO?Z3{Q4Z`&r@~>Qz$WZa?&v}H zm~6>Cog08&Pf;lHL8{1KMevBGmOHZ%Ay?}z31W#FZlZh!GRTro;~oa$UP207mfw;O zAq&fJ?*tdx2ZKG0US*K<=pQYYMlm`mXDj_91ygPU7GMSav};A=978O}BY{y`g` zyIbRV*%h>+G(R9|1?|eGD<8(1tPa7mW+)v!<+u@pz{%L6vm7gVwBNc=MKvO70bFVR zFqQmU$`f}rfnL7EW7S#msnlVRJq?#vr%9<;R)9>YO;dxdfSc%EC$B@(%tcAxq-ch8 z>27WJ&0CWvFnKe`6FL`nV~uD)wMI<+^aP^0=rg%DqbtCx-EO*t}Thj5P!7q)kw3+t%t8y^7rClrPC zi(_)b)2>P(z6KYT6RWr7yy&k8zW|r_cdZQdX4gR-D&Q-DPtg^Z?g#GCcs0}9EUOb} z=I3e}N<;Hc+Q6!9CK_7E2D%GT`_0YV>-ixaT56FoMcDwh$H3qy{>;P&w^bRfTHYleG*qaUHiWf4m0sQ2r<($L zK6zPt-X*Qp(>Fb=^?9VyQxNnBDWHe94yjfp7P(5{a{s0|v_l1IzZg-JM7$Q~mbh{V zvD>EUVJIyzzXj{1n)%8cYJ_-;U?DYLu&C=<=j4KRx?Hy94$WqeVY7$^Zu;Z_U0gw| zJ=x2!yqb@wo1pF2;ijF7fFJ8vpCXVypJEW$1()B5KmbcQgW(E@-FGy*JjoPgP0T2L zJt*eENzTs!I09E0Pu@h_CD&nf*hB{hgT1bK5`Sqh%tX~*n?-bcL?2|J>rv&QXUkX) zIX57x6by>s@^3}p2!O}oswvS4l=o-LG+9kO?g!zf6Sj$HYPtBiT!A3#&AVr35HCfmZX%oDABo^MBPh5f6WTybQYraL;ihm zp?q{EcSA}OVMR7o))#d$OLQR8dNpZ?2gzh>EW$0|47lkOBb#I^Ld|fw@99*|>Mrtr zp|P|$avHc$|e} zd6b2H5pbzzdB-o_2Q0ZkXN_z2qjHf;UTckSe$0dIUU124tTPtx1_il{saegb@W~}# zY@N}3G5C;6-VdtLASV}CH*9e}d~$*H!xp0(6yyRI4_@pAj$Gi9v5R*gA-O@paf?SH zo?KwcjcbkpAeZ`}HMyDYeaNN$5i#$94Y|~#*0{w7KtgW#nSsTxz$Z6i ze4zPrP?Jl(1PTU$BsX$nR`XRzNiKDhb$0VTK$1%@_KaKnE0B{LmYclzBOu8II)*ea z1~s|VTdnbnzXt+xBQGA;{49{O;vTzXjd@0)Sld zG3cHO0ptSRLz?G<54rS9pviSWk{dQDxw#!ka;f>=@xmHr<@krEdHtvRhglhe0;91+ zlP%KH&I1be%@x(d@o;C9@cQSZos(9QMnPXX2na|XDJG2}U{H~R;QTRj$DsHr4g;xW zRS&m7l6odsO-Ch6)3iQfrf3HzS?8q@OC^KIhfD^?u^=Bx!jOxR)}%2M5%5Wsh7GsU z(rogKAr1wKK|g%7D}IDC9=0BCd51dFk0SO;(b2iEW+rkx)Xwo3BsW1~f10+4%mi+M zrM5my9i4{oWa51#Nb)-+jW-CSr3{^+RgH|?aE?l8VXEV zB8c3gAZ3wYL!mp7;#BUe6_`9a^G~@6k+Dg;O2rm)Uw3767#ORzP6JW$YRa}^FkhJ- z%U@|0F|2Xg-<5+}Q(1_vPSc^QNhr>GZG71c>FN>IIyi9+P982<5uITtb<`M2%5>4k z+;NWFldg>}eUSf!##oY-gB)Y|G+k*;vu&a(jfn&$nmcCwP;Rdn8(b*xLXV^_em8yT znJR3F2!odzRFpybwi#VX0?!ooDmeb1X?slaFoRbbRFpyHh&NQ?89BozvQ#L`aELH? zrb{OdO|}UcEOHTYsN5!Gu);;?RD)p4ApVi1z)Vf=5&3%=X6-D|z$%^NAY+(Cf{a0y zo+`Y>TGRlR-lye1tbLRngU=gOl)*PO>QrUN9DieyH!%2yLB$w!a%>ntN0$DwNgihK zb%TmB$Q=JeZ4i!&-*-QLhC;#!41TOpD#sieWW+`o9Hmi;kVDgKLI$f`gdA$M2^qZD zMaZFzHX(!CU4$IkZ4)y1Ll>d=f)`uoZ^k+e46;2a(+zt$lx8G1Fv#{$gdCb`6Eev5 zP=p*>WfL;U_E3Zzy22)8knN!eIkd|rWYB4y#HwgF*{^Cl@OcK*WEpp8 z&d(Apop7u=i?;-B;@p=l+s3m*E()}M23hj|(AcaLTNoS}WF7y%G&X0@VNzD(|Ik$2 zrUz`^TvXgtLC7GN99bZ;mrd20r3wUu46=@jkVD*5LC7H2L`BFUZmJ+;kaMdD?Hb^K zEUqCB>H23IEym!>I?5xuGykk%_AL=(@O1}Sygeu>XPv7C;aGXr6zm+zNiYfjtYm!2 zQY(npvLB6rVudQR6n~&tAGS1546-`JU(wtDxGhpf!$0fufysLQUY5i@@nD$igb!Iy zo|s?}jb<&_IK+WrE?P34t&h5pcXR7rXhu!jG^wc2^nNNC_)as zX%jNYnO1}x5~g-8G@v85P5tC{VO+lY4{8NCiw4vSOUQLk=>AU$@CvOH=Kz zWUIBa>srE)$HN^L1IuS~|4%H>O0g9&No0_f`+wJV0Gtjh` zL#EP;|MU7EUjlX(xZ6V)!64TKvSY(u)|b1k|6lcDoG&gAM~!B^|F3H=*IGVy>ITys z!dyfj*(e6Ngb`tTbt(H5zO&C~mh2ToV~KFvBXH+ADgt z?&ScpRvizAY(WF|u8D%0SkMBa<`M>(F^Or~%OP7#LfOk!fxoxo3`E7sax#sag$(kM zU0$(aYl4{ms)S`RH%@Aq6Mc+v`y)!|euTy6j-7&2e?*C#j9@+^Y__%nst1GTYn19# zI25)C8I&hjfukbiP?t?;q`3g**rEx^cnmWWG&=^FUw<|xzWuTLqG_=cNDrM$wGTTm zc$Yy%864y?jVo6sz^9a5Y?6l=+-FcRK8uVw_A>%v>zAf~PWuCy0K4VJDETjIAK75g zZ-hn}T%b{^;Ed)5;6urn4y9q@48TX675oR~_++vJwrUJMrcwRt;WdYvG5tXK=i|k? z^b`fTXRuqN`WIm`BVHS!;1k*h3kJ_OTw@HDxwvwu#wKL2-bHAOb3-irQzN{A!Jy%} zkUQDYg9c3Ifwm8Q5oce(;ghI!YD)rKQX9A20zuP{;LM-jg5kuj#-g>hTkx3 zqYNH1s0f36A{$J*buR}#FmzEa9^=!3u*GMrJ&?hRAVzuy zZP^L!l4Y~xlcN;|6IKS-8_6*SSr$od+RGtZOpMva`z&Ux;n~b!yFoQF$c#x$b3bAl z>j2ht;?+~_nGd+* zl0|RH;A$gv3Fn>5u%C$=`c&CSnPI9Nr$s2qO$$<|4Gk^#`#EsfJAhgL4h4 zkwF%!8VrY6F3N$yHajhYD;-)j?Bx*a+TUYp^+Zi-{U>cHJ~EHGZ-!Y7Dm8{#529mu zh0!U-AZvlbWsnsbcz_~>P9>+-$cZx8U{DbTV;Uug6ArW*y2Rmx#5ycOLAv-Xz|bfa zMjc|1&#gm4x<|+I8FfH07|Cq6~i3pcXQCjYg?T%Ap$!VU)oi z8`MGu?>49igO3vttOfcB2JbV{8yK_|TH;i| z39~Zi8_7)!-epjY46=AqrfDySY%%?I(Ik$=EHONr8T_e1#TaD9B&N9^G5roW4{APK zE70wCYm;!vo?;|8U6Y<+tQcmn+MpIP$c!-(OlIa>R|Xsj`0z(AZ1g}3-eGL8g!9hD zdWw;N8P3?U%uW1~uRejt^bD){sUR z{DDD58N5@YQiS<>5~KJKMb&Pd)!7LLGz0ACmKT&|Fl10s2Kg96#gjvq*o02jPMF2y z8qx*^D-9~fATuU04SP9ci|My&lQ=#^@y~;maO8$TVZ=lk^l21~$1C5AO4d=QHXe(6 z(}-&@pb;0dG|0RmE=#G0?;k3_DQ=+66gmk!K8UfbA#J%frec&kB07&HeY!oHEc z9Jpc)xu)l|LakY$85FgVzt z8X08OR9X(%iYAUKW@_<_*5sJcD9qsd1{Gz{s3pQI<#eM?m_b``|MMDD5PN-t51t%v zq(vAE8&s6Rm_ao#$VW+HYPD(a#X5eIp^ILj!LJ%rgu!nbRFuIRHA1P!eFgI#TdL^qZB(1{oE#G@RtS^VNj$Pp$uM4uhZdD>^SsejfHj$ ze(WMtiT=|+8|p1%s0IevI=E9|kWE9XH0%Sv|`60&Nm1dbef>wkwQIPR08n-sm}IzdK88WRguAsx>8`m#~Gbyl#Oym`4Bl! zt<|w#v#A)o)}SJZwunBiV_z~&H^95=eHT|(;(X&8Rb(N*>?Sn zJC-=A*=A~UWQyI_Z@J!syMH>!sxWu=H@C>Ofbj`W7nMcLnX9H$!ca zxBo43d@CCT-CZC-YQJRue#j(exf)_8DKaexM>g&))u9U0)WQt5Xp~pr@J$X};!4e- zO&Uw)Wtfk*OcErAL!7Vv3&L$qKF}3)pFy@EC1;q+wx1^QMWk>SM9+D2$HbifFMA`^ z4*wS`2bpJ)u29X|rz|o|M+nn}TPx0jZJdQF&i>ck0uZbs^KtU*GCW(proo*C6=smd zS)zp{a!CVa%T$nVZZg2Kf2o<0Y=)n<1u@9A*HtN5xl34ph7h*vP|=MA(=tkMhni zw{+BV2DwqAuFtNskxyISmD`D86vq&{yM-cmXBp!VzXoLB8?hY#l*x7{Uz?-Vu^{H`b*sZ>o$pr zoBK;V(3>?lzi5K8XuI}NS`7YcA{%=lgCA*>G6jc9jLrJ3j4a{`Bcg#pPD%Xww+^Y0 z$e@WC{L|#FF|M5LGVw6VuFMJ~Uz)8Dz#Jrnw(635z|Jn4-DN)joCJ zEZpU%t5Cl7Q6>!Dq4yW40&pd=13ForN#4L@o@zHODCicEYpQ)9D~mrRLdp9RBXHULB-%6gG!jbI_Cw8w9cGeviW+A zd(q@)34`?EXS%#%v$dB4#|`pIYcC)5xyQG!c?L3pi3$N1P)dtnT zV8G-sVesbpBpyg<-8g?<;ooL5$cm%Vv*=YuPV90G+Bu0O<|JYINI8i&DvE{Wvkg$4 zelk#X0*BkR+P~C3I55bk>!uKg>ytK#v3uue11~T(4>QQhJE%DmyEL^UN)?0i-$Kn} z+q`OQ6MbKU_n0z>9@3!KD3P$NYFE6)I{ilNCyNcD3pwHNbw<<$46<}4ovYP@PT4AZwurIb`dUFq~=@Qj3SRE?ineaf}ysvX$0mpK%se#`ZFvi*Bgs zam6#9^-G8OB2ESz!9^O+fbpz%0t1fV48?1xGZ5$fRflIAdqr831vYB22AOw1(>gYm zC79)hnl(CT2K|O*n89L$iZRFvpynhB9e&42I@HUN7txX3` z;qBMs0)4NVF0^F^=@dGJiZb|_Mk($b@_Css!r;RO6=m?KMya$MDoWzCQ3k6uN)d9X z)h1La?0+^sbBPqfLy#6pd1Z@j_MPeQ}~G*DU*w zI!@;LWgYlT`~Bux$>5`ie?3%%QH~5gtx-xP4n1!ZGWd~;FkW|On5Ermm^3i>s6j1c zkVTRL4SPAnQZZmN_%AyxgHD|WzU#wR3v^OuMK)#l&xUP`!M_?*guyp83I`5s-OGW0 z8oGqZEtTcfI+`UprT)VtO_=*3rCe6!6P($0Fa?A6n$!y!WOI(d{4jB!ImiA+C;Y&Rw;wHf4dzH#rxP>{LDqjA@3-~85|uMlc1h68R0+E45(08&NB`i!yg#g zVFp>sz@`5UortsL$RW#BIb@ccfdTA`9Q3Cnr~1zdZPTw*-fq7(%HR=$iZb}eFYp2; zbNrD>-oW591{Gt_$uY5EB74@&IuSELwPlb`SnqE=)}*tE2JCV1EtWG?wYW?BRDulu zT;ou68GO*7A`J4e>aw@zz@vsPLAGV_S?V8ZBDsxUsbT+f?X=H;e_fN4iVPpK+)Z8m_OqlpPupWYC8V7JNvu=nRgk-r{@pbvyXGb<;5GpC+IML={`O^fA79j z)A2U$unx!5@6dSmuh!vj3_#EL8+H86asCfQnx{ULtAW0QXOgI^+wf7v5G{ge7ly0CtGuu1#;nrZxN zgYoGv)UUR$&_2J~e~Avq)8D4?Khi$G@6Ye?$J3v#N0xEgFV%j#_W2ltP92U%KsSgQSH+W(>URjmDgpT@KQfDS*b z{YSKaQ2Qe8I;`=}Y5#fczoLB+cQxuEl>J3Ie3AC!$i*6sZ`VE_UcO-f`s+3RyV|dq zpg6K$r^8FMA208aPWOcN<0lmH^o#U1iKW`-@6+-JY2)dC0=^z`qeY7np9~#>f4Mk8 z;c3&v^!ASK>GWmawbM5h&uW=fG<74~I(%SqW8sYHYu2}}?ODY`SNDpwYc5joI{I{LtHI;T%nAmF7SKT~!dOG3a9d|* zd#4I^bhfv)b!mPS*SYckq3uoJqbRcY@t*1QFq2FUNCM%K0ir~K99)7VnvjD@2oMsE zAV>(wH@^g73K964V4~$h}Fp~R0smkU>glM8{`YB(52m=j7 zG#mC5prwW})tE$rbYoJoVH6maJ%+KQ6ft0_`4!j@n`JjlONj*?V@#?sE*^m}0T*p^G@fPA6z}*e*08V~tpwrK%LxXCOnAi)HqC#vq`WbYmb)7-@Uca3E#f zQM$?HawQuP`o(k^pS~#>SCooX|4q8gt<6W5G6^emL@Z9H?0t9nTZTdQ#oE3GYrt{j zlXxQws%CJYFK7iDh=a&`yf(V0E^pTpv7?7la07JhGluF z%WzIKEGbpC4izPy@?+qQaz>UBOR?;Oq-i%J_8g9F(IW~_LNC263FhfV1!Q2U;iU3tyTveuh=5cRM7D1x+K8jenN&OeNAaFtk8O|j z%jbk@r>b7vuiRow*aU&TyvIIF{xgifP#Ft$p~%oWuMs(wYCwt|-WD~$FyJqn{-E`Q z@K`MLTMS48o6#sx30_d=bITe5Dn6Jx!$vjRc7do@`tK|~LZLk+7Dqg#(E`OQ5#k2& zq9|?0CaP(r;M!CX=#Cy~fxQRp-S$*mQWhI=>BgBE#@J*do_y#tW_LJWyB+l z!?s794cl$TV3B^csMCh6kaB7yQ>)Q)?VF78gzN>-)h^m@bO@$&kOLS`9nJye%Q=Rl z2El!XVh+DiPTZh-W_|k0cRMI6p@-4A}%lW zC$X#)5tUx**dUHRu*aXQKIDXv2tHhY>GDlRqW-ug8DTPvA^OvJlerN`1&1Tf2uC1$ zsd3IG``Y%&KraCB(D)i z4KTx?<{2mZQ&C~A=`ox!aM#Npi+=K4w-H}xM4pEbdW^-0o{30XV`GK4A&b_kt5^b(@CE;sC1NV-UlLjJyC1-C!+Q5dJFxnbO=LEeHsQ(XQOnCi5 z6x|mFwF?w88h#H3RxxIIjRXu=RrXS37DG5qDdJ#4JkAru*@rXg=p~3%1|`RZ5>%b* z*Y8kuycWrvZ#Whk7ED-d&l!$u6rpB9=1Afn`;|rws z7zDCGNf*$dK)tAeZpWtYX9c^~V?Ji+2MiarG5t|QiE93$)cs*ukHvR1|SsAEX)$hI3Vo;qKi%JlN`a!1$<<(-*KEm|B zhZRUdzvEIB0=3jeA@z4j7a=4nh`TO@y@c>yLj3j8AB-jXngSylbqSX`n$r+*wisv9 zIbU987;$t3tLTKeqaMD=>vGB2@;ycYSj-PlF?v--Y5q@BAj{c?eG=!CW-I7)ZZ0t5 zWuN0j?$BYy8{=%29qE|U4Td>QJ7ycvX>893N>X_N_K3?2V`zvyQ9Y%uWK^hiaz1l1 zHg>RW7)Fw2C|!(dS_YdjuQIaJZObvs6zzDaG0=m0G{=T{|4{UrwwsNiXjCK8X=I~* zl)CKk1!#GHH_ieaLJe__aUNhofiYo@k&q7pz5x+$)5Ci(Bo#o#Qe!3cd_yr@WB%ZR<*7)|NNw;7}DTZvg}q#*`Iz@aFT zc>9H-4;g;GG2y&9`H;^s`;>SwrlwJ8Zo*hxzZ*#!XX!&XQPxv>5ES!7VgBeWV^le* z7HRcKYRb(<0&*=(JWTORBNef^b#>u1^1Vqw-=Xm>ddqmTWx2-qE+bjoA zEndS`1gv>c(kXF4{brdL&jw=%CQfn|pA1OqVU6h#NMPitIYYBxxN6{#auy zO$dB)PKR8RPpN^?)P{JQ{*h3iZ{M(k^kN9q8+IEGO#4LpnIpOh-8NBPXULYk1jgwx zn`8t`b9~7@k#G{NnS8>X$Zn*)N@T-FMPaEhj5H&n$`}Q`)*bXmEn}%kx6y3Ch@g62 zjfzrfM4oRLi)~j@3OzRIjkY+se6fgeSFT_xQ!yi3A-icE6Ou^1b_Y$u1`6X-jN#&p zwIiML2NQJ|Z>7#hx$YwvxRfdpYCZ>!|9 zT<3y{Ddfmawz)!IEPRGV)kLvmrwn3Cfac|ApwF|9w*6HGg17B9FKV71jzP_bsihu4 zD~P42-*$Hc|Lx5_k)p24!X6QC!(iO(Q^Qmi?Gy(FASR^yhNSI?p zlpa8hP8W4AVh2RqpvbwK1@kD@~VTnwQ4b(iiC zO$D1AF67asm%BveN~*%F3aPen#io`L-cO(q#~5h!KR&<81MZ zK=?!x#yQp|2743?WoI0=Sj38>4rx#&K+onZwb61LzLaxGhwUa?z&6;kntc;u8n!^+ zUkl&giXQR*x%1yawit3F{X3-h-w*IUcDvyI75|(2|D@bc zMS*EpWb)}e-`>abbFkG0zptgz&M-1D%#P1QSr`*?jY%knOp?*4PGvF-gIWuDnJ$LH z=j$kzzeHmFg){-#MYvd50+*PD6un6lQmwy`B1&!OZf$yvETrF~q3W+&>{N5Ga~Frg zj4`lJqN*!3cUotn`?1&)ZTjc~BHU8MLW9Ual%-%?xD+!T-lpp&`>X{hCbQY@#} zV46^6jG#R_)MIL-YPeI4*Nygxb}u_1nvF{J`cqa6G5T|t(F{HnCAZ5;b;X7rV*h1w z!Yw+C{t~BUV>GppIbuAd%{3a04BJ}h`IFE?nSb*#F(Kb!#R?!!e;!)d&=bngYOw^3 zO&8-hjjhUd%z>x||=8l)@#IUQ1`h-oY=xL%88;)pW(v5RIf+t&0M}5i02y|hQ z&!cl5Xp6<9m|PHn=BhWlfFhG^?+RN-zYs2?0r$5ekp9(W2(=a1qMx{|wA5vLMX0}p`uZ5dxX^I?5i~&*HzAm2w(hPJ@;w0cl`vG!!E(I^22QWRz|R)J#Geu_`|pT&VaX))_{L z5q`oLMlQsBn@&sUPrxv}R5auBz+(8cTxmpL^jvCtNEnX2B%#QtG7_*YW&eY5W(Ni$ z(m>nxOU3RA&5jLQlVQ0CE?T!bZK{ zE;SLB`$06%rrmMaHLBW(N;k%|8c~=*8z{w4ct>{0&(X<17umhWE7%XY0dnoq1sQ|Hj(>tkujhCfr*sd3) zOJ`caqc`U3L6}Ys#1P+s^$4cxw2wfuB&grXIip|hOX((jW>&2 zMd;4-K#dUncB9K2Tl8@Mmc^%nbG2hCuXMSj(z z@6%2gQTkstQumUAsJ%3pi0*}g)BF@!u{|twV^J(8&jCKC%AkBsyVZYzw{H@o8Ete@ zX!0|Et3=hAVqhcDRzSt2qv9adOQ`=S6~2nFVcS&B^~r&61vrpAde=s~E718+7imjv zHwMx-BXPzE?4sz0G<^9XJdFsCY&>C0$Nr5&_sUIR>ZK!X>-tq9$=FQt-5aJ$tI4IK zO_weskDe(UDq%X@xx#ekxSQe4rKU3zORy!XW*Ib!zx-iycDO>#zxr?`0^*;hnVAZrD0QbAw^{ zOjt+B-ieLS!N$-QV-QU?(Asg06qjQ(Tqh#a3_Jn*XzQs%!P*!`;vB2?Pp=hS&X7{_ z6(uCURk=lsxiPmH1F;UXtwj{EC1bN^7-tAynFPLl6W6E!;%r{~<+OmKjTKX#7;=41 z$aQFVb7RJgA1asWoBG?tf|1grp+whxs1cE+w_dns&tINGkqo*5*|`PZR3HFN+FiyB z1heSw9)s+{cUG8Z&=)DthwXU!whVKzn~k_ODw$_Bx%v<_3hUo@Z1$;?5*DErn}@y^ zru{4Q^T-nHq|(VYL6X=qrOU zF6&u?#qdKpl-hm5a-F&ok$`#am(#{xVECkvYg%sw%0t7O9yaxd%FPm$@;0>vph^TK zKrwFGL1c1}zH=?rHrktgRc89nYfELJ;2T_hzn#9jg-@&H7m~O8udD{{&S@Msk^<@NQRI<4B{Evxq-q_4TQLf))URgRk|M5NW8)y*ES=BpQXCWs({pXIBq zs}$O@7cUgdY>#&#+mv5l>n-uEDp}X;^{f`+5|1~RZqv}p=GL~9kvv!49%0%c(`)uN zRjh6lF$k77d(6wA#F{)Z(-n0M%^qpFh_eWG2IsP>p=ouwR|tiMl17ho$CC19vO-(a zQ0H6i5djKuFUFFr#bw1yv?h;tO?jPQ;ev|Bb((Z|z4Ds0HXuhip4xysHG9jwzGjWG znqA|ozgVEfBBie}QTZjh=dySt_)U0+Tn7 z1O&%jDP>i@`ig*fqGG_~FsZqAy+bwZ=MUq)+e@~pwVF6?i4kB_#trnaI+1VrA2zC2lI!cHN`Zm5S6 zuMlcf;a8PcTr4C=$)nBA&OXnTG<)8nvt84ZCncwb-r(e#=xJ$eX!4#nhP<0a?WNr7 z$(9YEc}%dFb9Fjiwx1BG-$5aQMfFXd>RPmeCZwzC{Aq(od5E}J#qU=*yQ#s~IM1`z z(-aa*2?Hi3m{l{~c z*Yz8T`2J(aUZTHTOG!xTxh;*gO=eXNk-^QLrZuK8w4STv^U!ZK*YxoqJTH0$cSFO) zIpyB+5Ym(q`|!1)^_}|vkWhuS^%r|8%NBc@nrj>CLxk?~W|4&)58Wf!r@^VZdRpl`-|E2V z&3*6or2E8A;lNMXTU^co_FHjFARRgK#DC3a1!P6VY_?`aC3NUnQLgr|tf-_mBPXiJ zIxjpbDQjPpE9<$agskVIVzOR{vghGJ#feIT8GnkphMqQSPE=|wg6@m5<5jNmFmK~~ zR9(-Cis`n_ib~i*>20R;I*hES)OK4|)bzFiIZ-RE>%*g_Lq#f5PD08qq?|D8m8h6m zuSVHtMHKvsGz<1o{^@8``BuLdVZK%IV`VTcU7gLJaxYca$WJ@@rA^O?%CzQ%!wdV6 zwdcr&JpTp9H-7`)-EaKtfcUu)>jUDO_TGw{SLrbC|6V9BwO+;Fq3jN_%Nw9JC&K!1 zz-4}fb#cI@TRmf%{m`g>Eo7*4Ogqenu}xQeooR;(f1Y|IF3NE$mE&*qSy8U;uvt+_ zTc{j2Q#p1F$coBrw`WDU+Z?l_KD6o&TEe5;@LwkUHyve~iZV??nYvJ>3A6r+vVASe zo-Ir)ROy+|2fs&MBi|iV9_>_b+QO)cHin~e?1L|#L%}>x)pJn@g9>5lGoQ*{e>#1c z>-t0vRhI(`&H7?KaQ|+rXbNu>*{bkBjGyYB$&itLoauxod;_vgv z4=$g~8G+ID*AR_O3!ubtf?RL+$$d< zq5ZG*IVY;eg4@3Shx(iop--{?58!~JI(rgQ2pTOS;YtS14{zRKP$po z5^y;uVnx7JR)kr9%@^>Q{_fMhGOY`Oo0m+uPNi>lByaoe>92gM`YE0)D)v5u%j^hi zQ(u^EOOda1fbxr=t+#GTbTe`kd-W<2xlt55jj`THwtX+Ryz4XV#EYCx+{@yz;X z{`7ZYfBJ&!^CkY?P}3?^_z#udjq3VW{lDxq{?A3l=(k|}?a_SMbDm1a^so6wYV*gs zrk~BXf?w{>mmC+?O1GNfdekebR|kf(UQAObakML5Q$N&7^pF4jwKMCse(HU8L~%cC zLBGwfAfm9Juvrl~%8pd^LoL$}s5kxDvF>yYty1Y}ReHwx^Aj>|SQ|nHh1ryippkw~ zL}dt*FGoH9_`1_26YO_BqAYuV|NPv1_UJo)|McVMR*T++F{n>Zmme`grDHy*)m$N9 z7JCup!EDdwQ*&{jp*UcFKzshl?;xemtoNZ84CH(Zpyoqpgf~F?x&92aJvb(HIh@C17SP z^-W@w#b_=Nt#QJ%D(0GiE)m@2%ylrjhS5EY9%A%3BO7KMP0|9OW`V{rm(JWA=2kMd zhPf{0?q==@=3Zj%2y-WaWGQ?HBugPI%;X$El8a|<7;|SaH=en3nM-G`gt-fu+XN*2 zd<~=980}>AFGgPj$KSBBJOfDj zbRr`!5IrzFOlt$8ku6MngQbUoXcP|9vhgqkS#FCM-3}!4wiifhegUXe#Q2264ab8M zWO-x($ry!5>T z?PfFy8y(X6nT)Prv>8a%Z07#R=yo7!-($?}Ve~2^{8U5rFX2FS!sD?(GUv%a(t_V{ zxIc2Z2bp_>xf4J##*d7$5=<@+NZP!Jxr-RB0+KfSn7fowH=~zud5p$n28iYr1$QUCTT?iy&tYoelNamx7xl0+{&FBe6&oYX|YEh<< z#K_I)T1K}sx(7(6_8@b+7(E9hz2?A#TWTK2Xef}3>tgOKMyWtDZUu8*Mt^41%P0YB zMd^)EKr*$-jILvJ7o$Y18fCatMvH(}i@J6PP?13Q0?BgQ$Kl>!>0y?JjWT06fMkp~ z=7utt4kXhp0NNTS-AemYvbIm|f zOAC;UaRWK<}~iOGe)UT`8nLGiM!xr-};B0VMMq%_sp#`fn6- zXE91)=~U*@8Rao5VblWDDN@_a+%`t{FgnQSd!VaDj8n`-jx{YE4kYX8Xy%d_{Sl~3 z#JwG8i$M1Q$&z`D(OyQc0!ben0_qkq4m0;5qhmn76;eIXj1kA^ETFAI+QQsjj2>Y0 zXCPVnPcio*&?O@7Ys|gHXz7_|YGsTnfm%h3-!Qj{(KU=N3Dd+kZDHCiPP0^>Wn{%% zN@|(S=x#<2qj!|jE1^%?d?S$Lkhs=^kA;9%fRC;rF@-SY7f(mjH6*6E7)BVJl@vpT zlA<$H$i>n`=8_mqU}-9IQy5KWX*zS6jB;4&X0DJC)sSL*bn%KZnWIvcE@$aV<|-N0 zu(Xc3Mn+ziwlKGWQ7cQ^nY)V77MAufcO9eOv2;6gw=%kurS~$ogV9cwKFZuKMo+P{ zm$~N{9boAz%pGL(CQA=9_a37US^5!kM;U#_(l43&FQe~R`V(_h1y%h6k|k(o&dDf- zrE$z9FdD&97jv|yDm5pubOLj!jHa-3I&%x!0MD@*TW?p{VaSh|zBM;Yy6=~K-0 zGJ1}s2bg<>(Lt8J$=qQ^@3Hhl=00L{l%=0B_a&qMvh+LVequzAm6EkC3`o`&dQ!VY zPL|Rg0FsMiM0<=f?g-{wj1pOz#M}f%sVtqs+;m3iEX`ythmo75h0GN(TFBB;=9V*B z$J4>-erj_Coq5V;{bBp!>&`QC*V`$ncfsP}fL^;^2 zlBkRky?j`5yBWR9Xq4TQo?>(b#&{XyDMr&1P0q_`6Qjq@mZP&pdzH~=jH1plAeqaLfi4uD zJjUohEd7DGUlOiY0GX#FEVHA6gk7QXyHIoIvi-8$ZtM#D}iKcbwDz;Mn)SMwK2L1NXEF1x!*Cm4M?W;Cm`vK zUCh12=uMXXgSjslrKFl#@_=M&#X!=&#f&_RY8kaK+Q6s-NLsZONLqC(OYda#0HcQ) z?Pl~eqkTY9%PY(sWb_WBzcc!T(Wi{Q0FqXPrJ1D_1tht%7@g0kgu`9LTr;C~mfp|Y zULfheSAnGeUT5?nqmLM!Wb`c~`y?~2lhHsRsd*%GqZyq8B=a!^Nct*^xe`VfvGh00 zwJ>^?(K|pgwU2>hK8`W^j?qtyA|{*Rq8YguB{G`K=v+pbK+^gGAZh(FmXH?CQuVe0ajBW#x7VKv3X-3bn^gTvj0TqeX{UdWRQ%r6ckkmJxxpSFw zGuO=A)j-nYHvmbG|DMr(j2>Y0G^1x3y~*e>qrU@5TfSoS3!~_%rp+^fqy^E_%owwP zq%C=jmN6=0RL`i1Q4f$z_YvlvVDuuRR~h}2(I_ z9!3o;-N4+{jP7Ri7a(cri$E8O*~qJm4zcuo=Kjg(-$2q*+e|ZVIHMRKDJ^Bx03=hp zl*4Ug)Xvf#=B{J(C`jJ5(v z>;J&qEsX92l4-ol;Z8D2%rK?1fuwzN7+uI{1)~ZesqY3LneKk(-e>M}M&AQT%|A1; zo^QsD0+P}}jM7+oKBL8q+JK}5zh~}lAgSekMh~%c4|C5jI>hKLMxQYHl+hPJGMA1E z%rqhy4FXyrN_9Ap3^$IY;~Av_Nt-hmEn-y9sD;t>Kr%-+F}j(hk1+QHqi0$A3Zsu1 zeapy_Y1%T3Q4*sWKyv(D!JH3B=Isg~X;lZKt66#jbH8VF3rqjR+(V2W1(JSwgSodE zy~olY85vn-j58ReGCB`Pmd9-77BOmNbR&?=(H%fCNB1z=!O~sKJ;mrXMsF}W3?%h^ z#N1Iv-!l4NP1{IqijaY8C5ZA1Cm; z&FBqAA2a%bkv-eAYA~bmK(gjcWv+m^h0J-F+Xl2squqdmEIkP%t^bx$e2$q~E|8Sw zGb(23av)jywai`0sDq`yWo|d44;Xy|B(1XMnyJ|s4Pi8#Q6i8mqhugy!A$1nGFrmY zmCS8obQ6$F_bwor%ljDZX7n_p{XjC^*MVfZ?=$x$qaRqR=b14Q8O;Qe>COg{>CRzv zA)^(Hs)1y>moU1T(RN06GkS*6tBgKjbdu57*{0?^AZbehqh*ZB7*zsE>l>N#GFk^D zE$v}+7m%!{4>8xv+{et>-KGUjMgxIlY9pB&&1gE1Ol={fwT!j^$#idE?jGjeVeTg& znR6}QMDdJE6fK?7z|S&@`X&54uDQlT`WQ=}Wb`yk|IXY$7=6OhUl_%fnEIwOn#E`tqt%So0?Ag^&fGPO z_A`1PNapubAerC)FgnT7Q_SfL&2V-g88?o(1V$rSdNy+t8BGF`9_nOtE0EN;gTw7) z^cYL`GWR^Amst81bMG?xfThQo`-0KLMP`oD7|j8a_N`*n!01LGGz`?R`CnOY@tmomDQ(epsE1YczIcSiqUbb`@0j3Sqq zaR)MTF-l}KgHZ;fSwOPf<}rsyfhb#+u(X1?YDRTHvYz@l+!ZYCV01N*ERWk6?Pl~E zqZ2^V2j4J?EH$}-j0OWqebbpsXOzWK52HUY+R5kuqfZ!(SZZocV>F*pEu%GzwljK? z(Z3kkkR6$$a7M!zoxv!X(IiIsjOH?0#;A-@1EXd}EkM#kJ&Yb@^dCmXGPCq!fIwqy z6~|~Okkm4f(R@Z#jM^F93naDdVDt>5eT)tONzETH`i4>Da#NbfXeOg#MzxGu8QsX} zK}OFrdXLdpK(hV*$Xv`tCN~U7+LyxI4CdxBSIXRK=GHQI6>|?T_a2b!4=iXpGL3OS z(re=x&0v(lXfC4#j1~h)E%l6UWVD;ZJW9|(`?=kw2(Z@hC#wq6Xm8MnUKvH@(qa2pH87*M6h|vll zxB)HTV&)ncd0Dy%NT#uc(Orz5V6>OfyNr%9`i0Sua#Pp`V~l!%qK1S;pUBRe> zQ8%M)jDFAPW=8ig`V*r^8SP@Um(lZ#US;$;qjwnnozW+ZK4o-*(Kn1vG19Bd{5l!M zFiK!Ff>9!)Bt~hBrZUQ4l*Ook(L6>=7%gK|!Kj*1BO@=P%NSk3sFP7QqZ=6gp3&`$ z?q)AY2ot@` z=pLuZwT?6ql&HJ6M*!8}6QQ~AS87JnQXEMnw}rVL=E9I88P^UZ!;N6h#oQF;rZeYd zu7$ZrncKx2-QOwGp!+*z8i~lSPrBU zTqScg%-zY{z0AGI++pUNVWz$qAZ0UiNz4^8SHxT;b2ZF8$J_zt5)CtrBp{i_Q_S@; z_a<|PnM*`G)%2h+zu>A7sZtm;cN~Lpg+>&hc`TULpfKm+ z3KbL18Y$RSZ=6HP?Z;HHg^=h7OqvdM+qE4zQQQ5Q7I0dK+PoU(a=j)f&Xy zP7Lc2e#X^GW&pH@5T-XM*3)3zL1A77gGv^V*5ARb%XVMeI zL?S3XQOh4@I7N;NWRk(qQ>^@9E&xN%o$@maz|a$?{LDpQ=vh;KrU?u^Ey~Yyf}!U< z`I#FiOb~M`7f#tnv^7vyI=V0O9!ne|}43}XHOrf76vm`6!Z z5VH>qJ!!|U`E4-t%p5=SF&KJEj-UAf3_btG&)6~M(vxo_lkD}hc#$nSs21y%KR|XZ zK|Ycz@g!7rMO94?sq-XCUe(;Jf`~e(TiVS_J|{Q%6~Qd%p*9+PB)9m(z)*yt`Bd>R?B_rN^<7kNs7fF3O#?r z4m_nAd}OFF7(fw*+HfDUwL%pJog2a&B(wS)7pgGm$`EEJYCzw#s#F+s3kWl?Po79A zJ#mH(bQBau;J`o0l}&hV`Wg>$=sFPQMkQ$w%y#n%k4-mW zc~g0PHQo`R;sjsS)z*7V37+Dw$?h(3{rdGLOm6a2HF}$p<_g>~vFAETSg?tKmS!F}Lr>qf=`o?3s&DRJ>k{=Nd)nzKUc-VbTgL(wJ z)`-Vcn_6kEhX-DVKA>5n*CJHPhds-O`J2xpSI>BsPtp$#67rB}t-P`l7T|&VW-$4L z|DfkgYw#F7c3M3sKY8+u$*JdxaQrlDt(;!nP)4r+z^)z{?0*8bl2yw0I*=^r$=OO# zz;m_*!%yTE*;G!F+4MifTO$XOtLQ8Sn*c(n;U|HsHx+OoQMSKU;ACj%W5$KbkSCK1 zF63F}ctL}BwmJD$yv9Nr9`rPH5l=oeU1TFDWWZzAWj6c|Wan$~w0Ci(9{;Wk3#5X= z_#YoHg3wdwscKS2L!U^`I)a~LFKDxt$%yni27%;L^Zlf(27%Asm$B)M0LoHTYl-3K z`UeD}cL4Y=<;w#6*W#@LvLyz;f}o6EvY~2WutbLTzw$sfw!rYAvd|d*mn8Hb%P$v( z`d_;sF8SRJ>K!NKdFDh2#1DG;gCGmdmxhR|fR~7vz1aW1eWL7lWyjZF&qy!e;P;Mn6FEzqv!0)K9}AQ)91w?eO~jT-bq5*1G*c!?E3;3 z>T{J*L9gqeGN8!nRVU`9`F@jMeQ!E2C40-2H8dc0bLURWc1z$K|F0GS$4o&l_U zcMHkU-288@Q7^n99+n2ZjU?b*Gn9$I_oj$pDfksIq`_Z10}?i0JVODvZU)p>*)z=* zuZa~c*_ zO#?eAl|*T&sne!Rak-{Vo<4P&2)i=8aj@Cq(+RDtpwE{_gLSEy}lwr)j z(AS$nTQUL1!Sj%3Y`7d%`d&x8Of6XfgDQT%e9;Etm0^!!EbfI3$jG=J!i(dcn zI~0`lL6n~gw~)eVnX}w&pC!4w49bkVOLMoiG-}=iCgM%LtH6G$s8R9zGbvSsm(lhc z6X+7h{>(T!x!ayg+7~^lm2e3XaG4=HdcD~u7Kynv?-(XjVk3jnba!UQs1RM5G0^N< zwlA$$o})))YKtj>q%OSH7U_2WwWIg)jI<-ihg3z6l6wnE(zees_x*$l~sb6oD!Zx%d847lGWc{9SiNyi7&t=q|9hJEt7%j1-)y zK+D4WSh5ynEnKujST;SY^RI2+hefy3b8>UjK6iIbq(lq5GhC>dxoIC|wS8=HcT;WA z^1I723p;;tcYfjS%t=f-K7j0Tcb(rgI|j+m@0#t*?fAxPWX*WNH>>TtFrOp0{qyLK zi%{Y@U1f2(9Y=iQ++DL>WNWm$t1vO?)WMG4=&NYgbN}o(su=FB=%X+Ha_Ur8+jACo z+Y5I0jQ4#vBXzRH-TCQpqpHW<71OpJZzGS)=_-cKL(v@(i0N+YMc~7}e*^@!M~})O zl@vaV!WSU?i_snH|A+7fg`b7+z0n=#{14&7eGyPk+TWvWC~N)|U`@EHZ_*wc!WYMp z^;-hN9}nxv?@DRA%xU)x=*o>l(HG^n?YHO8_`vt?wBFo~kD_m(sx^Jtin5EcmSUzJ~5RgdgX zI$xF+caEgwL~nqxSJSF`LfT(xVb_ktUPw^Y@;hH~cm6G>b6-y9Yx{E&3n@ZY^er!B zUGaS@V06c=`0MU`i)!U>HxQQXvas8mSV&EB`td`-62j4&8VgcU@`k?7z4KslFPdsh+KkoR(Tm*|?iW+imH zEu94z9>n#`StC@q=0Xv_ReRsP8Cg8X{3E4$EPCAo2e)jiQJFT1Vfa&^M_MKMes_m z*ECIyRnfowBlMnq(p_=HZTaA6)%T}PA<&r4lcp-_iN2)fO(V>TGK>Z7h=59e_!QRCmSd{G#!6uoL@ZV6V`qtbJq z`Y`RAW0eRIP}`~h52?>J?(UJIx9*xs+SAY-U7T6iJ+&Se7*wcXXLY_(*j<wH@0F*Yt$8ceDTK!u*P|n3;K8M;||j6RM*|A^Vm&Q6S<7+JSYkQMK1d1_?rWQz9Vw5+b)87|K{$FzoV~Iwjl2l zklrh#lp}YiiffZ`Z)%-+YBvddTcaP(wxk_u`|y|aAEK{&wtHc*eyl~*7^ELk-sm)5 z?tDA9^Eo#LzxEUi~^5|$zm0-&Boin<_ z1Ggx_{%8M-#2`OaVpksNjz38{RM!EYoZ;@C=NEnlq3{EB6Eq#*Xg>!C|7wuWd?U!^?(V6wlB>zmn#|+=@jY3L+}`9F zmpOfCc)3YbLtQzY|D-G(%=2ia@IQ2EyYVd})fac?^Ta)A7ndi%$gn6yn28CR(1dak0lMR<$MzT6 zF8W$2I_JA%G*#jL3HIy&pZ1Ng=-6-=y4wZfNlI977)8i~liZz2JUJ-rY_SU=mE6Cn zTkKjyQot8)#wqNDBc1Oh+9J943XeG5otG- z7*&zc0A^u)rTSq^`;M&>Q>XZrfHpdfJia}IJ}l|0Lg>Ac z-V#FJFX^oz^tFpPhp9rCEko2Aqn(kSFl4n9_+Ga^RbSz#r z3G}ahD!-f!eIT5c>PEeHi>Vh)0#F(DK_|_j{r398cT<0V>{)bR5S9lCy;zdOR|MJM zJqYTefKY1OiEeL|8cG9Y)P|`nE2WH<4`$M85Q=VhOIdYLGQPCkG|(Iy4`Ctt!tTgI z%K8!6ER(3m4{WDH1QCC6kPh!tFqKv$W|C-(_kn5*4s`=4x((7FD!Stpv>7qF9lIYW zpa;n6JP7}vh542o@6Gu;#xrk)Y{Y6CVa8$aG)16On1lU>7Nj8BrJUP~{!@f_vJyrL zB>uEriaFRP=1dOD)Llo<{NmK9;}6q%NbDH+dnD`@OsBLX++CKgOegjB`&6o8Qj2~T zQ{G5ZS(k=Dn88mFVK7ynAY%CS$yI*z*1j{<#s)|lJNdq=Lsnd-~b^BKU zw8HG&pG|W#E&BRiOK)d(Tux^%riPu_Ba{ttM+GDBxZ{&fn_ts76pv}Bn1;R~rUo6~ zMCW`N5X3l|@E;oQ)xL^I0kdKlWKQ!D8S`y(4=B2Q7m3*Drjiyb03)4w^?DOMUHpFPn@@RvE(VlntduS%#YIt8|CYif{w zsTSSd?YC0R_Tk#Us_FizqEbvtSBqR9zg5;RVRv-uiZq1&V;P7d*VlG*dQam@u9}b0!W?bu02~^?4wLNBU^WbFK;wWuBz5H2 z6KJ$*|AMYD*dM!7P?=)?ELBu5WL(bCO*@IiIwOe}5ly>b zbc%_E(f{{aCgQ73d7s&T$ob3rCr+Ju5(a8V-vl}t-4Gi+P%IPxm&KTK%jkh4sXBTG zq`i1_`DcjHN-<_3&(Tk0+o|?ZfuD#zCjy_|6VXeJl^E1dM6cL;B6>n^r;&u=Y0=w4ORB!ibH^q`(b~9<^UNl5}Fb5?#YHKpih$esQ4Iv?HXZ zKz1kHIccZRNn~}Jjif6R^Cjg(-@N^qqDN8JG%nIUY(VqQ>CBYfi|`?BbRM0Cyo-=b znd{x0F1NXKranb!^-j;}d~v)xp*zcx75xy>7R&UTve0#9B^+;8)nDX*HOltYm6>q- zm4G@U%1;eTW<5Yw!xio-jq_{4R&T%lHkaGfMB7?co_@o6<$kgK0FO}lCCOpL-*=1o zd_UzGtiR^;`fH?q;p@}rr`mPwT#SjTeRsvv>;VhtL($h^YfJ8Di7X#|{U{bqaxjAY z2!;q%>HHQ~sro}}*e3K4C1q8c_j zADwXLyY9}tBDSors386n(_SRcEn6XchyH38w4Vx)hhCfeO=_E>`_jy#FTx_X+^-PR zeK&ToN60yUyt`|2D~wf*W`Cag{(v?te#CUYE0P*6jn|w#TH?}S?$QU!XdOkzenaRH zC{Zw?0*H;BfVxQKA7ZaG(+#taoBP|7mA$kHPxf8~g>0`F=H&8(>{Xjb0cn{1)vsoy zH48SVb9i5B4OBx2y*hG7Pz<|J)hrqs%Fx8_47gW+?vCVdiFfU;_M--~g zsUl2$l!_iw{1Ped+~>RdcyABR$8QesN5Fcp^RMpCw~x+5eWFNf%u1L~n;n<}Zz4Z; z#}A?PRp;J-q|@Bp6N#1kHJv|@32$L_-1eQN?Z_$g@l@ha;rkagqJ7biA2HX9%1Sx2 zSL1(oWUoJGK>?)x?#QF3k@wKiinOTxn}-EIE()6k&ai66BulCV>qFZtYpP`>xEO~P zv&xwou`;~TQDpD69Sr->`lXCdI{0J8rSP}+6MjILHeiyTYF%k*6gr>nCyc2tP*;Cx zhugI9Nw!pDWmuzLWbG9;m~kjCt6*1zp+(eKHQOqc4^ww|m=+G+C`LZbIOf^(Lty?x zWo8&tpD7QFW6A>a9Ei<0<~bxkh^{TAKR8z6^AtXIe0uSji_B8PD8hLTx@GD<=od|k z@tFd=66XedrUTP&9oFKL4%~|K9r$Dd@5K49_~ZZ|#F_3irEeBK#CaR;9IOPs73cLx zv=O)!=WFq~ig=vg!e|!8*%;wpXY$T z#CaNSL3jl?6Xzz}vHvD;E6$zxd<5Ks^LBiW0@EG+Y3Lz8qwqNI#OFI;Iw#Zg3I0gM zncgjC2X4gKGZ?-ijPot{(C_7L#rZ3I5`i_`xxWCP3BW6HuEl2xg~$1Fe5M1p;(P}_ z>A*X2o`{J{4sa^Y)9|5kpverq*=r$i5zb%XQwpr%uKz{&R06NWxfh>CU^;tn|9=Z` zBhE92BOPG61!P{U2=JGVs3 zZt&Gr){pbL=zbE{na$_n6RzbIW@T%0izaLHix!n=^JmZ2=H}<*(;sc_{2Y;*(wbkA zHLEbU?967rCc3wXHO;TCF43wA%b{*zO{JEfGg&KM($LuKYHSeq>$qy0UGo+d7Akw$ z9Nef>>8h%2YWBL)Cb?Fv^LmaBvxejTGJ|jMubbo zo!LB&lF{a56~iU)L{TpOWaVhn@ZjI9xq0}MXgRayYB?oywLApMU#QK^g`;u`;VgU> z&ei6XEY#-DS*R5OmrTY7=S77JwMBDFwI%bHXr*&i{>5!Zu1azLrmLpBnM!7r2PH$c z;6^){k4D^dyV`@hom^|ngWRVTH8j_HYa8la^$lKE?drxl&uR~Di-Ic~nv@g7{a)gx zBKV&4oA=F<3HkNSzN)I)idw`{E_8VtT+JS@s|5E5R^~O-dz%q1#n;@F(p*#CdQssMILx6r{e2qtD zyUBBj&x6}@sb8VvH1^fP7v)}$3pWWj1t`*H%2@v&{mtB(c{)w5iRE>*)%6t(t5=^l zM&4-E+~}zoGhwQ0qNk;?p~-vR7`jy~x4fc;9XTdghP%&L)EpwiEoP^cQM`5a6*Wx_ zi_7bLo_=Efs#H{k?72B1@zgD=LK-Tf8&NC!lN5W_*4Cd!((GI9=`W7BbFDuCZnecd zv!{`G(9HW2xpDVye|*5bbRoGh@7^<;PKcQN(4RuO5jem8|003T5OpXl5oaOpx(pG~ zZP@+kqb>}cdRg(3kO)f9KT8Spjl%b6=hfENHrIG6Ln52zsoUE7N^xhruu%nQ9)och z_q2tHhGDnNp0~)Aop!Ekdh(>?RM*7SUSGW@qZ(aTQ*8w<%bO}{GFqljn>cNXYhtx) z;`~XjiB)TAn`>9q*428~Wz^JGR(k3+XL54NYP#(akK{;MgxkBDQ`VH%t?{HZdFnjn z&7Kq**2ImBgeFNi5h*55nTYPFslt;|)zC1pW!e;OuQX7aht(cd+2C7+AI4fOHrxx| zr0IJg3v0%3Q0CRFV<)_gORIfAT|<4fOZ@TGH=}u@AH|>riQ$(J5$3~R{EC4h&ykU> z1Db2l>RrJR!weBWOvWc{*ePji*np6LGVNf}V&`jNwKXP8*x}ENGEzu|QPW|Po;Z}g z7qD6lX%btUHjSib4W-=^5qk0@B9h{=i9oPvQ|S8av%Z3fwgF*+zTM)q;`d`z0(n`5 zCAkVOEMAn0iBuTzs~Q^Ww6MGMPe{!o=$WpCJu;BKkrY8H3fA zQ_MMR-XX#SCsh^A=1VvLOYF`%PnB1*tr1r-T11kq-jPdj${R6iS8BG#!Q?Z|S)yjyIkx8}{#s>%&MSXO`+UD8@&DIh@nTx_?NwZxU zK}JX62P*XqYwI=JmWYkG)}m?MP->eJQ;bHgGCpHSHMMwWv&VC>X3H9~8CP~E&Dk_t z!I1lL72{mngi%?ul??eCE)$#;bknqETNd{zE?qHWpwxDe^8#cb$*G#Xt$P6FBUKwn z-`15QTsZwfKFMsuP6h}OB_~AT6fm4_se^bmiK##+eJLhihZ80KAj}ps3@u`07=Z%A zya~}D!%j<`fux!YHVruf97_(dZPm%BxU#ZlPlXRzT~}7o&~P!HA``wLj=rfDEkR7@ z^5o2NKxRxT%<=QtxJ`aldBw%rfIEh|v3@e_^YGVEfj^?6hf@uZnTw|1N4f_5Ifj0t z=d8l4NE`5|L*(13Cawb>iyw@bVNNvu`g%`Yvo_%I2&x}8lv$mpzQUsoctQ{ZoXzDl zGen48PBO{vY{YMq==UiDo)kp5Eam~bMfo_L6>RCAA<0N2#)%1lyiQxW9k1TB_K z9Pk&N%-6|G)nVAzMJ>VA0IV0v=FLZ+k&{1fwz`%VW%Cy;L_4JbipZa*S+y{lFUdK8 zX1`1y5}*>l^~M@=01b-s=FiJj5OWw(1CpleR)J`>qDzFeOPD~koG~Pa6^_kBWth{K zEtlVeIORWYZN7PDA=IHoH9t96)Tnz)X0(i}{4%!v32Iuo4p(cf#1^oSw&V%z1+ zMu+J2T#MZE)cqKCa;E4e z2O?BB{Q)@$b zNK!)*Y8%^32{dmqgOgKaa4{4pZ8w@?@{$xk47(BWaS%fc`$3%i4LF~FSmdbIcc6~M ziOFeM#cH@?ZBz!#QVgy6G)K!|>i^=X{}K(ILtTP~V@J`Yq?_#dBpFjQo`l zs^vzVK1e`Ij6Qv+fVLeo^0fAHQy+MGP1M8({fZddHd^fI<*G-B`;`#rAmUFi7X8KG z1d)e?6L7p`+5iUzR(TASC0SnKtzF~MEa!@vVA_W(xK+R@o(9e@CbCeeBC5mGx)IYb^KHG;5Z5qS88a?4*igI1N2- z;4^|&J_EF&&7r@kL!<>G_Q|xB_mp$0)Jn3f2J;`y^5Bryku8UgW+IM}eYQO`OHr6X zj-(AtI$oA1&9eRRXgp1%%2$u#XsD-fXTAg`O3BX`f^7eqBkY) zijG%wg4F+kIEzY*HkJGvewO4g@r{^eF>1^>PyHIRBBe^tjl(3g!c!I?NDC7KWYW0i zGWMn!DKl)a&{K=aO4uM;RVIyVT8m9#&5{?EK;s0C;Z#ypNKRBqO%wGfXd6tkoFVHG zZIIKkQv5|T+x`XOouLZ%jIgoPM(9~XSKu>xoeE8^9J5VbP|>}CNK{(b-#qgv#gku! z-Y&3P`~p01X(BxHzCMz= z0823!tQacA9R3v1!f7#>x}2c>`sF2bE`a z(UQJG4nD_c^wlc-A*da_Rb5b&(Ko1z_bI_tIkI6h#nV(@UdKZJLU*Kn1dFZ-b`M4n$=% z#H3*yKBG4Tq%iu%{!-x0Yt6DkxflxR_*$Nj1XZCkR-;Q?p%0^$(hb%0jqK!d1hK4? z&3_}R{91gHX+r%zbWDDdr1g3vMfn(#zvD9n8(A3C#0;ZJ7ae~tvXzC8tD&y43>oo= z2?$bamhz2|U5XE~vsIZU>f2}Pf*dyb2X#TFp1D9}lzU9NLr@-5sf>AJUbD=Xd8Y4N z>6ju<$nzTL7(F8}y#jS1Bp0a*QCibN>URw`{xwUkjwy;fma3(|J&v<;MQ#3DX7adj;aCJFfcT7Wo z8JFM>J?h7Uk2bnSg%^IkS6zs#ofncdGu3nSNXtg(m?;cAM;}K9YUv@NF&*>P;@c?f zWt$OQh-miHb7^1Q{H{Z@IHf1(J90X<$rH-rT6Ayc?!+a6jD8sB-^1!_@R1cTN_rp+ z)4ZQRW>D~FloD$XYNKV4KInXqGoHksDg;}F&-tIJAY(17!oD8zFzg@wh@ylazEcaRiu+V#el7cGqep(j%I{5`br zkY+h$6(b(qNkE5Fp5U3{q410kmk4qO&F$&NhVA&AQP&_QF{i9&Q_1`t)I0d3(2WRm ze2s`OR6l7c#=H)v1sF?cj#nAdDVjZz`2~|^`B54}w>Z$@?_x=(H0DREi;Nit*lpn3rh`SEgbn`_D-8Df+zXrn2(!M5&Ng_H+(?rxL&GNdm(y|n@ z)tSOWuUp5GQJKm!uUnHT;Y>2(b?XemvJhUk=1?JwD#sto8&)y5(fX7kZHHKHvx?=7 za->>}+rCm7L{Jx96Ez>MptR&rW|)5zN&57=*I#= zjd@00e2P#9WGJh>QXBo8;)UKL>VkS+**4VIjp~a<&5~wyl37%P=%B}P(qY;Du?zLA zxv7GJoI}%jdN%F^e9jf#O0#B=m)`*K7ktjZcD6@_o=r7kKbqPee8yp#I9V3fWU7KQbZGLIxVRp-Xv^vETT#rAAr07^F{%Tqo zLQEEQbdhxg@WjhPBhn^APEQ{ia}x&UiR?fj!k z0wcu4bb<9U$k3&rL%wSqJgJIC-wBskGOh79jY5a~JS3MRqb>MMA<3*mVDxQwZp{7% zz^kD5}d7%pFO!_~xy$O6&)%iYt@7%e=OqNL?0fKBp2oMoMfUqe`R!ATrLl#UF z96}a|WHXttxKe^G5vkC+wIZO^)>d1!ZYVCeW2>!OwN-0rYg@Nki`rUS<^Q~AdFRe# zK)%1v=YK!Bnddy`J@0wXdzO3dxf|9%S<;w5uac*Y8_p3KrvG!#I~@zRDxs-?8jcKe znJaTh0PW#oNL8UKgV-m>N|p2@w&-g7+k)s`>_xXAa38?k*eB4cD{a4+COtwu%E)@y zM?W|T2}o8nS=}hc^{O<};mJ%|(53AKXsr#fl5zi1`~nDN`Bf>mDFN99L}N#d8(EW8 z{Iwi!WX^YZ=03^$EP9w#Y+0=;`Z*aT&iX%cBtiB1tUHu+^azOCDhzXq9R1d)VNzL( z(XVlw9{r}cCerBlPx$HY*dqho6xTEw=yH*EGWKb7mm_U7JqWii6x}oCv334~QZA4`wPA@c@Y3*mDA~r9V@Ty?-*r z(nC%z*v(+&c>BJYLF4UmOgc)jXCB93LmQ2^s~`mr@OV4nUvM04+`c0NlRz)Yf7jVLeD#eT;3cb^O%ZlMeILStY~dMi=L_#TfuOc zPaD;jcRX24gI(rCMN`_Tf>y(_&!YP^#g@6iAygGDbTJFjA&xfEv?*F>D+_IK2U728ZAW6=!z|qj;*wjO^I2uqbkqP6T4!|eAXe98!f~yP|keY zAygYJbiPt#WPaulx-eRZ?j(`fC8?%EHtmlVx`BnpJA|H!7NX~VrKU3-LhnTj{eXp5 zIE4HYqFg}F1WQfp9YQmsh3E-kDRh}bs4iNFo)?xv*E)nQi58-#ho#U@9YQxp3q8O> zPdS91jTREmMUkq^HyuJBMhnq%#$wByrurj!eDK657qloDBeUEgG&@?TfrUa2p>v~! z8acaehtSq&q1CME+YX^yqlM~N=qC=LUqlO4vd}XQp?^dR(euY*%lwNHq9G|ABd$17 z(BsFnsi|3Jf*R7vPxGXZoTB+GdJ0)=nc_J;KoUAHTBt_J7@2gGppAt3qJ`*=aIsC0 z51>jR8V*&*3~K>n(SWxr8sBNJ^93`NrrcPiAB`WHlZaLNL}TKBY(g!#{vA>Z_nP7a%UpsK`OM9uATBLdnp{*$;_i1RfGXFG`BJcD5-Hl9A5MM6ta5VoT){bcz z-on1{6{U$Pp%K+z>p-?++IWn zqb&j1(`N2HG!+v@u?XuQ4mqg}XXk6NFBgt` zsF1k#5dI_fN^zN!F6|#0^9N+%+7l@6p=(QzBvFObjKCBXdwEk2TH~XFdmG``h!d6c zn3z%*pJo_mVjn^8Aves!qGwrq?zk)`6`AdT;_}8$JXz6BJ>ZB~n|}o2_h8Qos`kbu7c^DfU_ zs!e0D@<{lz?*#%$Vt-^teYoECkRO)UUbs50pzp;tV?7`4Lp#h`k&)W8)%_IJFsvC7iL?%P}f_S5((hgo?3e znyP*6hF4#LI_X(s+(gCS2;QimlIwNCVtFTqVeSyu!?!BKF=rN=xi@nfS{3fEZQcx- z3DnkbiL*+nh`o8usgH01O(Td(UmS(lqWf#Ztq`{0be9 zHX6jcrI^n`Ulp4gt`n8%Vz?fy0z6!!NvW;2A{%F`svt02Y*<(FeGJ7bn-MuVHnyZ2 z?Aez%(qTjqTgjy$u`M8_^lmcRtRViGt4-hH>2MNhdCt9w#Xqyb^zGGJQ_;Qr*z+hxXq`_ThL$+TXjwcbTqn@!&_t#uXBpF?^m zMrhrJ&{nPW2Pz?sKVpmWz$04gQN)?8rmu8{^1y9K|3lJBF+%IF5PDu~edPpNMP+@W zBE|8C6t|nc8=+WMR%~pfvUCiVE5xQv&6MxkL#IUBdKikt0sVX>Wn`AA*7g&$wl@bx zuTs&J`U@RR2NJPm(nkkrqtqj2D&>*riyf)w>gXDo1TB4sBlXz>qxU*eZ`9FsoSHsv zNE_vS&A{k~9jWit(W_+=K$NgtVowmksxnT zm6lgt`N}({Z?~${;yV4EDnQp0Gf?H!+UR=Xy^0st6E~_X#2n8Ux62WidA1{~HBy1k z;`>J?v^%23Nb{~KeTsJ-&<&XMP&{q7${+M}x}C4+V?><|FH~SJqFY^m1@H{^GsdDB z&;~5FNf0j~@e&d{cNG40*+?`OU>f@QRP5){5{qDq0cyciW1o-bp@hmcej~i&U+nzcKh_vtMcG2+TFi21FJRy(C%(E$FBMY0PXI>=GgNZ0BE-h zMxVC`zqAh@o_t;|)X+XWBl*1V;+OV}C1Y0MM{Mr%q3K3I+D8<+Ggs3yfaRU*!~@^- zJMzjgt5zbCcK4I!==1UcXt&Q8bKZLV(r!>#k6m>U z;%IljXO3Pq3HH(M{s@7mz|uZwvun&MT41By{Wrv9fu-HO0cG@prG5Bm$>-6^HtnNE z+pEa+w7YkiV-0h#Il-HjXn99^2b)6%r4Gk=VV04YxDXV^gNa5N+M|1zVR_F?JS%Zt zA_eUf2oUhN@$3#k8E1kTlnv2QiO89RFlY`nCyk(p1Y4*|OfwS`BjQQP4$XAsJb8Fj zyx$p*)AKab@;lR~BHphpqx6F*zp^ySaR`k&X)v7yu!NcC$Zyez`S8O~==3^u4jXEa z3OJ4c>Oap|qDtt(NHxN#f{4>*iIR;pO_}egaR^U?Eu(YHMI(gc?0Jc#l02NBab2Ns z$QWCig1E9Y*YF1l;rg-AP1Xty3rQ*~r^vYeZKg5UoDTak0a1U`MQO)h0p69drw|rp z$p~`71TBNbwODfki6k+}nF;PrPDC>~Jz7-SeXX>6aw75^G6*A!1f*k1j&XvLVmyf| zC#=g!G;4=bs%g@;YYInDX>xPe9}!<6Pb?M1vqpJw26Vt3O2#Dr8)UOgUT zsu?AP5@6Je-t?m<+tuOQG^#ZGjHwz8zfhFh!0E+)9U6v(Cfe`?dkse_N($-_EqWCYAEs7m1E;cqK@HDjiYFz`ye?Nt_OP;`c2Y8@3_4Q~ z#*mLqr#+<7x{TcY8vlv)Rcn3PRU{_T$N8t9R_UY(2R1Z44S&Q`wT8DTN;VW7(lcJu zsFq41|6Rr)m1Ly)jc1H$=%+!t&<$yeCnaO(zkU|u5gayXgV7qMD+RDc!(ob&M(fa| zh@gi0844*VRY(8-KxL?(#h}in^klQXn&>n#v`3}9hD{D?cr#N2+$XEO7biuueMkM0 zb2Q$kIFwgIdP5j(rZJ!y$%xqhT|*`FZS@OxYWOKrH5z`VDCs2~`VR|MX*h`OsL{}? zD4AA=N+N<9mNQkQVLekd8lDrSPKW4iX|$noB#8VsP3h5%%G$rFU-GENpKwX4HPnTK zM>W)$oS>nKY<{XV-OCz-8tTkUqi&!V>IRmiE>eaFnyv~uiwhiVR8X6Df;Nz@#I(Cj zqkdqX^^u$uBJY{{F@?%>$)dGrxLQ%^Mz=A9uJmjjmX4pP*`_fpZNHAyPZtcOvWLu ziTks`cboe)L9h6e$=68```>u zoG{L6H3^(UT>JEM1~;&6RT}E&2TnXn4otivUgG#iZ~aigj!4cL_ABbdIS)*{B3|NC z&ABdK;<^E@rmEF<>3h{m5_*M(bSEQi@y(V4l9c!~RsJ4VzcjdL>}JJ54YL$QV%Z8$ ziHK=9oyGRFX{>FE(`%#&^1pr#;2X*yluE-}nX154W!ItKvtYG`^g2!2 zkb?yA|LfcP52@v3h-)}Z&8u-F)G$*~GIt$%JtC;#-klq1GTbxOajNt#O2DNDq zvS}+cT$Lb&O`}%BW<`-{EB5P9I|~Li)HfR=tuDYqwzgKorHXPHGxlq&Z^lN-4Julf zSLUiie`kFwG>nwKmdhCj=rTXRWvL=E+$38oR!PhOZ@zd;Qnd4%GWRZx$qf*$1p2Q`dT)arpnTdlK=vX{hhFm!lL358QO}W=_6BL#+m#MMI~?_{Tb(gT8D38{CSjG#rAPJ7`0{ z)KK4PE-lrevA9&B1T_pON($-_y-HaLN)Y+)G0s;O=R!-;sMV_aDHjJ#BBPUrcW_T#Tzdw4pm{SfMDHvkuYA&Xu49k^e5^ zu9yts86z8FJV|X!5ob|5FxLUYF6FQ9L;VsLGHFA>G^7``(-z-9$RubvpDAc?PBj`1WvW`+Gl!`f4KHV^dZ38| z1_#Pl-ywSwTM;~8Dd}WoL1&>fUanGvIpvCam0~@oT%o0%zaf?48ctcIQ%3R}Fk?64 z+3HlQFr5AyrT8dk5Y$k+7~Nib=t{PB;7GvwUvx`2D$>?8yoIS%8s4rb+5B|q9u}<9 zkUlOz8#*08a~g|N)5F^GHrZoh#hEA-9U?~ z<5^V47U?|E@-=j3AOD;^gqP1OgMA!Iz z6=xYe=KhaVz-D_+QpJ%QuiIF>O2e^g5!E!#(=by}vgkUL$(3@RhG#HUrQtHB&Qm7x zk7;zO?DwkQ6Hi#;N$ON1+2U0LZHqIUYhC)uRnr)7w(jDauJvuwE+cQi(xA;!XQ}(A z;uXMUXdU|IXqPc7jxH^=;iS5>4t-0s%Q!QRE-iJ#Np)!*|6r-vadc^^=UD1Q7aa9n zwcq9$WR-^c-dWj%bcjCJLmPUY1d;!4zNz+JB^1xMT3+8p`=5wH4HI}Vr&_~AMM-0H zh`td-Tii1Tef#Z6g=BhthieTl)>dh_P2HG?EHvD%C~1ohb*D*Pacz-N(V6veW-B!0 zTUd=64Hql5l-Y{?I<%5ATcP2qC_x=+iwJ6{4V4<5mc?T2mMhuPIt{fUq@*s6S#|Nu zs@p%%th#t+op}19O&n-ilQ!)luCa9*>N*lvh0<|VNE5mkxDcbEHrzCtG}Kl@N<(cm zq%_oig_O2Z|I&3jeM_sp(^Yyd))2|+bow`5dSnxuI9|?ra-vjeE0(d7YBbb_4WX7c z9XqZR=H|#tg*vArDp@=k9rp_*lSX>F=$}K8j{G8$zlPbWsm9Z-n5&qb)>E>P&*;+MP!!|Pn-6M{x$hIgZav`lU!#v z`56QKAVHjA#ARrUbzLPG`_zG3=Nj+#_v$92KdN8Mnl-c{_eUiusBgSSZ>v<)xe=+5 zf{hVsV3ss1H4S~U{0EV2|E-|TmTE!gt1}}`<7Sl$aRal_mTKwvQu^-y61I52Il~m_ zmXow-Z|YmcVzb_=rrlSm-)q$Gm+Du~rl+e`PLHS1rlgG(mEW`K_eJ&l8}%!-MgHq|%;_te z`RXd7z80?EAa_*pk(3hMqb>`6sD5KF4aUlESJy{=tbRXMSAq1E2z?nsUvr2}ujfbl zn68I-Ju1h_>%;Q-YM}i(dHqD$0wu4XBhyc7#p?Gexgn=0zeCCCO6aE>V4}X>58u&`(uE_%!vqSpCMz(@Q#BMixdb)BGDe-AL17E^( zzP3ev02H6aLw=3j;il%6o}Be`eCY|}15ROy>G>-WZbTS|2MRZLcXxJ2g5q`ik)U|{ zMkFX+W`ZCx5ibvru&cYXvAIX(CtoUnFQ7QYLYo>kI)m-48`?Xg1Q6_M>s{v*lBJ_} z(m2@``jTkRmX7dxCmU`hx$qVz*SRiAT_?UL;*4(ZT8A$RMKKLgCbhIRkejHe^a>XV z$z#Y&1eF8njWnbgK|GR%3I&GWNwTez0*G+b6bM>m!_uEm9pJEh__W8g?Pc~b{EQ3R z-ubrA(tbz)mw966Z&*Qzr9)*{c?Y2kM*(-Tm;TXbW~4V4CMM$l9p!F&=ZD zZ7%ankBy*aF%(V7gx@`vQ_YZ^o!V%d(>>Ps*F^ey=o)OJP1TD=N^J+qZToD>54}fU zOrv_WJ)fkZn5M^X`@QEQxE)Pzsh#|sotSUuS-#zu#hOHhOgA1b^5o7Hg0}190&wNHMBis zr+CcycH%j9N~xW=ko=lLU1z({ZF;^X?Cq7I9y@WJJ(*nb5CpyFh*p|J?X#EMXP>^$ zKC8t}4cj>j?bL4Aur5th#bD0@n|gHSMtdmH3+;4I3u5lHr+^(bKL9S*PPQI%Q#*+n z3TT|cARtDTeIDzV7nvg4!B%qEo?!Ll*h%w+0TUos8n!dScJ6#TgSbO>D!9R(a$#IH z*|||s>!@evkQi)(kk4}(Ixf0xojugLa4D2ptKjf328`*u>vE9Nx^Q@|hH-xE?gHd0?k3rSj!Kt!IR68ZdAK(xVlQHS6pVRznW595Nqc zlgAqDosTrsKJa69+ey84a)&+iLYQ#@%(r~=#Tb%oV&D*?o7J|I200o-7DRO%a!HzZ znzVQyLd$tbq58wHLO)cnAPp@vcny<%tT#+fu{Q35$tW59EJOauu1r(dmX?+-TamSB zUyH{Yc}%gw;v+C*kv8O9YBlJ=WMK(B>O)_cW~WcK%~hT|MXGZkj)Fd8`_N$OZSUF0 zXv9()>#epH5tr&+Mzrmzj1DeW!E)QX(w@8&+7ss6ldX+)_Q+{=>N0!eR6BJ6xwOyp z=7_w|=h8tW+ums+Sy zH5jlkO*F?Ws*12(PJXJh7ts$!0~{2FBim%pPlXU#;E>(u;694B*3npGjjofH)gf@M zDg`Kw;o>x#>c zi2mn$-5&NEh%Q**U3Q3kWv6?W?GuNbzoLw(bR?RJ6tag|qw4JG9`hY2S)e+@YC98& zC_L1YZU?>%ST0)>^@Tobvv=vbL-r`hppw3EnU{{Va3luCH0n*JwIxiZ7R$yoRk|oZ zKQsic5{G-LGc+;OlC@>2$4Zy(usz;!!Wp*b+BD%H+w+|A&K@}x7=odb8kKeWHd0`l zds^(IGC9gyt#x)D<@0BI=yrS7N&n}aH1_0atd3=Kw{==jh@ zoy=Od5Ayq?YCBwahz>z@_Av636)^2t(qY5O?Kyw8@!ydp8D$OKhHCb%fX#HMr9)*B zdgnAdX|Osz>L&)QBZeGimC zsurHvAo@+J9Hvdr4?UlYY?sMl%ZElwBfV+)XoRu0)YT)6X{T8ihV7(0;Cg!;!b8Fo zUGAa2RSt_WX`S_s$GpQHy2v&gK~AI5B*pet0PoQ44Oyqz!_afPz-kP_Bp}{dOj_t z)|+rhc$Y>TdCbIUGt5d@N{33XwUH)Mt#)XhR+LfOM!aG$d ztfZxcX!Mw-rW(D%r?%%89`shs{b+WNY4>{km}zyQVoGq(L~s~t5F>b!br7n@Q9xii z9#2C*ecCX!IX|^WLwU?M$wT=fNmx1;&_-yjzX{c1_Pcq?i3}eJ$5(H{>G=ZXyRR<3_3SrjA4OTy_ zM16(Yv=~M(PtpxqKM#g%gv5T?T5!1UjtkIJGz2zHOa$4kks`g9auRF$gRilJ0@uTkYi*^z9uK`ho1=iE!Qmo$_5 zWm?!{-FLAZvDZ*`n~}D-&QpIA%s`8^?!N38PSSpDY(qZ1nE&5S^`wq~bWFu*i+K}u z4*Se)_Q-8^?otA2ILq3P+5R&YTH`XOd9sU&nI`IQ`Z;8S$2&uoEM1IO=#ySd-96t@ z1+5h6tsd$N$u!rk7Y%(%i=9jdkac?QdRo1m)FT?_M5rTAqZa|CZnVd)L|C5Mj;AJ0 zL$2*f7rBQ6B-;{@M?lP47RO1sgJ37YX%+4s7^MEcAy%aFPEAt zJdIeFwF$EgoGLhNB%5r{T~QpJrjgyUFCGvr!`$zobG}|V!}n4%`afli16N|5$BWq( zRLg^;Zvic$z%lyVQx4?hDLRsk#T+NR+BWO!;FO(*q*pvEX#Ison!q7@^i|NcKrD8U zPK^CHT_!i=*x6KGDk=J%9Jp~Fjpj~m&RTawREe0JMdqLwlKgc-S<>(AfVG8AGW0~T z-aZ`-ZE%mM>ETdoHSdckZmARPebf+Mp5F(Z!?p$J;Al1B&_kmp&12Ec zMw;71r*7RHMGpf#-(_Nnlvc^GCW?hov0zrv+tk`wP2WnU2)w5h9}X3;yIBg+`%>w9 z(~TR1sE8|SYi{T+p=C@%ebP&pws#rb&Ebs=Z9;BIb684=B}zeI!LG5PrH!TsjQ?UYO(4cq9h9gh7ityW1PWA|*aaDzl^bsFK7tG!7@Pe&J47sD+&8NFth+)*Co zjH9mN{FVbyy75FpytYUw@t0=*rfyAi=Px-wii5Er!Mw^n4 zeYI_&KlLhCp+Do>R-r$z%U$TtzS1u6=YG>u;GcW>paOsXc5i{dw9i-U-)dU-nF;<< z=+B4#xdl)Aa|@pFXBR&24-~%O&nWzrKeh1JWH@D|E`1n5b)TiaWT^QyidRp{uzZ)| z)g?RTw<>;$DriLqE`= z-+>OhE~k3hZWZ_geQs2iH5J|rz?&KHW-7etElYGY#ZX21lA$ig0p*xCR6eI(j=N0P z?o%j7vCL7|lfHLSUmDZ=0d*~Owz6Z2F1O-uS7BWrD41y0%1zuJ^~1bRs!If?ULLf^ z-cxUn+JE}lL;b}dX#a*n@_ns`phLs<*(~qpRw#wysG#7 zlIz^AdgP?WH1Qrn63JH$sViDO*VQUTb$Rt;ahJx*ZIW_&yp8>mDu&Wd@`&z_`gJp( zMf5nv&5Ir5W~(ruRQJ+sE$`AYdBBE>(@-( z8Y^F-?QWDGM|hNXCu; zqFQu|4{=Lw3OJc!9#E@@ZR8Z)K(ao*$>=IZ4+5PpQXFP(tgU^2DNvh;y%(rmpjUx9 z1bQDxYIb4zcc$P*07-5VqdANU7_DGb$EX2FYT3fv6^!;Ux|PvEMvpOii;;z{B5k2B z(n?guXcMD*fTSlM0+KE9S>}GlC=th-PEpFCKrI5TWE28gC%9H1sqX@y^@8gIlI{5i z9QzX>ncKU}{R@bWnQkKuhi0i|9FXLuGq;GjO6FEGHwe=anKlJTrp;pRbmkT^x0tyL zfG&_W14)~&XSw}A(&l48vb-}fFv{HMUA)~QZ8dXs%stH9Q$W(HKQs3}%Y6mZBeV=j z(wavCNss3+Hxp>RkSk$sDUh_Fow+cOwE1r49t5H>&~3a7)GN?mIrbwUnz^|R`i!G2 zTPBd?rZYE>xl-nW%!Qa+$J|EdE@f^PbJs9;3v+iccZj(snR}VJH<){mxqmWe;2uI* z4lj@_$8hGxGMB^LZ01Ust6**wb4|?kFn1AiS1|V-=5Au{$IKmM?l5z|X6|+7{tG1A z#(11s$`YLcBukXfTq$$a%$>_z3v(UJZDZ~V=Jql7L*^c0?g{4JVD67Vvi;HbP^Epx znEQ%3PpY+#=>K1v+1})60S62zM3G2EpCU=n&8*!5s#YDP91Q zDQr9%CAlOZ$(_dNbRelO$Xq{=OtG7}n^^94Aeq};EcXD*J;~?|MjtRb#>l{3oYIy= zMwyIGXEYl~9yQi7*T&ohK+^i19Q#8?KV|ebqrWgpz)7*RU@)VZK(e+L0CfwW(p$qN zSIu0AxmM=x1d?96A4qC`g3&9C-eB|zkhDGx6K|PE29V5m9CK$dw**LfBgCi)Nani% zNankV(GEseF{1C*NiDYkNef;9l1GC-F!~!KygpsomjxvAm<1&BozGkaqk15zc{6i6 zfnE~8Q)>C*}z>C??X(t^uaZYQJf0!huc zvfLdUdyvs{j9z3!-<*>^wQ=qy^GE`czRF;9I-^`h`9LylH=}O?DPI9es~!iE`hE%2 zAzJ6l%>5Z?v*7*#)GpA!IM$be4`2)K93bhJ^MUFFcK}Fg{t1xOd^d9sGkS(&UtsQa zM)W~CsU=~A&SNl8oycPYkc{mGl6hRr+%BMtgxuB4-2)^oJqRRg@Cb7+09`Cn(AVsw z9DUnP&LjQ?By-C=O~;JO!(#~h@+d$HSo0z*Dh|aCu#skc~%G`TEvK$s(!z?XG z0FsuDXKpfczrZY9*5wZ|KFhR!N6V311!_y8)8WYrMZWlF%*AfO28}R@H0b=#GBA-* zu~4TFI<1O@62*;T6yVq_=CT=0;n-Z}@)(gFGGFqnv?`xbF~^oNSI#KNu{F%qF}KXJX0(-Kw==hc(Uly#o4KnQUC*(5nLEJf7LL7*xjPu$ z#j*D?caYJ;9DA6#rx+dK*yovhksH^OJYRdiIlPF%w;ed#jyeAvKZk3UX^wVbGeM@%P&&%T;}F8%IDZ( z=1Lirb1Ypskv7*bs^i#I%&lS6#Ifs{qt{tTEnOTNW{$p*E@Lm|*saWMXS9Q3uVijF zqpLagdgk^rI>52FFn1fHJ2>_(=I&*5kYgWa?l7aLIQ9s0&og?FV_#+Nw~XH6*rUw7 z!{}X({gAnj8GXvJ0j!Oji?(JO*+8oV$_1hqX_&@bpz{RE2MP&P3baO`AW(xqbwFzc z!cu`ziak+$*@tSzG=7TzLBSn`T$Mnx+#3CpQ4>}_Wb7cQk*E-B1rk*M)Z!v`GT7UR4-69b74mGb$cmC=ZF%03`9p9ye8YPxp_dc zlnp>j5u0cBV_nF(r=x#>$F?x>C3yeNs^bba#0!dr&#cYNAj80c) zN~STBxh0I67+uV050EVH4b0ua9KB&!=0?X=SvGoeutaxq?8A&+W%L&ysoBKYiPVw_ zB-2i0bOy)H2a;Ypm${2sZY!h9IrjTNGR1Ao-N)z&MjtX7IYir1$LKO3X;mL1dYW#z zsObaD-NNX{K(a)SGx{B)e=|zNnTV9jV6=!)3y{qBd`6uddod$=*|yX|XFwADk&!oD zb7L7*F=}N*U)z>xuVeHxMu!;vktj5}(nmR@+!Ua>Vsu=@sGLzfqYfbH z)6LBFGxrdXwEk_5{fs#iXBaX!+%Tn32BT4o#sSS0w$K@nMB9L*=5MpycNpEu=*Ns6 zWb_E5CxE2B;W!hK`W7)NXLK>68yWqC(Mv#5%e%~d3M9++IioK*)`#;M8B3p^k!T2z z)H0S)38Pg&(!TXTGDRDs3s~+_MmrhZ!su>B&oO$9(Q!tZqjVk<8Jz(nEttdHS&V{= zY8W*E$rN48g&BQ|(N0FYfn=Nf9*|7?Lm=swL(Dx3Bz^EpMlZ75-x;|^>()6KNNSnL zTrP9PjA}V{4RaSV`aYu{07*;l1(LQLWb_Ef{+hX07`+7~ZTXD3|1kQBV@HkAa%VC+ zkI^NJt_G5Q@D}EdF!~!K7cPTJxxqlvf+@_M#oS8fnwh(V(YHBvA9Fuq^c0Zv#t}v@ zaO~fh`+(7>j6P@dC6Kf)EuhhKMhh9OWYoy0kI{9E?f{Y{zn{5ZFnW_?zho{jPM0H# z(L6>A7!?9ZOE)vx%drO--O1=4MhAgp8-I$qBaD8>==Y5N1SC^@#N07PR;IRj5Thg@ z*-nQ7$+Vfwox$83AX#r`G0F#$Wn0at1E|oTS@Ra=u3&U4$KJ`@3ykPPzl9?0G3I>Z zbskwjGB$^~GUlq8>tJp(bKhm|M&=GO_XKmlXYOyz;lrLP-y|Se-bu_&XRe&NmCRkh z+(pb?%iICx4l(yMb4QtbpE-Miwj~8f+A^8BJmxByt7k6E+@;KYkGUT(_b78mnENwx ze`n4+QQJbF43)M_Wo{00Rm`noZWD9gU~VsSKVkPe8KQ`p?j5X8_kP zjNS*5HS-ape>3_oBX_Qr^D-LDXegsGK+8p6m;$6q&Zv@66OimjJEW=roQU&)g(Nxj<511)~j&E@!ll z(LF%2wjN>bW#-;u?w`#4m$}rLI_+sdGT&*;&0}skb9KzMGq;JkE1A2Nx!ak$kGWqk z_bPMmG4}~`-aKvJ5FlwEzJ{&JJDa&uMvXwywV(vWV+L_zI+;z+aDRd&*&pY|7P@G zM()`Kqi+Do6yIUFYZ=|Za`!WOlF{po-UX7a?o;MWI6(Sf1fz+JW-%&c zbT*LG(!g9dbKhWYFOc-X0Y*P&^ixJZ2f`oD)qaB?S<1IL_D_sH;Mh-@`<&62K=^|e z|2%EqNJiN}GIjxTOPH%;Zaq+yI1aWk`WB;|jIL&MJ);ARZejFOMt3uMh|!~ro@Mk) zMz1h>ozWi{{h84RjQ+vs-;Dmt$bF_Ro0ri9MyE5H!Du$4g^UUrEoHQv(fN!z7;R#7 z5u@#lb}-t*=o&`*7~Rb1c1CwHdVtX(Mo%(&meGZS^wqgetRl`A?d4B6e}e#8jtBo2 zi`q}cf7xDUx-`1L)@VgpyI_{8Vv5{&?m)JJ))#GYv6GZ$uVGjsPc zcaXU(Q>V=aQu>(7XRe01I_BD#>tb#@b32%$E6dV8eP!7+M!^S?3$QoB%xz}w9p>I; z?tjb~mbN(^Nb1XAu9!Kx)+@_)FLMW(%W~_q*+9w%%;hr|W^OZcdzm}H+*`~YW$shv zK4&fowJ&X^FSw|DnagL6t|v>m^~_z#9DT|}roDr?yO?vM0m`&qASpM6xm@PTnF})4 z##|S3+nL+J++OAmF!vO5N0@V?rzl&1q%EVE3ow_*++60u%xz}wUgi!m_YQOKGB?Vr z^9=yWd~;e_+nUh}X#46o?pHVE%N`pg#s6jT7zAr z!mnYxiv2M52=iBjGO$NdeS%ORiox^aMi6@>)d*z+jV6|f;vi0M=oVsI1S$ZvaJ;go z3QQ2~j`T>W4Pe$pF_(eqiejz6zC^sxe@;BC`mSLo!j!TrfwYm|8IOtZ5|GdNA}fXoR7Who0Ar zFnwU?NzDke2Mj%f8DVY)Lr+^qnESwFs}jgkJPwAQsEo+G1csiaj4*!yLr+mgm`}mb zbCMCp4R!QHWQ0ipL(e`&n9*S9X~zhYL(DKIvk(kDkrFCy~~F!VfMgfY>a z=!v}ulLm&K#gj~qc+mj#U_;|W-=TMquP4Y`PE$j;L4{BOs(*2`06A-WdNf03S>{|F zEpvBNJ|vja6_G*LfXwHRxs;-K%ju5Dh`wyDN0w;ZjxDFD8!s`~D26h0 z7U=ncOdqgKAVaWGYRh~PlM`x((c5$-gU$k(*T}2^+ae{CfEdf%jK)r0h~AbenMBZ* znT!7evNGzG47wp?4#drCosvlwGIY=QK(QVr;}%>b!ul?=5`S)%*E1eBa)4l5b*ie%`%UA;->j{}(h3}9$Rpf{N+djL~7fLT3& z*)o8+j+ub6P=APy$|Cdn*#Mct1DIE$7?Z@0Zc~}gZGPcH?HrFvH6lH8H&7e0CVjC=B5G6 z9RryA2QZIEF|a4xxj~sDYVdi)=QK61?OhjY?P%%LxMA(u?≫M6aV!LJi#w9qXEV zbTB&9*4ojmV~~|02c@hFFT7C0obKk9u5fn_y{M(4x2LtSOuv~Wbauf?owlXBp}kqY zQ5#m_)h!(jZK3rIZDGZA;cYZ{v2?72rs?G|^0nLgM=UInmd#@ zy;~-ytD!rLH@hg?zsBGmm6BgD(_`Q*Jt4|ZS`ZTvLy8yH;FUVdd)tLKiklldo0_|O zH18w@SK8URL6D1EJ6e0zH#e!$w5VWcJp{Cu8r$iWLE@F=ifX4fcPre`7;eR}Kw6|; z6x7z)pj{{4vlHVRV|{}vupwWFsO>!`(e z(~u~ah=fN(fD#L0aYIvcS%=_)ov6W{P*-y|Uftf@6&o$WL9~yEHoSO9r)&+kcFMN| zt?X>;ZC6=FN-0v8qM=1nQ`VKe(FEFFL?GDE+vBjks=0?1Q!B4(-qhOB6eI2o%eEX5 z(B>9Z6bo|@uHMptQKWNaLtC%(2OJc|HMVv3G|S2`dOCYMnp*I-q)=Bwczuu2i`PTx zT4jYKvluem(yF7Gl7`0hOzCd<|L*`H2O-(@zoyr<)5sC(q4#1*h}Y|jq6sfX4=Hg* zn#JV>Me)Qdmn?}(<4yVT_=?~XyfHs+Ol5Jfyf&_~nzD+r;{Ly(H zppTiczX2n-#(6Ff8?VFpM)0und_eQDzgrH;;}(rdnbT*KMZ9$or@v?p8CPb&xs%h{2%e}Q)n2^$IxckgZ63?LssoZbfJ;@mf*doV=McxE0ZSALsRV%avSOxo~=f;@04l>1q@^ z|9cdYZ$F6FiVh&|Q=AqpzLBI1gU+<_jWq*W(He@3*|w6L;m-c-aIOsyCY^S%p|H;zJp9_yI z+gT7OI7q6>`kyQ9fBbkbwe<4CrTtdQ)rV8=KU~`PRN&kvTT;dr%KaEynL5^SWw}tTu7yZqUdZyuUCBF_|O0nUw*iERO!xT-s3~_MJRk$|3%rQ{l7&K zf~dnM$wjbS+AQR-3J42+H~mdj4i;@8e}0Tuhj2E6A3Uqu-1O%})Cc=h#%@If`Fo94 z{=w}ny9;n4T2Nb1!|k$fOD^(yt)l8_U zQd747QL3Y>St5_9hFGwwV0FQH1)(Poc_CJ?vn?xKwClbvt(4+-``=5s(_d;z+o)Yr zy|hzSeHUk?Tg5y5DcfmKx%}_p6=nTT?@#|8iOz zs_1{e1buvT*-oQk*Qh}|Q~Q5c+IQIf$`>sK{X@#kV`cN6?0vti?`c4P&tps~IB0A=e*A-ZI(^DxFF$zvGOVn=*izV^bln2Nmu@&n zKOl;)bCvBXG%M!4k+QuR%FFtnDBS73w*Pl6DgQXUWas>Ai+0vrW4!Wt!7Il_zx+%?ECZ!n;(0*AZ7UxXI7V8gB*_^2Ypy(_rX=7 zn%=8H`%Jkr2hD-PyK0mdWaJ!*RP6<0)lRW8b@}1&kiNrazX)KM5o02?zoWVVl=jR)+`;9ilYfiW0faA(Age!s{b;9CbvOs_3#vG+l+&g$=6c z$&u)MM|7QvPLwt9-X%1sNUsSE2hn7Xzt;^`qV+(Iv003-&ieEBeQt*ReebGD6jkWd zC$stBZHEqVyesYhB^^ggN_UoFlzc9ndVHvGaAa`Wxh$6=Y+=^UqHHvl1U^^=Fm@rY zz`0`77YIYOJSGbL)Y^9zq#i3p8%JKpQtFQ!OG&j~gezK7rXA@SiI^!b$uW~$2JIQ5 z1>&%MEM?UZ8J+Ub7mGf4LrRh7`abvc!U!5@MO|a$)4mn%`ruIh2cr^ zmpp#J;$Nb$x#j)87A5L`27`9i<H*o+?#R+dwGn%+DPT^nWbMhhbdKC;C5rb`Tme z9iIX;xI+h3!Wowz-W8O!2Ir(yJ|XNVa=-f_s_^m8$M!!HQS@vP4L)e-%W{P=AKZXW zcRh;oC{@3tb~yc+yVHev1uR~=voNa|2mPH@*?pf|{YB~h)fp-GzbFRcl;RglWqlX- z7p3m>7Nh3Sk%1*gI-}7MVR>O!KTlmuOD11!LkN3%W@OpB?Q|QVy*T}10WQIty7Qc9j;GpkVxvn*4mznCrxo1*t;+ljmU(kEl^P>Bx z>tiKL`eXCa`H?=-GehYizDiv35%<54z4_SB!A>q&gMAP7RO|<^r@){L3gfpKdp0on zum?L$n787W-VZ>{kbFqr0j9fM3>VG-QAfpq^pt-Y>IKC$sD4cNY&|gft^|7*@%X(B z`)1&~@H-X8Yz3xznvZ=4a6W!N$9^R+otT}6{dz#LIuTIcf5a+bAiTagK+8=5x`iNc zZh2*OO{ltldC}?|O8K?&g$2c-(vpJWk}8?t>+}~@6@@Cwsw)a=ib^TP*U8r|4;EBa zmlPD1mxv6$UVho~%Cna%>v3+1qJ?M)r@4U_*h8xLq27*gYg?$fqbbzcf+d`A16`ra zK0VOV0ADnT^2be&rR=cM87+N+{5qO9#ghxD75+d|XLC=-q;R08x2vnOI~KCl;p*f&Z@DWiYp>EaL5}+cWa;W907IkJoRZoC4D^m8e zla^QdCDMdQSQ@@a{v1_7oL^%tLmYYxuZgb!1d685ksksGOl=SMb~GIIU_K&Wn*hk>)O^fe3^B@`qri>^yS0uLr$%F1Z4WL0 zO~XeTHa1V|Mw`LnD1G5J)K1rK2+fdiD!xCElQ$L1{oRet(^@(^r*5X(&ecXElHOci zcT;EYTGYME?QX%Oe{1=Vsb9|X3!wF@a4_sY8;Hb zRGW(n%BxEhuBoamF>w1Q@oVv64a0q_H3x#8S}2}txbGSK6ltv%h8pe%2h*!@L?jk~ z-H#1pgYmKl}^)Gn{C4F)T#YD$Wc2}PF|RM(VLRaI7D z0X;Fp)1AB)86c4*eF7&Mq;+7!*?~3BsX;7!fcb_ z=^92(Gm_UEo(s}Qfj6m|3cM+WOh<|g&oc7{yT1rNimoj@0B$-K`kxJk`UqFh$8o78myn&$;RI5DX-xQ{h)9eIEtLPFACc zXV)MqN3JpW$Drx1y9D}&a+29@FBu@BC_53AK!OR>oDuynMN@51{xX^zoj{cM2bnju z%xG94Wdw4{&=T$txA!=Sl4>$o8!{Oh#Y>_t(xgc@W3w^n0YMB( z?hzA)9%InKB(lbv+=Xj$I3yW^9u!1^tmi=wi3&Xpg%PkSBvFJ`k;ps z$;=ERjjS8=h((rLWZ_UQd$l;g8G}AC$8AN#u+V@QIkb4U`swY|UR-exEw5Z&q99#E zHU&v{SGWYKs4Pb3B|%(igwqJol}~(TkhtJX!=q8C0`t$><+au5-Gc-vj*VU!FE4WH zc%L9EgSFK-6Y|hi#R|GgD=y)Cue81c>(!v+8*MJc+}T@ERu@8+Wkn$}(;0@b7!Vx- zuvuJCMF}`jMcFb{6s8uJ*OnDydRj% z@@@&kS1-crldEZ%_N@}3u4G&crYW;8B*L4Mi|957!?!kRGjwfDrpwk;)@BjjVGO4Z z?e>y0#qe_wAc6jYT#NSS_WqcnsMGzHqQpNn1TLb!?|n+glLHb&O}M@90Q;!;a#T?X z{zIaK$rVvC^s@B9R5#=idAN0Z>22vkoSY)X#Tccu(JRzNGz0XA~{f)eoG< z5e+0>Ag3!45|ftX!XXpkK8xP@u5^fLQS#zshYf3SdS)b-4mBZVU5KdM%<2T1pBk#5p^sx;>MG zl}3kv;lC^J_efrjm{57ia>IX*h*hJY{|W!kaW&Q}OJ1_Prm8YnA1bOWhS8yllA6-W z;t)>GYszX+n3Cd9Rap^@>i-w<88oR>2|B{von2dsI_X$d(Hvgi*(640|1Yd!STW*r znEhvfk%skK{HU^(#7~8T67_liOIeg8F~k3wk6u!bLm}O_hnCr6_kqcQMK+i!hX_LRI&! z6*tz&KA&n@Q(=%QjWbU7?BS;9+T+~*QKl~eH*aKOJp%V0`bV378rd;LRrV;wA#_Nr z(cnbgKgP8F0qx_w{_&=-7-^-Sv&^9sphMc}&|py@R>{id?zIi!)^@``!L;Z-nB(U9 zC!4;5q+}VA`p+;&Q9T-&s)Og4qK9W>ZffXm$IW2=>878gM~z9On$DAX<{Bf&=p%?w zBYbSei?O!SWcX*BRu_cE=bHYrOdq`lQ)W9qCfh|i+Y8#daPrdJ(t<_L=0+^;;OO5 z7*|156l3fF|52U$gQoRY6hhaoZf=MRttb!T2vf3naVS_-QdA}mlcL2|$rgK}G}WbL zi)&=tu9lJ$;G%O(S8WD=(;mKYe2P=&|vc6ARJ>MxpFkDKpOHf8O*>9)YGM z>h=XQC5M_^RNXG_?8Hfd;eXk*=rbKrb-TE-k|wyU_f@HPd~SmOcc$+SQoLR@jW^76 zYQsimkD7GQNrgF>WU?pX`iIElEi;|0$xbjv&;jLPU~#Y<6lIa&|GjCoBF-WK-QnLe z{q%tiH6&r?T~J(5Qy@FLJeez7zPR!P0ywhJsT+@I(a8&f!Sb>qOyw$<^L#B@f)>?l z=t3+O=j50e9lx@&s<5mYhwlm+X)%k6Csb5hQe9e7QiH|3c+tVKqMF*O5-jk=i><}D zy|@eqCoF)e_yVlZIo*JVPSx;*b4YPLSB_n_%c75?sG4=g>47WBC1;d#{exXTdWCLg zduvC?F&qtX$&}Anw0kn`6ynL2&G;rc^^>wH%8ArisD(- zwH4Cb@iGxkt|q&D>+s&;%%YwHE-9rjm z>Ey+gOjymD=eYb&BIK2AmY_QIaeJu|>l2{pmRr!()z;c5&Q}coT$i;A$xhJv90OVi zQ!sH%I8zlY!@tnw>lh1D#581)>`xfCMQ*qoq@|}Bv$8_Tdo$$}hWp=Q)n`v&B&{b0 zJF(h`6DOB70ok0uL>f_pm1UTgs)nW}Z^G84C$G6kQn~(DxfoYH)hW=jQ%tJ*g|oes zpJLJ=7Gg_EE6cHbWcX`cS?#DYRCklh_tOBX8&j=N7r6jOz-H+!BU2MCu1pf5H7=@y z_%%&VtZATI0{rV-*2R#A`YxBxJr1>YfaY}`>Pr$OwjkqG*Ne_O? z1;~qBXOO|tA&oL`xa4AKdTM5by2Lew6lB0Dl;RZ1VE8X}S-p@wHS5u~^s!lu4O{;| z_TB`%s_N<+Kj)r%?vUKvBqTrpfy*2OLc)wpH;_OAnZppA5{3X#Ad!SYY?TVANKvdE zY^6dSs&%S$1hs7x=Xt8tj#_K0uN|z~YA5;s*4}%qdv0=r_`SpP{=ert&)xU@_F8MN zz4mzKwT<;z(Tjayat%F{JN_kRKeZCADk#Ym7%c!5Xxw(E_GhTry-?+MYn-#s> z=S+mM9<1UM0CgqS(CF>9S7>`qETMO(eC6{bOg_E7($qnI^jp60(P5rCxH_p0t}%5m zw56S{5WeFJl5jX*-LJb|_i(>GIBzs=votnuXv25NEokT)nKLL)jR`!R$BjQQZr1uv z8Y-0Ae4}25%9z!U-XkHX=EDd&1hq}-4k2~FcoRKmj^5#OrXuBMRUxhy<}FI9`#Vpp z3Uxwn-QV?j5|-EV+4P{Wh>gY|+=x+Aap-gz*H!21_SLx0~P<5sq=uEGpe;mIv z;X26YTr=XcyHRCnNqKQ2E*gp}su!612fCtPIkDQRz$-kcD4pgfCzggTG0fro)e}pR z+>k##u|(8_s<)dKd`&0gE3serqBo6^3$3oF&E_&jUzk-dF2g~RFWQbPI=>wEVajpK z9hdaQRVBrB^m2s0(mAnoa_M$_@w#f9bIhy84LrG)J8puxG+k(UzN|a0Jlb`B1NXq%;^<`G}iAa`LRKTMLZd%c8 zj9w>_f?5#OwxF60GFHxsB&k_4w*nT?Q%_Epdm`x)w=a74Fay`Ltm@c|69|3J;zOU) zG%7I*CtnG9MR7u=9(Vs!ZeiF?__nb)QC6oXK4&=1RdhpR1Kx*Kw?ADcMDJjPhOTaI zU$v>FO}QP3W;yDbENkf2men2WtY}|Honq(V4p+ z&W|>cNY3O7PAF{&p7Pd}*HG`GW0s^Ie?qC3m6z~^L*WS}C@WP@7*yekPACN)Zg3V8 zPAI{=>Wb<*bBLRGLMhZ8M{nUL>124EI>QNHiPzb6E6>!e+|$X%67wo*be7|6N1~Gs zMXMZN(|9~EFjwKqnM<_V8AkWB@bFx}#Tcz|VsuMlAl|-B+zP05hCfNfc3d?!cIeB- zI%nuzG0?WC3qL#sRabsiwB8x{1g@F}uG-w(2nR)Up}*J}G7{%V1KafY!xgO)qwzD4 zUzm+9bz)RBYsekZxlZ^-n5oCsJf}C^k;M&;_Qv&i{D(_^N1dSg^+oC;N8L0G={i~F z_>VwKR_dN_MNf4cssV@e_t5R>R2EP8^eNNn$8E91Y4aJ!mGd^{nOf4k0+jhw^o63X zr!FNp+R$4g_$sGvURfg!0&)wsCsBG;J0aBNlqQ8fb7KOZA$2{WVPU0FiFG}LVF^6s z!xaua8^P;QIPXn5jbb6ZOxbAO1y3zNw`hz6-;*}y8myvtu70_^%c%&n@y2>J?iv(V z@S)jg>vA^2;!CQ^tMEb<9>SiA+uUJ(0Z3nR8|Pc~>Qj@m$cN57EbQTdNu4mvnP6` z^eFD3Y+gZ6m+hg1bnB5zh<8=4MSG+wVM2^cxGcGZr`yq9Q+g`l;?fG-s{gF9=9M~b z3B7`!UBbo9>(_G$*V@i5v_q;ACd9ae8eCX0S{IV;rp zCztem+gSr^Q2(mTkPn6;Ire@(~6!OO*_d4z$YY~`24r0Nk2)sKCXMe0q$wq zPfF(b2$+xO@-j_Qg{iNDxx$XvPA1Bns=_>STw$HM!iHpJK5vKHr{jzcUyXLa8!=w! zvNB(=M_mCL5nHz40|k&?v`5?pQpoCK&MdqwSHo#>lp$rQWt1vNd;=1xrdlf#FC@gl zbdK~OL9?uUWt8dqM$;M={!kkJv*|dJ50Iw*=mA?=0Y&Mpe#pEEmHrTY9F;0-n%okK z^L?YwP>NTPVw$$UAd2ZpwAPtQ4^1HnJypKZHz+-{L`61Dj*o~Qg^X>aGnFgA1I{mr7G<>zag`%YA)jBAq`p7ysFGdv&R(Q5L1rpaxw+$1T2- zcPJefkq(+Et`{8&-Aqwaz8CvZZVT~lVJgl1oIauaF<;g%mGZanAO1uXD`a#&ife{c z+EiapsQRfdD<4h=@ZBB$!}IW``v*-A+Pw58dsukTY`mmyKIE~7n-9_Os?};dkh4dq z&%#0(y5qO2j?dm}8|m|Md*n%@p&%=@g!#_g9u+wSLV2l$yx*GJ`6Ipn$yjPh^U=9I zvDXz4%I`r)eSL0EQZj|9W%x63^BKB5SqV=&zHsVq(e0@!ZTxej)zxU((^bl{)G5{V zt$dMg&**gvid>UgHt|)uJv-J3xdyB6Fzoyxnoay6YT_`pKpIg&7>`{xT^&$mD`MKu zA(=Lb#;6+bPZ3f>Obw7bs3U$#f2I${Ndt`^Y6(_*Arr|~tyaDChk1`Ubb(3Mscr}> zegGUG=Z1}{`)#u9xI^9aWTIL2+}y_?5O!d(+R~@ld%`>Cptl+i!S@;77{RVW5b13&T-(afNg8NWTJL1bG4wUb~ZoEoHbF^ju-HyCY67e`E{JVV;B`j=f zZP)IEAv5+~$Y@pnw3VtN)tB@;4VL{cJ3=o30KRUEd0?-1gI^MmmtYuF9uvRh8qE zX;0e)s(Oq`PutVTq{7v$a1D;M<&;d<)U&3h;2MSef!NR4s>!DnsIK+4t-gn&Hlc6n zv=Qp_L;I+);C`{-sBV*SD&*gb9sfalyy^+Hx>|pv75@!6eMI#%Q)Q6!fu+6Ej*=2w2&t`rFgE+ZujZlA zR5#ygkD-n~1T1>45)(+BWA_lGVJkS&!(lFXd~HMSoVEQ1G}%uc_!EoYqnizO&M#*lnUJ+g<$R0 zbTy5sIx~*VSFN<{7CVFOJl!a_5BwegY}}R7Tk(S)_N~m` zFYISL?5COC#O%4`D~UF#2py&Wv8p0Am{&YKb+ORSu&Z%XWSlDcBD;`^UdV!$U11l| zNz*u0*h+j2f;{v%tkylZfI7Kdqx+*ZPvxWB9e6VN>nJ+E#8oe7?XkEF{HO2|os{mE=PF`SIKY%oHJvg_|-$gCoC#lZ;k z)g<{(HEG*8g8Z3iY9{+v2IcrPXg@|+&|=yD?)4;UXBm#bl?V&Y0;M-mog!!s; z|IQ=Y-w=PFq}tcDtm$Z6u>lU&J1qNCHOEy(ENc!z*$O{Iu|1@B)@$=Ia#!OJ_z!FGA2g z;BD0_u0#CW2n%q;x9s0X$aBVrh|^bY3&=%@{f?s12Wz7d=8Q4M&O(MT*e*nY?ILSV z+|ZYJ=@YDlbT&jA&A^yNAza8M(~tN(g?l!iuEP!~dCO`wd;7o|bPzo_o>POP4u(`A zl$z@Yt;n*UpGa43Ujt_^f-d?CYCz=n!dW7MF8WKV=vN}X2SFG86;;e=4$kcm<{yID z_D>XT1>(yP=5!i^rokL<(SKs-@OzM;qv-D#dWxcV;M&$x@CQfI1#Od&FEV@kK-NMo z_zzXVe+n~RMkt}PAp1wExP5Zb9}skLf2@kT2Jw{$y0{PNmPY&_f-de+RkU9r{tJYK z+fA09VwvuzPW2M~@Ai>&2_HA&{mtG!aFba2ePyZJ8wMh1OYfLKr|okQpG~y)k<9*q zvh)JP&qL6b-lZ&k5b?tZ3u}#fSY=M(5}gMp&b*ojjf<;B(me~_&#iP0H#;_i(u$z1J)o?86!C`;w6)hLYkhsO za2{w2^G&86YtfR6)Txv4=3t+fVb4U{%}fA9>h+U^aPP)$BJt>~!P?qr(n)UDa$_Es-`- zeloMmg+0o{E@yVLuorsR>zKVm*c&|Tiehq?E zkAhW-J}?8J`Xxjj0=N&Mh7w`2(<0OJaGr!vPLx`bi|;ZDFM=&|uQd@mTA-!r%7yZ& z{2e68QzLC()H~!{Q3bW1f^|7m?nbCekHc?SKlF2i>Vb$X0w|`)$%s4(@I!<;Qm0l+ zgsQO!w5hbs7|W{=l-B(Kmm$=56|E)BwWM*%$PlIV9LDJEo41PX#VEUxh#0DU;BGSe zD`4FR<#$nT2NC%Q;C+PZTM;Q5fKx1lx#W(LHnP}M$W(h}m!WJJ~jtfR0PoKe>WM! zhk!-fzp9aIGZ?oa!S@iBQZ*hnQucm`*zeles?vTB_S*=mIwLV0-Vn-3L{;NN#Kt2` zc_g_SaUs&Z7Ey(78L=yATv)T0n&=@!$DqWCIgKu&tto#qd^v}?N*cd{E+6<>=uFav z%|1X^~OA(ZUrvVCv?yd14_@|N>?vd|7}P*c_9z6`_y#rX1)vbD@(pab5)u@G1&9mt2voQPkhFj_Bvq8cmfRR>t4$R2}g@8){x0(9j{fAT1XQWS8)S%y< zolXLpWJ55N4~df?8t!e6>PM6`SE)+RvD4ENa*+(niL$0?kk0@?R1+cEHz`4;mycrS z*iO`|Fq`r#&!HT9jYNraV5($*+XIt4>gV*EiE8X^3gha+^vQt)(fjtcNE7ZA6QKJL zw$|H!2ud;@rVSW^3{EokAvt9_(Aa0R4Kn3ZQ7X=0V}K%P17e=)Gg^k2S~Ah0UZtdE z82B!#&G3gO<>Fe_2pHwzk4#Dr{wQw(x_zxHNg0)%o{=6&r(8yRlO@O}d+X4LBgmLZ z)&gpKB&X=u0$Vj9qNDo7RIQA2JsIHI7aFKhRDPIkya~#4bdo|Op^ji=ioErPldj|> z)OF)|-93ej=DLW8mdefHY=+s}=_RjJa&Db%U?Vvt2M@I<80WED`v8H})ZoeYc z-RFAZxK1(|Vu(^NPBOQ|n5%}b$*|N|?4`{&738HYFvfamW$CE0UO}?2Jl$S`>RzaA z!Kp-nj5q2FIB_aKM_N)}OGM1=6enGnsvUDJ1>+HjG)0gyZNMG*K-HK%e7LCA-QJx`ihL%J^-@^!}jZdCGMn9mIhHi<;EOLQL8>cv7vmNC_oRX3saoUhngB1Vf z3_IKGA{x|x_dn;|WRm<>UAuVBe)Q~8v+JhYX zV?vPOpOOSQmau7w&aLNvT34I4DWbcEVW*Jl8L}m|Rm1RC2`PrZ5mFsn#I85K0d4PAmbZ_R&MhjNa zhThDOZ#-*3j@_3KWXQLmwIIhHPY5#Po6%a3V?Rv@GUVIRT2Nbd{C_U+HKMGRAs3O9 z)gI*7EeSz}TtqF%u?G@@47rF}kYi6L1Q~J>wIIiSo)Bc{EpY0Yv1{?W7q}r+fg4g3 zxFJ=68xD3aa6_sBHyrF<;D%HMZaCPzzzwMi+ z2r?`)x0$sd$N1hm`aQ#;IAx?w3vz6%p+b-$Eh3Q+)cAP+T#5!Uu9o2rAuVReMbUkS zV?Rp>GUTFYL5^)R#l<0pAs0mpa*RuZg9}40*k>J{q_AAF?P6U6LoSYOH8SL~kR1)u zWc1*SHrr}o_!l8HGUVdvv>fB6Lt2KHNckHXa*1_Xj&Y%pmSLj&joPN;{dX_>axVL& zV*lw3y=7mXqU_7L>|8Y4I-MaG&9;^^JulNfmqga z#s==kbZXEwXQFY|KalQwD#M2i$+5QE2RV{3@lz*IK7pK$-0-D#8AMmW)LZV}xz ze=^XK(NxFKHKgS1n94;yPIfHPUv%TgB8@I&-ra@tzQu-TC4h?@Ft zKq5I@m#Ph&gyAY7)id;J?0zDw<@=aqtmZ$XkxZIm^qnH+)G%Bvq{Z5L?|~&V4F4^p#azaSlrcqbG2+&*4ET+tuVMJ9ke0B@3{km+A-A5-+F~*0s&uHyIVbPF z$wW4pJvt%7D-7v)osg4nmE^Sy=}{VOxJ$#(t1)%IYEnr&@2*%4t%l@HoVr&u|DPt- zZ^TmSy+#Gv)1ahX+{Ex0R&A&)hCD^~Tw8IIh&5xdGV~@+T``<^kx_!a&d{4Ub;XpJ zM4aM;6Pt8ummxXVF+9bPdM-077$u2o8F~|^E;A>_^CC&!z;L>d>KS@9cCUzpHaz%~ z#LF3a6E8pL6(&rh%^Wg6f8vBPeg$F$Zr0O={=@LwLaJx@9U;{*`kjq_sU_QnSIxpCKEJ{28*f{~6nT zrWl+v8=Yls%KEDR<0tKp@3qP3K?j+`2KDkt=zdhW_QsZT8!VJnIR2Z$BA9k2q@#px|ik7pYJ!04rhFn=>*z$uMJD3n;$d#o9IrdUQkRex=7UURL0B#?Vk=`va zU2Ez>qmvsPQw2kAa5MlzHkq=klLByqLy#extOYs74GuwuY_b;QSfT(aXGtzlgE78Q zDyD|v4k0aOqpwMj7_wnF8)NunLW-^VOM=8XC-$7~Z6iblN!966$@SE~Se9EE?Z}XA zqHLBQt_?u3N+ z-8h&lDh!|*kTd+uQguzN;^x(|>1L0f&+tq`(w*{niSs0JEkkeOR2{*acW+7F!0-$q z)id;J?5WG7nPjX6XW$H34Jwi0XKUnl^0-PowbNj->bZ6}F1lO^#B`-#QG$}bUszhdTn$AlXh#&t*3j;p6@mC?ZYHtMEE50DsxK0XPA6C*;Sqg z98V`*M`~C3JB``*m_2uG9synD>Ez94or|$(+y9Ja;9uSCr+7huHNLg2V>}kySh0RQ z7J+V@GHKja1o*sPyLIA(@huxyt>3)5`NX8un$IUFN-xe^mi`ujKCUXjr?q%#c~i&g z<~8jF>!^X+JFo^^hsLy;sEV&b9OIed>if4ubko+>HcDx@D>kogX-!1cqSS~Y6P2lk z=2LG(ke|mGCD*)-R$&JZ?T%%fS~jj&Px=wlE3s;v{Moyvk#+Rda=S6Wa&0Tj=e?G5 zz_tUn>jswhcC!Lb*mlFt)&|#}=7!>KII!I96|k?F=|u2L<^ z1<~%9>4s*yc6H!RttwZga_#AEuQ>(KJsYZX+|V+}p5_jQOgJzLBq%B@Xb60w675up zT>BiiSIe3LxA!c!*O!oVmfJgEFLcA}+}^8|CSBF;8jIJft_fm0NHGH!l#2O(gAXZ9r!vT+X1)Rfqg^|6MZYd_Wcyir06*| z>NkKkcmwTEn}e4MmF`73x_U#i0?uU@T&QT9b8>Pap5YESqoDy-@5CD7)Lvgz=DH{_ zS?C7VxdX88w+3*L5(x*c$aOQ&IBvw(&#UpUx=#3h#ix2WGcrQ zo7Ih7@XTV7htqF8Mx#|bbw1#WkK2AvoL>k>FlJq(i z@CQ^M1-Amtl46s-uru(tZtrW!Z@H@USSy9)!MA-hx)^l^TC!Ee#PPTnb0e^|P0 zrkmSDd$Qro+#FSm?7(KXPXNtJ8TbP0)jzDIy|Zp1?e>$UIqpP^hf(Ej$#{2E*&=u1 za(C2Nw`4YvG6LgKY5ieN$pSZbq1(UG&5aRN<&YcLg&cC+{_BzVcGyrud$QqlV?%CW z3rXz1(9LoxXrws%_uVc$Y`}Gf{v_GJ~`_a9e71yBmIHN)rCS_D< zTJsDruYlIY=plQYkRD;n(T4(AZfG_bYW{H}3t{8(wQl$j^&S&-!>1~nGGH4RHfEXd zQj9EQ+C+-Ro$A_$spp_NBhZ&tfimJ3sl#|~aMPTvGN}v-MBg4p@OK-QYO@E?fGsrPQ!G(DPa}uF>C@gZW{O@8hq8r zS3x)fYUn6H%vsk#+2+}9rn8O+Ybn~-#zaQkO)*{WnXvNo9QPzL#A&+5J;{j?36rvO zD(poM@R*DCYCs3|skEz)gH5Ry)^qz~^fNF19qEGzgd|mYAu)DWwpA2(n z>oM#Gs@x*vJZXk|QpHTSH+Hk!A}9K)o9DDq9W2Vp%d>N6G#0oyp=%bRDH?ouW^B_D z2#0hW*VUm?t#n-9)~sXnz1sZE8&@f3uOzA2%6~=8<_=4Leap_sX;}rV$O^}qv?OaI zzM;mNtV%1ET~=OYEOPRyC>wN^?3n~Br@}{)SxulzMsU-hlIXALs#l%`A4~cWtjJ`e zAyPu}Hee3WZL2mk!l#KkzFX|dW7YZ=TFyZkVwMnSGuC!c3#_X|x)w~eZGvAYs}0Ld zqsHh<>MrG;uRPG0uUr?*n|Deqe?irf(XnX-6AB9T!Kvr}T(FK|LlbX{MS`J2=5RK= zOA@|;TpZ2X=_`pAwnwvyk48flK8sRY-0b_CJw%p(ZLyvvLoYIW)^nE8!>{NZGJJk6 z0=bKP#nHUoPH{B0%U>ML-|3b_Ykc)-(R>&XD}E%JSNtfHJQfWVr!VYIH2Nl)JwMjv zdlS&Vi}dewN}_RJ1(Y3yvPZ~twNd@h*2af<9krOg!_e7&t`9yf7-;07y@8Zgn7FxK zunJ6i*s+`J*hS^s=`X>GB!|;byrZz_5m@vn6>n`93RWpuZ}jo|SnM-kZZzw1-`r^4 zWzO7aY@dH_H2=$PakTKFKyh^1?qG2=zAIE5E!!EUj7rj?WymOwjHV%@Leypc+-IV( zxz9%P<~|qAn)^Iut~28H?D|zI+Ix9gG^Ex|AxW0YGM6lqjh&D?9dfMB;&!Pqat%g~ z`-g8qn(iT`=_MLy0lMU(?GBUfi#lp?y6q+zXTpE)-6iO#pqB-G1T;;h=!+`>dQ9ZE zCIaDuMxcX&ZWHtv&=AFa8fdCQKN0S)foPcH8du~#5jh{Og0$uwpczVT7?9SN52W>N z653XweIID1N-^0F=L!nV0@AsC0Z40^fQL{T;o};kZz+(@ca@-ak=q6|Tj{$%xR(p} z8$fdu_Zs2eF6bVSyI6SN<};f(8O< zxuHP1$JPPORa#m^ZmXbQ1I<(1cYt)-4}f&q@wgpDQ=8wa0V+}GYMZ$?2_h#RI>i%$ zUK4Z;Y}R7|3RE68)@#D&i3qlpFNj9Fro{!(T~1AF5VTFuC4vByoC8}Kp%}{XmSfR$ zNLn1Y5NAYFCLO*UvBgn`do33e?rvt;k{2 zD(HJ~s-g4viJ-RxMbW7=cY>f>F&Svu{eqqlbi*L#7UCrgE%&<^qw1lI>W49E6O=iY zX$J-EE@0Z(P^R_m74%I(@8a-9vy^S6<4~pL3Ixp%R3_*~AbhKg6psn*WkJUT4T`hA zWk58_Y-^*?wgZg=(+XOuaq&2@Sv;Zb?ZA&j8UA8`grU2;_%Y}A^piP3d2s#f)>$_NJdj(x5 z=te<567;a3$ANUdzZLXXLB4s+%@j0T&;&toLDhm*2-*TP#G>}yA+&vht`+XBLOUwx z72$p?v}g&Jyg!hx$w7i92$~{j29U0+1wvaSs0K*aK{JrHv{h)kgm#(Gt`pjALVH+f z&j{_8LJOC&1^I#|3z{qFY#?pRg+kj0q)T~)pz8$PDCkxoUCR4}_JE*H;XW<2=LNkY z++PdrEkW-H_d}t5EXbYD_JsxY6*NFl3`pBIMrh*&l?kd4R12hQW0TOf2s#gF4Ej~N zwO44D3pyz1Izjgex?j+9f?g8zI*`uyA42<7kbePl`vK|xGE8WNf@%b<6Lc<+PH~IS z9tP6&@+{CORiYOKy(-){h4!|f{}Aq9h4yzr;WE~jA!wkWA%aE%>GIANv{cX~f(`;{ zOK%1mr7XQ&&=Z255%eOEPVoz&y&>pr;l3}lj|BP4IggN_3?Qv9PiQ9z8Um!tFDr-BDC{`c8SowEwmej_Mp%n6WY&(_O{SI78I>y`(lD- z0O@+3BdAPJg`g!sW7McUQ)nv%trhM$K)Mdj7xXPb_Wipok90wqf^va$it&QtK)Us7g|;3@YiSd7uAnapx=7Haf-VQrc^nb+ zif~^O^roP<1^r3T2ZH`7=$N2THQN^v)LT$LK|_IbyNwsxL_sqJ#RZiMsuZ+T(5ZqN zfwbmLK)Sqpg?qW6tAzUP&iCJfBDjp!w6TI_ z0qORw5ZYQG-M(iF>JYR|(3b@57Ic}QuLwE>r1QN;Xh#G+Ea)*o&kK54&}%?i%ZGx} zYkAho6x3JH071hA1WzR-rl7M%xu*rxNCDYUrI77MLGXyj#Ir`;yBM}$Uq z+O)n&K9-vXq-m!Mtx0IRgm#J09u!)q(EcE__l4$1O=?@nABxUnwb0fHtpGmXn^Ah& zK0OBCzqaQsp;ekr|CbwRTQSQ)Nm6asf*40oGD_ec{5K_0oDVPDQU=A+9zQ7IzJ4n*bSlG?mai9~63cl%UjrLXU|O zl+#HjiLwq9deoDU*#rtb%t=tb017?ENl^BHLJwXNltVk5C1hx{J2rpspO7JRzbPuJ5i$>8hWKWp@J948LqRn{W*BAJZF|MY zP>CIT_RwwuApF|Mq$!y~{8LROZ+|i}=^#6HXEM{o{$*q$O6DV&uKSf&IAm03C>i$S zR%}|aaV=K!Fwx}L`W7ssVK{h2($d|2`1bAF z85V46UengGsX$Mt?eubrk=JhWmCOBP&(MmL?8I7;l09%MQdfWEikRenUAbq`|^z)&70P&Sk>G}g;KA-$csX{t&`s1 zq0!`dQ%S!{Lqzi~QJ2?e==~%jb$LIi+bc~;uN6^(R4?{;Ui9JDkvt^*rVgd;@}7{V z$Bv&eG3MQhCQmAyK7CqYQDH1Lxv&VV2|%$}QDNbfNs~aEKs4H#(pFzY^FLm`z^q9# zFMZYNJ)$X6iocju)8sv>r4Ui1xK-2XJ+k#Aw*zwHC-uZl(BoFt-0?+I5`-R*lAAC! zi5o-AZ;lSkfPL}LdI75E^RLYMy$A=cR7bQ4h0`bCz=n;EXmmDiS*PNTcdWFp-?62Yq;yFAar;Uz~ajU7@5$zB$yKFm1&U3v+>;{BM zbfM(g;#OhYd(B3yZ3th6+=MvAEDJ9hAYaINuG@%y2ZBHOG7@q%@vcYG)9~>BZpfXf zE5v$M>Fa(Z_2Z&4a~Nq(Y-$diSePIHU4x6OoKZ<6Dg4SX+G?f z+~njV_#x2WOuj_ba#NG@Jq-K4gtLT>uKK1;&>5J2I-8kJuQz%&mGAWAOk&{EVzS;% z)n8Fz(z!?$1ilElOH96WgpX&To{PFv3<|gpa$hlWxg=-B=hm0){6nm4&(mf5=!(-i z*1HY=MV&j&3)qjl|5EQ#qvF5TxwF&Whe${u&=Zro}Ohhs;T1nOAqs3#xmP5rE>vux)hvD1#u8oCr0 z{PcG?8+V2?D<9sYl)iUh&Hl2z<)Mdu<10HhVh2(nzVi?Hd$NgI^wP23>sU+v(agal zU=ja=%;gz35r)(UnPXo}l3TN;Aan38616f1$1SNJ$d>JXvLkS;Hw~4ty^FFa>b^sQ zh~;@=dtO&|ze}to%a)Rgva&tT?fK~uYMuM@@u!pRIa;>6Gjmr6-?R zXYD}t_x7d=FWFlPSQ^;*_fSdZeU<*=%+jYy_LL0IFWIYV0WfCN&4W$QcNHm8?XbIZ zUs*7-{E5u_N<$C*-O2p^6Pe%7Af!3{KYUHCHkPf zAeZfV=veO>BrMxA5B1R5F{*6OyIN}Jc_FJKfA_JD01_Tsiq7;JieGlxnT=;0MSJLe zr9|I*8u2}^7ybO5?|yphSdyI7d672iy(5YCnpU>Yy#ZBJd}N0*K+3!Gk!eS%J@>kC zFknIk2KpojJzLGe8gFeoTR9CvWRMZ z61h1^q}U_UL>v;iI7tN0aYV~HEz+?rk;!QuHVs0m0tN{mL_D zbazK5cp9TCt76adD#tyK?e5$>d#?kV=a%iQ&%=NTmF%4tJJ!1idUtnTFmta%c`e>o zb8L5~vWi49s~;|UX^*4F=brb~s5-Op=$`i<52E?Vo*23rOi~)NiuZJ?+#dR5@SevK z;*UF!RU=k$-@A9eXS{mRMkTHCy_c~i?OL|1HDwQd$Z5+65ZQf%DX*tqHmv2km*w6wRZY+2vZaqg^j zEvr{IZ?qx>1>?;XtvQQaWsP6b-n^-O{FW8#w=|F6)V#iVMSJsjy0xOd%O*5I!*Tcu zs$kN%_SVgtRyB`b)7m<2+Z3vLy-_9e<_q~(w{BjE$1^^^ix0&upB=#0U7IZDDTw&n zTedehf;epK?-2Ecg6ms1u8pa`%^TZW)^2QG9aE`7Zh}Ju|7QH-#v~q`GZ{~bf(EfJ0x*st}n~44B*1p0b`xwDr=^}7H4?BHgrp$&(*ew zsYO$WJF?#}aFz7L2}H=xT|@+kO_@aT(IYLy13|wcUu);0F9)dw<`-Agmm0jdZb>P` z{6t^b+PdEI-{8=VfBzEbnP&O#$|l$JDux?D{vY>xkfRePSpKJbJxkGgm8a!@Df?H5 zhC*&=9r6md<1eiVe{6(1&3>JYD6OilEUh$Fl+Ld!EiSQaWnSt0Wp(9?OD&&?)t8no zvK$pzQdPgCrlz`XacPO=SCoq4`o*Pnb=7sam6o0t*p!ihsWGA+xCA=-s>~zQF|5Gm zyr067P-K1cnhqkp^CC1>#V>zIiw(z5k{#3TQkXa zq{s_g7;dK&E77H`z^+`1K)!hsV!Kr=6lw2hZLifQcXkKL1`c^8}X}NDB8jGlpC+M+3kkN z0>z^I6f2Dc(~d$0>~+MZ<{$$!n`%0ZNa_zV7qiThBBPL3=6SGsxgm02n@y_8Vm9Pe z;2f%vz~v4ZmD||Z-n?q_Cd^y-PP6swmS(JNpGyY=)%n$J;Q6haHmvBdg7GZ+P%A;7 zhp${$u2^-p6}+zBJY3GYp>q6(&%~eV;Azwabm6kjfgQ2nomuccU`6m1>p52N?yxF% zM0=62g7@^!MoND~K1~hYn@$}hfJVb(j8)B6@IFNdM)W79?N;z`giH!W+E%QluX3&6 z5k*MT?Hs&cwNE5MH`cYK5A+?4OtK=IF%PTp5PUG5Dml-}Arpf?bjW;%%5tYcqs-jAsmA+dKD_CQA?;S9Tc}_Vq;}-N#l~LCG{BIK}A##6hfM>k7djcD`Iucl6qWT`Q=%};&a=Y zt3Qz1s6&2D$ zK0GOhnm7_!j}NnPN)w(OrHL^s(u#SK;!{*SH=-VWg{P-4fug)fHMmxIW_lZ9u}IRx zvv6_7eo*s0)cN$XMYts62G9#5iDz@+1(63pnif&d%EAlNe}Y&%Qr=E+>i*%%tp5P1 zEFurchPbog`? zYm1oYb>T)8-xistro!;b$jQ*PBVx|i!p$mv38sOUPvRA z{ReZPd(Lr|2rV`mAr& z26Tt5(NfH%hN2$shPU;h*(Fy7r=+JzL7kYU_a9KGve4(ysyjpm4!jYxK8@z=R}uSh zta1MO6*vplXEl-efiv-XLeQvdEUhY@TT$9ry|lEhzPPfcqP%JWjcYS=7;aT{d3|YP zU1`aZd5g=dt7w`^7N{#l`nfculj)VE3yS9!*VohNOy<-t!70d+suG+YBn(AYBZmR# zttbelbafsUsSdp7wYaWS8Cu#{Ray+Z*i#r`p%`F#3L>0(Dk7aJu|2|>UtWiczy4Bd za``YVvMg&NZj41X=!%Ri52(%%*)VV2ij5na*SA}dGZe`m*)SKb53IPZPIhCYs{iW-A$E85$O_0si`wTd`g6YJd! zc&fCAnFBs*bTuY8d$>CCh9ay+O_}z{+=WP#B~&xL*rOt+fu1LHbzNxZN4A3+6RMi# z?9q|^pymtJd!=Zf9Jvw9LSe#sDS$mD@*^;(d6`Mqj`rBdD-eiV*(KOfNK@xuX6m>S zL(~mXsl#M#8VP_8nxs~M8YYW1%jnuc)b9|L{-A|w6*C}_4-=XGK&VjU z+lWl2X&rQR1KuMb_&4awPvwdWo;&PuPA!rQFl5Uf-}h&f*oh+vZ3Ei*s@k5^k1`EA znt?{mx6clL5$_RY%mT^Yz^8C@z_K^?qTvoP|v1gy4a)6hwK-%F&~OCFRHp9t5Uu=mU7n_zN{;~h>L^aZ*C3QPi1tHP1w+t z)n*^q)QfBUsS#8ldO>qHRqhu3%9Q=o1kz1!AwG;iH<2y-8I^|vad@e*CQ=L0hH7@< z?R3I$+)3l?lTHWitAmsW_qpjvOq+e+tsLaoz6s;v>QQvER0gS;2%~W|)vW1-WX3N* zdjUb4@oi-WxwoL#dMD5|yM2usiWz8D+$Y3nryBwG!3bSK`mQLOOmC#p_6R!1NMwo* zVi&<~Unt*-J#CmT(kS8eSbl}bgjoaH) zchN>C?vdIDmf|+(XmzS)Z!0(pHGL*(X(_^#-bQ#fB%sri_tXQ1l}xs#aU1hd?2HUs z#=1V<%~57_8gprQ(q$w z*dH)k^$QZ2TyVW(J9cX-%^%&rpll^%9Av+3D}+9vbbXq5LxX47P=*)Muh z?_>5(X2(7AV}@4uq*`rVl`89{FxRVt;hR zcwxtl>OmhL#aczki25nreWz`*-l0~0hKyq5riM0EeY5F^!ISv)ngKyN&Ye;W*1wVG z9}!NeMC49fzub;+%BhI_8Q?vNtV3iP4xjl5Gd3ggcYt>(@+CwLV~pI4Fk?R=wK!T= zBFv#&X=|f=NcCP&FGf(Rp9XlGBBYvDZVw_Tb4me<5#p4%m@+G-Oo~bQ+=KYL+!SsA z31C}+3}zex;{v2Q4`CklmqSKMwTk_5w(1;5z`YMab(>!S`~o3P?WVemgC1cc%%e8E zo)t8K&0QoP+>r>XDVG8)Mu?MyYQpmnI~QT<%_gyQ3pC0HhBi@k;mK=EG>+(g6ak_* z^46LIuoZj7@GD8Yqzr!)f@^$(O6~%n;9qYKDn-kY=N>D3PNd{L>?!!qvIm#^4S+&0 z=o?e=1^@+ri#@pXIsgiR=LVOq#-4&ZdSGc5IvxeLcwi~zN+IKv!KD{qPa>aOv~d zQ^;5_s3aeI3c)Jhz>)_6C6%^LMa zJYp7$SDI<{_zbhCybz*Tls+9Rx|;-<-UO(T9NUR{`Pr0Txmw!1*GLpH2d2}a@k$@A z>?g^};^jHCj5ls2n!=eSCEfLk=4So!L1uk*WrtbEd@!`hlJ|xd!z$@!G4~-!i?U5EE|K73!xa)}#N%T-D)E@vKKb!?Pa!Oj%Q&492SR>9nf+EMAI!c0!Tq7;_Sf z)5p_oTFJgxuVg>hyHx!=QLC1!S4vB|uS;K=L_*bKjPMpS$F{L%4=3piPZLr-!$u+1 zF>ErV)UMPG(;8s_>;5m!hDvkDoSNNl_Q--^ry-@bF?HhFREbkN!|$GRL#o87{oZ#{ z_ShcLI}2tr1cxzhNnqGEM|CS zQbTZTXF`zSMM;7jqjw*4CW|#l{m)%;tJqY_kiOTX4XaErWGkqaYY%daKH@Zj4A}}T z$gzY?OLU5!{x2}r+$>hrFg#TnniJJ5klZ>r6VS{YB0Q!wlk!JDg zE{5RQAuEwjkrk^*U3MDwuNq}35_=1odP&mv*%B%-HWU&;ZS;(qw$wQjhZFycBG_ze zB|}cE7qdE&dS$SWbTUe)w$GJ0r=>k#e9?^r+MtLbuS1Mp$M9|=r3=O}y2#aO>lr?h zB*?Kh5`qlhN)qJQM+rf#I{BZCZWggxhMbZt?A|#^P4~nNsS>9?M0xG#u4p+cx=RdO z!jLPA3|oGXV@DH$47swjAjf`_5M;=er3E?06_8@_Ak$Z*45u2M+~EJeXnV2VqIXhg z+bC62!|+ZaEoR6yj)MWihZ9l^xw;|6@b!dL_c~5_@ZDunTq-F=*~L#5s->xcC2#rM*>9Y*nknn6g z&OIaryEa7ER_H4KO;f6Gn|;^%I#Ky+P5Q1y>YAPgpU)zfBmaw*I!e6#%WDjoCy@B| z5SIQgSo4VO(aR&5mv+@kNA$uMz46n-N=Bd1lRT_LfptHy+=n~61FLA96zJpjUJ2qs zz~0zD=;oGoOah_PRWh?0N_4gxqGfZIyY4!*(g?>+?Gm%GQi;3F ztWwfM(+)Og*9E$6cJgXMgOXPh`kGoqr>Mj2y#|VNLLb233bTaC*W5XG}$8?3HE3+m)0Eo2jsg>0~ZO%JQrw5ru>`h~D6l1F>0)ocD{(dspyy%Y>B zhgHMXG{jUuwO-yuE#sq?cX6Fww7knkTKFchyi35DXuEx#N>Y;OPP!{?wmbAQiTV;2?q;W(TOe!!mveW4Fhj1HG2o zs@J0F;#$EhvO<|94Atwee3q*KJ?s+yxq$Q?P}j9m=$Pl-`1+UEqVRn?c`*voLtCf% zPdpz#$;9~rnI0O@hBY%5M{zi1K3|Ou(QM+MPW<5}9y1e0+{D?A&1R{I(+!;`7Jf1g zxfE-ywE6y$Vy%^V=_^uD7pWVRY$xAci<$he2Fht(J3Gzo2!2xA;~FC7Sj~^-x~?Iz z+UVyioa;>-<=O4?uBj6DVU3b5YpQf##N)JXGDaVER6aaowfq(yj2Sdg&^ST!1l0*T zL(nQg8w70=v{TS!g02#DSkO~~ekJG=AbOhTw*u${+R}-Fih+t0w;G5ZU;8ccoHkLR zy+Gp?x&lb2y++WF1U(KkNy+_8Xdept6o?wiZ_%nGQxqBtr1i}L()p54ByA~u%Q02S zT?sTzq5FWQEA$wUPW!T;w}5oocYsb&a(@=?G2sSr*JOs`MuD`JL4rmAX)PyeVZ6dc-xH|=1Dsq>L+}DMBt)TCT-0dQFk8mFn^n}PgD{`+0 z_t%2n6ZAgNOjR#^FtoJw`GO`1nhvDp<_K*i5WNQEw{{5ayMkT-nyt8h0-B@H>F5!< z%@I{Ku2;995oB92{A-jii28u0#Rb&}Y7n$d&?SNZR9d~x1!-~A>uPuq1B55ahMOgb zren>`6BUA!3+Ct&d*wAUI9GXkDsA+LQCBiKeT7@7guTHyIXk2o= z&V}YS33s)ibwHZCUTAHCI)qCPy9XnrTQ?Z4ZQTPjO3@~umyA~EXM+BKR@JmdytAQ^ z4{9`WaI2VllWh$WR0yQGrwO_qC`ZZB`Vdqvw)Iotz6CTy<@8;z;8 zLuUE=3=Mw-6H5af}R)j zb3wls6z;`ZVnABU7$9xmctLXo%@?!?NT*mTv{MB&0wEjJ_~n9rAl!QdJt^o}K`#Mm z&A$}dn}U8P+`kCzuY%Ih;5y$?f+h(n7PMN>HbMIZT`%Ye5Y67UbyR3C2>L|O01R(k zYl8(12hz4o2GTutj?gNEc7f2oF6b5@o$ozDdrD}p2<=^=eJHdLveIdL0h!tmT9MG^ z3#~?I%|dGx+Ag78CbUC>9strM|FNJa1U)0@CxTuV^cx^;-+O|bKCCY&C`(YTpngC) zZGq4x2%0L~NI;L3;%46Z91zt@&mk zT`xz4`?#PNg!?*>PVu&I-xc(MpuY+FCy-9z#{pB9JR~R^Nax!hNXv~B?#Y5C3Ysct zCXh~1DztJzRX|$vN{UXWA~;JCr<@(#M~C;Q=|E zCL!?GAaS7pSO*X~5tJV6@p32vl`lbg0I~OzC{G|3gUtzerjx^{%^D#Qk94?Nra^ z^&qKg%%_pd>l3k1gu!j(tZGpCj{7QrdzDj!ho6 zo>g)0A6+xk7D8}rKbh5SJHyC?!EtQztkr#6XJn{W9Q9JIZbz>qzx6`*8}Pix%Mwf< zPS8e~I5v6H>aK^bZH<RqtN|{>UaYTK)#S!yK8Ap@8&C%mBl?^N|pKmciedECq^AQL~>8nKgit2x) z`aZwgVq>Q2?_F=E(-`Ra?lo~ex4Eefytm7f?!N2W+xm;?ZVr*V-11k7ybHE>ySeUp zD8M)1JtTIT>>=q#2ReK8&5wo~+SbD10J)+4OuvuQCQt0@_wk9fxc#jLUw6NcS(u2w ziZN5TM32tR*u|{wo{SHHemy4JhnH(Pnp5Nd3BQl)kiJCS=+^q^KW=sR`*=6#w?eM) zR4qqmB}%S~-^WhOcTHW66!8>(ACKVFIEG33gVVG=`T{MU!h`ZJa3pwrqL$%*CD+Bh z;RsCi_e^66y;pK6{67Ay9N#>y(K0^llw23Tj~47nTbM%M)WRgkDo;4 z3Nhh`#6sa#mvDNG-Thg z-f<{`CplMpqVu>GR4(J*dne($5%T0WuoUf4vbQ|9Ea4@QyasANk@QiQ$8R7-ynX|5 zuR#3u(PDGIXhbDpQvyiEQwQ&^S>dQ<6l^_lU$nI~ItP5OlPotURRlagt>JGW)2jtO6=Jl;NjjfU2q zhu^sp&v4;nlfKU?+w-t;iTEzkSY5_1@_2Gj_IsCbdhMq%j=b0{=`;`1?-(Xr`bm3)YfEqd};?=qx-PIVuX%`n%&o`ys9v56aq2zL86j_(z1OO z!wa?F$g-VZ7(UJF7+3UjjOV>2!wbvyR^=5R`4G2Dix1Pq*xuZ$%61;LkM+){)YDHN zK5gqy%l0k}k(_pC%Ifz~R_AAxDX)=nO9R>GK%tCVNYYWU&Ir(RisCMv7gI}gpY4(fM)^4H8=U)DLV+xf{y9TQF0eGUGF zQ2}(xhOVoWY1f}SA89!4%%hLfbv_wK5#=8=bC(MeoZ8mtk%q$rT!gBw?Ywg{w88VI zkvF!)O3*LLl0~eD^VQ zzr^wHNC*bKyNSAoo+r-MJ^5l!W$%3A*t`3Yirk^zN_CBmvc)M)Vl#BA1GV`X=zXDy z(oQsdAmk#{Al!nGhj0hNs|YcK zHxNEW$VVWoRF5j586 z!1}5Ls}i+zq6pL~GvE zMOQnyFEfH&H4^WX*a%SytGIGdX^DE<)SMy%Z$eM;y<|_(ykw~vFOiH_apSU18({wL z8KL_aM&EzEk6C@i`d{W^miioT9v8FhTlQh_JicXrg=o*dW&Q2!g?8Mq5XOb?_`YUI znSbjl_^^e;R^Q6J8I+_a-?MPCYB{we;qgQ3&>c-TL`J%yF$!yu{}acw{?;{Xv@h9U z7U`upd6Mm)eXr8|6mkiKd?)6<)<3-84M^34`&$3VepJ|m`&xf~?hYa-SF*^|KYAop zU@+(>vU{!F>O*Iu`z^+Ot-{^h*Sa@29NYlE9I)*u7zyf)a;S7mP8dv4Bq9+nvAwZSbaM$T)48^c#q8soe+*w%-tiJaF4 z&&eSLA>)S13U19L^T~g0@WSx(lxQXSuMO_XrHJug8{Dm8#(!<_A{8V5wL73TJu7%g z_}`S0oE{Zf!An&Z?7ud+SLbMDtXn~*d-G}Zhk}ybZip;UEXq%@(nv6k#unI*5Sv@*^&KgiIR5=sW10gQ}7UYRjqWxJsuc3GsFEM`L{0QaIA3104yQ90fH*QS3V zw;xiWb?~3?Ry$vNu?@wuE`!Yp`aJdx8@jIF4bTq9x%dxvQl{E`REaKPChm(_vCy4a zXVO6#&j8M`LU)H%>Dh~I=$_u~Na@eL38JBU)2W9f9N32LQ-p*A+tA?%S(9*J8#43T zZo`V0+JSBO%g(o8y|FcIpgkYQs8GTMta4!MiE9V89s=Ld_IYW>fvtz+bztiuCmh&% zh+YS_9xr`iTQ8{?4s1Pf?ZDPU&<<=pgp>|!)5bXS(PZiS(+a~k;sKs=V4F4} zTdjAh9N4B!?4>G7JFrcgltWD{4s6pVM`>~t2exTbRNOeQO`D#6E0h`swrMldA4jZ< z1KYIXjNgOW&4F!NNyfiG_d2jmTM+4$hVx+Uz&34R`dGxg4s6pZvx-6TIIvBtNpAwh zIIvBtPv4FhJFrb#8X;G9;=nd-xr!SHwrQuUm^iRaYgBP|V4Jow@+IgJ2exU=Dt?L8 zmqxT3qS{pR&qDxd^atWu=zwnMPGZrhdy`n|&&+`fF!4#E4jHZ-~X{qvq-4`ZFR}?P;4bz~i2UWCUO$&J~Gnt_jJF>lW zF@wrC#LF=$P!T(7ymU!HRn+9=sM0r*B42khEh6Ffl8dXBTgSHI?AgC&ee3^6-n)QT zRh;YNYh`C`_D*(o0tpcA8wn8Z0l5SSn2-b#2#^~Xlr{+vAR3aG3!wFa29y+O!CI@8 z3az$Bk6N*{O1-pLt(R)8wbfH=FV?nJs_n6@ZS9r+`_ARtYbU|Br#*en|M|_cXRmj@ z@0*!#E^F3Wv)0UqUEXm)ZQjvdUthmtQ$6;D$9ufpPFhFCCFlyH*dM-u1{}>hbY6Qq zFYc_z!(B^rXP1+9+oUgpr-?9?(cz?hI)~j-Qf%zlw%JL$Po?E2?sU=~&Wxq8mrhdu zs^3{Xb|D%h9v`+$@ygUcryy+-O|3hdJK9>EwC7bKmb^>oFRQ4Q-o9-ItXeo}uMJ^l zmb%N5-yF&uEO{$Fi)nJweyemIV^nJE#B-#2D#jNI?uZ>Y<>M@D)$3r#(*!DR_!N0a zKk|;o3-Dx|HmX0Pxs{9@&B&~8+_9Z0E#ZFkT{g6)^xXR8YpYk|H0qAiN=vXsb#zS-*B&tw};oSdxp&iq@;Bu@}AQ5VoAoCPUTeG%aXH?^)TAEUQeGw*TOhgE+D5|U| z#dg?fK3Yv>QE_Q}JYuxk4V9%e@xhOzWysOVu+dPr^=sBuR5*kE6j}snfdzmbJRPrUv_|*Do(Es$GXuW0GYs&ibMX*pZoRNlHakXmr3_OQm4( zx|&+FU-?>RiX~Sphd~JJxQ@~MTxY7KqC9cxG&!>|SHexoH>>@*^|dzremD3LoZmL) z>a}au#;;^F4^z65rz2ALyE$QgRW5sVPc)A;cCYS9>LCNWovUf4dOf@7=BBPh zBy4N0sb-oH+i#x_GIlQ4WHsN2ZMS*1g)Pc8(M&43(^C1pIyNNtll2UwJ6$D@&BrxQ zCfpo%M(Q1im2Wv}PSTyJ?o|sdk&~0|tYMEqu*}kYQ+bY?m->D1DlM_b8oj&YD&|cm&WhhcMH+Zmb&vZ zzYWG7eREg>O;Y%W23v)J9#7;5gjvm&TnVghBw3$|n8MjA_2g=w&>OAHtstT&tGkAcHnLXe{VvVb5O#lZ_T zL)HuN(ccTb%g9WYHK~(j_tldJCRPkAC9_Fn6uOc@J_sP4?UZ>JP!Xw_z71wBU|&Nv zcWP!+XbwYG+Y-xWqi8Ms?9Y(R60&I&8%cf@IN5Yj+(KdQ+Hn^IZi4bLO?BLb!@dil z_2e%i!}wh|>#tTj$FaHzQ(qo4!JYvm*A?yfTaJ zlr7t?Up0&=$LtiB+mpqL%uU>ReQ$&nk_YwMa7UkPE?=wl#_Rh6VXijd{;clx{*Bkq zGIH7ii2GqTtq`fu;gM1~_s9ezWA|qNfSbnmC3NN!AZ$Ln9be<;90SSyfIFUzWM`Wv zZYS|FH0c&=isNpFjA+3h%@;J#mKASwSpa5!H@WP#GXg*TE|VSC9OSA^uqSc3Bi-X;p+4UP(Pe1$!vVhD*UqYs@7UD$YL0t>F2buu z0P&S`kNi}MaDjUki?9oMcfwEA`>Q^BB0$!J_MVE|Q zM{|Mcj6axMM#n2SSMOAd@^Gv8T(wC&UsGu}(^Nb3)_cTH)@r+t;``)T#~|cR)@`1r zwVUkbQM){&)ns=OwaU}`#7}ltG2U#|Ev9JQ=GdL$r@HD?n0*ryo$3x|yg7E?_-U@{ z;&V7|JMMH>jfS&tr|1kFZw?+$+mzWTP%>3ydsUj@j$!!h+3Nf}UnkA+gU{o(gq5_A z;f^!K3y-wL8>joxEERX0JB=yn0*u!Mz}D~jJ~RGdsyo6> zn8D%aMkH}9e7=lAFU)6dTyGnLU#QyS+v+Uk<~G;BFH+6$qH2<)!xb@e!F*{j2m7SM zm5ZAl_rFw|Z1nJM6F!EifqEnMU+El>k`C7uuo^nC;B2C5tALwXhm5%$_e1d0bPM6U zOxBDagZLx(C3bsdo@Qs~x*Gy1{61vqC}>8PI}tk)BUKC%?riknq)@&yX{BM#19SQo z6S&_<2127 zVvJh4zyvq|%+{hv#k7mFw9F@4Zc^&P71qkH5M)m6D&hx_!5N6}YlO)3mOgB^%Y22&m6|2ZAI+S)sD+uGFF+THHB zUrCD@rd7{9at{(NBu`zC+-j#tN7DCck3>1J+s00}v5zc83*;l#Bjb2xt%M%S;q&bU z;gMWMy9T5ll6P%ahV0x&=JITM9Hf)*OK_SiXRcuADPioa7mDSCVw21;i)lcuj(TP8 zo>2EVCYq?_9$|-|Iwy1?a9QT|?)h6VLF1m7N)?xawg^7I6_oj`v&#_L1;5OeF0KZ5 zB1nbmOzbZiuCtUchv^vmFEPV@ zMv?Hh^i3ao^mxPO$D7J6O){t2SND zc*`y_xtUW3QJ3+HA39CKC*fsJ;!ehXKZWSZxkt90g=BvOmWRR2g)jdl0?PoF!ms%g z0#^Wh0DdyR7NTp#-Lagdn3ZUgqrG$c zo~t?T5#D8&Cn4MCktK~gl+*mkf8lB1Tkz#$5Xi#2#tis!F6e9mSPj2s5dwQK2fQ7A z%?bqeVJfu;el@KtuinDHF8*D`zYp{8llWUjH5!on%gmU0-Gw-}!>hdB0(gS~=9Q0! z-&}a5-yZ-@!B;TyYUaM0xvpVu_hX3uPxzJ06}J^DnK3TsE15U0#w(e9(&1XA!P2xREe%F=bw7fHYn@5g82(`hPx^)l+`_NH#rIuCDyT(6|}A z?$Oem41gGFPiTXCcxyl5QP1}k$FgNw#hzXeP`c*WS7j9csn6){|kFr{8K6&(5y zOjA_d3qT)&jf^UOS))A6SyZh9l|BS>7S2Cs!9rW97}Vd81q>=_Ll*zA1&c(3712b4 z73qBqR%FBtRt%nmG7U*ISdro1vME>^B3OGrpGNo z%+Qdz%uGyKo3@x`Ok1cVF_8Onz|(}k6nHN7=Y=a?Dmpt1R4DTlzPd7oCFc2)W-ZV6 zCr-iw6Bp(k;-)Q(HHmy9?6=*q(5U05ElQvvQP{As_A<&dO@$QD9tFF=5?vj*EZTY@ z^&Gz*2{m4rpaoJd@{9Iqo@F{sG%9X!6XkSem-th|T`qz?n=i}#isRn3uj!7mxWx@q z!!VUS+ZJ)9GTi|USH;b6RA@6CtF;-9H9q4WYyBoUDicj|c(n6Tm0*7ZjSE9q2_$8b zqh`Ltb`)1>&_;8_M%5O6Mo2Xl{-=~4SYz}8r=YUV`~QfO{Uy@kIr?fER0F)brxC; zs87{V8;WORhXI|I{tg}CIJh}8=Xq(MMB*QwoZ z;8k&wt)tJyNw$KXkCQC?wvhU@qb-S@1hlP`Qvtppg1FLN#>zz(? z^g7(*Drb{%oedWH)j4xn?8HaA49nFP+F1%+9vkY63tDLBF5bJ~{d1}sD5t8UHm8dv zrz#8mISo`x7nmqE31zv!R8hjg3R(@&j27CsXD-d#CYRrfg4GttvSa_=;>C)NIXXAnv9#0Uop&!HrEqpaW(1!jP7qsxt z34%6svzc??CCk81n4{LwhU@~RGhDK4HIz%nRTkQqOs{{Vu-5uVt{W)wna@Gf7INsH z;0BxEr$oV83vDw{!3{@k=$^Qsg|->Apbh;nE@+``1}$hqe~JrQXq!O`+Rzbclv)dI zGiX5@vQ>-gtCZaUdrj<1UucxDo%H|7{%YsX)<}y~_N^y|YYqE|IkNJrj@ov&m9MFP zZ~VFe{su5FDri z{IvcBsIdjGV;RO43$4n`uKK7A*|7|Q7Fw0Hpbgov?4KRhYys>HG2blG;pW&X|G7BH zs`;xp$tsjBr*x&AAf6Z}{oKHJ;v}6<{GaFZLnd82DXuQgHt=FR(|9b6T$x6HPoem1 zdt9vALOYc{!1%8(;{ElIxVBNx*uH%go(@8iBHH&hTEcd>zVh~Fr0>z*iS(7{4&-!i zm}B230?m#8_wBp3?O!%^ZX5o$CTzdYvQ0e4wCfG#c+4EnRGzPzbe=LtTer3m;+ko+ z8FER^dFUhm76U}aWQcyjJhQ(!q52)ot=o3htA)EWx3eWXyYS&pm&RN^tHPTRM&Dsr zy)1|a)vNb-u(5kfb6Y&Pqj`5z2ZAWBT0f&;mrp`_TkYB>KVoDM@!XlF4DnlR! ztGDDD<9#@{AyX+(D}G*h1`|XlTy172Q`yFGpZ10hE`T)_C!A!T8ipCuHJL#doF&0# z6{a1btYF~V&aZVa(*vLEz;B$VJdf;5ZB!_5p%&SY1zNfnJ;#^@+U9x3`d9*rB8j+_ zpb$bdbp){l6G6vKuL*qVa;^I+h#}%u&s_^t`;fA#1B)`ZxS=6nz}ioyGUeljRs{nu zUj~ymtGsj_!wUw+B^cgm=<-H@HT=wmcVK&`|Ie$zQkbMecomC7CjZW8p=X=2(DSNu zi&8B!%UIN*38mp)dRiBXkfqdfXM5@CT_B?|?BrnJ%ci|xWN8u-nBL`OR(R7FdF~!B zv(QT|Luo5iQ?NSL%&bFd2fYeNX3X>|R^lIamOklatV6Pa|GXkppp{_#!0J=EveLtr ziwvHrGq%$=f#b#=Q#XuEu_a+;${YRuI#@9Z_NXFw!H=klr*S3r1uwYE%b|gxr7OMc zl?bj<8fP-bDih-d)$2k}dzsAIQunKF5ecCm1=ko!L%YQ<_8a69xk}Y}Ah-&Z9$?J} zMtCtEf`MHjR3>2{ypo5lo~J^)pnarEXY!IiK`%?`y#&R}yahEEsEwgWOTF;);0E2R z!oeGRKn`hGN0HfxJQX6Vtc0F}+)=_n0S$$v6zGK38}m)DNaY5m z8sf$}qj9Lm7}?rS0((i|(aT+6bo8f^CJ#a3mbh8oe00eXon9m+hq#4^2Hm~ex>g;ama;(iMvp%C!CDF&!6U(r? zkF6@ww6!OqQuX4RC}F=#tTDK_UN89|&!@89)bd|tC@QPZ#ob;{MjN^f+gU0YI$BAC zNj6^0$k_)#OV2ZObIT+0g@$f!NyI=@rJ53)uARjF7$4EHLry2yVaH?Pn;eAu!BM>1!zpAGe$MZ=3n*c_xhVZ1mSl zi=pS4dp!F=5c1iZ1cOvPfs$x@(gi8e?4rk@_~We7l?kC82_aOLNS3B1ecTr`8<7?x zN6ynGJDUaV5cB~c>YD8I;(xwE_v2s3cmjyC%E`_%_+OyVZ}Fe6P!MgW<+!b(MiYQ^ zj9j3FN^X{L&k^nlphb$iM!4@6)Fg5jh}=cOy;9JAk>dgZo!<4ry-m=aB6nQm9uO|~ zqSo3!Cvx8sIeyNmxjz^5E0N=l)H>h42saIVS;ycK1zj5>fV5mpxOsvWh#dE!)^f$d ztr0{+@;beGk=rWVoq{eCxvNC3SGYF`Iwo?T7CCMB3zgs8|p!axGT)K!r+fC@vCOt{zC&OAkv^qh%1?>^EUl4$bp{;%~uD1F$N}-5wGX(J(p}E;YNmXw+Pw} zq`AEQ=zQA+bqUwjWWc#pxO;@VS7^3&1J1R=JtW-g1>GpzBSJeS=r-ZrF0{J@9TzS- zqB8+L)nN>3?>hJ4f10ArPsVqX3UM8WMvn@5OHe(M(Oh?!?$55138ZOX1RAbV{uYqV z<6S}NU}?EgKoeDN;{@dhH&1AD1uX>9=`9yjBdABv$ANSnp8?W&&{B^^4+}ae=&L|F z#y5rbq99u8(Q$tvh&Fq)E?%}pLj+9#;`!@3%Z2tnAe~1ukWO!hpeqFR2)aSg#|6>u zj!xxHq1_|sJ|L~tD}n+TaCD5tg7~^w(|QDbUeIfT{#($W1&teN^Oz5$Q#n`AW*}X* zZG!d#X|4WKXrC4I6+ur3dIm_R{F2bVE9i&94dGPOxkUs`0-B=w)hr-Wa^apMs8&#& zp!Wf3O}hjg7IcfC2LwGO=tV)V33^LV5W}8MIa5$BknSaOgtk)9xq@0mZl};bBTY(eXRbnTues9w13KwA52h4vLeuL0?}uM7HvpuY&p zz~hXT%MvsKNY_=Bpo@gtEoh&hUO^udbhDsiKsvqGfpm|kh3cAip`blLx~q0fCH>VWQ9$39UqE8-%u5XuE}WmC!yWv`-4{exaQd z+KWQ_q0rtD+Fym1Io|3w21wV?9HA8mtx9O;3vGv>{Xn`^uNCxBK{pAy4G2G6k3Nfo zK5HKm?w18UCFof}-vrVzUIEgY{!&o#S(Y{qNb52|&~!n0f))x|B4`OYjHw67k&~F8e#>HIM!4x2^!3;t31uYU(ENF$G zNuMEl$fFlemwI+*3k(OK5KkErJs1xEWHmxkBS=X03CD&?<$tS7@Ad z(Q;f2Wpoi5XS6i!RiP!L{xmHlHF-uWd-~PfW+<)Phs}}Ch_EjOHCs)UcH{6mC}Cs5u*=+y+upAbS66ALM;#k>tj zHlEHP@b@H8IEzNdIo>l_>ze@?&RxdSS;$z)e#&afcz(+Hpm4@f$Lepbk8h;AnYFlq zt@YViSuOTIv(~p=^01)4wLU)Gacqja{?__F&vN&3oG+xqR0Qgfc9FvUwn#gNFl^xD-(q+I0+;%98o6A1#6(hrbs7v%qLt#i$cphtq*N5tji+W3= zNTkq>PLLsGN3c`X*Q$M9TUzsc1H2&hMeJv>Z&v=jzV zX6NP2p9@ocv-9TXD?+RxWy{qZkzj>m0#-;W)Zb#?^PrdDOnMg2*mN8(V`s3~mxb%! zA~S4pd@ghvPWrD!j6aau<5ZsXTaTs8bol#_p5GM?V6m?O0OcQ6;pWyO+1>aOc4n4q&nGT-1q^Nr|{qa(yiJxk&3=-jw;Ak{iHc zALr3RXbU{|lHe#r4zjgEK9N^U;yV&m@nfM3OYk>4q~1q=Now58*G3iCF8 zr|M-PubXklrQu(JT%E~R)h8_MouY`(3e!Itrp2Z=mbl$oZug&*=~pM-6# zqbH|m<4MMNov~2W`%RsrwLqmTj;RF8dLJvJ6{xaa8XQta#Y(L0FKtuLnqv|PSO`K_ zQjYc7r@I)AJ{(F2;f~RS8_coL9Qz(@t;P(4_4toCUhoq_K7n`x8tGl&n$+jkJjoiE$!N!iw+n4OlpFd;%+}Mn5 zu^DUU#Aa;W+1%N@skx=O>*6Kbo40IfYIPzrXU@{Yb8BN)^UkIn&0CuBh2yMsolPB` zvvxMN>};CV0rNhvS}}{`srnX?XpV+6konBHGdkP4J2p4X+S=AOV>kDJHjd@6F3H+< zc^DL*ZI|yLcxKx!f5VoGiu_)-Tl{8Qyb!ZaO8%c%Y56N@G1HX_E!RvMhpcv zZhs|^n^i)BwZ9UWGU?Y)F*qn$kw4|8VK5rRdN=l06z*q#CHd2VpD`I)T){5kpC5dq z4Po2yHV?&N2NaLXubeSLdG_VceM)9Hp*DUP0jH3hxsnt*hcX_sIsuOQM>~> zN7zR3-tV?pWf~d}?7x!D7NG)~&B{(8N&P`)3|LC0USt&V z%QS%n+bBg8Wzy8xD$)Wxgf-%QI6$Sai8;2g?C!v5g73uIE^Kac!k1=oq9ShnWVyDA z5-iM^4t3)6Vrvy8c>zQ|D8UC5A#NHacp^fT;-*o8UsMER8YTFkY9F6zl;A_d zzl=toKsDnQt<0%BXiu~Z7ra4n%O?sd%O?sc%O?sc%O@Jq z@`*yq@`4`6N`7hVPR5TRsVuq>TjKZ}}v&B9aG^ zv3wF*nYt1ozvYwA>Wq4je3nl_m8qA5Vl1D8YEo}R$XY%Lt&f}!<;C(zXoCtH%O|0Y zDkPRqLiH+aEuVxoMUEmZv3wG0QsMnL%O6MGW%1m_zQ!o98e@J4kitI@Z$&rsLeG=M zQ|mNY>d%aGSKqO17qpM-Wrm!cm0_D@2)hjH*2 z$o`4%Y)Bb7>eI|+jk;f3jr+Blw$^P<>ZsURn2sA(--kZ@rx13l^feW#qR+(>tGBx- zuj1^Qax4y=d*oguHzJpC)kIbTs$RK~>VDC2R}ZB`5ok-`N7;xAaF04VzEyH6Wc)eS zbhTms$mMCg1*Wsn+#>-z`Re?ZPhftRgL?`582fNnjFc17s>Wx~JFxq1QCbWfx_D|; zl3J0{{vmK5fagmc<<|C1t+KHjb3kr^Y?K>M>=sF^Acv~Gixl30AHy4ay7QUXSYO4K zcXFl&%Yv|3_h9z2LW;rR%Npg}BfpVE7fffO^Uxh;!;dRBBHQ|E=-bbCPTC$Lg>I#s zdt@^nF?0pa$z_5aNURk;X7}`+GmriF9{4-qM_prLb|N3$VpWNS&^r)Mjxbh(5yq3T za_*6#=rcOI$!9UUw;=Tfe9ZUdxI1|kBXjnXZ<1`+nWDN5zu(+MYD*h-Pj%d>>Z*P# zC`aMPcbJ^65cR4@yH)8}l8PTTFU^}4Iz4i<}(Du z6F6b3!;7e0j_J@brIj<01>;i~9lJK2dxZUZ(ju_lLYi;DPg;(^6x^rq3(d*v5!eo} z2|kx89M=)$yYrDY{^ucaFT9HX3c$hZG(L;cr=As@_8A=MQ^yCVoxqVkHOHGa z1V{SRiNR^l;7Feu3r@p9xztH%)0%e#`~Kew@6{~hfH*&XdddegiA zdmGygb+}y_t_1`*+cUA_SOLIrvyB|~#^SbE+5SDi61Ei^;oteo>`^w-zx|h?jglS3 zxPjYf-!^e$z`kAu_5uO-fk zetVK(;~d$OY_f01v0VR-V^dPmX@+1>o2s`ao7R78F?6oDvsWdo>$lL3+j@y~TvQ{R zY~pN;zdJHxW|-(%=7`7^+AGz-Ia5AnBITGPB3o!LOlOYF)0WOoupqL9_Cj>#$b~8@ zZUM~^kuBs9KzHWIdlcVst};hNw$NTh{&wW6C32O8{>TIGmC;}#T_lmKE#&MO-I;T4 zP<$+pHAifpW1&BC|D17EaJHC8HanErLVx7`d(q+AFhJz0zL7JyyMq5xcGP5;a5!W_ zH<=@}u<+}KbmsE+k6blSeiFbYkne^bK*IMbuaHs{rncSF28jf7H#@oYTAXUdL^e{zFj@Z_$iH> zIk}&ZX=hhsN0;-rR&i#b%1*xnv4vXAFf?fd9F}^QyKN9r1$VDPHw+TQx#!Mic#~eYWg31N00YXC1 z^aFyf1JbE{LgYRv=!Bq$1wAL|1wlU%^oF2c0O{N=KtpOo0|HvpUP0Fhx>eI}~(V(Oo@#!*GnII3v53ZZed(6lW=i;t6+3T=sdtJaqCmg{2)zElf5ODcT62C)AbSb7qLLdiR^*vIe07BVDh9wTT{1&Od zn_y%xltYH?BzM#zJjckeb^|WIL8A7Fj_(WTFpxp!`wI8{D>pJ2Rv^PGZ+};7WLPu! z+8QDDuSC~qWT>gumglB+F+<^g1BsMR_oLXaciCfgI$!H2^ZkC5|L#Y@2RD84vX+YC zDbGrf;rF%w#CMY|&8*r@y0xPbH|@U3XY(?}M^P_3d|~s#!bj0B z9ejlNivu4~O~m`c@fQI;V#3__zoF!-n|If*rbW;4)~=?Gt&N+T>f_oZJZcR1(9_xX z(a1an`5#;Ufd?6XwD>cbpXz^#^3&DhZsNn2eqe9gwrytHtQeep^NG(r2m0po?D=_f z=TlI9^Qq6K5AD@ycql3C-BGJ{JI$?*fk2ao2!LLGk(c2G^vA#{->S{+zfF5T{IT-JC$u zatqH+AjS~7t0{p5In>|myo4HLk9rnzEhb+MkA)eOORN~0U;Q5Bb{e_Sl*2cq_DKb_tDdpv9jKm z)mNmaDD6w!>T~ca_O2zp_)EX$8Pq_=qf@%KsefV$wAbp&pS^N949<$%PYW^jC`L`zWd6N3GezPZ$-`IzLssXB{k1Ihe zrFutGMxN5djCE#t9`a^##>v#64EYf%1&9-jbY{$`Tz6ZqsgeeZXH5As2|YU(XN1f6vdi^Ui;N z{bTB6dGlAO%wM1~m9QrLAhAA+@C8`Wx}w^3tf(vB+K&SCUZ2C~AJo=^Pa&@_a){Eo z^**Vp>;#*qH+%LAWd|#A8j4QDDE;IUtl}pNSuE$tJ^K+;5%%0>P+9Ns+o}4KdyeBk z2YA9jo&LddvrA_`U5XxY(98T28>}`bpQ8yXr2({YidK@d9e4up*7P3>_;D&YO+Hn^U0N>=!C}e`G4;8dW5YcTc#Aw6HrP{X=&$ ztpla-k+&7~K{h)EM|@|mBVxSV{RES3a4UL$jv^{Ds7EWHkp#PAHou}T`N)LpwUr%sfRbfX zo+#^mfcfZCM^_TBp=Ad?rV4%F!%A-73%ggTYeU(>uU(c>w(u*Ld1VWqx@^UPy{Z@W zt_YR&zFT(X*dYEGQJ#43xQ|~{RdP0Q@c@2mEUZA;+)#12!$w(O8S(i zDu(iZeE0O}Q)O13*Utm$QiR4C(sR=7RRJ?-Z9Rk&tR$YF7g8!>SXs%wc5rANcxZQ{ zj;F>=jyn8!yzD@l5cq&)>L{wWc zBVLE&A|LUIwQ_=ekm0Rx< zsEmClq1A!n27lH@-Y1dP{=YCSFczxxx`y@YbaA4e{|7x7{RR?cy{AqOWxez~q_0uv zoqpp*^5=rePps%TyQ9uL6>^+*`x?lExem?mSc}S;_%@hf!YA2y@8KHy@^~9MfMeat zdZGc=6%ELv+$O{ulYmV13Pmp9`Fa<1!@9$2!*cg=hnI6x9}}p9Ww)*v^CB4p@jIpO4#t*RD4UUnX`g zieWJn!li4M^H8?7qErQ|OYylk>C21ORn#g}zPhqPgEi}mG+MK^cKzDwW#u)BzO1OE z4ADxfRcL)_bxrx&H3~znXkAJ9S}RsrRJ^KGr;11wmcj5mG&w5UV=LIVQ&${Ni&}{h8@GSz*oZ8 z!t4ty^Bboe~@x$yb$1@MLNCGchN74YnnweXyK*a+VMzXg6fJeRz*!*{{& zhQAbk5By&E{qWbqAA-Lg{zmvC@W*-0Z9D6`ns+o| z9Zl1P3^ccHZHsj@b#-^NHf@QmSyxfP-UKVpZC$a(*4Wx@+hXh6IyN|MK;U zoSplZEmY)yV_kgljx1UHGI+ivi?1N~KVGt^BLDqM7MZmdnu)>Ve|zB~KNmmq!bQI5 zNLaYYy;l4S7k>*yv4TjEKjjX?NcDFuTzs3!$il@>+K^tj_$3?E3m3n^V2xTV>0sgF zs|a%8;swYn+>O5!eobzb@bX=5SD}1rETuC5ub<}5$Ay1cg3Nircdt_M_L z-I|(pm6dC&YfHHdiy!B3olt3Y_1bFORHSAHJJPsHP%n=Rb`4jV>s5lm?(AowiCG>Q z+^Irb9vN&67cq`m9vN&O#){(d$lyhpOdynYH%b-Ul}_EcHZpisxSKIHVFj)e+?&M! z!`e9?;o2(cIwsJ${9rzN@)) zOWUr_<~Ap|TdjXg-_f+g30{**jnmC_&Iw+d`T?qt@p1gs1?Oh0#aL!ay>K`OPJ}p| z1&fCFAY|4?23HQ}52_4ijH1Ip_gJh_96#bRt4+;%g-beNhq2TFF5Vs`m1&l^pcY@Is{TTPr!} z;Z#<7wv$Qi20ap><^gIrRLWkXuV#aOLIMq+lU){wU{zIXE3o|Oc_3V z2rJ4grVP)`WE0C`%J94>2TEB?8J@4gW-(=WVd^#{WEN9~3sSE_sLx``a8cT)K+TQB zUz0A!4UrQrNqYcv|6q@h~fXoqbJP6rdXfX~0Ev5`_ z3uJ_F)34vsZr-uQ3Ga#)p&ksSlV8S$cMs#}k~P3vYTlxzjvTd&$>S~(cimm{=hk;Q zk!jhyiAjy6#lorh5F^smx@FVFT}@8f_z)N8X+m?ClXjN6Axl=*>a?686vp6)uLRO2 zsz62rZ?`)dw;}2z6*U{B;{6r#YsXD>{ig1%Tbm$1Iq(IjF=DryHZOcr1X*lq+j4Qe zdTX0DKZ^+)k|ekwmAYUX1q$MxzQsw)SEPt0*~bSbZJ{D(L|Pg*VIbre7DxMI)e3G>0qjCSKp|rCp$!8FxCinJ*kfbwd$dLoF&4iNxz*hoazu*xGq< z>*l5{PFkCyWSLrFKSQb86){`2q#<3TNTZEzh-@|M2s{ndGdRbR8y%f781L&NJF#m^ zb6cwu9iw77>H;4fs{+Z94wfi7PW4E1pynbu+9(JIkAMMftw29nei@aY)^D? zMl-%3h%_Rvi#wY;AzYw!kL+xAqDvGPC)eg3PV}7AHi%|0fSPrpg({rQFe*i#aM7X& zTOy{2*qx$-&$Q8HikPE_(kRhlMa_-0V?F3@R7QJSi>jegb$U;aG{K@@OXD^tx?B;^ zwa;~;WvYC0BY@=!=0{qAS1Mc(*^K;}IzU*Z2!(0vc+u7A>~Cdh9I~TpRG<=7fIy`R z)TO;du__g4NaHly$!dh!z_>(q&~wQq8w=MNdIhBB7(ePNC> zxh&`V6`ZchS+8&&BSQ}-+Mw<%=SFs*xt(aE3gyRZZgVTW=oKMmp@#qH9wq2RTG5}J=#?t-5Td<=;$^b(qq_r#kVM99z_IAH85c7u z^zOhGDr)|v(}{jKg;WP;kfPMLG_`K)+78B{6pq~?%K+uDx-@6tyvMT}PRi?2cpc=` zhR00i61_e!0?DPu(kF*sV{V+jso#o?_MG(Gh+5jK9@q?NN@N^X`yvnSh-he2BY(iH zLPn$u6Fi1AEixBk+4{kXiRcUXv&c|CSg~J14d$pW@=R6B@Jz6G6hTl2vsIazVk6E( z;ABownP;9(Cw+S001_H^0BM#5(%Ukg&BSOv81d5Evs6y12#uR?LzjM$x{`z zM1J}*1kwkxs7@VE3ENcZmnyLaj$!FnWO0Ps9@&W+-;?zMWZTt1WEJdDI_*{sbFn$I z)AuTE_C(AOhJn;v_R{xdvBLHWhw3}&S1bAb9F8%PZ3bn37H_8xMLHXI;MPQudKKx$ zNE@_1ki{$Cv5`3c(hp{_UuP$c+_}j~|4>#M>iWi{QKMPEhcXtSIdTJN7iQ~)t^hNW z4Uv9bU@cgwb?)TwlXy#j^AgwhEsmRO9yYf(wr)X#xKq@l9~#8YI=WL+zlR98o7YpG zjyo;ucOalyAY$er-RZ;mBpV~G&xE8qBXuEIxnyzd*E5su%*+~4^GH=wlZ`ZaRc&@4d$=g;JDNMr%@`JfW!eRm2gIEB@X#D{^e?p9c)ge1-(hoUT;=I~@! zdH4O}c!9(=FbZ>J$#s-3fC0|6mc!y}4$l^FK0^*M>p*cpJPDkvr<0YnSlkG>ivvGF zNwLWUC#D^D$*>n86yKa+#8UzHvTzbU4vMHf7cS4>Gl-g)(3>z^p}I>b?O{;eJt`21 z*exrrRACHoTOIeREY^GWNSsq{&tP8g8UnZ-#L_n0@wj`HU(>V;{B)2-LGuxTm zV`;hAv*LOaxCMdSdwl^&a{~!>gAgK5p=LFl)N?=Ns(YrB9NppO=mT`yi+6)sw-33a zsN1)}dJcXnPd!GQ_639{LD93|wZ@0E#@j*I1V4?R0K=}Od)QSC@gQjT!%uw9WVaoe zKsOJ%O~{_)ZVLV;`M2ENE|)JM>F$UrfpFkeLomwA#=Y(}x&RrNE~7J>nxX&;@lB~N zz%}kT7T_J^%-QLw>S+uSXOcP_eg^zheR~daK2NMxkT?&m%hjvPbtee_0Y80;$?Z;5 zw5i)kdUK9RZXIg6Zc@^&SUA8}pW4k}joaOS-D0h?8y<<*s;d2qb^FiKsujC4sM;)} zQn9;$D$Ux`hELcLxs37hR2M1Lip}PZD;%nqyJ{X~HXmCUUZE>~cH@q=ZrnE`tcH!* zwqaJdBbfATIqS+y1PsHKxT?72uIl-7^3>UUsgBNm#K{3wD!r-9VpF6wQl!PY+ssrE z7rVL4M=QNVEA5=EyJ6S*widPR&s;aH($p7jPn2_y&`{A_RY!B(@vIfMdY&Cj=DIVP zs#~R7X}(UE+gS63t23YJ$ESy|*w+1Vlu7UvA>Am`jP8-i=r;@0aQ5S=9L@%V!y#{h zY%TNSvzb*FXzlR%s`h`X&d)~>z7u{SudnXwLpb0E4j;N=5$+G%pAF?@gYOmjj&V_Q zX9ZfSLfrs5?i=c?co&Q}6cdzD%;hf3rQQa=Xlr*%ixobl8X}6(Ck3A0hB|*9jdQHM z5$hHlH^oiofLH-u3H-Fij%}z^wt1@N(B}K?SXmMAAaNVpsL|X?grE~MvlPYw=Z`J%8WGo=3Wz{8-wTj4E>mh#G}Ds1tOE z>01qXhQ1(Kaed;gYsX;LRAVpa52@=+p2=>D-HxjunU+2nYC4t#eWP~AEJk|*gp(w; z;??9Ph!&8V4K0Vj>x#OgoY5~pnBU@@V{_2zZ9qlo`l5Q!a)Z^fsjD6j1bQuydr05p z7%hJLpCw=K<8H&zvx9dO*0>ddm=VIDGV;2!Cih>{;M*M}-p z*6JKnza;^aOTj~i{XVc;6uT-Ms1x=NeCz|3&5xv&E8rD@jUq7>ZjW0zX?%@X@bAA5^s^P_0x zCckCa%_x{tl#csf$MC{h0$0uNBHFS^V6_iM-N7$A8-cq4?tm{YMBwKDufylsk?2W% zmDa=MrpP;AurMW`5B zxh-YJ#mw+}gsz4!X2vt{kU9mvj0z+jt|+Ds+d$Y1U;YOK0=Qbxjn@a~lemT!{}GH& zLgEwfE7^+pwpTf~9S3)hJ6N?D4aL3;uUaz+asGv@`?Zm&it90k!-ZB@rtVz4_PzvWxhUPJ4if=G&9m(uch?K&4~Uy0DZ=yaTPoR=`)JPRdhp|K4Zn$RfV9@ z4;qs+X4NDR=?ASrU^l4rgJvd;asJP3&Y9)}qKi@&V~fo4%zWHbMTfhoshZ&8Y)=P2 zWces*rW=U*`GbeL+2;(Z5-z-NiFo@8UTk z(@pi_ij4Ft!e_Km37Ug2+I6)eW5zq>nX^C{3vEMwZO19~eW}L$`f-oY@n*|VXvd)4 zf)l~XBlMP`H!K^$(sCb8R-7t^*}IdQarUK6)cbid$|T=@p_AjgfaYomvvuecv+1YG zvCr0_Q<0}soyl{WDS=;)>G3^8XCx-4_Yj@w*Bx_K{$w#|`%8i64Sxohd`v~Z#?7`> z#8%74bhXU&C(Rn1=TDr3`H8!lChWtyzzD0}XbPBb)bZ06CeV=RBBP{VXmP5$ZaC|` zz*YwXON@ek$)#EV4=&OaIGJZk&!0RZhBKq6-`=Xre0!@F`}S5XAs&q=rFuKn<=ksk z>#~AM;WDM9p?JA}8`hO$AXn|4SeCkOcwOoS?_4CYDq$;Dv@)iT5=bZr&O7TG3}`V& z>|AN#T|%m{@VJnwExgx|2Hq2LHW@G%_Y6oPG(^@J4ho~C# z|F_e}yOK2zq89GKrGd_MYAoagE1j+{8{(=dItXfz_;0i5kSwY!v@w&M!=c1TDr8S1 z!@9yG@QNfes+eLuM_AnrdVCAq62Oitfj49RsnSXM~yCD74<4DjMqy| z|9TnVywSDrznh0H2mkx$v(di%cp+XE3vFAw&PEGY#;cHDnA62eys>|YH)@&w|8`cr zI6hiiI8n~~8Vhp`Ne@Ui#3h|{XBdz)v%+L>zGPHs;UtM)Ym=N6Ct0{iNR<}GGqyvo z&ddDgnd4G(#9(V-i6Nc&N)$5^lj4yroc=$ETs2VSfiGkIbFLdGa{tSiQOg|6b1_<_ z+Ct21DCauoS%@hO<<49YMgRxgrz(f7(=D{gxK5pg{uBo;ph*UY3SC_(vgCS%?j{mD6owL&FRe zaV;Dvq$&%oacmvehGvUkwS|1yM2AMTFyD}LTpQwqh8C>0aGj8q#*3zUZ3l}HEwV^5z zthR8Skg6;^KOwFST_l3l7Iq7%%EAvM#I>QrB3NzVM}<^n;mrwgZRlNfwD1E7f;Q9>7qsx^1VJ16OkB`H z+j((mw9wy=&v0cmH&-FK$*Q){zRG!zlb~PZs(~W+&soLm7x^E_S)V)R-@YNLHk0?b z&{;Um+{xfh)52MXq|0SP+@qZif)*Af2-?s`1YQ=ju%*~I_;k?RJE{9ZRi{gc>WllZ)-w9Z0XcT{P^Q5!l(DrlXBe%<@u zJ(;uBSC~~MFWZX$|7}oTp&WkiLC58$ba-^NFh}aF)>h-vILSiW1rgE055=Wy7keU3 zdfvbn3(PPwJB<|S^v)JuO^$JO&uq-Er%T%K(f#d41dQcVQUw$`&Pjj1`fyh z?>_CtIh8ik$erfM=_1=rP6)0443EE%j$vW=t{}-A>Z1Hej*qA?$r=J){hwNMDKgNq>^{+g0Ob%4`^}Bt+9&o~^ zkJ`Z4_lo;>3B}*s$J45|(7u)*pbzk3+CKw{8E>b4Gg+LQ&^Hr_Graa())f~2Z#UCT z$IQ{ruG#6mxTHpXPZC?tcH}x{>g-JUr5S#PIoeX%%IKTlMie8-xfyNsZ!y<3tF66j zmRfo^Yj^(q`uTHb?1IPY*KNDbo-?btb#qJimZn))8tnXil4d20G5dvh*ry0(`G@R% z`D}1;7mR4kXE%XlR2(zo=*~VuX z><-s87Plfey5(METS0;6F7YCRaiEQ`m}%u<+F+MAm~u;kA2Gop4Bj0KoOVKlUJw?& zGPOwHXU(R-g$jOA@IV%ZqK_85tew~xyAt4NuxvH z^~RTZl;hq25nQBm8q@v=2DQRD}_46xmgco{29k?pr& zf!nSyEtCoSX_?;ea%K07g^moKshh~YOA9>hXxUYiMS7uC!N9$jcd4Aav%D12)_E!C zF#E$QdoTD=9=Bq%(xhZ}gEyUr8DRfRY25-);$B#=0K;RonB_r#34vv zr%8XKm#yObhDO`GP>+|n7~F1M_^az;UPfRSs~~Ve*F(A%f`PL_D^;A(tW3BploA%| zypf--qlvd3lkoLg!{CzO2ygh~UgkwAS?tS$<5AU3dDIGbdqWldZgc$X2IM%*8}V^3 zyxSXbIbv+^MktAg)G@r%8?gn{^B@MLLq7rDuklrY*Ql!Wg1-s6Fg+Kjzr{-nOe^q) z?DW!tANIy0%DAVzFsd>sc&YmD;y;w=1)NA$uTFFWb3`VhnJPn(@X^1rfXHRgK$^ykwH5+=#%Y(jw4c@e)V1AmZcL6L>XB--= zE%cx_gK@jO2`tzRNbPs33^@q8I1%ToBg=Mo0)4K~b;BUB>QDije~A~Kfr{YS0OF2Y zx(N>v4|_0?jXv?j<##n{|}`zlGmvI8(N7BdQ@)+qjgnR(A|$2 z#82Ts${`gmjE>1p5-EV}^_kvi4ibT)TfEVMb4Xf>&_h=sW>&&jf?ijLv+z*|2REC2 zB2d9mC@|Oc(gPJdIkz!*wp$mAd9wnWXL_Uc0M4GCiGGh(`UIp_soW{ej_d`ij8?0( z>LHxIE=KIGnK2LoomZ(oir$M;Xme-?nimy%E?Pe;_ZLV8@vuO43pVAz_7H6yI#Dho>}>1q*xcmA7u_>ewI`Y0muq=TcjtB+ zfAjVZ1+ff+YwRhCRJjn=TEWz-UCk~t?N}N}8U0PTPt7$=yL?$FndQ*jPcu8^m@GD9 z8@$as+8u1Z(AwIB4Q)s-?dZVf2WpA8v?|o;YQu6kB>*)yw_j}TY3jFhwwqPbBvfHtXQt_Td}kmGkrSn z*ZQqkR%$Zu)s)LI#|Cq(GDmC0GHH1yGgOwkn%dwSN<+6d73R@PtZ~{K2z(%{TuHQW17jALuzm4tmvceieMv>p?7e}a zXsjo>BwCsDi#s%IBHjv{>3sA#|KvY)w(G82!>q8T4fS{BXzP+(a!b})HaH1}Gs zD4KV5uqc|pZ%|RRaBrw6TGkU@5q;hboR^dmEkn|UNID-$=M_B>&0Y3vG`8&P(d=c< zMKhLtBN|$vYQ)w@-*pP8j}54gV*8n!m2*r*%#(8GZS+;I(`D#(Zq9xOkMdv5^6z8$ z_a+xbb9=m!=pHxewUlTsREu=nX-qfplE%?WR*61*GN92GZOWKt(F< z*D)wN_bzMgeK9Vn90I$--SAXsO5*i`+`#o+qeLoyHPt2hlE^(Ka$ghfi-LYE=nbG!RnI|;ygHR^ zK{L{x!-MR49nob$il+iYeGZL=Axgn)Qgp=lX{7}i{tMss;LqESq^ zIYP6VYMaeEZk}-G3Sv1lm*>4suTT(sq2{v2G`B(!%d5GyLbD|gI2(oAAlxm2whNbc z13Kk)L0!VN^%rn1749D4?iHG?-GFnga1ROhdO!sQjt+i0}9JN&OR{qbkFKgb(1nc=u&-tJ4_nrOA zo;-W4wfA28^6vMx-?aoa32G74Dv0|ebdJjewF%lNXtSVe1Z@>`qoA7wZ41?>~`qM%madwq)28Y>sGJFF}I@jTBTYs9ew{ zLDvgP&$8w97xZ;O-x74YpnC;n;tOuA%L#(o1XcC6+zSLfj%~d<$E$)q>#MJVTxWDY z%e_j_5kW)o{TLFC>r4jXvFbWCK)SqzK)Gr>>I5|kca6|47IZm~F6A47ZWVNwpjQRG z2c&EJ3`p0;%P)<33+gB6L?E4GxX?xlI!jQgpcs(Ws!`A-K)e!ko$mxK4hL3aS@dVefv50K7rNNDd0a!<550)oXlX+Pl?YlO=&OQm74$HWo;gnn z?VzB~1)T_+O1j>&1g#LXNznHNJtk;Bkgnr(p&bgJXdesm;nb{K zlmn!-8YO7FaHk1vfuKg=UM{q62-+sxdxiFtpkE62EukG1lrqF>)gMS}HB!)N!aZAP z7YJG=+^-7ldO_b6?ma?#QqT*+{e#eQFqL!g9iUH}_Su3NL4OqVj-dAheJtp6L8+%& zozn&N5!7GMU_nC!jTAISP_dv%g31L|2%0TuuAmD9Ef%y~&`LpT1zjR&gP^MgZ54E* zpj506IGtgQz^#iJ^PjjD@k1*;59Xy<#BWJ8ZM`65bt({D^#-y4C_|O1<%*Ejv|=Dl zs}WkQ&{~DIUTD_{ZL84k7ursty)Lu^Li0m=U2jm@F;Hj`p-mE6RA`q8txafruAzt12KZA zWR$>9@k=e@l!uV2N}%jPYN1f{wgw~-FpMfX&VHayL|u+H^ILx*pB}_1%5E^S#OwM4 za`26FobnDRe8(K8{2deq++3qwLHx!WhvHSp0f}#x<8^T}1>gO~%Q=Lq#Xffx?og9My^%rZL56e7j#6B<)yQNhneB0g2VH4oLP};K)M76r zhHH%szZv$q@y)DWDcTBSz{4KM;6X|^;dUdFrDXVQ3^#FI!o5a@^H8_wNkd^uQ|#w( zj)T2pYTt_5#iL3hh2h^#E-gdKXGxT>76s4dIw6TNI*C%8L@7<8%t)e~mqg(^ZXImx z7bQ{Jk|-TX6#EfqycK*VnOO1zNtCCPDAs~ayqtHEWLzFquz3`C&|$VUG629Tw-DVs`>^PzRlMQvvOW$ zN@{?m?s|vjeB%am6OH>Onh{R4kIs~FCxAU#aqG6Ei#>cM5-l$q1-sFTvI*wVRpyo4 z6;8LmVz1t4|6kj8dVF*bb))NX+`e(QSl10^q*d3q>P=*N5R$gcnGIwV?PklGXM3M# zGhyQ1xcFu?%mQw|V_AT9Cmo^L+h#c2O-HB|BkHopk4f2|NPg1xI?p~jZZ@Qhhh+CH zdPsVcpJyhTtA&;|tMi-3L?V&G(~1fvOeiiW92<$8R!|7a*aG}S3JVIx7Zo8jp=d%e z36X{Abysmkgs1Ea_3i||XY`&Y$vc3P3g1brHy^d|l-rKjij%^J=P;$u zno(zAr}unGdXzt1LL22g=S;GBuFmEO#1o=ULDYNRB#URw&5)}yr(vE!m7M3?NxAJ< zK?-oPIWmtaeddokRnaj;I&FVxihLhV0*e=DN*}D=Q73E47&tukh7~x2F3a~)jNCY$ z6XRhhp49(_n|C}xl~+{gp+GmJKKTmzcDW{_%XPh{CDz*l`iPj8vA?Rk(-Z4`5f=>K zfn1R(k7rjUSDdKK*=XO&nYJYTU&&1vmq3glwX-ULg!0gTg|GqW30c6eK(4{mi{hPV z7UdEj%Vbk6P*&<@J`0RPym zU~JdXvlL4U7VeLAlmuhP4s30omE{%RT8#{mSo?Faj*6UPeREhs$Fzdjre|6M2UU3; z(~9G%j?&sS>szKU8R=N+PGcyO7nf6J8}NKXDbX;&YHqLo{E?nRBe{I*0sUPUFAzc7){S)5RR)bdN(_hE>@y9Xj_SP$ib*C73i`T0S3 zUeBAc-f+%+5DSm`)v>}-3)aURNQ!^+yDEd1b1KNQOg@Ayh;T*3BI9Cw|qqreS@@1EgzpJ|^KjV*ab z*R-iK)?Qj1zOggBqw}Lz(3*ntE?Dq{I%W>Pk3Qm^sFKtq94n~Hapvd-FN?Lm(Egi; zxM(~a!_S_w+(~5XvfH0fP45ID)?N_Xa#?P)WM>4a!u@-q)EVTD_eAs9X(~r~;WOnJ zs`gLN)yqF+PrlEdjv{%fN|xoufUhvPDz*jnsj)cLSIwRF(j2z+A}%9+^Hc?|B7O3~ z`Is!22(k7HgRyota~Ya>{u45P4o*Xvg|DH(V{C)Ha$5^^cOBks=R^Ceg|8j#hfIg> z4iAoU*7l2MBoCE4hi~xC&kl8~1$BCF=ybW=6CGjZ}`*gqlY=&8iF^lkE#pq5-tysHyLXt~{%649l!E{m6NnTMTc*cEa1W)GWF zk$pWP&gSuC3+MbLJ43hnP#O;mt*H`G)9KLPF)SJ#;n5sF1bM!Z{>t2N)NRe&aL{xb z57{TYWof~~zxU)f$0MdER)d1d_Ft+>+n?Cfx#rT23qqS-YrVWfo`yY#pV;n{Nl|0C~dHyw*PLQ}Zw<4`zPG*%aQ)CqJ8BTT|LG zHAEGcZ|dAqrP~9k@XXz66`2}3cmd|guA_t7pHNdz9bxUS?CHV7#vXC8j;Rr&MM3!P zT7TIV|A|WHF8R#-+cTAS@EH3U1xo7h9co4606n4(r{|7hYHn5daQoJ+Tft!9rCqv0 z`e&hEU;J%=Q(eEOcAkV899P_80gTrnI=IJSm??mTKTKQH2P8Ip#t0|1A8^ zLX0Bf@!DVQqUiH!0e|1h%AeJbS5G%)S~!*D*BeIBm1}( z{T>5m|8GK{)B>|_om|8NYvPPkb=~a~)%$QrE(TtfjQ)kYeUZMr2l$6Dgt$enUnp-}*x?<)Gg&|im zr>tV8N6<<&JM)2o!4YgS&kvU%Ogi27bTGPI6! zj#qPh@;eH#3X#vNZbp0*@c^P9{g{VXiP(bpA|iJ?ai7xx#J3O+BJw%Kdx%_ajv{`B z=%9c7h&0j@LgYBmifs(Nh;){r{Aij=x0P!uvgNW}SzK3`O@hIYFh`5Dx{D?us5MmZ$HewFqK*R`Q zE+TD8jzZ)dEJ7?soP-!fEJKVTRw7m*)*$kU<$T12h;@j|5StKN5L*$~BVLBshPV-N zGvYOfTM=(WycuyD;&#N_5${C23-KPr`w@2{K8o0h$o%BLkMV47Q65Z{6H;KhM2}bp z)sY!+lU6O77x96%_Sw(bP!^$q&ruO_=+0%w0M9z2(o*8*%RnwGo0YzL|@Z7M`v@n~RKI z(Yj`3{bYDyhnLzVNG`&2jma>kFnWAZWc1R==$T_9qZ`&Xu5Mi1*wom1@#JNVb#-{W z5z5aW<9Wic#2GUOer{Kffy=qI^fu`n_OC#zB&YhhUHx=Izu5x_8f}Ed@rWSxW zWYoJVTaUOfytX$kU0GijVJ`m~{NjNfWv6M`lpd>>HLq%oB*>-s1F90gu9Y|tWKDtK z7_0&*{vKV#b%hDUK=A7nb%R3H3SUfWmS1UTTj!=4C6$QMvKTu0atBb_kNOM8Gd(nm zpG2jk1hmf7O9^Z4umJ-o%{Go3OYywy87BMqBBoCr)`>Qx_V6q6Z7#ok>cJt>Yq!QV zv*(mMIBSu@!#PKLC`-3 z)xW6hcjDiJ7lKSEL|Q9fhl^z!L8F;$%}T+Nw!&g_bsawo;4 z)SB*7i8(W>=TueAoLy61=J*w*vZT7EeD>^_vz>sGk(0Wr=SZwQ$`Q1a+S*@L9#W3U zQrG1C9-0J0P4x|}PU>2f%5pODQdg!eWS&JWEp!>1+R~35<%E_wsTcKO0l|>@vNd&G znCc@_PU@9uTukBR9iGfnH)b<|EcNh*p1Mh;f+4s^Z*fwuQmHJ=B|fFk$V%Ouw%e*$ z=%jvKRiQN=>!fz*8l9ebsTTx3fn4UgMmP*#x4N;}NnM}8#%1DhrIUJf29?e&l?Ni)IJuf>IR|Am{Es!{==Z6-e1$iN}B&2TX!G;t#So&O&}?>gI!WpWGF*F=%wI%CA+OAPVD$X76i@BH2iS)QHi*71ISkfm!n&ZpneMS8gR>?TBZ-I1OX{5-4=O?rWf}P;yn{7ECWGTQFzFoN65QJrr?jWl5u9G$? z~)f*e$46^!XX$4-evjhhV(Z4fcQNArLhy#@@1FPH$YIe zutO3!ACbcmV!!AmFA(enti;(hT3oHZrut!)&A!s?9jF|&mxIth5L|$N@o7}CvbBCy z!y>FtX-j=Ym@0krwc?T$m;mcCr=TAUMZGjlTi=hXOCLEnCI13mDmxh`oY=tfvGoP- zb#Y~ZtC`TqoKB^Hx6w@P7}sh=(icNc&yjt3UDEqy<_i9s$a1B!p0US^X*=|mI{U% zSGKHaU9fu5ik7DO1*_l<*U5ah*I%J?DAc^BmAs{k8d2~ORYF#11uiZyI~O!8TG7~a zv6K0!qG#h0fj0=YzRwjkX8@{4xpkK8cNKl$08@&S8FG8g$J3UG)B9nzaN{YTu!U^X z2_!@^H~E5m95X=O9b|6y^=jh7nE~qNC9}iV>-$Is2hgpplX{W3 z6oicyI34_eg>O3L9B_Rs?nDv>asXJ|Nxb;}yOV8hLbMOt%z9t=N-zV#&G=O_jCJWL zM0!I3WklWFw1**O*DiOcIRoQ_TZbDDcbGaA2CZ%*_jZ0zwW6 zyc=}fQ~O7-`y@hw+@iT7GEM_Ak3=;Z?#PSc;<( zXf--qUlzrH(6tONuwU=%mu=~<6l-b3S&$^fj{P;?xQlyR++g?MvV@Y zQ&Pw}%o693sI*Xs`O{6^2QY?#;6y7)t+k}Ggc=CegP@N^?l!20m*CO99H=yi$EV|t z$-V*t*4i;fB<41x&Bklikn+*KG>eO%x;&~^gk@@cf`dmu1-DTpLLuuVez{6xL>e6T z!rs(Z4Tjpz;5PMT2SjkyYkUB&P||tkm~-5f{a9~-y|{OqGq_F_oAd(h&A3HnilWIe ztXO`YQ5UGS&2caC{e%_#5FO&4>t@H>bh45%rwsROw}DuI8;96HI`;U3wccK4|V6@xzNbU#8f_^^`Uu70W+ zX+Azl(?K^w&gSmvx+xKpgO{uf?zSs?*`}QCM%WZu7TJxMr>=65aSW+G#ABo`zPJ_F z&md1=*F-_)woKi^3A%+}1>s`EkrPa9N8;U_=&+K`-P3%0MykUo)%no6x|!YR(@ML! zz2SBA07O7hSD_MRLv2$0d>5eNmbZage=1LKi;QpQlpa_4iyc2v3V0_jxs~eb?W0#Y8@VQ~~pDZ67sR z;dd3zPJ=OL;#G#(6U=XGX384Qe78V(s*gA$c(cp!lws3{Jw2s@Pa)&bl~p+t-!ign z-tUb3YAgUSDyYKcILIgVF^LmUXBq^RlU2SkRAJ(9!yX29M6LH@h)TXCM4bMBe|Zvf(GqFJQJrry-44t z7U>eya600Md8UZxloqp6(vCT~*BTnD&*cMa1}=mXe`^wB(Y64p;`*1K)kcT*>39j9 z%O}wcXMsQR6w{gPC)G!e;i656d-L3z`*b2#0ka}NZx!5a^hG@RZY12BhjSv{50&ph zJd3Yp7|a4}2iz?*Wyh~{+#6I^MU*(sz~;ZZEe8vqF8c=A}WK zU?evf8AhGB<*{XfdN1R+txBcsMyLMhW(IfL=o3&?gSGMJwhrap&^}bf-QQ=}%;VS_ zZ{pzHjyUl(o!Q}-Pv~#Po!1u(7$xm6yEcC2b|!wRnJP=u7iGEC2s#tR%@1nfC(vqk zbyv%cl4ZPEx~SOxFUqo6vdr~l3E+L-ackj@9~CC9^<*jjqAV*U%T1mv7k*KeMUrKQ zC(A8gl%-m-yyVI9t1rq@E?GYGWbtD^`f-~-QL^+ibBCRL`WIyxD_O>SvMm3iEP0Y; zt|!a)z9`FJ$+FgyW#1QN!OYNM;!U0`J{$?hZN5G3oRRl=vMBL;Okwef&$R*OxAc;( zcL%$*Jzc%VtEV^aBy~70#7e|4)Qp0=ZTg8gzOFIkO7!q1t5wXds}p}}*!*JocEz5R z<~vu|FL>BbSay@JxdJjU_nVg8D(oyQJ(kT++0m*r-(|uc<6%cEd$X`-c-UuIwp?@O zUS!yHsN0z`0+%pZCaXQJ-E9vbTWJYc-^N|QHxWyxBk>Zze#EkQNc6$EBaAqd@821? zO$KA3*B$tHw^zc7IfY9c-?%fJrvG8#`#tK(eJnvCUg_FP%}f~*o)b&I2iAO4S&3Ns z6C`?}%ASa&JCT?Ha5fWrkf3>rs}ak7gG4Q246*D@{PcwGX^7RiDyjEUsHdAby3J%UP4E;RcYdM=WCvF97UDjIpMa>*rTw zD1XMdz0@FF3-&dLYIq(1xEJv&6j8(S z??@d+9J$!!Hp7y_i?Obw0`;?v*dnNalNU5}Cej`q1Fy|4R`l7(?o9lSp|@b>+@R>S z{?$%lu9MqoI9~;4Bn`|l$o-B?O)%d!gZ*_#>Vq|Y2A>wfcr*5BNEtNkJ1BzD-{cOe zWO)o}7lo#wH z`H3hilVx>rVGr3sUPb6WeQ<)?dq_kQJ=UL`?3&$ptUtwgKKFWxAA;h$daTcd6LhB+ zJdtCy6MyJTCHSxRR@22zeI6?6>Zblw(++RtBXsHPfsq=rmQjf%M^q2t6<=IWTswPf z!0oiR6}a5@)`h!eKJ6Hr=yhI~I?j};e8J<6*c4-ur+Kp^xTzoS&BsB(9Z!6^kkGBu zdT)8Q%gor|CeBkp{|BewdSRmN6XnCcyUgF3GT^u_?M)we-P|X5x7UT^lA)`c`zc9o z?n^yx?v-o%6s_QYzju4Cb`10NKL`G;EWAlb)fRF&Wq_20-_;a6)WFjVBc zLHEB_r>}?tvn>2jNOLW;TCl2Fx7rkUYB0dXyM*h5IwR)Jwcs5aqF7t7g3SFUNbHFR8h2ENzmkN_l{lgub z3Q*fZJaAOu_-Y%0_)|(}R(F}ZSKDUB9iM?v+(KInTyblOgG@v#Ae7@QXZqf1Z%nrh1vB1oc|jS4gugq=^a!U9U|Qis1i5&)%0N z=xkHh$91;wn?m|u&)(`{@I-SFQ)n+{oY@whCZzxM?A`5!vp!D#Gr!wS=Dp@Wd~sW7 z4|pDivu?GigK)DPl<7Cw?7Xj4zb1uc9nLC~iD7#Fng(*!}A;>&gh_M?IJkkO5?sUdMe3nv)P}gAh2KpOw5cD)1ueW+NdEyh;PzQ^j$BvGw$MH( zW}B05HQAHNnP+vEIr)Uo%91nx2Wn>RHrS`nzfaW^oD(fba)biNDF2YrD(*k1vao3z}yO zvQCWPy4OP6SyXJ^tv1yrJu=5a+gV!BrtXXjT4*~<3)+H+ZgNOS|6mT2H4nk~+kH zBVLgVD$GrK>}2)g|9&RRDds;O7g=aW1~;=^D*(wVwp%h*Tlk`os$MoQu70(*c48g} z_N|nC@1z`3+r*-HamjhVlu-PIR=lj)7A}_JlX{kGdvXPmGu}Z-Ir%b2pTmL)I@|Ri zfrv!cDPlXEK9(5nG5?R3zsm5d&3~)4ZJaJ8{>#-e#o>L&|CJ7=)uvbLUK$%<|L6FZ zrZU|*nC8ZM>u@^2uU_@%sgOmAAN_D!@9JixIq3okuBERvuBE5Zm+4mejQ*SQ3aY(< zR=~aVwAAwy#ds@zB<^%NYR266n&WDbxL4_4AJ?li-KEC8N=xc^UZuC&N^ZGaS0Y}e z`@nrGe5an0;8l7^+^e+5fAs%v4yN;bJ-rU5cZh@OK7q;Tvdk;#Nz)IsQcAoVyy-E9+R-+iFiI3^w^f9e71yZe#>1PsrOi$B|Kc0_i?T~u| z{FS?@;lPRK*9Ous!l@erC#o5j>}I-epwCkfSVNW109ZQ@GrM0P`Nzc)8KuZZm_E`W8u7*PJ(BeJj%WDR^<`9^%i-n^A}mO0rzY4am*^(7SP$?=G!nKrxF*zQ@X;=i^OlS5SK` z)*mrYnj5`5j((M~0XRFJiIrb{g~#3V#^tc3m70%9wNqbXK9S5Azk{)kg;{u#p~G&B zGEVK{N0|A_m80MmeAH*Yf+Eq=n5oLg@juHe@IZ53u>b6XZg`QcqE}qYj~Ib0^B??a zw3085Up zV-S#TWfjmFihCu{M1^((={jB%l#VNYoi_}m^9});q;g<`kKx9II~z#r*8rr;TPxIY3qQ*r-AxQ`2ZO5~muxnBwQ4M7J*j^9z}@{S1C!3v=D>j9*- z3IS=kKEfR=Xqd>26uGg&JyTG*$ek^6vxGZe&@w?QfcSRX@7yFbesQ7oyI;^lBKHfS zy$KXmd9!dwt#jN2RHA5)0!>k950Gxjf7ddnwyzJYV~qO8jcX^YaOc zRwJ}pK|HHz?n0r}30fvxuI;+K7D27TT`#oD1holwqtG@Bx<H3@1FM9Xx#L|yg65>zaRpCjuWQ9)&bVuC6KRSBvQR4Zt{ zpoN0!1T7QPB&bDDtDyCQE)&!yXrrLbg02y?RnU!sZWgpn&~`z$3%XO#U4rfrbibgT zf*uvrDdXv+B9deLy1+Gn`Lx zy*5grp14BM=$nFyky+D%xY^NYfS|t!`c%+YLRPL;&~5lCDF=19>iZ;J%39p0_EWU$ zfH>D&=Z8R=dmm7)(rSmGM})gaXwM0vy?kBD?*#otP)?TRjsenjOa#((oF!FF7&yp(QY7K1-Z^2h4u-ME;$w7B57UH1q~Dw5j0NF>4GK! z=~DO=l`f@H&@3RW!FoZr0O=er3F_C|(xwQSA?RE|7X#_?whHZTK@S6I4IUTtJ0P9o zn9zLqa6-%V7lf}$3@rkr^&2U)F@nwo(&eoa^c_J@3;MmF!-AMmk3u?-F6CrF`GQJ; zwA^%|tr5fzytIDb0@CgHuAsXG{anyaApBwUpBMD1ptl93_O)_-1myy0UCM-Z9+1|c z0Z41GTu`&fZ5Q+)kj}ANCyj_A03ilmBe;1U}-`3UxNar00r2DEs&>6y=DYPYmRtWb>q1_~CyKo;6 z+B1TFE!=}bqlam&K`NF!trfjVYuXq=6NEcMXp03k3HNJ4`=+2HL zQ$YcIwxzW?0Z40=FQ{0!(}lK3(1pTn6WWb}ZV~R!g|iQE)jI2pt!&7`#{sP>2cw{ z2BcTaKL|P~=p8|S6ZEkl7lrA(0YRC9Xhu_WPZTs*&~QN`1&tGQx}d0_GC|V?%@Q;W~p{CjwuGLQVkR zLn?x(WEAJ8_@x$c%0oy+6DWI;suBu!e;}a(h7r%k7+yr&juRYS zl)r%zNuW^kXac35X$x){(5@hU4FL$nt55(E-y_9Krr9>W`H531LE$@|IHeX8zRl4T zuWvIjP#5&9*Ej~IG{x2bkdA=D*VF3FIfWF3|NAD$ka9{A#eOFe z&lO9OsZOF?kVI)rqO4A$T$x0zaaJB;#*Sr_RHKcsO*otwXk{9A^(qH@ibTn^`t^9`ylxg2j2*A!<6bwvbGCk8$2TzEGZT-!0<7_TR;peQ;vd(l$Z@=G zK8Zy$Ckg=suG-OVylyIHm!CGLD#`0+C1mP&n(>5aH(ocJz`qA_tD;&EH%O=#-Z{H? z-Hd=fkf$V1h|+6hk%vGy81I)M*H)tG`|vN?jn~a5&@YpQX&L*g3F&@`76Zyl(n&PQ3_n_nY!~idAx5yl&p> zI?kGjwj}*u$#vs(bJ*mra@~8~oC>+uO}!|-Td$jZn===3ZyPy06oh`!DIPDG!MHa} z_yf#JNWrI__|5cs#@uSW@YT`_-^&lN_J{NEa}W{k;Z(F};ES~% zQc`V~<&IBTcY3V-FZ64s^OZsuIF7p;sZGaPQ^7bkH=@1a)h2q))7hRbLmA$@t?Odi zC0lq$P44*cgO#~OWgQOO6UO{y+CO15wG2Mh3cOAV(d5q7Gs8O|9DcAYw|LjbzVO|9 z!#hwo{^!Dd5Bf=ZM2Mtuo?N7t6-B&yMY}y~* zcrDf1aA_7AG%Xn3_%kFsE{(wTWKK!@QKM3I4(C`&duRL8ib7v@H$ia1-@iJd!$((k z^>AdjsZ+V;Q{~Lu-R?7)r9G+^-tIZ!^7q=`gD1NPr$@&C=oTYwJ=>ATn4apSk4-HIEcCbds!}>Z zvZo={o+bzdL8A_95OaX3_xBNbo?=_}A?5<}KW#XU0(Q{$G(;}_>>pkw7XwG|e>B&1 zU~!cJEFpSb)Z))@U!(i`pYP!cmaiM@;0*?M-2WsmS8SCHU&hPTZy@aPa`irvDZwx2 zX#Hhu8*sejI?%f zH9T`1)7s60_Ibs7eHLeZUOkBx!NH3n-{zKKPANZ8|H$XnAP6cyR`7ZCvn(1shgE@KIbk#Cob1_av&U+CSFkmaF|^WuhAT$9fX~(|(DcbiSpw z3d27ZxBV%F|Ev6CHKGFXkEJR%Zlc!Yya`R>{;`-c{;_Uhp16N3cB=7@#R9zkv8cZB zkF}qftbZ&f;{LIiiu=c6ivF?qnYQwe#Uop(sQhDT9k~l#`NvW73zU?;-n5Kq{cwYIX7! zTbVqOQOGL;vv>55#m$^qESefyMQEF-H+uyBv8Yt{uCQndFYfXx?h307>cr{xn*ax{ zux>-S@ZN>rw8vPTQk=uA8yCi_VC4#nyCKCDmTI@h6;=y!Cc47n1W9m(MM9748=xQD zU{Rd}H&`UZ-C%KS65U{JMg@s(u&5{eo=`ow!J_Ius@S*7#|IAGU|j`9zwX>%api#< ztbE+XC|6YfBi&%#4DHP-2{%|}IE{PUME$?&2CEE1rrcoNk%qZq++Y!l8!UEI+zl3o z*y{$1>!Q~U7SnMzSoffyxErkJkV3?EUz0Zrs)Rjcj&wRJg@`7pQ34M z0eT7`oj)LQ6LcWBgDf6aQ^ouF42lOYuZRSP>L zfisXCjtKijpLGMl@m8E&qs7%)WlEc7+3YLLei(W~rR5;x1cDp!?>KI-=3%NNy1|-? ze(2%`i>pg_Zm{I?7p|~6Sch>n1wU9>Sr?%Z{)Wbti<%Z_R~mGW)hp{dkTY6B1Jmxt zGY>d8f=&I^t&3KHHz+`!q0z@>XizUw{OTmT0GtH({)VPzc$9>{CJt}4 z>T)ME+SecNNiy<6W74k0iw;~qt-R0)6$aFNgdeizrK{jiI8>NHf?s!5VKx&Owlx@T zI2{WW4kRI@)hZmyL{_M!v31F^#cJ>i^GV7M)vt$Rv(?H2TBvXWX*p=w%4R1tR#iAq zXIfpq5^Wu)ND)nftGCwXRZi%1HBPyXzf?P{bV9|x-=UQmM?+_%acdu(EiG!r^We}V z)m2V5-vWgu^<+1?s;iLd$5aZuvElPa+;)L7kQASph)!s72Frp|u2qe2p@vDg2F@=a zca|E-EOiB8NqzN9G;`R_uBejC$sW#*iDpyAGY5@Bnox<7io_=;4xgoPz7ZGKnaGdRwPXGrmI=>iaz$HtBL!%$nd+-Rn1NMgU@ zDG$WE9kXdEI%$R~<*iUsh8caC;h>)RGlntoPN;>xRI%pG7{l~?IOJY{^6H4>PE&P6 z4tD%=n;Vy)>?+?aIPfyELbKDZ0#{vJhN^ooD`vAfOl$Onbo>=7;lU4nBe@FA@hw1x zj7X?9Z2(?9hE^_Gf%4|1aoI--%YqX+R}~Ztsop)eCrb@cL2!CAkwx!hjV&;;0PmBb zbJeL+c?kr~uB4z3p=^$k#X;W$+Bnh%I{q5?jGBUFqrAzij_3Kl4ZThb`a|cZT|mWJ z=~XIpK{gW(Tp7ljupnFqS`b~t77S>`52Na$D?nwBNCi%4p|23!4BY>vy$BFeF2h1g zLOfW^pzT} zLiL)wEX<0~oAv9_Z5u!+Yau__s7CTPJi;24{Z`2eGNKp>fF~ zeMGNP(gRiZ>UDc{m~}@^s>2k4mm74DCiqXPt8Z8YmuWbO#XEmZFZOjLC`?)I*D9U! zf+uM&&7pOn96UHL2*S=gTC!eoi-RX&G1teTaaSF>ILs4gG67p;DOUnH!JE9P$M^BKmMMY;rC=ld_j(&S-yI}g7)s0IWcbJd+s84j~B&LM9_Ltycdnq!P)|Lw_Svt$U_EG&wGdH#Xw8s?#F-k=Y7d<23(3b6j%jr z#v7Vz65NG1bgW4fBQeaD&cyJzPsN9zW}Yae{VM(>#MQ)o6eXXkwD?JcT8xnMy!(>^ z-Z6|+>fEK&aYjiYvRlBtLlwj)<_r<_i-NatkF;*z9l0!-<-CA6TKhD-V;qTLWaC4c z(Z+q?9h0dQpF_kD^Pj^HLwUSC!-^2G|SN{H0gne zPqFxx54WzTW4eI%nGEi>CsCpvg}PyEV>?RPggAtED{h@S_41qb-H3YTHK-bVkUa+4 zFuv|!;I>WE_wX?x^B`gChdaIp>xilhcw>V64DPma?2{g?+!>C~Z zuf#ra91U(E^iK)qIYn0*=5jE9pqVLa;rNBKDkT_kif%Ll>mabp2(+^K5Oc==)Np?z z9H(fXC&yofZgLDwGd-~ZcdwmwIG0--(ZZ zsd9bn7WQm0Qh4s5g1e2o-B0K1EruVX0?+ZQe44wX)U>m2`r>AL8kkDjEXRi~J~zkVwirr^Z87W!OTKEb~cL|I~=Ok`Q5AN(tW6n zi^UqyH=E3V0-f9NNpD4=gRu@VP+l(tCI@(SqvQukyeUy+VGMn*XX*KvB#d;KReBgi zM!L+Jas+@8F0-b*g8z)6Z}lw2KNaXctMrG+%INQO2TxfDI%DYDy-T?Vm60y9N>_o% zNS9etE(MhljcrRS7?fdFIZo1rPQ@t-mD-JVl!#(&1pcY01KhAd;~=1}R$ zpfS>|R_P`H#{Wk>X?1mB)i=?#RzK@nOL^3)z$+ZwBMrwnWPs~d^r6S26Haz2`i#M3 zKe3OS5jZ1bBHSF2J`l;&c=9B#6R=_|UxN~A27%tR=&DM&N#e)3kpu}4PB!kfAVJ4Y zr+ED^B{+qGIThui%Ik3{*XvQrcuk^DE#qEmn0CVS%_#%u_-gpq!AQxuehR9|^Hx*Q zN4u*!)msCu$GkqHu;zN}!kI0xgalPbdvhAK@~yWi?M_QN1=nl59xcpw&l+I6YWM)_ zzRGx@8k^v43i^*rAZT|{MYaZx)M>i0xOmW1(oP3N&zSBgPVz$qw=0ExjJjtO#qq?G z;H+%6yK_ngTUnbiFXJ3F8zyDAB;X7{VVnapAUCH!t2!&gorBdlN(yC2E0JR6^w)*J z;!3_l?{6zJ?a<=0mjn|0nc+C@8nA?_0DH<7o*|@a3(pkNm-LK+aZmvhR|Q-4Ke-x~ zZEs(mHFcs23+*KbZ4!5H*gQG&tnM-=8#eF0=GyKuAIHM7IraF>f2eJty>36g+K$N- zl+3d%^kz<0Tb>sFhJS2M?C>Gt0OL;aeRTV>%-g;Z?|og=zeTR2ZhvlkfHAfze_ z!dq?4wi?QHt%qrQ(~vE*XSRj*9^v>? zugx@Tt2A%6h1`P2@Q*WJBbgUlXftbfa1VFy4sPRrrt4IkmPq%SEL*7TN|-rCMpu$8kXmt!i4(riO{4b1bxqYQbdvx>Az$ooDrZS=5+s zp;zB|qOa|9cnq`fvv^($ZHH5{dAHh>ZHnv6x6t-EinGwR3Q}Dg!1URswlz{~m4zFG zbexl1tr2)m1m}07+m}>CD`$(eqYTdr7TQ|$@N}(6Q*B*#NRiz_+Yetfy0&&(6()Aq zdO)(3*b+hNu4nNoH>rQBlZ&fPE-q;;ix+RlxX(nSl;81{*ceI}#aLDy7noIE$NHTNL{77t@ld^jY4a6CnTQ!>}2cOEnVlBV+Qkh@^_dX{;~PrwZFQS z&u6bGaH-Aq()j zx_EcE*LZiBm#xg_XP(9FdEL5SFt+~<&xM`#z&W+Zgs(oLD3-zZvGKqFYy2#)XJGL8 zwX_az&Aop!2!r{s@*YTCALxVsz3x(G;Wf$EZ>w=0Fb#Pdw<@#ji|?Yxi0nZBI!K3=04?7Rc^OuhbP*zJeu`O(JsKg`9~HE8qvuo=I4Yal@X0(}C3Uijxb>U@A) z(4tRZEWwp$r`}3-s&8GeR&!LjZg6R;uT)d!^-;$81F2&m84d)_IvZ7md=r)B`kx__ z>zm@Xrux?0r3z5~45pzz)5rFv!Z%erZqVw4EIVS37T;6!v~dfp@(0|h&~T|5h|EAR zipE|~JNodC02SD3IxEm!f4k}UKPf}|w80O-K+i`4y??5t=@lTvZvVQB5CuZ{=s9DN zKj5pSMgBb4`cFL*?V7FHWt*JP(o|ow3k&+$djoF&)=Bv&)_1NQ`ek7B34}+Z+70aK zA#Q7agw^;~o*fvR>V5!*@8YxjP{F-{>>6!+pGOA{aa!6pyAagTrA^E8T@3|1hURHt z-)xgu-FQj8Q)503QlB@g*XBY|uY@JVua6a99gn(3ZbjlQlrDAP{c612YPDz6?6i{7 zDpoeOI(AEA;&upiAbaxHx6W;D!k#2m3ttVILp{OafZa=}_GNkYQnG07tub3Z;yb!T z6TWJ##-;^Td^g`~PwmE(~fLI=UUHz7gZ`)x?Lr#UQLE?mk0Z5 zZAxa=H7O;TIam2gG9#P(C7F2}10|US8&b@@xL}p&eldyUJRAx@e)0tUQ zp3e+cWXwGdr!4;Hvo~tYNAx=p{EktGX}-4dJGJ;NRHy~Nyp-@em*aP=LR;}WPNC-o zy$+=10_eLU#VrInO`&q2@d_;wv>6Bwo>B5mK*b8}0h*xDAAtDS)$ja8xO_c6S?t#8Vl^bfF>y#ew0?O69LLZ zbd_B!jaaHiQ9)ILY6Yzq)Fuc(<@G^Vi+E|qIpK3cLdz0Fj^^eFjWd`U_>_K{%UP*u zd4f0=n#)#eZjm6iLvz_`&5a7;QK-2wp;ZcEdo{O4Xtw1(b#JJ-3x!)JXc>^^;zf=6 zPBp{%q2apD4j{HA!B7++clzoqpOG(^yFL8E}QF7pJ@(xk3;hoBDxos8+OxuXTqTBN4U2h!!O7TV=N zTE8m=T`k;i2<;|8-xcl;h4vFccLV7<-W24=`%GO&P|!d@5kW(Nw5A0@D-v|RAZt}J z!)X9b*S0~>?Sgg-dP&d`LGB4QZ>FH3g2oD}71S)~8-gAH(rtT4(Bs10C+M(n|6P!^ zAerHOCbR&yq3H6`1Z4v0R!$aFE8O{l>IF3lS|w<$peulMd7A~@F5Ei>-7Dw;K@S7z zyuTFMuLZp#+;;^X6LbQWVBNMsf`$tkDX2(Lv7iz`<$|gOog-*D&?)MOUnjIn1#J|x zSjhmVXrrLbg02_zO+mK^x=qke z1pSMk9fBSfv|G^Af?g1`U(jy_{a(=9g8m}tuYx`jl#1DplBpN1=~YFn2hfHFK+bG*9IG<$X9I@btoE08YbcA?!Vv?qnOS7>hu?V!*? z&`;NqC7ROYiKgWVjdm?HEh@C**`aKWTgE^=j&q&*Wh*1xJ>PBMd(S8$WzbOw52#;k zTgLz6S$X^=c)W8`B`f*gN_00Wb4LsljUCEJE&o<<3Mux{bY;YpQd(^~0V;~Hiy}Cua z4TUL9vG0yCuMFiqBcmyNyrG`Vupp7Kn@-}CurAIcb3zhjR1)Q^B#M187B9IbNoH{p zr6q}C-`K><`9_kAeJCH7v2P0El&6z&y^=&ZEEM+Yhe-Xm7(D!P7A0lpzWFvq(g{2H zk8kiXF0VG8OHw~Vte9R=R#7vLmLAoUNU?^rKz--nk+zTegrs()OUiz@@!!&O|8Y~1 zR?qmuOFlf5ho;>gcJ050Voe@+Le)^$784v#wfwr=j7xMQih$$3zgsy5!jItxJv@JGQupf|0m& zNqp$2o-1+P^q$+e@^oSWr*+BC>Y38dsUpX*E?I*Gc-b;7$8${dKVe<64Ec|AIcr3_ zu`U^dTrn2)+fBV(jg?#%>yitxy0&rg_k^gEY+bT4g0B*B0;p}&f;^8!yRk0$8=Un< zjqwx)sN}j>m)txA*AaXS=?O}%8|#woa~)^zS}mA@e@d>4bxFR>dkAvgpyaw(mmGm{ zduSf4Ja#Rwi*?C!(7rz|_LgSq?Z&#~8FgLdy0#qLF>)O0 zD6C7i&nkGrW9)D%tsRzil+>1Q>bxA*AWIgOY&hu7+!AW5+!D>6xg~q^VSmMj&g`;| zSZI&K%F5bfS(WXb(L?Au=wn)}!>3AwmBUw+6~RL+j`|kIwgm8e%qi=rDClBqv0IKp9n*_wD6uzStfSm1++VVj4b%E}%&Coad^Ngh|K$r~ z9n%+X_=_9clKqX!Ej8C?hX>=J>F8C_{`{u>trNmK=46+Jca-<5?3iA>>l0sD`0m{u zvw|CTyJhW9gzui`FA3khuhM<4(tS2I;g!qMViWd-uZghE4ZE@{COo_5f%3w)Dwj+j z7;FEe{o~4xIZo`<-KXx-x>QbhHnwC}tYc2Bvi(<;;mW-w$7W|i|LY#3q8-x_OM=rk zz14c5)&AJN*o32()sR=xQInfRfeoLy;f=i1hrU6yq@*1Tj#m3`kL^n^yBN1V+5X<1 z9;!Fuh8t~to~kC6M=yK4qr8Y#As21xgk4B&6|((Mc*eeicYc2C*si04+n-LXL-ilq zgaWHzXHpFd8r441+H*X#6e!mI@}ak2t&{d4p}TYV>OJK}1k9%L9Ew8B%&(GjO6Hc# zkx^gPeq-)V%C^7oFjp*P|5RnNrcY1A${B0N#Cd;Dw4e%biiKLz26_J51HPnB=_Fubu8IZD2Eth#zeS$N}9s1%9PnbW7Qxz1Bg1NAWd z@jh@=W6YRXiRvrJmb5=rvXl1=$L40ySnJ&OqtJHa{_y4_ST)-|IV*e>@3PxIiH0}b zi%M}6l;xgN(sp!U`09T}nt5tzvvpp{qnt{+-U#n{vwzyNB%QnKjUF1Ex9?DR$1`cq z@{x;EcIvKQe}dUrR=EGrL5zKTK6-RFU0|mnIOqU$Wz5}!uH>}7wD=dS@X#G7!px6Y z$3!(IvG$Kmv-SV*;Ej-E9}C^~v05oMu0~tYgZ!?xbp*g_m>LLg{2W=3Xjsu2X{~AB zZC8$ukDU`de7~{=+u^fg^cZ!~t4jL^R=I)ENmqzXS7Cdw@W^;qpXT#BO_$r<> zpiQOGt)l%&WqkJzkdaLf)b#eFm1sK`U0TTvZ{&BU4J8{U<+|Zbe3w=NW4iwK(yS6% z&dqGta1@4L`F0E_E4=X_P;5)jl~7UjOJ(~Trhi^7e9fR&u})?FS(#(!4p_t z+n=s9)3Ty{kE%E`QLXnX+duKBwGB0tcbqe@@Wb*=``2U~ZrSj(TQYIoz|~8!I&ASr zE4KLe;OvrDzUi4YZ&h|I8&%fPQruCBRe0LM4V`Z6W~{$$v0ZN(W5PH!EQ~FgR*O<% z?a#)xgxV1|W7Vx}Z-gP?i$aL7h+Dd_y}FjwtopX?#Y4R?E4HG|P)N7=P#8Vm{sBn5 zH&%^4^cjRe;KK$@m=2l3{q~U7Gx|{3XKKjGaEvP!dcZNPQ^86o;3tXmc}veZwrtzy zhpvv#*YZtog*W~gTWDLJOh^E2(9iHesCJj&{@Wq za!qbtctYWLvMkt;GGdD5xyJCNW-qb_`(nF$2lN0XXCDtRo3^urM2DtckIn$9UDkMM~gI#BmIIOpYT zF6|fI(FqlH9SF6T>RvlE5X13!R@<>-d>!mGw6D%S{Fn@<-;CLsPh`C?wxbXI9r<`X z8`w!fq47N)TY;*c0ZmBM|tHEjnJdRXNrm4d( z5P2=ziOA=Xe2;tp@foz22QAxuAFjhv0|&Z$lkudJk|#4=GLjJ-53U5QOk zb*l16>%}egETc8TYY&~DNOM^@Pye<6mY&Gv^?>C%qOsZigK8p;D-(22Xsqr@hYi>L z6^qy>f&Y99(7faRrx}0dgs=f-k+JJ+mE+@uvB$#muaG>xh3AxDpb6GjBI*a5M706r zmey4;{FgFql*;@?CZBzL?w{h}yL7;^r3FJ6nNl(yCUbDPx0nV&?`HvuIp`_0-y^KU?- zh2}bt)0**zqbxLQ z9hp=XnpKV3LNjeHCt7G`h zq&yaye~F~WLi1ZlMzsC0)bm3eY_El8HUt)$r-OVR1k?G0hEnf9kQyi!>rDnHRuaI7-uG-hcTJA+JS*)YLj4~nS{83W)4lFfo9sWPBhTW z{)K^NY6k<&)Z9l6<2LoXHPuY(BHfy5=Gp>N%`b!hKi5=q3A8ioAWSvCi+6YbYpU7z zE;>b-YMzF(t2Nb3ET)>-QE^kv9O6*+z2K*vmdVx8Yp0p%xSi&?C?#&E`68r}?KEEx zYIk;;e+YUPJI#-R6t~m-5>j34G}GpDqMhb+JpYK>Y0gE;W2gB7DC@P;%yisNGgDqW z%}jgjG>=4CUOUZ9(@ry=?Dgm29SF{XI%*lZ5FnjDAof7_1%mU*;vv{UmijSE;a{*! z1%m4=pWTo?4L=}$3;)vC33`n&8SVl>)xr)*;Or)cBXZbsP{`|6oL!^EsfS&OX$xAF z#=g>QZqP)=ED&I)c?A9)$4+w!?(h=rG;>Ep7dy>dWV*A{jLT66CYlRTd`7l=QrhPL zAsEMPTwCwBgVaQGvX?;-91_Huo41jDZcy;s~kLTU!SkuJplKU74iH>+}C{ z_b%{JRp;9H+OspmOm35q009CF5JR{K2?>`#kW4ZI6Ub%A1rkL9gaDC{#9TmIDqw;d zBMPlOM=Oe2Ypu1dw$^)V5Jas#)@p6lwiYk7;^la2tF~6Y=Uum%J$ta8bNWBO|MzX! zv!C^>cdhlV``SBuzl$=JmMp(CFs6H`YVtED;MbVJ9YsR*naMQkEtIOy;;vG)qA<=( zrfDOjEdtISO)7+wJNmYh71JJO%;AwWa+B0>=4U(xf%T}I(Y#ernNfa}LBIlYB>a=o zjF5*6VMOe48dWJYV=zAB7}eb2;5LwrniRf@OQw4!Zq3sOa|R0^eCe@mLwnnn4rZ+4 zL6Vao%sh+An4=wCM zZVQtco4H4FGWXyHq45@i(ryd)OiQk-st*U7-jv+ zW=poanHGf1*v46(s{Qsf%2^H@O9lH2z;Sf@Ldz5$S9dwxDl=od`6B$spO3a-v^b*7 zLT1ySdFj5gN|=xQ)JUhn!kB>fF(&*wA~HTTW{_hd?*yM2ycbLqZT^&zIhDLN!`9%Y zX1ZI&(#pZRh2-cS72gF4ZW0;+GfW4ss!8;;(nt`FiDZDbncvnkY@5Wp#6;3+`-UxK z)Y2`*RDmT*H*bynJ0jfBh-hi~WTZIw>S!W5jVM#}lT;Z-67=zr;gxbd8#-Erp>-q8 zku)87n)Gc_FI|K|-}(>e?sQWZA4?0dVu!RpClzTqgCpPV04wwf72%F)^d#Ql?r;(Rl)U&f}6lc++Jfo1)jhsi(aFG z96m8w^crip?vxZWb{Ks8=aH}7NQK>Wm082srKlyXcuK6gYcS|D?{9?L(DbK zh?L%3V=mV~^r9l&i|FANGv*no6iycAd{LN_?xGT0AWCqGumZZpFi zXr$1?H9Bg<1r`Zc;BWo>VX-mMm`HOyJ&2{_jA8s3J|m6P>jd6{Gxrkw(6JZqwB=qc zFuRf*H%kZkOrr;QbdV!YnRcB{%IJ4(j4?(s&4j~T5ZRJfd;HBZ=R&2x}-))P_; zj~J!W{8K#R5w5cGJ&9!KFb>fMi)YfGB#lRSAwC12M{tT47>!5HB!%gtdwR2Lwp93$ z1*GpWFvG-(x_g9g);Izq0(~w&XPDwV#_Qk;aJz8k!{{wD9_3@9AL~J~S(z_d@T2Lp zg4hdUCy}BdALs4Zff4EhMam5;jK_E+_rU88oLnAW)cPOiKGU&qI0Gm5AtSL*@PVWi zR5Q`&$UozYjvv8w7ct7(?30}S6DYbP$X8ZppG>DLe;v0BSK-WuC2d&eX2z3aiGCT> zA8-~R&+K|U^Udc4Me}X57@V2$(ir-)g&U1Dfg0-EI^>rQdViRX-yzr;yrX*zo>n`= zw&I+*RZ1R2RiR0eZB$nH2@k~Bx6vFvMNn&7U`0M8Mn@(Ow93dwD=`XK(Swqo#(7S? zD5<3}qRKi|qu?DqNTkuoXGKA&P?t48?g7c)4V`kSbY8>+8#$7bWyT((?yA1_!3(hln$=sDkrF|0amvM?F_9NcJ=$@nsCspj-yaum; z>vEiP7s$vl0P&*$Nyr9v&lp;0(&Ja!dWX$hFC=6>*?j6jQHFnS$Cxb+G)I0IhptC# z3wZyzeKIL*)Gk!(<=bbIw#KSC!;m%Z;ChlZ(B~*EUKW;j0gc_M6oLB7$SY`lbQp(d zD4NaJD!XUUf;|~ap1`fap24}~Za7LF!;cf~{v-1K6&yc=;})DHZ@|%vmbnV&S)amT9=vsT zi5GgfP*?Qn+EQBU%#n3yuoK9MvB)vDEDL#D4X;y>`v@m1ESKf*6sq8CcvJW51;0}A zFM{um@I^OE{-Ea2FVSH|$0@u!D%f|l2rGOzDw!h@zUUW{|AXcbo$AVkpGx1?p~Od8 zf)#pX&PZwR*oe}jBv0~W_flr2NR>pD=8#Il!E1KANbN;=MiT~(!uz6PZPk*j@R2C~ zD-pivX~|!wxoF)Nq5snH0d#plNZ`4z9Eez9m-PM&-oKX-^rWc>$aZw$wNWvAs$x*1 z9xJ>f%6mK-FEZ;fhk2U#nYkYQhYm`gd%Ysu^jl2J-1nsV2`o&V_^OdFW13&o51;L0 z(5i7RCXbQ>U|xsocQ{L~hhqb3q5)^g?Qo<(u~*4)FC4>A;|`o9KZE0&ct8JZIG4Nx z$C7vPvy|3->oJ?rVX|RL_Hkq6I0!8&g4Zhi{jdt>qG@mp0$hr-Xon2&51vQSIB15L z_f_eELUUtF0lX$~Y8>j5{Mb@j_uVK3oQ(dCZyYs7?xxr`!|Ne{JIK)lM+e@3p%0lB zlUPX)m_Nexdz>YE;iyBoRNyQ*2nT&&Lm%Fh9EM{p$~KI%^bR-*@0Q6W`55~a@?^)p$RCWoIJ zBk9|$MS1Xg6H>3?Tr?hz1wP6QH7bZLnMXro06#sTw&N_Rh2uEDL*zIYjV-oQsDYNa=krGpE9)KF*R;aMS`+7Rt}V6A9!~ZACBU)qWG;*JZ$vpc=km2qO&FcEzQMrMjBTSMU6zqgrLW~ zL_~;ed@stIm)XtA3yOY%!l&a5A7h`1utovp&%Koujxo6(quhqSnmC@ zl&H{iKa`HSa1>@o4WQJMdE)fv5PlR+lX@+MY>)89(lED1(mz3$XXRhU51nL6yZmhc zI?2d(U;uzl*wrqljzuS#tu8+fKqoh7P2Zr=IilJzAwZuU(dl}{7s!DGovxRCfhFMR zbe#YON2hc8gz`hU(wT4rOmwdRpp%SmmlpugnXnBGT=~H*dA|TiCmHMxWFS&HVWS(* zO^h?#8A+ylyqgUBreU;q_=Y;_At_0((B!Uqe(j)Si z>CVOy%uPZlhf&6~u?A$Z3o8Xlg30Nmh})RhN9 zuu#yQcY5*DB{Al3e!%9bf)8k_PQjmQs#d{=B}LX2g zMgA4ckaH#MS1LGKQldzdD?cKrV4+1&xpqbb75tJ#P`T*kKRQlhI`ahgWb9*kMY$`e zLXw8@%iSKhFR6Zw@9 zYvN6bRCWDdQFA_-i#v2Ng>RMxal0;%u+F0b(u=k$5tMq;hGJHYYljZspqi2TZWdAs zs#Hw2W0)z2DtO4L6x9{!IS{c;0ebbC4zfb7FeX5Lpe7W&GD=M0i0*5Z?iXs^*DBpr zvA`~`f=XS)uV6&;wIc19Umovbsf04r4%?$-EsKsJt#X}Ry*i~{uU4;4sTWDOPQ+yW z?UnJWazGEY=VFyL43>TPDMyF)F+Ks(MGW9hp}<+^5DR z;+aWd?vBw{8*ofKtfEoP^>lKP*af0A>ZB?y^2!YXE5{a{30otg7}7*E>|A+8k5RBq zQm3EQNkBz#wvJ$xf+`{h>n>8bS&BJnIWx6LIiu6EPezo zaFci>5Ry`HDpcO}LLfm4)k^d^m#1YF&^KgsKy?Kd%P7%g6+9{97R9by>bU^~74*ux zXd$RvlO+p51;@%8XCbIuvm^^a1=Y*qr>}99m3MVkRw<|gJJ>;~g2-*W-%n+5+8B@y zl(mBNmo-7vDM){C6IAV45~@sKfL1V9=O?V-3Qg51NPDcwxauWTipMcDEo9ZxjgujF~;Bz(O4PDB2bS^s8Ooi-6bEE5T~LIN^OZ#n(vO{6durA z!C{3}4&yg`C}Z${qFkVy`V)=HB}!(VRH;>7L8<1Yp0|TqD)X)$po6+WQtF{Os068^ zsyR@q1*%+vQkhhb(?PY$fGV$`R2Hw2UZ6y!#r($PFt)Ry6WDX8J5VHt_4XXr+jCfN z&!O&PksQ|Bb69WBVZA+v@n^Sxl0%dAq#cgUBPV0)k(06c{p0CP+!xW3isMz)eDz-{5tp2j@){%r2RQ=jy2d~^6TcDg&YO2XJ-uS}>V~dcJN;h@Y&nZu*O_wozJQ+VA;40%ss3~rEn2Dc-wA%i?}@J;CBRCnlt&}?E)?U z{4QX@83;XD$Fe{!(pE&RBWq(8aHpFnTrrEY1Xj8%=kQ#~2IbX-FOl(KxNW-NxkeGF z_dZlU(EhH8*GjJ09ozr8WNcA$QkAT_I#gmzjkG>}qfn=o(yF>?^(ad~t*$}cCA+&) z0+d=vsx@=G1*J~-Ls^HBgd6M$H`o(yuqWJLPuTW|P34@f6XhR(r^qYrKoq3c7U{se zrnITnCDVLL!gN_2kh<1ZGR<~vPCrLdO4ftl;Y6r2q(V(vv9N+`HC3-*i>AT~{=25? z75tH=!U{%epSY;bxD%X+htX8cgqWbDs)e+FHxoy#cyBtHQp}GY6 zyMpRgT(9a>bq`1>sNRr*LaIvD zdrhEJ8K}MhO2Kz^AJE-GRdSp~Iv%Hpe@tl{QLj#^7ty88u8W=kA_>>2{uoKvR$xxq zhGLWDx2Y;&)z&$wl2)ymld2$8N^$RUBSYy+a>R>d($-r z?jln}hT?ON46RGQeoi=V+*Hj#_#ZF_BDs@%e#Hm78`Vgmz=S^7_#3`&A z0rl|M0wOulr6Rwg6{wD{<`?t>1=ak57Or5_R1=9vAj+DGOuc!A)rWnYw6#ZsM_4t- zpRH%Ju!523n(fiWpV)c3>yuF_t*I0geo`k>ui)E~GFk8L!^-hNM9!YJZNS1GwvZcD z3@R+8tFWqRs-@Tnqs*R$nS>6aR#-=fo`r^-c56Q!~iRXVDi)EY^R&ng|25A`amTH&g9S7Ylv)#r4672%>b zLLHXP&TJE#bYg!{+Gx{ouXLHW?e67i9nKI3ZIEj2Fr2AoB9t+Atl)??*_eQQ)$1SYAAz~ON4Sc>5d?<$K%uX3S#k+;?N}61Pc;%*}={GvF7r}WJ zlE9Xt*lX4p$M*}xCZXr_%FRqa4;b~KhWLf#x_h_>Z26EAkAW=Ww;b@w zRDlp_M#iX2`o$G{&QiF3uD;qPH`&~Ihcm^TRf1hqSEE?XZbE4#Kq!r5Gj;Y}^4{F* zOuXBfaEE663TFncNzVQk?;~iP2Zg(Fzt5haV_QL;6a_Fm>zfIC}$SvasAG$ z#ZbSA%A<+UN?tN4AfAJ3$wAc49lN3BD4qrMMW;(O%&TQPxZ0VEsIoW1>n7(Yz!{Cs zEOT+AbG8}W>>OL-M0GBm?JRF}&MR?_o#U*y-Z^cK(|7S~^fpvRp@F`PP-FX@qe+7~ zPEwe3LMEIu-6IjG#5t38fkgv$rMhXCU-Q*nXjtYoF{PU^3ZMnsZbFi|FjuyzATr0D3^5iuYY6i*qniwZ=p=1f?Y-lGV=nv*qLE|dv~LA;ufcK zjx(M1BVOs8hzOmozJt__kdt3BWF_5v_aX|43a0)+0$-<6DY+PEi7v84irDS;fxLQ@ zGvy~v=NQ>Y`Vp1ka$obH(`hCf{fGhC{T|{>LvRo6P|SM~C3uU&-G~Gq;=1w#kq~XF z950=Jb0%XHneANI>vYmK$XhVNrn%B*qpzZWVt3$lb2W6#%y0&f=J*n4V1;u$4M{H|bH`&J0KHNbprUnCOa!Wn(bg z(V8DJzi&b(UWJ$PD+V{{OtC+?%P{XVH#?`p8EAB7nm^o)?4t#&a87R_W`3`8BA6;? z+DuBPNmg#3GsV4L#_<4}u*baE?3M0+z@1_aqgB$xm*V=+=^V$~YzEq#>Di0{>_t|B zc6j~n&Cbjq#cK>%s7KhvXmKdTU+pr) z?$+7nJB|aQgqMf{eivHkmPW%j#BVZDJv`q}a~&T+xdQ zFm*y+Ft5sYe|hdaLlm*KvfRqLhldndiZUBT z(M6@Oti7*CBq1CqrGM3q%b77NYk7a8_tH}DEjCFx?11d3#}>yq(%mJm zHS(%?`|^)U2|nua|eKgRzC(3x;z0i zo$K;0&_a$f&}xM)SwKRU0?p0WTsu%P4{<>IeqH;1Q*&frL&WkHkkDW%ZZ8+{uxo%s zYHNXn+}AXBjplCA+;=qhAYu^l0q|JF9@R;389X-vmBKAhSfdLx0^q)4KWdUQxt*VM zj*_)+nnpCH2;VHt(KsN&`m}G3=JGV6ejvh9`xYUnJqkoMAbd+SSE^A!`=a46d_jp& zH%VWE-32t6yIw%MpUTl&XwL$zLyHw?P@_*ZDniW&-`nx(ia?D}NuXAZ{;rW51tWZ~ z)aU_?-i5Ia{6{Th;#~+Kw@IV(HF{j5G?*t4aswLOpwV|V%0@K^x#=3M)95D}{Y<0Z zXq1Pd6=COTbhbuYG`dlv{{W(zG1zOGdk<(lFWoowX5BsA>@5~*FP(X|>~uhE?v-L296Kq8h$HTQ%@PXP(7{-RMvhT>)b$+7|x8Wd}^ zLZfPp)@!s$qdtu;)aW805%Zwt_G@&#MmK5nLyhjy=rN6+)aVtBUf1YTjp+S4M3voe*`2-<6-T4RHMhW-0wB| zheo3?aEe&+G%D4oNu%>Mx=5p&HM$>2XmAWjl+fcE{fG8_UUR?G=wY1FIH1sd(uXrD$` zYV=i&uG8qSMz?8nhekiv=zfhJ(df8FztHGejb7I1j~e}_Mznjq$mQQPI;BxMCQRWw zN~4KDvPA%iQlnk&h1?R2%C+1%8ue&Id)tdxX!m-79?|H8MjvaGh6z-rt5LN^v=_bb zy-1@&8r=ni#*KO5LCw9S(TCdiADSCEPKC$@5;32txh0xg4kXH84Ui~>P`(DbK3LaSeB-)A-Yokk}#`Xi7C`Tp8NYwOe zn)_6vbS(RX?|2{)OTOk7X|6_dO`1DjBihGaguN0-==w={MZ$Hr7V;a4#(PtWY zabqt+Oa>D1(cbm~t5xl%i%{ z*9e|$F;0U&Uz)~cef*cWA|Syn)Lgyh8a1~|b9*#*NOL!8jw~{Y_{f5h&}BB?q6s26 zK05`&v_@qA-WEag->W1xm=C**M|ns{b}7k@CgqpQaQ=Gyc3GI);2O3tKZfgsg*gHj zJ$H)4^9&d|a9fAeaq|g3bwJRvM=<%A2EC|pmJ;DtVLnz+6vi|T;FoGDa?IY?)1zD_ zK)jsJzJMEG=3=;Ah78?jTaVdY5gFVxLnee@+%`oWVxw(AkQSzKP9#%Na&JpKg3DC; zu(5(o?qexKC1V=uOCm|i3vJ{|2MPu8nl6<{ZNJc?r?#ev5r%ok^0dF~nWQ_8}_(Q^lR(|8nn z>>;_Bec(whnC)U=iv8lFcGuqfwhsjy8vF(JYWEKO2m*VG8TPLR2<@lUx7f9{V(?MyHrqS8a`27N z-eVLbvW4)`1ACUP?fr6S2zM3;wePpRFNF5D=lCl3^Xh%;j04yWJv4ao4f3wU*1QrT z!oG&k&^c}ja_e#IY|AQ#rmFpOLxaaD#bcHGOR)_w_Cyxp_v|W~w6^#A#{)&awfLFL z-nx170qoFyawAOjs{NLs?aA6G_en~5b7cSNHLK+g_P@BFnl@KVY$e`XqW6y8--XSH z-5^B0-HrJ^$bucBbrZ@?CgD zZp@-P702i84r<*PlvHuLGZDz?re)=SbCXba!lur?jo7i)k&v(%uRTDOv;@9?spMVF z&28Jenwy)qZ*0a+S9ts40%mrnH6h6nRrq-YrnA5GylSM z_Q;~??7=%6y|fb(?hK5v?{JNpp;1I&2lj*R-*8?hr+b#PzieLG*RLZRN(!&UWVdmU$Nh<({stAEoyw z7v5EIJvs6KIqQ%#_HT7PlYSGN$=JX3C~rBhACyrZ94&Rd?5D$^uK> z%G~E?Pz3H&?47h3mEzv%oewtxWw|f*JWGK#(nhQ9flP8BNNYD-`?$-U$~QN0U&39q z(drwBHYLq{na9A;%~dR5?#p=+!a0|@heV3Zo9ABVEQVYfYJOAa&YreT=Dr|_GM9!$ zAah@uL`tXO1u5D)nz^q?dVy5nw}6fAqO|W(8Y1JxV;+G6uGZFV%&J^Os*Rm%Y{X+7Ub4K(Y?+HCPFYQPgAERDp<0WSiw@P#7gWH zWC>EqyjG$LJFi+Ks#&^~s9__mM3`k*iB&AqO4PDZR-%rLwi5MhjFo6$Syo~-8*3%j zuyIzRk&U+!O)T3=oXsX!i2^p!O3Y=GtVAL6S&1Sx*-Fe~Q>?^%Hq}ZjU^!M|Av?oL z6ti3_k`W^eT-AUz8k=opD}&4G%WA1}*RwfRuiA>`A?=rM_2Vj5`s+fh!0LfHqM$rjo ztt1M(uCk_lB`db_%L>?{7-lY89K#f{k{G6lEs0^~v9n^B`D|$nvw)SxFbkPKhAC!c zF${*j@>r^X1!AeWENG>|wH4L%b>+3eU^QE2^#WT{S;@;|xz#7^Z@_{+WF;%A>w>lQ ztisBMYN~>4g_R5Ymj@fdY^9YA1S^B}K~`yHgV@Bi%1Tl20Ikoetvqj&tj0=G8;0Es z%dp1-ud;H`r`F0;H&jvH%PWKaT2^QETN!Q+RIIKD1X;b!qpG2@z9L-N#2V~gyzi~H z@!?8z$u%}QSY02iWsNqzfHm2;x$JBkSIEw>aYbycjhn~LwQ=*=IvcluHQTs_Y`u*u zW*cl=KHF&HWY27|dhk&qGKOrj`ufA+%8GJ-eFX-KR;yRIW(|sKvz0_m$-!-l)ni#f zA=?^D6|uHhY92c;mYUDD#Zn7cdn~n(ZI7jjSw{>tH=lLJQU$ClmYU1XkEIG(cPv%J zdaP8iF<9P!KGkcbL&3^0>$7rI!RiLK!^+j6N0!&KoiS{EO_*I^<^0S271iuQE7?#T zs9|5Sa!`kTIfkkUH?dt-F6^&^+F!Af%W$K`F0yh}l)c?nZgov%Llq4$d*boD^Y69# zppl5FW1o!|jmKYCl%LNovHD`*4Axfjrs%IMV3&T5?_74-=lB+~!O!t6VwZo8?>sj2 zIllAR6`$j~fbIVr--YbT&+#p0S6O{4{ng70*a15^mmRc|h3u<#vWR`nPR?Uj+sXOt z>vnPh`!_qeko~)zEN0hONq;4((vLaqS}R}IR972Z#lB%>>6Rf_$*zlG`9yKZN@9Ag zsb$w&NwMCW%WkmJb-}Q|)?W|#!&VR6g|QoBD2$!#CM(BhD$x^fj`68QS7zU|lEFqI zZ?Tf-325kd#v$|BT~@X}RMUXH#shT`y?y*5v^tPQgJY<_xO8)Wy}JZXvjfQ^l; z$RD)%`PoA@u8jS}#+9?5+PDCF*v19fu#H>Bj@Ym|sutD~8Jg?dyvQx=^8P88F zE1!wyn zoxKvnEpMn`uUffU9_4E>q=@p5F)T&-dJIQV{%N%3PNND>mhdIBmGn0RuzC$P*5eN^ zaeTtH!PR&@D~=DET9_ro^9kco7p$qo3Bwmit{9)HV4woC9beszi1AyqW)1$-YK^JN zUs1_CF(le{c|#?iuM%UuYO2CmnANhR7!QAWa~*D{%0n#K?!#{tQ|vqquq@TiFRQ6t zTCxvPZg?#OpaawOIIWuEC z0~K{tH+5?&>XGSDF}^Fy0u_~5tk%~oUtSqxqfg__lO1y!Pb8WZ;}u*%%l5G`Y+YqA z7-r*QSlmw)u<>?sF3XN3soB;B*U&0_LOj1^ShTA;nJ5Hs53L_z*5NOS>IrO8$hgBN zpTJh3U~xxZR?~<@cx6p(Gu8L<+8W$GoKB*iI*-A-pFMO#eSJ-Ja~XfiE+0gnRw$B^ z`MI%)z7h<`2i3Ots{D=2i9hKjCwrbjzEZn3z=%L{iiiFL%~CsBFM#E`R1g0XB1;Iv zvy%SSoeYC2kRC(Q{Ey$pxRIZMz-HR=aJnhFEPCOxIU?2JqBkVyDCNI+dE!vlWPG>U z)!xO7E-%G_zo+nHEKl4xpOc$GZNfQD?bEa_2aaoHWaMC38#Zlf?(K|9?Hm`qn?XmX zxFEH|Q}BgA4>Qi0GCBcUVS^vUDbhbTh0;$$7?_k~*(5qbM!?^bHO|dQ0XN}3{B*#h z9p^;6mBc0;2Xi%CU&ZO8cNFN@4y`5|wMHp0kBr`U;KzFW8XLXmsK{uese5rwBo7|h zU*P%>r!OBrbjZjYz2umpV%mcwdJqeearA*-CZ)dy{vhX9fuD?>tr2c2y`@42FRq-P z4Vzn)Z3&}#1XZ!|ON2S2rLzxzE;p*j(Vr-DQ7>U$|7==kS8GQzf0x{tkeq-d)bWM{ z#vx+IcWl_+%8UuTgnbUw49>CLJDD*lmHaP-b2rXB3iZlVG$Z^ayt}odm&Yvv&q+*# zqL5I-U|MNP_I&C?aU}hCiTuhgPVYJ%9o`I-$$?^#7QNx1HY7iHsuoOdj!7U zvG`sD-&>?FmF5xYi}&q)^vVexRGN|ac8T(&%9$(t8AU6q00~C=0R07dCH{Onf+89Z znd$W2$SIS}pr%Fd5Yd6Z>GH!kMD@ZO*FNNEFV30Nu4d7TMs&y~U}ASH*h%28GV>qv zaU<UMs_UD5L+T==Ar~>7h=6PF7~zNN}%G# zL}!e48P1w*EFG)1rJXj`vV-kdi}09x%f?^`!^XFA!{70i{cMGIw%TPjDSAs=>{?uq zA$Q}QD7Li4R>hj~sZDm#D5JIwo}y?Y17m?mSMDyHW7S&ijttxEDl4=*a&EN#_{t&WhUnixDX)ZKzBk%C21{YDPNY^rdeMjuZ2zO+ zdP#{L)|BhKh@gUM7>~ad8-@*jjFADS>IlLLsxKvwLzT={Emfx=&2V&JOF97}zlN#i zMU{$!l^%}xOJpivb%p(7n-E5MHJjzh6ivKGd008r1Q@TRP35Vs@e{D5Ss-1=mV(PQ z)u3RFq(m7jm!9YBTb!yi=1H(f#~D_k^&*6Y)qM2Lh}82EM$(8^R&1>ldrF6_vxkh+ zaD}*1;c6Ya{@W5hpsBEeku>V!YEJvJj;vNeHH*b>we-S1CUzWd{;PiOlubgp z)wMx_r{(p8ysFZZPJL1BRb3NhysBktK?zioRM*(n7%Tr5DDPnN5NjOUsB_dyyKGKp zSMQwmPJC-I=Yoavo97puxfAF1wvH`33+K*h>u723!|Rq`NNNsl*RlT4uK^?JSPQA` zZ5v^(6q<=ufxtbzoA64az;wsY-7Roq;OOe^Y-#Q3iFkJJ?Cc^Z{7AN|?Sj_!D0ffG zhK?4zAR3X_j^G=%v~KLYKyXq$ZZs9icDHqi$V>PFn%2#sf|lH`{i02De%XbB38@ za1@p%y*D@=u0zhk?>Qa9kg4+y5NC7wB(rk`caYsY2W%3Or8pOC96DfoFoCe^Y;GqM z)-ki;bVJ1Ff*z^n76St2qz_ zA)3i;r(%^g!rTFSo+d2MEy{43Fn#D6$CWc(=WyGRBV1VIaeEfZY`FX^9x z@%{^Z$s^o1N>w(+bS>4RVU+AjGD^0ejFMfE;7`rFgp88yBco&kWR$Gmy*%}VyC)Hr z$d1Ai*)domdo(o<*2sLYMwSI@WNENQ<}SnXfghAU9csu@%kWA;)4azIHDtob+dhXs zHEY21r~3L6V9U+XkeKR2T3JXd4QaXkNz1JSMIb&!5}yW;yOe%#Aie>Luir#eI}yoI zL~;z~;ikirzJB77dEuqa0we)X&g~X zf+M#;R3*YUOLO#9h4A%hU)&~1E>9yWW)ao}1S2kZ@sp-D3TrSb4SYTiZV~F)$5AB& z1^O#4q>sTyPgWro0+AL;tVE+KjaF&28c3wkqS1gxw`jTBG`dfthctQ=NW}6K5al_E zy`+6#(dbXw_dU)1S))&YL@XnxC^Q~O#5WU2mauWIzF zMy{zUjYN&cYBWKkDL_K2I?b)os8ypjjXHpYE>~!DyGD;_^r}XG1EQW{FdrI>2)h_a zl)+MsDzxt-Kt5jf$2FqXMD0?1Is4c9dd`PTgnL;qL zd+DK|I6&fo|DCv~;Z*SU@9<@Ss7v&>lw2Q!%F22~e@B@BFVi4N>k<78B@N=HQDhZ> zEBgCMs!{RXJN0?%@g3T6upT3f`AN2JJ9n@z|_Z@zUl<{&I z`a05HXXB&{V`zu!c@jm8Lo)PON*=_>hfvXsFohe%@F!g=5RYd%()nNiYCG}>H2U#r z?2~8fQ}6$EC1X}%iESNts@Jz&e^y;EuPDE`cwv6Qg7{xm&z(PSA-r&`Puz3~)iq-! zEy6Y{UzbFU0OaRGv!bu6f3=2OVr2LI55B4vu~>ii&{x$_RyoLb6V5AydRmyif{yO( zB&PE}HA{Xh#d{zB4dd4cqMISuAn6Ii| z#_%+GC1VfB_z+CQ7xPv155YUs9k+~>#~0_T>bq@n_OGfL6#o_Ej>&XsVLHB4bpY-;$43V4XxB)3Ue~_7|jCsI{3J|viSAB@5=9v&-Jf8 zT0OMsi0`fa-btm*591_yHP1Pp+>k0@yTmC)cXE1_&y zq{6?z_6`gnDgXWN((ip##{3iR_fM@(3oRkC@2t>JASWCes?TYx9CErrg@$OPW)%fb zhYF5Vcpmo-93ZxE6fI&yh1fO(7tbT!0s3SNA6cJT?L+r% z%W>~dug)2bk_iny7TTZu9Awzwn9%fJhK{_Pz%>pGc|(KC-9da}e`N|L`TmD;hLOor z_mOC5a957c8yw(Nu;A2Xft46gXLMed{y>|*J0@cQtv&Y=Xmd_&#CA?u^Y8X z9qH6%^*Q0b#Qh1+!NI^^R=&+o_G)E^5%ncv8tL741COaP=iC9 zm;z^LXn=QB(1Dz_fuU>O#tJ7e6iO=?4h{_Wdi~pu<_5h#ICA7f+O__VJ{~M@3|v;X z)qBs8;I=1n{oWrOJ#xYek52~6*Lv@%%vn##&>tUpd>asjci>lWs$`D5>z&L&fn~PcR1kv!4tSX@qu^7@CV)|=R#zRuBCMKduPDo?BNe_e&Ahq zqOXdAs+X^7C#> z=yml!?t=$P`*9So;TgLFxD`V2g~;E`!Nc$|HNSgRe7x%e6Mo< z%IvEB>s*1MaN5v)RJ5B9_`UbAivD4vqW?(3;3NGfmJYw^>i@v>-t)}<Z;eSiFfMr0>FmcfX;3?uTh zU{1C{OwI?#%eS)7W958Rq?-7?3I8~C>Uen@d8|iJcJd++81e&*?P)ph;gcW3DZ}#y zQsN!B4^;n&qi7%}zbAwTC?vWD2IkvKvf z2TxY+U%T898tl!<$8=aZ_>!Kl0^WPGy!WO<4M(W|q+|17__NJ{!6rwj_`SYYLqiCF ziJ)Zg4S)ZMcLUR(_7A@4?|(cYIQ9qIK21zKl2YB^?&r+&HIM^-q2Ch1%`sk;ZX6(zL$dDhpDj*Q~yW5 zPn!@%*?@QrjqZ6gxL48OS}IRo&dZ!pT8jZGt^Jjh$B!v5oA;J}#`c7YAMbnrWOj7< z`}dx;6o+@MWN#QNN)fwYYha_r8-~p~M1b zvY_!y(0C2)uYWiJ%{J8XI28hy*mj{7kh! z%X+N;ZOre#7ev1`>|0js-RK;V*>GIZC zwSGaHGeUd+z6Yh_9k>d=q5fSjxlj2AU+8-ci=v7nC!Ce0t70e(OFQqt#Srihg|dP} zjoJR8(#-x(Fk*ZMWdFwiM*xCDVYk2kZ>RcP``!t7gU<$sLdn6Q(zL-!YKor(2G`~+ zq$NoJ4b}I?4SzxJ#fk%~l$Q|fH%L9A&c5@ZX@KhYSje)JqwX|*-#gxYT;HMPzR>=J z=R^G$xRHggQWhRVY`8K%Mv0T-5KDA_>Gcnugu1=sl&ao+v@r7zzId_**M0Bw&L$te zN~N55_bmh+9Q+w)PR@jbf_q5lroGkX-%eJxC9wXfgW~Rfvxb{vNaS;PVB~V5EEFBeY55u~7d* zFHu^occg#tjR#QCv<7+OMd|sLLAM8e!@K}t0I2y~tbv)lx!}K`DRNTvS!ktr0}#5GS|eI)h9 zHz-cbwPPRa&qJ*d7aHvM0b(HOKUR9q(ff#d>%#+d7>W4ieJ(cpTA$Emh8@F3Mk32F zhFEfb()z?MPuM-|dOG2R<2@tI!_qE}WigFlmv(nqLcY1)(Pdzyu~<5CI+(MYzvjlS zARTcWz&Q?&r_yls;rbUmhT{6;hV5LOrQp}&dN)o)$A)noj~kb@z{{5vg#CDPv;d!X zRs^Qz(}5j)6pK$aA}kG3OP3;$KFUi4d{17RJ}m^5`%FV@pB)|Pl9`%fl1* z#LhMj~`^+>|(*|5E< zon{43T3V2Z&21eU+M9QDw)bu4bb1;!#FQ>iw&!bDD5SP`c6Q+{o(-d1i2_^G4@TOtYNR;kRux zP3oRmspM#9BS;t0p3h%SG?C{~#bzBZWac^3q>a8)@;q}q?RfBx-r2E@c?z7o$))1e zt1aCdwu49_B0(2VK_jhoi zcpIw?mH|Bl#l&SHFCCrCGnc2CEduqlb|80!obm~3^M;mQnBDU%;5C!O%<`=pIyze0 znP;JSAM%&-v1gHIEEan(54WMW55Y@#;qcck;7Fl@Gg3P`sachbCYK|X8b=H4-GRv_ z#+0p(d6pzmT<+A)?zSzwO^H1zJxh7rrKM6cQ`9KY{A9ybO{$bjW{n=A>L|@5nW%=R z8k(O=`64Y6eP#=_NdIUGkrVNVYHohsy7P3K;q8%m%6MF}taNi%XHQ!%FYq$1M85X# z+DbK$xw^Bh1#ySXUFdr$X`WioR^EVl*3g3MMo@6H zXihLsy=auotPp=Z!-rmpV5xG-&37?%pu_lv} z%yTxM0@6lTQY$@s4Ebb^?&OZCX4ZFhw3cCz2)4_i?;P{XNOg=m z!E>%>8it&#QZEy$I zq}8lPj41Ifo?lbct%Ba_rG(@cW}dbrv9gE+R@iDs3N& z_hp%9yNAk&rQ*XPPe&U0Vco!IvQDmd8X6W}PUW&)oXJexzM%(APfn)HbAA#v^en2Y z_O{J!`2K}=-fk|P&5Kuz(mmcs5WjEiCj1$lPh!1-NEo}Rb@PV4_Fl|T{BP_$%YEro z);_oP)PwsDu5+Gytguz-*_r$y;>~xD71lYMxv@*n1zc*Odo0Fp-W>6{4maNExzJ1V zOR0OTcm+uFUrKog@q~0dU7c9wQXl&=_XxYk@u6`y&sd{-tc znF)<>Z^|c#aJ_r%4$*HePV%IquO^P?ZuFOauHy+j_a9G%f?GhEA>c8<<9Urdgx0N_ zM3-ltecbB}@=|>p6$Y!Io=dn7{S{$6takP`Q&&PqWwPxJaUVDNwC>=aFM6)XoCM*tXkj%H?B`Ku32D@?%FUIW z&n6z+mDe71WZt85jJJoekZ#ihb&1t$fS9hPGhUGz) zcqn5&LVM_je+w2MiC;7M{n&_ZB-sw13Cy_x7Z**#&Al7Qc5+hMDDoL`9U{9*hzyVj zCJ-f&K8ieCv?Rf2eHf;aMn*9$og2C_A0}mRZX&u=bDWN3G&%TGK+l!vI7eLY73bhc z4C?3!3?jMYAWVl(d_LIZm`h{wHZWUoPHw|jjORGK)Gcp=`xcy2{wiZVj!}0iz837k z?<#y;w`wXrm-L*Pim37H*y$6OJR={DeEz%8$j^BNf9f{!sie<9M$bU$v_=gA_`m{6%+n7<~;ByCAfX&C5d#Mb5RTfGT0ZGeV(h^EQ z#~x(j<|vVfcY*X~6KP{_tO&3S?AT&euT+#RlM$S&ReV{iSn9|l74L;Eci|)z%Y=$4 zcwAuOoD4J9o!!W6nIoM>#8-V;lt>)ar{P1>_GUi(8lM@-6gxeG zq~keYI*dbipb|to_{{K;t}h{R`m3yOQ#V7f85C?C?##nDeH)3I%V!O=Z88K*Sz;nf zyFgKs*I8nYL=ycwxc7+{su+$G>a*Rri)_a^Kfr z&g`YgZ*-G_Gf_r2@rF6`JRm;q&+NeMXv;P@`Q6G)ye`tRwVB=vHEvG38G&YP-q41R zbU$*OIdgM2ZYMCWqLsYH?+hq%dZ5URKc>>SMs9AVn;EaC(mgN{{F$QhCmvw-G{iUu zsSO%Q6ktvZl)KzWqGuO#Ad5#f#*mTx3Y8d{&lHlLfl1WZb0+0;28LQ=&q7{CATLg& z2xhiI^x{;meIBM!#Maxa?tl6E$GE^tK@2}47Om?7(YmDXB3h&|9ai0G3*Yla*stiY z=SPP>okXeGq36jZ?GvjZg;KYYNUH3{$iDJwOXw z%{b?w2j=r0cmrIAh!H6j@Ue&%6OZ7W&l8bJE>KA?NLcVKB)+gP#-sR7u(ZegDFiL1 zElb02gm5lWukih+4~~s8966?(7v&IhCJ_ZOlOHpDDFzLQGiaRgO{cMrk26!mID_m= z<=J72X#hV!ap1Td3mZC&LzGs@6Y%;G)cFC#N(*bV5 zxg-S+$3fqcvHY61`*9X;g5zy~*U8ZfM=@s11vra$ z!?6)yElyTO-EA#3LVhSTS-Oo$hOZKFmn5Jm{|EtofV1Rdgn1X>EsCL>Mv6T$27}!Q z%J3P!iz!qmyz)?gxj0K&;HUyviIbJn!1ZGp%E6wdP;-ol_fe=qc=bT&diYC%ooDXco?rZE#!!unT8^#EJ*N+y>XpI1v#IC?Cp*47Q#k+HJU65z&H$ z@M3qxN@)|^PyjarXEO`NrTLEq% z$5U`T1@JSR3so#CZ1KDBbz>5C;Vh>8s0#sR;>59xra~W@B^~+V!e&l@AZ?g^8-#Ab zS-b#_HvwM9$(GSR++UYrR1dz5!n_ZUSy;VJ!CCw%91j5ekQ{DAK%3Cd#92HBjw1j+ z!I^uvjOZUe#=e0_FbpK`U4jm!!OM2KxBwRBB=wM#%88bOu@90dk}|JInb7CRjKDIG zj`q)ynImNmM$4E7Z{JCY&6SC*mO?*{7K%}5my~(ob7XFoGXMA-nJ1*o_(@SkM4Ipd zd`bE)jrNtA;MRZ_U!LrOEf$%Jc=2(WGPe9o*)=Y;$cQ3V@r0$!tri(~o=|1cNK7tt zP-|IE`(DuT^C($TW)Xkq86MPP7G=m@MULF@QI5}Kus%dJS@I(xB-#j@azM5_&t%S- z2N@d7D!NT#xliMVj#2Pi<`ZEkp7%M6J4MOy+bc(;7#!|*S?*TZgeN0#exOi3MOy~>f5E;Bti)(@FJwh#46MvJ zMg9%sHw#Wz#5p$FsLVoih;f$iAn^7_r2H158)TE68H#EGS_hk`O{u`%$+WQ*Rx>G+ zV1|XX;f8Uf*%zNQ%@WN`mbDPgX`?S_OHsC9atIe>94x~ucZM}_i-nflXqz!G_@ZpG z*mTU3erO=%=S!lzO_z$xRx`tDP6pOrB4vVRo2Z@m(kKa?WOkB4vEb_)l`OTj{K;f5 z2xVFjouo)`ZZu`dNMW=pvJ8u&^^x4XXr&}KpN#NOY>i1xNo&v=7LffN%-l)nG$YYd zi=&M1EE0xw$bYfT;7v)C;hrTNqx{d}p#hc>$VU97i9CLP64GrLLuF8=>;O5X9?mtq zgv&M0?E^_RAZ!8!wPz#{Mn8&`2#R;Ps9%C10rAm^#o7)U6BfC4dpj#FQjpPydRq4v zT3X_Op%n!)u$B{4or0N?5@tb^OT8@>*9H&PMuvo%$(AiefS$3M%GTgs^` z&ysSe_<5GbNy(5-tWLp7N%1Tx2fycm1}58K&ytv0W7Bc4{KG1lb96Ed3aUJPuJIuC z>~Sk@{^&q4DL78He%NwSFh^3Nn3U@e5kUp%l}Z_%0H^!4r@u<2KVHYNT0xbf=mpBP zEh4DkUQN|1s8lo9Y6T-&t~#B5xGRw*qtr53qkkM$&FP zecCFaUa13GjB!{w_G@zKl$%K@Cn}mAb*2 zRoZE~IGXLrG{VacKsZd6c(6zwTi4TIrn6hD;w=}I+L4lPjy8IVyV zuw5VTv{ebUh9y!WEUzP2kK46_O*yOxRq~0_!`+o_i%5oLg%YSpNn?eVOFs-b3N}cJ z5B18?6p@q2aycMf$F*3kg7n@u9S(L-fVjUZf?r5qRIq|R**&15f=!YVb*^0ZLYd$ERwLKE$JgTByR`*0mZ|P~{XM%cN#X(|E@HP&oEOC8^@1Bqz%fQ1KJDS#o8# z*P;X6Sivc}RGJl>DJhffHV!MDRFNU5g3IL-28`tjepyp%6+ES>W(CvrY_nFuNKG^g z6|KL+PT{64M(Oad3)oJU?G9%jeokupe|Y;6_^OKQ|9kV^eR+9VULXk|q6EVhKz5PH zmIn#GU_f?RL_`)r*@Q$E6#_|=*Jo^~)}^&Z+uGHZwpwe^pC*EUTZ>wEt+=!jv6kY7 z)yn^SX6BrG-$L78{r!7Cxw+ptbLN~gGiT;5@7_5dnj_U$Gr9k5KRw^M&-6MUX+FBi zKlIcVCOlyneAX3PTaqnPL|3Fnx?PjYlL;*AgprB!f3n1MmRi;YO+@SKr2}* zPSgjjRJGHS)hfPZk(B0V7}8ijt@Atztu}C}H}YVM-^;eI%c6{4MRpFh93q(rwp_V>ssT!^kx=q zSo1~$&wu!@P16}qBqI&43`i#M(Sf?5y<0drO8AL9q+1IUE-)EI)|I|1E&bBLnOLl{ zQ-Nahn4q9fEMTkC4M`epY$+>HV~7)6IIWW`F($c8^OMa`Esq9CR#Ir@C;dypke(Rc zfiqfI>lz~%y~A+5A^EIz87-V}6{mP7g1*bIC;Tgl^Z^rwnfW{I{6}q*$_PWb6rUK< zv<;lkv;_Ye^If9~J`>z+@S~z0H@KX5%n*a<%l6`M3vbEO|Ls?ll;*#O&Gz>qbD zpl?XeYhX==Xyv>h=SdFR<1LlWqJLrwpT}WKa>)T8=#!%HMZ>@kqLTT~Ha;-k9M3ja zDi!9)S228TveumC`FbHmUQ+oVnkybY@=24OHu>b3ERRo1e7w$_Hf}b@WPbhyn9o6b z3?H9vlKGSQlFup0{CAmYnlFg>q`|-2Ci63$kH<~<6XuxA&p*H3X1eb#bNort@#l%% zD`H-U=Vn+#(VPF}m4D6qWCIt|tn&YL>0e&H7)$p;)hfjN(2Mx0mqBScU@~CMDtug` zF~7E~Q+N~k-&^)~pk5)jrNHSQut(!FR2vK3;@}U|tN%6@pMB6dg%;u+jYVnaBZ-A? zeQTCES=+I`E!O^}g=tSa*U22$?D%E{&fn=|_;R;9SW~w~3Ci$op5)jU-{JI!ybRxl zVy7_Rd)K;$!~}xF3TP`NS`C)|_2mTb0C_&GBRu*JT5h<1z;_A+cUH^f27;5EV0}iP z0$K-nL~z+owcfDp`_djrlwV#GJb?9rZKv=aClj23hQQ8IYK7rTo!}^}%1cWPXK#0c zzM|m3Wzgfx3f^N@@cpAXzOIgiEl%L;U>JiU1y12Mz(K0C??EST6jJ9wQg`16b`Yxw z`@XT|0M_^I80;AET@mbv`uK9}v5GwuTt zOJI_dS?GjdK?bTpiz@f1fdQ909RNdU)6Bq~s(nLqoKv?uh0D;Gw>skj+d=d_umvqu zh$WYQ<^;|}&1r$;0;k|Sr+<|*YV;(u!lO2=%RI&j`<~f?PNj97i+n!^vAD|V=6in2 zXlGEBbM_=>;%G461OFoCZbeRJQL56g?{Sh*ge9K~oDTJ)v6%F72=a9v?R1^w^qn-? zIn8&k(bo$sFz^>!&<91P`zC`@;GA}zlQqc+S281aR+t96`1v_kcHs5AO3utK#QdNJz-g>nL~E4%%HCp8Co+OU0hG-nhng`UaP6C!hRHhV2+bAGroYtFREg0pl_UJ6Y#A&Su-sfbXXe+rjtzHFMCBz8~NlVPDo9=Nx2pU*_c3 z?}ypi+e74kcagpCIH(nB(d`b@qM1+@p*sk5Bt+ivqFVhrcan4JBqul6(HR`@bpWp~ z%PuJBgzDkF$staUGH2XCrw2)%kCr^e>FnEt1+D{Qz|tw;TSwg=Zg#p3b~^dijHU!S zZ!8iUk(laqUG8)$a|(UyM}w40QpVEozryxqEt~3uB2Hl?Xy+@7PNg-p?^3V?M?c15 zz((Wvj$C6m2Yk0>?8e9r_@26E4z<#=R>nZv83qUFUKMD7?`5I?#L4_14dFb$Z{R&n zU(6$gYW~Xftv}|RT7~>;NeQMj%yxd?54O&MUj-k>5JIEFai0&&+gb1XrHwJuuM=_R z`ktmvDa4>Ry;x5}eYE4ua`LJirylkPBWhBjE+LN!jmEJGbe+ta`2yL#E5j~uN|2p5 z#3?z~=`qI18|U;m*9lE-?7Tf@FXX+G&m5o z@kL-2%Jeya#8oOY7-&^;GXlQPtz&4Z+qMQLkrg!fJ5)ObqnyG~kUR!HS?Cm;qhNP5 zeg~rBL$&~xYWKtQVKrvr02sTXWRFSBPN)hQ^T2Vg;~$5~J2$W_Sd7KrXQAbMhb&+? z``Pb++ZXt-0Ev93e*>Mj?op>38*91;C>g*z=Cpi$Xn@nj*MGFr)3<&ZYD?#~4Bus_ z+!N>mWJ8c2t9y{)oiP|jQ-yKH>4I4s?dGeULa$%1OY5b1=ev=i_|m8*!kyxOkv5I^dgL;{*%TiOLCFs5~JHo|uE#6`q@YkD8Bz zft}RElQ1mu-+|=y%bYF?oFMf0La1?VXkAJ>4eHr`|YasbWWgFz_~Nizzj%Mq+{s+N|ap% zK?U23ivyFDs9G&5bW?(mO!6_BMSd1IMz-6lmK6t{R0ZbhFaY+KPR>{-5Zn!s^Kem7 z;B@;AAjDBYd(a#wr<-2k-hA3*t*2Mk>BA%nGFH2ODJ^ZgVlBRR!He$n5h8tP<}MG* zZ$>A+=&Xy-7uy!UcC9|0^nBo~S@>;agk-=6)#fuW%Y3%weu$}8dPR%|WVzA2{?n!R ztL36r1O82Ad|v+b8Ca_RT3Y(Pk(Sw7)PyOx&nZ=|LC8-kI%XnoeXd3R=I z{5X^sh5T~J9|`$`A-^x=7h^&HE?Ce%fBf(Bf>Hew7wh9+BKbR!e^*~cUbCI??!TcA zb)&7q)Qf*Y=X*me?SCz`S0lAo1GQJZLrpamt+WTNv=^=P7*_k=ht>XR8*Sw9+Xeh9 zQJRngRjC06^c!C!qBTbg;^!?WU!OsWCx@VIkLnZRpx@T|VE0=W30fxTDWJY87xR`? zpir)$5<&e0EdeT3d<{VT6uKEmOZk=X?Gf}5P=CeO3Ae8reSjNBt?d&*dAOO?x!(fP zxfQq})@YU>8x5&z6c*H3kPo+Ly2SNB1C-uh0BOl@1L?BJu#mv31u(!M2%&}hK%>Uh zx%qFuEqEqJRDwUtJL1Z@&T56^UN29#=av!EjUj-hD}3;Iqr)4mY&AR0^a z9T4=qpp|&dM&}Mj186i)(EA;9eQnFvk#oa9^vi6vRUoLBpi)6)g2o6M4@B)}TXze3 z2*}tcd`}5_RnQxP-T~55GT}-ZMFlMc((*0`(w43fv_;T%K{pHfmY^0OE%{MF9|_8a zvuPcjfwYcO1@#v+NYGe8;{{C0-r-*Q|Y7n$T(Ct8{sd_vu=oQKRqo8*M9TD`ApyPsUd=R4R z>j(-1={7w@&3A#qmbwIl8P9R0uK?4L00n#PT5!zTm zRX|$u4B@*>&<5eVN>BrkE^&jPA4={|1>Gm;0YPno9uxEgke2s`(B2mGzM!Lmz5voC zicm4#2B!!*Lr`x)gMoC3DxpmlG+WR-L5l@lDrl{s8bO(i6tj*&g3cAR zQc#1S?+V&2=ovwO6!ayKp6@eo&?qD*PY}gu(z#s)(Nz#mFqlR8+RU~hHd_iOQLl{Y zh&;N5Rtjw`kfyyRv_nFxhLm1NWm{849>o*Yv|EMt2cf+rwA9Ew?lXIcl&#hv+bX8z zD$;ISL2bsacofIY_)m8_F6B<5<0^|N`d6Xff(iJ>W{Kuu2XYi3zjQ{3WIU<^^$nfAI z89WC~igWd`#8A;e;Gy^&sceG`2^|HVUnL4KDOy5;Hu}u*WU+iI4Uf79!4oQZ6I_+V zGSu|Rk!7g17U`B3JC38jd_-&9!^m8wPle?3f&`f6EyNS(Ak!@w2m z*DV@2*m75(IO#GPN`||#1D?aAU&`daUOD$kl=sO{!qcP>77vq{K*iYpRa~H9!v+r> zN{lKl5Y4n$fB9;CA5Bjayt4`A9l~(934Zm!8cNX|O1(YxV(*NiGSd7jr+7b?tY4od zD}hv(CN2<-zZx1Io~=AhTp;56KKKyhUTrk$6kk$YpkmPfkRmTNF3@K{jyLn#^nZgJnzairB&WDrDz-C-{}rQdBe~c7?$cK^0VSiQe;m@fzu|9`Pur1S z%6j#Su>$%*E$tvyS#PU|?>Gpq55xI&14vrDt_uznC8zP%C<*$G!HUpo){9RlT^+B} zjZu!q=ozmgOAvpEbW#9}w&R_nw<0jXyh21JnfoaACm@invaG7uGgWPGIz+B2eTH%- zH5ESoTe?d8Fg&33Lj*5r8$+q^`E8MH#|c#c#7h1N-n+o^Ew^OS(w$`peL?A3eKMSkdtL58A zs)gs>_4ngDsEO@oV(N&P0z3YK#;o~eypBAgtnKO_lJg?a3Hfj7E3t+bh(GrC!zEbO zKK7_`Ed-g`cI0~|zC`?M)PdpqS1gZzEeEV^f68opyygtw*XRqAnEJmB5i`JY!=2Ey ze>*YJ20av8!6=G0b$h{AUr1%t|F+`}2dSZH5Km!aRqW%c*hf`ue?rH8jDv4d(>@ttcv)BB&Dsg@zt%J_En-y>h~7Ap%y4! zKs0t#cR!-t6z-42zeau%JAeo_pGRV?kxyT0Y*owiSA;8CKRLG$QD+{(%v52wZQNDa zGy^^`*?#s&fm=Tc)ULi3S;vi~3yO;n2NDHKOl zS!?Zk?FHac?Hg}AiiU~L((*CxE~-E73pd=2(^ItRJU?c-Xt?5K_-W&#&;+fdlvV>v zP`a0bIcTLmj91Z!7-OvQF0jBJ44v%wq@$w=v=mEq`fh(sgfFVgepmZu`=8K`ru~%>&mbLXnsB13X=WtjNS31g4``+_I{c}}Q`ANpzH;-%2 zh(iU9yCb)7`zEx{YR%R_9niiIyt;iRA}o$-orK!q%#I2wD^wSv`=Vukt3A}-8wL6N z@-N!gc=UnV_V%Ob8#TVeJKh9zoi0~=?s3q?=L+k|<=$?;55&Y?{?Vtpm%m57d>hH4 zPWDs+jmY+~E20{%3q{M0)&9ACAxh%M=?p7luzfLl#8R2!EecVLqmhJE)K5E zoEm8LAIvxeHtQw&hwTvdu^3TwLNCYhNlfx|zjF}BH*ngdGdND3I1gfZi!&=`e%@o# zIKsHXr{mek8}~7;KrJumbK|eP z0p9;O{t6ZL#$OqL4mxT46%|T_%<%^gpqxM04cz|V17yHg4ZK1>x@YA3m5L>6YH6uf ze~^d?E57<}FSrl1OkVNThZSE*Ju@v_h4uMr*Db{Ahn9a`{ygvor{G@*Zj(iIC01`} z7XSBq|6M5|;%Y1jYWeT(nIKVxX7S&rWQiIOueAIR70icRe{hldPkMwwhi38b?R1UG zt5^SLdN}Zw%!+kb-`;;v3E_egn#KRJD#~;dn#KQCM^eUA4$a~}QbZbdaqXHv+aSpp?R--Z<@3(XSfc}k<4;Sz4D(R_Jq(Z@J1DQCD2Ftfg6b>(6^9v zsYon=(%zq;_YsLj)%m;jKuib!Iuc9f-9C!kYa+2^{w)7`m|!BYWZv81CzPTnEm*iS z^S2##a}r@zG9T;kB9hK!RGdP$5bep1?=lNQuVg;k;W(0ML$3s{E)1dexm~i>wqV(STQ@BjP6jo`tsFlHek*9>$B&P2^~xD zZ%)?m{DF94t|PBxm35{lCrB+_iZ~RJ&X*u%BCljk>P#U^IPyx?jLsCSgd?wH%`c=S zCr#v)tOYq+pk5-cWHn_{MFv|1O(0WnmqHcc#gA9*Xta<8DvR`~tU_Wer1=8bRg_H~ zLI&t;YV1NHsej;E&O9o-ic+DFm**GYDe?!eCsq=1S;v<(;0GE1}an5O-qCmC)&@5-~C6N~pUk>xsD% z>fVvqyfIfo-MbOV8*?Spy$_L+W3GgHIAonC^o3dMG}NOrWk}4GP>J&hs&8VhgnH)w z6uE932({{}=as}zZ)N73@Guk#^*)_+pFHMDsE^{lID83l_fg!*F;_yR4!M1D%#~1S zA(1)eN~oXWx-3jCjF)G}A@6b(W`SS93=PO5;z}z>Hc>6q2`V}EN{C~xga&2R;71i5 zdnGi)QBEhZS3*Owi6F68LPL~Sy0KS6L%I<|jy7mWFG_f0uY`sSBvL}`mC%qfqM6t$ zp`l8rH}*<9D5}+S~ZdtJ`Y+#qjRYN zP3)D>=uVXK#9j%F?nV@ey%HLeO|nvAuY|^_KJ><335_e#ZfIUYW!EZKoL$1Xq`th6 zcsvehLW=nGdPMU^m zC!U~ql4GxgDiqI2W3PlNR54HNl~8KzmC(fG*eiICTn{%l_DZNKOeA;AaYI#gCHg;! zy%IXl>4Ppyj=d6^ti0$YJ?bVa$31!MmC)q=i0Nve*$5}MbM z68RW3^vTKqRIhA2gom4nL0Li#N=~|na1+MoC16IRl?!l4 zinKyG!8pTQ?A!m) z1+R|dg)++SN(uVugtlS?^C4niYJl#r<_Hn5B+?KX@)ttXSnS349Qn9Cidu-;>w4@x zuEZ+vf44)gK-@*Rl$(vc2L(L%+*TK!h-z&85wtT7fnh2N(3XME_+dpxMurb>K$n!@ z-M)jc@*(Uc^j_|647s0UFUdh-6SEhL@-*hh&MkT?ZB zS%kgkK`7{z2Prd*C z2I!wq^L~h{Q;Yx8GOotUEWCaOENYe#+Al?7 zE5Ig7&7!_&yRJBJo%3r5()ZC4=vSDG5gR|CJ{h#I*wNQtAfvi#8 zu?Rf&lD{Fb6Ch3rdQlv6cu=gZsy|PfT6-X_{-m3_S z-2lI$#2H8o#65Ud?7ape(YYt?)UlWD^cY+ZQxc5s|0|4n?z@B>42PegfqC_Czo5yw zfMs{i@RgBAeF(M%&@>l&pTpECui@YANZpLRM54vJ#0u0lY|wMMyOC#j@krOJ*VQ48YUa zdy=$XO`v3#;+hkCuUnC*0*FxJ`$*gi@MB8sLZWv+7=*p_r&+o&$cZ<>l!U(Rf2(<# zpJq&!p6S;m55XUQn^dwN!es62V)cK@!$ae|2J%%7&dC!oMI-((PS^twfOYM{HMIx_ zbeElL)5LM6Iv3t$7t^_LAf2@CvIo=U-oTX#kEYY%K%55evMU~d9kd$9UG@|@{S6|s z?7Qs{B?hZoKT4`6NrP7+2Fl%bXOl%(Jsuj2Fh4)Eb0}`CHGt05DqyR9BdnphUR!gc z$C?{G*4$`|H8*N&&ODP$xY0h3Ow;z8R^qCl5vs^rwW>z@45@gd zJya^*XpiNJH`)_Px>nU_Pj*%9a8<>;sum-N9v+h08=#7YtX8$bqiTak)dpA92Cu3O zUR9f2Rabdct=dHK9yeL`a_FMTTkBeGmq@ji+ry+<%k6Pot>yN)Znc)%Q`~A@ZgiO* zUFoV`m7p4-b`j6@iSJldV=i#_l8P$Jl3!`Z4wdRzF7fnQqmwb`Gf@OxIE6 z`Z`K?=6IufF}!Yqt!{p)V=KIN=#CXj@?i;00NRp#yHqU6x68zme7lk@$=B_yE$LvZ zUkH>X1zt;vJeG8FE$M758A86S`&}$~JJ+U5g`sMMy{+sRMg#0^WyUZXUvDcbhGBTU zt^8`J^5=Jy4a2E5{;V!4&qCu^_F?7N!>KLWRZ|Q{Q@p3glG1OSK@7Mz*QWVI8*pzw zY6xY(z2{InCy6NWFr+>=v-yX$0u< z_74ZVhw7EIBB!!HCSdF(_aU(j;419>UpM^gFmuv;OS7ViU161x=A$OtXO)vRKXt}| zSh5BGeuvUekhpb71P5UL#NLy*dhGyZJW^w^pF=kVw7m}n&=)rXp9D{$z9FVT%t!H- zU7u@Hjdb7C_f~y_O4kooEw3YV+l^{!wMLo3@&w0TuiDclJzBzgk+5D#utqOhyLRQK zgKAR9-B>JM%+Lf*?lcv zkRl}HPyiACYLs!12Zt(E&UVamWpIf~zSLp+iM9!4(YL zMgpPWeCYL}^zlHvQ9m$`djo!80{6!Hz@3hfZlaZp@Wv8JipYWhAg%+LC?SaZ;yRz9 zl}T%QJj z;#g5wc$48d=7JgvSTm%j%(T&>-P2n*^{~sx@JS&}XSkX!c(FkoL-#hD#Br(<&di39 z;ao$~dO5}K|3IQH@zwrwQ}hzsr!nOEV@Yj>V?9kVElpF*;HG%g702+Pqb-FvhLxsu z^m6E&;)VhvLvAI_$f;Io+!+kJXKE#yky9LX3KClk!&%baGZ=CU>$04xaTyuj?&+9m zEu4D9Wn}n40wbr2%pD=DVd&nqQg9beO?4R={??GRjhuSJWn|bT@K8yP79~@3*#JyzZcR>hU_j_#+)I$3zRZ^ z#Pm0~81mB&a53c01{Xu_R&X)oRsd9*27|SP04Q4asKJH*$ZJmWLnz{|^i3#tF zl0!u;oW*l#5p};_8~OaxT{g~kTXgox?D%)+XBivWAF(7aYnUPCPi4r?h(=|P%a$2z zD#QLln#pj4kft)^`3}Cs9mM_#@!VJU%5*lBAx~>4*xfj?JD1IDF{EFLk56UDJ&uA5 z+1H_wA5u&9>$nbyuOH~Fy=Ik(%Z(z^2*{?(9_ z0B$)xLJ>o5OvT4du*6Imil}XK|C@U=Mc|sUC(=lqBlTi?(QFLakfRL7DrckOyi?o z{u+5LOyPF%O5|SOF1-{a9aGPuf_cwPgY-dOTnrS0VLzR8O7N-5f&D+9x zOyeWjuJT%#!bex4U-Ec#x_QAC?!0a8MFzvK8xj_>_qTAu?c^EU$?SKi7efx^fKwdrZhmklhRu3q$s< zptT9@PfMyZg*_;sb5cCYEy4ce`pMi>Kbf2CCvN#JZ3GQjP2j`~t;N0XM zbjv6AA8X_u;$Cn|xUH{|v^|pC;yl)H*TGG~v(8CxZMdPhj$ll!+$^pf+m-IV#+`k% zJGg0g782T0Gnw#N0XKIHV2&T%KB6?k8D?5wMVw|g1}nqMlUO4#W*$iCqF=QPidq~e3b;4vCAN55T^2AoJMO-S?B5nxgPB+P0 z+)pl3%1E~@wuC!_dPnI^QA#HS)eHQR&lS=P7cry{I%rca!HGsgbo-YnUpG185={6` zN)avB{cp=#Ow60+`G6X+crz?RnAs+H4nsDE`e~TC7-bqCsh?C{3scxqw-hcGjn!CR+msV#unz4#YG*x(>t?ukw>S5UXYGv<}3*>N2HqAlA#3Ke+?B z_c!Q}U8b!bF-HXd>cY46FB=->8iubKQUKG+H8|sNnx|K=@?G*X=HVSlKJE#|VDAGZ;&=5YV(cLG>y zcT)mGkPGuA6g{pnmqGk|EzLmXvzbwVDTzhDY>dM>g5leSL{qVTDB*8m8Xw)O3#Ob% zQ!3Ti8Eovc#%Sne_`D%`^)ii*u3n~at-Yn(cGO6>X2KIE%vj$u7IUBB3Wpx`>5 zxt`t=6w~PTy2g#Bl68GeJ4lT$!A2C%C*K^$A!6mAo013ZwgO7BbweNopj~Q;^!Iz zF*`9_Y)CZz`O2ATe566Aubi2(I;E7qg=t$;@`CAp59Z1YH76n1#PBRb^4i2SKDstB zr97pSzlCYsVqS@=OFaM7Y^nzbQGrsMZDzV=<5`CrhmY=D#gwZ&O~a*9`*~(+)67iQ zG%SG|fRCu?n&p!RB^LY#m!C?chWhM1@iDy zbKh`dY_k|Whqds~Q+%mEv@Ho;mSTy%Nu? z$M`HmOMAnXp#~opFEgx|7Z^sRG=A0L1V2dwU#d&9FqbLiwuk(l+4wCZ_%lN;Nk24B zPk91>uLX@w%m+_MHUqEDrZA;-yfVX9VUBcN&bZppa8;EopC0t_Hz5@LhBi9YFy{((D9quV0PWlCxEbWAC?m3RbYbi0zK>FRm^v!Q25 z)zjV0$W<~1HH(`dC3behqWS&ob7FnKKw}5YkkJjfSM2TX15h%g5^XN^NE^ zd{%0MVaW;C%rwK2x-ZqdnQY!|qINo~b;YIlQu_9qm0B{z!RR`k&2U?Kc52C!o{qRQ zdy+cMa8U4{NHyfW4)zbl#}4AwE#(mfHI&}YF~Tkup$izU7SdFP+>*96=LaU&t>6N# z;E$v)Q%(n@lwD(+k&t1n+roYRJ5w~>qXT0x4&~H0*jAV$CP#)h3TY<8n+-`%wVe8a zFivMk%h}PE=G6?H;c8wgrKd66CZrh*Y29+#Fz+*D9c0Y3H1j^bA2fyDlfpB;XAHYv z3`}u;t%%EVjnFU*U2!v0#iezAF2U@m1slM%NOOTkR;QMnnOZVMCso03YUt{momw(w z*yze1(g%y;$I*t$GyJ(BX&2xWEoEpJHAwt_$RxLlylD)%kB`@KUkGZ6TB9!pV&^rtpA8~GH_)U{lgj=tUcndIeqI;)89M9})Tb&A8 zIGYuAvp(+di2dmU_NVE%&omX`BlIvFVX{u5hqJjI|GA#@b!{?L;UnfGhIdLWH>R_j zvpu!!c=B4NXip);3#~326pH7I!jt zrOrCT6yvj52W!2hUlR=;KOOH?l3#&wBZz`#X((wxiYPJ(}2@A||;U+sWlvFWW5z z4d9Ctwv+31vi=I79vM~;W74)i$LCeJHK6fH>45_W)vQ>xV#$h{P1c|_YikCrT(fx5 z%0U}Pj#xNi_?a89ufiwA8-@)XgmAShYnLqj_qYZjr0r0A0jJi2g`UOhYL+ZrwtnDp z^0QToYL;uXzGlhF6_+q|C3FiNt3+x{!EwO{^+>~^)~;K#c970;pQ=?GCx(cA+R(f&$`=iMI>p)(&s z&V5dAWK6DhiqApnN{3<>2j(~(cOpFV(i)J)6c(zm@f64WG-M)FcMlcm+V*vwQw)Yh z&KV$|H^w>R0w?qf=Zt=!)gqj`jpL=NsDr@GrAXTi6wP_%R=9V8U(pV-0#AXPWLH@aqZhcf!V8zjNrLN zD)@JCz0>`tpkL|~LxkgLu#g%Z+gN zsv8k^9k@j)wFfOLM$`Bz5HGrrx&o2k5jr~nA=UNHh{4X_rBE?hXbB`C5;anpfho?J>iD3k>4VPcNc#f5 ztUFW#<&1ZVeVY;4I}p4a<{(Ua#=s6vPQ6nS9EFhO2b?nB0vomjsat$q(I6;JvCnZF zP2K-)2KxU6l!xb`;-?}4_bBI7D zfWh|lo3wo(qHX(TZAbN5w!-92aA@?B8Wug2Q<0xKfezGgzf{%j81S`OcR2n$gpemr ze;~M&;3R^B3m~{7LW}1He4FjvAp1^J)fqU4{7BUZY%8d!(;Z7E+Xzk`2s{b>jikR2 zx(cXHg-%fstPQ_I#m17ns-;l0D}g%hXOM8mHIPtLP*hN;^kL*VaSS3~ z?j%^f6U8WW`8UjQj8oJJBJ!Ld`Zs`J<+;cX1kMZC^;Pii8q_m@DJU=+{CUkNxC6Nb zj!Ih`)J~|QrCg}<4s3}34NE)a9 z6OC$UWuuWpH0o$^J z6xdD8xCzaON{ymAJtN*WnucR-q0^}o`YI2KgJ-DD%B0SK1KdN7H)#@tj3x&7Bow}e zuJC9)A-b2l9SOcWbT?8_rT+zTkQbpkO)W9bABEIYsScecIj7RduXPG(&J6ZX?!4Ur z-$ThmU<0c4vQ!I|qCt9+N;RuWDfdR5RI{|GzTW>&`Z{$874i^z0S0=85C#xDmOQxd z-x@#%0=|bay`;1Xn!wlP1>GhY7~@5q&>DfjYzKv?Vpy9TticuBqN0DzLiUt)mUp6 ztzM0bI?F5piz};jOIKkv7i;|*Q0bCt`USY8vKFtY1<@?#uyE~itcLAbP8e(NuU@@$ zrCeE=1?jF_aml(xSchTpn$&iGS$L)RAh8gIlixoUk3rwQyx@6I zvc$;YZym$t&R~3A{tX%9^SU(o#^)7ZPjaqxB6))w1ChLu4VjU=^7yLJ{O|ID6nAG z_?8ImGC`XKmEs<&RPh}Ugrr5cL_YOql}2=H6IL|3?bS3|TTdfuXPw(cXjmo2az6e0hang_^j`nT-&-22rFcO_D9&)L!k%pqJ>6JqliW}4Af|lpiP28 zP^EM45Of;uk~D3fpu5rFn&w9}HEPObG!15I+Es#{!Adh!4@4#c(zzc2VcjR#d|Xgg zN2cWp>L#dI&>%s>1WgchuAmD9%@?!;NZYa+2&>4zf~}HUFX(zf&4O+d^c_Jz5cCs4 z_X@%aBc_%Q0cmZI3GHz~&kA}$&>Mo@7WBTLqk=vY^bbKnIJmB5M?r&tbc+uY6cJP@ zXo{feg60caC};_g*0D)w*9f{+(ANZg6G)e65%iGcwhDS&5UmEOZGJ(}D}vq@^sb4IhpS}16-pp}Bw3fd&-8bRBE zw6?g=zAoriLAMLKThNaM{Ynt6fT`>Ih@d@!4gl#|{#j6 zf<_4%CnzeYTF@*(a|K-lq_tftw95t62-+xUo1jKPHwgNMpj&`+Eq^WOc|mUgX}w2* zbS*y;^bbLHC(aECqGdsKiOzyf71UEuUqNRAX>B8fc8;J4f@mpGEqSV-nSvGwS|n&0 zkgjEepzjO%xu7S3wB+9ldR@?)g5DGKfuK(XeJ+SjMp|zXkd}Okpfd#Z7BooEFhOI1 zw3MizrINcs&;~(Q32G3uL(on^-xTyMAgyDU(C!uVkf2sUPXg%@&jaax`?KV}C+I^# zp9->YlGm-_7nCcggP^X0P8U=Hq_qtY+F(Itg2o7%C}@%(T1Zw~aDku;fpm>F3%Xg* zZb2Ub>GSj;h|p-epkE1kM9^OZorZ-Eb%}n0<_Ov$=$nG}3i?QpjWq?elnH{?3%Xv= z(}MmXs1q)$blKU0whOvV(2Ih6Xl`AitDuEIx~;Ah+BP6m6xR%mf^HOai=aD!blIN( z;SVKtOYXyh_6vGa&_N(w_OF6I1HvDqWMSnuZ9%S}PJ+4$qNT2NiM~P`AZQ4X)=@5K zJ&i-KMi^d^v&@+U!bb&V+>?abHhw$<5Yy~wcoVYgLGxn7E|82`0Z7XoS8 z#X_qQ+D4&0B(zqc4MafprAX2Cv9>T786vuDW ze{%;xHv#nY-)#KE{~*$Ir$?o50!DYkj) z*3VF>#y*?kny0djFeKcZfrmUWb&D9DJY@N7+=`{yC{QMC`Pk8hNKq>!ZgUL}-KA!z zBt-cgt zR!o`1)XEjBmvRnbqgdJ*dT!plnc={7OP8&!SvSy)IA8=V!@8DB@en6vfy(qtYZ}R^ z;u6vh7ZSaXj$1=iuK~ql545=E$i=CnzOG$e#<*=5UCliuoCFzBoOFNx5fJe8Y!$C|E)gsk3{bAJ7-Hp~q#fq*@ z-!^`S-=+Y*lgswhzPiVaU{3NT{0H*tTkE_cUqW>CI+%fQ%&j$*TAl?1m3=2*V2XXY zV~vNoe;)@ybY3sVk=`E52X4mkP3(ol zgJVyON8F@YgK?aN9k(*p#W-Gvy%-qVV13a4&&E7Nx}e3zZw|#1hMcW`b|^k`RZZ>c zrDHB#iukrG79+W6-QwkA@V3jDBZe2Bd1>*P=MODDbJ>+E)~~o^#Y(&rGiLdUB}V|7RA_i-he%jBvFigmvqTT`<*n3FI5B!LN4fQv6t$2{J3uSyFI`fs<2TpBjFAfwO1bALYmrUdD$1?D zSN`vaJt4|1G3(skr%>I9TZO&#_sJuJ-LSX*zJ=!zVFrn}oS)@4Q;NdRB6V*EdiRjy z)jGfJ@GxiMT;)8{@m0=6s9NW-4)1d=C7NZh~~__ohbH`KUksu)5v5F zEL*NZG-n=ELYOQenloQkMVW3wG-tlmk(4o&Lo{a|DIyI_)*+fRKUOwprG{wEM2Kd3 zpWDr%;LMo_&g`X{;LMo_&YVQn!I?7=oH;o|1!vAgaAwNz1ZNJO)miu7NYF#;hYhV+ zgMS+>dvk!M9op!JHrnjl|BRU?dkL0?-`t5_M7O8sP|SnPXAqqxIofg%&0zDH=OR0X z)HT?1DMrH8*~Byi?OcjI?>N}k8~HW^x|gHP-Wm?)V_y3SIDdeh`iTUJd6s=efF?-V z_!`H)eU@XayQ0Wr-4#7Z@dps|XY6F%6$41vD(s7~E9=%P>;8e{$JmXcWf%bV^1xAL z0T$m@>ZlnWW<|@rik2%y^y}g}?4)S9QuG;8f5om8T^6Fkv^?21?5Ni*(5LHFJ7ff! zeSUz3E^X8F0s0oBVN|ov_cr@{)$9R?`x2r^-+a~V*MV{scBOAY_PNL$1Oa`p=OVDj zMIoyFJxF~Yd;Y0t=RHQFx^1fuuPBunVmwk%V5$wvw391QO zaN@oNJK0#FZ0v@Ml|s5;F>Z;;)E*wV)2KX8RDa2;hkI2ISE|E#mfuUtGg1xM zmFf|yc}C*yYcO_FeYR5lYovaLojqryW%mh8H5#i#^F}nY>X<%-o&nLPm6cU79{x6XI4ljg2U^D6v~w+Oq^+$}_fi*P-ZOFJ~5rZj&IsRr!m?_8MHf!^Ji zv0>3#4AP9v_H2-RjJdiE*1jjG+UHK^o>@xq20u!Ym6K+wivl* zv@nH@^%T-7-T#>MPts7+lU3^~)0Yo!Lv8Zt9@>*un`8>>_Lg$hYJ^EsPOMxmlbf6g zd`$B}u9AXY=JV_rV-0$l;RHjX1qry9nZ`%@j$h@qFlA<%Qpv_!(#x!#kLY8DY=-J% zPOui$EqZwmCY>kkxz_Y0Q`jU=p=67=FO!wyGn{1Ax;b=TvTi===Agc03hVZkN>xpdKDx6XQx2sm zrA2%GJGihj8ymn!^ajK48d0h@IKkHO?8j-=uNqv>eoT7N$Z=;srm(S|LTncwxtG`| z)`wnV$a<)uhR_U$rJR|@7p0_I<+U({b$d&(QunA$Pu5h%GvH1BF}*i?6ZmedJlMZy z_kQZ*ME$wqR`2JE$%f^4ON((&nI?0;MNAOF*<6ROV2@i>jg(@W8;KR20w+(cOvtM1 z*1{~$8k5I(EA+o=8zqj#@bRCVQ_79TdFF_*!*H=7dB+aZ_~?!urd*$ZHq^@ z9y?57-QH5k%4sg6Em_l7@KrW!y)i6t>@f9elY5e}!`WPiuV7Ddm6c-qe`yD|=~u9W zMey;Tj2XVC4Vgy5m|<98NZv8SG(NgxhACsyluB+F@0ei&_(*4e!_PmEt1-g~wvNXP zr&+(p{h4%@G07b>Okra^g_3RMF~df&K8zWLtjFv9Oe^u|)?($$rLu$Q^@ej!AB@`#NiB%)x6ko5!+?E--{O6(SO#V>b|nKy1Fm%Ufm~3O14p@;X}N2H2^-uu*8tOKEyOW zx<15|$~2`|i5xvXBs2ryLrlUmRJAD|;sjgAKE!F(?{NnvjW%*zA7Tm{>nUV-<=`Wf zwxOmct9CttH4iaj*oQdHdfgJD&j8&s$#N2Xh^37*Wzzc)=W?C@?|f(g^yMMq(HAW>~KPef6a=^r9F4-YOdW?irr< zBUm#Y+b>7gT3f0;j#k!p4|c9W%}B=W|EUt>DUVcyApUir|@=0er`>T;ciUe zPL}*JNp7BFcvmFwc1e=_vD1YlH#ZyZAqm`FlezsFSiN8aeb4W=vF5}nNc()7n(-O_ zpnwfhZWmTdOLn-GFG(xtG9#!Y;48G9aI=!OlD>C0(tHIr%lp{Kqwns6w7$hy^|kov z2OO*dkTu(}FAO~CVL7Ha@RVd+ zJt*C`vqbl9{L2*6`HaWEl`;KJQ;2`PWBO4;Ki?dg&iCj1V<^-4nb))={-b7y4o{-< zQ{`SsbpAP`kD;TskbsYL%sW5yHj(~PRU?{c=uF^K?-^-YKGGVIbvn0;(7FjKmfW5~ z>nmu01 zLB@>^ihZNCl?fUns9MleL6-n&ZOuZvNziu%{Xo#K1^rggvp`x3VjLI?{DL|P>LjR_ zpi)6+3mPS;0!T}q3{NYENV>jgCcY01A5+Wms|3OXR@MM19$Y8Uhu zL1=LG?xOz6M(bz?O(Uv9Z|vEsr!JsrerJm8r}?Eg?e{y1r*@>eB~?6@E;VGtom@&& z@Dk8bp#WI5*voArnFtoW4Nd14j~u+IL}wNc1>)(PqA64=hMmqPn&N$X9|iIC2VImB zayRdr`^W^3o5#re);?W+rRDLwv5$!nJUzL%9KCPrW5NQ@O8lpH^xZA>s~?hs@9ED=VQMiHxGs3;9sShpXNCj;;Gy^PQ?~~UDTL$6zWUj3c<@FBcrG@n#KZF@ zN#5?W?@j3o%6`-E;N>9jbTFyJ!}}%~Ry^cMbY^w8&jA1HU#YOGZxk0d2pJpyugy`P zbLg*uykE+M)~;N%iPrw(FJR>Rm$LNVzYHII7JV9njlO@;t=RPz%Nna1GxhtIi{T%% zHsn3@#v?ZJ-Qxek_b<0YPem8f=x*g{zJDRUL*U!JMf3H+LGdMh|1uTB_-cFxT3)C5 z_A0*A?_Vlvs9hI$Klpf8y%_zMK@k#ENW0 z1&4sIli}-%a^?8$CNlei*)yVxpN+;2M%xZK(Na42s+;`wks>@%35px=4yhLwn)70C<)y5xmAqiEOP-)jKe!@*VaQ_RqS9DjH)UQvG6>6XELv~@zsr| zy9PvKj~)vTXpJ>IL)Dmn(Za|@dzOVSz{-Vq5A-Gdolf}vI#uIsN65hQoBVZ?nug=6 zl>BSyf+{@F$p`c1skKuo;@8%JQXM}FmZPP1?Wu_E|MZQ@##bxC(fz=Yw&S^NC!EQP zTg$`upMahD{x75PF~ogre0Z*Zzc#Xi5=>PggQ=1bv86lJ&utGfo7<%Q-7im^KxGer z*w%gk3D37S(faqhK$dE>#BOdXY^w<0znvAd? zH2~>o{oXEUX!;JS{13V)%k}xUe31PSeT%y>ul4-zmM6I}*IqS`W|# zl4b_5UcRtrPW)?R3;L>}XAV9ndc5=iz9_=p;cJ6I*G=4yX!MoQcCxH}5gsdeny+~l z4UhWw`$iYXj+-S)w8XspXzcll__o7j!zbZ}UlGGjx{HZ4`3ILhx^*7aucGwPXzb;~z0k}R z@p{UQ#&4u>C}@xhe8UyqwZDHoi74H7;>N)$yPmS+Hxe&C-rBEn$)sqko~lrGY|Bp? zKiQfkHph;UhCOIp`(Bb1jVr!SCZO>yjxPQL9rcT7>|QD>W#EhrBooX#NgaJIR!GLc zEVjd#c_S6{Siv2p{n`E`QNxkjJ>G=&i_DJ9ip(^vSd0NU&mZ6R4y>#QfA6J=*c)g@ zG-kN|J~;g3#jl3%pA;)XpJlfm$_c*CAzoL!^wiUYxDV{5qK_vnjgJQ|FK zAC9bS0O8vpRLALp8q>GGu6pqc)p~lb#`NCg$Hb&2-DqqFjq2*yGtss;o$69L_>iBy zua3OOu8!AHe)*0EXp$)3@uRnJ2;V!h#fne_ZddqvBU5F{ltlA{5q=K zC*_xwhZ`oMwfA4Q*XU9XwEsHXv8rwVbq5SOOlg%1$0?>^8o4mCAaYSV(RKf$&s2Xk z<+Mc?Z(Blk9X}CnD29UQ;+X2fc=eOT)$xk9;AHAN`p|xIe0eZ@|7C%y@WYj=10RFD zXgrt1#&fnM^j~#T&YnmtrcRo12)Dxx^zs2l{c=n$Xc!wDRNks8ZL5wQu4;SJKiO_) z|1OK>Z_O%;7KWSt2P|M;TU~abwtaH!aO7c($*qxid6!7+sYvPG(gTrjbZMb^8O*P_&Qu+{XAiYv`vdzX{#%g~KBM`$UsvWWZ&8_jA9qogm zq$+mU5F_=6woZ)u>)Pj{e099O812>m0hI&x`gmhEFeEnm9*^I~8lF^U3<1~V*pC(N zMJ3|rxlP^pO$a`+J8?Yn?2Zc{%wO=E7kEa;#mW9UatS(n=@H>eZ~)BHy5rq1TbDJX z(+^=ZSI1*?p1@b8O;ba_H<+Fo`kdg zzJ@j$(iwZ&vlCBnbZrpdMsq$+kdbctZTJ%4Mb2nc8)wBx7kE}^zv4iSg$ced?1(mP zQ@-4^lf>>X56(j#ys7X0@}ufJT>cJm?=OGfDyG91l&Xl8zqY^pFbp`czx+6zK=zlv zL>bYtgS8JvAqy?H4@rmGhsO6YoNsA5-mlIoiZ!-PP2BNqxEaQDs7}Y8@4jb*cTLNW z#18I$Zt^AhIH7#{R@-}lQHUpHTh}C1W2dJY)lD&~2A!Y&?W#;oUlkfn4_51{RK?nw zBm3Y5+uEo?lgpl{JqpL53RTB%Bm3QYRmWmfuj<%sOi~ZXt+Xo{j4pqcrRQdVl zdJAWqazFk>19Y`FF?M|$^`q;-6*!OJ1L|P4Zds*bBUHfSj@*j#mnu(1r@-+d`|FmY zH1$0oT`W@H1Cp!K21qvr{}==;3d_6dq%~!`Jr5V|2Y;ZF3G?^Ok2u_HScjB5j8r0`)(yw;C`;f6YZAK6WXBdVLm)WHWZoWd2yZu|7hNNjJsp1dl8 z6GPKzf7$-<4HU1tIvywQt&H2%u_r3ZTCbkmT({X-ykP(?W1OnRIbW}~KRfYe9iFI% z8;3zSU8g;XbFmg?N>|4ouWFhWL{)-SxH5^|s0Kt?>z4Z}py&EH%0)_Bqp|m>^s0}! zbo&N$`LgDU(!={vVT_4g`*6O9x+m$#LaIM3@#7LE5N*nd#cq0%oc~BubaDKUx&%XJ zH1O$IkxkJaqPNXJ>7H z173maX0n!QQnmPCB~AtU;tu!j)v-sF<+#SHE`78LSLJPQ`Kn5B`FD)WuRxQla}Orm za0AWB#^Cl(lzpGq9MXpRkGyEco438tW>3a;(%^K5Py1xDD186;0M)E2_AFJdBG#a) zUx|y+#sOe34V==pM=}%Ivu34f%Z%E0E6-_GZTZKlc=J)T-6!L5q1L$1ZA{;hH2tXt z({7yk`FaPI>HfwAA*PAgO?#-#5BEC8eq+3@y-^jyMVfMjs@Q>wrfKHPeP9x% z0RFqT@LH zNd7?oRu?o|12kXSY`8=vjySH^aqNIvL zO|tWo&qaTl{qckLeD9qnT2JVmjbMs21s_FgM}D0wMswxaNfYD3b~J(KJ{THFA7Wyq zQFz&Md$>uI945-F_1=akdD&?#uLLo|y|tGtVEu0kvp|cfeIG$yG-adnJOrxu2HP+4 zt_Xe7*|(73&UM7kl=TnsH=z#vkm^9VA73du^1Cfa<1BheUW-(mxQVjc-dPU3_hEX;gdw9&Oj<3FkY7^|ZDFZhw54Cu}%A%Sy^)+lg^YqkX zH=6AjNl%fE;z)IE`3b2Gmls!_Y;C=OP6WNbtd1wzo~B6<>y(%N4GDP@g~bZKq--)1^VZgLq&v3k1MnzpKZAa`vl38fW=a=} zdesn73Kmn^`8&$aNPhC=7=KawuWtH`mg#P+e>Rv(0INJ^KJI)G1T)t;$!Zm3$I-1R zA53EHr^j;05Vjmb%P^mw{ndwjK}M{G{08HNc;-M?(}ujk1pM^IRGKrlFG$6N`6)S5 z{$Q8rFJTRdkx1utC`+7Bp_y6sRYs%j3_jD*?87nLw@l3{uxA;oY>j&9|HAFDG|vQA zmUETW7+2~zYCi>C4nuPk*s}Ch2#*LEVe(GDvX9jms0dU7Dg`YDk^c(NDo_=u22=-X1cgBxL0drE zKy9F1pxvOop#7k`K?gt--~FHmK@WirgN}e61w9Tr3OWut33?H93iLAQHPD-&GobfC zXF(r=&Vep~E`q)QX-Jg)dFpvzQ-3I(1%7b)J1}F=Z1Ih(a{^WxSK}Dbv zP$`J=uMD&Tv240sjrqA3*Pb{sej-^bzPh=wr}lpf5o-$U8tT zkO$Nk)E_huGz2spG!irhlnI&unhd%OG#yj`nhlx@x&pKiv=p=)v=X!$R1LZoR1azb ztp{xe-3Zza+6lS^bSvm~&|RRff$jm_2l^K1yP)rbegyg{=rPbQKu>{AfSw1v1Ue0R z1@s2!51@BIe*(P^`UrF$^fBl&(3c<^^3MTsfjpqTp#GqNpdp}DpxEnhzHo1g;!i?J zg0u;!i3PX^qx`h|5vXH~@qe;klzPqjU)wQ?Is$pg9ixoq+RY*CqGU_Uco}~G*#=U! zc`UHnK+3i{c^Epse`5nFS~;_0?+E%og@XQP8%U{5lg!(h5_@%BLj@8SyRno*>=qQg zk&@BmTZ$lYbMfyzkVUyc+xs+cYAz2oHPzKNhc)B=kuSq9Y9l4%fdHASG_sA9j3Z1} zG;_UXJf1koM#;OJ{ik@80N+T-INtv%=64PIUm7JLH&QZAF(opf+DOTGoduPAv5}JT zPG5>la^*%!#s~c<2Fd0dDH;D@Hb-_#LiGz*H#Du&3~Z$IS7y-)SQHVU?UW2`r$l~| zE4EWIu$@vjHs4Okz;;UAJ=k_i2DVcokErdG?2`sigmM=!Gp%0>2F^?E0%itMZW7XL zpD%NS?|u@G*#%5)`elytP^m>W{W8;&WL%ST&>GCqBR@jvyW;G`cHF01Xz20u9rf&B z$)Z^TFJ8E0mZoDnFz{D5G}LL12aIUcl@l+e(A)% zD~@OS{18sF5b>}8#CxIdF)1=RM{}I+a~jTs-Zl`6+mh4;d)>)allufzc-YRrR(QaA z>YzN-#x<)Y`58DY4?E4rTF+cQ&7E%5J3pr|*t!*;lWSIEe@d<9snM+K5=nvOS=~}y zjpDX8cyEUrfs(E5&heP9cvj#}H z8?YZ6OkXr$H=N0y%DM(h*VRe)!s+*fH#Nd_O+p!>O!tW0{j5E4l#nc~?;5a^A(%-2 zkWjMQZjlAdi{fKmi6odvRS(_)@_q)84B+0B*@?tr{~$9{%Ir`w3`NUyz$?jatszlT zO%_W-ZU^p1Ibz*rkWq#>yeX_XeZEPE&8V)euc*Tow{IWx=@ z_^tKSH-u3j4dpGUht3QSG3&HAvWZf`h9?s>(^?|Y?IYE4}SKs2HQ4+5l;*|&!g-la-g(YP|CIS@J%H~0=Fi61UY=3#@cXY&1zQW z*_p&j@`N@vVvA(7OA0fUc*#gmeS_wlz#>fLfto}0Na94s@^e;oMP<05NpntN#S_qs znc`3|XRdKK66e0?yv+GAUK61QsR*|qcpl3kt^Y#Gp*%O`p3ZUzuKwh*d8m3+(s{Jb zyj0>CqW)>lY4N1X@-#Hnu3@#RB~)Jtxf!egeIBZglGTq_Kv8vNrOIcL$^GdIA7_3N z$)rZA9&bFFGsvX;5f8MQHB={q{V7Bs;t@GJ%^76%J6%;AR?ReL0n?Qc%PwzhXs*S% zXvpvaW<-|qXUD8*&Y3J&4zIy8nM|&#d_r|0lgW!^N2xAk!SdNKQH~wCHRtTU^ci`f z2l-bM7OYfa6>%ZdKFwJy+8P()EH5>`NQ09ZRXmXRiz62Bjv^{o=9yoh$jX$2NZx!_ zi(cbRZa%BHZz>sibR0W>4uh3*{#dG%XCm2-+O!6Z=?bRhJx`ASSM;L*XL-%PVk9{} z^w6<)A#`@Sw>W;!w?4+E7~w-KEAdG(5M@xzHJeZ~r}1V;03x zP}FA8Oc(PCsTsxf*mfNqFZNS)E-?lofZOjZbJByZr=B)gcP?|%L=i6Z2AXp@Q)GEq z?k;ze)&w#TKCJ8ap}{oOHkMPT4c-6}ND@5Rfr6h#{A9sLqpt&RBJol+V{t=$r~uu@ ztU7+UpYv*CG0YiY*`3!oQ}7h)2}442u1q3_=BbTJLb-P+cowpVQV=&D4kDICTfwCq zQ4wg)RR%q|yDjHx=WP)4;235ou1uiDBAR+tJT+xIAAg-ytlKm_6`HeZAbB`Es{scS zjMI$y_$GDMdX||XV>UFR7}hvXlIjp=*LW!+UwBme3^Md986Tq>|I| z+QnJt{4SmpJ@hO_XCFG(IVqnsPtyj?S??o1OeEL<*TC%dp|({v;Mi%%HZo3e@;==@2E@#H3SM_VRwa*?SoJ{V7$bB5Z66bA~+yhhkT> z)P*s2Me0vWAIfXLr94%4zn5`0=GWBlu4f*l)SliU#YMGMRBVGmPH z?*h4MnUY%>Kb81+rgh%NoPKhy!GviYlFXu$;(M7ty~#w=`!;&(xTDBTBGn)#p~eiR zLS&QfM21-F!)CtJ?yM8=i=(Lo6$A_B)#9kzqm(jt7o@0B*)3{ltPL)r^FW>Zj6X0o zJ&4Ok&7vi9W@)Yii2;Om(q_(UFdcE-VX&vMxJ8I^Iedm_=9RcPXj~RYF2wu#kx$$K zD7%4+G?7T;T#EQU{m8>XbChySYC~Fl-zZLHLq!uNQt^q5H*~Q$yuN%%})1YPUasAC%n_hftJ87Km7-D9Q6n5fawG2VYS!^(_o!6Eol4Wci7mlcMgR@7yU$xF8#n;*a?#-@ebQCO5**n z;BHVlI+qX%2tmhDPf5!cv_EV*Ci=w8qdM{w7>|L5v1f#GQHS+AZ7%Z7zyoUlG>l3m z;+IT*w}QV5G)5ZgvMCjh<;NByUWHhHVCQ9LBmhuxFzf$$}SuK zVb3{Re1Bwh+WYXL2i4u6G5JW!*iXRuBV4}&jkOKM+yYNSOFZORD1>-W+6Xun0W6?W8Fwd){jmsVSBNSZUHS!E{9j4K_aU|s0oH>urM#3H z`*ZlxuLQpi8hZi``mx_@pz%}v=y=ec=`s}(3{C%qZp&KkhyMBaXOF|&8iZ?jDwI?U zF+&&w^Nn->0HKOlscH<5-4& z0{_2(SccC=Q=>hPNACL<8GaSC`%vrYvMF?kxuN_gw)lZ~)JeMzVmCq`y(r9-@=|K- zjqv>@eC`E}ZHMC&zzI-bk5Elbk)D~TDY7!RZH94o3t!n3(L7OtzaNa(6v`xtYNbif z*y8UdlP*GR7J65D)05du7ytxXsi#8y8&(ojhu>BO4p4riOgw=se;4bM0GtZ zL`?P?N`KhqUWs;|_7S}3{qwt^F=wctJ_n}&Z;~c}#yb3Xg#z#)Ir_t~6Vvc5ps~Z@ z(9!XCkz*VjW8esY#!+=@6%ELykmzPK{R-Vi2NtGLm1==}Gl*5KuL02OAZ_G8QNYy@ z;kgTLU!CsT1fCZBmH1uIe#NJ*aXmtPE^1ajvi2e6s|8kx{2>1E2!G@P zVL54wlq@twb)s`ZVH(p)`1*!^i_M~Spray*M#WqlL39V%|oN-m*9U!eodk9`ii<1bkVokT%@=jimOR^^e}~$D}9H}LGS$NqTff+ zr5{MfBrBUmy2CbvBGnhBuWKgZv82q2+%iEKZ{sEEA4O=?ZVG#|%}k>c@CxBy080Bi zWNHD{fF`_^hGAa>kiWvw3vI^E6igof4$sW)z7xB^&7uBJexi)#i26d;D1OuQ%i^vi z1=RhqZtqsawHu^O$^&ba5ErGW=|LlFA^4fyJtnRMm#)bkq`*hL$XuJ5H35#S5%@QO zwB0MTk$SrHPj%x}ik+$K?kiM|rvzl7WazRfRLU8eKGtSuo%fHS^@kvqinjoMFQSPm zHnwi2-)M8tdt16r@EgjFDjYAj8*M{*xv{xIKOu=tp&_f^WHW9?3A5<|HqK@*_F^2o zWQVIzhbYu`o54zUG(wC5v68(KU_NLHl`MVPKvx65X;iYjRJ;2`N_Cb9W78yxD%BB4 zPoz}Ch^Gm}OLdEw_q}yI+T+#6smfjq`2pLk1Vx z!*56YMEVxtD@X73@MlwO z?Q&sUWZ_f)J(5IoAfBY(>*-|9G??)gk8>KLKf|GRc~ujwn~OD7{Wl0o(-a=`H#|2; z{4Zl3>eY^lDw)-Pt9}r=4DI5>BM|aaV zD|9`;Z>Yy?p3SPy9^Fqie2(JzM3mZXT*-7y1n4yJVMyCvp0*#u`9lz!HvU*>MXwCK z`T;Rde*^xnfY`LLKjx!!F86f$WQH!9r=xn}nXtCGhCSrt*P=)m&60S+HtX!sZUz#z zS!WM)+T}boc+M$+C{1y=Xo1f9YRZE`kq3CA5yG+&+$r=dIIV8Irq9yZeC6 zan0sQ(k@?Hi$bCpH2ieUt<$`RtIyNf6Bt>Nr?cftEuTMFap^y~8$~a&UDRCt0M+au z%h*2+r+jTf;#Y$Tp#4u1X{s@%KiUwe0BZkq85#L7Tn9ljYjHruSud>|EytvYCTcUU z)$~r*tY%?4GZQp?cABO=NsV1yx>t|;)-dFFGrZP8rWO?IxDh_z0r#8aQwv8t2HrSO z+BI;@0tkY}kjk;QfO8XE*Mr9HhvN-^*T``n96H9of0E+|a1_Fk2O9e`IPM3yj~q|K zaT?$xIbMQe7P{&n2tB}gJoC^+ljY;EnR);=VYY?g`>F7yTzr%HE@1o#BE57#;AbL~ z>dOn~3SZH07=PCnqT|4=4E=NDR7_f@)gN}B(YXaV;;tVcTX>m0%sRELF!g#+0V>SH zY@zvaxE=+~42RY=GCeilHTo z>cG#?8~y||lNMq$eIr{Q_!x}y#B5xx>6;j9H9C(KpqUkD9xhtWp(Bsq2F>Oz(~ zb76BK%ayrQUkj&GeVvOJKESgnDRa=z&1Ts%r?RS+dcE0hie-*)us0fWFe#qHDmIxo zhb<+}X@of)BAu`zGz+Ck58Em0lh7b#zdcdvIIuRERu(6WVj}+>~h!DGCtPgeT)VJ|K zLo=xDYxAg^Wv4CUHWNgbet_yJ>m6@{_st;oxP1YD9tZ;yMOR6c{m)QIO(as;>FJcN z9+iCo-mR{K2T_98JstfaJx&E<4%;|Nx*WM{+}Ei zGg71TWB%iVW9<6$cshcHpGl)bReZW;SoG7$1b!xsJ5i61k9d3B@Rldo&~GNa17iGr z(f;@dAyGFx(c$~{(?_KgCsIs_CbK~r;kxFfH9a1BeRAKgFQpli8?rDXH-hei8_9qW<$oY19-$? zIm4n4q{`Cjm^=r6NPyhJw4*m*;fi6Qe3Pi#^CunqHnah6ceVw%eH zkhEULA?7~O(tZ|WUbNAeokSNT=1vHy_0jJvNFl3dMCUdJp6GLoVu~dwl*Ug*+Y z`z4tgohViBk!=Id$%19^7KXMVFZqt(157yS!VbR@j>4>qvzACG_d2rUJfwvOrAvN@ ziLg9G_y0X3Ss){kI!NP!UNoXpj=eBGYHtc-r4me_4@x{(S-mJWAgzATCEs4i0RK*k z|L-+wIwg=_^5w=XvCsfZC45`47D@OQ!Qy2jU0Y}yQZdC`c2K&c zZU{;!qv3*=iYX}4Ce>pDaS7j4$-bs%0B_!R2_q)2=o!a~o^h<`9tW?WKB3t!?lvv^pu`hYtc$y6K8f|NP`><4Fy;3d-hUyT~mpZ_Sos9TiTK?|L9S=x2>{W=*gIU9wKL%Xim1lg1h`R)#-#g#?= z+tlm76f9rT)r%0Z>4y_^9T#`BSqVQ7EW6fxW`~`NMgOPYThJwApe@9EF9G@1P)hb< z3)OY`lJJR$$(uyIko`w5A(;*M*DOM9Q=u2$EMP=osZ_W(QsE?&aa^Lpb=U9EHeVvS zWRZMR`Co~;H+73-N~GDnWR0%gYJL~XIdt_RWGJEQlu(b!01r+72M8fLtCTJ@bqU7` zmZ5Fd4@yUll3Om}<T}AM*nqXQK^LQD%Nrd-xn-adeYHXnYp~D<@7Lq$xB)-?J_iH*Fov{NZDQX4*}iE zqB3dsTM?GDCq>y)*3%v=qQzd38J@I8=8i*4pkMbMlu^lik$mZXQ<<<(n(%3a)zgH9 zu?CRqX(1m;O=))_K40!`BW7vRyhySa^o(;scXhgYn|_#9+eT}0Tu!1nj-GV zAI^yU$9c2jC3caxvoWP4F))8xBp`UNswy$I>Ld=>qS5Ta*IE*|;c zQ>r&r>NRuSrQ?g}lt{iNt`k!oXqNC-inU0>-v}13`qE`!@r*8X^b*Di78jH*tZNCu zg%ZwItVI%H1%h2XtaQ=uzUk^^Eax84|7EJGR1y|Qcv`WRN+{Do5iU3=T@DrDQVC@` zxS(_mP=X62#F`4b@DwVcOa~7uU6EAvd=QOFkW9}~Wqg^0rxa_kwEU9@OWHU`8MIhJ zX#yEkc2K$&Mg*hckAbs=`d_PPmdKb*6?%z`xhTStaYPb*$p=jNX8#%LPH~}HN;o(Y zt%O4bi;}YNpmfo$0U|61J^#yS_>Mgk%>oIBsL)F#l!|!~N>?PB9^Dg-#PVx`w?#^* zflKUFar8O{X>20|vYIwWrVH61;oXY0R6^P^fi9j697q4ZO!$9A+#T5Dy|+gf3X?Bn zWOT?G3GWnMmuQLdW%dQ}A_O)|C|@#P%0OxCRU&AEQc)`5b%JGR*XakPBdp{WNVqv# zPCBF=y^bU+MTm&dGHH*zQ+dj_>aR!QJl7*+uQj2!unT*J{kLTEHh@p#P4eQPIq%e}cuBHp~t}P-$I=X|i%48m}9lV%S+3mvjD-kIP z?@_E$3F+%zx<+YD+Qh*1+62(>iGgMu#dpRRnaPs-kmVSjX2}2#MRdvZy`xxV63Qey zal9Vp!_XpRc&zka*B%sA;;^{)IyZu({MsTa{W9u5M52yp=7>Kg$*}bOG+kJkisLI& zQpGQO_?#A;*L(PI9kKsq46?H7+G43XVqLEV-!tT*o*{dT96VhoMV*Mmx=@Dwg)kd! zUqYE8FIIOZ1vYD`yrj>GmmSdw@`=znO3TVOtv_1n=>TCMvcn z)?cYMSSq0`X&bifk;#&2AfCjL4DJz&O_N!4R_O1odWo8cRLR1S(pYSlP-Y35qJ)v; zm36ldQa#PUtrOIKNa%~$~=`g;v|hF1b@Ie*4RTUsa~?Xg4`@2WYD{VxOmQz$`4 zCt-Bp-X7VcA}KE;%}2+$fIt0O7l%-Df43iNW!JsU?^ZhFo<-L(q#N%d@eWE&wIW3` zV>Dvg*PBYl?yi$Dxzf!-+5Z2g())z6hyI&NpAgDk|8FXlrPb>_QuwGn?2;c!@!`08 zAQF--S5#8`LKchpY|TTI`WOA!(2+Hcrkzr%QmE=r(!6%W$n_Re&$xzmk1MujU674Q zlhLI_qU$a?zFUg1du?|k$o*Hrj8}P8L3{Ghl@eibM)&`;Qwm)TO0Z1ACdFDJA^pIN zt|8j>+R*T}K4=l_|Ml9C>nVq`#-;08|HK|E2Rs!1iy7(!HECTa;WWisBw>MKEtF7w z)x;);N^LCY5y=7>$#kW0v4qhYdv+xm(9Em4tR*}u`7J&s*zeuo)wH24Rd&OO@^~mL%?%}(KlX7y|r@Opd);cIwtmLmR&IPAV$ly~>FWNPhI1qT<%^>Kt-O5A;1l+&x`bWw z1w$kzj^tMv^8Tt=QJ0^3beDe=Z~1Ime>A)Q_akey|J7-={9s!xY9BL19yz2IjRA+! z^0Q}w)!DP0kDrp`@LJ%Q!)r0pM-HzQo=qDX8k->tKkOiYuQkJ);6haED#A5fN4R2j zU5I3eTf32iJoc61xZ3*ZEUQfX+8-MEW&A_q=iM&rmt^*L=y~Q~YrE;dVXk{j$1XF) z*c3L+790tC)O6q+R-40`WM={UH6fIbJj;QTVwgw!7?O z#A0%oH-B+H~c?WsE2@2g4ob zI0Ti6rv8MP;4rRvh@E1a;8?}(cE@tqh}}9N1J@F>VoglIcNq7>?J7xluPApP5;PbGzB6+H}%UzikhjNl+QrVh;a?88^)w zUTnIn!5_cIOa(uy!5mO+rWU{t^~mWkHd6*IWOYw3E%W>R@JKz#WaAt>OaWPQ(oAKx z(?3*@^~e%P8f))CWeTGfF2nyg$8#cJi?~zn8GUr7x0r%9nM_-z&_>>W*<#(pGWONP zB&a}=9x~$)MXu?%7Va8z3V8GK%qerJi05rLy?LhVBz*2P`}Q;A`k8L{_nT|F%8-$* z)Yixn>xZls8aQz|%<3oFTdR4QBL$TRE!05j>8NSC55nC)&m8nUxYodiF{mv5VmJ;0 zlE@mrzG4~-e;Lsm3U17Ad z+gay<6npPMfUoeZ*&dZO#I`n=ZsR96q8cV8CMF@l)K3|XyAnmtT|klQ=HN1j-pT4G zPQIRNT8580k84r?$f|jieZ-hY(gcD+cEenU5nskCGxB_xgQ7H^(UE}&Xmc1>y~p}P zpmjLknz}~xk@aZ1de~vql_3>WfMqy;`vq+;5{XXWo*Va48Rh~1(Tp?Jm&t18pzgqU z1j-Q#)xQiWHvX9N#G6%YNxtMDt zh!f2bf>#krv*B2e6k2^V^Qu*MF&Jfv?qV$6t};jMLsDL6J&;MA(GQW&D-kfs?1%8F z=mc278tyPz5k?C8qqd_B`YAnmrf!Y&myscI0%n}ir6nm2c(ERBBR&OJ`}LGN)dadXQn_PJIii35Gt0(fAlegz6P4L($=|^khdO^}Pp0 zoscc>HH6WP%XD@oyy+N5HEOOoB9F@O(XA&bJ>2ltSi`sdpBa9hB0?TCM+`Ryx0uOI zy;#4V_nF2FIuzbGbbY2wv^m)Lje*nLF&IuaolVH5+fBQXYdyreAv-b+HSaeX4SvSA zw{FLntD7my%t=?7Df7T)T+Yi?ywE+Y`$qbvNZ!3Yq>z8^dsu9! zxGCpFspBX?XruavdQpv<@**Z)uQL|O( z`AqQdkVMa5>SJgyF&sM*Sq|m$A=tur6^Ev4VOA1PcQ!IGMm1-U66UTkee6!1I5L(q zrL&K&o&y1((&>Az|n#lUhc*g@MTa^4sHfbA}XAU(EZk>x#ejDGR z#{=I(HR)aKKSDE+IL951S1_~~Eho(>iDnR!BpPWF&Ayi-{2G>ty5Y(zLqr&dA7h1z z8kAQ|^(fxaVyw?Zh56A9tin)7Hl)Rjy9t>v%^a6x8i|;^9)5);j%@m~k3~B69`s;$ zzznJ%f2SIK4{3kWhWV>;l;#Ratcg%R@v5kN2Sw#OC@SAUs(kNJu%}EGEMfr_Ca7Q%PoM%q^h8duOZcRcAcgMu=yaN?dCXMIi zI27aUj(Z$?A0vH#g}wr1Z-KJcN@H_z&wJ+d>81z60a`z$>uOYL-N;7=fR4D&dE?GV zMy6mK*h^Ii?JCakU^N=oQ>;Y2+hGH%O4Qw9M(`Nx#_vM!Lxo2j(GBNe`aD*)-Lv{V zC^Nc{)e{}Y@h#SSX348&U@kJnN<^4?SsySYIE+M0ryWL^hQfq0G#gYQHu0^YifOvG zBd#4#muNbg0a4{y^j0>3xtQ)78}e9jKo#c9G{D3;)?pk&d$=4>4r!RUY%jAO!=s&v z`8LLHAOyJ+3F?dK7D`HYSZ^RS>NI~Kz%zx3>POE)hU0zMy_2;Uhw&+z!2sjt&FD7B zQ3e4_){IR4NbnGHJMu_C8mRR<9m{F%{3n{J8ZCI#0?)*=VG2EHI;isfOFmKmr*~S_ zz!!d9IEG=PKOxRKghzO~3i(a_mrJ_Ja@t7*jPuBScz;BilK z@EMP<;3bb06st|_5C&3mM(CBl(Jl1&ZFjmn)|~h)_+J<=dg(PBZAq+TjR#a@*p9p8Qs;(6h>TLU(!c zkukX_j4TvJIx@yz@S-QV;Fr8$=EWPU{*??B9xbP`ORU4r6i%eSjmo3dDD>p7M}a@> z@gXittd6n6G)VLTAusuIHhx0zbHrVK?I$p4M?^A*4R} z!Q?ohr%v4Ek8tGvYsk0TY{<7;Dc| zXbKB)5-67;ryb|cGV~^1x=dy$6YnuEW9S<|oEJhqbF^8Z@u&n`E(NRCeinkxI^`%G zKd#|ue;*m|FHugMHvn&hxh*q+IBzy$G%6HUz8e*9i$dF!Z=2%nQfRmG-K%)}6}nsb0!gDN+DSac8yAb`^r+V<5L953oEoyAz2D`ZJXk?DI`n5u2Cs) z&3hHvuh88J9Z=|yLia25ph6ERbXcJy3O%aO;|d*B=(s{B6?##jQwqJT&}$04sn8jP z-c#tTLLVx0PN545T~z1`g*08}5DuOad1Wb-pb%|H#&a@Bp=5tD|A4iLkium(1Qv+q|jl7jwtk~LXRtSRH5SvomA*Wg-$8- zvO=#Z^rk{*6namgvkHBv&^d)JD0ESwFBGCTV!UMR3RwyzDCAQpNugwgQWf$m6i_H# zp$vtx6v|O3SD`$G@)asns7Rp_g-R7#tWcRkD->F#P?bV83e_pps8Cp;jS6j1Xq!T9 z3hh#8w?car+ON>v3LQ}BkV5w>^q@iyDRfw&BMLpL(BldnRp_`vClz{8p;HRItk7!; zy{XU{h2B%>tU@0ubWWiQ3SCs_3xzP%k@Zg@OQ8gX=qs}TC|>)H=sR_`9dZWa-Gv!m zCPVZ=Bu6yEG)KkFO{zgzlh_$9)$)gG)$o}KwNVU&={tV zey7O87Av$+p`{9~0ODacEA$hEUIgNnz6Qkgy{XVSg)S&$;wuC$=Ts<7p-~FWP-vz? zML;~Z#fn#^(0YY7E7S_at=|L0Q+|)~y-%TUE8oM4cSNBl6gsBR^FUnl%RpT7+sgNk z3Vo!|d4*_GIv#dVl0+jEDgfd+G+Uu762I9Ff zSD`DFZ> z3jIT&FBP&4knzR?ferimDKtU(PF84!LNgUA2I67M722TCoeDjy&@&2kDbzn%_6);; zcy5eTXu3jd6DZdIl_}l|g~CAGmJT4^(>$PjX|F-9`A16baUfm_&ne$uD)fp%Zz%LG z5RXI0j)NQxQfP!ivw=j-QE0L9U8hh75Vzny#XG9dn+p9&p)Me<*%&BMf! zGl6(+ELFT!Ks?^-fVjREg>F=6yF$BxxW2o9c-U_$-)}2)SfL{dJpshSzN*mQ6#87D zRBT+xZSgBK21uksp+<#n2I6VE1Bi$HibCI0=m!ctrO*k5-c;y}LVpC}@%~exKBIy$U^`(074&yvG!}0K_%x*n5$qkqS*zXb}((d#&QF z2jaGDR;XQ}JqjIA=#WAW0C9a!EA%N4w;%^wJaW{e&<_;)K%vy3Qp-dj9%2R%w`!(B z3l&9@bdlb4$p|2@)5Qv984#aKwt3p@!C9egD%k5UYuK;nI zzpl`C6na>ppDXmFLN6(FTA?!vy{FJ$fOx#00P(b0!(_Y(3iVScMWNvejZ|p7LK79r zQz&1dSwK9tD->^`LRTwPu279abqcj8v`L}u3hh+rHihm`=zv0p6#6z0&y8mk`n^J* zD>Qnzl*dw`jl1s74L4vOSLIEARcdt;*~01mEzSX z-WJ8%rg-#h&*Obm@#vYI^W-zTuH_k$mk-3_&8)7i3n2w`ec6RG81$$Qr#YMbe_CK& z^J{drQ*YO4!Nj8|Wbl|Q@}1Z)hg~0tyAStE$vB|@42Z?Wx5IP@x# zUQ0$~W`IL43?m%5GcX>nFBy9kLebAWcqqBOIDNkt(X)YMT%5yGwi6tBX-6`gLnTkI z<072zfkQ9iBAh3{p;u*`lNqK1;`jv*SV+Ipz%(K1%4B=?a|XrJTUlhTZf=%AkVU=A zY>X&Era|U_45IFtjS(4SqmUV;{0U?>MP#Ub8hRn3JRT!M4qCaS3r&+`(55Q|hq2i| zTEC==YL20Qm(1#My)R@?9FWQP_YeT%A3_Gj0huiPm$fe96*Aw8^%SnrLdL^nsCD$ba)eA@cp3UeM1<*Uw<{=QNCSt91czD^ zhie3fYB-1Tw|Sc82S@CUEHo2`uDv1@mm$vAdT<_A9I2Ul8+ma^tB3NkX)nQ*SruB{ zvId`kR5wUmv3hk=XuWjd_*4linkwqo;4C~5Ce~F)hpP!6oDe1|USRX)%@Srdg{m9F zO_@;#xbfNG+H^sENVKqn||k$*)ZNuSN5cwtf^CT zv$Avj{z+Nc;7rJ3{H(0WIXQm+#H^_~6N%wp<*M3A?GXo0p?jzKFugU7?(K=Q7b10N zF-KODi_en$TIs6j9-sU4{GYFt9*yqxNrL*l?$pkee8r!fK3_oiy2tx|qJ4>?jV;mn#=&+Cr2CT}T#>cT#M;G`rXe zx#)}On-UxEml#5ZF2VMbLLUu2OfHw^Uy+Nv2UkSggqYmai7`w+T>E;+mFADn&dP}q zL_|M?T%(AWhRb{{zaV&3aA|N!aPg9>mM$u4{jjX0<6b)Nv#9;0`8(e8wq1^qy!9Qu zCB73oh-==VT5Y~& zYQ1Rp?l^~nl|n_qpOJU)Q4&=`x_8G55Q6fe?9*I<_hdUZrTzknZLMcZ4uah z62v{jyJIj+E84RnFsEcsI54wh&p4>nO7={n8GBJjy_Mbd!65I@HsWgDpB4t@v_IAQ z&Q|@^wxgQ{ANzBhw1%7fMp1ib*AgG4?>7{){tHSUmnmsK-z{Y@`XEw4T4&~+^R``M z!-K;o-nJ!l@A9_MuhMrF24*3uDeX@kJ!_ASto2M>>pR|E<}haGY-?A);e?Qlvv{s- zs|w88x^0>tT!;7OY!VazQa(%12lPY%M zRND;+MeV;X>R14Y(=C53YA>}=6N=h{R_jhW>{ai)<4agKRF(1U=!EjrkQKArf8F}_ z)@@q?v##G&5}571c?AVS?#(K$wBKB!U+g*~Ye_E}WMXG;jZLi4Be6&*i%zC?S7}^l zALQTO|3JIm?)%`7tUv!jcw4)#^BO9nwtePVza?+Hx9xM(y1WJ69ShOkN>Hb$ zx<^-*VAn##dC6R2UhQv0hv3zVRgTzt;i7u6I54O4kN@oI+H<8|(!My5TU7ZRlPc+e zqondJp4R#8ua~s12xJwtKU38H6zn21N;<%q`fSVC;ysJH+Pex)6k^@6Xis53t!VUT zMf&?6xc6?$9lF&xp=B1ep4E${o}#AF$<%jl|GcZ~S=KpHJL`Pov#u`6ilWLDfeapJ z_GwDLu_E9{j(07zil#n&-ykvwue#oY|7uY(d^!QW_Rl=I$uFr z*iI}T9Bn`KB#qHW&pKMq=;+#JfABCmCEjt-LWy?5#8RfF?@Ea4+={p(p43xCd9J>M zr$!-X#dt>4GS75M5>qj`7y{Zq0<^sx91 z4HYDXMBi;kElKKg?2P3+6<#uJ>sAs!4)N|;g>E%oWmTkSu|I}RUaM{|b##88ETd7a z^G;;>ldz<#vw#piICkCy6f@r5^kF(0fp;{P$k_eyfDd;*gcfxKF`|Y8c}49n6t(XU zY-G))EwByuA~g;@dlU7(bQL{&6Aj!9Mvc2)p!+WBmW$ikxb_oIj2mm!DY zHE&_@?AhM7kKw}jn(IADy!nf3sxZ>#dUt#u{ML)6_tpoL+QoqhQY~eJ(8*$49LTw} z*W{jF-bV@p6TFWg*v{iSUui#9jpmv|?#b1Ne!|XIh%wpw>u=x!Uk^L0X$+)i(@6OjwYRca(X*7j$Z9@>cC=FF7w#$5ndOD;caWQuc-sP8 zoz2_!7-lCFL)&$1nzB2v4JrydI%s<#^d*7(qCNWqN5LzGVS9^OkJ<~{T}7?O>_x3l z*`Lk-0zTTaL3S&idbH&a)!x4zJ@55ROQsmSfBiVPXRdzUJ7%Wuymy)D0}~w_+#eSm zd)ol(+4J6&C(e5_j(Q(Cb?lr-ZG+Gqbj^VgJ3ffxO@l7)1tDk%s zoO;}Q+j43f%)qIqyt_-_D)j!~PpErA{gdD)s3BclVRvEs#aZ4*x{jUo1@+@x%jh$O zQ_p#C9fSb0^gm@E?R*j4!QSk@RJU#kr@wb%P3DkM@i^{n^SEQn^K=DvP* z=>@VW{7z9v2djrWo(qrU`Crs=oyE$rsQqt6J3hwv^DHY#RwhI9k+Q#d(?$Q1&ij{= z_OnGd9jBfrW;l`hW?Hdx`17ipu($k>brJK63tPTT4eZi_yGW4M`n)?fBM<*aVegKs z{nws_|w06?>rj(&8Oa<9u2m>jl%vV0vA>8 zKC%sW)RrPgQOE8V{OAwo?n!tKwV@uPBPn7a+4&=z=DwVLEo4h9|;z* zv?t*uk)EOC@odmS=5%%Tg#*U5Ar!2c`l7e37Hnue3U}uPOd^6O@*P_CbDh)_B;EuJ zdrLadCy3r+&jx)~`^4ahnP%mD)J}g%`!UR~H_7_=Y0-|ZnEF`M(Z+_c_AEj)kQKIP zbzVc}WJ-HP4QJ8dVI-XTKUMIO_DkTH3}w+MpVrmZ*==x=ZAsuegZb z?H17Dh~7~7K>-kT z7a5=|P!1>;ln2TO6@rRDC7@E!Vo(`q1!xth3RDBC12uxeAezo>0c``dfp&p*gZ6^< zgYE_$038C|4|)*v5a=-I2UV+v>$Xg=m6*t=zh?Hpoc(*K}SH3f*uDQ z1s#B{?}A<=9`5qm);1)#=Py4w^vQ|CGlx9WzDpWxs%6D&hd|1;~#hB1pm0|^|j5lt8449pV73M z+N!Ehy_S%fIX*1*I2x~(K`XWKOPX=!qFgIkJ{ThRe%l*{d2_ux*lNvzyqANwet={AjdEGn#8Rhswj6 zk(TjC2-~cL#~Q@50xr2-rGRM$0BAXz>;vr;71 zEHAHJ*H~U&zHW7SWlK}}x{8gOy~(!<(K#05-&>$KN;kIaD{tP^Tpns_s;g~=VfT;x z75q38#oDCV9|(|rN@GRSno7-ngz1WAuGj33CsN(FTa(#;ibo0HH0?EzINpCD^P{?N zx0XjqVBNg7si9u8pJGa6zzvH3ItwcKjceAS2sHaUeJL`@-5}W?^rILgyLw$iRY zlShDinD`y?>bkY4ewsOH07Yn^M&zRQIMVtxqAx}b71fVdRH|;wJCM>Lq_ZcJ_z2%Y z61SPWvQfQab(8y!Orfesx+hK`=}{gkMkc@+=}9v3$vGr2dL%t9Ipgfaj=N7!LZf$4 z>zf@cSu{)F#S53r(sa!r{_2K?IxX%2<0DvMEFvqlxQBfeIXn?tD5=uU9#e8bw>kY;U3 z^1xK1pw;N0G-q29IS?e&1lJDc zvfRz#hDOb~lev7T>=O|-!ROrNY^IQ8Vz%bIg+;-g6EtTBk5TiaJ6D?DgPa%Dt*T)| zb8Um>+!#-Z^Wuf8=DazcjP|zFudQ#`P_H?6V{-?X;9H4*WzHPmP>j(c;Zq0XzyTM% zt#bwkEP~5&Q?IKz=MLBam(RTc*$LAZ4Y&`^WH&oPSaV*T^az}OcX(4HJg-TpNA&4# z(T6+t#8E=Bv_3b0oe9Cd^bZLoyX_WPz`Q6v=GB)3`%)!@_hsZwB|-*pZ_4bx#A5#- zvrNi-UCA&MEpsot67ALvBuc8uVrdBdC?kn-#Ce-RMmeYmUI&x)d|nIzc!63+gMiED z3&PL9d%21_><>`avW~I)_{zafXmq7IX#{oGH8eDqv)8DaYlumHf=5-yHKY%5?5u3d z>q7Nw!ZlzHA||Q>kE^Ky8SNU%!X`l9hH~~E*fq2-iTRMbYicAbl~_scriO;FWQ`(L zvRl4nEa&QmnPgpRgxyeGO(z(;h7BN(9Jknb!IfsxgsFr#5LduWTY{Im<>m^_8$zMR zsLd5zBbk|H{U#xuu8~71?iFsiUqTP*QA~POKfE^6T%(wDmC{`mYNXs4ZBiN3C?%4e zMC@8O_0!FoYYdaRwjV9NxiZWV@LTIY{Y5XXsr}xD)Ew$ruqiWHG##M$^$ir>XFKc zjOFL7>Wa!R1_{>`Rzd;Im|26ZF>o}vE7zc(3ME{0UFIB)6;1Rj72y^H&tsXSQEtQG zrVP|sCc)L8TsAk37H_CTM+r_UaSTxlHP^Iw(q*|Dnrhduy44b@uY}wTR)#(|RZ7X~ z$E%^Jz_M!PGs)zB^C|lLB$A1$fU?2`nUp_LGw}t%8mgJW{uCk*@u;n@YznOlVGMHx zSuIajb%)h7%~im3WyG?}8ylKy!z{xKm=RgZpY0W*xn{CpIlL0jWHPy`{t4BEOeQau z9i_UE1?iB-gf=+g{Wv1o2wh_k%Z0wZlsW>oP& z;xCR^z`Kj6T*01wD6%poA(A(r)uPvUtDDa%?wd+R?rBolfIU|*gt_LArAm1wlI^HX zYtWvqU|QaD_Xu!BKMHV`*ZeC+lH)@+?b;GTwZCFKxzC~1{RmZ*wZ&Z6$lBsi%~;Cz zS#gybJJ9wLe6EGg>sSS5Nka`@6i2~PqZvbUE#{R{Gm7i+K@PfLstikv*$9;2ca=Hq z=nvfW^c9V3nUiLha5YeOx|}Jp+$@KeyGd&T83`XY-uTdHnra)%srv?R00|@sp6p7& zPa}S^;G^NA@hzW7yj0Ct+)y7XK<_cDPE^vXjW*cT-?F=|aTb$dVMu7Ml}Y5#+_h0j zDED3oo`r0p6gbN9kBDW{R&Xg-R0Nu9m4V~UwFJwx+DR`i+;~!g;>rYSFrv9v#Zz;( z^O4zA#d=TEU7@+E29k%vy&7;Z!8pyBk8ez7t!J4TGS-u7pKFctBB>5>c8!<4A#vB! z=Yp=YRVT`w=&N+DY5@xYju-pEP&V2F+FPBR@(Heo?1XM6=Gd&b!}w@Z`DmqI+bNF@4lP8 z??Jymxe8T;jdEemuqRiAsw-OR!WhCL^{1r|<+a~Zo~qYh&umV&lKJe%wIQJ&zFNt$ zlKFhEoXs0u8<|wDm5h#^)zfk@9dvE-(!i5%CF3J2bn=S7+3kg%BBiIX0h3{BeAhFN zQY&RXvdXoUC9KR!7HTUSn(!47PxLnCx5C12Xdro$dk_?^vXc46MXv4fbeQEC*Ffe* zLuzF-$ylfH8pxCYawbx1ag zPKxhk{sH)-`8|PN+i?L^ibyre5NgdJD#*TUUdj+_fp&{-cIz`pJ7`uxg~5V(H3xNn zlv3vIf)q6@yG4zSwZlcUt(9w^;lX>zRGNch=%}hKXWvZgpX&(}R<6M$qIS`xA1KE% z%wTdsWCS^ck2ZuSAMA-_;97{R0S#$xB+&xmeGBgUKtnMh)%1VrF0$U(ck%}RSa8Ac z5@RSm2P5b7FLf823GaLAhN0o6ipsUk#Oup>$8Q)~RZGh`4fW0CVT^F_8pyp)+%T+G z)4O!m6aNvKe@}5T8LX{@V6(CB#T$lyF&y8a3hV6(p#a#W_qWAu>#J#LNokrk2Zb|} zI{Cm*xOU6TV9R;B-{$%b2~L66b_m_51iz;QX&p}=W^+9c!4V|LHAw-JE!645ZGHYO zH9d|HY{hnD3k+U`6#+eDb8W*EYsAmM81W$e`#Sx*75_$&K>7IWpmR0FNqP1*Ok{gHBu;4N6}Q z$8Q0iB}Y9R^>LU0gVJ}vLBBeuUn!*TgChf3FdUTr4LBYE_y#$?14lnp*Lcuq`t6>v z@6-*WUtwVHjiW!{oEyj3@tyEqdQDCl_MPFH_9FzK%g$C7^|iWDoP;d+BfQdH#lKzf z-w8^4K?om)V-&4IrvD9`SK<0CNN8I?A5r5%YLONCySn`=G1^AMKaGgA9R>IWXcWmZ zZJltv3qlG5Fm#SE)TYn~^24QH&LaI6AY z3CdU|R2QU?x&Xy?K*g3%w!fxZSIZc7AV@1{6!|c%55e^yh-rNf;2luLcVo0>=qxFk zwg8cgI~nDdsV}tedz2n)c|yMr>*=y-5;3#D(U;mBA4xNu=xE|VW4lW+ld|BG0b(ZA z08|s>IiWf#p&zM)(t?ye-)1lDFS3%pi0A-~A|IxeP76H@Vp{3&(f2_aPO%8fwX(vR zFIYBBqR}i(h@sr(_>qjE4Jx3dFLvx_(BjJlr$KjhpzS-LNrNY;ZpZy}Nfu4}OCkXHBgm;GYJ|5#O z`>A=-`$UZQMoAX{Tly9X-esSP(^rakgweENWfjz})Y+4A4h_yLg(l3#fk!hHRSb_~n9T+-$L4!$LL{5B#f*zh zpY>IG9OYwY-?heopv4D%9>=`#5^(_Dz#^ZGHIIjbzg19{Hc+MS-say&OT%<3a8}vIc zegonYrvy21dT=WXON#><(&(Z^&C6haE@+rwCK0m^jB7!B66DdvB{U=|5x=zW^NO-mZ4X}^Tf3!oUss6!AN{Y`iq z`@Xq#^!FLKf9vRroRqw5qi#n(*FoYH6}!~H%qPwOEq27 zX5c&NbO#&*6E)2P%K97=6uM~O8Vg@EY4lp-Mv9J?*qo(JU5{|@acTUQXsY1os}g^X z@M-Ok`VKVH9w}qH3#IRe?&Efao1W?28+0zn1#fF#&#ECac99N0~Cq-tk8PNxG$%4k3>b_*DBbmH&|bn@zp{b z?Wi(}JXjoi;o2P&N0|tH$vE=kXH)`&^0~}@zJ$`gjsJ%5y^H%A`ySXD<();Z zDd{599_9w<`Pz8eyOXXLWvFjOhZ-+`bjE)6PosN`cNV=br;C)@hRQlTKHlK$VT{!y z)Ii})p>iXk<_Y#yy@#T&#OR_>^^s5=f=wF)ATzsL__e4|_eVmBH}u-mJd}m=gW2(J zEXTC*!$mp1BbDAClPh-#Z{08AjLGWpKNQ}6=^c}4}D(~#%dMx@ng^7_mhfkJLmS&&5E#bN~%hdNLZw3^of{noT26ejOIF#Hzer=A%_Nr!h>} zz&vR|2D1{j2JbWwoL%|#O^skL6CwPP4Q~0m=GE{?eh%}0r-4C;UHRlw$9zU`AK{?| zu|lXXcT&_r_O?!6&Rz%vE5J@on@}VjGl2#a1ZhZG)!KBxwelNv5(lc$8~HTu)HuPN(aQ8rW$~BCPmM3e&}a9;hk%(A z#h;Oqhlh8Et`{fj@QWL!6(^3z_Y8>f_eT3;)hB75EjE~K=vhoA~FyV9VG11Vi0iO2#$_Airb7c8m8Ah@E#IN;i& zqk!Y`{->(W=}vdY@tgO(@Aod;+<%=qb?VfqQ+4YueUDbGu?xlUxV96To`Ht>!wtjp zg>aH;X#y?Wuog{`^oEnoA}j5O(c8REc@SFE;lMCzNqSIwTjkk-=E|tB3#mqCFKl-6 zAeD<#no>mB%+vJGgU}zXL8DHHq_v5(tq1Ou1p+llF<~iKCtu5HcaGgXeT@CYAeXAF zXgJZmupw#G-nF`?o4Ps(&-kWcj*i5E)dXcm($8&ZkB5TUy}|-=6ox{%Ngz_x%gznq zV~w#e>k?dJTa6$B_Zk2}C75>&sGeq9>7!NMG?|pjXAVl>RL&M4i)AUbdqkQFS6h)* z!dgGl0Jwli5*y;X*OB71u)dL`s6Oe}P&Jzr=`ZFnCTyrpc%If4H(!N8*~w%VkOV40 zG6u%5U=W+?G0wsb444L*!B=Qnq>|L-MUe!of*RT+esDwByx17S6fKDquNyoh&!Qo@ z(8q?w%`8Lm^H9Jz;f=3=-ZBep#0_RhzZazqQQsLRnd@{NN|;mpUK|*8iMoHeiYKIs z(G0ny$J$CKzL<@RJ}X5l7)BK3^H@yrYSV)2%#q?fGd?V>o6rOoZnSkXM`B~V%+PFW zf@TW;MR(YI&pFGe@3EHQnULn;Bf>w23u#0}`Hs#lhTXAnM~D-Aj8oRN`A+jgrX<2O zM^_M;Ze;ES_Ap1tWO$yCE@H?wgE~)K^``0XfVl&sh#O4el}IAniMu6^;z}nQO;_8` zX!TH7D~3-Pl4JdPc`YYcRRrs0MK3Tqfy8Rw6(;=xC8N~~*HOWB6o|lz*g7g=>!>g- zmV;Rpnlu}NJAk~8G2Nr44c^CauUKMPbuA~tT25dsxyw+Lwd4*1DO$^Tk?w#{ksya+R;Y63Fg?! zTArw4k@xGc+^axghjz;o6lzz?T$dQ`ridCHmysFhOS-iEyx8cbuyVR=(M?*ACc zub884O=Q?0VoGBi_JWCQ-mb=1sec)VJ!2x9JUm7wMrxvQSfAmz0Z-c`bEF{i1}-*7 zpJhy1d#|CWR{&55%%=@0(`XfDZeb{GBlPWLFzX%9N3oz+qSfJNeRQhK_tO~85K{SU z1H&eq#wHA#YZ{v?JdmbEcWXQ)akDK({A8_h_%F4DE&X$2ZMgWt=%)6*kDs*4L0?cRLxdl|1Xs`k7LMY@LG#8K3ml$ zoA#!eBhxuOTk`sw-*8B+|a+7vm?%Rr=m`jAjLMcM=e*xM~}^O z*7xRVO?}fsEN8scmi@L7!{TzSC22P#oPNPR{fzyuXVj<8Ec$ImYfA7BG+KYt^clNl zta3`r|6fd=Y%e}~Y*y_<8-1eY`>EV$MECsXM_|ptnrG1$^03n@MG`r^+1dcWSu{n;eSA;fie7iJ6tl3 z4*LxM&oFr`ek|TZE;i!o@QrDYPuRxr)9`S~I6C0&j@o{PDg5Z1r>!`CLUtHuWX%if zz|Y9TCFAHY+wlJ^Q`mhNO)~&)$8f4yK0_CVmkMbN!$*ZQj^R^=q%U4M#g~{6$CbuA z(!C|xaPnlxB}v}snAww9vCH)iZl|d2xH;O^E9ZbP+q;QqT znqo4y@Q|2d@?>)zT`AYoG3yYco*ZJ8922YLXjZbjXf%c){f>$@SdKN?EgFqs_`D%` ztQ9`SFNfI}a$AT^i;eTwR2X3$_KIJL#B$b!CE|?zca!^>=#n3&Tlbn8kDH?(!KL&w zk*%w$z3t+Z;O7JPg=>%28opw0HAI$xi|zZXIl;#`*VPH~EH~WZdVTqGv#fK?s>im* zPcd+`s5hP=dlgjKQq7iPGofg7GosV{EDf(0sSVomldvztB!0}5ZFB<{Kf}5tOyUPr z4~9wn2#B9lqTs(xBXV(TmNt<1+3^^0`gr$aXsoIdD~)2?%+axYKh?5J{L_e6M6RQ| zsY?+#QEZ4Ft4}Rs9)60E#~@E5il{WG^XG&~ontNz;@pTLMValSVW;a5#^IuII*cDn zvt!gFpV^);)+hOl!$srB=O@+dW%bBswrt~!B%g7(XpDSnIzNuaZB@0wFB!5Qdof0r z;VQuxM-Cn-d{*kMiaW8S8{w^_l5&PTNaD1t3u@ACR97h9B@;yq;3?onlfKg&V-z>^ z*Ugc~7oQmTSZ;inRg50O?AGj<(LTxI`50Z_|F-;NrlRBKxYX#+pN5SdoBvb&)lV=X zyNT&-_B!@3Q>`3$Vqq8KBimCL4d8pad^h_h)9rjaH=4gbzS~SWzSGOc=<;_NzI&ti z`Oa`O|K;ZLaFtn=@|Emrv$Ev(bB~)euh#1GSH61PYvk@X$2ZLJh&l3Q>H8+lm#5MC z@x>Y+FEUqm^UU!IbL6YO=<=*Tzfj9Zz5H_F-WcANm0qWd2Nur&TkRk-SG}raqkgg-oM&yUjf2e6*D}+ z`Eun~N04+%Y^_^jhMSJMQ@u`End@Xwtad1|OND}OupO|QAq_XpaIP#sF#8OIdPm%H zUm3+*?{2$k!@xQh;pG((_#P#;K?V3uD_s!ty$$I}(cg!I!G^pMim636*Ei5@@fSCJ zfZJlA>znJQmm+g+`a`Pf1enL?ykq$eASip%g~*v$@ua=|NqdbK;pe^1ZVPonT%z}0 zRez#)A|ln>Zm%tFdV#W{GBT;HsSD%~8f^Ww@1H;@UL zUqfaCj3isR(o@wHP+YlI1&y#FRc<>Q{I=U6&&{cDyOX9)Ka4(SMxJ{v=#7uKP2h$E zJ7d&3P8-UcUJ*Yt3$}8mR=C+mGAWS&L?%e&H-@JOx|=Fdi2UlH+>1H12gFS zlkRn{0MB5z3+AIWu=#`46>j5P*X@QG(#7PJ)(u&2Su|NY8An`Lbq!P>sD@#JcU}gR ze}XKYnVt#9c6P(sjVe&hGb<|G7G-X(^PIDV>^!i*EyQ>lfUIX%6u8aGR69lS;ac&f z5sG8}-UVqieV>@V*gX{wH}xM!G&{(@gY;Ig<^a2+0ll(Qs%+)9eYf z{0Gc`w$rQts{;7?z16-f%$zuz`qsF4)6c@ZfY#!V_q*LZ={ooJd3T4Yj;Vr%3_5C zNe|&~lJhw_-tYYVsuNXizSpUN9H^3lb(ij9NQU5x>Jtn*ZG_-dsO1~ro#$ddi zj3xAATl!W3y^+eFEvfrsXZbm+#UDXYpH+zX2ujSmq_id3{_LH@MsJcInrHamm- zSv3iR{MpyKMgIH^-Xed$^@&CP!ganPf9cu=#r_?(v)xVdmli$eFD%;U?^pD^Kfh?d zKYP$Yf7YN^{LKcv>Q5W=n%`HXuAQn(O8ue^<~tn1QZg6RgdG?h*8RK`#SkE57%IM&Gy7w3mUjlqR^a(zFSJ zZW43|w-a>kw}QswMp2HEd>TmSCgGl-mN!(;C_&={%@%ZtpkE1EEoh^l&4RWI`mLY` z1$`ulq9SNrP7C@`P&?c!)jHD`3^iXnT)b=AlR(@~06E0FChGq(S)Ik3m_2ItZdR=n`~$PNRH5 zy#)0WR3NBOP_dv=K_djw9cC?goFIA+Ow;J0i$>E0%@#CI5Dj9@w@45TG)-GBXoa9v zg4PMzDCk;2TLj%8=oUeD2-+d&9zpjD+9~K!L5~Z1LeSHKb_?1k=zySuf({9KQ_xXC z?+Q9D=!Bq?f<6-z67(-YX9RsOh;DIc>m~^D2}%}3--XkB8G`6nW17}VP?n$$g0cm5 z5tJ{em!N)v==V%oa-pDNL8XF52r3suKZ4L@D+EmzG+oeaLGuJH5VS~8m7wK&Wbghen{KVRx)#$)z+&ajXpd z)w!73)mK*=TE8>7w)GdFEbI-foj6CeQ|MVRYD7P0*C=1mm4fJV4?4G2P-|4GX)g%6 z7iR-abD^L{oADl?Mq@DZYqUbpBK#PNw70FRfpjkYb``(+g{C(PdO*;_f}Rz$SI|)) zEu{xeT3SjULFGWYwn>66m)u_qS}(cR0pUl0&}E0@-XrK?;d?^(UK83ep?w0Rb@@Wj z8Od#)&ULf{(tMo+braN6P=TOALG-H_U3R3P34$gGnk8tiphbeJ1YIR)wV-PRZ5DL1 zpxXuABj|oXj|uvtpl1c`74)*8*93hHr2CDWT%#l)-7{H0y5$`NbrsZIP#+*&A|SNE zf<^&p$rZx4P;wUw`n8~HLF<6DK~UGLX|egM*K^Ecr-8VhO)q;s=`)#HZv_2G(364=3OXd{BS9YvIxXnmg4*Fj z21uZePJ;Rh8X#yqkk)S+kna6Ol3OKcrSNSOzFQ^tPC@qydO*-4Kw9$Og?38NSAxD3 z^b?RSk=%;gktQe;NbB51P_dvjilib~cUJ~@N@O>iaOUX^Z zM+J0kK0!@@w5A1uh5+fdO%T3Gf~HCCJfSTRbS03Mw?oih1U(0&CBF%zbvY{NLqUHR z^a+qI@wL!S3;G^N*VY0|8VwdSNzigZHw$`L&?|yI6XdjEdF=%C7gQnWGC`XK{Z`OE zL4OnE$zsWE1qB365VS9knC=ZkSNV8dO3++Es|DRI=pZHoJs*55 zXiR&iO%O!uPE2SRwY(~|Rg?#9d$^j3(4GaPY1ayEi_l`De@8qK2N!Qk4X~{&i@w4a zZ(9W-nnBOX)viC9LTw3Cb|6JtnDQ`ES#>D1de&=emh%EAbOVfP_tc4-N~$0C69u@jmld;@KU0JAdZ5_VI7^&2Aj*Sz5 zMX2s}#3a#J@KA)*WNKoa?IV-IB?EZckXkWY$WU+z0UnBs8oT}5kjOjgi;|sWYNwlm zj=jT)m4d4u!$a3ej!i#ljZs;}8=W`_~g2xo-~&n~aTOBjfT6+wV8wN9hX1 z#zuY=PH_UGYQ###pyt#p>%WhUtfkcbyDCm>45!R@EtY! z(YRB55px6a71AHwTtaFqL=5HV*vMV8zze<})taXle6}!7Y~(vJA}{TsdHAp5i;9h$ z(idleKFpzyiZ4!VB2t>+ixV69ju^h!*vNGLcp7{ak@cn#UtPlx-$C%rjN$7Ii-kAhdl!5Q zV)*JdWI7u78TghNKAPbR5tG@(V(yokQ-v_cYmS0k9Nb@AQ)m|lRch^-^H-ktf`U}* z6EwkzD(3I`TjKi9tJ)TCDl06qPZbAo zSdAc=_?+YBA0Xs~K?V40Azqda`}Zw{{wvyZoWcN7u)o4&{8^lVKc&s^rxD`*?MK$P zIKG4sg%k&n&WF}lsgrhpojNH*V!kR$%|)z3yo`g4laxzBQTk;N4d(?^ZO;NG8?ITdPV@Bj4PqSQx@?fG}wDS8U1dZRdJ_o+(}+e^hrtP}GSF}6!* z?Hv|8ID#V0?x7IY`J0wnh}P(q=Io)MjU#Ikl80?tbrPrAqD{A)!C_N*^7_|P*ZFYz zLWIMMOEztJx*;+Vq;~Cx2_=+u7R?`4^K|lYaF+&Gbm&*I?!~HezTI1xy8cJ%=hQ!K zq^z~4>{Vy&)D542R=layH)7NB^3veW4v(UEDFS}x58L!~heB9;SaAQaJs-Qna_Ha; zugT~&B3RWSyCnGPrZwL~Q1PY*c0+|*yC2Fq^y!eIwV&I;w@cT);92{Hz302+(pj&U zr0z<%uqbucxC=eS!9B$}dy9fc?dOVCAO8u?3UeLW^GUM(Qf2T$1XX-Lb#oAXAN&Tc zx^5p(33}>5(kHu=0(uUs8POpP{#~+ZX96|+B*iTLbhE^;3%9i$rl9Dy`avs2Z0r2u zO%-TxX*stMQFBZ8d<3h%RI+K^o2pg8-FwcoDeAtvC}($Z@MzA_qMBmsr(26opXnc} zPR!X~6#Oc^YNMdJD`@Py{m+ z7r_kQ73Z8O3cgls?L|C^=zV46^|{ha-EQU7xn4cqe%^e`QqwIBJ0*CZEg`W^LZ@ut;e4Ftp-(IGo^-JK9KxF(?wJhikY zp#csfV1pa?mLR}l?e2AZQ`ZfLV-A=M-kKsH>bE+kOTA!!|L0S$?Ss=#&ht6@OS-?l ze)r0!5pB`LAlI%_w02L}cP5WVKkgbg9#%V6obz^3@EsVXX!YNW)!vBko;@pesUa{A zV^6sYJVklT;7vOVl)LOi;J%{Z?o&g+LH3}?&*JIuiiAzsh?Y#QL8EX)&S6-iXw$U^ z$q1?I=xPAXZ&?(4p{BU2h301?Ko{y8^G(k0Alx|vqNY=AnEJf641#=DrORP_KmIU7`%K5xB_ydBBHaZoIj3HT^ z^J#Jacdk04hK#WTg*u%L%h70=4CY{{`?uX+M-|01aUCti073hUAb;en-9uA%^(w+2 zjFOVzS0!~VP?Gw{{vw#51jD2l!=(SA>Sv)t%_&z!e1yE>V5l?o3TBV{FeFA`{>w&h zeVSzat2pQ1#r?k~{X#K*i7>0LpiIse!IMSm>)`7@Pu=`7D9Sz80ib);)b`)`XL0`n z)#RT`uY`K*m%;;iAgWOv9<{@267~h}SHmy3iabwu<*6|^i{yMkT2T;B*7DS|D!ioD zPdVCk+rfD1Zxm0G1{p@!X1Lv{-fC3vOv*!}h-cERr}fa71~%#cqTm;$oAgOxX{+Gd zdO|Nk?Bol748Byk=aW=S+=sub3^vt%7W__6qu*gtdeclwIH4&Ylss9B(m!2{Zt>EO_5vyfwk(u9M_2#c5far*bV z<0xHI`V(2DDEJcAM)OO$pBPay`2x?d;Mw4@$}Kcs?~(a>MF~wk#U=k~!Y;yueQfD- z#lb`H&_ks)D~5WCY7&|i)wJ@ItUr;uegmq7+pQQ4^-7CQ<7}cLE3Y2~Q;*nW8l{aC z9;N2&TaPac(J@77s;zz;Vn-OUpWatoGag=2M9)|;91g=>*0<1Iit#~qEToXDJCKW^ z)J9E{n|AtWb}X$aO*?tbH`)zGP?;^5tEdZZ1h-mC6bFA={~|mu^@8VQo})?belRFc z8&^|~3HH6x;GvNRqiDX<(C z4K3Z1`p6#pW&1fyDJ%L1&zwHShFcEh$gBFr8#x;zhD;j-0`C85^~>ZJy7;HNX#P1h z8WIqbb^W(1pGFjG5N6@bfc`(K=3#jFxS}6}hbs4+OvPMt_zYC?o~k~BAshVh)B+sM zd=j;un@8*Pa$3vMnzeM3TE?1%>f&al!6T)q&yHDuRcjGKbmxx3I(VX9-KORyY}qu# zhcs5dX(?GSCsx9oM+;x9kh|?!(i1DxGhOL67gca8{=6Ri0is^m^FwmY$e&K11wMom zPw=^~QY-dSk;ScO@n4Q9eqNjy&%v`JHZ3dPbG9M89%l))u%-dkuM~r0e`!s*M=eZo zk}M7GUHb!KnA4RC%;T*L+G~Gsu>L{1bkpPx{c1|SA6c`KdK~3TkGa{(XD~L=pmXvm zQByoPfmriTy@{lr|5JCB{aDkb0TxG|qTri2lzFISMXOKHDG%vM>Z+k6xVJbsyF-_E ziaT^E$$4pLO@}chIfqN^caOeUlyk5+XAfN;>?_VWT$4NuCOAA8$77Q_jQBb=ZA6C= zIj4$qj^RoI*9&A{GK{(qIjqwYaSc(SB9MdrB1t+>^u$lNf(9AvT@K*l2C3?_)n~0$ z7#&a0-{RDfdrH?n=fR0+@Q=mzC#C(LL&WF9I1j^)BWp57jqLwj>e^OtGlWfl@l;Fg zZ|~u90&8osLSbpmxC)P&5mFy{eo#%Td8IXjU~Xg^FGSR4GIhcbz1XSB#Ml|(_Y|k@ z+Km>|b;hU3_E9pIvTEt3QRS6E51Q`{?p1U1UYeWNYwroB*OWV{rN}trsSFMVTNet+ zzB{-QUY9#0A?SrMLZI#s4oT2{0Nwh%Kv9`!@DC|J^#@GMH22b)sdVk`1f}b#3(ztN zTWqH!B0i$W^36=hccyz5+2y#aS6>|C%!XFxJl9Iw8y&%zYQ(pTX$Hea?|$5h=?M=~ ztsOYthkH6*R1W=lw6Iy%;&K0Odqu#IR+%FXyP?_#MV7UyKhegk?Rn<2a=a@bk|5Y4Z_ZcOI{(4P(*V6GrODyM(bc&^(NC8#nBGjLAz2m1^m?ciqy?Oz)0 z;v@yUeZJAVNV=C%af+Wyw3i!y#wsQ7?e$+Ah;W;qy)j$I#N;v!BsU{sT2g4zB`guCkQSzF3kkNC8g6M zg5XX^+G;c#e<%np#l1BR@85J7-8%Ji5Zrl4`TX<{g@WK-i&UClg5XjN*=BwTf_o6j zEI$XqU5o0o{ox?E)R26u@iveLgE5`{prNF9f{!#%SyZ3ON+-s2ay?{UK-ts>q=3$* zrl%80{Q=KH=6O_j6pG~e6S6WAeA|eXM3cs>$TPs1vq3}o~ zL2vK!!De-X-cp{SnV`2sNl<+m5%iXb=zbkBkAvP4F&Xm0L2rqY25UwHy(LnHzfRCw zA~o}Kq(%vPOWL&xlQ}YJ+oqJ!%g>=T+pE}?BlLhk(A&q5TkhxId&GpX?W9IvMU&oW zCxYHm-IM+N>ya4la~1dWCiKb!g5DDMY>~~;ZC!Hvc_M_#8AP7%m!P+lytoP7r$*4* zVk9o{M+Lnl;sVP@wNNY68H$45zK>3J#wue|&|5F=2&Pcb+bi+h2;)-+y;V-<=g2My zdP{@^F;n*pN~6!hL2rqWtQG3skrHYCIzexVl;N)%^pM9N?XX4fiIz1^(INUFXtgLonwkR7f_ab<-)GaU4mN^}Tk z;D`O;ptqElExsc`Z;9NcE;%AH?I5K@zT`{LTPoH|JMmz}(@*?Qg5DBOL0xi$=wel@ zP@ODHgxkhn!qJNTb%Nd!sZ=w;0V(J$b>;}eq)Dkn3XeH9)UXyr9~ag@PZtqZ8SZvP zmsJRd1id9MI;uzANaeWi3J?FnOGQJ{L2rrsc-ZU`^p@x+{4oVaWm3jT?fIiRQQ|Xy zIOr{!7!khb4sxdP{nz!Q;X~ zZ;6uOj|qB9BcK^|V%?y(#NA4nS5MzdQcppCR`ZCUw~CO^JbutyvUQeEGG*3Z)_`=* z_BEHFw=M9RLB6kfRM1=E>gQ|D?_o%A+bdG(#8c>N9uxF719D15PDIdK$|(1>7zv38 zdP@zf@HICpgStU)DQ~i`g__(~r(~hrbYF7`dYg~*@uZgFptq#sagS}aj1GEBawzC+ z%h;f|ly#D_c+gAGTgv&2a_R=XB{BuQZ8 zkETCrk4jU}TN+piJ{oLwg5Dz9iRD`fIrG4Lj^$3l!AmFIX;m|3E|_CAOv|Jk-{Y9& zHffes#DdcWb2Q4N4DU=VJrOi_A<8t4pv<~##^NQQr7K$NMT_T5V+Tgq9*>vq64923 zizwRcJ08NX6WZhxZ00$K64Y4QvM7XZGf!uloJ)`%h`sF$1QPJ5z%UOWc@L46&z@gd zN#qo|_du_}eT}^xcFS(*Ng}INqd7~lx4oaxymqV^+dXAHHD*xN3%>~plXS0lMrk-8Hth3bC}>1PzJ2hkc4tpyw? z1AE(LJ&C52UxxHzMe9Yh=EO&Vik?@r-b7RFaT4)kXrdv!;yIqS#5NG5{@B}B!QiyH zS(a4`6+75tl9yToI<@zhsAC;hz>R2Yl!ZSDz7cSU1Rq_=bmGoNO!4`%5E1D;yCKb1 zbfb{A7wIi3Z1x?gSgz}Cf6wkf-M$)CFU6h(L%e6_(ah2SCF!k_HVdi9dv<>s4bwm< z!mj)B16y_QU66Yx_O^N@Zy&cC&{^m#NEG}QCb#Sl?Ify{9;Z-b&vTFCHFLT%Lz~Ac z#9!O%X;6-S%ua8G5EmFbIoPv(NUQ|7k`n($p{D_!z@9^8ahox8KOWsNcH9(>^s zZO!mBpdWflP?_8lpzKBJS?ry^L?ZV){P`X! z`aM>z3q>l?mGpC|+(t-*06wF{IY>|dzfRb5bC7ri;CV{)MxqaF-UEAXAri{~7EodY z5)@VUBqb&wF#ziJ#g6u5q9d7E8#4wcEB0LnH{uEE}UCK9;|@rPo*e*sD^{d}Vz_I8xB5r6ui_j_Q^y#a~U z09R3B2NG`s?5D&-NIVL|@5G)x6wsJ&nEd zdL(kU;7>t2csusoJCL}mJ;G{Y&%Gas-*vF8+p*{V0f}onVvJ$WeHMxNo$y2ed+tj} z3_BMck3IJY5?!+~8DP)-2#Hq#_EX{uB+ko$gJI7-gT!Hg=dq)44orF@H4_^?lxd@J zjXWvI=;7>U$eNssr4aV)Zb;k)u#FNOkoW=MEcP5KlRE&EX`LJAiE1QLy21&u=Waq`1HdXu&`&4M0{oK_cOfw? z4>rJ#_nLiht9(q1w0W)R)C9+ql1;zjISP)~v1fNf;@oaf0(&<7`X>mm9(xY)=az!< z98$ZmcOHjC?sWWd@=+-$xtAhQgT#95xmO}#b;qct#0DfrA~6(u?lvTL0Ng~0S|l=i zV3~qFcPA2~07@zG1QNdocz_bmA1*?nlT&!4I@is%H_V;Rn;YwTpY zRnub`&ZBGWG=9%}avw|J;sC@mfl(c%%2EgoeWqgs3ctBDquGe(HN(S}L2cx+^g$3?Vwf@v|@ zb)h~Z_dvTYwAI=r+^&gH?ZS23e8gXDVj8v`)1+=#6YfgN>`BJVUq~izVxLcI0M(N% zBihx{w2QjFl|Ik+R2sLA)VPgFP_N>HY05&X@7tM1DoeCC3FSH+3>$T8C!>9@rSz)! z9CAinx*$OGkyH|8r(x>pt@`DN>XtsF%@Nfredy^I5(B9zef8Z(`>0yF^wl?1>|^S# zMBhb-5_wELAnS{@?%QgqYxN?(*Pq2fOlsVmnWmPI2a`#hO%r$@BjupFNoe)LSTW;d zr5+|U5o+aDb|jxs%B}1{F4J4Jbmc&5L|+;stJDzbOG9Lp8Xd+RyN4SvzCao_=95FRZ??XCFr527ry& z&!Yup?)&(Y)f*S7*mFNaVlu!4N_>aJK7c1E;le3r^ubvW`v4jlG%#qx`H23$-{3UN zl-&b4&w=F`>{iE?I@8L^LaN|${GmNL-9J$M=12XZ@SW!`!L&iU^XJAmq5oImJ3FaJ znBK?$f;vEFVr1AvP4aPI&jxKxV9%u3D4q>Dif6Kp;+ax6iYLB-tKtl*c!U&RGqr9M z&$P&VTv|m(@oXH9;)yS8)AtH8utu^n>qha!4O0$XI4qrNp|G71Q9PT~jp9i`J0-X& zMe(Gdoe~t32rcVy;LO>Iqj;Xv7S*?|8_JUcJW3$XHi*C|@iL5_L1>0J4D3H?1&5#RkKrFeWJoxo?AEWqzV3+9TEI9M~CywjR@!2nJ^YCTsxMb zRCo7u6|XZdMkFpB>qgSl(I)dFt$|faq#?XQZzIqIxa?yD znq*%i&?NgAfhO5M&qU*t&N@%WH?1dlXKYx^fw93e&#yy5P4Exe_?}O4u<^R zj1DxSvt$3VfWI1vh>yYW0+Bh6;Uq)S!A3a6HPsuuG%SR~HnvWxtz_}r}qhQ-Z| z)mKw4NYTf+=4e|p8Qy0|4Xv$rRDYYGVoudE@e#@VrtKkH$407s#SmYQmsy_%n6gb{ z!i_5DMlF$cmNR@%NMjjtdu?k9!*J8b)?e}eLe=kxHd7dWXj%^k_=VbJ#u#8c8z9_{ z@%6OBe6t*5-$-G%bu2`b8>a^lV~ab+zhxUt~8s+JSqnwBS8 zORa)VJzLdAw_kDB(+)+x!qjz}=vL0~k3t&Fkn6=*Wym!m!pX*JPTVR(V>H9CUB|@e zW77#9_o39$vRJ2^M1gXKTq|l@Rn3WarT@qJO~via(XoEzsqJYJBSfpQ3|V2vTH+Do z{YDC-5>BxGj3iI7OKQ@!W!LBu4XH)6DI;pp3f29aV9JFpcu}kcFREKcr<%r;oD^F!rq{?s z(K7-?dSO3iFC|*MTA9Xo-an(R#D?BuILq7@Lolt&4a{!9T$34oVn_%)ZJm>(vsaoU z(HPTvz_dY{26g|k9vRdyY?#6sa!D0BN$393zbw@esTB+#6Ve2R=jzdm8-ZKX80X`n zmp0p)z;J{i(E_5PmQ$<3j0`7ZeN3BX4wn^xjVep z@{^g~_7`(kTx_}ruEB7HAvxBfPb^OS$q*Y+s4edWt$TJ@fk{G%;?7zooi&=_&4#2z zapE_I7)KO$=Q`=m(F|`gBqfRyZy6%Diu>iD8BqM;RVuYt6vp zN~V}D=gwyORzv5`k0Ua&vj`ibMvy-?QwGl$jWK2FbC2&#YnqpjXV!8akL5Z%)GgrQ zJa(~6>bDybM3iCUY<9mUQEXq^W0W|~=LxDFah%QbSF|`h{ZQgKpXat{KCYJYxhtai zSRUuI>FZH1!p;gRTig6Rl7|QeEkhn9G~#&{_&Q=1h$B$MaalFPMi-7d?LwWH(sZ6M z6>`P(O!jyxVTS!t8U7UvPYY=bi@V*3jk5;90F6(R<0hlXhR|Gfl64Ct~HuH zB^r)r$n8Op_La4qV6!5O8rNMTEg8@7cZP(b3Gq(VHdh-KH;u({Q*3KmwAy-ba#{8g z#64#i7B`i}trhL)24S5|i_=~hEi@x)B+`IAlgahGE!G;#@IxV0d|_a?*T?E9g1}WBhy3G^|58>(EfnIpzE~J*-xFtXk!Dj8-=x zYOxL;MABpYtWgyg0M)geV1?90A*;moD^Av6lQroF|bPXzv ziHrJguF;KGMwpNo?iaPEFyt1YD_7QXBHWfKtPn3E9BU;mnWI(|s3M+5tO>Un^AU>+ z_wU5$lFCb!e{gwLKmOFixgSa6#xOi3q-m!O3^#2|bSvVEk5-Sc)P>kTOh zYb3oM{XUavVOvzh+9J-?G46{PY2lI=#g>eFv8h$%@^=_HG!Zf0F3OK%*xamwar1y7 z*X&qVR@cVX9do&=>%HE{X2JMIBE!eR)kb$hoLjQw5L}WwTV4G|d11V(Uz^V6YPR7w zgm{(j&;=bQczuuB8<}}DTTYMT_?oJjS#X0ZdI4CE+R75ppDX8j>KWG2b=Skj`tYi@ z9yZSAMQweHRLq+BjM$=(0#T(fB;!ixB z+e{Q0%McIKjBXcoF)(bW*c2y^zK*yiG{c?l&;p&M|Kr5+5`L1LVW3uBB^9&4NmHV#K! z#mz^C+^_^|xz(nYQ{iS-u(NfQHdQcW3+S?(nh|E?sH}XE2t%q~jrfDP*u$;o+Z1?Z zGl4O;Irfs?%;I5L^@y^fMWsgHNC}J32sRD(5>R9heJdxA@eFy0sf#5}guQiqY=?~J z4q+F?@`B+qam|Sgd2~9~6)S5w5%$-K+-qM-(ebgK7_)w%Rz_PMH)syU*ellbF}>*3 z_JW~UBKKQ7Pu|^>bHi4e5No9gY^AU_PGD~gdsN)peCS8$a=YoP?b2uE47p;gpzp7a zu38bJD_6wm>J>5CeT?%!0d6KA;r|RH6xbP0ft}TH6xdlEM}eKyF$#nUxXgdmv_3rD z$C)A~3^BelMSQ57;cOv|VaU#kB@}yFe;M`@7>1|8m<1FKDY^$?TOSzpPMIUEaTtFm z9XF97pA9e;s%tqBZra53sKrg(C6gM_q=3>wy6NKx6{06rk`wJG9;SXA88r6(Sna(VdlH*SU~WY;Pop=k);T$1{)$vc+s3f)N+v% zhYb;{KE4T?Wfr3#6&qL)CNbn&v~YEXtWUhAKq35RRk$(rEcdv90aI-~Y^)vETMt{b zZ8-e{+r!++wymj-fvg{H*}r4l{X=p4X$-w$l^D0z4i@eOYCfmf2z+Nf-pqL>lXG3s zZY;xOAx)*<%Fq^8cq|)_yEDFc&fP7|8q4s6kft#FR7lglGcervDe1-ze1uCd4Exg9 zF@|fLSgo8PI}jFI47pF^Yp)v}{>#&cGO;rBFER4>nZLwV-)CNLnw%<{k73B|Ouz%( zHnp4zw|Wfw=%{d6hHMaBmQ!p1EY=zRoGrf33|m1XV+%uOJMiNiT5>UF7c);+5;)Dy z6uTZsh&C7(Wq0atni;1kTY_5^hlR7a!7TlM+(aw7iCDSfL0WVJV-|?f&C|uA8y8b7 zx@j>C(GAmbqnoAXBVLf2BljPxjs+yck7eqvU?@|XwR~kQC%8LtF%aE8NaMy)ye`_n z#gL~yhoo^L?AsO5%|_AahQ_&_X0+C|$r*t=Of5_~!7Vj@P|j&?QLGD zdWc<&)-a4e5wlEU$md;kACVJmD=d~DHcjDkDv68MDc&-PR($+~ogb>xEhDqo4al9m zdRKg0I{bVdEvL`+(00@uscH)FN?W*^aXn(H8K-%|f5~QC1(&R6-4(5LJ#1mwVMIUS zr45n8)rO@RLsmP^8)4x^7i-8yh`);9+(fBmEJMGLrnZi;)7a>iVcnwj4F63KD{(FH zbg1v_9j!l|wOI~ZJ$8CZh}J6(OIX7&y4_ftCF8MIv?P$i{2I}yp(|k9;_|GaW3AYo z#xC~{BOH&v7;^98@!-l@PJ}C;5bK69*Zykg#;F*0HCPK47;A*`=+?zyiEb^Y_nGE! z^RU)s$b$>lO$=EFa7EV%63gUccs^p0Z=2d^yfXeo3_6-2yC~k*tghumc%Y1qHfVh_ zPk1sIYMfqOD{|sv85HAqBI3uRaUL4rdlfRbB%6t)o+%(&T0LxRCqBlj0h494v^bZ? zB;gU$nm{PL zE&U=*z86ixbyRR2Q{=Q#vDmL%m2?xxX8r19kp*9&O^!|(_w=Q_rVlf-yLc;aFc zZ!{ulreS=WR5Otw`@Oo!$BA&=6WQ$LrtWwXmvSm-5Vk+Ji?|tc!|2u(=>lSFdeKk@aixrXy7Ju%&@MomM>ba-sF6GR0n-I5OYV>FsnmnqsRbJsGQ;XLK@Am z!jO`zZyG;ipZ>r;ZHY0i6ZUe3+k`ZlA$MoPu!J`CD(IT>T&-=*WyprKtr-k=N^Nr= zHIQoqS7f6JtCgGlaFxwX-Ysrmir|W#yDQw`G1pODz^x}TGfYisewW`Q<&bX>AE%o% z_ws(z1g=sF8o+Op=9_mf_`NZHM=P42UsxJy&OeLHMJ2zv6V1<$wx*jCEI$sQAn0l{ z&q?^Uf0nt}TV;;X^7tMOUmr3bUqzp05V@YZFgY!s@pDZ~UIu{637*d3oLNy*zxGqUs8(+hvQYx-GbD){F(+miOy3txvD6mt((l z{=&JJ_w3OPzusT4boQKI#?=j9JMMumI?d4^BEtvEQQ54;RruoElDv83Oqb56ny1l{ zs@V(X&t&QXC?Irv%2;Ficry5)1Jdvce3Wk1oFzsSWiGz_vPG0c9=8W6RI0uYMmeOw zWtZaXq8eLns?|U{HO%Gw)waF1>v&&EPtR~00H!)uR=UjwmAT$3*Y!?xo2cwsH`!ST zz6_+DRNHMZ5oONz=DF>`Sl}jlN1$-JYdhWZ+y>4C6@;oP!Q+%wNl`CE`Mf*a&fsh` z&+UBPPGU&4Sxg=!lk(h#;A=3#O+U}|l~FY=6-@Mwbla)pLv9j|9`B28I*usPU<-0> zH)Xe*=v-Omy1wmhA{`2lS?;DF%jcWqde^vaDJY|qI2Sohk<%g1?N#MAEpWRRxaoOr z2eif47+fO_*KjvSRkBRdRF&ghrzo zK_8gzwn9cuf!lDPo72^8SLF@>4|&4ebW&vt++b-QlG;!SUUUEoz;C=Szz%Dv0Tnxu z?;Nx3`gPyDLg}6Xy_%xvkYPq|)Z}>ok>M?<^cF&h?Yi4R7@_L$L2EyxgOHCLuX8c{ z%xMB!Cwf0N?Qt_o-K2_onlm7>IZGiX#rwXJoQPJC?*l5*NnS(d za=gB|XrHs!v8l@!P!D<9H!j!?Az*Fn{6syHk=`_u+Lc~5oEkHti4xrmN>!4`c6u0) ziH1*9S;^k3-BeY3H|5muHl&glf$<)<8DLtz+j5B8Y=rBtbhGBU{@KVuM`a;&&NFsH9^6E9S~Lqia~gnslof5UgyeCSH}pchXX z8arQ7r;z$e`++n@^`J`ho+hm^1yB>_iq?%GO>3J}4Te)u+E%z(lj3RHHB#H9r0sUE zbI@bE`Q8jS={yi70ora+fs0v#+`Y_gi?njXZK_LJSGZ{fZnN!fYZ_zi)=+;;@IC2f z!}C-7BefpTcKcJ)95``fXP@>sG_48RH5Xmv_4?fgg^=%S4~%(c0BXL78tST#tfdBG)Kry~k)t@<;XP1C4_;D-ykvN0MtUZV zov)zJ4N9G4QfIPO2NNH83r!BtC(=uD-NcL6fa&2V+y9R|1#+GF6*N&eZPvK0Q43ss zt(r$2?^5IYb3smVHegg^aNki~5vj#(zC5q<=2d8z(h&Z8#7*`(XTTim+32bUPeKT0 zMa+=Vj(MbDjn^4Wm0*Zt-lYNHUsDM~zD1)SN8eIaHBGfn6Q!;HA8zYv==_jTd2WQt z4V=BU?L1h004I@5h+gQ)M#T`+0MnybRgXc;g*4UEnT3v|dP)J#bK_9pN;Yt_Qr8d9 z{?Fr()J%aOU(h(xP3o8cAEVj6!Eo0%0L>XrQ_3t`S-+FAeueA5OE;)CZXcYB*}>~v zutq7EfH|v z`kXd2-+!a6MErUrkd35&4TVCM_x1SqIuczSxelT2$E+ihFswnxWQ4a2musKV{$G%9f0Ug-KJ(qGEi>b4)? zy2DqY;0U#da-RgeL^TQH7!y^x3(NRR-OP4w`cT)~o&Ms?k8W<{`Ukq1`IPB^ClmF# zWwfNK-0Ajo#$kcd%9*8BOXrliJ&}tuNSgxk44fmCt{362_XK8*t*R?hXpSz#atXcU zTvmno(nR*3?V^}6+&*+1=60vUK+SueCg!^tL@dy?6}ZhQ1&7x}RY`%HPpM(L z+%UprZUG(Ux+QeTb5rPm`H>E=Ikh(dc2~vA+%ifIa~sfMttJlB#4@)t5zE}B`p}3D z+jMHSE`V`CM0Bpo^x8#$}^@-~{|b{ye$E^vzr+;a-tF0?{!P~tk%yv`L>ZWnJ;q#ky= z1c>N?`#9-p{&&1b;mPT4_HZ|y+-M+9bm?x!g@E1EIj=GK#L|fvC$^i8!xAKi!|5yB zB&J$mci_ z`U7YrV$P*=7FJp21J+@J`rN!lmoZ~5#AOVwQ6i_V2KrYZ8+DrKq_O zHTOf!`KUR2&_RFJpjZ6O2EFP}8}yprSEefD`gWL`1BvG5!Y{AyQM=^kWX~;V(|@dT zXhZ8P+Sdeog4Gz7)ri6ZbyYNqqMobJaG=f#T_SuNB)3*_cSCQw5tCq@2Ga5tCF47r ziuM$crX3Kp93Pv&XEITOHjr_3Ojskjx6oM8D6MH}g2+2`ZZn~^5|kym^sI_*LN>I1 zhrcAnw*G>@?G$YfZm@Jv=nXJxl!%Ho>Mf{R5CXfI+5P%)5}TrRY6g60UC zFX$>ks|9TU(o(hw?IuAF3VKA)<3PH^ZlUcH^jAU01br&#OF=&h@}#ph8VhP7sFR>v zLFWlNU(hH)V+73k#T7W8{TPYK#3=zySug8nM#n4pgYeJtopL0=1^7d*7B zX!_NtfuIyYO$4M#kX+ajgAg=A4ASgvpBSB4o zv~>py`jwzx18G}b3#8?35p=7dI|bb<=m9~G0BI>t2<>S>F9~{8&|8Au5p+V(NkRV< z^o^h&1$l5%);c#7lq#s1pjLu93d#}GLr@<<0YQTWjRMk^tN_yOoiDkU3R))UNqc) zz892%A)!l@2wE;^y`ZNARp2YWy2NFI?i933Q1jNzmoI3lpjCpN6Ld_Fw+)xg6;vds z5=h%+H4qfTT6Ddj&4RWG+9Bv3K@SOfOwf~po)z?hpqB-`38Xc6A4q%R7n1vxpfkef z1(UW~k|4Scz_5Y#d<|h+^wNWtj12WS8U$?Jv1`;rA!>Ct_J*o>GM%MA}Y z2s~R%Dx6Pfy`hpPI`$x3X~wc`H6&z$XDth$tor{nDS6;?=#>|5QEUtZr0(- zE3agjw|Gt^ZkOdjeGUj_m^ep8{W3AW;$^9TV5W}B#WOCQW7Un7kT-wH;u(28qALss z6N@L*)W;K&2`yD8v{+QJ$Oimhm`~TC8(ha!+8)NNb&VHe>d2dv5efXPHVx68edjpMPjE3I&Ttj!Z zBIik!8Rt)yRX#m(u8hN?NQGAU?#TJFKE74N7cti2HpSPI=CJUV1vtGYqTU#Jq=Mq>1tUdlS;$xg zzQ|4S^^QAjMzU#ned^BTS>V_a)i&6#P!|jZW?gY?+jU=u0=tjA@Z4?R{4|N;lSViIOlBOp*JSo zT6^-lK+c{~iRZ8RJ}@{v?H_%6{TR^ltwJr|D%A4rLM`7Z)bbMwwS2cw%l8&)`H6)C zmHY;UT7FWYmY-Z$tmONR{%J;jTH!9GewK^9yGx`{x(# zQTlf`@_QCuqwL?SaGKJ;w~^nc@DZhd-@@~iefk^u=M`ov{R;|9lzq-O@(YdpLL2{DnsTqQW`K{)-Bq zRrddtk-wy{M%llraI&)hQX_v^;UAR!FE2b#+5ZY7|H{Iy%Kj?~3zhv>8u_b?{8dK& zY9oKGk-yH!UvK1ZF!HZ9@`FbHHAeomM*e0ae~Xd7#mL`k;(-(ck5Xyo5y_k;qO55D`#@10Pfvi-WdYZF3&q*iZlxYi8? zDyDsK`4!$!;ITj7u&gpM6j=M^cWcJ_LV+QN8{b*jAQY%R_q}~xlR|-APfz-;MZ-{F z$3@o;^d*M^2VY&h`5PR+Iqv`bqm)qK?a4DH9`c6*LsKq!vaLZ6&%Fs93 z?rs$de9`~R{D;p81-?xGaMvBJLxHb$Y;M1)O(<}~PW#3yvOIA}lJ?N+&o`Xt*&!4--TBMg+I0*CPW(N6TBAoKRhb#5rIXyUH4FL6wN zaOjWkWy5ZZ?>u`jClpwEsRd_3pApXPQ81^PVk*hLrShXUoebYbRzokoMk(HGbt2k{P3&4zTu)!;G%@AIU6R!u3ug}dHIx3 zz&`)c85d7Qeb0ufCQpMu6?VO8)O3{FTKRn8j8LG-nmau`XQKZ;cztBYS)st+uSmSF z>FiJ-*rvdrGzb1$`>VCz@d>IdA7Bp}>uHabfL(P+;U0cXr%%DfG+ysoDC4p}@R*=C@dWSt#)S zx9{a#vM3Ztdw25CslN&Ze%t;Zi$^aG1xDX_)z0E2p}-r>+WxC=RVeW7oY#kSUK$Eq zKW^JYt(U>hkI!h+_;UEs_@Y{OImUypN7u7B_P?Xoi=SN)3M~6@*plN{!vF4H-1*I4 zhXQx+e&nAotbm;F?EOz&1-qPk@%@ji39DokHKD-g|Nc6+=_dI3XD427crE(9!I_O#4cgHzZ{#;P z?ryNL%_o~t-*sN=gX=7k}|v`1|5k_no*G z^WU0&pS*n^#>2|Z0}kIG3N-KE=JpqU7YdAB|EcfU2hgv*|F!P%2Sb57TAr8s;7-^t z>Dl}4dI zfzp5d>+&v7!v4p49&P_rC~#H#XNI(V8sp^NtG|9oyBqef)geG+>QBt;lQL*d(e+}e*Et7y%;~Q9)ITObD==_n_V6{v@aC+Va>}A z9C#k>eE69^?cN^>~A>F zth(y^zn_4;0yn<-!T-bFo4`j=Wqrf9(p{a-(n}T~$ks>*VGBtJn*yCq($IkWCsT@A4Dx+4nKp;fZVSfAP>!@1EfN z-FpwCybikN!=0ZT^`860!sN$}Ab$fr^S6C^)I02=tZVQ24EeR9_@8%tj{0}|d)2po zf$}=~@Eg}3MLYBO>8D=(CE|B-{n1Omg1!9M;+^~CB;TUVTfARpJicLOzpdWy_e^Zx zciUF)Q!D=->zi@0cg9oKUVhJ;7kdwVQu1`s+Dp7I*w)_e8+NJp&ebdTKla?E-py6d zF8}OzmwB(gXxR^ziI;m9+HZb6`{?Cf|BlK}?z;a9@3Pjz|G49vE4^PmK5j})$yMIR zf7+B4n|8Ig;^Bww?_2-iJ(Qbt$>_F+6H+awcrsI{?pKkDuN;&DHlPu1gKvzu$(vo#_2$Ya zZt@04JvD92X*YYHo;K(GDVAHj@4xcJuw8fE;_ZF+!DoJ2a;tZy>-HJ_l5g|Aw>95@8{lkFkC;ai^KYB0CyZ^!8FaDFa^p4La4;_2E_p@p5-gC8bhj+zwJ8dVwcZYY| zCmVHQ*s~le)ZxPSI__ULGRizKi}1M&o=MODNnC`>CA_`mp{~< zeD$=4y=PDQvMS!b-J9Mq;oBvD-|qe7q~^1p-TsJ|J#nn5=h{cT+g-0!9NhdE^8b^U zoM%7oU6jA~y7JXec+Xt;`HpYTdeXb->knpLm%qb%zV-SiroObp`@^=@m90y5de5J8 z=Cw^6~1^rB%?H*{kYgo+--d%fUlzw0KqW8QPZ&eNyz2uGm;@TxC z^IrDef9-X*d^7G9Z_2TQQ7>(K#ryX`H7CyW|JD0tTEoz$H~;E=_`R;`^{uaZFM91y zx835{=l#xhMT+&FecpkA#|occ@R~PmQ_Gxm^>yzjD=)u)&cm;JPusQa{@OF&@IINf zdhl(TfAi+LFKM0i-QT?5j`DwX)>ChK3ucYK?{}B&_kQxs1J`Y6dCOaO%6FGMU;4K9 zh2i6yE}iy{H(|y-?jd9T?mhYDb9?@H;=5kQ3rh#C8S$R?#+tJ0PVaxfJLa3|hq|sm z;JsUOMHVx8myG4NLj@p!cm|W9DCW=|8*+%fH;- zcJc?_mRpaFe)r=Kyj%14{nK{!hhERDb&jEBA9>%rVc)lv?vK5}jY~f{_}a(bBKw~A zf4KgTchI-p*S&t`VQH$6Dnx?>A?C zc=+~XpLsXTh`&Dh*ymckN4tgh8*dC}Z2t&sX+IL1v!`SAkuezSgkeu_O%NOGZo{jI zLwKDqXF6jC;PcLW;FwDJ?ObdSUdmX0CH4?r#MlGXjMd}ie$yF@y?iG2b6kU+fY)K; zW6Tn)yNIzPS1|VV4cLwN4(!VO0N(vSiT#S7!y*`OU=iMbU}NDgu{rZ`Y-{aQ*fT>F z_QnK-ee6?MTqV|XXjItC=PK;t%M^CcT?(7AS7GxGD(t79v5d-)D7Ixr6#H{^6nhD4 z%J;`Ivq95%e3 zbF0cu{t^2fo?>G=w%OP>gQMBW!D#mNkJ0R$PCLu{&d%;WH-=4d#j>hD#j?vVNNx3Z z*jMe&c(#6}gB_aYWUCWh?4y6W*pHvMS=Xlt?9`tUS@Y0jb}#mNA9GoM_W7p+*ocMr zu=e%|?B({s>@)2D{NfkG*tf3_XEtQO!#|8GbstY< zZxv2wSH0(DpZqzW#Ule+kpbJ+ma<)WmF$ldi`YZ=SF;|>_@WG$jtqG4k~J(F8SvVI zO>7`C;Jr_-U~R~NO&jlECCGqgWPoFsKHki(V637iKWmB@uIL%RvZJ%Pe#Y|p=K8kA zS~zRkYFEs_M6>aeb3Eghd&bYp_Ka^>)!5#+tg#8x(Ppe@tgEYUX7Pq8Y7?~AhqY`% zWqW;F`-D|BO{?lBwADA&*R-DYA;8j!U%Y9q?qJH?arfh1XIV`; z$h|CuJ_$rcMYpeLY3uNq68R@4y2Qk6W_dpGF*t42)$R4Qoo&cI42W$xqp_Y@&rW`qN0Agp z*{zzL>d+{Pv9+P8rKW@YHLh%}uC89WtQy{{SJtdyYMXl!yhPKNvKk26DY+?#_OSGW@0<7$cT=U#QZb@@sf&#N9xq`-7^wGJQY zMx1*t@Z6(8inx%D<_W}~tXpRo;@P~=-Uud>3JvmzHXd?Jd4Ruy>MH8=-{DH}9AYtp1i zrhL$Fz*(k@(DBKWOc|lUQ*oGbLc_DOGU?Bh8yZV+vO_syAE#7eKn#y+dA_eCe_la& zrI)Z?NF;yAV z#Ri#yg>0}HSj2{yfh;!E3}mxmW?&-on1LKN+zd=&Cz^rDY=jw@!cxt^R5sEKOk-(g zAd`(U17-e-%CZucZbtnm45fZH+KlF*u9c%6`q>yWqr#WR#+o4^H_i+e7nW3(v+-uo zKflsfRL(NYXpw(bMP3%l#~11`A8d{bd!b z(2NG=75mv7Ggj)G?XN6lbIoXhzsO(VXGLbzUsAw|%@BDnp#E8j8Run^%`<~khFPf@ zeWQdr<;6%mZ$%A$(G(xQc|GLpsX-YF4y zX%VXAf(Y1OQsFOSRS|d=TNr_5vqcfuM7B5r%VDQRV3XLA2y8MtEdrausw1$eY-t2G zjnzb8nQU1Erq#?^GlRDhp*Ez>%=ML)78U0EDhkn9)SFqQ^A;ev8q6SaN^9Jfn;EmR zCbAXbP!4MhhbFPp!=cISjBscQYYK;^vX$Y`G}asjWoNRMa43tlhC|ux%y4KTYYT^R zSi2eWSNZcRQKvf0aKK+w$~w(hvA?8}tukZfsFC>vV;?}V-0vCnHSDurZ$<8-((Qx|9N_bK96=ktazrxLCn}3Bnkp+K+o5OzpE8Iz} z=U2Fs*#*DCox*y5g*%m9_$%CL>>@L_$X7Bui*1Pnv)R^2a3Z@n63k(jM1qsprIFxd zc3C7ig%1~{tr-;ky=-=!87}vi`pSG2kiXu{z*88;T+=%W`Ft=BZ6~|YjPW~_sEId)amrAY z+0ACqUq#?8W)L+21^u2rz)W_p8LbG+t1S1G6qJYTzRxUC;Lk5CM!!wYsozp|{% zUy{GDvZSzrJ5BDi!1w`ulL2(x~p$Q@Tl)8o(caJ!4pQl z**A_7Q?`)pk6`8%miWMUD}pgEzrt6<-j2YvW`eyF!3p@Qd^-2;%>)#chOT*0zE9xguFSrQDHtnSWN9AMYO$B3XI!=FKhkmCY^3A{XYg&*L|R5;TRp@0j$9 zY;-x3!3(6{xp@VJMd++n%$q&C$j|!!0-Far;1`$(G$oAXpF`dD zfnjKQk>6j6nQZ3B;dv^H4T=P_+2C-Hifx&H0rkR%^u?QnPP?8bLxljIp=Fk%R}FVnUPYx3}~#w;$OA2Dp9$tZD& z21J{!6PLs>=SqmiCp%*-e5xNlJUX`!l21rH{}RcZHxaU&5SliJ!}$OqcMzf*A_@2F?OiSMcXnZj1p)vEFarmThm;NudYxFHKcYWmY1zrUcanmjli_^YT;k5D2q&%;}Iys z|J@2rG}niUP8|CqercXw9D5Z7hEiK$A4uvuN!c-)LU741&3=kwkuzSU5#Wo%I4cSk zbCME_M@q^+eYQ`VP4QB|sl@MfW2>A;k z$X{6d3mG;6^4F$3{=0dBeX8Pl#HUR5JuNTPN*bC}xsb9pTTh>>myKz9ea+RI zm@{qaWI0z4?G=s_&q4L&RODQ}8(f&ThKh5+N-n@Iz~%qRT)n>Xc|BViF;{OX%EL8i z7L5nZUCS`cgC<@b&VMBvr5MX)nYqTf(8LYkT-p!$-7aJ?6;R04wbj>ltg06%VT}C= za>fJtc7)FnJbV(y$3gC4P2ZdFz~|~=tby^^iM0DG#>*KGE*CaOuo@GjFRn03Y5H=q zOkgHlUoOF1{Idldg$vg=$sF!c;KNT7GWsuvVj)tWej$=sJiy?Q1CP(+ST$Y>XTi`pzSLv&$ zTyRQx;Ji=&gm$oN1}!z1z0Prn{0D+h2R82L9P}iC!DE5*c9G2D)2f&FPW3JEo#v~4 zI?6Zy+1%Gx8>jr{-B(_ry`yQs>K=7+TaR2dg zccAN-;@U{Vw_Mw7U3-=3v99iaz%||B>V6y7K-V6nXxc}ePwnYWy&j>%=O;zM?=|}h zQcGcB$CcYD%s}r9{6b*Q*SEQ@cxwGytov10_ia$Je(DHUcPk>nH&H0+ZAvY54I@oi z&-#Mjab1PMf^Qk=>IdNtn6*al$)C^wNcuoiRlD*Hv7>XrD@b$y@ zfh{b$vM-BV8=nG9R=K(-LW#*T*Cr332RRUum|zgvMyRgxCez|jXk8~7_}Otgj9zV zk#C{s@IFMCvKcw^11Q%vEq69;gHtcf$WGU$`IIz0XQ!qIP`bMF$#rE>k1MeAfLhoS zub>4CY<#xE&J7}*3Tk23Gsm-bP!a|!P)CA)`|9q(-sxF^fBse24H=-(h@j?%dh$ap zd;rA*WhXkI94!jw+HtyZrX0SC!$rKx-3Xfdq^dR#HGr~!>f&uW14UpuW$c&atGC}B zbkSOJ^7AD5>FsxK7+gqor?=lWGrZ9S7?w?6M>tA#I+A00poay|&P3x4la+##J5mF# z3)g;6X$9aBx;r3mb|X|If?oTH%B8y2{UZwf9?~Z4rmBQ26t#@(PNZ_B89c*-yPIp% zGgR#mGV0U4BaB!Gi4g!%bR&q||r}TJ>bw*u#V9x05b1B|3|E zd=Qtt1(_*evBP5xA@c%I+E=(Io5Qsq{)P%hZ@=9p^{$OcTn8a#VK$C6+K7x}hc`h1Wk@bLPKSfC`*2NPCUo{Q_)g}&3x(V(@El4B*TxkT zIOVP|mELTy!$TnJ8kWlzln1&#P3ILj>uphJsm2BA-Xf}5Up2UQGu7Qd@J&PY4fIgi zkQF%4BUJQ2*_(mhwW!4uFq(q%%(eLY^LB>nFE`}>ycvP6UFnOfpGNgz28t1J22<{)r zy-T>?fSZ=kI`jbCJC6-JvbUijL%)|%{+Rlg$f?5Mi-p10&@#EYH={w>o{m=;+>kE}Fg`Yie<@+3pL@a{F8l6{K1r!0V@L+ba!SKe#*G z`1N!q5^RURBX**om^EzNu~zkUl_W>u#!-=KTmJ*@BUd4q^*=+Ghhh-;WZkp7>NS0$`l?{m0Z|UU(})I`8}AaJVkCA}rtD^FKw* zsS|bhQel<7vr4OhTDV8fZKlbt`>y^gD*BHztb zhJ5vv9^CJ{M!&`Ea3hsTYOuAE$78!iJ4Rq>!FtSd!}KLj%ngioMPq@Aic-8iU$d5B ze25@c)-*QN)YY{yYzs%5s@1o2c0jmwZCzXE%JzCeFRN)jgLO7zUpH3M)KSw;pKKT= z+cnoUU_%7Pf1nPF1GLxUEqp7hYs9t&d@>&PPiUy=Z0caTKCY`~Wh-lL>8Ph&7FaE| zOTg5oruv2s*4DUuMF%^hzP^=Vk`-%eX=%l`fVRd~yo7ITVikqOg$0Eb3#;>I&1U&0 zovOP-+riZ~EN2tyJ8I>IcNr1L1ibyMZ>{NQ=dAM1wl<21hsVbQt32(Ut*w~dS6{~} zn8xvP@zC5X%wRgx(XGSlzwW_7o9Z}SR;&{w1t~+r3J05MR zPj>*<`FMa%1-%s430P=w9Oz73@4#6A`W{@b#8X2lXwUeXCS)0vfs;;LS<{Z>uGaG7 z#Br1Q;&!w&*Hcb`4gVkFT_tJ=j{lkYp4#4o*g){VVa6w!NfFl%eFmuIaUfPqbgQSy zkR!(Jhx319R;V>JD>P~@_iWW?g+?t)NkhB$AI}O^?PQ8-r;lvdxR1R4*Jg#viI$ct zxDsumWt4fgsQ%T}IPcQZ=3Wdh(e$Ww7^j_510QQl^DZs7r0oaKFz?cGYbu#5HS&3v zmIt^lBe;rL9!ok2-3Ha3%YP{xDIn%uT6Xn6mGhSIUrg7Q68ii~%PU-o?orOWwCv|z zbzGZZX*rlkf$69|@6vLlABCX9V&0|YTW)h`a;2PiX~De9Z@5MDLMJ3Z(=08ReMvkW z)n;E>F#9qL7PBucn0*<};Il6+n0-kM!|Y4zqyZG5l_uk&fT|<*i2tu2st}- zAZ;H)(pi&9e5Ct!5;xBL<-&rSHjoM^N%NV%>L@2=BNq@rda@q)O6enux(GcN@tSu$;53s7nA2~yA$@pX=y~T+&^K@C;m+r!Q^h+s|knTjJK=y-Mr*R zOiGSEJDK{3jud;F<4Y)V@`Y>d9RvPAZJCo=0%q?_q32b*liz*ptGLU}9O?Gvm^2kq zHLb1n&2`M)+MkkuIae_InMtI;?p)T{(11c=U+sDvZg@(uZ-`k$p7?#x-knSic&Tqg zKpVNs?riVCEzN#DceznNX27q*ZQmTTnS7FoS9)xgWc3zJNk-5_Cr>Q$2=SIn^ zYgvuEJF~BeqsX~e)~{stO>tzjyR-R>=9bmX%zi=KQZgaoUHnwpbKE&Lgdrk6Z9pL$ zaMjnJ!R)>PE8wy_+v;l&**OC)fXnS%jXB;hy?nq!aHcqGn_6&xw=Yh90ZxyzV{I#3 zOXAN#@aax%BEP*inj(_P5-$Lp55Xk*K}5-J)lL?07KO)INhFv=(LF@djo2f zRm^q{#EP7Zd4%Ucyt7tX`RIV}5P;j+iRBY`p^teij*>Bj^&|6Q9=DL`TJ4U_QS9hX z@Y?;`MDKq$(VN=CSif?ro?^zS+yB*x-dty~a#F0G3mAKaXRe@)MHc#4M=>HEUdQ(*6#wjJkwW!Le6Xw+&B>dY% zZ(br~di*xg+ngT1P4uo{ndT(PL+c^tQD>PMdz-zIujcOM*WqIVx0 zZK8J{9BrbvnPZ;lZRUxI-eydj=xqi~6TQP&p^4sRhH;{I1V@|b9f8yP1Wfdf!1YPR zu1Jy zPxLmU+C=XNkS2PEfu@Pxeelc^y}3YN6TRsTY^N2_CS%;zKUjf}?lV192+8@voviKk)o-PJKP zfqw($A4aS3acp_V3V?$M#J5xtR$C3eQaXllzwywwx|)A?a|}x)F*iOH4Ohv!!6CS%p@GIjIff4)Mvha&h&e{6w;?x+#Mfm< zs^e#HOPw8U^($MNTB_SuW2_PO$E<}L!j|w`c_Jf(JFmBTp^X{a5BM-PFiQWojJyEsnZA0R367Tbpm*2IB5)4 zHNwS*LV!*Jn^-j2M6uw5LR5V1q;hI4=ZVc6<1OWII?^2zV)mvYulRs2N0utSandj_ zY^}*0S#bndWin+YlN))~iM(!XhQMF~;)Ow3Bgx@*wl;RuuAteg;Aaq&?5tmd%``FO z3VlZ1Xq7@MLDUE)MDv#AcG09Xr+)jX2g*$ zyR!v@*m&9M#J60?d3heX`Nv=#>L-e!R)F=QmCGel23$nJ=O&Ykp#bUy&c~%Zp^}NZ zvz$t%uRr-n4KWPG&c{o6x-2`qTrx)<*EP-zSGTsbH+Jv@&*Mg9N`C7K8sg{3=iYKe zA1NoVx`2Dj6@TWKl{g(GtH8+z0cy}-f&xN_Mh!X&wdy8> z1mvO`7^-u6LKU7sctywp(Oei(Wv+S_vaCuxy~7eMidFV#s3~)|;rs zs6iUH=qMgbh4Mfs*-@I7BauqDmJgf}9!mO=heM*|m!y&7Q+(XVSO66Jk_qHKidtt) z#Q-hJ(ce?Cq5)dNnDvyFMvM<|lv@4rrLnE}{qCuICMO=~H$y0ZcgS5tzf#C4b6mC=) zjLEF#!!sR=29Q9qhUv{HWJeI5qTzh}reo1W!Ui*I1qK-AVSu5(NoyAuTV91-1MODF zl9(&VFdBl$9H%9dgE<=wQK)uZ3(Srrq8LQqg&#V360HMDDIx=4j-{5-caBs~FPasN*fC>a1aox)Z35+nmcl4k0p{S&JL%8vUzyV%A%B zk!rVNdCV+QT`%AjE(!>#N!xon8u{1@yTM}-?P}mS-7*YPC(w)qM^j8X25>qt3T-Wo z@NlfuhK#hWW{zez@h~=r-{xAl-ENdNEM>uETRD>K)CP9yrT@%0D*Y*xiA{|SjkPtR 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

hjJBOt%|Zy#EO7h0&kC7$Zf~<@n~yVM zpSNa1eJmPkHvIRd79plJK4GPLMcmqN*&|!CueK`Bw`MP(3@&*d`Gb@Cz^@~GG?k+& zO5i$p0R8%I>esx&BHXF3s3wCdfqDd$mAo03oQp~~x3%$#l8UoMeGNlpk*u$Fat(eI zBLa@Kk62Z_?}*ANfiq;Pq>#BBPTkFy8I6Hkd8=W7P(4?g$Dzzt0#?ntwg>-U)qq45 zS~F??RjYo$noh!YxKKt@!eKD@aTu68|6olp-^1K;Yj1%1nt22n7z4+?mCF&@jfr5) z3V`ZxuB(J@@ZsTRL%$G0TX_c&e6&6aVmk2-E zBbZX=S!JiAdN1VFQPyTP^jKB3J5ghCxV&!Tu?qv&(+F#`CQ(JU(}<$#Is-=9tTOW# z$P32mdlwJyM;4ItPZ}W1N48^bI&0XRS__xgxS3(-HG6FBdRiBc1)VhS>i0TnIXqv* zOsw#%%OBY@`A|N!d5ePL3GxRy)uod*oML*M*s3!TbvRUKBygU3l@Cs3FC*uvmy+|; z-Q+xVSD-bV+ExUgsfXY*^)dKNeH`vszYCwKPlbc=P$s_s#_4p1wn4GeOB3PbbvLEM zo!1UZ*R_v@gBzsY-Eyy14IaA_+5?8K?--oW#`N`96_TpP&(9z3U`Y{B5B^W(=;Qc5 zjiZ}2dKO5;sKC)$NS^}|+)X%rqtih@`y!CA_f;Ta?)ZBR*U8vE;8tnlRF|G#^?eSSHy+fnBHM&ouZvu%J zk819_8hu}*A87O_$lcW88+oAd#0+EI1RTjA%4fqv;x*s?q5hB{b^LXthQI8l4LyQoBNZeLp>va8pMxua5{nQi}>A*pJ41BHOPc%(A^(8cIP&`Hx06p zFD<(#4Z59^SI6c>gU%;R1C{C8>>f053Im-+mj>2jdHkbQLkEW=*Y>as

ZtM;_L{M-HiQP2zS;GSbE<5c@~DFs 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 DDy~m? diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/libSDL2_mixer.dll.a b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/libSDL2_mixer.dll.a index 82a4bef080902ad394f7bed9b2506c1cf6e3906a..56dde8a6e6e988a58fcfc11f1dccee8f541e7bd7 100755 GIT binary patch literal 64498 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 IO7u+s2XzW0o&W#< literal 47780 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 Z13f0fIe)CysAxQ6Mk5QRY*Mae`X4C?{LcUY diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/libSDL2_mixer.la b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/libSDL2_mixer.la index dba212c5a..0cb09fd50 100644 --- a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/libSDL2_mixer.la +++ b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/libSDL2_mixer.la @@ -17,15 +17,15 @@ old_library='libSDL2_mixer.a' inherited_linker_flags='' # Libraries that this one depends upon. -dependency_libs=' -L/opt/local/x86_64-w64-mingw32/lib -lmingw32 /opt/local/x86_64-w64-mingw32/lib/libSDL2.la -ldinput8 -ldxguid -ldxerr8 -luser32 -lgdi32 -limm32 -lole32 -loleaut32 -lshell32 -lsetupapi -lversion -luuid -lwinmm' +dependency_libs=' -L/tmp/tardir/SDL2_mixer-2.8.1/VisualC/external/optional/x64 -L/home/runner/work/SDL_mixer/SDL_mixer/deps/mingw-deps/x86_64-w64-mingw32/lib -lmingw32 /home/runner/work/SDL_mixer/SDL_mixer/deps/mingw-deps/x86_64-w64-mingw32/lib/libSDL2.la -ldinput8 -ldxguid -ldxerr8 -luser32 -lgdi32 -limm32 -lole32 -loleaut32 -lshell32 -lsetupapi -lversion -luuid -lwinmm' # Names of additional weak libraries provided by this library weak_library_names='' # Version information for libSDL2_mixer. -current=2 -age=2 -revision=2 +current=800 +age=800 +revision=1 # Is this an already installed library? installed=yes @@ -38,4 +38,4 @@ dlopen='' dlpreopen='' # Directory that this library needs to be installed in: -libdir='/Users/valve/release/SDL_mixer/SDL2_mixer-2.0.4/x86_64-w64-mingw32/lib' +libdir='/tmp/tardir/SDL2_mixer-2.8.1/build-mingw/install-x86_64-w64-mingw32/lib' diff --git a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/pkgconfig/SDL2_mixer.pc b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/pkgconfig/SDL2_mixer.pc index b7984169f..98771dd2f 100644 --- a/libs/SDL2_mixer/x86_64-w64-mingw32/lib/pkgconfig/SDL2_mixer.pc +++ b/libs/SDL2_mixer/x86_64-w64-mingw32/lib/pkgconfig/SDL2_mixer.pc @@ -1,12 +1,13 @@ -prefix=/opt/local/x86_64-w64-mingw32 +prefix=/tmp/tardir/SDL2_mixer-2.8.1/build-mingw/install-x86_64-w64-mingw32 exec_prefix=${prefix} -libdir=${exec_prefix}/lib +libdir=${prefix}/lib includedir=${prefix}/include Name: SDL2_mixer Description: mixer library for Simple DirectMedia Layer -Version: 2.0.4 -Requires: sdl2 >= 2.0.7 +Version: 2.8.1 +Requires: sdl2 >= 2.0.9 Libs: -L${libdir} -lSDL2_mixer Cflags: -I${includedir}/SDL2 - +Requires.private: +Libs.private: -lwinmm diff --git a/libs/dll-binaries/i686/SDL2_mixer.dll b/libs/dll-binaries/i686/SDL2_mixer.dll index 96abfa1ab759933e80342a202f1b80928d14858d..67c76d277e0e1e6b04e7a34e65c44973fd2ae326 100644 GIT binary patch literal 356864 zcmeFaeSB2awKsl}nS>z>oKb>A1&K9MYEaPt5(70M%mjo$FffB+5^Ob2Q>}7*Mpd?l@F~q!2V_p6^=woOwxtZSUvz zd;WU-7|uCsuf6u#Yp=cb+H1c|>1`VnlcFeQ{6(XR(u^nlSIGZ<^*^>0MHw;fwGqlI zL*Kl-Ic46PmoIXE=Yj0yEAG2{#U1x%fBTN_eeXU`_P6fJUg7;-_IJLQJ!?UE_PzJr zdDk_=hiByIq&GhQO!~3CdlwsjKY6)r(L4D5$;$^9x%hctQ5&95Y(KbY2R{!iI>OJk zMSJiZxqaWF_wfA5%lj6!<9TfFzQy-5{J^4f{M@_fC_kqxrsuJ}75p5zeGkKL`Odf9 zRJKvmGP|P8OG#69d4F@a0XwdwUOp^k#8~APNNEx(jsG70Eu?0{%W{$&-snA5QPSxP z{~1r^r8FsAz*3b$WCkMP#-8%CB_~aJHbYU|*QP0Dl)N1I@c)4S>eH0&Ttx}1Y09Dj ziE+RrTUv4(g3ns;cfS9w@!Yk_gTyP!P#@xt>dIA%=g3x+W!J2@^A67)iqgFwaH{(O zJe|pig;1YsB$_h&TBH}EB4hAG9TWd6RFsx$Ry?rc+XSQ}sxt|W@Du(kBzi0Ey5~M1 zQr#8EK$(cAV*uXFglzxs^VLl+U`n8xUncl-O>`UcX!yk+bg=; z?cGPG*d8$3+Hd8o-cbwP$1@e1%Ne+Jf~dcXXxOx{7|+FOJGt2XiT~;K>tDSzR8O<_ z`gU1;J*l3XeLZFm-qJlobQ*xJnY_N#n%7c)F6vF2R%-KHsBUTXiM8KtxoxBG!?mUz ztvy3(l(MMTA_U|HN?f=LkRGvnD#$}*mPC=I+zKFxEIb7-F_G1LD?w!St8=337uz5? z?*vFL=f*?2%b+TL1vbi%+xJAq}Yz7k=Tx&Yj1-v^IF<3hCmw^4n<

3Rp%U1n?4uETtvkpUY!gQ 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%0A{JiTEPL42#M zDc-Tdb|xCFxl>G(ViD`&IlQ<5!pa+KFecl33_5Az=a*nMI)!L3p->@5M-8H>{Gut| z4Bsl)mI*Zq7QyhQjk3brd9rSi=@x!Omz%Ys95&@zx(hLMt#D%WkTFa1wtvD{$M7=_ zr!?ikZysyUUp3ux1p{eEk0e53B|6htO%SDA6iGc6cF!hpEq{(%#&<9ZqqJ(eaxCnb z{FT`wqgRj8mmxxFEIG6j(ZjSns{W{DvxVZ2?{-I{mAt=+8W`=zn-i%8F@$kM{p{}y zUBvtogO2z*Vu1eW+VS};Igd>^FUH1~XOIQ@l^Q)H9s$kR8m5l5I#_~jMZ|_Fji_%t z%W9(aMb(-j9$Sy7!V4l}H1sj^aJ0=SdUSW?|r}p@Py`Kd?^Y6v1anx)$99 zLwPl+6iC}F_m#yQGo2wyPoZ?*`O{65{_XRo$M*j`iB`b=pC927+y4Xl&_-eJ1e3H+ z$dj+7Xod6OE}?0&V7Q|^W5N}CV$)|h2a16Q!2ldP_`Vre1@(x>;y|O9U8T2KoX(*n zI=9BNxF?gMKl(s&P2jI=F#b~Fx#IktJQZVl5dL&J$^31N zXOaAU^qYSC{WOlD^Ou&)-|WHoyCa?}&fmN^a1j1WgYnlI&lTtIg*b2!{&YIY{H=~>k^KGk*Zt(@ierF3>TfPO9{BWy@EdwuVjSv& zK@$p?F6VOSjYDwwmyYxqOjx8^b*Ce31LeNa`mOKqZ5en*vaA=Eh6=gy4#Sm!Q;4qg4DJq{U#<-AmnR+B0mv zk?`p!1Ne8kJ>*Jc1E)rDH{cz3NAN{KOj;Nk24Sbwe^c?M=Cy5l3e2Feq4n6mhX|*q z2#FLK*_n4nACToz?&Mde(a`ewW;ShbE-VgTU&@LPD{<`lO8_-9BS1*~4KB9%CDa!C z51&r1zj*#c+z+scV`$aHfoC{snAeg(f#k*eZ%B@E{|(tY-hVU4V2}6T5W=AQZ^Sed z2_@M~16)PtbAL}fU;+AcKRiV=&hY;HZ8p^0w-!SKwl!x%Si|KM6h0*6FwKX1vHK>h z2(z5ZMfg`NAx^{u2!mF+`<|6(5T8t-wPjv|ac5yJgvf6l;JoVrZq$Wk;#-Vnj-kP4 zt+}?Gugn*pBdzB4a;-;nF%~>B&v5Wy#_wMYg>GLsP`yyK0hgsJ4tG76bc!L2j-kP8!A+>0I7h0u8y}>Uzi-l;UTwI6p!E!W zCl0-wpbbo=H4Ys{(8n0}c>_wc(>l*!a_HW`DL+U|$>=;vDNk|A%ES~)=MG9~O;a&^-+OOB_0mp!*s6W*ka4 zsksj^v?&ffjlST1o1vTHP&z#04l`7XLn##FKFUyU9Qp@>9%pD(97@{@-6t42Cl2)! zR4_EpfO;NqpJd48F~}Y6E{3Qv$ZU5vL%#flUU$z_cMn4%F-VTPmm%#j$c1hNmf0yn z2E=>Gc3OOhjNFb6phT?O)9I16odO^=DK45S!_v_x7@s=w7zFzRe~qJE9heuI$>5hT zRTu@f98Oocr~`z~gku7UU!dy2hA)_ptINgXn7Q#TCfv&n$ffzXsIh?-TFQmfAfgv2 z4g%m5FW^=Rkb&h`>J;NHFh1tzMdkivt%>d58rZ*UG3P39SiE1?9JExBjrpLArm?f( zU4+;PLcqP{qW$M2JDV?L_C+VG_-~v$6}O`>3^Lx~a+8*qF|g~yhC_GDFomZvy$2Qh zh0Ge;y=9n5C*VBwg5AbMG^lq)LI1KxyxHF;Afg5lZMRdqS@Tx|qy2p?x z4@eNX9daog^2XAybSdh2uctL>#HR5E%c;WrUVNCkIX3)b*p$8iJQ97z$J4!Oa@yD> zO35!H55xT!6<_xhNyaRu#=z_#SL@($1~}%9kUv8HyZ@NsA>@*WFl#XX?gKbEy8rHe z38h7*8O~IK$FApmFUe#7Z9>j4@%iWf?B~(>;}~(?=uJcr(lW})i3w(z;u$@_FIvWa zQ7DaPT2RW)Ye6-c-2S|ld``!7mPdWm--u68Bk>}=8~%{75y2^H;tY6gm<_%QX9^SI zGnML(TXx16nxuHL2QV}V^Ld`ZQb#H>=8hKe(?k-<42mxh;Tl-qI|r-poeA}YO;kE> z0^MYC`;E$p&1?=V39b%fqW+>Wp-7u}4JZ8)U8IlU&1`CfD+4_rStdsOj8!a@Mj+6X zJG0@}UFQ_PL0WKCic1{Z$kuJM%;p_dRSAWv=sW?i3yaI2aI#hIT~210`hz(8Zd?X; z#zZ__@yy^4DC{w;YYm8ikY$2dT3w{aKe!aL_y)OS+(#%ZLY>X2r>L3t9j%m|NTi87OnN`8w!XXxu{Z@ ztuj57MxZ#o3FI$>=(lvDG6RT?A)-$XAetaTmR}Q&D9Rv2o|f)gb-Uup)n+e)|BXYS zX6%AZhdx5rwZhx!8*>l(Rrpk+%5oNPy(|R@ogeD5pkhED^Jttmp}7aPq0Miu2j9F6 zZ8L#H0m?S?ccN^&;gq0ZHiMX$oXsrMr}#FQ3GL>b=wYxR5by3kTjKI~N<&V$v3@}g zIj>*5{8Lsl$TFXi`mJ9Oo>&sY!TJUH?3)QJ*DvU^-};4kC>-bCCjJZKYC>mlxBISL-hHJ#{N4z<%`&dw`nEI!46_t`k6z+e`h7Cs+7&X_a}NEGSrA;Dl+Z&MjEk6 zDiPx7mwY3J=`G%i(H_2&woOYGVs+$Cm=@4vIB4&xvDT!NImPQt40}_pp3B@XVBiu< zC3)J#igP}1ij~80eFGvgycf0GDe90;TROV*-KKLGALFriG=Y2cy{XqTn5Nha?sD@c zRB@>R_GUK2TgCL43%SrJgb9biN15pQG06ZFRR20)g58=iPSFQw4Yp5%0kGdoU$jZ~ zs8gKa6k_Z+=YNUwPX}X}&2%JIFY32eS)cm4uCwM?48N!Q1d!m*@DoHRO~^xv_hX`Iyi!n(jphSZ{F zaZvnz-8Feyx3T{DDD{Iryd#1j^QH1nolI4f>Xnw;*90zn8&{o<<3ea)LEt2{|}2U#$E3>&Twq zNAaq#)C5^C70njeP)2oFzBEuEy29s^HFFclqc1ssz!C_Vo6t@;CD&(O@t1zKpNR1I zX7!yjt-Lsz6CCp-ZeBz4SsVRr93#XrN(|-Heib`6q#`x(PtT7XcN{_dcmr#DlDkjz z!5)QHX3@I8?+bI?jTlw#0e8XWDNeB&nVc@fm2p!BU{DZvqMCVQaPmgf1Bdn=XR26i z#81aoE=@SeDMb*|5cgmnqnkZO#=+7R2||D8oow+%pSVJRUmV2CA4}^nI1djCLF_wY z`k*gbs0~jdiFS@{pl65bZ^V;{%eiBv`^I9%t_%H%sz z7{;q~I2(+gg?urMT!@H;Bc51N-+1<%c8HO5w_*~1+>+Q8@0`d?JDW~*S_-vZKZEel4+#dV_2abYTaaK3x@aSt%aCQFW`G9YgMe#0- zvGc!ZHug{AZ3l+oe&{9x*SlfTSy_b*A>xBC;mGTYZht3G^f>D~_Lt)aTllmkwXMAI z#+!!Ocx0$cT!>v3G<~r{XV+BIkt5th)T?-x(E2e}iLo1HaTa;rxJ+YJu~#kjeUY)| z2JGEO`zw)auvs#%V@5sRy=f_4TjWwY1CnzeHl!e{4falyZ~>VqUTbb2772d|UL*^+ zufvNypFu7^KBJa;Zu|@V#B{)kNasxKs;Eg71$e**s!_D`&DkgiyK^>Ed78trc>+JJ zn=ya+Qb&g?SfHXGo3@0pys#_Pq->^TO$+jyF>?t+-&^vpWFj2OMq97GncQ7#HHi!Pd0Qm%yGcZ>0pHb{O7 zEQ{|`etvuDtMX?IlAprQ;zr8PZ_B?bfBGQ#DTpjS$Fd}clf|U3%5NDYKLxqPYm}eg zx@c;4zWNW-^Jg0JL!<gBF^)N$(b}Rb9CR~=)(BWBH|HU;}F#F<0?;O|e zbVWSJSr9N)8@BDJ;EGE1nYvy&;Yrs^)b%u8cIn=Y>NDq3anXbc@!6i>nv{{~ z@V!Ls=Jk~+j)o5JuU)bh@*=cVD>NJ}#SzhGPMJ5-ws>#PrTmrJ`nOb57tH<0y&G>S zTj&(4qNxg83u<_$$ObIIxTRF} zKaEU`;~6$%TDfxx7S8|)RJ;+W*dM594pi)s{-RS9>4a~hXTW|)EPoW5K&zXY{g7!- zpmdk-h!R-*Hd?6RWmv0qQRnPgx2TWOJv3^=`)IRu(em>7v($#)^Lz1vQj|Xlsm_p{ zCVq+tgCc%E3Dm>%>CU z{{-IZ&lRpOJ>?x*e{PKW=o$djEft^PbmVFLoaV4FUb>B!f3*H($YDXS)~&cZOv&Bz z))#Qm8s;Dq>ZFzK(iXqn`2(bY!#4m_#7rOPzcfO_u=EIy8m zXnbONXL(SqFl}1BHMVFukH=SGgh`bP*gKhem4l6Qq>*x9%hsP?o`1bk0US+_UKIn|K2;7=UtjEdj0uKyrB#ahXi% zZT`)h1bP|nCn*zI39b#+GhQLUM+B%lS(8OG3n4Z%K+KB;nnZ1i1}^bMEuKqIooe4X znm^*|UXQo2|TR$~nPZWMm&Vmi6C&~gQ zkwcVAUm=Gtr3PMv_fl~!K=_tRARNvq{sKra4iHEgDuh5y31zdtf}KWr(Me7*i?d`y z@SbeUV)5$aZ;;uA%(!_6nDhaGiIMjD*7Z) zofXP^6YDJEk2Voh;@g!&)m=-kb$g=Nve!%e z&eHk48*r`kC{8q8=+3M~Lav@LpE8_F>er-0pB(VK*4vLaI?^@!uD}rJ z%m{R(5EZU;jz%_|WM2o4Va1?%EdgwrR~vefNOmWRlCFq)n=`P$i z*6<8)eRcblg`S+eBOGq_)g4Vm`B1z^h_ZbbGU=6%jK>JX8Ij;rG&9Uoc0T*WNP+pH^ghi7QHxR{Hj z;hns$SE|%myE(kkeiqe3Pt%<%!{3;cFn;34Wq3OY_UytU1u8IDhJ80-6Fg7vRsZ#f zOF;t>QT+_{ey*PCCpD0Eh}748hCyot-pVMtNP7Ng0?I!yMygx9A7eD>#E&x%>%xmL zUOvOG7Fg6r>0(jb17rIy#g-SPw#@=Sme>t)(-O!{L2oE2=v(nYXE($n`^C{vNj5Sl zKpmcdngLY&u)@)5(f~5)n#)Xgg$=`REYNQn4MjR$Yf`Wf8?>KB__$oWxi((8y`WiN zcN)`}Wq2!thj$tn&nI9!t7B}X8)G$ZxLGNjsj5H5U5R}=8!OXu7nskU!r>mY=_w6T zO^-NgQb~+dsc#!}QYC$=xaSJm&l9isO$H9^#dMU#6^9W=gF_2*kHGTk+PcFFg&{py5EGgtoARXv|Qzv^7)v!}vey8gAeSg!@z7~EjbP+zEo)I;ecUj`J>c85^6k#UMR zHG~+UH`_gnNWLIR%Jq64e0FzB!DtK2xF^n&Q_zayml1CLfZ~5<;FgA=CRBj{8jytf zE5;>ZdN;4PpPr8Un5Wx7=vg9k!vI1Hbwa$Tff1FeK&qD&EE&V9cT0?(>R&+n4bpi| zQ7-b01l+Vg6$wE{H~$K3;D*j8nFx&yZ-XP7fe3XO4n#v`duroK{SRmjxNRWu>>^Hs zoR~N^|Ms*l9@$;Krf%6&u-9|xHqrv@g8nSGHSdVpRQk61V(Zy6Z~-DXuH3>GYr+|6 zfz_a@;j#(@wCN3ke{-q0MJI~;TI!!uY)f8HY*qNP;(a{+uKu0;TZ-rH&&PkeK_8DP z&Pi^)t2}U-xB?ubAJO;s|;%zvcz61=sn$gEKoVo%53hgd?~d9aXW5_JqP!!_XZ*N9lby~!jNwE4E& z`C0fC6UQE07edkYsp6+Hdx|5==NzN(CeXOKrTHB~SZreDPvF_;BF5o#5#tEc1GbS5 zWk%9X4`hveXbfUkwpz3Q%mW!!nDtZ+JA~4;xtUtAt>9d3##(bh7q<9!!I>DcH9Y4t>nF2pl5p|1G#egybN3@6G zitJ&B=x64)IEM2(UaZDT2A|v>YMk7*@C&AE0n55`hu|T2iNxsO%h-dBQl%f2?=#>Snb;IhX zBgm6hSkPMg4;sfnZ{5ksP_6h7#+OUELjL2>?l&%j|KdM^H)R|Y)?vdfpz||*pU%?S zLw*79EP#C-z&VMJUHHHiOV>@i9s$Shys49?RPz*j)pXXBsRivU_#OzpM{Cy{R_&l^ zJ_&v&1V2^$U^Oca^vTNllpa`<6{sA8Qnyl_avh{8Gxr4jT__9sg7}vB4)Um5eta4b zjH6H*b&H>Vb%S(A-4cxAHQpZnQ^qH-h=|@Q{yx0p^!$(apE?J1TU6novyS=7gO27Z1N@QwM-O!ct_V6L^m zm3;X7c++;C4R3@b-o;{!>DaLg9DX3AznE%PomWgewhShwnKBRL(~K5X zNILLt{b6uc|3(^#BHL>#lmKnd45Cx}w{_?Ed2vk!rod%V>}4Xfl8PtaI!og!BOBEm z7cQxfk>qd}V+_!Mg(C&RXvV>`Xs(|n@$c7o6&H!q!2=Zop3>loQHDIIZjkF(W2PGG zRR}Q%`QQnEj`;>=^YC!}f?CT@ZJg^TJ-3v)R5wFiX-G2OyN&likQ!QjERFd6F;y{GWX)x5C*SQ86d0>* z&_|6f)s+HXvZmxeH{%xoqPaW&7aH5_9aLl8R1#b`?uwW^96yJFI!V`-az@(iFm)^G ztp;r!F17W_B3(WIuCZEGRi+WSrR1}}DJGrNhh05Q2VZP}5lGyF`-W*SP19j9dyc^+ z)9DI6gnd)L_J9mcl;BRz<}(chDaSg9Q*6bX%jup6f6cvwre<5fEX8PQk>J}k5lf1r zuAykd0gV#oPZrJ34;jiFV+{f(i%3|T`SHO+q5-VIBZ!thOHfsi#AxgwKBIp zF5;(x9=H%*joV#^qCes^E3Qp5xsL-t3pL{;46<9`@2H*07I-?0HwySCc6g{PDWSVn zj)5tbP9J7JH8`MTqeF<|)dwJ-#Wt7&j7264L39%djc_yN-6SXrnv8W1{JJih3!U|W zn_>MNtz|VSx1dhXQ+_N-ur>pSG#Rz_1t5-vWo|)r8wPIRow%Gr=^@3(y-biG&BB_A zU_O2vc&6Q|6TA%sK@FsIInCfg$MY8XGWW7IAov<^B*7QYCKCiJc`c@cazJv54V-MF ziCC|D5qK#Rdsh&B7(Z`5H!awsJ_QxQ5i_-ce0--|ZQhK1NlvjG_&C7}mV7PgI@^-o z5~lb40rcp~lo-9AGCe*oR?hUY&r9!irgv40-V~j`@5bqQ<~rrsv>{CE?fcKi+cKv0 z9@1r9M@m}M?zr#%QktsUP%B*O+>$Q0)y6zD=?__PKLqw8k904ijxmRsVy_r$X1>1E z6<@;?dA(^mT&`SINdK0_N9z%St@rU1|3l>zFWnm#H`*EaYrO}@H)lC zTmh@ErLQblY=Qw94*+_=36LolpzdcZN~P;3X^BsN-ibc4q(+v#%L?E zu+WEl{qZY9-fqJXl}B$7J@;`BODW0nxyIlZF*0C=GRoXx>RHPq7m>^wv%739HNwvr zo1}aTuH@D2(3us}wFUH}0lFQMj(EF<3#bm578w5E4Pu=vD!~p_jR~wwutS)w_TbRV zwZK!iJU};H*4Jg4)h)$o-iurRHpGPRNO8LHGK60uqxEnJC2#@;$TK}UvRjF`}LCiHhsGzeXv zNQexwOCDU^i~ZLw@zcQx&0<2�Xsjjyh=vfaJ(C%Ox$4pNZTuIFWfwq$);4b(Txh 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⁣;dGt`St`J zMawc^T~ETKcQuW@ZtZ&R2cF5dVNh4xV(d-Z?>%8#da1Ny{iPWEF?4+jE^93LGU0})%pWV4SF2o zS!M3IigO!mD7q_iKHi%l7}xAHBc8MFc%&M9q40W_X!%$>L*zw-_;0W z<;fE+MigvuIs3$55;5OS2+y~epLt=Xl*Pd;Q+2k&2nlxcZNNFE%Xaz+zJ_9WW9QF! zA~U8om@$c$Fk?DQFKw!`IrI|ecy`lEOfH?Fmv+hb6kaN2IF#M06tuxUr&)RxO3<=q z=p{9~T-Ku z+EIH*^S0gKi2;5qV>)KQp2-N`@KkcCgx4vTo~+p$lU$h_)p7MxHmTwmV<|2r=6ANe zF*dx;ur439HzruVKe#tH%2eJ5eG7?3dvndEPiir-KS>Gr7*_gGH9HxXL0^%Uljydz zXbUj@>s&%s)*=#9G`8B0k_mfC+WbVfxBgOXq7k+9+b8Q8C6x=z`f-TQU)Mm4$&#JD zf?1rsj)oOim}e%=z-`4xPU^Sab9MsPVrq-qYtrXD%ya^|_z!t-pm_XaCUYK0k5C&< zD;|H7q|b?8L_8*WbWunk#T0vru&l>Wv)-A18&qo$n~w~ZnQdCMQLEBi(db+Z?JFEY zTE^PJX)`ZK3`@-iSZao(&H}L^G7qQ-PyehB5F)TK(*2l;i`)MiwO^m2KsZ<)@R*Hr z?SjHCa_Yp?yP=G9w^Li`u`l?1_{S;T3cU;Zuo>gLV$<8*})2h`%9MjqG z5@N%GZm3X>OFQ03KVVEI$14u6yjZD!M2^AgsL;BgaaZT#Z@$1+9G(BA~3&_W^Z_E zl4^c4EHp_tU3;AgG_x!YWS~r2pA=XJI#Aqk*nIQ7K*15}>ZD>51h2y2a@hGOjs6@s z7UOwkZ6Ce&j8tNt16hM8NnVaptwdU;v_=>#m&Pd59!QdN?AYnQ^?52tbtk4BQ4^}v z7ZQXKdzDdE4(WBzUe*Axb_2! z`~oT6FdUHHkup+(cmKE9J_GP&Ks*5Sh2g}X$tC+Uxln&ONyYT%&x{j4{Om8MeE3DV zq0Jjau0*dePUBHa$UQ(*otiNUQ`Wgc+UClkx(nuG{PVZz4fXR-OL^yGtX*1c4A1=# z=JhFd13oJA6UB&Fk24%g$AnYy+m0*U+5sa$>8%*cMdUin9XBfnRO>~e3f>QrVP{KY z`op-Nap_pq8Oz#*w;|k#vEdT$2R3|K_D5f^^g{Yv=+-_5NObCy!VzT99SEpF>N-yM2RewTz0A$yT11r&87{aiXdbyfALAOtHV`pHlA&Hh= zo`WwAPv>W`Dilw`g83j0-N5TtALzo?PKwMkk@Ax^^r5tKLo0ri zAGPCu+AET83@9ITw_Isd>Oubh48=6`z|zjH07-Pu(dbW$LJO&<)t293P-#>S)V>E* zc4GP=>;x`Kw-!`qVfDJR2JZt{#U7G&Hqf&6G+&{f9^$LCvk{p>g)ul8^7U^ZWY8Z~ z>xcMN8f)LTK;PDp#-DIq8Q0IJQT_h8>T`J~RZiOZ5k&1p@=oeJm%4#Sr^N2kzVwMs zx1RH{2|_cEP5{6Biy(mXn&)U*S_INrAUSI>FY(f)O8*SK>I=U$+qVMN0g3_h(Z)=` z+^>&^~? z)!c5a5JoY~-@kjDY6Ye${dQG8j-1ViFYmLJMwj=E@{EF%MN5t74yZruAO)+_ zBv22TO4^hMAEj>EK&_W=!oIFuj#3KZAPCPABrfOm&vt2-W1!&rcnTD#+3P^Wv9*%# zL8J=qq#Q)#;7-cNr5(rrl7$#9>A=Ok%Sg6L^lu=7pg;cxq6qpEYC$ZKLXoF(u=ODn<|s>HEf($mMyhu*goCB%0* z-tbr*AC~?=X_AX<$}54(NjfZ?p#Fp@^p=TAU2Lsqth6)t64;w5bv@sjB*V(P7QaA; zWj{Qh9W9NPR`#n~TWvpVm#%D!7%keFkR}096T<2|l3-BOCnjryvM^#~KJRm%XYvEV z`uY6v)fbcd+~4=ybI(2Z+;h&wL~F59y#!$&u+IheI%I|)OvTrlw!(8yGN9S|($}T* zr5BFsORr7oOV_rH<_{fS+gIbY+v=fR7aEQiqPif8(qjc0I~FR2Lv_AmVRkMP(V?za zWJ)>~T3p9MsGP))avhB+u7jm)@41Xu-S(Ud1%}xbnblhh^rlA;Wj5H*>hbFZuio^t3E^88c!K(>xu4*x=y9{5K`3OKt1`>MU#8SY%iLbD4XSib5 zo2z!RfzYs(uP;LZexI@b$Z=wdyR;2EscP+1`dED2){v-Z>x)Y-0wdvy?Bdf3x<`QS z5&WOD7wo<4b!|siTKD_Ty}T35Rj zt=qJRW|O-uS~r;)0@2G9tqcBxh30DWBa@?JQ;OD!DXAhA^j814;LK&M#lC)R!%fWU z+6#*7dbJHDGQo9idUbS8UG~};HIwN}@kjS%>K}#cvKbJMQ3OVkfdd8p6TlR(T-J&O zN##2NJYaqZ*xkrSxMByk9lq^F2j5(^JzR0fsLnNfxku2*%#HiI#$jx>jjiPp%&8vIf~^F@)kERB;elrf z>i%J6JQ&D^69A)!7MCvun(Gu3uaNn-l8am5f0586I+dF2u8?M z{Q6*3!9$WO>~~+LpvgLgK${;}j90M_k?gl6XN7n08fK39ul9}=`4_2p2}}FMaruiR ze~%U_;BRVk70I2&m!y6bJ+e40#KsBgL8nBj)7AWjF-!1|%<+3`zOgoAj?YtbJ^RR4 z=ael9Tm?F?bCt1kDO@Qxk7H$NZJ@QIn;um%&0LMzP%QpBKeAFa2V)3uj`60i8%Gk{m zlDX91C@?Nd1nUxx!2L_jQF=>kYoSj8IkI9&odJFO&`u4!g#>)>V3zZiMJZmh z3j%HdeSNOJ6zY$M3-_ElPatzng*V_XewA{GvJU_Ibu&k#&{`NSwDHOYLxu7&FV z{CpSMr^cwX2WWmOG$vfpg*0R1KSA;ITd#(sij~1e`3iXF)VQ?9`z2iMsd3M_RBQYm zA4U7-_!4V!^wv46U289_am~rT&% z>*dL{Kx|lV6pEExo6D{VE0uF<04kApRH#H;Q0$OUi9;xBbM;_U#|>ZH+TPAbCd?F> zIHt(NrTs!COnv_h|1qbJ6LkL!OwVOqn7Y49zuoQD7r5ajyPOpy9-DzByRR3$6Ix%S zSBw;Q-FF+py-3z=#S6Ogw8m>?Fqt~OofdTGYQZb{ToGK?o$t^#&XmC|=+3@!K{waR z$=XZ#z$w(QesgyoZ3d%B8W;ONzlklj&5j1**!!l=XSM4;!%yCM#9o!Pf2VWm|EVHI zx3a%>v6AzIBV>NZm_kex6jRvc+;8QDBKtrLxWjaqXN<=Yaw<#k_|hen<~53v<;do7 zKzh$!{ZmCf9=6CCJ5-|h!rOyJD$UNSl<>Z>+D&y0zIiv)O-fbHzo0 zqWaT+ANZ>q_6NQ?cZqOz*%)L6yd4fP>8@O2-by9P=(sjtjyq^s!iG2bE{^zSVl-UY zRFT!>zsR=qPYX;zIU4DXGDDOa$^yh@9uEk`uBgoq}==`{0(44=lg(2 zL?uD{^Fuzf%FSB)^CX|y<>q(!q@vTownA)*MQV3a0H@E?TeaOcf9+TqlCkkNnc=@T2i;A1BYz^9yiV+)**=-=N>zD^t_VtpYyw2bT;`rMQ(qmR#=%=_Kz|SEQv@^ zmSVa2#&LVq;FOm7ks^RR<8WC?IVlkn*5C~yP7f2*w(9P?WK$MF%ajGFlcSj}6 z)n8b#oWC@D?^<}NY6cacpgw9s5RSo%DeivwJE>2Od;bH{u|HpVY+yN=h_ei^D9@Z5LV z5;HGVP3>0{OCx99fh;OqVm>fnw-9(Ij0=~#kpX3w8bD;{E;z2Y2Rj|LKZpJSq$Ocp z?E|V|Gj~WqMU0bwPIYp3vW>rY--XgqO2PnrX&9OfXvd4V<*X8ZMvT0-M3gOYhx%nO zVjnIx!~7BR=!lz2(Wea~ zWGz%k?6}3aJZ>$<$R@$tB{CL$lA=a*IJgw6?!AF7Tn^A4=kG>Rata@f<<>oEV`kmXsBx&UnDHJ`xE|xyViM4QGz#Lw<&?LrH{NQhTqEA z+p_z%eG5D)3mK&fC0DuA{Iy*ub(r9&n|Y3sdeTz5~mdZDJ~>iNN*5h|awl0ar6oD}jPxFnMpp6}>HcEY)^)^}n}xdtYlPX` zIE@XTBhzB6Zgfqrbm?o|7^_R=5r_P4%~iiH`F$ow{kr8hl&yX}{7N+)T)e~X-y}wK zzb8CcTD0%^dz#X`FP85}!wz0*Y>DE2>Wf#qLJuvc)OL+4mp}%ZM1wAVO0?ZCloPEz zoxrA;KOILsY5sxUBP2T(7FEEOqmaYL-+;ARhTqzP?pp8+k^kMR>kTN`wRlkh#ux+ioW! zLgB(UWrgQ66{6#++c7z6CE|?4_W3bCSDY_MkH?&8Si^!KsfL0ttR@vh@L^_9ELu83 zCkPQpF^l%OvqR0f#A8ySn zx6H<<&LW@=Cay@iA0XB? zxMU4PT$_btEa5VyK&>ITt@T;qheT;O_(BOuX@S4B7Og_MB|t0UiaA4q*SND;S7B>lYi!t%upr)31xQ}EnqJvcZB z+@t?Q+I05l^IZBAjE>V$S>zIEG}fcv=q7reTjD)d{0e=+rC!VFf%E{U2RC2p4erJ5 zfqWLLC8KTl0a!JNih$HF|8JK99Jo`c1l_EvQ#N* z+ZBz~9DL#X0*FAZ9uiZ>$X$i_Y6xw&NQtf-Hz_KzQ^kNSyHo%w(n4Tqcz%|7`&7YL zxk>sT@N7uXeap$%5C6ICqV=5R%mzIYLP$|Z}<;dXn>Fg~)x{JjIe;BRy3 zJnh*Zlr;ICEcj5Ttrw%`bA@KBOgy6dwuA#ug?$H*AcYRr%v?J~PZU3}NU!T(GgU8L zBn?YauA;+2@irYlrjxm2{ycFV#JENL6r(F-UXTTOYo`S3Ooz59T}@A?j{Y+~iFd@_bs;>^7ktB|XMLlmKkREG?3TbD z0v-u$w+9u~Plqd7bl0SweuT{xdt!e=d-^eSqgClZ8_~lY>|-Bz!8$$AuP>NQMFm|F z2M89-_Mn9gNc`J57W-PnvNPaZ=F$JA zs8xdQ72(@wPthy3Q=@`+8!`z3rqq-k zL+4w23Y3h!CrC(BbAWK;R7}#4*isXA@mZrdBRS7yCbF9qm%< zC@K?Q6R;Q0Dz$ic>*pVQyJX2^wX$AVHc?hems&`&WO!9)e`>uPmG#2c>ey%2OQ#KG zd%Z+uz5G(Gm!H|dtz*5^v0enSL%AJLENiZM36PHi;mE|(Ta`_WsK`*e}zXv}iVc%0aXsBm- zd*14KSJvF^vsppAhy=Y4Nu-d0b+cVP?>S|?q*lqHaA3PC3DWAW*?^>{-|34oT-4Po zwo9?6oPk~7xi$Pbx=LITUN9#eN2;t5Rz;dx753U$FlUnP+ohIK?Hm@yf;s5lY**j6 z&+#xUiL%y4+qkvSR*W9+h5~zSuuQ})k*tjhhNvjs`DSncGeUa?j}RO;gM0qpW>7=m zF*<`fRgSKSBnNhDJNa)yiVlj62Ba{x9s)zLRYU2)x}EI8hpaV>ZUVFA&_WfgBbh#i zq;2>uQ7Pj0D@o43T;9x*NrepcI`?V2ODb3u`&kvQupFX9%E}k znVREiK$BOg@TNm7F=t|IHnMp7iLN;+KmD@psAWVNo6Ur6=T+SwRb(ov$W&mAOo_d| zJqZD*5-aIcdhA{CC$H8L8zpzH~bN*1#s0Yu)#A8=O$NY!TI}R zaQ@pdIG?o<45i4`2-@@ZUT~Zsdx3u4COvC|1?FCC6$QGjJ?|>$#+@gp4o6(q3TxIS zdz`7(p#Yfcwzy2nkhO(b)C`77c7K!2fh~e5sQJ0p=)jqXEQg;AD2H8a{_M~o{VVBQ zoyAs}7PjNrH!vj7-}DRFE-H53Xmd<54QgxX>hQHN6GF*YJfoCMEu=OJU(_fPvG-iz zx*fV}rhfZO7v>=qovQa?UsMKl`%JgQ?IMn_N0xYRxMI7Wb-iADJr@h#@(Z;Sv~r$g zUMMn^{r`}@Zn7J?#3vLmIhAYa9pSpCgx`Pz5YWK4fi1#d__mYl0trN&tpydbqr#CW zzF>}6Y+=%|Lz?Zkc6&DuC&;p`*x_t12y{yBewBN{6qlqxB%kVe*8+1oOvA2-3znwf z4B7O6Rqui+NW0+D`g`89_>A-^dfj%InTTslqz5hZK=3Vm`!}Wm zdnOMm3Sh#1*?r)evb z^WPJcy+SPgx~NN0&~x!3UviD^WLX4-3VzPw-Z_48cP9kzhUjAVnNbS5Q&HV>EO6oe z)Qx*@&Es0*mr#3<1^!P1;%Q}cvlB%lYqKj=hyc?sn;i_lwc#nYM5r?Sl+F7?eiiR8 zWO)2RO3nad%l`pz&SnCCpqRk66h8|swa!mjFoG@i`AI0QPwjWmS9NewJ6QKQ4^9?K z(Uv+mwa}58e^rd&lLG(G9-Pc#jx=n@jlX~p*=)p5g(gA&lDg|5Ff9dH1y>h}%!(oi ztigqc(}S@z$f@j5ek9I3=5eg1Lu=fRo(c~;*6g9#figwpgmA(J?l=RtU;(d=v)zz> zN?1T=-Og|wYwdvwLgKwLV1`c8`*7W^6a%qA#5gIsIYbyL0Q-mH`&%wK0xh`K)gzQA z?0bwbha45|B&-OW@MK|*HNGz0m2M|KC12~(U3zW0TfaRWylzn>C=B(1ZG2aV%$^iq zDD;LUFpd@E9HjU_n7{>dPW^HvR`rtW`C&zd4A^j7RN__Op(@K0$0A@K@5kAe1jMH@^H%?9!M zTG3YARkLj^P&_95&ckv5_Z>*{ZPo)@rdRN+j_;AkTrRE;6bvH)Lf&&p#iMBr((~y* zmaCvyrHg`fkK$rkE*)yzNZUhSC8Se9MN>)!RQQ5@U1gj379G6H%(3IPT=!<0H_@Hu zE&9(i@4|SRSH2zgixn8jjJvI}^>MQ;eJGK|{a*0iQj)3m=t_%QY!^8+ax;UjVh_p` z?X?eB+T>G}a*4KalN8!JwLO3@d!+&%Rt3#J^e6#TN-6SId=cl`SK!6RYcg5n@imii zri;?basAds#ew0P0wUj7bCtfgptZPj&0iOEhHqUIR$AQQX9YUruWdyGrJ$!ER@}PA z9dS($FI+TuDEMH0THr!a>zLOM&^l2k8xZ#9WTS90X@P7>I%P-_0zXm_!G)SeGa$dZ zi;v)gd9rLD%;n%FUTu|{Q0GK7WNy$CqK2HX)R19nkz$@hQGS27QXWldNiSG%mX>tr zWXGtoJj$N|j}4&#u}LcqxYu6K4S#il>vekG_p%aHauaG4zZUq<36P;2T?NbCwi2q+ z_(xAHN9l=;oTVprxzZCG!E*+xL2~(aLiEJY9!?n5Zo}uEs3ZoYP=KDGPU=qSi6xYt z*oRp6Ipq#;XhsF^P>sy!M%y|W7?EyIIw;-FL8}Ov@8#B9xB_35q#wPerpf0P`Rl$~ zbdcQ>MrDm985ov#J4}Ddx->Ag9FNxDus$hc95=A zLw5S}l5UQrKWnEC+v&pDt~@c8{!=^sgq{9FNp}QCVZPQ*PuS^qNV;b%z0ywaSLuNa za}R7#GD8rcC~E8d{#?G8^(*9}Z-zaYc@$I$+z>2!QgV!H33K1Q6!i;K+m=Mi=9ZhD zr_Ut0I=8M8W(L>09ktWTlNU*si0deW31kVD71G27<>v3`0MUAxcv9!P6#Z|$mzuM! zz3u8rpV90&gr=ABQ)K{J8^Cfz3$?wfb)L@K|lV^TMRq8g6Kf}^3%eiZUQnOW_ z1tGPRq&&>Tt@qCl<75*&7f+{1AK>6Z((^q=y(G_?|jTW0w?9{k|2~1a@jQ!?} zT*(YX6@ksnAFBe>DIEJQ4&O4{bXu*4%dWfEA^Z3SGT+PpOU(JC-0O(=+*ok_Pa4qU zayQRiE7#7B+091OWQJ|%WH-E?0-wnw%h30aqK+A+)g{Ot~t)GhH z4y^c`Wm$txC^RZVuH;2R-T<-$g%SnZSpB05jrv#|D~JD!o2S(|C|}|opxj*X?=p%k zlwD-~_}p`=2fod~toHkS9-!8n>G&ZgL8GfsU~B#ZI@;ybms~x*vGF=HQr{4~pp``^ zADbZEKkQ2_?XO9_qYKgMA4P)qdmObh4wrcCB|Ms~FT*{qfR$ghFIy2ck8fSUFXfWX z6S)gD|NAwxr!KPd7AMwC8~2F=<4XCok&`K%!IX!6!jcGfR}XCFW&x$FHHD1Ad=>Zp z+-IJ5GN{R(3qmp#7=5an^EQmr@3i_!|3w8B5-V;RnBjk*Qgsy@_^z5l*(hm&z950l zx~s#%>PB0rdT(;gb$Z$CZqu4{*)vqJ+8N~*@*llHDniGLxlgW{O?IjN0;(_Cr*dlB zVv*A1C}vnlM}P2dNMGnt1jCl!OLM9tvMX9GWZ5k|XtiK-TfUJ>-5tKgtC#ZzTb5qp z#sofm7d*{_m-6&-nRobGIR3L9>v~SY;X3zVhW-imilKuKTwuFPC^{I5K6oKUo1uLz zl1aNYR&M`|@*n?Nm zd_7Ei(Y`lViLSM+N>j;~(SIanBdp((GBCh;8Q$?C+Z0K28V%i64PM1KKKC?eG_0R? ze#E{r1KW~dg7)Oa66g^NOz)h!zt&YSeA(&B$o%}J<>vk06(Ti8*2a+wS-+Jlz1Ofw zq?yNOQ#b(*aFIT(+Q-kfst_@{yf?Col!hUnthFfH6@$|xFDE$(pRF{_cwmzcl1Q#NYzZ%L^% zzcsNHpXbi-!aTi0Mlyc#EP4yEgv5uNWO~k*UY|;2zAb!Zk6N-cT$=m;g0*44XB^^Y zCLWkz^?44&^(e%3{AL2;dd4H}f}Q6;+&}!?XAqbE%jU3CX2)Ewz%+q^Tj?tcFHiR- zcgmnsTh{MDNNdZQ06`lbSTJu`DO1_}eSXieb|pcZ}ec^3V73ie{#DaLi< z+OJaWFaQ6&{RW>~)@=2_6HlH=(jVd9gD=jd9}c{N=hx2A8$Eom%;3n+^eLjCH)fAU z4O&qvpP&+!y!r7T;B_`hmE~q8RqC5$vJ?%F8eaXHRl_C=_a*9%>r_;5eV&7tYyQUk zwe`K!EVTkDV`vNCgF`u3C_gVoxuAmV)>*%oV+77^hsEI1H&TRFc7p>+FRmB3c;C2@ z4FEn?>;+J}K>>PBx+GSd5cNK~!|UGDwV*hAjog@Qk=>%Fzv%EHM4d>J9ui+9td=4a zb3J;A7$tYc&Nz8FI(T%l^V;w{SMfaedRNiG!N2C^mghzPtmkyum0jrC2BQgQCv4Y+ zJ#R(Uq)j~?9KhGd(j;5l2d9jl_ou#IAdZ|y7{Eu`S6e?qG3L?v#Yfit)4=~nCFnRs zZv2zTmmEdOp10>?koyw;XHnrmJGzS}$bxT87AN6U(G@%GbjF+)qgPm5CVe?Mcr7Lc!D zxK|oU^{ojjy{vV}@3Qc3Azm(g!_T922dYOOXGgOAFm7sU0@6JYjVzehl{lO!*RR_Z`lq`bV)3CRGN{ zI0LSt!-E$E&tTRQ8%z(r&7&f&!HnPM(x2uV)0$&>lW<>(suo*;()k+LM#{;UJ22(N zHsS_Cd}_OIOV@Vq(_?r=2C`hgbPoiNI?;-B#+c)yE?|vXgp20T@=yDZ$6ekCTJb)n zwDxN+c2Q06K+E!F^G*sX2|<$Sr9NtxiE- zMC)~8jwwQUVEx%Zs!0-Zr*Mk3M85VcM8-tZLgX1+&WFiZq3CtP%^p-HyiKFX)>?DvjR&nzizgm$*4sY0J@o+r%6MC}#fvBUl4#aIPNmDpA`FUB9ga4QsQy0JsM$?@| zvK%XhY$$RUV1fyC-oY{ie2OSA$g-Z(!Px05ak#(!5_`TrJ3dMZall@DDnfJbV8-)e zEY~!>wE3rsr1^)PuK-vU7B_Lj+Gdez@f~?qXc{-XuQJQ(78(&GLTGKHNIA9L7i*Q# zGI5F%IEIG$CC!^B%Rrx>LESy4ZkmR3|$occgqn|%p?A{8eJx`XfI z*z_)J9gy5V3=>ns7}QFNL&*iXc)6;lJt{a>t%a9iG z0}SXAa4X>^kKq^lMzqamm}?7q+U|#K#4PT-@2W_aUsjUy^)da%_H;)?s6wN_y0o}+ z-3JrtlG?Ac?DreAho;KjfXkS#jmX)cW6_q-$-v)=Z3bo)5J7A)&>WnElO!b7;nl7e z$?ga*a)--3N}EF!TVJTRpRa(GR}Ul_#JJE^7FH!9WjKBeMO)n4T;AG6k;-Asd#UDK z*{^xIEB9*NztHmksI?!yOv~S|EgRI99nzM)q%CXHs@~U@$F%nUx=ex1t4;rE@O|&s z^QmRs3xj_hsT|RhMw*dsl=R2<8;W=ETM^1h=Y1Ij%HQw5r>3$LiBTDGrSKV(!kGyT{@6BBFi?PV~kyvkL$+%p@ zMoE@Y;xbBdXl!q9X8E`@(-Dwt z{?T|jjv2b#Fwm=`MwMHddDnPZs!e6hc^RZx$`L8vBf@Y^Jg*r_Z;u z*VkoK<&GX-t@#lTK1I=`cz{Vnn%&u;sNbC9%UZuq^sJ$g53QRjal?_Hth<~Y=%Ji% z@(Hc;pV$HpXwR;7IahNxnkeTX@_>g+4AT@x0Eh*^`(cS&YVL(aBTGZO1Klaq|4Y#C z4aWX5*mgCo20LZ3|?7_BsYje3%i!{!sSzdLHG)i~M&2G`r zhBs*Q4(8&-^Pa#=D`ll{hUMljvg~9xg~i59d*~R;FS20@)!NUhK_DW{7w{b^n}(Ws zLx&nDw)k~JHhpFXNQ{S9bt;Yg-YD5>AW`qg&-FzNgun-L7)iO7$0-~ycOyz&-t z{ZabhjA6QuT1cz5dnV-iI{ibtKdjGe!}Viu#c*}AHo=Er)D!$5E$~jTgI5K+Re`{( zP(K=Kh)Kl-v0(p*G6XjJ{+(l1-4G{Obv^V~;=~*9BanQ(x#ZI(A74BIf%N`MOINOj zE^udbuV@_lxiCB#$?5>u67V#%sUdH|pR8_UQB^>8=K?GA7J$1N$mA8S4fcVshOZ zd_OJF74)6RZRijj;@DCTP6d65oZzY~lvH||H7#@#w4Phvl;aXbe{LUVPXHso4}pEw z^Ep(B!j*8VzMZpgLRyxs`LL|rfpI`}%k24?OR=B6Ok2=esqOyJB?}{49&LodtJ?*H zoII?t=VVEmyY@=VaNW&K-k-U=&9SJNUVqft#MAFQ`|dy32E%~^JY<%R$J$dL>-bz-lh#zxLwMV%GhBdc zPakipIH>KOE$L^rox(cpjJ~(2qI;VjIKbELTarA_CPh(;diqr;b`y$H=pNu7$9UjZ zC|kXV={}5jixX|#T`bR?5ntDB<;g%)+Nr(PrOE z&Hnw(-`&^!{yaxnGP1_$xaCvFiZe2ee;WL1{g1L8wRvZJZ=Uh>pYa_%<9n;#_jY={ z?->8yan}3Z<==b!GhyQ}UNkaFo`RJZ-mAI9Da)N+OwktXFX(KDrL(RVFE+UAsRpO; z0^A8kOD~H~8r27!owY><(A&M>Ylp-=a=FS`L{70nXmcAmJ8`BrtxO7#&)HdgeBD7j z=7>u(F>gQd7;9z%J}rX7)G7}yt;F5dB-kw-?DL4w;0JgD+7^6wGQ6Nu9m=L_yKm5T z-v~QC55;Ue#OSZ^C)l14-h7@@!mTbRzCSoII zjW~@#ttOGg{%ZFH-2-!Yxy;{!=oE!csFB+1Ex%sUmx^A!BW7Oq92SfYTA8OSwFJ+0H4*&4{lIYrEA#6OWUiYbr!5JmE+w=)*nfCXgFMH#UFdbb7Amk39cB?1!_I)>k9TqoiWRU7Euw`6yjou zNzaL}ya8=a*{dps$q)~8S=r!7rI{9?Sw>9r$KtP0GXBRS`;C3^y+`&@fn@i~FYroy zDcFCe1U0$CzCA|u9)n+U??19{aEAUWEUz3cV|JbKeekt%_%^kzF(aF0+w&eX3}k)B zVhLAp)d5b*$8fw4Wec4=7d(QiIx$4OO-?kvk-m6=uLY!pCwoZAHde*cv~Z>*`uhjk z&;THl>`=R>%(LfykIX#>L#EDm0+7N*x&SDCvV4a=ivn5m&{stUf6X~(zvZmiZ?R^- zQ{QhyneyOUnkx1xC+mq|00{AY1|F=%GN4o28jZd0(m^NGwJ3y|>1ctXeUfDuXvIBh zRwx?u4S`NV1J^U&SH|3$lK_y*0iz!mJ* zYT-J%O>N^LN$|^@O@|qPhoaJr`yR+fJwB9tz{y6+8PS<6V>U}UN70v(+H)q3kVy4- zKccTf7u+S?18R`?b*lYa@PZ6BYJd_aW4W~#k88wdH^QTH@I@zM-r5VtQk{TvdWowH z<#I0jQulUD1YDaQn;0R!UWC+_&^1f6ehk?0$)x+@3Z>1t( z?f1j*k44Cl<$xSIC=~aP*hMQk;mxW?;La8Qo-lj~W1n?+QQ_9UjBKkhLS4{wn&n(z zTtZI??4!!FvR92}FB!{z>5=`tFWD8}k!6&+XtUP`tx}Ej_u;KdNRj%A_GQer>e$D%~OT`Jy-bq zc`kABA-Zg1TwL%+Sx6-CDtaGYMStW*BN59t?V&HTWv13@u*0Qi%Bfs`?bI76dxk5X z5P5_#IkNCNW1-7{!}Km3i60I79<|s_-!6$Mk&T3dR6;u5Vl4C+3$1fk^$B7a^d4iO z*I1aP&SKTWk}GN~%rO>bTQNgct~O&~uCXxBiZdlwr?K#AV`07(bIi(hz*tylppvmm zV#|$cE(2w^Svc2NINQqDYh^rS?t*iR`0(BJZv^P5@0f5d?DCcLO8R_EA`y>BOpz=& zpDb73343rSc;xXrMNuV|*ePO(CJ{?Cq0Nj~0x5$cZHOhp3TAWanvhB$PdjgZvg-av z8jdn8u2QQIMuR#)E>$M`2NYp?Om7$A&J$t(POJ}uu@TWUe>CjhG5UVB=5<8;yEN}( zUJ*k$F;>~^y_t|UE3_Iyt>u5BdGp*6Y!~)x`7se$TKX65E%!^<`Csw{YBA(}3r1u4_ zoFpPHc?*X_)($L0kf*o`jp`kSYl^WTW0z4c*$Bmr7^al*myj!nkR_+k@aB zT;}4sL@#rP=Ltv1&-3VbE12g!GKhC5V}E#FmYt#cnBm)E_#RVI4OK>j zLaD?d!zZ-(sPzq{e%aW2&4;|L=p zySLYeOVSiMJtxV&`_Gc>Y#V*56v<*!SOt_Uay`_$3K3GO{uH^kI%e-ecPpa((vkg@ zR3joIEBpDVc9jSNg=&lVA*&opQf~e&R#cS{-)1xpmJ$R$H`!Rzk!N8|FuF*t*43>A zi1ly`X0$JUcVB!=p+fEN6W*&*Xvhg?X=U@0Y0dL95x3$oyvg^T2*Ep>D&Cdz`k{>n zh13LBd*&x^em5Xw&|T8 zx$ec{>Y;VN78kw#;rhDw9JN>Q9#)$}@lZW*H{QqqK zyEr+}w(jLp(D_;<=W#hC6?}ww&YT62;dPnK3)Ax4C*zk!^PGcTWxPF9u-6%D7L(Sj zru5Qz*cYtp#-QLiQGLT>X`cQ!$f`~*Omm}q&tavdMB;r=b+|mFU9+cY8!rVa)Mc2w z49_8Qcg`d=v{Ogzfib9JTGt+u3zA}9@CyEx0B2SFNPpyd=9|bias!ikci|8 z1pE3qc?#b=-Dj%rV|=SUY4CcSVB)%|+q4hj$kq@RebaoBdSy$i9y+-r{ARSdlh3fve-!!TrFhp==(1>t&pYd3uAOL}!#**ULIT%5YRQ%u)ct>1s^ zp1+@pTKHE|{GoR9Yx@3z4`Uyv_i&c-$VtZCIo=+!w6i;B8xu_9bErS_}v>Zo1Pb$yOpLKwZ z-$)ivd4lV>Y$?*ecYc=USc;Niz+=8a5GpY6?_>%cejwAnZ(oG`WDrb(a>y}P+xTPB z*@W8TCv9&r?W_dLiC}ax+Pxl!)V>+gt5FRLGq@OA4P>wL+M=X1GNuPI{yrPLyRysq5|}qr z;qT{+rzrV7-|);8;l*xR%eaSI`xPCfnHM|4Y0_M$eyKjpU2}=mmh&UDPPB)&vPp~^ zQZV+hx?Mi+sI-mWrUc}K$rV)=Dntq3BLwYW<3v!6pO4h7_2=FHdz#9pa{a!sQG{nH z{Q~Lm*>iC9|4oO%pr*wh0C6ENB0exRU0j$BH+*+Q!&OVfRlo6I;G*`@3%Q;6V|EB( zXPSV_@t1>tK}6LiiD2?%=GsfAUBU8!4^X%1rJ2&jlaLVWLVJpJp^aCVlorI{!T*7* z;`fS-d@}FKID5ak&wg9T$482M+@Z(^QX-IjaOx3e%|?n~)ERp_L!re41)+%}|K#(h z3Ir@lHkDr_)sCUtwbVTk+x}lFz4-Gg&6HJpuxatkfl5W>M|GNlvCr)?#iqV4#biOk zr2$?aGgl(J8P9%Lpmxrr_mL`1Ux@C{vGCn42zzlHs(pA6t&<7xo_rp7SGon>+&=tC?-lFzAd;#B+@LPdvBnZU_cotJlC^R%YL zmo}AN7L4WKHz~L(fxOhCh34ZUL!S@1G$WoaT1F?YIQHNLT>rJIZP$K#Y`hFn?Z5Ku ziQ7_3gvpwjQW3o}Q?V}y&O;@@DY!n@fu{X9C3;~2ZH3;*E&1Bhn?&8WJh@vm85g6h zDBCP-+xovm*Vl?o?pBJbdr?7GNm}?AdrGh~sctCsTXKURrv-AXTpeY(q&duAsLb#& zDi7xv5vlCcA5!YXx3uCttSndGq*RRmtd2Q)F%y(kdnYLCqONvcBgGL>*~Q-QrUqDF zdHFyM)>-G?Hlv#7k4X73YL&LGdE&A+F!#!@#NO+A1%$irw7UozmoqJ&e zZ6McyV*b>pxCcn#0`dt8ojweeiba>9yIEdY&wf`lFK+cXXX_=WHAYyMVl-tO~=MsW?yi)bDG8@z~?|FwEd#1SE&uCLz8l)5x8czD zi5i?@GsC=#r+Ftu9+J1%HSa^S$)R~y;6-AVmfxl28(LMLR&_{Q-mfhmAbl8dIJYp` zva8C`xX`NhYRj%!P2Jk^H$=Ru8vCQR?1;8}NUOq^->;O!b=Kp7U zMcS<2h)-|L`|q97I_*ttZ2M?qg`p+jEn?x+0Q;r>S&w^DZC;}? z%nEI>+KpT7daZV=&Tbb_0z(DbY-xSjRl`z0&|G#+moz;q^n}%J$yx0_YPFj?+OEn# zcB@@sm>94417o~ToZYT!u}e68HJM#fxth%3(eduI+O0pU-Eynl!qIkBhFPJVR=X>$ zb_=a`&2zTfG}`XY(RRHOQb-iF+KryouG?z2WVBtCVOA(=wTrEXjJL#Uw@~U3d^#j3 zWg)Kx>Sb4Lv0GYpO`(Klg}ST;9Wv+MhlB)0LV{ds;mTCcdRz^f8JG1SSZ($38dZb} ztS%(1E|gncxIfi}aqCCHdbPBwU|nwaWLBu(>OzThVHCG!J${c=yzCkkO(yx8^_zQC z{Z)mUcTp}HnkZ_nF4w%XHE&6Yw)~7n!mP(jRO4IKA8*w?+Hx*4%5$~lgIZP9ur|v| z$p58EpYoo;PAlk0w|F@R^8x>o1T+5HB(p9f& z`7fx@tdOb|FfF(0pI$PoSfz zwmxXHTW(saKGBw=Y>FU?v<@YaI;}0sctVx6dn= zGaN)&%iA@2Jbh(3$+@aOUwgtz&ef)`E(x0Th_`s3$Qp&#TQylT}nTub%iV+Kkdgq$xsEwL#Xs-lfe@&PB8tKNfP(5L1g2 zl?a@e?9%eB+0T!tiIuvnnXZbds`5h$3sNXq$fuU!C%ta&qnHEs-9P z4GKLZE;t%uvOgIOvIiLrvLSK%UE0E}Wz2Y7ro&KMm%5A}|1Dz2$L|NwM~=o{HmV=x zBIND9jMZ{w@)8&7X9)3zsUQV>2N|DyeQcGQg!d?=v;XK4&z@wq%qpG8$G> zyAp4XuS}Ez#(%4RtW*8y%XpOLEhT`*xQRd3mr*bMIl#U6_##S)_X)Y=86O)JU4lJF z-j}}g8V#}y8V#~#8EWE;2HEGnPdTh%_GQaC`x3SK(r+}#7HKrd zHfA&kCK?SwmA+VCHcDU2(Y`!o_2r54_ND%ueQC4$a?EIu4by0lt<7kV6=gKYp7_Q3 z(j}`p z-frcdvs+zOw}y=d*;tJR*%plk*(!~OsD#z3`7^7#`Vj%q&QTEUvidT7-o7}_*_T6B zUrrb$BYj(QrSX#NzODHZaP)1xM@3jF{bEwk_jr|x@$_xYmcYwL+KrdTuhYJeWH|Ci zu7=02-j{?NjSZ-8>mn)r$FpN+OW8k9*s4ZE&p*LPjVh1Q&mUiRNIL!5SQ%39Z`26K z?t91Q-hZTx zo7;0uSnFBj9qQMc*(3wb?h6T&dVixJIIgxnHSXS+UE^nH`4QBiwo6-*f?E55vj=Wq z@u52ZUuR8TTO4S2O5;^->2V>5q^LILBNnjPKvqknsyge)KyT)wf^1dXdF3kh;a>!7 z+<*Fd4PQ$f6HISNHYY9~)t)BbvZ~};XcynU`nV{ktMwqC8|6djs(du@k!EaDTM;S? zzDEJqHnka`02&odD==%DqR3oY^1~+Jewjvpc3JuWx6n zV~Y5pxi&g%MRw3ej#8ja;GjsQZuZj&w8Vp6!7!ZHH4#9WVB zx4EMCl819p1P7Mh3+I0^E){tamz>-*bD)@yoYoZe**eCHD1?YIF3kf8&foRxVI$Wk zF)P$Uw~*X?Mf2V~5z%<~i-<-GT}y2J+mp17vm|+aT62e_b7Lx>9U`vbIT*r-d6R{e zrjD;VF56`zXA9Bpv4v<=&6AV>t-SdbiYWn_?>qvuSfF5j@RKRp zW@T?!fjlY;)3-3f;vo@9G5FBo2j8a&-q*p(HazY(9f|196F8 zA@=U1a{Lr016`n~d8eH+EIEne(PndDDvsP_J!EGslxTk!k0J72H;>`PdEFc@kMrFb zatcA&KGHZ>1zNrrTaOc6k&eguGw?@T5S#TQ)E^?Qd6>gQ8V{&k(MV&b3h;(0*_<(z ze89ZmeF41a&u^SXI&SM5VkX1x@ExK9pcq#TZi8)PS;D~7D{3qo;S0TURC&{x0|WJ1 z7YTceZ3*(DZn14d{-zt-m$4g82dDB`1Q7=MtP2HSd2UcvM#N{yc#Khvwau5RDY8mr*!uKBiT%eu8$ktZar{l6UA@-EFAP7F)V(uB4wvYOta@sY|=IF^G=og4xvZF#2@5#i>tkXPmCmP&CQOr-)EyAB?O zB|;!zw{lt{tdlo&AoN&f3A#ieg3@V31}tT9yuR#ZDU**Dt0jZ8+5`pEcqveQQ7#OP zcK1bv{8^#hi9+m;1uWXKtqKsxbdsO*A4n-i!so`%em-tyk zGCBnz3n0>u(VPklTMNhKRFJX&Ga;vf&sGHvyG{il8)B_mKK)ttf*NvF7mi+~RUnr1 zV}$&SphD0WU1WnRxM~l<$7S||t6C5-Qx>&cdJaf~1Kyyoi}ZIGn+5H+74WQ1S0P(! z)2cHpaAnxw!infR#?TS zt1K#dk_3I5on2|z(V^8>(d0axR&f9Vgzu2>FwjuOhQdtrWh_FB1+8$T)Mdp_hPWy} zgi#!?!YJx7-_5!aa&ZXWNStd-uTPLbq|gre98sUseZ!J*io`geK9XDPJkS$@)X3Kk zei~dtkD*1|6oD2}Lj<%(>XUSNPDL{J5}^o>Dr85-p-t#{Vi%2iI$E)irBbCO+G-mD zpc5Cy)c}Mg49sb_67jj3rVt zYR#_kMa9kn;|nxNshXo6x^bOGiAOZ18xom}j1moshziR}lVW2Ki;I19zv`3pZ6Br> zzGIdyE|P{3Dc7JV?r1;a@Wa)nl$WOBqV-Ex5!X1_VaB=}2L_mQjAj!*19CcOaGjM6 zbBkf6083pbRL{L4{V73dncNAF^jrc`jAmlMqb+_Q)pN1m0A7O=dM#xdMx;O#;4=Y| zTd6nhLr+}t57_-~aHtVF;328`CH^UxC_9vKc~$2dTq>_i@{X%l`VZVh-<(>l5oAl> zv5yximfU7pBS3lMi;h6bG>k}raV?!^1hD7;U&cHx?|DX`^19B-d#(}WsyWEB<^XeJ zYXnl9IXD}8#$k2bhjz4Jj+AK_kpgF7P6~-fXFx{T;D9?ApHubUUJG$_%0Zq6m&)ln zE2rxHDC(zXAYb+WYODVjP`AP%DSD3n%ZfY~_Di{jk+a%62lh8O)My=;b)G$jvlc*u zOXYN(l~cwraSarz{$FSH9~DEZ|5EH6{XZA{rA))fS?wqc8ilG_xeapU0sdT{p56Dc znX=)pa=OmSd2aa6R{fs~TVf4?I|OS8Qd))pZ}J6ckQ8kgIjhxk&Vm}VL-LQqIl-jQ z%!114IxFYdv(T53%O=E`9>tCe`r^+eALQ~O-+1ZpM|>WB&QZ@<>=HSGn{VC4+v3l5 zuFzvEU~g9xbZXCX=-Y`Z_2J_y!k$TgrudWREZzo9Q^gDaO!4oWvpB8yOL6y~DgBjm zmZtF&U!=5IeXfxoU}qZ}dCNq=wTuJYzkarO3=$?8WbbQrk%K~(oMiGZ$_ZdJWbTCkq>s zfQ>>R;%cW~86THsBZrOw#fZYTQGby;HY>c=^W;Y8M9x>=!BECgF|ZU+K+^%2%~F?vr1G-%YYJ#eXIJ>diDo zfCwjJr$EoCg&rX2otOfZqzsf7*SD;}ab=)El!30{x@KYuYnn3939OSQrm)U?GiRsb zQp+00pcb2HS=K1@P?-8vW8Y`7C3(kZ5Iu(BQXOxWO*S^U89p{n*5K8!-3%Ky_7jHX zW>~$M-c(1dd~~}vvv6XZ8br3l4WxkOR>0_#`o`iEP~+pG1 z@A$;~^+semq6ZcB)nk}kd9o}m4PP`!OClJtg=#s`bSP0VMNvflw4aEuk`?2vTP5F% zkNjJBH~|^eQmmrNt=Mw&^s5qwnxNKnhO)YhenQt|=~wqu$FmI)~Y=AaY-8j3|yKv6qj(9FE_IuaQ#72IG zIGR^5y}8PQDSqc%Gb1@O^%n#PypAnkX^@d3#IAJl6kT|7^L%Gs)UqEzb5Yy91P>+i z(?v5+3{G%MaH<>k3-~!Ybujo=n(hiIjXYD|-(xCpgco`!fE5?HF@L*N9$cpx{HUbq zvF-u!rg&5wDvtN1C@rA*ms0j~MuRWNTsguEvzl*83(T{fHeL*-)H7A~sMer_E*PFt z;JZ7e!FLzBd3K)L>^wYQE*0`$WIl^@h>wWtzpbTtf{&B2G+CVzFROFsf2uhTz93z9 zYN09M@RCRvnzUgO#`e3JtA%BA*l~B?Zf{maW4pr3u0;&w_<4& z4oQ`IqXVE9x38aqh+IwJpj+<>s~OfY=qY$5wC^_UmQI=^cSFoWZs)5!8h-tE8M7Ko zBqB+?ea`P_?M^j{$!}GHa&X8)UJR^w{+xim->I_2`kiy0mF|SMdWqH^ zkA*{71i}$n8QSJHfTlkq2!m3%Lh%e`j%HP|#+`b{iiDbg(Y@l|^N*00vq#@-_aLUevF>xj)P%k&zzO6L0!wNJvIfLB4QlUe)bP*NT@B@UR;p@mRIo^{!C;@aIZ)o`LPofm(9_hZ|4fFjs}?Xh z4p(=|3nSC$S};M^GYEX$Q38^0I1RDoodA8(y;GJXyY#N2eb{mPSqbo1hgd_rknTIi zJuLP?INFgLM*P&Bp0f64EmTZVN|`&e#MVGAH~lSnKI&mP;ZaWzG3_n(LizULHU&tY}PThIYOBd$uEt>Vzma&^qU ze2KU?<~cyT$X55u^_j0_o3j%;Eu_^mc$6|8;hl5eA@xqx&SYTE5Y6ft6-IiTk5!D)fl;GV^U|o9&Q(?`)m%(;iivc>vz-not?m)Qi zz`#Ec3?@djkTCgpCt|#6NhDX}%-fxO_Ga)k`RpS3O(F8T;6#%`^Kj#45Pwc%J->m1 zlRj^H;Hu#Nmc{U?;%38*8wp$QuqZmy$?Iprt^6O_-UU9Y>e?TlWQH)nz!@Z9fK+2e zuXb#UhF0Rlnvl!{l!Ra;5h0+rNF%NHPeTTzCLwq-Nltc7;QlHKw<@;v-g0jr+KK@y zk4&JM@F*rgF;fzai1x%#jfxN;W&Yo__L<29A8mjC|IH^ebIyM6wbx#I?X}ll3rF@c znM^@DQ;y$e#)E@r%0l+#o;1Ulpz!>kNhF1)coR)=IFs?5rPE0AT}cQIM91W42Xuk) z00NGa$&|LIhY~%CL zN7PWtn@7sJT_d&U=sjF&%a=sgIx=6xgOof)O(O_q2gMUr8;*O&Mbm z4$9yl6|M#18mT>f#b&lP>vK0Dk*krup_d>6Q=hs8k7Hm_c^_)?AN7r0kE7G@x-}zU zZMo0!Dm}9~gwIrR4(E2V64DQ-AsCCAWhg9Ivk}kq=k^>|{12gAQB#5lH(4>jN(Eq2 zYA|(AJxRH6)NkP0^PQr&J+)bR@sP&RFfn?y`=Gd>%)97%L*ud3Wcr{xQ07Q`?m-l( z_{q+q2=!$l`JMHP;-K+DR@O(pO6+>ygsOMO@ztQJOYu8104P{OQ(hzkeC~rv9;8%; zs~uNjxL6>H=ggM48U~GLU_1lHeF;Y8mFj~SCs9M#DsdMJ00cs=*THOisr8~$w2a~S zvg=cu#UX1Wq3?tmLTNaoEgc7shzCpUup96kMa1#9-be!mN}@hR=`6Zqt;V2(kC-$) zeQFVm)}A%?(iW854LRZ}&bsztQYrq|u(}Fg&r(@+3Cl`NCR($zmK z3NbL(&S`1?y8g^&)Ht-H)8y7(c?^lL2fPZDV2Pv+4R=f0aju34Ok6>c@7@SoVFwYw zHnT4o*CC;r!;=r!#M~E36V}+>?O5JgVE3EBsWlRk1#779^cQ5n&{OXpvEdgrn+Xj_ z9mTmtW7vT2VtO#)p!RGzTBYeF)V7l#K?juT)ySmoAu$|^{Cnt`0goASr#VS~=n#7xC?)*Ep`reLG@&`v zMT`YJ)Xz~}qr_Ufm9y0s@ukt&RpFGmDqM`N3ZjOV6LlY?|8VacfH~2+IN1T7J<1a~ zG?HJHlTtL&d>l^OsI&AJZT+ng5_1bRz3C?UmL#TZ($YoD3Z2AM^XPs|eGv6aPzU{D8fy%~z6C$nW)u@Xz>--g+*l9nnHnN{o2a@#ei zj(|@i^DuBDfcZERPef^_;}?=*2druJ|dO!ogzVu_16JY47qYwVQlxo_oK?<09ASwsUJ@Ze=0V8_} zlKHXU6f&=S_8*Y|YH$&5-uNXAz5(5HIv=tPPbYks!H`f_5%v|w!|*syn+o3;>szk# zy-7d`@Y#_S;K3|&1%PFrwlD1py-i>*hcbZ6hoWv?27x2_A1z;dA0MTU7o2(OPlO`b(A!i)GbSgiL^`Va4$i&Li&B@%`$#(s1Fdc4@KjKsL~$3k ztEt$oZkUJB$Ze+Ws*|>>hhw*^v{{AK@me>s=*ckB)>U>b1_MKbLjfQ03OpJ?PdgxJ z>0L!7)26Pyw*-$%mPY0JWf_q%CtQc=#zn?MW{~M0iM*7GT+(8n2Iew}FkRhCs|R|} zfYL=Ru{UFCiIOV*A5n-^tGyp@Fq)y&F6IY#qa(5`vK(41Z7pD5RjVcLL1ZOrwLhST zR&4{3R&4_nmwLeJf#fKkB0Px`4yt=8u~mDTXt4G))unB?kG^YZt(Ut8az9IMB6T>6 zkY+cGADu?WY5zns?M=cyk8=wbO?6FJkYbj|eURlMW#exszQ%bsb=gX*XY<>L8^O|R!b2$UCR&eprJJW zXC;XWK}38ojciKkh!Suy8vA1t9VjSp%4U6h#`7$H8&h{{({7%&?)Tc#HYH=LCC>_!vX%CIOK=WZ28 zlv!=o3$Bk4L-Turz^UT@KFy9Ozr78kMWf%O3!Cz>H*^!f``NLV^y`TFv-s{1m1 zN>zE<6FCs(2CCExDXVi3+>@E_xzBeeo=#`xc<%SXv{!c82WoE$oI{kQDS`LwW8eiO zJ8f+A$-z(VBc<`KBTKZ=@Yu*-5gviorwYgDg3?t`YgoQMZBDlD5%}whPfztdRKIY< zxqXUnVSQ#ob@OBQ);~0|`t)P>)UUNyhabzXpEIiZz+*7^)2^Ocr!?&koEoY2tQ*q~ z2WIs6Ho}4&uoDON76gsyIJeLFDnz8T5nlvh3Q46RV2Ct__NO$uFu!8_5X>PRbwTpv zn`lhHTYkw(+}AdO`x)BUB zbCc5ZH(XOzj8=AdMvo;W4h`BIk2>F~fN^mL9N*$)v~l546M1|o0`6xsSHeB*f7_hF z%$0zZ#rRP+NAvbQvWp*T0Kp6U_afc(ut0OuSzO1=2dX7)pd(4zEMSn zx{qI@-p&8SaD@Ha8CXc+_VBwhUahoAw}&sw_d?@t`9R7JsBit5`>}Qpu`~sQy(?D2 zndt79peG&l@5DDZeLC_H^I+GW-HtG9;iu*siY$znC&@!hyF;!gm`d(omZJ(;gITv= zvWJZukhVzl8|%rV5qc5| zhY;(l!k>aCeTIDmg}eRJ@TP2d38^)X=~KAz#s>j85dFkR|2v{N*sQqF2qU`CD6IyA zt*vqzqriEy*kNsQf#JYfjPV5`M8Nkh_;qH%7CFV^4q?Sz8*z_~?%w=_Kq&`B?4|+e zxP-H9T#({%(q<=V`N`VK6kPSHoTkAGyf;zv^EfrHyRqcVHq5kQZpmgyz%Yn0b&}s) zsuLJ&jArz;Y2N$6NaiiZdT?Wj9r$acaOOpy$vh*{V0b{zPZnr~{wp+2+q4bewAa5e zo=CUG14~Qm<8jzN&3M94QJ@%Dac7b7B0UjT3Y3D!-z9hjQ1s-HeYRGsC9BBr+)j3# zY{2Uq>T_)AOUrEOU-wNZGG}BGc(coH5S97j zEm3%%HKaXD5ny6;`km0J<;_MSZOPoeDWY(;xG0v)bzRUlaiU{W+qFspj=#D5+I2Sn zfzrwTqvaFv6fRY8Iqh5Jqs)3%eJ$wC0NCJcJ6rzb%b)w?&usZKmwrUvT;ZMVKTv)H z3TiI9)}6O_-IVeXZtwkTCZy$MuNzlBBF&qzYGlxxPQwxU0JOS0d0L_2p@zd6E_O}u zUfLR+Oq=1MgeTK0L`2LPX^eb~q=LsWBZ67rh(MIz{SHZsZiC1IGz^;&I*LUh#{Fjg zD1oN+!DD~0xcAsC5r6c=%E3L)YzOfah^O}qenBpJCwu4i&Q)BE|0b% zgG?V@Io%k~13S#wu$kXuFX{OKB$z9)j5@LUZUDTbsKzl4@V?-65 z-GW;sDU_Y)W7NI9$V@z$Ieb-%xC-VzQvbm0d+cwO+%H!=kpbC)9R&@`M{ZuBhtKf-xZGT zMP8C=q_03Mxdl9G5mx>g^NDtTV;K;rG6@Kzyf_f}OT2r@EoF&?+LBw0M3lt@OsPAE zF%nCh>T7be>_X6J^;y*eVYM>dQuc3Zr9G~!LmabTmllLqXW*RZ z#k{0~^C3NbgP}hhp&g&gYm7_hXoxkyGkfi?5h|Fx)ge7AUdw~admJSm3j4#AQ;N`w z@apNt>Rl!T9=n$|iO352`KidWlP$rCNTGS{MlmPCy2WLOK42SyO5Q$T0-||N{uUSZ z7?NvuE*1Nz98_dJ4VzDAro}KH#EBO{h(gO=f~d3+3ss1nR}b1RnyLtP5K`gDxVWq1 zG9BJm7&uRGuFHJu+s^;P#Y3rkaCyj7KnQ z1`;7=I>-%z{}1etbMSNu{sOP=zSD4SSCX zT$T?-=nvGet$dZ)CDJ6w!s+v%o`Y-7gQDUrR1z{oyAFfrR1sA$vNO<`H4s`fKyTS2 zZS*=AS~MtM?Rd3@rpgz%6m?RxEwso65i!{>--Z5=TKIx~_v;l?tsT^GD%DBN4s_ZC zwHEDsAHD=)S{ef{(0^rM%_bqZEz%0wdX87^d*`PzOjYIhrm)MDrNI7 zH&V3j35RPO$hIPGMI5M7it*|WN&?AaT-lhQ7Yd-niuFON1y_uXRQ0i*IIakmyESf$ zI*?SUk$F@Oz99_Sr0l&fa~k|?%@LW<<#gb5o|<;dxS30k4PBcaaW~Z-zc;7 zu;A}qIS~=j&G-C5<0`a;R4(i&_y{CCWSkMC&68ry9k3p9w^f4drnrI#Nu;AvI6QEO zxcWJhlowmniU9!g=O_?(sweuXPN)r3!+JjieLQx!R0)Oqv%-_adda_tl|l#p2WKtP&^?Fy838;oNs3zE^|X`#wi?|u^E^oQ6lsK z>D`~jO^{C8tD)pqqXm6#8395C&omc2etM>X7!ae-JBlT7Nm`PC=wv2i{?N?=Isc@E zOc5CmWdmrI-$iWhMD_J4yEIMsbT#Sac7?X_ukpha~Yjp0351=I`n$}wpw zhi+=_8v!!#WHW88h&)MjfxNfh_&T^S@!BoO47`OhDRi#Fah10VK{=t71qWlD;te8p zw+Y93IJ5BfyDqv9!3CL;a}i0`or0ttmMjRa3(i(Oel<42LcIx@MdC(Wo0r&0cn#kS zi(x9_*oQba*hA>LRHC5AOZ~Lnrp9rviz(AvNm?HcWgWnC=-xU-=xq>46;^i+IeC10i0s~P5BLpFf2*Qmf z$d7$!k^)Y&cIFUp(6K%z)L5pG)`gtyYbSpReSl@<=vqVsR>H>)!F189bYDh)eA*|! zq;W5^3zhH)Dp!y(d+c}8HI>TIe7A`>U$Co6V=DpjaeHCvxyX5CRr>9tmD(2&&V~Fy zFwP3cOaJRjEKGG|r3l+g>_2kVSItFWxmK1n?e~~Q)XsXx?Z-}8p{fK@UivPWa4*E8 z4RgS>VJ{-V0(e}h??L#Z^LZ_!5EiqNDwGG2inf~+0JK-=xLA9Z?(Z85ev6uL615*D z*g=rSRHaV{myVd_ZZH27r^MC2KufABueQ`XCJ1i|%<|ecq9{w>Sb1FoJXoDwyBbby zChVa$2l>dEp4^v9uOWShS5xr9lg9<0np*WMr19Z(pRasR|52P9o+xx2YFdWQhw5$a zI{)KH12?dD(n6_JPeuYF9k=3lqq>WGX7P=f?QdT95rtE{c!q<;v5xnH)iMS0>W-^hECA~c$s&DZKCFL_S)`A|3HVBVp9}@3cEISj$s(N)AA?2ufLWxEz#^@G zk9nkz#U=t`pw(IRqpL0A?iAk`ZN{tO6}qR>_cgJJezh6@E*RAHo2Wxzm}Puj;yA%7 zFIxI<1zVMXnlWWinr5WATPwcCFmoMYet=Qo*r`nGG3`l)U7ouimR@-9`r<_>hhW&y ziX{X>dH^DFjp4-`qpT!J$>|X188e9al*kvaFG+HJNe$Cb`|e4rv{kxcAm7UNhY*65 z*HLd9Ni;Ei^y(?Vgz$`=#t)%rEgFeX6EkZYqwcfixGQbtheZud#9q4iA|Gk$VK!P& z9`Xvu&i~&g*Fo~qX@@d*Y8wVe)KF{Izs*B*Fc5HRj-5HO3GRXN>XHXf#5-5ufTM|$ z8Gpu+v}lxT4_Fuq3)<>14h#m+6Yd7+iPuI)s5ojJppGN~%Jr33SBJ|07BGnpVXLc8 zjwhc#j{0OfOj9b=e?e!fV6Uf!&zHO@fw$vvVk`DgWx^5nf7gA+O)&AP?NRo9c=uyF zo_iK;#x?@0>9^z{!Mr_d@kSR@tf9P`vJ+2pIqlJ41RrZ@?x3ilRa8%`Lq{i3M=K0r z8%aLZ>~+a;@aEDt0$QUVh5UuBbh(i^-ShJXVJgx>>*5ro1@MhE3|7 zxc#wi%?)}cd>lNl_6)e%-1C-|Pt@j>=(bxyqHAx#s*Aw~2M(L${b-K`T5)S^y5l9% zlc)q-`ZY&whV`JkwH&T>;DsX1=L92xErcf-l(;HA!Qx9Yz4YZneSOBuM$a$NEl)Ct zuGj5zmUq$VP;t_7>TZLfP`geFhEhj5s_$pcIcU7g^EoCDz-1|VE_bJtQ zBl3;AAjLgAU!f^55HHo2(tL)}xPXc{sx9a;*B7!FRdH5;3ms5iJYsbOsqO%7PIX*> z`ZN4Alg=!;@dY?3O;dKj91u}U42X3Djfs}Ki#ZXR;(*L(t(G_{)^Dq&{RuJHReR+I zCCPm7jYrDGMaJFJm|!5uyvrNpCS_{4c4(8bCdEhue4_klPV6RSs@OoSz$Qi3h)oJN zi#93MB6pYAN(~YFB3ub?Q*Jc3DaZP5=G+=5T01q!S!qa#D{;&(G8)gaBpkj&a(7j& z1yeB=OwA~vNrv*@)r*+h2cTRbfg`d5&|U{RZWN>7wpz1|PCc1cd|GMzDT*}V?ZzPJ zjd&-(1EhexlVN|tnizm<88`zIKyl2t9;L~aMA!?Q&JHGGT;Tm0i`--1hI6P#nrTjm z(KrB0wDPpjbN54oqIv#`c#;6(@CSFCrH(=Mzo3PESD`|yle|&KbzG#OU9dmP>qhGu z9-+kuUbdkQ&|(8-P!k(YgCFa?0Spzqn&O*rXEGj$iX5i4!xjzNZc$!rwc6g;a=rqH zZ^tzO($e^6Fh&3rzyk~$4;1dK{XKk{^3~7aOZW#k~vYM$Py%E`8$|$`eY0Ch69;|lW*tS@ zlAwStY}17gV?%UnSA=G@CQ5>()a6n_th^I&5l36FP24J%bf$Z6$`u5}1owNa$-(7n z#WT>fwJZMPG<>+g^eY<2E$7oT&kMwFU8LXz+gzV$zHPegKS0VrsQ)Bk1tV9K7|H5x z<2pNoo|h;@jBsaKIej z3A=hzs@6`z5jjbQ*z(nO*eTJ|AtV7>c=p>etZ(3Q6_#M!X0pRkFIYqr>iJb3>|odc z`(L4@ZqEx!LjfjF-<<^b7r-ja;PtT;UJi3RaoOZQ^3jiHVfzm&9Tr0$x!BBwN8@dn zifz!5&wastq`aN1{}p3Qap~qb24ohPYz!1e#k~N0|1xuc$%e&g3^Unt?81b@-Gzp) zQXItOSgM<`A?|^{$c8E?2Z3SR1@Vm1@DN^xOgnwXJ23;Sy_Q6r`fMI!oI5#*o6Rm;E*KSeYyL`T408%GI zpB-mC0?yEQ6Cy+Dmk@SAaBy=oInhj8FsS5_>#PBHXGI=er160-Z3)@@v+o|^>~uUA zN`5ZOT|7{68;z$Gh5#!1-51K^T^G{83wX{bb3KL?YBHbAQGS#hePQJUAAnmwx&6?y zcDf}98mvTUeTnWj6EMn(C6pOpK zjxC|&Em?^EratD_=a%!TELo41&6E0_z$d&5B2CzoB^)o z!x1T*kRm&dgN&-5;k;G`>}OBxyj>vtBdJA1A~Y!?F}|bF7!QpvDa-nLM7llZ3R%|4 z=c9ysw<+E3+m3@KS+?1JDqr`EDT>O(|8po;L?(V)bDy=|GiC)eN}(={UlyL1e_=vM zE3gS&5eMtA(bRcgp4vG)b;?lciMKVIjpt&MtU=PuL33hX%`O36koVw-tibrGg%nCW z_Ml2EGW{9Ecov9(n2>S~>5mCnfe^GERLI&o6ioM{gG=cfZewFaaHwy-1YkG{zlXO* zp+3%R_-*oVsNN$Tk9`LIk?~EAj4w_vZcQ@B*OvhC9(w#mqx|V}(fX8FP(^_hGvX#b z6-hCyKfE>pXPAg5A({JscgI&0cza3);A7sg$&$?a*E)FrfeI&)fo1dBu?`4ob9FIm+56;tyma03FNQ$Qz0lY?2j31d}BKB>&d`8AzXR#o)O^BGkYZ-38s zs;c7D_k3Md74H=IPC)W~F<)mJrBIzAVWB)}-Axgx=g3#pD|9axYoq@-ez9pSy#ba~ zH$qW=Y!3pgP;;yv`!+=d;;jSjgXQlEPU&u|7^gHfa3W3TyS+N~LyWh!ScBG9!R4y0 zQ?0FV&Zacw_M%DyC!E$cJp3i{@E$)1KV`kQK$~qho=B#}0LmWr)ITzC!Oj{b6J$T5 z2yEgLIhZ5W3p!F;{tWewj?{csfINDtM&Ot0DXB`}P^5St>-krtssql7QOcgGn?T)XL2C1eVsh6QeH~4Spe#-j{(=%7AS0qfMVuuwqO)Kp^lWI>nV~Wk4s^~s6Iyuo ziwf!Qw4)fbf*i{~a3+-5pBI{Cgfh>BW}S{HrN495>CnP6YH!LH6$B5+F$JAg-%kPb zHW2bM<%l8=9sqCHf5(yzxB}#fSm*i7F$oWuHd={cqSa|zPfr7Qg5DZEk|kCf`2k=n zt=R!s)ybeYxGXml8#1vROzRO6wo!u9G?X}l$6ZehWr{c$@+9HVeP}>mkpp_gI3|5& z9Fs$y91!8~YMWyLUjW-QI7 z#EhjZsGkcu6I)O}6*P~VWDe-C@surEXpX0g+FvZof=_oe>U3;bMr@-_yN&^f8{WW( zlKC%;Dl02R#`7^A&&0q5D-A~-W)p^ipbvQt-XNb&5FM^|+)J+ccg%IAXvBlib4Hz% z#t!_?>;bS~lGcf7&<(SwnO)s5IGZ`p4Qt<-cs<*_;H6OJ@$Ln1LPV1c-sOu2x_Uzg zA}@8JL)|d3n%UnCgSMIN-No%d(R(4z=;QW^)PF0f!7tYWkhwms13(4Qqg{IeDnPXjxeYf!pd)G;eNF@ z!%c)hsjY%A2c9ZO^G^PK>3Z-@5D{|;5C?e?*mwoq_^0UqKSljBQfL90#tR6M|7jrq zvs0*u&rpm+^c4scLowKvA}}%|g9^!(h4kZz3dx{Ci26r~Mc&_~{uvKaLCa)8M(6AY z@d6idawUl@0K~@-=V*eKf0+Kyl=?wVv9DtQ4ook`LtzSc^vnZ_z$Ghl*t5c98)89M z5uZ^gwe_?B&%!N?fjF;Stz2v&UEO8YpjOeNze*<)diox>w*+peoBLdv7l$rAR`24z z6bKi_=Nk{eRtl;Ge+t7#Ke3 zyB1|k&Nn7S%fJC}btC1cKUhUT`>Pw=%4@TgaNUiUDm`V>{}AKnh}k>OYY7QTIulUipsevtewI?n{azF1mOKT(*E(c6-{yh3*9iF%W>0jpHXh z2JKOc+q*sO7*IsE(}r~iIv=_QVf4~QkiaU|6G|R=($gaoca5c5yL@dh)me%QA`8w? z(sgFi;^QIDaT$ZndAElnt7IgYPSs=BR2U`o^u&i^lP1Z&sLgh?6uNIPh^6=!0>t3g zxH49Yhb%NbVH9%1*UW<4ytGp=&7#UOu6h9!Qu% zOKoPY`%x>*62W(R4?NrWUX_&=VYiYH?pK|0T7r6OhntQ}YWAg_?(}es-+L@Jy{W)bvmTaqo}h?cm^zVm|PJ zUuS@>d@oL>Ebvux1l~$IdP#@!+w0$EUEnOl<^Cd3x>!%==8++jStU3GhRGht%y8~` zqn=~VOvs?R^c8XD8-mk&R?(-ht3m;-K0?a2Ew8G1Cd!pP9(C|5`j?4Vgoo zTsj!?A_Mh5C0c?blmM;LPC&z{6~pBYYzp6ovor!rOp$R^qTC!Uwc`mzj-ver3bm10 zkb{a!vSbj(`Nsd?ppRS{UAPxZ#(8L!4bBdPZH4fV4lo$$14suKK#+radJ1Qg-}IXi z1fM_W-vZXGfQ@A+D+dNf6hIPs+V~q4=E0^n+vPbkn_^*E&v)8*m&36&9JDqg)YVor zXFf+9jz%CDn~)Zp?#X$+gE<8X3B zHlcd}3aKttvCE4(-M;PRKM@t3YVd;lyrOR=lsKY$6OOgGpdCI43tgllI(v{@Wwac- zj1C5xtpFr0>iV`Ls$-x7!E6Hv4QQvO<{V5+<1nMR^Lz-lF|^`cG~sg3$o+5F2ggF4 zMf39u?ln@#YLe%8p0#3^YCsfZ62SfIE zY}hFgA{WxO@b!!8I-*vXfdHWz=%?izQfnB^9n=$_a-S&uSJ)PN6*6&b$Dv>1I%3VW zTMsHbM(XR}4@jknn6292BPd(7haPa?#}RtKuI$LU%&~(U3ztHOhU=5i1C-nmnxek% zbe~wY6OAJw?*ga$BSrNxIZqV3o}lGdFSKJtFweI`v#@ms$~v$&feav&gZ;}(az{bJ zUM#GkoB_DbV5XHq!1NA1@9#X+?Rn|V*q~yYWJkHyBAp-4H% z?CwH4vAzySBCwaTaZ_xek<=3D3NTWr{$!21HX#N6scs(^zL(gi;(nS4$`L|_WF zrH?iSGGQCFr8|fbs57*+*9_aMwg2BanjYKhiMqWTHqv2d8Bwj{xp z-h%DmzmsTh2da~q4DTu)N2nQVAol0v4~4gVJ=j}gTTCz5069YU4uES}j@s zK{*X%2Gt8St47L~w!j81rNtSVic-`*XQ&Vi3sF?{Lnp3elQNR}ENa!Z}4@5x5WX7vmWuZsJ{yI1PF`2^hf}f{%mS5KPe<@oS`9CSKA(uJeH9{n+Pq zFX%_?Nf1yf3ovzrj5h<6;U~xd#)BU3qr9j82AxQcU9XH&=3Uk*99#=!=w4t@LCMoX z#C6KdOOOLigiujlUV7`J?#@-;LNfJ?vwQJ0@MH!ReEU!x{dHWOQ6Z~YXBRj#pl#h! z5~UB{-_hnm-7^5S1X%w08R!QI@^NgzM;u#fsUW@|;E0uEs+B*m_*PX_jG0%4@Ripf z8w;2VjradTf^u8>_pXfSh(!4QQfTZqUkZGGE;POu)k?nZT+JtFNL<-hf;D`x0p+&V zu;LJENg1l8`fJoK+ZDShmZ!=7aBkn%&5rrLBWn6FRc04zYzW_2=HmQNJyB#$#Qt*+ z%oe~}c1(q$k>FEMRR83yXNlyk#X(Su#z14O)K$)*QnW@3*d^R$s(XqW?%qQci`SPb zxrY{MTuw}@X@3p-5j%(_Rd!gGy9297V2FzM(T(+Dme;Fi=7v6y8kyY-ju&@5Wns2AcDJp&JLmRN%0+wPESUpF)o zu|GK-Im?8zM2teW=P5i;s7~50|I;q^CJH%keJH z@xBL<>7)nRq>&0B?Ssficy^tHouJszu7`WNau0_-fVYK@O2?5~mDP^!li2cg_D$+O z*%#m4`PRp)6DW4I4Po)!p)Sa*Q15=A&PlSMGrS6<8wm*}m|tYop8yHK7LB@kWkN1; zBr4*h*k|s?D1|C6!_vWJ)6&7|(4(i{sz9rILXTeV8{1)YhenXwlI~7x5aWFtMv5?{ z(CEw{a3|8pzY9R?p6!VK?z==b7#-RXh`tjBjtl#C78>Um!jldAx3G4vZD_~%WkmgL^I8m`vgn-(>av(KwNp#4R*nr(X(8T{2 zl6paoi+czSsH)KL{tHz|mprTglhm8`I5DGne*o_E>Z)De`2?K_`$o+3hoN&0N$^oL z*(4lF^&jv8^G9e_=@?xQOx<}ItE_yXdYUy5nN0!ArVC#(o36reeA#UJcs(`JxdH$L zM{GQCSG3I=P^!s~fv2B8Ahmazx3OA@yXiX1iJZ(0Vj15?{jf%ELt_{GJui)G= zmDY?EaWF4Nb>D%yvoLV(x60osG#;M?)%dSLXD)WfKeWTA^&yuJ9@> zy^?RZxBv$)S+71nJWh#?+ciAylS-=C%y)Qr+#9iRXNJeU78_^(#jv()jg6Z&JWh>` z%NQQ_z1X<>hsWI$8~20Zao>!Ms~#RVAvW%r;c@3HV*0*oc-+a@xYNVq_Qu9JV4Wal z9DW`fH)D8QZERfr@VM{C#+3|@ljda1F{&OOml~UI^YFNeEJd|txmFg^x8HsECn zK9;z6t8GL=V&X`9qWL#!bmVD_W9&G^IsU2%LvxFs%=s17{Qov<{@Y1B4W+92i(w6G zg81PwYpXl6WZh&f6XNgNFq0shhM9#)(4LV@XmkQGKgU~T)5Ws77J_-Y8KO3`s6Ml# zc;CH-@i^y{_KYyUqxF9iDq&~>>WAPCBDx9U?h+Qsl~2@dB#}eq`Np#{JD#Hzo83bF z>(7wk*%qgA9ukOsUmVO5g(VI992x z!GrF-s1A%&YJY@h_X(x86u(8rG8Br&Zo{pS8C>tGYoc8&;uN#K5)B{)%OWGd%In;@ zZ*jnbvW%E(5d&7me-+}Ov180aY+d%Z&Y~7?Op?n9|XQfBWe+$b`u@ z8hWmN=>GvVV4jE|vy0$IBKNNX3Ern<^C0)K4V7AF8%I*{Qz9p^s1=@xjEP9ZW04fh zNk(p*GE{!!P7K|(>%Ong@KZ=(k#Q~8V%Kt#frABwD=hhj?=c`v4lHmuQct4l#voD_ z8LgeD69)q}O>e#gS2!2=7SKXm7=mgg(SjTpB`dp46wx_YPRY8vw47zu6Mc6CbD*P! ztw+vE03{X$GCq{JiF$E}^}!mvamlDcwBxkxsK`my5;x;pP2X%O+k@U8sQfzlr!(HC zw#>t2pqTy(#})#CEW`a#c?cPCbv>)q7H4rUO;Q@t7;9fd)?xW*`2RJI*6>>5Pb3S1 z3pG2?AmCdohf@EcJ}vsUtcU}Lg6Pd0ooGhG99wshF=1+SIIl*DsVAkp6AmDHk}!KL zRZ|aGo7cZR=hSyDtq<(@N`MYNn7f^Nbp0s`CDRlw9MQg>bhwd0CWo=X|GgaN*1sn! zziNFeSKhz=^6<*P9jRP%JZo7r!kGouoj}%b9bg){t8|CDR|*uy78zUkx&-ElZ`u%s z0tIlmWbQthSl;H?`XP>P!==*|7DJ@OtD`vCKv$bU)cw;n|9-R$bDfUbp&VRfY~l#J`W;K1_iEp0GO?%lJF%5Cfu%I8xB$rH*{Ykd z^q0+%=i@U)(PA|KV~PV{JCa0Bi7VjFSyq0Xo*a+sG}_kbSZMkd&o`c11=NB$G@BVT z2a5GF@-A6WDhiTZ1W~S|IKiK{%!;yzg~?f_Cy(!&fYy%9H||48M3W#YKp9Kyxbac_ z4fI9bO+B(G)!PB;)aDfDgIIHBc-SnP&sY@hn>=+X1T%PxKP`M=Y+eY>I7R^2{e|oV(Wt`h#%K`uNIpK zZNbD;ug4+?qdNof?sf$(uCQ3ob5*gvKAw>ZFwVnN(I8oY@Diw&-!mM9y3 zj93jr+0r*2CP&81H=g_*J`Hb7s)p25FI{Vr;;P`?01`&u%wc$al6WA!8R;Ka}XINFusIMTxwqTvmh&F$J*j zj_|@@2BBQoINQufMi=1AW)Jm5=cc2|M3fdAOkGFt-*9Lb3-iC?9d5>g-V_38p^>{A zw8sYf%N<;Nop)k-yi&UtFr`5tE@DMWkx_)$eB-A_kT#_#w8UX}Ibb6N*bv|}zJ-9x z%|PQiZ=!J%7j{#fcT!d5MDV~w9>d>8GmLAZGS<39sH1O<;Mtmb6t{>ERJz2##`;8S z)y2`P6RIwT%i?k}Fn|6EjL>!y)(YM+NDRIbH;64iN}@3@lpF{TUY1uMfeHlM_s`+_ zD6AcZMS}7o9F}^MDD(|L+}e!92@Doc5Qz@yCOT|KF5yig&a5(3u6Ih4HxU^;?F6sL zQlm8JggD$6I6YpNg-q_w@?&QA39FY}UH9xE^dabf2Hyny>XVpBe7&Dmp^u4Jp=|-E zH*gbWFaG)w*Q0sCF)G#5&>m#F;^sdSAWbJiheVBIQ4$i3mlx!5`Cs#ILlj&s1~i?X z#5Ji0f=sE9lFYp~zJ^~@J_k;4Hv!@ND@3YNk18)dO9h`_on#H+!V}0YQNNS?Eytt# z*(VXw?WgZf7(eqS!%$WycQf=X4O@t5R493KRV8k%LGRSb0njbwMB*5yNdJ0I4gp%uq zdP~97TL!*2Dbw9nzD>do$fws5wgIK?<)%0Uvm7vkNt}n<7_Y>I%tjUr>G48!32M*u@;XJR0=@jSw5VT>$wwR9mBm+XL3k2KRYIMmv}d>Uva zU4kPVYo@8Nmr{cAMsQVW{1=cm@O)e8Qk}*tpvHqs_0L2-%8q8#v|O`-c~ojEiL`H} zBCT&~&u&If=%QS;Ku@uPNs7*7?Qe&s54bwn~HoY{mxYrNUz`ccPv zUC1F=#Z_bPNhqW#u~h*9;j2lg_q@; zpqq>O%k*8}#=0xZkDbDbmkN*3KfVv4L6vSrf_<=PI)Pr#jGsAX^}q3X1TJEZiGyJ* zuDz-}={n15x6;HV1KY--A|WWZm%Cbh57i=D9_CV!Kj}JmfB7L8bw$w_U(9G8-?s9f z3r-@N#*_4`8<&d&eKpk7s`bN2zFce2kKi{`ro=>pfzO|_Q5D@!3E19W!#o5jS_b@~Y+T z8AYqG4!1~RfF z>5p6ANG0$*SMvBJL-4$Yav;xgbzl7YR-zT!CQ7PtQaSY{8E~6auCIB*5& zA$y`q!-&5ETgbVo7058Y4^>0RfxXyf#L_C51!@F$gm^Pk(QfSC?-5T4XVKJKz}BMf zr4+c9`yWJ

    k)%r?6TJ23D|%g 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
    @FYlCn5H6n8F1`^ z)UdzwVL;v&7y$8N#IYU+nrjE8KU1e{#QUq3@qf?uDI;JPX72dc^8ci7{#?5-eJ=Hy zmDhg_);IdX;?BYJLBMjGzzDy;`q$-ON~mrB$Slv9Cbq@vVEQ*GK^McZ<_u)Ek@r^z zV89+cufO~k%a?qNbxsSiZqTrAn05UU1flW=?%iWPMwMq;O+TVYHZvS!ha*{m(3Ier zp?}Ik68Mm^S)~K|%2R6H(|xLWh(u{xC zf{tcqv_(D~S)*`=5rU8U?QF00)aBQ7nWkyfJ!b|hcH7U5*n8a(WgP(U6OVY=m|aX< z8pJrve=)T@m2nWk}xxM�g*&Z+J8nmykfKoT(?$*^k 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 C?;Run diff --git a/libs/dll-binaries/i686/libogg-0.dll b/libs/dll-binaries/i686/libogg-0.dll index 233c0f42a8379b75b3aeb681436519379079fa8e..f2487a5c3c1714c35f0c761557b018462d366e9b 100644 GIT binary patch literal 30720 zcmeFa30#cd_c;DcO*Lw2lG36W3`(dWsTA#n5G54aH`>$;C9Tu;cp9=~%To3&vL$<) zQbc5lME1!f5iN@Oo%_s`yg#4c^8dYl|JU#P|Gz%-a^|_qx#ymH?z!ijd!K8X>z;*4 zV;DvS5Q#9X2%hL;Nq+y2zY?KZX~Y#J?82a$kwp}znvt$S!BNbJ$nd~O?@*?%cUV|B zhw0vBvV6JHh zJe2{Q0kDh+GA$+Mn*t?>fAZ4?-;gomP{?s%7*pI1H9+m*Lq2jbtUwMj1sLYn-x$^Y zOI_o3Een8v@UtOvS#{!Mvb(Ik$4G#c7>WB5W0p|Sph4=>EwYm%Qg#~Z51 zKAa(ecrgbU@Ug@Uizh{j5i>?Zg%^D3U? zFQ!MzC>JVe06qhdAPN0iP6`&|kuroaW3m7%{{^pjlFdR_R5}5D6$7AgL;wu;@~0pDnd()L#sqegRzTw;@E+30oE`wU`@8 zs9{+d5vdR37x6w(*d13aQlp*Ch~TwQ@wPU`S)EhR2ef~aR{#lK zmlPxA9kc}85%3TcPX)V#Nb$;*Jyv*@(lP!TjDKw$lwiCr3M2I>B>eKw5@B}`OQ?he zA}-Y6bH-w(WsDR$wC(Hn=|B5?$!?JJN@1kT157fPTFglK3iSR|$wF0X10&@QDitIm zemUBND@(W1mPJKMio3FCkZ0nmEKx15h0c>fvY-IZB=2Izv;NKoWaS|lBau%T5A=)i z3XWACk~k`2LJ?lZ6H-lIu4NF?&|y1dM75?b*L=l|Sb{_&7?%vfhVCJSNTC$FxKaiQ z5~b5+kZk{!9yu+|vLcZvAS<1eee-z8WFdK>(I^*ZM1Z_#=s^-fvKLH--kMu}i$n;8 zDn`NJANHdd6|)9@7A?l_ySd;Mcpa}rJM|&1Msv=H z;0EWBdQ{AD6c9)V>sd6^D;f|Q_&6X25=O=NG8PpTQ6)vU1{Qk$5{Up0G)s#8xl#s^ zhH;8`<=VIa=3{wTK$bus=<{tvphs&)4{TdDne2ntBaPqUmI=4=FN`I-AJ8Y(N1l^6 zuw{(6B~0cm4wu(M;T{vnLR*A_27!c$IQIF2#z^%9w)znIMrkER_-C=!zb}sJCCA#V zh6dOJi$Wd}!e=1WN|^|WGJtxrct0r|Ey9VV3u~4sh=UmcaiAq78J{bQE?7GT!vL2q ze44cge=oKWmZ~t-8^NnoNmf4pCSnxomzNEg&_$#{pz^xq7#oYBo*&Z%CdHgp@PUe72LG79gP2sBEB$^X~(mDTx*Pwz^t;*6&}_@j@!QVOFm zQiRu+2sKKYXzX^>7-*PQ<7M18ymBgDPijV1pFGNh*Tj}fGG20gs<;!2N;tAi9hr=c z&tRBDv@&6|3FokANgt3aVx-nUY3f6+Y6qHfuA*cGs*=PBz{A@C6BZ0eA?X(cUKn=_ zZp)(cN+^W(CPrad;zy~gWW8NG<(36P;Jk$?qo+RPm=nvu)D$fPO~NDTM8OhBB)!E@ z)}2Nyp-XGvksA0qZCs03qDmOuA=cla;w!0mq%yuvl~~WBrivITt3W*{L8w1oA|gP+ z9a+3AL=()cD&8eoACP7jlj(nlSp-Bx&12xJPhP+xm4HE6Qp-qt(w~>%HBn%_4a`e1 z3X9ABVGjn@Q~yopy(f2IjCh6&XPqK zkOW(E8zByAgJG44`y(usBwF28or*etDvBLzQr(;&=4wrZ1r-%)~1YN`hXkX-R?^Uwbg0hxkkC5%q`? z7*6%bKM=A=q@xfg#hjtIEWUz@`h>Mu2L71T?=obOBl`P&^N;?PXyDKE9!z)CPVoBE zUs-|=Xo3whspl0i0DbYnl)wj;F_o}aMtz=!a2NVC!|j#%)W$!Rs;F|axKanVSH)Lo z^l{Y3P@nw)zUslxh~@Ai3x=;DQ5R(-t7}k)o*W^gds#gEHI4PsmPUSfH7opR;6}u0*MSKnC2w3y~M7dFUGv5 zsa1eEfx8Gikw$72W1||V9~ewjT^8{*u3fV){Jc zBU{A&3|csMjtKzL^=}O0!@*Q>A z9hH{4^8*820`Q0l8OvBxkOcU1hQY&#PZukM6U&587f-(v%N&NRN(_Q}-Ng40bC#mc zKo+T0Txz1@L@6T65lXsqoi9o!_Ab~?g|wd^GtX@!2$RnqzC+!6#OZp zu%qM?LV_98&2Thl6asVj&kSd?)CT+;evEA9JiXGA+)!pXS|Efe8IIPB6my^glc36v zuwje%6L#Ydh{3!PDzAc);U;1fKBPP~t>LzSlv(&KSn}GqEPNZ`skW$hdn#m@(spz_ zo{rnoAfusI5BjQ#+i90HNx?!wWhS8ClzOzP1Oa-`o1HeXNVTL%8dqgWFw7~nWVHiS zQ{w1oEmKi!R_;W)UDAC?^wsn^V-pS5d7qYD1w1s15Bq1)c>?H+c^8}wpqWII1$mQR z&_;L~X#w9AwyY_lKQov*8|YP7PNXzXg#>?vRI?8vDvqZBR~KVfu{+qJ>(CTy-U~P| z&D3UHNCafDMa{1u(Qj{VA{7J;+18WIDd5LgjKfi?SQxY#4;Wg`(m_B12thIzyza%3MN1STG&t&M;4KsrmBgHm%#SY z7;#G2)A-?3{`&h=X<1@XFYgwOnA-)ksUQ~8Yg)n%k+AEMwx^kX0rle66Co@n5wA?R zsS@+FQ$K^1Vj+!ZY-9szN)4a7iLYACH$MXgf(b+>fLMu*UZ~rB$j9=Esg;(!$V5O4 zi_h-D-Fr6d#HFC zB93oI#G!gwk`td?-_oFXyfiW@<83EHGMKG-+MLOiX~;IfKZLHqD>o-q8}w2Gsm;K$ zK7B!Tfc_Ug;YQOdg}s&=jZ3ezr=#lTSWrS3ga*iiM!AjC(bA#{I$$Fpd;v7HQJ?T+ zB4kiWE2Ojcn-!o}iK6%I$6L&S4O>E)a8yOIC7h}7m_Rs_$_hzk!jcYzXow*6LFdB) zL483hOB}r7bWmp)Seb+@6jMQdw966(s3_2APV0t#$@2%Oqaz%$9>|l(%>n)O;`j}a zzzsVPG}sPU5gAB`#1d`DsIjYHQ=eUeI6{;?n)RV6xXV^zCo;C|s=k`k1`h~fn(0uD zoNS+b!N0;FfD2`0x1f`GWG9Z2P9jhz!=RH6=mgY??y;h|s%yY{2mdG_3dCKJ^{E{z zP(OzN3B^OmqmhA8UpxszB#jz42s$AT)MbfeG@f>GJV}lh*wEuUQY+D9VU?Do0jKW0msu%Oa6KTZ@lV+d*gd4>uoTtSP z9%lMweSK;bG~o=*0#7YFj8{ydRO2ohs2;*(A-+l#7YI)y{UXAKR@x6m^9ennkPQz3 z!)wc8QQF{Jm$1=*#{^iUOeCArKfp@Z4>bjYz_G)_h7$UGdkXIhrP4+fkwBXR`1GAv z%tvWxRXmcEs4HHoSE2U_0uvW{-ypKU=D0%7z%0z=V3fnzlnUI6im#^O3+R;EN*kCT zuz5E0zdLFE4ibm`qz#QC5FYOLM}O;!3pMp&jGEBkkALKh7H_M@k<$%|hzuXE3yc2% zvn+`g%KBsQH83P)SX`j0s^rX}#VB^{lJ(dZ|Jss%){9s|gE$ze>k>Mn&`k!C+Kj># zNU`t-yw_3?AnL+V*BdJDEu2F%XSlMaL6Naw%vV?z5M~heN)SD}vdqyG5cVoa_>4k( zEqH>jo(Vw+!2l1PG8Ls9=!7Q=v_qX(EH>ziX^hkc@ZFUTq`re?OU(rCK@nM|=_n{< zr1nB}A_T9H{0d2^(%?H&@GilScI14aA45j!Q&f|VqQ2?SKVpS5n{Z$f^R-QHLrynt z7~!c5o${$XzBa)qq`}J9t2V9Ye#aNnAT(x)NGIp1%^5;0R_5DKa0l&5>Ta|#!yTB= zy)ksZ5XiF|V7-t5d;{tX#k>4nAa25e4BU}ZgLy)}h)Fo8!b4lA!v2inVtl?fJ|9I9 zy7BYT_&{@*sh`0}fVf>Xh7k_he0mZ-xRP3dh*a8EP|=ekk3UYTK@JqxgNQ%rCvxU| zM+)~uKh=b@Ku(v}B?8`oHyDTsP&LQ3OL0yq6?mV9!MQJtC%w-VrxwR6z%Y}Xl6%pC z4K$ws3l1mc2N^>MLrFI+J`Y)}jo0ecn?8qAoW;tLAeT?wjg!GFRgf|qjb58rtg2TJ zWhl%AGs34nhX=&J;##P3(AM*0Ryu%P26s3Nbhyu7I%oqwIzXGSP3~nB){4i-Rj@$P zXQXZbR2Y*6I?ASk96-5-Q9!(UC>{eDLWrbIo;ER3TYxkyWiR$a{FP8gLZ4A+JA4?W zL{EGq1^R`Mp7Y%)rmwhfA=2~$(@WYA7`Zn4GlX*~w^5fUoa++IXhTZIT}L?3q~%EQ zB5bhQ$YA4OD)>4ue88nFrjfg!P2V6KXiobxK8Q^ax+Fev1N3GkKH-)K@k~RLxbRf^Z<_vF-+>i=&_ZS=p7jNQ*v=tT9S6D z(o$^sBu=(ia<eYep#VXgLaP!D zpprbb6PJ-8A|xvlQ9LOwLop@#fZvh$9C5rv^212k233eBM#=`10-63_;0@0bpZ^T- zhyV1Cr2K(9kfACWSt*f`UNh%YUwriUdB?xvv#XjN5VF{8BR5P6LSn!B;u8oSK>a2S z`zy{Nr)NN%!~AEQ<5AYvUUGZ}hh*?UhhHFm!F?@Aga3jwZbQRu=oMtp14lId@s{w$ z-~NQ;-x;0qDiM}&{`b!_!~a=*f4oaL(!rw+Cmd;{xwoJ^3 zU{Zj8Ac$UD(f=p-m<0b%|3e998tzQ5kiz=nOmgh)f6Mp(DSn?k!LP%VliRpmnjl5+ zcSx3E@!E(NqByFP1PBmJdcgUzm*hO<<>!DSRS4J;m!;Vd1m zK?bjAlY7#j$dJpP8;NLP9Q~AzvpboQYc};R9Kcy){DA3TRPnNJuD;z+a&;P8~{}p)_ z4Ui|i->iZ6n`OL~3E;Ruh-jm03wmkEHj&Nj)M2AU z#*yhrA)Mei;vS_0q6K}@Y5u_PK{N1=G^8(#!bKSG76sQvCnQwSQ_~;ZcPKW%1+X<-hHr@ZR6{9_=51 zR}CaMUN@7GjxG%m*2;t#;ZEfT_417rU^}P650fkTC9NkgtxSk#7sH`}2CfQ{h749P)v~X9S{abW}2@Jy^^pO_85eV-m3}QDL1elB{ zDrmX}p#TG+becB9IKn04C`pKcafo0$=0WGrgPo~#T@z14OBnIsCuob{@<^bd4{~|X zT_=83-yeUjqVVS_lVcGn$3I{cu9D)?-96{kj6(_!b%D8xXP@UBvq8q-7QUV z1Qnx#1E+}*$S~&rZThf2;YBxkM(3Rrh=I6#mI2QHMKruP{9 zjZne2mLrWt6dmto6w1P6{iMZPG77^adfrXy!cXOR*f@tt^juP=5f6$MCed?A88aSU zhjW8KPthSRbu^XqM+3x;yHF|jq+!DW9V+n3#lr8mU;Icp{405uPythedt(&4(ovhGGc;^z*L|u z6C?elSX8T!5n}P@Q7NBHOBj5jUrsdedi=RCY&lq8KT$*zZ_Frkpz!A^*EJ2I!gUbk z_%To*#h*))6llc58!-oIyjhY*68g*yK+++oEVLl|RwtQ(axnM(T8hMVpK=e6rQ=h0 z<#65!*KGLfB9qouDU{(F#&VVk~k!LeG-L+FaKK{0TGuy@0AEY6R93 z1+Q9Y4VT3k6L22_Ek~plaI>L_0vAyd6!6(p@|7i=cfpG(*!W9S5^hi6T2O;aRa%pq zI`JG>i|61jIv+#k8TswWsDp|)OJW@z3^TdzL8f}ofEZ~mcs+6na=1J6<5|Y5q(C=) zeXOJ7lToR}fBoC8s`~Ybl=1>9-&%=RD#w^rieds-GyVGoay`NsIz&mesQ91$E4B=`b)WU&8Gia*#ycxDHf7vH;KcdrQ4EJdl6fJ8`yIG!GJ%Ux zTvCr=2f}U;O5tU2w~->rduh4!4h)S3!NiBM55ul==&)(r*bDs-7V9AgHy{?% zvj}<9lC?_2I;!-1cvHbhPD0}qP20I|a5%Ou6VM>afurF{M#_7r%|ng(+Jz-= zrQof6w6Zwf6}$x`X*iKqL)Eyg7M%|fEod+e9ikvQXd9uXP0ktG)5Zbkx_oDNg>;ic z;|Zv|rXH>ePX_Tx;guVb788agt%K+Rt|}P_*ihkB4{V3X*xnLR2C_h1q^3bqh7%L+ z6_HvC(iJMaP(`f3x#>pu4+diU%kF3%2Wyoa1YxT|CuQzH17zJkWN$!*E~rpOgEGMa zl<&LG1^P~k)SS@a0ApYe6#4$&NiRq0SEURpMzblf0=42(6ZzCsIJL!iO>F`LFrAg; z5TO9mD~F{x0?H4fAr@uuG9o6TFSO%5$?H-e)KHGG@e1IAgH168s+UnwQaAdJO6RYp z6>WkPzPuK%)@#GtO9aw<+Y%aX_edx&(HCAB4JMaRAugf+HNj6u-;^hU_i)BJefcAt zEXAM0tMTQvf0P8>1}3H=iSpy#iD#5g&EZp%33Q671)iJ^a;KpKAQbL_A%z)u0{6f{ zbEfN{DO_LGCl!)o6b{)VqE_eyUg~r*Nh9xW4}($hSJRVzlY`}*fh`xl{BFOz30Zi3 zLL=r;`B{i{A`yM_dX)K>Q36KFnaAs4GE&f*<@L}QDJb-j%w7?iy{({^gkmO$3ErEe zUIX%kS{BLyOWA-+sBMGXW%Sj&2>4=Lf)@}#d2TIU4_*h}G4aT*Fot72-lbP3z5J2j zDD1(BxwQc}iOQ?!<31T3BNNN-HlKxV#QMf4WZ-v_?w}*v#F;?jj@|<}!Y+fea33I& zF+x~E*gev#m6jvR=Aq5~2w^@cwB~0>7NEYMh$(0&w?U!A{sG>murff*BDEKw>4Z)q zq`~xqHX0EVm0{ip3$z4~eL?4%qQ~ggdxhvJtPVQti)e7N1TnR!mhhmZHgFsIsr5o5 zKm~hAYBaQWb76PDjk~-Q=mACLn>+|q zfsqLxK&yj@C|)c4gv>4(AHd*{E~jh)K}1eOZb1Va5Le77*gA&54yIB_19=LD!Da}0 z5W9=AEQw$lsj1MG%m5|sOHxG8axlD5gb5U6Lo2w8RnPrWDTBHPWUwS?Qpi-FHq?vf zPq?pt{YdC@)Wz6nj{fux{PYjMOVaeIU>Dei=G7p1BC-f)y6N+^ za?;K;c#yY|i*-%Eas}dh4{Q4L9kyqNxH(I(2qHsX7j11&K#~PorgPo7%ZpG#-~tST zz~<+fLymDNOBEh4V<;UY%U`Cfk@}f48SWFxlRE%i(^d`(beBBq0((Zq;Z<-OyuAaJ zcnRt+xdk4O1!*?OUA!D%zW?+KZa~~KTBgvmHQ6($C0%T)7?%h z*i~rIb&=$t>mvU-X!M5Sk3VNW?C+5yjn|fmy9^L_`K52Lvd|G!!hG~&qf;ds*FlVL zEXFq_@&96vamiiGSOZMQ!+@*~%W+JO9GpHfc+C(6P_MSDH_z&Q8iV>ccN)a?(~bc&H#kfr2GVp&6{s zEYhx^U{~__XI?ZW1l&VbmS{|no@YEO|Ofo{o~It>kGbd74X} zMv~_Q$x~PIWRXwOjvGP}EkbzfMjpB%>%?EiVu4X=Nd!++YzgjI4R2V}-_#{y$2yLyg#YfefHVR15nsq@gH{p8xs$kw6>B2FV3|!2Dro zi+L8dcz-bdlluR=1TN{6P{XDt4|+D%M)AcO>X22dZmFM}o2Dh>>@d9OGi@xRt!mVh zCmRgB@66Hn%b`!LORHha=WaB=eto`4M8jaG%8FXY;Z0lZj{jO{bt+%Yb6CM6kJ9Zs z+_;3>!rR80D--nV!;UEC_zqTf4^*|(i8;9ZMclgB{Sh?*D>zMsqjxSo`DV{Xe%@x& zEU#?y;&BAg_+it+p2NxSKlr6B@zB5V#s1S3W3S_vlH!8Sr%W`+pJLd0{L|3E))uNuSM`A?Z zJ7&DL5sKdLuDK?dSR2=}HX_ZaIMl&Va}L$wwA(Gyld{R!-ih188Jk-fpVy0j!axFjaFS#MVC9dBf6l_ZGCW-+Ul45N8E z-M_{ip4aptZ%#qp&E9;kt7C}KgYkK?g)VDU#gO~oQ2~BL+=ryfkzTf2Sv~{UORs6F24N<~^ zIcwb%sqIDsgO%rAuT|ZavsH6++Cm*A zH-oR2=d}Lt3eE3&8WGa_kg5O1-{RAUYr~EU6=Z|H6kZ+olyc-lU47!=m*IQ;p0BJK zUEWyxrkL81S94zIRTa;lalI-_bXmFZ+J&Ph;|dP+n4MPp&~xH$anaG(#+ZW@UdB1A z<2v^r^SH2Oggtk=*3iir`3misoQVZVWrnL$cV%r@K8ZhPY3E6rt7T!8v)zY{^S<@W zpRM0Wci2;0V>2=?Id;33O~QP8EV9d^WX&&yw4m8T9YVGmQoUIdZ}~UR$r-%D&0Q@$ zLQ}&qv|f9v#eS(|<_cL4SsjIzVJ{d9j%=Ow;p)OEGxrXjk&#$y#;@JMGOKZ8z7?uX zbnSSg7c=(wt$WjhO4N1q@8)8kZXb5ef1)xsBOEllOMb6R(eF+D3oU z`240-=lbEc6S;ohqteE8m*;%=HRx9nexoUdA6Q|QSliH(@|d``+h=>+zN-Z@w$k%O zJI*Q>oRL*ree#w5#ZhY~AW#?IB+g_AtK4k3smRsj3j66P) zWyfu@*m30MllSZ5?@wE3sx5P{pt$^s&y_3OMFFuP=@(h)KZ4)y8)sFoxqGiB<~Yw@XtpK&n?TTQ@yf`A zrT8)Me!}!4Px8kaA7uXQyz))&*n-3#!Hx?zsi*t9JlS_C5$E1o<`|;R;R;V2yYMYK zR;Vd|bUaqy=z9MPCHslR!)lB9N(!vKQ}e$WHirn`m`%a5K77-(-jn%+YdQD+(XA@1 z$Mfqf~_uOjp?ZWH* zQ}U<0pX)<4&5V8WsV?h~u?oIsxPj80(pGiN!Do9{)kM6%d`W5i##Q&HEGx>YpX9fo zq}Q`keF4u{iRT>r{%hv3-q9UTrl^irA79b!SaM+uULT-%!L#83*M5-H`25(H!VAX_ zWykJ|cJ*;OsesQ|Tb9lmuIYN8;U7Jnt({sDC*6%wKt7IMM^CG6?!s^3V{=qe#_76_%^OUY_$}*yl z#6P@>_t_?WGuB=|xwog&=Di+ETgjuVQ5{b{Sbt-MPe};hV*Kz0y;JV)tj|og)y#I@ zVIMzgPI_P)yZcz>XOpvPGXmWM-yE^ISe;W&8|vQp{FaRIG0k#=b-q`c=H86$-XFqJ z`CRZ`VJ2bIxMgv2xn)YD!Q>^{#!aJqx}W|&*d#NtS7Gf}3zfsquxt&PlFaHS`vQyP zJ>yqKj6A#iRMW9d2{&zi9gKH3xY25Gz{kKi;%r2tROs3ATJ`%1AMYrsOx0M>?NFZ8 zl--gasB0J!|MTsX?2MV;GTrSmZ9;d=b-y`V~qx$);#UkLO%Ak0*WAD>-J zb#?Eo&$bz(P zWi)Qx;D+%gzH-8mXXCP4)AC$9T_Y8=$DXd1`JUF9Jj>lUCkGFP+p|`8w ze93flJ=KfPjjuGwsTto=Js>e`)8~jBHHa>~V1Jk#rwdj;qB@ z*^J&Jk8(>!2Cv6VuAcF%tBTrJJ#0{u%!J1ywSUXTcV<4n*}CGjrb)X+{m7B6>D4Zi z?dy^pO|%QQb<6lU9BCbz6WCdP-aR5FJSX_%wesX=UNSifTCuL?6<6lAs=Yt5r;2rR z9$NqDr|Kz6OV3K#H1old`n+VPvG5AU{kJ0fJAKuh?9=q|3 z#kbgsncSztXVibMo$9%SX7nWA+js%x^0adMbCYd8t(;OlLYh7Ie1l=ulKo@VzdMZE zN0~H6GrxnC`RUh41^Y3~#WrtGdD*(tnP|j6u^w?vTKb_Xf}@N(Dsa7 zU68)+U1w&3uZL^=r_&beL#5uw6*T9qnr0WX@R6uEA#GU*>Uq% zvzIMutZC!FP##uQz2nm0JHxG`t9G^K-liWvSwqM~-IZ$7x|h1F^uBHaz5Gnwqg!Lg zUa!pC;9p@>6IOQKyRg)3+pFU1CUPZ~K5@G%?;XyWH~sFesvW93m(`Bg+pxZJ&qDn4 zzQ<$M?2nc$+9o>TmA%Gu(2lR|54QVVc)sC8SVBd zmp%8TPSD6sJb7Vm(kLqy@9^i|WZJ#S_$HrE8L~Tg8PXqa3_uDSu>o%fqARG_M|>deQgL&h7bUMwoF=Z@;g7YOrs4 zehTaUG3gBT;~V1QPbxk*a-!Dk&9%kb&91-nb-B6pK5^r2M&i{utR+`UAFzw;;+iiD zR*X9r{!MiLgWUGB-Y4f3d~dP47-hNl!q1D}3*$5=!1+IhUD_S`;+d}2wXkz*y=0tz ztUvc;XYLEXFU6~VCu_^^{M3D2Dt$~{L7Sc5_`SOrk4B^x&5K<6q*un&J0R%&!HKG! zs+VH)*U2c&soC$lD?|?S z4LHqxF!)~Sob@VS?VCT@zeq9G4QqGX|9#(v@ABH)ZL(I+o;XT&{O+Pv9X&6lhd9}W z-5=GVc_urA6ZLybNBAsS&iQdyTI#ZxNsNW7e(AjbnpHyBe9SX{wjpluIGT6Ub^q%d z87hsY*$I>-?dtEo1g|qmYEWEaY~_`*{N|gTpT=ymP1(`KnxdH9wJ2-IgE#W=ikU@& zLZ^@NJL~-7L;gp5Vm1D~ckqm`%{891Ze78aZQs+FZ@00pY;<(DrMrH9>7Bs~87eU9 zh&AfCE;rU{+{&K@**d#-G9v8TzkYMKU9~@L{4>Fay*8<4y<SH@0K0A zZ*~W39GutAO<-C{jo8r;UUulo&*?*)c6^Nc-IQMK$M?wF&2Sis`Q${OQ|q~}8$Isy zJmpf&M{&c~2FS-3_XZv~DfRw__Rb8S$nhenTLoKQ%JsC~E%4?kzpVQn5j<> zM~QXiYQ0)fn>JTytRC|Gj4)odWa*%QHD!KR)DP1=b7y+({#c)JZ zW_l{$`NP}y7Z=221kb!98kDhM%j36al&f5)#;KX5%X9fUfyd{&4ZGTPcTM2-c#7P} zcOeb4wOT8GCGv)Co%}tPb!^vByL(@)zq#(&x95ZKxBmLHQI^Tn8J!xzZ+4v+o;=Ag zYK3F|kF}y{J5O#-{c>mQh-CG-uQ7$6v7t}5RcT!s?Xq^2_0$m?f1HV2n4=>zc|v+n zt3%AEZ*6bWC+%C%Hc#))-Yvq!*NMxtGM7z0)?=PJd3#gqUDe*DZZXVh@02VP<9+wM z)=-FXOAa_}VmSELrW5Nm-?{#lak;nknZ^2dmp6RC{Vxl(_bRPkZRJ%aJM!t$Rllws zZGNp_kz(P$seSoFwS7tFqdNSk%{fIYJzDA;OOmLCGo>{shr`Ol)in>*^EuI46||N4 z%lr$=T2-EKI0^D2HvAfTOgXE%;=soft4%hnQC{(8>(TN}^Q+c$8N|0_x2vhBe>sq` zZpvLVMVHuIFZ9L&;|D6v(z>s;Wydk~1|IJ_Q|VoI@Ghs;bE^7pdt~LBtq8AoH0|5% zb(_!p-kqAF<4t?3th;}XT)WBy`73m#hrFcVSJgvHZV%2ma%;&Z{@8<3pY%UvTbr{r z#;~L12TdKl|D@Ho+&6}W!Z@B-4`nmMvR=dX$!$;Mdo}u_lj|vEyeeqtxW|QNQ z^%IgekIs9)XQlC6;_TJ&X z2*>P`g056uF3wjmI-2Xj%(ThP7tU)ovspU%63aFAFl|MNZn#Uv%}QIB$+@$%#u6u9 zpKLjL%-psh>g?$2W-FwtW$XMZ=iA<`-Bxw7v9U36##rZ%Q^G6fvo6fm)%&%CI@;l} z?<6JbJEo8CpEBChkp48#t?Bus633b!P6ox-7Ak6_zFMhv*RfPe{nlZ|iU%884liqd z-EzmOW19Wgo_JUJujS7|d-?Nj3Ej#Ld>HW*mwD&jO3SaYAF;-Aq{_^%QfFk=`yX%; z)?C~XaH8mCWRk}i(FeDXpm|o8-s?I2?v$~&UFS1L@pJXECtmpr_H)wC`E|d(IWcV3 zv5vQs4&VGmk4uYK6>@OCxL=rS&9BLBQ)GMZvOQ9@alig)-jkWBUK7u~3H2K@d)>`r z6W4ZJp~N{&3y6@(y%+d$;_;O`Oq21D3-43LjGnvo_v!KbE)~%1H(G?xsXS4+OnY4J zf<;q^bEj{#-2A9#d(8aM=)>GX#+m!mgASyfD!#aU9?tN!Q!nNnM&9?0-f2cTIkM)QQ~9fk`$iKYf@tI&R+5t~Nc_v#ko58NMM& zCEv@pYsDPQaS6?cKGyVw`+BW|kJ(RVc$9$dU**3lDDhiaf=9xkNR?HaHaC9|?8#ki zNyPS!OPf5GI-OSRYizan&dA-*Pfe)1mwsQ@rm58Xk>lelOAYGV=SV-CRpIvvTX6Sw z!;6!*w%kq}8*KMcpZRdUd5@dcFiXTemj@qIw$A1D!-|>mor^7 zQa-{#5v#6VsmNPis||WoTsAK&(D0TDjE0wY>TI0S7&D)C4AE@%}7z4nG`b+&p$)sb_P&z{_^r};+etoN7k zCz`t!rf>eSZcq2q1C2?~H&hI&`6gUl{JgEzM*8LUdHT18FLewgNxC+2ZevzyznnaTePrhJ@%MDzt}0Z%6EQ>X{BnEw9Q$)aQfsS+=ijj& z^!S4r_1CY3W5-+@udjIYfH`-=bN2GhkQB~{26|owPmiq|0m12@ji>E zx@fuUIHo=;5BT+{C5~IR%~|o@wK@JRe)2l6od#!j7@2?W(H>`aF6E}h%~OXi9(#n> z9PZt6IGt73xPg9q(O%B`iCN2jui9N%G-St@gE@&iHooQG%qGqRK59QO|9X*9 zMs%P2n(kfKduE-7@af{wA4E=b%Eu{AsbUPh`f}~`vN})ZGUqfU*7DP8r)EDfdF1eW z^fmvnKIK75F-{33O-Cs>b~9n!~r( zncX>ja@yM)qnSBdJtm&dn8H|9HAl+kVVT-=(N&Eh?}jWO)~{N2F!1f1hS@px?F-ud z^p%NVX$9%{*s-xuE*9_FHVoPG>i|vl)AKPQAHU6@-Ws2<{&@e8vI4?3PZ@60Ji~ZNl6I?R_uvYt)v`AX1}SVe%ClBF^=$swOAD5) z*sZr{O_J5x)5WIi(i+Z&{_d#qdh*%rEu(Bw>$v(O-JU;QeqY;K_~gu)dkyIq?C*+p z%_w=Aygg&SR%>b?C1A^l3B&hKo3`fqmo-WSm7!@zZ(9C7vBRS%m#$Ns&ysb#vP|Fb z631{!_Nmp(ohd7iZR&NXO@6d2`i@gM1_mJGf%dny7e>uHf43ZKYA-(@^zPa|<>qav zn^w*}*%|0xkPxA>S1xX9TDa%uO7(@eUhKEK{`I3{_NVz2#mH&&F~K*7Ew`;4%Jn>B zlt28bX{wCpq+hz@Mn8sM&BL(4L5t^)sy)4LN>TTN_Un60-#osv=0WJ>qs21*f)BB# zQJq7=%*#*i`24u6_<&l);n~#F-(;o@Rd_Tuep$}l&d3jq`^Ow_9rq$yG@qC@b9U>i zNuw@j>Fl<&qJL9Y8lO2Qd-^-==d@+-6*P^`**;@GJ#~9&;@h6rF_S;xlj01%v2M@U z9hI&)YJ;2h>_*KO^NYULjQeuq_x_>bUplRrRk+U8`q#6+3zwcB^OOBvij}|E+?}zlYxApyJ9=Z~pIfcA)3Q~~SD0Y)#$?-- zDSEx1*E5pOejNVk!?B4AN5q($IU4uQocQwd;&q!}e&Jc(Pk+Q1qx3VP{9a-I?lNu}<)O~Dd9M$L?r*Cxt2MmsX)-dGwpK;s>k;XQ zBh3{Gr+DPyA7LLbgH|rE^JBv zSoP~mLE62=vlhRaIb36eS!|oq!U;DmK0OYbkeocyzqNKECoSE_VMhFUH#fcB?JiEL z>C=aKT;RRga9DWp7B9Pb#g<<;2Itv16co&G4z*z@-I2x z+s8OQVpHI6=h@od-+OQlo(Q_@9vgE=(dcqs(2HYLGq>ifuCU&qxmod4V9oaHjNQ*R zUh<{we`Vz0`Fz2ddFN!C;^al_5T9f5X~Hz=9lQrlhoOhhMUmr{+2@X>znOyd)QyG4F|QljbhF zeRfi=9V&AJ=Lz?$8GEg+aP+h3N9SzhY-?Y8I5mg)DO^QqNBp{_^>a&e2Q53%X}{;p zmec&oTd!{Zr^UzLCdPkXnM;&t-mX5`{x)Ga54=eWy&^bi(hxuUAo+N#6PD8>_-s zy`L(N4-!4mU3lkceLf{Nro(f1j#hT5nU!nRzRG=SGxronG)BmuTCe|Ooomd@BR@uY zm#N=7IifIorK-x1+}r0Jf9EeaWVE_XG;(2tr*Pu~>P6ucLBg~x=Wm!BPvtc22pgZu zO>SEH=-G%(y~JY|xSVKw)7-brY8 zA#3(c({fwC^l#urM)rj zt@?OO?+)Ry_H^*2>yfuxaA}hvHm`O$>RgFE^fchPXlQ7B%!{+HMkPP8xaUaQlYQys zg~~W7wLPN)J0qH}y6Ni{e9M0m;?i+#&{?fDkCm-_JF;FMAJ4whIls=$Vr!&g@6IQL zvF+O0ppn_;2Ywj^F4xzdx})=YSk)HKWa)XopOxCVd(w9GP~Cbp1$&r9=Z`ILbn@Xh ztD6fHdOD0wip%S-x|bvwxY?)O3T}&0{%(-Xwo3n=$(M zUXK#H#pzzdr!2x^y79bGM_X*}g&MxeJ~iEbNWjOBjwZ=6hrX>iBvQ=C%&&Bv*s+U! zU(4llnAMgK)s;)kR_&4X#3SzVboINw)jyg%DP~j1oE+aHJIqW1_w2ioZ#naQ`mv6I8a9qO93+@3o6qudG4d%t~;5D8EE~Cwbz|Ra75ucdnm-|A zNNQV+V?(yVp~15@ifXOL$7t;%M%nfR-`hCucJ>uFla&!0cCjaYiEVs0<$2l|lX&dQ zyH_4(lPoU9F5lCVLR`2pZ?W2Y<;k6cp0~O!9QOX(qX(ugn>H;w>uZ;&Y~p+{Yv=9+ zc3HVroq$8w_-}y!l?yZI+78^y!{DYZ z#sC-rFcTmF0JRqZf(Q^qfFJ?{5g>>FK?DfsMh^TCDS$M98~_7g1i(yy1OO2N3V<|# z8~_7g1i(yy1OTA$Kls2ENoE$nbhs=S92U5C;#y-P^n>)A;81^NfOl{RH`3os9<%cE zi}a6*VvdPm26;y@!@`-tq27W16QlfnIlo5S?(r-C@@Z{r*p&H*}ot=0x}f|$PWL-I&6^!wlBu~=*@3-*@<}jmz*ZKG1I@s8lF?Aj0 zEz)C7n>2NjA>!>nW&gEgfac`?)~9{_bbr)$>jCj^%Q-+Afo?8_+2&!G7nEcA@N@m} zAI+OIArH?ifC2y}{O^8c01Utx@?P*v1SkN!f{_@O%LLm3&<16-@M|s3kj{ml+^z+% z90T+qZwYu_dVm9vI|^t6CeGXU2BssS1SJ^^$A$Q;G6 zApk6Z$pDrBE&u@lF#rU>UI3&~QkXPG#bhv9Ob-5x#2`!_Q^4q$BBli1LKz#3sbE7e zRZI;V3QDAbX<}N~FiacM!G?n;VPYe(QP^nsa~5N;vDi3F7t_PWgECHlJFt^51I!R6 zbTUks5jGVw#-_oa(J;l#u<7t8GA!WFU(CcTF)Pd(v%zdJJIo#n3HAvO44h~<$uA@X zgOq24x9=){j;C*kzjvghAkg2_Cp_v;#y7~{cU2TO)HBMTGoUmaJV+SV-|tV6|G-x8 z7f`~uA^s5q%fy`xARPf7CM^69g(&~XVDFHDB@(MoqC{~b{k=myNq+t+=x1Jn;pY#D z@R)%(eY{C90z$Y^K?Cc_0?&Y8iC83P!C}GTA@}9O*ZBJehYf5f9@D=o3+MjTR*V?o z@4xEr=7IkIY#iwSFHOm!e_;B9{O@E6Z7nI9lRRQ+f6 z$=bifhwA@`0p-x7^)uL45Y;~}R5E}ulwFJ5KN>ZXfwiZ%-_0j1+@yMl5y`OP zPh}t|>YtH_Q9{DQNqPRs4WI_Ue-;kVXAJ`7tl} zL#_8bhM~V(lrf-e$px_SXaC>~OmUz*6W|a)5x_lwcL3i3l+Iz;Z~!xag#aM{8vwQd z909lhPz&$|0DZopC-kobpan1rU_5{kzzhIK0A~Pq06%~*fM|eZfJ}hx0J#9i0MO^Z zGH;JDTmKM$j=v3PP_VCeh>K*8@fEWRDZvly$OIQVmHxRH_mVI0^>_`*H~tNhop zS$^1^0i~`%NS&b&laYe_kEEt0c;BK_>z9OljO?;9+(iRu~>1+2Mw zhj9I|J=Fg$5$qaOvQLxjx!{-I`$|Z*&>!0J^aS@G9_Akn-fa`+=^Yvs=t*X<$rRGq z13RIZF{HzNFl+|}Oos0&%vj1((xyzxlN&~s-IRvugA|6nln#jW_s6i0(g9+_fDNIB zO6t_9q5h%1K_GceG6i-J(?Y3G@Tb^#D$El}#EJ@jEW|$y!)#D0%r`UwQMd zX%)Oa2RSHp6e0Gn@H77=~})JGkY$c%B#dEdPYtC`Wm^ zPlHsX61|{FN<=u*o8;NyqBH}tUvoW^XUlMEzOt3Gw9t;H4U@rI* zY>`5?%Px6NUXcYkEMLhfS(CH!muyk3szV)AC)H_{RTovSx~B5#t{PB-YE*3vDcm0( z3hUvI5OqeM(YN#i{ZhZx@AQIBnHCe8jLDillQTEXJ@dp2o09o#zC|X%a=Xs9+D_YT zbM~RE%uVI0@~mhoP`U}1AWjB zMJPiBK0tz{7_p;K=lWTJJ!Q|>1e;`4_JuX^Wqg!B=Wlq0zvqY+_uv6Mg2(Y84&fM% zV;QUX73c9cB5B%7Cn!so=?2}V0!`B#E%KN8X}{C&@xS{&{ly|BR*AJ@qu4IEP@-Mz z78!9^bc<8sytpI^q9|&Sj}`w-O-Cu7f!EuZ%SWg|J?2t_)6fj-V}9M>1SBC1E91)l I_(wbN7fYJCd;kCd literal 47104 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 Y0qoJSxQuJVwdWEf4bwh6etRDH4@_S@RsaA1 diff --git a/libs/dll-binaries/i686/libopus-0.dll b/libs/dll-binaries/i686/libopus-0.dll index 94ea541d283adca154b853671e78101ad2625c90..a963b65107f47032d8e0a538fed94fa43bec3f2b 100644 GIT binary patch literal 348672 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
      FiK<`E^5L_bNAS*XBP4I&J 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

      TA`-YhtHNJ`2Od?Mm5T(fTwA8Z~zqecM6OiqIT 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

      J;Bib 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�|uuNu#}^}GckT2HU46R6?p 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 diff --git a/libs/dll-binaries/x86_64/libogg-0.dll b/libs/dll-binaries/x86_64/libogg-0.dll index 51334815979b8fe3a74fa39c3cc54eb4cd70c6ce..5ec1f1e61729b7493d90265fbfb4e5f418df8552 100644 GIT binary patch literal 35328 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 NS}UzW^iElf?i4 literal 52224 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 diff --git a/libs/dll-binaries/x86_64/libopus-0.dll b/libs/dll-binaries/x86_64/libopus-0.dll index 9ba6c3860c6daa71ae9646f01b43003dac3798f0..5991eb7e5199d11b7b7db31db3b87e2835b75bd6 100644 GIT binary patch literal 370176 zcmdSCeSB2ax#&NWOdx1*2MZQkDA5ypW&n{`tW3q4P4>u+P9Rp$V53rF5i4z}CQ4i7 zrIQi1n+-XqQt1oTd#~Kv_SWJ#6&lf$nFL5cg}nH}i`9r$_XubJg@8!z_gQ;S0@|M6 z=lA>Ee|~&4d+oK>UN6sjo@YI8YfZ&14T0Q1AQ0mJzP>=9k*EACRe%5MKT9Y+Z_K9i z0?!P2>7vG9{H2R#&b#}*q6PQ<@UDBm^ZlZl@BH8gKdddf7x`B-NM-)7D+Z}~k)g7^ZzZW3>3{U+wC4qO4dJajFYqEw^#5Cu7civn z?7zZ6f$@G<*{n04MS($q@R=EY`kA-#0t{~OX?JD`xL%G1^x1X(7nwn5MUyW~`)MKqw zJ(_|B`GtprRdu&bG0$`YX15xedes2 zZ<1!i$D#TWR%9+c?K(dz$3^=HTM$KCd=P(TfcQG~yJ+wHgN z)%vY1iIYJs`9CTDu4#uZnW!2c-7?TlW3;gE+}??J&~nIrc7&V?X3Ef25pWZdZ?&3<5A)6Frw@F= zvN0iK~^d6uMF6^ApI<$k{J&9WGoP+wo4HpWm3 zyev0U%qvUGJBW~(E|47B$)k0U)OIhUlgy#h)M=pn_g?wG^KeH{(mF_BklC%uy>&ZJ zK6svthJI`*0@NCxBs)!Om(>-wwptg|&9w8r{S_OHNrIOL~71EqaZV(MaNxT)wZ{ zap1{*eC{v*7u9I(|L)Jo;e%v~`nBIqd=jkN=$4FEW7;GjkzpPFre8rz)-i(qvF{&ui2tS4mYiKeyW*T_1s$Af?3plRB9tAP|~-bz0MIGj18h zldYM>lT0gK9Cn+=g#zyGNufa8Cf}BPn|xJ&snnlkT7Ng4p(AMK*39E$Ljl#xK>t#H zYfD4_zghZCLgGTBt`!E&L@HDf>^Q0oD?JsD?yh^^Ol%7U-;77!txLJrO%DYcOzR-*K)8W^ z+pR6qTSd)Y)4BT6`M^H?c22hMxKo@AF{qMb@!*@n59t1K!=8C%Z`>&;F|_qv6*ZlV z<=-oUM`k!PR|n4Me~;gPyVt+;o<6X|bVmH{draFI`X?TG;|!4Bz3JLOpg}=azu5zz z&m&DOQd>N+PTn6q(j*CC3hov9Av$ zx7QXN)e7@ozb6!641=Q|#I55GRVg-__-T0XqJ6RCq1tFkN>}6!_t7R?sXdmmnn8~7 zZuCQV7YX~uP~x6&ezLRnugR3Ox19Fs{&e6;g~5E~UiN+@D>s3;q zFqp0bTA1NynTVO?!1`_a?Xo4nFJvQ_Baub0!6>mm*uu zHIbdBGb#zd0%px2v*wtY{(Fv@em94iehHRh29LPcUmt?R-l;qH4306m(s`i8u-aR+F-v3~cc+KW zy)ck>`_UgvA*(c?ZQib}-@Y_0GI09DP($0C*6(g#3G-dr94IC4q&9bH^QrVNH zYr6K|-L~)JzCLmhSg?7+SA?V2HSM+qtAZOan|@E zGGplBGxT3&+WN$}eM7!!y=vCnP-y?L*aa$aYZt5_Zq*k*&6^3?PAs>lmKt`6Ve7+n z>%(&E6~zh+dxDy1oHMl6K|i^mwqB5rMBwFr~$F)R&B+TR8jr@S`x`) zT5>;Po-moQZwCTQ&`ciEk{=BA@-8569C^CcA}mLyXhcS88&?#!lQiw;i+gw~z7s1+ zJ=eE55a{YoxWS7Cm-ICTQhj~a1nahtwJ6`Zw!pBiEi|m#hJ*Q4XE7+X9tk%D2!fej zHbcQbHMI9=oS_+3b@4>^k^RDgNy#8}*^ldQfVyFdDXQfx8Y0t5zQ=6H+D%qaTlEX} z6qW6eFswJTjdk=nKMYz2wDo_})_-d4?dWr>nQ0V;K>KWuOy4Qk3gq}m`o0Z~+;A53 zsdByJ1KqhcXjn%;{Em}`6DriLJ=vz+f2So?&#-z*I@8_f>Bo=iRx0xnBOAbf{W)np zGfzzye6-7^7$8xKOdak((!;ouGJtp-o>$7ei`<#l2L&XgC%X&Z@_G`sXbLZz9ESmx zda#M-Fm-Di;=oZ>w0<+a+t-&Sw`<8+2%Y-UZGj>l>C@+B0jRBfRRL*t+8tvAcX#wU z@zPv9x(yTtlFy@ZO>>OBmG`PfG{> zEQQ&9i)}|{EVw1pg^7)L>`sKj8`(2vHiUT3SDQhimGtZ#yiYqN+l3Zp)34fnRI8R9 zql&y?(@vSu=DL^E&>&Oy+ua`O3S1_hjlcTR-asi-QGXZX(Y4L(`m=#0a2o-mw!RZy zRwxW^sJ3~>-DzQYSw=QDPZ(ZGTc7UFxm38_ZfILuzbDeZv_%?Df1(9j8YN{!QrhNy zYZNb(HhYDUw(HR7-JSo8mrDQAh%i{iOLtg%;S4+a`I-^jUUEp=d;-ySzt&b@Joi!r4E( zT?ww^=ZN5XEn{=nUL`ETJcDe7p1#O>2%}tio+P42wUv1!6yZIqa0uqpD5$L#nNbTf znGC*0(%Slc{ubY&u>F&v-d?Y5?qa*YyIHUkT-}~UqJGrxN2|G@KA7EXSj~~W*=oUN z-6I)LFq`Lp3J#w|Hf#Db^hjH}S2KdpN}KyO%j>fRP@3T?o+ccDT-kv7@!S4Fwufl5 zwqjLIAaHzdwAs*Re2k>gzXz=RGvCCVGU3+%TtPyC!JYk%;CQwNf#dQeu;VlM7F!3L zTdO~xY_*cte8S-B6_N^uf~aR9Y004hG_^khO&fc&`uacIGfNJY>{I(?SNBDO6~ovp zTWDq*pBWY`*l^4s9DKVG?a@|bn22mVmIzm`s*NYdMv zmY$&Q5cQUN$xI9` zH!z>b2|f5yW{l)1`Jzz(E5pgm2P$(LtUbE(Q*eUaJ(6|`UZQUl;YruH_Z|1JVxk_| z1|RD9z<0T%ZgA= zO}jkbKv$hi7VPzz;wmYFXU-F8#lC)|wqDOS?PnWk)3mMSJPi9uRXw+?FmbxiTocze zPtvb*#$TyztO(RzsBKJZ8x1TRsRAR~{m>AkS8dfDj9zzYi~ICVV!cA{6M0Q{jQn6n zZ@gyrwc5t&(E&r2cScH^j(q=qu&z5^(=nB{Mg$@~N)+hf(+XAjPAW&<#r(JGE%Lmt z?Xs|lutsEeGGe>{b67G0?$SzhPVUKzyJ5wlWpt0N90^Yj-amUy%yh6SW7tR-(_ z=Bk@t(4?N|9lYoQ!%FGM%DQ9rCAtSEQu*i_Rtny()z6_e`y=}hN_5;h0mw@2vJj8S zCY$O!fngZ3FQp#IB6rL;gGgyxwXnB9YztaAyGCJujh1eaH9Sku)uUS$<%w8uSz7%NwgRyNuu+Tn@;}&gvE)`^Rk5#! zPp(h}EQsv8_k3G0E~FH1_~G5#MZeR+>7{AW@s4d>Qkze;Jdh3(;*LPGK`+Tu5)9hf58rs};|gs*N;YP!;##EE zUOt$eTJ%-@cuU_kSPMssc2*>!)JEp=EQ<+Jy&5^Jcb$gcWl7Vp?+Xi?deE@migawE z5;lnRp)tXiIzBa`f7i7c2f<8S41gkq78=r(a`BwfQrWLlOx)tP^ZE6Z2P@)@o_Cm?wI zjCo`LS=>75_m%~#H!lyZ2Gg59WNYTno>(F4(T~fY#bI#PY7VAAYeCCEVtGq;F{=!8CH z2!UteXaPap-e=|22sR@Y%;?B`ojS0n8w}?|Wue5XhluP|xZG)1!P>IN;wqsy_+pqm5*a78{o0RyQ5XIr_5 zrz}&+F_5es!krgb!?Z602oZP9vzSECx~rL${)EYco)U+?NRYdR~OQIEx~y>V-g z`)fTYM(iq>wKAjjDl_UWG`wB6XQB4C1Tm)W)YiWieASFr7h}vjCQvEZSodh6HJCfU zc>Gn*D>IC?;&x%oVJJv!rA#=?gfX+sJ8SoGPh1iT9C+NH&sp+D;^4?E%hD&t#M}0x zBJo?yiD8fD39%QB{^~5866;$?jyNzA%ac)D08o|y48VoUAdus~3XFbEwrM|DJg28p6ke#S0N$x0!29XUa0ntOXZfcCEf3=jc@I!8dDRRQ#$IZT$;a{P$r$ zZZo2L9@67A+r>6i?t~&0!HkJ#!?Z%h2*{B(@srx2;&^bonSLvWv0+r!W-IhzRg@jM zt{wKt zTzj6?{>$T^MAO>zG~Z7a;Uzf*>MpO@%DmCUMp}EQZq}re+bf(&KhsuDqSUnM%Rslj z&WShRz-jK+FI(ACL|ACXlHO5wSXG?vJlGJ5q3=3RQdUv(iU-y21!Iu|xHPw4o)EV4OXtIph2eennpkg^&cn@ zvIecwN3_|k?)hI0(d;eI`L+-UTsU1UIBlSJIaZzMn}X9bPAz`RjIt4wTkqEn1ze-% zn~AN#1CK1OHfz{r?D@r0@Hfh2l}jMDS(KT z>_ghhY(Tt-gM$Sh!ZTW;+F8RpSp)MwV#ql!O^tywl~;Yn&228Tq( z7y9I(IT;p~Pi3zVZXxeev^w4##EY>%?Qrt=Uu@F5D_=Gt%$mhZ61 zPBa-gM7Fx+G-ik9@$n=$seb%emx}|fw1{w&bDL6aV7S~22D zN2I;@wGGCs_sXq<@Qn9NKqebw2|V#s z*4`v66#;o6`BpmsY0dRus3$%Ril3`+_);lfA~1l9EUhcfeN+KC`xV^#sCN7Ce;cTE zd+6VeYPYsa#sWT@%b*x_tAK0p^=G#TFP$>(?P%jyR$NN;pnNdwWtb$`ThIZCX$YnT8c-K4mMNw09kHvGTt2)LBa zc4fkJ!?Eb6+N%2?yo3k)pb?ypL&f^g$7e`k9&MPA`(!Qo2%^J)15j;hkX%@iTsTW| z;Vj98vm_VJk{rsJM{=lU?Lf#}x<#n?Y(C#_{{Yd3E?~skgq_;Mi-kF`09j~j;hhTp zRN9s9&Sm!s;+GCB%{)v+_rHAw(erzZcJ4pZ=Mx9Tzf^>~L`Gmj>c8WO+$GY7Q2f(8 zh2k6K9rTr5LI|%EDQe{_AiRmcRw|n|>I|rG6D;_q(~))%InkT1t$aYZf)&s*%@@E3uFcV{H}yz6+jlE!Hv?50>wNsq)z@Gut!N+7%0!UxjYgl_FIj8`DJHet6)c1p6Hq>N4vc9loB)$OqL{Dhlp zM0*z(mN}te;)BW4kM{(DM=ZDx>#c39#ah~;t!<74J7ZDIX_DF=(>8V*WR#GHpL8u< zZQ&g!Pw*8H#|Uo7QIeRJJP)BEA(FU>J|O$jWHVS@9KNbv$pYF6vHk!zK|2Cq>hJ?= zD?gT(L)!8&ptuU3fn;Re)7|;{@sBp4+6TrxsxTloh>f$O*9tnJQfFq))J7>wpUg>| zoUv%+(vy9>DSObuA*e?7oP!Vi5qC4td#08Hu zwWsdS-)?D`l@$;r0%z&L<-o*r{#d+(rxvN}vGq}=HLI$m)37SAA5~NuR&0)G*DbVS z2eCxOZD$QNkJl}LN`j1KLj$jd{nQgY>?pxZ=+pRHgsN{nSb@!Gb;`sTySmxhb5VOb zGbXuDTX`X+^@xdS(4%CZVSTqd?p*y0aEn<7b#LRh{>JAAreXi#>)H$KS#u04BWB>P z?k*J5!>$NKXz7NvUq|3d_l6StH51GH#^GP&PiQcr)sSW*dO){ct{n|FHGZZEyQ0ed z5p5iJ+_1mfZP;}S4C?^4RqGY@V+hG-M05}Fe7cmDh<0d zBqDSDA-=NqVCs)qC%X3QT_;SyLR=I^^fV}P9R@LK&~S`!nv@qEwR9w?7TL1op@V_A zGrzb}s~2BFyrx+MOJTt00AOrvru|TrRrfNhSOu^T!Y8tUEvA!KJq?xUR>C@3LnwKe zL-jsorrqM}TjK7VSZ2q+(0jcza|8m+`t4@Tb_{eY3(2VJ0<8!~UPiC)$>w2sn)A?>b8=DtrrQc4V7%O_b^P(N#NBwsg zetoBw+)En@{wu$w<`^y-*kp6ldCeqVpRQ%GTL0{HiGG( z`e83nVq4}L3V!h#03#l%?P@uO{wp|XZOarZi`hcnU74DKk$ z1gy}{2<|G6?yXBf-UsblUAyk(xDD+<_i-GobJ6Wg2tPAb@sWRo0wOZlu?0Me1`xm} z;KA?pBSC3M$ajL6lt8_beVMyy5zG_4?QGnWzQI2$*6kjDm2EcGo!P`%eg=RqV(b8b z(ija07ra7P;CUW03G!~jiiG8!mCzGgf?eIQ;4!^J%yIC;;O-xPML*UWtQ!f>Yn2|o z@7yFG9oPszWrSa)*Z%#ezO(M<-pJ`Lb1p@$H5|F{MUi5~KXRshYU#m|Ac6RIL;%nt zUI+{7q9-zt@OEetk1AP^#BYiNe4{5$V3r~%>6N(E60=@1Fh7W@rPV(NmD`}77uQGj z(`19H$AJ8uB7GXz8Hx}EMWYB*NaR#4@fu>UlyEd^%`+V&QA*`S4C5lulPr~dQH&%% z>^AR}X@8hPbHdg#_8H&C{k$@HgGN`MnCh9ppP(Nq&<+Wjds4m6J`PRvYV|e^ij7+u zHtd^~je7xH3mND)RJ2}Ae=sKasGA#KLJ2Ex2 z6)!-bGIk|wN(Jk%GSOWnBa&@|H_W`HI1WwgeI@Zq)hDP*ps>789+)DW0DiO++Vg`4@x7iv| z5@;6~SH`XVWS8RAy+%#Q^BprS@nS3x|2qN^;241Xe+BkOk9pW8Zf$lCTCi^pS;Ux* zrR$_<5VMV9u`3M|V}#fj#IHe0c{i&uS_rO7p;Z9 zP%$TT$e1TDafPt6rwZE6KF13V7w)`Jh+~0_MMMn3c(bwMce+E&Uy4C#(ZwHonoGDXJxwismGpWo??8;et;AiwVmx#{+{cS@b zuUe$3hzDD5a-#QiO1nBk_)86$CJ14Ftm;9 z*>zv^WnL;=VD=)2OuK-y(Lo zM_aFkFCLyy@_Z_*6DXt4g&9V+R1hlf7{znqk;Aci6pIZD=>$P`xoIUEBxyOaJ!$n0 zU!FZGF~FI`Q_>Gj7kEuuZL0On=cv|I)3l`a^Tb;{==$!HXBSOWowT{m+1X(~`~I`D zm&@>J+(f@aZagvb5y-#kGv!cd9j?36enLMM?fR%W+mIaHGm8|CVGc`)3x!y!iaC!3EBr^uH8_-Am z#W!sa4?WBj99RfWV!haJL|lU7oh=+$zG{PNzCKR;dzQZWek3rt)-G=JffZdq2>QC$ zWgsgt^akR&8`>EwNVtZ)B~3DjKxo?FpQ#xhB6;{^*a~nM8EVHQnq@R#GyoE2qcJhy8iV#rA{}P)~uXKQ4CNn&E7NXTqFUG>C_oXDmVd_b;&0McDVbQ0#R=w-*aJ1d@UQu%hWAjteVLW)apNng;wBGR&C`zNR5yS_uzjp#i-(@mYPuQpop3d$iSq=IWo!UhEme4YGTqOMj|WeQm|+S z_$6h^)EkTRViwGm_&Hm(LEK_5OCrz$PMemVkociZ@<*GoBicrgoth&!R-U$0>;0(p z4EwoHA4!*V=9^$B`m4QKVI_u_x9H!)HLbpBXg@5o)Bk4}7JAs;An4F>8a&hLr*Lju z&}y=s6m$`MvsXVsIUD^I&vEe4M>qCy90wwfR4OF&&=c8GFwhj)GK+e|Y|)M&t%rLH zcvUF36tkZ~v@lnH8nzmV zLVNLWN*hJ)DePC7LZ#dLrI-n_$^=}Vwm$yM8p9!t} z1p`>3WC^xhi@&>B!rzn84^P=O7cYuP?M5S0#p9&O0hG(sH_0VwB|+tB;B-=XI4+ z%$BJVVPwM7mh-ZD;m}_d9ki>LiI&qK3B}1Q=S7v4-L@Z#lJj`8oR27B7Hv{wIVn}I zU6qJ>Y&){4T27lv?^fyON%KXw_r=qyL`cO z5eodw?y$OnqJKma1orsbgQ^0##+^x<>?UbS5WKX1cTm*q(WLATF#d@^PzD1nU};hG z!xs?#0`)NzLhjR2p?}XHP+n2Zv4dhO@b(sO-a=}znXWU6XedGh{5cCBuuh^*w7d6F zV%q54vynk!3+%FdvfHfKe7mdw4Wnv@6`N<56tFp^RTCqyIY?KuNyj zgz^?!u_=TUTd~P@*?229$u65{#USsL3^F#}PAUN{76yDChQ#LB$#zv(Y%76lU}Y2$ zdzN@BR%9m?w!}u+Ns%n9*ht#&a3)rWgs1Wf$m=1+_}T3gs>Jf`q{5TfDO*W^R;<@f zDh!EzWUEcniuJgIhMj>F&JsZv>!jOL81gxGZIq@PX}X_VH#P9)k2bsTcEv(u=6=y& znY*3_5bzYeH5JMS&gw!iGH%TR?rAeOnNMb97ZKKA28%~z5ra3~`}q)QltNZf>ez~C ztum$~6mD8yu&y6vl@%~`Uac}Vk;l@uzr)M7F16feF240u&ZyQ(Er>`Quad)+*5uoKn8k=64=XgetsUSV}xY6)pj zXq*OR^#H1BP}YwUp>axjREZF|CurNrCsbM%(oPDITWT%sRp)6Q^zU9oZdQc75jK0K;71im`!59AGmNtq`k#`vB42M8hG6a0Leh$Cc2hBG{Bg4Dr69lo9{#+3pxIcyX&G?O{@f?~G;@HGC9fafBev(XphzWpldt542i`QJqa#sTFNYdbzlxH;F=bz0wD)nlb{E8 z#Dlx>V#|EBjo6xKYzQ8^w8>$I$R5s9#E0Rq*r`X`AAHldFJv49a^$;y1wyM|7WzE) z{C`#(!u=b=0>&%oG1<2dvVtNH0;4rD6XD?f+JmPvAUDbO;ikHk0GBze#HV`TAuSEa zj-F!TZ!ID}{&cLO8)^45@}sxuDDjbfM>@qy8ul8@qH>Wt!|U*~B-AvL21`1#Y;u4_ zhL&YIK}=8O6Tj4>V4YxP(k3Czuz1W@6n-#Jnqk@v>R}eazVj7*h3(ioif|UA3ueB@ z8G-@)@b&=~&6K)?T6s37uy1n;`!=VrZ*vMOo0I9Rn@5*td3t^SGG6cnrj={Q<_j~9 z%@ZCRs}=?vs}k-TtF+2S+IUOLM%l4atE|Y5O|i;~?bu{aZP>9%R@rzvHc>ckY`o8I zW8o~X71yNN8SPlHr8Y)8Rs=f{VqoISW&Ma~;LYc)u~8LPkH=W;*how5jf}7`%U)vz zp58-VKVyyM`&>14%2Ioy9qaY^Y3w6Q?TvPfMn!aT4-HWmvBc|H_!%9#uaWC<&)O@_ zUTjKHH@y{_wea&RUhuH{E7c?$pj~0I<++dWj@NUhI^)&gFFMm~lu6f=7N800r+uCy zfq9Nt6O`F&>9ZHexIDu_=H5fBd&4$mDL{Y|vf;l#W(l&;06q{9wJj-DJ*o(YkW@)u z=3*+95axJxArJ^;22*4!!-}O?VdhTA=`5X0+{29f3EJ}XFzBimXdgnMaODSWxCMXo$x>_)JSWGxvO`9=}G- z@CPMBc|v)RJ&Ew2k4OzAJ=b7Td9ts=PF7z%-2))uC3e+J^2SjzJXk0Dk)SLoGchQj$bM7s}y^BCO*m%KVM1gBC~x=W5Ax>+-dtIB*B4)`)iwk*^n`%Z%;U9~Oc*rT> zu)KOvzuK=;x)y7xPt`7pX%o5zUVmstcf@PBQ|x9YE@7mF;?0qGamLK~2*yk(X(@lz zn8Rw!VKrtVNS81yin3$I!TJO_I8SBvp7S(wM;?*9{qdvva~Ohf&vTBMgN9lh=lpJ* z^;(SkJK{Aj#huYV0lFOODL0~&Ke|PazR#PD3R8HI{JA^C-`V>m`J;R)q~-PfSpAFg zJW~55pwiq#7l7y2X+w*>6swoJ9GD%>sg<|#q`7Y$-z~fG%;EyG#w9>WdWdm%hhzMq zS3kZ_oKJU$Dr#`-%yy-x=+SF&NBt_qM;uQh9r_gvVSaJGs+m9CDOf9AmPZb#FVOpI z&p9RP|IBkZn>>RP;^9}Q9G8F8q=@(D4PnNi;52wZyr{hvj=lA%0|Axg2TX z{f~+|B=w{skhlnj2#SaQZx0}|acGd35%E`-2iw$fK8}@g?bzhN_3Br(!aUR?i z7w+QrDCI(xlPL??HSXlY0M9x8vs#|ai^d)dy8N9lA-63g2(Sq$5*A_CEO(|=N}^J3 z$l|$xE6?VbH8dnqwB0mf*32xvGwzIEYT}ZY@o{LXLE@tqm`-g&NQCOi#8eQ!L+Hqz z#bHA5iipapuxDU_!N4lPi0<2s@K8>RnP&8K-HQY*R|oOF&&Qcu9jq;$BR=UMj%q@e zMeNX4+z%CSI6+==>Z(cgkP6m)OWedL~vNpa++>;6XD!u7ew=Rc+A_0<5smP4bgk@QIvp8=PbDtL}- z_Wjc2zPRIFhFQ~|9Yo|+)8dlK*W?ziX>=q*++ev40~R|GM_PZ^WwP%BrFpyTOI=qXZ2n|ovoL?e0! z*T*st6`vhM-}Sqvn;e2-IY3|cE>V0O`T9E_w9DCm!l8$YaQzH|SU3Vr({ek^IUek)TtfW(<4DoJ^cfavzF8Twha;rI$OJ%h3f%>0`KOkxw=zD^P z7THh)(hz?zkp~h}vebJzmELpp9Phbyf%jau#Ctx~;5|1y;XRw4=7~5eht1^X2QDpp zY9bxACg&k8$UiG7cPQI>foW}+NXo2P6vC-1dDrG!$zsW}uPrjs!yrRjFSg6WobykX zQlPC?nxM8(J!F}+-!^kgt>wtoQ6dKvah9qn6+i$Wrlt2 z#8`9-Q4%80Y4zi7WY^h#pb!!=n6}l7k2ku%_Q!H^DZS{!)?@+A0!EY`Nue_aK+Ln-V-DeOZj>_aK+LCIOyMr&tj){5O*tHUxI$KWr=(vn!C1NH`i zT7~ntSeN3Kvi%T-x4sp&RPGe~9HY`?`RK5=euIEeD7?+$Di@%+h6)K2F~U*~1Z#tA zN9ssxkdSKS>!fI+WJ-o-Eh3d@n#{_vnvP4ER^N?^iOwmRam%Tq7x!-TJ)BHZ3nhsH zaotKeK?js;O{GQlO(PRMV;rNf+gZRu_tI4Qbgphsn8GFYWuyGT zGbxkTwdq@9_RZsUYn!DOAd*$^6}}({u)h19&=P0(*5NeN*g)f5T;w!^1FBU!m1EOd zEk;s;I5;1)R|070RAhUte(eYmo=@UP9642uU$D{6x7yMtaygY?1iOEEoB%?+o8sF| z_YU&BY5LvUR5#t+6cXbi7&*%`ox?yLu&_JGjOx#)Nn3pg-@973Z=TGNwJQjn8n;ZQ zT+)dv*lRV>Bp~60LUXW_=z@4N&ea)dP6NTfR*jn>%?R!Rcr`wS8>Y2R*e&P6Jllkw zj8i457iiOU%p66$IH50EN)0DCMo{N7!7%|YrUFhyM3Jy56+ZqB%}KCZN}g6y7SC#r zAVerg1BiG{N=`ehyl^@!)v3gHbA5;iQg(-9{Lhxv&V`o$Cc9n#ew1ZrQ_c}Luh~wv@j`C5mD9w0dplRY-kPpE zK!Bun^IHGAE-k#*RwGoJ*7{ZkDucYMLOCp@LH3sf`^$&iEj#;Ny_@fttR{x5bFQh zLV>Y-!$^U>v!D>;@e_PiZef0X!(OYFM0Q^*St&Ja1#$$h#uBa^_%LoiCCwZN>2^gC zXY+@HJq2>`?CPI>3D`Z>EJn~c0@y@udw}&LgK=zy5OXL;m3+36(O$tCX|ip-Vi&&$*s= zQ`O<>!>@x4_76v@J8kaM>DZn&&)y(IsIa*HRL>1RxG)Sr*XdtTZcT@&9WRA)< zylR*VxKFhv=Tl$I0nf@G-Cq14rwE3CyR(-)sWKjzZxQEMIQ06Fp+KbPmnH3yb{JVEALi5ne$oCL?B=;>bTrx-eiA)4&xgkM|KVX#G1kphshJ2_ln<1LaW}z%c9Xg}DD@Hnb9 z4;{-hPn((6X6@2$LQ0;UcZDjst(niNI3=S3uy5H$OlCX(w{awTW|u^U?!P~J#MH+7 zhiVE(e}&J;pS7FZu~K#a5v{p<5DAV;&wSyCR^35*2jAbs%Xo>01+2RP9>5Mb3;V>H z7fAFC)~2_zbG0_|7SPIDJzPd^RAyPUc{!P)o3X-$hC$9K_46KJ>` zPhA;DZ3n*S*bBZ_+!7M0ajXUaSE?9IdW>1SlwzUMca`WM*LIhfJPJz(s zPJ%Op^zb_fesR*{5rxUQDn`LTgXDzOY8jjyh^VZvW2PD0gScV)_k*q$$_Ee_I;rft zZMfHm(^Uk2dAy1MPRfehq2j2|Rpjh<%bq8L^=Dh|4F9!Zy`6sh9QTeRxq+ok!es=e zKDjCyF8J-DdAtiznYquX$(YWM@nda)8$zJ=AX848KJ3xxQjbPYn30{{RfOqGF2rd> z*9m`KbgyndFyF&_FLF`E0r&5309GxO$1S7_Mk>pQuS~+>+&>@AWfW_LTC2Cu;#wG?i3j z0}$ju(e;i!KJsR+BK@H+5nlo`_hL(E1xWm+IK}gTL>K&{PiJI5U3uoGe9`}@?L0wC zpsK8$Ztc`L&7%i*%Beo0)K-p;dluk#%D7VYrI>S@y1(mC+{t^Hh=(8w0(a!7%^NG_ z*mqe1nju;axj~(IBffm>2RKS(w5r!BNpKG$X~BakG%V(2PRLEl#R7mKL73U--!oV| zDX2PXPEKv^DXvre0N#4_&hs(uTf5S(*xL&8e$6Ybgt*lvx75=|I0CTfCKgC25N?EE z^&upT*=hJvxd0EkQdiGZp?!A2p z>b64m{;znLt!4RYKCNXSB+zUv8|gob{AXC6*n3e{7y_#5w}LVhFZ>I=w=mv9f9k-z z*g;{^RhU+*bSHm zSMJWD)L`rZ{`(aA}pnZDDXc zM;CbSBcA7-F>)eJE~uBO%B@Oam(Ihz>?!Yag!AwBPnKP%jZq$wjVB|8A2YJ%o{0`BYnWk0B(bLQGndPcQ&Me^CVLZ=i(l0kf{a{2$i`fDRDW zs;@qR@G9$~O*pPS{3C9il%+_)z=RvfI;1>N(^fhzN`|Pc$?aD18Cqx8!W&FN%xFB& zrmmqFY?-W>y;8Karph7?z%rU~UO@Pak=*HSu5o6bvtMnfu$-$_=gVvz>C{%iMiRL% z2Y-97KzIFgFWeb{(u?-ZG9c5bgjenFF|BrYpI>7@FKVYlDM^2>q?;03splsU<30}$%WM8&8-W{KqTzAy6z0ki%)yU&AIp1v%Q1Xpia zCbhtdyc(i+w1*40$xVtpzE6XKoFisXM(%c2W$d*15JfvDiXGWb_;QD~tQ*g$kjiD$ zD@l1f1tn?D{a{B?TZmS_ol0lz4C++R<}cHSyUmt~N`w71#P8=+1+}K5iDP3T#|anv zk;9}->^h8>$z3%!IvM8lzHUmotxR0rP5gYsuV9<9Bg;gq2aNFoT zyDzPp$1pvt?=N>v?xdFFv-2yMr45 z=DJ-T6Or*S0RgP|G>Ysd=?@E(bY-uW(Sb?=0gmOncQGky_k;fUtGQTXgb!d%b;c`( zV>&B}Q?d%g-|^t5oWur3%H6|V|3uBx7F3>mh7Kz1zepWu)u>=&s~60b%O!#(WF{8R z$!VlA!Cta5x>hl5j+I0Es)SqB z*!|v;T(Y(&(mCZ(Bm!^SCqiEuLQ)M)6%m6hd^ zH1#*^i^odAU`b0+7$h7cD0gU1M!k3h-&ZAIRcD(`Nr+>r$ldWK7_KDatWtxDlolyI zD}QJHl~^@dtmHAe+5oeWjyEjlsU@r7KoX;>z^Ak?!#lhpY~&bnOYN7KX-ed^D-Prf zGLBVtN;0@)RH223>|CAg{B84iiTU2@()Ed=qjku-=Ov^K~}N#jJpdk7pv ziYUz6CXLg}&_g5+oSTieLV^+-|B66`{f61ssaA(ZO}>G$lTRx^y=2E!U9!` zv#7VH@qUTuBT=<=fAP$PB|&~j41L)di9q{WWGh6R>iSsjFhM$@=ri4nvBdTFHI0i=0nUgp1I*-ZPkAx zOotvvTqA8X@Z!n8z5#C0U?X>(uy)T_yO2I0V4>$$Wnh&K?0nq`tw_I>iviGf3Mf;T zV=Gf?g5Qm+Xtz47)si1MY^kU*qNqmF=H1Q03A(y5=4K{v$fH#mv&o`y=~GfA$1)X! zq1sL3`My!QOZ4SvF;&h{OyQEAT|3h*SGj@+d}Ug16P3}?`x$%I@=mqYD5mN(&8I=r z@h%M$*5xZNT*?7$RMLvu_CJKT2nU9%o6gEWKJU+V38Jb9*)SLyrWNjraL517w;+sD zN@R>%CK|$S3OV=cJKT{0PR}FcA9<`o#PpoBu%|3 zP?5atXjiN2$$@N|abI4Ddq;19?nKrxY%2@BEV#c*`TLW*_YWMz??nrY z^hVXuod?ge9RY|O<(n1}q!d;u|6mxx-_`G}Nu<1Ic<=?+i@kA(6wyLm6D3p5ugZ5) zQ$5;&k8CRL$Gbe~=gi8;Ch9w7pw6e32)!>#MK9)5w{I_%J=32bdj4d_<;l$|jvY+F z%T`GysmX{vG)HP8wqR-4qhHfrSSk(Q=a0a`bN*y;iVE%=vedTh&h3^hH!jWll)~1# zGC?I+S7+l8625{G*&VlsKJW%|?RJHiX0Bq8G4YwmB3^P3!Hk;_eY30r=Zc#Z*Sj1(${vEm__65Zvw8IRZ zJX8NK<*dFk0I0UG1bA&J@vqyPoy;nS>1g5ixXO}A2}`P=H6VG(YKDaFS$Ijlj7{v! zgGuO(MJxi^(xpRqL;et^PTQ|%eoo?y{;@lF7@!n;lz42+=<6?tKK|DISBhqjB^hN4 z&3=by_8p?xw=2!Q84JKx6npt9Evo(tbG2DJQ0%#)c6_^%yb>ordGL!CzaY?ZoXem- zNp^0MaT&yE%;0BY3M7=DnYPq^6+jjY)+X!`o*fEm58r`;u1)wzTXri6=D8&^lZ0HqDxA;-X6|a2Ps=UX6gR(uU5Yy`!H$GA=6(Vo3qwEiI9Rm^i^B?j z#)`qO(setzQqss>D?Cb%zPWgnZ~9Tpy1sY`&>}g7jcFl2Ac^@R7sTOh0dZqhqFc?Q zxRB=@{|p-Tf4j+`HFmYier?QT*lM$-W+~|gSr*dhtoc%xU65P>p5&gTyZPEA3|&Bt zeSp8&&GFI=l2+jbeg|69O+|KTzCE3Af7xpAhhqdvD8F9Nz!cOSgSswcD&09c%8Q`c z5hS8AXJ%or6$3mCz1d%y0q-005~S=fy^btyHM@| zF6lh}nqj@m{fCLxJX~{v+Pa1HM471$4AZTdYr(;mV2odOiN3LD@-$~uek}U-1Mliz zlM;UDqV^|HL(|Pg_KcBKVg`m2Kc`!_{SSw{%6E&~bn7GA8;fVJ6J_%gZXfW_I$pC@ z)`6SgSj50}PUvs)G;{NAemxYp)(Kra)tPy54xw}0NT_X`QaE+;6zpox@jc*`#qyLe z&kx}4|FPt&MYK&hUZ`p)QWepOcn+YO?=#?N>qFo1%?(O;@`vJa6dz(v!2*^}U=uk> z@U9wMJa_1(eK7qXKh7HZZQL<_5eja%Rd8-_2P4(BzYZT}Ri2W2;aok@%=N0uphqx; zvFICO#ygH>NpGDtPo~OqCIIl{et%AwjxPIzI0yAh0j|TO}tvvXtkAD;i1NL|iwgbWC$Zj*p?Tv;m!3Vqf!r-@8CH_f>i*o&0 zu%9`qF15|)X`64#u{X$&BRkNVWXjt5)uPdM?Y9mmP7>B$u_L{o-|gdPFQ<1H{3L_* z%2a1~D!M~+<`qc0Yo%YqzDh1NS~-g>d@xraAN7^&i|~sXy)o-Ui1EN>PGx>9_-QP7 z8hWt~M~`SuBU%UYiuyis+CxtxI#yfxxGGSyLr&zTFS|&OzOFsq>|XMKfaHYx(gNlZ zeSPsCIRD1r>4TwhedCwx4Mhw`-F}-movT&6>fGCBsXQPc;4%|Q0R(XXYvswS^iS~X zHzlINjII@^;nR`2T5>Bf%2`HgHS5+3{o>PK&t(M8)XSdB6M#l{KXe@~d|_!`Oya*% z+Pch@CFGx~G=R8^dj)X^Q-HCw^M3mC=+r&-Lp}px)QuAY&v8&MYd=v2<0-ZFh63rt zo-x@j<%$8kb}~{GS;dWS;}q6nqL{JG+v;S$l?t{Bm0~3$ui-J%ty5ZZ$K`Zp|K%XV zfOO`R+nakx67j(iZ~-C!lYWz(_Vj$yzQ0H_I=nzMvxe))H;K;eUXyvw~MT^Yz4iERXchD$0662W2x@Y9?zEqR#L2_mA3^kWoc%udQw zWHiB!B&^Ns;&Nq9090_=Sw-$K0z%X_S5H4R05U?>)(V|X^*N?)b?NC(au|rT$oYfu zyY%P_SQTG@)TZxX5L$f(tdeM)WVa-OcsplaaE%^)5z>4yeR9xLXVNgVlxh%|AE*%T zZv9BoY=)bbFhFHB$@~jBRFXYT`G32(5D$hT>>H90Da&>WDIAcs&Z^9~b4bN_iuPd6~uP4Y*JA5oBi z@zaDsEe{BQ#JMhKs`KcTcTtNsAQ@*!++FKJ*Ut2!^a(GI*u3fOt*trM9t9e-Vu0+NA!gUN063i_D%9R8Jcq=z9>EV*l*-rt58o%9XpTNcNxlCB|O$p zS=@c!AoXBi+~c=|BtQ?4yPQXMJ_OM%^hQZ)fw#fSFF4JS$U1~y1Y8Q{QN5C{m1OIv zm}X8x5O}BT(#wQT%8%HXk|9Fw8tO_~3_Y?r|3ks{BW7l`AX?8sQ>*_bn+5Te(Y;!{ z3$dNwnVin1G7XVi03;pxL-s@d)DM=bD_W%IA_|2g(_hbL`*UA-TFo~lqfDeVt{GDz z%|}fvt}>2_XHAJS-klV=>Y#hp8vq&LFKj&W<4h^i6c9cGB`M<0{jVCCoaPHz}&nLaRT$OlB z1#ivPia;utdoCo7Xn{%o5QQyu8q9G#P?PQOp6(uz* z4lYu&>fBQc)EJPWeJRbpd8FMWq$3DNL?@w~4)M~FRv8}mNeBazV9z2H4;hB1e)vo5 zFSxpOy2lN3Clsx^@`dNvR??AM^paT70(=~^j`}jBA4rG>TP*qf27&tdgQ1W1AmXB# zdS-wM#~2h;@}V9*`q0gU4O}P@)`$a7dB{N{06u85=SQHq@|wH znNp`ALO+8kH+~3HR>vX!MC!~sb+04eW92$wM7tKRvDeD>(Cb7;7i&l|Tq7C1*0BV|VtC&<$wOVoy zVj75DC_o@+s(u}89DY>D_iO} zdz?~{*-99STB8QG{Y6(;CsEzC^)I79iOry#{l458^@Vt_v!OL43WORPBGRysZ(mB+ zy=z>xPOyB@H>{KXx5QyzAXmbR*@4(5Z~a?C42TARVnMF@>o>t|PxzA61?U&1P_*@E ztG4RznPDzvO5G8$^jxwSwU9s9G`jE*D`zXOxjI2wIASF^ zNX0TD?Ak?HCgR-wCBnZ$<<^OE`DOIY7vWI7AxH0eM;$d;bQ@QFRMZ?aBKxm*LVqd` zzCyU!p9b(LAO~a%mJn2gyt7@zE5eHKeQPr@{#3mrzE{s9=vgYaYcu^KK?Wg|I{{5`;z?n4x*-~=^#mr{v`uob^F!L{08XE_B@0Pk)C%;P0}e9 z2i2`jcwKIXRlA;dqt2$TiaQF?vd=$|s|1$+!`i#RM^&AB{~0o9(9k{6ps4s7Y-}fr z6i)FR=BPEB%)kUE5DRFcL209wp4t|b0orm4lK{Kp4%kYot+w=3d#tV1_GpV2Y7#C9 zcuSy4xF}JP&JZu4)`S4^|NhpVNx=5>yzl4p=cAdu*IIjBpY^O~Jy+=KO2*IGplPt5 z8ph=J9Pr9QTbZl1oixX!n!pTvJYVX3OnrNiR>IpRnd_pdB-CrgS~H8+YfWvn9rJnm zL1SWXJeYv*v{OKY+9}53y)ShYwl$DC2gxughf|l5lD-{!bX`s*izqhn=V<*t)ctBu z_qkwJoczNw!nQ;mVqz_#e!x8^TxH!^&S<`%>ahz!w6D@fl zeD~W%FLa;G{Ro>e+CN}F2T(vaHTjVMAWt{?=UwpwY|IVyx~-a^F361#vv*kydm!Ur z+=PehPkijlebR7E>R)DzVfS0QOlgCR{kYtXpq}B$$z%xV-nPQ;ag~gKbUcM(PAcNO z9dSMae|Y=|cQMQn!c%zMkdhB|-3#wE0Vf!;Do$NSN=|qvX0p<2^XJY+q5`^hX`3*ZG7R<#Nr_rjQuvzU;@7yWcymXF9(D%{gbw%lq z!TXZWsl(};XeomaIh^O7625$9EdHlVt(jI8Q&0_b|2#u9kiD9Ldzc;4kLL_mvY+%> zuU;j+&@2tdGwL)kXXb2gHSiKsnaRy)0{gFuCa)aQiiS;tI`08>80B9Kde*D8%m`{* zaPO-5p5l(`L=FI9!{7wM9!Cw(&f`Tqx>~UbHA{)qAc+ZpKWfpI;fo^DVS&cEYYPk* zs_K9)5r!ossqbUE1U335kgCm*U(&>&RTn04E${%XKVLE4Y4ccLzT+jm#^Qs+y~Wp@ zFk8>J_*UBl0PdG};i>BMvZUW4JXOS++HU(g?NA$h16a>ZxCcc|e`{GXpKul%I9B{{ zA})xG#RRSsHbt`}lrX=V`z{ENZ4WC*SaU__1?+F)zouWB4hB%EA$e7nCpJMl;37JI zh1GC3*?0)!Z>Zr3JsVn#m?N`K;&@y4!@6!7+38?&p&C8+Za$Ry&HVeCu!ZEtgpu#w z3`u`)#QO8N0Dng1U?$az<3Q$?pc@h2y9#$)lCr@Y&4=mp)^N#Ir^8GVK7)yR*|6I! z9B+m3ge^QpD4`}Ti|2t3u9u+4u=!`sp`QyN*0f$RcLD-SScG`pR~(cn?#(~Q>%K7y zziz%|w?bU%)2&j`o$0+LVI_=5N`2C|P7D2`mre&A9J>|X>tj1$1f7xTV{b)hBW`Q0 zxy2E;@Kigrb;()+@Tq?K!7Mi~{AK3RY3}}6W?z8H1zn+LrtERbK~68_-FiS1%f5BO z7aU!1r-zzR#ZcK;at5QTm}4+?CC2w#q9x7cNa`;!5GwI)Ik8&^hMF|q<+{)Bho?w# z#4^n6*qNC0wa-0IZp{)4>-@g>+ho-ZWX0dkQfKBUP2Muga&OuvdO+`v4m6 zT+$cKol!-fVm>KDL;v3GUu`D~9pUGU%-~@9JnG2M02y@&9I?fG&8Z8UAO(g%Dw5k} z=E2p1$}`@n%DVeCvOMaN)}AyG2)#f##R7&437;t0M2MLRnc z^XhP_`G-bVcZ)lXX!5ZyNI>bu0~0xQeFLR(6Mo(3n#Ld?7M^SeL{k~!U z8Ju`L{R_PgTw5Ae87b+K5q_)jVQw_18&_FY!~HyamviA_(L*}NaDZ^GfoCNkQ4I2v zk?nJbgT+{2_M_GKH0(EUygB`EdQeF?)jj%SAJa+@XSRTN)&DR~F#weXx zH|0~?ONuV+Hq9D+Kfl zuzj0(qx&3lP`)>HSwWc_v>Va8zm7nlW?0MSJ#URZq$Qe1WVR-sibxZ6myMD}IM-+n zhC@a;v}9#}ADajbm@%XkF%1WhXrS=1SN#4QXaH_8BCqr>y%&D}0KJg~PH%NiR@Xou zATuNR{dyaF)0MAtEOQ@$9x;x6&`aDedSt&JkAs|^}5J%pb2`2dfLj8>SrWC7IFdKpA4&uR? zaxyLneARD_-bhv;$jg7^%^Sj%5BLNV@P0jhiUN}ZD2L2D9pvyK);>_AFJU_}KOf4} z82`KgNLZuO){5_nm>Rul-bI=f6bI7ZA)y~%lgMV+m{xcl(OVzL&!HA+*4NM}C-M_kF~Ns;k3{r$vd= z?>kBZrZ!TI+EueD9PEWX)v(XhiVLL}fmBonKAD6UOv=&4!)eSPAjN-{)&)_rjK{a5 z(1Z(j-=UcAAb#9gR%_Mof#(dzGIKP-W?RaXsNj1JVEtoj8vbRgc?w4+Aj4c zsX4uowW!^wqAmT(Pu8_Ok7{!KKbImz=yj_xl$ROV{Tyv6YsKw=9CE(F>D_d24ljVR zl#qwDkpPx$A@Dt;H%iLsw~?vCSkmIaG{-~{_RJi}Dsj&fhIeN$so#?yVG-};dW|3(m z#DJJum7 zX*!sr&WQ%mnS3Zcf-ji1>dXF{Y2#RYH9hq`!uSk^zv~G(W|>Mn!_(*qc3*Ej=#}W# zZuM+i&{W;x<+L`eRa5*Mu<07mg*9j(efA3)zmE3JCfEr2&MWySV~FNWmo4>%oYb8_ z06uM`Uz|}h&afaGnSsRNo2~lKyah`3K+b+fmrV&lOLnC{epBu)1j}UI7vw!PO*fz@xc+n<%wv$cvA8nq_{Wr+cp5KvP18WR9+pGh~*?<@$XS?fO zNND@(+m?;%@$z%;jV!Xai-?{S2yR6VLf8bwrr6s(|NAsyUy$L>*D5fu`Fi_l8cD z{O|Kdd>{c5Cx|&}4W$SolD8DabHkySkoXVNQTWUmE?riW0RFoP);9DeCVD`VfXmxR z_AIAkR)-+H30wrzI>l*Z>~A((%kKhgD6uJ>;DK|i!uMwAh}H0A-au%GY}PSWCQSrb z(%1)aaz%Nu8sCE*DcaOKt1=X)$339NVT+hFdVewc&OS4@!B>S_16PjY7sdcrc1Y7M z)!>n-a$0y}J0%8>R!MdeMuns4<3?#+<;q~ z4_LmITRZx0wL{kovfMM!HdF7j^c+s5Im^f_v=@HJO~wvDl(i@+L+Wxea-(71nI_;cVGUv##1Vo2L8M8gk$|A3DJI$a4rcYB}g7%{jvTH1- zGPujMkQ zn6KE17v9bEUyKcsSc}vrEQ>nG4^<#r`eQ_c$b(ZG!S`FK|RAux$jkcZT-o}+ULu+L& zHT1LI6Y+MBJb@lIw%v@cV32Nx-~v0;w759Yd+Or161}G{KEQ~wIf6;yg$YL~vt*BG zk~($LSOTn*j#1*snbwpIp2lBj!=kH8ItkT{L%d8+sB7pa%%ZFnr2AXp=AVj@cYVRb zd^@lyg*&SJ+&v2XcY7e+9`8JHcm_fK8Z#ryt=Xm{=w9aSncqC}$RohFc4y`WhP>C4 zZqe}hU!mcQCNqJ}Nf|bu6tImji__loR;H8qI-Ka4$T-_Ox(UJpb33u$*FDXP#h(SlxVn2?u$%Yi z;%MPi0~zI;n|pK9--4pL9l1GI z9zTqLbljCoI0;SS6cU#di-6g7X-*$H5xu98esMd0s)wa9z~P~4SP`W%7Y(aEj{H^M z4n2!hJzVw><C-(jeN zp+hJP%x>{*O*pl(c3!zFL9j;vkv;65{-quRp6ct--%&}%*o44#5X5XX0uwR}G* zPv;Oc^pZ6K@dZV7eNwbyxh}h#LQ4Y7Db}$Ue?WDYJw|nc7KSA!oTd%%+^BY6NBRM; z>MP$zxg@>i4`zRTY>j^1m}{TElT_-wXa;p=T)m~IQfR=S=%?H{u_Q|WmD7?b=mprh zi=?0Z3n!B?Ey>)?(+|8TYExPvP@DL**wV8TwLITe)MuqNp?~Sqcfzj1bjqWw`&Hhq zL!3)wmQKD+{{gif)Gc)whB_8mpHff_`!c?cjQCm8-Y^0fqI6*BFy_Yi#rlQc+gt$>(3yTsLow5BU2LSR zd?*W}CYk`b;S_ari?zI$LM*|y65|Xo{YCD>&2KSs6QnLPXHKW{fKEwdF}OKik-lC8 z^F($UY4EOjq?dFnwFm0o$nPFAR5ZTBbg%?gX#Z0$tpu9H~t%keJgmU{4m7;&? z8y?llnwTtT0jwi8OvEgHuzeI3OTG7F9VlJ_LVl@$M{PjFs6e{vX%KMT;WldHe#Kw? z<5q)c!gD*6c5#s}&@--0y@ND!nLuy;1MzJ<=T@HLQpql^2v04gQ3l+JgFKCtelLva zU!hXs;aAr$*J|b-ZQZpHi)PMGAsTeDr&qX>YNT6+!HlE?Jdr8vF9NXNG!$c*PCg)Q z4AwWZjdmIjHyf=q*o&G#`fW(L+y!hHDG5$b4`OX~`O>}8Xt<{jq9|i0e=aq==d@Uv zD@3_-RA<)~rw5mI-mw!Sb`{%DON#UC=|w~@+&KxMdl5ba2RZGwLJ$&g)iZvraAPj! zCdgeeUF%{`qj1DTugOVWh6-AF;^-MV|Jve@2;BFh8LQd5=>OE*Hrj~$!>BPop=m41fEo(P)$*EO^M;(^?B-jciRxFW^7?(U72F8m8QD_mY-$pd?zpDV3YbLk z>BJ^I*Az{Cbgx%r4@HEa$Tn2S`P;p32LFa8z4}>;JCvvsImMjvaFYTbRKd(`$@r-g zZxiX+@*LkHI^(bC?*?wXkl))xe&ZKBuXFCu3>9wG-vBg; z7;bL`>AZ)?E#o~?J~PwzV-!AiOF9Q#9>zBKR5h@c2K6#XFC93p6ac-8pfvp&IsG!K ztbFQR>d(rjo}-kwu|SU}nCh2EA&bgH&okm3q7-@}E0NK@_^$M=Z~tRYGKRd@a z@^XfWB-is`P-_l0p#yGntBC->UP1ElKVIZE`*Pi4N{61*$m0)FkGO|iJM?psFW`Qg z`y&D*g9kI5ugylR40Be@GX67oWANRZayb+NRI8-SU2sklTDTZs+za@m=WGHvjwn#y zPHR;MK$^Y+K9qLc(1-arT@MG%PX1T~kBkiZY~Nqf7eZDro-40rB6P@_g=YV@LM{&e zk`m!^G+8Uko`gFs4_4Ol@jRwJdp8x1=1H@~RvEBUxtouuz_U|XQAPdfXMtK2-M-x- z*c{r+kG*aq7lG83KhaJSNDK@%!zxs_2S2d!AB=f@H(k~dmi`4?KI%Q&t2b@xeOL9q zeIFeIhcuRUs7H1sI<66C1~PzVmT-PX!lXBSSoN)8Ol-!JtVw!!-DROoK%x z1=bDaKc{EUKg_2Zoco`#WL_*;i8G^X7RH=%{=d7P8l%Z*AeyWi9(5)MqR#chc`xD} zuFGWDGuH=sN8h|^Jnv(8AD_OCYiLH^S=aX~GuUzJO{4TW>iQlrDT7F<>-(J<{*OpM zu``L@o2?a^AIH8TJ;YpkGyWXw`i7gae8d-4<3Tgtb4|)JQ}+lnx{05vkI8HtM0L?* zL1;prb=SwV?byNe?>;$xysqzJ^Zmb=??;*MPvQCRmt!fVmFm(j8743R_chA;EM*UR$O_T=V3 z@J?+Z(pdTvn5=buXVAy^ttYoI$XYRy55{go9|`S!28;ygn&F~5?Lc}n-+A|If}Pvp z^dC=nALxKv*_-GKSSvc|gkzVcS5s;oSm=0qWq*0bpS-5j38e2N3HbBoL+g=m6@DchjTtT!$-^%kecn@4IDM zsCr^O))95DuEc2JsnkNnXd z{3(AB^&R&3N1pyZhjKUoo3%OqZgd?B!@s3hwI+nR^)Kp_O>Zr$(Mf=_%A1vx9!d9^ zKgS-IK8r_hyuvyjiit9&IiQ8PS0t~&M|1iER_0byetdero(=!x(@?8O<^?Lgfg-He zI+pWzTC3`n@5gUN1m6O$!3uR=F;O>61dfRFLMn7UgzP8iu(nz&)~oNj%s*%zz)?Tt z!Sz4M-y9}E;W;MdHNSb9uO&Ij4}&L+@;UQqGoe^*r)K^X%-mX5#JF>klk%SyCgh{2 zbGdV8o^vPs&f1t$7BszVEgQjgNK-Wm-u0l?veMz+>$oTvJdy*c8xdT0b4o_s=y4=^C_|ERzK;}iekZ$ExPY#R<}-+0Q(R<%xu79Y z-n%4XhG2yGz{iQXs@*@&b&vHw>)eG<4sZbmd=wxL=2o~>e#qgGX6NtRQO(!v#)?p zs+n{T7LC_Mqt06`T@%x0Md+pYj&QQ#*-S^pK}w`6Xz*6-M>KyIs+yTXJbIYnk0#6W z7XOD0qngai9_0Av_tLfeX7wP(LL7_#NV;^r@K8eIaQsata6h|;#}+I27lw~;PT{b) z3L)ZBpYkW@Z&+%RO@2w#p4R(JT}%qp_AL*mKL+cY`cHzlx_2IC+Oi<0a3dy2cDb{? zqW0T3w7SV3b6&=tEf4;~Qmvx%9{l2RqF@L=Igu_J^qdm^Z8>n4oF9}-7>og+MpC+7 zD)xqgCv!1mJ*|e9Nh^6Nv0m*CisMXWEe|+Qd><6$rDDnPp64jqG6r;BkwI3&Gkgk} zzLXCfoD@Y;&8Z8p2njng@(8Qy%!Di`=;$S!B?XL2sb#uC5O|&Un6rx>1#lFvuVdUM zoWmZcph*dGs}V75g4DBLfuM{);jdBAXl(@qiK?E_MJdEcs@?eAri8wQnZGLL!|So? z3wkQk${){bkwRyhAnTFgsah(AlfF1?yVnAkk>MHw3q9;-P1?EnMw5%cIKWFj>NiFQ z$7qtnvVx(^Qf75=w#IkqGBU5c_82%JWka*+P!MWF6RyIYuh|bEIa`ASE&|nr`~3II zG1u|@6PT66y8M4#OGw_MQ<)*$x~y_f&Ljm(b}(BVE}omz9Kn=ndwbg*Jx%I1!AFZ z4v%l5qC`Zu;u-9V*1TlIAN9>R$T#?ksK6JQVBT7FIcOsNCnm%j2`aD}NyPaZ6=w!P zTrjor&jvA!L7cc5y4VajOix~uCvSNGt{73+gQh8>|PlOj{12r4XLqEKn2rATD;X6n`2>LxnaFhCIDpR9r`Lota z8-ePnI%uj!&k^34*k&>3!wTm;1D#9hBRkx{Cqb%_zY@}c_DWfF0jLD6lCx&!rkq{x zd#k^}glRB7Jib0%4YlUYZa5hS#13ncDL62_MkZ|PF&mnv6Cq^X%>T>Dz2Juu*m6QO zn(s0a2rx_)*lT zcJJ5i@_yGGKOb) z$PF676has{N;F-JDUM)vc|}7`5rk7+P9Di_{=Z{HvC@=qHPwrU!=ohm`j zQztpe^$+qlO=}8qkxgZxPJ(ngkp&+A z4EdWT!!$lX+k9(tR=UBuy=0U}CI(mH@OsE6@19ZZKCNZq#Xzd30 zOlHQCcWr7Si=K~7eF0vDTjmQHmYvR_oF%Wo_Q zMr6^1$}{BstA>l}FNhij(GQr)<^A+Pj;A?cT*1Z0 zf65n}C&q`e@OhR@q0LJkK$4%FG|FlmMNbjcm?c2zib!)5y{SE~Iv*tC5dJe~0{3bTthrC(z~~ULvC^A+r&$|6 zH8P@0!uw55OLJeLk=<|zPDEwsllW_1XORR1%iY+MxOYJ_O&s=A%@2il9#TK8hB@Hc zgc-6AV=?U%@5Ri8x0+VNcnW##!u%h_%mrhv!8iEFt)dzb$N><z8dnpexF6b%dGLUfu z>Zt@e(5396QNt>`kn#=@!)p!3NJeJaCX$Lff>PsLN`Zv7)E&v;fG&3@o?#>Qb!JwY zyF|~z3`#S81lBC2Y_xVezLM9N&)l*zIOh>0;QHwWiiUGtEe31*u@GU;u8t!yx2AZG zGjp7|9y{?U`W2NFVH{UJ@+YWd;1D`&4&pGa>;UjqB)<`jx%dBgRsd0r+3^NBQhp9W zirJ2K$?gi@dlBDmPG=4pwi)sdRm~PNy#reb5EWJE0$*E4uM?Th9q1B=P3NVHVC>;;HM5t<7+$B7-XuG5j_YyD z%4@erop@2yc{R)(tYkA{M{PG^E*l)i-J(C40Le9=cq_&z@1L+@D3oAs% zLk^J+=zoxujJ{%=RE--6xT3`!{A(G`CL=*g4M##^?0KMmtMMXgtON=l*NYIK31C*$ z5`W!T0F0yu$bsPzORRf+GrwEJT}IBUNJ$S;J=Jn&HjB#*UoxU?AoJYRS4}?}1V=D< zjUF8O0Wj!(L7iNe$B2WCGRX{%*G_KT}g6K~j0BBfb?& z6YB68PYaoops|S*;=~09fJAlj|^Le7hmlH#wY72i^~zM>3XW%3`? zH?G^n52pNT41AhL8aFQw>!!w(oBgJ|sJm({%qHWY#D3~FA+B{}NT9Up4W{m?fS1%x z`XvorlovKPSbO##4A$nj7?-x;MiGjR^Cd6+Q}|A75N(bo6Ay!0#;^=Q1IX^wSp$35 z;QI<3kT`Fq)}z3#g}#Vt&Edq9ng&TczmP;0%e-g#S!M$=<%RV|_ehpmxcv1PCIC)N zI}1@zXbdheRXrz;``yfq{7rkEa7XHTl$q=%GFndYxX{}hp zIhOtjf6V4gzf2~ZSMJyY!)~ECt(fR)cp1hwl)llxg$#rhzzFx#l;@*XnGM^}!o7aW z;t82e09XkbfOTqM!WQNZKvi`M>2H$W#SF-^u$&s7;PzvOx2ZyA5-qofj!_x6(#Sy= z#iw%x?Bv4?2`9ZnvxQOFOusX#XK>P$Ud4;-C*f4Eiwi9wHJAtDV&6dtJ; zl=#93;1SwvHQWePB)*roz-qXhr{uH|iN0ahs=9QhUX<~5Lgtue2KLVFSn zB+G`w*hK}sz-stCGlg@E#;c$Yl4V4FwN~ECBMO_=s(B`D+?4`EYt>YfT)QMsoE_*c zikDt_94u=|fWQ8+XFY%V>{mc@7LsR?<$+AkL_r8KewKT~zFx{j{XGCc~ zCJmtzTnEB74NE@4iQx_%@jEd(k<8|#LW`Mmci0_X#_r!JBcY5UFQeMa_``3N@qJ~S z>SdIA8Dk$+hFVL#x5!lWc`u{Lw6RJVuXq`s@iM+}y$n>gS8Q=FZHh38eO|O#5xZTTm#LL)VzHpRL-hm+_{TvD2{fNo&1d^ZLaA}Jk@RR4uytZUXqh=!Yf`47Fh(P)q_zlMW#^*iDDD< zGjf}eAXqC)RQ{SVGAOD48zdtd3eL{%ArAUQ@Wkf^WlXF1%U!nBDYSZkW14Iev`uCVHFD`09|b;x>b zr(0N#n?x@5kp37*C)R6uP!7ik(2GoC)!P9otu^ufJcDe)ExY-f_#TCeiA9bp{Yc}l z_qG6&o3>UhAF8$gEy+|yTPh$WVtgUI=xcGV9S(OuSw;c!a6Si|8zEevidlDc(;SBo z{%AdrR8?n<9@>1W(J!iFp&{CmNM7ZVQR^?Iioo*_L>7knxU*i{(>4lY{@{nlpTO zm$DsoSY5%Ht8M+THB!<`j8^pukA#dcQ$g4<_9W#_53H#!^|{teDPqFNIUl2iNq9iJ zhYQbNvE5Nm?8N55-DgIeQTH1I$p=gm&IgMxb^WJ>4$j{XA29Xad6XNw$+p%{DuQ`1 zJUrxm)^&m#%j@d)_~S9>6Lk1fs?RwJlUgm~1ZFP0Lyaq1Yt{!Z9}T=|?p`s!xr4vB z%rBqV7Y-_O^Dh*v)o!u=I3h59M4r_!lkwx>%uJ#gMAGz*xwAvN&D>e;5mq|UP4r81 z4Xdc_c6OoKN#&TR#e4@UqsJho%QTE0p>`8{c>cBPKp2KJ{QvV;Lc zzk4Z>G{A1uI#=t1`r(4uo57w;Y|ABP7TCzWyiak9ALR$2T%#|64t;?iB>tYFbZ`A9 zyZN)R2`=}&7R!BTE$MKRXTy^+CQjwfi*&7xR2(tGb`m-F+>Albj3EWDI{Y<$mo+Z@ zE^Ci$e-p3ER>dxm11NOrF1HXc#98w0JbIWcEXIbl@nxRz1$X=edlt7c&n|i0x0kYu zK5K`rC^jbaAUPZ&tv*Mc#dC9OYR%aOY~t;xg$kG&jysnxKG$o;drVY^Y>bQm zEtKd)CFid|qKTm27l^!L1IAvm#moL#$#4;SM+#<wug!JpMJ7+gys(>=>gLfILi97EvmTNSy+*7(BbRJWh3QzLGYU6vv#qiZ#Juyu?1tFAJ}H{R=zK7C)}v%$Co1 zm(84hQRj)`rKS|RC#)@OKhMuBH-CM_y3b<$tMF4o?(A?fa&wr6N*-qEL2Ms^Wt2Pa zczyv2*bUje!}FM!2R4ZGzy z7`*;JWw48<&X|K!!Hhl$7fR59XRZCA;az)v{G44CMv6GgtCt>B_4BWV1xcWH?KH_# zsb{Cf6B_dw0%D9eF>v)v0I;#U$qhn|df#S;lO-e`+6$U;40Q~V+(osJikiQ~l2Xg| z;;EZBTKKu2TAElAwqmt!@jOYuI5~OO+heFV>`W~UJH$L(Pw zP0vu6R{d5EFCbcTEMM65(!fm4n4Wvxc#*4(*TN#kybg^q6Ce>@p3%AXSP$XBVrj?; zD(n+pyd`dqzg5?_mimZ6L}m1K=vtI2Ib)Q_S{&qOY!mdrhynO8flR~#o9VBkoBn0g zg&EuCCHsJVEvI3~uA;MJw;A8HgQuH1O|MW-F%0JnJv-IS#~)WA!rqiTwuTu&tA81d zntoEh)D)I_4QyEQmPh8`>YoCOZMv!c!JO8PlUGz`M_B}9DMVzAf7Ju4sjrSCufC-x z^tWZnKB>UpMP71Z5yTwA8qd}hAc4z_?2`v=KOHn?`*{Fg#HQ9QhSBOu0D=>qP9=81 zYGFIGi(4m+Cq)!KF-^KcYeXa&zo`q)NKPCh=vnNi)yQr4^(-lbyH=I{E!xtae2(fg zhsO0XZ3D}w%Rta~ktrRR`w8FWmqu+#amU~QWrKP+BB!;+c z1^7_;Ymi=b#<^`3t-Ydu19zLu-KSCchHw%&^Z5XMA504R z(TQW|xeImbpVg3HWuE4e2m~BT9p|B;$uZeh{cN%_EACz926d%v6=(fS@ugIoIebN{ zL&q6hFBjRR$%%@MoJID7y71Rwki92ecBXSnT;NK%v1aub;x|2mAhiD8>A@3-I)jSGB+W$}w1>fip&YP=P@e?@LTn(I zbsC{Z%%^sJi4|&uJ?z~Vo)p*s#VU!HHJq4~gUh|01^-%jnaH7PkvL^s5dUxXSn6{- zsKVPX>7`h14e)Qc0cNp+`p<39y6ZF+0SZ>JY0Ukku>c+-9KG96*0k3FX=Zhnaft#} zH54aub2RbRK|EHc7S8&Ay0;v|f?1zM`0StGTQIZs#9gT^P{LlHp}@UqM+w25gB?z+ zHpQJSeJP;mMS(_(q4D=JRrA;h8I+7eS$7&d%IS9_!wG=5Z}N+f%L;U4LYL4-?yyBa z(U7${1;49cGdLTJKjzj+T8W(WJb1;4be>1X=PBhn`q2-&d-uvisblmB)ePIw6*jemx3KfZ)8GN|xST_fbspC7dY!tF0+ju`zGwR_V%}r( zEGl6&AI7N6Hrm&!y_p$t%y9KRpX5#)9(HGUY2bEZqg-rU{1F0%%i8%Y{Q(2f0sov{ ze!<`~u%89|#LWLE!1v!q4FGQ?g%)Msw)>4iYm$?}OA zs5Bv=06F|q>y$X;%HnWcpJys@HH&67-oxLl`N%Ei*)tQ-Sz6a;3@Peo@|`gOfQvgG zzU9mf8H<(rTyn5yp?`IK&w%Hx`n%0{(&&!A5KUf!fj@lLd_>N9gL4=Sm!c+kGo@v2 z;Sh|(<>%&J!xKc&$&;$%s4513aU8~J_y5H}=UwZZnd;9Gb2JAIN<~DwouGpb=2aeE1ci#iH zv!a1(!VTL+def}_!n!HQls}qa{bE$ON}4#8g{>Y z+{ClN$z(N+yN?A|;TKU6XzRq>gq^c68g! z=o&8s`Vo<6c<&8d*)$qwfbM<1CXQJBHM3GLU*LWlnPJ z>pacTEL=t1OG_wOUfYR-O=cCvpO>Pz#0edVCZ}(bmZIg}3u=tkz8s@lt;xdgPfo@* zfhtYvz0$qTE%Y&nl#fGD^vZuxTz=de|70ErS?ln?snkRz<<5ti5rRy4{RwTiv9Y;p z82yYT=T@+?+hK%Zz9E;<=BhX;dBu;2U13{4+GO{<78&{eM7Q{oFut!Z_kYGp$TS6P zS?;{reX33p`R_}HU&(P$7n^)MlJw_=Lrr(2BhH(2V4GdC4e!#Cv9Dl>{))~=B=kl% z2*1uv5$8<#hmI!Few^0~B6tg&b|%}s?ilKdKk~b=^L!>y!^dEZH}SmzI*PP#9{74XOSbx&!(&^1f&9<0Rs6p~b+c6)`>Uf$C=)%CBa@NHH&dtC{EJ!fkL6Bl;2 zv%MNMckf0@{t|IIRAFWoKRtixXFyz;^@KE{H!RjhyJt^iWEb-)9XGn|tq%(IQv_IH zXG4WMn*}O7EgWjUBNg$zp#_SRG&2U%*4Q^#B;y%~fLo`d!joO9^tGlrufNgS=VP_4 zC%|RnY;b3^mU!b`gVJ9$c$8}8)rko?gD-(MO@I1Qp4l$XuQJ=EogaJME7~rh8%@R^ zyo~)O<5gu8k^iLIF+XMO$sCRFgkqF2|f=4f0!jZ$Y}9O z+;fP16h=|x$IZ61O42@?THC@Sn>O6K`h@cwZL|(n6TNhMdn)Xd29u@5ROV?b<32)x z+vH~2r^uH-Xi_~?2Us~xBilBtMsh9~vmQgbT8>aA9?<+pO4>B5>2C=>fImn(^L``m zC)1}!Uw{SSGF)CfcDIz{IuH?UPvPAiCs{w(aK}))q}eWMi8#?>v?pz+66R8Ks*sxS z^lWqoP8?6BzH;ijrnsCV#dJUHv~5pypMs`>?QEIA;)0EE@ZaR4-?){(BW;&#wNd|e zc1E0O#S!P~qSSu_>e&WPm@k1>VK`Zh-Ov^e(mThZL0~7#^Fz&dj;Kf$Ak}v^lss=c z<)|k#N31^wYON?J$musLqLHlEE+ zvsVoWd6iw)a-2HsXHW z*kcl35BlOAb#LlxHe+^wgCinPCb)eAb&M!m=|^V1rMt2JeDSvXNIug3_uhC}8g;O; zwMUrMJ_!r7+QsCnwA#oq@QV&vvYdUrjpb@%KHp%K)X23>nLe9U7uFez4X@A zroZeG)7xecB>fDRv=NT+6kizwY`fA-PFd0XNdIKs3rzn1)xVS4-vW_rZ|}y1Rs)v9 zJ1g+ivv@H|#d&ySE1>(^OWNs_^+z8*5zk;7A|}La+4OM!M0Ib}YRzA-7(oB)V*g*x zA1$%q=tj5ERQC@(bOTbU4(RYAx=MNB+?yxDsKlzdXrBF?_E9()%}>r5;T#F$3?l4% zDI9wBP8jdQW&ax~;jE12Ph2_T%(1)Sgbk@0V>fr_B@Umuq)pX?eWk;~))gvDC2{Z2c4Qd!~P&Qt;vP&a3mjA;ajWiYScMNHgR@ zNps?G-jcH+aKi2c3hm4^kp2bJw)#0?MuH9=-hKc`AXkOd@6unN zY?qP^oS|H8c*NP;Rd#ansD>>IhWE6OQA@SKD85Zzs^g!m^+)n?Rws>1HqF!J~|AvT~?-c5A%mTc-C-n>7L)l0memwFNI zV%>gK8hU^3NauqA^tYQrln@fk7Krb)6Z@!%7}|eLP8-#*?K^R!U>pBd^3KBKHv)-I zPF=hp?B3d|z8F9u9J8Hx>(t~l*jQJOfNn`%oo5rUHnio=f@m_ATNlBVr{$Nf9F;e= z>GZNOkWP8c@8(59ole=9IBUH>vHw(#sSWF$ih#D;tH?;n(y=~_CThBlM0_e#GiB@u6w77rLsz% zFv^~LSp!(GK)-orh`2fc^;izRoU%!9=N@8P$_Mc%^`#iBaMdbYTf zhjn~__NNz5wVZ3V^cYCT$QD(G)nxL*1(pD+NU+N7Ji~=|>Wf9Gz;MglZ=1Llg_q}t zMF?4swclzd7B2q`o3j}#`*draoBIwA4BxO(_pJ%A95GD{8(W9@h&r>irUr*$#IWIlc;gf zJ&bqf7ME`SE6#VuM{D6N_m)G2qdaf;$Mg+r3RJsllL+GIpd|k zKZjsD^JooACi88qmabtvdKJDL*VA>@p!k@6v03)VYH`ZhE4f_Muy4y@dPYSNKvhSH=fbU8II>ecG$|Ceu_nt*5W+=_OTgM}Jk<_u||Ow-Pn)Tfrk_;X#j* zUm;%_0s-_Gst>DXOs(~C)OUpZ>NdOt$_;_s!pG_qov7xpzPtJ;89Q+Y!Y6V|5f~v2 z0K69Px*_K4(l5R%c2O3eepFk7$QpB}Erbi=OA{TVlP{{oHmG@nuE|MY4fi?Xl2h(w z{lN=I&1SVhr?JJ5=dP+lbk6il<|S2s<4?iu#LPXUw}blgkx4pAdE+RN@>QSk(xXnG z+QsLG=zwA=R_{^yWBjR>Q;{kR#e%OY-BkS%U9Z|j(heobJ45xWy!B-Zy`uab^w)Gt zU8<4m!-DT>oFnmZT8snBi3rB*|Lv{=&HH{s+$@WTb@hrZ`a{I+;0pgagJ8)ECppbWwK z98k^#>rb)A16IS2khB@hQvWAVgVk8?p%D-Y=W_<3oWXY}WEsIn`ak)=(EEIaZx8(F zddP;DLVg&(k6R5@R3Q$t1QvzmVS~YlEk;~bk--6xB z@8Da_??AhO-61;)h50X5K_&>@nr5H|c6pG91S*H>y5h%s0 zi?(q=lsb)>cO_f5U=~#sC@)ZYRECPC$29~9+HPGpcpqG2^{(Cf9o%Mqv%M=&1%b*v znU2v?woe7KfV_gzJu+o$c#iYdEOdI9PTtJooP_l!xy4si)b5*@9MzBcBTjcTIeWal z{jKuamn&*_gX<-R<0OP@{#ZLsoN4>EVgAJrMr)@RUl9eOv~n?bfgcR}npYGJ7BnPt zVc8Sb7nAcVJUwdk9fAbAa`VTbq5p3n+j6`>IH?MFyB`0Us%I%88OW39Vc=BIn*bnB z<7LpoH+}pFw-EmfClS18GW4gqOE`jXOGnwA@~J{BCZ?uGxX`M4QwarZoa&|uVq{p= zs)yiDuk*vK|Ap+DUa|v&=i?864}>u%Q*G5=Rl={9&mcX%GLB5!O!26SQ!N08!ycBI zg$+y=Hc-3_HmpI(RbLjCRygA8sk1bfzFA|nJ!xZG?c~NR9dOdXF5jR2h^vP z28lqF5D?a1;q+BFhtYwI`QBp=$DJz}@!;lFt+U`IJe>Ke#%X$&QmOz24D@&^*V9`S zoL^QovB3J2R#5H}&SlO6H=o9595YlvXoMh}EJZ;r?k<%)g9nOM6HKkBD=CJ)#SoVT|F6KU%>I@gB?)@4+nb9?TN&!7T9}%o6XxEb$)967N*w5%1I^;yqfo zQFjARN|zDR2uOx<@cjL8GB|sjtY*p)!X}!E1Qp)i3uvv)X`$mqr>Z$N(oDUUQ>V-V zGhr-*q1tM?d8m3v%b8g(=2nZv*RQiQkULCl@lJiwq&*hhqAC||qKp{nC z)>_@cq!Ami1r7(3^PrsGOo%1@w4vskV~+p%_<^Wf##u9ccRoEF z`V>v|^G`{TGDe(z@AU2Y9=!hj z_bq(i&yRTR`(|{X@MEu=rqTVhOw-!`ub=;QZq(UsoW>krfMMtLbzR73p3W&Hg28+6 z*_()^OFSW`$1eG>XRmFpmiE{q%_$2NeBa{Fa#tThnAp{k(Dub=`H*9^_$DH>8YCtq zg~)!J|GxrfXDRB2C2+$OVH77O{iac|FHdksofg_O@AjU( zaKC9E7Zg+&YMJ+W23zGAp!fqn_PS-Hr{dmZiPr1qDZjGucM!_C(TWxPm6KP>CPh) zhhYIp9_AL7!V(O1+;IwwJ>bfQF3_Cv*=l8 z=AOy@c8-z9!2q7$!Yluk`GJJRgw6H8b_V@NhpQNF{!CP}a949a`8W}qWeT8DYj=Di z_lM5RHZJ}R6vsMd1BPfnIg0wj8TbsD>W(YG0;b?7`mD`;gBrFuGdiutpMnYOp1nr# zp{1hs{aA7lec&eJ%y>9UD3v$AP2_|MpCY6NMifKD!8CZs5V(ZmByF;JE<77#3)yHW z+-f3qmRZ#`7emg-Uy3~E7swArLAZcZ47LN2J0HWj%EJ}D&T`-L_}XEd?a3LP;pCz{ z;Y${E#%gEGvO_zjqMLfuYW#$45OKea7m1B_$txJ8p(t{IkMIBl9^b`!diXD8NGY0` z(2KR2=~uY8Hx}Zc#Jfp+S8~Q4hLek#K!vY69O|oKeq2%F%0K~@mao}E~4PI1G(g5)IApUe-?kXRtXmlt7KtuX@&Db%-IyHy{EX1B@ZX>GCbO3NP8Or8@i%=Ufd=uEM#U`zv8)NNVzPB@FSt1Yv=sOg@n1txq^?PWL~CQkqjaGz z3cHhhs9r>UZ9-sfxS^Mbsq|ag4)9OQd+-T8{m)0EC5OQzP5tK`U7E()Yr~oK{|4*d zX9fR8`seuH|7W_ueR#9Llx_r~kUZ6F!$1|gq8d7qTSpal)0&OMFQ#*MijprCUBo>l z;Qu~_4tQR2sv$nJ;L|^%S=3Tcb~J`AQUmr>$5}N^wz$grZBAd1n@Is3a-lrlahS0U z1Ki%kfUOoxAML@TO8&|$eMh6(-3)1y_=q4nwGKdoNB9xtTq?S2hJZR14Yl#}CjV>p znd*MHzJ>gPQh)q0D<}X90$`kuRVUH=I$@l)v0JWO`V5rI*$Cm_amNoqKOz!2)ozv7 zp5q(Pd9b&?0iDwXt17;Wyr?_)mSwp)bN5k1|1w9FIk2FQf$4F@0_gyv0VksSLOiKTcDs> zu;zHTtg`B*C22E>sAFLlhRfjF`4U#Llyi90A7vv?P}tU8kge8O16>?q$<2U;eo6w6wQK6k67;JnJLlqh=3BTvu@&!1~AO>qT3Of+NE7c=N0S8)l(-K3WmlAO8g>?I?GYF{BN>FKzyM zuRpc#!d`qB4`+zhb)R}A;+dF+A7wXh^6Bsiy}x8HC?|T-5yI{0di+nKVlayzwg`JP z)%HaQqs)AN>i#nOg!>De@FsZM<<5=>=0&X$kv%z9<1kQ-F}b~n2QIJ8gf`$xf#)1^ z{m`xBze;j*;I`(OTL<{iZtlf>06XA>G6~9%&%GXG2G$tkM4mNt<3KgDydp@3-J0St zbI<3lE{l^E9}^bv15XA1I)en@fxJU!7k|!%)8iF6@qF-$*O$Q;#Cv-uIit#MK0FBH z&|3)+BYeFTh?Y^wi^LWXdu5rg+H*60KC&*B9w3;qi0 zZo~_n^<(tU>2o`TbfrTrcm{EANu5N618eU+VPNeHykgqx{!Oq}GuGV1U-2?_^JA|Y zuZ%J>&|EqR{_5UQ)(IdOuu2w*K8c7tsVL>oj7t8@oW-A8=J4myrOYtD#?Xu3^=o-| z&<^snWgM7C-5E#mosJu+Hd)~Uj)%+9VgWLX1etG? za?D29MK#4=WceaTqs`repwiqc9$?TqIXy>6i*KX@c&4J>Nk>gf?sa~M7U{(+ykV>a zgOdn-kp3(cp5gXmKR9ZtP~>HV%fS0M z^L`VTAc5|@0*W8tf1?;Mqt}_)&V2*Q;gf(>U%>)#8FcgiRodYn+0Ng52YU{MB3-a< zR~do^%M7c23~k#<{~yP0^Xc-tPlZqv-sMEz;kL_uhcAIWUM+g!ga~j8f6T>hRaA6P z25+!GuL2ZmBk$l%Oz5ld$7TunQ(MW%uM)AozNQTADFAO z25?g!K^%`U;XCg9j7Xsre{RGACWvKIq#Y&-GZgoa-Hj$t%)NO9?m*s*=sZ1~I{qaO zjDIE%STK(uGLGcNkxm98d4}2RVXq3{GBA@npb!_A!WwZCkb{kWbN+DNHt4DW<`Pk+ zaFW)Ku@Flx5?MC0*Yz*B++YP9321j(G4sZVTAfotYXK`Lj1v^b2@2x`g>izyI6+~Y zU-|0&UjYq`cCSN3r%oi zr3I80sCXy+d1f)yMn?KYZlm1TJbrtn?g~Y^v(YW?Y^7YNxB>9Zzr>u)W4CErr|d5p zIw@D~{6`Od4kyRf@}Ue-&N>G33q&+UTU&L@jk!1Yap|s8;G&;U5E7lo^MB4`v}7-{ zSp^M7G;Yux_jQQ08((7Rm@!-@?F|@2bFVIUCm-eNkNuNT=K`lV?c$euOEjM9P_z^V zsovq?7ev6U675v!I5y&8Bvl|3k+q`sMI4H_1N3VSS)(`KIV~L8Ja>xM?Pk+$8Y?+0 z_c5dU&-ecOxWQpj)kqV~@%^%`5}|6Wl1_kkO(YjKtuGS^#Z<|%_3MM4bRH$%iDnNY z{3^#n&7fu|Kmv_AFI)A$WKQt{!&UYn;otKAkF~dfkE*)%zca}I(FRY@V57wvYitum z3oUw?g0~r%0~4JfR?w)R+(xNd{nz$pT6zmfa599`!wIpV;;k>VS6gjsrMFe%3y=g% z0{9ZZmndo@qRt2^_(nj4|M$1gOaip`KF{a*Jo&(!efHjGzplOZT5GShwpZcHWFIWi zD6UU#ldJxcx^E+1%{{0qcc#@wWO>cMnUEN(&u&~nbfF0O2cGb5- zk#rxi1Oe-v*h7!}mxl~lQo$qKdOM}2o-Q*aaK+L7G#8VYopP%@4y}zltN6{#`*h}g zPQ(w(`AgMgFzW4aSu9KRr}BWPVFs#*LYBWOE&>`-?d*Kwsde&EK>*{iTiLR6d& zLE^&jEep0xhLE;j<0?^?{Ab6m(OM zUkpsTptvd@AO@9In_KRwc1Gy|RZFc2_PfI9ggEEl0kE@KJva4w<9t3aeqG%SBKxB? z&)Euj?wfH;UP{=h&3Yx2x z_`q#|(J{f$)JuYDaW-u3? zSuAT|Bwx;p=HS7bbi7^uwmIk;_Z73GxSfMj5;R)n6+m3-;tL4WUM0kvxfIxJb#l1Q zt-pfn7zh{cden(AZ^noNW83^Ytbz^ntYDFuG5{uWf`F^Qu$vmWAZz`-AU1gQ=%PQz z)zk2bhIGew;T{AAWxD+-K%gXb1D;X1ugO~M(9f!xr=8vi&Qv(eu5#LCf`+w22QDNR zp&o#Kbepl(Mn~G4$N@?PPDVG?{SeQj?1J3B!X^vOENG6Fv)49Io*VV-9MGC z;0ZlEp|NxxA(tw6NN!V2c{$dSHe`m_kSFiwsY8JWl5x^ApfwM7hpTN>etsfe3T26f{szcMxB?5}2;aK>qwz{o-Z_*ekKN?DMoe+%donxRm1U_McW zD{3vGuTo=NOtE+i=nAw+(t?FoG_TP_MnZn8rI$WN&6*??I+ZlO!n*hAim%;R3crqN zFjsPzv2_kw55Ekp_h}@sAGU`L!`RLPjiZ)9SbfYc0wOFt7Cu5s&6n??8?!!xcAT}B zuR4j6=8rtwmvQAqS>If1#>={B`PH9J_$X?P?gk9E5I7UKFMIDJt0Og(z|)M?*%N>} zauc4VFFW}E@?2}?3v;bYJ3g{T<46I`GVAIzYQ@QIXwJ{@-M?e}RE5i28_&jf8CXc{ zk>A`vU$}e|#*UG*7)Y5GCHhaPKfhsq>7<<6^LY7k{fOi?UwZ|O6SPofl+Ga9s>dyZ zf~}xyR`-^ORmsrHdE<R2he&+0En@+(vp zfY}@IEu~Lvm3#|e5y;n_Kvdzx*7OdLdKQ0#CI6aV8ezGY3aSLjR^#JzMVavimcD`9 zhtuz~mXx+C(>a^0MY6Ovyqh(8LtvAfI~?Fkmg@{2TyvE^mkeqYl2HWlj6%eEG+z

      zJ>dFw*vFH#7hK;D`+&0cgzFoEjdFcO>@&*RAFeM680PwxVB=h06Z@R9_KWL_VxLsj zzHxn3zzo-S#XhX8J>>ef*vFN%mqgZna(!XIB-b~_KC-O6CDe)V)!2uYwa0iLF^uuC zy~gy2VayLPjQJymu{^{umX8=ldJw}%ANCKBUc@lcj~GUN5W~nHVi@^F3?u)DVU!1A z80CW)MtLEIQGSSFlqX^s<%<|bc_W5V{)l1J2VxlYgBV7AA%;VMtedGqkSQU(cTclXn)xMLwiIFqkSTV(Owb5XupVI zv}eRH+Baet?Hw_U_Kz4wJRpVJ@f;1s*NF&mUG$ZZE1M-4A zA#cbd@`^ko?uB?6`-lO=0%8KOffzxoAZ8Fdh#|xhVhXW^ z7(=Wf<`8>`LBt|r60wOGh4z-iY?aKd0Jm@7z8yQ(O%QgH2UdeSckbM=V|!+KTVV`z z5NqF|Lx=Y4*)+w|0%M?qSm#ckK7HuWu9@Ce7y})|LWeQEEHMT;h;_QMvhv`;ZPUH2 zq!Fb54jeXZvn$LQijB|G?fs!J%RO1`HfD zc<8X0_{5~-l(dY@oVdu!7k zA<-Gdljr@uX3OsKzbnt(c=+z(Jt!%sY|5O) zf2`ZGYoGYU`D=F{zpVZw(J}WLm{vAx`R08`&fR$M;(d*J=U$0r3pTMA?!S|$*@UD` zS-Jn*!_OL){;`F#R_#7^_0hW@YF+w{oUyLr>Pv~LLsaPs_VyPQC((orr(URb9ZN?xP3Rw?x?-3_Z5n|JtL zqrQ{J>I@^wonc%!3`T`k!5HaX`Hi}xG)8B*kH1y$tA=qkL)sF?790MgF$&>6{`fSX zcAyzLfDWbQcjQNDjA|Hz#2*8{0kjB4)KX~q9r;lj!vXH&PXxbA72{AXuLrnKj@{v|XszsFf7{Jt7nA2< zv~roph4)82eolDjv1Fr;P`1VMwyZnvkanfVR(P>^J@2w9h?GZpMQ+t!M6N1U(34O`Cln64zbpT0vK9Km94kk6m`@&VEFf8#qll$tA$fYTko-Qhh;(~cM3zFmT7I~gOfV@ScQZ=J#yutE+(($3 z*|`+vS(Fm-s8TW?)+e6cQA+fWmlC6ErDP1eufFrDlpspq;J;80Cc0{LIAYLH(qmojZ1DtHY;f zO&(J;GC5up85ZQ{=>|EQw%4W?&Ym)^Feg1JW^n(|UOj~_4mRfc^q))S%@|)=kd=}! zEGnXpKa^)@OmAAfY~jqwV~cY$M#K#r&=-le)juI~#||Cbvt#qRmCF{*8$BG!YQfR) zP6*%nD#P0!RX_$G-dt$`I`jbl}@c-l#Ar`(vmLHWHUAGi2)o~en`rtGhIENjBC~nWo^j3-_7=@5lkY26_+b8Rwqjm~StC3gMtV44;}11#52J?(POwrj&os`DILd~L|gQ+6-Ev5NU~1uoMxMCG14N# zqNx2i!%2G6^p|KY*ICwTgXVVr0bYg5R<-5));rwO{QLLr7ZEEr`V)h<#Z_&y_$RZ^EIbxx7k55dxb@W4-QLYh6N1k86TJ&Fw!O0x!5_^Imcz9!(_|f1+zOu zoA$AyCL|L|-;PijF#q;^5ZF@!)FHU1ss+|1&D1AnJz*be@O!~;0RJcW#o%Xwp9X#@ z`1#=HfS)0|o(IP%;N@}fdLekcpV8DWYzK7c9HL-|u?I^T9Q>S==={j{7!+fPsye;o}y~$HQF=28|dZ-G;fD zeBv8KXj)EBYk3S057-1D%r_i&x0WU1Xyg9zG4;QXw<>jL?AFVGwTTRQai~b zaCpugDdVO&etI+Z{OFWK(a44LZ<_$)&fd}k!989B(y&q@0)6trA^i|HFtAmszL@Pe8j=g>59WsO3} zE$vFMb7|WNeaF)J_oe&amw7kbXV@NWP3mNQ%?4@kdvS2rbLjwFj#y}bD z+c|ShmA~F*Ot-^4O0{jmiQmlpq~&7Sau2WaA+fw|fYY-2UQUmkUg;DXH4iz=nz0KGTB4-5e1KVVZAY`E{VN^y%TLIRPL&hTl+Pe67e7o9gu9*NZsLAn zUVVH;LB7HM5dm_pnx>P{m5~{r8_s=RBcdP!wu8sL-XXK*??M5N(i~gNFC{xe1m7_c zK_4P9o7>!7mKDc^EEx9IME%L+3tP1(!FN_TRkoOKMpkf8xSyz}H*BRMS7&3<%9({@ z{rtIVL7IIt`m0YDXCsaRYk@=K?oYk^GDWcQxG13|dK0ol$pND~W20*{ zxfc0NixFkz#3XQLi%Jdl7KQio_6x&2WPG<2rE7D0c*_`SvAhOikXckSnrq3%e~r}wZ(RAXxsR;;ro}f0P1DSH zu2F1O50Ke^pf@ASHw|hTs06a(MSl7Dg8)85?6P{MrrG_{eA7q{4I?!tuV%{!>2fxT z5N$R>1A#WnS5so@C{9Yt$jSE3NeIlxLjECQePe+_nl0zw$&;FLWBJvI=HIBPi`bMJ z8UBF;{Mg4o*Du*n?S;T*O!3)um0!Ie4}r8{XlhWh%!9nc!cbaVjb1MyRHRr{HciKg zwWlr9e1!(mz_cZGCAuI!&L=)L z344%SX8>|+8vmd9Za^P=dIacdnuWZx(QN*W8%5L`HfMWFoU#@dBqZ!DSqyvP)_i(# z%HPr2qNAxv2P4Dw?F{4}pn}g&X{htnc&aMON{YXpVyiN`XyfJ2*A?UZ+A2|!+6PO7 zu)k|dj;AANaLc}0I{#WAJ5usvgIK>VN{Wh$Mi-Q{9amafT2eY{{Fn*xxp}io`WNLF z=55%VoSK@St1&VwCok50Ksrg!2(?p)8Zcx~Sd2V}Veh2nQL^K(M&;EQ3N4jCSw||- zKRvuuY9-$TUFk1+Lpyw-G-6ehc&`)eJ}4?^Dk`YGj0kx1$!_=yUMmaxwp6uW_)B%= zPdRPA*0jy}sHpf=WTf<2yN|~^iBge5t)fMQ!BYiIYfY2ZwXSv&Nym^6df&Vvzr5F1 z>g(`OpX#mnR{2Yp!C&bgZG25?M4dk>TlUncrKy^Hm)jq@j8b~mS6N+A6*fBMM{2gQ zY^xzL_cW~e#&@yNrD+~bt9|)~x-aZQV|b{>gOy z^0|{&tzwOmx9V3NEsGzfa(U{!m&sFhtdh%D79ms??kPJ8H#J{&(=~&pB+$lfGn`Zw``h;z11D?J0^OM57bTMKg34T64+Y)?y%)I*fM3`q!UpRHcxC48yPagMe-M*>A6XJY)cHG>zZ^Osy z2M%obc;LXTDTzz=?wg#wXUW1z<8JKTyJ6LhjZ3C}T)%hUhE><^-JEiD=E0lmK2D#s zWW%~Cw{J~db?fBy$?Nui-ZwRS->rR9;^HR6C7Aj6#QCf{b?4@~wTmYW_gnRO_U3k&HZba!)gaB%H9K%kLT^wyr{ufo5ml&m&(UnErci1Jg0eAy;{ANw@h`j zOgcfD7Mhm4Qofrya`b?=LG6{=Hmwz!%T(j|ebw)AQdtUgURFN=Q0iNtSQGSK z3tZ)aCu)I^ej5K9@ID44e}&`J9H{9Ep?B3cX?%uqH$a}Xph-uyAc!NS;fUIE{&Uct zKFDpb)@ZH$JUi9#yhHpo{E_?%prz;hNR2g+ud(_CkVq7y8_(0|=n&M_c5f9|Fe_u6;yjmn(3eAk)#nr*s;ju^9a*O^D! z?YekIWzAT3`xiL$YVCskqhNjOiVnJA3Wn8|_S8{RWMkx%$Yx)@Dut(K)j>9=WUE!Lesl&a8Du z@3b+o_ZH>MfietCo%&=?Shnj#Rcj-^0V9fj+i>_sd(&>7;W-O8pT2Ks<|RrQy=2S9 z`}*wzVn>c$yzRs-GaF&>kjy39&pdA1p?h@El$AR#JT|s)9hf_M*^U!WTX%3E{nBTw zJapI4zE9%#Wjl{td)A?Auh^mm+m79SZE7tH8d9)i%engE1 zU$g(z<4*RT5yNwrZm)bIfHx@#78_}SL|VTKzDti)HPU1CSK0M9>9I_96v&Phvipsy zy}HXdXalTd?SL}8x6y+3Mjftsuu4c3j`%H#`flsI729@f-m+@@mLt25RqXa*ygdSP z`bFhVS}J< zK5XOgHSj)Y9G8=h4i%ajoV;&pV*L5b)2D7;RG4TkEr6B{ZwP!Q7Utz8`o{Pq=I7=n z_{U6`^!wi3i>6LEzwT@A@|gw60taY~C|!k%FQ*pno18QuX5#SOaeFpSi1YLD^Y%6y z>$xVu#~kRM07o-3?{SwuFPoa2JRl+NR`ICGxryU4Cr(bg6Y~RTN2_T6cpl;^YhG)8c_F7 zSMJ@jb=l%Y6Z5i0rlrQlh(dgv9qnyx1SW>9_==R|`^zVnE0646yJqErDMe|+qk@C{ zeBEr#3|gyW$D9h(N>y*}H&=Zwgd3~R($Lgc3Uy?)`eE*e;fK|iLTzRYzcu_&?Je4? z)hB99)X0T6#_EpHUSK*8sAq2TQ`HY@7Hb?;*0gfdb#SKG~J+$ z($v5jDiX@W8tRqWA*knqbi3(H;~(NLg;Fu!)#|6}<+Fxwu5}8iLHgX(Kl7`B-lq`f zmc}iO)#`6FwyG!V&)0jU#@9RsB@}D4(SWJ0>evdDLQQF`K9YY!ue-i#t03K_YJJt8 z0w2*DrF^W{jn(n~G`^!o04E74?Z~}UGO4n&5jqp0Bop8fIZ6du+|=WMMx?h`!%cmg z);6t88YU12?*>44F64}PWBfS27RYa+21+d#%E!DlHLz^yPoJ->U9H_g^PpxMXl)Kd zT1U_aN`3(FU<@1^>Kp4V(oohOsTr-&SG}KRp(eIHBY_9J3%la$oYA@kGR3lyg6D8Y z>XCxaz`t1Usrn7gO&TcwGT@{yv}yQ5Dm?gCbgt-hfp%{qNX}kUQ9}`qsOJGt${NVO z8o0&wXctJdFQg8J-z<{Qy6d~? zUEvMaJfpQhQx978HyR5xgF%K%p{+jz_Ft$OujL5+mJXU|T}TBY3Uevtzk>FCHI#_D zMrw?K=W3Y@gTZDHab;jnr6B3sp#9;RH#9qNnnKx1<#!5V^o4kc$y1P4id2-fl+sY` zQf;)v4w|z76Ssi6e65ktdm9gZH+_CrzG_>G?!Nuvvd7N-bH}0c_ugu@>+Iqi9+Ocz zsb}9|8KY+`+gyJ7_A6fNPEKASF(XT+ELpd+;=)Z0Z8H}VJRl`^?7X%6 zPThK?qbD$T4H=Y@J8AJo*!$+Sx{*zfUIUZzC(d8J>&T@C?^JY5?L2x9PA;6hbp5{L zSMRIq8Fz7m2n7=tuHS$1<_itI4t8$-k#YIs=B?g+{Q7g^3H2*qpnOybk^t@OV;f=eE!}Wo|dsK6FfA%bmsD{73c1~)irit zLIx-2jhnq{Ims)z}w!)x6DFss&Z-V^aXtXl1^#~f2TsUR%#sjDCywcP)vFYX) zo|rlIH{k#FYuz>-t$PFyNh_YZWW&L;Rn>b!&lwLM@ z{>nXP@4wS+*U6dm9-NRjZq|ye?B%C=CJtWVaXI7X{;}o2i7OA^w=!||iA>BXneyAp z?MR06K8eC_wa&e-N*Z!MFAG6SP79r!n+ z16sXa`cdVTy`K8RS*w*^uj-({zXu;BXuWl|WP!Ytz%rXJYQTcGE;xAZ^`D_`Vg4_Aj7rI{zW>76VUi*7ZaatI4YCh%3 z<@@c+=T9GBTs&EM;^>wzcUPD0c5QH23U*JN;`QeHfN_SEr1d)Cbu-pjcY6vtOlQfQKC zy?`GzAD>^|J%4O|T1>wH4+kqjJ3Vbp^B&fyE?{3g{pnFd4Pc;_2b>Cv94MQ)X&d%)(-8+gE7Bv&kl|8YKz^v?{6>t8EdPJ zBLLq&+}l64m#I2FEZ2T|a&lRcn*ldi@Z-zNt2@Ue5c-kJ`6)4lm0IvToHts-vk>-KiI&+ftwQ2J)$zYoj|WBYpjmzUmXB zU9}acA0Kb58fw9(sUM#nl#lZ_gwco}pP!yup5)qA1$&?`uk0M(ud5!C{qw_}!^?C0 zI%#kue0^~qtku2^NA1s=>f7bNCHFMfk<$15!^6roWl=62G?lr?wVz*H*)uma(54L^ z`@C{DnmXr5y&A1gecBhmr@mboZLLDpJXk-#P>K5f{O}k?Ux})Db#6s$S6%4KRo~b> zwr^*3B;~5bBeRF-^ycB<{R!Y>5 z5BHA)6>cV)ieL%PFQW{)wB;)RvDNpE!JQtaI!NvJk54cDH7BjNT{{hw^pCG^?i^WF zHrS(MD~`S&-`+nykM!FcYSmR5K;+n7(?de1h=xxP#SSVS5>%K~D5qR{d?(&9Za}Zj zTGYKmzfT+CX4$IYZOX(gdBvGC_(UUjzFm8!uW1kx)+M*I z+cphDuKbxD?rtM6fQV`^9IvQAy*-faZlqIxc)sTG!HNByjP*33T9OXfe|vdl-_o+g zaPMx`rtMqn!uPO#etUU#Rc;?ULmj@VG>+uQx3{<1rFs3_Iv=3)6c!#3=oewtY^GfVPJ#ww-uCcqu?+YQp5TH+f?oQ53TG5Z z-{ZB+N4=L#^2rhPg5)zIe&yGnd*{`ZA1lGHsVMc|bV&_^OP`UM4)Y+gL^#u-#rXz` zu#7?=d%kWap1i1xhVLxp69tgzkT4(Lu!aEO_>CPNADax*Yq(hf@R}ChKDVp~(39+a zJWlKk?iUo)3^8&tu`phT&JM1Ow_mS5q2c`_2MrOyr);Dv5k_WZ=jIiRDl9H39X)33 zxCs*{O`bAs`iz;gX3v>B@3;927A{)6^!H`Um#_Ha&y}lIuUWfp{f3PjH*Masb=&ss zJ9h5+>#yB=_U_xa|G>fWaxq&`ap>^he;+w|?AY-WCn`^#I(7QY*|X=)U$}7b(xuB+ zu3o)%{rZiYw{G3ObLZ~8s;c`B9z1;X`0%Zega1}Pz^-OXH|}M~(ssASoyxiobUK29$lT>i)w=P%aev<}H-@=`)lll|@6_!7Hi#$Seon^2^@f zHnrnl(=h(m`8e=S9%gvpl#co{Zn)Vzobfkvv+hNBQ+i|-mMjrB$45R{%DQgOMT5e) zcjEO+YFd3Z1BIUHsTnEp`AOLY+?#uxF;XuG>Md@LQ&alncy9c59#UYH9vyfubqjs~%H^Npr$md8g?Nk{ z%jIy11|+2gNhh#D>R&7m2n-fUv*7Fxtd5(Hk(3=fTvl;4&9}bIfaFky zb#u8GMgZT`MaSibQjJcFPASMrg71JOrDVrvLbgq_j6;pKG%v*}4kuE`=20}47C3^* zdD3EA{xA4x^4a8t$#s*%ChJTlnZ%g%FyWhAH(p^JV{B%8yThyw-W}c;%{S^{blou1 zkZ-uOy>W6dl(c@PAFRJkPe(7U)d^i=-E5s>+HJJsw6Z!aJs_pvtJ^EALQxp=hQUr7(v+33PRrr2Sm;<8E!6+Tib#Y7T$< z`L)N_+%LO7fBxk9spw)V-H6>Z1qt5Amf4ggS+>a-5++}>i*}dV^zzl z@~a}Nm@2EPHdXv8g(}#R>K`4aFKi+my*SM`BWR(}ftwT*2PeN~m#V2KDk<}5g}NtM zSuxr?_(Uy?xNGv2Rn)ZTy8K1``-<}7lM;t#XNgjxGt-lzn>7g^SsUGy4l99AgPAqb z@^lQ$8u0g>CsC28)beZiKjHYD|3%}6>QB{gnhhc~xS%Bz{7LAa3O|1;{7_K*QL9+1 zr1V|6=DW%_6=mKR>HJ?zB7w&yF1Cc0D8L`Y|ET~8xCz2=AHMR65#S%*mB62Zf<*D> z&!39i4Y&m%5(UMd5T>N`L-|LoO0A0WcV5l+Z)y!ls(%6bKuZPtZgIJDrQmHSg!4cZ zJcPk*N+Ll{IRbz*g`XTCa-gxelp{;qOp=~9;IAgq^Ul*ngszIZp-*( zL9Yj=i#7vtxXty5xQRtri8Y9?#LcW$Q&NS=1{$iW+}s0Ipq5W5sI=m1Nb8e2`a~I- zNx3*fF)lqXP2?9C)~pTH?>v=L>wY9DBo8-9S)M`ujMUpbb==WRfR!fu>&wU(fwoekP z@W+>hZ7xdI(|^?LQrG+R+mnHZXK zD_m9NDZ@vlTX0X9V@E!K0qMh@ddk#&$rVYh#0&P+Q>9`hJjrEAUxltJ&iv!DPLWrlew?2 z286)wXA%KDRkFO+P^XYv`_Wu_>#bKR&q+LCm%>;{G_CVtSI4}Cq<<|72pjE3|gtc_sC(i>Xz)5{Qle_ z@NM`E`2IW07u!)xQRbz;BD{vvMc@O$8-qtd)UVPwd}P6=C!4jj-dt_f6dT-J_GYjE z;X*-gD5B0u^M?j9K3(<%2R0rb*KBEN0(i*jCQaJ3%p{nznd_~C z02WC*m2%RW(v=k!ot796ePMWD%P4TP!w;BZwdCOF0PjrVUViu>3C13slbsGLyE0+kb~a4dZZTUcfpoo5<1ssq4>!mf+2(wd6l}Iu3YvNvKVEuBOdCXH+KzTTz+^DT^aYk{=Z3od&)2C@h7dB>Yih9^_-l` z=IS@-1J_?K_3Ki)UaH=8^XsKz8;o;=2L|;P;bS&DsrL-&6B^_j$&uJpzV*^!=USc) zL@Q6%G|ew!`Z};Ad9QJp;Z>SB9l;%v~6+5D;wE`wBiwASTpr) zOf-%LV0K{Mzf#Kt-?aQ+@&AY7n<-yLU7RQ@GZxnK$$Aw{%dIm|=y|j}&e1fTH8g^O zX>sweeo_u!uC9S?ZK+X5I5sCKV!h)gt*0=gn#k)xxPbbGqH5Q_yVxft6zdXf>+07Z zS+T=&GUXQ7w0tSLv21MRrB`x;K%jAh*VrGyV$jvcRT&oo|LWO4_Ig{aP5#%OFPDG5 zYxl0Orbd*N74Ix^;JT1a`T4i?D*tUAjh42CCSRSWrlP8(tbk9!G>lrPX=o}as;KhS zwX~(r)xZ9uAnN-D^vc%Q{Qsl7g>gigK{l1cKd-Z?qYvI;{WD#^DqHD_+PaPy^gX3; ztm}M%44Tp*?>E+ui@o#z+k33W@2|@4_Kkt!sK!S@n{X~%e#AJ5%T7KhWsDd=T{Mb_Ziq_Kd8y{D6m!_8=TS^b%72rKV0xaUaaervwjk3Bi zc!-CtjQcP92bEdZ^o*P=T>AxMxGj$0G}WgSmn=3XD?2?^o>~-}onpo9MgrM&fsu84 z2gfb~D=Vwq^rX1XR#x$8aWThG)&YiRsSPhXg>|)BCXT^qY2fE z+*DHkqnsRF8_E2C$_M%C#tEFm3iN^FWx}p^4T6R@!my)92*9%^2eUp9(HcemD_Uc5 zZ?pR;StausaI65|yj`F*%Zud1;ls>TD76i?Sp{}6%5xGegSY$n(nvEzoq<_^* zMsxv;7RH4qjfxkga^}?>F->Dh-!U~JrD-&n#DNQ^8&cdfn)82))?GTZ*rJ@Hxkm-; z&Nt6DcON?0T=V7?)-#}wSGaU|xB2*u+N=h!ZRQ>by=gufvC!zH=cHw0YH4RI3xo|k zplcc*_J$A&f5o%Sh>lIheLuLd!Mcv17X|5d@RZaS7y|J9nJ(BmlMLFh@MUkH*x zF9?=~Vujzqe+02GI z3d`!w;AEKhpP&-X=FqOd_D*I7WcuT@`Yh#c|I(aVZ(uVOdYe-y819Tou|nxc{*K6*t~I%AcyT@ppDw zfMqnmhjdJW8}E}332`~s;UhICB|Ax0N7chhQ=Gu~30JpdStn%1kA(L{qd3Sks&BZ= zrT>Ug#cvFI$(*@JZ4vG;aT0F7`j^LM4;PPK@AtUR4t9lcc#`SLfvSi&_Jdr;*Kn>;Oh@DsnY}|VV+Umx> z2~VL_h4Baq)2G6lN1QR08l9b)lrOEJo7!D;3hbt06&IZi^QE99?g>m9mYJTH1(R)K z(^K$(H`5d99#$Q?cg7c9P4nX>Er__ZK#R0&=y78vIKGyX4YNF(+{Wk)6(pek`NzdR zbHm9Z&tQ=mMdcYNcXzV*UI|~Fd`eM?cP2kQa|5GneBV#ApXMKzL|sH({sof&)mo}fH&G^nA*vLqP|z=86@7p+@$%yJdwka!z%4Ce$5jwbD{i$yf6}We*_A-23gckP zoL7-oDe8F-Og$AEtd)k5SKA)N+@$%)ORRZ0sB^XA2B-=q9BR^QmT#FDW0})hP-&(K!_I zQOf7&E*R(ET*J3#Eyb3Uwt`#e8@o&V#y^bVVCi7FY`cSHs!OVi#cVvsP%lmVvG4I5 zK6&$AdS-m^0klfS2dNd*Fp9!+baPLn!n?7#CoE>)Ort0~M<-Gfsd>Hrbw|_cu zXVd_jqC2~vzH`GX9YM(Tk&4?bhn_C`NL7^q#k^~~pAI)ze|aIGoOewcXS?M{#gOX| zM;+n-HojWze!B4K`pd%&@Eqe*n}}OiT@<&z(8>KWB>+#k>YY4dWKr|p$O8Hm9ImTP zSYv@L#(p9M=~7*9UVKDRkGrWr4Ri7chGRYyC9q`yJKzLQgcmw-XOxQO<8IyE?VzrZ zm*xGU>rE`{s126Y-5tw%1SoKYngIDSb)8v@XXS6HDvBCC`SXO=cpx#5S1MjGJ&?)a)F9X#3FP(C9{KLP7cGyzHmg|R& z);7jo&g>~K+Yjb8##F_<$C!sS6v8iZp`P;4^?!RgwHaaBKbK;1iN3~jet8W;0L8n}GxC|mzGqzCsj@D~ku z-O#lp7kM}s8dpCwOx4VlCxlgC4FJv)j-K2ZoWrp~R#$k!Q64V4EiXrU*`$7e`k>6d zabHT7w85dx%fCF0lZSeCT=jtLJ9?T7DjMmzH;eC?J?sxM>C+6Nx8zfceMihl2|N!x z&U?eERv$b<&j`E#JXRbyNCE_LEQG>w82AkElfbV4Uje=vd~@zel(TDIu#?-R8(3%sE_0Tt&j9smVfLyL@5NtTDnu`^mzpFEfQx z9?usRe*0ax-D$PZbnYf$sKG9w)8PZcklB9=Ta7y30vaI z9IX^GMk+m-fuRA+sC9jqJ(}T6SXm^)qlPjO(_)$T=1EMalWB~3VK%eLWfb&r%9xGM z$1vZnk7vf8nZ$%1pUSu#o56gkoXzaKIFGTYTEJ+(U(BTNmN7;h|6n9utC;g~Ynkm+ zH!w!KH!~5BwlSAl?_&1%+QU2>v!D4^Ue0LNRxl4djxhbpjx+wpPBOn~on^j9USLM8 zzRbM)aE&qYxy9W0?JmQ6exF$@e9VN;ea2|Kc*$(_ddnCse$Qxq_{2;K`o@^8sRjBd z@^%wV4h~c#1uDwq{SFn!}Rby(ej%=|x=b zdy~9AKIHG+zT~BmKlxc2KwjMoBy&7^ll#8~kryxfkOC%z%$y!dY;N==9ZbVXR(u4} zT+@%de9)iN8b*??eFu`PF;S#)>mZ_aV=(FYa|nqv5s}^=!$@sJG#QZ;L&g`x5|8n5 zWW}_2QZh3E=uag3Ck`i{i;~FF)DdLLz+`g4Glhh7OeIQm8hLjkjeOXgPK=5(NTB~n zQlybdcAd^7)f2Ob4wFsv-e!}U#W`fBS1utBbIJ75JhHh>J}Ft3Pv~w1#Q9(WFuj{QDXZwr7sCSy^%i+8n!o+Y-3~|H|R}5*ykXAf#%67(Z?0jZe$3W(Y z_jDonayS=57~bPNo?{r^!#Efh(_mUG8_UG9unf!_^Tl$oT%-f(LOPK~qz!38T9Aff z;acY6R6cq<=RBTc7~cE0`&4Am};-X7NdxX-$DKX}1DHul7EwoOMZ@wo)bqo_9hpDx>~c+msr7S25U3HloXh*Ji1psPY2 z!Tr4Si4nJPobzTC>Cl#;|m}fJelWhuwqk<@c(-GxP{Y za(2TW^5mH*_&=CFS9zq*)k%#07Ju?rx-sKC#*GN$7-D>Ay6}PVRGj zqwsn0O5y+4-j~2db>!>T>3xH48k&7+R#Dl+eTj{`CMFVNGG-MN6cdCV#KdfNPbS{+ z-eeLoFO%_3l9?7Y!@Y?K$z*X76FX`mDr&2!Y(lf|&@2s2v%RmHZk85u@BO{sd%ySY zlb@g8S9R*t@;`N|>YT1q75-k&ebw0^%RlkIfBBv8UoW5c?HkL#eBm$4YftAdKXK^H z^6(2cmV3WcyWIPaJt0knaPdV|*s7P%ue_vM>ie>);Ki3!%Io0J zS5yl#Ur}{^`HJcp^D8Q2+^eeAU9YOX`SYu)FE6~R;+bDnxdj|hd9OU6dMM?9>c(#m zsD^Y0RBhiKP@OG0p!$2u0aXXlsD9_6QT;wbqgu64qx$!?8dc2}jY_&5ZC{2)mGUC? z{`sv&g+^E9{hmg(=r0=8nd2JO(N8og+21uP^GS`0zLU*5t5NwBXjJKi8r72qjfz*K zQDtI}px>5iR6FlzR0<>Z3#!(rF4t;Q^=Ml!H)>RWXx6CKV*j9mHjOH>L!;Vn(x^V_ z)TqvOVNW*fDfBJc-*?R#)ib>s)r>xk>MHO8_8A%i-tE_@gxI@H1M~ooWAC9805hmj zZ2=AgWk4X>??m7=;47d35DsfpOM$0>1HjurK5!kV0eS!h_AQD476R*lt#<4NzhuW7 z;P)rs6KIO>C*TUSGb-RW6*}PmUj=Pv{);$``-R@e^jU)5^FIRgPiy;s?7sqAdob#p z{(h%z91WAOesukpBs^u5bx+ag&D!1~USa zd7x@&fbiH$`bSLMZkcGfOFYOnJICvAd#w6UGP7Y$QRu@Nu^~TnxtB%UhswaOpB}A>V->*ypMaEH}FgBh4U)&BD!DTmud=dQ1DkWZ`uv@ek?w+l_&GBN2ZNhOfO1$FS4bhVd;Tf}FO}KZp!ncm8^fX03s--u4wrMD^^K{S!`Cm3B_;|PXpX!b9I~Nu#3k)eK z3zE#g=vseO+da^1{&=C~vbnOi>dV_+QN6W3=x$e!=Tsr6*l zd>1hc6xcgs% zI~J|WALNmS6o$)>k<1KDU3Z>$O}wukbPzhRH<( z0%;AmtxRx<=Ux`k5ho%K$E>YM6-N~fd5hVuePY)eE-^#rS4XL~`_wi`mA&(=!+loS zAI;|4rHh**WmdGP!t#@w`3(NQcL9z~)EAHH;xuyY5<3`b?+Wyn`N1AGsrmJ^`mg=tD zym_|MQeIKnB_1l_ymiogwZ*l7nf;@0q`bGjtMkqsv$E)WmM5RxSADtGpVur4X(+sC zv2q0-rj8;%cF=%fWGGv_uIk#J_~xGT%9VnKqZfPKzpO}(D{rqZsqgW3mGo3autc0< z57}8(!VIo7IP&b(r+b6_&2{ZF&RDI>#g>TgC4MvNUT(LZenju#ZVvW#Tl5gWbHV$4 zdv)=1Lqq(+i_L=aSvOcsWR<0_JHD%qLo8i^eF0KoX}Bf+`huBei@APAv}=7w-I|CQ z+gFlVFTdY*VxMu5NRqed(jwKiGs3X$&rRXiLn~a}E^-z9eAObU-YE)4bgnJGSU|08(C*^?p0jdRYW+Mat6OR=1r>YG9&A&r@<=fq zeaPBgSk||)%Hk{McsIKZcl!}Rdjq$nv0r{v!DoH7CVrr^W7(~R%phA7BkPXt?=5@KD&$%oahV*9QN^4FjC!Yf{enlfjIf zHUA$UwhXI_%P5a75fm#$9omGjPVQ!OhCMQF5K*tLc+hwhslf2Bh`PZ~WNt(|up_ul=n3 zUTV@xSRO({@oaXnsnptBYx=2~Hz4l$q1f+CQCq~&3`=CAiz5D9^ZXhsB2dJwl5*uZGFE{hxm?Sv&Ok#g7|fn}Zc=M#P@3CR1~*S$sRFzOrr5 zPkDvgTiR?1tzvF>nxp(XZa2BHn(Di|J9w^D4Z^k=7EaK}4Rh_W>z#_{o1-s_TU$F_ zTK-yNY`XOf<7H6|U3afn7JpsuJJ=oATHVl9b>k-IoS~-zpQyV?#WHS8-v!h80N02s z!$oGxyt>kUk65>#NNmiHp&jnQtJ_#olfUU-eecAUoC^$UD(udVZ3v7EY-UO7+Jk!i zEI&wGIrX*OY?u1W;apZrEZfEBcAaIA`(>rSNO=8gcYmLt1s7IFG#Xi))#8yIT-or~ zk-qi8K_jPJtvNhAM3&WNnvrL)bys?ikg?Gh-e7K?j5m-$Bz6`vXSv(Q*~ zQ6U`&ziAF{i`8rE-ctOqG-jyh-}*T2ZMiShTi_-6INTOPYIQ{6!wVjdCI1 zHDsVasH;HSZt3XnEf!T8Z*qm=K~a3qK#Y*jh^0?J>W>e5zS?i)TbRDG+fx7GJzT@hzP{S(UXYE0~1(vEQNrmEmFy^qUhwMIYgohE6s zJC@0IZ}RJ&9Z+Kx7FSjpg<^xHsW8T^`BrG>ZCOartv2&Qe#ztJN{=p2CA-7w8p14W z`N$&obE#2CD=+t%Ii_~6!NE9&AJElfatjrZ{$ZiO%{t%Ma)rC&+`uJKm1KaQ7$&b0 zZV&tM4yU`e(Z5?R8)>f)dGI*_VxRsn*Jy9X6vzv;nj2k4{APH>nFqW5#Z~P=HJ-z* zCT?I)?aH=LU7EXl+XHw}-HjGjpzCa&+c(yJkNp1rTIqMC z10URxe(n{}UZ?n>Owe2s$LVJJ#5JD0tIDp}_Q9w^{668;#U*u|e$k+aF^SuU2Uup( zIv8>P(isW8zC*>Q*wvQ>ZFSe@&RY=n#8a*=14MR4Ccai?9Z)PdubgFF-X~Ld3wsBH z<6SzLI|jMAV80cQdjCo&}x8$l2~O{U7Mu=X)#a4ex(?U&P0?6(g#F zff+MOl|8i{krq~v6l z-Q;VgztqB0`Ez^=H>+HtE29cew_LxP(4q8RU1A!j_vfCiWqFHxDurc3wVq`??xcO# zmEj2bhG%yS|4_B4_}|Kh2XEaN3A)+or!p&hEB)Fy()x;k!IIOitt}npE=yxeD_zPg zW&PGKt9q{Uy<4iggwmew*t&+165`Q^PiWZu8S$R|uC2`4+JM_4(?IQTnX=t&xw-X9 znBq)N!Mu1kc3jl$2DWU71Y4zkAq}2FH*=V5SfVJ59`21%w6Ch|4h)|q>k~h~*BAE& zENJruy1|n+w}!w=L+YEGlX1t?E@ooNr|{2(0lEsZWEn z+A8!3cOMLDW^q_ye0D{CSnu#aQ2Cs1J<1i{KG!dY{cI@iUAQh*G{Ug1pOU$duWL3G zwww7ypBlfd9Vt0wy)9`rMVcGt_9-}=3jP-|UTO7kk&<{Oa8C|*q2X?j?EE>rw@EsO z-_L3_MqA_j1A|9At$`~#0`3p5@0B*X|KQnMHPYTE4j+u>&cu!;-apUeUUn7Cmi3NA zEA{NkhM~Gs5-)RiSuv-jN7>Z2ab{Cv(dm&+W}S-bF{Ee;GGYV~6f;mVa7W%=+{>1* zhMOa~)@5PrfI5-SMXv9R(8jXBplWI8w8DIFuz3G>a0iu^PVlTvl!T zAx?3_e9g74qhDIoRa9^EZF1|c^|ku*>RB#bOxg!|#Z%wfoEN%yMhF z?eE$nzQMoQDIbU^zEa&H{ELgk>w$v)p}~;~$yKp$du>OsOIM`#$ug0f)l(+3_EdL? zBAX=Ap-z{A!D?ox!!Ldyp}dVB;OQeY{rp|=*?)A+dfHcP{n@;>&|O$vDK5L#(p)Tx z%AKdtz~=mhJp}P$KjUw+x1}hC1=c>u$a2 z(apOzV~AZL~@x&N5^74*VR3!z394$)8O`6;|z{qVME0X6I-}$eboh? zs6qL0i`*iW)b%qh!vk?9In!J(bFK2TcD8W3+9d8sNu`oI}{y# z9t}ekapLZ(*6Kc14|hZ$6bicK9Tfv^W-=&ZiKG_R2;sU6nV11KzqXqfHspS;qn2;3 z?q}U<8R9hu_wlP0UEb!__JJPB)hkzJ!m<%zNOx70L>6_6)hB4T3d7v79(W78wuc?; z(f z9#+qVq4{Axjpb5d+gA64%Xi#J|4fq~M>--m#g<&OxHPoxY#)dc*REq-9^kT0^wkIy zmzI?EyF>^>Ms6!Ojpdas$_Iv-QzNl8N)O5Df8)w}yd$N2_xcVu-f&rUpYk^)q^ge7 z>}CCX=vif1ql6Kl0L=nu}yGxM4UVG^{g*)orp^ zB#nI+2Ktm@zNEeP-%A&SH^^`D>*_AL2tC*GLi@csi>&+~K2}Dy_4P|S`7GWYu|M&3 zWf+b`9_raXSW}uT|_P;mDepAI5pxebZ^uLx%<^WaAW3-TLPX} zwX7j9L{K^;msNQV_Aws92qU>ctli=UV{=fW**rMtQQ_$!Z15ZKuL7 zRbjUqIi4ahKg`%&*x~J8R*tAkL*wMEk!aBj?@||mN#G;q*O>Vp)ulIF+iUw)+~;|z z)D#xuQKCF+wU$@5*Dgwp7S}e_ob|ZIiu3DWA{q8&X{f(v==`%a5^IZyjqZT428oB5 z-a_7iKfR>UYVa>zqKVU%Q>oQFuEqa0dGu3{S66(hiTL{At$CZ~UVEqB^^v?B@6h+R ze`vT7^T@f+qg!taIrA1g-OF)dzs!5)o$tD;M3VWRn_Gs9PCm8b{Gw7#0gdOeeP3xc zZ6D?!9YfahTJ63L>x)QZ^Mdy@n#z=tCixc?H6zuUdX4sg*01UFL%-3iUm3vvq2LWI z`N{siPe01}D@OO>aJ(OT5EC0;h<;(gJY^Q9^kd&%<<8{Y>HD%$mxydZR-~k0-GIHy zaJ4cmd9N}fQ@MLj@~+hAy{S9s*ZxGQd~A1CHdYmQcwcJPi?)+fQ^46L?rDQ6x z&Oqi4+e!mUEb~d19!OU{pPFUcD=s`GW;EBod>-~xw#~vs7RSOn@)e_|GdLYCe2@I= z(fyw7KH5>XjEu5LV`uta*Y>v~bFV{!Et=H*bf$viZ#?|ycLD#D@Niu8P1%Ou=^Y`` zGj};8*kn(~;z&oM&U|6QaYsHJ#~tsI9p{awH{m2IwUgbZ)1z+sJChziX;rSUyMKg( z{@K&V47zQ|!EVRd&gqY>bD$j!F_!*_rFRApr1#!ZhrVvA`@X7;q9wv2@$ zWJ_8qs^nfwPFL>UtIW>KRPNoAoSqJ)+)j_E>AE-gGAczG`RGGfy>&Dfjyi2Coh{#V za&a1*ku#Sl!}lst^6tmFmguL)^~E?!;Fn$M5WxJvI3_zAxDB$P49T)sv5VIHl)( zVe)aAlbblX1x{{!&@m}Jfs2^$RDvBbQBf8<$RYA9f0_TQK?fNvH7oC6kXIatcr8O+KFI6kh3+-+X(2;wW!| zeDe8+oZLFM$;Z`B$Bp)V3moxjrIW*-aXOykv|nPrlY6Vveu9RM$=55vY5z*S)A2H= z^wduIPj||Hl2dv~PWxGX;1r+1$z9;&&i9yHeyx)`!O2aW+(u`&`{ekP3MaQy`bo}i zC;Q|$xhtH)zssK-f0C2^5?GUuuXl29b#iN+-1$y!qmx_7n;gH<+0C7NoH!lVI@v41 zDZGy3biR{2i9PvvoRgb4xvft2BhKYyUxOactYai~lkN5hAd;OzhT;Sk)h(ZooWfB{%|D1|0`}4l5L`hE{{0@Fe6Z z=p^uyUihAtYVZhf2%3Ie_9Ac?S_^&?_y9TwTm$H!P2lJ7!PzlrHMlnv>oP%;FnrL9 z6-o5a3EN>RlbC4%tq1o3%3S2(DMH=_qM&u)za_yY(D`5m=7*@EmEZ*66==%q z0WEYQ`1}s600V6ROHxpFXc@RB73GCCfuA{pJU}ObmtbWW&QZhzURZ$3KsET|i!cXt zK3Hx*deBPn=5k~aItjd^6842wgY$sHG(5Pg2jzt(_&QExL0ZrE5xXjQ>@HW67Itly-Knbk_*8*YCbVkY= z!jLHFMDVx3JZL@m0=AD^25kWEVliYRv>JQ@NQBM@KY&fTw?HR?hk>V{2|faQ9!P=K zg5$UhNr$F<4#P^aP5ce-O-&)zCU{9gqTT z0;@wAk_JurQUpU@hcz$}IoKx@Gt#xkT9S_c-)LHr*fe(+#CLlU6L zT!#D}8=-B5&H-;&#E|{aiQwY&|2`FXBm}7$Q!f{+zib7H>3qV`3lZ~)`L&Hin<4# z4?cVVbqrbu7HDw2pk?4U-e5=$bPl-b_YC<2+63N{gZx0N!H3>uNI4Ayj`|bq104rm z|7XPY@5n#+aljus3H%p839SQX{tdQ*R)b#zRzqvSZ|32A=p69-r;tw?9-Q_g>J|+T zUVa{FLnnZ*6)@x&v=Myd0z*zg=YwwoMbsa>{UYiLv>JS=5H^H1fXNlq6KKkfw~*(L zQAY5A3gi=73r-%wy$r1e=K^Wa`QT#gc%Ke!1Y0C5atNBZut=(mMGn*O;CUV_k`J8# zt^f*Xc<}cM7BN8U!BRgKDTkJUP5vy>15No^CE|rvgPBkkk$r+N;Mc=gBoaCY95@qc zKr6wjSuBzWod9OdW|1@+9$Xm5B5G&@c-vg$6FLd}FZZ#C4mtL+ijd*RV(}v=MyuAr>Jg5I;EUY2*`H3*Pq(@<}zgU>l1pqG7-- z$tD=@H2-|7U(4KSzsBo0o?m%lm(i+k81&>P=D~|k8v$%c(CA8lm%J_ zPX3HVzJykTbH6~|p!31fuaO5D23+zji%9ZeTd?OT7V&^qf(L*oX!1Ra{O%(10G$J7 zU4h-8W#E;-2hfS&L<8z7)!_5jU>|4$_`VxR7dip_uRtTT4%`cvph*$p2L_>Yz|Rz; z44!JiD_nnLG;(}$5CXf;@fT}OMMW#B}@CKhPQE3iB+=L=|XfG3;yLo31WE?|=+ zXdU?KGB!B|Z2-TlViP^I7TmRpO^ncFHJd~N-hW3O0G9#&&_;0j1~ySbtHB=ui=gwt z8}4V51n5NY>c`n+Bh}zHfi&nGa4w*x;lbrkut_$w5&YqkZ1Os^4m^;|COOb#JDc1O z2`+{+{82V+0-X7lu*oOTIbh8R#09Mdi$7(PR%jV`!M7+2bOLw{AovP40e=KYp!2~V-=U1q zO7QD|2Xqd&2k?d_r`TjE;18Vu{vUu6S_l69_iPeI!-IK0ut^-W46Fr~K~wGk)4W!X9;Fm7JO*Qy9a11&he5MfPg*JfMmr)0xW#9*{vdKy4MDP{^t}k>F z`1Nb3ThKY+?d7lov>L1j1Yg6pVA&l2n(|ZCC?j+d_%$F7ItTnmU=g$q>|KMhKr6xL zfYs0jutzQG8TALR1hzsaf{)iBUg&&qPCe>8G-cN&*acb!jtAa_P5@tQW0Mb{4Pdu+ zlnYu3P6qVQYVbaw09p(FRR_uoodn(ql+!TamjNRU1O6*e3#|hm2U?-?!6yL|v>tp8 z=z%tXuXLlHP!0Z75A5>|;s^f|poGo=p8_JG_23d94%!HQ!HoJ3tp&f=3;RIpzex+5nzA1e-u7fR6$N z(D~r600Xohd_VSaE`m-3HvzTKCh)%ytdano11-DKbI8NM zdgvtZ=RhK~9^3(Jg*JiBKoSkl;gGpN3UmT^4Uh(%2tEs>LmR+faXBO#S`U7k$02V* z=YU`3bI1qKTJY-v4*8P$gTEGXNC6EGzAfgET4*Eqm6;qeNW+6a0hav(b^!kftcNy$ zpNrv;jnHcF53xuWS`Xen59v~WaP@s0QV4AVf3zGn`4;hjF906U1~6B}A^y-Z@bf?z zv=;nVAP!nb{S#m}>JQ$(fIsse{ETZAT-9Q5M-^?Lvfz{B7;KzXV&`IFKkKj5&>%gCHfeoQe z;J-fx8$#>BmS4f{&}1uzya&8a!-JoA2G<%o30#o`dqL+XbI8lvIpidCVhV@61L$dZ z@Fze44Fmol6?KDZu-i`5AJ{|*o(0sx|NrGbhKn(NJQK%A_(ZZ&5XVpAskw<9Jqz!U z7!i+%;(2l0B#xS$$kH=-hr)Rc{u~yU!)6l4*iFcFi+5p*;)F>8HDAv)u#HS2!YRZ= zfpLWFHA$Q}Nu(Ag3iLb!$H+3_n3PAP`?*AvhWqLZr0<*-jEX19ama*3mODi}Q8E&B zNJ2vQi-}*Fh`2L;#5okBloI73F7e&Z8O_fb=MYGT#vd|;zpo3<P zT*zaM67pcNn5-@kk)NsP}^2`dw!4-M0 zlEsH#A#)DBOlIzXiG-xRXp4Wy5qe_$XovZm*>S8SMs2(PE0L!}Kayw>k#&tivb`5M(iT5O-hdCtR5Sw`IXAyZCLtGe7GG2plE(dK#96O1nM*VSIUw3-l#!5Gy zS4Z9S6cbNeJ2%uNNv=~J-5qprw`CPcZd^$oFJ3_&E=V97PO8WXY=^w~@O>!bGL&&C z%DBW<#($owjI{1;9?#`nbz>&n>|(o$1KG7i4W3iqnIk*b&7-Q@@6oq!x7BF zL*Y#9{xBvoEtCmn`!El)+~Q`>33hUnJ;dc;NSe}?_f=D+ zA>b0hc85iA9(Avr;C8;RXnk8bMLnn2f`w;Bq&{|C9M{K@7Y94)rgK`;g?F6iU|Of* z?R9FRrtJ%@UlZ*xRlD?DAbHN>LAE!#6RvWKZQ>8O8A5)dfRtI>r z4piH%H(m#9ZG^pT$(_cwL1Ge=$00t4*~A_1E?oBG{a6}?OSvfT8V|Cjz=bS3DIs(7 z#AMcC5eYsdB;NZ4cn;$eG1?8s6}7cfuT7DLEq`cd*ki5Kc>cBo9o%A(lZ}mTWOcEO zEGv+bg(qFnM!Asa!x9pCNQ^c^M1s ziw+`9M~=qM_z&AH55YkXwq(2gZq~C6Xb(~YNvcIko@#U@j}*I*`wJvw#Yr()lqVvw zhlM2KkN|BdA8jcQ?M1L7m*dxUj@!XGhdgn=D{#Mi*vb;?2sM^7lx2lCSy3P)i%tqi zY#tx&G!N}G7jferM;kNYZXS>OKhuZI_aO80ge2;)0P*n=AL>gQck1~5qdM~+9k=zZ zct5y(in{PiZIS@bf3)6(zz&Z4Jw!@EU;}^HV62_3c4}woy*=BVJG+2KA~4<#MqTzt zUG_po&tJ;tbmJZSIb)-M ziSbX@XHDlnG2c_!U@BYL>@sHAal6>_HDQHam)h?4NC`Gux)K zkv*=^sg4Vr`f*yeGgI8#)PJhFMehSzeFNf)9dfJr;?!UcAv5@ zpmv`)Ub5w5{@rm4cw}OW$V`>~bY*w6QO@_tM1Oj0y7Q;Ajm>|oRO2?I@#Ic%4X3)t zNAGX-l+S;*_{W|K#^dL4Cy(hJ*LL(;IZ__KR-^vg@2ZDW*^t`7VGG9@V<|gbSLbU& zueqbYaI{;_<6jy#Z4)*-wTskdAye3lhK+X$>!@eWaZhLWiFI+NE5;{JvxC!~!c)Na zJo{5XqKjT^dopHh&$GWqAEd@JTqed2b$8cA+gOA*{#;r;MZW#$GhjB(Z@K$?Hz9Fj zB+TSe!7h$+(Q-^>d*^$_HV%IR^-$N6bT>HjU@W`I_5o@E~lk5jJ=LHn<-)*Z>=>hYi-j z25Vu1HL$^IG_GyxGX-lOjWejP}DZE0ksH8!xe z71y&KE2v{Vc(RtYI}z|rPR6r!63Vs>&(_c2+4^ZbTR(+o>nHJS{RHar;}~miwe@>HIZ8Kn=c7!vIARb- zG~$Rt9J3L}EW|MraYQ1H8HghSafDCbciP);uc_kykKWI$@g-{-1!P$){mrGEFZR=hC)hyM0XT$fJWNwlmYU#g4GkjhET@eaZH=ho!Elw;mjV}uCt}qS{#W*|w<8UvG!`(0rmtY*u$F;H9ZL#~o z#fKN8&MZQmS%^Bbz*cAWO;s;k_*|FkLbm;_j^6gJjHcOTx3jH%@E9+v!!A=Xy;mI1 zOcQN9Q9H^z-MvK9j<=_6dj~fc^*3EqV038 zqxHl&&hB9GLHh3L1ZRqOPmcQK;9siu+YvX-lcPR3cw!mp@u|ieG*7Qh$m3LfG0g)_ zG<$NJMD3Y7aTIFLSMCJ1<qw}$EN5$C>jx^PqF{g>Xajkbla*?YLLJBzXP zrKRXgOVF1Vqc6RUzVsIQ(wpc@i_n+eKwo+ted#syrQh7$mpWg^*>W-){YyCdmmu^n zKImWE9q&fIm{2cm^=0fycf4L~4kVi`Lb3th(=EHVRQkqC@M(9foY;ryrXu9p+rn3eWAMcKKW z&i$8&%boP@$8oJu5ikbgm;hf~ z-Um(sML-WAD#80u;6C7KU_bCSa2)s%pf!($`F8jfm+%N5dvywl2s@KXhzoHgQta93 zhJBsg@!5!icoHvs_TfW(i68dw3?P9dh$u-g2_c~*jD(X2G6Va0&Lp$QY!XGHNeqd_ z-kx(vJef=8k@;i+Sx6R<#bgOticOO4!-i%ml0a6Fl_Y)l_DuD@z0q+oDe38i%59^Y z#!uASuj zx{do}-`yFz?Ww0`&=pKakB;hzc^mbaoVPJQN8TJBlk(>9qev;~i;l-Rv9+6U`l$EB zihb9?$@l71haJ^=ier;%^%TdaE!SwqvbIfGn9=%pmxV{Yrzy->9iAe$j$@N@i=}sM zcMh6qn8495O!l47IZQe*eMGdtsKXQM>7+9!8)VX3*xy#O?+R^yJ?7YOz57{}*&ac?{&vwqW^VfDhXJ@0GyX@@9JF9Lq9hsd2?Hq6C z1Uuhv=f~{)jGfc$oMq>i?EJc&-?H<2cGlTB&(2@i`IMc1wzI*`rFO2hbGw}#`M+oP z(d+kr+U_M}b!vKQcIqmuDvlMw(;u;~ac?DSGO|;%oW03aW?gFbD)h2g;5#uZa|hPR z$2Y8Z`E5ucMH76tq@meKfhUo(5O!no-t0A__x79A{m6@Zvs3qM!Akrq_O9KXo=O$@ z8$GgR_m1aQp+nCmWPr5+gH5bsj@HdNTMx1~rY1jsmp3`hwk^@0i1pDkv-Z&S&TWyU zW)U7|b9VZQl$5pmGHi?bZ%N*so=W)CcU7`F8=C>F%7g*-XA@WIw=pyGxqWI!V3;QB zMSK%YkJz^Ycr@dM-5Ds~G0r2Y*^g$RzfVa|O+#f( znUT65LX7AgJ9E`5Nj<41U`ue@Qw%LM{Q)C-j-i%Cq>CD)A zGh}@aIlyegE(Fh!P}VkkyysZk_GQ@owCv>VnbbK`9fV@SpWY5ecPp1sfS z$jWx4~WQlmYboZZQe-N$HJ|TC9yyx@Z!vc@l>Om42zRdwCk47GiJG$s-!qN3d6OV2^symT)BLBq66Z#Vc zCk!WwPZ&=$o-m!ToFJbHK9zln6Lfgb3Q9V*|CsjJp<{=S>5ko0EGuSC^ZXr_S4-r_DQ*my>rmPnU<22-j97ek70N?n{T0l7@lsdZXij!vh`*XeZzol$4fkt4Dr$|G?{ z5{@JuNjjoFqD84`N%ThyM~o;v$(7|QbK`OoauaitP%n9=K+M_whcRuoLK(0;5vFw=gSlqFMV~NL-j;Ueu99TU6m>$+P9y1*y$7RQr z$K#GC98Wx+bXb=SG8#HkR04+e9h9WQrYbp=}PFizj$5g7T6mT5OcT))A_S z(h32*xs~nVV5XJI%*gzBexox!QyrX+TC_6Un*a&mOG12!pf%!4?zjSKKA$hZ|KOm{x0$Q_Rq5Y9 z|Fe?U=Z$^-Jm1r!U%GU&Kl;+8vlrcVSLu>F7ys3rH~)2M-OYF0vADkU`?r?f*>Fec zZFiJf*IZZn*Nbntb^N*Ko*l|oJu~9--SX4Xr!{oYH~!1#d8GuIJU+KHpOp za1BbfnctUReV^mOEsuFV9^`L za&!I7q*V#58?$-VavkwkHp{%I16j%zV<{TW?=n=ksU-jdXne`QjQNs#co)OXM}{%y>I(num%f4S{^ z`<22R-+#!P%6-PzD&KQyS{r=BR^5{G%3Hmh4QVIuT5jY0IY!gjev4IN?^De7$TML z_nxz`nN*{xTw3q|iK-r5@U1=#a>F~7gHB!>4~b;MQrjK#;+JxKwtMa~T-x$}NxF0; zz2m3kcE>#Iyf`&w%3eb#o)Eu)I`)Vp*A5VXFUv=T}CZ<3~V*zr&D?eLL%F0h@m zr0btb!e9qUcYjPX=~98VE$@S)0y{0Yt~%=jlvfoV?AXZk4i$q|uZ< zIXIZPVQ_G8p)nR21W(wBJ!;JCW&ve>sMJ==LKUjZR=0;H+NwTOW~*1C>XuMdRBdm# z*~z=%V<>bKD9fNo`pJ5~uUe(mURxbYC+`uos~twuKhaqHcy9fV68q}^S{-c5JM^F* zbv8I?JJN(B)jG6eJG2sYs2!;7R%5KsojMrr_upNdzK)vX$Ni@9(6)vR=`l;e&Pma#Rp zuzZ(!TXHQu%kx!{+HWk(n^U^pG&UuN6Tbf5C8s60fgEJQusoP!s}Ib1=3H}*IeXsR z>nzo3Y}%_Et82C0K;lcnVDX-V>9V-r7fI}_R{M>_Y7!%fWMg%#uBTePTsau2{J1*x zeh&B(DH2nM8pj%ASCY$Txh11ar!t=O$NcYxJ7RVFrm6{l*N`^j+x^w?9RdFvk?{70 zor!&om&JP#J+@o2LDcH7ymE?iR1qU88L-3M4F_%a)^Af;m%DHtmAQ;eCx&5jB#^;9mKf!b&zKD9)*wkXLkGe&xDwC)9!F0Z* z;W<os@geecK}lSSnW^Owh4@P|1YVCHPu zQ~wX=!)Fv&WH~>oh&n$mbzTT{L!y`(h^bE@NuQ}ci`5;CsUs2fAuMOC{i%NaYUSX< zX4BXj2=P-N%0VKHJ7NT*p>Z($cK-hmKDhj=c3pS1TQU|t`a2nKWXPpMM~vE}9d8YU z4<0dU+LvVVMBpy_aLV6D|g6#U4KZ zz*!!?Q#Qj}uqJq?%(C}kshnyaV&MY~4+|!vxwnM!1(zaFj5P~9To#{>%QNg34gOFh)R8uj?_LOr1qQW}TnzUQm{QesuUTrR`2q==ev4F#+4Vkr`kGz0CWH~} zJ7U4^zgh>ob91H3O|n76YUoJEYXF8)7+hLeREYNW`w?;xKZ zoAUJarSjxVEv-M`=P^j)`T7hG#R+L^vaBX=C{`~?gFdi zmCPl1C|YGSU88SrY?01v^pXqiJ7Ual=Y8G{5BYtTF@EPgqYzf6F|Snsp?4KS;P1jJ z(PHqkT#-x_o)E0TWW0pBw1}#9s!CPHD0>Ut~=)@2Deb$*BGnZlhrRrMZc)m7${a~ zT-OJd|D{zsM9bK9ANTF>t@QcOV2@)qj%zrZJSYRXXM~yR^6)@IQdeijQ~pT!-G+zN zE|p2_RIfFBQN)j(J3nMsBjzLFKQzuUotgQW4cJ@^x7nsq_9_!CjgWNy3R^V!$ml7Bk@Z9UfqdhX>f=;Q_XIcz`V)9$<@y2iW4_0k(K}fKi_eFniTD8RTck zgtAontsi5<-U9$xd(E6zt@e24U{=#$m71kaZG{K{5aHt@PN=Bz6pN)8lRRrNDwce( zx^BC%>22g7V$hm)vb+UDXVYu(fqY}_P64HEA8M=(0ZS>0%?}mxAcB@T-BE4}}_cz-@u z*iIxBM7g}(bY~7$?yEdnIT&@9H3t?pQ@_u>PTL0}la28`##MXWxqf4Ow{g{BcOEw# z##I9%aHHY=h7OcwJe_NWyH}j=2ELT)$j9Sqjfs^)`}L z)I{4^$R3}i4qNJ=lw8S^C(Q!Si~AtgPc8l{9@3`hNh)^zi} zusG)LK(^#Z{T=A(h8M+#5#?PSKGLvBCS^C=glzWoyE(5iY0izQm&IJuBWTq}qOuY@ zqnK(31t$+BMXz>qtM%zjZWu!yTr9>^57$@%d9dQ?P!;#ax~9+x`Wb&A)X$^eQ@sng zmAf^eC6edahjbo@E3Q8osijH(@I7j ztS8N&iQ*?^vYl*ef-7mCKWPme4oD?^W z>X+=qAbphz>tk5Y&=^O#PA*6WrhE+>|dkQ?vvV|^*RRZ(tAs# zQ|Yl?C%ZmqLS_E^3qD`f(d~XCp}32xM|GYN2(4BpDhGSdY4(aWCF`$n9RMWNtqyg5*45)biq0C{DpP2wvwpXFK@%pbekY`s)*)Ww*QBps9s?Wnu3|~NT^r} zWC@<@aWAt8V{6G&@F#2)^S3foA8HDHg9n&cS{gJG0etut4N8_Q)uC31rwHz+CJ&=c zGsq?4Nx-q|9@2xuBD)8!S%uv(bBY^Cs#NDO>J~EO7!S34*&7b4AJVum5?8T6A;sjq zJL|+$H|nF;JOhjQ8xnnHc~W&4n^JT^60^bxZSgLGr8L~4S~gcnHe*Ide4xsh(Gu^^ z1;HwX*YFri0jd7n_`9R<$&^fg?mRM7Ey@R@kNaMg{`81#Di;C(?&<`t)^Yx*B75(v7aIuorn zT;+#zPgQBE7E5U>QnICb&dX}Bp4g`Y%5gF7qCqlOpTMAwq4TRo-cA-I>0S3|P@m>qM~F zZfx-~JXcCCQ|&$yF)mLbzw+K^{bi^sMD;;x?IBD2;8?S~)ik!GxRY)N!CFM^E>CR+ zP?4{~s48`ZcVl+Fr|%^f)DcjyA@(sFs7+$KZf!SjYu)z;M%)^W1W+o)DJ%s9B|;QN zucXS~u(vJm#FtXVjW$R8v zV5(;nS=!xIf;oJAu#XIJ@cumX9wx$J>?ug|92Z`_&&70bm6W%~)ba9;@^&)%OU2D{ zIA%nD%l{jRou&$e=!Ud~svYE3YL-qJiMfTsOxW{qi7-_S*O+=!vITaW#2|Sd*eF<&msQDJElsIoA?$=W{FbvIR6EvOv()!-Si>$S)_ zU6NYcd8=9l3YroVerh1GNA!OVtm$D!Qe`?*I3-{-U67}<1dq+-*CJ2fh!B8AaGSMLT68er{_51D~0ras41uujG3%6fH>HdR zzDn+F2V`EFkatOW*WOs0P1gp)sV-R_fr^AeuX{by?kt%B*R+sOEBLQX@l#kJ)GNdT zNT=y=!w%2h5ZggUIsPA`>C#+b$tU!9(G!s%3E8Fv0b_yxG!Q)dGBC=Rr`tGHdph$P z)WiSFU>3#5i2VeP_kwEXD3lb9wc zhM15#=1%^p(e#(7Aj_TRH#_@97RyM=JVW)ezCjDR3slQ}vT`Rb!1%}hA^J~otsHFs zXkEuum^l|j!mk%NFfeXx5c{-dTdyClT zO)?#*u4~tFh}zC!T3(KSyG6u~nL02w(zK_3F*zH55M|g2nulx;JDvd~=*Mz}&W%?D zq1u`2*#O$wufuow>!NFoCYf2-#@0PHZ$*C5)Y(!&wz=(Ib05>(#|@j96pm{Af~AtC z=)Izky_ zNs;*!j&BwTCh|n%;~jw8%!5xI>gs_}E^RfMIz=Gk-nK{kNY;d2plbNAN#Cq$5jV-v9V_b#WsZK@JJ??j^1^@~ zYWPpX$bo;muvNJ7Xp} zn5ryp3N6Uqd6O1g601o#-6he?gkEiD3KgFm8WmF~qw3|Ybo{$p_}Lnz8)>>|sy9|# zp7mES4C~Kkv2UP0M;%ZXip3RvXIXi+hNwE)`1X+6(d*giAI7L4J}#8syG_pr7+Ipu z;Jl}G<=PxHnq)$5viu4o$ZO@-lhTFF?yQ5)N%qVOXmiHXu)RJy{sAUh#Svz%C;izu z0Jtipi}GhYIEGi5TYk?VXLXcnHJ@b_m)SWGai?Ifd0HrS(v+dROd$5L8~4$b^n?mEjZv0VpX{3_w}_8hW3eD)pUd6=My{{7M9@H;-Ud z0MB!Bvo9$|M)1l?ydW5xCd+r`rTd00x5Tugnokp*l!iio`kQnh|Wh38Wt=+x!`!nj>e4j$6% zY=a6hVdalov1;W{?6!&APkKZ*VXXNQCeAQ~O<1ky_cl@cf|f<#G@6xBEcuG;l)|J) zeaKDEfhjDoQCEX9Xu4T%&nk&_ag(%g?c+kr=)FTKb$4YWw4K5*7kVRh3-Nf=@VX;~uy>!RPr#uPa&@?1I@Q^y2Xf`6fdphNzI zj4S0zHt8)BNctgtw5eT?HH1k4MX)x~_7;qZLA^jPa#(bE323ne9TO$LKu5(IbEjiR zVCkkbMXCf3OUdb3(i%NdRfQn+6po6Stzjs8tc6SBn5eQ;*L$OnYuKqvYr7-I7|z4y zY2s!*{drW+5?B~85?#C(KgFMMQHcI|phu=nk7!96!2>$pavs$Wl_GyTPx?O=zle5} zbfs~OP-b*%`qf@ag@3o~9igE(e^9CQ)5P+T2Mf6RxklZ~{{ANtVWgJ{^!my%OAVMR ztvw`aAC*xhrcFsndKFcg;m=mQHRMw1`p_QI9`(1d(&MRSEZ3}g`&SqMB08ldv2j_; z7IU_7BB+xz88c7o@u}whPE{xZd zLI=xSu#|_j#~Aw0@h?+W;S|-{b-cVgvw=KzoyP^N$J{SoFJVLAnJIh*H%^o$_=~f? zr`}DxZFgDMf}~Epb>W_ddJf;SGfh( z4h_YrZqcwlLhwj6>91QJ%6fP}2?AI*cSGZFXbhUDwFmc$F|Lw*9d4j%8Y_LKe^(^j zG1axM&86mRmtTO-$|_HqeWVrTTj(VJ9-)S`GYq6k4nZ@lsitcXJk2`PU}hI$!4P{C zp`KSFYbFDzAoy=+#19EVOLfC=dUWDUXk)CO*}#zKlM;gbE(C;!GMNN}r;Px}J1svf zBP&IzRED@LNFhX-Aq#Hwp!Q@VqlfEAG4w}7 z!0Ds^;tZpIm~TY8hzK~7L|P}z zC7_FT5pYFvqFn@3!3dYrMBk81l!=4z?vU$26phGCsY=+9nglT;g{+59mh$NzOWmyc zYKcijB7OyBRkU^*o~W!_fXKQdkc?-z97I}9JRM&Ley7)Ogw&&3Gkam1A$n_rbZBIp z>B~sBO!4{py3ce_xR%d9G%TQk=>5KKZUoFsOt|zkdt}6Ll^J&4|3NU@W?vQKb>7h- zy9D#((tVkKLa4*fs@uOW-h+2J^P58q`)0S`C2IDi1H^e-ES?RSfo zr*k0Fr^WmuTEHQ$jkSg#Y}BwT0{L1nWB{nn5Hpw3aPng33mf;_40%<0r49vRCZBZ@_a z)<`F#(X<%cX2$a~(tgW)2bM|~&6m~svi6LFR^_HGokL3IMXE~o-{8Fy{gzon%82-^ z)8qeiV6W=CP8}gCWIgTM@#Pc!wwgn9&x(epY-dWTr6Q#l?IDsU>O_iJOOFMOhf-=? z3G*f6*`1a%2l13Bm-{Mj+Krm zSwWIr*GBI9s3)H%!_Cd7w{?+HfE7rDc+t8i1vI-Y(hT^%w!|`?G*J>!?j+4t>ki6- zKc@c01n*Y6ldHhXOo=PPI#7}I@lQbCmLS<#;i>i$1`&BeJu{zYr=ir@vQgKOD3fQ6 zhbxwsMpa@a&l0D!<#ul9R&JyUK*dL^4x*WjO*-%Ji+(`JyaAJD`MjHcUA%(CY723If&9GV7Ze1H%uR^yu< zm&P4eQvq4Il!aO+Asj+Z!Gx^VLhi>&q3V@Ga|VhC9kjG|H1$PjFLKriz0A(zp5r*S zfMwbt9cy`j%B**z)KA$O%2YWKv5uKE%qfmKuEsztC=!1rc4Sn|S*@*JOKp(oXoQ5O zKW+$aS5lAsks0e+0+)w9%f9`8zc9j}Wv zU9{A?Khv{ip6fh|gVVZr$-B}gU6?AH>4z{Su{700N?NOn3ISZWakcdYBxhtjnPw6$ zMc5zl6aK$$jz1|Jjg8K$xMuS}xS@==Af&04yS%A#rc1k= zG>MVtt^{pu5&0zyD$;*NtSS7=MjmjKsK^tISFJiGcD1=#eq~BvT+<%c!!dWENf-n^ z&V+P@8i|`A{sS_~sLjp6Hoc}Df4d!9sbVWFM~gvGCrt}ZWV-^|L?XyAZDF7qTm4q~ zVV=S*#+qqlf)`{wGK;D|&(Ro=;^TOuo{<-sOS$#*Co9Ewl6`VE`}g2GsTz#s8=H1d zimhHAjn<|5I&)(%ogOsP@%c-yqy7|`MS9u(4m)?9uxqtjuo_v0Ay$(k5>Tf4OhSg2 z+uv)8ERwR`uy&VF#2WnyI-M9|8Q=Az7|YY$z~5wtFC8r-&k$3?kg)rf3X+_4!tG~_ zQ(@ypPHcg&wH^!@#N?OJ=Z$hbM5$Y|v>wbdidpbkAR}4^_VSh40iES|F_=r?_&+^} zDUEjkE>BneR*&DzmoXxS<~xv8dg-y3>a-2Z<1MvLq(+w0GB2QlJ$l%6T9g8HDetq? zKp@P6af6T;ZtSwk4_aZI>ah;nwdS4lgm2d01l`2Gh^KQPpBdh@>=Ta{vK3zC2L3`O zi*@a`8@(oHVY9JS;>T^`h>T6RirSWa0ymVw)@5c$+b zgJ%7gjqj;DB(eOTk3tp+y;OqCa5M;dWL?8UO;)a>+8AJ$l;17^sKoU$#*a*8zW=r9 zPSMScKhmMaG57jFwfmC-39x29kuQk^0M}m}kh}ceJUe{2ej3%V%Fz;F84r82_8clQ zYC6PuKnt}kEWF90oY7FgQz!qd-4$K{uY}VLTciFXY_$jV5Lx6X`ZgQD7*LJV0;^sOGMy-i(FQn->4i+)OB}OUA_`=}r zAXO~key){gh6qaYs=eA}$ByHm+xKv7< zl($RrMVIPyqXyxumtJk!s(p$7Me;`IZcBj|`Cq`s44q%<;!VvqsxJ%_%Knb(@L?nI zEy!(!-&wu_i#R5Np~O=U<%pQTeNi`XvF(3T4P@mLRr`<^0tx&U)D7gjbmO8p zWZS?nB)f+m@_EC?Lk$sc3q^Dh{ob|WpY*8X$0Pe>=^EOLQS!=xFqeTE6b zy)zkiFe==`G~jXS!Dx6?E@Ir9?p3IO7n4ViS%2~d#H!>w^cU)i?Jx_O#TlQCdjHG6OTL!7?H>GF#*GK9yQj;e!9=?1w(!hBiYn**>pk7 z?*p#P-;!VEzjHR1eOZV%a?@Kn8pQ{^50UeXXIRWBwwc#jiWqcjawi$Nz1u5 z-*(q&<*L?Al(+bkJbU69d5YDwkY2%EwR*MMo&EPSS)Gsi z*$elRK($&%c%=J$AV}d=ErC*&;8hXHlVzzlKkN#CD|R^^pv(#M7NC|W2AQ>Fy+toIz-f*0l$tx7bs$L&#j?p8QQnhNg`}WBWplX;0f*~fVRe{)w`QdfCl@B3$ zkZHekJ-)OeFwLF(ofT)tmlpesra5^&-w!nq#eyFcvqqVEtdz`_Go{1|n+3x9q5JXj z8Z*oSl_=wt2e^zAKrPDdPuzddRvqcYbkR!~gYvMHhioU^`Jn}jEH)${(N67XoGaNu zfbHV?lkG!loh^X&2aE^rrk@hQa5Gm%!?}rDyu8(QIHjMI&PB6w63fb&RZK8M%q?m% z!yS#6MOBCD9MYFsUP^SaXk*Wiw!*1p?C(oqbnT6VUmBu?coIu7UtlFy;K*Vmz3Ucc z-dm(epq&$Rri6^Oo3%J$lKi9~jj(ykxwWhz%iw58td+F!Yoc!Mu$`7+Hds06fdC#qmdTfmX(8V;C~mKPZA>)hM9 z&j|mjL^HpZdQ6zc*m|M3cqF-_tH*Q$XQ{+Sojxt6oD`Pl6OZ%Uc)h7k*y@?p+}r9M z3`lOAXXI6cZQ2{844d2k&o;T3ZqZm1*_Jw1WQ9-SRZHpp7KMR_SM0N$Y#qmk;P@SO zw{EiRb;_{wjBRNJKgVdL%Cvnq6S*)wcu?<+avFkO)0U&bkIFKCLr|lsZbpf*b;5MP z%7(GeR=sL3L94C^cZh z7wgNMAeyMGTJ@_bdXo{`WuSY7$F0HvSlf%p=}ajg`k06cbm19H@rQPgm`pFF8N#(~ zhgrcaVv}POuPT+uSiyYbg_V2Uf(sa);T8?@gPNirnMi2=kw`cNHtY1jqEVqNRY@I8 z@-_ThOQv{(*e>dNkJ)+rm|u0*m#f3-pq}?0V`IaN*52YFerHWb<|B1`+5*Il5cIlZ zh1b@hNVsK1(n*LcpsAUh^QfU_Mi;=3EB#=opWO9pc&r=OT!rQgKPJ$v=y5zeVkMl0y$Wdr^IFhW#XV}*lP~GF2o|s%Eo7u$OfHaDQJK-8 z0~3OEo`doX8fCN<3HB*1)nu{Fi{kVV+|)9h;${Wz;KxL9{1+`4Z0kj*%`8N~lrF$q z`*$p;O?3mKo$6vwx(PZ?b*$PA%x12xb_sZAa>PF_z=!>+Ebxg)Q;*re8~L+o|vAEj3p@$<;B(slD!h%og?=L+e>2tK!& zO4MQYT!$7!-6x+qIXKw2*LF8N#e3w93`b2@JN0gkT35p(lvQpSH#&rdF1Bg8AiZo$ ztR`LV#E6pW$6QMFs7s-x*S4vCFE8?Z(yrcocg)kKn+I_<3fp)FSfZ37+BO@q%RDjR z)sm-mm{tWRr1L5vqp~vjTrrJD)u%^(DU)52vP5^Zw-)ADuhS+Ms%HcPwlg7EnQSIB zMHR8d6$|OxK2&bQC&D)Ip9tc|qCD8o7d;E1*TR%OV1u7{|3*_q$M_n47bQluOq_?( zFy}hZtl*4DFUqmwFI_Ru=Ub(HvOavfo8?EPj2W)b42RI#%TS@j^=_8@M%nA^!?WB1 z9}&NLvqY01(>H~X9W6M6P3wd(Jm)h&vBHz#cKxD;iAnaQq+<4UG!QMy1oB2^FTA`7 zOa9a*Y2$&7GzY8`H4-!d#Yw;ukuQj5F(lUskq;Y%37=$giwe_gh)2Z^WRs>&Ypj1> zpuR%O0c4GI3DS8NjSea~-{Sm+*d^Jhy$%c=FvEWHzO*%GZvNOfPPMW|L$`s8A zcM>-STb>P1&6Lu>D`JgDTOJV_RXVARyNOy%xW5pdWltM%4kA<1mmEZDY*|2EL=ikd zp&_B@tXoQ=XUavLDv~8r{8N9m8*M&8`^EAoQHeug43PaoIu{JEIrkM@47Eav;AlxI zI*WoJqLV01nXtlZGCeL_bC!T37-7XiI3*AfCfpjj^8aYbP8w2{jK z&#W~bypkbpDeO)y|1uZh)G>|myN#c2J*kCO&2MS$Wu(YWZ!$-}e&1o!n8kMe@k!%> zX0Q+Mu>)7M#WRbjws#z3%64Yhj4qk<>aDZ21#*K&C0HO_!Qdz?(4lFQ)`@^z_M)A; zWeGQ)wCTk+5HvjYlr9=}yiHhhSvoTgkf5hDWV?x{SeHXgL>*HIRwknZnJ^?C&^%iD zszi|N>7Q~o6ZLw9@c5D@SWD^^WnNtJZmpQYHpng1nXsQ)bPs}sIs#fdK7dEiE`2Fv zH(x3cAGoODH9!)Snwveb)RL~9g=U!`ng!Vol*3xkov8D9)0Dkwa~dGKo5nJZw3jHW7c0J6vxr4+jysU6F5MTL4AU4WQdKyVh8JAfo3z;}mTGJE1i*CI6 zBsTX*iTSx9m%3IDxy(Pq1FV3i(mpA7Er5H%F;mIyb{*H!MrGbRhj;%@ekf)uQ%#W3B*(&H|pMZ`dp8=*#N_anC9?{D_$mm^hE+- zZlO!!-4XY^wRSdxvzhr$u_!=9pySG&GbJB^QpO^sr%3%AV&P2!x%0Qyw7kNZQo(N5rtibGZHcFO=YiXsPvp^i;p6pX%qf`nG#=Dtn7IEbCu>{c z_mpNR`nn#IJLO7kxZlfs^{uOxmma5ud!A@8pYT~6Uk&6(QQ;C`Nh^6F)#eiWHEMhMVoYqC~M9efhfwf=JVMN zvdh}Cdp5o(j1ZHe{SJ4drDt8G#scc{Q_0BTD-F`Roz_70bMuI%&nKybfAHhcm? z7|WSfLdz02InmL0*M_<*N3gzu`%4cq+c_`&!8I@o^Uk^|oIoRZuO&>pu(4%EX~db9 zFWt4>M>J=U5S_6fe@u>q#*cBWLcbi9 z5+)%0=R#a5?&wO|bU=ZwsyrD9?`sHsL?>IHYlpc?iAd4OW9CT+KSe#6N0k0R8K?wxFf8* z90C(^SxvRwb1%bIv)5n4?i40vIfRG$r%WvI*O&cD!cXaav9zK#lyXT|mk5LCd!Ugw zss(g6-jHn=FU|rIsr8jva*~N|*&FG!KgGgB3K^vBYS&8moS@#2>z5HmNWuBWe-ssZ z_A8aHc-I?Spl&Xxn+Ctkrf$@aFMfC|dwbp=;%@g`1e!BG;>7Z){Y+QdxBl`pp(eN! zr`lI^@=!2E2ck;QnJ&=D9;1>CuG}oifA}Wd$x22Rz>yy{Br|A%#_@Wo2Z=}&^_ZX? z#uA2!Ide*5&W82mbFEppPx?u8v?ho;k4ckiOE?MyF)Jp>jc@I{;_bkWJ*R8X|M9ao#MCK^Go z($&Mp4bnMkvBHS9hEuAIk;E+Vm=#VN?t=vVN1UQxOQ_Y_`((SQI$^1nihX9^TfKPv zd=dW#SPFiYj?>G>o8gjQHBNMP)%;>IKp*1bAZh}CHAS3 zry6VHTLjpg#&6LB>23T;d1eio!yghlL8D6Scj;h`H{8N@N#o^q-JwiC2A!AD!;`RV zwG-@RM&n9xTKULg}E8nPDmt0RqSi*5k|B&qf5s4?$pji(ubxti6ectlVdqevH!L z)P#@2g#T>VZl*rSb!HT!4y^J6gdVKsrTmSEABwuMN9CNKrQS$qop*_|K`6@IB5+v4 zt*rho;NBY=^NIX*HmsB^dhK-1<55{Px6m;h$|zf7-8oN4k(u&@wn;3Nyt{M=1iEK4 zPi%7&_4Cu2*ua{*JX0mBxC9=V9O4SoaXmKmi=W9e6VFR;V)GGN%c&x^#IvP{;>o&* z^4Z2hNYWE5WHEorVx0A!s5_Uv6E{9;IWtPYe7AI~PTM`Hch3U#LR&y>=3rB=0k2R@EJz_VCmjHXwx%SSD0&+8Fe4{1#{~P5-NT{; zmkdwgF({?mzP13SSWgOC>#ebAPsdR2?6@iK&1x+B>)J`s*X?;dTkPC9&4L-`bqhqkHT?o6 z95SyT(sg8qSHn%@^EcGQx4cM=zQ$`HrQFey27O&rcR-qBYJTqOYQJwPp2cdF;t>m_ z1$RzOV3l?#=v^w>TNB>Z(BpB2XHVl37C54Cn9|%4mDOnuzSIoEY8NNQ%Fy?kl%bdY zPLB}J8#bDf@x}>;`J4e!Ons08K~pm(#2Y6X+)TrVb(S+XzuFN>%$Q)QX%iVlGi_(4 zEhEx)=2~2;oVoHe(V07$ONBGHic6VORbg`)7)+Wje_NE8kvIvH%Zd|bX?`SpVny7U zHUYmHa3%IRuFM)}z?n7~Z^_-0)!YecT9q@6hH2NXKSxrl)ZB?`hP`r&(2FA!su@0r z1y7rZ0{IJk56<=Z9Ozk@9nkbY2$KB!a65_b5_cJMH*RhW$Zw(N2n)Zt>^;l5gPHE! zVoo-aMdeuCXR=F}F3JG*B=iQEoU_uoljR`h`uN?e{q44Yx1H<78?yc_le0Eqa-SR% z-IJ22jkfIQmQ#(yZ`#rDCTbG<^p91|hF9v2`j7pQ>Y0!JSL$zH_NIgjH{B;>b*7bK ziUm23R80%n?ljh7hNP=AExY(Khvld&gSsM8(|7Ncej-#&5YjeH3?n%L#GM`N32VW+ znGn9gWyNN^vBFnBs%@I=zVN959jw{cScHFYBK2hMV$YJdaWk`tXZQ(`I>DKVJhKCK z-7ek7Tw$-M@KqIjC7WpU6p}lkKXmtkFN8HnL;T55D#r@e?1e2MER=2q~1IG=6oN2@LHf)+bhPmOH3!+}scF_bHAzH(T z()wReFzwJ$v{=(GWC!205WQLe)GGx;AVRDV&kKa9k>y{pF>FSz@S%9=z)T5A;G~!f zi*te#?#i5XLO@82KFk{Qo=(NvF7=}vYM%sCU!-Zwsm!yWM~@g|?Q#5ij2am(2zY_O z8#NIp;AhOR{Z+hP0mjP5aM#)w$B=rqDrof3@U66{e?YB>IJk!lf+ zQ}o)13Rf<#1zvGxh3 zxW;!HqE;}PU#}6*EMUc|)6qJ#uh45LuWUT!dgnEkfG}XkE_={PHIn2o6 zD2iR^BHiI|3&%G<&~U&5Y=_o*{>%@lbQp@~IB`LHnUpv0-|&0LA#-JMF?oIzpY}4T z4Wg8c#5q8mIn4ej)=XAois)tN-yl*lO{^vlkI9>;3P@+t@AX}2e^>ekWKnWd(lne*Bf$hNPX8#|?|BH87jaww zW8xs=;mT)CI{RIKfyf5;=4P3mN&7D_hmvZP?rpDpQ@~y|@P)6T_*}gknaEu^HeN?* zS8?2|NQwnAaakm?w9IJw9#u6`ri3y^(@hBK75A zNt5XRWyI#iIVqmt>n7ey?iUz^ScQ~q{Qjzet@`N~`b~=ah8JuH(AYQP=@|*~k?nrY ztO<(s+}{7OYGABxE>|~Q%6)?xSwfjukNRw8?SEZ0@Ed6%@qG;#Gtg5tqwoKfN}Q?L zvkmVpQXFue`8GLE`NKXB%}=DvtdKyHDJ1X6#%0IN^}J^?JZVb4;SxmXQzl#5GQSf} zMZb^CO&Bu9r*Xe1KV?dNDRPa>L49k_K2_g?C&804OUU_fw!Y89x0gJ$Z)*T$fN(Sm zL2$M++KX6YaN=s|kQEMbQ4&UrqiU)&#J{xa}fOHfWP!rY*nS0ttLG$+^y~^ zPh_1Vhr$gpt9w_?(&&#K09 z0^?n)KI<9J^#Y2o$`5KZ0a1M<> zEg00)B8Jj48lR#>dOtb!UIbU~Z%;jAh5C9=osaF#Vl9=!YyIqwWdzy~)$> zFNgHlv`(NMX!3{G-?EwY!iuENQ*X?zJbInl?Ou&S_^5(tnpG)Cx`OyWY}0T{mGSc( zeZRf*V0l}^b{Jh0f#g+T|_Fmdq{)&5zzcW)G zaOaO6#M?`JMTgp3&M5(`7Y5GeVH$?>whCf;TASVIcQJqvZ0S9GI)N7D;NY^(G@kg? z0tVq29Am_^TuvwIz2AdiPv&0UX?b#b{IYsozQ{m7CdLPF_Q!&Df?-$wtCk8peD^)3J8RIY+=Ux1$Jnw5>*qg8snL0 zoqt0wt?iR${T-3;i>8Vc828@@UY&-gog1IxI7B&|AXerSJ)B!~f4U3LVAQ!)ju5u% zx|pY{H!a6{IAA&B9%i+~_(iJkP4iMYK>*k2U97{*e)t6awVcb%cm~!wz(gs1=RvpV zqKNyW9Oh)@yDE2Sa&lBnsCRUBeN52_6A!^IEYvA9J>`m``=_Xq`^)#5;g|2>bV*qT z*~U6w(Zg2wx5nDtLdbF=t#@Z`1$MV+11Lh%?o59ffZga9{gr#d?XYK6#Zk?i?JDJ( zei$s^*82wCl8a&DE(sM;7pueNyClp5o`p$Gr0W^q&LFV%`CtCazx<1!1$-ynyZq{% zcv5JY?AzaY0P&RmB?H(k`X;MD?)1+%$sTjk*tE-?_1SHEq$uBq02oA}*|*oabWeGQ zYMJ5|jH*1^d91#e!RIca&>_AAU~D=V|0MUeqq@-HyDtpC(#X<=>90I0`8$s_>^>tIk{`YXUeaCeX$b8n_)3wY-1;77;sNv98&@3tztqHa|{ z6{q_!6Ef$?Yc-$+QbhG+=^;mdGAb2O*;um>`ks#w*v3!aM&d`^zsk4Z6Z1FHq9_0P zo{&dW&HlZ)rs{BJo`9G*Lo8Kw!t%G|>fj;vYTdJ6pZKW?p=863%mY+uJGXAmG@+=x z-9ydIBCjmREOpG{=SykDd`<)))>u30fOWj`UGDUQW)}>Q@^ik~rgl@cr!r$XO~V+y zi*#YWhW*SgMc7fP{*(qaR+pNqj`@5mefQjM5syr4pHrKU8PUs-PFhZF31bv}{4Sq- zNLp$ZYm}4-@4E}{e5H(Y_;4BrxZ#nlE#Z9X)c$-+nd7X{9PHHBahWVQa>T|eHnsa zm0ar2XA|1lq=|4scytbM#FVNYr_4~Bsa2XZnaKkXEiXNM(ibJCY|HMQgRBafWvo#+ zX2|S2#Ni`~{f`!VD<5vL2xOqR@$4SP&MwA9AE$yOM}7~-CaRq-s7{L@T0-N65>KnZPGp2c**7KfX2gE|>j=9?ViC0>G>6n7KvnH91|9ra z>z(JC9L`mqil~_(!G@|TjS^D*I;@EFiw}PgY#2W3+v(Ldi`r@_1Y37d9Sa4jL->7{ z@hnjsOs@RpU78`oyYI}H<-0kG0kITOwV{ZbRhqu*v?fl~Pgey_*;WzKPD9WdI}(YMC=N)OQGT3s&O%Z`IPb=c11-|E^14^Kb8a zjSmu7Zp5z+qzfSxxzs><6x^wfb$u{8&4Tugf6}7T_Ifp3_MbF%R2qBTzoYMU%TI{s zG`~8WepJwXu=gLa^JJuOyFR-=aWjv;5hwV2pZ6f@i0=#7YK=aHFUrcv63UVKLTDxV zWjl+vm?C%H0(Cdk!(6d&<-@bNKo8N=`Lva9CgI__3Tjv#;^MrT7xM=vO4?`^(SV+J~gFb_gpleo` zzexlTYXoM2Tku6p{h;hp6znibEt0Tv;T$`=|7xK=SN||3RGhD_`1vWyiL+%5KTo@u z@pTquC@(bw#nb}KzhVsOAV3!jw4BNPMLu0HoJov{x}7X1TwOqW#nhi`G<}G!Z+wV* zY&?lq<1VjZtz9=e#MXgm$conWJF_2}i5sn?Yrh;PBh4{^u$@{a+MU&WsfStBZrqnB z{Q`W`!LRaP$^VZ7G+x5Z9RcwI{Uw}=&w$M=uK^pe*ZTw2so&+Yql86Se` z4&UGmw}{PQM9i=yL{1}};TD`XgFPg+J8r!GK7)pT_BjFBRH?T`2Cef05e}L)%DRc< zl&!8TLhy1zA$NNT8GK!mkI~73t4ZmUcO^m6YLep2vI+y1Q6@*)rbwHAoP6`I4oDH? zTiI^8IU@Py2PI!G&%uyHvd-Tlw_o6=2B%1n!+6P=mbB=FdgJEas9$g6+$CwV$LK)T zR=F>60HJoT)bWx$-#$j7UfFvZobTvbdU?frUKKg~*3KToX$cacI{$4tDwWpk<)(v_ znqEmh4rF_E=q5doHfr89%3hRf7eAa>Dv_UjJ&4bk$g>s7r}z$T=j&~!uSrfKg37i_ z!-TK~*;g#B$bQ(jVLK%cE6l{}7#5aKOV%hnE088*3r1R94tyrU5wl9DPc{S9~ z{Cb{cphSWJODE*Y}xP`Egq|6Q?Pg?S$VZMoX9Rk_=s7yV+?Md~a z5+h-d=IzNC9=X|J8(@MRz?5LS9HX`_<4+|RamS3c|AgsUtuSPZu9Xp`2PK7zhh$0= zcM3xXU%NL1t0fAIXajbQ=2oZP3q+lJCrYRgzH=miF3-qC3g@$)+PScq*}e85--f`5 z%2_9D%Rd&C?Y&LXmh3$aTE2i>Ld4^yLDKpBPlvFOvo^#1gfeb~1%iQz+`UNB&EOgS zHG+jv|9;_INX(N}M*94>^-%pp7cy#3a6JHCW&C|ep8AP0%3dZP9{AuSO7?J_s_E1o z^|PnD_6`2~gj0lnf>kosh*{>ABY}nbHAIS)LC*P~34tz0LxEA=!NGW8{0 z9L}gl39z47#5(iWtKEWcMCDw=PowISYLx`nm-0Ug`ffAI4siP={yA3z!;LbPr4pIzm_|3>dchRoAMYl-^#OdL|gsQrL{wxt|o6TF~Xq;)Xw z2jgT55(35ueue81jYOk{rss>`lmka(t3~ZAQlv*0`AaFnD;g^lXzMf!K&zT>kRr@i z^FzTqPeF750?8=U2}Qt7->4dPE1Z1=WNC${I+H2Ml9LjJOpfCzcGhz$dLpAKCZAtC zZiZhq5<7)h=i!h)MJu5RGY(FS=4+RAsI*V@wlYucM`gTnh*Xp>5i&ZlbWvq5iEd@y7Z00jFv0vH!;gsCRfX9A4h^_dNuOaiFn5gFr`#=Bp*s6TL zGAqwLdo=*}ea>F({?qmgO4gmV&H1-WIZ_; z#h^gI9hUo|LdxkgU9_?~o~>al89bxqYMr-3YQQkf>f)>os_VT9>+w?rK)Y0D1w~rc z?4{)(r=%KXEHj|jwUNe;7*oOdm`?zfmLILzF+;N!YmL~7!P^}zaeK0SOH)-(@KDEYaE#CTiB81wYz0 z!$##he+AO1SGDDU@me5Nek4iTq-WGq`wrQ%)+)&YIRcYAu>}6Op{k8sZHk{VaK)Mw zeNvM$%3ku|rheH$#upsto%E{O+jkZzK1=^B`vhcyv|>mx9(Kc<6;!=Q=q;Q&ztbqwhR`AI-{UQBAUMqxiW!c@WYoMNdGkrR z{d1;j0j4S~%-_b_BFxnqnIek0im8e-gj8#UsVZS9pEFhO73(L7f$8}tPw_>xE&)uh3PKe%OB1 z2|}|G_NzxLk}z3o{)qi*6Y`%pps6UIsb(hjff;_?NVEwJPl$ zVG9=EO2h)S#D3lFO(4I@^IW0Gi=O=ox-?#)NDcPu{Qvvx*B^=fdcprY_N%wT!*`Xp z&#N3Hm)sylulhbUD(shT=qxYMO%!*5lKc7?L;D(5i= zX8PY?qrX4g;g+0z=eSkJSr;N^M}9ee$}*<4a>xJ=>6?IxRe>_qpFKg#r@H#yVfC$d zHw|rN6#9A}9lm>lF7kynQ|)|iEN^h2o7x3W2lLBQmB~*0=RGVLbf!7HrK)Q`Q;Iv! zVtvId@5IabNv;B zr;ZaF(Ze>`_0!#g$AE_gZqqxiVp$IH5)pzpZ>&Ia5X98RiB+02|F#)!=$~W$bX48i98>!_U*{1%TEJll2aUDACTGkI zt#TrdSk7{GfsG?Ty_J$?-#c>r7c1_By$n{Dw=n6>sZ7S)JNu)YmMZ>!q<1h7lHaI4 zhpsko4iB|wGZe%y;lwR5*}Nm_3M5}`ZZ+tY{qqIis*WFEjw&-)eVUM!!z?bDALAUq z$2os$HOtw}oGJDQ2XMYE(@ng(IdbH%9JR%HcJAzL{i^#4fDRv2kw+S9fH_nGcF_zM%1`m?)j+5?YX*@C=nTO}HjDPM7Mx8SGpIQLYQQ5|t#1UX z<2!J{^fWvnYv74}Q6hefwW3+5iO1Jp{YFq1>A$_7HSuYUoGUm03-L8Ei@^LgwTgD5Cc&7l ztYphqyI!t#qBx2;pe;S+LqZiI>tU2qbx4jAgXgMvQz|NQQ>2Q|YPtpY#hmNPu5wF4 za8=zt{0TWR^%mG4p6@B~!i^&QqAcBoFyg|hw#ZtcsSr%t*fhJ^UA<$JjLySSrc{&(rj8sZ8zjyU^91j=dW+jyNl zN>>khU7hy##0y9`BL8fnid=Uo$s!qNF!ssSCE8>SSuth#Zbg4ZeeZAz-_ZAI z5tf3^9Fq@*W{nY^vdai( z07CUTYpGoy5`iS&JQH3|(%EAEwPg|v{F?w;v#RRIn5F0@fApKY`rm%Okmw3M9OIdR#V1d^h6W zNmSNBq@e67lE#PVWf3V&bP}=6X^t5o47|GUx5&?DB#+G=TfZ!ahg%ytWI0k1Q}4=W zO)P3h0fDs`%lh=~8n?iK;2iFaJkgCz$TrdpPT9zTH@!#>3+d1@#19R3aaUMC>`zh* zqYQ>JO2slXH+ssFuji^`qfmT=;TUDTgm?-%Y;w%0^?FA<$E;1>wit>2s7*V5ZLvVKpV;7=0Q_(l{A zVr1xa*=qNOfGl!b`lwMkr&gZ4qekUST2r>j&}7?GFH~;rH7F00@D8d==&~%JdOe z=YCz+-rM_q)ALwEn16)IntJMX!+kG0LTHaY;e}R z1`v8I15V5CJnArJcN%lH8*^LgX9~o8<^IM0i?nwEuc|up|8tT91dZ;1QL#fyYSWe| zwWP%Fq-4T=jX!`rS4LJ$K`t^bP z10T3U{J1iwctL{+lK<(+r3RGg7g!sFOy?}_I)UfbZs^KI1c(wZRYT>8+Z*$o8$9Rh zX*H#o7gUnH8F1F}&-mM9={img%ok$L^CU*Z4VW95CYB0x7Qdhr^lMbakT=G^DRQR# zXc!lFf}?Up*%&4hBKfn_2ImA6Wrub-iXKS9=~H2tKE%-fcpn`nY8dvfru{kE*NC?b zg-r6Nt4LORMH4x5TKpLs{r8>mjFxU%qHh?^czk!3@7NpsR*t5gL}yBrEV>+hYV8=d z_dL%&-Bd4O_@Ls1mVrV?y{(QTuy`M@VyMJPb9kWN7;L86Fe@1PRXWZZS_bS3o_;ER zsfqxDtki#yo7r1rt_%v`wK(QpnG5h?*$x1G_aHs@Kf-=4upc@D?KMzOV$(>HWSmyd zJvVr=CP$r>Ud#fCxv**S&&X%kX_+a)me1{ZYJmP3N>4Q zPV|9~IeO{;n@p%$G<_3m#|dZ1U#R8~^*gs?>&jA>i&oSSr}x z5jPJTLm#DpPROh?=qS!TI%Ye(~?WN6CLX^hHhdXtP1=N2wK z1^7)fqtxh(X%>qIT&yTOph3p=*5KI00n0mAvM(P`?yG6!`t%?ZkJshH17q9_v&xOG zE!l;bu99y|Qfd2=d5F|$x#ekus^YeZYt7MJl7ySYyF(jiV)i_`;_yr`?Mr|B0 zG5jgSs28Pv%DSGvpVQZ{p60y{`nB$D(7q;01QKHF+E+(It;7|z=h(ABsxTvxJ>x>%IHLkl5LVJ{D0)z{CL4O5 zs5r5WIU@P3Q}9s}ZOe8zcKN-6?%R~-WmC~=y@a-+UZ{+II3B1XJpAi@c~J}BaU+|n zx0S~2yWMqEFTQVf{d&OoW!JAq2HeDNGUx?&5vWit)(QD&(OPv({YI6cp1#8wRR6k; zmC{@1Q%gsp&9E2($N7{wU@?{@ewB62E=;0VL2=w+qk7FDCV|IJ{Nm14w3?e%`Tb{LDgvj?45szdl!$Od?tuB7I*%UWjn8Jmi{rOzw4z@WVMD5{^%R_o610h+`|7z6ZCoY=M8S6c8|lW~

      +*%ObQ$CF`z)rK_rUQV66PF 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≀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 diff --git a/libs/dll-binaries/x86_64/libopusfile-0.dll b/libs/dll-binaries/x86_64/libopusfile-0.dll index 97a88b6108980d2450acd66cb36193e4cfbaa30a..8a5134c2e6f4a342416cb967e8923ae9bff92b87 100644 GIT binary patch literal 51200 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 Date: Thu, 23 Oct 2025 11:23:13 +0200 Subject: [PATCH 005/104] set special case for console key when using native keyboard input ALWAYS make sure that remains in the same physical place otherwise things might get very annoying it already does so with my german layout --- src/sdl/i_video.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/sdl/i_video.c b/src/sdl/i_video.c index 9ce860cb4..df4b80e20 100644 --- a/src/sdl/i_video.c +++ b/src/sdl/i_video.c @@ -412,6 +412,10 @@ static INT32 GetTypedChar(SDL_Keysym keysym) break; } + // Special case for console key + if (scancode == SDL_SCANCODE_GRAVE) + return '`'; + if (SDL_PeepEvents(&next_event, 1, SDL_PEEKEVENT, SDL_FIRSTEVENT, SDL_LASTEVENT) == 1 && next_event.type == SDL_TEXTINPUT) { if (next_event.text.text[1] == '\0') // limit to ASCII -- 2.54.0 From 852aa74d62dd7dae75f55a56b77a716cac17c792 Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 23 Oct 2025 11:24:32 +0200 Subject: [PATCH 006/104] random style fixes and stuff --- src/hu_stuff.c | 22 +++++++++++----------- src/k_kart.c | 3 --- src/v_video.c | 4 ++-- 3 files changed, 13 insertions(+), 16 deletions(-) diff --git a/src/hu_stuff.c b/src/hu_stuff.c index 3a01aedc0..7f034f8ad 100644 --- a/src/hu_stuff.c +++ b/src/hu_stuff.c @@ -431,7 +431,7 @@ void HU_Start(void) void HU_Shiftform(void) { - shiftxform = cv_keyboardlayout.value == 3 ? french_shiftxform : english_shiftxform; + shiftxform = (cv_keyboardlayout.value == 3) ? french_shiftxform : english_shiftxform; } //====================================================================== @@ -465,8 +465,8 @@ static INT16 addy = 0; // use this to make the messages scroll smoothly when one static void HU_removeChatText_Mini(void) { // MPC: Don't create new arrays, just iterate through an existing one - size_t i; - for(i=0;i 0) stop_spamming[i]--; } // handle chat timers - for (i=0; (i 0) chat_timers[i]--; @@ -1231,7 +1231,7 @@ static void HU_SendChatMessage(void) nodenum[2] = '\0'; // check for undesirable characters in our "number" - if (((nodenum[0] < '0') || (nodenum[0] > '9')) || ((nodenum[1] < '0') || (nodenum[1] > '9'))) + if (((nodenum[0] < '0') || (nodenum[0] > '9')) || ((nodenum[1] < '0') || (nodenum[1] > '9'))) { // check if nodenum[1] is a space if (nodenum[1] == ' ') @@ -1499,7 +1499,7 @@ static void HU_drawMiniChat(void) if (splitscreen > 1) boxw = max(64, boxw/2); - for (; i>0; i--) + for (; i > 0; i--) { char *msg = CHAT_WordWrap(x+2, boxw-(charwidth*2), V_SNAPTOBOTTOM|V_SNAPTOLEFT|V_ALLOWLOWERCASE, chat_mini[i-1]); size_t j = 0; @@ -1572,7 +1572,7 @@ static void HU_drawMiniChat(void) i = 0; prev_linereturn = false; - for (; i<=(chat_nummsg_min-1); i++) // iterate through our hot messages + for (; i <= (chat_nummsg_min-1); i++) // iterate through our hot messages { INT32 clrflag = 0; INT32 timer = ((cv_chattime.value*TICRATE)-chat_timers[i]) - cv_chattime.value*TICRATE+9; // see below... @@ -1749,7 +1749,6 @@ static void HU_drawChatLog(INT32 offset) Z_Free(msg); } - if (((chat_scroll >= chat_maxscroll) || (chat_scrollmedown)) && !(justscrolleddown || justscrolledup || chat_scrolltime)) // was already at the bottom of the page before new maxscroll calculation and was NOT scrolling. { atbottom = true; // we should scroll @@ -2284,6 +2283,7 @@ static void HU_DrawSongCreditsBox(void) V_DrawFill(x, y, strwidth*dup, BOXCREDITHEIGHT*dup, 28|flags|(bgt<= MAXTRANSLATIONS) I_Error("Invalid skin color #%hu.", (UINT16)color); - if (skinnum < 0 && skinnum > TC_DEFAULT) - I_Error("Invalid translation colormap index %d.", skinnum); - starttranscolor = (skinnum != TC_DEFAULT) ? K_GetSkinArray(local)[skinnum].starttranscolor : DEFAULT_STARTTRANSCOLOR; if (starttranscolor >= NUM_PALETTE_ENTRIES) diff --git a/src/v_video.c b/src/v_video.c index 0104cf78c..9e7ece0d1 100644 --- a/src/v_video.c +++ b/src/v_video.c @@ -641,8 +641,8 @@ void VID_BlitLinearScreen(const UINT8 *restrict srcptr, UINT8 *restrict destptr, } } -static UINT8 hudplusalpha[11] = { 10, 8, 6, 4, 2, 0, 0, 0, 0, 0, 0}; -static UINT8 hudminusalpha[11] = { 10, 9, 9, 8, 8, 7, 7, 6, 6, 5, 5}; +static const UINT8 hudplusalpha[11] = { 10, 8, 6, 4, 2, 0, 0, 0, 0, 0, 0}; +static const UINT8 hudminusalpha[11] = { 10, 9, 9, 8, 8, 7, 7, 6, 6, 5, 5}; UINT8 hudtrans = 0; static const UINT8 *v_colormap = NULL; -- 2.54.0 From b84d1013374bdcbfeb42ba5e0c94bb9d5659ea75 Mon Sep 17 00:00:00 2001 From: Alug Date: Fri, 24 Oct 2025 01:52:53 +0200 Subject: [PATCH 007/104] initialize sdl window,renderer and texture to something --- src/sdl/i_video.c | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/src/sdl/i_video.c b/src/sdl/i_video.c index df4b80e20..7393d8e4b 100644 --- a/src/sdl/i_video.c +++ b/src/sdl/i_video.c @@ -156,9 +156,9 @@ static SDL_bool usesdl2soft = SDL_FALSE; static SDL_bool borderlesswindow = SDL_FALSE; // SDL2 vars -SDL_Window *window; -SDL_Renderer *renderer; -static SDL_Texture *texture; +SDL_Window *window = NULL; +SDL_Renderer *renderer = NULL; +static SDL_Texture *texture = NULL; static SDL_bool havefocus = SDL_TRUE; static const char *fallback_resolution_name = "Fallback"; @@ -909,6 +909,7 @@ static void Impl_HandleControllerAddedEvent(SDL_Event evt) cv_usejoystick[i].value = 0; else if (atoi(cv_usejoystick[i].string) <= I_NumJoys() // don't mess if we intentionally set higher than NumJoys && cv_usejoystick[i].value) // update the cvar ONLY if a device exists + CV_SetValue(&cv_usejoystick[i], cv_usejoystick[i].value); } @@ -1111,9 +1112,11 @@ void I_OsPolling(void) I_GetEvent(); mod = SDL_GetModState(); + /* Handle here so that our state is always synched with the system. */ shiftdown = ctrldown = altdown = 0; capslock = false; + if (mod & KMOD_LSHIFT) shiftdown |= 1; if (mod & KMOD_RSHIFT) shiftdown |= 2; if (mod & KMOD_LCTRL) ctrldown |= 1; @@ -1147,7 +1150,7 @@ static void VID_Command_Mode_f (void) { INT32 modenum; - if (COM_Argc()!= 2) + if (COM_Argc() != 2) { CONS_Printf("vid_mode : set video mode, current video mode %i\n", vid.modenum); return; @@ -1292,8 +1295,8 @@ static void SDLSetMode(INT32 width, INT32 height, SDL_bool fullscreen) #endif OglSdlSurface(vid.width, vid.height); } + else #endif - if (rendermode == render_soft) { SDL_RenderClear(renderer); @@ -1358,7 +1361,8 @@ void I_FinishUpdate(void) const boolean isserverplayer = consoleplayer == serverplayer; - if (cv_showping.value && ((netgame && !isserverplayer) || (simulated_lag != 0 && isserverplayer && Playing()))) + if (cv_showping.value && ((netgame && !isserverplayer) || + (simulated_lag != 0 && isserverplayer && Playing()))) SCR_DisplayLocalPing(); } @@ -1625,11 +1629,13 @@ static SDL_bool Impl_CreateContext(void) if (!renderer) renderer = SDL_CreateRenderer(window, -1, flags); + if (renderer == NULL) { CONS_Printf(M_GetText("Couldn't create rendering context: %s\n"), SDL_GetError()); return SDL_FALSE; } + SDL_RenderSetLogicalSize(renderer, BASEVIDWIDTH, BASEVIDHEIGHT); } @@ -1732,6 +1738,7 @@ void I_StartupGraphics(void) #endif { const char *vd = SDL_GetCurrentVideoDriver(); + //CONS_Printf(M_GetText("Starting up with video driver: %s\n"), vd); if (vd && (strncasecmp(vd, "fbcon", 6) == 0)) framebuffer = SDL_TRUE; @@ -1962,7 +1969,7 @@ static void Impl_SetVsync(void) #endif #ifdef HWRENDER if (!renderer && rendermode == render_opengl && - sdlglcontext != NULL && SDL_GL_GetCurrentContext() == sdlglcontext) + sdlglcontext != NULL && SDL_GL_GetCurrentContext() == sdlglcontext) { SDL_GL_SetSwapInterval(cv_vidwait.value ? 1 : 0); } -- 2.54.0 From 0e2ffdeb1dedfd9954ddd4897d8d180ead70a014 Mon Sep 17 00:00:00 2001 From: "James R." Date: Sat, 30 Sep 2023 16:07:53 -0700 Subject: [PATCH 008/104] SDLSetMode: render immediately after resolution change to avoid 1-frame of texture presented at wrong size --- src/sdl/i_video.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/sdl/i_video.c b/src/sdl/i_video.c index 7393d8e4b..229008352 100644 --- a/src/sdl/i_video.c +++ b/src/sdl/i_video.c @@ -1313,6 +1313,11 @@ static void SDLSetMode(INT32 width, INT32 height, SDL_bool fullscreen) texture = SDL_CreateTexture(renderer, sw_texture_format, SDL_TEXTUREACCESS_STREAMING, width, height); } + + if (graphics_started) + { + I_UpdateNoVsync(); + } } // -- 2.54.0 From 383d55cac669d1e76ef170410fe9bd68fdbb8c89 Mon Sep 17 00:00:00 2001 From: Alug Date: Fri, 24 Oct 2025 03:37:45 +0200 Subject: [PATCH 009/104] smol cleanup V_DrawVhsEffect dont need to assign all the software stuff in gl mode --- src/hardware/hw_draw.c | 57 +++++++++++++++++++++--------------------- src/r_data.c | 1 + src/r_main.cpp | 2 ++ src/v_video.c | 43 +++++++++++++++++++++---------- 4 files changed, 62 insertions(+), 41 deletions(-) diff --git a/src/hardware/hw_draw.c b/src/hardware/hw_draw.c index cf8ab29e3..4797f21de 100644 --- a/src/hardware/hw_draw.c +++ b/src/hardware/hw_draw.c @@ -46,9 +46,9 @@ typedef struct UINT8 image_descriptor; //18 } ATTRPACK TGAHeader; // sizeof is 18 -static UINT8 softwaretranstogl[11] = { 0, 25, 51, 76,102,127,153,178,204,229,255}; -static UINT8 softwaretranstogl_hi[11] = { 0, 51,102,153,204,255,255,255,255,255,255}; -static UINT8 softwaretranstogl_lo[11] = { 0, 12, 24, 36, 48, 60, 71, 83, 95,111,127}; +static const UINT8 softwaretranstogl[11] = { 0, 25, 51, 76,102,127,153,178,204,229,255}; +static const UINT8 softwaretranstogl_hi[11] = { 0, 51,102,153,204,255,255,255,255,255,255}; +static const UINT8 softwaretranstogl_lo[11] = { 0, 12, 24, 36, 48, 60, 71, 83, 95,111,127}; static const float FLOATBASEVIDWIDTH = (float)BASEVIDWIDTH; static const float FLOATBASEVIDHEIGHT = (float)BASEVIDHEIGHT; @@ -87,15 +87,15 @@ void HWR_DrawStretchyFixedPatch(patch_t *gpatch, fixed_t x, fixed_t y, fixed_t p switch (option & V_SCALEPATCHMASK) { - case V_NOSCALEPATCH: - dup = 1.0f; - break; - case V_SMALLSCALEPATCH: - dup = (float)vid.smalldup; - break; - case V_MEDSCALEPATCH: - dup = (float)vid.meddup; - break; + case V_NOSCALEPATCH: + dup = 1.0f; + break; + case V_SMALLSCALEPATCH: + dup = (float)vid.smalldup; + break; + case V_MEDSCALEPATCH: + dup = (float)vid.meddup; + break; } fscalew = fscaleh = FIXED_TO_FLOAT(pscale); @@ -269,15 +269,15 @@ void HWR_DrawCroppedPatch(patch_t *gpatch, fixed_t x, fixed_t y, fixed_t pscale, switch (option & V_SCALEPATCHMASK) { - case V_NOSCALEPATCH: - dup = 1.0f; - break; - case V_SMALLSCALEPATCH: - dup = (float)vid.smalldup; - break; - case V_MEDSCALEPATCH: - dup = (float)vid.meddup; - break; + case V_NOSCALEPATCH: + dup = 1.0f; + break; + case V_SMALLSCALEPATCH: + dup = (float)vid.smalldup; + break; + case V_MEDSCALEPATCH: + dup = (float)vid.meddup; + break; } fscale = FIXED_TO_FLOAT(pscale); @@ -506,7 +506,7 @@ void HWR_FadeScreenMenuBack(UINT16 color, UINT8 strength) if (color & 0xFF00) // Do COLORMAP fade. { - if (HWR_ShouldUsePaletteRendering() && cv_glscreentextures.value) + if (cv_glscreentextures.value && HWR_ShouldUsePaletteRendering()) { const hwdscreentexture_t scr_tex = HWD_SCREENTEXTURE_GENERIC2; @@ -518,12 +518,10 @@ void HWR_FadeScreenMenuBack(UINT16 color, UINT8 strength) GL_UnSetShader(); return; } - else - { - Surf.PolyColor.rgba = UINT2RGBA(0x01010160); - Surf.PolyColor.s.alpha = (strength*8); - poly_flags |= PF_Translucent; - } + + Surf.PolyColor.rgba = UINT2RGBA(0x01010160); + Surf.PolyColor.s.alpha = (strength*8); + poly_flags |= PF_Translucent; } else // Do TRANSMAP** fade. { @@ -890,11 +888,13 @@ void HWR_DrawFill(INT32 x, INT32 y, INT32 w, INT32 h, INT32 color) if (fx >= vid.width || fy >= vid.height) return; + if (fx < 0) { fw += fx; fx = 0; } + if (fy < 0) { fh += fy; @@ -906,6 +906,7 @@ void HWR_DrawFill(INT32 x, INT32 y, INT32 w, INT32 h, INT32 color) if (fx + fw > vid.width) fw = fvw - fx; + if (fy + fh > vid.height) fh = fvh - fy; diff --git a/src/r_data.c b/src/r_data.c index a796de138..93ad621fa 100644 --- a/src/r_data.c +++ b/src/r_data.c @@ -1391,6 +1391,7 @@ void R_ReInitColormaps(UINT16 num, lumpnum_t newencoremap) // Load in the light tables, now 64k aligned for smokie... lump = W_GetNumForName(colormap); + if (lump == LUMPERROR) lump = basecolormaplump; else diff --git a/src/r_main.cpp b/src/r_main.cpp index 5313357d6..339e34548 100644 --- a/src/r_main.cpp +++ b/src/r_main.cpp @@ -253,6 +253,7 @@ void SplitScreen_OnChange(void) if (playeringame[i] && i != consoleplayer) { UINT8 j; + for (j = 1; j < MAXSPLITSCREENPLAYERS; j++) { if (displayplayers[j] == consoleplayer) @@ -268,6 +269,7 @@ void SplitScreen_OnChange(void) } } } + static void Fov_OnChange(void) { R_SetViewSize(); diff --git a/src/v_video.c b/src/v_video.c index 9e7ece0d1..dd5091fa1 100644 --- a/src/v_video.c +++ b/src/v_video.c @@ -1739,22 +1739,24 @@ void V_DrawHorizontallyScaledFullScreenPatch(patch_t *patch) void V_DrawVhsEffect(boolean rewind) { + fixed_t uby, dby; static fixed_t upbary = 100*FRACUNIT, downbary = 150*FRACUNIT; - UINT8 *buf = vid.screens[0], *tmp = vid.screens[4]; - UINT16 y; - UINT32 x, pos = 0; + UINT8 barsize, updistort, downdistort; - UINT8 *normalmapstart = ((UINT8 *)transtables + (8<>1; + barsize = vid.dup << 5; + updistort = vid.dup << (rewind ? 5 : 3); + downdistort = updistort >> 1; if (rewind) V_DrawVhsEffect(false); // experimentation @@ -1763,11 +1765,12 @@ void V_DrawVhsEffect(boolean rewind) downbary += renderdeltatics * (vid.dup * (rewind ? 2 : 1)); if (upbary < -barsize*FRACUNIT) - upbary = vid.height< vid.height< vid.height << FRACBITS) downbary = -barsize*FRACUNIT; - fixed_t uby = upbary>>FRACBITS, dby = downbary>>FRACBITS; + uby = upbary >> FRACBITS; + dby = downbary >> FRACBITS; #ifdef HWRENDER if (rendermode == render_opengl) @@ -1777,6 +1780,16 @@ void V_DrawVhsEffect(boolean rewind) } #endif + buf = vid.screens[0]; + tmp = vid.screens[4]; + + normalmapstart = ((UINT8 *)transtables + (8<> V_CHARCOLORSHIFT); + if (!colorflags || colorflags > 15) // INT32 is signed, but V_CHARCOLORMASK is a very restrictive mask. return NULL; + return (purplemap+((colorflags-1)<<8)); #endif } @@ -1920,7 +1935,6 @@ UINT8 *V_GetStringColormap(INT32 colorflags) void V_DrawCharacter(INT32 x, INT32 y, INT32 c, boolean lowercaseallowed) { INT32 w, flags; - const UINT8 *colormap = V_GetStringColormap(c); flags = c & ~(V_CHARCOLORMASK | V_PARAMMASK); c &= 0x7f; @@ -1936,6 +1950,8 @@ void V_DrawCharacter(INT32 x, INT32 y, INT32 c, boolean lowercaseallowed) if (x + w > vid.width) return; + const UINT8 *colormap = V_GetStringColormap(c); + if (colormap != NULL) V_DrawMappedPatch(x, y, flags, hu_font[c], colormap); else @@ -2000,6 +2016,7 @@ char *V_WordWrap(INT32 x, INT32 w, INT32 option, const char *string) for (i = 0; i < slen; ++i) { c = newstring[i]; + if ((UINT8)c >= 0x80 && (UINT8)c <= 0x8F) //color parsing! -Inuyasha 2.16.09 continue; -- 2.54.0 From ca27dad6c117e364d5e3b13112662035092f0fc4 Mon Sep 17 00:00:00 2001 From: Alug Date: Fri, 24 Oct 2025 03:34:47 +0200 Subject: [PATCH 010/104] use D_ClearState in G_StopDemo actually fixes issues with crashes AND palette reset also resets a bunch of more stuff which def is good --- src/d_main.c | 27 ++++++++++++++++++++++++--- src/f_finale.c | 1 + src/g_demo.c | 13 +------------ 3 files changed, 26 insertions(+), 15 deletions(-) diff --git a/src/d_main.c b/src/d_main.c index 1bc346deb..992fc59db 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -954,6 +954,24 @@ void D_SRB2Loop(void) // D_SRB2Main // ========================================================================= +static void ResetSplitScreen(void) +{ + UINT8 i; + + // recompute screen size + R_ExecuteSetViewSize(); + + if (!demo.playback && !botingame) + { + for (i = 1; i < MAXSPLITSCREENPLAYERS; i++) + { + if (i > splitscreen) + CL_RemoveSplitscreenPlayer(displayplayers[i]); + else + CL_AddSplitscreenPlayer(); + } + } +} // // D_ClearState // @@ -963,6 +981,7 @@ void D_ClearState(void) // okay, stop now // (otherwise the game still thinks we're playing!) + CURLAbortFile(); SV_StopServer(); SV_ResetServer(); serverlistultimatecount = 0; @@ -971,7 +990,8 @@ void D_ClearState(void) CL_ClearPlayer(i); splitscreen = 0; - SplitScreen_OnChange(); + ResetSplitScreen(); // splitscreen onchange resets us to singleplayer :chaosleep: + botingame = false; botskin = 0; cv_debug = 0; @@ -990,7 +1010,6 @@ void D_ClearState(void) gameaction = ga_nothing; memset(displayplayers, 0, sizeof(displayplayers)); consoleplayer = 0; - //demosequence = -1; gametype = GT_RACE; // SRB2kart paused = false; @@ -1013,6 +1032,8 @@ void D_ClearState(void) G_SetGamestate(GS_NULL); wipegamestate = GS_NULL; + + M_ClearMenus(true); } // @@ -1022,8 +1043,8 @@ void D_StartTitle(void) { demo.title = false; D_ClearState(); + multiplayer = false; // reset manually netgame = false; // title menu shouldnt be a netgame lmao - M_ClearMenus(true); F_StartTitleScreen(); D_ResetDeviceLED(); } diff --git a/src/f_finale.c b/src/f_finale.c index 0fe0effc4..ca22349a0 100644 --- a/src/f_finale.c +++ b/src/f_finale.c @@ -963,6 +963,7 @@ void F_StartTitleScreen(void) finalecount = 0; else wipegamestate = GS_TITLESCREEN; + G_SetGamestate(GS_TITLESCREEN); CON_ClearHUD(); diff --git a/src/g_demo.c b/src/g_demo.c index de8523ae9..f779c26d8 100644 --- a/src/g_demo.c +++ b/src/g_demo.c @@ -3416,18 +3416,7 @@ void G_StopDemo(void) if (gamestate == GS_VOTING) Y_EndVote(); - M_ClearMenus(true); - - G_SetGamestate(GS_NULL); - wipegamestate = GS_NULL; - SV_StopServer(); - SV_ResetServer(); - - if (gamestate == GS_LEVEL && rendermode != render_none) - { - V_SetPaletteLump("PLAYPAL"); // Reset the palette - R_ReInitColormaps(0, LUMPERROR); - } + D_ClearState(); } // Stops timing a demo. -- 2.54.0 From 7c507c7b3bd33980022d79f55c1f441f082d21b0 Mon Sep 17 00:00:00 2001 From: Alug Date: Fri, 24 Oct 2025 03:37:03 +0200 Subject: [PATCH 011/104] do some cleanup g_demo :shook: use the CLEANUP macro everywhere init some things that may not be initialized and make this more readable lets hope didnt break anything Zzz... TODO: if there are still issues with demo records and stuff crashing might consider porting some of the fixes from RR --- src/g_demo.c | 680 +++++++++++++++++++++++++++++---------------------- 1 file changed, 381 insertions(+), 299 deletions(-) diff --git a/src/g_demo.c b/src/g_demo.c index f779c26d8..96ff33e65 100644 --- a/src/g_demo.c +++ b/src/g_demo.c @@ -74,7 +74,7 @@ static tic_t demostarttime; // for comparative timing purposes //@TODO put these all in a struct for namespacing purposes? static char demoname[128]; -savebuffer_t demobuf; +savebuffer_t demobuf = {0}; static UINT8 *demotime_p, *demoinfo_p; static UINT8 *demoend; static UINT8 demoflags; @@ -85,7 +85,8 @@ struct demovars_s demo; consvar_t cv_resyncdemo = {"resyncdemo", "On", 0, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL}; // extra data stuff (events registered this frame while recording) -static struct { +static struct +{ UINT8 flags; // EZT flags // EZT_COLOR @@ -156,8 +157,8 @@ consvar_t cv_demodateformat = {"netdemo_dateformat", "Automatic", CV_SAVE, demod #define ZT_LATENCY 0x40 #define DEMOMARKER 0x80 // demoend -UINT8 demo_extradata[MAXPLAYERS]; -UINT8 demo_writerng; // 0=no, 1=yes, 2=yes but on a timeout +UINT8 demo_extradata[MAXPLAYERS] = {0}; +UINT8 demo_writerng = 0; // 0=no, 1=yes, 2=yes but on a timeout static ticcmd_t oldcmd[MAXPLAYERS]; #define DW_END 0xFF // End of extradata block @@ -192,7 +193,7 @@ static ticcmd_t oldcmd[MAXPLAYERS]; static mobj_t oldghost[MAXPLAYERS]; -static void G_ResetDemoPlayback(char *pdemoname); +static void G_ResetDemoPlayback(void); // Finds a skin with the closest stats if the expected skin doesn't exist. static INT32 GetSkinNumClosestToStats(UINT8 kartspeed, UINT8 kartweight) @@ -203,6 +204,7 @@ static INT32 GetSkinNumClosestToStats(UINT8 kartspeed, UINT8 kartweight) for (i = 0; i < numskins; i++) { stat_diff = abs(skins[i].kartspeed - kartspeed) + abs(skins[i].kartweight - kartweight); + if (stat_diff < closest_stats) { closest_stats = stat_diff; @@ -249,6 +251,7 @@ void G_ReadDemoExtraData(void) if (players[p].mo) P_DamageMobj(players[p].mo, NULL, NULL, DMG_INSTAKILL); // Is this how this should work..? } + if (extradata & DXD_SKIN) { UINT8 kartspeed, kartweight; @@ -267,6 +270,7 @@ void G_ReadDemoExtraData(void) players[p].kartspeed = kartspeed; players[p].kartweight = kartweight; } + if (extradata & DXD_COLOR) { // Color @@ -281,47 +285,49 @@ void G_ReadDemoExtraData(void) break; } } + if (extradata & DXD_NAME) { // Name M_Memcpy(player_names[p],demobuf.p,16); demobuf.p += 16; } + if (extradata & DXD_PLAYSTATE) { extradata = READUINT8(demobuf.p); - switch (extradata) { - case DXD_PST_PLAYING: - players[p].pflags |= PF_WANTSTOJOIN; // fuck you - break; + switch (extradata) + { + case DXD_PST_PLAYING: + players[p].pflags |= PF_WANTSTOJOIN; // fuck you + break; + case DXD_PST_SPECTATING: + players[p].pflags &= ~PF_WANTSTOJOIN; // double-fuck you - case DXD_PST_SPECTATING: - players[p].pflags &= ~PF_WANTSTOJOIN; // double-fuck you - if (!playeringame[p]) - { - CL_ClearPlayer(p); - playeringame[p] = true; - G_AddPlayer(p); - players[p].spectator = true; + if (!playeringame[p]) + { + CL_ClearPlayer(p); + playeringame[p] = true; + G_AddPlayer(p); + players[p].spectator = true; - // There's likely an off-by-one error in timing recording or playback of joins. This hacks around it so I don't have to find out where that is. \o/ - if (oldcmd[p].forwardmove) - P_RandomByte(); - } - else - { - players[p].spectator = true; - if (players[p].mo) - P_DamageMobj(players[p].mo, NULL, NULL, DMG_INSTAKILL); + // There's likely an off-by-one error in timing recording or playback of joins. This hacks around it so I don't have to find out where that is. \o/ + if (oldcmd[p].forwardmove) + P_RandomByte(); + } else - players[p].playerstate = PST_REBORN; - } - break; - - case DXD_PST_LEFT: - CL_RemovePlayer(p, 0); - break; + { + players[p].spectator = true; + if (players[p].mo) + P_DamageMobj(players[p].mo, NULL, NULL, DMG_INSTAKILL); + else + players[p].playerstate = PST_REBORN; + } + break; + case DXD_PST_LEFT: + CL_RemovePlayer(p, 0); + break; } G_ResetViews(); @@ -333,7 +339,6 @@ void G_ReadDemoExtraData(void) P_CheckRacers(); // also SRB2Kart } - p = READUINT8(demobuf.p); } @@ -342,11 +347,11 @@ void G_ReadDemoExtraData(void) UINT32 rng; UINT32 checkrng; - switch (p) + if (p == DW_RNG) { - case DW_RNG: rng = READUINT32(demobuf.p); checkrng = P_GetRandSeed(); + if (checkrng != rng) { if (demosynced) @@ -354,6 +359,7 @@ void G_ReadDemoExtraData(void) CONS_Alert(CONS_WARNING, M_GetText("Demo playback has desynced (RNG)!\n")); CONS_Printf("expected rng %d got %d\n", rng, checkrng); } + demosynced = false; P_SetRandSeed(rng); @@ -395,6 +401,7 @@ void G_WriteDemoExtraData(void) WRITEUINT8(demobuf.p, skins[players[i].skin].kartspeed); WRITEUINT8(demobuf.p, skins[players[i].skin].kartweight); } + if (demo_extradata[i] & DXD_COLOR) { // Color @@ -403,6 +410,7 @@ void G_WriteDemoExtraData(void) M_Memcpy(demobuf.p,name,16); demobuf.p += 16; } + if (demo_extradata[i] & DXD_NAME) { // Name @@ -411,6 +419,7 @@ void G_WriteDemoExtraData(void) M_Memcpy(demobuf.p,name,16); demobuf.p += 16; } + if (demo_extradata[i] & DXD_PLAYSTATE) { demo_writerng = 1; @@ -866,8 +875,8 @@ void G_WriteGhostTic(mobj_t *ghost, INT32 playernum) } Z_Free(ghostext[playernum].hitlist); - ghostext[playernum].hits = 0; ghostext[playernum].hitlist = NULL; + ghostext[playernum].hits = 0; } if (ghostext[playernum].flags & EZT_SPRITE) @@ -973,6 +982,7 @@ void G_ConsGhostTic(INT32 playernum) if (ziptic & GZT_EXTRA) { // But wait, there's more! ziptic = READUINT8(demobuf.p); + if (ziptic & EZT_COLOR) demobuf.p++; @@ -981,7 +991,8 @@ void G_ConsGhostTic(INT32 playernum) if (ziptic & EZT_HIT) { // Resync mob damage. - UINT16 i, count = READUINT16(demobuf.p); + UINT16 i; + UINT16 count = READUINT16(demobuf.p); thinker_t *th; mobj_t *mobj; @@ -1006,9 +1017,12 @@ void G_ConsGhostTic(INT32 playernum) { if (th->function != (actionf_p1)P_MobjThinker) continue; + mobj = (mobj_t *)th; + if (mobj->type == (mobjtype_t)type && mobj->x == x && mobj->y == y && mobj->z == z) break; + mobj = NULL; // wasn't this one, keep searching. } @@ -1055,6 +1069,7 @@ void G_ConsGhostTic(INT32 playernum) { if (demosynced) CONS_Alert(CONS_WARNING, "Demo playback has desynced (player %s)!\n", player_names[playernum]); + demosynced = false; if (cv_resyncdemo.value) @@ -1092,6 +1107,7 @@ void G_ConsGhostTic(INT32 playernum) CONS_Printf("expected item type %d got %d\n", ghostext[playernum].kartitem, players[playernum].kartstuff[k_itemtype]); CONS_Printf("expected item amount %d got %d\n", ghostext[playernum].kartamount, players[playernum].kartstuff[k_itemamount]); } + demosynced = false; players[playernum].kartstuff[k_itemtype] = ghostext[playernum].kartitem; @@ -1110,7 +1126,7 @@ void G_ConsGhostTic(INT32 playernum) void G_GhostTicker(void) { - demoghost *g,*p; + demoghost *g, *p; for (g = ghosts, p = NULL; g; g = g->next) { @@ -1126,12 +1142,16 @@ void G_GhostTicker(void) if (ziptic == 0) // Only support player 0 info for now { ziptic = READUINT8(g->p); + if (ziptic & DXD_SKIN) g->p += 18; // We _could_ read this info, but it shouldn't change anything in record attack... + if (ziptic & DXD_COLOR) g->p += 16; // Same tbh + if (ziptic & DXD_NAME) g->p += 16; // yea + if (ziptic & DXD_PLAYSTATE && READUINT8(g->p) != DXD_PST_PLAYING) I_Error("Ghost is not a record attack ghost"); //@TODO lmao don't blow up like this } @@ -1191,14 +1211,18 @@ void G_GhostTicker(void) g->oldmo.momx = READINT16(g->p)<<8; g->oldmo.momy = READINT16(g->p)<<8; } + if (ziptic & GZT_MOMZ) g->oldmo.momz = READINT16(g->p)<<8; + g->oldmo.x += g->oldmo.momx; g->oldmo.y += g->oldmo.momy; g->oldmo.z += g->oldmo.momz; } + if (ziptic & GZT_ANGLE) g->oldmo.angle = READUINT8(g->p)<<24; + if (ziptic & GZT_SPRITE) g->oldmo.frame = READUINT8(g->p); @@ -1214,36 +1238,42 @@ void G_GhostTicker(void) if (ziptic & GZT_EXTRA) { // But wait, there's more! ziptic = READUINT8(g->p); + if (ziptic & EZT_COLOR) { g->color = READUINT8(g->p); - switch(g->color) + + switch (g->color) { - default: - case GHC_NORMAL: // Go back to skin color - g->mo->color = g->oldmo.color; - break; - // Handled below - case GHC_SUPER: - case GHC_INVINCIBLE: - break; - case GHC_FIREFLOWER: // Fireflower - g->mo->color = SKINCOLOR_WHITE; - break; + default: + case GHC_NORMAL: // Go back to skin color + g->mo->color = g->oldmo.color; + break; + // Handled below + case GHC_SUPER: + case GHC_INVINCIBLE: + break; + case GHC_FIREFLOWER: // Fireflower + g->mo->color = SKINCOLOR_WHITE; + break; } } + if (ziptic & EZT_FLIP) g->mo->eflags ^= MFE_VERTICALFLIP; + if (ziptic & EZT_SCALE) { g->mo->destscale = READFIXED(g->p); if (g->mo->destscale != g->mo->scale) P_SetScale(g->mo, g->mo->destscale); } + if (ziptic & EZT_THOKMASK) { // Let's only spawn ONE of these per frame, thanks. mobj_t *mobj; INT32 type = -1; + if (g->mo->skin) { switch (ziptic & EZT_THOKMASK) @@ -1273,14 +1303,17 @@ void G_GhostTicker(void) mobj->frame = (states[mobjinfo[type].spawnstate].frame & FF_FRAMEMASK) | tr_trans60<tics = -1; // nope. mobj->color = g->mo->color; + if (g->mo->eflags & MFE_VERTICALFLIP) { mobj->flags2 |= MF2_OBJECTFLIP; mobj->eflags |= MFE_VERTICALFLIP; } + P_SetScale(mobj, g->mo->scale); mobj->destscale = g->mo->scale; } + mobj->floorz = mobj->z; mobj->ceilingz = mobj->z+mobj->height; P_UnsetThingPosition(mobj); @@ -1290,13 +1323,16 @@ void G_GhostTicker(void) P_SetTarget(&mobj->target, g->mo); } } + if (ziptic & EZT_HIT) { // Spawn hit poofs for killing things! - UINT16 i, count = READUINT16(g->p), health; + UINT16 i, health; + UINT16 count = READUINT16(g->p); //UINT32 type; fixed_t x,y,z; angle_t angle; mobj_t *poof; + for (i = 0; i < count; i++) { g->p += 4; // reserved @@ -1306,8 +1342,10 @@ void G_GhostTicker(void) y = READFIXED(g->p); z = READFIXED(g->p); angle = READANGLE(g->p); + if (health != 0 || i >= 4) // only spawn for the first 4 hits per frame, to prevent ghosts from splode-spamming too bad. continue; + poof = P_SpawnMobj(x, y, z, MT_GHOST); poof->angle = angle; poof->flags = MF_NOBLOCKMAP|MF_NOCLIP|MF_NOCLIPHEIGHT|MF_NOGRAVITY; // make an ATTEMPT to curb crazy SOCs fucking stuff up... @@ -1333,30 +1371,33 @@ void G_GhostTicker(void) skippedghosttic: // Tick ghost colors (Super and Mario Invincibility flashing) - switch(g->color) + switch (g->color) { - case GHC_SUPER: // Super Sonic (P_DoSuperStuff) - g->mo->color = SKINCOLOR_SUPER1; - g->mo->color += abs( ( (signed)( (unsigned)leveltime >> 1 ) % 9) - 4); - break; - case GHC_INVINCIBLE: // Mario invincibility (P_CheckInvincibilityTimer) - g->mo->color = (UINT8)(leveltime % MAXSKINCOLORS); - break; - default: - break; + case GHC_SUPER: // Super Sonic (P_DoSuperStuff) + g->mo->color = SKINCOLOR_SUPER1; + g->mo->color += abs( ( (signed)( (unsigned)leveltime >> 1 ) % 9) - 4); + break; + case GHC_INVINCIBLE: // Mario invincibility (P_CheckInvincibilityTimer) + g->mo->color = (UINT8)(leveltime % MAXSKINCOLORS); + break; + default: + break; } // Demo ends after ghost data. if (*g->p == DEMOMARKER) { g->mo->momx = g->mo->momy = g->mo->momz = 0; + if (p) p->next = g->next; else ghosts = g->next; + Z_Free(g); continue; } + p = g; } } @@ -1399,6 +1440,7 @@ void G_StoreRewindInfo(void) if (timetolog-- > 0) return; + timetolog = 8; info = Z_Calloc(sizeof(rewindinfo_t), PU_STATIC, NULL); @@ -1413,6 +1455,7 @@ void G_StoreRewindInfo(void) info->playerinfo[i].ingame = true; memcpy(&info->playerinfo[i].player, &players[i], sizeof(player_t)); + if (players[i].mo) memcpy(&info->playerinfo[i].mobj, players[i].mo, sizeof(mobj_t)); } @@ -1437,10 +1480,10 @@ void G_PreviewRewind(tic_t previewtime) next_info = info; info = info->prev; } + if (info != next_info) tweenvalue = FixedDiv(previewtime - info->leveltime, next_info->leveltime - info->leveltime); - for (i = 0; i < MAXPLAYERS; i++) { if (!playeringame[i] || players[i].spectator) @@ -1481,6 +1524,7 @@ void G_PreviewRewind(tic_t previewtime) players[i].mo->frame = info->playerinfo[i].mobj.frame; players[i].realtime = info->playerinfo[i].player.realtime; + for (j = 0; j < NUMKARTSTUFF; j++) players[i].kartstuff[j] = info->playerinfo[i].player.kartstuff[j]; } @@ -1669,10 +1713,13 @@ void G_BeginRecording(void) demobuf.p += 1; totalfiles = 0; - for (i = mainwads; ++i < numwadfiles; ) - if (wadfiles[i]->important) + + for (i = mainwads; ++i < numwadfiles;) { - nameonly(( filename = va("%s", wadfiles[i]->filename) )); + if (!wadfiles[i]->important) + continue; + + nameonly((filename = va("%s", wadfiles[i]->filename))); WRITESTRINGL(demobuf.p, filename, MAX_WADPATH); WRITEMEM(demobuf.p, wadfiles[i]->md5sum, 16); @@ -1681,17 +1728,17 @@ void G_BeginRecording(void) WRITEUINT8(m, totalfiles); - switch ((demoflags & DF_ATTACKMASK)>>DF_ATTACKSHIFT) + switch ((demoflags & DF_ATTACKMASK) >> DF_ATTACKSHIFT) { - case ATTACKING_NONE: // 0 - break; - case ATTACKING_RECORD: // 1 - demotime_p = demobuf.p; - WRITEUINT32(demobuf.p,UINT32_MAX); // time - WRITEUINT32(demobuf.p,UINT32_MAX); // lap - break; - default: // 3 - break; + case ATTACKING_NONE: // 0 + break; + case ATTACKING_RECORD: // 1 + demotime_p = demobuf.p; + WRITEUINT32(demobuf.p,UINT32_MAX); // time + WRITEUINT32(demobuf.p,UINT32_MAX); // lap + break; + default: // 3 + break; } WRITEUINT32(demobuf.p, P_GetInitSeed()); @@ -1810,6 +1857,7 @@ void G_SetDemoTime(UINT32 ptime, UINT32 plap) { if (!demo.recording || !demotime_p) return; + if (demoflags & DF_RECORDATTACK) { WRITEUINT32(demotime_p, ptime); @@ -1828,7 +1876,8 @@ static void G_LoadDemoExtraFiles(UINT8 **pp) boolean alreadyloaded; UINT8 i, j; - totalfiles = READUINT8((*pp)); + totalfiles = READUINT8((*pp)); // i like pp uwu + for (i = 0; i < totalfiles; ++i) { if (toomany) @@ -1838,6 +1887,7 @@ static void G_LoadDemoExtraFiles(UINT8 **pp) strlcpy(filename, (char *)(*pp), sizeof filename); SKIPSTRING((*pp)); } + READMEM((*pp), md5sum, 16); if (!toomany) @@ -1917,6 +1967,7 @@ static UINT8 G_CheckDemoExtraFiles(UINT8 **pp, boolean quick) totalfiles = READUINT8((*pp)); filesloaded = 0; + for (i = 0; i < totalfiles; ++i) { if (toomany) @@ -1926,7 +1977,8 @@ static UINT8 G_CheckDemoExtraFiles(UINT8 **pp, boolean quick) strlcpy(filename, (char *)(*pp), sizeof filename); SKIPSTRING((*pp)); } - READMEM((*pp), md5sum, 16); + + READMEM((*pp), md5sum, 16); // hue hue peepee if (!toomany) { @@ -1971,8 +2023,10 @@ static UINT8 G_CheckDemoExtraFiles(UINT8 **pp, boolean quick) nmusfilecount = 0; for (j = 0; j < numwadfiles; ++j) + { if (wadfiles[j]->important && j > mainwads) nmusfilecount++; + } if (!error && filesloaded < nmusfilecount) error = DFILE_ERROR_EXTRAFILES; @@ -1986,7 +2040,8 @@ static UINT8 G_CheckDemoExtraFiles(UINT8 **pp, boolean quick) // 4 == new demo has higher rings UINT8 G_CmpDemoTime(char *oldname, char *newname) { - UINT8 *buffer,*p; + CLEANUP(Z_Pfree) UINT8 *buffer = NULL; + UINT8 *p; UINT8 flags; UINT32 oldtime, newtime, oldlap, newlap; UINT16 oldversion; @@ -2018,10 +2073,12 @@ UINT8 G_CmpDemoTime(char *oldname, char *newname) p += 16; // map md5 flags = READUINT8(p); // demoflags p++; // gametype + G_SkipDemoExtraFiles(&p); aflags = flags & (DF_RECORDATTACK|DF_NIGHTSATTACK); I_Assert(aflags); + if (flags & DF_RECORDATTACK) { newtime = READUINT32(p); @@ -2031,62 +2088,69 @@ UINT8 G_CmpDemoTime(char *oldname, char *newname) return 0; Z_Free(buffer); + buffer = NULL; // load old file FIL_DefaultExtension(oldname, ".lmp"); + if (!FIL_ReadFile(oldname, &buffer)) { CONS_Alert(CONS_ERROR, M_GetText("Failed to read file '%s'.\n"), oldname); return UINT8_MAX; } + p = buffer; // read demo header if (memcmp(p, DEMOHEADER, 12)) { CONS_Alert(CONS_NOTICE, M_GetText("File '%s' invalid format. It will be overwritten.\n"), oldname); - Z_Free(buffer); return UINT8_MAX; - } p += 12; // DEMOHEADER + } + + p += 12; // DEMOHEADER p++; // VERSION p++; // SUBVERSION oldversion = READUINT16(p); - switch(oldversion) // demoversion + + switch (oldversion) // demoversion { - case DEMOVERSION: // latest always supported - p += 64; // full demo title - break; -#ifdef DEMO_COMPAT_100 - case 0x0001: - // Old replays gotta go :] - CONS_Alert(CONS_NOTICE, M_GetText("File '%s' outdated version. It will be overwritten. Nyeheheh.\n"), oldname); - Z_Free(buffer); - return UINT8_MAX; + case DEMOVERSION: // latest always supported + p += 64; // full demo title + break; + #ifdef DEMO_COMPAT_100 + case 0x0001: + // Old replays gotta go :] + CONS_Alert(CONS_NOTICE, M_GetText("File '%s' outdated version. It will be overwritten. Nyeheheh.\n"), oldname); + return UINT8_MAX; #endif - // too old, cannot support. - default: - CONS_Alert(CONS_NOTICE, M_GetText("File '%s' invalid format. It will be overwritten.\n"), oldname); - Z_Free(buffer); - return UINT8_MAX; + // too old, cannot support. + default: + CONS_Alert(CONS_NOTICE, M_GetText("File '%s' invalid format. It will be overwritten.\n"), oldname); + return UINT8_MAX; } + p += 16; // demo checksum + if (memcmp(p, "PLAY", 4)) { CONS_Alert(CONS_NOTICE, M_GetText("File '%s' invalid format. It will be overwritten.\n"), oldname); - Z_Free(buffer); return UINT8_MAX; - } p += 4; // "PLAY" + } + + p += 4; // "PLAY" p += 2; // gamemap p += 16; // mapmd5 flags = READUINT8(p); p++; // gametype G_SkipDemoExtraFiles(&p); + if (!(flags & aflags)) { CONS_Alert(CONS_NOTICE, M_GetText("File '%s' not from same game mode. It will be overwritten.\n"), oldname); - Z_Free(buffer); return UINT8_MAX; } + if (flags & DF_RECORDATTACK) { oldtime = READUINT32(p); @@ -2095,21 +2159,23 @@ UINT8 G_CmpDemoTime(char *oldname, char *newname) else // appease compiler return UINT8_MAX; - Z_Free(buffer); - c = 0; + if (newtime < oldtime || (newtime == oldtime && (newlap < oldlap))) c |= 1; // Better time + if (newlap < oldlap || (newlap == oldlap && newtime < oldtime)) c |= 1<<1; // Better lap time + return c; } void G_LoadDemoInfo(menudemo_t *pdemo) { - UINT8 *infobuffer, *info_p, *extrainfo_p; + UINT8 *info_p, *extrainfo_p; + CLEANUP(Z_Pfree) UINT8 *infobuffer = NULL; UINT8 version, subversion, pdemoflags; UINT16 pdemoversion, count; @@ -2118,7 +2184,6 @@ void G_LoadDemoInfo(menudemo_t *pdemo) CONS_Alert(CONS_ERROR, M_GetText("Failed to read file '%s'.\n"), pdemo->filepath); pdemo->type = MD_INVALID; sprintf(pdemo->title, "INVALID REPLAY"); - return; } @@ -2129,7 +2194,6 @@ void G_LoadDemoInfo(menudemo_t *pdemo) CONS_Alert(CONS_ERROR, M_GetText("%s is not a SRB2Kart replay file.\n"), pdemo->filepath); pdemo->type = MD_INVALID; sprintf(pdemo->title, "INVALID REPLAY"); - Z_Free(infobuffer); return; } @@ -2144,41 +2208,40 @@ void G_LoadDemoInfo(menudemo_t *pdemo) memset(pdemo->version, 0, sizeof(pdemo->version)); snprintf(pdemo->version, sizeof(pdemo->version), "v%d.%d", version, subversion); - switch(pdemoversion) + switch (pdemoversion) { - case DEMOVERSION: // latest always supported - // demo title - M_Memcpy(pdemo->title, info_p, 64); - info_p += 64; - - break; + case DEMOVERSION: // latest always supported + // demo title + M_Memcpy(pdemo->title, info_p, 64); + info_p += 64; + break; #ifdef DEMO_COMPAT_100 - case 0x0001: - pdemo->type = MD_OUTDATED; - sprintf(pdemo->title, "Legacy Replay"); - break; + case 0x0001: + pdemo->type = MD_OUTDATED; + sprintf(pdemo->title, "Legacy Replay"); + break; #endif - // too old, cannot support. - default: - CONS_Alert(CONS_ERROR, M_GetText("%s is an incompatible replay format and cannot be played.\n"), pdemo->filepath); - pdemo->type = MD_INVALID; - sprintf(pdemo->title, "INVALID REPLAY"); - Z_Free(infobuffer); - return; + // too old, cannot support. + default: + CONS_Alert(CONS_ERROR, M_GetText("%s is an incompatible replay format and cannot be played.\n"), pdemo->filepath); + pdemo->type = MD_INVALID; + sprintf(pdemo->title, "INVALID REPLAY"); + return; } if (version != VERSION || subversion != SUBVERSION) pdemo->type = MD_OUTDATED; info_p += 16; // demo checksum + if (memcmp(info_p, "PLAY", 4)) { CONS_Alert(CONS_ERROR, M_GetText("%s is the wrong type of recording and cannot be played.\n"), pdemo->filepath); pdemo->type = MD_INVALID; sprintf(pdemo->title, "INVALID REPLAY"); - Z_Free(infobuffer); return; } + info_p += 4; // "PLAY" pdemo->map = READINT16(info_p); info_p += 16; // mapmd5 @@ -2189,7 +2252,6 @@ void G_LoadDemoInfo(menudemo_t *pdemo) if (!(pdemoflags & DF_MULTIPLAYER)) { CONS_Alert(CONS_ERROR, M_GetText("%s is not a multiplayer replay and can't be listed on this menu fully yet.\n"), pdemo->filepath); - Z_Free(infobuffer); return; } #ifdef DEMO_COMPAT_100 @@ -2198,7 +2260,6 @@ void G_LoadDemoInfo(menudemo_t *pdemo) CONS_Alert(CONS_ERROR, M_GetText("%s is a legacy multiplayer replay and cannot be played.\n"), pdemo->filepath); pdemo->type = MD_INVALID; sprintf(pdemo->title, "INVALID REPLAY"); - Z_Free(infobuffer); return; } #endif @@ -2213,6 +2274,7 @@ void G_LoadDemoInfo(menudemo_t *pdemo) // Pared down version of CV_LoadNetVars to find the kart speed pdemo->kartspeed = 1; // Default to normal speed count = READUINT16(info_p); + while (count--) { UINT16 netid; @@ -2225,10 +2287,11 @@ void G_LoadDemoInfo(menudemo_t *pdemo) if (netid == cv_kartspeed.netid) { - UINT8 j; - for (j = 0; kartspeed_cons_t[j].strvalue; j++) + for (UINT8 j = 0; kartspeed_cons_t[j].strvalue; j++) + { if (!stricmp(kartspeed_cons_t[j].strvalue, svalue)) pdemo->kartspeed = kartspeed_cons_t[j].value; + } } else if (netid == cv_basenumlaps.netid && pdemo->gametype == GT_RACE) pdemo->numlaps = atoi(svalue); @@ -2255,22 +2318,28 @@ void G_LoadDemoInfo(menudemo_t *pdemo) M_Memcpy(temp,extrainfo_p,16); extrainfo_p += 16; pdemo->standings[count].skin = UINT8_MAX; + for (i = 0; i < numskins; i++) + { if (stricmp(skins[i].name, temp) == 0) { pdemo->standings[count].skin = i; break; } + } // Color M_Memcpy(temp,extrainfo_p,16); extrainfo_p += 16; + for (i = 0; i < MAXSKINCOLORS; i++) + { if (!stricmp(KartColor_Names[i],temp)) // SRB2kart { pdemo->standings[count].color = i; break; } + } // Score/time/whatever pdemo->standings[count].timeorscore = READUINT32(extrainfo_p); @@ -2282,7 +2351,6 @@ void G_LoadDemoInfo(menudemo_t *pdemo) } // I think that's everything we need? - Z_Free(infobuffer); } #if defined (_WIN32) @@ -2422,28 +2490,30 @@ void G_LoadDemoTitle(menudemo_t *pdemo) memset(pdemo->date, 0, sizeof(pdemo->date)); - switch(pdemoversion) + switch (pdemoversion) { - case DEMOVERSION: // latest always supported - // demo title - M_Memcpy(pdemo->title, info_p, 64); + case DEMOVERSION: // latest always supported + // demo title + M_Memcpy(pdemo->title, info_p, 64); - // demo date - char *demodate; - demodate = G_GetDemoDate(pdemo); - if (demodate) - strncpy(pdemo->date, demodate, sizeof(pdemo->date)); - free(demodate); - break; + // demo date + char *demodate; + demodate = G_GetDemoDate(pdemo); + + if (demodate) + strncpy(pdemo->date, demodate, sizeof(pdemo->date)); + + free(demodate); + break; #ifdef DEMO_COMPAT_100 - case 0x0001: - sprintf(pdemo->title, "Legacy Replay"); - break; + case 0x0001: + sprintf(pdemo->title, "Legacy Replay"); + break; #endif - // too old, cannot support. - default: - CONS_Alert(CONS_ERROR, M_GetText("%s is an incompatible replay format and cannot be played.\n"), pdemo->filepath); - sprintf(pdemo->title, "INVALID REPLAY"); + // too old, cannot support. + default: + CONS_Alert(CONS_ERROR, M_GetText("%s is an incompatible replay format and cannot be played.\n"), pdemo->filepath); + sprintf(pdemo->title, "INVALID REPLAY"); } } @@ -2465,8 +2535,9 @@ void G_DoPlayDemo(char *defdemoname) { UINT8 i, p; lumpnum_t l; - char skin[17],color[17],*n,*pdemoname; - UINT8 version,subversion; + char skin[17], color[17], *n; + CLEANUP(Z_Pfree) char *pdemoname; + UINT8 version, subversion; UINT32 randseed; char msg[1024]; #if defined(SKIPERRORS) && !defined(DEVELOP) @@ -2488,11 +2559,13 @@ void G_DoPlayDemo(char *defdemoname) } else { - n = defdemoname+strlen(defdemoname); + n = defdemoname + strlen(defdemoname); + while (*n != '/' && *n != '\\' && n != defdemoname) n--; if (n != defdemoname) n++; + pdemoname = ZZ_Alloc(strlen(n)+1); strcpy(pdemoname,n); @@ -2510,6 +2583,7 @@ void G_DoPlayDemo(char *defdemoname) M_StartMessage(msg, NULL, MM_NOTHING); return; } + demobuf.p = demobuf.buffer; } // load demo resource from WAD @@ -2533,53 +2607,58 @@ void G_DoPlayDemo(char *defdemoname) // read demo header gameaction = ga_nothing; demo.playback = true; + if (memcmp(demobuf.p, DEMOHEADER, 12)) { snprintf(msg, 1024, M_GetText("%s is not a SRB2Kart replay file.\n"), pdemoname); CONS_Alert(CONS_ERROR, "%s", msg); M_StartMessage(msg, NULL, MM_NOTHING); - G_ResetDemoPlayback(pdemoname); + G_ResetDemoPlayback(); return; } + demobuf.p += 12; // DEMOHEADER version = READUINT8(demobuf.p); subversion = READUINT8(demobuf.p); demo.version = READUINT16(demobuf.p); - switch(demo.version) - { - case DEMOVERSION: // latest always supported - // demo title - M_Memcpy(demo.titlename, demobuf.p, 64); - demobuf.p += 64; - break; + switch (demo.version) + { + case DEMOVERSION: // latest always supported + // demo title + M_Memcpy(demo.titlename, demobuf.p, 64); + demobuf.p += 64; + break; #ifdef DEMO_COMPAT_100 - case 0x0001: - break; + case 0x0001: + break; #endif - // too old, cannot support. - default: - snprintf(msg, 1024, M_GetText("%s is an incompatible replay format and cannot be played.\n"), pdemoname); - CONS_Alert(CONS_ERROR, "%s", msg); - M_StartMessage(msg, NULL, MM_NOTHING); - G_ResetDemoPlayback(pdemoname); - return; + // too old, cannot support. + default: + snprintf(msg, 1024, M_GetText("%s is an incompatible replay format and cannot be played.\n"), pdemoname); + CONS_Alert(CONS_ERROR, "%s", msg); + M_StartMessage(msg, NULL, MM_NOTHING); + G_ResetDemoPlayback(); + return; } + demobuf.p += 16; // demo checksum + if (memcmp(demobuf.p, "PLAY", 4)) { snprintf(msg, 1024, M_GetText("%s is the wrong type of recording and cannot be played.\n"), pdemoname); CONS_Alert(CONS_ERROR, "%s", msg); M_StartMessage(msg, NULL, MM_NOTHING); - G_ResetDemoPlayback(pdemoname); + G_ResetDemoPlayback(); return; } + demobuf.p += 4; // "PLAY" gamemap = READINT16(demobuf.p); demobuf.p += 16; // mapmd5 - demoflags = READUINT8(demobuf.p); + #ifdef DEMO_COMPAT_100 if (demo.version == 0x0001) { @@ -2588,7 +2667,7 @@ void G_DoPlayDemo(char *defdemoname) snprintf(msg, 1024, M_GetText("%s is an alpha multiplayer replay and cannot be played.\n"), pdemoname); CONS_Alert(CONS_ERROR, "%s", msg); M_StartMessage(msg, NULL, MM_NOTHING); - G_ResetDemoPlayback(pdemoname); + G_ResetDemoPlayback(); return; } } @@ -2611,41 +2690,43 @@ void G_DoPlayDemo(char *defdemoname) { switch (error) { - case DFILE_ERROR_NOTLOADED: - snprintf(msg, 1024, - M_GetText("Required files for this demo are not loaded.\n\nUse\n\"playdemo %s -addfiles\"\nto load them and play the demo.\n"), - pdemoname); - break; + case DFILE_ERROR_NOTLOADED: + snprintf(msg, 1024, + "Required files for this demo are not loaded.\n\nUse\n\"playdemo %s -addfiles\"\nto load them and play the demo.\n", + pdemoname); + break; - case DFILE_ERROR_OUTOFORDER: - snprintf(msg, 1024, - M_GetText("Required files for this demo are loaded out of order.\n\nUse\n\"playdemo %s -force\"\nto play the demo anyway.\n"), - pdemoname); - break; + case DFILE_ERROR_OUTOFORDER: + snprintf(msg, 1024, + "Required files for this demo are loaded out of order.\n\nUse\n\"playdemo %s -force\"\nto play the demo anyway.\n", + pdemoname); + break; - case DFILE_ERROR_INCOMPLETEOUTOFORDER: - snprintf(msg, 1024, - M_GetText("Required files for this demo are not loaded, and some are out of order.\n\nUse\n\"playdemo %s -addfiles\"\nto load needed files and play the demo.\n"), - pdemoname); - break; + case DFILE_ERROR_INCOMPLETEOUTOFORDER: + snprintf(msg, 1024, + "Required files for this demo are not loaded, and some are out of order.\n\nUse\n\"playdemo %s -addfiles\"\nto load needed files and play the demo.\n", + pdemoname); + break; - case DFILE_ERROR_CANNOTLOAD: - snprintf(msg, 1024, - M_GetText("Required files for this demo cannot be loaded.\n\nUse\n\"playdemo %s -force\"\nto play the demo anyway.\n"), - pdemoname); - break; + case DFILE_ERROR_CANNOTLOAD: + snprintf(msg, 1024, + "Required files for this demo cannot be loaded.\n\nUse\n\"playdemo %s -force\"\nto play the demo anyway.\n", + pdemoname); + break; - case DFILE_ERROR_EXTRAFILES: - snprintf(msg, 1024, - M_GetText("You have additional files loaded beyond the demo's file list.\n\nUse\n\"playdemo %s -force\"\nto play the demo anyway.\n"), - pdemoname); - break; + case DFILE_ERROR_EXTRAFILES: + snprintf(msg, 1024, + "You have additional files loaded beyond the demo's file list.\n\nUse\n\"playdemo %s -force\"\nto play the demo anyway.\n", + pdemoname); + break; } CONS_Alert(CONS_ERROR, "%s", msg); + if (!CON_Ready()) // In the console they'll just see the notice there! No point pulling them out. M_StartMessage(msg, NULL, MM_NOTHING); - G_ResetDemoPlayback(pdemoname); + + G_ResetDemoPlayback(); return; } } @@ -2662,19 +2743,20 @@ void G_DoPlayDemo(char *defdemoname) switch (modeattacking) { - case ATTACKING_NONE: // 0 - break; - case ATTACKING_RECORD: // 1 - hu_demotime = READUINT32(demobuf.p); - hu_demolap = READUINT32(demobuf.p); - break; - default: // 3 - modeattacking = ATTACKING_NONE; - break; + case ATTACKING_NONE: // 0 + break; + case ATTACKING_RECORD: // 1 + hu_demotime = READUINT32(demobuf.p); + hu_demolap = READUINT32(demobuf.p); + break; + default: // 3 + modeattacking = ATTACKING_NONE; + break; } // Random seed randseed = READUINT32(demobuf.p); + #ifdef DEMO_COMPAT_100 if (demo.version != 0x0001) #endif @@ -2708,7 +2790,7 @@ void G_DoPlayDemo(char *defdemoname) snprintf(msg, 1024, M_GetText("%s features a character that is not currently loaded.\n"), pdemoname); CONS_Alert(CONS_ERROR, "%s", msg); M_StartMessage(msg, NULL, MM_NOTHING); - G_ResetDemoPlayback(pdemoname); + G_ResetDemoPlayback(); return; } @@ -2718,17 +2800,19 @@ void G_DoPlayDemo(char *defdemoname) snprintf(msg, 1024, M_GetText("%s features a course that is not currently loaded.\n"), pdemoname); CONS_Alert(CONS_ERROR, "%s", msg); M_StartMessage(msg, NULL, MM_NOTHING); - G_ResetDemoPlayback(pdemoname); + G_ResetDemoPlayback(); return; } // Set color for (i = 0; i < MAXSKINCOLORS; i++) + { if (!stricmp(KartColor_Names[i],color)) // SRB2kart { players[0].skincolor = i; break; } + } // net var data CV_LoadNetVars(&demobuf.p); @@ -2739,12 +2823,10 @@ void G_DoPlayDemo(char *defdemoname) snprintf(msg, 1024, M_GetText("%s contains no data to be played.\n"), pdemoname); CONS_Alert(CONS_ERROR, "%s", msg); M_StartMessage(msg, NULL, MM_NOTHING); - G_ResetDemoPlayback(pdemoname); + G_ResetDemoPlayback(); return; } - Z_Free(pdemoname); - memset(&oldcmd,0,sizeof(oldcmd)); memset(&oldghost,0,sizeof(oldghost)); memset(&ghostext,0,sizeof(ghostext)); @@ -2779,15 +2861,13 @@ void G_DoPlayDemo(char *defdemoname) snprintf(msg, 1024, M_GetText("%s contains no data to be played.\n"), pdemoname); CONS_Alert(CONS_ERROR, "%s", msg); M_StartMessage(msg, NULL, MM_NOTHING); - G_ResetDemoPlayback(pdemoname); + G_ResetDemoPlayback(); return; } - Z_Free(pdemoname); - - memset(&oldcmd,0,sizeof(oldcmd)); - memset(&oldghost,0,sizeof(oldghost)); - memset(&ghostext,0,sizeof(ghostext)); + memset(&oldcmd, 0, sizeof(oldcmd)); + memset(&oldghost, 0, sizeof(oldghost)); + memset(&ghostext, 0, sizeof(ghostext)); #if defined(SKIPERRORS) && !defined(DEVELOP) if ((VERSION != version || SUBVERSION != subversion) && !skiperrors) @@ -2819,6 +2899,7 @@ void G_DoPlayDemo(char *defdemoname) while (p != 0xFF) { spectator = false; + if (p & DEMO_SPECTATOR) { spectator = true; @@ -2829,10 +2910,11 @@ void G_DoPlayDemo(char *defdemoname) snprintf(msg, 1024, M_GetText("%s is a Record Attack replay with spectators, and is thus invalid.\n"), pdemoname); CONS_Alert(CONS_ERROR, "%s", msg); M_StartMessage(msg, NULL, MM_NOTHING); - G_ResetDemoPlayback(pdemoname); + G_ResetDemoPlayback(); return; } } + slots[numslots] = p; numslots++; if (modeattacking && numslots > 1) @@ -2840,7 +2922,7 @@ void G_DoPlayDemo(char *defdemoname) snprintf(msg, 1024, M_GetText("%s is a Record Attack replay with multiple players, and is thus invalid.\n"), pdemoname); CONS_Alert(CONS_ERROR, "%s", msg); M_StartMessage(msg, NULL, MM_NOTHING); - G_ResetDemoPlayback(pdemoname); + G_ResetDemoPlayback(); return; } @@ -2862,12 +2944,15 @@ void G_DoPlayDemo(char *defdemoname) // Color M_Memcpy(color,demobuf.p,16); demobuf.p += 16; + for (i = 0; i < MAXSKINCOLORS; i++) + { if (!stricmp(KartColor_Names[i],color)) // SRB2kart { players[p].skincolor = i; break; } + } // Score, since Kart uses this to determine where you start on the map players[p].score = READUINT32(demobuf.p); @@ -2885,9 +2970,9 @@ void G_DoPlayDemo(char *defdemoname) // end of player read (the 0xFF marker) // so this is where we are to read our lua variables (if possible!) - if (demoflags & DF_LUAVARS) // again, used for compability, lua shit will be saved to replays regardless of if it's even been loaded + if (demoflags & DF_LUAVARS) // again, used for compability, lua shit will be saved to replays regardless of if it's even been loaded { - if (!gL) // No Lua state! ...I guess we'll just start one... + if (!gL) // No Lua state! ...I guess we'll just start one... LUA_ClearState(); // No modeattacking check, DF_LUAVARS won't be present here. @@ -2942,10 +3027,12 @@ void G_AddGhost(char *defdemoname) { INT32 i; lumpnum_t l; - char name[17],skin[17],color[17],*n,*pdemoname,md5[16]; + char name[17], skin[17], color[17], *n, md5[16]; + CLEANUP(Z_Pfree) char *pdemoname = NULL; demoghost *gh; + UINT8 *p; UINT8 flags; - UINT8 *buffer,*p; + CLEANUP(Z_Pfree) UINT8 *buffer = NULL; mapthing_t *mthing; UINT16 count, ghostversion; skin_t *ghskin = &skins[0]; @@ -2955,13 +3042,15 @@ void G_AddGhost(char *defdemoname) skin[16] = '\0'; color[16] = '\0'; - n = defdemoname+strlen(defdemoname); + n = defdemoname + strlen(defdemoname); + while (*n != '/' && *n != '\\' && n != defdemoname) n--; if (n != defdemoname) n++; + pdemoname = ZZ_Alloc(strlen(n)+1); - strcpy(pdemoname,n); + strcpy(pdemoname, n); // Internal if no extension, external if one exists if (FIL_CheckExtension(defdemoname)) @@ -2970,16 +3059,15 @@ void G_AddGhost(char *defdemoname) if (!FIL_ReadFileTag(defdemoname, &buffer, PU_LEVEL)) { CONS_Alert(CONS_ERROR, M_GetText("Failed to read file '%s'.\n"), defdemoname); - Z_Free(pdemoname); return; } + p = buffer; } // load demo resource from WAD else if ((l = W_CheckNumForName(defdemoname)) == LUMPERROR) { CONS_Alert(CONS_ERROR, M_GetText("Failed to read lump '%s'.\n"), defdemoname); - Z_Free(pdemoname); return; } else // it's an internal demo @@ -2989,8 +3077,6 @@ void G_AddGhost(char *defdemoname) if (memcmp(p, DEMOHEADER, 12)) { CONS_Alert(CONS_NOTICE, M_GetText("Ghost %s: Not a SRB2Kart replay.\n"), pdemoname); - Z_Free(pdemoname); - Z_Free(buffer); return; } @@ -2999,38 +3085,36 @@ void G_AddGhost(char *defdemoname) p++; // SUBVERSION ghostversion = READUINT16(p); - switch(ghostversion) + + switch (ghostversion) { - case DEMOVERSION: // latest always supported - p += 64; // title - break; + case DEMOVERSION: // latest always supported + p += 64; // title + break; #ifdef DEMO_COMPAT_100 - case 0x0001: - break; + case 0x0001: + break; #endif - // too old, cannot support. - default: - CONS_Alert(CONS_NOTICE, M_GetText("Ghost %s: Demo version incompatible.\n"), pdemoname); - Z_Free(pdemoname); - Z_Free(buffer); - return; + // too old, cannot support. + default: + CONS_Alert(CONS_NOTICE, "Ghost %s: Demo version incompatible.\n", pdemoname); + return; } M_Memcpy(md5, p, 16); p += 16; // demo checksum + for (gh = ghosts; gh; gh = gh->next) + { if (!memcmp(md5, gh->checksum, 16)) // another ghost in the game already has this checksum? { // Don't add another one, then! CONS_Debug(DBG_SETUP, "Rejecting duplicate ghost %s (MD5 was matched)\n", pdemoname); - Z_Free(pdemoname); - Z_Free(buffer); return; } + } if (memcmp(p, "PLAY", 4)) { - CONS_Alert(CONS_NOTICE, M_GetText("Ghost %s: Demo format unacceptable.\n"), pdemoname); - Z_Free(pdemoname); - Z_Free(buffer); + CONS_Alert(CONS_NOTICE, "Ghost %s: Demo format unacceptable.\n", pdemoname); return; } @@ -3042,9 +3126,7 @@ void G_AddGhost(char *defdemoname) if (!(flags & DF_GHOST)) { - CONS_Alert(CONS_NOTICE, M_GetText("Ghost %s: No ghost data in this demo.\n"), pdemoname); - Z_Free(pdemoname); - Z_Free(buffer); + CONS_Alert(CONS_NOTICE, "Ghost %s: No ghost data in this demo.\n", pdemoname); return; } @@ -3057,15 +3139,16 @@ void G_AddGhost(char *defdemoname) if (ghostversion != 0x0001) #endif G_SkipDemoExtraFiles(&p); // Don't wanna modify the file list for ghosts. - switch ((flags & DF_ATTACKMASK)>>DF_ATTACKSHIFT) + + switch ((flags & DF_ATTACKMASK) >> DF_ATTACKSHIFT) { - case ATTACKING_NONE: // 0 - break; - case ATTACKING_RECORD: // 1 - p += 8; // demo time, lap - break; - default: // 3 - break; + case ATTACKING_NONE: // 0 + break; + case ATTACKING_RECORD: // 1 + p += 8; // demo time, lap + break; + default: // 3 + break; } p += 4; // random seed @@ -3118,8 +3201,6 @@ void G_AddGhost(char *defdemoname) if (*p == DEMOMARKER) { CONS_Alert(CONS_NOTICE, M_GetText("Failed to add ghost %s: Replay is empty.\n"), pdemoname); - Z_Free(pdemoname); - Z_Free(buffer); return; } @@ -3130,8 +3211,6 @@ void G_AddGhost(char *defdemoname) if (READUINT8(p) != 0) { CONS_Alert(CONS_NOTICE, M_GetText("Failed to add ghost %s: Invalid player slot.\n"), pdemoname); - Z_Free(pdemoname); - Z_Free(buffer); return; } @@ -3155,8 +3234,6 @@ void G_AddGhost(char *defdemoname) if (READUINT8(p) != 0xFF) { CONS_Alert(CONS_NOTICE, M_GetText("Failed to add ghost %s: Invalid player slot.\n"), pdemoname); - Z_Free(pdemoname); - Z_Free(buffer); return; } #ifdef DEMO_COMPAT_100 @@ -3164,11 +3241,13 @@ void G_AddGhost(char *defdemoname) #endif for (i = 0; i < numskins; i++) + { if (!stricmp(skins[i].name,skin)) { ghskin = &skins[i]; break; } + } if (i == numskins) { @@ -3183,21 +3262,26 @@ void G_AddGhost(char *defdemoname) gh->buffer = buffer; M_Memcpy(gh->checksum, md5, 16); gh->p = p; + buffer = NULL; // buffer can't be freed now! ghosts = gh; gh->version = ghostversion; mthing = playerstarts[0]; I_Assert(mthing); + { // A bit more complex than P_SpawnPlayer because ghosts aren't solid and won't just push themselves out of the ceiling. - fixed_t z,f,c; + fixed_t z, f, c; + gh->mo = P_SpawnMobj(mthing->x << FRACBITS, mthing->y << FRACBITS, 0, MT_GHOST); gh->mo->angle = FixedAngle(mthing->angle*FRACUNIT); f = gh->mo->floorz; c = gh->mo->ceilingz - mobjinfo[MT_PLAYER].height; + if (!!(mthing->options & MTF_AMBUSH) ^ !!(mthing->options & MTF_OBJECTFLIP)) { z = c; + if (mthing->options >> ZSHIFT) z -= ((mthing->options >> ZSHIFT) << FRACBITS); if (z < f) @@ -3206,13 +3290,16 @@ void G_AddGhost(char *defdemoname) else { z = f; + if (mthing->options >> ZSHIFT) z += ((mthing->options >> ZSHIFT) << FRACBITS); if (z > c) z = c; } + gh->mo->z = z; } + gh->mo->state = states+S_KART_STND1; // SRB2kart - was S_PLAY_STND gh->mo->sprite = gh->mo->state->sprite; gh->mo->frame = (gh->mo->state->frame & FF_FRAMEMASK) | tr_trans20<mo->color = ((skin_t*)gh->mo->skin)->prefcolor; + for (i = 0; i < MAXSKINCOLORS; i++) + { if (!stricmp(KartColor_Names[i],color)) // SRB2kart { gh->mo->color = (UINT8)i; break; } + } + gh->oldmo.color = gh->mo->color; CONS_Printf(M_GetText("Added ghost %s from %s\n"), name, pdemoname); - Z_Free(pdemoname); } // A simplified version of G_AddGhost... void G_UpdateStaffGhostName(lumpnum_t l) { - UINT8 *buffer,*p; + UINT8 *p; + CLEANUP(Z_Pfree) UINT8 *buffer = NULL; UINT16 ghostversion; UINT8 flags; @@ -3251,7 +3342,7 @@ void G_UpdateStaffGhostName(lumpnum_t l) // read demo header if (memcmp(p, DEMOHEADER, 12)) { - goto fail; + return; } p += 12; // DEMOHEADER @@ -3259,27 +3350,25 @@ void G_UpdateStaffGhostName(lumpnum_t l) p++; // SUBVERSION ghostversion = READUINT16(p); - switch(ghostversion) + switch (ghostversion) { - case DEMOVERSION: // latest always supported - p += 64; // full demo title - break; - + case DEMOVERSION: // latest always supported + p += 64; // full demo title + break; #ifdef DEMO_COMPAT_100 - case 0x0001: - break; + case 0x0001: + break; #endif - - // too old, cannot support. - default: - goto fail; + // too old, cannot support. + default: + return; } p += 16; // demo checksum if (memcmp(p, "PLAY", 4)) { - goto fail; + return; } p += 4; // "PLAY" @@ -3289,7 +3378,7 @@ void G_UpdateStaffGhostName(lumpnum_t l) flags = READUINT8(p); if (!(flags & DF_GHOST)) { - goto fail; // we don't NEED to do it here, but whatever + return; // we don't NEED to do it here, but whatever } #ifdef DEMO_COMPAT_100 @@ -3304,13 +3393,13 @@ void G_UpdateStaffGhostName(lumpnum_t l) switch ((flags & DF_ATTACKMASK)>>DF_ATTACKSHIFT) { - case ATTACKING_NONE: // 0 - break; - case ATTACKING_RECORD: // 1 - p += 8; // demo time, lap - break; - default: // 3 - break; + case ATTACKING_NONE: // 0 + break; + case ATTACKING_RECORD: // 1 + p += 8; // demo time, lap + break; + default: // 3 + break; } p += 4; // random seed @@ -3322,7 +3411,7 @@ void G_UpdateStaffGhostName(lumpnum_t l) // Player name M_Memcpy(dummystaffname, p,16); dummystaffname[16] = '\0'; - goto fail; // Not really a failure but whatever + return; // Not really a failure but whatever } #endif @@ -3330,6 +3419,7 @@ void G_UpdateStaffGhostName(lumpnum_t l) // Ehhhh don't need ghostversion here (?) so I'll reuse the var here ghostversion = READUINT16(p); + while (ghostversion--) { p += 2; @@ -3339,14 +3429,12 @@ void G_UpdateStaffGhostName(lumpnum_t l) // Assert first player is in and then read name if (READUINT8(p) != 0) - goto fail; - M_Memcpy(dummystaffname, p,16); + return; + + M_Memcpy(dummystaffname, p, 16); dummystaffname[16] = '\0'; // Ok, no longer any reason to care, bye -fail: - Z_Free(buffer); - return; } // @@ -3390,12 +3478,7 @@ void G_DoneLevelLoad(void) // called from stopdemo command, map command, and g_checkdemoStatus. void G_StopDemo(void) { - Z_Free(demobuf.buffer); - demobuf.buffer = NULL; - demo.playback = false; - if (demo.title) - modeattacking = ATTACKING_NONE; - demo.title = false; + G_ResetDemoPlayback(); demo.timing = false; singletics = false; @@ -3508,9 +3591,8 @@ void G_ResetDemoRecording(void) demo.recording = false; } -static void G_ResetDemoPlayback(char *pdemoname) +static void G_ResetDemoPlayback(void) { - Z_Free(pdemoname); Z_Free(demobuf.buffer); demobuf.buffer = NULL; demo.playback = false; -- 2.54.0 From 8a305d3c797fe0b9af8fcde38f920095103a327a Mon Sep 17 00:00:00 2001 From: Alug Date: Fri, 24 Oct 2025 03:47:50 +0200 Subject: [PATCH 012/104] move those to D_ClearState --- src/d_main.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/d_main.c b/src/d_main.c index 992fc59db..d4cef24c3 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -979,6 +979,8 @@ void D_ClearState(void) { INT32 i; + demo.title = false; + // okay, stop now // (otherwise the game still thinks we're playing!) CURLAbortFile(); @@ -1034,6 +1036,9 @@ void D_ClearState(void) wipegamestate = GS_NULL; M_ClearMenus(true); + + // map palettes affect this + D_ResetDeviceLED(); } // @@ -1041,12 +1046,9 @@ void D_ClearState(void) // void D_StartTitle(void) { - demo.title = false; D_ClearState(); - multiplayer = false; // reset manually - netgame = false; // title menu shouldnt be a netgame lmao + multiplayer = netgame = false; // title menu shouldnt be a netgame or multiplayer lmao F_StartTitleScreen(); - D_ResetDeviceLED(); } // -- 2.54.0 From 82c41915161650fa0a15fed5d05a2ff537a4ae97 Mon Sep 17 00:00:00 2001 From: Alug Date: Fri, 24 Oct 2025 04:09:43 +0200 Subject: [PATCH 013/104] Revert "SDLSetMode: render immediately after resolution change to avoid 1-frame of texture presented at wrong size" This reverts commit 0e2ffdeb1dedfd9954ddd4897d8d180ead70a014. --- src/sdl/i_video.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/sdl/i_video.c b/src/sdl/i_video.c index 229008352..7393d8e4b 100644 --- a/src/sdl/i_video.c +++ b/src/sdl/i_video.c @@ -1313,11 +1313,6 @@ static void SDLSetMode(INT32 width, INT32 height, SDL_bool fullscreen) texture = SDL_CreateTexture(renderer, sw_texture_format, SDL_TEXTUREACCESS_STREAMING, width, height); } - - if (graphics_started) - { - I_UpdateNoVsync(); - } } // -- 2.54.0 From 59470ddbd451a07074df3b5a87c612aff5cc382f Mon Sep 17 00:00:00 2001 From: Alug Date: Fri, 24 Oct 2025 14:24:08 +0200 Subject: [PATCH 014/104] fix oob access in D_SetupVote check if luamaps was set before --- src/d_netcmd.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/d_netcmd.c b/src/d_netcmd.c index d62be9daa..92d9fb935 100644 --- a/src/d_netcmd.c +++ b/src/d_netcmd.c @@ -2487,15 +2487,18 @@ void D_SetupVote(void) INT32 i; UINT8 gt = (cv_kartgametypepreference.value == -1) ? gametype : cv_kartgametypepreference.value; UINT8 secondgt = G_SometimesGetDifferentGametype(gt); - INT16 votebuffer[4] = {-1,-1,-1,0}; + INT16 votebuffer[4] = {-1,-1,-1, 0}; INT16 luamaps[4] = {0, 0, 0, 0}; LUA_HookSetupVote(luamaps, sizeof(luamaps)/sizeof(luamaps[0]), gt, secondgt); // Correct secondgt if needed - UINT8 typeoflevel = mapheaderinfo[luamaps[2]-1]->typeoflevel; - if (luamaps[2] && (typeoflevel & G_TOLFlag(secondgt&(~0x80))) == 0) - secondgt = ((typeoflevel & TOL_RACE) ? GT_RACE : GT_MATCH)|(secondgt&0x80); + if (luamaps[2]) + { + UINT8 typeoflevel = mapheaderinfo[luamaps[2]-1]->typeoflevel; + if ((typeoflevel & G_TOLFlag(secondgt&(~0x80))) == 0) + secondgt = ((typeoflevel & TOL_RACE) ? GT_RACE : GT_MATCH)|(secondgt&0x80); + } if (cv_kartencore.value && gt == GT_RACE) WRITEUINT8(p, (gt|0x80)); -- 2.54.0 From ba5b79e48a5dff68fae9b93112d4aee79373f1e3 Mon Sep 17 00:00:00 2001 From: Alug Date: Fri, 24 Oct 2025 15:33:44 +0200 Subject: [PATCH 015/104] dont double print kitchen sink message to log we already handle this in HU_DoCEcho --- src/p_map.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/p_map.c b/src/p_map.c index 4a880ad42..9e428d999 100644 --- a/src/p_map.c +++ b/src/p_map.c @@ -708,7 +708,7 @@ static boolean PIT_CheckThing(mobj_t *thing) HU_SetCEchoFlags(0); HU_SetCEchoDuration(5); HU_DoCEcho(va("%s\\was hit by a kitchen sink.\\\\\\\\", player_names[thing->player-players])); - I_OutputMsg("%s was hit by a kitchen sink.\n", player_names[thing->player-players]); + //I_OutputMsg("%s was hit by a kitchen sink.\n", player_names[thing->player-players]); P_DamageMobj(thing, tmthing, tmthing->target, DMG_INSTAKILL); P_KillMobj(tmthing, thing, thing); } @@ -977,7 +977,7 @@ static boolean PIT_CheckThing(mobj_t *thing) HU_SetCEchoFlags(0); HU_SetCEchoDuration(5); HU_DoCEcho(va("%s\\was hit by a kitchen sink.\\\\\\\\", player_names[tmthing->player-players])); - I_OutputMsg("%s was hit by a kitchen sink.\n", player_names[tmthing->player-players]); + //I_OutputMsg("%s was hit by a kitchen sink.\n", player_names[tmthing->player-players]); P_DamageMobj(tmthing, thing, thing->target, DMG_INSTAKILL); P_KillMobj(thing, tmthing, tmthing); } -- 2.54.0 From 16a531272fa839d99ff8946d6ec68aa91485291b Mon Sep 17 00:00:00 2001 From: Indev Date: Fri, 24 Oct 2025 16:36:07 +0300 Subject: [PATCH 016/104] Skip repeating backslashes in HU_DoCEcho when printing to console --- src/hu_stuff.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/hu_stuff.c b/src/hu_stuff.c index 7f034f8ad..0e29a5124 100644 --- a/src/hu_stuff.c +++ b/src/hu_stuff.c @@ -2855,8 +2855,20 @@ void HU_DoCEcho(const char *msg) strncpy(temp, cechotext, sizeof(temp)); for (char *p = temp; *p != '\0'; ++p) + { if (*p == '\\') + { *p = '\n'; + ++p; + char *skip_p = p; // Point at which we will move part of string after all \'s + + while (*p == '\\') + ++p; + + memmove(skip_p, p, strlen(p)+1); // move the rest of string with null byte + p = skip_p; // Restore p + } + } CONS_Printf("%s\n", temp); -- 2.54.0 From bb3dd435f02c63d6f35eb6ab9a922ab20322061a Mon Sep 17 00:00:00 2001 From: Alug Date: Fri, 24 Oct 2025 15:39:30 +0200 Subject: [PATCH 017/104] oop didnt mean to move this --- src/v_video.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/v_video.c b/src/v_video.c index dd5091fa1..031971326 100644 --- a/src/v_video.c +++ b/src/v_video.c @@ -1935,6 +1935,7 @@ UINT8 *V_GetStringColormap(INT32 colorflags) void V_DrawCharacter(INT32 x, INT32 y, INT32 c, boolean lowercaseallowed) { INT32 w, flags; + const UINT8 *colormap = V_GetStringColormap(c); flags = c & ~(V_CHARCOLORMASK | V_PARAMMASK); c &= 0x7f; @@ -1950,8 +1951,6 @@ void V_DrawCharacter(INT32 x, INT32 y, INT32 c, boolean lowercaseallowed) if (x + w > vid.width) return; - const UINT8 *colormap = V_GetStringColormap(c); - if (colormap != NULL) V_DrawMappedPatch(x, y, flags, hu_font[c], colormap); else -- 2.54.0 From 26fc417555c83ff4665768e208d817c98cf22ed8 Mon Sep 17 00:00:00 2001 From: Alug Date: Fri, 24 Oct 2025 16:09:43 +0200 Subject: [PATCH 018/104] forgor about localskin menu Zzz.... --- src/m_menu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/m_menu.c b/src/m_menu.c index a7be33c42..6eaccdce0 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -9643,7 +9643,7 @@ static void M_DrawLocalSkinMenu(void) //this is a very shitty solution for checking if a sprite needs flipping //but it works - if ((sprframe->lumppat[speenframe] == sprframe->lumppat[8-speenframe]) && (speenframe > 4)) + if ((speenframe > 4) && (sprframe->lumppat[speenframe] == sprframe->lumppat[8-speenframe])) { flags = V_FLIP; // This sprite is left/right flipped! } -- 2.54.0 From a69df8807dcb513d2324a2d5d42c20c89621b511 Mon Sep 17 00:00:00 2001 From: Alug Date: Fri, 24 Oct 2025 21:56:52 +0200 Subject: [PATCH 019/104] fix some messed up whitespaces lel --- src/m_argv.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/m_argv.c b/src/m_argv.c index a3708d033..2ec1b188a 100644 --- a/src/m_argv.c +++ b/src/m_argv.c @@ -69,16 +69,18 @@ INT32 M_CheckProtoParam(const char *check) for (i = 1; i < myargc; i++) { - if (strncmp(myargv[i], "srb2kart://", 11) == 0) + if (strncmp(myargv[i], "srb2kart://", 11) == 0) { - if (strncmp(myargv[i]+11, check, strlen(check))==0) + if (strncmp(myargv[i]+11, check, strlen(check)) == 0) { found = i; return i; } } } + found = 0; + return 0; } @@ -93,7 +95,7 @@ const char *M_GetProtoParam(void) for (i = 1; i < myargc; i++) { - if (strncmp(myargv[i], "srb2kart://", 11) == 0) + if (strncmp(myargv[i], "srb2kart://", 11) == 0) { string = strchr(myargv[i], '/'); string = strchr(string+1, '/'); -- 2.54.0 From 28685ea6582221db9faadd60b3ab22da0d20eaf7 Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 25 Oct 2025 20:38:51 +0200 Subject: [PATCH 020/104] fix some tooltips issues, wording and inconsistencies fbo also now supports from gl 2.1 --- src/m_menudefs.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/m_menudefs.c b/src/m_menudefs.c index e02113026..6bda9c733 100644 --- a/src/m_menudefs.c +++ b/src/m_menudefs.c @@ -968,16 +968,16 @@ static const char* OP_ExpTooltips[] = NULL, "How far Mobj interpolation should take effect.", "When weather is on this will cut the object amount used in half.", - "Sets minimum sector brightness, useful for dark areas", + "Sets minimum sector brightness, useful for dark areas.", //"Should the directional lightning be randomized each map?\nTakes effect on next map load.", "Toggle being able to see the sky.", - "Change the FPS counter sampling method\nInaccurate updates slower and might miss frame drops and such\nAccurate updates faster and is more accurate, but might be less readable", // how to ingles?? - "Skips rendering frames if game logic takes too long preventing issues during performance drops." // idk im shit as describing things + "Change the FPS counter sampling method\nInaccurate updates slower\nand might miss sudden framerate changes and drops,\nproviding a more averaged result.\nAccurate updates faster, but might be less readable.", // how to ingles?? + "Skips rendering frames if game logic takes too long\npreventing gameplay issues during performance drops.", // idk im shit as describing things "Different methods of scaling the votescreen backgrounds.", #ifdef HWRENDER "Should the game do Screen Textures? Provides a good boost to frames\nat the cost of some visual effects not working when disabled.", #ifdef USE_FBO_OGL - "Allows the game to downsample from a higher resolution than your display\nin OpenGL renderer mode. Requires a GPU with atleast OpenGL 3.0 support.", + "Allows the game to downsample from a higher resolution\nthan your display in OpenGL renderer mode.\nRequires a GPU with atleast OpenGL 2.1 support.", #endif "Change the bit depth of the Lookup Palette in Palette rendering mode\n 16 bits is like software looks ingame\nwhile 24 bits is how software looks in screenshots.", #endif @@ -1375,15 +1375,15 @@ static menuitem_t OP_Player4CamOptionsMenu[] = static const char* OP_PlayerCamOptionsTooltips[] = { NULL, - "Should the Camera flip on gravity flipped sections?.", + "Should the Camera flip on gravity flipped sections?", "Camera distance relative to the Player.", - "Height of the Camera", - "Pitch Camera on Upwards or Downhill Slopes", - "Speed of the Camera", - "Should looking back inherit the Players Momentum?\nEither inherit Player Momentum or double of it\nmay make looking back while boosting or going in high speed less jarring", + "Height of the Camera.", + "Pitch Camera on Upwards or Downhill Slopes.", + "Speed of the Camera.", + "Should looking back inherit the Players Momentum?\nEither inherit Player Momentum or double of it\nmay make looking back while boosting or going in high speed less jarring.", "Allows looking up/down by holding\naim forward/backward while standing still.", - "Speed of the Freecam/Spectator Camera", - "Toggle between Third or First Person camera", + "Speed of the Freecam/Spectator Camera.", + "Toggle between Third or First Person camera.", }; // Ok it's still called chatoptions but we'll put ping display in here to be clean @@ -1763,7 +1763,7 @@ static const char* OP_PlayerDistortTooltips[] = "Distance object rotation should be visable.", "Player rotation when sliptiding.", "Rotation of a player's boost trails and drift sparks.", - "Should banans rotate when thrown?\nAnd should they stay rotated when on the ground?.", + "Should banans rotate when thrown?\nAnd should they stay rotated when on the ground?", "Player squash and stretch.", "Player landing sound effect.", "Kart hopping while drifting. This is purely visual.", -- 2.54.0 From 8cc73bc482e2d0e73eeddf49b3303770af2c1c73 Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 25 Oct 2025 22:01:22 +0200 Subject: [PATCH 021/104] =?UTF-8?q?Port=20RR=C2=B4s=20gamma=20correction?= =?UTF-8?q?=20+=20split=20gamma=20and=20brightness?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit port of https://gitlab.com/kart-krew-dev/ring-racers/-/commit/e27506c660933e19dbcfe9ec776caf7819952e30 not cherry picked since it differs too much it would be hellish to untangle (sry!) Gamma is split from brightness since both do somewhat different things in the context here --- src/hardware/hw_main.cpp | 6 +- src/hardware/hw_md2.c | 2 +- src/m_menudefs.c | 50 +++++++------ src/r_draw.cpp | 23 ++++-- src/screen.c | 3 + src/v_video.c | 155 ++++++++++++++++++++------------------- src/v_video.h | 12 ++- 7 files changed, 141 insertions(+), 110 deletions(-) diff --git a/src/hardware/hw_main.cpp b/src/hardware/hw_main.cpp index 45f25c2a6..f4e95eb53 100644 --- a/src/hardware/hw_main.cpp +++ b/src/hardware/hw_main.cpp @@ -458,8 +458,8 @@ void HWR_Lighting(FSurfaceInfo *Surface, INT32 light_level, extracolormap_t *col // in palette rendering mode, this is not needed since it properly takes the changes to the palette itself if (!HWR_ShouldUsePaletteRendering()) { - V_CubeApply(&tint_color.s.red, &tint_color.s.green, &tint_color.s.blue); - V_CubeApply(&fade_color.s.red, &fade_color.s.green, &fade_color.s.blue); + V_CubeApply(&tint_color); + V_CubeApply(&fade_color); } Surface->PolyColor.rgba = poly_color.rgba; @@ -5962,7 +5962,7 @@ static void HWR_DoPostProcessor(player_t *player) Surf.PolyColor.s.alpha = 0xc0; // match software mode - V_CubeApply(&Surf.PolyColor.s.red, &Surf.PolyColor.s.green, &Surf.PolyColor.s.blue); + V_CubeApply(&Surf.PolyColor); GL_DrawPolygon(&Surf, v, 4, PF_Modulated|PF_Translucent|PF_NoTexture|PF_NoDepthTest); } diff --git a/src/hardware/hw_md2.c b/src/hardware/hw_md2.c index f3db532e9..7d4857dc3 100644 --- a/src/hardware/hw_md2.c +++ b/src/hardware/hw_md2.c @@ -417,7 +417,7 @@ static void md2_loadTexture(md2_t *model) size = w*h; while (size--) { - V_CubeApply(&image->s.red, &image->s.green, &image->s.blue); + V_CubeApply(image); image++; } } diff --git a/src/m_menudefs.c b/src/m_menudefs.c index 6bda9c733..5f2d782f5 100644 --- a/src/m_menudefs.c +++ b/src/m_menudefs.c @@ -818,26 +818,31 @@ static menuitem_t OP_VideoOptionsMenu[] = #if defined (__unix__) || defined (UNIXCOMMON) || defined (HAVE_SDL) {IT_STRING|IT_CVAR, NULL, "Fullscreen", &cv_fullscreen, 20}, #endif +#ifdef BACKWARDSCOMPATCORRECTION {IT_STRING | IT_CVAR | IT_CV_SLIDER, - NULL, "Brightness", &cv_globalgamma, 30}, - - {IT_STRING | IT_CVAR | IT_CV_SLIDER, - NULL, "Saturation", &cv_globalsaturation , 40}, - - {IT_SUBMENU|IT_STRING, NULL, "Advanced Color Settings...", &OP_ColorOptionsDef, 50}, - - {IT_STRING | IT_CVAR, NULL, "Draw Distance", &cv_drawdist, 65}, - {IT_STRING | IT_CVAR, NULL, "Weather Draw Distance", &cv_drawdist_precip, 75}, - - {IT_STRING | IT_CVAR, NULL, "Show FPS", &cv_ticrate, 95}, - {IT_STRING | IT_CVAR, NULL, "Vertical Sync", &cv_vidwait, 105}, - {IT_STRING | IT_CVAR, NULL, "FPS Cap", &cv_fpscap, 115}, - {IT_STRING | IT_CVAR, NULL, "Drift spark pulse size", &cv_driftsparkpulse, 125}, - {IT_STRING | IT_CVAR, NULL, "VHS effect", &cv_vhseffect, 135}, -#ifdef HWRENDER - {IT_SUBMENU|IT_STRING, NULL, "OpenGL Options...", &OP_OpenGLOptionsDef, 145}, + NULL, "Gamma", &cv_globalgamma, 30}, #endif - {IT_SUBMENU|IT_STRING, NULL, "Advanced Video Options...", &OP_ExpOptionsDef, 155}, + + {IT_STRING | IT_CVAR | IT_CV_SLIDER, + NULL, "Brightness", &cv_globalbrightness, 40}, + + {IT_STRING | IT_CVAR | IT_CV_SLIDER, + NULL, "Saturation", &cv_globalsaturation , 50}, + + {IT_SUBMENU|IT_STRING, NULL, "Advanced Color Settings...", &OP_ColorOptionsDef, 60}, + + {IT_STRING | IT_CVAR, NULL, "Draw Distance", &cv_drawdist, 75}, + {IT_STRING | IT_CVAR, NULL, "Weather Draw Distance", &cv_drawdist_precip, 85}, + + {IT_STRING | IT_CVAR, NULL, "Show FPS", &cv_ticrate, 105}, + {IT_STRING | IT_CVAR, NULL, "Vertical Sync", &cv_vidwait, 115}, + {IT_STRING | IT_CVAR, NULL, "FPS Cap", &cv_fpscap, 125}, + {IT_STRING | IT_CVAR, NULL, "Drift spark pulse size", &cv_driftsparkpulse, 135}, + {IT_STRING | IT_CVAR, NULL, "VHS effect", &cv_vhseffect, 145}, +#ifdef HWRENDER + {IT_SUBMENU|IT_STRING, NULL, "OpenGL Options...", &OP_OpenGLOptionsDef, 155}, +#endif + {IT_SUBMENU|IT_STRING, NULL, "Advanced Video Options...", &OP_ExpOptionsDef, 165}, }; static const char* OP_VideoTooltips[] = @@ -846,11 +851,12 @@ static const char* OP_VideoTooltips[] = #if defined (__unix__) || defined (UNIXCOMMON) || defined (HAVE_SDL) "Enable fullscreen.", #endif - "Gamma (brightness) of the game.", - "Saturation of the game.", + "Increase the gamma of the displayed image.", + "Increase or decrease the brightness of the displayed image.", + "Reduce the saturation of the displayed image.", "Advanced color settings of the game.", - "How far away objects are drawn.", - "How far away weather is drawn.", + "How far objects can be drawn.", + "Affects how far weather visuals can be drawn.", "Show current game framerate and select the style.", "Sync game framerate to refresh rate of monitor.", "Set manual framerate cap.", diff --git a/src/r_draw.cpp b/src/r_draw.cpp index 39f8918bb..6dd1233a0 100644 --- a/src/r_draw.cpp +++ b/src/r_draw.cpp @@ -113,6 +113,7 @@ CV_PossibleValue_t Color_cons_t[MAXSKINCOLORS+1]; struct GenerateBlendTables_State { RGBA_t *LocalPalette; + RGBA_t *gammaCorrectedPalette; }; static void R_GenerateBlendTables_Core(struct GenerateBlendTables_State *state); @@ -126,6 +127,7 @@ static void R_GenerateBlendTables_Thread(void *userdata) R_GenerateBlendTables_Core(state); free(state->LocalPalette); + free(state->gammaCorrectedPalette); free(state); } #endif @@ -154,26 +156,33 @@ void R_InitTranslucencyTables(void) } static colorlookup_t transtab_lut; +static colorlookup_t transtab_lut_corrected; static void BlendTab_Translucent(UINT8 *table, int style, UINT8 blendamt) { INT16 bg, fg; + RGBA_t backrgba, frontrgba, result; if (table == NULL) I_Error("BlendTab_Translucent: input table was NULL!"); for (bg = 0; bg < 0x100; bg++) { + backrgba = pGammaCorrectedPalette[bg]; + for (fg = 0; fg < 0x100; fg++) { - RGBA_t backrgba = V_GetColor(bg); - RGBA_t frontrgba = V_GetColor(fg); - RGBA_t result; + frontrgba = pGammaCorrectedPalette[fg]; +#if 0 // perfect implementation result.rgba = ASTBlendPixel(backrgba, frontrgba, style, 0xFF); result.rgba = ASTBlendPixel(result, frontrgba, AST_TRANSLUCENT, blendamt); - table[((bg * 0x100) + fg)] = GetColorLUT(&transtab_lut, result.s.red, result.s.green, result.s.blue); +#else // performance scrabbler + result.rgba = ASTBlendPixel(backrgba, frontrgba, style, 0xFF); + result.rgba = ASTBlendPixel(result, frontrgba, AST_TRANSLUCENT, blendamt); + table[((bg * 0x100) + fg)] = GetColorLUT(&transtab_lut_corrected, result.s.red, result.s.green, result.s.blue); // pGammaCorrectedPalette +#endif } } } @@ -224,7 +233,7 @@ static void BlendTab_Modulative(UINT8 *table) RGBA_t frontrgba = V_GetColor(fg); RGBA_t result; result.rgba = ASTBlendPixel(backrgba, frontrgba, AST_MODULATE, 0); - table[((bg * 0x100) + fg)] = GetColorLUT(&transtab_lut, result.s.red, result.s.green, result.s.blue); + table[((bg * 0x100) + fg)] = GetColorLUT(&transtab_lut_corrected, result.s.red, result.s.green, result.s.blue); } } } @@ -278,11 +287,12 @@ void R_GenerateBlendTables(void) size_t palsize = 256 * sizeof(RGBA_t); state->LocalPalette = static_cast(memcpy(malloc(palsize), pLocalPalette, palsize)); + state->gammaCorrectedPalette = static_cast(memcpy(malloc(palsize), pGammaCorrectedPalette, palsize)); I_spawn_thread("blend-tables", R_GenerateBlendTables_Thread, state); #else - struct GenerateBlendTables_State state = {pLocalPalette}; + struct GenerateBlendTables_State state = {pLocalPalette, pGammaCorrectedPalette}; R_GenerateBlendTables_Core(&state); #endif } @@ -290,6 +300,7 @@ void R_GenerateBlendTables(void) static void R_GenerateBlendTables_Core(struct GenerateBlendTables_State *state) { InitColorLUT(&transtab_lut, state->LocalPalette, false); + InitColorLUT(&transtab_lut_corrected, state->gammaCorrectedPalette, false); // Additive BlendTab_GenerateMaps(blendtab_add, AST_ADD, BlendTab_Translucent); diff --git a/src/screen.c b/src/screen.c index 4a38ef97d..2ef8e664c 100644 --- a/src/screen.c +++ b/src/screen.c @@ -215,7 +215,10 @@ void SCR_Startup(void) CV_RegisterVar(&cv_menucaps); CV_RegisterVar(&cv_constextsize); +#ifdef BACKWARDSCOMPATCORRECTION CV_RegisterVar(&cv_globalgamma); +#endif + CV_RegisterVar(&cv_globalbrightness); CV_RegisterVar(&cv_globalsaturation); CV_RegisterVar(&cv_rhue); diff --git a/src/v_video.c b/src/v_video.c index 031971326..1045d2b57 100644 --- a/src/v_video.c +++ b/src/v_video.c @@ -43,8 +43,13 @@ static void CV_palette_OnChange(void); consvar_t cv_palette = {"palette", "", CV_CALL|CV_NOINIT, NULL, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; consvar_t cv_palettenum = {"palettenum", "0", CV_CALL|CV_NOINIT, CV_Unsigned, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; -static CV_PossibleValue_t gamma_cons_t[] = {{-15, "MIN"}, {4, "MAX"}, {0, NULL}}; +#ifdef BACKWARDSCOMPATCORRECTION +static CV_PossibleValue_t gamma_cons_t[] = {{0, "MIN"}, {4, "MAX"}, {0, NULL}}; consvar_t cv_globalgamma = {"gamma", "0", CV_SAVE|CV_CALL, gamma_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; +#endif + +static CV_PossibleValue_t brightness_cons_t[] = {{-15, "MIN"}, {5, "MAX"}, {0, NULL}}; +consvar_t cv_globalbrightness = {"brightness", "0", CV_SAVE|CV_CALL, brightness_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; static CV_PossibleValue_t saturation_cons_t[] = {{0, "MIN"}, {10, "MAX"}, {0, NULL}}; consvar_t cv_globalsaturation = {"saturation", "10", CV_SAVE|CV_CALL, saturation_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; @@ -85,6 +90,7 @@ consvar_t cv_menucaps = {"menucaps", "On", CV_SAVE, CV_OnOff, NULL, 0, NULL, NUL // local copy of the palette for V_GetColor() RGBA_t *pLocalPalette = NULL; +RGBA_t *pGammaCorrectedPalette = NULL; static size_t currentPaletteSize; @@ -138,15 +144,11 @@ static boolean InitCube(void) #define diffconsgamma(cv) (cv.value != 0) #define diffconssat(cv) (cv.value != 10) -#ifdef BACKWARDSCOMPATCORRECTION - doinggamma = (cv_globalgamma.value < 0); //dont mess up gamma when raising brightness pls -#else - doinggamma = diffcons(cv_globalgamma); -#endif + doinggamma = diffcons(cv_globalbrightness); #define gammascale 8 - globalgammamul = (cv_globalgamma.value ? ((255.0f - (gammascale*abs(cv_globalgamma.value))) / 255.0f) : 1.0f); - globalgammaoffs = ((cv_globalgamma.value > 0) ? ((gammascale*cv_globalgamma.value) / 255.0f) : 0.0f); + globalgammamul = (cv_globalbrightness.value ? ((255.0f - (gammascale*abs(cv_globalbrightness.value))) / 255.0f) : 1.0f); + globalgammaoffs = ((cv_globalbrightness.value > 0) ? ((gammascale*cv_globalbrightness.value) / 255.0f) : 0.0f); desatur[0] = desatur[1] = desatur[2] = globalgammaoffs + (0.33f * globalgammamul); if (doinggamma @@ -302,24 +304,6 @@ same, I'm not gonna be the one to remove this base modification. toast 20/04/17 ... welp yes i am (27/07/19, see the ifdef around it) */ -const UINT8 correctiontable[256] = - {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16, - 17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32, - 33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48, - 49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64, - 65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80, - 81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96, - 97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112, - 113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128, - 128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143, - 144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159, - 160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175, - 176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191, - 192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207, - 208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223, - 224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239, - 240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255}; - const UINT8 gammatable[5][256] = { {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16, @@ -405,6 +389,26 @@ const UINT8 gammatable[5][256] = }; #endif +UINT32 V_GammaCorrect(UINT32 input, double power) +{ + RGBA_t result; + double linear; + + result.rgba = input; + + linear = ((double)result.s.red)/255.0f; + linear = pow(linear, power)*255.0f; + result.s.red = (UINT8)(linear); + linear = ((double)result.s.green)/255.0f; + linear = pow(linear, power)*255.0f; + result.s.green = (UINT8)(linear); + linear = ((double)result.s.blue)/255.0f; + linear = pow(linear, power)*255.0f; + result.s.blue = (UINT8)(linear); + + return result.rgba; +} + // keep a copy of the palette so that we can get the RGB value for a color index at any time. static void LoadPalette(const char *lumpname) { @@ -413,7 +417,7 @@ static void LoadPalette(const char *lumpname) lumpnum_t lumpnum; #ifdef BACKWARDSCOMPATCORRECTION - const UINT8 *usegamma = gammatable[min(max(cv_globalgamma.value, 0), 4)]; + const UINT8 *usegamma = gammatable[cv_globalgamma.value]; #endif Cubeapply = InitCube(); @@ -423,25 +427,18 @@ static void LoadPalette(const char *lumpname) palsize = currentPaletteSize / 3; Z_Free(pLocalPalette); + Z_Free(pGammaCorrectedPalette); pLocalPalette = Z_Malloc(sizeof (*pLocalPalette)*palsize, PU_STATIC, NULL); + pGammaCorrectedPalette = Z_Malloc(sizeof (*pGammaCorrectedPalette)*palsize, PU_STATIC, NULL); pal = W_CacheLumpNum(lumpnum, PU_CACHE); for (i = 0; i < palsize; i++) { #ifdef BACKWARDSCOMPATCORRECTION - if (cv_globalgamma.value >= 0 && cv_globalgamma.value <= 4) - { - pLocalPalette[i].s.red = usegamma[*pal++]; - pLocalPalette[i].s.green = usegamma[*pal++]; - pLocalPalette[i].s.blue = usegamma[*pal++]; - } - else - { - pLocalPalette[i].s.red = correctiontable[*pal++]; - pLocalPalette[i].s.green = correctiontable[*pal++]; - pLocalPalette[i].s.blue = correctiontable[*pal++]; - } + pLocalPalette[i].s.red = usegamma[*pal++]; + pLocalPalette[i].s.green = usegamma[*pal++]; + pLocalPalette[i].s.blue = usegamma[*pal++]; #else pLocalPalette[i].s.red = *pal++; pLocalPalette[i].s.green = *pal++; @@ -449,15 +446,17 @@ static void LoadPalette(const char *lumpname) #endif pLocalPalette[i].s.alpha = 0xFF; + pGammaCorrectedPalette[i].rgba = V_GammaDecode(pLocalPalette[i].rgba); + if (!Cubeapply) continue; - // lerp of colour cubing! if you want, make it smoother yourself - V_CubeApply(&pLocalPalette[i].s.red, &pLocalPalette[i].s.green, &pLocalPalette[i].s.blue); + V_CubeApply(&pGammaCorrectedPalette[i]); + pLocalPalette[i].rgba = V_GammaEncode(pGammaCorrectedPalette[i].rgba); } } -void V_CubeApply(UINT8 *red, UINT8 *green, UINT8 *blue) +void V_CubeApply(RGBA_t *input) { float working[4][3]; float linear; @@ -466,7 +465,7 @@ void V_CubeApply(UINT8 *red, UINT8 *green, UINT8 *blue) if (!Cubeapply) return; - linear = (*red/255.0f); + linear = ((*input).s.red/255.0); #define dolerp(e1, e2) ((1 - linear)*e1 + linear*e2) for (q = 0; q < 3; q++) { @@ -475,13 +474,15 @@ void V_CubeApply(UINT8 *red, UINT8 *green, UINT8 *blue) working[2][q] = dolerp(Cubepal[0][0][1][q], Cubepal[1][0][1][q]); working[3][q] = dolerp(Cubepal[0][1][1][q], Cubepal[1][1][1][q]); } - linear = (*green/255.0f); + + linear = ((*input).s.green/255.0); for (q = 0; q < 3; q++) { working[0][q] = dolerp(working[0][q], working[1][q]); working[1][q] = dolerp(working[2][q], working[3][q]); } - linear = (*blue/255.0f); + + linear = ((*input).s.blue/255.0); for (q = 0; q < 3; q++) { working[0][q] = 255*dolerp(working[0][q], working[1][q]); @@ -492,9 +493,9 @@ void V_CubeApply(UINT8 *red, UINT8 *green, UINT8 *blue) } #undef dolerp - *red = (UINT8)(working[0][0]); - *green = (UINT8)(working[0][1]); - *blue = (UINT8)(working[0][2]); + (*input).s.red = (UINT8)(working[0][0]); + (*input).s.green = (UINT8)(working[0][1]); + (*input).s.blue = (UINT8)(working[0][2]); } const char *R_GetPalname(UINT16 num) @@ -1329,37 +1330,37 @@ void V_DrawFill(INT32 x, INT32 y, INT32 w, INT32 h, INT32 c) // This is now a function since it's otherwise repeated 2 times and honestly looks retarded: static UINT32 V_GetHWConsBackColor(void) { - UINT8 r, g, b; + RGBA_t output; switch (cons_backcolor.value) { - case 0: r = 0xff; g = 0xff; b = 0xff; break; // White - case 1: r = 0x80; g = 0x80; b = 0x80; break; // Black - case 2: r = 0xde; g = 0xb8; b = 0x87; break; // Sepia - case 3: r = 0x40; g = 0x20; b = 0x10; break; // Brown - case 4: r = 0xfa; g = 0x80; b = 0x72; break; // Pink - case 5: r = 0xff; g = 0x69; b = 0xb4; break; // Raspberry - case 6: r = 0xff; g = 0x00; b = 0x00; break; // Red - case 7: r = 0xff; g = 0xd6; b = 0x83; break; // Creamsicle - case 8: r = 0xff; g = 0x80; b = 0x00; break; // Orange - case 9: r = 0xda; g = 0xa5; b = 0x20; break; // Gold - case 10: r = 0x80; g = 0x80; b = 0x00; break; // Yellow - case 11: r = 0x00; g = 0xff; b = 0x00; break; // Emerald - case 12: r = 0x00; g = 0x80; b = 0x00; break; // Green - case 13: r = 0x40; g = 0x80; b = 0xff; break; // Cyan - case 14: r = 0x46; g = 0x82; b = 0xb4; break; // Steel - case 15: r = 0x1e; g = 0x90; b = 0xff; break; // Periwinkle - case 16: r = 0x00; g = 0x00; b = 0xff; break; // Blue - case 17: r = 0xff; g = 0x00; b = 0xff; break; // Purple - case 18: r = 0xee; g = 0x82; b = 0xee; break; // Lavender + case 0: output.s.red = 0xff; output.s.green = 0xff; output.s.blue = 0xff; break; // White + case 1: output.s.red = 0x80; output.s.green = 0x80; output.s.blue = 0x80; break; // Black + case 2: output.s.red = 0xde; output.s.green = 0xb8; output.s.blue = 0x87; break; // Sepia + case 3: output.s.red = 0x40; output.s.green = 0x20; output.s.blue = 0x10; break; // Brown + case 4: output.s.red = 0xfa; output.s.green = 0x80; output.s.blue = 0x72; break; // Pink + case 5: output.s.red = 0xff; output.s.green = 0x69; output.s.blue = 0xb4; break; // Raspberry + case 6: output.s.red = 0xff; output.s.green = 0x00; output.s.blue = 0x00; break; // Red + case 7: output.s.red = 0xff; output.s.green = 0xd6; output.s.blue = 0x83; break; // Creamsicle + case 8: output.s.red = 0xff; output.s.green = 0x80; output.s.blue = 0x00; break; // Orange + case 9: output.s.red = 0xda; output.s.green = 0xa5; output.s.blue = 0x20; break; // Gold + case 10: output.s.red = 0x80; output.s.green = 0x80; output.s.blue = 0x00; break; // Yellow + case 11: output.s.red = 0x00; output.s.green = 0xff; output.s.blue = 0x00; break; // Emerald + case 12: output.s.red = 0x00; output.s.green = 0x80; output.s.blue = 0x00; break; // Green + case 13: output.s.red = 0x40; output.s.green = 0x80; output.s.blue = 0xff; break; // Cyan + case 14: output.s.red = 0x46; output.s.green = 0x82; output.s.blue = 0xb4; break; // Steel + case 15: output.s.red = 0x1e; output.s.green = 0x90; output.s.blue = 0xff; break; // Periwinkle + case 16: output.s.red = 0x00; output.s.green = 0x00; output.s.blue = 0xff; break; // Blue + case 17: output.s.red = 0xff; output.s.green = 0x00; output.s.blue = 0xff; break; // Purple + case 18: output.s.red = 0xee; output.s.green = 0x82; output.s.blue = 0xee; break; // Lavender // Default green - default: r = 0x00; g = 0x80; b = 0x00; break; + default: output.s.red = 0x00; output.s.green = 0x80; output.s.blue = 0x00; break; } if (!HWR_ShouldUsePaletteRendering()) - V_CubeApply(&r, &g, &b); + V_CubeApply(&output); - return (r << 24) | (g << 16) | (b << 8); + return (output.s.red << 24) | (output.s.green << 16) | (output.s.blue << 8); } #endif @@ -3808,12 +3809,14 @@ void InitColorLUT(colorlookup_t *lut, RGBA_t *palette, boolean makecolors) UINT8 r, g, b; for (r = 0; r < 0xFF; r++) - for (g = 0; g < 0xFF; g++) - for (b = 0; b < 0xFF; b++) { - i = CLUTINDEX(r, g, b); - if (lut->table[i] == 0xFFFF) - lut->table[i] = NearestPaletteColor(r, g, b, palette); + for (g = 0; g < 0xFF; g++) + { + for (b = 0; b < 0xFF; b++) + { + lut->table[i] = GetColorLUT(lut, r, g, b); + } + } } } } diff --git a/src/v_video.h b/src/v_video.h index 6213dc1bb..ce9337adc 100644 --- a/src/v_video.h +++ b/src/v_video.h @@ -40,7 +40,10 @@ extern "C" { // extern consvar_t cv_ticrate, cv_accuratefps, cv_allcaps, cv_constextsize, cv_menucaps, -cv_globalgamma, cv_globalsaturation, +#ifdef BACKWARDSCOMPATCORRECTION +cv_globalgamma, +#endif +cv_globalbrightness, cv_globalsaturation, cv_rhue, cv_yhue, cv_ghue, cv_chue, cv_bhue, cv_mhue, cv_rgamma, cv_ygamma, cv_ggamma, cv_cgamma, cv_bgamma, cv_mgamma, cv_rsaturation, cv_ysaturation, cv_gsaturation, cv_csaturation, cv_bsaturation, cv_msaturation, @@ -78,10 +81,15 @@ const char *R_GetPalname(UINT16 num); const char *GetPalette(void); extern RGBA_t *pLocalPalette; +extern RGBA_t *pGammaCorrectedPalette; extern UINT8 hudtrans; -void V_CubeApply(UINT8 *red, UINT8 *green, UINT8 *blue); +UINT32 V_GammaCorrect(UINT32 input, double power); +#define V_GammaDecode(input) V_GammaCorrect(input, 2.2f) +#define V_GammaEncode(input) V_GammaCorrect(input, (1/2.2f)) + +void V_CubeApply(RGBA_t *input); // Retrieve the ARGB value from a palette color index #define V_GetColor(color) (pLocalPalette[color&0xFF]) -- 2.54.0 From da67f6feb8e7b5c366a541c5444bba6e35e32cf9 Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 25 Oct 2025 22:21:37 +0200 Subject: [PATCH 022/104] rename most "gamma" vars to "brightness" lots of confusion but it does more brightness adjustment than gamma adjustments, yes this does some gamma correction but not user changable global gamma adjustments like globalgamma uhhh --- src/m_menudefs.c | 12 ++--- src/screen.c | 12 ++--- src/v_video.c | 130 +++++++++++++++++++++++------------------------ src/v_video.h | 2 +- 4 files changed, 78 insertions(+), 78 deletions(-) diff --git a/src/m_menudefs.c b/src/m_menudefs.c index 5f2d782f5..f1106706a 100644 --- a/src/m_menudefs.c +++ b/src/m_menudefs.c @@ -904,37 +904,37 @@ static menuitem_t OP_ColorOptionsMenu[] = {IT_DISABLED, NULL, NULL, NULL, 35}, {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Hue", &cv_rhue, 15}, {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Saturation", &cv_rsaturation, 20}, - {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Brightness", &cv_rgamma, 25}, + {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Brightness", &cv_rbrightness, 25}, {IT_HEADER, NULL, "Yellow", NULL, 34}, {IT_DISABLED, NULL, NULL, NULL, 73}, {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Hue", &cv_yhue, 40}, {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Saturation", &cv_ysaturation, 45}, - {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Brightness", &cv_ygamma, 50}, + {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Brightness", &cv_ybrightness, 50}, {IT_HEADER, NULL, "Green", NULL, 59}, {IT_DISABLED, NULL, NULL, NULL, 112}, {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Hue", &cv_ghue, 65}, {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Saturation", &cv_gsaturation, 70}, - {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Brightness", &cv_ggamma, 75}, + {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Brightness", &cv_gbrightness, 75}, {IT_HEADER, NULL, "Cyan", NULL, 84}, {IT_DISABLED, NULL, NULL, NULL, 255}, {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Hue", &cv_chue, 90}, {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Saturation", &cv_csaturation, 95}, - {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Brightness", &cv_cgamma, 100}, + {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Brightness", &cv_cbrightness, 100}, {IT_HEADER, NULL, "Blue", NULL, 109}, {IT_DISABLED, NULL, NULL, NULL, 152}, {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Hue", &cv_bhue, 115}, {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Saturation", &cv_bsaturation, 120}, - {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Brightness", &cv_bgamma, 125}, + {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Brightness", &cv_bbrightness, 125}, {IT_HEADER, NULL, "Magenta", NULL, 134}, {IT_DISABLED, NULL, NULL, NULL, 181}, {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Hue", &cv_mhue, 140}, {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Saturation", &cv_msaturation, 145}, - {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Brightness", &cv_mgamma, 150}, + {IT_STRING | IT_CVAR | IT_CV_SLIDER, NULL, "Brightness", &cv_mbrightness, 150}, }; static menuitem_t OP_ExpOptionsMenu[] = diff --git a/src/screen.c b/src/screen.c index 2ef8e664c..cae7d2479 100644 --- a/src/screen.c +++ b/src/screen.c @@ -228,12 +228,12 @@ void SCR_Startup(void) CV_RegisterVar(&cv_bhue); CV_RegisterVar(&cv_mhue); - CV_RegisterVar(&cv_rgamma); - CV_RegisterVar(&cv_ygamma); - CV_RegisterVar(&cv_ggamma); - CV_RegisterVar(&cv_cgamma); - CV_RegisterVar(&cv_bgamma); - CV_RegisterVar(&cv_mgamma); + CV_RegisterVar(&cv_rbrightness); + CV_RegisterVar(&cv_ybrightness); + CV_RegisterVar(&cv_gbrightness); + CV_RegisterVar(&cv_cbrightness); + CV_RegisterVar(&cv_bbrightness); + CV_RegisterVar(&cv_mbrightness); CV_RegisterVar(&cv_rsaturation); CV_RegisterVar(&cv_ysaturation); diff --git a/src/v_video.c b/src/v_video.c index 1045d2b57..90f4fd9f5 100644 --- a/src/v_video.c +++ b/src/v_video.c @@ -64,12 +64,12 @@ consvar_t cv_chue = {"chue", "12", CV_SAVE|CV_CALL, hue_cons_t, CV_palette_OnCha consvar_t cv_bhue = {"bhue", "16", CV_SAVE|CV_CALL, hue_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; consvar_t cv_mhue = {"mhue", "20", CV_SAVE|CV_CALL, hue_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; -consvar_t cv_rgamma = {"rgamma", "0", CV_SAVE|CV_CALL, gamma_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; -consvar_t cv_ygamma = {"ygamma", "0", CV_SAVE|CV_CALL, gamma_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; -consvar_t cv_ggamma = {"ggamma", "0", CV_SAVE|CV_CALL, gamma_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; -consvar_t cv_cgamma = {"cgamma", "0", CV_SAVE|CV_CALL, gamma_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; -consvar_t cv_bgamma = {"bgamma", "0", CV_SAVE|CV_CALL, gamma_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; -consvar_t cv_mgamma = {"mgamma", "0", CV_SAVE|CV_CALL, gamma_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; +consvar_t cv_rbrightness = {"rbrightness", "0", CV_SAVE|CV_CALL, brightness_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; +consvar_t cv_ybrightness = {"ybrightness", "0", CV_SAVE|CV_CALL, brightness_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; +consvar_t cv_gbrightness = {"gbrightness", "0", CV_SAVE|CV_CALL, brightness_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; +consvar_t cv_cbrightness = {"cbrightness", "0", CV_SAVE|CV_CALL, brightness_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; +consvar_t cv_bbrightness = {"bbrightness", "0", CV_SAVE|CV_CALL, brightness_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; +consvar_t cv_mbrightness = {"mbrightness", "0", CV_SAVE|CV_CALL, brightness_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; consvar_t cv_rsaturation = {"rsaturation", "10", CV_SAVE|CV_CALL, saturation_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; consvar_t cv_ysaturation = {"ysaturation", "10", CV_SAVE|CV_CALL, saturation_cons_t, CV_palette_OnChange, 0, NULL, NULL, 0, 0, NULL}; @@ -134,96 +134,96 @@ static boolean InitCube(void) }; float desatur[3]; // grey - float globalgammamul, globalgammaoffs; - boolean doinggamma; + float globalbrightnessmul, globalbrightnessoffs; + boolean doingbrightness; if (!loaded_config) return false; #define diffcons(cv) (strcmp(cv.string, cv.defaultvalue)) -#define diffconsgamma(cv) (cv.value != 0) +#define diffconsbrightness(cv) (cv.value != 0) #define diffconssat(cv) (cv.value != 10) - doinggamma = diffcons(cv_globalbrightness); + doingbrightness = diffcons(cv_globalbrightness); -#define gammascale 8 - globalgammamul = (cv_globalbrightness.value ? ((255.0f - (gammascale*abs(cv_globalbrightness.value))) / 255.0f) : 1.0f); - globalgammaoffs = ((cv_globalbrightness.value > 0) ? ((gammascale*cv_globalbrightness.value) / 255.0f) : 0.0f); - desatur[0] = desatur[1] = desatur[2] = globalgammaoffs + (0.33f * globalgammamul); +#define brightnessscale 8 + globalbrightnessmul = (cv_globalbrightness.value ? ((255.0f - (brightnessscale*abs(cv_globalbrightness.value))) / 255.0f) : 1.0f); + globalbrightnessoffs = ((cv_globalbrightness.value > 0) ? ((brightnessscale*cv_globalbrightness.value) / 255.0f) : 0.0f); + desatur[0] = desatur[1] = desatur[2] = globalbrightnessoffs + (0.33f * globalbrightnessmul); - if (doinggamma + if (doingbrightness || diffcons(cv_rhue) || diffcons(cv_yhue) || diffcons(cv_ghue) || diffcons(cv_chue) || diffcons(cv_bhue) || diffcons(cv_mhue) - || diffconsgamma(cv_rgamma) - || diffconsgamma(cv_ygamma) - || diffconsgamma(cv_ggamma) - || diffconsgamma(cv_cgamma) - || diffconsgamma(cv_bgamma) - || diffconsgamma(cv_mgamma)) // set the gamma'd/hued positions (saturation is done later) + || diffconsbrightness(cv_rbrightness) + || diffconsbrightness(cv_ybrightness) + || diffconsbrightness(cv_gbrightness) + || diffconsbrightness(cv_cbrightness) + || diffconsbrightness(cv_bbrightness) + || diffconsbrightness(cv_mbrightness)) // set the brightness'd/hued positions (saturation is done later) { - float mod, tempgammamul, tempgammaoffs; + float mod, tempbrightnessmul, tempbrightnessoffs; apply = true; - working[0][0][0][0] = working[0][0][0][1] = working[0][0][0][2] = globalgammaoffs; - working[1][1][1][0] = working[1][1][1][1] = working[1][1][1][2] = globalgammaoffs+globalgammamul; + working[0][0][0][0] = working[0][0][0][1] = working[0][0][0][2] = globalbrightnessoffs; + working[1][1][1][0] = working[1][1][1][1] = working[1][1][1][2] = globalbrightnessoffs+globalbrightnessmul; -#define dohue(hue, gamma, loc) \ - tempgammamul = (gamma ? ((255.0f - (gammascale*abs(gamma)))/255.0f)*globalgammamul : globalgammamul);\ - tempgammaoffs = ((gamma > 0) ? ((gammascale*gamma)/255.0f) + globalgammaoffs : globalgammaoffs);\ - mod = ((hue % huecoloursteps)*(tempgammamul)/huecoloursteps);\ +#define dohue(hue, brightness, loc) \ + tempbrightnessmul = (brightness ? ((255.0f - (brightnessscale*abs(brightness)))/255.0f)*globalbrightnessmul : globalbrightnessmul);\ + tempbrightnessoffs = ((brightness > 0) ? ((brightnessscale*brightness)/255.0f) + globalbrightnessoffs : globalbrightnessoffs);\ + mod = ((hue % huecoloursteps)*(tempbrightnessmul)/huecoloursteps);\ switch (hue/huecoloursteps)\ {\ case 0:\ default:\ - loc[0] = tempgammaoffs+tempgammamul;\ - loc[1] = tempgammaoffs+mod;\ - loc[2] = tempgammaoffs;\ + loc[0] = tempbrightnessoffs+tempbrightnessmul;\ + loc[1] = tempbrightnessoffs+mod;\ + loc[2] = tempbrightnessoffs;\ break;\ case 1:\ - loc[0] = tempgammaoffs+tempgammamul-mod;\ - loc[1] = tempgammaoffs+tempgammamul;\ - loc[2] = tempgammaoffs;\ + loc[0] = tempbrightnessoffs+tempbrightnessmul-mod;\ + loc[1] = tempbrightnessoffs+tempbrightnessmul;\ + loc[2] = tempbrightnessoffs;\ break;\ case 2:\ - loc[0] = tempgammaoffs;\ - loc[1] = tempgammaoffs+tempgammamul;\ - loc[2] = tempgammaoffs+mod;\ + loc[0] = tempbrightnessoffs;\ + loc[1] = tempbrightnessoffs+tempbrightnessmul;\ + loc[2] = tempbrightnessoffs+mod;\ break;\ case 3:\ - loc[0] = tempgammaoffs;\ - loc[1] = tempgammaoffs+tempgammamul-mod;\ - loc[2] = tempgammaoffs+tempgammamul;\ + loc[0] = tempbrightnessoffs;\ + loc[1] = tempbrightnessoffs+tempbrightnessmul-mod;\ + loc[2] = tempbrightnessoffs+tempbrightnessmul;\ break;\ case 4:\ - loc[0] = tempgammaoffs+mod;\ - loc[1] = tempgammaoffs;\ - loc[2] = tempgammaoffs+tempgammamul;\ + loc[0] = tempbrightnessoffs+mod;\ + loc[1] = tempbrightnessoffs;\ + loc[2] = tempbrightnessoffs+tempbrightnessmul;\ break;\ case 5:\ - loc[0] = tempgammaoffs+tempgammamul;\ - loc[1] = tempgammaoffs;\ - loc[2] = tempgammaoffs+tempgammamul-mod;\ + loc[0] = tempbrightnessoffs+tempbrightnessmul;\ + loc[1] = tempbrightnessoffs;\ + loc[2] = tempbrightnessoffs+tempbrightnessmul-mod;\ break;\ } - dohue(cv_rhue.value, cv_rgamma.value, working[1][0][0]); - dohue(cv_yhue.value, cv_ygamma.value, working[1][1][0]); - dohue(cv_ghue.value, cv_ggamma.value, working[0][1][0]); - dohue(cv_chue.value, cv_cgamma.value, working[0][1][1]); - dohue(cv_bhue.value, cv_bgamma.value, working[0][0][1]); - dohue(cv_mhue.value, cv_mgamma.value, working[1][0][1]); + dohue(cv_rhue.value, cv_rbrightness.value, working[1][0][0]); + dohue(cv_yhue.value, cv_ybrightness.value, working[1][1][0]); + dohue(cv_ghue.value, cv_gbrightness.value, working[0][1][0]); + dohue(cv_chue.value, cv_cbrightness.value, working[0][1][1]); + dohue(cv_bhue.value, cv_bbrightness.value, working[0][0][1]); + dohue(cv_mhue.value, cv_mbrightness.value, working[1][0][1]); #undef dohue } #define dosaturation(a, e) a = ((1 - work)*e + work*a) -#define docvsat(cv_sat, hue, gamma, r, g, b) \ +#define docvsat(cv_sat, hue, brightness, r, g, b) \ if diffconssat(cv_sat)\ {\ - float work, mod, tempgammamul, tempgammaoffs;\ + float work, mod, tempbrightnessmul, tempbrightnessoffs;\ apply = true;\ work = (cv_sat.value/10.0f);\ mod = ((hue % huecoloursteps)*(1.0f)/huecoloursteps);\ @@ -231,20 +231,20 @@ static boolean InitCube(void) mod = 2-mod;\ else\ mod += 1;\ - tempgammamul = (gamma ? ((255.0f - (gammascale*abs(gamma)))/255.0f)*globalgammamul : globalgammamul);\ - tempgammaoffs = ((gamma > 0) ? ((gammascale*gamma)/255.0f) + globalgammaoffs : globalgammaoffs);\ + tempbrightnessmul = (brightness ? ((255.0f - (brightnessscale*abs(brightness)))/255.0f)*globalbrightnessmul : globalbrightnessmul);\ + tempbrightnessoffs = ((brightness > 0) ? ((brightnessscale*brightness)/255.0f) + globalbrightnessoffs : globalbrightnessoffs);\ for (q = 0; q < 3; q++)\ - dosaturation(working[r][g][b][q], (tempgammaoffs+(desatur[q]*mod*tempgammamul)));\ + dosaturation(working[r][g][b][q], (tempbrightnessoffs+(desatur[q]*mod*tempbrightnessmul)));\ } - docvsat(cv_rsaturation, cv_rhue.value, cv_rgamma.value, 1, 0, 0); - docvsat(cv_ysaturation, cv_yhue.value, cv_ygamma.value, 1, 1, 0); - docvsat(cv_gsaturation, cv_ghue.value, cv_ggamma.value, 0, 1, 0); - docvsat(cv_csaturation, cv_chue.value, cv_cgamma.value, 0, 1, 1); - docvsat(cv_bsaturation, cv_bhue.value, cv_bgamma.value, 0, 0, 1); - docvsat(cv_msaturation, cv_mhue.value, cv_mgamma.value, 1, 0, 1); + docvsat(cv_rsaturation, cv_rhue.value, cv_rbrightness.value, 1, 0, 0); + docvsat(cv_ysaturation, cv_yhue.value, cv_ybrightness.value, 1, 1, 0); + docvsat(cv_gsaturation, cv_ghue.value, cv_gbrightness.value, 0, 1, 0); + docvsat(cv_csaturation, cv_chue.value, cv_cbrightness.value, 0, 1, 1); + docvsat(cv_bsaturation, cv_bhue.value, cv_bbrightness.value, 0, 0, 1); + docvsat(cv_msaturation, cv_mhue.value, cv_mbrightness.value, 1, 0, 1); -#undef gammascale +#undef brightnessscale if diffconssat(cv_globalsaturation) { @@ -267,7 +267,7 @@ static boolean InitCube(void) #undef dosaturation #undef diffcons -#undef diffconsgamma +#undef diffconsbrightness #undef diffconssat if (!apply) diff --git a/src/v_video.h b/src/v_video.h index ce9337adc..7eea1468c 100644 --- a/src/v_video.h +++ b/src/v_video.h @@ -45,7 +45,7 @@ cv_globalgamma, #endif cv_globalbrightness, cv_globalsaturation, cv_rhue, cv_yhue, cv_ghue, cv_chue, cv_bhue, cv_mhue, -cv_rgamma, cv_ygamma, cv_ggamma, cv_cgamma, cv_bgamma, cv_mgamma, +cv_rbrightness, cv_ybrightness, cv_gbrightness, cv_cbrightness, cv_bbrightness, cv_mbrightness, cv_rsaturation, cv_ysaturation, cv_gsaturation, cv_csaturation, cv_bsaturation, cv_msaturation, cv_palette, cv_palettenum; -- 2.54.0 From e26fb91350230a906e18d773d0ad4a91c75b81f1 Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 25 Oct 2025 22:32:43 +0200 Subject: [PATCH 023/104] simplify vhs effect interpolation --- src/v_video.c | 27 ++++++++++++--------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/src/v_video.c b/src/v_video.c index 031971326..9805e910c 100644 --- a/src/v_video.c +++ b/src/v_video.c @@ -1739,8 +1739,7 @@ void V_DrawHorizontallyScaledFullScreenPatch(patch_t *patch) void V_DrawVhsEffect(boolean rewind) { - fixed_t uby, dby; - static fixed_t upbary = 100*FRACUNIT, downbary = 150*FRACUNIT; + static fixed_t upbary = 100, downbary = 150; UINT8 barsize, updistort, downdistort; @@ -1761,21 +1760,19 @@ void V_DrawVhsEffect(boolean rewind) if (rewind) V_DrawVhsEffect(false); // experimentation - upbary -= renderdeltatics * (vid.dup * (rewind ? 3 : 1.8f)); - downbary += renderdeltatics * (vid.dup * (rewind ? 2 : 1)); + upbary -= FixedMul(vid.dup * (rewind ? 3 : 1.8f), renderdeltatics); + downbary += FixedMul(vid.dup * (rewind ? 2 : 1), renderdeltatics); - if (upbary < -barsize*FRACUNIT) - upbary = vid.height << FRACBITS; - if (downbary > vid.height << FRACBITS) - downbary = -barsize*FRACUNIT; + if (upbary < -barsize) + upbary = vid.height; - uby = upbary >> FRACBITS; - dby = downbary >> FRACBITS; + if (downbary > vid.height) + downbary = -barsize; #ifdef HWRENDER if (rendermode == render_opengl) { - HWR_RenderVhsEffect(uby, dby, updistort, downdistort, barsize); + HWR_RenderVhsEffect(upbary, downbary, updistort, downdistort, barsize); return; } #endif @@ -1795,16 +1792,16 @@ void V_DrawVhsEffect(boolean rewind) thismapstart = normalmapstart; offs = 0; - if (y >= uby && y < uby+barsize) + if (y >= upbary && y < upbary+barsize) { thismapstart -= (2<= dby && y < dby+barsize) + if (y >= downbary && y < downbary+barsize) { thismapstart -= (2< Date: Sun, 26 Oct 2025 02:19:25 +0100 Subject: [PATCH 024/104] fix software hiding the wrong thing in video options --- src/m_menudefs.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/m_menudefs.c b/src/m_menudefs.c index f1106706a..705b85912 100644 --- a/src/m_menudefs.c +++ b/src/m_menudefs.c @@ -875,7 +875,10 @@ enum #if defined (__unix__) || defined (UNIXCOMMON) || defined (HAVE_SDL) op_video_fullscreen, #endif +#ifdef BACKWARDSCOMPATCORRECTION op_video_gamma, +#endif + op_video_bright, op_video_sat, op_video_color, op_video_dd, -- 2.54.0 From 548cad76b289dd9a93319b7f0c44912894159d7f Mon Sep 17 00:00:00 2001 From: Alug Date: Sun, 26 Oct 2025 14:04:38 +0100 Subject: [PATCH 025/104] drawspan: some type fixes, mark const and reordering --- src/r_draw_column.cpp | 2 +- src/r_draw_span.cpp | 25 +++++++++++-------------- 2 files changed, 12 insertions(+), 15 deletions(-) diff --git a/src/r_draw_column.cpp b/src/r_draw_column.cpp index 51690fbb0..67dbf94e3 100644 --- a/src/r_draw_column.cpp +++ b/src/r_draw_column.cpp @@ -260,7 +260,7 @@ static void R_DrawColumnTemplate(drawcolumndata_t *dc) // texture has no height, so just go while (--count >= 0) { - *dest = R_DrawColumnPixel(dc, dest, frac>>FRACBITS, source, colormap); + *dest = R_DrawColumnPixel(dc, dest, (frac>>FRACBITS), source, colormap); dest += stride; frac += fracstep; diff --git a/src/r_draw_span.cpp b/src/r_draw_span.cpp index b1870685c..377115b64 100644 --- a/src/r_draw_span.cpp +++ b/src/r_draw_span.cpp @@ -208,15 +208,15 @@ static void R_CalcTiltedLighting(std::vector& lightbuffer, INT32 x1, INT3 for (i = x1; i <= x2; i++) { - fixed_t light = start >> FRACBITS; + const fixed_t light = start >> FRACBITS; lightbuffer[i] = CLAMP(light, 0, MAXLIGHTSCALE - 1); start += step; } } -static void R_GetTiltedLighting(std::vector& tiltlighting, const drawspandata_t* ds, const float iz, const int width, const INT32 stride) +static void R_GetTiltedLighting(std::vector& tiltlighting, const drawspandata_t* ds, const float iz, const INT32 width, const INT32 stride) { - float planelightfloat = PLANELIGHTFLOAT; + const float planelightfloat = PLANELIGHTFLOAT; const fixed_t lightstart = FloatToFixed(iz * planelightfloat); const fixed_t lightend = FloatToFixed((iz + ds->szp.x * width) * planelightfloat); @@ -232,7 +232,7 @@ static void R_GetTiltedLighting(std::vector& tiltlighting, const drawspan template static void R_DrawTiltedSpanTemplate(drawspandata_t* ds) { - int width = ds->x2 - ds->x1; + INT32 width = ds->x2 - ds->x1; float iz, uz, vz; UINT32 u, v; int i; @@ -246,7 +246,6 @@ static void R_DrawTiltedSpanTemplate(drawspandata_t* ds) UINT32 stepu, stepv; UINT32 bit; - INT32 x1 = ds->x1; const INT32 nflatxshift = ds->nflatxshift; const INT32 nflatyshift = ds->nflatyshift; const INT32 nflatmask = ds->nflatmask; @@ -300,7 +299,6 @@ static void R_DrawTiltedSpanTemplate(drawspandata_t* ds) izstep = ds->szp.x * SPANSIZE; uzstep = ds->sup.x * SPANSIZE; vzstep = ds->svp.x * SPANSIZE; - //x1 = 0; width++; while (width >= SPANSIZE) @@ -317,7 +315,7 @@ static void R_DrawTiltedSpanTemplate(drawspandata_t* ds) u = (INT64)(startu); v = (INT64)(startv); - x1 = ds->x1; + const INT32 x1 = ds->x1; for (i = 0; i < SPANSIZE; i++) { @@ -410,7 +408,7 @@ DEFINE_SPAN_COMBO(R_DrawTranslucentWaterSpan, DS_TRANSMAP|DS_RIPPLE) */ void R_DrawFogSpan(drawspandata_t* ds) { - INT32 count = ds->x2 - ds->x1 + 1; + intptr_t count = ds->x2 - ds->x1 + 1; const UINT8 * restrict colormap = ds->colormap; UINT8 * restrict dest = R_Address(ds->x1, ds->y); @@ -435,13 +433,12 @@ void R_DrawFogSpan(drawspandata_t* ds) void R_DrawFogSpan_Tilted(drawspandata_t* ds) { - int width = ds->x2 - ds->x1; - float iz = ds->szp.z + ds->szp.y*(centery-ds->y) + ds->szp.x*(ds->x1-centerx); - UINT8 * restrict dest; - local_for_thread std::vector tiltlighting; - - dest = R_Address(ds->x1, ds->y); + INT32 width = ds->x2 - ds->x1; const INT32 stride = vid.width; + const float iz = ds->szp.z + ds->szp.y*(centery-ds->y) + ds->szp.x*(ds->x1-centerx); + UINT8 * restrict dest = R_Address(ds->x1, ds->y); + + local_for_thread std::vector tiltlighting; // Lighting is simple. It's just linear interpolation from start to end R_GetTiltedLighting(tiltlighting, ds, iz, width, stride); -- 2.54.0 From 056f919bbeae8d068b854c1c1675d3062623dd36 Mon Sep 17 00:00:00 2001 From: Alug Date: Mon, 27 Oct 2025 00:50:30 +0100 Subject: [PATCH 026/104] DrawTiltedSpan: more micro optimize - do pointerdiff outside the loops, no need to do them 16 times per span - cache tiltilighting and planezlight, mark as const and restrict --- src/r_draw_span.cpp | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/src/r_draw_span.cpp b/src/r_draw_span.cpp index 377115b64..11415d2d5 100644 --- a/src/r_draw_span.cpp +++ b/src/r_draw_span.cpp @@ -262,6 +262,11 @@ static void R_DrawTiltedSpanTemplate(drawspandata_t* ds) const UINT8 * restrict source = ds->source; const UINT8 * restrict colormap = ds->colormap; + const ptrdiff_t colormap_diff = (colormap - colormaps); + + const INT32 * restrict tiltlight = tiltlighting.data(); + lighttable_t * const * restrict planezlight = ds->planezlight; + if constexpr (Type & DS_RIPPLE) { dsrc = vid.screens[1] + (ds->y + ds->bgofs) * stride + ds->x1; @@ -320,7 +325,7 @@ static void R_DrawTiltedSpanTemplate(drawspandata_t* ds) for (i = 0; i < SPANSIZE; i++) { bit = (((v + stepv * i) >> nflatyshift) & nflatmask) | ((u + stepu * i) >> nflatxshift); - colormap = ds->planezlight[tiltlighting[x1 + i]] + (ds->colormap - colormaps); + colormap = planezlight[tiltlight[x1 + i]] + colormap_diff; if constexpr (Type & DS_RIPPLE) dest[i] = R_DrawSpanPixel(ds, &dsrc[i], colormap, bit, source); else @@ -343,7 +348,7 @@ static void R_DrawTiltedSpanTemplate(drawspandata_t* ds) u = (INT64)(startu); v = (INT64)(startv); bit = ((v >> nflatyshift) & nflatmask) | (u >> nflatxshift); - colormap = ds->planezlight[tiltlighting[ds->x1]] + (ds->colormap - colormaps); + colormap = planezlight[tiltlight[ds->x1]] + colormap_diff; if constexpr (Type & DS_RIPPLE) *dest = R_DrawSpanPixel(ds, dsrc, colormap, bit, source); else @@ -369,7 +374,7 @@ static void R_DrawTiltedSpanTemplate(drawspandata_t* ds) for (; width != 0; width--) { bit = ((v >> ds->nflatyshift) & ds->nflatmask) | (u >> ds->nflatxshift); - colormap = ds->planezlight[tiltlighting[ds->x1]] + (ds->colormap - colormaps); + colormap = planezlight[tiltlight[ds->x1]] + colormap_diff; if constexpr (Type & DS_RIPPLE) *dest = R_DrawSpanPixel(ds, dsrc, colormap, bit, source); else @@ -437,15 +442,19 @@ void R_DrawFogSpan_Tilted(drawspandata_t* ds) const INT32 stride = vid.width; const float iz = ds->szp.z + ds->szp.y*(centery-ds->y) + ds->szp.x*(ds->x1-centerx); UINT8 * restrict dest = R_Address(ds->x1, ds->y); + const ptrdiff_t colormap_diff = (ds->colormap - colormaps); local_for_thread std::vector tiltlighting; // Lighting is simple. It's just linear interpolation from start to end R_GetTiltedLighting(tiltlighting, ds, iz, width, stride); + const INT32 * restrict tiltlight = tiltlighting.data(); + lighttable_t * const * restrict planezlight = ds->planezlight; + do { - UINT8 *colormap = ds->planezlight[tiltlighting[ds->x1++]] + (ds->colormap - colormaps); + UINT8 *colormap = planezlight[tiltlight[ds->x1++]] + colormap_diff; *dest = colormap[*dest]; dest++; } -- 2.54.0 From 509e7140e3ba7144832fcf60f06bc49fcfdfb730 Mon Sep 17 00:00:00 2001 From: Alug Date: Mon, 27 Oct 2025 21:20:39 +0100 Subject: [PATCH 027/104] use strlcpy for filling playerinfo names MAXPLAYERNAME+1 so it copies 21 and null terminates the last --- src/d_clisrv.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/src/d_clisrv.c b/src/d_clisrv.c index 61afc0eb7..a88954867 100644 --- a/src/d_clisrv.c +++ b/src/d_clisrv.c @@ -1656,12 +1656,7 @@ static void SV_SendPlayerInfo(INT32 node) netbuffer->u.playerinfo[i].node = i; - // Can't really change this because net compatibility, but the warning is annoying -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wstringop-truncation" - strncpy(netbuffer->u.playerinfo[i].name, (const char *)&player_names[i], MAXPLAYERNAME+1); -#pragma GCC diagnostic pop - netbuffer->u.playerinfo[i].name[MAXPLAYERNAME] = '\0'; + strlcpy(netbuffer->u.playerinfo[i].name, (const char *)&player_names[i], MAXPLAYERNAME+1); //fetch IP address //No, don't do that, you fuckface. -- 2.54.0 From 88363cf45d819047f93f9656909620c781e4a206 Mon Sep 17 00:00:00 2001 From: Alug Date: Mon, 27 Oct 2025 22:58:42 +0100 Subject: [PATCH 028/104] add NOHOLEPUNCH flag to disable holepunch entirely --- src/Makefile | 1 + src/Makefile.d/features.mk | 3 ++- src/doomdef.h | 2 ++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Makefile b/src/Makefile index d7a8345cd..0456990f3 100644 --- a/src/Makefile +++ b/src/Makefile @@ -49,6 +49,7 @@ # Already enabled by default for 32-bit # Windows. # NOCURL=1 - Disable libcurl--HTTP capability. +# NOHOLEPUNCH=1 - Disable holepunch capability. # NOLIBGME=1 - Disable game music emu, retro VGM support. # NOOPENMPT=1 - Disable module (tracker) music support. # NOMIXER=1 - Disable SDL Mixer (audio playback). diff --git a/src/Makefile.d/features.mk b/src/Makefile.d/features.mk index fc1e8b69f..b191ae2c1 100644 --- a/src/Makefile.d/features.mk +++ b/src/Makefile.d/features.mk @@ -6,7 +6,8 @@ passthru_opts+=\ NOHW NOMD5 NOPOSTPROCESSING\ MOBJCONSISTANCY PACKETDROP ZDEBUG\ HAVE_MINIUPNPC\ - HAVE_DISCORDRPC DEVELOP + HAVE_DISCORDRPC DEVELOP\ + NOHOLEPUNCH\ # build with debugging information ifdef DEBUGMODE diff --git a/src/doomdef.h b/src/doomdef.h index 00b4bc1f0..a0c76fa61 100644 --- a/src/doomdef.h +++ b/src/doomdef.h @@ -651,7 +651,9 @@ extern const char *compdate, *comptime, *comprevision, *compbranch; #if defined (HAVE_CURL) #define MASTERSERVER +#ifndef NOHOLEPUNCH #define HOLEPUNCH +#endif #else #undef UPDATE_ALERT #endif -- 2.54.0 From 908bba2c8a3b35a872398600ab6c65452d2785b9 Mon Sep 17 00:00:00 2001 From: Alug Date: Tue, 28 Oct 2025 00:11:49 +0100 Subject: [PATCH 029/104] rename subsector variable in P_TryCameraMove to be more descriptive --- src/p_map.c | 36 +++++++++++++++++++++++++++--------- 1 file changed, 27 insertions(+), 9 deletions(-) diff --git a/src/p_map.c b/src/p_map.c index 9e428d999..c24e338af 100644 --- a/src/p_map.c +++ b/src/p_map.c @@ -2189,7 +2189,7 @@ static boolean P_CheckCameraPosition(fixed_t x, fixed_t y, camera_t *thiscam) // boolean P_TryCameraMove(fixed_t x, fixed_t y, camera_t *thiscam) { - subsector_t *s; + subsector_t *subsec; UINT8 i; floatok = false; @@ -2198,9 +2198,9 @@ boolean P_TryCameraMove(fixed_t x, fixed_t y, camera_t *thiscam) return false; if (thiscam->x != x || thiscam->y != y || thiscam->subsector == NULL) - s = R_PointInSubsectorFast(x, y); + subsec = R_PointInSubsectorFast(x, y); else - s = thiscam->subsector; + subsec = thiscam->subsector; if (players[displayplayers[0]].mo) { @@ -2220,7 +2220,7 @@ boolean P_TryCameraMove(fixed_t x, fixed_t y, camera_t *thiscam) thiscam->ceilingz = thiscam->z + thiscam->height; thiscam->x = x; thiscam->y = y; - thiscam->subsector = s; + thiscam->subsector = subsec; return true; } } @@ -2232,6 +2232,7 @@ boolean P_TryCameraMove(fixed_t x, fixed_t y, camera_t *thiscam) tryx -= MAXRADIUS; else tryx = x; + if (y-tryy > MAXRADIUS) tryy += MAXRADIUS; else if (y-tryy < -MAXRADIUS) @@ -2249,14 +2250,14 @@ boolean P_TryCameraMove(fixed_t x, fixed_t y, camera_t *thiscam) if (tmceilingz - thiscam->z < thiscam->height) { - if (s == thiscam->subsector && tmceilingz >= thiscam->z) + if (subsec == thiscam->subsector && tmceilingz >= thiscam->z) { floatok = true; thiscam->floorz = tmfloorz; thiscam->ceilingz = tmfloorz + thiscam->height; thiscam->x = x; thiscam->y = y; - thiscam->subsector = s; + thiscam->subsector = subsec; return true; } else @@ -2281,7 +2282,7 @@ boolean P_TryCameraMove(fixed_t x, fixed_t y, camera_t *thiscam) thiscam->ceilingz = tmceilingz; thiscam->x = x; thiscam->y = y; - thiscam->subsector = s; + thiscam->subsector = subsec; return true; } @@ -2394,6 +2395,7 @@ boolean P_TryMove(mobj_t *thing, fixed_t x, fixed_t y, boolean allowdropoff) tryx -= radius; else tryx = x; + if (y-tryy > radius) tryy += radius; else if (y-tryy < -radius) @@ -2425,12 +2427,15 @@ boolean P_TryMove(mobj_t *thing, fixed_t x, fixed_t y, boolean allowdropoff) } if (thing->type == MT_SKIM) + { maxstep = 0; + } if (tmceilingz - tmfloorz < thing->height) { if (tmfloorthing) tmhitthing = tmfloorthing; + return false; // doesn't fit } @@ -2489,10 +2494,14 @@ boolean P_TryMove(mobj_t *thing, fixed_t x, fixed_t y, boolean allowdropoff) if (thing->eflags & MFE_VERTICALFLIP) { if (tmdrpoffceilz - tmceilingz > maxstep) + { return false; + } } else if (tmfloorz - tmdropoffz > maxstep) + { return false; // don't stand over a dropoff + } } } } while (tryx != x || tryy != y); @@ -2568,6 +2577,7 @@ boolean P_SceneryTryMove(mobj_t *thing, fixed_t x, fixed_t y) tryx = thing->x; tryy = thing->y; + do { if (x-tryx > MAXRADIUS) tryx += MAXRADIUS; @@ -2575,6 +2585,7 @@ boolean P_SceneryTryMove(mobj_t *thing, fixed_t x, fixed_t y) tryx -= MAXRADIUS; else tryx = x; + if (y-tryy > MAXRADIUS) tryy += MAXRADIUS; else if (y-tryy < -MAXRADIUS) @@ -2928,6 +2939,7 @@ static boolean PTR_SlideTraverse(intercept_t *in) { if (P_PointOnLineSide(slidemo->x, slidemo->y, li)) return true; // don't hit the back side + goto isblocking; } @@ -3346,10 +3358,12 @@ void P_BouncePlayerMove(mobj_t *mo) { mobj_t *fx = P_SpawnMobj(mo->x, mo->y, mo->z, MT_BUMP); + if (mo->eflags & MFE_VERTICALFLIP) fx->eflags |= MFE_VERTICALFLIP; else fx->eflags &= ~MFE_VERTICALFLIP; + fx->scale = mo->scale; S_StartSound(mo, sfx_s3k49); @@ -3363,7 +3377,8 @@ void P_BouncePlayerMove(mobj_t *mo) mo->player->cmomx = tmxmove; mo->player->cmomy = tmymove; - if (!P_TryMove(mo, mo->x + tmxmove, mo->y + tmymove, true)) { + if (!P_TryMove(mo, mo->x + tmxmove, mo->y + tmymove, true)) + { P_TryMove(mo, mo->x - oldmomx, mo->y - oldmomy, true); } } @@ -3740,6 +3755,7 @@ boolean P_CheckSector(sector_t *sector, boolean crunch) { size_t i; sector_t *sec; + for (i = 0; i < sector->numattached; i++) { sec = §ors[sector->attached[i]]; @@ -3946,6 +3962,7 @@ static msecnode_t *P_DelSecnode(msecnode_t *node) tp = node->m_sectorlist_prev; tn = node->m_sectorlist_next; + if (tp) tp->m_sectorlist_next = tn; if (tn) @@ -3956,6 +3973,7 @@ static msecnode_t *P_DelSecnode(msecnode_t *node) sp = node->m_thinglist_prev; sn = node->m_thinglist_next; + if (sp) sp->m_thinglist_next = sn; else @@ -4003,7 +4021,7 @@ static inline boolean PIT_GetSectors(line_t *ld) // allowed to move to this position, then the sector_list // will be attached to the Thing's mobj_t at touching_sectorlist. - sector_list = P_AddSecnode(ld->frontsector,tmthing,sector_list); + sector_list = P_AddSecnode(ld->frontsector, tmthing, sector_list); // Don't assume all lines are 2-sided, since some Things // like MT_TFOG are allowed regardless of whether their radius takes -- 2.54.0 From 694a8eeb69f3e8e92d48cdea204599161508bbfd Mon Sep 17 00:00:00 2001 From: Alug Date: Tue, 28 Oct 2025 00:47:12 +0100 Subject: [PATCH 030/104] P_TryMove: save one R_PointInSubsector call per player by reusing the special sector calculated earlier, this didnt change for when its checked another time also one fixedmul in P_SceneryTryMove in some cases --- src/p_map.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/p_map.c b/src/p_map.c index c24e338af..aea01c6a7 100644 --- a/src/p_map.c +++ b/src/p_map.c @@ -2411,19 +2411,22 @@ boolean P_TryMove(mobj_t *thing, fixed_t x, fixed_t y, boolean allowdropoff) { //All things are affected by their scale. fixed_t maxstep = FixedMul(MAXSTEPMOVE, mapobjectscale); + INT32 special = 0; if (thing->player) { - const INT32 special = GETSECSPECIAL(R_PointInSubsector(x, y)->sector->special, 1); + special = GETSECSPECIAL(R_PointInSubsector(x, y)->sector->special, 1); // If using type Section1:13, double the maxstep. - if (P_PlayerTouchingSectorSpecial(thing->player, 1, 13) - || special == 13) + if (P_PlayerTouchingSectorSpecial(thing->player, 1, 13) || special == 13) + { maxstep <<= 1; + } // If using type Section1:12, no maxstep. For ledges you don't want the player to climb! (see: Egg Zeppelin & SMK port walls) - else if (P_PlayerTouchingSectorSpecial(thing->player, 1, 12) - || special == 12) + else if (P_PlayerTouchingSectorSpecial(thing->player, 1, 12) || special == 12) + { maxstep = 0; + } } if (thing->type == MT_SKIM) @@ -2468,11 +2471,8 @@ boolean P_TryMove(mobj_t *thing, fixed_t x, fixed_t y, boolean allowdropoff) return false; // mobj must lower itself to fit } } - else if (maxstep > 0 && !( - thing->player && ( - P_PlayerTouchingSectorSpecial(thing->player, 1, 14) - || GETSECSPECIAL(R_PointInSubsector(x, y)->sector->special, 1) == 14) - )) // Step down + else if (maxstep > 0 && !(thing->player && + (P_PlayerTouchingSectorSpecial(thing->player, 1, 14) || special == 14))) // Step down { // If the floor difference is MAXSTEPMOVE or less, and the sector isn't Section1:14, ALWAYS // step down! Formerly required a Section1:13 sector for the full MAXSTEPMOVE, but no more. @@ -2598,14 +2598,14 @@ boolean P_SceneryTryMove(mobj_t *thing, fixed_t x, fixed_t y) if (!(thing->flags & MF_NOCLIP)) { - const fixed_t maxstep = FixedMul(MAXSTEPMOVE, mapobjectscale); - if (tmceilingz - tmfloorz < thing->height) return false; // doesn't fit if (tmceilingz - thing->z < thing->height) return false; // mobj must lower itself to fit + const fixed_t maxstep = FixedMul(MAXSTEPMOVE, mapobjectscale); + if (tmfloorz - thing->z > maxstep) return false; // too big a step up } -- 2.54.0 From 45ee50b47d02fd64e64c8f6c2ae475e538ed22e6 Mon Sep 17 00:00:00 2001 From: Alug Date: Tue, 28 Oct 2025 01:21:26 +0100 Subject: [PATCH 031/104] remove reduntant stuff from D_ClearState and G_StopDemo we only need R_ExecuteSetViewSize from splitscreen_onchange, the rest doesent do anything due to SV_StopServer call earlier setting cl_mode to CL_ABORTED SV_StopServer also calls Y_EndIntermission and Y_EndVote if necessary --- src/d_main.c | 22 +++------------------- src/g_demo.c | 5 ----- 2 files changed, 3 insertions(+), 24 deletions(-) diff --git a/src/d_main.c b/src/d_main.c index d4cef24c3..ca2ffa4f7 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -954,24 +954,6 @@ void D_SRB2Loop(void) // D_SRB2Main // ========================================================================= -static void ResetSplitScreen(void) -{ - UINT8 i; - - // recompute screen size - R_ExecuteSetViewSize(); - - if (!demo.playback && !botingame) - { - for (i = 1; i < MAXSPLITSCREENPLAYERS; i++) - { - if (i > splitscreen) - CL_RemoveSplitscreenPlayer(displayplayers[i]); - else - CL_AddSplitscreenPlayer(); - } - } -} // // D_ClearState // @@ -992,7 +974,9 @@ void D_ClearState(void) CL_ClearPlayer(i); splitscreen = 0; - ResetSplitScreen(); // splitscreen onchange resets us to singleplayer :chaosleep: + + // recompute screen size + R_ExecuteSetViewSize(); botingame = false; botskin = 0; diff --git a/src/g_demo.c b/src/g_demo.c index 96ff33e65..bd3905160 100644 --- a/src/g_demo.c +++ b/src/g_demo.c @@ -3494,11 +3494,6 @@ void G_StopDemo(void) demo.rewinding = false; CL_ClearRewinds(); - if (gamestate == GS_INTERMISSION) - Y_EndIntermission(); // cleanup - if (gamestate == GS_VOTING) - Y_EndVote(); - D_ClearState(); } -- 2.54.0 From db2062ed1d3552728741a88a502dfdd357e2f254 Mon Sep 17 00:00:00 2001 From: Alug Date: Wed, 29 Oct 2025 15:59:25 +0100 Subject: [PATCH 032/104] some i_tcp fixes - SOCK_Get return true when receiving good packet from a lan player - SOCK_GetAddr fix handling of ipv6 addresses, so ipv6 servers can be found in the serverlist taken from srb2/classic --- src/d_net.c | 5 ++--- src/i_tcp.c | 52 ++++++++++++++++++++++++++-------------------------- 2 files changed, 28 insertions(+), 29 deletions(-) diff --git a/src/d_net.c b/src/d_net.c index 05df1320c..61492f2a8 100644 --- a/src/d_net.c +++ b/src/d_net.c @@ -1127,9 +1127,7 @@ boolean HGetPacket(void) while (true) { - I_NetGet(); - - if (doomcom->remotenode == -1) // No packet received + if (!I_NetGet()) // No packets received return false; getbytes += packetheaderlength + doomcom->datalength; // For stat @@ -1165,6 +1163,7 @@ boolean HGetPacket(void) GotAcks(); continue; } + doomcom->datalength -= BASEPACKETSIZE; break; } diff --git a/src/i_tcp.c b/src/i_tcp.c index 09cba908f..2690bbc7e 100644 --- a/src/i_tcp.c +++ b/src/i_tcp.c @@ -28,14 +28,14 @@ #endif #ifdef _WIN32 -#define USE_WINSOCK + #define USE_WINSOCK #endif //WIN32 OS #ifdef USE_WINSOCK -#include -#define addrinfo_t ADDRINFOA + #include + #define addrinfo_t ADDRINFOA #else -#define addrinfo_t struct addrinfo + #define addrinfo_t struct addrinfo #endif #include "doomdef.h" @@ -148,16 +148,16 @@ static UINT8 UPNP_support = TRUE; #define DEFAULTPORT "5029" -#if defined (USE_WINSOCK) -typedef SOCKET SOCKET_TYPE; -#define ERRSOCKET (SOCKET_ERROR) +#ifdef USE_WINSOCK + typedef SOCKET SOCKET_TYPE; + #define ERRSOCKET (SOCKET_ERROR) #else -#if defined (__unix__) || defined (__APPLE__) || defined (__HAIKU__) -typedef int SOCKET_TYPE; -#else -typedef unsigned long SOCKET_TYPE; -#endif -#define ERRSOCKET (-1) + #if defined (__unix__) || defined (__APPLE__) || defined (__HAIKU__) + typedef int SOCKET_TYPE; + #else + typedef unsigned long SOCKET_TYPE; + #endif + #define ERRSOCKET (-1) #endif #define IPV6_MULTICAST_ADDRESS "ff15::57e1:1a12" @@ -345,17 +345,15 @@ static const char *SOCK_AddrToStr(mysockaddr_t *sk) { static char s[64]; // 255.255.255.255:65535 or // [ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff]:65535 - #ifdef HAVE_IPV6 int v6 = (sk->any.sa_family == AF_INET6); #else int v6 = 0; #endif - void *addr; int e = 0; // save error code so it can't be modified later code and avoid calling WSAGetLastError() more then once - if(sk->any.sa_family == AF_INET) + if (sk->any.sa_family == AF_INET) addr = &sk->ip4.sin_addr; #ifdef HAVE_IPV6 else if(sk->any.sa_family == AF_INET6) @@ -364,9 +362,11 @@ static const char *SOCK_AddrToStr(mysockaddr_t *sk) else addr = NULL; - if(addr == NULL) + if (addr == NULL) + { sprintf(s, "No address"); - else if(inet_ntop(sk->any.sa_family, addr, &s[v6], sizeof (s) - v6) == NULL) + } + else if (inet_ntop(sk->any.sa_family, addr, &s[v6], sizeof (s) - v6) == NULL) { e = errno; sprintf(s, "Unknown family type, error #%u: %s", e, strerror(e)); @@ -381,7 +381,7 @@ static const char *SOCK_AddrToStr(mysockaddr_t *sk) strcat(s, va(":%d", ntohs(sk->ip6.sin6_port))); } #endif - else if(sk->any.sa_family == AF_INET && sk->ip4.sin_port != 0) + else if (sk->any.sa_family == AF_INET && sk->ip4.sin_port != 0) strcat(s, va(":%d", ntohs(sk->ip4.sin_port))); return s; @@ -481,7 +481,6 @@ static boolean SOCK_cmpaddr(mysockaddr_t *a, mysockaddr_t *b, UINT8 mask) return false; } - // This is a hack. For some reason, nodes aren't being freed properly. // This goes through and cleans up what nodes were supposed to be freed. /** \warning This function causes the file downloading to stop if someone joins. @@ -636,7 +635,7 @@ static boolean SOCK_Get(void) c = recvfrom(mysockets[n], (char *)&doomcom->data, MAXPACKETLENGTH, 0, (void *)&fromaddress, &fromlen); - if (c > 0) + if (c != ERRSOCKET) { #ifdef USE_STUN if (STUN_got_response(doomcom->data, c)) @@ -652,20 +651,21 @@ static boolean SOCK_Get(void) #endif // find remote node number - for (j = 1; j <= MAXNETNODES; j++) //include LAN + for (j = 1; j <= MAXNETNODES; j++) // include LAN { if (SOCK_cmpaddr(&fromaddress, &clientaddress[j], 0)) { doomcom->remotenode = (INT16)j; // good packet from a game player doomcom->datalength = (INT16)c; nodesocket[j] = mysockets[n]; - return false; + return true; } } // not found // find a free slot j = getfreenode(); + if (j > 0) { const time_t curTime = time(NULL); @@ -1269,7 +1269,7 @@ void I_ShutdownTcpDriver(void) init_tcp_driver = false; } -static boolean SOCK_GetAddr(struct sockaddr_in *sin, const char *address, const char *port, boolean test) +static boolean SOCK_GetAddr(mysockaddr_t *sin, const char *address, const char *port, boolean test) { addrinfo_t *ai = NULL, *runp, hints; int gaie; @@ -1330,7 +1330,7 @@ static SINT8 SOCK_NetMakeNodewPort(const char *address, const char *port) if (newnode != -1) { - if (!SOCK_GetAddr(&clientaddress[newnode].ip4, address, port, true)) + if (!SOCK_GetAddr(&clientaddress[newnode], address, port, true)) { nodeconnected[newnode] = false; return -1; @@ -1358,7 +1358,7 @@ static void rendezvous(int size) if (tic != refreshtic) { - if (SOCK_GetAddr(&rzv.ip4, host, (port ? port : "7777"), false)) + if (SOCK_GetAddr(&rzv, host, (port ? port : "7777"), false)) { refreshtic = tic; } -- 2.54.0 From cb5c4e482e95e646c68fd0ab80f8a00e4371199c Mon Sep 17 00:00:00 2001 From: Alug Date: Wed, 29 Oct 2025 16:24:44 +0100 Subject: [PATCH 033/104] SOCK_GetAddr: freeaddrinfo does not need to be called on getaddrinfo failure --- src/i_tcp.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/i_tcp.c b/src/i_tcp.c index 2690bbc7e..18c20dd5d 100644 --- a/src/i_tcp.c +++ b/src/i_tcp.c @@ -1271,7 +1271,7 @@ void I_ShutdownTcpDriver(void) static boolean SOCK_GetAddr(mysockaddr_t *sin, const char *address, const char *port, boolean test) { - addrinfo_t *ai = NULL, *runp, hints; + addrinfo_t *ai, *runp, hints; int gaie; size_t i; @@ -1287,10 +1287,7 @@ static boolean SOCK_GetAddr(mysockaddr_t *sin, const char *address, const char * gaie = getaddrinfo(address, port, &hints, &ai); if (gaie != 0) - { - freeaddrinfo(ai); return false; - } runp = ai; -- 2.54.0 From 129f88b6a779b9e618a1c9ac8f82f8015bd44606 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gustaf=20Alh=C3=A4ll?= Date: Tue, 28 Oct 2025 23:01:02 +0100 Subject: [PATCH 034/104] Fix buffer underflow when querying invalid nodes --- src/i_tcp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i_tcp.c b/src/i_tcp.c index 18c20dd5d..b58c134c1 100644 --- a/src/i_tcp.c +++ b/src/i_tcp.c @@ -752,7 +752,7 @@ static void SOCK_Send(void) int e = 0; // save error code so it can't be modified later code and avoid calling WSAGetLastError() more then once size_t i, j; - if (!nodeconnected[doomcom->remotenode]) + if (doomcom->remotenode < 0 || !nodeconnected[doomcom->remotenode]) return; if (doomcom->remotenode == BROADCASTADDR) -- 2.54.0 From 24895874ed840a0a5a52d8a31fb143994d976854 Mon Sep 17 00:00:00 2001 From: Alug Date: Wed, 29 Oct 2025 22:53:09 +0100 Subject: [PATCH 035/104] UDP_Bind: check socket send buffer size aswell if to small than adjust, like receive buffer --- src/i_tcp.c | 41 ++++++++++++++++++++++++++++++++++++++--- 1 file changed, 38 insertions(+), 3 deletions(-) diff --git a/src/i_tcp.c b/src/i_tcp.c index b58c134c1..531db4ab9 100644 --- a/src/i_tcp.c +++ b/src/i_tcp.c @@ -970,7 +970,7 @@ static SOCKET_TYPE UDP_Bind(int family, struct sockaddr *addr, socklen_t addrlen e = errno; I_OutputMsg("getting SO_RCVBUF failed: #%u, %s\n", e, strerror(e)); } - CONS_Printf(M_GetText("Network system buffer: %dKb\n"), opt>>10); + CONS_Printf(M_GetText("Network receive buffer: %dKb\n"), opt>>10); if (opt < 64<<10) // 64k { @@ -991,9 +991,44 @@ static SOCKET_TYPE UDP_Bind(int family, struct sockaddr *addr, socklen_t addrlen } if (opt < 64<<10) - CONS_Alert(CONS_WARNING, M_GetText("Can't set buffer length to 64k, file transfer will be bad\n")); + CONS_Alert(CONS_WARNING, M_GetText("Can't set receive buffer length to 64k, file transfer will be bad\n")); else - CONS_Printf(M_GetText("Network system buffer set to: %dKb\n"), opt>>10); + CONS_Printf(M_GetText("Network receive buffer set to: %dKb\n"), opt>>10); + } + + opt = 0; + opts = (socklen_t)sizeof(opt); + rc = getsockopt(s, SOL_SOCKET, SO_SNDBUF, (char *)&opt, &opts); + if (rc <= -1) + { + e = errno; + I_OutputMsg("getting SO_SNDBUF failed: #%u, %s\n", e, strerror(e)); + } + CONS_Printf(M_GetText("Network send buffer: %dKb\n"), opt>>10); + + if (opt < 64<<10) // 64k + { + opt = 64<<10; + opts = (socklen_t)sizeof(opt); + rc = setsockopt(s, SOL_SOCKET, SO_SNDBUF, (char *)&opt, opts); + if (rc <= -1) + { + e = errno; + I_OutputMsg("setting SO_SNDBUF to %dKb failed: #%u, %s\n", opt>>10, e, strerror(e)); + } + + opt = 0; + rc = getsockopt(s, SOL_SOCKET, SO_SNDBUF, (char *)&opt, &opts); + if (rc <= -1) + { + e = errno; + I_OutputMsg("getting SO_SNDBUF failed: #%u, %s\n", e, strerror(e)); + } + + if (opt < 64<<10) + CONS_Alert(CONS_WARNING, M_GetText("Can't set send buffer length to 64k, file transfer will be bad\n")); + else + CONS_Printf(M_GetText("Network send system buffer set to: %dKb\n"), opt>>10); } rc = getsockname(s, &straddr.any, &len); -- 2.54.0 From f34a47c50d9554318ba992da779537dbdd08e30d Mon Sep 17 00:00:00 2001 From: Alug Date: Fri, 31 Oct 2025 02:01:30 +0100 Subject: [PATCH 036/104] HWR_PrecacheLevelFlats: only run flat encore case when having an "encoremap" not when its just encore mode might save some time on some maps, as we dont need to check for remapping --- src/hardware/hw_cache.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/hardware/hw_cache.c b/src/hardware/hw_cache.c index edbd83b77..339cce3f9 100644 --- a/src/hardware/hw_cache.c +++ b/src/hardware/hw_cache.c @@ -603,7 +603,7 @@ static void HWR_PrecacheLevelFlats(void) // special case for encore #ifdef GLENCORE - if (encoremode) + if (encoremap) { // go through all sectors to determine if it should be remapped for encore for (i = 0; i < numsectors; i++) @@ -678,8 +678,6 @@ static void HWR_PrecacheLevelTextures(void) const line_t *line = &lines[i]; #ifdef GLENCORE const int noencoremap = ((encoremap && (line->flags & ML_TFERLINE)) ? 2 : 1); -#else - const int noencoremap = 1; #endif // two sides for (j = 0; j < 2; j++) @@ -695,11 +693,14 @@ static void HWR_PrecacheLevelTextures(void) for (f = 0; f < 3; f++) { const INT32 texnum = sidetex[f]; + if (texnum < 0 || texnum >= numtextures || texturepresent[texnum]) continue; - +#ifdef GLENCORE texturepresent[texnum] = 1|noencoremap; - +#else + texturepresent[texnum] = 1; +#endif HWR_GetTexture(texnum, false); #ifdef GLENCORE if (noencoremap & 2) -- 2.54.0 From 36c43d89e6454dc05078bd77ab551758e894b6fe Mon Sep 17 00:00:00 2001 From: Alug Date: Fri, 31 Oct 2025 02:20:53 +0100 Subject: [PATCH 037/104] GL encore: use struct for encore texture handling struct with two sets of maptextures, one for normal another for encore textures functionally identical, hopefully also performancewise more explicit than doing this with just one set and indexing stuff :bloblcatpats: --- src/hardware/hw_cache.c | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/src/hardware/hw_cache.c b/src/hardware/hw_cache.c index 339cce3f9..e58169e14 100644 --- a/src/hardware/hw_cache.c +++ b/src/hardware/hw_cache.c @@ -437,8 +437,16 @@ void HWR_MakePatch(const patch_t *patch, GLPatch_t *glPatch, GLMipmap_t *glMipma // CACHING HANDLING // ================================================= +typedef struct +{ + GLMapTexture_t normal; +#ifdef GLENCORE + GLMapTexture_t encore; +#endif +} GLMapTextureSet_t; // idk i suck at naming things + static size_t gl_numtextures = 0; // Texture count -static GLMapTexture_t *gl_textures; // For all textures +static GLMapTextureSet_t *gl_textures; // For all textures static void HWR_FreeTextureData(patch_t *patch) { @@ -578,13 +586,12 @@ void HWR_FreeMapTextures(void) { size_t i; -#ifdef GLENCORE - for (i = 0; i < gl_numtextures*2; i++) -#else for (i = 0; i < gl_numtextures; i++) -#endif { - FreeMapTexture(&gl_textures[i]); + FreeMapTexture(&gl_textures[i].normal); +#ifdef GLENCORE + FreeMapTexture(&gl_textures[i].encore); +#endif } // now the heap don't have any 'user' pointing to our @@ -824,11 +831,8 @@ void HWR_LoadMapTextures(size_t pnumtextures) HWR_FreeMapTextures(); gl_numtextures = pnumtextures; -#ifdef GLENCORE - gl_textures = calloc(gl_numtextures, sizeof (*gl_textures)*2); // *2 - 1 for encore-remapped texture and another for noencore texture (unused when not in encore) -#else - gl_textures = calloc(gl_numtextures, sizeof (*gl_textures)); -#endif + gl_textures = calloc(gl_numtextures, sizeof(*gl_textures)); // *2 - 1 for encore-remapped texture and another for noencore texture (unused when not in encore), see: GLMapTextureSet_t + if (gl_textures == NULL) I_Error("HWR_LoadMapTextures: ran out of memory for OpenGL textures. Sad!"); } @@ -852,7 +856,7 @@ GLMapTexture_t *HWR_GetTexture(INT32 tex, boolean noencore) // Every texture in memory, stored in the // hardware renderer's bit depth format. Wow! #ifdef GLENCORE - gltex = &gl_textures[tex*2 + (encoremap && !noencore ? 0 : 1)]; + gltex = (encoremap && !noencore) ? &gl_textures[tex].encore : &gl_textures[tex].normal; #else gltex = &gl_textures[tex]; #endif -- 2.54.0 From e45c72f5253b3b14d5f6174caacbbaa011564dca Mon Sep 17 00:00:00 2001 From: toaster Date: Sun, 5 Nov 2023 18:50:33 +0000 Subject: [PATCH 038/104] SV_StopServer: Use G_SetGamestate instead of a direct write An apparent oversight identified while working on the previous commit. --- src/d_clisrv.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/d_clisrv.c b/src/d_clisrv.c index a88954867..ef4112018 100644 --- a/src/d_clisrv.c +++ b/src/d_clisrv.c @@ -4649,7 +4649,9 @@ void SV_StopServer(void) Y_EndIntermission(); if (gamestate == GS_VOTING) Y_EndVote(); - gamestate = wipegamestate = GS_NULL; + + G_SetGamestate(GS_NULL); + wipegamestate = GS_NULL; for (i = 0; i < MAXSPLITSCREENPLAYERS; i++) localtextcmd[i][0] = 0; -- 2.54.0 From 03de30df3e2b10ba072c50f3c7622738e2958d06 Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 03:00:19 +0100 Subject: [PATCH 039/104] SV_StopServer: reset textcmdbuf fixes an issue where in some rare cases, the game may get stuck in a weird limbo state due to the text command buffer being full and never be cleared, so net commands can never be executed --- src/d_clisrv.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/d_clisrv.c b/src/d_clisrv.c index ef4112018..aed5ee347 100644 --- a/src/d_clisrv.c +++ b/src/d_clisrv.c @@ -4654,8 +4654,17 @@ void SV_StopServer(void) wipegamestate = GS_NULL; for (i = 0; i < MAXSPLITSCREENPLAYERS; i++) + { localtextcmd[i][0] = 0; + while (textcmdbuf[i] != NULL) + { + textcmdbuf_t *buf = textcmdbuf[i]; + textcmdbuf[i] = textcmdbuf[i]->next; + Z_Free(buf); + } + } + for (i = firstticstosend; i < firstticstosend + BACKUPTICS; i++) D_Clearticcmd(i); -- 2.54.0 From ae306351ba469682f345339e74922bbc2dd1bec8 Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 16:25:43 +0100 Subject: [PATCH 040/104] add cv_precachetextures to advanced video options --- src/m_menudefs.c | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/src/m_menudefs.c b/src/m_menudefs.c index 6bda9c733..6633085bf 100644 --- a/src/m_menudefs.c +++ b/src/m_menudefs.c @@ -944,21 +944,23 @@ static menuitem_t OP_ExpOptionsMenu[] = {IT_STRING | IT_CVAR, NULL, "Skyboxes", &cv_skybox, 40}, - {IT_STRING | IT_CVAR, NULL, "FPS counter sampling", &cv_accuratefps, 50}, + {IT_STRING | IT_CVAR, NULL, "Precache Level Textures", &cv_precachetextures, 50}, - {IT_STRING | IT_CVAR, NULL, "Frameskip", &cv_frameskip, 60}, + {IT_STRING | IT_CVAR, NULL, "FPS counter sampling", &cv_accuratefps, 60}, - {IT_STRING | IT_CVAR, NULL, "Votescreen Scaling", &cv_votebgscaling, 70}, + {IT_STRING | IT_CVAR, NULL, "Frameskip", &cv_frameskip, 70}, + + {IT_STRING | IT_CVAR, NULL, "Votescreen Scaling", &cv_votebgscaling, 80}, #ifdef HWRENDER - {IT_STRING | IT_CVAR, NULL, "Screen Textures", &cv_glscreentextures, 80}, + {IT_STRING | IT_CVAR, NULL, "Screen Textures", &cv_glscreentextures, 90}, #ifdef USE_FBO_OGL - {IT_STRING | IT_CVAR, NULL, "FBO Downsampling support", &cv_glframebuffer, 85}, - {IT_STRING | IT_CVAR, NULL, "Palette Depth", &cv_glpalettedepth, 95}, - {IT_DISABLED, NULL, "", NULL, 105}, // dummy text + {IT_STRING | IT_CVAR, NULL, "FBO Downsampling support", &cv_glframebuffer, 95}, + {IT_STRING | IT_CVAR, NULL, "Palette Depth", &cv_glpalettedepth, 105}, + {IT_DISABLED, NULL, "", NULL, 115}, // dummy text #else - {IT_STRING | IT_CVAR, NULL, "Palette Depth", &cv_glpalettedepth, 90}, - {IT_DISABLED, NULL, "", NULL, 100}, // dummy text + {IT_STRING | IT_CVAR, NULL, "Palette Depth", &cv_glpalettedepth, 100}, + {IT_DISABLED, NULL, "", NULL, 110}, // dummy text #endif #endif }; @@ -971,6 +973,7 @@ static const char* OP_ExpTooltips[] = "Sets minimum sector brightness, useful for dark areas.", //"Should the directional lightning be randomized each map?\nTakes effect on next map load.", "Toggle being able to see the sky.", + "Preload all level textures on level load.\nMassively reduces texture related stuttering during gameplay\nat the cost of longer level loading times.\nDisable this if you experience timeouts during level switches.", "Change the FPS counter sampling method\nInaccurate updates slower\nand might miss sudden framerate changes and drops,\nproviding a more averaged result.\nAccurate updates faster, but might be less readable.", // how to ingles?? "Skips rendering frames if game logic takes too long\npreventing gameplay issues during performance drops.", // idk im shit as describing things "Different methods of scaling the votescreen backgrounds.", @@ -991,6 +994,7 @@ enum op_exp_secbright, //op_exp_dirlight, op_exp_skybox, + op_exp_texcache, op_exp_accuratefps, op_exp_frameskip, op_exp_votescrn, -- 2.54.0 From feff5a7c17487681b0a1680ebdb4d105303e70b3 Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 16:32:04 +0100 Subject: [PATCH 041/104] make a toggle for using angleturn in replays while this is more accurate to how the player experienced stuff in the actual game, this also can be somewhat jittery and stuttery depending on the net conditions the replay was recorded in, so make this toggable if someone wants it --- src/d_netcmd.c | 5 +++++ src/d_netcmd.h | 2 ++ src/p_user.c | 2 +- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/d_netcmd.c b/src/d_netcmd.c index 92d9fb935..86c9b12b1 100644 --- a/src/d_netcmd.c +++ b/src/d_netcmd.c @@ -292,6 +292,10 @@ consvar_t cv_mouseturn = {"mouseturn", "Off", CV_SAVE, CV_OnOff, NULL, 0, NULL, // Lagless camera! Yay! consvar_t cv_laglesscam = {"lagless_camera", "Off", CV_SAVE, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL}; +// makes the camera use the saved angleturn in replays instead of the players angle +// more accurate to how the recording player seen things in game, but may be jittery if they encountered net issues +consvar_t cv_demoangturn = {"useangleturninreplays", "Off", CV_SAVE, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL}; + consvar_t cv_verticallook[MAXSPLITSCREENPLAYERS] = { {"verticallook", "On", CV_SAVE, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL}, {"verticallook2", "On", CV_SAVE, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL}, @@ -1043,6 +1047,7 @@ void D_RegisterClientCommands(void) CV_RegisterVar(&cv_betainterscreen); CV_RegisterVar(&cv_laglesscam); + CV_RegisterVar(&cv_demoangturn); for (i = 0; i < MAXSPLITSCREENPLAYERS; i++) { diff --git a/src/d_netcmd.h b/src/d_netcmd.h index 52f777e2b..6b7382403 100644 --- a/src/d_netcmd.h +++ b/src/d_netcmd.h @@ -209,6 +209,8 @@ extern consvar_t cv_betainterscreen; extern consvar_t cv_laglesscam; +extern consvar_t cv_demoangturn; + typedef enum { SKINMENUTYPE_SCROLL = 0, diff --git a/src/p_user.c b/src/p_user.c index b99998844..5ccc43f0a 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -3824,7 +3824,7 @@ boolean P_MoveChaseCamera(player_t *player, camera_t *thiscam, boolean resetcall // Hack-adjacent. // Sometimes stale ticcmds send a weird angle at the start of the race. // P_UpdatePlayerAngle knows to ignore cmd angle when you literally can't turn, so we do the same here. - if (leveltime > starttime) + if (cv_demoangturn.value && leveltime > starttime) focusangle = player->cmd.angleturn << 16; else focusangle = mo->angle; // Just use something known sane. -- 2.54.0 From c428472c6f919f1981c52b81b1ad262b72676e56 Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 16:12:05 +0100 Subject: [PATCH 042/104] dont precache anything ever in HWR_PrecacheLevel if disabled before some cvar callbacks called this unconditionally --- src/hardware/hw_cache.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/hardware/hw_cache.c b/src/hardware/hw_cache.c index e58169e14..1a09ee33f 100644 --- a/src/hardware/hw_cache.c +++ b/src/hardware/hw_cache.c @@ -812,7 +812,7 @@ static void HWR_PrecacheLevelSprites(void) void HWR_PrecacheLevel(void) { - if (gamestate != GS_LEVEL) + if (gamestate != GS_LEVEL || !cv_precachetextures.value) return; // Precache flats. -- 2.54.0 From 456a380e3a975311ecfbc898635a17232e12e8f3 Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 15:39:21 +0100 Subject: [PATCH 043/104] HWR_PrecacheLevel: disable sprite precaching in some cases this may lead to crashes, its mostly useless in gl eitherway due to how colourmapped sprites work --- src/hardware/hw_cache.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/hardware/hw_cache.c b/src/hardware/hw_cache.c index 1a09ee33f..4d9fdb54c 100644 --- a/src/hardware/hw_cache.c +++ b/src/hardware/hw_cache.c @@ -745,7 +745,7 @@ static void HWR_PrecacheLevelTextures(void) free(texturepresent); } -static void HWR_PrecacheLevelSprites(void) +/*static void HWR_PrecacheLevelSprites(void) { patch_t *spritepatch; char *spritepresent; @@ -808,7 +808,7 @@ static void HWR_PrecacheLevelSprites(void) } } free(spritepresent); -} +}*/ void HWR_PrecacheLevel(void) { @@ -822,7 +822,7 @@ void HWR_PrecacheLevel(void) HWR_PrecacheLevelTextures(); // Precache sprites. - HWR_PrecacheLevelSprites(); + //HWR_PrecacheLevelSprites(); } void HWR_LoadMapTextures(size_t pnumtextures) -- 2.54.0 From eaee95a026244cc793cd8c6eb60adee9b0cb8cb5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gustaf=20Alh=C3=A4ll?= Date: Tue, 29 Jul 2025 13:10:44 +0200 Subject: [PATCH 044/104] Add -workdir --- src/d_main.c | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/src/d_main.c b/src/d_main.c index ca2ffa4f7..50b3330e9 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -1721,8 +1721,14 @@ void D_SRB2Main(void) else { // use user specific config file + if (M_CheckParm("-workdir") && M_IsNextParm()) + snprintf(srb2home, sizeof srb2home, "%s", M_GetNextParm()); + else #ifdef DEFAULTDIR - snprintf(srb2home, sizeof srb2home, "%s" PATHSEP DEFAULTDIR, userhome); + snprintf(srb2home, sizeof srb2home, "%s" PATHSEP DEFAULTDIR, userhome); +#else // DEFAULTDIR + snprintf(srb2home, sizeof srb2home, "%s", userhome); +#endif // DEFAULTDIR snprintf(downloaddir, sizeof downloaddir, "%s" PATHSEP "DOWNLOAD", srb2home); if (dedicated) snprintf(configfile, sizeof configfile, "%s" PATHSEP "d"CONFIGFILENAME, srb2home); @@ -1731,17 +1737,6 @@ void D_SRB2Main(void) // can't use sprintf since there is %u in savegamename strcatbf(savegamename, srb2home, PATHSEP); -#else - snprintf(srb2home, sizeof srb2home, "%s", userhome); - snprintf(downloaddir, sizeof downloaddir, "%s", userhome); - if (dedicated) - snprintf(configfile, sizeof configfile, "%s" PATHSEP "d"CONFIGFILENAME, userhome); - else - snprintf(configfile, sizeof configfile, "%s" PATHSEP CONFIGFILENAME, userhome); - - // can't use sprintf since there is %u in savegamename - strcatbf(savegamename, userhome, PATHSEP); -#endif } configfile[sizeof configfile - 1] = '\0'; @@ -1767,6 +1762,9 @@ void D_SRB2Main(void) } } + // make sure workdir exists + I_mkdir(srb2home, 0755); + // Create addons dir snprintf(addonsdir, sizeof addonsdir, "%s%s%s", srb2home, PATHSEP, "addons"); I_mkdir(addonsdir, 0755); -- 2.54.0 From 908e07362872c132ebb4c8360d318194ef37918c Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 18:28:47 +0100 Subject: [PATCH 045/104] removed unused autoload variables M_ConnectMenuModChecks been checking an uninitialized bool the whole time Zzz... --- src/d_main.c | 10 ++++------ src/d_main.h | 2 -- src/m_menu.c | 4 ++-- 3 files changed, 6 insertions(+), 10 deletions(-) diff --git a/src/d_main.c b/src/d_main.c index 50b3330e9..1f425a468 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -102,10 +102,8 @@ static char *startuppwads[MAX_WADFILES]; // autoloading static char *autoloadwadfiles[MAX_WADFILES]; static char *autoloadwadfilespost[MAX_WADFILES]; -boolean autoloading; -boolean autoloaded; +static boolean autoloaded = false; boolean postautoloaded = false; -boolean wasautoloaded = false; // boolean devparm = false; // started game with -devparm @@ -1158,7 +1156,7 @@ static void D_FindAddonsToAutoload(void) // If the file is found, run our shit if (!autoloadconfigfile) // nope outta here { - wasautoloaded = postautoloaded = true; // so D_AddAutoloadFiles can skip everything since nothings there to autoload + autoloaded = postautoloaded = true; // so D_AddAutoloadFiles can skip everything since nothings there to autoload return; } @@ -1206,7 +1204,7 @@ static void D_FindAddonsToAutoload(void) static void D_AddAutoloadFiles(void) { - if (wasautoloaded) + if (autoloaded) return; CONS_Printf("D_AutoloadFile(): Loading autoloaded addons...\n"); @@ -1214,7 +1212,7 @@ static void D_AddAutoloadFiles(void) CONS_Printf("D_AutoloadFile(): Are you sure you put in valid files or what?\n"); D_CleanFile(autoloadwadfiles); - wasautoloaded = true; + autoloaded = true; } void D_AddPostloadFiles(void) diff --git a/src/d_main.h b/src/d_main.h index 86c79a63c..deeca4c07 100644 --- a/src/d_main.h +++ b/src/d_main.h @@ -61,8 +61,6 @@ extern boolean minilighticon; // mkwii-style minimap headlight // // autoload stuff -extern boolean autoloading; -extern boolean autoloaded; extern boolean postautoloaded; void D_AddPostloadFiles(void); diff --git a/src/m_menu.c b/src/m_menu.c index 6eaccdce0..49398df34 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -6956,9 +6956,9 @@ static void M_ConnectMenuModChecks(INT32 choice) (void)choice; // okay never mind we want to COMMUNICATE to the player pre-emptively instead of letting them try and then get confused when it doesn't work - if (modifiedgame || autoloaded) + if (modifiedgame) { - M_StartMessage(M_GetText("You have addons loaded.\nYou won't be able to join netgames!\n\nTo play online, restart the game\nand don't load any addons.\nSRB2Kart will automatically add\neverything you need when you join.\n\n(Press a key)\n"),M_ConnectMenu,MM_EVENTHANDLER); + M_StartMessage("You have addons loaded.\nYou won't be able to join netgames!\n\nTo play online, restart the game\nand don't load any addons.\nSRB2Kart will automatically add\neverything you need when you join.\n\n(Press a key)\n", M_ConnectMenu, MM_EVENTHANDLER); return; } -- 2.54.0 From de73c536658a8f3b479ba5123967f0f42418128d Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 19:20:04 +0100 Subject: [PATCH 046/104] optimize addon autoload handling --- src/d_main.c | 73 ++++++++++++++++++++++++++++++++++------------------ 1 file changed, 48 insertions(+), 25 deletions(-) diff --git a/src/d_main.c b/src/d_main.c index 1f425a468..1fde58a7b 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -102,6 +102,8 @@ static char *startuppwads[MAX_WADFILES]; // autoloading static char *autoloadwadfiles[MAX_WADFILES]; static char *autoloadwadfilespost[MAX_WADFILES]; +static size_t autoloadcount = 0; +static size_t postloadcount = 0; static boolean autoloaded = false; boolean postautoloaded = false; // @@ -1057,6 +1059,7 @@ static void D_AddFile(const char *file, char **filearray) static void D_CleanFile(char **filearray) { size_t pnumwadfiles; + for (pnumwadfiles = 0; filearray[pnumwadfiles]; pnumwadfiles++) { free(filearray[pnumwadfiles]); @@ -1064,6 +1067,17 @@ static void D_CleanFile(char **filearray) } } +static void D_CleanAutoloadFile(char **filearray, size_t count) +{ + size_t i; + + for (i = 0; i < count; i++) + { + free(filearray[i]); + filearray[i] = NULL; + } +} + // Taken from TSoURDt3rd // https://github.com/StarManiaKG/The-Story-of-Uncapped-Revengence-Discord-the-3rd/blob/main/src/STAR/star_functions.c static INT32 D_DetectFileType(const char* filename) @@ -1092,9 +1106,8 @@ static INT32 D_DetectFileType(const char* filename) } // autoload that shit -static void D_AutoloadFile(const char *file, char **filearray) +static void D_AutoloadFile(const char *file, char **filearray, size_t count) { - size_t pnumwadfiles; char *newfile; INT32 fileType = D_DetectFileType(file); @@ -1104,9 +1117,6 @@ static void D_AutoloadFile(const char *file, char **filearray) return; } - for (pnumwadfiles = 0; filearray[pnumwadfiles]; pnumwadfiles++) - ; - if (fileType <= 6) { newfile = malloc(strlen(file) + 1); @@ -1114,7 +1124,7 @@ static void D_AutoloadFile(const char *file, char **filearray) I_Error("No more free memory to AutoloadFile %s",file); strcpy(newfile, file); - filearray[pnumwadfiles] = newfile; + filearray[count] = newfile; } else { @@ -1144,13 +1154,14 @@ static void D_FindAddonsToAutoload(void) { FILE *autoloadconfigfile; const char *autoloadpath; + char *newline; + boolean postload; - INT32 i; char wadsToAutoload[256] = ""; // does it exist tho - autoloadpath = va("%s"PATHSEP"%s",srb2home,AUTOLOADCONFIGFILENAME); + autoloadpath = va("%s"PATHSEP"%s", srb2home, AUTOLOADCONFIGFILENAME); autoloadconfigfile = fopen(autoloadpath, "r"); // If the file is found, run our shit @@ -1160,26 +1171,27 @@ static void D_FindAddonsToAutoload(void) return; } - while (fgets(wadsToAutoload, sizeof wadsToAutoload, autoloadconfigfile) != NULL) + while (fgets(wadsToAutoload, sizeof(wadsToAutoload), autoloadconfigfile) != NULL) { postload = false; + // skip if commented or empty - if ((wadsToAutoload[1] == '\0' || wadsToAutoload[1] == '\n') - || (wadsToAutoload[0] == '#')) + if (wadsToAutoload[0] == '\n' || + wadsToAutoload[0] == '#' || + wadsToAutoload[0] == '\0') continue; + // this marks it so that it loads after loading server addons - else if (fastncmp(wadsToAutoload, "postload ", 9)) + if (fastncmp(wadsToAutoload, "postload ", 9)) { strremove(wadsToAutoload, "postload "); postload = true; } // Remove Any Empty or Skipped Lines - for (i = 0; wadsToAutoload[i] != '\0'; i++) - { - if (wadsToAutoload[i] == '\n') - wadsToAutoload[i] = '\0'; - } + newline = strchr(wadsToAutoload, '\n'); + if (newline) + *newline = '\0'; if (!postload && W_CheckPostLoadList(wadsToAutoload)) { @@ -1189,15 +1201,20 @@ static void D_FindAddonsToAutoload(void) // LOAD IT if (!postload) - D_AutoloadFile(wadsToAutoload, autoloadwadfiles); + { + D_AutoloadFile(wadsToAutoload, autoloadwadfiles, autoloadcount); + autoloadcount++; + } else - D_AutoloadFile(wadsToAutoload, autoloadwadfilespost); - - // end it here - for (i = 0; wadsToAutoload[i] != '\0'; i++) - wadsToAutoload[i] = '\0'; + { + D_AutoloadFile(wadsToAutoload, autoloadwadfilespost, postloadcount); + postloadcount++; + } } + autoloadwadfiles[autoloadcount] = NULL; + autoloadwadfilespost[postloadcount] = NULL; + // we dont want memory leaks around here do we? fclose(autoloadconfigfile); } @@ -1208,10 +1225,13 @@ static void D_AddAutoloadFiles(void) return; CONS_Printf("D_AutoloadFile(): Loading autoloaded addons...\n"); + if (W_AddAutoloadedLocalFiles(autoloadwadfiles) == 0) CONS_Printf("D_AutoloadFile(): Are you sure you put in valid files or what?\n"); - D_CleanFile(autoloadwadfiles); + D_CleanAutoloadFile(autoloadwadfiles, autoloadcount); + + autoloadcount = 0; autoloaded = true; } @@ -1221,10 +1241,13 @@ void D_AddPostloadFiles(void) return; CONS_Printf("D_AddPostloadFiles(): Loading postloaded addons...\n"); + if (W_AddAutoloadedLocalFiles(autoloadwadfilespost) == 0) CONS_Printf("D_AddPostloadFiles(): Are you sure you put in valid files or what?\n"); - D_CleanFile(autoloadwadfilespost); + D_CleanAutoloadFile(autoloadwadfilespost, postloadcount); + + postloadcount = 0; postautoloaded = true; } -- 2.54.0 From c0f24ebbbcdacde32f0753ba4a7bee6a247561c6 Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 19:36:28 +0100 Subject: [PATCH 047/104] postautoloaded can be static not used outside of d_main --- src/d_main.c | 2 +- src/d_main.h | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/d_main.c b/src/d_main.c index 1fde58a7b..f3b2486c8 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -105,7 +105,7 @@ static char *autoloadwadfilespost[MAX_WADFILES]; static size_t autoloadcount = 0; static size_t postloadcount = 0; static boolean autoloaded = false; -boolean postautoloaded = false; +static boolean postautoloaded = false; // boolean devparm = false; // started game with -devparm diff --git a/src/d_main.h b/src/d_main.h index deeca4c07..d9954a5b0 100644 --- a/src/d_main.h +++ b/src/d_main.h @@ -61,7 +61,6 @@ extern boolean minilighticon; // mkwii-style minimap headlight // // autoload stuff -extern boolean postautoloaded; void D_AddPostloadFiles(void); // the infinite loop of D_SRB2Loop() called from win_main for windows version -- 2.54.0 From 42b1f849c030e35f5db44b905e4a808920f0ca3d Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 20:00:43 +0100 Subject: [PATCH 048/104] cleanup and optimize startup wad handling --- src/d_main.c | 102 ++++++++++++++++++++++++--------------------------- 1 file changed, 47 insertions(+), 55 deletions(-) diff --git a/src/d_main.c b/src/d_main.c index f3b2486c8..b7704318b 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -97,7 +97,9 @@ UINT8 window_notinfocus = false; static char *startupiwadfiles[MAX_WADFILES]; +static size_t startupiwadcount = 0; static char *startuppwads[MAX_WADFILES]; +static size_t startuppwadcount = 0; // autoloading static char *autoloadwadfiles[MAX_WADFILES]; @@ -1038,14 +1040,10 @@ void D_StartTitle(void) // // D_AddFile // -static void D_AddFile(const char *file, char **filearray) +static void D_AddFile(const char *file, char **filearray, size_t count) { - size_t pnumwadfiles; char *newfile; - for (pnumwadfiles = 0; filearray[pnumwadfiles]; pnumwadfiles++) - ; - newfile = malloc(strlen(file) + 1); if (!newfile) { @@ -1053,21 +1051,10 @@ static void D_AddFile(const char *file, char **filearray) } strcpy(newfile, file); - filearray[pnumwadfiles] = newfile; + filearray[count] = newfile; } -static void D_CleanFile(char **filearray) -{ - size_t pnumwadfiles; - - for (pnumwadfiles = 0; filearray[pnumwadfiles]; pnumwadfiles++) - { - free(filearray[pnumwadfiles]); - filearray[pnumwadfiles] = NULL; - } -} - -static void D_CleanAutoloadFile(char **filearray, size_t count) +static void D_CleanFile(char **filearray, size_t count) { size_t i; @@ -1229,7 +1216,7 @@ static void D_AddAutoloadFiles(void) if (W_AddAutoloadedLocalFiles(autoloadwadfiles) == 0) CONS_Printf("D_AutoloadFile(): Are you sure you put in valid files or what?\n"); - D_CleanAutoloadFile(autoloadwadfiles, autoloadcount); + D_CleanFile(autoloadwadfiles, autoloadcount); autoloadcount = 0; autoloaded = true; @@ -1245,7 +1232,7 @@ void D_AddPostloadFiles(void) if (W_AddAutoloadedLocalFiles(autoloadwadfilespost) == 0) CONS_Printf("D_AddPostloadFiles(): Are you sure you put in valid files or what?\n"); - D_CleanAutoloadFile(autoloadwadfilespost, postloadcount); + D_CleanFile(autoloadwadfilespost, postloadcount); postloadcount = 0; postautoloaded = true; @@ -1255,13 +1242,13 @@ void D_AddPostloadFiles(void) // Identify the SRB2 version, and IWAD file to use. // ========================================================================== -static boolean AddIWAD(void) +static boolean AddIWAD(const char * file, const char *dir) { - char * path = va(pandf, srb2path, "srb2.srb"); + char * path = va(pandf, dir, file); if (FIL_ReadFileOK(path)) { - D_AddFile(path, startupiwadfiles); + D_AddFile(path, startupiwadfiles, startupiwadcount++); return true; } @@ -1304,7 +1291,7 @@ static void IdentifyVersion(void) } // Load the IWAD - if (!AddIWAD()) + if (!AddIWAD("srb2.srb", srb2path)) // not sure why this uses srb2path and not srb2waddir? { I_Error("SRB2.SRB not found! Expected in %s\n", srb2waddir); } @@ -1318,48 +1305,51 @@ static void IdentifyVersion(void) #ifdef USE_PATCH_DTA // Add our crappy patches to fix our bugs - D_AddFile(va(pandf,srb2waddir,"patch.dta")); + if (!AddIWAD("patch.dta", srb2waddir)) + { + I_Error("patch.dta not found! Expected in %s\n", srb2waddir); + } #endif + if (!AddIWAD("gfx.kart", srb2waddir)) + { + I_Error("gfx.kart not found! Expected in %s\n", srb2waddir); + } - D_AddFile(va(pandf, srb2waddir, "gfx.kart"), startupiwadfiles); - D_AddFile(va(pandf, srb2waddir, "textures.kart"), startupiwadfiles); - D_AddFile(va(pandf, srb2waddir, "chars.kart"), startupiwadfiles); - D_AddFile(va(pandf, srb2waddir, "maps.kart"), startupiwadfiles); + if (!AddIWAD("textures.kart", srb2waddir)) + { + I_Error("textures.kart not found! Expected in %s\n", srb2waddir); + } + + if (!AddIWAD("chars.kart", srb2waddir)) + { + I_Error("chars.kart not found! Expected in %s\n", srb2waddir); + } + + if (!AddIWAD("maps.kart", srb2waddir)) + { + I_Error("maps.kart not found! Expected in %s\n", srb2waddir); + } #ifdef USE_PATCH_KART - D_AddFile(va(pandf,srb2waddir,"patch.kart"), startupiwadfiles); + if (!AddIWAD("patch.kart", srb2waddir)) + { + I_Error("patch.kart not found! Expected in %s\n", srb2waddir); + } #endif - const char *path = NULL; - - path = va(pandf, srb2waddir, "extra.kart"); - // completely optional - if (FIL_ReadFileOK(path)) - { - D_AddFile(path, startupiwadfiles); + if (AddIWAD("extra.kart", srb2waddir)) found_extra_kart = true; - } - - path = va(pandf, srb2waddir, "extra2.kart"); // completely optional 2: Back with a vengence - if (FIL_ReadFileOK(path)) - { - D_AddFile(path, startupiwadfiles); + if (AddIWAD("extra2.kart", srb2waddir)) found_extra2_kart = true; - } - path = va(pandf, srb2waddir, "extra3.kart"); - - if (FIL_ReadFileOK(path)) - { - D_AddFile(path, startupiwadfiles); + if (AddIWAD("extra3.kart", srb2waddir)) found_extra3_kart = true; - } #if !defined (HAVE_SDL) || defined (HAVE_MIXER) #define MUSICTEST(str) \ - musicpath = va(pandf,srb2waddir,str);\ + musicpath = va(pandf, srb2waddir, str);\ handle = W_OpenWadFile(&musicpath, false); \ if (handle) \ {\ @@ -1368,7 +1358,7 @@ static void IdentifyVersion(void) if (ms == 0) \ I_Error("File " str " has been modified with non-music/sound lumps"); \ if (ms == 1) \ - D_AddFile(musicpath, startupiwadfiles); \ + D_AddFile(musicpath, startupiwadfiles, startupiwadcount++); \ } { const char *musicpath; @@ -1814,7 +1804,7 @@ void D_SRB2Main(void) const char *s = M_GetNextParm(); if (s) // Check for NULL? - D_AddFile(s, startuppwads); + D_AddFile(s, startuppwads, startuppwadcount++); } } } @@ -1848,7 +1838,8 @@ void D_SRB2Main(void) CONS_Printf("W_InitMultipleFiles(): Adding IWAD and main PWADs.\n"); W_InitMultipleFiles(startupiwadfiles, false); - D_CleanFile(startupiwadfiles); + D_CleanFile(startupiwadfiles, startupiwadcount); + startupiwadcount = 0; mainwads = 0; #ifndef DEVELOP @@ -1895,7 +1886,8 @@ void D_SRB2Main(void) D_CheckMaps(true); } - D_CleanFile(startuppwads); + D_CleanFile(startuppwads, startuppwadcount); + startuppwadcount = 0; cht_Init(); -- 2.54.0 From c8ae4a89d9a7b73210a17301f094786b99050c15 Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 19:28:41 +0100 Subject: [PATCH 049/104] throw motion blur effect stuff behind an ifdef so we can get rid of the unused array prob could just remove it at this point, but maybe ill fix it someday for the funnis --- src/d_main.c | 6 ++++++ src/doomstat.h | 3 +++ src/p_user.c | 14 +++++++++----- src/v_video.c | 11 +++++++++-- 4 files changed, 27 insertions(+), 7 deletions(-) diff --git a/src/d_main.c b/src/d_main.c index b7704318b..ee587cfdc 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -115,7 +115,9 @@ boolean devparm = false; // started game with -devparm boolean singletics = false; // timedemo boolean lastdraw = false; +#ifdef MOTIONBLUR INT32 postimgparam[MAXSPLITSCREENPLAYERS]; +#endif // These variables are only true if // whether the respective sound system is disabled @@ -399,7 +401,11 @@ static void D_Renderview(void) if (i == 0) R_ApplyViewMorph(); +#ifdef MOTIONBLUR V_DoPostProcessor(i, postimgparam[i]); +#else + V_DoPostProcessor(i, 0); +#endif } } diff --git a/src/doomstat.h b/src/doomstat.h index 46c3d61f9..a9bd9bbac 100644 --- a/src/doomstat.h +++ b/src/doomstat.h @@ -116,7 +116,10 @@ extern UINT8 window_notinfocus; // are we in focus? (backend independant -- hand extern boolean nodrawers; extern boolean noblit; extern boolean lastdraw; + +#ifdef MOTIONBLUR extern INT32 postimgparam[MAXSPLITSCREENPLAYERS]; +#endif extern INT32 viewwindowx, viewwindowy; extern INT32 viewwidth; diff --git a/src/p_user.c b/src/p_user.c index 5ccc43f0a..481cd6060 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -4315,17 +4315,19 @@ static void P_CalcPostImg(player_t *player, camera_t *thiscam) { sector_t *sector = NULL; UINT8 postimgtype = 0; - //INT32 *param; fixed_t pviewheight = 0; +#ifdef MOTIONBLUR + INT32 *param; - /*for (i = 0; i <= splitscreen; i++) + for (i = 0; i <= splitscreen; i++) { if (player == &players[displayplayers[i]]) { param = &postimgparam[i]; break; } - }*/ + } +#endif if (encoremode) // srb2kart postimgtype |= POSTIMG_MIRROR; @@ -4361,16 +4363,18 @@ static void P_CalcPostImg(player_t *player, camera_t *thiscam) else if (P_CameraCheckHeatFirstperson(player, sector, pviewheight)) postimgtype |= POSTIMG_HEAT; +#ifdef MOTIONBLUR // Motion blur // unused - /*if (player->speed > (35<speed > (35<speed - 32)/4; if (*param > 5) *param = 5; - }*/ + } +#endif thiscam->postimg = postimgtype; } diff --git a/src/v_video.c b/src/v_video.c index 9805e910c..e7d9a87ca 100644 --- a/src/v_video.c +++ b/src/v_video.c @@ -3581,6 +3581,9 @@ boolean *heatshifter = NULL; INT32 lastheight = 0; INT32 heatindex[MAXSPLITSCREENPLAYERS] = {0, 0, 0, 0}; +// unused motion blur effect, probably non functional +//#define MOTIONBLUR + // // V_DoPostProcessor // @@ -3595,7 +3598,9 @@ void V_DoPostProcessor(INT32 view, INT32 param) (void)type; (void)param; #else +#ifndef MOTIONBLUR (void)param; // unused motion blur stuff +#endif INT32 yoffset, xoffset; #ifdef HWRENDER @@ -3730,7 +3735,8 @@ void V_DoPostProcessor(INT32 view, INT32 param) srcscr = tmp; } - /*if (thiscam->postimg & POSTIMG_MOTION) // Motion Blur! +#ifdef MOTIONBLUR + if (thiscam->postimg & POSTIMG_MOTION) // Motion Blur! { INT32 x, y; @@ -3742,7 +3748,8 @@ void V_DoPostProcessor(INT32 view, INT32 param) for (x = xoffset; x < xoffset+viewwidth; x++) tmpscr[y*vid.width + x] = colormaps[*(transme + (srcscr [(y*vid.width)+x ] <<8) + (tmpscr[(y*vid.width)+x]))]; } - }*/ + } +#endif if ((thiscam->postimg & POSTIMG_FLIP) && !(thiscam->postimg & POSTIMG_MIRROR)) // Flip the screen upside-down { -- 2.54.0 From 7c1f17bb8dcbc2dc6ea8ace3c11e9e80368720c0 Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 20:47:19 +0100 Subject: [PATCH 050/104] pass our file counts to W_InitMultipleFiles smol opzimiation, skips some ptr deref --- src/d_main.c | 17 +++++++++-------- src/w_wad.c | 13 +++++++------ src/w_wad.h | 2 +- 3 files changed, 17 insertions(+), 15 deletions(-) diff --git a/src/d_main.c b/src/d_main.c index ee587cfdc..7bb932b1b 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -1046,7 +1046,7 @@ void D_StartTitle(void) // // D_AddFile // -static void D_AddFile(const char *file, char **filearray, size_t count) +static void D_AddFile(const char *file, char **filearray, size_t index) { char *newfile; @@ -1057,14 +1057,14 @@ static void D_AddFile(const char *file, char **filearray, size_t count) } strcpy(newfile, file); - filearray[count] = newfile; + filearray[index] = newfile; } -static void D_CleanFile(char **filearray, size_t count) +static void D_CleanFile(char **filearray, size_t index) { size_t i; - for (i = 0; i < count; i++) + for (i = 0; i < index; i++) { free(filearray[i]); filearray[i] = NULL; @@ -1358,7 +1358,7 @@ static void IdentifyVersion(void) musicpath = va(pandf, srb2waddir, str);\ handle = W_OpenWadFile(&musicpath, false); \ if (handle) \ - {\ + { \ int ms = W_VerifyNMUSlumps(musicpath, handle, false); \ fclose(handle); \ if (ms == 0) \ @@ -1843,7 +1843,8 @@ void D_SRB2Main(void) // load wad, including the main wad file CONS_Printf("W_InitMultipleFiles(): Adding IWAD and main PWADs.\n"); - W_InitMultipleFiles(startupiwadfiles, false); + W_InitMultipleFiles(startupiwadfiles, startupiwadcount, false); + //mainwads = startupiwadcount - musicwads; D_CleanFile(startupiwadfiles, startupiwadcount); startupiwadcount = 0; mainwads = 0; @@ -1884,10 +1885,10 @@ void D_SRB2Main(void) D_CheckMaps(false); - W_InitMultipleFiles(startuppwads, true); + W_InitMultipleFiles(startuppwads, startuppwadcount, true); // Only search for pwad maps if we actually have a pwad added - if (startuppwads[0] != NULL) + if (startuppwadcount > 0) { D_CheckMaps(true); } diff --git a/src/w_wad.c b/src/w_wad.c index 756dee4a6..f9eb9b361 100644 --- a/src/w_wad.c +++ b/src/w_wad.c @@ -971,24 +971,25 @@ UINT16 W_InitFile(const char *filename, boolean local, boolean startup) * \return 1 if all files were loaded, 0 if at least one was missing or * invalid. */ -INT32 W_InitMultipleFiles(char **filenames, boolean addons) +INT32 W_InitMultipleFiles(char **filenames, size_t count, boolean addons) { INT32 rc = 1; INT32 overallrc = 1; - + size_t i; (void)addons; - // will be realloced as lumps are added - for (; *filenames; filenames++) + for (i = 0; i < count; i++) { + const char *filename = filenames[i]; + // Previously, W_VerifyNMUSlumps was called to mark game modified // for addons... but W_InitFile already does exactly that! //CONS_Debug(DBG_SETUP, "Loading %s\n", *filenames); - rc = W_InitFile(*filenames, false, true); + rc = W_InitFile(filename, false, true); if (rc == INT16_MAX) - CONS_Printf(M_GetText("Errors occurred while loading %s; not added.\n"), *filenames); + CONS_Printf(M_GetText("Errors occurred while loading %s; not added.\n"), filename); overallrc &= (rc != INT16_MAX) ? 1 : 0; } diff --git a/src/w_wad.h b/src/w_wad.h index c3cae627f..6240c31f3 100644 --- a/src/w_wad.h +++ b/src/w_wad.h @@ -167,7 +167,7 @@ UINT16 W_InitFile(const char *filename, boolean local, boolean startup); // W_InitMultipleFiles returns 1 if all is okay, 0 otherwise, // so that it stops with a message if a file was not found, but not if all is okay. -INT32 W_InitMultipleFiles(char **filenames, boolean addons); +INT32 W_InitMultipleFiles(char **filenames, size_t count, boolean addons); // Used for autoload. Uses P_AddWadFileLocal instead of W_InitFiles. INT32 W_AddAutoloadedLocalFiles(char **filenames); -- 2.54.0 From 3e0150d4f31be79d30c99d0d6f8b00a02e85360b Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 20:53:21 +0100 Subject: [PATCH 051/104] remove auto/postload check variables we can just check our counts since D_FindAddonsToAutoload will never be called again --- src/d_main.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/d_main.c b/src/d_main.c index 7bb932b1b..aa6c905c2 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -106,8 +106,6 @@ static char *autoloadwadfiles[MAX_WADFILES]; static char *autoloadwadfilespost[MAX_WADFILES]; static size_t autoloadcount = 0; static size_t postloadcount = 0; -static boolean autoloaded = false; -static boolean postautoloaded = false; // boolean devparm = false; // started game with -devparm @@ -1160,7 +1158,7 @@ static void D_FindAddonsToAutoload(void) // If the file is found, run our shit if (!autoloadconfigfile) // nope outta here { - autoloaded = postautoloaded = true; // so D_AddAutoloadFiles can skip everything since nothings there to autoload + autoloadcount = postloadcount = 0; // so D_AddAutoloadFiles can skip everything since nothings there to autoload return; } @@ -1214,7 +1212,8 @@ static void D_FindAddonsToAutoload(void) static void D_AddAutoloadFiles(void) { - if (autoloaded) + // nothing to autoload + if (autoloadcount == 0) return; CONS_Printf("D_AutoloadFile(): Loading autoloaded addons...\n"); @@ -1225,12 +1224,12 @@ static void D_AddAutoloadFiles(void) D_CleanFile(autoloadwadfiles, autoloadcount); autoloadcount = 0; - autoloaded = true; } void D_AddPostloadFiles(void) { - if (postautoloaded || !netgame) + // nothing to postload + if (postloadcount == 0 || !netgame) return; CONS_Printf("D_AddPostloadFiles(): Loading postloaded addons...\n"); @@ -1241,7 +1240,6 @@ void D_AddPostloadFiles(void) D_CleanFile(autoloadwadfilespost, postloadcount); postloadcount = 0; - postautoloaded = true; } // ========================================================================== -- 2.54.0 From 4fccb48d2ab44360890e24375e7593124039fadc Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 20:57:55 +0100 Subject: [PATCH 052/104] fix wonky variable names --- src/d_main.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/d_main.c b/src/d_main.c index aa6c905c2..032a9189e 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -1058,11 +1058,11 @@ static void D_AddFile(const char *file, char **filearray, size_t index) filearray[index] = newfile; } -static void D_CleanFile(char **filearray, size_t index) +static void D_CleanFile(char **filearray, size_t count) { size_t i; - for (i = 0; i < index; i++) + for (i = 0; i < count; i++) { free(filearray[i]); filearray[i] = NULL; @@ -1097,7 +1097,7 @@ static INT32 D_DetectFileType(const char* filename) } // autoload that shit -static void D_AutoloadFile(const char *file, char **filearray, size_t count) +static void D_AutoloadFile(const char *file, char **filearray, size_t index) { char *newfile; INT32 fileType = D_DetectFileType(file); @@ -1115,7 +1115,7 @@ static void D_AutoloadFile(const char *file, char **filearray, size_t count) I_Error("No more free memory to AutoloadFile %s",file); strcpy(newfile, file); - filearray[count] = newfile; + filearray[index] = newfile; } else { -- 2.54.0 From cae5e73d7dd681881a42026a2aa822cae3967ae1 Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 30 Oct 2025 18:04:46 +0100 Subject: [PATCH 053/104] LUA_RawPushUserdata "Same as LUA_PushUserdata but don't set a metatable yet." from RR --- src/lua_script.c | 25 ++++++++++++++++++++++--- src/lua_script.h | 8 ++++++++ 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/src/lua_script.c b/src/lua_script.c index e59841940..448d7221d 100644 --- a/src/lua_script.c +++ b/src/lua_script.c @@ -492,25 +492,37 @@ void LUA_InvalidateMathlibCache(const char *name) // Pushes it to the stack and stores it in the registry. void LUA_PushUserdata(lua_State *L, void *data, const char *meta) { + if (LUA_RawPushUserdata(L, data) == LPUSHED_NEW) + { + luaL_getmetatable(L, meta); + lua_setmetatable(L, -2); + } +} + +// Same as LUA_PushUserdata but don't set a metatable yet. +lpushed_t LUA_RawPushUserdata(lua_State *L, void *data) +{ + lpushed_t status = LPUSHED_NIL; + void **userdata; if (!data) { // push a NULL lua_pushnil(L); - return; + return status; } lua_getfield(L, LUA_REGISTRYINDEX, LREG_VALID); I_Assert(lua_istable(L, -1)); + lua_pushlightuserdata(L, data); lua_rawget(L, -2); + if (lua_isnil(L, -1)) { // no userdata? deary me, we'll have to make one. lua_pop(L, 1); // pop the nil // create the userdata userdata = lua_newuserdata(L, sizeof(void *)); *userdata = data; - luaL_getmetatable(L, meta); - lua_setmetatable(L, -2); // Set it in the registry so we can find it again lua_pushlightuserdata(L, data); // k (store the userdata via the data's pointer) @@ -518,8 +530,15 @@ void LUA_PushUserdata(lua_State *L, void *data, const char *meta) lua_rawset(L, -4); // stack is left with the userdata on top, as if getting it had originally succeeded. + + status = LPUSHED_NEW; } + else + status = LPUSHED_EXISTING; + lua_remove(L, -2); // remove LREG_VALID + + return status; } // When userdata is freed, use this function to remove it from Lua. diff --git a/src/lua_script.h b/src/lua_script.h index af218978d..a7edf89ca 100644 --- a/src/lua_script.h +++ b/src/lua_script.h @@ -59,7 +59,15 @@ fixed_t LUA_GetConstant(const char *word); // Need better name for this ;-; void LUA_InvalidateMathlibCache(const char *name); +typedef enum { + LPUSHED_NIL, + LPUSHED_NEW, + LPUSHED_EXISTING, +} lpushed_t; + void LUA_PushUserdata(lua_State *L, void *data, const char *meta); +lpushed_t LUA_RawPushUserdata(lua_State *L, void *data); + void LUA_InvalidateUserdata(void *data); void LUA_InvalidateLevel(void); void LUA_InvalidateMapthings(void); -- 2.54.0 From f53d37052af1fd0fcb3c250bbbfa19985da34386 Mon Sep 17 00:00:00 2001 From: James R Date: Sun, 2 May 2021 21:59:23 -0700 Subject: [PATCH 054/104] Replace LUA_PushLightUserdata with LUA_PushUserdata See c92378fa and a7e20f70. I didn't realize that light userdata's metatable is shared--like numbers or strings. So it cannot be paired with a metatable. I also made a few minor tweaks to Lua cvars, other than accounting for the double pointer in the userdata. --- src/command.c | 2 +- src/lua_consolelib.c | 65 ++++++++++++-------------------------------- src/lua_script.h | 2 +- 3 files changed, 19 insertions(+), 50 deletions(-) diff --git a/src/command.c b/src/command.c index e73125649..eae29f07f 100644 --- a/src/command.c +++ b/src/command.c @@ -1474,7 +1474,7 @@ finish: var->flags |= CV_MODIFIED; // raise 'on change' code - LUA_CVarChanged(var->name); // let consolelib know what cvar this is. + LUA_CVarChanged(var); // let consolelib know what cvar this is. if (var->flags & CV_CALL && !stealth) var->func(); diff --git a/src/lua_consolelib.c b/src/lua_consolelib.c index 36c3a6c45..f148a8dcb 100644 --- a/src/lua_consolelib.c +++ b/src/lua_consolelib.c @@ -28,7 +28,7 @@ #define NOHUD if (hud_running) return luaL_error(L, "HUD rendering code should not call this function!"); -static const char *cvname = NULL; +static consvar_t *this_cvar; void Got_Luacmd(UINT8 **cp, INT32 playernum) { @@ -284,16 +284,13 @@ static int lib_comBufInsertText(lua_State *L) return 0; } -void LUA_CVarChanged(const char *name) +void LUA_CVarChanged(void *cvar) { - cvname = name; + this_cvar = cvar; } static void Lua_OnChange(void) { - I_Assert(gL != NULL); - I_Assert(cvname != NULL); - /// \todo Network this! XD_LUAVAR // Why?.. @@ -305,13 +302,10 @@ static void Lua_OnChange(void) // From CV_OnChange registry field, get the function for this cvar by name. lua_getfield(gL, LUA_REGISTRYINDEX, "CV_OnChange"); I_Assert(lua_istable(gL, -1)); - lua_getfield(gL, -1, cvname); // get function + lua_pushlightuserdata(gL, this_cvar); + lua_rawget(gL, -2); // get function - // From the CV_Vars registry field, get the cvar's userdata by name. - lua_getfield(gL, LUA_REGISTRYINDEX, "CV_Vars"); - I_Assert(lua_istable(gL, -1)); - lua_getfield(gL, -1, cvname); // get consvar_t* userdata. - lua_remove(gL, -2); // pop the CV_Vars table. + LUA_RawPushUserdata(gL, this_cvar); LUA_Call(gL, 1, 0, error_handler_i); // call function(cvar) lua_pop(gL, 2); // pop CV_OnChange table and error handler @@ -329,9 +323,8 @@ static int lib_cvRegisterVar(lua_State *L) luaL_checktype(L, 1, LUA_TTABLE); lua_settop(L, 1); // Clear out all other possible arguments, leaving only the first one. NOHUD - cvar = lua_newuserdata(L, sizeof(consvar_t)); - luaL_getmetatable(L, META_CVAR); - lua_setmetatable(L, -2); + cvar = ZZ_Calloc(sizeof(consvar_t)); + LUA_PushUserdata(L, cvar, META_CVAR); #define FIELDERROR(f, e) luaL_error(L, "bad value for " LUA_QL(f) " in table passed to " LUA_QL("CV_RegisterVar") " (%s)", e); #define TYPEERROR(f, t) FIELDERROR(f, va("%s expected, got %s", lua_typename(L, t), luaL_typename(L, -1))) @@ -384,7 +377,7 @@ static int lib_cvRegisterVar(lua_State *L) lua_getfield(L, LUA_REGISTRYINDEX, "CV_PossibleValue"); I_Assert(lua_istable(L, 5)); - lua_pushvalue(L, 2); // cvar userdata + lua_pushlightuserdata(L, cvar); cvpv = lua_newuserdata(L, sizeof(CV_PossibleValue_t) * (count+1)); lua_rawset(L, 5); lua_pop(L, 1); // pop CV_PossibleValue registry table @@ -412,13 +405,14 @@ static int lib_cvRegisterVar(lua_State *L) TYPEERROR("func", LUA_TFUNCTION) lua_getfield(L, LUA_REGISTRYINDEX, "CV_OnChange"); I_Assert(lua_istable(L, 5)); + lua_pushlightuserdata(L, cvar); lua_pushvalue(L, 4); - lua_setfield(L, 5, cvar->name); + lua_rawset(L, 5); lua_pop(L, 1); cvar->func = Lua_OnChange; } else if (((i == 5 && !(cvar->flags & CV_CALL)) - || (cvar->flags & CV_CALL && i == 6)) + || (cvar->flags & CV_CALL && i == 6)) || (k && fasticmp(k, "category"))) { category = lua_isnoneornil(L, 4) ? NULL : lua_tostring(L, 4); @@ -434,19 +428,6 @@ static int lib_cvRegisterVar(lua_State *L) #undef FIELDERROR #undef TYPEERROR - // stack: cvar table, cvar userdata - lua_getfield(L, LUA_REGISTRYINDEX, "CV_Vars"); - I_Assert(lua_istable(L, 3)); - - lua_getfield(L, 3, cvar->name); - if (lua_type(L, -1) != LUA_TNIL) - return luaL_error(L, M_GetText("Variable %s is already defined\n"), cvar->name); - lua_pop(L, 1); - - lua_pushvalue(L, 2); - lua_setfield(L, 3, cvar->name); - lua_pop(L, 1); - // actually time to register it to the console now! Finally! cvar->flags |= CV_MODIFIED; CV_RegisterVar(cvar); @@ -477,22 +458,9 @@ static int lib_cvRegisterVar(lua_State *L) static int lib_cvFindVar(lua_State *L) { - consvar_t *cv; - if (( cv = CV_FindVar(luaL_checkstring(L,1)) )) - { - lua_settop(L,1);/* We only want one argument in the stack. */ - lua_pushlightuserdata(L, cv);/* Now the second value on stack. */ - luaL_getmetatable(L, META_CVAR); - /* - The metatable is the last value on the stack, so this - applies it to the second value, which is the cvar. - */ - lua_setmetatable(L,2); - lua_pushvalue(L,2); - return 1; - } - else - return 0; + const char *name = luaL_checkstring(L, 1); + LUA_PushUserdata(L, CV_FindVar(name), META_CVAR); + return 1; } static int CVarSetFunction @@ -501,7 +469,7 @@ static int CVarSetFunction void (*Set)(consvar_t *, const char *), void (*SetValue)(consvar_t *, INT32) ){ - consvar_t *cvar = (consvar_t *)luaL_checkudata(L, 1, META_CVAR); + consvar_t *cvar = *(consvar_t **)luaL_checkudata(L, 1, META_CVAR); switch (lua_type(L, 2)) { @@ -531,6 +499,7 @@ static int lib_cvStealthSet(lua_State *L) static int lib_cvAddValue(lua_State *L) { consvar_t *cvar = (consvar_t *)luaL_checkudata(L, 1, META_CVAR); + CV_AddValue(cvar, (INT32)luaL_checknumber(L, 2)); return 0; } diff --git a/src/lua_script.h b/src/lua_script.h index a7edf89ca..f1b58cced 100644 --- a/src/lua_script.h +++ b/src/lua_script.h @@ -77,7 +77,7 @@ void LUA_Archive(savebuffer_t *save, boolean network); void LUA_UnArchive(savebuffer_t *save, boolean network); void Got_Luacmd(UINT8 **cp, INT32 playernum); // lua_consolelib.c -void LUA_CVarChanged(const char *name); // lua_consolelib.c +void LUA_CVarChanged(void *cvar); // lua_consolelib.c int Lua_optoption(lua_State *L, int narg, int def, int list_ref); int Lua_CreateFieldTable(lua_State *L, const char *const lst[]); void LUA_HookNetArchive(lua_CFunction archFunc, savebuffer_t *save); -- 2.54.0 From 1d0fb17da4e72e41d325e8c0a631e04c8d2f49e2 Mon Sep 17 00:00:00 2001 From: Monster Iestyn Date: Tue, 20 Aug 2019 18:18:29 +0100 Subject: [PATCH 055/104] Fixes for lib_cvRegisterVar (the Lua version of CV_RegisterVar): * Make sure the consvar's properties are all initialised to zeros as defaults * Error if the consvar is not given a name * Error if the consvar has CV_CALL but no call function * Error if the consvar has CV_NOINIT but not CV_CALL --- src/lua_consolelib.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/lua_consolelib.c b/src/lua_consolelib.c index f148a8dcb..260ba6532 100644 --- a/src/lua_consolelib.c +++ b/src/lua_consolelib.c @@ -428,6 +428,13 @@ static int lib_cvRegisterVar(lua_State *L) #undef FIELDERROR #undef TYPEERROR + if (!cvar->name) + return luaL_error(L, M_GetText("Variable has no name!\n")); + if ((cvar->flags & CV_NOINIT) && !(cvar->flags & CV_CALL)) + return luaL_error(L, M_GetText("Variable %s has CV_NOINIT without CV_CALL\n"), cvar->name); + if ((cvar->flags & CV_CALL) && !cvar->func) + return luaL_error(L, M_GetText("Variable %s has CV_CALL without a function\n"), cvar->name); + // actually time to register it to the console now! Finally! cvar->flags |= CV_MODIFIED; CV_RegisterVar(cvar); -- 2.54.0 From 5675eefeb22336031715ac197baa33d80f947dd7 Mon Sep 17 00:00:00 2001 From: James R Date: Sun, 11 Feb 2024 05:33:20 -0800 Subject: [PATCH 056/104] Got_Luacmd: ensure lua stack is large enough for command arguments --- src/lua_consolelib.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/lua_consolelib.c b/src/lua_consolelib.c index 260ba6532..f54349206 100644 --- a/src/lua_consolelib.c +++ b/src/lua_consolelib.c @@ -30,6 +30,12 @@ static consvar_t *this_cvar; +static void clear_lua_stack(void) +{ + if (gL) // check if Lua is actually turned on first, you dummmy -- Monster Iestyn 04/07/18 + lua_settop(gL, 0); // clear stack +} + void Got_Luacmd(UINT8 **cp, INT32 playernum) { UINT8 i, argc, flags; @@ -74,6 +80,13 @@ void Got_Luacmd(UINT8 **cp, INT32 playernum) lua_remove(gL, -2); // pop command info table + if (!lua_checkstack(gL, argc)) // player + command arguments + { + clear_lua_stack(); + CONS_Alert(CONS_WARNING, "lua command stack overflow from %s (%d, need %d more)\n", player_names[playernum], lua_gettop(gL), argc); + return; + } + LUA_PushUserdata(gL, &players[playernum], META_PLAYER); for (i = 1; i < argc; i++) { @@ -88,8 +101,7 @@ void Got_Luacmd(UINT8 **cp, INT32 playernum) deny: //must be hacked/buggy client - if (gL) // check if Lua is actually turned on first, you dummmy -- Monster Iestyn 04/07/18 - lua_settop(gL, 0); // clear stack + clear_lua_stack(); CONS_Alert(CONS_WARNING, M_GetText("Illegal lua command received from %s\n"), player_names[playernum]); if (server) -- 2.54.0 From f603106ac84859035d16ed0b412092fa65db6760 Mon Sep 17 00:00:00 2001 From: Eidolon Date: Sun, 11 Feb 2024 15:10:51 -0600 Subject: [PATCH 057/104] Check Lua stack before pushing cons args Prevents a Lua stack overrun when executing absurd console commands for local-only lua commands. --- src/lua_consolelib.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/lua_consolelib.c b/src/lua_consolelib.c index f54349206..c69fdcc10 100644 --- a/src/lua_consolelib.c +++ b/src/lua_consolelib.c @@ -190,6 +190,11 @@ void COM_Lua_f(void) I_Assert(lua_isfunction(gL, -1)); lua_remove(gL, -2); // pop command info table + if (!lua_checkstack(gL, COM_Argc() + 1)) + { + CONS_Alert(CONS_WARNING, "lua command stack overflow (%d, need %s more)\n", lua_gettop(gL), sizeu1(COM_Argc() + 1)); + return; + } LUA_PushUserdata(gL, &players[playernum], META_PLAYER); for (i = 1; i < COM_Argc(); i++) lua_pushstring(gL, COM_Argv(i)); -- 2.54.0 From 81f7335b05c0ea2d8cc9134f5a1f61433660448a Mon Sep 17 00:00:00 2001 From: James R Date: Sun, 11 Feb 2024 15:40:04 -0800 Subject: [PATCH 058/104] Got_Luacmd: always read netxcmd data, even if command is not executed --- src/lua_consolelib.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/lua_consolelib.c b/src/lua_consolelib.c index c69fdcc10..ead7c16a9 100644 --- a/src/lua_consolelib.c +++ b/src/lua_consolelib.c @@ -39,8 +39,18 @@ static void clear_lua_stack(void) void Got_Luacmd(UINT8 **cp, INT32 playernum) { UINT8 i, argc, flags; + const char *argv[256]; char buf[256]; + argc = READUINT8(*cp); + argv[0] = (const char*)*cp; + SKIPSTRINGN(*cp, 255); + for (i = 1; i < argc; i++) + { + argv[i] = (const char*)*cp; + SKIPSTRINGN(*cp, 255); + } + // don't use I_Assert here, goto the deny code below // to clean up and kick people who try nefarious exploits // like sending random junk lua commands to crash the server @@ -53,8 +63,7 @@ void Got_Luacmd(UINT8 **cp, INT32 playernum) lua_getfield(gL, LUA_REGISTRYINDEX, "COM_Command"); // push COM_Command if (!lua_istable(gL, -1)) goto deny; - argc = READUINT8(*cp); - READSTRINGN(*cp, buf, 255); + strlcpy(buf, argv[0], 255); strlwr(buf); // must lowercase buffer lua_getfield(gL, -1, buf); // push command info table if (!lua_istable(gL, -1)) goto deny; @@ -90,7 +99,7 @@ void Got_Luacmd(UINT8 **cp, INT32 playernum) LUA_PushUserdata(gL, &players[playernum], META_PLAYER); for (i = 1; i < argc; i++) { - READSTRINGN(*cp, buf, 255); + strlcpy(buf, argv[i], 255); lua_pushstring(gL, buf); } LUA_Call(gL, (int)argc, 0, 1); // argc is 1-based, so this will cover the player we passed too. -- 2.54.0 From 26b26b8f254ff2bdc947325e53ff65115e1e57f3 Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 30 Oct 2025 15:58:03 +0100 Subject: [PATCH 059/104] consolelib: fix some early returns not properly cleaning lua stack --- src/lua_consolelib.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/lua_consolelib.c b/src/lua_consolelib.c index ead7c16a9..979179ab6 100644 --- a/src/lua_consolelib.c +++ b/src/lua_consolelib.c @@ -154,7 +154,7 @@ void COM_Lua_f(void) { if (!splitscreen) { - lua_pop(gL, 1); // pop command info table + lua_pop(gL, 2); // pop command info table and LUA_GetErrorMessage return; // can't execute splitscreen command without player 2! } @@ -202,8 +202,10 @@ void COM_Lua_f(void) if (!lua_checkstack(gL, COM_Argc() + 1)) { CONS_Alert(CONS_WARNING, "lua command stack overflow (%d, need %s more)\n", lua_gettop(gL), sizeu1(COM_Argc() + 1)); + lua_pop(gL, 2); // pop function and LUA_GetErrorMessage return; } + LUA_PushUserdata(gL, &players[playernum], META_PLAYER); for (i = 1; i < COM_Argc(); i++) lua_pushstring(gL, COM_Argv(i)); @@ -547,6 +549,7 @@ static int lib_consPrintf(lua_State *L) if (n < 2) return luaL_error(L, "CONS_Printf requires at least two arguments: player and text."); //HUDSAFE + plr = *((player_t **)luaL_checkudata(L, 1, META_PLAYER)); if (!plr) return LUA_ErrInvalid(L, "player_t"); -- 2.54.0 From 52a9486974d26f441e16c1b94c080d65795fb2d4 Mon Sep 17 00:00:00 2001 From: toaster Date: Tue, 3 Jan 2023 20:20:22 +0000 Subject: [PATCH 060/104] Remove heinous pointer-sent-over-the-network hack remnants This used to be used for `P_RelinkPointers()`, but was superseded by the far saner mobjnum. HOWEVER, its lingering effect was to leave `mobj->info` in an invalid state until a later `P_FinishMobjs()` was called. This is memory unsafety :D After removing the last remnants of this ancient hack, it is now once again possible to connect to a server without crashing immediately. However, I did get a crash after a few seconds, so there is definitely still *something* nasty going on under the hood. --- src/p_saveg.c | 28 +++------------------------- 1 file changed, 3 insertions(+), 25 deletions(-) diff --git a/src/p_saveg.c b/src/p_saveg.c index d3a162e2d..65b15ec8e 100644 --- a/src/p_saveg.c +++ b/src/p_saveg.c @@ -1203,7 +1203,7 @@ static void SaveMobjThinker(savebuffer_t *save, const thinker_t *th, const UINT8 if (diff & MD_MORE) WRITEUINT16(save->p, diff2); - // save pointer, at load time we will search this pointer to reinitilize pointers + // keep here for vanilla compat WRITEUINT32(save->p, (size_t)mobj); WRITEFIXED(save->p, mobj->z); // Force this so 3dfloor problems don't arise. @@ -1982,7 +1982,6 @@ static void CalculateDoomednumToMobjtype(void) static void LoadMobjThinker(savebuffer_t *save, actionf_p1 thinker) { - thinker_t *next; mobj_t *mobj; UINT32 diff; UINT16 diff2; @@ -1995,7 +1994,8 @@ static void LoadMobjThinker(savebuffer_t *save, actionf_p1 thinker) else diff2 = 0; - next = (void *)(size_t)READUINT32(save->p); + // here for vanilla compat + save->p += sizeof(UINT32); z = READFIXED(save->p); // Force this so 3dfloor problems don't arise. floorz = READFIXED(save->p); @@ -2234,8 +2234,6 @@ static void LoadMobjThinker(savebuffer_t *save, actionf_p1 thinker) if (diff2 & MD2_WAYPOINTCAP) P_SetTarget(&waypointcap, mobj); - mobj->info = (mobjinfo_t *)next; // temporarily, set when leave this function - R_AddMobjInterpolator(mobj); } @@ -3200,25 +3198,6 @@ FUNCINLINE static ATTRINLINE void P_UnArchivePolyObjects(savebuffer_t *save) for (i = 0; i < numSavedPolys; ++i) P_UnArchivePolyObj(save, &PolyObjects[i]); } -// -// P_FinishMobjs -// -FUNCINLINE static ATTRINLINE void P_FinishMobjs(void) -{ - thinker_t *currentthinker; - mobj_t *mobj; - - // put info field there real value - for (currentthinker = thinkercap.next; currentthinker != &thinkercap; - currentthinker = currentthinker->next) - { - if (currentthinker->function != (actionf_p1)P_MobjThinker) - continue; - - mobj = (mobj_t *)currentthinker; - mobj->info = &mobjinfo[mobj->type]; - } -} FUNCINLINE static ATTRINLINE mobj_t *RelinkMobj(mobj_t **ptr) { @@ -3807,7 +3786,6 @@ boolean P_LoadNetGame(savebuffer_t *save, boolean reloading) P_NetUnArchiveThinkers(save); P_NetUnArchiveSpecials(save); P_RelinkPointers(); - P_FinishMobjs(); } LUA_UnArchive(save, true); -- 2.54.0 From e00783da82565062ac1ba7df765cd1dd7018b568 Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 30 Oct 2025 16:06:26 +0100 Subject: [PATCH 061/104] fix stuff from merge conflict --- src/lua_consolelib.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lua_consolelib.c b/src/lua_consolelib.c index 979179ab6..ee5de8356 100644 --- a/src/lua_consolelib.c +++ b/src/lua_consolelib.c @@ -533,7 +533,7 @@ static int lib_cvStealthSet(lua_State *L) static int lib_cvAddValue(lua_State *L) { - consvar_t *cvar = (consvar_t *)luaL_checkudata(L, 1, META_CVAR); + consvar_t *cvar = *(consvar_t **)luaL_checkudata(L, 1, META_CVAR); CV_AddValue(cvar, (INT32)luaL_checknumber(L, 2)); return 0; @@ -610,7 +610,7 @@ static int cvar_fields_ref = LUA_NOREF; static int cvar_get(lua_State *L) { - consvar_t *cvar = (consvar_t *)luaL_checkudata(L, 1, META_CVAR); + consvar_t *cvar = *(consvar_t **)luaL_checkudata(L, 1, META_CVAR); enum cvar_e field = Lua_optoption(L, 2, -1, cvar_fields_ref); switch (field) -- 2.54.0 From ec757ceb2cebfc04563c7d8b95a541f7edb55d76 Mon Sep 17 00:00:00 2001 From: James R Date: Sun, 11 Feb 2024 05:40:52 -0800 Subject: [PATCH 062/104] Pass const pointer to all netxcmd handlers Ensure buffer data is read-only and not modified by handler --- src/byteptr.h | 62 +++++++++++++++--------------- src/command.c | 18 +++++---- src/command.h | 2 +- src/d_clisrv.c | 22 +++++------ src/d_clisrv.h | 2 +- src/d_netcmd.c | 88 ++++++++++++++++++++++--------------------- src/g_demo.c | 4 +- src/hu_stuff.c | 9 +++-- src/lua_consolelib.c | 2 +- src/lua_script.h | 2 +- src/p_saveg.c | 2 +- src/sdl/mixer_sound.c | 6 +-- 12 files changed, 114 insertions(+), 105 deletions(-) diff --git a/src/byteptr.h b/src/byteptr.h index 058e81b25..85141c21c 100644 --- a/src/byteptr.h +++ b/src/byteptr.h @@ -1,7 +1,8 @@ -// SONIC ROBO BLAST 2 +// SONIC ROBO BLAST 2 KART //----------------------------------------------------------------------------- -// Copyright (C) 1998-2000 by DooM Legacy Team. -// Copyright (C) 1999-2025 by Sonic Team Junior. +// Copyright (C) 2025 by Kart Krew. +// Copyright (C) 2020 by Sonic Team Junior. +// Copyright (C) 2000 by DooM Legacy Team. // // This program is free software distributed under the // terms of the GNU General Public License, version 2. @@ -24,6 +25,7 @@ extern "C" { // // Little-endian machines // + #define WRITEUINT8(p,b) do { UINT8 *p_tmp = ( UINT8 *)p; const UINT8 tv = ( UINT8)(b); memcpy(p, &tv, sizeof( UINT8)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; } while (0) #define WRITESINT8(p,b) do { SINT8 *p_tmp = ( SINT8 *)p; const SINT8 tv = ( UINT8)(b); memcpy(p, &tv, sizeof( UINT8)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; } while (0) #define WRITEINT16(p,b) do { INT16 *p_tmp = ( INT16 *)p; const INT16 tv = ( INT16)(b); memcpy(p, &tv, sizeof( INT16)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; } while (0) @@ -36,25 +38,25 @@ extern "C" { // what is this? #if defined (__GNUC__) -#define READUINT8(p) ({ UINT8 *p_tmp = (UINT8 *)p; UINT8 b; memcpy(&b, p, sizeof( UINT8)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; b; }) -#define READSINT8(p) ({ SINT8 *p_tmp = (SINT8 *)p; SINT8 b; memcpy(&b, p, sizeof( SINT8)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; b; }) -#define READINT16(p) ({ INT16 *p_tmp = (INT16 *)p; INT16 b; memcpy(&b, p, sizeof( INT16)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; b; }) -#define READUINT16(p) ({ UINT16 *p_tmp = (UINT16 *)p; UINT16 b; memcpy(&b, p, sizeof( UINT16)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; b; }) -#define READINT32(p) ({ INT32 *p_tmp = (INT32 *)p; INT32 b; memcpy(&b, p, sizeof( INT32)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; b; }) -#define READUINT32(p) ({ UINT32 *p_tmp = (UINT32 *)p; UINT32 b; memcpy(&b, p, sizeof( UINT32)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; b; }) -#define READCHAR(p) ({ char *p_tmp = (char *)p; char b; memcpy(&b, p, sizeof( char)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; b; }) -#define READFIXED(p) ({ fixed_t *p_tmp = (fixed_t *)p; fixed_t b; memcpy(&b, p, sizeof(fixed_t)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; b; }) -#define READANGLE(p) ({ angle_t *p_tmp = (angle_t *)p; angle_t b; memcpy(&b, p, sizeof(angle_t)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; b; }) +#define READUINT8(p) ({ const UINT8 *p_tmp = (const UINT8 *)p; UINT8 b; memcpy(&b, p, sizeof( UINT8)); p_tmp++; *(const void**)(&(p)) = (const void *)p_tmp; b; }) +#define READSINT8(p) ({ const SINT8 *p_tmp = (const SINT8 *)p; SINT8 b; memcpy(&b, p, sizeof( SINT8)); p_tmp++; *(const void**)(&(p)) = (const void *)p_tmp; b; }) +#define READINT16(p) ({ const INT16 *p_tmp = (const INT16 *)p; INT16 b; memcpy(&b, p, sizeof( INT16)); p_tmp++; *(const void**)(&(p)) = (const void *)p_tmp; b; }) +#define READUINT16(p) ({ const UINT16 *p_tmp = (const UINT16 *)p; UINT16 b; memcpy(&b, p, sizeof( UINT16)); p_tmp++; *(const void**)(&(p)) = (const void *)p_tmp; b; }) +#define READINT32(p) ({ const INT32 *p_tmp = (const INT32 *)p; INT32 b; memcpy(&b, p, sizeof( INT32)); p_tmp++; *(const void**)(&(p)) = (const void *)p_tmp; b; }) +#define READUINT32(p) ({ const UINT32 *p_tmp = (const UINT32 *)p; UINT32 b; memcpy(&b, p, sizeof( UINT32)); p_tmp++; *(const void**)(&(p)) = (const void *)p_tmp; b; }) +#define READCHAR(p) ({ const char *p_tmp = (const char *)p; char b; memcpy(&b, p, sizeof( char)); p_tmp++; *(const void**)(&(p)) = (const void *)p_tmp; b; }) +#define READFIXED(p) ({ const fixed_t *p_tmp = (const fixed_t *)p; fixed_t b; memcpy(&b, p, sizeof(fixed_t)); p_tmp++; *(const void**)(&(p)) = (const void *)p_tmp; b; }) +#define READANGLE(p) ({ const angle_t *p_tmp = (const angle_t *)p; angle_t b; memcpy(&b, p, sizeof(angle_t)); p_tmp++; *(const void**)(&(p)) = (const void *)p_tmp; b; }) #else -#define READUINT8(p) ((UINT8*)(*(void**)(&(p)) = (void*)&((UINT8*)(p))[1]))[-1] -#define READSINT8(p) ((SINT8*)(*(void**)(&(p)) = (void*)&((SINT8*)(p))[1]))[-1] -#define READINT16(p) ((INT16*)(*(void**)(&(p)) = (void*)&((INT16*)(p))[1]))[-1] -#define READUINT16(p) ((UINT16*)(*(void**)(&(p)) = (void*)&((UINT16*)(p))[1]))[-1] -#define READINT32(p) ((INT32*)(*(void**)(&(p)) = (void*)&((INT32*)(p))[1]))[-1] -#define READUINT32(p) ((UINT32*)(*(void**)(&(p)) = (void*)&((UINT32*)(p))[1]))[-1] -#define READCHAR(p) ((char*)(*(void**)(&(p)) = (void*)&((char*)(p))[1]))[-1] -#define READFIXED(p) ((fixed_t*)(*(void**)(&(p)) = (void*)&((fixed_t*)(p))[1]))[-1] -#define READANGLE(p) ((angle_t*)(*(void**)(&(p)) = (void*)&((angle_t*)(p))[1]))[-1] +#define READUINT8(p) ((const UINT8*) (*(const void**)(&(p)) = (const void*)&((const UINT8*) (p))[1]))[-1] +#define READSINT8(p) ((const SINT8*) (*(const void**)(&(p)) = (const void*)&((const SINT8*) (p))[1]))[-1] +#define READINT16(p) ((const INT16*) (*(const void**)(&(p)) = (const void*)&((const INT16*) (p))[1]))[-1] +#define READUINT16(p) ((const UINT16*) (*(const void**)(&(p)) = (const void*)&((const UINT16*) (p))[1]))[-1] +#define READINT32(p) ((const INT32*) (*(const void**)(&(p)) = (const void*)&((const INT32*) (p))[1]))[-1] +#define READUINT32(p) ((const UINT32*) (*(const void**)(&(p)) = (const void*)&((const UINT32*) (p))[1]))[-1] +#define READCHAR(p) ((const char*) (*(const void**)(&(p)) = (const void*)&((const char*) (p))[1]))[-1] +#define READFIXED(p) ((const fixed_t*)(*(const void**)(&(p)) = (const void*)&((const fixed_t*)(p))[1]))[-1] +#define READANGLE(p) ((const angle_t*)(*(const void**)(&(p)) = (const void*)&((const angle_t*)(p))[1]))[-1] #endif #else //SRB2_BIG_ENDIAN @@ -117,15 +119,15 @@ FUNCINLINE static ATTRINLINE UINT32 readulong(void *ptr) return (ucp[3] << 24) | (ucp[2] << 16) | (ucp[1] << 8) | ucp[0]; } -#define READUINT8(p) ((UINT8*)(p = (void*)&((UINT8*)p)[1]))[-1] -#define READSINT8(p) ((SINT8*)(p = (void*)&((SINT8*)p)[1]))[-1] -#define READINT16(p) readshort(&((INT16*)(p = (void*)&((INT16*)p)[1]))[-1]) -#define READUINT16(p) readushort(&((UINT16*)(p = (void*)&((UINT16*)p)[1]))[-1]) -#define READINT32(p) readlong(&((INT32*)(p = (void*)&((INT32*)p)[1]))[-1]) -#define READUINT32(p) readulong(&((UINT32*)(p = (void*)&((UINT32*)p)[1])) -#define READCHAR(p) ((char*)(p = (void*)&((char*)p)[1]))[-1] -#define READFIXED(p) readlong(&((fixed_t*)(p = (void*)&((fixed_t*)p)[1]))[-1]) -#define READANGLE(p) readulong(&((angle_t*)(p = (void*)&((angle_t*)p)[1]))[-1]) +#define READUINT8(p) ((const UINT8*)(p = (const void*)&((const UINT8*)p)[1]))[-1] +#define READSINT8(p) ((const SINT8*)(p = (const void*)&((const SINT8*)p)[1]))[-1] +#define READINT16(p) readshort(&((const INT16*)(p = (const void*)&((const INT16*)p)[1]))[-1]) +#define READUINT16(p) readushort(&((const UINT16*)(p = (const void*)&((const UINT16*)p)[1]))[-1]) +#define READINT32(p) readlong(&((const INT32*)(p = (const void*)&((const INT32*)p)[1]))[-1]) +#define READUINT32(p) readulong(&((const UINT32*)(p = (const void*)&((const UINT32*)p)[1])) +#define READCHAR(p) ((const char*)(p = (const void*)&((const char*)p)[1]))[-1] +#define READFIXED(p) readlong(&((const fixed_t*)(p = (const void*)&((const fixed_t*)p)[1]))[-1]) +#define READANGLE(p) readulong(&((const angle_t*)(p = (const void*)&((const angle_t*)p)[1]))[-1]) #endif //SRB2_BIG_ENDIAN #define WRITESTRINGN(p, s, n) do { \ diff --git a/src/command.c b/src/command.c index eae29f07f..ba93a592a 100644 --- a/src/command.c +++ b/src/command.c @@ -281,7 +281,7 @@ char *com_argv[MAX_ARGS]; static const char *com_null_string = ""; static char *com_args = NULL; // current command args or NULL -static void Got_NetVar(UINT8 **p, INT32 playernum); +static void Got_NetVar(const UINT8 **p, INT32 playernum); /** Initializes command buffer and adds basic commands. */ @@ -1500,11 +1500,11 @@ badinput: static boolean serverloading = false; -static void Got_NetVar(UINT8 **p, INT32 playernum) +static void Got_NetVar(const UINT8 **p, INT32 playernum) { consvar_t *cvar; UINT16 netid; - char *svalue; + const char *svalue; UINT8 stealth = false; if (playernum != serverplayer && !IsPlayerAdmin(playernum) && !serverloading) @@ -1518,9 +1518,10 @@ static void Got_NetVar(UINT8 **p, INT32 playernum) } return; } + netid = READUINT16(*p); cvar = CV_FindNetVar(netid); - svalue = (char *)*p; + svalue = (const char *)*p; SKIPSTRING(*p); stealth = READUINT8(*p); @@ -1576,8 +1577,9 @@ void CV_SaveNetVars(UINT8 **p, boolean isdemorecording) WRITEUINT16(count_p, count); } -void CV_LoadNetVars(UINT8 **p) +size_t CV_LoadNetVars(const UINT8 *bufstart) { + const UINT8 *p = bufstart; consvar_t *cvar; UINT16 count; @@ -1588,11 +1590,13 @@ void CV_LoadNetVars(UINT8 **p) if (cvar->flags & CV_NETVAR) Setvalue(cvar, cvar->defaultvalue, true); - count = READUINT16(*p); + count = READUINT16(p); while (count--) - Got_NetVar(p, 0); + Got_NetVar(&p, 0); serverloading = false; + + return p - bufstart; } static void CV_SetCVar(consvar_t *var, const char *value, boolean stealth); diff --git a/src/command.h b/src/command.h index 6d1944f9a..7074158e1 100644 --- a/src/command.h +++ b/src/command.h @@ -182,7 +182,7 @@ void CV_SaveVariables(FILE *f); // load/save gamesate (load and save option and for network join in game) void CV_SaveNetVars(UINT8 **p, boolean isdemorecording); -void CV_LoadNetVars(UINT8 **p); +size_t CV_LoadNetVars(const UINT8 *p); // reset cheat netvars after cheats is deactivated void CV_ResetCheatNetVars(void); diff --git a/src/d_clisrv.c b/src/d_clisrv.c index aed5ee347..5bc5b6d5e 100644 --- a/src/d_clisrv.c +++ b/src/d_clisrv.c @@ -312,9 +312,9 @@ static inline tic_t ExpandTics(INT32 low, tic_t basetic) // Some extra data function for handle textcmd buffer // ----------------------------------------------------------------- -static void (*listnetxcmd[MAXNETXCMD])(UINT8 **p, INT32 playernum); +static void (*listnetxcmd[MAXNETXCMD])(const UINT8 **p, INT32 playernum); -void RegisterNetXCmd(netxcmd_t id, void (*cmd_f)(UINT8 **p, INT32 playernum)) +void RegisterNetXCmd(netxcmd_t id, void (*cmd_f)(const UINT8 **p, INT32 playernum)) { #ifdef PARANOIA if (id >= MAXNETXCMD) @@ -460,12 +460,12 @@ static void ExtraDataTicker(void) { if (playeringame[i] || i == 0) { - UINT8 *bufferstart = D_GetExistingTextcmd(gametic, i); + const UINT8 *bufferstart = D_GetExistingTextcmd(gametic, i); if (bufferstart) { - UINT8 *curpos = bufferstart; - UINT8 *bufferend = &curpos[curpos[0]+1]; + const UINT8 *curpos = bufferstart; + const UINT8 *bufferend = &curpos[curpos[0]+1]; curpos++; while (curpos < bufferend) @@ -3756,7 +3756,7 @@ static void Command_Kick(void) CONS_Printf(M_GetText("Only the server or a remote admin can use this.\n")); } -static void Got_KickCmd(UINT8 **p, INT32 playernum) +static void Got_KickCmd(const UINT8 **p, INT32 playernum) { INT32 pnum, msg; char buf[3 + MAX_REASONLENGTH]; @@ -4146,8 +4146,8 @@ consvar_t cv_connectawaittime = {"connectawaittime", "5", CV_SAVE, connectawaitt consvar_t cv_serverinfoscreen = {"serverinfoscreen", "On", CV_SAVE, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL}; -static void Got_AddPlayer(UINT8 **p, INT32 playernum); -static void Got_RemovePlayer(UINT8 **p, INT32 playernum); +static void Got_AddPlayer(const UINT8 **p, INT32 playernum); +static void Got_RemovePlayer(const UINT8 **p, INT32 playernum); static void Joinable_OnChange(void) { @@ -4399,7 +4399,7 @@ static inline void SV_AddNode(INT32 node) } // Xcmd XD_ADDPLAYER -static void Got_AddPlayer(UINT8 **p, INT32 playernum) +static void Got_AddPlayer(const UINT8 **p, INT32 playernum) { INT16 node, newplayernum; UINT8 splitscreenplayer = 0; @@ -4486,7 +4486,7 @@ static void Got_AddPlayer(UINT8 **p, INT32 playernum) } // Xcmd XD_REMOVEPLAYER -static void Got_RemovePlayer(UINT8 **p, INT32 playernum) +static void Got_RemovePlayer(const UINT8 **p, INT32 playernum) { SINT8 pnum, reason; @@ -5226,7 +5226,7 @@ static void PT_ServerCFG(SINT8 node) scp = netbuffer->u.servercfg.varlengthinputs; CV_LoadPlayerNames(&scp); - CV_LoadNetVars(&scp); + scp += CV_LoadNetVars(scp); /// \note Wait. What if a Lua script uses some global custom variables synched with the NetVars hook? /// Shouldn't them be downloaded even at intermission time? diff --git a/src/d_clisrv.h b/src/d_clisrv.h index 74bed4cdb..91074af63 100644 --- a/src/d_clisrv.h +++ b/src/d_clisrv.h @@ -604,7 +604,7 @@ extern consvar_t cv_serverinfoscreen; void D_ClientServerInit(void); // Initialise the other field -void RegisterNetXCmd(netxcmd_t id, void (*cmd_f)(UINT8 **p, INT32 playernum)); +void RegisterNetXCmd(netxcmd_t id, void (*cmd_f)(const UINT8 **p, INT32 playernum)); void SendNetXCmdForPlayer(UINT8 playerid, netxcmd_t id, const void *param, size_t nparam); #define SendNetXCmd(id, param, nparam) SendNetXCmdForPlayer(0, id, param, nparam) // Shortcut for P1 void SendKick(UINT8 playernum, UINT8 msg); diff --git a/src/d_netcmd.c b/src/d_netcmd.c index 86c9b12b1..2b334d048 100644 --- a/src/d_netcmd.c +++ b/src/d_netcmd.c @@ -68,22 +68,22 @@ // protos // ------ -static void Got_NameAndColor(UINT8 **cp, INT32 playernum); -static void Got_WeaponPref(UINT8 **cp, INT32 playernum); -static void Got_Mapcmd(UINT8 **cp, INT32 playernum); -static void Got_ExitLevelcmd(UINT8 **cp, INT32 playernum); -static void Got_SetupVotecmd(UINT8 **cp, INT32 playernum); -static void Got_ModifyVotecmd(UINT8 **cp, INT32 playernum); -static void Got_PickVotecmd(UINT8 **cp, INT32 playernum); -static void Got_RequestAddfilecmd(UINT8 **cp, INT32 playernum); -static void Got_Addfilecmd(UINT8 **cp, INT32 playernum); -static void Got_Pause(UINT8 **cp, INT32 playernum); -static void Got_Respawn(UINT8 **cp, INT32 playernum); -static void Got_RandomSeed(UINT8 **cp, INT32 playernum); -static void Got_RunSOCcmd(UINT8 **cp, INT32 playernum); -static void Got_Teamchange(UINT8 **cp, INT32 playernum); -static void Got_Clearscores(UINT8 **cp, INT32 playernum); -static void Got_DiscordInfo(UINT8 **cp, INT32 playernum); +static void Got_NameAndColor(const UINT8 **cp, INT32 playernum); +static void Got_WeaponPref(const UINT8 **cp, INT32 playernum); +static void Got_Mapcmd(const UINT8 **cp, INT32 playernum); +static void Got_ExitLevelcmd(const UINT8 **cp, INT32 playernum); +static void Got_SetupVotecmd(const UINT8 **cp, INT32 playernum); +static void Got_ModifyVotecmd(const UINT8 **cp, INT32 playernum); +static void Got_PickVotecmd(const UINT8 **cp, INT32 playernum); +static void Got_RequestAddfilecmd(const UINT8 **cp, INT32 playernum); +static void Got_Addfilecmd(const UINT8 **cp, INT32 playernum); +static void Got_Pause(const UINT8 **cp, INT32 playernum); +static void Got_Respawn(const UINT8 **cp, INT32 playernum); +static void Got_RandomSeed(const UINT8 **cp, INT32 playernum); +static void Got_RunSOCcmd(const UINT8 **cp, INT32 playernum); +static void Got_Teamchange(const UINT8 **cp, INT32 playernum); +static void Got_Clearscores(const UINT8 **cp, INT32 playernum); +static void Got_DiscordInfo(const UINT8 **cp, INT32 playernum); static void PointLimit_OnChange(void); static void TimeLimit_OnChange(void); @@ -178,13 +178,13 @@ static void Command_Clearscores_f(void); // Remote Administration static void Command_Changepassword_f(void); static void Command_Login_f(void); -static void Got_Login(UINT8 **cp, INT32 playernum); -static void Got_Verification(UINT8 **cp, INT32 playernum); -static void Got_Removal(UINT8 **cp, INT32 playernum); +static void Got_Login(const UINT8 **cp, INT32 playernum); +static void Got_Verification(const UINT8 **cp, INT32 playernum); +static void Got_Removal(const UINT8 **cp, INT32 playernum); static void Command_Verify_f(void); static void Command_RemoveAdmin_f(void); static void Command_MotD_f(void); -static void Got_MotD_f(UINT8 **cp, INT32 playernum); +static void Got_MotD_f(const UINT8 **cp, INT32 playernum); static void Command_ShowScores_f(void); static void Command_ShowTime_f(void); @@ -1913,7 +1913,7 @@ static void SendNameAndColor4(void) SendNetXCmdForPlayer(3, XD_NAMEANDCOLOR, buf, p - buf); } -static void Got_NameAndColor(UINT8 **cp, INT32 playernum) +static void Got_NameAndColor(const UINT8 **cp, INT32 playernum) { player_t *p = &players[playernum]; char name[MAXPLAYERNAME+1]; @@ -2041,15 +2041,17 @@ void SendWeaponPref4(void) SendNetXCmdForPlayer(3, XD_WEAPONPREF, buf, 1); } -static void Got_WeaponPref(UINT8 **cp,INT32 playernum) +static void Got_WeaponPref(const UINT8 **cp, INT32 playernum) { + player_t *player = &players[playernum]; + UINT8 prefs = READUINT8(*cp); - players[playernum].pflags &= ~(PF_FLIPCAM|PF_ANALOGMODE); + player->pflags &= ~(PF_FLIPCAM|PF_ANALOGMODE); if (prefs & 1) - players[playernum].pflags |= PF_FLIPCAM; + player->pflags |= PF_FLIPCAM; if (prefs & 2) - players[playernum].pflags |= PF_ANALOGMODE; + player->pflags |= PF_ANALOGMODE; } void D_SendPlayerConfig(void) @@ -2848,7 +2850,7 @@ static void Command_Map_f(void) * ::serverplayer or ::adminplayer. * \sa D_MapChange */ -static void Got_Mapcmd(UINT8 **cp, INT32 playernum) +static void Got_Mapcmd(const UINT8 **cp, INT32 playernum) { char mapname[MAX_WADPATH+1]; UINT8 flags; @@ -2967,7 +2969,7 @@ static void Command_Pause(void) CONS_Printf(M_GetText("Only the server or a remote admin can use this.\n")); } -static void Got_Pause(UINT8 **cp, INT32 playernum) +static void Got_Pause(const UINT8 **cp, INT32 playernum) { UINT8 dedicatedpause = false; const char *playername; @@ -3079,7 +3081,7 @@ static void Command_Respawn(void) SendNetXCmd(XD_RESPAWN, &buf, 4); } -static void Got_Respawn(UINT8 **cp, INT32 playernum) +static void Got_Respawn(const UINT8 **cp, INT32 playernum) { INT32 respawnplayer = READINT32(*cp); @@ -3114,7 +3116,7 @@ static void Got_Respawn(UINT8 **cp, INT32 playernum) * \param playernum Player responsible for the message. Must be ::serverplayer. * \author Graue */ -static void Got_RandomSeed(UINT8 **cp, INT32 playernum) +static void Got_RandomSeed(const UINT8 **cp, INT32 playernum) { UINT32 seed; @@ -3149,7 +3151,7 @@ static void Command_Clearscores_f(void) * \sa XD_CLEARSCORES, Command_Clearscores_f * \author SSNTails */ -static void Got_Clearscores(UINT8 **cp, INT32 playernum) +static void Got_Clearscores(const UINT8 **cp, INT32 playernum) { INT32 i; @@ -3666,7 +3668,7 @@ static void Command_ServerTeamChange_f(void) } //todo: This and the other teamchange functions are getting too long and messy. Needs cleaning. -static void Got_Teamchange(UINT8 **cp, INT32 playernum) +static void Got_Teamchange(const UINT8 **cp, INT32 playernum) { changeteam_union NetPacket; boolean error = false, wasspectator = false; @@ -4023,7 +4025,7 @@ static void Command_Login_f(void) #endif } -static void Got_Login(UINT8 **cp, INT32 playernum) +static void Got_Login(const UINT8 **cp, INT32 playernum) { #ifdef NOMD5 // If we have no MD5 support then completely disable XD_LOGIN responses for security. @@ -4133,7 +4135,7 @@ static void Command_Verify_f(void) SendNetXCmd(XD_VERIFIED, buf, 1); } -static void Got_Verification(UINT8 **cp, INT32 playernum) +static void Got_Verification(const UINT8 **cp, INT32 playernum) { INT16 num = READUINT8(*cp); @@ -4185,7 +4187,7 @@ static void Command_RemoveAdmin_f(void) SendNetXCmd(XD_DEMOTED, buf, 1); } -static void Got_Removal(UINT8 **cp, INT32 playernum) +static void Got_Removal(const UINT8 **cp, INT32 playernum) { INT16 num = READUINT8(*cp); @@ -4261,7 +4263,7 @@ static void Command_MotD_f(void) Z_Free(mymotd); } -static void Got_MotD_f(UINT8 **cp, INT32 playernum) +static void Got_MotD_f(const UINT8 **cp, INT32 playernum) { char *mymotd = Z_Malloc(sizeof(motd), PU_STATIC, NULL); INT32 i; @@ -4328,7 +4330,7 @@ static void Command_RunSOC(void) SendNetXCmd(XD_RUNSOC, buf, length); } -static void Got_RunSOCcmd(UINT8 **cp, INT32 playernum) +static void Got_RunSOCcmd(const UINT8 **cp, INT32 playernum) { char filename[256]; filestatus_t ncs = FS_NOTCHECKED; @@ -4606,7 +4608,7 @@ static void Command_GLocalSkin (void) } } -static void Got_RequestAddfilecmd(UINT8 **cp, INT32 playernum) +static void Got_RequestAddfilecmd(const UINT8 **cp, INT32 playernum) { char filename[241]; filestatus_t ncs = FS_NOTCHECKED; @@ -4665,7 +4667,7 @@ static void Got_RequestAddfilecmd(UINT8 **cp, INT32 playernum) COM_BufAddText(va("addfile %s\n", filename)); } -static void Got_Addfilecmd(UINT8 **cp, INT32 playernum) +static void Got_Addfilecmd(const UINT8 **cp, INT32 playernum) { char filename[241]; filestatus_t ncs = FS_NOTCHECKED; @@ -5465,7 +5467,7 @@ static void Command_ExitLevel_f(void) SendNetXCmd(XD_EXITLEVEL, NULL, 0); } -static void Got_ExitLevelcmd(UINT8 **cp, INT32 playernum) +static void Got_ExitLevelcmd(const UINT8 **cp, INT32 playernum) { (void)cp; @@ -5486,7 +5488,7 @@ static void Got_ExitLevelcmd(UINT8 **cp, INT32 playernum) G_ExitLevel(); } -static void Got_SetupVotecmd(UINT8 **cp, INT32 playernum) +static void Got_SetupVotecmd(const UINT8 **cp, INT32 playernum) { INT32 i; UINT8 gt, secondgt; @@ -5538,7 +5540,7 @@ static void Got_SetupVotecmd(UINT8 **cp, INT32 playernum) Y_StartVote(); } -static void Got_ModifyVotecmd(UINT8 **cp, INT32 playernum) +static void Got_ModifyVotecmd(const UINT8 **cp, INT32 playernum) { SINT8 voted = READSINT8(*cp); UINT8 p = READUINT8(*cp); @@ -5547,7 +5549,7 @@ static void Got_ModifyVotecmd(UINT8 **cp, INT32 playernum) votes[p] = voted; } -static void Got_PickVotecmd(UINT8 **cp, INT32 playernum) +static void Got_PickVotecmd(const UINT8 **cp, INT32 playernum) { SINT8 pick = READSINT8(*cp); SINT8 level = READSINT8(*cp); @@ -6187,7 +6189,7 @@ static void KartEliminateLast_OnChange(void) P_CheckRacers(); } -void Got_DiscordInfo(UINT8 **p, INT32 playernum) +void Got_DiscordInfo(const UINT8 **p, INT32 playernum) { if (playernum != serverplayer /*&& !IsPlayerAdmin(playernum)*/) { diff --git a/src/g_demo.c b/src/g_demo.c index bd3905160..f5268ad02 100644 --- a/src/g_demo.c +++ b/src/g_demo.c @@ -2815,7 +2815,7 @@ void G_DoPlayDemo(char *defdemoname) } // net var data - CV_LoadNetVars(&demobuf.p); + demobuf.p += CV_LoadNetVars(demobuf.p); // Sigh ... it's an empty demo. if (*demobuf.p == DEMOMARKER) @@ -2853,7 +2853,7 @@ void G_DoPlayDemo(char *defdemoname) #endif // net var data - CV_LoadNetVars(&demobuf.p); + demobuf.p += CV_LoadNetVars(demobuf.p); // Sigh ... it's an empty demo. if (*demobuf.p == DEMOMARKER) diff --git a/src/hu_stuff.c b/src/hu_stuff.c index 0e29a5124..955bebb2f 100644 --- a/src/hu_stuff.c +++ b/src/hu_stuff.c @@ -280,7 +280,7 @@ static void Command_Say_f(void); static void Command_Sayto_f(void); static void Command_Sayteam_f(void); static void Command_CSay_f(void); -static void Got_Saycmd(UINT8 **p, INT32 playernum); +static void Got_Saycmd(const UINT8 **p, INT32 playernum); void HU_LoadGraphics(void) { @@ -879,11 +879,12 @@ const char *HU_SkinColorToConsoleColor(skincolors_t color) * \sa DoSayCommand * \author Graue */ -static void Got_Saycmd(UINT8 **p, INT32 playernum) +static void Got_Saycmd(const UINT8 **p, INT32 playernum) { SINT8 target; UINT8 flags; const char *dispname; + char buf[HU_MAXMSGLEN + 1]; char *msg; boolean action = false; char *ptr; @@ -893,8 +894,8 @@ static void Got_Saycmd(UINT8 **p, INT32 playernum) target = READSINT8(*p); flags = READUINT8(*p); - msg = (char *)*p; - SKIPSTRINGL(*p, HU_MAXMSGLEN + 1); + msg = buf; + READSTRINGL(*p, msg, HU_MAXMSGLEN + 1); if ((cv_mute.value || flags & (HU_CSAY|HU_SERVER_SAY)) && playernum != serverplayer && !(IsPlayerAdmin(playernum))) { diff --git a/src/lua_consolelib.c b/src/lua_consolelib.c index ee5de8356..9a89361a8 100644 --- a/src/lua_consolelib.c +++ b/src/lua_consolelib.c @@ -36,7 +36,7 @@ static void clear_lua_stack(void) lua_settop(gL, 0); // clear stack } -void Got_Luacmd(UINT8 **cp, INT32 playernum) +void Got_Luacmd(const UINT8 **cp, INT32 playernum) { UINT8 i, argc, flags; const char *argv[256]; diff --git a/src/lua_script.h b/src/lua_script.h index f1b58cced..35dd5b364 100644 --- a/src/lua_script.h +++ b/src/lua_script.h @@ -76,7 +76,7 @@ void LUA_InvalidatePlayer(player_t *player); void LUA_Archive(savebuffer_t *save, boolean network); void LUA_UnArchive(savebuffer_t *save, boolean network); -void Got_Luacmd(UINT8 **cp, INT32 playernum); // lua_consolelib.c +void Got_Luacmd(const UINT8 **cp, INT32 playernum); // lua_consolelib.c void LUA_CVarChanged(void *cvar); // lua_consolelib.c int Lua_optoption(lua_State *L, int narg, int def, int list_ref); int Lua_CreateFieldTable(lua_State *L, const char *const lst[]); diff --git a/src/p_saveg.c b/src/p_saveg.c index 65b15ec8e..9b7ff7776 100644 --- a/src/p_saveg.c +++ b/src/p_saveg.c @@ -3772,7 +3772,7 @@ boolean P_LoadGame(savebuffer_t *save, INT16 mapoverride) boolean P_LoadNetGame(savebuffer_t *save, boolean reloading) { - CV_LoadNetVars(&save->p); + save->p += CV_LoadNetVars(save->p); if (!P_NetUnArchiveMisc(save, reloading)) return false; diff --git a/src/sdl/mixer_sound.c b/src/sdl/mixer_sound.c index 646d44135..e4e21949b 100644 --- a/src/sdl/mixer_sound.c +++ b/src/sdl/mixer_sound.c @@ -266,13 +266,13 @@ void I_UpdateSound(void) // this is as fast as I can possibly make it. // sorry. more asm needed. -static Mix_Chunk *ds2chunk(void *stream) +static Mix_Chunk *ds2chunk(const void *stream) { UINT16 ver, freq; UINT32 samples, i, newsamples; UINT8 *sound; - SINT8 *s; + const SINT8 *s; INT16 *d; INT16 o; fixed_t step, frac; @@ -325,7 +325,7 @@ static Mix_Chunk *ds2chunk(void *stream) sound = Z_Malloc(newsamples<<2, PU_SOUND, NULL); // samples * frequency shift * bytes per sample * channels - s = (SINT8 *)stream; + s = (const SINT8 *)stream; d = (INT16 *)sound; i = 0; -- 2.54.0 From aeb172f2abd858d19b5a4d1eaaa09d0d84ba21fd Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 22:35:34 +0100 Subject: [PATCH 063/104] do some smol cleanup r_skins mostly style fixes, some minor caching for some things --- src/r_skins.c | 228 +++++++++++++++++++++++++++----------------------- 1 file changed, 124 insertions(+), 104 deletions(-) diff --git a/src/r_skins.c b/src/r_skins.c index 9d289f936..bf731f708 100644 --- a/src/r_skins.c +++ b/src/r_skins.c @@ -33,7 +33,7 @@ #include "qs22j.h" -CV_PossibleValue_t Forceskin_cons_t[MAXSKINS+2]; +CV_PossibleValue_t Forceskin_cons_t[MAXSKINS+2]; // huehuehuehuehue #include "discord.h" @@ -41,6 +41,7 @@ INT32 numskins = 0; INT32 numallskins = 0; INT32 numlocalskins = 0; skin_t skins[MAXSKINS]; + UINT8 skinstats[9][9][MAXSKINS]; UINT8 skinstatscount[9][9] = { {0, 0, 0, 0, 0, 0, 0, 0, 0}, @@ -53,6 +54,7 @@ UINT8 skinstatscount[9][9] = { {0, 1, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0} }; + UINT8 skinsorted[MAXSKINS]; skin_t localskins[MAXLOCALSKINS]; skin_t allskins[MAXSKINS+MAXLOCALSKINS]; @@ -71,12 +73,13 @@ static void Sk_SetDefaultValue(skin_t *skin, boolean local) // set default skin values // memset(skin, 0, sizeof (skin_t)); + snprintf(skin->name, sizeof skin->name, "skin %u", K_GetMobjSkinNum(skin, local)); skin->name[sizeof skin->name - 1] = '\0'; - skin->wadnum = INT16_MAX; - strcpy(skin->sprite, ""); - skin->flags = 0; + skin->wadnum = INT16_MAX; + + strcpy(skin->sprite, ""); strcpy(skin->realname, "Someone"); strcpy(skin->hudname, "???"); @@ -95,8 +98,12 @@ static void Sk_SetDefaultValue(skin_t *skin, boolean local) skin->highresscale = FRACUNIT>>1; for (i = 0; i < sfx_skinsoundslot0; i++) - if (S_sfx[i].skinsound != -1) - skin->soundsid[S_sfx[i].skinsound] = i; + { + const INT32 skinsound = S_sfx[i].skinsound; + + if (skinsound != -1) + skin->soundsid[skinsound] = i; + } } // @@ -124,6 +131,7 @@ void R_InitSkins(void) skin = &skins[0]; numskins = 1; Sk_SetDefaultValue(skin, false); + memset(skinstats, 0, sizeof(skinstats)); memset(skinsorted, 0, sizeof(skinsorted)); @@ -132,13 +140,16 @@ void R_InitSkins(void) #ifdef SKINVALUES skin_cons_t[0].strvalue = skins[0].name; #endif - skin->flags = 0; + strcpy(skin->realname, "Sonic"); strcpy(skin->hudname, "SONIC"); strncpy(skin->facerank, "PLAYRANK", 9); strncpy(skin->facewant, "PLAYWANT", 9); strncpy(skin->facemmap, "PLAYMMAP", 9); + + skin->flags = 0; + skin->wadnum = 0; // god what have you brought to this world skin->prefcolor = SKINCOLOR_BLUE; skin->localskin = false; @@ -177,9 +188,10 @@ INT32 R_SkinAvailable(const char *name) for (i = 0; i < numskins; i++) { - if (stricmp(skins[i].name,name) == 0) + if (stricmp(skins[i].name, name) == 0) return i; } + return -1; } @@ -191,9 +203,10 @@ INT32 R_AnySkinAvailable(const char *name) for (i = 0; i < numallskins; i++) { - if (stricmp(allskins[i].name,name) == 0) + if (stricmp(allskins[i].name, name) == 0) return i; } + return -1; } @@ -205,20 +218,20 @@ INT32 R_LocalSkinAvailable(const char *name, boolean local) { for (i = 0; i < numlocalskins; i++) { - if (stricmp(localskins[i].name,name) == 0) + if (stricmp(localskins[i].name, name) == 0) return i; } + return -1; } - else - return R_SkinAvailable(name); + + return R_SkinAvailable(name); } // network code calls this when a 'skin change' is received boolean SetPlayerSkin(INT32 playernum, const char *skinname) { INT32 i; - player_t *player = &players[playernum]; for (i = 0; i < numskins; i++) { @@ -230,7 +243,7 @@ boolean SetPlayerSkin(INT32 playernum, const char *skinname) } } - if (P_IsLocalPlayer(player)) + if (P_IsLocalPlayer(&players[playernum])) CONS_Alert(CONS_WARNING, M_GetText("Skin '%s' not found.\n"), skinname); else if (server || IsPlayerAdmin(consoleplayer)) CONS_Alert(CONS_WARNING, M_GetText("Player %d (%s) skin '%s' not found\n"), playernum, player_names[playernum], skinname); @@ -253,6 +266,7 @@ void SetLocalPlayerSkin(INT32 playernum, const char *skinname, consvar_t *cvar) { player->localskin = 1 + i; player->skinlocal = true; + if (player->mo) { player->mo->localskin = &localskins[i]; @@ -270,6 +284,7 @@ void SetLocalPlayerSkin(INT32 playernum, const char *skinname, consvar_t *cvar) { player->localskin = 1 + i; player->skinlocal = false; + if (player->mo) { player->mo->localskin = &skins[i]; @@ -284,6 +299,7 @@ void SetLocalPlayerSkin(INT32 playernum, const char *skinname, consvar_t *cvar) { player->localskin = 0; player->skinlocal = false; + if (player->mo) { player->mo->localskin = 0; @@ -318,6 +334,7 @@ void SetPlayerSkinByNum(INT32 playernum, INT32 skinnum) if (skinnum >= 0 && skinnum < numskins) // Make sure it exists! { player->skin = skinnum; + if (player->mo) player->mo->skin = skin; @@ -360,117 +377,97 @@ void SetPlayerSkinByNum(INT32 playernum, INT32 skinnum) static UINT16 W_CheckForSkinMarkerInPwad(UINT16 wadid, UINT16 startlump) { UINT16 i; - const char *S_SKIN = "S_SKIN"; lumpinfo_t *lump_p; // scan forward, start at if (startlump < wadfiles[wadid]->numlumps) { lump_p = wadfiles[wadid]->lumpinfo + startlump; + for (i = startlump; i < wadfiles[wadid]->numlumps; i++, lump_p++) - if (memcmp(lump_p->name,S_SKIN,6)==0) + { + if (memcmp(lump_p->name, "S_SKIN", 6) == 0) return i; + } } + return INT16_MAX; // not found } //sort function for sorting skin names -static int skinSortFunc(const void *a, const void *b) //tbh i have no clue what the naming conventions for local functions are +static int skinSortFunc(const void *a, const void *b) // tbh i have no clue what the naming conventions for local functions are { - const skin_t *in1 = &skins[*(const UINT8 *)a]; - const skin_t *in2 = &skins[*(const UINT8 *)b]; - INT32 temp = 0; - const UINT8 val_a = *((const UINT8 *)a); - const UINT8 val_b = *((const UINT8 *)b); + int diff = 0; + const UINT8 val_a = *(const UINT8 *)a; + const UINT8 val_b = *(const UINT8 *)b; + const skin_t *in1 = &skins[val_a]; + const skin_t *in2 = &skins[val_b]; - //return (strcmp(in1->realname, in2->realname) < 0) || (strcmp(in1->realname, in2->realname) ==); + // return (strcmp(in1->realname, in2->realname) < 0) || (strcmp(in1->realname, in2->realname) ==); switch (cv_skinselectgridsort.value) { case SKINMENUSORT_REALNAME: - //CONS_Printf("Sorting by realname\n"); + // CONS_Printf("Sorting by realname\n"); // check name - if ((temp = strcmp(in1->realname, in2->realname))) - return temp; - // sort by internal name - return strcmp(in1->name, in2->name); - break; + diff = strcmp(in1->realname, in2->realname); + if (diff != 0) return diff; - case SKINMENUSORT_NAME: - //CONS_Printf("Sorting by name\n"); - return strcmp(in1->name, in2->name); break; - case SKINMENUSORT_SPEED: - //CONS_Printf("Sorting by speed\n"); + // CONS_Printf("Sorting by speed\n"); // check speed - if (in1->kartspeed < in2->kartspeed) - return -1; - else if (in2->kartspeed < in1->kartspeed) - return 1; + diff = in1->kartspeed - in2->kartspeed; + if (diff != 0) return diff; + // then check weight - if (in1->kartweight < in2->kartweight) - return -1; - else if (in2->kartweight < in1->kartweight) - return 1; - // then check name - if ((temp = strcmp(in1->realname, in2->realname))) - return temp; - // sort by internal name - return strcmp(in1->name, in2->name); - break; + diff = in1->kartweight - in2->kartweight; + if (diff != 0) return diff; + // then check name + diff = strcmp(in1->realname, in2->realname); + if (diff != 0) return diff; + + break; case SKINMENUSORT_WEIGHT: - //CONS_Printf("Sorting by weight\n"); + // CONS_Printf("Sorting by weight\n"); // check weight - if (in1->kartweight < in2->kartweight) - return -1; - else if (in2->kartweight < in1->kartweight) - return 1; + diff = in1->kartweight - in2->kartweight; + if (diff != 0) return diff; + // then check speed - if (in1->kartspeed < in2->kartspeed) - return -1; - else if (in2->kartspeed < in1->kartspeed) - return 1; - // then check name - if ((temp = strcmp(in1->realname, in2->realname))) - return temp; - // sort by internal name - return strcmp(in1->name, in2->name); - break; + diff = in1->kartspeed - in2->kartspeed; + if (diff != 0) return diff; + // then check name + diff = strcmp(in1->realname, in2->realname); + if (diff != 0) return diff; + + break; case SKINMENUSORT_PREFCOLOR: - //CONS_Printf("Sorting by prefcolor\n"); + // CONS_Printf("Sorting by prefcolor\n"); // check prefcolor - if (in1->prefcolor < in2->prefcolor) - return -1; - else if (in2->prefcolor < in1->prefcolor) - return 1; + diff = in1->prefcolor - in2->prefcolor; + if (diff != 0) return diff; + // then check name - if ((temp = strcmp(in1->realname, in2->realname))) - return temp; - // sort by internal name - return strcmp(in1->name, in2->name); + diff = strcmp(in1->realname, in2->realname); + if (diff != 0) return diff; + break; - case SKINMENUSORT_ID: - //CONS_Printf("Sorting by id\n"); - //how do i do by ID????? - //wait why dont i just convert the inputs to UINT32s - //please tell me im allowed to define variables in here since its a block - - if (val_a == val_b) - return 0; - else if (val_a < val_b) - return -1; - else - return 1; - + // CONS_Printf("Sorting by id\n"); + // how do i do by ID????? + // wait why dont i just convert the inputs to UINT32s + // please tell me im allowed to define variables in here since its a block + return (int)val_a - (int)val_b; + case SKINMENUSORT_NAME: default: - return strcmp(in1->name, in2->name); break; } - //im scared this somehow will sometimes end up here so im gonna add this here just to be safe + + // im scared this somehow will sometimes end up here so im gonna add this here just to be safe + // now it will often end up here >:3 return strcmp(in1->name, in2->name); } @@ -531,6 +528,7 @@ void R_AddSkins(UINT16 wadnum, boolean local) Sk_SetDefaultValue(skin, local); skin->wadnum = wadnum; hudname = realname = false; + // parse stoken = strtok (buf2, "\r\n= "); while (stoken) @@ -562,18 +560,18 @@ void R_AddSkins(UINT16 wadnum, boolean local) // using the default skin name's number set above else { - const size_t stringspace = - strlen(value) + sizeof lnumskins + 1; + const size_t stringspace = strlen(value) + sizeof lnumskins + 1; char *value2 = Z_Malloc(stringspace, PU_STATIC, NULL); - snprintf(value2, stringspace, - "%s%d", value, lnumskins); + + snprintf(value2, stringspace, "%s%d", value, lnumskins); value2[stringspace - 1] = '\0'; + if (R_LocalSkinAvailable(value2, local) == -1) { - STRBUFCPY(skin->name, - value2); + STRBUFCPY(skin->name, value2); strlwr(skin->name); } + Z_Free(value2); } @@ -589,6 +587,7 @@ void R_AddSkins(UINT16 wadnum, boolean local) { STRBUFCPY(skin->hudname, skin->name); strupr(skin->hudname); + for (value = skin->hudname; *value; value++) if (*value == '_') *value = ' '; // turn _ into spaces. } @@ -597,8 +596,10 @@ void R_AddSkins(UINT16 wadnum, boolean local) { // Display name (eg. "Knuckles") realname = true; STRBUFCPY(skin->realname, value); + for (value = skin->realname; *value; value++) if (*value == '_') *value = ' '; // turn _ into spaces. + if (!hudname) STRBUFCPY(skin->hudname, skin->realname); } @@ -606,12 +607,13 @@ void R_AddSkins(UINT16 wadnum, boolean local) { // Life icon name (eg. "K.T.E") hudname = true; STRBUFCPY(skin->hudname, value); + for (value = skin->hudname; *value; value++) if (*value == '_') *value = ' '; // turn _ into spaces. + if (!realname) STRBUFCPY(skin->realname, skin->hudname); } - else if (!stricmp(stoken, "sprite")) { strupr(value); @@ -642,6 +644,7 @@ void R_AddSkins(UINT16 wadnum, boolean local) else if (!stricmp(stoken, "kartspeed")) { skin->kartspeed = atoi(value); + if (skin->kartspeed < 1) skin->kartspeed = 1; if (skin->kartspeed > 9) @@ -650,6 +653,7 @@ void R_AddSkins(UINT16 wadnum, boolean local) else if (!stricmp(stoken, "kartweight")) { skin->kartweight = atoi(value); + if (skin->kartweight < 1) skin->kartweight = 1; if (skin->kartweight > 9) @@ -657,47 +661,60 @@ void R_AddSkins(UINT16 wadnum, boolean local) } // custom translation table else if (!stricmp(stoken, "startcolor")) + { skin->starttranscolor = atoi(value); + } else if (!stricmp(stoken, "prefcolor")) + { skin->prefcolor = K_GetKartColorByName(value); + } else if (!stricmp(stoken, "highresscale")) + { skin->highresscale = FLOAT_TO_FIXED(atof(value)); + } else { INT32 found = false; sfxenum_t i; + // copy name of sounds that are remapped // for this skin for (i = 0; i < sfx_skinsoundslot0; i++) { - if (!S_sfx[i].name) + const sfxinfo_t *sfx = &S_sfx[i]; + + if (!sfx->name) continue; - if (S_sfx[i].skinsound != -1 - && !stricmp(S_sfx[i].name, - stoken + 2)) + + if (sfx->skinsound != -1 + && !stricmp(sfx->name, stoken + 2)) { - skin->soundsid[S_sfx[i].skinsound] = - S_AddSoundFx(value+2, S_sfx[i].singularity, S_sfx[i].pitch, true); + skin->soundsid[sfx->skinsound] = S_AddSoundFx(value+2, sfx->singularity, sfx->pitch, true); found = true; } } + if (!found) CONS_Debug(DBG_SETUP, "R_AddSkins: Unknown keyword '%s' in S_SKIN lump# %d (WAD %s)\n", stoken, lump, wadfiles[wadnum]->filename); } stoken = strtok(NULL, "\r\n= "); } + free(buf2); lump++; // if no sprite defined use spirte just after this one + if (skin->sprite[0] == '\0') { const char *csprname = W_CheckNameForNumPwad(wadnum, lump); // skip to end of this skin's frames lastlump = lump; + while (W_CheckNameForNumPwad(wadnum, lastlump) && memcmp(W_CheckNameForNumPwad(wadnum, lastlump), csprname,4)==0) lastlump++; + // allocate (or replace) sprite frames, and set spritedef R_AddSingleSpriteDef(csprname, &skin->spritedef, wadnum, lump, lastlump); } @@ -707,12 +724,15 @@ void R_AddSkins(UINT16 wadnum, boolean local) size_t name; boolean found = false; const char *sprname = skin->sprite; - for (name = 0;sprnames[name][0] != '\0';name++) + + for (name = 0; sprnames[name][0] != '\0'; name++) + { if (strncmp(sprnames[name], sprname, 4) == 0) { - found = true; skin->spritedef = sprites[name]; + found = true; } + } // not found so make a new one // go through the entire current wad looking for our sprite @@ -726,7 +746,7 @@ void R_AddSkins(UINT16 wadnum, boolean local) while ((lname = W_CheckNameForNumPwad(wadnum, localllump))) { // If this is a valid sprite... - if (!memcmp(lname, sprname,4) && lname[4] && lname[5] && lname[5] >= '0' && lname[5] <= '8') + if (!memcmp(lname, sprname, 4) && lname[4] && lname[5] && lname[5] >= '0' && lname[5] <= '8') { if (lstart == UINT16_MAX) lstart = localllump; @@ -741,6 +761,7 @@ void R_AddSkins(UINT16 wadnum, boolean local) } // If not already set do nothing } + ++localllump; } @@ -760,7 +781,6 @@ void R_AddSkins(UINT16 wadnum, boolean local) (local ? localskin_cons_t : skin_cons_t)[lnumskins].value = lnumskins; (local ? localskin_cons_t : skin_cons_t)[lnumskins].strvalue = skin->name; #endif - if (!local) { // Update the forceskin possiblevalues -- 2.54.0 From 871545024d13b48643f6cc91b03758f347c1486b Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 23:15:21 +0100 Subject: [PATCH 064/104] experiment: replace every strcmp with fastcmp did some profiling and in basically every single test fastcmp was twice as fast as strcmp maybe this speeds up some things --- src/blua/lauxlib.c | 6 ++++-- src/blua/lfastcmp.h | 32 ++++++++++++++++++++++++++++++++ src/command.c | 10 +++++----- src/console.c | 2 +- src/d_clisrv.c | 4 ++-- src/d_main.c | 2 +- src/d_netcmd.c | 12 ++++++------ src/d_netfil.c | 28 ++++++++++++++-------------- src/d_protocol.c | 4 ++-- src/dedicated/i_system.c | 4 ++-- src/discord.c | 6 +++--- src/doomdef.h | 2 ++ src/filesrch.c | 10 +++++----- src/g_game.c | 11 +++++++---- src/hardware/hw_main.cpp | 2 +- src/hardware/hw_model.c | 8 ++++---- src/lua_hooklib.c | 6 +++--- src/m_aatree.c | 4 ++-- src/m_menu.c | 22 +++++++++++----------- src/m_perfstats.c | 2 +- src/p_saveg.c | 2 +- src/r_data.c | 15 ++++++++------- src/r_patch.cpp | 8 ++++---- src/sdl/hwsym_sdl.c | 3 --- src/sdl/i_system.cpp | 3 ++- src/sdl/i_video.c | 4 ++-- src/sdl/ogl_sdl.c | 4 ++-- src/v_video.c | 5 ++--- 28 files changed, 129 insertions(+), 92 deletions(-) create mode 100644 src/blua/lfastcmp.h diff --git a/src/blua/lauxlib.c b/src/blua/lauxlib.c index e898e38d6..eacce9b44 100644 --- a/src/blua/lauxlib.c +++ b/src/blua/lauxlib.c @@ -24,6 +24,8 @@ #include "lauxlib.h" +#include "lfastcmp.h" + #define FREELIST_REF 0 /* free list of references */ @@ -40,7 +42,7 @@ LUALIB_API int luaL_argerror (lua_State *L, int narg, const char *extramsg) { if (!lua_getstack(L, 0, &ar)) /* no stack frame? */ return luaL_error(L, "bad argument #%d (%s)", narg, extramsg); lua_getinfo(L, "n", &ar); - if (strcmp(ar.namewhat, "method") == 0) { + if (fastcmp(ar.namewhat, "method")) { narg--; /* do not count `self' */ if (narg == 0) /* error is in the self argument itself? */ return luaL_error(L, "calling " LUA_QS " on bad self (%s)", @@ -97,7 +99,7 @@ LUALIB_API int luaL_checkoption (lua_State *L, int narg, const char *def, luaL_checkstring(L, narg); int i; for (i=0; lst[i]; i++) - if (strcmp(lst[i], name) == 0) + if (fastcmp(lst[i], name)) return i; return luaL_argerror(L, narg, lua_pushfstring(L, "invalid option " LUA_QS, name)); diff --git a/src/blua/lfastcmp.h b/src/blua/lfastcmp.h new file mode 100644 index 000000000..f25c59896 --- /dev/null +++ b/src/blua/lfastcmp.h @@ -0,0 +1,32 @@ +#ifndef __FASTCMP_H__ +#define __FASTCMP_H__ + +#include +#include + +// same as fastcmp but we cant use our fancy macros + +// returns false if s != c +// returns true if s == c +__attribute__((always_inline)) static inline bool fasticmp(const char *s, const char *c) +{ + for (; *s && toupper(*s) == toupper(*c); s++, c++) ; + return (*s == *c); // make sure both strings ended +} + +// case-sensitive of the above +__attribute__((always_inline)) static inline bool fastcmp(const char *s, const char *c) +{ + for (; *s && *s == *c; s++, c++) ; + return (*s == *c); // make sure both strings ended +} + +// length-limited of the above +// only true if both strings are at least l characters long AND match, case-sensitively! +__attribute__((always_inline)) static inline bool fastncmp(const char *s, const char *c, uint16_t l) +{ + for (; *s && *s == *c && --l; s++, c++) ; + return !l; // make sure you reached the end +} + +#endif diff --git a/src/command.c b/src/command.c index e73125649..676212703 100644 --- a/src/command.c +++ b/src/command.c @@ -879,7 +879,7 @@ static void COM_Help_f(void) { for (cmd = com_commands; cmd; cmd = cmd->next) { - if (strcmp(cmd->name, help)) + if (!fastcmp(cmd->name, help)) continue; CONS_Printf("\x82""Command %s:\n", cmd->name); @@ -1610,7 +1610,7 @@ void CV_ResetCheatNetVars(void) // Returns true if the variable's current value is its default value boolean CV_IsSetToDefault(consvar_t *v) { - return (!(strcmp(v->defaultvalue, v->string))); + return (fastcmp(v->defaultvalue, v->string)); } // If any cheats CVars are not at their default settings, return true. @@ -1622,7 +1622,7 @@ UINT8 CV_CheatsEnabled(void) consvar_t *cvar; for (cvar = consvar_vars; cvar; cvar = cvar->next) - if ((cvar->flags & CV_CHEAT) && strcmp(cvar->defaultvalue, cvar->string)) + if ((cvar->flags & CV_CHEAT) && !fastcmp(cvar->defaultvalue, cvar->string)) return 1; return 0; } @@ -1799,7 +1799,7 @@ void CV_AddValue(consvar_t *var, INT32 increment) } #define MINVAL 0 #define MAXVAL 1 - else if (var->PossibleValue[MINVAL].strvalue && !strcmp(var->PossibleValue[MINVAL].strvalue, "MIN")) + else if (var->PossibleValue[MINVAL].strvalue && fastcmp(var->PossibleValue[MINVAL].strvalue, "MIN")) { // SRB2Kart #ifdef PARANOIA if (!var->PossibleValue[MAXVAL].strvalue) @@ -2139,7 +2139,7 @@ void CV_SaveVariables(FILE *f) char stringtowrite[MAXTEXTCMD+1]; // Silly hack for Min/Max vars - if (!strcmp(cvar->string, "MAX") || !strcmp(cvar->string, "MIN")) + if (fastcmp(cvar->string, "MAX") || fastcmp(cvar->string, "MIN")) { if (cvar->flags & CV_FLOAT) sprintf(stringtowrite, "%f", FixedToFloat(cvar->value)); diff --git a/src/console.c b/src/console.c index 3959d9b98..062e6ebf3 100644 --- a/src/console.c +++ b/src/console.c @@ -1010,7 +1010,7 @@ boolean CON_Responder(event_t *ev) Lock_state(); // Only add command to history if it differs from previous one - if (strcmp(input.buffer, inputlines[(inputline-1) & 31])) + if (!fastcmp(input.buffer, inputlines[(inputline-1) & 31])) { inputline = (inputline+1) & 31; M_TextInputInit(&input, inputlines[inputline], CON_MAXPROMPTCHARS); diff --git a/src/d_clisrv.c b/src/d_clisrv.c index aed5ee347..2ca42df65 100644 --- a/src/d_clisrv.c +++ b/src/d_clisrv.c @@ -2174,7 +2174,7 @@ static void SL_InsertServer(serverinfo_pak* info, SINT8 node) if (info->subversion != SUBVERSION) return; // Close, but no cigar. - if (strcmp(info->application, SRB2APPLICATION)) + if (!fastcmp(info->application, SRB2APPLICATION)) return;/* that's a different mod */ i = serverlistcount++; @@ -2219,7 +2219,7 @@ void CL_QueryServerList (msg_server_t *server_list) // thwart nefarious servers who lie to the MS. /* lol bruh, that version COMES from the servers */ - //if (strcmp(version, server_list[i].version) == 0) + //if (fastcmp(version, server_list[i].version)) { INT32 node = I_NetMakeNodewPort(server_list[i].ip, server_list[i].port); if (node == -1) diff --git a/src/d_main.c b/src/d_main.c index 032a9189e..fd643213c 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -1288,7 +1288,7 @@ static void IdentifyVersion(void) } #if (1) // reduce the amount of findfile by only using full cwd in this func - if (strcmp(tempsrb2path, srb2waddir)) + if (!fastcmp(tempsrb2path, srb2waddir)) #endif { strlcpy(srb2path, srb2waddir, sizeof (srb2path)); diff --git a/src/d_netcmd.c b/src/d_netcmd.c index 86c9b12b1..3a5e0ca7e 100644 --- a/src/d_netcmd.c +++ b/src/d_netcmd.c @@ -1508,9 +1508,9 @@ static void SendNameAndColor(void) CV_StealthSet(&cv_playercolor, cv_playercolor.defaultvalue); } - if (!strcmp(cv_playername.string, player_names[consoleplayer]) + if (fastcmp(cv_playername.string, player_names[consoleplayer]) && cv_playercolor.value == players[consoleplayer].skincolor - && !strcmp(cv_skin.string, skins[players[consoleplayer].skin].name)) + && fastcmp(cv_skin.string, skins[players[consoleplayer].skin].name)) return; // We'll handle it later if we're not playing. @@ -2322,8 +2322,8 @@ static void Command_Playdemo_f(void) CONS_Printf(M_GetText("Playing back demo '%s'.\n"), name); - demo.loadfiles = strcmp(COM_Argv(2), "-addfiles") == 0; - demo.ignorefiles = strcmp(COM_Argv(2), "-force") == 0; + demo.loadfiles = fastcmp(COM_Argv(2), "-addfiles"); + demo.ignorefiles = fastcmp(COM_Argv(2), "-force"); // Internal if no extension, external if one exists // If external, convert the file name to a path in SRB2's home directory @@ -5209,14 +5209,14 @@ static void Ringslinger_OnChange(void) static void Gravity_OnChange(void) { if (!M_SecretUnlocked(SECRET_PANDORA) && !netgame && !cv_debug - && strcmp(cv_gravity.string, cv_gravity.defaultvalue)) + && !fastcmp(cv_gravity.string, cv_gravity.defaultvalue)) { CONS_Printf(M_GetText("You haven't earned this yet.\n")); CV_StealthSet(&cv_gravity, cv_gravity.defaultvalue); return; } #ifndef NETGAME_GRAVITY - if(netgame) + if (netgame) { CV_StealthSet(&cv_gravity, cv_gravity.defaultvalue); return; diff --git a/src/d_netfil.c b/src/d_netfil.c index 5a1272172..f279eaee0 100644 --- a/src/d_netfil.c +++ b/src/d_netfil.c @@ -946,17 +946,17 @@ void Got_Filetxpak(void) char *filename = file->filename; static INT32 filetime = 0; - if (!(strcmp(filename, "srb2.srb") - //&& strcmp(filename, "srb2.wad") - //&& strcmp(filename, "patch.dta") - //&& strcmp(filename, "music.dta") - && strcmp(filename, "gfx.kart") - && strcmp(filename, "textures.kart") - && strcmp(filename, "chars.kart") - && strcmp(filename, "maps.kart") - && strcmp(filename, "sounds.kart") - && strcmp(filename, "music.kart") - && strcmp(filename, "patch.kart") + if ((fastcmp(filename, "srb2.srb") + //|| fastcmp(filename, "srb2.wad") + //|| fastcmp(filename, "patch.dta") + //|| fastcmp(filename, "music.dta") + || fastcmp(filename, "gfx.kart") + || fastcmp(filename, "textures.kart") + || fastcmp(filename, "chars.kart") + || fastcmp(filename, "maps.kart") + || fastcmp(filename, "sounds.kart") + || fastcmp(filename, "music.kart") + || fastcmp(filename, "patch.kart") )) I_Error("Tried to download \"%s\"", filename); @@ -1197,7 +1197,7 @@ filestatus_t findfile(char *filename, const UINT8 *wantedmd5sum, boolean complet } // next, check SRB2's "home" directory (if non-'.') - if (strcmp(srb2home, ".")) + if (!fastcmp(srb2home, ".")) { homecheck = filesearch(filename, srb2home, wantedmd5sum, completepath, 10); @@ -1209,7 +1209,7 @@ filestatus_t findfile(char *filename, const UINT8 *wantedmd5sum, boolean complet } // next, check SRB2's "path" directory (also if non-'.') - if (strcmp(srb2path, ".")) + if (!fastcmp(srb2path, ".")) { homecheck = filesearch(filename, srb2path, wantedmd5sum, completepath, 10); @@ -1554,7 +1554,7 @@ CURLGetLogin (const char *url, HTTP_login ***return_prev_next) ( login = (*prev_next)); prev_next = &login->next ){ - if (strcmp(login->url, url) == 0) + if (fastcmp(login->url, url) != 0) { if (return_prev_next) (*return_prev_next) = prev_next; diff --git a/src/d_protocol.c b/src/d_protocol.c index 6ceb05100..963d8e587 100644 --- a/src/d_protocol.c +++ b/src/d_protocol.c @@ -211,12 +211,12 @@ void D_SetupProtocol(void) if (result) { - if (strcmp(buffer, "no") == 0) + if (!fastcmp(buffer, "no")) { fclose(fp); return; } - else if (strcmp(buffer, exe_path) != 0) + else if (fastcmp(buffer, exe_path)) { // overwrite fclose(fp); diff --git a/src/dedicated/i_system.c b/src/dedicated/i_system.c index 78f265e2a..d2ffa12ad 100644 --- a/src/dedicated/i_system.c +++ b/src/dedicated/i_system.c @@ -1709,9 +1709,9 @@ char *I_GetUserName(void) strncpy(username, p, MAXPLAYERNAME); } - - if (strcmp(username, "") != 0) + if (!fastcmp(username, "")) return username; + return NULL; // dummy for platform independent version } diff --git a/src/discord.c b/src/discord.c index f94cd574d..8f937cfc1 100644 --- a/src/discord.c +++ b/src/discord.c @@ -277,7 +277,7 @@ static void DRPC_HandleJoinRequest(const DiscordUser *requestUser) while (append != NULL) { // CHECK FOR DUPES!! Ignore any that already exist from the same user. - if (!strcmp(newRequest->userID, append->userID)) + if (fastcmp(newRequest->userID, append->userID)) { Discord_Respond(newRequest->userID, DISCORD_REPLY_IGNORE); DRPC_RemoveRequest(newRequest); @@ -419,7 +419,7 @@ static const char *DRPC_GetServerIP(void) // If you're connected if (I_GetNodeAddress && (address = I_GetNodeAddress(servernode)) != NULL) { - if (strcmp(address, "self")) + if (!fastcmp(address, "self")) { // We're not the server, so we could successfully get the IP! // No need to do anything else :) @@ -684,7 +684,7 @@ void DRPC_UpdatePresence(void) // Character image while (supportedSkins[checkSkin] != NULL) { - if (!strcmp(skins[players[consoleplayer].skin].name, supportedSkins[checkSkin])) + if (fastcmp(skins[players[consoleplayer].skin].name, supportedSkins[checkSkin])) { snprintf(charimg, 21, "char%s", supportedSkins[checkSkin]); discordPresence.smallImageKey = charimg; diff --git a/src/doomdef.h b/src/doomdef.h index a0c76fa61..0329eb7f8 100644 --- a/src/doomdef.h +++ b/src/doomdef.h @@ -69,6 +69,8 @@ extern "C" { #include #include +#include "fastcmp.h" + #ifdef _WIN32 #include #endif diff --git a/src/filesrch.c b/src/filesrch.c index 628a221c2..b9821d368 100644 --- a/src/filesrch.c +++ b/src/filesrch.c @@ -353,7 +353,7 @@ void searchfilemenu(char *tempname) { for (i = first; i < sizedirmenu; i++) { - if (!strcmp(dirmenu[i]+DIR_STRING, tempname)) + if (fastcmp(dirmenu[i]+DIR_STRING, tempname)) { dir_on[menudepthleft] = i; break; @@ -400,7 +400,7 @@ void searchfilemenu(char *tempname) { if (filemenucmp(coredirmenu[i]+DIR_STRING, localmenusearch)) { - if (tempname && !strcmp(coredirmenu[i]+DIR_STRING, tempname)) + if (tempname && fastcmp(coredirmenu[i]+DIR_STRING, tempname)) { dir_on[menudepthleft] = sizedirmenu; Z_Free(tempname); @@ -587,7 +587,7 @@ boolean preparefilemenu(boolean samedepth, boolean replayhut) nameonly(filenamebuf[i]); } - if (strcmp(dent->d_name, filenamebuf[i])) + if (!fastcmp(dent->d_name, filenamebuf[i])) continue; if (cv_addons_md5.value && !checkfilemd5(menupath, wadfiles[i]->md5sum)) @@ -598,11 +598,11 @@ boolean preparefilemenu(boolean samedepth, boolean replayhut) } else if (ext == EXT_TXT) { - if (!strncmp(dent->d_name, "log-", 4) || !strcmp(dent->d_name, "errorlog.txt")) + if (!strncmp(dent->d_name, "log-", 4) || fastcmp(dent->d_name, "errorlog.txt")) ext |= EXT_LOADED; } - if (!strcmp(dent->d_name, configfile)) + if (fastcmp(dent->d_name, configfile)) ext |= EXT_LOADED; } diff --git a/src/g_game.c b/src/g_game.c index 796c154d5..05615df78 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -3463,7 +3463,8 @@ void G_LoadGameData(void) if (READUINT32(save.p) != 0xFCAFE211) { const char *gdfolder = "the SRB2Kart folder"; - if (strcmp(srb2home,".")) + + if (!fastcmp(srb2home,".")) gdfolder = srb2home; Z_Free(save.buffer); @@ -3547,7 +3548,8 @@ void G_LoadGameData(void) datacorrupt: { const char *gdfolder = "the SRB2Kart folder"; - if (strcmp(srb2home,".")) + + if (!fastcmp(srb2home,".")) gdfolder = srb2home; Z_Free(save.buffer); @@ -3758,7 +3760,8 @@ void G_LoadGame(UINT32 slot, INT16 mapoverride) memset(vcheck, 0, sizeof (vcheck)); sprintf(vcheck, "version %d", VERSION); - if (strcmp((const char *)save.p, (const char *)vcheck)) + + if (!fastcmp((const char *)save.p, (const char *)vcheck)) { #ifdef SAVEGAME_OTHERVERSIONS M_StartMessage(M_GetText("Save game from different version.\nYou can load this savegame, but\nsaving afterwards will be disabled.\n\nDo you want to continue anyway?\n\n(Press 'Y' to confirm)\n"), @@ -4036,7 +4039,7 @@ char *G_BuildMapTitle(INT32 mapnum) if (!mapheaderinfo[mapnum-1]) P_AllocMapHeader(mapnum-1); - if (strcmp(mapheaderinfo[mapnum-1]->lvlttl, "")) + if (!fastcmp(mapheaderinfo[mapnum-1]->lvlttl, "")) { size_t len = 1; const char *zonetext = NULL; diff --git a/src/hardware/hw_main.cpp b/src/hardware/hw_main.cpp index 45f25c2a6..be96fc901 100644 --- a/src/hardware/hw_main.cpp +++ b/src/hardware/hw_main.cpp @@ -5840,7 +5840,7 @@ static void COM_HWR_glinfo(void) { argv = COM_Argv(i); - if (strcmp(argv, "--list-extensions") == 0 || strcmp(argv, "-l") == 0) + if (fastcmp(argv, "--list-extensions")|| fastcmp(argv, "-l")) { list_extensions = 1; } diff --git a/src/hardware/hw_model.c b/src/hardware/hw_model.c index 6a9825402..77a995ed0 100644 --- a/src/hardware/hw_model.c +++ b/src/hardware/hw_model.c @@ -163,22 +163,22 @@ model_t *LoadModel(const char *filename, int ztag) return NULL; } - if (!strcmp(extension, ".md3")) + if (fastcmp(extension, ".md3")) { if (!(model = MD3_LoadModel(filename, ztag, false))) return NULL; } - else if (!strcmp(extension, ".md3s")) // MD3 that will be converted in memory to use full floats + else if (fastcmp(extension, ".md3s")) // MD3 that will be converted in memory to use full floats { if (!(model = MD3_LoadModel(filename, ztag, true))) return NULL; } - else if (!strcmp(extension, ".md2")) + else if (fastcmp(extension, ".md2")) { if (!(model = MD2_LoadModel(filename, ztag, false))) return NULL; } - else if (!strcmp(extension, ".md2s")) + else if (fastcmp(extension, ".md2s")) { if (!(model = MD2_LoadModel(filename, ztag, true))) return NULL; diff --git a/src/lua_hooklib.c b/src/lua_hooklib.c index 6d04b6154..50dd46c61 100644 --- a/src/lua_hooklib.c +++ b/src/lua_hooklib.c @@ -83,7 +83,7 @@ FUNCINLINE static ATTRINLINE unsigned hook_in_list for (type = 0; list[type] != NULL; ++type) { - if (strcmp(name, list[type]) == 0) + if (fastcmp(name, list[type])) break; } @@ -240,7 +240,7 @@ static int lib_addHook(lua_State *L) { add_hook(&hookIds[type]); } - /*else if (strcmp(name, "HUD") == 0) // ehh this is cool and all, but i dont want modders potentially breaking vanilla clients lol + /*else if (fastcmp(name, "HUD")) // ehh this is cool and all, but i dont want modders potentially breaking vanilla clients lol { add_hud_hook(L, 3); }*/ @@ -818,7 +818,7 @@ typedef struct { FUNCINLINE static ATTRINLINE boolean checkbotkey(const char *field) { - return lua_toboolean(gL, -1) && strcmp(lua_tostring(gL, -2), field) == 0; + return lua_toboolean(gL, -1) && fastcmp(lua_tostring(gL, -2), field); } static void res_botai(Hook_State *hook) diff --git a/src/m_aatree.c b/src/m_aatree.c index 34e8e1d87..f78355eaf 100644 --- a/src/m_aatree.c +++ b/src/m_aatree.c @@ -183,7 +183,7 @@ static aatree_node_t *M_AATreeSetString_Node(aatree_node_t *node, UINT32 flags, else { aatree_entry_t *entry = node->value; - if (entry != NULL && strcmp(entry->key, key) != 0) + if (entry != NULL && !fastcmp(entry->key, key)) entry = entry->next; if (entry != NULL) { @@ -252,7 +252,7 @@ void *M_AATreeGetString(aatree_t *aatree, const char *key) I_Assert((aatree->flags & AATREE_STRING) == AATREE_STRING); UINT32 hash = FNV1a_HashString(key); aatree_entry_t *entry = M_AATreeGet_Node(aatree->root, hash); - while (entry != NULL && strcmp(entry->key, key) != 0) + while (entry != NULL && !fastcmp(entry->key, key)) entry = entry->next; return entry != NULL ? entry->value : NULL; } diff --git a/src/m_menu.c b/src/m_menu.c index 49398df34..bd79ec80c 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -3719,10 +3719,10 @@ static void M_HandleAddons(INT32 choice) break; case EXT_TXT: case EXT_CFG: - if ((strcmp(dirmenu[dir_on[menudepthleft]]+DIR_STRING, CONFIGFILENAME) == 0) - || (strcmp(dirmenu[dir_on[menudepthleft]]+DIR_STRING, AUTOLOADCONFIGFILENAME) == 0) - || (strcmp(dirmenu[dir_on[menudepthleft]]+DIR_STRING, "kartserv.cfg") == 0) - || (strcmp(dirmenu[dir_on[menudepthleft]]+DIR_STRING, "kartexec.cfg") == 0)) + if (fastcmp(dirmenu[dir_on[menudepthleft]]+DIR_STRING, CONFIGFILENAME) + || fastcmp(dirmenu[dir_on[menudepthleft]]+DIR_STRING, AUTOLOADCONFIGFILENAME) + || fastcmp(dirmenu[dir_on[menudepthleft]]+DIR_STRING, "kartserv.cfg") + || fastcmp(dirmenu[dir_on[menudepthleft]]+DIR_STRING, "kartexec.cfg")) { M_StartMessage(va("%c%s\x80\nYou can't autoload this builds' base console scripts, silly!\n They're already autoloaded on startup! \n\n(Press a key)\n", ('\x80' + (highlightflags>>V_CHARCOLORSHIFT)), dirmenu[dir_on[menudepthleft]]+DIR_STRING),NULL,MM_NOTHING); S_StartSound(NULL, sfx_s26d); @@ -3830,7 +3830,7 @@ static void ReplayNamesLoadThread(void* userdata) Lock_search_state(); - if (strcmp(menupath, replaydirpath) == 0) + if (fastcmp(menupath, replaydirpath)) { memcpy(demolist_all, demolist_all_local, sizeof(menudemo_t)*sizedirmenu); replaynamesloaded = true; @@ -6799,7 +6799,7 @@ static int ServerListEntryComparator_##key(const void *entry1, const void *entry const serverelem_t *sa = (const serverelem_t*)entry1, *sb = (const serverelem_t*)entry2; \ if (sa->info.key != sb->info.key) \ return sa->info.key - sb->info.key; \ - return strcmp(sa->info.servername, sb->info.servername); \ + return !fastcmp(sa->info.servername, sb->info.servername); \ } // This does descending instead of ascending. @@ -6809,7 +6809,7 @@ static int ServerListEntryComparator_##key##_reverse(const void *entry1, const v const serverelem_t *sa = (const serverelem_t*)entry1, *sb = (const serverelem_t*)entry2; \ if (sb->info.key != sa->info.key) \ return sb->info.key - sa->info.key; \ - return strcmp(sb->info.servername, sa->info.servername); \ + return !fastcmp(sb->info.servername, sa->info.servername); \ } SERVER_LIST_ENTRY_COMPARATOR(time) @@ -6830,8 +6830,8 @@ static int ServerListEntryComparator_modified(const void *entry1, const void *en if (modstate_a != modstate_b) return modstate_a - modstate_b; - // Default to strcmp. - return strcmp(sa->info.servername, sb->info.servername); + // Default to !fastcmp. + return !fastcmp(sa->info.servername, sb->info.servername); } void M_SortServerList(void) @@ -8808,7 +8808,7 @@ static boolean M_QuitMultiPlayerMenu(void) size_t l; // send name if changed - if (strcmp(setupm_name, setupm_cvname->string)) + if (!fastcmp(setupm_name, setupm_cvname->string)) { // remove trailing whitespaces for (l= strlen(setupm_name)-1; @@ -9469,7 +9469,7 @@ static void M_VideoModeMenu(INT32 choice) // VESA mode, which is always a higher modenum for (j = 0; j < vidm_nummodes; j++) { - if (!strcmp(modedescs[j].desc, desc)) + if (fastcmp(modedescs[j].desc, desc)) { // mode(0): 320x200 is always standard VGA, not vesa if (modedescs[j].modenum) diff --git a/src/m_perfstats.c b/src/m_perfstats.c index 7384a6086..75aad72e2 100644 --- a/src/m_perfstats.c +++ b/src/m_perfstats.c @@ -916,7 +916,7 @@ static void draw_think_frame_stats(int hook_length, ps_hookinfo_t *hook) int len = (int)strlen(str); char* str_ptr; - if (strcmp(".lua", str + len - 4) == 0) + if (fastcmp(".lua", str + len - 4)) { str[len-4] = '\0'; // remove .lua at end } diff --git a/src/p_saveg.c b/src/p_saveg.c index d3a162e2d..570e8e1f0 100644 --- a/src/p_saveg.c +++ b/src/p_saveg.c @@ -3391,7 +3391,7 @@ FUNCINLINE static ATTRINLINE void P_UnArchiveSPGame(savebuffer_t *save, INT16 ma READSTRINGN(save->p, testname, sizeof(testname)); - if (strcmp(testname, timeattackfolder)) + if (!fastcmp(testname, timeattackfolder)) { if (modifiedgame) I_Error("Save game not for this modification."); diff --git a/src/r_data.c b/src/r_data.c index 93ad621fa..893252571 100644 --- a/src/r_data.c +++ b/src/r_data.c @@ -867,7 +867,7 @@ static texpatch_t *R_ParsePatch(boolean actuallyLoadPatch) I_Error("Error parsing TEXTURES lump: Unexpected end of file where comma after \"%s\"'s patch name should be",patchName); } - if (strcmp(texturesToken,",")!=0) + if (!fastcmp(texturesToken,",")) { I_Error("Error parsing TEXTURES lump: Expected \",\" after %s's patch name, got \"%s\"",patchName,texturesToken); } @@ -907,7 +907,7 @@ static texpatch_t *R_ParsePatch(boolean actuallyLoadPatch) I_Error("Error parsing TEXTURES lump: Unexpected end of file where comma after patch \"%s\"'s x coordinate should be",patchName); } - if (strcmp(texturesToken,",")!=0) + if (!fastcmp(texturesToken,",")) { I_Error("Error parsing TEXTURES lump: Expected \",\" after patch \"%s\"'s x coordinate, got \"%s\"",patchName,texturesToken); } @@ -996,7 +996,7 @@ static texture_t *R_ParseTexture(boolean actuallyLoadTexture) { I_Error("Error parsing TEXTURES lump: Unexpected end of file where comma after texture \"%s\"'s name should be",newTextureName); } - else if (strcmp(texturesToken,",")!=0) + else if (!fastcmp(texturesToken,",")) { I_Error("Error parsing TEXTURES lump: Expected \",\" after texture \"%s\"'s name, got \"%s\"",newTextureName,texturesToken); } @@ -1030,7 +1030,7 @@ static texture_t *R_ParseTexture(boolean actuallyLoadTexture) { I_Error("Error parsing TEXTURES lump: Unexpected end of file where comma after texture \"%s\"'s width should be",newTextureName); } - if (strcmp(texturesToken,",")!=0) + if (!fastcmp(texturesToken,",")) { I_Error("Error parsing TEXTURES lump: Expected \",\" after texture \"%s\"'s width, got \"%s\"",newTextureName,texturesToken); } @@ -1066,7 +1066,7 @@ static texture_t *R_ParseTexture(boolean actuallyLoadTexture) I_Error("Error parsing TEXTURES lump: Unexpected end of file where open curly brace for texture \"%s\" should be",newTextureName); } - if (strcmp(texturesToken,"{")==0) + if (fastcmp(texturesToken,"{")) { if (actuallyLoadTexture) { @@ -1084,7 +1084,7 @@ static texture_t *R_ParseTexture(boolean actuallyLoadTexture) { I_Error("Error parsing TEXTURES lump: Unexpected end of file where patch definition for texture \"%s\" should be",newTextureName); } - while (strcmp(texturesToken,"}")!=0) + while (!fastcmp(texturesToken,"}")) { if (stricmp(texturesToken, "PATCH")==0) { @@ -1334,8 +1334,9 @@ lumpnum_t R_GetFlatNumForName(const char *name) if (lump == LUMPERROR) { - if (strcmp(name, SKYFLATNAME)) + if (!fastcmp(name, SKYFLATNAME)) CONS_Debug(DBG_SETUP, "R_GetFlatNumForName: Could not find flat %.8s\n", name); + lump = W_CheckNumForName("REDFLR"); } diff --git a/src/r_patch.cpp b/src/r_patch.cpp index 09aca078a..1e09ae7bb 100644 --- a/src/r_patch.cpp +++ b/src/r_patch.cpp @@ -63,7 +63,7 @@ static void R_ParseSpriteInfoFrame(spriteinfo_t *info) I_Error("Error parsing SPRTINFO lump: Missing sprite info"); else { - if (strcmp(sprinfoToken,"{")==0) + if (fastcmp(sprinfoToken,"{")) { Z_Free(sprinfoToken); sprinfoToken = M_GetToken(NULL); @@ -71,7 +71,7 @@ static void R_ParseSpriteInfoFrame(spriteinfo_t *info) { I_Error("Error parsing SPRTINFO lump: Unexpected end of file where sprite info should be"); } - while (strcmp(sprinfoToken,"}")!=0) + while (!fastcmp(sprinfoToken,"}")) { if (stricmp(sprinfoToken, "XPIVOT")==0) { @@ -175,7 +175,7 @@ static void R_ParseSpriteInfo(boolean spr2) { I_Error("Error parsing SPRTINFO lump: Unexpected end of file where open curly brace for sprite \"%s\" should be",newSpriteName); } - if (strcmp(sprinfoToken,"{")==0) + if (fastcmp(sprinfoToken,"{")) { Z_Free(sprinfoToken); sprinfoToken = M_GetToken(NULL); @@ -183,7 +183,7 @@ static void R_ParseSpriteInfo(boolean spr2) { I_Error("Error parsing SPRTINFO lump: Unexpected end of file where definition for sprite \"%s\" should be",newSpriteName); } - while (strcmp(sprinfoToken,"}")!=0) + while (!fastcmp(sprinfoToken,"}")) { if (stricmp(sprinfoToken, "SKIN")==0) { diff --git a/src/sdl/hwsym_sdl.c b/src/sdl/hwsym_sdl.c index a528796eb..edd685327 100644 --- a/src/sdl/hwsym_sdl.c +++ b/src/sdl/hwsym_sdl.c @@ -35,9 +35,6 @@ #define _CREATE_DLL_ // necessary for Unix AND Windows -#define GETFUNC(func) \ - else if (0 == strcmp(#func, funcName)) \ - funcPointer = &func \ // // /** \brief The *hwSym function diff --git a/src/sdl/i_system.cpp b/src/sdl/i_system.cpp index 4e9e54d72..5281a7f01 100644 --- a/src/sdl/i_system.cpp +++ b/src/sdl/i_system.cpp @@ -2288,8 +2288,9 @@ char *I_GetUserName(void) } - if (strcmp(username, "") != 0) + if (!fastcmp(username, "")) return username; + return NULL; // dummy for platform independent version } diff --git a/src/sdl/i_video.c b/src/sdl/i_video.c index 7393d8e4b..5bccceaff 100644 --- a/src/sdl/i_video.c +++ b/src/sdl/i_video.c @@ -905,7 +905,7 @@ static void Impl_HandleControllerAddedEvent(SDL_Event evt) for (i = 0; i < MAXSPLITSCREENPLAYERS; i++) { - if (!strcmp(cv_usejoystick[i].string, "0") || !cv_usejoystick[i].value) + if (fastcmp(cv_usejoystick[i].string, "0") || !cv_usejoystick[i].value) cv_usejoystick[i].value = 0; else if (atoi(cv_usejoystick[i].string) <= I_NumJoys() // don't mess if we intentionally set higher than NumJoys && cv_usejoystick[i].value) // update the cvar ONLY if a device exists @@ -977,7 +977,7 @@ static void Impl_HandleControllerRemovedEvent(void) for (i = 0; i < MAXSPLITSCREENPLAYERS; i++) { - if (!strcmp(cv_usejoystick[i].string, "0")) + if (fastcmp(cv_usejoystick[i].string, "0")) { cv_usejoystick[i].value = 0; } diff --git a/src/sdl/ogl_sdl.c b/src/sdl/ogl_sdl.c index 4e60801b3..1b8d54fef 100644 --- a/src/sdl/ogl_sdl.c +++ b/src/sdl/ogl_sdl.c @@ -170,8 +170,8 @@ boolean OglSdlSurface(INT32 w, INT32 h) } } - if (strcmp((const char*)gl_renderer, "GDI Generic") == 0 && - strcmp((const char*)gl_version, "1.1.0") == 0) + if (fastcmp((const char*)gl_renderer, "GDI Generic") && + fastcmp((const char*)gl_version, "1.1.0")) { // Oh no... Windows gave us the GDI Generic rasterizer, so something is wrong... // The game will crash later on when unsupported OpenGL commands are encountered. diff --git a/src/v_video.c b/src/v_video.c index e7d9a87ca..893a39b20 100644 --- a/src/v_video.c +++ b/src/v_video.c @@ -23,7 +23,6 @@ #include "r_main.h" #include "r_fps.h" #include "console.h" - #include "i_video.h" // rendermode #include "z_zone.h" #include "m_misc.h" @@ -134,7 +133,7 @@ static boolean InitCube(void) if (!loaded_config) return false; -#define diffcons(cv) (strcmp(cv.string, cv.defaultvalue)) +#define diffcons(cv) (!fastcmp(cv.string, cv.defaultvalue)) #define diffconsgamma(cv) (cv.value != 0) #define diffconssat(cv) (cv.value != 10) @@ -596,7 +595,7 @@ void V_ResetPaletteCVars(void) if (!loaded_config) return; -#define diffcons(cv) (strcmp(cv.string, cv.defaultvalue)) +#define diffcons(cv) (!fastcmp(cv.string, cv.defaultvalue)) if diffcons(cv_palette) CV_StealthSetValue(&cv_palette, atoi(cv_palette.defaultvalue)); if diffcons(cv_palettenum) -- 2.54.0 From dc6bf05f351aca99bb3bf082dca82927c9d29e0f Mon Sep 17 00:00:00 2001 From: Alug Date: Fri, 24 Oct 2025 21:50:12 +0200 Subject: [PATCH 065/104] experiment: replace every strcasecmp with fasticmp same as before, tho this is not twice as fast but atleast 1/3 faster --- src/command.c | 2 +- src/d_main.c | 5 +++- src/d_netcmd.c | 66 +++++++++++++++++++++++------------------------ src/doomtype.h | 2 +- src/filesrch.c | 14 +++++----- src/m_argv.c | 2 +- src/s_sound.c | 10 +++---- src/sdl/i_video.c | 8 +++--- 8 files changed, 56 insertions(+), 53 deletions(-) diff --git a/src/command.c b/src/command.c index 676212703..d5cbf8041 100644 --- a/src/command.c +++ b/src/command.c @@ -359,7 +359,7 @@ size_t COM_CheckParm(const char *check) size_t i; for (i = 1; i < com_argc; i++) - if (!strcasecmp(check, com_argv[i])) + if (fasticmp(check, com_argv[i])) return i; return 0; } diff --git a/src/d_main.c b/src/d_main.c index fd643213c..ef1855d05 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -2156,11 +2156,14 @@ void D_SRB2Main(void) const char *sskill = M_GetNextParm(); for (j = 0; kartspeed_cons_t[j].strvalue; j++) - if (!strcasecmp(kartspeed_cons_t[j].strvalue, sskill)) + { + if (fasticmp(kartspeed_cons_t[j].strvalue, sskill)) { newskill = (INT16)kartspeed_cons_t[j].value; break; } + } + if (!kartspeed_cons_t[j].strvalue) // reached end of the list with no match { j = atoi(sskill); // assume they gave us a skill number, which is okay too diff --git a/src/d_netcmd.c b/src/d_netcmd.c index 3a5e0ca7e..4998069c1 100644 --- a/src/d_netcmd.c +++ b/src/d_netcmd.c @@ -1219,7 +1219,7 @@ static boolean EnsurePlayerNameIsGood(char *name, INT32 playernum) for (ix = 0; ix < MAXPLAYERS; ix++) { if (ix != playernum && playeringame[ix] - && strcasecmp(name, player_names[ix]) == 0) + && fasticmp(name, player_names[ix])) { // We shouldn't kick people out just because // they joined the game with the same name @@ -1336,7 +1336,7 @@ static void CleanupPlayerName(INT32 playernum, const char *newname) for (i = 0; i < MAXPLAYERS; i++) { if (i != playernum && playeringame[i] - && strcasecmp(tmpname, player_names[i]) == 0) + && fasticmp(tmpname, player_names[i])) { break; } @@ -1386,7 +1386,7 @@ static void SetPlayerName(INT32 playernum, char *newname) { if (EnsurePlayerNameIsGood(newname, playernum)) { - if (strcasecmp(newname, player_names[playernum]) != 0) + if (fasticmp(newname, player_names[playernum])) { if (netgame) HU_AddChatText(va("\x82*%s renamed to %s", player_names[playernum], newname), false); @@ -1945,7 +1945,7 @@ static void Got_NameAndColor(UINT8 **cp, INT32 playernum) // set name if (player_name_changes[playernum] < MAXNAMECHANGES) { - if (strcasecmp(player_names[playernum], name) != 0) + if (!fasticmp(player_names[playernum], name)) SetPlayerName(playernum, name); } @@ -3194,20 +3194,20 @@ static void Command_Teamchange_f(void) if (G_GametypeHasTeams()) { - if (!strcasecmp(COM_Argv(1), "red") || !strcasecmp(COM_Argv(1), "1")) + if (fasticmp(COM_Argv(1), "red") || fasticmp(COM_Argv(1), "1")) NetPacket.packet.newteam = 1; - else if (!strcasecmp(COM_Argv(1), "blue") || !strcasecmp(COM_Argv(1), "2")) + else if (fasticmp(COM_Argv(1), "blue") || fasticmp(COM_Argv(1), "2")) NetPacket.packet.newteam = 2; - else if (!strcasecmp(COM_Argv(1), "spectator") || !strcasecmp(COM_Argv(1), "0")) + else if (fasticmp(COM_Argv(1), "spectator") || fasticmp(COM_Argv(1), "0")) NetPacket.packet.newteam = 0; else error = true; } else if (G_GametypeHasSpectators()) { - if (!strcasecmp(COM_Argv(1), "spectator") || !strcasecmp(COM_Argv(1), "0")) + if (fasticmp(COM_Argv(1), "spectator") || fasticmp(COM_Argv(1), "0")) NetPacket.packet.newteam = 0; - else if (!strcasecmp(COM_Argv(1), "playing") || !strcasecmp(COM_Argv(1), "1")) + else if (fasticmp(COM_Argv(1), "playing") || fasticmp(COM_Argv(1), "1")) NetPacket.packet.newteam = 3; else error = true; @@ -3284,20 +3284,20 @@ static void Command_Teamchange2_f(void) if (G_GametypeHasTeams()) { - if (!strcasecmp(COM_Argv(1), "red") || !strcasecmp(COM_Argv(1), "1")) + if (fasticmp(COM_Argv(1), "red") || fasticmp(COM_Argv(1), "1")) NetPacket.packet.newteam = 1; - else if (!strcasecmp(COM_Argv(1), "blue") || !strcasecmp(COM_Argv(1), "2")) + else if (fasticmp(COM_Argv(1), "blue") || fasticmp(COM_Argv(1), "2")) NetPacket.packet.newteam = 2; - else if (!strcasecmp(COM_Argv(1), "spectator") || !strcasecmp(COM_Argv(1), "0")) + else if (fasticmp(COM_Argv(1), "spectator") || fasticmp(COM_Argv(1), "0")) NetPacket.packet.newteam = 0; else error = true; } else if (G_GametypeHasSpectators()) { - if (!strcasecmp(COM_Argv(1), "spectator") || !strcasecmp(COM_Argv(1), "0")) + if (fasticmp(COM_Argv(1), "spectator") || fasticmp(COM_Argv(1), "0")) NetPacket.packet.newteam = 0; - else if (!strcasecmp(COM_Argv(1), "playing") || !strcasecmp(COM_Argv(1), "1")) + else if (fasticmp(COM_Argv(1), "playing") || fasticmp(COM_Argv(1), "1")) NetPacket.packet.newteam = 3; else error = true; @@ -3375,20 +3375,20 @@ static void Command_Teamchange3_f(void) if (G_GametypeHasTeams()) { - if (!strcasecmp(COM_Argv(1), "red") || !strcasecmp(COM_Argv(1), "1")) + if (fasticmp(COM_Argv(1), "red") || fasticmp(COM_Argv(1), "1")) NetPacket.packet.newteam = 1; - else if (!strcasecmp(COM_Argv(1), "blue") || !strcasecmp(COM_Argv(1), "2")) + else if (fasticmp(COM_Argv(1), "blue") || fasticmp(COM_Argv(1), "2")) NetPacket.packet.newteam = 2; - else if (!strcasecmp(COM_Argv(1), "spectator") || !strcasecmp(COM_Argv(1), "0")) + else if (fasticmp(COM_Argv(1), "spectator") || fasticmp(COM_Argv(1), "0")) NetPacket.packet.newteam = 0; else error = true; } else if (G_GametypeHasSpectators()) { - if (!strcasecmp(COM_Argv(1), "spectator") || !strcasecmp(COM_Argv(1), "0")) + if (fasticmp(COM_Argv(1), "spectator") || fasticmp(COM_Argv(1), "0")) NetPacket.packet.newteam = 0; - else if (!strcasecmp(COM_Argv(1), "playing") || !strcasecmp(COM_Argv(1), "1")) + else if (fasticmp(COM_Argv(1), "playing") || fasticmp(COM_Argv(1), "1")) NetPacket.packet.newteam = 3; else error = true; @@ -3466,20 +3466,20 @@ static void Command_Teamchange4_f(void) if (G_GametypeHasTeams()) { - if (!strcasecmp(COM_Argv(1), "red") || !strcasecmp(COM_Argv(1), "1")) + if (fasticmp(COM_Argv(1), "red") || fasticmp(COM_Argv(1), "1")) NetPacket.packet.newteam = 1; - else if (!strcasecmp(COM_Argv(1), "blue") || !strcasecmp(COM_Argv(1), "2")) + else if (fasticmp(COM_Argv(1), "blue") || fasticmp(COM_Argv(1), "2")) NetPacket.packet.newteam = 2; - else if (!strcasecmp(COM_Argv(1), "spectator") || !strcasecmp(COM_Argv(1), "0")) + else if (fasticmp(COM_Argv(1), "spectator") || fasticmp(COM_Argv(1), "0")) NetPacket.packet.newteam = 0; else error = true; } else if (G_GametypeHasSpectators()) { - if (!strcasecmp(COM_Argv(1), "spectator") || !strcasecmp(COM_Argv(1), "0")) + if (fasticmp(COM_Argv(1), "spectator") || fasticmp(COM_Argv(1), "0")) NetPacket.packet.newteam = 0; - else if (!strcasecmp(COM_Argv(1), "playing") || !strcasecmp(COM_Argv(1), "1")) + else if (fasticmp(COM_Argv(1), "playing") || fasticmp(COM_Argv(1), "1")) NetPacket.packet.newteam = 3; else error = true; @@ -3565,33 +3565,33 @@ static void Command_ServerTeamChange_f(void) if (G_TagGametype()) { - if (!strcasecmp(COM_Argv(2), "it") || !strcasecmp(COM_Argv(2), "1")) + if (fasticmp(COM_Argv(2), "it") || fasticmp(COM_Argv(2), "1")) NetPacket.packet.newteam = 1; - else if (!strcasecmp(COM_Argv(2), "notit") || !strcasecmp(COM_Argv(2), "2")) + else if (fasticmp(COM_Argv(2), "notit") || fasticmp(COM_Argv(2), "2")) NetPacket.packet.newteam = 2; - else if (!strcasecmp(COM_Argv(2), "playing") || !strcasecmp(COM_Argv(2), "3")) + else if (fasticmp(COM_Argv(2), "playing") || fasticmp(COM_Argv(2), "3")) NetPacket.packet.newteam = 3; - else if (!strcasecmp(COM_Argv(2), "spectator") || !strcasecmp(COM_Argv(2), "0")) + else if (fasticmp(COM_Argv(2), "spectator") || fasticmp(COM_Argv(2), "0")) NetPacket.packet.newteam = 0; else error = true; } else if (G_GametypeHasTeams()) { - if (!strcasecmp(COM_Argv(2), "red") || !strcasecmp(COM_Argv(2), "1")) + if (fasticmp(COM_Argv(2), "red") || fasticmp(COM_Argv(2), "1")) NetPacket.packet.newteam = 1; - else if (!strcasecmp(COM_Argv(2), "blue") || !strcasecmp(COM_Argv(2), "2")) + else if (fasticmp(COM_Argv(2), "blue") || fasticmp(COM_Argv(2), "2")) NetPacket.packet.newteam = 2; - else if (!strcasecmp(COM_Argv(2), "spectator") || !strcasecmp(COM_Argv(2), "0")) + else if (fasticmp(COM_Argv(2), "spectator") || fasticmp(COM_Argv(2), "0")) NetPacket.packet.newteam = 0; else error = true; } else if (G_GametypeHasSpectators()) { - if (!strcasecmp(COM_Argv(2), "spectator") || !strcasecmp(COM_Argv(2), "0")) + if (fasticmp(COM_Argv(2), "spectator") || fasticmp(COM_Argv(2), "0")) NetPacket.packet.newteam = 0; - else if (!strcasecmp(COM_Argv(2), "playing") || !strcasecmp(COM_Argv(2), "1")) + else if (fasticmp(COM_Argv(2), "playing") || fasticmp(COM_Argv(2), "1")) NetPacket.packet.newteam = 3; else error = true; diff --git a/src/doomtype.h b/src/doomtype.h index 78867ed69..7b0df4841 100644 --- a/src/doomtype.h +++ b/src/doomtype.h @@ -63,7 +63,7 @@ extern "C" { #endif #if defined (__unix__) || defined (__APPLE__) || defined (UNIXCOMMON) #undef stricmp - #define stricmp(x,y) strcasecmp(x,y) + #define stricmp(x,y) !fasticmp(x,y) #undef strnicmp #define strnicmp(x,y,n) strncasecmp(x,y,n) #endif diff --git a/src/filesrch.c b/src/filesrch.c index b9821d368..eb68222e2 100644 --- a/src/filesrch.c +++ b/src/filesrch.c @@ -198,7 +198,7 @@ filestatus_t filesearch(char *filename, const char *startpath, const UINT8 *want for (; *path != NULL; path++) { - if (strcasecmp(*path, dent->d_name) == 0) + if (fasticmp(*path, dent->d_name)) { skipfolder = true; break; @@ -212,7 +212,7 @@ filestatus_t filesearch(char *filename, const char *startpath, const UINT8 *want } } - if (strcasecmp(".git", dent->d_name) // sanity if you're weird like me + if (!fasticmp(".git", dent->d_name) // sanity if you're weird like me && (dirhandle[depthleft-1] = opendir(searchpath)) != NULL) { // Got read permissions! @@ -227,7 +227,7 @@ filestatus_t filesearch(char *filename, const char *startpath, const UINT8 *want // I am a file! - if (strcasecmp(searchname, dent->d_name)) + if (!fasticmp(searchname, dent->d_name)) continue; // Not what we're looking for! switch (checkfilemd5(searchpath, wantedmd5sum)) @@ -478,14 +478,14 @@ boolean preparefilemenu(boolean samedepth, boolean replayhut) if (replayhut) { - if (strcasecmp(".lmp", dent->d_name+len-5)) + if (!fasticmp(".lmp", dent->d_name+len-5)) continue; // Not a replay } else if (!cv_addons_showall.value) { UINT8 ext; for (ext = 0; ext < NUM_EXT_TABLE; ext++) - if (!strcasecmp(exttable[ext]+1, dent->d_name+len-(exttable[ext][0]))) + if (fasticmp(exttable[ext]+1, dent->d_name+len-(exttable[ext][0]))) break; // extension comparison if (ext == NUM_EXT_TABLE) @@ -559,7 +559,7 @@ boolean preparefilemenu(boolean samedepth, boolean replayhut) if (replayhut) { - if (strcasecmp(".lmp", dent->d_name+len-5)) + if (!fasticmp(".lmp", dent->d_name+len-5)) continue; // Not a replay ext = EXT_TXT; // This isn't used anywhere but better safe than sorry for messing with this... @@ -567,7 +567,7 @@ boolean preparefilemenu(boolean samedepth, boolean replayhut) else { for (; ext < NUM_EXT_TABLE; ext++) - if (!strcasecmp(exttable[ext]+1, dent->d_name+len-(exttable[ext][0]))) + if (fasticmp(exttable[ext]+1, dent->d_name+len-(exttable[ext][0]))) break; // extension comparison if (ext == NUM_EXT_TABLE && !cv_addons_showall.value) diff --git a/src/m_argv.c b/src/m_argv.c index 2ec1b188a..b62d390d9 100644 --- a/src/m_argv.c +++ b/src/m_argv.c @@ -49,7 +49,7 @@ INT32 M_CheckParm(const char *check) for (i = 1; i < myargc; i++) { - if (!strcasecmp(check, myargv[i])) + if (fasticmp(check, myargv[i])) { found = i; return i; diff --git a/src/s_sound.c b/src/s_sound.c index 1bac40a46..e3e86c5b0 100644 --- a/src/s_sound.c +++ b/src/s_sound.c @@ -1828,7 +1828,7 @@ void S_StopMusic(void) || demo.title) // SRB2Kart: Demos don't interrupt title screen music return; - mapmusic.resume = (cv_birdmusic.value && (strcasecmp(music.name, mapmusic.name) == 0)) ? I_GetSongPosition() : 0; + mapmusic.resume = (cv_birdmusic.value && fasticmp(music.name, mapmusic.name)) ? I_GetSongPosition() : 0; S_SetKeepMusResume(); @@ -1964,7 +1964,7 @@ static void S_SetKeepMusResume(void) { keepmusic.resume = 0; - if (strcasecmp(music.name, mapmusic.name) == 0) + if (fasticmp(music.name, mapmusic.name)) { keepmusic.resume = I_GetSongPosition(); } @@ -2148,19 +2148,19 @@ static void Command_Tunes_f(void) tunenum = (UINT16)atoi(tunearg); track = 0; - if (!strcasecmp(tunearg, "-show")) + if (fasticmp(tunearg, "-show")) { CONS_Printf(M_GetText("The current tune is: %s [track %d]\n"), mapmusic.name, (mapmusic.flags & MUSIC_TRACKMASK)); return; } - if (!strcasecmp(tunearg, "-none")) + if (fasticmp(tunearg, "-none")) { S_StopMusic(); return; } - else if (!strcasecmp(tunearg, "-default")) + else if (fasticmp(tunearg, "-default")) { tunearg = mapheaderinfo[gamemap-1]->musname; track = mapheaderinfo[gamemap-1]->mustrack; diff --git a/src/sdl/i_video.c b/src/sdl/i_video.c index 5bccceaff..2ea66dbc2 100644 --- a/src/sdl/i_video.c +++ b/src/sdl/i_video.c @@ -1785,11 +1785,11 @@ void I_StartupGraphics(void) if (rendermode == render_none) { - if (strcasecmp(word, "software") == 0) + if (fasticmp(word, "software")) { rendermode = render_soft; } - else if (strcasecmp(word, "opengl") == 0) + else if (fasticmp(word, "opengl")) { rendermode = render_opengl; } @@ -1802,7 +1802,7 @@ void I_StartupGraphics(void) if (!msaa_set) { - if (strcasecmp(word, "msaa") == 0) + if (fasticmp(word, "msaa")) { const char *nextword = strtok(NULL, " \n"); @@ -1819,7 +1819,7 @@ void I_StartupGraphics(void) if (!a2c_set) { - if (strcasecmp(word, "a2c") == 0) + if (fasticmp(word, "a2c")) { a2c = true; CONS_Printf("Using a2c because it was specified to be used earlier\n"); -- 2.54.0 From df1085548399eb2c1e6e023b45cae671a632b953 Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 25 Oct 2025 14:25:30 +0200 Subject: [PATCH 066/104] fix oopsie that broke name change --- src/d_netcmd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/d_netcmd.c b/src/d_netcmd.c index 4998069c1..f0601d9fa 100644 --- a/src/d_netcmd.c +++ b/src/d_netcmd.c @@ -1386,7 +1386,7 @@ static void SetPlayerName(INT32 playernum, char *newname) { if (EnsurePlayerNameIsGood(newname, playernum)) { - if (fasticmp(newname, player_names[playernum])) + if (!fasticmp(newname, player_names[playernum])) { if (netgame) HU_AddChatText(va("\x82*%s renamed to %s", player_names[playernum], newname), false); -- 2.54.0 From 30cea37248b10c96f0e73392bba40f2ea92f6c61 Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 18 Oct 2025 16:52:31 +0200 Subject: [PATCH 067/104] use npow2 screen textures if GL_ARB_texture_non_power_of_two is supported apparently some gl drivers may use a slower path for streamed textures that only get partly updated, this tricks them into thinking this did a "full update" and resulting in using a faster renderpath --- src/hardware/r_opengl/r_opengl.c | 23 +++++++++++++++-------- src/hardware/r_opengl/r_opengl.h | 1 + src/sdl/ogl_sdl.c | 3 +++ 3 files changed, 19 insertions(+), 8 deletions(-) diff --git a/src/hardware/r_opengl/r_opengl.c b/src/hardware/r_opengl/r_opengl.c index 23c2a8da0..3a5fd059a 100644 --- a/src/hardware/r_opengl/r_opengl.c +++ b/src/hardware/r_opengl/r_opengl.c @@ -110,6 +110,7 @@ GLint screen_texsizew = 512; // Power-of-two screen texture render resolution GLint screen_texsizeh = 512; // Power-of-two screen texture render resolution GLbyte screen_depth = 0; GLint maximumAnisotropy = 0; +boolean supportNPO2tex = false; static GLboolean MipMap = GL_FALSE; static GLint min_filter = GL_LINEAR; static GLint mag_filter = GL_LINEAR; @@ -1176,12 +1177,20 @@ void GL_SetModelView(GLint w, GLint h) screen_texsizew = screen_texsizeh = 512; - // look for power of two that is large enough for the screen - while (screen_texsizew < w) - screen_texsizew <<= 1; + if (supportNPO2tex) + { + screen_texsizew = screen_width; + screen_texsizeh = screen_height; + } + else + { + // look for power of two that is large enough for the screen + while (screen_texsizew < w) + screen_texsizew <<= 1; - while (screen_texsizeh < h) - screen_texsizeh <<= 1; + while (screen_texsizeh < h) + screen_texsizeh <<= 1; + } pglGetIntegerv(GL_MAX_TEXTURE_SIZE, &maxtexsize); // Get the maximum supported texture size if ((screen_texsizew > maxtexsize || screen_texsizeh > maxtexsize) && maxtexsize > 0) @@ -3692,7 +3701,6 @@ void GL_DrawScreenFinalTexture(int tex, INT32 width, INT32 height, boolean usesh float xfix, yfix; float origaspect, newaspect; float xoff = 1, yoff = 1; // xoffset and yoffset for the polygon to have black bars around the screen - FRGBAFloat clearColour; static float off[12]; static float fix[8]; @@ -3743,8 +3751,7 @@ void GL_DrawScreenFinalTexture(int tex, INT32 width, INT32 height, boolean usesh pglViewport(0, 0, width, height); - clearColour.red = clearColour.green = clearColour.blue = 0; - clearColour.alpha = 1; + FRGBAFloat clearColour = {0, 0, 0, 1}; GL_ClearBuffer(true, false, false, &clearColour); GL_SetBlend(PF_NoDepthTest); diff --git a/src/hardware/r_opengl/r_opengl.h b/src/hardware/r_opengl/r_opengl.h index 4cf2b2e46..34d4b9da3 100644 --- a/src/hardware/r_opengl/r_opengl.h +++ b/src/hardware/r_opengl/r_opengl.h @@ -124,6 +124,7 @@ extern GLint screen_width; extern GLint screen_height; extern GLbyte screen_depth; extern GLint maximumAnisotropy; +extern boolean supportNPO2tex; extern boolean supportMipMap; /** \brief OpenGL flags for video driver diff --git a/src/sdl/ogl_sdl.c b/src/sdl/ogl_sdl.c index 4e60801b3..0816ecfec 100644 --- a/src/sdl/ogl_sdl.c +++ b/src/sdl/ogl_sdl.c @@ -197,6 +197,9 @@ boolean OglSdlSurface(INT32 w, INT32 h) else maximumAnisotropy = 1; + if (GL_isExtAvailable("GL_ARB_texture_non_power_of_two", gl_extensions)) + supportNPO2tex = true; + glanisotropicmode_cons_t[1].value = maximumAnisotropy; #if defined (__unix__) -- 2.54.0 From 467688552184e38c2935a9e7ab3a93ea00d4238d Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 23:15:52 +0100 Subject: [PATCH 068/104] fixup: replace stricmp with fasticmp actually replace everything correctly my dumbass forgor about the fast both strcmp and stricmp matter in sort stuff so we cannot use the fastcmp stuff there, which means we should not redifine stricmp as fasticmp in case something relies on that behaviour ugh --- src/blua/lauxlib.c | 2 +- src/blua/lfastcmp.h | 32 ------------ src/blua/liolib.c | 8 +-- src/command.c | 72 +++++++++++++------------- src/d_clisrv.c | 7 +-- src/d_main.c | 14 ++--- src/d_netfil.c | 5 +- src/doomtype.h | 2 +- src/g_demo.c | 20 ++++---- src/g_game.c | 2 +- src/g_input.c | 7 +-- src/hardware/hw_md2.c | 12 +++-- src/hardware/hw_model.c | 2 +- src/hardware/hw_shaders.c | 8 +-- src/k_kart.c | 5 +- src/lua_consolelib.c | 2 +- src/lua_mobjlib.c | 6 +-- src/m_emotes.cpp | 4 +- src/m_menu.c | 8 +-- src/m_misc.c | 2 +- src/p_spec.c | 52 ++++++++++++++----- src/r_data.c | 36 +++++++++---- src/r_patch.cpp | 104 +++++++++++++++++++++----------------- src/r_skins.c | 46 ++++++++--------- src/s_sound.c | 31 +++++++----- src/w_wad.c | 10 ++-- 26 files changed, 267 insertions(+), 232 deletions(-) delete mode 100644 src/blua/lfastcmp.h diff --git a/src/blua/lauxlib.c b/src/blua/lauxlib.c index eacce9b44..e91faa182 100644 --- a/src/blua/lauxlib.c +++ b/src/blua/lauxlib.c @@ -24,7 +24,7 @@ #include "lauxlib.h" -#include "lfastcmp.h" +#include "../doomdef.h" #define FREELIST_REF 0 /* free list of references */ diff --git a/src/blua/lfastcmp.h b/src/blua/lfastcmp.h deleted file mode 100644 index f25c59896..000000000 --- a/src/blua/lfastcmp.h +++ /dev/null @@ -1,32 +0,0 @@ -#ifndef __FASTCMP_H__ -#define __FASTCMP_H__ - -#include -#include - -// same as fastcmp but we cant use our fancy macros - -// returns false if s != c -// returns true if s == c -__attribute__((always_inline)) static inline bool fasticmp(const char *s, const char *c) -{ - for (; *s && toupper(*s) == toupper(*c); s++, c++) ; - return (*s == *c); // make sure both strings ended -} - -// case-sensitive of the above -__attribute__((always_inline)) static inline bool fastcmp(const char *s, const char *c) -{ - for (; *s && *s == *c; s++, c++) ; - return (*s == *c); // make sure both strings ended -} - -// length-limited of the above -// only true if both strings are at least l characters long AND match, case-sensitively! -__attribute__((always_inline)) static inline bool fastncmp(const char *s, const char *c, uint16_t l) -{ - for (; *s && *s == *c && --l; s++, c++) ; - return !l; // make sure you reached the end -} - -#endif diff --git a/src/blua/liolib.c b/src/blua/liolib.c index 40e3e4582..929937e2e 100644 --- a/src/blua/liolib.c +++ b/src/blua/liolib.c @@ -161,12 +161,13 @@ static int io_tostring (lua_State *L) { static int StartsWith(const char *a, const char *b) // this is wolfs being lazy yet again { - if(strncmp(a, b, strlen(b)) == 0) return 1; + if (strncmp(a, b, strlen(b)) == 0) return 1; return 0; } -static int io_open (lua_State *L) { +static int io_open(lua_State *L) +{ FILE **pf; const char *filename = luaL_checkstring(L, 1); int pass = 0; @@ -178,12 +179,13 @@ static int io_open (lua_State *L) { for (i = 0; i < (sizeof (whitelist) / sizeof(const char *)); i++) { - if (!stricmp(&filename[length - strlen(whitelist[i])], whitelist[i])) + if (fasticmp(&filename[length - strlen(whitelist[i])], whitelist[i])) { pass = 1; break; } } + if (l_unlikely(strstr(filename, "..") || strchr(filename, ':') || StartsWith(filename, "\\") || StartsWith(filename, "/") || !pass)) { diff --git a/src/command.c b/src/command.c index d5cbf8041..9f9b39500 100644 --- a/src/command.c +++ b/src/command.c @@ -456,7 +456,7 @@ void COM_AddCommand(const char *name, com_func_t func) // fail if the command already exists for (cmd = com_commands; cmd; cmd = cmd->next) { - if (!stricmp(name, cmd->name)) //case insensitive now that we have lower and uppercase! + if (fasticmp(name, cmd->name)) //case insensitive now that we have lower and uppercase! { // don't I_Error for Lua commands // Lua commands can replace game commands, and they have priority. @@ -492,7 +492,7 @@ int COM_AddLuaCommand(const char *name) // command already exists for (cmd = com_commands; cmd; cmd = cmd->next) { - if (!stricmp(name, cmd->name)) //case insensitive now that we have lower and uppercase! + if (fasticmp(name, cmd->name)) //case insensitive now that we have lower and uppercase! { // replace the built in command. cmd->function = COM_Lua_f; @@ -519,7 +519,7 @@ static boolean COM_Exists(const char *com_name) xcommand_t *cmd; for (cmd = com_commands; cmd; cmd = cmd->next) - if (!stricmp(com_name, cmd->name)) + if (fasticmp(com_name, cmd->name)) return true; return false; @@ -571,7 +571,7 @@ static void COM_ExecuteString(char *ptext) // check functions for (cmd = com_commands; cmd; cmd = cmd->next) { - if (!stricmp(com_argv[0], cmd->name)) //case insensitive now that we have lower and uppercase! + if (fasticmp(com_argv[0], cmd->name)) //case insensitive now that we have lower and uppercase! { cmd->function(); return; @@ -581,7 +581,7 @@ static void COM_ExecuteString(char *ptext) // check aliases for (a = com_alias; a; a = a->next) { - if (!stricmp(com_argv[0], a->name)) + if (fasticmp(com_argv[0], a->name)) { if (recursion > MAX_ALIAS_RECURSION) CONS_Alert(CONS_WARNING, M_GetText("Alias recursion cycle detected!\n")); @@ -836,7 +836,7 @@ static void COM_Help_f(void) if (cvar->PossibleValue) { { - if (!stricmp(cvar->PossibleValue[0].strvalue, "MIN") && !stricmp(cvar->PossibleValue[1].strvalue, "MAX")) + if (fasticmp(cvar->PossibleValue[0].strvalue, "MIN") && fasticmp(cvar->PossibleValue[1].strvalue, "MAX")) { if (floatmode) { @@ -1176,7 +1176,7 @@ consvar_t *CV_FindVar(const char *name) consvar_t *cvar; for (cvar = consvar_vars; cvar; cvar = cvar->next) - if (!stricmp(name,cvar->name)) + if (fasticmp(name,cvar->name)) return cvar; return NULL; @@ -1366,7 +1366,7 @@ static void Setvalue(consvar_t *var, const char *valstr, boolean stealth) v = INT32_MIN; // Invalid integer trigger } - if (var->PossibleValue[0].strvalue && !stricmp(var->PossibleValue[0].strvalue, "MIN")) // bounded cvar + if (var->PossibleValue[0].strvalue && fasticmp(var->PossibleValue[0].strvalue, "MIN")) // bounded cvar { #define MINVAL 0 #define MAXVAL 1 @@ -1379,21 +1379,21 @@ static void Setvalue(consvar_t *var, const char *valstr, boolean stealth) // search for other for (i = MAXVAL+1; var->PossibleValue[i].strvalue; i++) - if (v == var->PossibleValue[i].value || !stricmp(var->PossibleValue[i].strvalue, valstr)) + if (v == var->PossibleValue[i].value || fasticmp(var->PossibleValue[i].strvalue, valstr)) { var->value = var->PossibleValue[i].value; var->string = var->PossibleValue[i].strvalue; goto finish; } - if ((v != INT32_MIN && v < var->PossibleValue[MINVAL].value) || !stricmp(valstr, "MIN")) + if ((v != INT32_MIN && v < var->PossibleValue[MINVAL].value) || fasticmp(valstr, "MIN")) { v = var->PossibleValue[MINVAL].value; valstr = var->PossibleValue[MINVAL].strvalue; override = true; overrideval = v; } - else if ((v != INT32_MIN && v > var->PossibleValue[MAXVAL].value) || !stricmp(valstr, "MAX")) + else if ((v != INT32_MIN && v > var->PossibleValue[MAXVAL].value) || fasticmp(valstr, "MAX")) { v = var->PossibleValue[MAXVAL].value; valstr = var->PossibleValue[MAXVAL].strvalue; @@ -1411,7 +1411,7 @@ static void Setvalue(consvar_t *var, const char *valstr, boolean stealth) // check first strings for (i = 0; var->PossibleValue[i].strvalue; i++) - if (!stricmp(var->PossibleValue[i].strvalue, valstr)) + if (fasticmp(var->PossibleValue[i].strvalue, valstr)) goto found; if (v != INT32_MIN) { @@ -1424,9 +1424,9 @@ static void Setvalue(consvar_t *var, const char *valstr, boolean stealth) if (var->PossibleValue == CV_OnOff || var->PossibleValue == CV_YesNo) { overrideval = -1; - if (!stricmp(valstr, "on") || !stricmp(valstr, "yes")) + if (fasticmp(valstr, "on") || fasticmp(valstr, "yes")) overrideval = 1; - else if (!stricmp(valstr, "off") || !stricmp(valstr, "no")) + else if (fasticmp(valstr, "off") || fasticmp(valstr, "no")) overrideval = 0; if (overrideval != -1) @@ -1643,7 +1643,7 @@ static void CV_SetCVar(consvar_t *var, const char *value, boolean stealth) if (!var->string) I_Error("CV_Set: %s no string set!\n", var->name); #endif - if (!var || !var->string || !value || !stricmp(var->string, value)) + if (!var || !var->string || !value || fasticmp(var->string, value)) return; // no changes if (var->flags & CV_NETVAR) @@ -1665,7 +1665,7 @@ static void CV_SetCVar(consvar_t *var, const char *value, boolean stealth) if (var == &cv_kartspeed && !M_SecretUnlocked(SECRET_HARDSPEED)) { - if (!stricmp(value, "Hard") || atoi(value) == 2) + if (fasticmp(value, "Hard") || atoi(value) == 2) { CONS_Alert(CONS_NOTICE, "You haven't unlocked this yet!\n"); return; @@ -1971,12 +1971,12 @@ static boolean CV_FilterJoyAxisVars(consvar_t *v, const char *valstr) { if (joyaxis_default[i]) { - if (!stricmp(v->name, "joyaxis_fire")) + if (fasticmp(v->name, "joyaxis_fire")) { if (joyaxis_count[i] > 7) return false; else if (joyaxis_count[i] == 7) return true; - if (!stricmp(valstr, "None")) joyaxis_count[i]++; + if (fasticmp(valstr, "None")) joyaxis_count[i]++; else joyaxis_default[i] = false; } // reset all axis settings to defaults @@ -2008,37 +2008,37 @@ static boolean CV_FilterJoyAxisVars(consvar_t *v, const char *valstr) // Block the Xbox DInput default axes and reset to the current defaults static boolean CV_FilterJoyAxisVars2(consvar_t *v, const char *valstr) { - if (!stricmp(v->name, "joyaxis_turn") && !stricmp(valstr, "X-Axis")) + if (fasticmp(v->name, "joyaxis_turn") && fasticmp(valstr, "X-Axis")) return false; - if (!stricmp(v->name, "joyaxis2_turn") && !stricmp(valstr, "X-Axis")) + if (fasticmp(v->name, "joyaxis2_turn") && fasticmp(valstr, "X-Axis")) return false; - if (!stricmp(v->name, "joyaxis3_turn") && !stricmp(valstr, "X-Axis")) + if (fasticmp(v->name, "joyaxis3_turn") && fasticmp(valstr, "X-Axis")) return false; - if (!stricmp(v->name, "joyaxis4_turn") && !stricmp(valstr, "X-Axis")) + if (fasticmp(v->name, "joyaxis4_turn") && fasticmp(valstr, "X-Axis")) return false; - if (!stricmp(v->name, "joyaxis_aim") && !stricmp(valstr, "Y-Axis")) + if (fasticmp(v->name, "joyaxis_aim") && fasticmp(valstr, "Y-Axis")) return false; - if (!stricmp(v->name, "joyaxis2_aim") && !stricmp(valstr, "Y-Axis")) + if (fasticmp(v->name, "joyaxis2_aim") && fasticmp(valstr, "Y-Axis")) return false; - if (!stricmp(v->name, "joyaxis3_aim") && !stricmp(valstr, "Y-Axis")) + if (fasticmp(v->name, "joyaxis3_aim") && fasticmp(valstr, "Y-Axis")) return false; - if (!stricmp(v->name, "joyaxis4_aim") && !stricmp(valstr, "Y-Axis")) + if (fasticmp(v->name, "joyaxis4_aim") && fasticmp(valstr, "Y-Axis")) return false; - if (!stricmp(v->name, "joyaxis_fire") && !stricmp(valstr, "None")) + if (fasticmp(v->name, "joyaxis_fire") && fasticmp(valstr, "None")) return false; - if (!stricmp(v->name, "joyaxis2_fire") && !stricmp(valstr, "None")) + if (fasticmp(v->name, "joyaxis2_fire") && fasticmp(valstr, "None")) return false; - if (!stricmp(v->name, "joyaxis3_fire") && !stricmp(valstr, "None")) + if (fasticmp(v->name, "joyaxis3_fire") && fasticmp(valstr, "None")) return false; - if (!stricmp(v->name, "joyaxis4_fire") && !stricmp(valstr, "None")) + if (fasticmp(v->name, "joyaxis4_fire") && fasticmp(valstr, "None")) return false; - if (!stricmp(v->name, "joyaxis_drift") && !stricmp(valstr, "None")) + if (fasticmp(v->name, "joyaxis_drift") && fasticmp(valstr, "None")) return false; - if (!stricmp(v->name, "joyaxis2_drift") && !stricmp(valstr, "None")) + if (fasticmp(v->name, "joyaxis2_drift") && fasticmp(valstr, "None")) return false; - if (!stricmp(v->name, "joyaxis3_drift") && !stricmp(valstr, "None")) + if (fasticmp(v->name, "joyaxis3_drift") && fasticmp(valstr, "None")) return false; - if (!stricmp(v->name, "joyaxis4_drift") && !stricmp(valstr, "None")) + if (fasticmp(v->name, "joyaxis4_drift") && fasticmp(valstr, "None")) return false; return true; @@ -2055,8 +2055,8 @@ static boolean CV_FilterVarByVersion(consvar_t *v, const char *valstr) if (GETMAJOREXECVERSION(cv_execversion.value) < 8) // 8 = 1.4 { - if (!stricmp(v->name, "masterserver") // Replaces a hack in MasterServer_OnChange for the original SRB2 MS. - || !stricmp(v->name, "gamma")) // Too easy to accidentially change in prior versions. + if (fasticmp(v->name, "masterserver") // Replaces a hack in MasterServer_OnChange for the original SRB2 MS. + || fasticmp(v->name, "gamma")) // Too easy to accidentially change in prior versions. return false; } diff --git a/src/d_clisrv.c b/src/d_clisrv.c index 2ca42df65..255e7ce8e 100644 --- a/src/d_clisrv.c +++ b/src/d_clisrv.c @@ -3215,7 +3215,7 @@ static void Command_connect(void) server = false; - if (!stricmp(COM_Argv(1), "self")) + if (fasticmp(COM_Argv(1), "self")) { servernode = 0; server = true; @@ -3225,7 +3225,7 @@ static void Command_connect(void) else { // used in menu to connect to a server in the list - if (netgame && !stricmp(COM_Argv(1), "node")) + if (netgame && fasticmp(COM_Argv(1), "node")) { servernode = (SINT8)atoi(COM_Argv(2)); } @@ -3240,7 +3240,7 @@ static void Command_connect(void) netgame = true; multiplayer = true; - if (!stricmp(COM_Argv(1), "any")) + if (fasticmp(COM_Argv(1), "any")) servernode = BROADCASTADDR; else if (I_NetMakeNodewPort && COM_Argc() >= 3) servernode = I_NetMakeNodewPort(COM_Argv(1), COM_Argv(2)); @@ -3264,6 +3264,7 @@ static void Command_connect(void) splitscreen = cv_splitplayers.value-1; SplitScreen_OnChange(); } + botingame = false; botskin = 0; CL_ConnectToServer(); diff --git a/src/d_main.c b/src/d_main.c index ef1855d05..bafc110e1 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -1078,19 +1078,19 @@ static INT32 D_DetectFileType(const char* filename) const size_t len = strlen(filename); - if (!stricmp(&filename[len - 4], ".wad")) + if (fasticmp(&filename[len - 4], ".wad")) return 2; - else if (!stricmp(&filename[len - 4], ".pk3")) + else if (fasticmp(&filename[len - 4], ".pk3")) return 3; - else if (!stricmp(&filename[len - 5], ".kart")) + else if (fasticmp(&filename[len - 5], ".kart")) return 4; - else if (!stricmp(&filename[len - 4], ".lua")) + else if (fasticmp(&filename[len - 4], ".lua")) return 5; - else if (!stricmp(&filename[len - 4], ".soc")) + else if (fasticmp(&filename[len - 4], ".soc")) return 6; - else if (!stricmp(&filename[len - 4], ".cfg")) + else if (fasticmp(&filename[len - 4], ".cfg")) return 7; - else if (!stricmp(&filename[len - 4], ".txt")) + else if (fasticmp(&filename[len - 4], ".txt")) return 8; return 0; diff --git a/src/d_netfil.c b/src/d_netfil.c index f279eaee0..c82165788 100644 --- a/src/d_netfil.c +++ b/src/d_netfil.c @@ -550,7 +550,8 @@ INT32 CL_CheckFiles(void) for (j = mainwads+1; j < numwadfiles; j++) { nameonly(strcpy(wadfilename, wadfiles[j]->filename)); - if (!stricmp(wadfilename, fileneeded[i].filename) && + + if (fasticmp(wadfilename, fileneeded[i].filename) && !memcmp(wadfiles[j]->md5sum, fileneeded[i].md5sum, 16)) { CONS_Debug(DBG_NETPLAY, "already loaded\n"); @@ -665,7 +666,7 @@ static boolean SV_SendFile(INT32 node, const char *filename, UINT8 fileid) strlcpy(wadfilename, wadfiles[wadnum]->filename, MAX_WADPATH); nameonly(wadfilename); - if (!stricmp(wadfilename, p->id.filename)) + if (fasticmp(wadfilename, p->id.filename)) { // Copy file name with full path strlcpy(p->id.filename, wadfiles[wadnum]->filename, MAX_WADPATH); diff --git a/src/doomtype.h b/src/doomtype.h index 7b0df4841..78867ed69 100644 --- a/src/doomtype.h +++ b/src/doomtype.h @@ -63,7 +63,7 @@ extern "C" { #endif #if defined (__unix__) || defined (__APPLE__) || defined (UNIXCOMMON) #undef stricmp - #define stricmp(x,y) !fasticmp(x,y) + #define stricmp(x,y) strcasecmp(x,y) #undef strnicmp #define strnicmp(x,y,n) strncasecmp(x,y,n) #endif diff --git a/src/g_demo.c b/src/g_demo.c index bd3905160..7ee773b1f 100644 --- a/src/g_demo.c +++ b/src/g_demo.c @@ -264,7 +264,7 @@ void G_ReadDemoExtraData(void) kartspeed = READUINT8(demobuf.p); kartweight = READUINT8(demobuf.p); - if (stricmp(skins[players[p].skin].name, name) != 0) + if (!fasticmp(skins[players[p].skin].name, name)) FindClosestSkinForStats(p, kartspeed, kartweight); players[p].kartspeed = kartspeed; @@ -277,7 +277,7 @@ void G_ReadDemoExtraData(void) M_Memcpy(name, demobuf.p, 16); demobuf.p += 16; for (i = 0; i < MAXSKINCOLORS; i++) - if (!stricmp(KartColor_Names[i], name)) // SRB2kart + if (fasticmp(KartColor_Names[i], name)) // SRB2kart { players[p].skincolor = i; if (players[p].mo) @@ -2289,7 +2289,7 @@ void G_LoadDemoInfo(menudemo_t *pdemo) { for (UINT8 j = 0; kartspeed_cons_t[j].strvalue; j++) { - if (!stricmp(kartspeed_cons_t[j].strvalue, svalue)) + if (fasticmp(kartspeed_cons_t[j].strvalue, svalue)) pdemo->kartspeed = kartspeed_cons_t[j].value; } } @@ -2321,7 +2321,7 @@ void G_LoadDemoInfo(menudemo_t *pdemo) for (i = 0; i < numskins; i++) { - if (stricmp(skins[i].name, temp) == 0) + if (fasticmp(skins[i].name, temp)) { pdemo->standings[count].skin = i; break; @@ -2334,7 +2334,7 @@ void G_LoadDemoInfo(menudemo_t *pdemo) for (i = 0; i < MAXSKINCOLORS; i++) { - if (!stricmp(KartColor_Names[i],temp)) // SRB2kart + if (fasticmp(KartColor_Names[i],temp)) // SRB2kart { pdemo->standings[count].color = i; break; @@ -2807,7 +2807,7 @@ void G_DoPlayDemo(char *defdemoname) // Set color for (i = 0; i < MAXSKINCOLORS; i++) { - if (!stricmp(KartColor_Names[i],color)) // SRB2kart + if (fasticmp(KartColor_Names[i],color)) // SRB2kart { players[0].skincolor = i; break; @@ -2947,7 +2947,7 @@ void G_DoPlayDemo(char *defdemoname) for (i = 0; i < MAXSKINCOLORS; i++) { - if (!stricmp(KartColor_Names[i],color)) // SRB2kart + if (fasticmp(KartColor_Names[i],color)) // SRB2kart { players[p].skincolor = i; break; @@ -2961,7 +2961,7 @@ void G_DoPlayDemo(char *defdemoname) kartspeed[p] = READUINT8(demobuf.p); kartweight[p] = READUINT8(demobuf.p); - if (stricmp(skins[players[p].skin].name, skin) != 0) + if (!fasticmp(skins[players[p].skin].name, skin)) FindClosestSkinForStats(p, kartspeed[p], kartweight[p]); // Look for the next player @@ -3242,7 +3242,7 @@ void G_AddGhost(char *defdemoname) for (i = 0; i < numskins; i++) { - if (!stricmp(skins[i].name,skin)) + if (fasticmp(skins[i].name, skin)) { ghskin = &skins[i]; break; @@ -3317,7 +3317,7 @@ void G_AddGhost(char *defdemoname) for (i = 0; i < MAXSKINCOLORS; i++) { - if (!stricmp(KartColor_Names[i],color)) // SRB2kart + if (fasticmp(KartColor_Names[i],color)) // SRB2kart { gh->mo->color = (UINT8)i; break; diff --git a/src/g_game.c b/src/g_game.c index 05615df78..125c88067 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -2768,7 +2768,7 @@ INT32 G_GetGametypeByName(const char *gametypestr) INT32 i; for (i = 0; i < NUMGAMETYPES; i++) - if (!stricmp(gametypestr, Gametype_Names[i])) + if (fasticmp(gametypestr, Gametype_Names[i])) return i; return -1; // unknown gametype diff --git a/src/g_input.c b/src/g_input.c index e8bc8223e..e5cd04668 100644 --- a/src/g_input.c +++ b/src/g_input.c @@ -1033,7 +1033,7 @@ INT32 G_KeyStringtoNum(const char *keystr) return atoi(&keystr[3]); for (j = 0; j < NUMKEYNAMES; j++) - if (!stricmp(keynames[j].name, keystr)) + if (fasticmp(keynames[j].name, keystr)) return keynames[j].keynum; return 0; @@ -1333,14 +1333,15 @@ static void setcontrol(INT32 (*gc)[2]) player = 0; namectrl = COM_Argv(1); - for (numctrl = 0; numctrl < num_gamecontrols && stricmp(namectrl, gamecontrolname[numctrl]); - numctrl++) + for (numctrl = 0; numctrl < num_gamecontrols && !fasticmp(namectrl, gamecontrolname[numctrl]); numctrl++) ; + if (numctrl == num_gamecontrols) { CONS_Printf(M_GetText("Control '%s' unknown\n"), namectrl); return; } + keynum1 = G_KeyStringtoNum(COM_Argv(2)); keynum2 = G_KeyStringtoNum(COM_Argv(3)); keynum = G_FilterKeyByVersion(numctrl, 0, player, &keynum1, &keynum2, &nestedoverride); diff --git a/src/hardware/hw_md2.c b/src/hardware/hw_md2.c index f3db532e9..10e5e4e1b 100644 --- a/src/hardware/hw_md2.c +++ b/src/hardware/hw_md2.c @@ -549,7 +549,7 @@ void HWR_InitMD2(void) { for (i = 0; i < NUMSPRITES; i++) { - if (stricmp(name, sprnames[i]) == 0) + if (fasticmp(name, sprnames[i])) { md2_models[i].scale = scale; md2_models[i].offset = offset; @@ -561,7 +561,7 @@ void HWR_InitMD2(void) for (s = 0; s < MAXSKINS; s++) { - if (stricmp(name, skins[s].name) == 0) + if (fasticmp(name, skins[s].name)) { md2_playermodels[s].skin = s; md2_playermodels[s].scale = scale; @@ -607,11 +607,12 @@ void HWR_AddPlayerMD2(int skin, boolean local) // For MD2's that were added afte } } - md2s = ( (local) ? md2_localplayermodels : md2_playermodels ); + md2s = (local ? md2_localplayermodels : md2_playermodels); + // Check for any MD2s that match the names of player skins! while (fscanf(f, "%19s %31s %f %f", name, filename, &scale, &offset) == 4) { - if (stricmp(name, K_GetSkinArray(local)[skin].name) == 0) + if (fasticmp(name, K_GetSkinArray(local)[skin].name)) { md2s[skin].skin = skin; md2s[skin].scale = scale; @@ -650,6 +651,7 @@ void HWR_AddSpriteMD2(size_t spritenum) // For MD2s that were added after startu if (!f) { f = fopen(va("%s"PATHSEP"%s", srb2path, "mdls.dat"), "rt"); + if (!f) { CONS_Printf("%s %s\n", M_GetText("Error while loading mdls.dat:"), strerror(errno)); @@ -661,7 +663,7 @@ void HWR_AddSpriteMD2(size_t spritenum) // For MD2s that were added after startu // Check for any MD2s that match the names of sprite names! while (fscanf(f, "%19s %31s %f %f", name, filename, &scale, &offset) == 4) { - if (stricmp(name, sprnames[spritenum]) == 0) + if (fasticmp(name, sprnames[spritenum])) { md2_models[spritenum].scale = scale; md2_models[spritenum].offset = offset; diff --git a/src/hardware/hw_model.c b/src/hardware/hw_model.c index 77a995ed0..811ac3b67 100644 --- a/src/hardware/hw_model.c +++ b/src/hardware/hw_model.c @@ -126,7 +126,7 @@ tag_t *GetTagByName(model_t *model, char *name, int frame) int i; for (i = 0; i < model->numTags; i++) { - if (!stricmp(iterator[i].name, name)) + if (fasticmp(iterator[i].name, name)) return &iterator[i]; } } diff --git a/src/hardware/hw_shaders.c b/src/hardware/hw_shaders.c index 9724378fe..19aea915e 100644 --- a/src/hardware/hw_shaders.c +++ b/src/hardware/hw_shaders.c @@ -586,7 +586,7 @@ void HWR_LoadCustomShadersFromFile(UINT16 wadnum, boolean PK3) goto skip_field; } - if (!stricmp(stoken, "GLSL")) + if (fasticmp(stoken, "GLSL")) { value = strtok(NULL, "\r\n "); if (!value) @@ -596,9 +596,9 @@ void HWR_LoadCustomShadersFromFile(UINT16 wadnum, boolean PK3) goto skip_lump; } - if (!stricmp(value, "VERTEX")) + if (fasticmp(value, "VERTEX")) shadertype = 1; - else if (!stricmp(value, "FRAGMENT")) + else if (fasticmp(value, "FRAGMENT")) shadertype = 2; skip_lump: @@ -624,7 +624,7 @@ skip_lump: for (i = 0; shaderxlat[i].type; i++) { - if (!stricmp(shaderxlat[i].type, stoken)) + if (fasticmp(shaderxlat[i].type, stoken)) { size_t shader_string_length; char *shader_source; diff --git a/src/k_kart.c b/src/k_kart.c index 7f755e235..3f335a5bb 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -637,11 +637,14 @@ void K_GenerateKartColormap(UINT8 *dest_colormap, INT32 skinnum, UINT8 color, bo UINT8 K_GetKartColorByName(const char *name) { UINT8 color = (UINT8)atoi(name); + if (color > 0 && color < MAXSKINCOLORS) return color; + for (color = 1; color < MAXSKINCOLORS; color++) - if (!stricmp(KartColor_Names[color], name)) + if (fasticmp(KartColor_Names[color], name)) return color; + return 0; } diff --git a/src/lua_consolelib.c b/src/lua_consolelib.c index 36c3a6c45..df45e3e07 100644 --- a/src/lua_consolelib.c +++ b/src/lua_consolelib.c @@ -453,7 +453,7 @@ static int lib_cvRegisterVar(lua_State *L) if (cvar->flags & CV_MODIFIED) return luaL_error(L, "failed to register cvar (probable conflict with internal variable/command names)"); - if (!(((cvar->flags & CV_HIDEN)) || (cvar->flags & CV_NOSHOWHELP)) && (cvar->PossibleValue || !(cvar->value == 0 && stricmp(cvar->string, "0")))) + if (!(((cvar->flags & CV_HIDEN)) || (cvar->flags & CV_NOSHOWHELP)) && (cvar->PossibleValue || !(cvar->value == 0 && !fasticmp(cvar->string, "0")))) { if (!category) { diff --git a/src/lua_mobjlib.c b/src/lua_mobjlib.c index 5ffbcb34e..fef27f563 100644 --- a/src/lua_mobjlib.c +++ b/src/lua_mobjlib.c @@ -455,12 +455,12 @@ int mobj_localskin_setter(lua_State *L) strlcpy(skin, luaL_optstring(L, 2, "none"), sizeof skin); strlwr(skin); // all skin names are lowercase - if (stricmp(skin, "none")) + if (!fasticmp(skin, "none")) { // Try localskins for (i = 0; i < numlocalskins; i++) { - if (stricmp(localskins[i].name, skin) == 0) + if (fasticmp(localskins[i].name, skin)) { mo->localskin = &localskins[i]; mo->skinlocal = true; @@ -471,7 +471,7 @@ int mobj_localskin_setter(lua_State *L) // Try other skins for (i = 0; i < numskins; i++) { - if (stricmp(skins[i].name, skin) == 0) + if (fasticmp(skins[i].name, skin)) { mo->localskin = &skins[i]; mo->skinlocal = false; diff --git a/src/m_emotes.cpp b/src/m_emotes.cpp index 57058ef23..45fd78804 100644 --- a/src/m_emotes.cpp +++ b/src/m_emotes.cpp @@ -112,7 +112,7 @@ void M_LoadEmotes(UINT16 wadnum) trim(field); trim(value); - if (stricmp(field.c_str(), "frames") == 0) + if (fasticmp(field.c_str(), "frames")) { UINT8 numframes = 0; @@ -158,7 +158,7 @@ void M_LoadEmotes(UINT16 wadnum) emote->numframes = numframes; } - else if (stricmp(field.c_str(), "timeperframe") == 0) + else if (fasticmp(field.c_str(), "timeperframe")) { emote->timeperframe = std::stoi(value); diff --git a/src/m_menu.c b/src/m_menu.c index bd79ec80c..09a0c6350 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -6799,7 +6799,7 @@ static int ServerListEntryComparator_##key(const void *entry1, const void *entry const serverelem_t *sa = (const serverelem_t*)entry1, *sb = (const serverelem_t*)entry2; \ if (sa->info.key != sb->info.key) \ return sa->info.key - sb->info.key; \ - return !fastcmp(sa->info.servername, sb->info.servername); \ + return strcmp(sa->info.servername, sb->info.servername); \ } // This does descending instead of ascending. @@ -6809,7 +6809,7 @@ static int ServerListEntryComparator_##key##_reverse(const void *entry1, const v const serverelem_t *sa = (const serverelem_t*)entry1, *sb = (const serverelem_t*)entry2; \ if (sb->info.key != sa->info.key) \ return sb->info.key - sa->info.key; \ - return !fastcmp(sb->info.servername, sa->info.servername); \ + return strcmp(sb->info.servername, sa->info.servername); \ } SERVER_LIST_ENTRY_COMPARATOR(time) @@ -6830,8 +6830,8 @@ static int ServerListEntryComparator_modified(const void *entry1, const void *en if (modstate_a != modstate_b) return modstate_a - modstate_b; - // Default to !fastcmp. - return !fastcmp(sa->info.servername, sb->info.servername); + // Default to strcmp. + return strcmp(sa->info.servername, sb->info.servername); } void M_SortServerList(void) diff --git a/src/m_misc.c b/src/m_misc.c index 4a0a163aa..58e4b191e 100644 --- a/src/m_misc.c +++ b/src/m_misc.c @@ -423,7 +423,7 @@ void Command_SaveConfig_f(void) FIL_ForceExtension(tmpstr, ".cfg"); M_SaveConfig(tmpstr); - if (stricmp(COM_Argv(2), "-silent")) + if (!fasticmp(COM_Argv(2), "-silent")) CONS_Printf(M_GetText("config saved as %s\n"), configfile); } diff --git a/src/p_spec.c b/src/p_spec.c index e7b032131..e08030e9e 100644 --- a/src/p_spec.c +++ b/src/p_spec.c @@ -324,6 +324,7 @@ void P_InitPicAnims(void) lastanim->speed = LONG(animdefs[i].speed); lastanim++; } + lastanim->istexture = -1; R_ClearTextureNumCache(false); @@ -331,6 +332,7 @@ void P_InitPicAnims(void) // We'll only be using anims from now on. if (animdefs != harddefs) Z_Free(animdefs); + animdefs = NULL; } @@ -361,20 +363,21 @@ void P_ParseANIMDEFSLump(INT32 wadNum, UINT16 lumpnum) // Now, let's start parsing this thing p = animdefsText; + animdefsToken = M_GetToken(p); while (animdefsToken != NULL) { - if (stricmp(animdefsToken, "TEXTURE") == 0) + if (fasticmp(animdefsToken, "TEXTURE")) { Z_Free(animdefsToken); P_ParseAnimationDefintion(1); } - else if (stricmp(animdefsToken, "FLAT") == 0) + else if (fasticmp(animdefsToken, "FLAT")) { Z_Free(animdefsToken); P_ParseAnimationDefintion(0); } - else if (stricmp(animdefsToken, "OSCILLATE") == 0) + else if (fasticmp(animdefsToken, "OSCILLATE")) { // This probably came off the tail of an earlier definition. It's technically legal syntax, but we don't support it. I_Error("Error parsing ANIMDEFS lump: Animation definitions utilizing \"OSCILLATE\" (the animation plays in reverse when it reaches the end) are not supported by SRB2"); @@ -383,11 +386,17 @@ void P_ParseANIMDEFSLump(INT32 wadNum, UINT16 lumpnum) { I_Error("Error parsing ANIMDEFS lump: Expected \"TEXTURE\" or \"FLAT\", got \"%s\"",animdefsToken); } + // parse next line - while (*p != '\0' && *p != '\n') ++p; - if (*p == '\n') ++p; + while (*p != '\0' && *p != '\n') + ++p; + + if (*p == '\n') + ++p; + animdefsToken = M_GetToken(p); } + Z_Free(animdefsToken); Z_Free((void *)animdefsText); } @@ -406,7 +415,8 @@ void P_ParseAnimationDefintion(SINT8 istexture) { I_Error("Error parsing ANIMDEFS lump: Unexpected end of file where start texture/flat name should be"); } - if (stricmp(animdefsToken, "OPTIONAL") == 0) + + if (fasticmp(animdefsToken, "OPTIONAL")) { // This is meaningful to ZDoom - it tells the program NOT to bomb out // if the textures can't be found - but it's useless in SRB2, so we'll @@ -418,7 +428,7 @@ void P_ParseAnimationDefintion(SINT8 istexture) { I_Error("Error parsing ANIMDEFS lump: Unexpected end of file where start texture/flat name should be"); } - else if (stricmp(animdefsToken, "RANGE") == 0) + else if (fasticmp(animdefsToken, "RANGE")) { // Oh. Um. Apparently "OPTIONAL" is a texture name. Naughty. // I should probably handle this more gracefully, but right now @@ -427,15 +437,17 @@ void P_ParseAnimationDefintion(SINT8 istexture) I_Error("Error parsing ANIMDEFS lump: \"OPTIONAL\" is a keyword; you cannot use it as the startname of an animation"); } } + animdefsTokenLength = strlen(animdefsToken); - if (animdefsTokenLength>8) + if (animdefsTokenLength > 8) { I_Error("Error parsing ANIMDEFS lump: lump name \"%s\" exceeds 8 characters", animdefsToken); } // Search for existing animdef for (i = 0; i < maxanims; i++) - if (stricmp(animdefsToken, animdefs[i].startname) == 0) + { + if (fasticmp(animdefsToken, animdefs[i].startname)) { //CONS_Alert(CONS_NOTICE, "Duplicate animation: %s\n", animdefsToken); @@ -444,6 +456,7 @@ void P_ParseAnimationDefintion(SINT8 istexture) Z_Free(animdefsToken); return; } + } // Not found if (i == maxanims) @@ -467,21 +480,25 @@ void P_ParseAnimationDefintion(SINT8 istexture) { I_Error("Error parsing ANIMDEFS lump: Unexpected end of file where \"RANGE\" after \"%s\"'s startname should be", animdefs[i].startname); } - if (stricmp(animdefsToken, "ALLOWDECALS") == 0) + + if (fasticmp(animdefsToken, "ALLOWDECALS")) { // Another ZDoom keyword, ho-hum. Skip it, move on to the next token. Z_Free(animdefsToken); animdefsToken = M_GetToken(NULL); } - if (stricmp(animdefsToken, "PIC") == 0) + + if (fasticmp(animdefsToken, "PIC")) { // This is technically legitimate ANIMDEFS syntax, but SRB2 doesn't support it. I_Error("Error parsing ANIMDEFS lump: Animation definitions utilizing \"PIC\" (specific frames instead of a consecutive range) are not supported by SRB2"); } - if (stricmp(animdefsToken, "RANGE") != 0) + + if (!fasticmp(animdefsToken, "RANGE")) { I_Error("Error parsing ANIMDEFS lump: Expected \"RANGE\" after \"%s\"'s startname, got \"%s\"", animdefs[i].startname, animdefsToken); } + Z_Free(animdefsToken); // Endname @@ -490,11 +507,13 @@ void P_ParseAnimationDefintion(SINT8 istexture) { I_Error("Error parsing ANIMDEFS lump: Unexpected end of file where \"%s\"'s end texture/flat name should be", animdefs[i].startname); } + animdefsTokenLength = strlen(animdefsToken); if (animdefsTokenLength>8) { I_Error("Error parsing ANIMDEFS lump: lump name \"%s\" exceeds 8 characters", animdefsToken); } + strncpy(animdefs[i].endname, animdefsToken, 9); Z_Free(animdefsToken); @@ -504,15 +523,18 @@ void P_ParseAnimationDefintion(SINT8 istexture) { I_Error("Error parsing ANIMDEFS lump: Unexpected end of file where \"%s\"'s \"TICS\" should be", animdefs[i].startname); } - if (stricmp(animdefsToken, "RAND") == 0) + + if (fasticmp(animdefsToken, "RAND")) { // This is technically legitimate ANIMDEFS syntax, but SRB2 doesn't support it. I_Error("Error parsing ANIMDEFS lump: Animation definitions utilizing \"RAND\" (random duration per frame) are not supported by SRB2"); } - if (stricmp(animdefsToken, "TICS") != 0) + + if (!fasticmp(animdefsToken, "TICS")) { I_Error("Error parsing ANIMDEFS lump: Expected \"TICS\" in animation definition for \"%s\", got \"%s\"", animdefs[i].startname, animdefsToken); } + Z_Free(animdefsToken); // Speed @@ -521,6 +543,7 @@ void P_ParseAnimationDefintion(SINT8 istexture) { I_Error("Error parsing ANIMDEFS lump: Unexpected end of file where \"%s\"'s animation speed should be", animdefs[i].startname); } + endPos = NULL; #ifndef AVOID_ERRNO errno = 0; @@ -535,6 +558,7 @@ void P_ParseAnimationDefintion(SINT8 istexture) { I_Error("Error parsing ANIMDEFS lump: Expected a positive integer for \"%s\"'s animation speed, got \"%s\"", animdefs[i].startname, animdefsToken); } + animdefs[i].speed = animSpeed; Z_Free(animdefsToken); } diff --git a/src/r_data.c b/src/r_data.c index 893252571..3077326ad 100644 --- a/src/r_data.c +++ b/src/r_data.c @@ -976,8 +976,9 @@ static texture_t *R_ParseTexture(boolean actuallyLoadTexture) { I_Error("Error parsing TEXTURES lump: Unexpected end of file where texture name should be"); } + texturesTokenLength = strlen(texturesToken); - if (texturesTokenLength>8) + if (texturesTokenLength > 8) { I_Error("Error parsing TEXTURES lump: Texture name \"%s\" exceeds 8 characters",texturesToken); } @@ -988,6 +989,7 @@ static texture_t *R_ParseTexture(boolean actuallyLoadTexture) // ^^ we've confirmed that the token is <= 8 characters so it will never overflow a 9 byte char buffer strupr(newTextureName); // Just do this now so we don't have to worry about it } + Z_Free(texturesToken); // Comma 1 @@ -996,10 +998,11 @@ static texture_t *R_ParseTexture(boolean actuallyLoadTexture) { I_Error("Error parsing TEXTURES lump: Unexpected end of file where comma after texture \"%s\"'s name should be",newTextureName); } - else if (!fastcmp(texturesToken,",")) + else if (!fastcmp(texturesToken, ",")) { I_Error("Error parsing TEXTURES lump: Expected \",\" after texture \"%s\"'s name, got \"%s\"",newTextureName,texturesToken); } + Z_Free(texturesToken); // Width @@ -1030,10 +1033,12 @@ static texture_t *R_ParseTexture(boolean actuallyLoadTexture) { I_Error("Error parsing TEXTURES lump: Unexpected end of file where comma after texture \"%s\"'s width should be",newTextureName); } - if (!fastcmp(texturesToken,",")) + + if (!fastcmp(texturesToken, ",")) { I_Error("Error parsing TEXTURES lump: Expected \",\" after texture \"%s\"'s width, got \"%s\"",newTextureName,texturesToken); } + Z_Free(texturesToken); // Height @@ -1066,7 +1071,7 @@ static texture_t *R_ParseTexture(boolean actuallyLoadTexture) I_Error("Error parsing TEXTURES lump: Unexpected end of file where open curly brace for texture \"%s\" should be",newTextureName); } - if (fastcmp(texturesToken,"{")) + if (fastcmp(texturesToken, "{")) { if (actuallyLoadTexture) { @@ -1078,15 +1083,18 @@ static texture_t *R_ParseTexture(boolean actuallyLoadTexture) resultTexture->height = newTextureHeight; resultTexture->type = TEXTURETYPE_COMPOSITE; } + Z_Free(texturesToken); + texturesToken = M_GetToken(NULL); if (texturesToken == NULL) { I_Error("Error parsing TEXTURES lump: Unexpected end of file where patch definition for texture \"%s\" should be",newTextureName); } - while (!fastcmp(texturesToken,"}")) + + while (!fastcmp(texturesToken, "}")) { - if (stricmp(texturesToken, "PATCH")==0) + if (fasticmp(texturesToken, "PATCH")) { Z_Free(texturesToken); if (resultTexture) @@ -1118,6 +1126,7 @@ static texture_t *R_ParseTexture(boolean actuallyLoadTexture) I_Error("Error parsing TEXTURES lump: Unexpected end of file where patch declaration or right curly brace for texture \"%s\" should be",newTextureName); } } + if (resultTexture && resultTexture->patchcount == 0) { I_Error("Error parsing TEXTURES lump: Texture \"%s\" must have at least one patch",newTextureName); @@ -1127,10 +1136,13 @@ static texture_t *R_ParseTexture(boolean actuallyLoadTexture) { I_Error("Error parsing TEXTURES lump: Expected \"{\" for texture \"%s\", got \"%s\"",newTextureName,texturesToken); } + Z_Free(texturesToken); - if (actuallyLoadTexture) return resultTexture; - else return NULL; + if (actuallyLoadTexture) + return resultTexture; + + return NULL; } // Parses the TEXTURES lump... but just to count the number of textures. @@ -1162,7 +1174,7 @@ int R_CountTexturesInTEXTURESLump(UINT16 wadNum, UINT16 lumpNum) texturesToken = M_GetToken(texturesText); while (texturesToken != NULL) { - if (stricmp(texturesToken, "WALLTEXTURE")==0) + if (fasticmp(texturesToken, "WALLTEXTURE")) { numTexturesInLump++; Z_Free(texturesToken); @@ -1172,8 +1184,10 @@ int R_CountTexturesInTEXTURESLump(UINT16 wadNum, UINT16 lumpNum) { I_Error("Error parsing TEXTURES lump: Expected \"WALLTEXTURE\", got \"%s\"",texturesToken); } + texturesToken = M_GetToken(NULL); } + Z_Free(texturesToken); Z_Free((void *)texturesText); @@ -1211,7 +1225,7 @@ void R_ParseTEXTURESLump(UINT16 wadNum, UINT16 lumpNum, INT32 *texindex) texturesToken = M_GetToken(texturesText); while (texturesToken != NULL) { - if (stricmp(texturesToken, "WALLTEXTURE")==0) + if (fasticmp(texturesToken, "WALLTEXTURE")) { Z_Free(texturesToken); // Get the new texture @@ -1227,8 +1241,10 @@ void R_ParseTEXTURESLump(UINT16 wadNum, UINT16 lumpNum, INT32 *texindex) { I_Error("Error parsing TEXTURES lump: Expected \"WALLTEXTURE\", got \"%s\"",texturesToken); } + texturesToken = M_GetToken(NULL); } + Z_Free(texturesToken); Z_Free((void *)texturesText); } diff --git a/src/r_patch.cpp b/src/r_patch.cpp index 1e09ae7bb..7510520dd 100644 --- a/src/r_patch.cpp +++ b/src/r_patch.cpp @@ -46,13 +46,14 @@ static void R_ParseSpriteInfoFrame(spriteinfo_t *info) { I_Error("Error parsing SPRTINFO lump: Unexpected end of file where sprite frame should be"); } + sprinfoTokenLength = strlen(sprinfoToken); if (sprinfoTokenLength != 1) { I_Error("Error parsing SPRTINFO lump: Invalid frame \"%s\"",sprinfoToken); } - else - frameChar = sprinfoToken; + + frameChar = sprinfoToken; frameFrame = R_Char2Frame(frameChar[0]); Z_Free(sprinfoToken); @@ -61,53 +62,53 @@ static void R_ParseSpriteInfoFrame(spriteinfo_t *info) sprinfoToken = M_GetToken(NULL); if (sprinfoToken == NULL) I_Error("Error parsing SPRTINFO lump: Missing sprite info"); - else + + if (fastcmp(sprinfoToken, "{")) { - if (fastcmp(sprinfoToken,"{")) + Z_Free(sprinfoToken); + sprinfoToken = M_GetToken(NULL); + if (sprinfoToken == NULL) { + I_Error("Error parsing SPRTINFO lump: Unexpected end of file where sprite info should be"); + } + while (!fastcmp(sprinfoToken, "}")) + { + if (fasticmp(sprinfoToken, "XPIVOT")) + { + Z_Free(sprinfoToken); + sprinfoToken = M_GetToken(NULL); + frameXPivot = atoi(sprinfoToken); + } + else if (fasticmp(sprinfoToken, "YPIVOT")) + { + Z_Free(sprinfoToken); + sprinfoToken = M_GetToken(NULL); + frameYPivot = atoi(sprinfoToken); + } + else if (fasticmp(sprinfoToken, "ROTAXIS")) + { + Z_Free(sprinfoToken); + sprinfoToken = M_GetToken(NULL); + if (fasticmp(sprinfoToken, "X") || fasticmp(sprinfoToken, "XAXIS") || fasticmp(sprinfoToken, "ROLL")) + frameRotAxis = ROTAXIS_X; + else if (fasticmp(sprinfoToken, "Y") || fasticmp(sprinfoToken, "YAXIS") || fasticmp(sprinfoToken, "PITCH")) + frameRotAxis = ROTAXIS_Y; + else if (fasticmp(sprinfoToken, "Z") || fasticmp(sprinfoToken, "ZAXIS") || fasticmp(sprinfoToken, "YAW")) + frameRotAxis = ROTAXIS_Z; + } + Z_Free(sprinfoToken); + sprinfoToken = M_GetToken(NULL); if (sprinfoToken == NULL) { - I_Error("Error parsing SPRTINFO lump: Unexpected end of file where sprite info should be"); - } - while (!fastcmp(sprinfoToken,"}")) - { - if (stricmp(sprinfoToken, "XPIVOT")==0) - { - Z_Free(sprinfoToken); - sprinfoToken = M_GetToken(NULL); - frameXPivot = atoi(sprinfoToken); - } - else if (stricmp(sprinfoToken, "YPIVOT")==0) - { - Z_Free(sprinfoToken); - sprinfoToken = M_GetToken(NULL); - frameYPivot = atoi(sprinfoToken); - } - else if (stricmp(sprinfoToken, "ROTAXIS")==0) - { - Z_Free(sprinfoToken); - sprinfoToken = M_GetToken(NULL); - if ((stricmp(sprinfoToken, "X")==0) || (stricmp(sprinfoToken, "XAXIS")==0) || (stricmp(sprinfoToken, "ROLL")==0)) - frameRotAxis = ROTAXIS_X; - else if ((stricmp(sprinfoToken, "Y")==0) || (stricmp(sprinfoToken, "YAXIS")==0) || (stricmp(sprinfoToken, "PITCH")==0)) - frameRotAxis = ROTAXIS_Y; - else if ((stricmp(sprinfoToken, "Z")==0) || (stricmp(sprinfoToken, "ZAXIS")==0) || (stricmp(sprinfoToken, "YAW")==0)) - frameRotAxis = ROTAXIS_Z; - } - Z_Free(sprinfoToken); - - sprinfoToken = M_GetToken(NULL); - if (sprinfoToken == NULL) - { - I_Error("Error parsing SPRTINFO lump: Unexpected end of file where sprite info or right curly brace should be"); - } + I_Error("Error parsing SPRTINFO lump: Unexpected end of file where sprite info or right curly brace should be"); } } - Z_Free(sprinfoToken); } + Z_Free(sprinfoToken); + // set fields info->pivot[frameFrame].x = frameXPivot; info->pivot[frameFrame].y = frameYPivot; @@ -137,6 +138,7 @@ static void R_ParseSpriteInfo(boolean spr2) { I_Error("Error parsing SPRTINFO lump: Unexpected end of file where sprite name should be"); } + sprinfoTokenLength = strlen(sprinfoToken); if (sprinfoTokenLength != 4) { @@ -149,6 +151,7 @@ static void R_ParseSpriteInfo(boolean spr2) // ^^ we've confirmed that the token is == 4 characters so it will never overflow a 5 byte char buffer strupr(newSpriteName); // Just do this now so we don't have to worry about it } + Z_Free(sprinfoToken); if (!spr2) @@ -157,7 +160,8 @@ static void R_ParseSpriteInfo(boolean spr2) { if (i == NUMSPRITES) I_Error("Error parsing SPRTINFO lump: Unknown sprite name \"%s\"", newSpriteName); - if (!memcmp(newSpriteName,sprnames[i],4)) + + if (!memcmp(newSpriteName,sprnames[i], 4)) { sprnum = static_cast(i); break; @@ -175,17 +179,20 @@ static void R_ParseSpriteInfo(boolean spr2) { I_Error("Error parsing SPRTINFO lump: Unexpected end of file where open curly brace for sprite \"%s\" should be",newSpriteName); } - if (fastcmp(sprinfoToken,"{")) + + if (fastcmp(sprinfoToken, "{")) { Z_Free(sprinfoToken); + sprinfoToken = M_GetToken(NULL); if (sprinfoToken == NULL) { I_Error("Error parsing SPRTINFO lump: Unexpected end of file where definition for sprite \"%s\" should be",newSpriteName); } - while (!fastcmp(sprinfoToken,"}")) + + while (!fastcmp(sprinfoToken, "}")) { - if (stricmp(sprinfoToken, "SKIN")==0) + if (fasticmp(sprinfoToken, "SKIN")) { INT32 skinnum; char *skinName = NULL; @@ -216,10 +223,11 @@ static void R_ParseSpriteInfo(boolean spr2) skinnumbers[foundskins] = skinnum; foundskins++; } - else if (stricmp(sprinfoToken, "FRAME")==0) + else if (fasticmp(sprinfoToken, "FRAME")) { R_ParseSpriteInfoFrame(info); Z_Free(sprinfoToken); + if (spr2) { if (!foundskins) @@ -254,6 +262,7 @@ static void R_ParseSpriteInfo(boolean spr2) { I_Error("Error parsing SPRTINFO lump: Expected \"{\" for sprite \"%s\", got \"%s\"",newSpriteName,sprinfoToken); } + Z_Free(sprinfoToken); Z_Free(info); } @@ -291,15 +300,18 @@ void R_ParseSPRTINFOLump(UINT16 wadNum, UINT16 lumpNum) while (sprinfoToken != NULL) { CONS_Printf("Attempting to parse le SPRTINFO lump for ya..\n"); - if (!stricmp(sprinfoToken, "SPRITE")) + + if (fasticmp(sprinfoToken, "SPRITE")) R_ParseSpriteInfo(false); - else if (!stricmp(sprinfoToken, "SPRITE2")) + else if (fasticmp(sprinfoToken, "SPRITE2")) R_ParseSpriteInfo(true); else I_Error("Error parsing SPRTINFO lump: Unknown keyword \"%s\"", sprinfoToken); + Z_Free(sprinfoToken); sprinfoToken = M_GetToken(NULL); } + Z_Free((void *)sprinfoText); } diff --git a/src/r_skins.c b/src/r_skins.c index bf731f708..53765e269 100644 --- a/src/r_skins.c +++ b/src/r_skins.c @@ -72,7 +72,7 @@ static void Sk_SetDefaultValue(skin_t *skin, boolean local) // // set default skin values // - memset(skin, 0, sizeof (skin_t)); + memset(skin, 0, sizeof(skin_t)); snprintf(skin->name, sizeof skin->name, "skin %u", K_GetMobjSkinNum(skin, local)); skin->name[sizeof skin->name - 1] = '\0'; @@ -188,7 +188,7 @@ INT32 R_SkinAvailable(const char *name) for (i = 0; i < numskins; i++) { - if (stricmp(skins[i].name, name) == 0) + if (fasticmp(skins[i].name, name)) return i; } @@ -203,7 +203,7 @@ INT32 R_AnySkinAvailable(const char *name) for (i = 0; i < numallskins; i++) { - if (stricmp(allskins[i].name, name) == 0) + if (fasticmp(allskins[i].name, name)) return i; } @@ -218,7 +218,7 @@ INT32 R_LocalSkinAvailable(const char *name, boolean local) { for (i = 0; i < numlocalskins; i++) { - if (stricmp(localskins[i].name, name) == 0) + if (fasticmp(localskins[i].name, name)) return i; } @@ -236,7 +236,7 @@ boolean SetPlayerSkin(INT32 playernum, const char *skinname) for (i = 0; i < numskins; i++) { // search in the skin list - if (stricmp(skins[i].name, skinname) == 0) + if (fasticmp(skins[i].name, skinname)) { SetPlayerSkinByNum(playernum, i); return true; @@ -257,12 +257,12 @@ void SetLocalPlayerSkin(INT32 playernum, const char *skinname, consvar_t *cvar) INT32 i; player_t *player = &players[playernum]; - if (stricmp(skinname, "none")) + if (!fasticmp(skinname, "none")) { for (i = 0; i < numlocalskins; i++) { // search in the localskin list - if (stricmp(localskins[i].name, skinname) == 0) + if (fasticmp(localskins[i].name, skinname)) { player->localskin = 1 + i; player->skinlocal = true; @@ -280,7 +280,7 @@ void SetLocalPlayerSkin(INT32 playernum, const char *skinname, consvar_t *cvar) for (i = 0; i < numskins; i++) { // search in the skin list - if (stricmp(skins[i].name, skinname) == 0) + if (fasticmp(skins[i].name, skinname)) { player->localskin = 1 + i; player->skinlocal = false; @@ -530,7 +530,7 @@ void R_AddSkins(UINT16 wadnum, boolean local) hudname = realname = false; // parse - stoken = strtok (buf2, "\r\n= "); + stoken = strtok(buf2, "\r\n= "); while (stoken) { if ((stoken[0] == '/' && stoken[1] == '/') @@ -546,7 +546,7 @@ void R_AddSkins(UINT16 wadnum, boolean local) if (!value) I_Error("R_AddSkins: syntax error in S_SKIN lump# %d(%s) in WAD %s\n", lump, W_CheckNameForNumPwad(wadnum,lump), wadfiles[wadnum]->filename); - if (!stricmp(stoken, "name")) + if (fasticmp(stoken, "name")) { // the skin name must uniquely identify a single skin // I'm lazy so if name is already used I leave the 'skin x' @@ -592,7 +592,7 @@ void R_AddSkins(UINT16 wadnum, boolean local) if (*value == '_') *value = ' '; // turn _ into spaces. } } - else if (!stricmp(stoken, "realname")) + else if (fasticmp(stoken, "realname")) { // Display name (eg. "Knuckles") realname = true; STRBUFCPY(skin->realname, value); @@ -603,7 +603,7 @@ void R_AddSkins(UINT16 wadnum, boolean local) if (!hudname) STRBUFCPY(skin->hudname, skin->realname); } - else if (!stricmp(stoken, "hudname")) + else if (fasticmp(stoken, "hudname")) { // Life icon name (eg. "K.T.E") hudname = true; STRBUFCPY(skin->hudname, value); @@ -614,34 +614,34 @@ void R_AddSkins(UINT16 wadnum, boolean local) if (!realname) STRBUFCPY(skin->realname, skin->hudname); } - else if (!stricmp(stoken, "sprite")) + else if (fasticmp(stoken, "sprite")) { strupr(value); memcpy(skin->sprite, value, sizeof skin->sprite); } - else if (!stricmp(stoken, "facerank")) + else if (fasticmp(stoken, "facerank")) { strupr(value); memcpy(skin->facerank, value, sizeof(skin->facerank)-1); skin->facerank[sizeof(skin->facerank)-1] = '\0'; } - else if (!stricmp(stoken, "facewant")) + else if (fasticmp(stoken, "facewant")) { strupr(value); memcpy(skin->facewant, value, sizeof(skin->facewant)-1); skin->facewant[sizeof(skin->facewant)-1] = '\0'; } - else if (!stricmp(stoken, "facemmap")) + else if (fasticmp(stoken, "facemmap")) { strupr(value); strncpy(skin->facemmap, value, sizeof(skin->facemmap)-1); skin->facemmap[sizeof(skin->facemmap)-1] = '\0'; } - else if (!stricmp(stoken, "flags")) // character type identification + else if (fasticmp(stoken, "flags")) // character type identification { skin->flags = get_number(value); } - else if (!stricmp(stoken, "kartspeed")) + else if (fasticmp(stoken, "kartspeed")) { skin->kartspeed = atoi(value); @@ -650,7 +650,7 @@ void R_AddSkins(UINT16 wadnum, boolean local) if (skin->kartspeed > 9) skin->kartspeed = 9; } - else if (!stricmp(stoken, "kartweight")) + else if (fasticmp(stoken, "kartweight")) { skin->kartweight = atoi(value); @@ -660,15 +660,15 @@ void R_AddSkins(UINT16 wadnum, boolean local) skin->kartweight = 9; } // custom translation table - else if (!stricmp(stoken, "startcolor")) + else if (fasticmp(stoken, "startcolor")) { skin->starttranscolor = atoi(value); } - else if (!stricmp(stoken, "prefcolor")) + else if (fasticmp(stoken, "prefcolor")) { skin->prefcolor = K_GetKartColorByName(value); } - else if (!stricmp(stoken, "highresscale")) + else if (fasticmp(stoken, "highresscale")) { skin->highresscale = FLOAT_TO_FIXED(atof(value)); } @@ -687,7 +687,7 @@ void R_AddSkins(UINT16 wadnum, boolean local) continue; if (sfx->skinsound != -1 - && !stricmp(sfx->name, stoken + 2)) + && fasticmp(sfx->name, stoken + 2)) { skin->soundsid[sfx->skinsound] = S_AddSoundFx(value+2, sfx->singularity, sfx->pitch, true); found = true; diff --git a/src/s_sound.c b/src/s_sound.c index e3e86c5b0..1e3f8bf7a 100644 --- a/src/s_sound.c +++ b/src/s_sound.c @@ -1095,9 +1095,12 @@ void S_StartSoundName(void *mo, const char *soundname) // Search existing sounds... for (i = sfx_None + 1; i < NUMSFX; i++) { - if (!S_sfx[i].name) + const sfxinfo_t *sfx = &S_sfx[i]; + + if (!sfx->name) continue; - if (!stricmp(S_sfx[i].name, soundname)) + + if (fasticmp(sfx->name, soundname)) { soundnum = i; break; @@ -1110,6 +1113,7 @@ void S_StartSoundName(void *mo, const char *soundname) { if (newsounds[i] == 0) break; + if (!S_IdPlaying(newsounds[i])) { S_RemoveSoundFx(newsounds[i]); @@ -1266,7 +1270,7 @@ ReadMusicDefFields (UINT16 wadnum, int line, char *stoken, musicdef_t **defp) char *value; char *textline; - if (!stricmp(stoken, "lump")) + if (fasticmp(stoken, "lump")) { value = strtok(NULL, " "); @@ -1341,24 +1345,24 @@ skip_lump: for (textline = def->field; *textline; textline++)\ if (*textline == '_') *textline = ' '; - if (!stricmp(stoken, "usage")) + if (fasticmp(stoken, "usage")) { ADDDEF(usage); } - else if (!stricmp(stoken, "source")) + else if (fasticmp(stoken, "source")) { ADDDEF(source); } - else if (!stricmp(stoken, "title")) + else if (fasticmp(stoken, "title")) { def->use_info = true; ADDDEF(title); } - else if (!stricmp(stoken, "alttitle")) + else if (fasticmp(stoken, "alttitle")) { ADDDEF(alttitle); } - else if (!stricmp(stoken, "authors")) + else if (fasticmp(stoken, "authors")) { ADDDEF(authors); } @@ -1479,7 +1483,8 @@ musicdef_t *S_FindMusicCredit(const char *musname) if (hash != def->hash) continue; - if (stricmp(def->name, musname)) + + if (!fasticmp(def->name, musname)) continue; return def; @@ -1934,7 +1939,7 @@ static const char *musicexception_list[] = { // check if the current music is smth we dont want to keep (vote music, etc) static boolean S_CheckMusicException(void) { - if (stricmp(music.name, mapmusic.name)) + if (!fasticmp(music.name, mapmusic.name)) return true; // dumb hack but dont keepmusic music that is supposed to reset @@ -1944,7 +1949,7 @@ static boolean S_CheckMusicException(void) // in case somehow the mapmusic was replaced with smth we dont want to keep for (size_t i = 0; i < sizeof(musicexception_list)/sizeof(musicexception_list[0]); i++) { - if (!stricmp(music.name, musicexception_list[i]) || !stricmp(checkmusic, musicexception_list[i])) + if (fasticmp(music.name, musicexception_list[i]) || fasticmp(checkmusic, musicexception_list[i])) { return true; } @@ -2030,12 +2035,12 @@ static boolean S_SkipIntroMusic(void) return false; // check if menu music is playing, otherwise it may continue playing - if (!stricmp(music.name, "titles")) + if (fasticmp(music.name, "titles")) return false; char *maptitle = G_BuildMapTitle(gamemap); // Zzz... - if (maptitle && !stricmp(maptitle, "Wandering Falls")) // wandering balls changes its song when the race starts Zzz... + if (maptitle && fasticmp(maptitle, "Wandering Falls")) // wandering balls changes its song when the race starts Zzz... { Z_Free(maptitle); return false; diff --git a/src/w_wad.c b/src/w_wad.c index f9eb9b361..96fe56303 100644 --- a/src/w_wad.c +++ b/src/w_wad.c @@ -375,11 +375,11 @@ static restype_t ResourceFileDetect(const char* filename) { size_t len = strlen(filename) - 4; - if (!stricmp(&filename[len], ".pk3")) + if (fasticmp(&filename[len], ".pk3")) return RET_PK3; - if (!stricmp(&filename[len], ".soc")) + if (fasticmp(&filename[len], ".soc")) return RET_SOC; - if (!stricmp(&filename[len], ".lua")) + if (fasticmp(&filename[len], ".lua")) return RET_LUA; return RET_WAD; @@ -1130,7 +1130,7 @@ UINT16 W_CheckNumForLongNamePwad(const char *name, UINT16 wad, UINT16 startlump) { if (lump_p->longnamelength == namelen && lump_p->hash.longname == hash - && !stricmp(lump_p->longname, name)) + && fasticmp(lump_p->longname, name)) return i; } } @@ -1230,7 +1230,7 @@ static lumpnum_t CheckLumpInCache(const char *name, boolean longname) for (INT32 i = lumpnumcacheindex + LUMPNUMCACHESIZE; i > lumpnumcacheindex; i--) { if (lumpnumcache[i & (LUMPNUMCACHESIZE - 1)].hash == hash - && stricmp(lumpnumcache[i & (LUMPNUMCACHESIZE - 1)].lumpname, name) == 0) + && fasticmp(lumpnumcache[i & (LUMPNUMCACHESIZE - 1)].lumpname, name)) { lumpnumcacheindex = i & (LUMPNUMCACHESIZE - 1); return lumpnumcache[lumpnumcacheindex].lumpnum; -- 2.54.0 From 3095303a4ba65f9fe13d187b711860d56554b5da Mon Sep 17 00:00:00 2001 From: Alug Date: Sun, 2 Nov 2025 14:35:28 +0100 Subject: [PATCH 069/104] Revert "simplify vhs effect interpolation" This reverts commit e26fb91350230a906e18d773d0ad4a91c75b81f1. --- src/v_video.c | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/src/v_video.c b/src/v_video.c index 893a39b20..3b9880942 100644 --- a/src/v_video.c +++ b/src/v_video.c @@ -1738,7 +1738,8 @@ void V_DrawHorizontallyScaledFullScreenPatch(patch_t *patch) void V_DrawVhsEffect(boolean rewind) { - static fixed_t upbary = 100, downbary = 150; + fixed_t uby, dby; + static fixed_t upbary = 100*FRACUNIT, downbary = 150*FRACUNIT; UINT8 barsize, updistort, downdistort; @@ -1759,19 +1760,21 @@ void V_DrawVhsEffect(boolean rewind) if (rewind) V_DrawVhsEffect(false); // experimentation - upbary -= FixedMul(vid.dup * (rewind ? 3 : 1.8f), renderdeltatics); - downbary += FixedMul(vid.dup * (rewind ? 2 : 1), renderdeltatics); + upbary -= renderdeltatics * (vid.dup * (rewind ? 3 : 1.8f)); + downbary += renderdeltatics * (vid.dup * (rewind ? 2 : 1)); - if (upbary < -barsize) - upbary = vid.height; + if (upbary < -barsize*FRACUNIT) + upbary = vid.height << FRACBITS; + if (downbary > vid.height << FRACBITS) + downbary = -barsize*FRACUNIT; - if (downbary > vid.height) - downbary = -barsize; + uby = upbary >> FRACBITS; + dby = downbary >> FRACBITS; #ifdef HWRENDER if (rendermode == render_opengl) { - HWR_RenderVhsEffect(upbary, downbary, updistort, downdistort, barsize); + HWR_RenderVhsEffect(uby, dby, updistort, downdistort, barsize); return; } #endif @@ -1791,16 +1794,16 @@ void V_DrawVhsEffect(boolean rewind) thismapstart = normalmapstart; offs = 0; - if (y >= upbary && y < upbary+barsize) + if (y >= uby && y < uby+barsize) { thismapstart -= (2<= downbary && y < downbary+barsize) + if (y >= dby && y < dby+barsize) { thismapstart -= (2< Date: Fri, 31 Oct 2025 13:07:37 +0000 Subject: [PATCH 070/104] Optimise padding algorithm --- src/hardware/r_opengl/r_opengl.c | 99 ++++++++++++++++++++------------ 1 file changed, 62 insertions(+), 37 deletions(-) diff --git a/src/hardware/r_opengl/r_opengl.c b/src/hardware/r_opengl/r_opengl.c index 3a5fd059a..650e39e13 100644 --- a/src/hardware/r_opengl/r_opengl.c +++ b/src/hardware/r_opengl/r_opengl.c @@ -1823,47 +1823,72 @@ static void GL_AllocTextureBuffer(GLMipmap_t *pTexInfo) } } -#define PADDING_CHECK(offset, alphaCheck) { from = to + (offset); if ((alphaCheck)) from = NULL; else goto foundFrom; } - -static void PadRGBABitmap(RGBA_t *tex, UINT16 w, UINT16 h) +static void PadRGBABitmap(RGBA_t *tex, UINT16 w, UINT16 h, UINT32 flags) { - INT32 i; - boolean notLeft, notRight, notTop, notBottom; - RGBA_t *to = tex - 1, *from; + INT32 i, c1, c2, idxAdd; + UINT16 c1size, c2size; + RGBA_t *current, *prev, *next, *first; + boolean ignorePrev, wrap; - for (i = 0; i < w * h; i++) + for (i = 1; i >= 0; i--) { - to++; - if (to->rgba != 0) - continue; - from = NULL; + c1size = i ? w : h; + c2size = i ? h : w; + idxAdd = i ? w : 1; + wrap = i ? flags & TF_WRAPY : flags & TF_WRAPX; - notLeft = i % w != 0; - notRight = i % w != w - 1; - notTop = i / w != 0; - notBottom = i / w != h - 1; - - if (notRight) PADDING_CHECK(1, from->s.alpha == 0) // Check +X - if (notBottom) PADDING_CHECK(w, from->s.alpha == 0) // Check +Y - if (notLeft) PADDING_CHECK(-1, from->s.alpha == 0) // Check -X - if (notTop) PADDING_CHECK(-w, from->s.alpha == 0) // Check -Y - if (notRight && notBottom) PADDING_CHECK(1 + w, from->s.alpha == 0) // Check +X+Y - if (notLeft && notBottom) PADDING_CHECK(-1 + w, from->s.alpha == 0) // Check -X+Y - if (notLeft && notTop) PADDING_CHECK(-1 - w, from->s.alpha == 0) // Check -X-Y - if (notRight && notTop) PADDING_CHECK(1 - w, from->s.alpha == 0) // Check +X-Y - -foundFrom: - if (from != NULL) + for (c1 = 0; c1 < c1size; c1++) { - *to = *from; - to->s.alpha = 0; + if (i) + { + first = current = tex + c1; + prev = wrap ? tex + (c1 + (h - 1) * w) : current; + next = tex + (c1 + w); + } + else + { + first = current = tex + (c1 * w); + prev = wrap ? tex + (w - 1 + c1 * w) : current; + next = tex + (1 + c1 * w); + } + + ignorePrev = false; + + for (c2 = 0; c2 < c2size; c2++) + { + if (c2 == c2size - 1) + next = wrap ? first : current; + + if (current->rgba) + { + ignorePrev = false; + } + else if (prev->rgba && !ignorePrev) + { + *current = *prev; + current->s.alpha = 0; + ignorePrev = true; + } + else if (next->rgba) + { + *current = *next; + current->s.alpha = 0; + ignorePrev = false; + } + else + { + ignorePrev = false; + } + + prev = current; + current = next; + next += idxAdd; + } } } } -#undef PADDING_CHECK - -static void GenerateMipmaps(INT32 w, INT32 h, RGBA_t *tex, INT32 maxLOD) +static void GenerateMipmaps(INT32 w, INT32 h, RGBA_t *tex, INT32 maxLOD, UINT32 flags) { if (tex == NULL) { @@ -1925,7 +1950,7 @@ static void GenerateMipmaps(INT32 w, INT32 h, RGBA_t *tex, INT32 maxLOD) h /= 2; if (padTexture) - PadRGBABitmap(tex, w, h); + PadRGBABitmap(tex, w, h, flags); pglTexSubImage2D(GL_TEXTURE_2D, m + 1, 0, 0, w, h, GL_RGBA, GL_UNSIGNED_BYTE, tex); } @@ -1939,7 +1964,7 @@ void GL_UpdateTexture(GLMipmap_t *pTexInfo) // Upload a texture GLuint num = pTexInfo->downloaded; boolean update = true; - const boolean applyPadding = mag_filter == GL_LINEAR || min_filter == GL_LINEAR; + const boolean applyPadding = mag_filter == GL_LINEAR || min_filter == GL_LINEAR || true; INT32 w = pTexInfo->width, h = pTexInfo->height; INT32 i, j; @@ -2000,7 +2025,7 @@ void GL_UpdateTexture(GLMipmap_t *pTexInfo) } if (applyPadding) - PadRGBABitmap(tex, w, h); + PadRGBABitmap(tex, w, h, pTexInfo->flags); break; case GL_TEXFMT_RGBA: @@ -2016,7 +2041,7 @@ void GL_UpdateTexture(GLMipmap_t *pTexInfo) ptex = tex; if (applyPadding) - PadRGBABitmap(tex, w, h); + PadRGBABitmap(tex, w, h, pTexInfo->flags); } break; @@ -2087,7 +2112,7 @@ void GL_UpdateTexture(GLMipmap_t *pTexInfo) // Control the mipmap level of detail pglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_LOD, 0); pglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LOD, 5); - GenerateMipmaps(w, h, tex, 5); + GenerateMipmaps(w, h, tex, 5, pTexInfo->flags); } else { -- 2.54.0 From 326a28ec36ce9aa88afa04856a42980d9633b3ac Mon Sep 17 00:00:00 2001 From: Blue Staggo Date: Fri, 31 Oct 2025 13:10:15 +0000 Subject: [PATCH 071/104] Oops, forgot to disable padding for nearest texture mode --- src/hardware/r_opengl/r_opengl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/hardware/r_opengl/r_opengl.c b/src/hardware/r_opengl/r_opengl.c index 650e39e13..7601de06d 100644 --- a/src/hardware/r_opengl/r_opengl.c +++ b/src/hardware/r_opengl/r_opengl.c @@ -1964,7 +1964,7 @@ void GL_UpdateTexture(GLMipmap_t *pTexInfo) // Upload a texture GLuint num = pTexInfo->downloaded; boolean update = true; - const boolean applyPadding = mag_filter == GL_LINEAR || min_filter == GL_LINEAR || true; + const boolean applyPadding = mag_filter == GL_LINEAR || min_filter == GL_LINEAR; INT32 w = pTexInfo->width, h = pTexInfo->height; INT32 i, j; -- 2.54.0 From 23ba82772622bacebf2a53a139fd5b18d1c8f4ad Mon Sep 17 00:00:00 2001 From: Blue Staggo Date: Fri, 31 Oct 2025 14:04:49 +0000 Subject: [PATCH 072/104] Give midtextures filtering without ugly borders + Clean up padding code Couldn't do proper translucent blending on midtextures because of wrapping. --- src/hardware/hw_main.cpp | 2 +- src/hardware/r_opengl/r_opengl.c | 39 ++++++++++++-------------------- 2 files changed, 15 insertions(+), 26 deletions(-) diff --git a/src/hardware/hw_main.cpp b/src/hardware/hw_main.cpp index be96fc901..dcefdaec2 100644 --- a/src/hardware/hw_main.cpp +++ b/src/hardware/hw_main.cpp @@ -1237,7 +1237,7 @@ static void HWR_DrawSkyWall(FOutVector *wallVerts, FSurfaceInfo *Surf) // Returns true if the midtexture is visible, and false if... it isn't... static inline boolean HWR_BlendMidtextureSurface(FSurfaceInfo *pSurf) { - FUINT blendmode = PF_Masked; + FUINT blendmode = PF_Masked | PF_Translucent; pSurf->PolyColor.s.alpha = 0xFF; diff --git a/src/hardware/r_opengl/r_opengl.c b/src/hardware/r_opengl/r_opengl.c index 7601de06d..d481b56db 100644 --- a/src/hardware/r_opengl/r_opengl.c +++ b/src/hardware/r_opengl/r_opengl.c @@ -1830,27 +1830,27 @@ static void PadRGBABitmap(RGBA_t *tex, UINT16 w, UINT16 h, UINT32 flags) RGBA_t *current, *prev, *next, *first; boolean ignorePrev, wrap; - for (i = 1; i >= 0; i--) + for (i = 0; i < 2; i++) { - c1size = i ? w : h; - c2size = i ? h : w; - idxAdd = i ? w : 1; - wrap = i ? flags & TF_WRAPY : flags & TF_WRAPX; + c1size = i ? h : w; + c2size = i ? w : h; + idxAdd = i ? 1 : w; + wrap = i ? flags & TF_WRAPX : flags & TF_WRAPY; for (c1 = 0; c1 < c1size; c1++) { if (i) - { - first = current = tex + c1; - prev = wrap ? tex + (c1 + (h - 1) * w) : current; - next = tex + (c1 + w); - } - else { first = current = tex + (c1 * w); prev = wrap ? tex + (w - 1 + c1 * w) : current; next = tex + (1 + c1 * w); } + else + { + first = current = tex + c1; + prev = wrap ? tex + (c1 + (h - 1) * w) : current; + next = tex + (c1 + w); + } ignorePrev = false; @@ -2086,21 +2086,10 @@ void GL_UpdateTexture(GLMipmap_t *pTexInfo) pglBindTexture(GL_TEXTURE_2D, num); tex_downloaded = num; - const int transparent = (pTexInfo->flags & TF_TRANSPARENT); + pglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, mag_filter); + pglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, min_filter); - // disable texture filtering on any texture that has holes so there's no dumb borders or blending issues - if (transparent) - { - pglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); - pglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); - } - else - { - pglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, mag_filter); - pglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, min_filter); - } - - if (MipMap && !transparent) // No mipmaps on transparent stuff + if (MipMap && !(pTexInfo->flags & TF_TRANSPARENT)) // No mipmaps on transparent stuff { pglTexParameteri(GL_TEXTURE_2D, GL_GENERATE_MIPMAP, GL_TRUE); -- 2.54.0 From 2b7f2da5ee252e52e521a59a926167e70b32a630 Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 1 Nov 2025 15:33:13 +0100 Subject: [PATCH 073/104] Mipmaps: fix translucent textures turning black i.e. since we allow texture filtering on translucent textures now, the min filter may specifcy one of the mipmap filters, this means we NEED to call GL_GENERATE_MIPMAP and set the LODs for them, otherwise no texture will be generated alternatively we could do a bunch of special cases for the mipmap filters, but this is simpler --- src/hardware/hw_main.cpp | 4 ---- src/hardware/r_opengl/r_opengl.c | 14 +++++++++++--- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/src/hardware/hw_main.cpp b/src/hardware/hw_main.cpp index dcefdaec2..c45404159 100644 --- a/src/hardware/hw_main.cpp +++ b/src/hardware/hw_main.cpp @@ -1259,8 +1259,6 @@ static inline boolean HWR_BlendMidtextureSurface(FSurfaceInfo *pSurf) case 256: if (gl_linedef->blendmode) blendmode = HWR_SurfaceBlend(gl_linedef->blendmode, R_GetLinedefTransTable(gl_linedef->alpha), pSurf); - else - blendmode = PF_Translucent; break; default: if (gl_linedef->blendmode) @@ -1272,8 +1270,6 @@ static inline boolean HWR_BlendMidtextureSurface(FSurfaceInfo *pSurf) } else if (gl_linedef->alpha >= 0 && gl_linedef->alpha < FRACUNIT) blendmode = HWR_TranstableToAlpha(R_GetLinedefTransTable(gl_linedef->alpha), pSurf); - else - blendmode = PF_Masked; break; } } diff --git a/src/hardware/r_opengl/r_opengl.c b/src/hardware/r_opengl/r_opengl.c index d481b56db..09f460c34 100644 --- a/src/hardware/r_opengl/r_opengl.c +++ b/src/hardware/r_opengl/r_opengl.c @@ -2089,7 +2089,7 @@ void GL_UpdateTexture(GLMipmap_t *pTexInfo) pglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, mag_filter); pglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, min_filter); - if (MipMap && !(pTexInfo->flags & TF_TRANSPARENT)) // No mipmaps on transparent stuff + if (MipMap) { pglTexParameteri(GL_TEXTURE_2D, GL_GENERATE_MIPMAP, GL_TRUE); @@ -2100,8 +2100,16 @@ void GL_UpdateTexture(GLMipmap_t *pTexInfo) // Control the mipmap level of detail pglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_LOD, 0); - pglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LOD, 5); - GenerateMipmaps(w, h, tex, 5, pTexInfo->flags); + + if (pTexInfo->flags & TF_TRANSPARENT) + { + pglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LOD, 0); // No mipmaps on transparent stuff + } + else + { + pglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LOD, 4); + GenerateMipmaps(w, h, tex, 4, pTexInfo->flags); + } } else { -- 2.54.0 From bbbd42e6536099a787415c0202d47dd1a653099e Mon Sep 17 00:00:00 2001 From: Alug Date: Wed, 5 Nov 2025 21:27:35 +0100 Subject: [PATCH 074/104] use "offsetof" for skydome vbo offsets silences UBSAN complaining about accessing struct members through null ptr --- src/hardware/r_opengl/r_opengl.c | 38 ++++++++++++-------------------- 1 file changed, 14 insertions(+), 24 deletions(-) diff --git a/src/hardware/r_opengl/r_opengl.c b/src/hardware/r_opengl/r_opengl.c index 09f460c34..566d2458c 100644 --- a/src/hardware/r_opengl/r_opengl.c +++ b/src/hardware/r_opengl/r_opengl.c @@ -2490,12 +2490,10 @@ void GL_DrawIndexedTriangles(FSurfaceInfo *pSurf, FOutVector *pOutVerts, FUINT i // the DrawPolygon variant of this has some code about polyflags and wrapping here but havent noticed any problems from omitting it? } -static const boolean gl_ext_arb_vertex_buffer_object = true; - -#define NULL_VBO_VERTEX ((gl_skyvertex_t*)NULL) -#define sky_vbo_x (gl_ext_arb_vertex_buffer_object ? &NULL_VBO_VERTEX->x : &sky->data[0].x) -#define sky_vbo_u (gl_ext_arb_vertex_buffer_object ? &NULL_VBO_VERTEX->u : &sky->data[0].u) -#define sky_vbo_r (gl_ext_arb_vertex_buffer_object ? &NULL_VBO_VERTEX->r : &sky->data[0].r) +//#define NULL_VBO_VERTEX ((gl_skyvertex_t*)NULL) +#define sky_vbo_x ((void*)offsetof(gl_skyvertex_t, x)) +#define sky_vbo_u ((void*)offsetof(gl_skyvertex_t, u)) +#define sky_vbo_r ((void*)offsetof(gl_skyvertex_t, r)) void GL_RenderSkyDome(gl_sky_t *sky) { @@ -2507,30 +2505,23 @@ void GL_RenderSkyDome(gl_sky_t *sky) if (sky->rebuild) { // delete VBO when already exists - if (gl_ext_arb_vertex_buffer_object) - { - if (sky->vbo) - pglDeleteBuffers(1, &sky->vbo); - } + if (sky->vbo) + pglDeleteBuffers(1, &sky->vbo); - if (gl_ext_arb_vertex_buffer_object) - { - // generate a new VBO and get the associated ID - pglGenBuffers(1, &sky->vbo); + // generate a new VBO and get the associated ID + pglGenBuffers(1, &sky->vbo); - // bind VBO in order to use - pglBindBuffer(GL_ARRAY_BUFFER, sky->vbo); + // bind VBO in order to use + pglBindBuffer(GL_ARRAY_BUFFER, sky->vbo); - // upload data to VBO - pglBufferData(GL_ARRAY_BUFFER, sky->vertex_count * sizeof(sky->data[0]), sky->data, GL_STATIC_DRAW); - } + // upload data to VBO + pglBufferData(GL_ARRAY_BUFFER, sky->vertex_count * sizeof(sky->data[0]), sky->data, GL_STATIC_DRAW); sky->rebuild = false; } // bind VBO in order to use - if (gl_ext_arb_vertex_buffer_object) - pglBindBuffer(GL_ARRAY_BUFFER, sky->vbo); + pglBindBuffer(GL_ARRAY_BUFFER, sky->vbo); // activate and specify pointers to arrays pglVertexPointer(3, GL_FLOAT, sizeof(sky->data[0]), sky_vbo_x); @@ -2574,8 +2565,7 @@ void GL_RenderSkyDome(gl_sky_t *sky) pglColor4ubv(white); // bind with 0, so, switch back to normal pointer operation - if (gl_ext_arb_vertex_buffer_object) - pglBindBuffer(GL_ARRAY_BUFFER, 0); + pglBindBuffer(GL_ARRAY_BUFFER, 0); // deactivate color array pglDisableClientState(GL_COLOR_ARRAY); -- 2.54.0 From 9dd1a479696662761b2d12d0276e2b9bab9ae54b Mon Sep 17 00:00:00 2001 From: Alug Date: Wed, 5 Nov 2025 21:28:24 +0100 Subject: [PATCH 075/104] fix SINT8 write macro, fix big endian READUINT32 macro --- src/byteptr.h | 4 ++-- src/g_demo.c | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/byteptr.h b/src/byteptr.h index 85141c21c..0c82e6f40 100644 --- a/src/byteptr.h +++ b/src/byteptr.h @@ -27,7 +27,7 @@ extern "C" { // #define WRITEUINT8(p,b) do { UINT8 *p_tmp = ( UINT8 *)p; const UINT8 tv = ( UINT8)(b); memcpy(p, &tv, sizeof( UINT8)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; } while (0) -#define WRITESINT8(p,b) do { SINT8 *p_tmp = ( SINT8 *)p; const SINT8 tv = ( UINT8)(b); memcpy(p, &tv, sizeof( UINT8)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; } while (0) +#define WRITESINT8(p,b) do { SINT8 *p_tmp = ( SINT8 *)p; const SINT8 tv = ( SINT8)(b); memcpy(p, &tv, sizeof( SINT8)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; } while (0) #define WRITEINT16(p,b) do { INT16 *p_tmp = ( INT16 *)p; const INT16 tv = ( INT16)(b); memcpy(p, &tv, sizeof( INT16)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; } while (0) #define WRITEUINT16(p,b) do { UINT16 *p_tmp = ( UINT16 *)p; const UINT16 tv = ( UINT16)(b); memcpy(p, &tv, sizeof( UINT16)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; } while (0) #define WRITEINT32(p,b) do { INT32 *p_tmp = ( INT32 *)p; const INT32 tv = ( INT32)(b); memcpy(p, &tv, sizeof( INT32)); p_tmp++; *(void**)(&(p)) = (void *)p_tmp; } while (0) @@ -124,7 +124,7 @@ FUNCINLINE static ATTRINLINE UINT32 readulong(void *ptr) #define READINT16(p) readshort(&((const INT16*)(p = (const void*)&((const INT16*)p)[1]))[-1]) #define READUINT16(p) readushort(&((const UINT16*)(p = (const void*)&((const UINT16*)p)[1]))[-1]) #define READINT32(p) readlong(&((const INT32*)(p = (const void*)&((const INT32*)p)[1]))[-1]) -#define READUINT32(p) readulong(&((const UINT32*)(p = (const void*)&((const UINT32*)p)[1])) +#define READUINT32(p) readulong(&((const UINT32*)(p = (const void*)&((const UINT32*)p)[1]))[-1]) #define READCHAR(p) ((const char*)(p = (const void*)&((const char*)p)[1]))[-1] #define READFIXED(p) readlong(&((const fixed_t*)(p = (const void*)&((const fixed_t*)p)[1]))[-1]) #define READANGLE(p) readulong(&((const angle_t*)(p = (const void*)&((const angle_t*)p)[1]))[-1]) diff --git a/src/g_demo.c b/src/g_demo.c index 8c3bbe1c6..3b1f5fce3 100644 --- a/src/g_demo.c +++ b/src/g_demo.c @@ -395,7 +395,7 @@ void G_WriteDemoExtraData(void) // Skin memset(name, 0, 16); strncpy(name, skins[players[i].skin].name, 16); - M_Memcpy(demobuf.p,name,16); + M_Memcpy(demobuf.p, name, 16); demobuf.p += 16; WRITEUINT8(demobuf.p, skins[players[i].skin].kartspeed); @@ -407,7 +407,7 @@ void G_WriteDemoExtraData(void) // Color memset(name, 0, 16); strncpy(name, KartColor_Names[players[i].skincolor], 16); - M_Memcpy(demobuf.p,name,16); + M_Memcpy(demobuf.p, name, 16); demobuf.p += 16; } @@ -416,7 +416,7 @@ void G_WriteDemoExtraData(void) // Name memset(name, 0, 16); memcpy(name, player_names[i], 15); // Keeping 1 null byte for safety, sorry players with name containing more than 15 characters - M_Memcpy(demobuf.p,name,16); + M_Memcpy(demobuf.p, name, 16); demobuf.p += 16; } @@ -1763,19 +1763,19 @@ void G_BeginRecording(void) // Name memset(name, 0, 16); memcpy(name, player_names[p], 15); - M_Memcpy(demobuf.p,name,16); + M_Memcpy(demobuf.p, name, 16); demobuf.p += 16; // Skin memset(name, 0, 16); strncpy(name, skins[player->skin].name, 16); - M_Memcpy(demobuf.p,name,16); + M_Memcpy(demobuf.p, name, 16); demobuf.p += 16; // Color memset(name, 0, 16); strncpy(name, KartColor_Names[player->skincolor], 16); - M_Memcpy(demobuf.p,name,16); + M_Memcpy(demobuf.p, name, 16); demobuf.p += 16; // Score, since Kart uses this to determine where you start on the map -- 2.54.0 From a7c5254a32b84b7278e1ac2f5e394d754c630c8d Mon Sep 17 00:00:00 2001 From: Alug Date: Wed, 5 Nov 2025 21:29:01 +0100 Subject: [PATCH 076/104] set "-Wno-cast-qual" for clang see comment --- src/Makefile.d/versions.mk | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Makefile.d/versions.mk b/src/Makefile.d/versions.mk index 83600d735..451ff72e7 100644 --- a/src/Makefile.d/versions.mk +++ b/src/Makefile.d/versions.mk @@ -144,8 +144,10 @@ ifdef GCC81 WFLAGS+=-Wno-error=multistatement-macros endif -ifeq ($(CC),clang) - WFLAGS+= -Wno-unknown-pragmas -Wno-cast-align +ifneq (,$(filter $(CC) $(CXX),clang clang++)) + WFLAGS+= -Wno-unknown-pragmas + WFLAGS+= -Wno-cast-align + WFLAGS+= -Wno-cast-qual # not a fan, but clang really hates our read macros endif ifdef NONX86 -- 2.54.0 From b017a7202660a1e015868b7fb54fa990f585c05c Mon Sep 17 00:00:00 2001 From: Alug Date: Wed, 5 Nov 2025 22:04:56 +0100 Subject: [PATCH 077/104] R_DrawPlanes: dont increment garbage ptr does not need to be there at all eitherways --- src/r_plane.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/r_plane.cpp b/src/r_plane.cpp index 8ef47f722..b2d30185d 100644 --- a/src/r_plane.cpp +++ b/src/r_plane.cpp @@ -720,7 +720,7 @@ void R_DrawPlanes(void) srb2::ThreadPool::Sema tp_sema; srb2::g_main_threadpool->begin_sema(); #endif - for (i = 0; i < MAXVISPLANES; i++, pl++) + for (i = 0; i < MAXVISPLANES; i++) { for (pl = visplanes[i]; pl; pl = pl->next) { @@ -755,7 +755,7 @@ void R_DrawSkyPlanes(void) srb2::ThreadPool::Sema tp_sema; srb2::g_main_threadpool->begin_sema(); #endif - for (i = 0; i < MAXVISPLANES; i++, pl++) + for (i = 0; i < MAXVISPLANES; i++) { for (pl = visplanes[i]; pl; pl = pl->next) { -- 2.54.0 From 80613a8a49a87084c7fe173aa7aa34cdd824b6de Mon Sep 17 00:00:00 2001 From: Alug Date: Wed, 5 Nov 2025 22:53:10 +0100 Subject: [PATCH 078/104] R_AllocClippingTables & R_AllocTextureColumnTables: fix nullptr arithmetic --- src/r_segs.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/r_segs.cpp b/src/r_segs.cpp index d1cbbf9c2..414221686 100644 --- a/src/r_segs.cpp +++ b/src/r_segs.cpp @@ -1718,7 +1718,7 @@ static void R_AllocClippingTables(size_t range) { // Check if it's in range of the openings #define CHECK(which) \ - if (which + drawseg->x1 >= oldopenings && which + drawseg->x1 <= oldlast) \ + if (which != NULL && which + drawseg->x1 >= oldopenings && which + drawseg->x1 <= oldlast) \ which = (which - oldopenings) + openings CHECK(drawseg->sprtopclip); CHECK(drawseg->sprbottomclip); @@ -1752,7 +1752,7 @@ static void R_AllocTextureColumnTables(size_t range) { // Check if it's in range of the tables #define CHECK(which) \ - if (which + drawseg->x1 >= oldtable && which + drawseg->x1 <= oldlast) \ + if (which != NULL && which + drawseg->x1 >= oldtable && which + drawseg->x1 <= oldlast) \ which = (which - oldtable) + texturecolumntable CHECK(drawseg->maskedtexturecol); CHECK(drawseg->thicksidecol); -- 2.54.0 From 67e1793f49951f69d2e88fe143d785e0c26d81fa Mon Sep 17 00:00:00 2001 From: Alug Date: Wed, 5 Nov 2025 23:03:25 +0100 Subject: [PATCH 079/104] software renderer: handle some float type related issues with slope drawers there were a bunch of cases where inf and nan float results were casted and used with integer things, which is undefined in c yes i did use ceepeepee for that crap, cause this wouldve been really annoying without templating if someone really wants that crap to use outside ceepeepee, feel free to make a bunch of wrappers cause im too lazy for that stuff --- src/cxxutil.hpp | 67 +++++++++++++++++++++++++++++++++++++++++++++ src/r_draw_span.cpp | 22 ++++++++------- src/r_segs.cpp | 10 ++++--- 3 files changed, 85 insertions(+), 14 deletions(-) diff --git a/src/cxxutil.hpp b/src/cxxutil.hpp index 591d7aa4d..91c1a8641 100644 --- a/src/cxxutil.hpp +++ b/src/cxxutil.hpp @@ -147,6 +147,73 @@ public: template NotNull(T) -> NotNull; +// does a super safe cast from floating point to interger types +// this prob could be better since i suck at ceepeepee +// but atleast we can just template shit to our desired types +template +static inline IntT floattoint(FloatT val) +{ + // :chaosleep: + static_assert(std::is_floating_point_v, "Input must be a floating-point type"); + static_assert(std::is_integral_v, "Output must be a integer type"); + + if (std::fpclassify(val) == FP_NAN) + return 0; // if stuffs not a number we sure screwed up lmao + + // treat inifinity as "int min/max" + if (std::fpclassify(val) == FP_INFINITE) + { + // yes infinity can be signed kek + if (std::signbit(val)) + return std::numeric_limits::min(); // negative infinity, so return min + else + return std::numeric_limits::max(); + } + + // make sure we fit into our targettype uwu + if (val > static_cast(std::numeric_limits::max())) + return std::numeric_limits::max(); + else if (val < static_cast(std::numeric_limits::min())) + return std::numeric_limits::min(); + + return static_cast(val); +} + +// safe float to fixed +// which handles nan and inf +// pretty much the same stuff as the above, but uh, idk how id use the above with this +template // can use both float and doubles yay +static inline int32_t floattofixed(FloatT val) +{ + // :chaosleep: + static_assert(std::is_floating_point_v, "Input must be a floating-point type"); + + // fixed_t is just an int32_t, i dont wanna include doomtype here if it can be avoided + + if (std::fpclassify(val) == FP_NAN) + return 0; // if stuffs not a number we sure screwed up lmao + + // treat inifinity as "int min/max" + if (std::fpclassify(val) == FP_INFINITE) + { + // yes infinity can be signed kek + if (std::signbit(val)) + return std::numeric_limits::min(); // negative infinity, so return min + else + return std::numeric_limits::max(); + } + + const FloatT ret = (val * 65536.0); + + // make sure we fit into our targettype uwu + if (ret > static_cast(std::numeric_limits::max())) + return std::numeric_limits::max(); + else if (ret < static_cast(std::numeric_limits::min())) + return std::numeric_limits::min(); + + return static_cast(ret); +} + } // namespace srb2 #endif // __SRB2_CXXUTIL_HPP__ diff --git a/src/r_draw_span.cpp b/src/r_draw_span.cpp index 11415d2d5..e5ee15463 100644 --- a/src/r_draw_span.cpp +++ b/src/r_draw_span.cpp @@ -28,6 +28,8 @@ #include #include +#include "cxxutil.hpp" + // ========================================================================== // SPANS // ========================================================================== @@ -315,10 +317,10 @@ static void R_DrawTiltedSpanTemplate(drawspandata_t* ds) endz = 1.f/iz; endu = uz*endz; endv = vz*endz; - stepu = (INT64)((endu - startu) * INVSPAN); - stepv = (INT64)((endv - startv) * INVSPAN); - u = (INT64)(startu); - v = (INT64)(startv); + stepu = srb2::floattoint((endu - startu) * INVSPAN); + stepv = srb2::floattoint((endv - startv) * INVSPAN); + u = srb2::floattoint(startu); + v = srb2::floattoint(startv); const INT32 x1 = ds->x1; @@ -345,8 +347,8 @@ static void R_DrawTiltedSpanTemplate(drawspandata_t* ds) { if (width == 1) { - u = (INT64)(startu); - v = (INT64)(startv); + u = srb2::floattoint(startu); + v = srb2::floattoint(startv); bit = ((v >> nflatyshift) & nflatmask) | (u >> nflatxshift); colormap = planezlight[tiltlight[ds->x1]] + colormap_diff; if constexpr (Type & DS_RIPPLE) @@ -366,10 +368,10 @@ static void R_DrawTiltedSpanTemplate(drawspandata_t* ds) endu = uz*endz; endv = vz*endz; left = 1.f/left; - stepu = (INT64)((endu - startu) * left); - stepv = (INT64)((endv - startv) * left); - u = (INT64)(startu); - v = (INT64)(startv); + stepu = srb2::floattoint((endu - startu) * left); + stepv = srb2::floattoint((endv - startv) * left); + u = srb2::floattoint(startu); + v = srb2::floattoint(startv); for (; width != 0; width--) { diff --git a/src/r_segs.cpp b/src/r_segs.cpp index 414221686..121920a69 100644 --- a/src/r_segs.cpp +++ b/src/r_segs.cpp @@ -30,6 +30,8 @@ #include "core/memory.h" +#include "cxxutil.hpp" + #define HEIGHTBITS 12 #define HEIGHTUNIT (1<leftpos.x = segleft.x = DoubleToFixed((b2*c1 - b1*c2)/det); - ds_p->leftpos.y = segleft.y = DoubleToFixed((a1*c2 - a2*c1)/det); + ds_p->leftpos.x = segleft.x = srb2::floattofixed((b2*c1 - b1*c2)/det); + ds_p->leftpos.y = segleft.y = srb2::floattofixed((a1*c2 - a2*c1)/det); // right temp = xtoviewangle[stop]+viewangle; @@ -1902,8 +1904,8 @@ void R_StoreWallRange(INT32 start, INT32 stop) det = a1*b2 - a2*b1; - ds_p->rightpos.x = segright.x = DoubleToFixed((b2*c1 - b1*c2)/det); - ds_p->rightpos.y = segright.y = DoubleToFixed((a1*c2 - a2*c1)/det); + ds_p->rightpos.x = segright.x = srb2::floattofixed((b2*c1 - b1*c2)/det); + ds_p->rightpos.y = segright.y = srb2::floattofixed((a1*c2 - a2*c1)/det); } #define SLOPEPARAMS(slope, end1, end2, normalheight) \ -- 2.54.0 From e9c2b982c6678c95318b86afb84ce896eb77069a Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 6 Nov 2025 17:37:04 +0100 Subject: [PATCH 080/104] smol cleanup JoyAxis stuff & g_game --- src/g_game.c | 163 +++++++++++++++++++++++++++------------------------ 1 file changed, 86 insertions(+), 77 deletions(-) diff --git a/src/g_game.c b/src/g_game.c index 125c88067..10c7af4e3 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -570,6 +570,7 @@ static void G_SetSaveGameModified(void) { if (!unlockables[i].conditionset) continue; + if (!unlockables[i].unlocked) { unlockables[i].unlocked = true; @@ -595,7 +596,7 @@ void G_SetGameModified(boolean silent, boolean major) G_SetSaveGameModified(); if (!silent) - CONS_Alert(CONS_NOTICE, M_GetText("Record Attack data will be saved to a seperate save file.\n")); + CONS_Alert(CONS_NOTICE, "Record Attack data will be saved to a seperate save file.\n"); // If in record attack recording, cancel it. if (modeattacking) @@ -634,6 +635,7 @@ const char *G_BuildMapName(INT32 map) map = gamemap-1; else map = prevmap; + map = G_RandMap(G_TOLFlag(cv_newgametype.value), map, false, 0, false, NULL)+1; } @@ -687,11 +689,12 @@ INT32 JoyAxis(axis_input_e axissel, UINT8 player) { INT32 retaxis; INT32 axisval; + INT32 deadzone; boolean flp = false; UINT8 pnum = player-1; - //find what axis to get + // find what axis to get switch (axissel) { case AXISTURN: @@ -750,45 +753,33 @@ INT32 JoyAxis(axis_input_e axissel, UINT8 player) { axisval /= 2; retaxis = joyxmove[pnum][axisval]; - - if (retaxis < (-JOYAXISRANGE)) - retaxis = -JOYAXISRANGE; - if (retaxis > (+JOYAXISRANGE)) - retaxis = +JOYAXISRANGE; - if (!Joystick[pnum].bGamepadStyle && axissel < AXISDEAD) - { - const INT32 jdeadzone = ((JOYAXISRANGE-1) * cv_xdeadzone[pnum].value) >> FRACBITS; - if (abs(retaxis) <= jdeadzone) - return 0; - } - - if (flp) - retaxis = -retaxis; // flip it around - - return retaxis; + deadzone = cv_xdeadzone[pnum].value; } else { axisval--; axisval /= 2; retaxis = joyymove[pnum][axisval]; - - if (retaxis < (-JOYAXISRANGE)) - retaxis = -JOYAXISRANGE; - if (retaxis > (+JOYAXISRANGE)) - retaxis = +JOYAXISRANGE; - if (!Joystick[pnum].bGamepadStyle && axissel < AXISDEAD) - { - const INT32 jdeadzone = ((JOYAXISRANGE-1) * cv_ydeadzone[pnum].value) >> FRACBITS; - if (abs(retaxis) <= jdeadzone) - return 0; - } - - if (flp) - retaxis = -retaxis; // flip it around - - return retaxis; + deadzone = cv_ydeadzone[pnum].value; } + + if (retaxis < (-JOYAXISRANGE)) + retaxis = -JOYAXISRANGE; + if (retaxis > (+JOYAXISRANGE)) + retaxis = +JOYAXISRANGE; + + if (!Joystick[pnum].bGamepadStyle && axissel < AXISDEAD) + { + const INT32 jdeadzone = ((JOYAXISRANGE-1) * deadzone) >> FRACBITS; + + if (abs(retaxis) <= jdeadzone) + return 0; + } + + if (flp) + retaxis = -retaxis; // flip it around + + return retaxis; } boolean InputDown(INT32 gc, UINT8 p) @@ -806,9 +797,9 @@ boolean InputDown(INT32 gc, UINT8 p) } } -INT32 localaiming[MAXSPLITSCREENPLAYERS]; -angle_t localangle[MAXSPLITSCREENPLAYERS]; -boolean camspin[MAXSPLITSCREENPLAYERS]; +INT32 localaiming[MAXSPLITSCREENPLAYERS] = {0}; +angle_t localangle[MAXSPLITSCREENPLAYERS] = {0}; +boolean camspin[MAXSPLITSCREENPLAYERS] = {0}; static fixed_t forwardmove[2] = {25<>16, 50<>16}; static fixed_t sidemove[2] = {2<>16, 4<>16}; @@ -1210,7 +1201,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics, UINT8 ssplayer) if (gamestate == GS_LEVEL) LUA_HookTiccmd(player, cmd, HOOK(PlayerCmd)); - //Reset away view if a command is given. + // Reset away view if a command is given. if (displayplayers[0] != consoleplayer && ssplayer == 1 && (cmd->forwardmove || cmd->sidemove || cmd->buttons)) { @@ -1261,7 +1252,7 @@ static void G_DoLoadLevel(boolean resetplayer) if (gamestate == GS_INTERMISSION) Y_EndIntermission(); - if (gamestate == GS_VOTING) + else if (gamestate == GS_VOTING) Y_EndVote(); G_SetGamestate(GS_LEVEL); @@ -2329,12 +2320,6 @@ void G_PlayerReborn(INT32 player) if (gametype == GT_COOP) P_FindEmerald(); // scan for emeralds to hunt for - - // Reset Nights score and max link to 0 on death - p->maxlink = 0; - - // If NiGHTS, find lowest mare to start with. - p->mare = 0; } // @@ -2353,22 +2338,25 @@ static boolean G_CheckSpot(INT32 playernum, mapthing_t *mthing) if (!mthing) return false; + x = mthing->x << FRACBITS; + y = mthing->y << FRACBITS; + if (!players[playernum].mo) { // first spawn of level for (i = 0; i < playernum; i++) + { if (playeringame[i] && players[i].mo - && players[i].mo->x == mthing->x << FRACBITS - && players[i].mo->y == mthing->y << FRACBITS) + && players[i].mo->x == x + && players[i].mo->y == y) { return false; } + } + return true; } - x = mthing->x << FRACBITS; - y = mthing->y << FRACBITS; - if (!K_CheckPlayersRespawnColliding(playernum, x, y)) return false; @@ -2870,17 +2858,23 @@ UINT8 G_GetGametypeColor(INT16 gt) */ INT16 G_TOLFlag(INT32 pgametype) { - if (!multiplayer) return TOL_SP; - if (pgametype == GT_COOP) return TOL_RACE; // SRB2kart - if (pgametype == GT_COMPETITION) return TOL_COMPETITION; - if (pgametype == GT_RACE) return TOL_RACE; - if (pgametype == GT_MATCH) return TOL_MATCH; - if (pgametype == GT_TEAMMATCH) return TOL_MATCH; - if (pgametype == GT_TAG) return TOL_TAG; - if (pgametype == GT_HIDEANDSEEK) return TOL_TAG; - if (pgametype == GT_CTF) return TOL_CTF; + if (!multiplayer) return TOL_SP; + + switch (pgametype) + { + case GT_COOP: return TOL_RACE; // SRB2kart + case GT_COMPETITION: return TOL_COMPETITION; + case GT_RACE: return TOL_RACE; + case GT_MATCH: return TOL_MATCH; + case GT_TEAMMATCH: return TOL_MATCH; + case GT_TAG: return TOL_TAG; + case GT_HIDEANDSEEK: return TOL_TAG; + case GT_CTF: return TOL_CTF; + default: + CONS_Alert(CONS_ERROR, "Unknown gametype! %d\n", pgametype); + break; + } - CONS_Alert(CONS_ERROR, M_GetText("Unknown gametype! %d\n"), pgametype); return INT16_MAX; } @@ -3063,6 +3057,7 @@ static void G_DoCompleted(void) K_StatRound(); for (i = 0; i < MAXPLAYERS; i++) + { if (playeringame[i]) { // SRB2Kart: exitlevel shouldn't get you the points @@ -3072,8 +3067,10 @@ static void G_DoCompleted(void) if (P_IsLocalPlayer(&players[i])) j++; } + G_PlayerFinishLevel(i); // take away cards and stuff } + } // play some generic music if there's no win/cool/lose music going on (for exitlevel commands) if (G_RaceGametype() && ((multiplayer && demo.playback) || j == splitscreen+1) && (cv_inttime.value > 0)) @@ -3217,10 +3214,14 @@ void G_AfterIntermission(void) return; } - else if (demo.recording && (modeattacking || demo.savemode != DSM_NOTSAVING)) - G_SaveDemo(); - else if (demo.recording) - G_ResetDemoRecording(); + + if (demo.recording) + { + if (modeattacking || demo.savemode != DSM_NOTSAVING) + G_SaveDemo(); + else + G_ResetDemoRecording(); + } if (modeattacking) // End the run. { @@ -3229,7 +3230,9 @@ void G_AfterIntermission(void) } if (mapheaderinfo[gamemap-1]->cutscenenum) // Start a custom cutscene. + { F_StartCustomCutscene(mapheaderinfo[gamemap-1]->cutscenenum-1, false, false); + } else { if (nextmap < 1100-1) @@ -3366,10 +3369,13 @@ static void G_DoContinued(void) // when something new is added. void G_EndGame(void) { - if (demo.recording && (modeattacking || demo.savemode != DSM_NOTSAVING)) - G_SaveDemo(); - else if (demo.recording) - G_ResetDemoRecording(); + if (demo.recording) + { + if (modeattacking || demo.savemode != DSM_NOTSAVING) + G_SaveDemo(); + else + G_ResetDemoRecording(); + } // Only do evaluation and credits in coop games. if (gametype == GT_COOP) @@ -3379,6 +3385,7 @@ void G_EndGame(void) F_StartCredits(); return; } + if (nextmap == 1101-1) // end game with evaluation { F_StartGameEvaluation(); @@ -3478,9 +3485,8 @@ void G_LoadGameData(void) modded = READUINT8(save.p); // Aha! Someone's been screwing with the save file! - if ((modded && !savemoddata)) - goto datacorrupt; - else if (modded != true && modded != false) + if ((modded && !savemoddata) || + (modded != true && modded != false)) goto datacorrupt; // TODO put another cipher on these things? meh, I don't care... @@ -3545,7 +3551,7 @@ void G_LoadGameData(void) return; // Landing point for corrupt gamedata - datacorrupt: +datacorrupt: { const char *gdfolder = "the SRB2Kart folder"; @@ -4266,18 +4272,21 @@ INT32 G_FindMapByNameOrCode(const char *mapname, char **realmapnamep) { if (mapname[0] == '*') // current map return gamemap; - else if (mapname[0] == '?' && mapheaderinfo[gamemap-1]) + + if (mapname[0] == '?' && mapheaderinfo[gamemap-1]) return G_RandMap(G_TOLFlag(gametype), gamemap-1, false, 0, false, NULL)+1; - else if (mapname[0] == '+' && mapheaderinfo[gamemap-1]) // next map + + if (mapname[0] == '+' && mapheaderinfo[gamemap-1]) // next map { newmapnum = mapheaderinfo[gamemap-1]->nextlevel; + if (newmapnum < 1 || newmapnum > NUMMAPS) { - CONS_Alert(CONS_ERROR, M_GetText("NextLevel (%d) is not a valid map.\n"), newmapnum); + CONS_Alert(CONS_ERROR, "NextLevel (%d) is not a valid map.\n", newmapnum); return 0; } - else - return newmapnum; + + return newmapnum; } } else if (mapnamelen == 2)/* maybe two digit code */ -- 2.54.0 From bce18e3d614538caceff0d71569bfe912bc1493f Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 6 Nov 2025 17:35:07 +0100 Subject: [PATCH 081/104] delet M_Memcpy was just a wrapper for memcpy eitherway so should make no difference other than avoid any confusion figured i could just use "sed" command lel --- src/command.c | 10 +++--- src/console.c | 4 +-- src/d_clisrv.c | 18 +++++----- src/d_net.c | 10 +++--- src/d_netfil.c | 4 +-- src/doomdef.h | 5 --- src/f_wipe.c | 4 +-- src/g_demo.c | 76 +++++++++++++++++++-------------------- src/g_game.c | 6 ++-- src/hardware/hw_bsp.c | 2 +- src/hardware/hw_cache.c | 8 ++--- src/hardware/hw_main.cpp | 4 +-- src/hardware/hw_md2.c | 4 +-- src/hardware/hw_model.c | 10 +++--- src/hardware/hw_shaders.c | 8 ++--- src/i_tcp.c | 4 +-- src/k_kart.c | 4 +-- src/lua_baselib.c | 2 +- src/m_fixed.c | 6 ++-- src/m_misc.c | 2 +- src/p_enemy.c | 12 +++---- src/p_mobj.c | 16 ++++----- src/p_setup.c | 36 +++++++++---------- src/p_spec.c | 8 ++--- src/r_data.c | 14 ++++---- src/r_draw.cpp | 2 +- src/r_patch.cpp | 10 +++--- src/r_patchrotation.cpp | 2 +- src/r_segs.cpp | 4 +-- src/r_skins.c | 2 +- src/r_things.cpp | 6 ++-- src/s_sound.c | 2 +- src/sdl/i_net.c | 6 ++-- src/sdl/sdl_sound.c | 10 +++--- src/v_video.c | 16 ++++----- src/w_wad.c | 4 +-- src/z_zone.cpp | 3 +- 37 files changed, 170 insertions(+), 174 deletions(-) diff --git a/src/command.c b/src/command.c index ab1b94433..459938aa8 100644 --- a/src/command.c +++ b/src/command.c @@ -142,7 +142,7 @@ void COM_BufInsertText(const char *ptext) templen = com_text.cursize; if (templen) { - temp = M_Memcpy(ZZ_Alloc(templen), com_text.data, templen); + temp = memcpy(ZZ_Alloc(templen), com_text.data, templen); VS_Clear(&com_text); } @@ -199,7 +199,7 @@ void COM_BufExecute(void) break; } - M_Memcpy(line, ptext, i); + memcpy(line, ptext, i); line[i] = 0; // flush the command text from the command buffer, _BEFORE_ @@ -1129,7 +1129,7 @@ void *VS_GetSpace(vsbuf_t *buf, size_t length) */ void VS_Write(vsbuf_t *buf, const void *data, size_t length) { - M_Memcpy(VS_GetSpace(buf, length), data, length); + memcpy(VS_GetSpace(buf, length), data, length); } /** Prints text in a variable buffer. Like VS_Write() plus a @@ -1146,9 +1146,9 @@ void VS_Print(vsbuf_t *buf, const char *data) len = strlen(data) + 1; if (buf->data[buf->cursize-1]) - M_Memcpy((UINT8 *)VS_GetSpace(buf, len), data, len); // no trailing 0 + memcpy((UINT8 *)VS_GetSpace(buf, len), data, len); // no trailing 0 else - M_Memcpy((UINT8 *)VS_GetSpace(buf, len-1) - 1, data, len); // write over trailing 0 + memcpy((UINT8 *)VS_GetSpace(buf, len-1) - 1, data, len); // write over trailing 0 } // ========================================================================= diff --git a/src/console.c b/src/console.c index 062e6ebf3..3172b9f20 100644 --- a/src/console.c +++ b/src/console.c @@ -521,7 +521,7 @@ static void CON_RecalcSize(void) oldcon_width = con_width; oldnumlines = con_totallines; oldcon_cy = con_cy; - M_Memcpy(tmp_buffer, con_buffer, CON_BUFFERSIZE); + memcpy(tmp_buffer, con_buffer, CON_BUFFERSIZE); if (conw < 1) con_width = (BASEVIDWIDTH>>3) - 2; @@ -547,7 +547,7 @@ static void CON_RecalcSize(void) { if (tmp_buffer[(i%oldnumlines)*oldcon_width]) { - M_Memcpy(string, &tmp_buffer[(i%oldnumlines)*oldcon_width], oldcon_width); + memcpy(string, &tmp_buffer[(i%oldnumlines)*oldcon_width], oldcon_width); conw = oldcon_width - 1; while (string[conw] == ' ' && conw) conw--; diff --git a/src/d_clisrv.c b/src/d_clisrv.c index db5b6b534..eb39f34f7 100644 --- a/src/d_clisrv.c +++ b/src/d_clisrv.c @@ -331,7 +331,7 @@ static void WriteNetXCmd(UINT8 *cmd, netxcmd_t id, const void *param, size_t npa cmd[cmd[0]] = (UINT8)id; if (param && nparam) { - M_Memcpy(&cmd[cmd[0]+1], param, nparam); + memcpy(&cmd[cmd[0]+1], param, nparam); cmd[0] = (UINT8)(cmd[0] + (UINT8)nparam); } } @@ -1585,7 +1585,7 @@ static void SV_SendServerInfo(INT32 node, tic_t servertime) MAXSERVERNAME); strncpy(netbuffer->u.serverinfo.mapname, G_BuildMapName(gamemap), sizeof(netbuffer->u.serverinfo.mapname)-1); - M_Memcpy(netbuffer->u.serverinfo.mapmd5, mapmd5, sizeof(netbuffer->u.serverinfo.mapmd5)); + memcpy(netbuffer->u.serverinfo.mapmd5, mapmd5, sizeof(netbuffer->u.serverinfo.mapmd5)); netbuffer->u.serverinfo.iszone = 0; @@ -4648,7 +4648,7 @@ void SV_StopServer(void) if (gamestate == GS_INTERMISSION) Y_EndIntermission(); - if (gamestate == GS_VOTING) + else if (gamestate == GS_VOTING) Y_EndVote(); G_SetGamestate(GS_NULL); @@ -4664,6 +4664,8 @@ void SV_StopServer(void) textcmdbuf[i] = textcmdbuf[i]->next; Z_Free(buf); } + + textcmdbuf[i] = NULL; } for (i = firstticstosend; i < firstticstosend + BACKUPTICS; i++) @@ -5687,7 +5689,7 @@ static void PT_TextCmd(INT32 netconsole, SINT8 node) DEBFILE(va("textcmd put in tic %u at position %d (player %d) ftts %u mk %u\n", tic, textcmd[0]+1, netconsole, firstticstosend, maketic)); - M_Memcpy(&textcmd[textcmd[0]+1], netbuffer->u.textcmd+1, netbuffer->u.textcmd[0]); + memcpy(&textcmd[textcmd[0]+1], netbuffer->u.textcmd+1, netbuffer->u.textcmd[0]); textcmd[0] += (UINT8)netbuffer->u.textcmd[0]; } } @@ -5794,7 +5796,7 @@ static void PT_ServerTics(SINT8 node) } if (i >= gametic) // Don't copy old net commands - M_Memcpy(D_GetTextcmd(i, playernum), txtpak, txtsize); + memcpy(D_GetTextcmd(i, playernum), txtpak, txtsize); txtpak += txtsize; } } @@ -6332,7 +6334,7 @@ static void CL_SendClientCmd(void) break; } - M_Memcpy(netbuffer->u.textcmd, localtextcmd[i], localtextcmd[i][0]+1); + memcpy(netbuffer->u.textcmd, localtextcmd[i], localtextcmd[i][0]+1); // All extra data have been sent if (HSendPacket(servernode, true, 0, localtextcmd[i][0]+1)) // Send can fail... @@ -6342,7 +6344,7 @@ static void CL_SendClientCmd(void) if (textcmdbuf[i] != NULL) { textcmdbuf_t *buf = textcmdbuf[i]; - M_Memcpy(localtextcmd[i], textcmdbuf[i]->cmd, textcmdbuf[i]->cmd[0]+1); + memcpy(localtextcmd[i], textcmdbuf[i]->cmd, textcmdbuf[i]->cmd[0]+1); textcmdbuf[i] = textcmdbuf[i]->next; Z_Free(buf); } @@ -6455,7 +6457,7 @@ static void SV_SendTics(void) { (*ntextcmd)++; WRITEUINT8(bufpos, j); - M_Memcpy(bufpos, textcmd, size + 1); + memcpy(bufpos, textcmd, size + 1); bufpos += size + 1; } } diff --git a/src/d_net.c b/src/d_net.c index 61492f2a8..d5b11f018 100644 --- a/src/d_net.c +++ b/src/d_net.c @@ -243,7 +243,7 @@ static boolean GetFreeAcknum(UINT8 *freeack) ackpak[i].length = doomcom->datalength; ackpak[i].senttime = I_GetTime(); ackpak[i].resentnum = 0; - M_Memcpy(ackpak[i].pak.raw, netbuffer, ackpak[i].length); + memcpy(ackpak[i].pak.raw, netbuffer, ackpak[i].length); *freeack = ackpak[i].acknum; @@ -412,7 +412,7 @@ void Net_SendAcks(INT32 node) { doomdata_t *netbuffer = DOOMCOM_DATA(doomcom); netbuffer->packettype = PT_NOTHING; - M_Memcpy(netbuffer->u.textcmd, nodes[node].acktosend, MAXACKTOSEND); + memcpy(netbuffer->u.textcmd, nodes[node].acktosend, MAXACKTOSEND); HSendPacket(node, false, 0, MAXACKTOSEND); } @@ -494,7 +494,7 @@ void Net_AckTicker(void) } DEBFILE(va("Resend ack %d, %u<%d at %u\n", ackpak[i].acknum, ackpak[i].senttime, NODETIMEOUT, I_GetTime())); - M_Memcpy(netbuffer, ackpak[i].pak.raw, ackpak[i].length); + memcpy(netbuffer, ackpak[i].pak.raw, ackpak[i].length); ackpak[i].senttime = I_GetTime(); ackpak[i].resentnum++; ackpak[i].nextacknum = node->nextacknum; @@ -1021,7 +1021,7 @@ boolean HSendPacket(INT32 node, boolean reliable, UINT8 acknum, size_t packetlen return false; } netbuffer->ack = netbuffer->ackreturn = 0; // don't hold over values from last packet sent/received - M_Memcpy(&reboundstore[rebound_head], netbuffer, + memcpy(&reboundstore[rebound_head], netbuffer, doomcom->datalength); reboundsize[rebound_head] = doomcom->datalength; rebound_head = (rebound_head+1) % MAXREBOUND; @@ -1107,7 +1107,7 @@ boolean HGetPacket(void) // Get a packet from self if (rebound_tail != rebound_head) { - M_Memcpy(netbuffer, &reboundstore[rebound_tail], reboundsize[rebound_tail]); + memcpy(netbuffer, &reboundstore[rebound_tail], reboundsize[rebound_tail]); doomcom->datalength = reboundsize[rebound_tail]; if (netbuffer->packettype == PT_NODETIMEOUT) doomcom->remotenode = netbuffer->u.textcmd[0]; diff --git a/src/d_netfil.c b/src/d_netfil.c index c82165788..6c9183eea 100644 --- a/src/d_netfil.c +++ b/src/d_netfil.c @@ -902,7 +902,7 @@ void SV_FileSendTicker(void) if (ram) { - M_Memcpy(p->data, &f->id.ram[transfer[i].position], size); + memcpy(p->data, &f->id.ram[transfer[i].position], size); } else if (fread(p->data, 1, size, transferFiles[f->fileid].file) != size) { @@ -1104,7 +1104,7 @@ void nameonly(char *s) ns = &(s[j+1]); len = strlen(ns); #if 0 - M_Memcpy(s, ns, len+1); + memcpy(s, ns, len+1); #else memmove(s, ns, len+1); #endif diff --git a/src/doomdef.h b/src/doomdef.h index 0329eb7f8..cf15d3fa8 100644 --- a/src/doomdef.h +++ b/src/doomdef.h @@ -453,11 +453,6 @@ extern char savegamename[256]; //TODO: delet this #define M_GetText(x) (x) -FUNCINLINE static ATTRINLINE void *M_Memcpy(void *dest, const void *src, size_t n) -{ - return memcpy(dest, src, n); -} - char *va(const char *format, ...) FUNCPRINTF; char *M_GetToken(const char *inputString); char *sizeu1(size_t num); diff --git a/src/f_wipe.c b/src/f_wipe.c index 4c3a067c6..7805957f5 100644 --- a/src/f_wipe.c +++ b/src/f_wipe.c @@ -257,7 +257,7 @@ static void F_DoWipe(fademask_t *fademask) // shortcut - memcpy source to work while (draw_linestogo--) { - M_Memcpy(w_base+relativepos, s_base+relativepos, draw_rowend-draw_rowstart); + memcpy(w_base+relativepos, s_base+relativepos, draw_rowend-draw_rowstart); relativepos += vid.width; } } @@ -266,7 +266,7 @@ static void F_DoWipe(fademask_t *fademask) // shortcut - memcpy target to work while (draw_linestogo--) { - M_Memcpy(w_base+relativepos, e_base+relativepos, draw_rowend-draw_rowstart); + memcpy(w_base+relativepos, e_base+relativepos, draw_rowend-draw_rowstart); relativepos += vid.width; } } diff --git a/src/g_demo.c b/src/g_demo.c index 3b1f5fce3..897238107 100644 --- a/src/g_demo.c +++ b/src/g_demo.c @@ -257,7 +257,7 @@ void G_ReadDemoExtraData(void) UINT8 kartspeed, kartweight; // Skin - M_Memcpy(name, demobuf.p, 16); + memcpy(name, demobuf.p, 16); demobuf.p += 16; SetPlayerSkin(p, name); @@ -274,7 +274,7 @@ void G_ReadDemoExtraData(void) if (extradata & DXD_COLOR) { // Color - M_Memcpy(name, demobuf.p, 16); + memcpy(name, demobuf.p, 16); demobuf.p += 16; for (i = 0; i < MAXSKINCOLORS; i++) if (fasticmp(KartColor_Names[i], name)) // SRB2kart @@ -289,7 +289,7 @@ void G_ReadDemoExtraData(void) if (extradata & DXD_NAME) { // Name - M_Memcpy(player_names[p],demobuf.p,16); + memcpy(player_names[p],demobuf.p,16); demobuf.p += 16; } @@ -395,7 +395,7 @@ void G_WriteDemoExtraData(void) // Skin memset(name, 0, 16); strncpy(name, skins[players[i].skin].name, 16); - M_Memcpy(demobuf.p, name, 16); + memcpy(demobuf.p, name, 16); demobuf.p += 16; WRITEUINT8(demobuf.p, skins[players[i].skin].kartspeed); @@ -407,7 +407,7 @@ void G_WriteDemoExtraData(void) // Color memset(name, 0, 16); strncpy(name, KartColor_Names[players[i].skincolor], 16); - M_Memcpy(demobuf.p, name, 16); + memcpy(demobuf.p, name, 16); demobuf.p += 16; } @@ -416,7 +416,7 @@ void G_WriteDemoExtraData(void) // Name memset(name, 0, 16); memcpy(name, player_names[i], 15); // Keeping 1 null byte for safety, sorry players with name containing more than 15 characters - M_Memcpy(demobuf.p, name, 16); + memcpy(demobuf.p, name, 16); demobuf.p += 16; } @@ -1670,7 +1670,7 @@ void G_BeginRecording(void) demoflags |= DF_LUAVARS; // Setup header. - M_Memcpy(demobuf.p, DEMOHEADER, 12); demobuf.p += 12; + memcpy(demobuf.p, DEMOHEADER, 12); demobuf.p += 12; WRITEUINT8(demobuf.p,VERSION); WRITEUINT8(demobuf.p,SUBVERSION); WRITEUINT16(demobuf.p,DEMOVERSION); @@ -1701,9 +1701,9 @@ void G_BeginRecording(void) demobuf.p += 16; // game data - M_Memcpy(demobuf.p, "PLAY", 4); demobuf.p += 4; + memcpy(demobuf.p, "PLAY", 4); demobuf.p += 4; WRITEINT16(demobuf.p,gamemap); - M_Memcpy(demobuf.p, mapmd5, 16); demobuf.p += 16; + memcpy(demobuf.p, mapmd5, 16); demobuf.p += 16; WRITEUINT8(demobuf.p, demoflags); WRITEUINT8(demobuf.p, gametype & 0xFF); @@ -1763,19 +1763,19 @@ void G_BeginRecording(void) // Name memset(name, 0, 16); memcpy(name, player_names[p], 15); - M_Memcpy(demobuf.p, name, 16); + memcpy(demobuf.p, name, 16); demobuf.p += 16; // Skin memset(name, 0, 16); strncpy(name, skins[player->skin].name, 16); - M_Memcpy(demobuf.p, name, 16); + memcpy(demobuf.p, name, 16); demobuf.p += 16; // Color memset(name, 0, 16); strncpy(name, KartColor_Names[player->skincolor], 16); - M_Memcpy(demobuf.p, name, 16); + memcpy(demobuf.p, name, 16); demobuf.p += 16; // Score, since Kart uses this to determine where you start on the map @@ -1834,19 +1834,19 @@ void G_WriteStanding(UINT8 ranking, char *name, INT32 skinnum, UINT8 color, UINT // Name memset(temp, 0, 16); strncpy(temp, name, 16); - M_Memcpy(demobuf.p,temp,16); + memcpy(demobuf.p,temp,16); demobuf.p += 16; // Skin memset(temp, 0, 16); strncpy(temp, skins[skinnum].name, 16); - M_Memcpy(demobuf.p,temp,16); + memcpy(demobuf.p,temp,16); demobuf.p += 16; // Color memset(temp, 0, 16); strncpy(temp, KartColor_Names[color], 16); - M_Memcpy(demobuf.p,temp,16); + memcpy(demobuf.p,temp,16); demobuf.p += 16; // Score/time/whatever @@ -2212,7 +2212,7 @@ void G_LoadDemoInfo(menudemo_t *pdemo) { case DEMOVERSION: // latest always supported // demo title - M_Memcpy(pdemo->title, info_p, 64); + memcpy(pdemo->title, info_p, 64); info_p += 64; break; #ifdef DEMO_COMPAT_100 @@ -2311,11 +2311,11 @@ void G_LoadDemoInfo(menudemo_t *pdemo) pdemo->standings[count].ranking = READUINT8(extrainfo_p); // Name - M_Memcpy(pdemo->standings[count].name, extrainfo_p, 16); + memcpy(pdemo->standings[count].name, extrainfo_p, 16); extrainfo_p += 16; // Skin - M_Memcpy(temp,extrainfo_p,16); + memcpy(temp,extrainfo_p,16); extrainfo_p += 16; pdemo->standings[count].skin = UINT8_MAX; @@ -2329,7 +2329,7 @@ void G_LoadDemoInfo(menudemo_t *pdemo) } // Color - M_Memcpy(temp,extrainfo_p,16); + memcpy(temp,extrainfo_p,16); extrainfo_p += 16; for (i = 0; i < MAXSKINCOLORS; i++) @@ -2494,7 +2494,7 @@ void G_LoadDemoTitle(menudemo_t *pdemo) { case DEMOVERSION: // latest always supported // demo title - M_Memcpy(pdemo->title, info_p, 64); + memcpy(pdemo->title, info_p, 64); // demo date char *demodate; @@ -2627,7 +2627,7 @@ void G_DoPlayDemo(char *defdemoname) { case DEMOVERSION: // latest always supported // demo title - M_Memcpy(demo.titlename, demobuf.p, 64); + memcpy(demo.titlename, demobuf.p, 64); demobuf.p += 64; break; #ifdef DEMO_COMPAT_100 @@ -2766,15 +2766,15 @@ void G_DoPlayDemo(char *defdemoname) if (demo.version == 0x0001) { // Player name - M_Memcpy(player_names[0],demobuf.p,16); + memcpy(player_names[0],demobuf.p,16); demobuf.p += 16; // Skin - M_Memcpy(skin,demobuf.p,16); + memcpy(skin,demobuf.p,16); demobuf.p += 16; // Color - M_Memcpy(color,demobuf.p,16); + memcpy(color,demobuf.p,16); demobuf.p += 16; demobuf.p += 5; // Backwards compat - some stats @@ -2933,16 +2933,16 @@ void G_DoPlayDemo(char *defdemoname) players[p].spectator = spectator; // Name - M_Memcpy(player_names[p],demobuf.p,16); + memcpy(player_names[p],demobuf.p,16); demobuf.p += 16; // Skin - M_Memcpy(skin,demobuf.p,16); + memcpy(skin,demobuf.p,16); demobuf.p += 16; SetPlayerSkin(p, skin); // Color - M_Memcpy(color,demobuf.p,16); + memcpy(color,demobuf.p,16); demobuf.p += 16; for (i = 0; i < MAXSKINCOLORS; i++) @@ -3101,7 +3101,7 @@ void G_AddGhost(char *defdemoname) return; } - M_Memcpy(md5, p, 16); p += 16; // demo checksum + memcpy(md5, p, 16); p += 16; // demo checksum for (gh = ghosts; gh; gh = gh->next) { @@ -3157,15 +3157,15 @@ void G_AddGhost(char *defdemoname) if (ghostversion == 0x0001) { // Player name (TODO: Display this somehow if it doesn't match cv_playername!) - M_Memcpy(name, p,16); + memcpy(name, p,16); p += 16; // Skin - M_Memcpy(skin, p,16); + memcpy(skin, p,16); p += 16; // Color - M_Memcpy(color, p,16); + memcpy(color, p,16); p += 16; // Ghosts do not have a player structure to put this in. @@ -3215,15 +3215,15 @@ void G_AddGhost(char *defdemoname) } // Player name (TODO: Display this somehow if it doesn't match cv_playername!) - M_Memcpy(name, p, 16); + memcpy(name, p, 16); p += 16; // Skin - M_Memcpy(skin, p, 16); + memcpy(skin, p, 16); p += 16; // Color - M_Memcpy(color, p, 16); + memcpy(color, p, 16); p += 16; p += 4; // score @@ -3260,7 +3260,7 @@ void G_AddGhost(char *defdemoname) gh = Z_Calloc(sizeof(demoghost), PU_LEVEL, NULL); gh->next = ghosts; gh->buffer = buffer; - M_Memcpy(gh->checksum, md5, 16); + memcpy(gh->checksum, md5, 16); gh->p = p; buffer = NULL; // buffer can't be freed now! @@ -3409,7 +3409,7 @@ void G_UpdateStaffGhostName(lumpnum_t l) if (ghostversion == 0x0001) { // Player name - M_Memcpy(dummystaffname, p,16); + memcpy(dummystaffname, p,16); dummystaffname[16] = '\0'; return; // Not really a failure but whatever } @@ -3431,7 +3431,7 @@ void G_UpdateStaffGhostName(lumpnum_t l) if (READUINT8(p) != 0) return; - M_Memcpy(dummystaffname, p, 16); + memcpy(dummystaffname, p, 16); dummystaffname[16] = '\0'; // Ok, no longer any reason to care, bye @@ -3625,7 +3625,7 @@ void G_SaveDemo(void) } WRITEUINT8(demobuf.p, DW_END); // Mark end of demo extra data. - M_Memcpy(p, demo.titlename, 64); // Write demo title here + memcpy(p, demo.titlename, 64); // Write demo title here p += 64; if (multiplayer) diff --git a/src/g_game.c b/src/g_game.c index 10c7af4e3..aa03a0524 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -1210,12 +1210,12 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics, UINT8 ssplayer) } } -ticcmd_t *G_CopyTiccmd(ticcmd_t* dest, const ticcmd_t* src, const size_t n) +ticcmd_t *G_CopyTiccmd(ticcmd_t* restrict dest, const ticcmd_t* restrict src, const size_t n) { - return M_Memcpy(dest, src, n*sizeof(*src)); + return memcpy(dest, src, n*sizeof(*src)); } -ticcmd_t *G_MoveTiccmd(ticcmd_t* dest, const ticcmd_t* src, const size_t n) +ticcmd_t *G_MoveTiccmd(ticcmd_t* restrict dest, const ticcmd_t* restrict src, const size_t n) { size_t i; for (i = 0; i < n; i++) diff --git a/src/hardware/hw_bsp.c b/src/hardware/hw_bsp.c index 8cad91168..a3f85d095 100644 --- a/src/hardware/hw_bsp.c +++ b/src/hardware/hw_bsp.c @@ -637,7 +637,7 @@ static void WalkBSPNode(INT32 bspnum, poly_t *poly, UINT16 *leafnode, fixed_t *b WalkBSPNode(bsp->children[0], frontpoly, &bsp->children[0],bsp->bbox[0]); // copy child bbox - M_Memcpy(bbox, bsp->bbox[0], 4*sizeof (fixed_t)); + memcpy(bbox, bsp->bbox[0], 4*sizeof (fixed_t)); } else I_Error("WalkBSPNode: no front poly?"); diff --git a/src/hardware/hw_cache.c b/src/hardware/hw_cache.c index 4d9fdb54c..ccd6980f3 100644 --- a/src/hardware/hw_cache.c +++ b/src/hardware/hw_cache.c @@ -346,7 +346,7 @@ static void HWR_GenerateTexture(INT32 texnum, GLMapTexture_t *gltex, boolean noe gltex->mipmap.colormap = Z_Calloc(sizeof(*gltex->mipmap.colormap), PU_HWRPATCHCOLMIPMAP, NULL); gltex->mipmap.colormap->source = colormap; - M_Memcpy(gltex->mipmap.colormap->data, colormap, 256 * sizeof(UINT8)); + memcpy(gltex->mipmap.colormap->data, colormap, 256 * sizeof(UINT8)); blockwidth = texture->width; blockheight = texture->height; @@ -970,7 +970,7 @@ void HWR_GetFlat(lumpnum_t flatlumpnum, boolean noencoremap) #endif glMipmap->colormap = Z_Calloc(sizeof(*glMipmap->colormap), PU_HWRPATCHCOLMIPMAP, NULL); glMipmap->colormap->source = colormap; - M_Memcpy(glMipmap->colormap->data, colormap, 256 * sizeof(UINT8)); + memcpy(glMipmap->colormap->data, colormap, 256 * sizeof(UINT8)); } if (!glMipmap->downloaded) @@ -1068,7 +1068,7 @@ void HWR_GetMappedPatch(patch_t *patch, const UINT8 *colormap) { if (memcmp(glMipmap->colormap->data, colormap, 256 * sizeof(UINT8))) { - M_Memcpy(glMipmap->colormap->data, colormap, 256 * sizeof(UINT8)); + memcpy(glMipmap->colormap->data, colormap, 256 * sizeof(UINT8)); HWR_UpdatePatchMipmap(patch, glMipmap); } else @@ -1091,7 +1091,7 @@ void HWR_GetMappedPatch(patch_t *patch, const UINT8 *colormap) newMipmap->colormap = Z_Calloc(sizeof(*newMipmap->colormap), PU_HWRPATCHCOLMIPMAP, NULL); newMipmap->colormap->source = colormap; - M_Memcpy(newMipmap->colormap->data, colormap, 256 * sizeof(UINT8)); + memcpy(newMipmap->colormap->data, colormap, 256 * sizeof(UINT8)); HWR_LoadPatchMipmap(patch, newMipmap); } diff --git a/src/hardware/hw_main.cpp b/src/hardware/hw_main.cpp index c45404159..09a1686c0 100644 --- a/src/hardware/hw_main.cpp +++ b/src/hardware/hw_main.cpp @@ -4276,8 +4276,8 @@ static void HWR_AddTransparentWall(FOutVector *wallVerts, FSurfaceInfo *pSurf, I { wallinfo_t *wallinfo = static_cast(HWR_CreateDrawNode(DRAWNODE_WALL)); - M_Memcpy(wallinfo->wallVerts, wallVerts, sizeof (wallinfo->wallVerts)); - M_Memcpy(&wallinfo->Surf, pSurf, sizeof (FSurfaceInfo)); + memcpy(wallinfo->wallVerts, wallVerts, sizeof (wallinfo->wallVerts)); + memcpy(&wallinfo->Surf, pSurf, sizeof (FSurfaceInfo)); wallinfo->texnum = texnum; wallinfo->noencore = noencore; wallinfo->blend = blend; diff --git a/src/hardware/hw_md2.c b/src/hardware/hw_md2.c index 10e5e4e1b..9f5fc2c2b 100644 --- a/src/hardware/hw_md2.c +++ b/src/hardware/hw_md2.c @@ -1058,7 +1058,7 @@ static void HWR_GetBlendedTexture(patch_t *patch, patch_t *blendgpatch, INT32 sk { if (memcmp(glMipmap->colormap->data, colormap, 256 * sizeof(UINT8))) { - M_Memcpy(glMipmap->colormap->data, colormap, 256 * sizeof(UINT8)); + memcpy(glMipmap->colormap->data, colormap, 256 * sizeof(UINT8)); HWR_CreateBlendedTexture(patch, blendgpatch, glMipmap, skinnum, color); GL_UpdateTexture(glMipmap); } @@ -1085,7 +1085,7 @@ static void HWR_GetBlendedTexture(patch_t *patch, patch_t *blendgpatch, INT32 sk newMipmap->colormap = Z_Calloc(sizeof(*newMipmap->colormap), PU_HWRPATCHCOLMIPMAP, NULL); newMipmap->colormap->source = colormap; - M_Memcpy(newMipmap->colormap->data, colormap, 256 * sizeof(UINT8)); + memcpy(newMipmap->colormap->data, colormap, 256 * sizeof(UINT8)); HWR_CreateBlendedTexture(patch, blendgpatch, newMipmap, skinnum, color); diff --git a/src/hardware/hw_model.c b/src/hardware/hw_model.c index 811ac3b67..8698365e4 100644 --- a/src/hardware/hw_model.c +++ b/src/hardware/hw_model.c @@ -242,7 +242,7 @@ void GenerateVertexNormals(model_t *model) float *vertPtr = frame->vertices; float *oldNormals; - M_Memcpy(newNormals, frame->normals, sizeof(float)*3*mesh->numTriangles*3); + memcpy(newNormals, frame->normals, sizeof(float)*3*mesh->numTriangles*3); for (k = 0; k < mesh->numVertices; k++) { @@ -402,7 +402,7 @@ void Optimize(model_t *model) char *destByte; char *srcByte; - M_Memcpy(&newMesh->uvs[uvCount], + memcpy(&newMesh->uvs[uvCount], curMesh->uvs, sizeof(float)*2*curMesh->numTriangles*3); @@ -410,13 +410,13 @@ void Optimize(model_t *model) dest = (float*)newMesh->frames[0].vertices; src = (float*)curMesh->frames[0].vertices; - M_Memcpy(&dest[vertCount], + memcpy(&dest[vertCount], src, sizeof(float)*3*curMesh->numTriangles*3); dest = (float*)newMesh->frames[0].normals; src = (float*)curMesh->frames[0].normals; - M_Memcpy(&dest[vertCount], + memcpy(&dest[vertCount], src, sizeof(float)*3*curMesh->numTriangles*3); @@ -427,7 +427,7 @@ void Optimize(model_t *model) if (srcByte) { - M_Memcpy(&destByte[colorCount], + memcpy(&destByte[colorCount], srcByte, sizeof(char)*4*curMesh->numTriangles*3); } diff --git a/src/hardware/hw_shaders.c b/src/hardware/hw_shaders.c index 19aea915e..28f8e46d7 100644 --- a/src/hardware/hw_shaders.c +++ b/src/hardware/hw_shaders.c @@ -201,7 +201,7 @@ static char *HWR_PreprocessShader(char *original) CONS_Alert(CONS_ERROR, "HWR_PreprocessShader: Syntax error in #version. Expected version with 3 digits, but got %d digits.\n", version_number_len); return NULL; } - M_Memcpy(shader_glsl_version, read_pos, 3); + memcpy(shader_glsl_version, read_pos, 3); ADVANCE(version_number_len) version_len = (read_pos - original) - version_pos; whitespace_len = strspn(read_pos, WHITESPACE_CHARS); @@ -304,7 +304,7 @@ static char *HWR_PreprocessShader(char *original) { strcpy(write_pos, VERSION_PART); write_pos += sizeof(VERSION_PART) - 1; - M_Memcpy(write_pos, shader_glsl_version, 3); + memcpy(write_pos, shader_glsl_version, 3); write_pos += 3; strcpy(write_pos, line_ending); write_pos += line_ending_len; @@ -344,7 +344,7 @@ static char *HWR_PreprocessShader(char *original) } // Copy the original shader. - M_Memcpy(write_pos, read_pos, original_len); + memcpy(write_pos, read_pos, original_len); // Erase the original #version directive, if it exists and was copied. if (new_len != original_len && version_pos != -1) @@ -573,7 +573,7 @@ void HWR_LoadCustomShadersFromFile(UINT16 wadnum, boolean PK3) size = W_LumpLengthPwad(wadnum, lump); line = Z_Malloc(size+1, PU_STATIC, NULL); - M_Memcpy(line, shaderdef, size); + memcpy(line, shaderdef, size); line[size] = '\0'; stoken = strtok(line, "\r\n "); diff --git a/src/i_tcp.c b/src/i_tcp.c index 531db4ab9..5b6a0bf08 100644 --- a/src/i_tcp.c +++ b/src/i_tcp.c @@ -670,7 +670,7 @@ static boolean SOCK_Get(void) { const time_t curTime = time(NULL); - M_Memcpy(&clientaddress[j], &fromaddress, fromlen); + memcpy(&clientaddress[j], &fromaddress, fromlen); nodesocket[j] = mysockets[n]; DEBFILE(va("New node detected: node:%d address:%s\n", j, SOCK_GetNodeAddress(j))); @@ -1485,7 +1485,7 @@ static boolean SOCK_Ban(INT32 node) ban = numbans; AddBannedIndex(); - M_Memcpy(&banned[ban].address, &clientaddress[node], sizeof (mysockaddr_t)); + memcpy(&banned[ban].address, &clientaddress[node], sizeof (mysockaddr_t)); if (banned[ban].address.any.sa_family == AF_INET) { diff --git a/src/k_kart.c b/src/k_kart.c index 3f335a5bb..1383e4f7c 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -2860,9 +2860,9 @@ void K_SpawnKartExplosion(fixed_t x, fixed_t y, fixed_t z, fixed_t radius, INT32 v[3] = FRACUNIT; res = VectorMatrixMultiply(v, *RotateXMatrix(rotangle)); - M_Memcpy(&v, res, sizeof (v)); + memcpy(&v, res, sizeof (v)); res = VectorMatrixMultiply(v, *RotateZMatrix(closestangle)); - M_Memcpy(&v, res, sizeof (v)); + memcpy(&v, res, sizeof (v)); finalx = x + v[0]; finaly = y + v[1]; diff --git a/src/lua_baselib.c b/src/lua_baselib.c index c6b87193c..1cac121b7 100644 --- a/src/lua_baselib.c +++ b/src/lua_baselib.c @@ -60,7 +60,7 @@ static int lib_concat(lua_State *L) return luaL_error(L, LUA_QL("tostring") " must return a string to " LUA_QL("__add")); r = Z_Realloc(r, rl+sl, PU_STATIC, NULL); - M_Memcpy(r+rl, s, sl); + memcpy(r+rl, s, sl); rl += sl; lua_pop(L, 1); /* pop result */ } diff --git a/src/m_fixed.c b/src/m_fixed.c index c1bb0cf05..d7aa13254 100644 --- a/src/m_fixed.c +++ b/src/m_fixed.c @@ -101,7 +101,7 @@ vector2_t *FV2_UnLoad(vector2_t *vec, fixed_t *x, fixed_t *y) vector2_t *FV2_Copy(vector2_t *a_o, const vector2_t *a_i) { - return M_Memcpy(a_o, a_i, sizeof(vector2_t)); + return memcpy(a_o, a_i, sizeof(vector2_t)); } vector2_t *FV2_AddEx(const vector2_t *a_i, const vector2_t *a_c, vector2_t *a_o) @@ -250,7 +250,7 @@ vector3_t *FV3_UnLoad(vector3_t *vec, fixed_t *x, fixed_t *y, fixed_t *z) vector3_t *FV3_Copy(vector3_t *a_o, const vector3_t *a_i) { - return M_Memcpy(a_o, a_i, sizeof(vector3_t)); + return memcpy(a_o, a_i, sizeof(vector3_t)); } vector3_t *FV3_AddEx(const vector3_t *a_i, const vector3_t *a_c, vector3_t *a_o) @@ -813,7 +813,7 @@ void FM_MultMatrix(matrix_t *dest, const matrix_t *multme) R(i, j) = FixedMul(D(i, 0), M(0, j)) + FixedMul(D(i, 1), M(1, j)) + FixedMul(D(i, 2), M(2, j)) + FixedMul(D(i, 3), M(3, j)); } - M_Memcpy(dest, &result, sizeof(matrix_t)); + memcpy(dest, &result, sizeof(matrix_t)); #undef R #undef D diff --git a/src/m_misc.c b/src/m_misc.c index 58e4b191e..655a28a24 100644 --- a/src/m_misc.c +++ b/src/m_misc.c @@ -1686,7 +1686,7 @@ char *M_GetToken(const char *inputString) // Assign the memory. Don't forget an extra byte for the end of the string! texturesToken = (char *)Z_Malloc((texturesTokenLength+1)*sizeof(char),PU_STATIC,NULL); // Copy the string. - M_Memcpy(texturesToken, stringToUse+startPos, (size_t)texturesTokenLength); + memcpy(texturesToken, stringToUse+startPos, (size_t)texturesTokenLength); // Make the final character NUL. texturesToken[texturesTokenLength] = '\0'; return texturesToken; diff --git a/src/p_enemy.c b/src/p_enemy.c index 6fd3f3844..a487eb328 100644 --- a/src/p_enemy.c +++ b/src/p_enemy.c @@ -945,9 +945,9 @@ void A_PointyThink(void *thing) v[3] = FRACUNIT; res = VectorMatrixMultiply(v, *RotateXMatrix(FixedAngle(actor->lastlook+i))); - M_Memcpy(&v, res, sizeof (v)); + memcpy(&v, res, sizeof (v)); res = VectorMatrixMultiply(v, *RotateZMatrix(actor->angle+ANGLE_180)); - M_Memcpy(&v, res, sizeof (v)); + memcpy(&v, res, sizeof (v)); P_UnsetThingPosition(ball); ball->x = actor->x + v[0]; @@ -4929,9 +4929,9 @@ void A_MaceRotate(void *thing) // Calculate the angle matrixes for the link. res = VectorMatrixMultiply(v, *RotateXMatrix(FixedAngle(actor->threshold))); - M_Memcpy(&v, res, sizeof(v)); + memcpy(&v, res, sizeof(v)); res = VectorMatrixMultiply(v, *RotateZMatrix(actor->target->health << ANGLETOFINESHIFT)); - M_Memcpy(&v, res, sizeof(v)); + memcpy(&v, res, sizeof(v)); } // Rotating Chain. else @@ -4950,9 +4950,9 @@ void A_MaceRotate(void *thing) // Calculate the angle matrixes for the link. res = VectorMatrixMultiply(v, *RotateXMatrix(actor->target->threshold << ANGLETOFINESHIFT)); - M_Memcpy(&v, res, sizeof(v)); + memcpy(&v, res, sizeof(v)); res = VectorMatrixMultiply(v, *RotateZMatrix(actor->target->health << ANGLETOFINESHIFT)); - M_Memcpy(&v, res, sizeof(v)); + memcpy(&v, res, sizeof(v)); } // Add on the appropriate distances to the actor's co-ordinates. diff --git a/src/p_mobj.c b/src/p_mobj.c index 2bd58e8cf..86261a644 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -5459,9 +5459,9 @@ static void P_MoveHoop(mobj_t *mobj) v[3] = FRACUNIT; res = VectorMatrixMultiply(v, *RotateXMatrix(FixedAngle(mobj->target->movedir*FRACUNIT))); - M_Memcpy(&v, res, sizeof (v)); + memcpy(&v, res, sizeof (v)); res = VectorMatrixMultiply(v, *RotateZMatrix(FixedAngle(mobj->target->movecount*FRACUNIT))); - M_Memcpy(&v, res, sizeof (v)); + memcpy(&v, res, sizeof (v)); finalx = x + v[0]; finaly = y + v[1]; @@ -5527,9 +5527,9 @@ void P_SpawnHoopOfSomething(fixed_t x, fixed_t y, fixed_t z, fixed_t radius, INT v[3] = FRACUNIT; res = VectorMatrixMultiply(v, *RotateXMatrix(rotangle)); - M_Memcpy(&v, res, sizeof (v)); + memcpy(&v, res, sizeof (v)); res = VectorMatrixMultiply(v, *RotateZMatrix(closestangle)); - M_Memcpy(&v, res, sizeof (v)); + memcpy(&v, res, sizeof (v)); finalx = x + v[0]; finaly = y + v[1]; @@ -5566,9 +5566,9 @@ void P_SpawnParaloop(fixed_t x, fixed_t y, fixed_t z, fixed_t radius, INT32 numb v[3] = FRACUNIT; res = VectorMatrixMultiply(v, *RotateXMatrix(rotangle)); - M_Memcpy(&v, res, sizeof (v)); + memcpy(&v, res, sizeof (v)); res = VectorMatrixMultiply(v, *RotateZMatrix(closestangle)); - M_Memcpy(&v, res, sizeof (v)); + memcpy(&v, res, sizeof (v)); finalx = x + v[0]; finaly = y + v[1]; @@ -11815,9 +11815,9 @@ static void P_SpawnNiGHTSHoop(fixed_t x, fixed_t y, fixed_t z, fixed_t hoopsize, v[3] = FRACUNIT; res = VectorMatrixMultiply(v, *RotateXMatrix(FixedAngle(spewangle))); - M_Memcpy(&v, res, sizeof (v)); + memcpy(&v, res, sizeof (v)); res = VectorMatrixMultiply(v, *RotateZMatrix(closestangle)); - M_Memcpy(&v, res, sizeof (v)); + memcpy(&v, res, sizeof (v)); mobj = P_SpawnMobj(x + v[0], y + v[1], z + v[2], type); diff --git a/src/p_setup.c b/src/p_setup.c index 73445b6b3..f331b9dee 100644 --- a/src/p_setup.c +++ b/src/p_setup.c @@ -806,7 +806,7 @@ static void P_LoadSectors(UINT8 *data) skyflatnum = P_AddLevelFlat(SKYFLATNAME, foundflats); // copy table for global usage - levelflats = M_Memcpy(Z_Calloc(numlevelflats * sizeof (*levelflats), PU_LEVEL, NULL), foundflats, numlevelflats * sizeof (levelflat_t)); + levelflats = memcpy(Z_Calloc(numlevelflats * sizeof (*levelflats), PU_LEVEL, NULL), foundflats, numlevelflats * sizeof (levelflat_t)); free(foundflats); // search for animated flats and set up @@ -1177,10 +1177,10 @@ static void P_LoadLineDefs2(void) len += strlen(sides[ld->sidenum[1]].text); ld->text = Z_Malloc(len, PU_LEVEL, NULL); - M_Memcpy(ld->text, sides[ld->sidenum[0]].text, strlen(sides[ld->sidenum[0]].text)+1); + memcpy(ld->text, sides[ld->sidenum[0]].text, strlen(sides[ld->sidenum[0]].text)+1); if (ld->sidenum[1] != 0xffff && sides[ld->sidenum[1]].text) - M_Memcpy(ld->text+strlen(ld->text)+1, sides[ld->sidenum[1]].text, strlen(sides[ld->sidenum[1]].text)+1); + memcpy(ld->text+strlen(ld->text)+1, sides[ld->sidenum[1]].text, strlen(sides[ld->sidenum[1]].text)+1); } break; @@ -1309,14 +1309,14 @@ static void P_LoadSideChangeMusic(boolean firstside, mapsidedef_t *msd, side_t * if (msd->bottomtexture[0] != '-' || msd->bottomtexture[1] != '\0') { - M_Memcpy(process,msd->bottomtexture,8); + memcpy(process,msd->bottomtexture,8); process[8] = '\0'; sd->bottomtexture = get_number(process); } if (!(msd->midtexture[0] == '-' && msd->midtexture[1] == '\0') || msd->midtexture[1] != '\0') { - M_Memcpy(process,msd->midtexture,8); + memcpy(process,msd->midtexture,8); process[8] = '\0'; sd->midtexture = get_number(process); } @@ -1326,15 +1326,15 @@ static void P_LoadSideChangeMusic(boolean firstside, mapsidedef_t *msd, side_t * if (firstside || msd->toptexture[0] != '-' || msd->toptexture[1] != '\0') { - M_Memcpy(process,msd->toptexture,8); + memcpy(process,msd->toptexture,8); process[8] = '\0'; // If they type in O_ or D_ and their music name, just shrug, // then copy the rest instead. if ((process[0] == 'O' || process[0] == 'D') && process[7]) - M_Memcpy(sd->text, process+2, 6); + memcpy(sd->text, process+2, 6); else // Assume it's a proper music name. - M_Memcpy(sd->text, process, 6); + memcpy(sd->text, process, 6); sd->text[6] = 0; } else @@ -1382,7 +1382,7 @@ static void P_LoadSidedefs(void *data) if (msd->toptexture[0] != '-' || msd->toptexture[1] != '\0') { char process[8+1]; - M_Memcpy(process,msd->toptexture,8); + memcpy(process,msd->toptexture,8); process[8] = '\0'; sd->toptexture = get_number(process); } @@ -1401,11 +1401,11 @@ static void P_LoadSidedefs(void *data) if (msd->toptexture[0] == '-' && msd->toptexture[1] == '\0') break; else - M_Memcpy(process,msd->toptexture,8); + memcpy(process,msd->toptexture,8); if (msd->midtexture[0] != '-' || msd->midtexture[1] != '\0') - M_Memcpy(process+strlen(process), msd->midtexture, 8); + memcpy(process+strlen(process), msd->midtexture, 8); if (msd->bottomtexture[0] != '-' || msd->bottomtexture[1] != '\0') - M_Memcpy(process+strlen(process), msd->bottomtexture, 8); + memcpy(process+strlen(process), msd->bottomtexture, 8); sd->toptexture = get_number(process); break; @@ -1418,13 +1418,13 @@ static void P_LoadSidedefs(void *data) if (msd->toptexture[0] == '-' && msd->toptexture[1] == '\0') break; else - M_Memcpy(process,msd->toptexture,8); + memcpy(process,msd->toptexture,8); if (msd->midtexture[0] != '-' || msd->midtexture[1] != '\0') - M_Memcpy(process+strlen(process), msd->midtexture, 8); + memcpy(process+strlen(process), msd->midtexture, 8); if (msd->bottomtexture[0] != '-' || msd->bottomtexture[1] != '\0') - M_Memcpy(process+strlen(process), msd->bottomtexture, 8); + memcpy(process+strlen(process), msd->bottomtexture, 8); sd->text = Z_Malloc(strlen(process)+1, PU_LEVEL, NULL); - M_Memcpy(sd->text, process, strlen(process)+1); + memcpy(sd->text, process, strlen(process)+1); break; } @@ -1887,7 +1887,7 @@ static void P_LoadReject(UINT8 *data, size_t count) else { rejectmatrix = Z_Malloc(count, PU_LEVEL, NULL); // allocate memory for the reject matrix - M_Memcpy(rejectmatrix, data, count); // copy the data into it + memcpy(rejectmatrix, data, count); // copy the data into it } } @@ -2201,7 +2201,7 @@ static void P_MakeMapMD5(virtres_t *virt, void *dest) for (i = 0; i < 16; i++) resmd5[i] = (linemd5[i] + sectormd5[i] + thingmd5[i] + sidedefmd5[i]) & 0xFF; - M_Memcpy(dest, &resmd5, 16); + memcpy(dest, &resmd5, 16); } static void P_LoadMapFromFile(void) diff --git a/src/p_spec.c b/src/p_spec.c index e08030e9e..c7a6dc15f 100644 --- a/src/p_spec.c +++ b/src/p_spec.c @@ -252,10 +252,10 @@ void P_InitPicAnims(void) // Populate the new array for (currentPos = animatedLump; *currentPos != UINT8_MAX; i++, currentPos+=23) { - M_Memcpy(&(animdefs[i].istexture), currentPos, 1); // istexture, 1 byte - M_Memcpy(animdefs[i].endname, (currentPos + 1), 9); // endname, 9 bytes - M_Memcpy(animdefs[i].startname, (currentPos + 10), 9); // startname, 9 bytes - M_Memcpy(&(animdefs[i].speed), (currentPos + 19), 4); // speed, 4 bytes + memcpy(&(animdefs[i].istexture), currentPos, 1); // istexture, 1 byte + memcpy(animdefs[i].endname, (currentPos + 1), 9); // endname, 9 bytes + memcpy(animdefs[i].startname, (currentPos + 10), 9); // startname, 9 bytes + memcpy(&(animdefs[i].speed), (currentPos + 19), 4); // speed, 4 bytes } Z_Free(animatedLump); diff --git a/src/r_data.c b/src/r_data.c index 3077326ad..4dc6653ea 100644 --- a/src/r_data.c +++ b/src/r_data.c @@ -269,7 +269,7 @@ static inline void R_DrawColumnInCache(column_t *patch, UINT8 *cache, texpatch_t count = cacheheight - position; if (count > 0) - M_Memcpy(cache + position, source, count); + memcpy(cache + position, source, count); patch = (column_t *)((UINT8 *)patch + patch->length + 4); } @@ -412,7 +412,7 @@ UINT8 *R_GenerateTexture(size_t texnum) texture->holes = true; blocksize = lumplength; block = Z_Calloc(blocksize, PU_LEVEL, &texturecache[texnum]); // will change tag at end of this function - M_Memcpy(block, realpatch, blocksize); + memcpy(block, realpatch, blocksize); texturememory += blocksize; // use the patch's column lookup @@ -621,7 +621,7 @@ Rloadtextures (INT32 i, INT32 w) texture = textures[i] = Z_Calloc(sizeof(texture_t) + sizeof(texpatch_t), PU_STATIC, NULL); // Set texture properties. - M_Memcpy(texture->name, W_CheckNameForNumPwad(wadnum, lumpnum), sizeof(texture->name)); + memcpy(texture->name, W_CheckNameForNumPwad(wadnum, lumpnum), sizeof(texture->name)); texture->hash = quickncasehash(texture->name, 8); texture->width = SHORT(patchlump.width); @@ -854,7 +854,7 @@ static texpatch_t *R_ParsePatch(boolean actuallyLoadPatch) Z_Free(patchName); } patchName = (char *)Z_Malloc((texturesTokenLength+1)*sizeof(char),PU_STATIC,NULL); - M_Memcpy(patchName,texturesToken,texturesTokenLength*sizeof(char)); + memcpy(patchName,texturesToken,texturesTokenLength*sizeof(char)); patchName[texturesTokenLength] = '\0'; } @@ -985,7 +985,7 @@ static texture_t *R_ParseTexture(boolean actuallyLoadTexture) else { memset(&newTextureName, 0, 9); - M_Memcpy(newTextureName, texturesToken, texturesTokenLength); + memcpy(newTextureName, texturesToken, texturesTokenLength); // ^^ we've confirmed that the token is <= 8 characters so it will never overflow a 9 byte char buffer strupr(newTextureName); // Just do this now so we don't have to worry about it } @@ -1077,7 +1077,7 @@ static texture_t *R_ParseTexture(boolean actuallyLoadTexture) { // Allocate memory for a zero-patch texture. Obviously, we'll be adding patches momentarily. resultTexture = (texture_t *)Z_Calloc(sizeof(texture_t), PU_STATIC, NULL); - M_Memcpy(resultTexture->name, newTextureName, 8); + memcpy(resultTexture->name, newTextureName, 8); resultTexture->hash = quickncasehash(newTextureName, 8); resultTexture->width = newTextureWidth; resultTexture->height = newTextureHeight; @@ -1104,7 +1104,7 @@ static texture_t *R_ParseTexture(boolean actuallyLoadTexture) // Make room for the new patch resultTexture = Z_Realloc(resultTexture, sizeof(texture_t) + (resultTexture->patchcount+1)*sizeof(texpatch_t), PU_STATIC, NULL); // Populate the uninitialized values in the new patch entry of our array - M_Memcpy(&resultTexture->patches[resultTexture->patchcount], newPatch, sizeof(texpatch_t)); + memcpy(&resultTexture->patches[resultTexture->patchcount], newPatch, sizeof(texpatch_t)); // Account for the new number of patches in the texture resultTexture->patchcount++; // Then free up the memory assigned to R_ParsePatch, as it's unneeded now diff --git a/src/r_draw.cpp b/src/r_draw.cpp index 39f8918bb..a1bbbbc96 100644 --- a/src/r_draw.cpp +++ b/src/r_draw.cpp @@ -655,7 +655,7 @@ void R_VideoErase(size_t ofs, INT32 count) // is not optimal, e.g. byte by byte on // a 32bit CPU, as GNU GCC/Linux libc did // at one point. - M_Memcpy(vid.screens[0] + ofs, vid.screens[1] + ofs, count); + memcpy(vid.screens[0] + ofs, vid.screens[1] + ofs, count); } // ========================================================================== diff --git a/src/r_patch.cpp b/src/r_patch.cpp index 7510520dd..515f5ea38 100644 --- a/src/r_patch.cpp +++ b/src/r_patch.cpp @@ -147,7 +147,7 @@ static void R_ParseSpriteInfo(boolean spr2) else { memset(&newSpriteName, 0, 5); - M_Memcpy(newSpriteName, sprinfoToken, sprinfoTokenLength); + memcpy(newSpriteName, sprinfoToken, sprinfoTokenLength); // ^^ we've confirmed that the token is == 4 characters so it will never overflow a 5 byte char buffer strupr(newSpriteName); // Just do this now so we don't have to worry about it } @@ -211,7 +211,7 @@ static void R_ParseSpriteInfo(boolean spr2) // copy skin name yada yada sprinfoTokenLength = strlen(sprinfoToken); skinName = (char *)Z_Malloc((sprinfoTokenLength+1)*sizeof(char),PU_STATIC,NULL); - M_Memcpy(skinName,sprinfoToken,sprinfoTokenLength*sizeof(char)); + memcpy(skinName,sprinfoToken,sprinfoTokenLength*sizeof(char)); skinName[sprinfoTokenLength] = '\0'; strlwr(skinName); Z_Free(sprinfoToken); @@ -240,11 +240,11 @@ static void R_ParseSpriteInfo(boolean spr2) skin = &localskins[allskins[skinnum].localnum]; else skin = &skins[allskins[skinnum].localnum]; - M_Memcpy(&skin->sprinfo, info, sizeof(spriteinfo_t)); + memcpy(&skin->sprinfo, info, sizeof(spriteinfo_t)); } } else - M_Memcpy(&spriteinfo[sprnum], info, sizeof(spriteinfo_t)); + memcpy(&spriteinfo[sprnum], info, sizeof(spriteinfo_t)); } else { @@ -371,7 +371,7 @@ patch_t *Patch_Create(softwarepatch_t *source, size_t srcsize, void *dest) I_Error("Patch_Create: no column data!"); patch->columns = static_cast(Z_Calloc(colsize, PU_PATCH_DATA, NULL)); - M_Memcpy(patch->columns, ((UINT8 *)source + LONG(source->columnofs[0])), colsize); + memcpy(patch->columns, ((UINT8 *)source + LONG(source->columnofs[0])), colsize); } return patch; diff --git a/src/r_patchrotation.cpp b/src/r_patchrotation.cpp index ebf8960e6..5d4b5478c 100644 --- a/src/r_patchrotation.cpp +++ b/src/r_patchrotation.cpp @@ -241,7 +241,7 @@ void RotatedPatch_DoRotation(rotsprite_t *rotsprite, patch_t *patch, INT32 angle while (dy--) { - M_Memcpy(dest, src, width * sizeof(UINT16)); + memcpy(dest, src, width * sizeof(UINT16)); dest += width; src += newwidth; } diff --git a/src/r_segs.cpp b/src/r_segs.cpp index 121920a69..c6cb63bf5 100644 --- a/src/r_segs.cpp +++ b/src/r_segs.cpp @@ -3003,14 +3003,14 @@ void R_StoreWallRange(INT32 start, INT32 stop) if (((ds_p->silhouette & SIL_TOP) || maskedtexture) && !ds_p->sprtopclip) { - M_Memcpy(lastopening, ceilingclip + start, 2*(rw_stopx - start)); + memcpy(lastopening, ceilingclip + start, 2*(rw_stopx - start)); ds_p->sprtopclip = lastopening - start; lastopening += rw_stopx - start; } if (((ds_p->silhouette & SIL_BOTTOM) || maskedtexture) && !ds_p->sprbottomclip) { - M_Memcpy(lastopening, floorclip + start, 2*(rw_stopx - start)); + memcpy(lastopening, floorclip + start, 2*(rw_stopx - start)); ds_p->sprbottomclip = lastopening - start; lastopening += rw_stopx - start; } diff --git a/src/r_skins.c b/src/r_skins.c index 53765e269..8a08da7b2 100644 --- a/src/r_skins.c +++ b/src/r_skins.c @@ -520,7 +520,7 @@ void R_AddSkins(UINT16 wadnum, boolean local) buf2 = malloc(size+1); if (!buf2) I_Error("R_AddSkins: No more free memory\n"); - M_Memcpy(buf2,buf,size); + memcpy(buf2,buf,size); buf2[size] = '\0'; // set defaults diff --git a/src/r_things.cpp b/src/r_things.cpp index 75c333cd4..03eab22c8 100644 --- a/src/r_things.cpp +++ b/src/r_things.cpp @@ -267,7 +267,7 @@ boolean R_AddSingleSpriteDef(const char *sprname, spritedef_t *spritedef, UINT16 if (spritedef->numframes) // (then spriteframes is not null) { // copy the already defined sprite frames - M_Memcpy(sprtemp, spritedef->spriteframes, + memcpy(sprtemp, spritedef->spriteframes, spritedef->numframes * sizeof (spriteframe_t)); maxframe = spritedef->numframes - 1; } @@ -403,7 +403,7 @@ boolean R_AddSingleSpriteDef(const char *sprname, spritedef_t *spritedef, UINT16 spritedef->spriteframes = static_cast(Z_Malloc(maxframe * sizeof (*spritedef->spriteframes), PU_STATIC, NULL)); spritedef->numframes = maxframe; - M_Memcpy(spritedef->spriteframes, sprtemp, maxframe*sizeof (spriteframe_t)); + memcpy(spritedef->spriteframes, sprtemp, maxframe*sizeof (spriteframe_t)); return true; } @@ -1019,7 +1019,7 @@ static void R_SplitSprite(vissprite_t *sprite) INT16 *cliptop = newsprite->cliptop; INT16 *clipbot = newsprite->clipbot; - M_Memcpy(newsprite, sprite, sizeof (vissprite_t)); + memcpy(newsprite, sprite, sizeof (vissprite_t)); newsprite->cliptop = cliptop; newsprite->clipbot = clipbot; diff --git a/src/s_sound.c b/src/s_sound.c index 1e3f8bf7a..52b01be35 100644 --- a/src/s_sound.c +++ b/src/s_sound.c @@ -1409,7 +1409,7 @@ void S_LoadMusicDefs(UINT16 wadnum) musdeftext = malloc(size+1); if (!musdeftext) I_Error("S_LoadMusicDefs: No more free memory for the parser\n"); - M_Memcpy(musdeftext, lump, size); + memcpy(musdeftext, lump, size); musdeftext[size] = '\0'; // Find music def diff --git a/src/sdl/i_net.c b/src/sdl/i_net.c index 9fcc1fd38..000890332 100644 --- a/src/sdl/i_net.c +++ b/src/sdl/i_net.c @@ -107,7 +107,7 @@ static void NET_Get(void) { size_t i; newnode++; - M_Memcpy(&clientaddress[newnode], &mypacket.address, sizeof (IPaddress)); + memcpy(&clientaddress[newnode], &mypacket.address, sizeof (IPaddress)); DEBFILE(va("New node detected: node:%d address:%s\n", newnode, NET_GetNodeAddress(newnode))); doomcom->remotenode = newnode; // good packet from a game player @@ -257,7 +257,7 @@ static SINT8 NET_NetMakeNodewPort(const char *hostname, const char *port) return newnode; } newnode++; - M_Memcpy(&clientaddress[newnode],&hostnameIP,sizeof (IPaddress)); + memcpy(&clientaddress[newnode],&hostnameIP,sizeof (IPaddress)); return (SINT8)newnode; } @@ -303,7 +303,7 @@ static boolean NET_Ban(INT32 node) if (numbans == MAXBANS) return false; - M_Memcpy(&banned[numbans], &clientaddress[node], sizeof (IPaddress)); + memcpy(&banned[numbans], &clientaddress[node], sizeof (IPaddress)); banned[numbans].port = 0; numbans++; return true; diff --git a/src/sdl/sdl_sound.c b/src/sdl/sdl_sound.c index c986b9b54..ab4bcd796 100644 --- a/src/sdl/sdl_sound.c +++ b/src/sdl/sdl_sound.c @@ -244,7 +244,7 @@ static void *getsfx(lumpnum_t sfxlump, size_t *len) sfxcvt.len = (INT32)size-8; //Alam: Chop off the header sfxcvt.buf = malloc(sfxcvt.len * sfxcvt.len_mult); //Alam: make room - if (sfxcvt.buf) M_Memcpy(sfxcvt.buf, &(sfx->data), sfxcvt.len); //Alam: copy the sfx sample + if (sfxcvt.buf) memcpy(sfxcvt.buf, &(sfx->data), sfxcvt.len); //Alam: copy the sfx sample if (sfxcvt.buf && SDL_ConvertAudio(&sfxcvt) == 0) //Alam: let convert it! { @@ -255,9 +255,9 @@ static void *getsfx(lumpnum_t sfxlump, size_t *len) paddedsfx = (dssfx_t *) Z_Malloc(size, PU_SOUND, NULL); // Now copy and pad. - M_Memcpy(paddedsfx->data, sfxcvt.buf, sfxcvt.len_cvt); + memcpy(paddedsfx->data, sfxcvt.buf, sfxcvt.len_cvt); free(sfxcvt.buf); - M_Memcpy(paddedsfx,sfx,8); + memcpy(paddedsfx,sfx,8); paddedsfx->samplerate = SHORT(csr); // new freq } else //Alam: the convert failed, not needed or I couldn't malloc the buf @@ -266,7 +266,7 @@ static void *getsfx(lumpnum_t sfxlump, size_t *len) *len = size - 8; // Allocate from zone memory then copy and pad - paddedsfx = (dssfx_t *)M_Memcpy(Z_Malloc(size, PU_SOUND, NULL), sfx, size); + paddedsfx = (dssfx_t *)memcpy(Z_Malloc(size, PU_SOUND, NULL), sfx, size); } } else @@ -276,7 +276,7 @@ static void *getsfx(lumpnum_t sfxlump, size_t *len) *len = size - 8; // Allocate from zone memory then copy and pad - paddedsfx = (dssfx_t *)M_Memcpy(Z_Malloc(size, PU_SOUND, NULL), sfx, size); + paddedsfx = (dssfx_t *)memcpy(Z_Malloc(size, PU_SOUND, NULL), sfx, size); } // Remove the cached lump. diff --git a/src/v_video.c b/src/v_video.c index 3b9880942..c26d8c9bd 100644 --- a/src/v_video.c +++ b/src/v_video.c @@ -626,13 +626,13 @@ void VID_BlitLinearScreen(const UINT8 *restrict srcptr, UINT8 *restrict destptr, i -= 16; } #endif - M_Memcpy(destptr, srcptr, i); + memcpy(destptr, srcptr, i); } else { while (height--) { - M_Memcpy(destptr, srcptr, width); + memcpy(destptr, srcptr, width); destptr += destrowbytes; srcptr += srcrowbytes; @@ -1193,7 +1193,7 @@ void V_DrawBlock(INT32 x, INT32 y, INT32 scrn, INT32 width, INT32 height, const while (height--) { - M_Memcpy(dest, src, width); + memcpy(dest, src, width); src += width; dest += vid.width; @@ -3647,7 +3647,7 @@ void V_DoPostProcessor(INT32 view, INT32 param) if (sine < 0) { - M_Memcpy(&tmpscr[(y*vid.width)+xoffset+newpix], &srcscr[(y*vid.width)+xoffset], viewwidth-newpix); + memcpy(&tmpscr[(y*vid.width)+xoffset+newpix], &srcscr[(y*vid.width)+xoffset], viewwidth-newpix); // Cleanup edge while (newpix) @@ -3658,7 +3658,7 @@ void V_DoPostProcessor(INT32 view, INT32 param) } else { - M_Memcpy(&tmpscr[(y*vid.width)+xoffset+0], &srcscr[(y*vid.width)+xoffset+sine], viewwidth-newpix); + memcpy(&tmpscr[(y*vid.width)+xoffset+0], &srcscr[(y*vid.width)+xoffset+sine], viewwidth-newpix); // Cleanup edge while (newpix) @@ -3718,10 +3718,10 @@ void V_DoPostProcessor(INT32 view, INT32 param) { // Shift this row of pixels to the right by 2 tmpscr[(y*vid.width)+xoffset] = srcscr[(y*vid.width)+xoffset]; - M_Memcpy(&tmpscr[(y*vid.width)+xoffset], &srcscr[(y*vid.width)+xoffset+vid.dup], viewwidth-vid.dup); + memcpy(&tmpscr[(y*vid.width)+xoffset], &srcscr[(y*vid.width)+xoffset+vid.dup], viewwidth-vid.dup); } else - M_Memcpy(&tmpscr[(y*vid.width)+xoffset], &srcscr[(y*vid.width)+xoffset], viewwidth); + memcpy(&tmpscr[(y*vid.width)+xoffset], &srcscr[(y*vid.width)+xoffset], viewwidth); heatindex[view] %= viewheight; } @@ -3758,7 +3758,7 @@ void V_DoPostProcessor(INT32 view, INT32 param) INT32 y, y2; for (y = yoffset, y2 = yoffset+viewheight - 1; y < yoffset+viewheight; y++, y2--) - M_Memcpy(&tmpscr[(y2*vid.width)+xoffset], &srcscr[(y*vid.width)+xoffset], viewwidth); + memcpy(&tmpscr[(y2*vid.width)+xoffset], &srcscr[(y*vid.width)+xoffset], viewwidth); UINT8 *tmp = tmpscr; tmpscr = srcscr; diff --git a/src/w_wad.c b/src/w_wad.c index 96fe56303..b55d0e98f 100644 --- a/src/w_wad.c +++ b/src/w_wad.c @@ -906,7 +906,7 @@ UINT16 W_InitFile(const char *filename, boolean local, boolean startup) wadfile->endfolders = M_AATreeAlloc(AATREE_STRING); // already generated, just copy it over - M_Memcpy(&wadfile->md5sum, &md5sum, 16); + memcpy(&wadfile->md5sum, &md5sum, 16); // // set up caching @@ -1637,7 +1637,7 @@ size_t W_ReadLumpHeaderPwad(UINT16 wad, UINT16 lump, void *dest, size_t size, si if (!decData) // Did we get no data at all? return 0; - M_Memcpy(dest, decData + offset, size); + memcpy(dest, decData + offset, size); Z_Free(rawData); Z_Free(decData); #ifdef NO_PNG_LUMPS diff --git a/src/z_zone.cpp b/src/z_zone.cpp index 8ed23e4a7..549696bd7 100644 --- a/src/z_zone.cpp +++ b/src/z_zone.cpp @@ -35,7 +35,6 @@ #include "i_system.h" // I_GetFreeMem #include "i_video.h" // rendermode #include "z_zone.h" -#include "m_misc.h" // M_Memcpy #include "lua_script.h" #ifdef HWRENDER @@ -383,7 +382,7 @@ void *Z_Realloc(void *ptr, size_t size, INT32 tag, void *user) else copysize = block->size; - M_Memcpy(rez, ptr, copysize); + memcpy(rez, ptr, copysize); #ifdef ZDEBUG Z_Free2(ptr, file, line); -- 2.54.0 From 29b4f78b64414c022385da40af81e912d4715ae4 Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 6 Nov 2025 18:44:26 +0100 Subject: [PATCH 082/104] lib_concat: fix zero lenght string case continue the loop, not return, it might just be an empty line, so returning might break some luas 0 lenght would make realloc allocate nothing at all, so just skip it --- src/lua_baselib.c | 77 ++++++++++++++++++++++++++--------------------- 1 file changed, 42 insertions(+), 35 deletions(-) diff --git a/src/lua_baselib.c b/src/lua_baselib.c index 1cac121b7..f64224a41 100644 --- a/src/lua_baselib.c +++ b/src/lua_baselib.c @@ -45,27 +45,33 @@ boolean luaL_checkboolean(lua_State *L, int narg) { // String concatination static int lib_concat(lua_State *L) { - int n = lua_gettop(L); /* number of arguments */ - int i; - char *r = NULL; - size_t rl = 0,sl; - lua_getglobal(L, "tostring"); - for (i=1; i<=n; i++) { - const char *s; - lua_pushvalue(L, -1); /* function to be called */ - lua_pushvalue(L, i); /* value to print */ - lua_call(L, 1, 1); - s = lua_tolstring(L, -1, &sl); /* get result */ - if (s == NULL) - return luaL_error(L, LUA_QL("tostring") " must return a string to " - LUA_QL("__add")); + int n = lua_gettop(L); /* number of arguments */ + int i; + char *r = NULL; + size_t rl = 0, sl; + lua_getglobal(L, "tostring"); + for (i=1; i<=n; i++) { + const char *s; + lua_pushvalue(L, -1); /* function to be called */ + lua_pushvalue(L, i); /* value to print */ + lua_call(L, 1, 1); + s = lua_tolstring(L, -1, &sl); /* get result */ + + if (sl == 0) { + lua_pop(L, 1); /* pop result */ + continue; + } + + if (s == NULL) + return luaL_error(L, LUA_QL("tostring") " must return a string to " + LUA_QL("__add")); r = Z_Realloc(r, rl+sl, PU_STATIC, NULL); memcpy(r+rl, s, sl); rl += sl; - lua_pop(L, 1); /* pop result */ - } - lua_pushlstring(L, r, rl); - Z_Free(r); + lua_pop(L, 1); /* pop result */ + } + lua_pushlstring(L, r, rl); + Z_Free(r); return 1; } @@ -73,23 +79,24 @@ static int lib_concat(lua_State *L) // Copied from base Lua code static int lib_print(lua_State *L) { - int n = lua_gettop(L); /* number of arguments */ - int i; - //HUDSAFE - lua_getglobal(L, "tostring"); - for (i=1; i<=n; i++) { - const char *s; - lua_pushvalue(L, -1); /* function to be called */ - lua_pushvalue(L, i); /* value to print */ - lua_call(L, 1, 1); - s = lua_tostring(L, -1); /* get result */ - if (s == NULL) - return luaL_error(L, LUA_QL("tostring") " must return a string to " - LUA_QL("print")); - if (i>1) CONS_Printf("\n"); - CONS_Printf("%s", s); - lua_pop(L, 1); /* pop result */ - } + int n = lua_gettop(L); /* number of arguments */ + int i; + //HUDSAFE + lua_getglobal(L, "tostring"); + for (i=1; i<=n; i++) { + const char *s; + lua_pushvalue(L, -1); /* function to be called */ + lua_pushvalue(L, i); /* value to print */ + lua_call(L, 1, 1); + s = lua_tostring(L, -1); /* get result */ + + if (s == NULL) + return luaL_error(L, LUA_QL("tostring") " must return a string to " + LUA_QL("print")); + if (i>1) CONS_Printf("\n"); + CONS_Printf("%s", s); + lua_pop(L, 1); /* pop result */ + } CONS_Printf("\n"); return 0; } -- 2.54.0 From 33b62cba337a238660bb68fe5a7b2faa49f877d8 Mon Sep 17 00:00:00 2001 From: Indev Date: Thu, 6 Nov 2025 20:44:18 +0300 Subject: [PATCH 083/104] Push empty string instead of null if len == 0 in lua_pushlstring --- src/blua/lapi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/blua/lapi.c b/src/blua/lapi.c index 73fbbf561..557896f43 100644 --- a/src/blua/lapi.c +++ b/src/blua/lapi.c @@ -434,7 +434,7 @@ LUA_API void lua_pushnumber (lua_State *L, lua_Number n) { LUA_API void lua_pushlstring (lua_State *L, const char *s, size_t len) { lua_lock(L); luaC_checkGC(L); - setsvalue2s(L, L->top, luaS_newlstr(L, s, len)); + setsvalue2s(L, L->top, (len == 0) ? luaS_new(L, "") : luaS_newlstr(L, s, len)); api_incr_top(L); lua_unlock(L); } -- 2.54.0 From e2df018e3802b12541170701f95c2059db487695 Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 6 Nov 2025 19:00:48 +0100 Subject: [PATCH 084/104] simplify srb2::floattofixed my tired ass didnt think about just reusing shit kek ty indev <3 --- src/cxxutil.hpp | 24 +----------------------- 1 file changed, 1 insertion(+), 23 deletions(-) diff --git a/src/cxxutil.hpp b/src/cxxutil.hpp index 91c1a8641..98c9d9e5f 100644 --- a/src/cxxutil.hpp +++ b/src/cxxutil.hpp @@ -189,29 +189,7 @@ static inline int32_t floattofixed(FloatT val) static_assert(std::is_floating_point_v, "Input must be a floating-point type"); // fixed_t is just an int32_t, i dont wanna include doomtype here if it can be avoided - - if (std::fpclassify(val) == FP_NAN) - return 0; // if stuffs not a number we sure screwed up lmao - - // treat inifinity as "int min/max" - if (std::fpclassify(val) == FP_INFINITE) - { - // yes infinity can be signed kek - if (std::signbit(val)) - return std::numeric_limits::min(); // negative infinity, so return min - else - return std::numeric_limits::max(); - } - - const FloatT ret = (val * 65536.0); - - // make sure we fit into our targettype uwu - if (ret > static_cast(std::numeric_limits::max())) - return std::numeric_limits::max(); - else if (ret < static_cast(std::numeric_limits::min())) - return std::numeric_limits::min(); - - return static_cast(ret); + return floattoint(val * 65535.); } } // namespace srb2 -- 2.54.0 From 01a54e4d0bd2b7a529cfddb9fa759dadc94ef323 Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 6 Nov 2025 19:15:59 +0100 Subject: [PATCH 085/104] delete remaining M_Memcpy that were missed those werent there in lugstuff branch oops lel --- src/lzf.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lzf.c b/src/lzf.c index 97c74ff2b..549484b03 100644 --- a/src/lzf.c +++ b/src/lzf.c @@ -192,7 +192,7 @@ lzf_decompress (const void *const in_data, size_t in_len, #endif #if USE_MEMCPY - M_Memcpy (op, ip, ctrl); + memcpy(op, ip, ctrl); op += ctrl; ip += ctrl; #else @@ -435,7 +435,7 @@ lzf_compress (const void *const in_data,size_t in_len, *op++ = MAX_LIT - 1; #if USE_MEMCPY - M_Memcpy (op, ip - MAX_LIT, MAX_LIT); + memcpy(op, ip - MAX_LIT, MAX_LIT); op += MAX_LIT; lit = 0; #else -- 2.54.0 From 325338bfbf340690bfe6f498155f95466047836d Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 6 Nov 2025 20:33:43 +0100 Subject: [PATCH 086/104] sound precache: add option to keep sounds cached but not precache them ugh i suck so much at explaining this is the default now pretty much --- src/m_menudefs.c | 9 ++++++-- src/p_setup.c | 5 +++-- src/s_sound.c | 56 ++++++++++++++++++++++++++++++------------------ src/s_sound.h | 12 +++++++++-- src/sounds.c | 4 +++- 5 files changed, 58 insertions(+), 28 deletions(-) diff --git a/src/m_menudefs.c b/src/m_menudefs.c index 6633085bf..8ec8e2cd1 100644 --- a/src/m_menudefs.c +++ b/src/m_menudefs.c @@ -1153,8 +1153,10 @@ static menuitem_t OP_SoundAdvancedMenu[] = {IT_STRING | IT_CVAR, NULL, "Keep Map Music", &cv_keepmusic, 80}, {IT_STRING | IT_CVAR, NULL, "Skip Intro Music", &cv_skipintromusic, 85}, - {IT_STRING | IT_CVAR, NULL, "Audio Buffer Size", &cv_audbuffersize, 90}, - {IT_DISABLED, NULL, "", NULL, 100}, // dummy text + {IT_STRING | IT_CVAR, NULL, "Cache Sound", &cv_cachesound, 90}, + + {IT_STRING | IT_CVAR, NULL, "Audio Buffer Size", &cv_audbuffersize, 95}, + {IT_DISABLED, NULL, "", NULL, 105}, // dummy text }; static const char* OP_SoundAdvancedTooltips[] = @@ -1175,7 +1177,10 @@ static const char* OP_SoundAdvancedTooltips[] = "Should the Invulnerability music be on or off?", "Should music be kept when restarting the map?", "Should the Intro fanfare be skipped\nand map music be played on map start?", + "Controls Sound effects caching.\nKeep will retain previously played sound effects in cache." // man idk how to describe this in a non awful way lmao + "\nOn will preload all sound effects.\nEliminates sound-related lag and stutters but increases memory usage.", "Size of the Audio Buffer\nreducing it will result in less sound latency\nbut may cause issues such as crackling or distorted Sound.", + NULL, }; static menuitem_t OP_FocusOptionsMenu[] = diff --git a/src/p_setup.c b/src/p_setup.c index f331b9dee..9de109aae 100644 --- a/src/p_setup.c +++ b/src/p_setup.c @@ -2766,7 +2766,8 @@ boolean P_SetupLevel(boolean fromnetsave, boolean reloadinggamestate) // Make sure all sounds are stopped before Z_FreeTags. S_StopSounds(); - if (!S_PrecacheSound()) + // if we dont intend to cache our sound effects, wipe them + if (S_CacheSound() == SOUNDCACHE_OFF) S_ClearSfx(); // As oddly named as this is, this handles music only. @@ -3034,7 +3035,7 @@ static boolean P_CheckSoundReplacements(UINT16 wadnum, char *name, size_t i) I_FreeSfx(&S_sfx[j]); // Re-cache it - if (S_PrecacheSound()) + if (S_CacheSound() == SOUNDCACHE_PRECACHE) S_sfx[j].data = I_GetSfx(&S_sfx[j]); sreplaces++; diff --git a/src/s_sound.c b/src/s_sound.c index 52b01be35..7625a3f60 100644 --- a/src/s_sound.c +++ b/src/s_sound.c @@ -45,7 +45,7 @@ static void Command_ShowMusicCredit_f(void); static void GameSounds_OnChange(void); static void GameMusic_OnChange(void); -static void SoundPrecache_OnChange(void); +static void SoundCache_OnChange(void); static void BufferSize_OnChange(void); #ifdef HAVE_OPENMPT @@ -68,7 +68,8 @@ consvar_t cv_audbuffersize = {"audiobuffersize", "2048", CV_SAVE|CV_CALL, audbuf consvar_t stereoreverse = {"stereoreverse", "Off", CV_SAVE, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL}; // if true, all sounds are loaded at game startup -consvar_t precachesound = {"precachesound", "Off", CV_SAVE|CV_CALL|CV_NOINIT, CV_OnOff, SoundPrecache_OnChange, 0, NULL, NULL, 0, 0, NULL}; +static CV_PossibleValue_t cachesounds_cons_t[] = {{0, "Off"}, {1, "Keep"}, {2, "On"}, {0, NULL}}; +consvar_t cv_cachesound = {"cachesound", "1", CV_SAVE|CV_CALL|CV_NOINIT, cachesounds_cons_t, SoundCache_OnChange, 0, NULL, NULL, 0, 0, NULL}; // actual general (maximum) sound & music volume, saved into the config static CV_PossibleValue_t soundvolume_cons_t[] = {{0, "MIN"}, {31, "MAX"}, {0, NULL}}; @@ -274,7 +275,7 @@ void S_RegisterSoundStuff(void) } CV_RegisterVar(&stereoreverse); - CV_RegisterVar(&precachesound); + CV_RegisterVar(&cv_cachesound); #if defined(HAVE_SDL) && SOUND==SOUND_SDL CV_RegisterVar(&cv_samplerate); #endif @@ -362,9 +363,15 @@ boolean S_SoundDisabled(void) return (sound_disabled || (window_notinfocus && !cv_playsoundifunfocused.value)); } -boolean S_PrecacheSound(void) +int S_CacheSound(void) { - return (!sound_disabled && (M_CheckParm("-precachesound") || precachesound.value)); + if (sound_disabled) + return SOUNDCACHE_OFF; + + if (M_CheckParm("-precachesound")) + return SOUNDCACHE_PRECACHE; + + return cv_cachesound.value; } // Stop all sounds, load level info, THEN start sounds. @@ -1150,28 +1157,35 @@ void S_InitSfxChannels(INT32 sfxVolume) SetChannelsNum(); - // Note that sounds have not been cached (yet). - for (i = 1; i < NUMSFX; i++) - { - S_sfx[i].lumpnum = LUMPERROR; - } - // Precache sounds if requested - if (S_PrecacheSound()) + if (S_CacheSound() == SOUNDCACHE_PRECACHE) { // Initialize external data (all sounds) at start, keep static. CONS_Printf(M_GetText("Pre-caching sounds...")); - for (i = 1; i < sfx_freeslot0; i++) - if (S_sfx[i].name && !S_sfx[i].data) - S_sfx[i].data = I_GetSfx(&S_sfx[i]); + // NUMSFX is a big number, so merge the loops + for (i = 1; i < NUMSFX; i++) + { + S_sfx[i].lumpnum = LUMPERROR; - for (i = sfx_freeslot0; i < NUMSFX; i++) - if (S_sfx[i].priority && !S_sfx[i].data) - S_sfx[i].data = I_GetSfx(&S_sfx[i]); + if (S_sfx[i].data) + continue; + + if ((i < sfx_freeslot0 && S_sfx[i].name) || + (i >= sfx_freeslot0 && S_sfx[i].priority)) + S_sfx[i].data = I_GetSfx(&S_sfx[i]); + } CONS_Printf(M_GetText("...pre-cached all sound data\n")); } + else + { + // Note that sounds have not been cached (yet). + for (i = 1; i < NUMSFX; i++) + { + S_sfx[i].lumpnum = LUMPERROR; + } + } } /// ------------------------ @@ -2277,13 +2291,13 @@ static void GameSounds_OnChange(void) } } -static void SoundPrecache_OnChange(void) +static void SoundCache_OnChange(void) { - if (S_PrecacheSound()) + if (S_CacheSound() != SOUNDCACHE_OFF) { S_InitSfxChannels(cv_soundvolume.value); } - else if (!S_PrecacheSound()) + else { S_ClearSfx(); diff --git a/src/s_sound.h b/src/s_sound.h index 7aa218062..1fa895d03 100644 --- a/src/s_sound.h +++ b/src/s_sound.h @@ -75,9 +75,10 @@ extern consvar_t cv_skipintromusic; //extern consvar_t cv_ignoremusicchanges; extern boolean keepmapmusic; extern boolean skipintromus; + #define MUSICSTARTTIME (starttime + (TICRATE/2)) -extern consvar_t precachesound; +extern consvar_t cv_cachesound; typedef enum { @@ -148,11 +149,18 @@ void S_StopSound(void *origin); // Music Status // +enum +{ + SOUNDCACHE_OFF, + SOUNDCACHE_KEEP, + SOUNDCACHE_PRECACHE +}; + boolean S_MusicDisabled(void); boolean S_MusicPlaying(void); boolean S_MusicPaused(void); boolean S_MusicNotInFocus(void); -boolean S_PrecacheSound(void); +int S_CacheSound(void); musictype_t S_MusicType(void); const char *S_MusicName(void); boolean S_MusicInfo(char *mname, UINT16 *mflags, boolean *looping); diff --git a/src/sounds.c b/src/sounds.c index 02e02b08a..c1e2f83a7 100644 --- a/src/sounds.c +++ b/src/sounds.c @@ -1018,6 +1018,8 @@ sfxenum_t S_AddSoundFx(const char *name, boolean singular, INT32 flags, boolean else slot = sfx_freeslot0; + const int precache = S_CacheSound(); + for (i = slot; i < NUMSFX; i++) { if (!S_sfx[i].priority) @@ -1030,7 +1032,7 @@ sfxenum_t S_AddSoundFx(const char *name, boolean singular, INT32 flags, boolean S_sfx[i].length = 0; S_sfx[i].skinsound = -1; - if (S_PrecacheSound()) + if (precache == SOUNDCACHE_PRECACHE) S_sfx[i].data = I_GetSfx(&S_sfx[i]); else S_sfx[i].data = NULL; -- 2.54.0 From 237aeb78341488ca9fb4da7bac6c6fdcc4038c41 Mon Sep 17 00:00:00 2001 From: Alug Date: Fri, 7 Nov 2025 21:26:55 +0100 Subject: [PATCH 087/104] use early returns for "I_Finish" stuff i like that more, less checks for stuff --- src/sdl/i_video.c | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/src/sdl/i_video.c b/src/sdl/i_video.c index 2ea66dbc2..ebb8d7685 100644 --- a/src/sdl/i_video.c +++ b/src/sdl/i_video.c @@ -1329,14 +1329,12 @@ void I_UpdateNoBlit(void) if (rendermode == render_opengl) { OglSdlFinishUpdate(cv_vidwait.value); + return; } - else + #endif - if (rendermode == render_soft) - { - SDL_RenderCopy(renderer, texture, NULL, NULL); - SDL_RenderPresent(renderer); - } + SDL_RenderCopy(renderer, texture, NULL, NULL); + SDL_RenderPresent(renderer); } exposevideo = SDL_FALSE; @@ -1371,7 +1369,15 @@ void I_FinishUpdate(void) ST_AskToJoinEnvelope(); #endif - if (rendermode == render_soft && vid.screens[0]) +#ifdef HWRENDER + if (rendermode == render_opengl) + { + OglSdlFinishUpdate(cv_vidwait.value); + return; + } +#endif + + if (vid.screens[0]) { void *pixels; int pitch; @@ -1393,12 +1399,6 @@ void I_FinishUpdate(void) SDL_RenderCopy(renderer, texture, &src_rect, NULL); SDL_RenderPresent(renderer); } -#ifdef HWRENDER - else if (rendermode == render_opengl) - { - OglSdlFinishUpdate(cv_vidwait.value); - } -#endif exposevideo = SDL_FALSE; } @@ -1421,7 +1421,8 @@ void I_ReadScreen(UINT8 * restrict scr, INT32 scale) { if (rendermode != render_soft) I_Error("I_ReadScreen: called while in non-software mode"); - else if (scale == 1) + + if (scale == 1) VID_BlitLinearScreen(vid.screens[0], scr, vid.width, vid.height, vid.width, vid.width); else { @@ -1596,8 +1597,9 @@ static SDL_bool Impl_CreateContext(void) } SDL_GL_MakeCurrent(window, sdlglcontext); + + return SDL_TRUE; } - else #endif if (rendermode == render_soft) { @@ -1637,9 +1639,11 @@ static SDL_bool Impl_CreateContext(void) } SDL_RenderSetLogicalSize(renderer, BASEVIDWIDTH, BASEVIDHEIGHT); + + return SDL_TRUE; } - return SDL_TRUE; + return SDL_FALSE; } static SDL_bool Impl_CreateWindow(SDL_bool fullscreen) -- 2.54.0 From b421893646145c6b137f58631673b4a082d833f7 Mon Sep 17 00:00:00 2001 From: Alug Date: Fri, 7 Nov 2025 21:28:28 +0100 Subject: [PATCH 088/104] call NetKeepAlive during ogl precache should prevent timeouts on slower systems (*cough* *cough* windoze *cough*) hopefully thx neppy for the idea! --- src/hardware/hw_cache.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/hardware/hw_cache.c b/src/hardware/hw_cache.c index ccd6980f3..b368fae6c 100644 --- a/src/hardware/hw_cache.c +++ b/src/hardware/hw_cache.c @@ -615,6 +615,9 @@ static void HWR_PrecacheLevelFlats(void) // go through all sectors to determine if it should be remapped for encore for (i = 0; i < numsectors; i++) { + // prevent timeouts + NetKeepAlive(); + sector_t *sec = §ors[i]; // gotta check sector floor and ceiling @@ -646,6 +649,9 @@ static void HWR_PrecacheLevelFlats(void) // just load every flat in the level for (i = 0; i < numlevelflats; i++) { + // prevent timeouts + NetKeepAlive(); + const levelflat_t *levelflat = &levelflats[i]; lump = levelflat->lumpnum; @@ -682,6 +688,9 @@ static void HWR_PrecacheLevelTextures(void) for (i = 0; i < numlines; i++) { + // prevent timeouts + NetKeepAlive(); + const line_t *line = &lines[i]; #ifdef GLENCORE const int noencoremap = ((encoremap && (line->flags & ML_TFERLINE)) ? 2 : 1); @@ -775,6 +784,9 @@ static void HWR_PrecacheLevelTextures(void) for (i = 0; i < numsprites; i++) { + // prevent timeouts + NetKeepAlive(); + if (!spritepresent[i]) continue; -- 2.54.0 From 54f5b5ebfbef2cbe5a3276af730140663f1a46ac Mon Sep 17 00:00:00 2001 From: Alug Date: Sat, 8 Nov 2025 12:30:45 +0100 Subject: [PATCH 089/104] enable software cyan pixel "cutting" for flats by default --- src/r_main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/r_main.cpp b/src/r_main.cpp index 339e34548..b6d0e7f0f 100644 --- a/src/r_main.cpp +++ b/src/r_main.cpp @@ -187,7 +187,7 @@ consvar_t cv_shadowoffs = {"offsetshadows", "Off", CV_SAVE, CV_OnOff, NULL, consvar_t cv_skybox = {"skybox", "On", CV_SAVE, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL}; consvar_t cv_ffloorclip = {"r_ffloorclip", "On", CV_SAVE, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL}; consvar_t cv_spriteclip = {"r_spriteclip", "On", CV_SAVE, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL}; -consvar_t cv_softcyancut = {"softwarecyancut", "Off", CV_SAVE, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL}; +consvar_t cv_softcyancut = {"softwarecyancut", "On", CV_SAVE, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL}; consvar_t cv_translucency = {"translucency", "On", CV_SAVE, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL}; consvar_t cv_drawdist = {"drawdist", "Infinite", CV_SAVE, drawdist_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; consvar_t cv_drawdist_precip = {"drawdist_precip", "1024", CV_SAVE|CV_CALL|CV_NOINIT, drawdist_precip_cons_t, Precipstuff_OnChange, 0, NULL, NULL, 0, 0, NULL}; -- 2.54.0 From 87e0b55f01a92c7dd178510c31a108076d826499 Mon Sep 17 00:00:00 2001 From: Alug Date: Sun, 9 Nov 2025 18:51:58 +0100 Subject: [PATCH 090/104] fix windowmoved never resetting --- src/sdl/i_video.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/sdl/i_video.c b/src/sdl/i_video.c index ebb8d7685..787ce1b07 100644 --- a/src/sdl/i_video.c +++ b/src/sdl/i_video.c @@ -523,6 +523,7 @@ static void Impl_HandleWindowEvent(SDL_WindowEvent evt) #ifdef USE_FBO_OGL I_DownSample(); #endif + windowmoved = SDL_FALSE; } if (mousefocus && kbfocus) -- 2.54.0 From c977c4fc45ddcd9cc9cf41d2f8fce61afc606a02 Mon Sep 17 00:00:00 2001 From: Alug Date: Tue, 11 Nov 2025 14:19:02 +0100 Subject: [PATCH 091/104] initialize most of our global variables just to be safe, not really trusting the game at this point, maybe this helps with some obscure bugs or smth lel --- src/d_clisrv.c | 39 +++++---- src/d_main.c | 72 +++------------- src/d_net.c | 6 +- src/d_netfil.c | 8 +- src/g_demo.c | 6 +- src/g_game.c | 177 +++++++++++++++++++-------------------- src/hardware/hw_clip.c | 13 ++- src/hardware/hw_defs.h | 2 +- src/hardware/hw_main.cpp | 16 ++-- src/hardware/hw_md2.c | 7 +- src/hardware/hw_portal.c | 4 +- src/p_enemy.c | 4 +- src/p_map.c | 26 +++--- src/p_mobj.c | 2 +- src/p_saveg.c | 2 +- src/p_setup.c | 56 ++++++------- src/p_spec.c | 4 +- src/p_tick.c | 6 +- src/r_bsp.cpp | 14 ++-- src/r_data.c | 4 +- src/r_data.h | 2 - src/r_draw.cpp | 30 +++---- src/r_main.cpp | 48 +++++------ src/r_patchrotation.cpp | 4 +- src/r_portal.c | 12 +-- src/r_segs.cpp | 6 +- src/r_skins.c | 12 +-- src/r_sky.c | 16 ++-- src/r_things.cpp | 8 +- src/screen.c | 4 +- src/v_video.c | 2 +- 31 files changed, 278 insertions(+), 334 deletions(-) diff --git a/src/d_clisrv.c b/src/d_clisrv.c index eb39f34f7..f69d67cfe 100644 --- a/src/d_clisrv.c +++ b/src/d_clisrv.c @@ -78,14 +78,14 @@ #define MAX_REASONLENGTH 30 #define FORCECLOSE 0x8000 -static long long unsigned packetstat[NUMPACKETTYPE+1] = {0}; +static long long unsigned packetstat[NUMPACKETTYPE+1] = {}; boolean server = true; // true or false but !server == client #define client (!server) boolean nodownload = false; boolean serverrunning = false; INT32 serverplayer = 0; -char motd[254], server_context[8]; // Message of the Day, Unique Context (even without Mumble support) +char motd[254] = {}, server_context[8] = {}; // Message of the Day, Unique Context (even without Mumble support) #define MAP_ICON_REQUEST_FREQUENCY 8 @@ -98,14 +98,13 @@ static int map_icon_request_count; // current count of icon requests sent static UINT8 *map_icon_data; static patch_t *map_icon; -plrinfo playerinfo[MAXPLAYERS]; +plrinfo playerinfo[MAXPLAYERS] = {}; SINT8 joinnode = 0; // used for CL_VIEWSERVER -boolean player_muted[MAXPLAYERS] = {0}; +boolean player_muted[MAXPLAYERS] = {}; // Server specific vars -UINT8 playernode[MAXPLAYERS]; - +UINT8 playernode[MAXPLAYERS] = {}; // Minimum timeout for sending the savegame // The actual timeout will be longer depending on the savegame length @@ -118,15 +117,15 @@ static tic_t savegameresendcooldown[MAXNETNODES]; // How long before we can rese static tic_t freezetimeout[MAXNETNODES]; // Until when can this node freeze the server before getting a timeout? UINT16 pingmeasurecount = 1; -UINT32 realpingtable[MAXPLAYERS]; //the base table of ping where an average will be sent to everyone. -UINT32 playerpingtable[MAXPLAYERS]; //table of player latency values. +UINT32 realpingtable[MAXPLAYERS] = {}; //the base table of ping where an average will be sent to everyone. +UINT32 playerpingtable[MAXPLAYERS] = {}; //table of player latency values. #define GENTLEMANSMOOTHING (TICRATE) static tic_t reference_lag; static UINT8 spike_time; -tic_t lowest_lag; -tic_t simulated_lag; -boolean server_lagless; +tic_t lowest_lag = 0; +tic_t simulated_lag = 0; +boolean server_lagless = true; static void Lagless_OnChange(void) { @@ -144,12 +143,12 @@ static CV_PossibleValue_t mindelay_cons_t[] = {{0, "MIN"}, {30, "MAX"}, {0, NULL consvar_t cv_mindelay = {"mindelay", "0", CV_SAVE, mindelay_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; consvar_t cv_gentlemens = {"gentlemensdelay", "Off", CV_SAVE|CV_CALL|CV_NOINIT, CV_OnOff, Lagless_OnChange, 0, NULL, NULL, 0, 0, NULL}; // this should be a netvar Zzz... -SINT8 nodetoplayer[MAXNETNODES]; -SINT8 nodetoplayer2[MAXNETNODES]; // say the numplayer for this node if any (splitscreen) -SINT8 nodetoplayer3[MAXNETNODES]; // say the numplayer for this node if any (splitscreen == 2) -SINT8 nodetoplayer4[MAXNETNODES]; // say the numplayer for this node if any (splitscreen == 3) -UINT8 playerpernode[MAXNETNODES]; // used specialy for splitscreen -boolean nodeingame[MAXNETNODES]; // set false as nodes leave game +SINT8 nodetoplayer[MAXNETNODES] = {}; +SINT8 nodetoplayer2[MAXNETNODES] = {}; // say the numplayer for this node if any (splitscreen) +SINT8 nodetoplayer3[MAXNETNODES] = {}; // say the numplayer for this node if any (splitscreen == 2) +SINT8 nodetoplayer4[MAXNETNODES] = {}; // say the numplayer for this node if any (splitscreen == 3) +UINT8 playerpernode[MAXNETNODES] = {}; // used specialy for splitscreen +boolean nodeingame[MAXNETNODES] = {}; // set false as nodes leave game tic_t servermaxping = 20; // server's max delay, in frames. Defaults to 20 static tic_t nettics[MAXNETNODES]; // what tic the client have received @@ -196,7 +195,7 @@ boolean is_client_saturn[MAXNETNODES]; static UINT8 localtextcmd[MAXSPLITSCREENPLAYERS][MAXTEXTCMD]; static tic_t neededtic; SINT8 servernode = 0; // the number of the server node -char connectedservername[MAXSERVERNAME+1]; +char connectedservername[MAXSERVERNAME+1] = {}; /// \brief do we accept new players? /// \todo WORK! boolean acceptnewnode = true; @@ -227,7 +226,7 @@ struct textcmdbuf_s static textcmdbuf_t *textcmdbuf[MAXSPLITSCREENPLAYERS] = {NULL}; static ticcmd_t playercmds[MAXPLAYERS]; -ticcmd_t netcmds[BACKUPTICS][MAXPLAYERS]; +ticcmd_t netcmds[BACKUPTICS][MAXPLAYERS] = {}; static textcmdtic_t *textcmds[TEXTCMD_HASH_SIZE] = {NULL}; consvar_t cv_showjoinaddress = {"showjoinaddress", "On", CV_SAVE, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL}; @@ -285,7 +284,7 @@ static inline void *G_ScpyTiccmd(ticcmd_t* dest, void* src, const size_t n) // Some software don't support largest packet // (original sersetup, not exactely, but the probability of sending a packet // of 512 bytes is like 0.1) -UINT16 software_MAXPACKETLENGTH; +UINT16 software_MAXPACKETLENGTH = 0; /** Guesses the value of a tic from its lowest byte and from maketic * diff --git a/src/d_main.c b/src/d_main.c index bafc110e1..7a738288b 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -142,8 +142,8 @@ static char addonsdir[MAX_WADPATH]; // Events can be discarded if no responder claims them // referenced from i_system.c for I_GetKey() -event_t events[MAXEVENTS]; -INT32 eventhead, eventtail; +event_t events[MAXEVENTS] = {}; +INT32 eventhead = 0, eventtail = 0; boolean dedicated = false; @@ -161,68 +161,17 @@ void D_PostEvent(const event_t *ev) // modifier keys // Now handled in I_OsPolling -UINT8 shiftdown = 0; // 0x1 left, 0x2 right -UINT8 ctrldown = 0; // 0x1 left, 0x2 right -UINT8 altdown = 0; // 0x1 left, 0x2 right -boolean capslock = 0; // gee i wonder what this does. +UINT8 shiftdown = 0; // 0x1 left, 0x2 right +UINT8 ctrldown = 0; // 0x1 left, 0x2 right +UINT8 altdown = 0; // 0x1 left, 0x2 right +boolean capslock = 0; // gee i wonder what this does. -static void D_PadMenuScrollInput(UINT8 input) -{ - event_t dpadev; - memset(&dpadev, 0, sizeof(event_t)); - dpadev.type = ev_keydown; - - switch (input) - { - case DPAD_UP: - dpadev.data1 = KEY_UPARROW; - break; - case DPAD_DOWN: - dpadev.data1 = KEY_DOWNARROW; - break; - case DPAD_LEFT: - dpadev.data1 = KEY_LEFTARROW; - break; - case DPAD_RIGHT: - dpadev.data1 = KEY_RIGHTARROW; - break; - } - - D_PostEvent(&dpadev); // put into eventlist -} - -#define SCROLLDELAY 19 - -// Check if any dpad button is held -// and pass it to the eventlist -static void D_GamePadMenuScrollTicker(void) -{ - UINT8 i; - static UINT8 menuInputDelayTimer = 0; - - for (i = 0; i < MAXSPLITSCREENPLAYERS; i++) - { - if (dpadscrollstate[i]) - { - if (menuInputDelayTimer < SCROLLDELAY) - menuInputDelayTimer++; - else if (menuInputDelayTimer == SCROLLDELAY) - D_PadMenuScrollInput(i); - - return; - } - } - - menuInputDelayTimer = 0; -} -#undef SCROLLDELAY - -static UINT16 curcolor[MAXSPLITSCREENPLAYERS] = {0}; +static UINT16 curcolor[MAXSPLITSCREENPLAYERS] = {}; static void D_DeviceLEDTick(void) { UINT8 i; - static UINT16 color[MAXSPLITSCREENPLAYERS] = {0}; + static UINT16 color[MAXSPLITSCREENPLAYERS] = {}; if (numcontrollers == 0) { @@ -390,8 +339,7 @@ static void D_Renderview(void) } else if (rendermode == render_soft) #endif - - R_RenderPlayerView(&players[displayplayers[i]]); + R_RenderPlayerView(&players[displayplayers[i]]); } if (rendermode == render_soft) @@ -720,7 +668,7 @@ static boolean D_Display(void) // D_SRB2Loop // ========================================================================= -tic_t rendergametic; +tic_t rendergametic = 0; void D_SRB2Loop(void) { diff --git a/src/d_net.c b/src/d_net.c index d5b11f018..7fb216288 100644 --- a/src/d_net.c +++ b/src/d_net.c @@ -95,9 +95,9 @@ static INT32 sendackpacket = 0, getackpacket = 0; INT32 ticruned = 0, ticmiss = 0; // globals -INT32 getbps, sendbps; -float lostpercent, duppercent, gamelostpercent; -INT32 packetheaderlength; +INT32 getbps = 0, sendbps = 0; +float lostpercent = 0, duppercent = 0, gamelostpercent = 0; +INT32 packetheaderlength = 0; boolean Net_GetNetStat(void) { diff --git a/src/d_netfil.c b/src/d_netfil.c index 6c9183eea..d80ae7b79 100644 --- a/src/d_netfil.c +++ b/src/d_netfil.c @@ -110,14 +110,14 @@ static fileused_t transferFiles[UINT8_MAX + 1]; // Write time of file: utime // Receiver structure -INT32 fileneedednum; // Number of files needed to join the server -fileneeded_t fileneeded[MAX_WADFILES]; // List of needed files +INT32 fileneedednum = 0; // Number of files needed to join the server +fileneeded_t fileneeded[MAX_WADFILES] = {}; // List of needed files #ifdef HAVE_THREADS static I_mutex downloadmutex; #endif char downloaddir[512] = "DOWNLOAD"; -file_download_t filedownload; +file_download_t filedownload = {}; #ifdef HAVE_CURL static CURL *http_handle; @@ -131,7 +131,7 @@ static UINT32 curl_origfilesize; static UINT32 curl_origtotalfilesize; static char *curl_realname = NULL; fileneeded_t *curl_curfile = NULL; -HTTP_login *curl_logins; +HTTP_login *curl_logins = NULL; #endif /** Fills a serverinfo packet with information about wad files loaded. diff --git a/src/g_demo.c b/src/g_demo.c index 897238107..5e6f20a6d 100644 --- a/src/g_demo.c +++ b/src/g_demo.c @@ -68,8 +68,8 @@ UINT8 numDemos = 0; //3; -- i'm FED UP of losing my skincolour to a broken UINT32 demoDelayTime = 15*TICRATE; UINT32 demoIdleTime = 3*TICRATE; -boolean nodrawers; // for comparative timing purposes -boolean noblit; // for comparative timing purposes +boolean nodrawers = false; // for comparative timing purposes +boolean noblit = false; // for comparative timing purposes static tic_t demostarttime; // for comparative timing purposes //@TODO put these all in a struct for namespacing purposes? @@ -80,7 +80,7 @@ static UINT8 *demoend; static UINT8 demoflags; static boolean demosynced = true; // console warning message -struct demovars_s demo; +struct demovars_s demo = {}; consvar_t cv_resyncdemo = {"resyncdemo", "On", 0, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL}; diff --git a/src/g_game.c b/src/g_game.c index aa03a0524..a9b2579a8 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -59,15 +59,15 @@ #include "discord.h" #endif -gameaction_t gameaction; +gameaction_t gameaction = 0; gamestate_t gamestate = GS_NULL; UINT8 ultimatemode = false; -boolean botingame; -UINT8 botskin; -UINT8 botcolor; +boolean botingame = false; +UINT8 botskin = 0; +UINT8 botcolor = 0; -JoyType_t Joystick[MAXSPLITSCREENPLAYERS]; +JoyType_t Joystick[MAXSPLITSCREENPLAYERS] = {}; // 1024 bytes is plenty for a savegame #define SAVEGAMESIZE (1024) @@ -83,10 +83,10 @@ static void G_DoContinued(void); static void G_DoWorldDone(void); static void G_DoStartVote(void); -music_t mapmusic; +music_t mapmusic = {}; INT16 gamemap = 1; -INT16 maptol; +INT16 maptol = 0; UINT8 globalweather = 0; INT32 curWeather = PRECIP_NONE; INT32 cursaveslot = -1; // Auto-save 1p savegame slot @@ -97,29 +97,29 @@ UINT16 mainwads = 0; boolean modifiedgame = false; // Set if homebrew PWAD stuff has been added. boolean majormods = false; // Set if Lua/Gameplay SOC/replacement map has been added. boolean savemoddata = false; -UINT8 paused; +UINT8 paused = 0; UINT8 modeattacking = ATTACKING_NONE; boolean imcontinuing = false; boolean runemeraldmanager = false; -boolean netgame; // only true if packets are broadcast -boolean multiplayer; -boolean playeringame[MAXPLAYERS]; -boolean addedtogame; -player_t players[MAXPLAYERS]; +boolean netgame = false; // only true if packets are broadcast +boolean multiplayer = false; +boolean playeringame[MAXPLAYERS] = {}; +boolean addedtogame = false; +player_t players[MAXPLAYERS] = {}; -INT32 consoleplayer; // player taking events and displaying -INT32 displayplayers[MAXSPLITSCREENPLAYERS] = {0}; // view being displayed +INT32 consoleplayer = 0; // player taking events and displaying +INT32 displayplayers[MAXSPLITSCREENPLAYERS] = {}; // view being displayed -tic_t gametic; -tic_t levelstarttic; // gametic at level start -UINT32 totalrings; // for intermission -INT16 lastmap; // last level you were at (returning from special stages) -tic_t timeinmap; // Ticker for time spent in level (used for levelcard display) +tic_t gametic = 0; +tic_t levelstarttic = 0; // gametic at level start +UINT32 totalrings = 0; // for intermission +INT16 lastmap = 0; // last level you were at (returning from special stages) +tic_t timeinmap = 0; // Ticker for time spent in level (used for levelcard display) -INT16 spstage_start; -INT16 sstage_start; -INT16 sstage_end; +INT16 spstage_start = 0; +INT16 sstage_start = 0; +INT16 sstage_end = 0; boolean looptitle = true; boolean useNightsSS = false; @@ -134,42 +134,42 @@ boolean countdowntimeup = false; cutscene_t *cutscenes[128]; -INT16 nextmapoverride; -boolean skipstats; +INT16 nextmapoverride = 0; +boolean skipstats = false; // Pointers to each CTF flag -mobj_t *redflag; -mobj_t *blueflag; +mobj_t *redflag = NULL; +mobj_t *blueflag = NULL; // Pointers to CTF spawn location -mapthing_t *rflagpoint; -mapthing_t *bflagpoint; +mapthing_t *rflagpoint = NULL; +mapthing_t *bflagpoint = NULL; struct quake quake; // Map Header Information -mapheader_t* mapheaderinfo[NUMMAPS] = {NULL}; +mapheader_t* mapheaderinfo[NUMMAPS] = {}; static boolean exitgame = false; static boolean retrying = false; -UINT8 stagefailed; // Used for GEMS BONUS? Also to see if you beat the stage. +UINT8 stagefailed = 0; // Used for GEMS BONUS? Also to see if you beat the stage. -UINT16 emeralds; -UINT32 token; // Number of tokens collected in a level -UINT32 tokenlist; // List of tokens collected -INT32 tokenbits; // Used for setting token bits +UINT16 emeralds = 0; +UINT32 token = 0; // Number of tokens collected in a level +UINT32 tokenlist = 0; // List of tokens collected +INT32 tokenbits = 0; // Used for setting token bits // Old Special Stage -INT32 sstimer; // Time allotted in the special stage +INT32 sstimer = 0; // Time allotted in the special stage boolean gamedataloaded = false; // Time attack data for levels // These are dynamically allocated for space reasons now -recorddata_t *mainrecords[NUMMAPS] = {NULL}; -UINT8 mapvisited[NUMMAPS]; +recorddata_t *mainrecords[NUMMAPS] = {}; +UINT8 mapvisited[NUMMAPS] = {}; -UINT32 bluescore, redscore; // CTF and Team Match team scores +UINT32 bluescore = 0, redscore = 0; // CTF and Team Match team scores // ring count... for PERFECT! INT32 nummaprings = 0; @@ -179,12 +179,12 @@ INT32 nummapboxes = 0; INT32 numgotboxes = 0; // Elminates unnecessary searching. -boolean CheckForBustableBlocks; -boolean CheckForBouncySector; -boolean CheckForQuicksand; -boolean CheckForMarioBlocks; -boolean CheckForFloatBob; -boolean CheckForReverseGravity; +boolean CheckForBustableBlocks = false; +boolean CheckForBouncySector = false; +boolean CheckForQuicksand = false; +boolean CheckForMarioBlocks = false; +boolean CheckForFloatBob = false; +boolean CheckForReverseGravity = false; // Powerup durations UINT16 invulntics = 20*TICRATE; @@ -215,67 +215,66 @@ INT32 gameovertics = 15*TICRATE; UINT8 use1upSound = 0; UINT8 maxXtraLife = 2; // Max extra lives from rings -UINT8 introtoplay; -UINT8 creditscutscene; +UINT8 introtoplay = 0; +UINT8 creditscutscene = 0; // Emerald locations -mobj_t *hunt1; -mobj_t *hunt2; -mobj_t *hunt3; +mobj_t *hunt1 = NULL; +mobj_t *hunt2 = NULL; +mobj_t *hunt3 = NULL; -tic_t racecountdown, exitcountdown; // for racing +tic_t racecountdown = 0, exitcountdown = 0; // for racing -fixed_t gravity; -fixed_t mapobjectscale; +fixed_t gravity = 0; +fixed_t mapobjectscale = FRACUNIT; struct maplighting maplighting; -INT16 autobalance; //for CTF team balance -INT16 teamscramble; //for CTF team scramble -INT16 scrambleplayers[MAXPLAYERS]; //for CTF team scramble -INT16 scrambleteams[MAXPLAYERS]; //for CTF team scramble -INT16 scrambletotal; //for CTF team scramble -INT16 scramblecount; //for CTF team scramble +INT16 autobalance = 0; //for CTF team balance +INT16 teamscramble = 0; //for CTF team scramble +INT16 scrambleplayers[MAXPLAYERS] = {}; //for CTF team scramble +INT16 scrambleteams[MAXPLAYERS] = {}; //for CTF team scramble +INT16 scrambletotal = 0; //for CTF team scramble +INT16 scramblecount = 0; //for CTF team scramble -INT32 cheats; //for multiplayer cheat commands +INT32 cheats = 0; //for multiplayer cheat commands // SRB2Kart // Cvars that we don't want changed mid-game -UINT8 gamespeed; // Game's current speed (or difficulty, or cc, or etc); 0 for easy, 1 for normal, 2 for hard +UINT8 gamespeed = 0; // Game's current speed (or difficulty, or cc, or etc); 0 for easy, 1 for normal, 2 for hard boolean encoremode = false; // Encore Mode currently enabled? -boolean prevencoremode; -boolean franticitems; // Frantic items currently enabled? -boolean comeback; // Battle Mode's karma comeback is on/off +boolean prevencoremode = 0; +boolean franticitems = 0; // Frantic items currently enabled? +boolean comeback = 0; // Battle Mode's karma comeback is on/off // Voting system -INT16 votelevels[4][2]; // Levels that were rolled by the host -SINT8 votes[MAXPLAYERS]; // Each player's vote -SINT8 pickedvote; // What vote the host rolls +INT16 votelevels[4][2] = {}; // Levels that were rolled by the host +SINT8 votes[MAXPLAYERS] = {}; // Each player's vote +SINT8 pickedvote = 0; // What vote the host rolls // Server-sided, synched variables -SINT8 battlewanted[4]; // WANTED players in battle, worth x2 points -tic_t wantedcalcdelay; // Time before it recalculates WANTED -tic_t indirectitemcooldown; // Cooldown before any more Shrink, SPB, or any other item that works indirectly is awarded -tic_t hyubgone; // Cooldown before hyudoro is allowed to be rerolled -tic_t mapreset; // Map reset delay when enough players have joined an empty game -UINT8 nospectategrief; // How many players need to be in-game to eliminate last; for preventing spectate griefing -boolean thwompsactive; // Thwomps activate on lap 2 -SINT8 spbplace; // SPB exists, give the person behind better items -boolean startedInFreePlay; // Map was started in free play +SINT8 battlewanted[4] = {}; // WANTED players in battle, worth x2 points +tic_t wantedcalcdelay = 0; // Time before it recalculates WANTED +tic_t indirectitemcooldown = 0; // Cooldown before any more Shrink, SPB, or any other item that works indirectly is awarded +tic_t hyubgone = 0; // Cooldown before hyudoro is allowed to be rerolled +tic_t mapreset = 0; // Map reset delay when enough players have joined an empty game +UINT8 nospectategrief = 0; // How many players need to be in-game to eliminate last; for preventing spectate griefing +boolean thwompsactive = 0; // Thwomps activate on lap 2 +SINT8 spbplace = 0; // SPB exists, give the person behind better items +boolean startedInFreePlay = false; // Map was started in free play // Client-sided, unsynched variables (NEVER use in anything that needs to be synced with other players) -boolean legitimateexit; // Did this client actually finish the match? -boolean comebackshowninfo; // Have you already seen the "ATTACK OR PROTECT" message? -static INT16 randmapbuffer[NUMMAPS+1]; // Buffer for maps RandMap is allowed to roll +boolean legitimateexit = 0; // Did this client actually finish the match? +boolean comebackshowninfo = 0; // Have you already seen the "ATTACK OR PROTECT" message? +static INT16 randmapbuffer[NUMMAPS+1] = {}; // Buffer for maps RandMap is allowed to roll -tic_t hidetime; +tic_t hidetime = 0; // Grading -UINT32 timesBeaten; -UINT32 timesBeatenWithEmeralds; -//UINT32 timesBeatenUltimate; +UINT32 timesBeaten = 0; +UINT32 timesBeatenWithEmeralds = 0; -INT16 prevmap, nextmap; +INT16 prevmap = 0, nextmap = 0; // Analog Control void SendWeaponPref(void); @@ -470,7 +469,7 @@ consvar_t cv_cechotoggle = {"show_cecho", "On", CV_SAVE, cechotoggle_t, NULL, 0, #endif #ifdef SEENAMES -player_t *seenplayer; // player we're aiming at right now +player_t *seenplayer = NULL; // player we're aiming at right now #endif char player_names[MAXPLAYERS][MAXPLAYERNAME+1] = @@ -493,7 +492,7 @@ char player_names[MAXPLAYERS][MAXPLAYERNAME+1] = "Player 16" }; // SRB2kart - removed Players 17 through 32 -INT32 player_name_changes[MAXPLAYERS]; +INT32 player_name_changes[MAXPLAYERS] = {}; INT16 rw_maximums[NUM_WEAPONS] = { @@ -797,9 +796,9 @@ boolean InputDown(INT32 gc, UINT8 p) } } -INT32 localaiming[MAXSPLITSCREENPLAYERS] = {0}; -angle_t localangle[MAXSPLITSCREENPLAYERS] = {0}; -boolean camspin[MAXSPLITSCREENPLAYERS] = {0}; +INT32 localaiming[MAXSPLITSCREENPLAYERS] = {}; +angle_t localangle[MAXSPLITSCREENPLAYERS] = {}; +boolean camspin[MAXSPLITSCREENPLAYERS] = {}; static fixed_t forwardmove[2] = {25<>16, 50<>16}; static fixed_t sidemove[2] = {2<>16, 4<>16}; diff --git a/src/hardware/hw_clip.c b/src/hardware/hw_clip.c index 6066d8528..624dc4234 100644 --- a/src/hardware/hw_clip.c +++ b/src/hardware/hw_clip.c @@ -80,14 +80,13 @@ typedef struct clipnode_s - { - struct clipnode_s *prev, *next; - angle_t start, end; - } clipnode_t; +{ + struct clipnode_s *prev, *next; + angle_t start, end; +} clipnode_t; -clipnode_t *freelist; -clipnode_t *clipnodes; -clipnode_t *cliphead; +static clipnode_t *freelist; +static clipnode_t *cliphead; static clipnode_t * gld_clipnode_GetNew(void); static clipnode_t * gld_clipnode_NewRange(angle_t start, angle_t end); diff --git a/src/hardware/hw_defs.h b/src/hardware/hw_defs.h index 590e03a63..ce903c82d 100644 --- a/src/hardware/hw_defs.h +++ b/src/hardware/hw_defs.h @@ -117,7 +117,7 @@ typedef struct typedef struct { - FLOAT x,y,z; // position + FLOAT x, y, z; // position FLOAT anglex, angley, anglez; // aimingangle / viewangle FLOAT scalex, scaley, scalez; FLOAT fovangle; diff --git a/src/hardware/hw_main.cpp b/src/hardware/hw_main.cpp index 969b976ff..2db86af78 100644 --- a/src/hardware/hw_main.cpp +++ b/src/hardware/hw_main.cpp @@ -75,19 +75,19 @@ boolean gl_drawing_stencil = false; static INT32 current_bsp_culling_distance = 0; -FTransform atransform; +FTransform atransform = {}; // Float variants of viewx, viewy, viewz, etc. static float gl_viewx, gl_viewy, gl_viewz; -float gl_viewsin, gl_viewcos; +float gl_viewsin = 0.0f, gl_viewcos = 0.0f; static float gl_viewludsin, gl_viewludcos; static angle_t gl_aimingangle; -seg_t *gl_curline; -side_t *gl_sidedef; -line_t *gl_linedef; -sector_t *gl_frontsector; -sector_t *gl_backsector; +seg_t *gl_curline = NULL; +side_t *gl_sidedef = NULL; +line_t *gl_linedef = NULL; +sector_t *gl_frontsector = NULL; +sector_t *gl_backsector = NULL; // values for the far clipping plane static constexpr float clipping_distances[] = {1024.0f, 2048.0f, 4096.0f, 6144.0f, 8192.0f, 12288.0f, 16384.0f}; @@ -5327,7 +5327,9 @@ void HWR_SetTransform(float fpov) atransform.fliptype = TRANSFORM_FLIP; } else if (postimg & POSTIMG_MIRROR) + { atransform.fliptype = TRANSFORM_MIRROR; + } // Set transform. GL_SetTransform(&atransform); diff --git a/src/hardware/hw_md2.c b/src/hardware/hw_md2.c index 911f382a9..763fb873c 100644 --- a/src/hardware/hw_md2.c +++ b/src/hardware/hw_md2.c @@ -72,10 +72,9 @@ #include #endif -md2_t md2_models[NUMSPRITES]; -md2_t md2_playermodels[MAXSKINS]; -md2_t md2_localplayermodels[MAXLOCALSKINS]; - +md2_t md2_models[NUMSPRITES] = {}; +md2_t md2_playermodels[MAXSKINS] = {}; +md2_t md2_localplayermodels[MAXLOCALSKINS] = {}; /* * free model diff --git a/src/hardware/hw_portal.c b/src/hardware/hw_portal.c index db17d05bf..d8ad87354 100644 --- a/src/hardware/hw_portal.c +++ b/src/hardware/hw_portal.c @@ -30,7 +30,7 @@ SINT8 gl_portal_state = GLPORTAL_OFF; -gl_portallist_t *currentportallist; +gl_portallist_t *currentportallist = NULL; // clip the area outside the portal destination window void HWR_PortalClipping(gl_portal_t *portal) @@ -168,8 +168,10 @@ void HWR_RenderPortal(gl_portal_t* portal, gl_portal_t* rootportal, const float // go to portal frame lmao HWR_PortalFrame(portal); + // call HWR_RenderViewpoint HWR_RenderPortalViewpoint(portal, player, stencil_level + 1, true); + // return to current frame if (rootportal) HWR_PortalFrame(rootportal); diff --git a/src/p_enemy.c b/src/p_enemy.c index a487eb328..880f110cd 100644 --- a/src/p_enemy.c +++ b/src/p_enemy.c @@ -28,8 +28,8 @@ boolean LUA_CallAction(enum actionnum actionnum, void *thing); -INT32 var1; -INT32 var2; +INT32 var1 = 0; +INT32 var2 = 0; // // P_NewChaseDir related LUT. diff --git a/src/p_map.c b/src/p_map.c index aea01c6a7..f9d828b98 100644 --- a/src/p_map.c +++ b/src/p_map.c @@ -41,32 +41,32 @@ #include "m_perfstats.h" // ps_checkposition_calls -fixed_t tmbbox[4]; -mobj_t *tmthing; +fixed_t tmbbox[4] = {}; +mobj_t *tmthing = NULL; static INT32 tmflags; -fixed_t tmx; -fixed_t tmy; +fixed_t tmx = 0; +fixed_t tmy = 0; // If "floatok" true, move would be ok // if within "tmfloorz - tmceilingz". -boolean floatok; +boolean floatok = false; -fixed_t tmfloorz, tmceilingz; -static fixed_t tmdropoffz, tmdrpoffceilz; // drop-off floor/ceiling heights -mobj_t *tmfloorthing; // the thing corresponding to tmfloorz or NULL if tmfloorz is from a sector -mobj_t *tmhitthing; // the solid thing you bumped into (for collisions) -pslope_t *tmfloorslope, *tmceilingslope; +fixed_t tmfloorz = 0, tmceilingz = 0; +static fixed_t tmdropoffz = 0, tmdrpoffceilz = 0; // drop-off floor/ceiling heights +mobj_t *tmfloorthing = NULL; // the thing corresponding to tmfloorz or NULL if tmfloorz is from a sector +mobj_t *tmhitthing = NULL; // the solid thing you bumped into (for collisions) +pslope_t *tmfloorslope = NULL, *tmceilingslope = NULL; // keep track of the line that lowers the ceiling, // so missiles don't explode against sky hack walls -line_t *ceilingline; +line_t *ceilingline = NULL; // set by PIT_CheckLine() for any line that stopped the PIT_CheckLine() // that is, for any line which is 'solid' -line_t *blockingline; +line_t *blockingline = NULL; msecnode_t *sector_list = NULL; -camera_t *mapcampointer; +camera_t *mapcampointer = NULL; // // TELEPORT MOVE diff --git a/src/p_mobj.c b/src/p_mobj.c index 86261a644..1813522e7 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -43,7 +43,7 @@ consvar_t cv_splats = {"splats", "On", CV_SAVE, CV_OnOff, NULL, 0, NULL, NULL, 0, 0, NULL}; #endif -actioncache_t actioncachehead; +actioncache_t actioncachehead = {}; static mobj_t *overlaycap = NULL; static mobj_t *shadowcap = NULL; diff --git a/src/p_saveg.c b/src/p_saveg.c index 46d52917a..7c2bd9e95 100644 --- a/src/p_saveg.c +++ b/src/p_saveg.c @@ -35,7 +35,7 @@ #include "lua_script.h" #include "p_slopes.h" -savedata_t savedata; +savedata_t savedata = {}; // Block UINT32s to attempt to ensure that the correct data is // being sent and received diff --git a/src/p_setup.c b/src/p_setup.c index b70cdebd6..b81bfd30f 100644 --- a/src/p_setup.c +++ b/src/p_setup.c @@ -92,7 +92,7 @@ // Map MD5, calculated on level load. // Sent to clients in PT_SERVERINFO. // -unsigned char mapmd5[16]; +unsigned char mapmd5[16] = {}; // true when level was loaded from netsave boolean midgamejoin = false; @@ -102,22 +102,22 @@ boolean midgamejoin = false; // Store VERTEXES, LINEDEFS, SIDEDEFS, etc. // -size_t numvertexes, numsegs, numsectors, numsubsectors, numnodes, numlines, numsides, nummapthings; -vertex_t *vertexes; -seg_t *segs; -sector_t *sectors; -subsector_t *subsectors; -node_t *nodes; -line_t *lines; -side_t *sides; -mapthing_t *mapthings; -sector_t *spawnsectors; -line_t *spawnlines; -side_t *spawnsides; -INT32 numstarposts; -boolean levelloading; +size_t numvertexes = 0, numsegs = 0, numsectors = 0, numsubsectors = 0, numnodes = 0, numlines = 0, numsides = 0, nummapthings = 0; +vertex_t *vertexes = NULL; +seg_t *segs = NULL; +sector_t *sectors = NULL; +subsector_t *subsectors = NULL; +node_t *nodes = NULL; +line_t *lines = NULL; +side_t *sides = NULL; +mapthing_t *mapthings = NULL; +sector_t *spawnsectors = NULL; +line_t *spawnlines = NULL; +side_t *spawnsides = NULL; +INT32 numstarposts = 0; +boolean levelloading = false; -virtres_t *curmapvirt; +virtres_t *curmapvirt = NULL; // BLOCKMAP // Created from axis aligned bounding box @@ -127,32 +127,32 @@ virtres_t *curmapvirt; // by spatial subdivision in 2D. // // Blockmap size. -INT32 bmapwidth, bmapheight; // size in mapblocks +INT32 bmapwidth = 0, bmapheight = 0; // size in mapblocks -INT32 *blockmap; // INT32 for large maps +INT32 *blockmap = NULL; // INT32 for large maps // offsets in blockmap are from here -INT32 *blockmaplump; // Big blockmap +INT32 *blockmaplump = NULL; // Big blockmap // origin of block map -fixed_t bmaporgx, bmaporgy; +fixed_t bmaporgx = 0, bmaporgy = 0; // for thing chains -mobj_t **blocklinks; -precipmobj_t **precipblocklinks; +mobj_t **blocklinks = NULL; +precipmobj_t **precipblocklinks = NULL; // REJECT // For fast sight rejection. // Speeds up enemy AI by skipping detailed LineOf Sight calculation. // Without special effect, this could be used as a PVS lookup as well. // -UINT8 *rejectmatrix; +UINT8 *rejectmatrix = NULL; // Maintain single and multi player starting spots. -INT32 numdmstarts, numcoopstarts, numredctfstarts, numbluectfstarts; +INT32 numdmstarts = 0, numcoopstarts = 0, numredctfstarts = 0, numbluectfstarts = 0; -mapthing_t *deathmatchstarts[MAX_DM_STARTS]; -mapthing_t *playerstarts[MAXPLAYERS]; -mapthing_t *bluectfstarts[MAXPLAYERS]; -mapthing_t *redctfstarts[MAXPLAYERS]; +mapthing_t *deathmatchstarts[MAX_DM_STARTS] = {}; +mapthing_t *playerstarts[MAXPLAYERS] = {}; +mapthing_t *bluectfstarts[MAXPLAYERS] = {}; +mapthing_t *redctfstarts[MAXPLAYERS] = {}; // Global state for PartialAddWadFile/MultiSetupWadFiles // Might be replacable with parameters, but non-trivial when the functions are called on separate tics diff --git a/src/p_spec.c b/src/p_spec.c index c7a6dc15f..7332154a8 100644 --- a/src/p_spec.c +++ b/src/p_spec.c @@ -44,7 +44,7 @@ // Not sure if this is necessary, but it was in w_wad.c, so I'm putting it here too -Shadow Hog #include -mobj_t *skyboxmo[2]; +mobj_t *skyboxmo[2] = {}; // Amount (dx, dy) vector linedef is shifted right to get scroll amount #define SCROLL_SHIFT 5 @@ -93,7 +93,7 @@ static void P_AddSpikeThinker(sector_t *sec, INT32 referrer); //SoM: 3/7/2000: New sturcture without limits. -anim_t *lastanim; +anim_t *lastanim = NULL; anim_t *anims = NULL; /// \todo free leak static size_t maxanims; diff --git a/src/p_tick.c b/src/p_tick.c index 35dc25164..d8b21aa86 100644 --- a/src/p_tick.c +++ b/src/p_tick.c @@ -44,7 +44,7 @@ // Dynamic slopes #include "p_slopes.h" -tic_t leveltime; +tic_t leveltime = 0; // // THINKERS @@ -55,8 +55,8 @@ tic_t leveltime; // // Both the head and tail of the thinker list. -thinker_t thinkercap; -thinker_t precipcap; +thinker_t thinkercap = {}; +thinker_t precipcap = {}; void Command_Numthinkers_f(void) { diff --git a/src/r_bsp.cpp b/src/r_bsp.cpp index 87d775c87..ea0f5c17a 100644 --- a/src/r_bsp.cpp +++ b/src/r_bsp.cpp @@ -26,11 +26,11 @@ #include "qs22j.h" -seg_t *curline; -side_t *sidedef; -line_t *linedef; -sector_t *frontsector; -sector_t *backsector; +seg_t *curline = NULL; +side_t *sidedef = NULL; +line_t *linedef = NULL; +sector_t *frontsector = NULL; +sector_t *backsector = NULL; // very ugly realloc() of drawsegs at run-time, I upped it to 512 // instead of 256.. and someone managed to send me a level with @@ -40,11 +40,11 @@ drawseg_t *drawsegs = NULL; drawseg_t *ds_p = NULL; // indicates doors closed wrt automap bugfix: -INT32 doorclosed; +INT32 doorclosed = 0; // A wall was drawn covering the whole screen, which means we // can block off the BSP across that seg. -boolean g_walloffscreen; +boolean g_walloffscreen = false; boolean R_NoEncore(sector_t *sector, boolean ceiling) { diff --git a/src/r_data.c b/src/r_data.c index 4dc6653ea..da5a81dac 100644 --- a/src/r_data.c +++ b/src/r_data.c @@ -83,7 +83,7 @@ typedef struct // a patch or sprite is composed of zero or more columns. // -size_t numspritelumps, max_spritelumps; +size_t numspritelumps = 0, max_spritelumps = 0; // textures INT32 numtextures = 0; // total number of textures found, @@ -110,7 +110,7 @@ UINT8 invertmap[256]; #endif // for debugging/info purposes -size_t flatmemory, spritememory, texturememory; // gotta play by 2.2 rules to get this to work +static size_t flatmemory = 0, spritememory = 0, texturememory = 0; // gotta play by 2.2 rules to get this to work // Blends two pixels together, using the equation // that matches the specified alpha style. diff --git a/src/r_data.h b/src/r_data.h index c77ac8b0e..090c363ed 100644 --- a/src/r_data.h +++ b/src/r_data.h @@ -91,8 +91,6 @@ UINT8 *R_GetFlat(lumpnum_t flatnum); void R_InitData(void); void R_PrecacheLevel(void); -extern size_t flatmemory, spritememory, texturememory; - // Retrieval. // Floor/ceiling opaque texture tiles, // lookup by name. For animation? diff --git a/src/r_draw.cpp b/src/r_draw.cpp index c2b0f9e28..f27b0023c 100644 --- a/src/r_draw.cpp +++ b/src/r_draw.cpp @@ -41,40 +41,40 @@ /** \brief view info */ -INT32 viewwidth, viewheight, viewwindowx, viewwindowy; +INT32 viewwidth = 0, viewheight = 0, viewwindowx = 0, viewwindowy = 0; // ========================================================================= // COLUMN DRAWING CODE STUFF // ========================================================================= -drawcolumndata_t g_dc; +drawcolumndata_t g_dc = {}; // ----------------------- // translucency stuff here // ----------------------- #define NUMTRANSTABLES 9 // how many translucency tables are used -UINT8 *transtables; // translucency tables -UINT8 *blendtables[NUMBLENDMAPS]; +UINT8 *transtables = NULL; // translucency tables +UINT8 *blendtables[NUMBLENDMAPS] = {}; // -------------------------------------------- // c drawer routines // -------------------------------------------- -coldrawfunc_t *colfunc; -coldrawfunc_t *colfuncs[COLDRAWFUNC_MAX]; -int colfunctype; +coldrawfunc_t *colfunc = NULL; +coldrawfunc_t *colfuncs[COLDRAWFUNC_MAX] = {}; +int colfunctype = 0; // ========================================================================= // SPAN DRAWING CODE STUFF // ========================================================================= -drawspandata_t g_ds; +drawspandata_t g_ds = {}; // Vectors for Software's tilted slope drawers -floatv3_t *ds_su, *ds_sv, *ds_sz; +floatv3_t *ds_su = NULL, *ds_sv = NULL, *ds_sz = NULL; -float focallengthf; +float focallengthf = 0.0f; // For, uh, tilted lighting, duh. //static INT32 *tiltlighting; @@ -83,8 +83,8 @@ float focallengthf; // c drawer routines // -------------------------------------------- -spandrawfunc_t *spanfunc; -spandrawfunc_t *spanfuncs[SPANDRAWFUNC_MAX]; +spandrawfunc_t *spanfunc = NULL; +spandrawfunc_t *spanfuncs[SPANDRAWFUNC_MAX] = {}; // ========================================================================== // OLD DOOM FUZZY EFFECT @@ -105,10 +105,10 @@ spandrawfunc_t *spanfuncs[SPANDRAWFUNC_MAX]; #define DEFAULT_STARTTRANSCOLOR 160 #define NUM_PALETTE_ENTRIES 256 -static UINT8 **translationtablecache[TT_CACHE_SIZE] = {NULL}; -static UINT8 **localtranslationtablecache[MAXLOCALSKINS] = {NULL}; +static UINT8 **translationtablecache[TT_CACHE_SIZE] = {}; +static UINT8 **localtranslationtablecache[MAXLOCALSKINS] = {}; -CV_PossibleValue_t Color_cons_t[MAXSKINCOLORS+1]; +CV_PossibleValue_t Color_cons_t[MAXSKINCOLORS+1] = {}; struct GenerateBlendTables_State { diff --git a/src/r_main.cpp b/src/r_main.cpp index b6d0e7f0f..1887b0381 100644 --- a/src/r_main.cpp +++ b/src/r_main.cpp @@ -49,54 +49,54 @@ // increment every time a check is made size_t validcount = 1; -INT32 centerx, centery; +INT32 centerx = 0, centery = 0; -fixed_t centerxfrac, centeryfrac; -fixed_t projection; -fixed_t projectiony; // aspect ratio -fixed_t fovtan; // field of view +fixed_t centerxfrac = 0, centeryfrac = 0; +fixed_t projection = 0; +fixed_t projectiony = 0; // aspect ratio +fixed_t fovtan = 0; // field of view // just for profiling purposes -size_t framecount; +size_t framecount = 0; -size_t loopcount; +size_t loopcount = 0; -fixed_t viewx, viewy, viewz; -angle_t viewangle, aimingangle, viewroll; +fixed_t viewx = 0, viewy = 0, viewz = 0; +angle_t viewangle = 0, aimingangle = 0, viewroll = 0; UINT8 viewssnum = 0; -fixed_t viewcos, viewsin; -boolean skyVisible; -boolean skyVisiblePerPlayer[MAXSPLITSCREENPLAYERS]; // saved values of skyVisible for each splitscreen player -sector_t *viewsector; -player_t *viewplayer; +fixed_t viewcos = 0, viewsin = 0; +boolean skyVisible = 0; +boolean skyVisiblePerPlayer[MAXSPLITSCREENPLAYERS] = {}; // saved values of skyVisible for each splitscreen player +sector_t *viewsector = NULL; +player_t *viewplayer = NULL; -fixed_t renderdeltatics; -boolean renderisnewtic; +fixed_t renderdeltatics = 0; +boolean renderisnewtic = true; // // precalculated math tables // -angle_t clipangle; -angle_t doubleclipangle; +angle_t clipangle = 0; +angle_t doubleclipangle = 0; // The viewangletox[viewangle + FINEANGLES/4] lookup // maps the visible view angles to screen X coordinates, // flattening the arc to a flat projection plane. // There will be many angles mapped to the same X. -INT32 viewangletox[FINEANGLES/2]; +INT32 viewangletox[FINEANGLES/2] = {}; // The xtoviewangleangle[] table maps a screen pixel // to the lowest viewangle that maps back to x ranges // from clipangle to -clipangle. angle_t *xtoviewangle = NULL; -lighttable_t *scalelight[LIGHTLEVELS][MAXLIGHTSCALE]; -lighttable_t *scalelightfixed[MAXLIGHTSCALE]; -lighttable_t *zlight[LIGHTLEVELS][MAXLIGHTZ]; +lighttable_t *scalelight[LIGHTLEVELS][MAXLIGHTSCALE] = {}; +lighttable_t *scalelightfixed[MAXLIGHTSCALE] = {}; +lighttable_t *zlight[LIGHTLEVELS][MAXLIGHTZ] = {}; // Hack to support extra boom colormaps. -size_t num_extra_colormaps; -extracolormap_t extra_colormaps[MAXCOLORMAPS]; +size_t num_extra_colormaps = 0; +extracolormap_t extra_colormaps[MAXCOLORMAPS] = {}; // Performance stats precise_t ps_prevframetime = 0; diff --git a/src/r_patchrotation.cpp b/src/r_patchrotation.cpp index 5d4b5478c..485a8b9f1 100644 --- a/src/r_patchrotation.cpp +++ b/src/r_patchrotation.cpp @@ -23,8 +23,8 @@ // // Angles precalculated in R_InitSprites. // -fixed_t rollcosang[ROTANGLES]; -fixed_t rollsinang[ROTANGLES]; +fixed_t rollcosang[ROTANGLES] = {}; +fixed_t rollsinang[ROTANGLES] = {}; INT32 R_GetRollAngle(angle_t rollangle) { diff --git a/src/r_portal.c b/src/r_portal.c index 432e3f50d..1a5c7c4a8 100644 --- a/src/r_portal.c +++ b/src/r_portal.c @@ -21,16 +21,16 @@ #include "r_things.h" #include "r_sky.h" -UINT8 portalrender; /**< When rendering a portal, it establishes the depth of the current BSP traversal. */ +UINT8 portalrender = 0; /**< When rendering a portal, it establishes the depth of the current BSP traversal. */ // Linked list for portals. -portal_t *portal_base, *portal_cap; +portal_t *portal_base = NULL, *portal_cap = NULL; -line_t *portalclipline; -sector_t *portalcullsector; -INT32 portalclipstart, portalclipend; +line_t *portalclipline = NULL; +sector_t *portalcullsector = NULL; +INT32 portalclipstart = 0, portalclipend = 0; -portal_t *g_portal; // is curline a portal seg? +portal_t *g_portal = NULL; // is curline a portal seg? void Portal_InitList (void) { diff --git a/src/r_segs.cpp b/src/r_segs.cpp index c6cb63bf5..61eac0c35 100644 --- a/src/r_segs.cpp +++ b/src/r_segs.cpp @@ -47,10 +47,10 @@ static INT32 toptexture, bottomtexture, midtexture; static bool topremap, bottomremap, midremap; static INT32 numthicksides, numbackffloors; -angle_t rw_normalangle; +angle_t rw_normalangle = 0; // angle to line origin -angle_t rw_angle1; -fixed_t rw_distance; +angle_t rw_angle1 = 0; +fixed_t rw_distance = 0; // // regular wall diff --git a/src/r_skins.c b/src/r_skins.c index 8a08da7b2..538b8c38a 100644 --- a/src/r_skins.c +++ b/src/r_skins.c @@ -33,7 +33,7 @@ #include "qs22j.h" -CV_PossibleValue_t Forceskin_cons_t[MAXSKINS+2]; // huehuehuehuehue +CV_PossibleValue_t Forceskin_cons_t[MAXSKINS+2] = {}; // huehuehuehuehue #include "discord.h" @@ -55,15 +55,15 @@ UINT8 skinstatscount[9][9] = { {0, 0, 0, 0, 0, 0, 0, 0, 0} }; -UINT8 skinsorted[MAXSKINS]; -skin_t localskins[MAXLOCALSKINS]; -skin_t allskins[MAXSKINS+MAXLOCALSKINS]; +UINT8 skinsorted[MAXSKINS] = {}; +skin_t localskins[MAXLOCALSKINS] = {}; +skin_t allskins[MAXSKINS+MAXLOCALSKINS] = {}; // FIXTHIS: don't work because it must be inistilised before the config load //#define SKINVALUES #ifdef SKINVALUES -CV_PossibleValue_t skin_cons_t[MAXSKINS+1]; -CV_PossibleValue_t localskin_cons_t[MAXLOCALSKINS+1]; +CV_PossibleValue_t skin_cons_t[MAXSKINS+1] = {}; +CV_PossibleValue_t localskin_cons_t[MAXLOCALSKINS+1] = {}; #endif static void Sk_SetDefaultValue(skin_t *skin, boolean local) diff --git a/src/r_sky.c b/src/r_sky.c index 9b0a9262c..795a0f572 100644 --- a/src/r_sky.c +++ b/src/r_sky.c @@ -22,8 +22,6 @@ #include "w_wad.h" #include "z_zone.h" -#include "p_maputl.h" // P_PointOnLineSide - // // sky mapping // @@ -31,28 +29,28 @@ /** \brief Needed to store the number of the dummy sky flat. Used for rendering, as well as tracking projectiles etc. */ -INT32 skyflatnum; +INT32 skyflatnum = 0; /** \brief the lump number of the sky texture */ -INT32 skytexture; +INT32 skytexture = 0; /** \brief the horizon line in a 256x128 sky texture */ -INT32 skytexturemid; +INT32 skytexturemid = 0; /** \brief the x offset of the sky texture */ -INT32 skytextureoffset; +INT32 skytextureoffset = 0; /** \brief the scale of the sky */ -fixed_t skyscale; +fixed_t skyscale = 0; /** \brief used for keeping track of the current sky */ -INT32 levelskynum; -INT32 globallevelskynum; +INT32 levelskynum = 0; +INT32 globallevelskynum = 0; /** \brief The R_SetupSkyDraw function diff --git a/src/r_things.cpp b/src/r_things.cpp index 03eab22c8..3cf92381e 100644 --- a/src/r_things.cpp +++ b/src/r_things.cpp @@ -95,15 +95,15 @@ static INT32 drawsegs_xrange_count = 0; // There was a lot of stuff grabbed wrong, so I changed it... // -spriteinfo_t spriteinfo[NUMSPRITES]; +spriteinfo_t spriteinfo[NUMSPRITES] = {}; // // INITIALIZATION FUNCTIONS // // variables used to look up and range check thing_t sprites patches -spritedef_t *sprites; -size_t numsprites; +spritedef_t *sprites = NULL; +size_t numsprites = 0; static spriteframe_t sprtemp[64]; static size_t maxframe; @@ -112,7 +112,7 @@ static const char *spritename; // // GAME FUNCTIONS // -UINT32 visspritecount, numvisiblesprites; +UINT32 visspritecount = 0, numvisiblesprites = 0; static UINT32 clippedvissprites; static vissprite_t *visspritechunks[MAXVISSPRITES >> VISSPRITECHUNKBITS] = {NULL}; diff --git a/src/screen.c b/src/screen.c index cae7d2479..f588d0e38 100644 --- a/src/screen.c +++ b/src/screen.c @@ -36,8 +36,8 @@ // ------------------ // global video state // ------------------ -viddef_t vid; -INT32 setmodeneeded; // video mode change needed if > 0 (the mode number to set + 1) +viddef_t vid = {}; +INT32 setmodeneeded = 0; // video mode change needed if > 0 (the mode number to set + 1) static CV_PossibleValue_t shittyscreen_cons_t[] = {{0, "Okay"}, {1, "Shitty"}, {2, "Extra Shitty"}, {0, NULL}}; diff --git a/src/v_video.c b/src/v_video.c index 20c98c154..815583dc5 100644 --- a/src/v_video.c +++ b/src/v_video.c @@ -100,7 +100,7 @@ Please check it out if you're trying to maintain this. toast 18/04/17 */ -float Cubepal[2][2][2][3]; +float Cubepal[2][2][2][3] = {}; boolean Cubeapply = false; // returns whether to apply cube, selectively avoiding expensive operations -- 2.54.0 From 2a6a7e1d2b1c7ed67868d3d63f5c663f06eecd65 Mon Sep 17 00:00:00 2001 From: Alug Date: Tue, 11 Nov 2025 14:16:00 +0100 Subject: [PATCH 092/104] smol optimization R_NoEncore reuse secspecial for invertencore check --- src/r_bsp.cpp | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/src/r_bsp.cpp b/src/r_bsp.cpp index ea0f5c17a..5a0a21d76 100644 --- a/src/r_bsp.cpp +++ b/src/r_bsp.cpp @@ -48,21 +48,30 @@ boolean g_walloffscreen = false; boolean R_NoEncore(sector_t *sector, boolean ceiling) { - boolean invertencore = (GETSECSPECIAL(sector->special, 2) == 12 || GETSECSPECIAL(sector->special, 2) == 15); // keeping this incase its used + const INT32 invspecial = GETSECSPECIAL(sector->special, 2); + boolean invertencore = (invspecial == 12 || invspecial == 15); // keeping this incase its used + #if 0 // perfect implementation - INT32 val = GETSECSPECIAL(sector->special, 3); - if (val != 1 && val != 3 // spring panel + const INT32 sprnspecial = GETSECSPECIAL(sector->special, 3); + if (sprnspecial != 1 && sprnspecial != 3 // spring panel #else // optimised, see #define GETSECSPECIAL(i,j) ((i >> ((j-1)*4))&15) if ((!(sector->special & (1<<8)) || (sector->special & ((4|8)<<8))) // spring panel #endif && GETSECSPECIAL(sector->special, 4) != 6) // sneaker panel - return invertencore; + { + return invertencore; + } if (invertencore) + { return false; + } if (ceiling) + { return ((boolean)(sector->flags & SF_FLIPSPECIAL_CEILING)); + } + return ((boolean)(sector->flags & SF_FLIPSPECIAL_FLOOR)); } -- 2.54.0 From 83d538b16a43c9deed7b891dba0b285b29dbd008 Mon Sep 17 00:00:00 2001 From: Alug Date: Tue, 11 Nov 2025 14:17:41 +0100 Subject: [PATCH 093/104] gl_viewludsin/viewludcos is only needed for sprite billboarding which is not needed with shearing --- src/hardware/hw_main.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/hardware/hw_main.cpp b/src/hardware/hw_main.cpp index 2db86af78..afce789f6 100644 --- a/src/hardware/hw_main.cpp +++ b/src/hardware/hw_main.cpp @@ -3474,7 +3474,7 @@ static void HWR_DrawSpriteShadow(gl_vissprite_t *spr, patch_t *gpatch, GLPatch_t // This is expecting a pointer to an array containing 4 wallVerts for a sprite static void HWR_RotateSpritePolyToAim(gl_vissprite_t *spr, FOutVector *wallVerts, const boolean precip, const boolean papersprite) { - if (!cv_glspritebillboarding.value || papersprite) + if (!cv_glspritebillboarding.value || cv_glshearing.value || papersprite) { return; } @@ -5310,8 +5310,12 @@ void HWR_SetTransform(float fpov) HWR_SetTransformAiming(&atransform); atransform.angley = (float)(viewangle>>ANGLETOFINESHIFT)*(FINEDEGREE); - gl_viewludsin = FixedToFloat(FINECOSINE(gl_aimingangle>>ANGLETOFINESHIFT)); - gl_viewludcos = FixedToFloat(-FINESINE(gl_aimingangle>>ANGLETOFINESHIFT)); + // only needed for sprite billboarding + if (cv_glspritebillboarding.value && !cv_glshearing.value) + { + gl_viewludsin = FixedToFloat(FINECOSINE(gl_aimingangle>>ANGLETOFINESHIFT)); + gl_viewludcos = FixedToFloat(-FINESINE(gl_aimingangle>>ANGLETOFINESHIFT)); + } atransform.fovangle = fpov; // Tails HWR_RollTransform(&atransform, viewroll); -- 2.54.0 From bcd54110d523333b188df0bba2a8c07a721c38b2 Mon Sep 17 00:00:00 2001 From: Alug Date: Tue, 11 Nov 2025 14:18:21 +0100 Subject: [PATCH 094/104] only call netkeepalive between calls during gl precache this caused some crashes in blankart, hopefully this is fine though --- src/hardware/hw_cache.c | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/src/hardware/hw_cache.c b/src/hardware/hw_cache.c index b368fae6c..b4bc067be 100644 --- a/src/hardware/hw_cache.c +++ b/src/hardware/hw_cache.c @@ -615,9 +615,6 @@ static void HWR_PrecacheLevelFlats(void) // go through all sectors to determine if it should be remapped for encore for (i = 0; i < numsectors; i++) { - // prevent timeouts - NetKeepAlive(); - sector_t *sec = §ors[i]; // gotta check sector floor and ceiling @@ -649,9 +646,6 @@ static void HWR_PrecacheLevelFlats(void) // just load every flat in the level for (i = 0; i < numlevelflats; i++) { - // prevent timeouts - NetKeepAlive(); - const levelflat_t *levelflat = &levelflats[i]; lump = levelflat->lumpnum; @@ -688,9 +682,6 @@ static void HWR_PrecacheLevelTextures(void) for (i = 0; i < numlines; i++) { - // prevent timeouts - NetKeepAlive(); - const line_t *line = &lines[i]; #ifdef GLENCORE const int noencoremap = ((encoremap && (line->flags & ML_TFERLINE)) ? 2 : 1); @@ -784,9 +775,6 @@ static void HWR_PrecacheLevelTextures(void) for (i = 0; i < numsprites; i++) { - // prevent timeouts - NetKeepAlive(); - if (!spritepresent[i]) continue; @@ -830,11 +818,20 @@ void HWR_PrecacheLevel(void) // Precache flats. HWR_PrecacheLevelFlats(); + // prevent timeouts + NetKeepAlive(); + // Precache textures. HWR_PrecacheLevelTextures(); + // prevent timeouts + NetKeepAlive(); + // Precache sprites. //HWR_PrecacheLevelSprites(); + + // prevent timeouts + //NetKeepAlive(); } void HWR_LoadMapTextures(size_t pnumtextures) -- 2.54.0 From d93419724630e76cdce8a126307e9a6baeadf1c1 Mon Sep 17 00:00:00 2001 From: Alug Date: Tue, 11 Nov 2025 14:48:59 +0100 Subject: [PATCH 095/104] git merge pls --- src/d_main.c | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/src/d_main.c b/src/d_main.c index 7a738288b..14b205418 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -166,6 +166,57 @@ UINT8 ctrldown = 0; // 0x1 left, 0x2 right UINT8 altdown = 0; // 0x1 left, 0x2 right boolean capslock = 0; // gee i wonder what this does. +static void D_PadMenuScrollInput(UINT8 input) +{ + event_t dpadev; + memset(&dpadev, 0, sizeof(event_t)); + dpadev.type = ev_keydown; + + switch (input) + { + case DPAD_UP: + dpadev.data1 = KEY_UPARROW; + break; + case DPAD_DOWN: + dpadev.data1 = KEY_DOWNARROW; + break; + case DPAD_LEFT: + dpadev.data1 = KEY_LEFTARROW; + break; + case DPAD_RIGHT: + dpadev.data1 = KEY_RIGHTARROW; + break; + } + + D_PostEvent(&dpadev); // put into eventlist +} + +#define SCROLLDELAY 19 + +// Check if any dpad button is held +// and pass it to the eventlist +static void D_GamePadMenuScrollTicker(void) +{ + UINT8 i; + static UINT8 menuInputDelayTimer = 0; + + for (i = 0; i < MAXSPLITSCREENPLAYERS; i++) + { + if (dpadscrollstate[i]) + { + if (menuInputDelayTimer < SCROLLDELAY) + menuInputDelayTimer++; + else if (menuInputDelayTimer == SCROLLDELAY) + D_PadMenuScrollInput(i); + + return; + } + } + + menuInputDelayTimer = 0; +} +#undef SCROLLDELAY + static UINT16 curcolor[MAXSPLITSCREENPLAYERS] = {}; static void D_DeviceLEDTick(void) -- 2.54.0 From c080fc873247280c5c677f5381ae677abe2d320c Mon Sep 17 00:00:00 2001 From: Alug Date: Tue, 11 Nov 2025 22:39:13 +0100 Subject: [PATCH 096/104] GL_UpdateTexture: fix small oversight from when i refactored it GL_TEXFMT_AP_88 needs to increment the image data ptr even if chromakeyed --- src/hardware/r_opengl/r_opengl.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/hardware/r_opengl/r_opengl.c b/src/hardware/r_opengl/r_opengl.c index 566d2458c..cb7eca43c 100644 --- a/src/hardware/r_opengl/r_opengl.c +++ b/src/hardware/r_opengl/r_opengl.c @@ -2004,7 +2004,7 @@ void GL_UpdateTexture(GLMipmap_t *pTexInfo) { if (chromakeyed && (*pImgData == HWR_PATCHES_CHROMAKEY_COLORINDEX)) { - tex[idx].s = (byteColor_t){0, 0, 0, 0}; + memset(&tex[idx].s, 0, sizeof(byteColor_t)); pTexInfo->flags |= TF_TRANSPARENT; // there is a hole in it } else @@ -2016,10 +2016,9 @@ void GL_UpdateTexture(GLMipmap_t *pTexInfo) if (texinfoformat != GL_TEXFMT_AP_88) continue; - if (chromakeyed) - continue; - tex[idx].s.alpha = *pImgData; + if (!chromakeyed) + tex[idx].s.alpha = *pImgData; pImgData++; } } @@ -2054,9 +2053,9 @@ void GL_UpdateTexture(GLMipmap_t *pTexInfo) { for (i = 0; i < w; i++, idx++) { - tex[idx].s.red = *pImgData; - tex[idx].s.green = *pImgData; - tex[idx].s.blue = *pImgData; + tex[idx].s.red = + tex[idx].s.green = + tex[idx].s.blue = *pImgData; pImgData++; tex[idx].s.alpha = *pImgData; pImgData++; @@ -3187,7 +3186,8 @@ void GL_SetTransform(FTransform *stransform) { float dy = stransform->viewaiming * 2; - if (stransform->fliptype == TRANSFORM_FLIP || stransform->fliptype == TRANSFORM_MIRRORFLIP) + if (stransform->fliptype == TRANSFORM_FLIP + || stransform->fliptype == TRANSFORM_MIRRORFLIP) dy *= -1.0f; pglTranslatef(0.0f, -dy/BASEVIDHEIGHT, 0.0f); -- 2.54.0 From c58e54544d1dc5cade58dc8d4c0fedb373d7f0d2 Mon Sep 17 00:00:00 2001 From: Alug Date: Wed, 12 Nov 2025 16:49:44 +0100 Subject: [PATCH 097/104] initialize all remaining globals well atleast all i can find lel --- src/command.c | 2 +- src/console.c | 8 +++--- src/dehacked.c | 6 ++--- src/f_finale.c | 2 +- src/filesrch.c | 10 ++++---- src/hardware/r_opengl/r_opengl.c | 11 ++++---- src/hu_stuff.c | 44 ++++++++++++++++---------------- src/lua_script.c | 2 +- src/m_argv.c | 4 +-- src/m_cond.c | 4 +-- src/m_menu.c | 13 +++------- src/m_menu.h | 3 --- src/mserv.c | 4 +-- src/p_ceilng.c | 3 --- src/p_local.h | 2 -- src/p_polyobj.c | 10 ++++---- src/p_slopes.c | 3 +-- src/sdl/i_main.c | 2 +- src/sdl/i_system.cpp | 2 +- src/sdl/i_video.c | 6 ++--- src/sounds.c | 2 +- src/st_stuff.c | 18 ++++++------- src/w_wad.c | 2 +- 23 files changed, 75 insertions(+), 88 deletions(-) diff --git a/src/command.c b/src/command.c index 459938aa8..d12ae5d49 100644 --- a/src/command.c +++ b/src/command.c @@ -277,7 +277,7 @@ static xcommand_t *com_commands = NULL; // current commands #define MAX_ARGS 80 static size_t com_argc; -char *com_argv[MAX_ARGS]; +char *com_argv[MAX_ARGS] = {}; static const char *com_null_string = ""; static char *com_args = NULL; // current command args or NULL diff --git a/src/console.c b/src/console.c index 3172b9f20..2757b22e7 100644 --- a/src/console.c +++ b/src/console.c @@ -58,7 +58,7 @@ I_mutex con_mutex; static boolean con_started = false; // console has been initialised boolean con_startup = false; // true at game startup, screen need refreshing static boolean con_forcepic = true; // at startup toggle console translucency when first off - boolean con_recalc; // set true when screen size has changed + boolean con_recalc = false; // set true when screen size has changed static tic_t con_tick; // console ticker for anim or blinking prompt cursor // con_scrollup should use time (currenttime - lasttime).. @@ -66,8 +66,8 @@ static tic_t con_tick; // console ticker for anim or blinking prompt cursor static boolean consoletoggle; // true when console key pushed, ticker will handle static boolean consoleready; // console prompt is ready - INT32 con_destlines; // vid lines used by console at final position -static INT32 con_curlines; // vid lines currently used by console + INT32 con_destlines = 0; // vid lines used by console at final position +static INT32 con_curlines; // vid lines currently used by console static UINT8 con_hudlines; // number of console heads up message lines static UINT32 con_hudtime[MAXHUDLINES]; // remaining time of display for hud msg lines @@ -83,7 +83,7 @@ static size_t con_totallines; // lines of console text into the console buf static size_t con_width; // columns of chars, depend on vid mode width static size_t con_scrollup; // how many rows of text to scroll up (pgup/pgdn) -UINT32 con_scalefactor; // text size scale factor +UINT32 con_scalefactor = 0; // text size scale factor // hold 32 last lines of input for history #define CON_MAXPROMPTCHARS 256 diff --git a/src/dehacked.c b/src/dehacked.c index 1e2fd5798..a3540fdff 100644 --- a/src/dehacked.c +++ b/src/dehacked.c @@ -47,9 +47,9 @@ // Free slot names // The crazy word-reading stuff uses these. -char *FREE_STATES[NUMSTATEFREESLOTS]; -char *FREE_MOBJS[NUMMOBJFREESLOTS]; -UINT8 used_spr[(NUMSPRITEFREESLOTS / 8) + 1]; // Bitwise flag for sprite freeslot in use! I would use ceil() here if I could, but it only saves 1 byte of memory anyway. +char *FREE_STATES[NUMSTATEFREESLOTS] = {}; +char *FREE_MOBJS[NUMMOBJFREESLOTS] = {}; +UINT8 used_spr[(NUMSPRITEFREESLOTS / 8) + 1] = {}; // Bitwise flag for sprite freeslot in use! I would use ceil() here if I could, but it only saves 1 byte of memory anyway. #define initfreeslots() {\ memset(FREE_STATES,0,sizeof(char *) * NUMSTATEFREESLOTS);\ diff --git a/src/f_finale.c b/src/f_finale.c index ca22349a0..450910021 100644 --- a/src/f_finale.c +++ b/src/f_finale.c @@ -208,7 +208,7 @@ static void F_SkyScroll(INT32 scrollspeed) INT32 intro_scenenum = 0; INT32 intro_curtime = 0; -const char *introtext[NUMINTROSCENES]; +const char *introtext[NUMINTROSCENES] = {}; static tic_t introscenetime[NUMINTROSCENES] = { diff --git a/src/filesrch.c b/src/filesrch.c index eb68222e2..c0940b2eb 100644 --- a/src/filesrch.c +++ b/src/filesrch.c @@ -44,16 +44,16 @@ consvar_t cv_addons_search_case = {"addons_search_case", "No", CV_SAVE, CV_YesNo static CV_PossibleValue_t addons_search_type_cons_t[] = {{0, "Start"}, {1, "Anywhere"}, {0, NULL}}; consvar_t cv_addons_search_type = {"addons_search_type", "Anywhere", CV_SAVE, addons_search_type_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; -char menupath[MAXFILEPATH]; -size_t menupathindex[menudepth]; +char menupath[MAXFILEPATH] = {}; +size_t menupathindex[menudepth] = {}; size_t menudepthleft = menudepth; char menusearchbuf[MAXSTRINGLENGTH+1]; textinput_t menusearch; -char **dirmenu, **coredirmenu; // core only local for this file -size_t sizedirmenu, sizecoredirmenu; // ditto -size_t dir_on[menudepth]; +char **dirmenu = NULL, **coredirmenu = NULL; // core only local for this file +size_t sizedirmenu = 0, sizecoredirmenu = 0; // ditto +size_t dir_on[menudepth] = {}; UINT8 refreshdirmenu = 0; char *refreshdirname = NULL; diff --git a/src/hardware/r_opengl/r_opengl.c b/src/hardware/r_opengl/r_opengl.c index cb7eca43c..80697eb8c 100644 --- a/src/hardware/r_opengl/r_opengl.c +++ b/src/hardware/r_opengl/r_opengl.c @@ -25,7 +25,7 @@ // Eeeeh not sure is this right way, but it works < sry :c < sry again it had to go :c -#if defined (HWRENDER) && !defined (NOROPENGL) +#if defined (HWRENDER) #include "../../r_fps.h" // For R_GetTimeFrac, used for the leveltime shader uniform @@ -101,7 +101,7 @@ static LTListItem *LightTablesHead = NULL; static RGBA_t screenPalette[256] = {0}; // the palette for the postprocessing step in palette rendering static GLuint screenPaletteTex = 0; // 1D texture containing the screen palette static GLuint paletteLookupTex = 0; // 3D texture containing RGB -> palette index lookup table -RGBA_t myPaletteData[256]; // the palette for converting textures to RGBA +RGBA_t myPaletteData[256] = {0}; // the palette for converting textures to RGBA static GLint gltexformat = GL_RGB5_A1; GLint screen_width = 0; // used by Draw2DLine() @@ -128,7 +128,7 @@ int majorGL = 0, minorGL = 0; //Hurdler: 04/10/2000: added for the kick ass coronas as Boris wanted;-) static GLfloat modelMatrix[16]; -GLfloat projMatrix[16]; +GLfloat projMatrix[16] = {0}; static GLint viewport[4]; #ifdef USE_FBO_OGL @@ -216,7 +216,7 @@ static const GLfloat byte2float[256] = { // -----------------+ #ifdef DEBUG_TO_FILE -FILE *gllogstream; +FILE *gllogstream = NULL; #endif FUNCPRINTF void GL_DBG_Printf(const char *format, ...) @@ -1138,7 +1138,6 @@ static void GL_Perspective(GLfloat fovy, GLfloat aspect) { 0.0f, 0.0f, 0.0f, 0.0f}, }; - const GLfloat focallength = (GLfloat)(1.0f / (GLfloat)tan(fovy * (GLfloat)M_PIl / 360.0f)); const GLfloat deltaZ = FAR_CLIPPING_PLANE - NEAR_CLIPPING_PLANE; if ((fabsf((float)deltaZ) < 1.0E-36f) || fpclassify(aspect) == FP_ZERO) @@ -1146,6 +1145,8 @@ static void GL_Perspective(GLfloat fovy, GLfloat aspect) return; } + const GLfloat focallength = (GLfloat)(1.0f / (GLfloat)tan(fovy * (GLfloat)M_PIl / 360.0f)); + m[0][0] = focallength / aspect; m[1][1] = focallength; m[2][2] = -(FAR_CLIPPING_PLANE + NEAR_CLIPPING_PLANE) / deltaZ; diff --git a/src/hu_stuff.c b/src/hu_stuff.c index 955bebb2f..8819d63b4 100644 --- a/src/hu_stuff.c +++ b/src/hu_stuff.c @@ -68,32 +68,32 @@ //------------------------------------------- // heads up font //------------------------------------------- -patch_t *hu_font[HU_FONTSIZE]; -patch_t *kart_font[KART_FONTSIZE]; // SRB2kart -patch_t *tny_font[HU_FONTSIZE]; -patch_t *tallnum[10]; // 0-9 +patch_t *hu_font[HU_FONTSIZE] = {}; +patch_t *kart_font[KART_FONTSIZE] = {}; // SRB2kart +patch_t *tny_font[HU_FONTSIZE] = {}; +patch_t *tallnum[10] = {}; // 0-9 // Level title and credits fonts -patch_t *lt_font[LT_FONTSIZE]; -patch_t *cred_font[CRED_FONTSIZE]; +patch_t *lt_font[LT_FONTSIZE] = {}; +patch_t *cred_font[CRED_FONTSIZE] = {}; // ping font // Note: I'd like to adress that at this point we might *REALLY* want to work towards a common drawString function that can take any font we want because this is really turning into a MESS. :V -Lat' -patch_t *pingnum[10]; -patch_t *pinggfx[5]; // small ping graphic -patch_t *pingmeasure[2]; // ping measurement graphic +patch_t *pingnum[10] = {}; +patch_t *pinggfx[5] = {}; // small ping graphic +patch_t *pingmeasure[2] = {}; // ping measurement graphic -patch_t *ranknum[10]; // rank numbers +patch_t *ranknum[10] = {}; // rank numbers -patch_t *framecounter; -patch_t *frameslash; // framerate stuff. Used in screen.c +patch_t *framecounter = NULL; +patch_t *frameslash = NULL; // framerate stuff. Used in screen.c -static player_t *plr; -boolean chat_on; // entering a chat message? +static player_t *plr = NULL; +boolean chat_on = false; // entering a chat message? static char w_chat_buf[HU_MAXMSGLEN + 1]; static textinput_t w_chat; static boolean headsupactive = false; -boolean hu_showscores; // draw rankings +boolean hu_showscores = false; // draw rankings static char hu_tick; static tic_t hu_emoteanim = 0; #define MAXEMOTESUGGESTIONS 8 @@ -101,14 +101,14 @@ static emote_t *emote_suggestions[MAXEMOTESUGGESTIONS] = {0}; static huddrawlist_h luahuddrawlist_scores; -patch_t *rflagico; -patch_t *bflagico; -patch_t *rmatcico; -patch_t *bmatcico; -patch_t *tallminus; +patch_t *rflagico = NULL; +patch_t *bflagico = NULL; +patch_t *rmatcico = NULL; +patch_t *bmatcico = NULL; +patch_t *tallminus = NULL; // song credits -static patch_t *songcreditbg; +static patch_t *songcreditbg = NULL; // ------- // protos. @@ -122,7 +122,7 @@ consvar_t cv_showspecstuff = {"showspecstuff", "No", CV_SAVE, CV_YesNo, NULL, 0, // KEYBOARD LAYOUTS FOR ENTERING TEXT //====================================================================== -char *shiftxform; +char *shiftxform = NULL; char english_shiftxform[] = { diff --git a/src/lua_script.c b/src/lua_script.c index 448d7221d..96ce94a22 100644 --- a/src/lua_script.c +++ b/src/lua_script.c @@ -41,7 +41,7 @@ lua_State *gL = NULL; // Mathlib global state static lua_State *mL = NULL; -int hook_defrosting; +int hook_defrosting = 0; // List of internal libraries to load from SRB2 static lua_CFunction liblist[] = { diff --git a/src/m_argv.c b/src/m_argv.c index b62d390d9..36c73d61c 100644 --- a/src/m_argv.c +++ b/src/m_argv.c @@ -20,11 +20,11 @@ /** \brief number of arg */ -INT32 myargc; +INT32 myargc = 0; /** \brief string table */ -char **myargv; +char **myargv = NULL; /** \brief did we alloc myargv ourselves? */ diff --git a/src/m_cond.c b/src/m_cond.c index f9d871969..acf78e6ef 100644 --- a/src/m_cond.c +++ b/src/m_cond.c @@ -25,10 +25,10 @@ // Map triggers for linedef executors // 32 triggers, one bit each -UINT32 unlocktriggers; +UINT32 unlocktriggers = 0; // The meat of this system lies in condition sets -conditionset_t conditionSets[MAXCONDITIONSETS]; +conditionset_t conditionSets[MAXCONDITIONSETS] = {}; // Default Emblem locations emblem_t emblemlocations[MAXEMBLEMS] = diff --git a/src/m_menu.c b/src/m_menu.c index 09a0c6350..cd5aa04b6 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -145,19 +145,19 @@ I_mutex m_menu_mutex; M_waiting_mode_t m_waiting_mode = M_NOT_WAITING; -const char *quitmsg[NUM_QUITMESSAGES]; +const char *quitmsg[NUM_QUITMESSAGES] = {}; // Stuff for customizing the player select screen Tails 09-22-2003 -description_t description[MAXSKINS]; +description_t description[MAXSKINS] = {}; -INT32 mapwads[NUMMAPS]; +INT32 mapwads[NUMMAPS] = {}; boolean browselocalskins = false; boolean menuactive = false; boolean fromlevelselect = false; -char menu_text_input_buf[MAXSTRINGLENGTH]; +char menu_text_input_buf[MAXSTRINGLENGTH] = {}; static textinput_t menuinput; static INT32 coolalphatimer = 9; @@ -171,7 +171,6 @@ typedef enum } levellist_mode_t; levellist_mode_t levellistmode = LLM_CREATESERVER; -UINT8 maplistoption = 0; static char joystickInfo[8][29]; @@ -181,10 +180,6 @@ static float serverlistslidex; static INT32 serverlistsearched[MAXSERVERLIST] = {0}; static UINT32 serverlistsearchedcount = 0; -//static saveinfo_t savegameinfo[MAXSAVEGAMES]; // Extra info about the save games. - -INT16 startmap; // Mario, NiGHTS, or just a plain old normal game? - static INT16 itemOn = 1; // menu item skull is on, Hack by Tails 09-18-2002 static INT16 skullAnimCounter = 10; // skull animation counter static boolean interpTimerHackAllow = 0; diff --git a/src/m_menu.h b/src/m_menu.h index de4f3b983..8391ef994 100644 --- a/src/m_menu.h +++ b/src/m_menu.h @@ -282,9 +282,6 @@ extern CV_PossibleValue_t gametype_cons_t[]; extern char dummystaffname[22]; -extern INT16 startmap; -extern INT32 ultimate_selectable; - #define MAXSAVEGAMES 31 //note: last save game is "no save" #define NOSAVESLOT MAXSAVEGAMES-1 //slot where Play Without Saving appears diff --git a/src/mserv.c b/src/mserv.c index c7eb50442..4de05216e 100644 --- a/src/mserv.c +++ b/src/mserv.c @@ -89,10 +89,10 @@ consvar_t cv_masterserver_nagattempts = {"masterserver_nagattempts", "5", CV_SAV #if defined (MASTERSERVER) && defined (HAVE_THREADS) -int ms_QueryId; +int ms_QueryId = 0; I_mutex ms_QueryId_mutex; -msg_server_t *ms_ServerList; +msg_server_t *ms_ServerList = NULL; I_mutex ms_ServerList_mutex; #endif diff --git a/src/p_ceilng.c b/src/p_ceilng.c index 8170343c9..a00d78008 100644 --- a/src/p_ceilng.c +++ b/src/p_ceilng.c @@ -24,9 +24,6 @@ // CEILINGS // ========================================================================== -// the list of ceilings moving currently, including crushers -INT32 ceilmovesound = sfx_None; - /** Moves a moving ceiling. * * \param ceiling Thinker for the ceiling to be moved. diff --git a/src/p_local.h b/src/p_local.h index dc101502f..6977cc4b1 100644 --- a/src/p_local.h +++ b/src/p_local.h @@ -474,8 +474,6 @@ void P_DoNightsScore(player_t *player); // #include "p_spec.h" -extern INT32 ceilmovesound; - // Factor to scale scrolling effect into mobj-carrying properties = 3/32. // (This is so scrolling floors and objects on them can move at same speed.) #define CARRYFACTOR (FRACUNIT-ORIG_FRICTION) diff --git a/src/p_polyobj.c b/src/p_polyobj.c index 5e5590ced..15090a7ea 100644 --- a/src/p_polyobj.c +++ b/src/p_polyobj.c @@ -90,14 +90,14 @@ // // The Polyobjects -polyobj_t *PolyObjects; -INT32 numPolyObjects; +polyobj_t *PolyObjects = NULL; +INT32 numPolyObjects = 0; // Polyobject Blockmap -- initialized in P_LoadBlockMap -polymaplink_t **polyblocklinks; +polymaplink_t **polyblocklinks = NULL; -static size_t *KnownPolySides; -static size_t KnownPolySidesCount; +static size_t *KnownPolySides = NULL; +static size_t KnownPolySidesCount = 0; // // Static Data diff --git a/src/p_slopes.c b/src/p_slopes.c index 850813331..2ec2898b9 100644 --- a/src/p_slopes.c +++ b/src/p_slopes.c @@ -38,7 +38,6 @@ static void P_UpdateSlopeLightOffset(pslope_t *slope) fixed_t light = FRACUNIT; fixed_t extralight = 0; - if (slope->normal.z == 0) { slope->lightOffset = 0; @@ -296,7 +295,7 @@ static fixed_t P_GetExtent(sector_t *sector, line_t *line) // Find furthest vertex from the reference line. It, along with the two ends // of the line, will define the plane. - for(i = 0; i < sector->linecount; i++) + for (i = 0; i < sector->linecount; i++) { line_t *li = sector->lines[i]; vertex_t tempv; diff --git a/src/sdl/i_main.c b/src/sdl/i_main.c index b2ab7777f..cc04dc6a6 100644 --- a/src/sdl/i_main.c +++ b/src/sdl/i_main.c @@ -53,7 +53,7 @@ extern int SDL_main(int argc, char *argv[]); #ifdef LOGMESSAGES FILE *logstream = NULL; -char logfilename[1024]; +char logfilename[1024] = {}; #endif #ifndef DOXYGEN diff --git a/src/sdl/i_system.cpp b/src/sdl/i_system.cpp index 5281a7f01..272379aa8 100644 --- a/src/sdl/i_system.cpp +++ b/src/sdl/i_system.cpp @@ -227,7 +227,7 @@ typedef struct char buffer[256]; } feild_t; -feild_t tty_con; +feild_t tty_con = {}; // lock to prevent clearing partial lines, since not everything // printed ends on a newline. diff --git a/src/sdl/i_video.c b/src/sdl/i_video.c index 787ce1b07..0410dc442 100644 --- a/src/sdl/i_video.c +++ b/src/sdl/i_video.c @@ -151,9 +151,9 @@ static UINT32 localPalette[256]; Uint16 realwidth = BASEVIDWIDTH; Uint16 realheight = BASEVIDHEIGHT; #define HalfWarpMouse(x,y) if (wrapmouseok) SDL_WarpMouseInWindow(window, (Uint16)(x/2),(Uint16)(y/2)) -static SDL_bool exposevideo = SDL_FALSE; -static SDL_bool usesdl2soft = SDL_FALSE; -static SDL_bool borderlesswindow = SDL_FALSE; +static SDL_bool exposevideo = SDL_FALSE; +static SDL_bool usesdl2soft = SDL_FALSE; +static SDL_bool borderlesswindow = SDL_FALSE; // SDL2 vars SDL_Window *window = NULL; diff --git a/src/sounds.c b/src/sounds.c index c1e2f83a7..dbd5478bd 100644 --- a/src/sounds.c +++ b/src/sounds.c @@ -972,7 +972,7 @@ sfxinfo_t S_sfx[NUMSFX] = // initialized to NULL }; -char freeslotnames[sfx_freeslot0 + NUMSFXFREESLOTS + NUMSKINSFXSLOTS][7]; +char freeslotnames[sfx_freeslot0 + NUMSFXFREESLOTS + NUMSKINSFXSLOTS][7] = {}; // Prepare free sfx slots to add sfx at run time void S_InitRuntimeSounds (void) diff --git a/src/st_stuff.c b/src/st_stuff.c index a4b3d0465..99188e919 100644 --- a/src/st_stuff.c +++ b/src/st_stuff.c @@ -61,13 +61,13 @@ tic_t directortoggletimer = 0; // STATUS BAR DATA // -patch_t *facerankprefix[MAXSKINS]; // ranking -patch_t *facewantprefix[MAXSKINS]; // wanted -patch_t *facemmapprefix[MAXSKINS]; // minimap +patch_t *facerankprefix[MAXSKINS] = {}; // ranking +patch_t *facewantprefix[MAXSKINS] = {}; // wanted +patch_t *facemmapprefix[MAXSKINS] = {}; // minimap -patch_t *localfacerankprefix[MAXLOCALSKINS]; // ranking -patch_t *localfacewantprefix[MAXLOCALSKINS]; // wanted -patch_t *localfacemmapprefix[MAXLOCALSKINS]; // minimap +patch_t *localfacerankprefix[MAXLOCALSKINS] = {}; // ranking +patch_t *localfacewantprefix[MAXLOCALSKINS] = {}; // wanted +patch_t *localfacemmapprefix[MAXLOCALSKINS] = {}; // minimap /*char *facerankprefix_name[MAXSKINS]; // ranking char *facewantprefix_name[MAXSKINS]; // wanted @@ -91,8 +91,8 @@ static patch_t *envelope; #endif // current player for overlay drawing -player_t *stplyr; -UINT8 stplyrnum; +player_t *stplyr = NULL; +UINT8 stplyrnum = 0; // SRB2kart @@ -342,7 +342,7 @@ void ST_changeDemoView(void) // STATUS BAR OVERLAY // ========================================================================= -boolean st_overlay; +boolean st_overlay = true; // ========================================================================= // INTERNAL DRAWING diff --git a/src/w_wad.c b/src/w_wad.c index b55d0e98f..640ee0367 100644 --- a/src/w_wad.c +++ b/src/w_wad.c @@ -107,7 +107,7 @@ static const char pat_end[] = {0x50, 0x4b, 0x05, 0x06, 0x00}; // GLOBALS //=========================================================================== UINT16 numwadfiles = 0; // number of active wadfiles -wadfile_t *wadfiles[MAX_WADFILES]; // 0 to numwadfiles-1 are valid +wadfile_t *wadfiles[MAX_WADFILES] = {}; // 0 to numwadfiles-1 are valid // W_Shutdown // Closes all of the WAD files before quitting -- 2.54.0 From b779c9e63d28c228817fda203ed7fb99b82786da Mon Sep 17 00:00:00 2001 From: Alug Date: Wed, 12 Nov 2025 19:04:26 +0100 Subject: [PATCH 098/104] ensure byteColor_t is packed make sure it is always sized 4 bytes and not padded at all since that is assumed to be the size --- src/doomtype.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/doomtype.h b/src/doomtype.h index 78867ed69..8043b7285 100644 --- a/src/doomtype.h +++ b/src/doomtype.h @@ -293,7 +293,7 @@ typedef struct UINT8 green; UINT8 blue; UINT8 alpha; -} byteColor_t; +} ATTRPACK byteColor_t; union FColorRGBA { -- 2.54.0 From aa985823ba451838206435552203d8c6885c6f23 Mon Sep 17 00:00:00 2001 From: Alug Date: Wed, 12 Nov 2025 19:20:29 +0100 Subject: [PATCH 099/104] speed up GL_SetPalette "take 2" ensuring bytecolor is packed nd mypalettedata is initialized this seems to now work properly on windows --- src/hardware/r_opengl/r_opengl.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/hardware/r_opengl/r_opengl.c b/src/hardware/r_opengl/r_opengl.c index 80697eb8c..b8466ee3a 100644 --- a/src/hardware/r_opengl/r_opengl.c +++ b/src/hardware/r_opengl/r_opengl.c @@ -1499,14 +1499,14 @@ void GL_ReadScreenTexture(int tex, UINT8 *restrict dest, INT32 scale) // -----------------+ void GL_SetPalette(RGBA_t *palette) { - INT32 i; + const size_t palsize = (sizeof(RGBA_t) * 256); - for (i = 0; i < 256; i++) + // on a palette change, you have to reload all of the textures + if (memcmp(myPaletteData, palette, palsize)) { - myPaletteData[i].s = palette[i].s; + memcpy(myPaletteData, palette, palsize); + GL_Flush(); } - - GL_Flush(); } // -----------------+ -- 2.54.0 From dfca24b37093dc2bc2e5df85377f45e1d9691f91 Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 13 Nov 2025 14:53:12 +0100 Subject: [PATCH 100/104] HWR_SkyDomeVertex: tiny optimization save a tiny bit of float division, use float sin and cos functions, handle implicit float conversions --- src/hardware/hw_main.cpp | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/src/hardware/hw_main.cpp b/src/hardware/hw_main.cpp index afce789f6..a2539cc7d 100644 --- a/src/hardware/hw_main.cpp +++ b/src/hardware/hw_main.cpp @@ -5067,42 +5067,46 @@ static void HWR_ProjectPrecipitationSprite(precipmobj_t *thing) static gl_sky_t gl_sky; -#define DEG2RADGL(a) ((a * M_PIl) / 180.0f) - static void HWR_SkyDomeVertex(gl_sky_t *sky, gl_skyvertex_t *vbo, int r, int c, signed char yflip, float delta, boolean foglayer) { + static constexpr float radians = (float)(M_PIl / 180.0f); static constexpr float scale = 10000.0f; - static constexpr float maxSideAngle = DEG2RADGL(60.0f); + static constexpr float maxSideAngle = 60.0f * radians; - float topAngle = DEG2RADGL(c / (float)sky->columns * 360.0f); + float topAngle = ((float)c / (float)sky->columns * 360.0f) * radians; float sideAngle = (maxSideAngle * (float)(sky->rows - r) / (float)sky->rows); - float height = (float)(sin(sideAngle)); - float realRadius = (scale * (float)cos(sideAngle)); - float x = (realRadius * (float)cos(topAngle)); + float height = sinf(sideAngle); + float realRadius = (scale * cosf(sideAngle)); + float x = (realRadius * cosf(topAngle)); float y = (!yflip) ? scale * height : -scale * height; - float z = (realRadius * (float)sin(topAngle)); - float timesRepeat = (4 * (256.0f / sky->width)); - - if (std::fpclassify(timesRepeat) == FP_ZERO) - timesRepeat = 1.0f; + float z = (realRadius * sinf(topAngle)); + float timesRepeat; if (!foglayer) { + timesRepeat = (4.0f * (256.0f / (float)sky->width)); + + if (std::fpclassify(timesRepeat) == FP_ZERO) + timesRepeat = 1.0f; + vbo->r = 255; vbo->g = 255; vbo->b = 255; vbo->a = (r == 0 ? 0 : 255); // And the texture coordinates. - vbo->u = (-timesRepeat * c / (float)sky->columns); - if (!yflip) // Flipped Y is for the lower hemisphere. - vbo->v = (r / (float)sky->rows) + 0.5f; + vbo->u = (-timesRepeat * (float)c / (float)sky->columns); + + if (!yflip) // Flipped Y is for the lower hemisphere. + vbo->v = ((float)r / (float)sky->rows) + 0.5f; else - vbo->v = 1.0f + ((sky->rows - r) / (float)sky->rows) + 0.5f; + vbo->v = 1.0f + ((float)(sky->rows - r) / (float)sky->rows) + 0.5f; } if (r != 4) + { y += 300.0f; + } // And finally the vertex. vbo->x = x; -- 2.54.0 From 4e8865d4957894ff9bbb1ef0beb03f253212632d Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 13 Nov 2025 17:37:30 +0100 Subject: [PATCH 101/104] cleanup some wonky float/double maths --- src/dedicated/i_system.c | 42 ++++++++++++++++++-------------- src/hardware/hw_main.cpp | 24 +++++++++--------- src/hardware/r_opengl/r_opengl.c | 14 +++++------ src/sdl/i_system.cpp | 34 ++++++++++++++------------ 4 files changed, 63 insertions(+), 51 deletions(-) diff --git a/src/dedicated/i_system.c b/src/dedicated/i_system.c index d2ffa12ad..fe8889405 100644 --- a/src/dedicated/i_system.c +++ b/src/dedicated/i_system.c @@ -808,20 +808,23 @@ static void I_SetupMumble(void) void I_UpdateMumble(const mobj_t *mobj, const listener_t listener) { #ifdef HAVE_MUMBLE - double angle; + float angle; fixed_t anglef; if (!mumble) return; - if (mumble->uiVersion != 2) { - wcsncpy(mumble->name, L"SRB2Kart "VERSIONSTRINGW, 256); + if (mumble->uiVersion != 2) + { + wcsncpy(mumble->name, L"SRB2Kart " VERSIONSTRINGW, 256); wcsncpy(mumble->description, L"Sonic Robo Blast 2 Kart with integrated Mumble Link support.", 2048); mumble->uiVersion = 2; } mumble->uiTick++; - if (!netgame || gamestate != GS_LEVEL) { // Zero out, but never delink. + // Zero out, but never delink. + if (!netgame || gamestate != GS_LEVEL) + { mumble->fAvatarPosition[0] = mumble->fAvatarPosition[1] = mumble->fAvatarPosition[2] = 0.0f; mumble->fAvatarFront[0] = 1.0f; mumble->fAvatarFront[1] = mumble->fAvatarFront[2] = 0.0f; @@ -838,31 +841,34 @@ void I_UpdateMumble(const mobj_t *mobj, const listener_t listener) mumble->context_len = (UINT32)(p - mumble->context); } - if (mobj) { - mumble->fAvatarPosition[0] = FIXED_TO_FLOAT(mobj->x) / MUMBLEUNIT; - mumble->fAvatarPosition[1] = FIXED_TO_FLOAT(mobj->z) / MUMBLEUNIT; - mumble->fAvatarPosition[2] = FIXED_TO_FLOAT(mobj->y) / MUMBLEUNIT; + if (mobj) + { + mumble->fAvatarPosition[0] = FixedToFloat(mobj->x) / MUMBLEUNIT; + mumble->fAvatarPosition[1] = FixedToFloat(mobj->z) / MUMBLEUNIT; + mumble->fAvatarPosition[2] = FixedToFloat(mobj->y) / MUMBLEUNIT; anglef = AngleFixed(mobj->angle); - angle = FIXED_TO_FLOAT(anglef)*DEG2RAD; - mumble->fAvatarFront[0] = (float)cos(angle); + angle = (float)(FixedToFloat(anglef) * DEG2RAD); + mumble->fAvatarFront[0] = cosf(angle); mumble->fAvatarFront[1] = 0.0f; - mumble->fAvatarFront[2] = (float)sin(angle); - } else { + mumble->fAvatarFront[2] = sinf(angle); + } + else + { mumble->fAvatarPosition[0] = mumble->fAvatarPosition[1] = mumble->fAvatarPosition[2] = 0.0f; mumble->fAvatarFront[0] = 1.0f; mumble->fAvatarFront[1] = mumble->fAvatarFront[2] = 0.0f; } - mumble->fCameraPosition[0] = FIXED_TO_FLOAT(listener.x) / MUMBLEUNIT; - mumble->fCameraPosition[1] = FIXED_TO_FLOAT(listener.z) / MUMBLEUNIT; - mumble->fCameraPosition[2] = FIXED_TO_FLOAT(listener.y) / MUMBLEUNIT; + mumble->fCameraPosition[0] = FixedToFloat(listener.x) / MUMBLEUNIT; + mumble->fCameraPosition[1] = FixedToFloat(listener.z) / MUMBLEUNIT; + mumble->fCameraPosition[2] = FixedToFloat(listener.y) / MUMBLEUNIT; anglef = AngleFixed(listener.angle); - angle = FIXED_TO_FLOAT(anglef)*DEG2RAD; - mumble->fCameraFront[0] = (float)cos(angle); + angle = (float)(FixedToFloat(anglef) * DEG2RAD); + mumble->fCameraFront[0] = cosf(angle); mumble->fCameraFront[1] = 0.0f; - mumble->fCameraFront[2] = (float)sin(angle); + mumble->fCameraFront[2] = sinf(angle); #else (void)mobj; (void)listener; diff --git a/src/hardware/hw_main.cpp b/src/hardware/hw_main.cpp index a2539cc7d..8dc4d3804 100644 --- a/src/hardware/hw_main.cpp +++ b/src/hardware/hw_main.cpp @@ -5940,31 +5940,33 @@ static void HWR_DoPostProcessor(player_t *player) float disStart = (leveltime-1) + FixedToFloat(R_GetTimeFrac(RTF_LEVEL)); UINT8 x, y; - INT32 WAVELENGTH; - INT32 AMPLITUDE; - INT32 FREQUENCY; + float WAVELENGTH; + float AMPLITUDE; + float FREQUENCY; // Modifies the wave. if (thiscam->postimg & POSTIMG_WATER) { - WAVELENGTH = 5; - AMPLITUDE = 40; - FREQUENCY = 8; + WAVELENGTH = 5.0f; + AMPLITUDE = 40.0f; + FREQUENCY = 8.0f; } else { - WAVELENGTH = 10; - AMPLITUDE = 60; - FREQUENCY = 4; + WAVELENGTH = 10.0f; + AMPLITUDE = 60.0f; + FREQUENCY = 4.0f; } + //static constexpr float scale = ((float)SCREENVERTS - 1.0f) / 9.0f; // well this evals to just 1.0f and what is x / 1? kek + for (x = 0; x < SCREENVERTS; x++) { for (y = 0; y < SCREENVERTS; y++) { // Change X position based on its Y position. - v[x][y][0] = (x/((float)(SCREENVERTS-1.0f)/9.0f))-4.5f + (float)sin((disStart+(y*WAVELENGTH))/FREQUENCY)/AMPLITUDE; - v[x][y][1] = (y/((float)(SCREENVERTS-1.0f)/9.0f))-4.5f; + v[x][y][0] = x-4.5f + sinf(((disStart+((float)y * WAVELENGTH)) / FREQUENCY)) / AMPLITUDE; // (x / scale) + v[x][y][1] = y-4.5f; // (y / scale) } } diff --git a/src/hardware/r_opengl/r_opengl.c b/src/hardware/r_opengl/r_opengl.c index b8466ee3a..024dd2629 100644 --- a/src/hardware/r_opengl/r_opengl.c +++ b/src/hardware/r_opengl/r_opengl.c @@ -1583,11 +1583,11 @@ void GL_Draw2DLine(F2DCoord * v1, F2DCoord * v2, RGBA_t Color) // This is the preferred, 'modern' way of rendering lines -- creating a polygon. if (fabsf(v2->x - v1->x) > FLT_EPSILON) - angle = (float)atan((v2->y-v1->y)/(v2->x-v1->x)); + angle = atanf((v2->y-v1->y)/(v2->x-v1->x)); else angle = (float)N_PI_DEMI; - dx = (float)sin(angle) / (float)screen_width; - dy = (float)cos(angle) / (float)screen_height; + dx = sinf(angle) / (float)screen_width; + dy = cosf(angle) / (float)screen_height; p[0] = v1->x - dx; p[1] = -(v1->y + dy); p[2] = 1; p[3] = v2->x - dx; p[4] = -(v2->y + dy); p[5] = 1; @@ -3136,8 +3136,8 @@ void GL_DrawModelEx(model_t *model, INT32 frameIndex, float duration, float tics void GL_SetTransform(FTransform *stransform) { static boolean special_splitscreen; - GLdouble used_fov; boolean shearing = false; + float used_fov; pglLoadIdentity(); @@ -3196,11 +3196,11 @@ void GL_SetTransform(FTransform *stransform) if (special_splitscreen) { - used_fov = (float)(atan(tan(used_fov * M_PIl / 360) * 0.8) * 360 / M_PIl); - GL_Perspective((GLfloat)used_fov, 2*ASPECT_RATIO); + used_fov = (atanf(tanf(used_fov * (float)M_PI / 360.0f) * 0.8f) * 360.0f / (float)M_PI); + GL_Perspective(used_fov, 2*ASPECT_RATIO); } else - GL_Perspective((GLfloat)used_fov, ASPECT_RATIO); + GL_Perspective(used_fov, ASPECT_RATIO); pglGetFloatv(GL_PROJECTION_MATRIX, projMatrix); // added for new coronas' code (without depth buffer) pglMatrixMode(GL_MODELVIEW); diff --git a/src/sdl/i_system.cpp b/src/sdl/i_system.cpp index 272379aa8..0dc751c85 100644 --- a/src/sdl/i_system.cpp +++ b/src/sdl/i_system.cpp @@ -1260,7 +1260,7 @@ static void I_SetupMumble(void) void I_UpdateMumble(const mobj_t *mobj, const listener_t listener) { #ifdef HAVE_MUMBLE - double angle; + float angle; fixed_t anglef; if (!mumble) @@ -1274,7 +1274,9 @@ void I_UpdateMumble(const mobj_t *mobj, const listener_t listener) } mumble->uiTick++; - if (!netgame || gamestate != GS_LEVEL) { // Zero out, but never delink. + // Zero out, but never delink. + if (!netgame || gamestate != GS_LEVEL) + { mumble->fAvatarPosition[0] = mumble->fAvatarPosition[1] = mumble->fAvatarPosition[2] = 0.0f; mumble->fAvatarFront[0] = 1.0f; mumble->fAvatarFront[1] = mumble->fAvatarFront[2] = 0.0f; @@ -1293,30 +1295,32 @@ void I_UpdateMumble(const mobj_t *mobj, const listener_t listener) if (mobj) { - mumble->fAvatarPosition[0] = FIXED_TO_FLOAT(mobj->x) / MUMBLEUNIT; - mumble->fAvatarPosition[1] = FIXED_TO_FLOAT(mobj->z) / MUMBLEUNIT; - mumble->fAvatarPosition[2] = FIXED_TO_FLOAT(mobj->y) / MUMBLEUNIT; + mumble->fAvatarPosition[0] = FixedToFloat(mobj->x) / MUMBLEUNIT; + mumble->fAvatarPosition[1] = FixedToFloat(mobj->z) / MUMBLEUNIT; + mumble->fAvatarPosition[2] = FixedToFloat(mobj->y) / MUMBLEUNIT; anglef = AngleFixed(mobj->angle); - angle = FIXED_TO_FLOAT(anglef)*DEG2RAD; - mumble->fAvatarFront[0] = (float)cos(angle); + angle = (float)(FixedToFloat(anglef) * DEG2RAD); + mumble->fAvatarFront[0] = cosf(angle); mumble->fAvatarFront[1] = 0.0f; - mumble->fAvatarFront[2] = (float)sin(angle); - } else { + mumble->fAvatarFront[2] = sinf(angle); + } + else + { mumble->fAvatarPosition[0] = mumble->fAvatarPosition[1] = mumble->fAvatarPosition[2] = 0.0f; mumble->fAvatarFront[0] = 1.0f; mumble->fAvatarFront[1] = mumble->fAvatarFront[2] = 0.0f; } - mumble->fCameraPosition[0] = FIXED_TO_FLOAT(listener.x) / MUMBLEUNIT; - mumble->fCameraPosition[1] = FIXED_TO_FLOAT(listener.z) / MUMBLEUNIT; - mumble->fCameraPosition[2] = FIXED_TO_FLOAT(listener.y) / MUMBLEUNIT; + mumble->fCameraPosition[0] = FixedToFloat(listener.x) / MUMBLEUNIT; + mumble->fCameraPosition[1] = FixedToFloat(listener.z) / MUMBLEUNIT; + mumble->fCameraPosition[2] = FixedToFloat(listener.y) / MUMBLEUNIT; anglef = AngleFixed(listener.angle); - angle = FIXED_TO_FLOAT(anglef)*DEG2RAD; - mumble->fCameraFront[0] = (float)cos(angle); + angle = (float)(FixedToFloat(anglef) * DEG2RAD); + mumble->fCameraFront[0] = cosf(angle); mumble->fCameraFront[1] = 0.0f; - mumble->fCameraFront[2] = (float)sin(angle); + mumble->fCameraFront[2] = sinf(angle); #else (void)mobj; (void)listener; -- 2.54.0 From 19a4e379d7531550f8f93ff41c86ea06ca2884f5 Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 13 Nov 2025 17:38:27 +0100 Subject: [PATCH 102/104] HWR_DoWipe: always draw a black screen if it returns early otherwise this just flashes like crazy should there ever be any issue here --- src/hardware/hw_main.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/hardware/hw_main.cpp b/src/hardware/hw_main.cpp index 8dc4d3804..100028a20 100644 --- a/src/hardware/hw_main.cpp +++ b/src/hardware/hw_main.cpp @@ -5992,20 +5992,27 @@ void HWR_DoWipe(UINT8 wipenum, UINT8 scrnnum) } if (wipenum > 99 || scrnnum > 99) // not a valid wipe number + { + V_DrawFill(0, 0, BASEVIDWIDTH, BASEVIDHEIGHT, 31); // just draw a black screen instead of flashing and crap return; // shouldn't end up here really, the loop should've stopped running beforehand + } // puts the numbers into the lumpname sprintf(&lumpname[4], "%.2hu%.2hu", (UINT16)wipenum, (UINT16)scrnnum); lumpnum = W_CheckNumForName(lumpname); if (lumpnum == LUMPERROR) // again, shouldn't be here really + { + V_DrawFill(0, 0, BASEVIDWIDTH, BASEVIDHEIGHT, 31); // just draw a black screen instead of flashing and crap return; + } lsize = W_LumpLength(lumpnum); if (!(lsize == 256000 || lsize == 64000 || lsize == 16000 || lsize == 4000)) { CONS_Alert(CONS_WARNING, "Fade mask lump %s of incorrect size, ignored\n", lumpname); + V_DrawFill(0, 0, BASEVIDWIDTH, BASEVIDHEIGHT, 31); // just draw a black screen instead of flashing and crap return; // again, shouldn't get here if it is a bad size } -- 2.54.0 From efe700965014e7150a02bbcf32a1c998012b7cd9 Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 13 Nov 2025 19:00:06 +0100 Subject: [PATCH 103/104] PT_ReceivedGamestate: add missing SATURNPAK ifdef --- src/d_clisrv.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/d_clisrv.c b/src/d_clisrv.c index f69d67cfe..038661541 100644 --- a/src/d_clisrv.c +++ b/src/d_clisrv.c @@ -5854,12 +5854,14 @@ static void PT_FileFragmentFromPlayer(SINT8 node) Got_Filetxpak(); } +#ifdef SATURNPAK static void PT_ReceivedGamestate(SINT8 node) { sendingsavegame[node] = false; resendingsavegame[node] = 0; savegameresendcooldown[node] = I_GetTime() + cv_resynchcooldown.value * TICRATE; // I_GetTime() + 5 * TICRATE; } +#endif /** Handles a packet received from a node that is in game * -- 2.54.0 From 1fb60e823031358d3257cb32b407edaaece6109e Mon Sep 17 00:00:00 2001 From: Alug Date: Thu, 13 Nov 2025 19:31:20 +0100 Subject: [PATCH 104/104] fix sourcefile for src dir --- src/Sourcefile | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/Sourcefile b/src/Sourcefile index 352081bc5..462ec9871 100644 --- a/src/Sourcefile +++ b/src/Sourcefile @@ -20,6 +20,7 @@ i_tcp.c i_time.c info.c lzf.c +md5.c m_aatree.c m_anigif.c m_argv.c @@ -43,18 +44,19 @@ screen.c sounds.c st_stuff.c string.c +stun.c tables.c v_video.c w_wad.c y_inter.c z_zone.cpp -r_bsp.c +r_bsp.cpp r_data.c -r_draw.c +r_draw.cpp r_fps.cpp r_main.cpp r_patch.cpp -r_patchrotation.c +r_patchrotation.cpp r_plane.cpp r_segs.cpp r_skins.c -- 2.54.0

      DJO@Bh9KXcRxs=z4o36*V4V;VHOdtXhZ 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

    kv@Xg%R4)ysb@mPC!idJ<$ZEpMq__HnO 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�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 z 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 Q&rT>UrK6G+%GdJwKNfd7EC2ui diff --git a/libs/dll-binaries/i686/libopusfile-0.dll b/libs/dll-binaries/i686/libopusfile-0.dll index 260796b6aa5a7da89c729a465141d8ff7036695b..672ea2a996d46944f8f40f9a26fce7e145a861d8 100644 GIT binary patch literal 51712 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 T!dkP=tT$&6`*}Y1 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 y)@);~a+_qfa5uH^2X(2L214ML($k diff --git a/libs/dll-binaries/x86_64/SDL2_mixer.dll b/libs/dll-binaries/x86_64/SDL2_mixer.dll index 40bb1c14638d0cd2e0cd3b00ceee416326fcd3ed..f3a12aa3bc85298c86232cd831f8ee5c4e1b058e 100644 GIT binary patch literal 421376 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