From fbf66585eb5edd6815acbc45cbfc521d81e57cfc Mon Sep 17 00:00:00 2001 From: Alex Zenla Date: Sun, 1 Sep 2024 07:26:53 -0400 Subject: [PATCH] upgrade SDL3 to d4b80726142d9108f16d4806c09779d612501608 --- Frameworks/SDL3.xcframework/Info.plist | 86 +- .../ios-arm64/SDL3.framework/Headers/SDL.h | 1 + .../SDL3.framework/Headers/SDL_assert.h | 16 +- .../SDL3.framework/Headers/SDL_atomic.h | 12 +- .../SDL3.framework/Headers/SDL_audio.h | 214 +- .../SDL3.framework/Headers/SDL_camera.h | 21 +- .../SDL3.framework/Headers/SDL_clipboard.h | 24 +- .../SDL3.framework/Headers/SDL_error.h | 12 +- .../SDL3.framework/Headers/SDL_events.h | 191 +- .../SDL3.framework/Headers/SDL_filesystem.h | 36 +- .../SDL3.framework/Headers/SDL_gamepad.h | 59 +- .../SDL3.framework/Headers/SDL_gpu.h | 2620 +++++++++++++++++ .../SDL3.framework/Headers/SDL_haptic.h | 106 +- .../SDL3.framework/Headers/SDL_hints.h | 757 ++++- .../SDL3.framework/Headers/SDL_init.h | 67 +- .../SDL3.framework/Headers/SDL_iostream.h | 21 +- .../SDL3.framework/Headers/SDL_joystick.h | 107 +- .../SDL3.framework/Headers/SDL_keyboard.h | 95 +- .../SDL3.framework/Headers/SDL_log.h | 49 +- .../SDL3.framework/Headers/SDL_main.h | 69 +- .../SDL3.framework/Headers/SDL_messagebox.h | 12 +- .../SDL3.framework/Headers/SDL_misc.h | 6 +- .../SDL3.framework/Headers/SDL_mouse.h | 100 +- .../SDL3.framework/Headers/SDL_mutex.h | 112 +- .../SDL3.framework/Headers/SDL_oldnames.h | 10 +- .../SDL3.framework/Headers/SDL_opengl_glext.h | 40 +- .../SDL3.framework/Headers/SDL_pen.h | 273 +- .../SDL3.framework/Headers/SDL_pixels.h | 16 +- .../SDL3.framework/Headers/SDL_properties.h | 60 +- .../SDL3.framework/Headers/SDL_rect.h | 50 +- .../SDL3.framework/Headers/SDL_render.h | 472 ++- .../SDL3.framework/Headers/SDL_sensor.h | 9 +- .../SDL3.framework/Headers/SDL_stdinc.h | 96 +- .../SDL3.framework/Headers/SDL_storage.h | 74 +- .../SDL3.framework/Headers/SDL_surface.h | 215 +- .../SDL3.framework/Headers/SDL_system.h | 58 +- .../SDL3.framework/Headers/SDL_thread.h | 28 +- .../SDL3.framework/Headers/SDL_time.h | 37 +- .../SDL3.framework/Headers/SDL_timer.h | 16 +- .../SDL3.framework/Headers/SDL_video.h | 488 +-- .../SDL3.framework/Headers/SDL_vulkan.h | 18 +- .../ios-arm64/SDL3.framework/Info.plist | Bin 860 -> 860 bytes .../ios-arm64/SDL3.framework/SDL3 | Bin 1360616 -> 1382352 bytes .../SDL3.framework/compile_shaders.sh | 68 + .../ios-arm64/SDL3.framework/default.metallib | Bin 26077 -> 26077 bytes .../SDL3.framework/Headers/SDL.h | 1 + .../SDL3.framework/Headers/SDL_assert.h | 16 +- .../SDL3.framework/Headers/SDL_atomic.h | 12 +- .../SDL3.framework/Headers/SDL_audio.h | 214 +- .../SDL3.framework/Headers/SDL_camera.h | 21 +- .../SDL3.framework/Headers/SDL_clipboard.h | 24 +- .../SDL3.framework/Headers/SDL_error.h | 12 +- .../SDL3.framework/Headers/SDL_events.h | 191 +- .../SDL3.framework/Headers/SDL_filesystem.h | 36 +- .../SDL3.framework/Headers/SDL_gamepad.h | 59 +- .../SDL3.framework/Headers/SDL_gpu.h | 2620 +++++++++++++++++ .../SDL3.framework/Headers/SDL_haptic.h | 106 +- .../SDL3.framework/Headers/SDL_hints.h | 757 ++++- .../SDL3.framework/Headers/SDL_init.h | 67 +- .../SDL3.framework/Headers/SDL_iostream.h | 21 +- .../SDL3.framework/Headers/SDL_joystick.h | 107 +- .../SDL3.framework/Headers/SDL_keyboard.h | 95 +- .../SDL3.framework/Headers/SDL_log.h | 49 +- .../SDL3.framework/Headers/SDL_main.h | 69 +- .../SDL3.framework/Headers/SDL_messagebox.h | 12 +- .../SDL3.framework/Headers/SDL_misc.h | 6 +- .../SDL3.framework/Headers/SDL_mouse.h | 100 +- .../SDL3.framework/Headers/SDL_mutex.h | 112 +- .../SDL3.framework/Headers/SDL_oldnames.h | 10 +- .../SDL3.framework/Headers/SDL_opengl_glext.h | 40 +- .../SDL3.framework/Headers/SDL_pen.h | 273 +- .../SDL3.framework/Headers/SDL_pixels.h | 16 +- .../SDL3.framework/Headers/SDL_properties.h | 60 +- .../SDL3.framework/Headers/SDL_rect.h | 50 +- .../SDL3.framework/Headers/SDL_render.h | 472 ++- .../SDL3.framework/Headers/SDL_sensor.h | 9 +- .../SDL3.framework/Headers/SDL_stdinc.h | 96 +- .../SDL3.framework/Headers/SDL_storage.h | 74 +- .../SDL3.framework/Headers/SDL_surface.h | 215 +- .../SDL3.framework/Headers/SDL_system.h | 58 +- .../SDL3.framework/Headers/SDL_thread.h | 28 +- .../SDL3.framework/Headers/SDL_time.h | 37 +- .../SDL3.framework/Headers/SDL_timer.h | 16 +- .../SDL3.framework/Headers/SDL_video.h | 488 +-- .../SDL3.framework/Headers/SDL_vulkan.h | 18 +- .../SDL3.framework/Info.plist | Bin 840 -> 840 bytes .../SDL3.framework/SDL3 | Bin 3051008 -> 3004224 bytes .../_CodeSignature/CodeResources | 1227 -------- .../SDL3.framework/compile_shaders.sh | 68 + .../SDL3.framework/default.metallib | Bin 30135 -> 30135 bytes .../SDL3.framework/Versions/A/Headers/SDL.h | 1 + .../Versions/A/Headers/SDL_assert.h | 16 +- .../Versions/A/Headers/SDL_atomic.h | 12 +- .../Versions/A/Headers/SDL_audio.h | 214 +- .../Versions/A/Headers/SDL_camera.h | 21 +- .../Versions/A/Headers/SDL_clipboard.h | 24 +- .../Versions/A/Headers/SDL_error.h | 12 +- .../Versions/A/Headers/SDL_events.h | 191 +- .../Versions/A/Headers/SDL_filesystem.h | 36 +- .../Versions/A/Headers/SDL_gamepad.h | 59 +- .../Versions/A/Headers/SDL_gpu.h | 2620 +++++++++++++++++ .../Versions/A/Headers/SDL_haptic.h | 106 +- .../Versions/A/Headers/SDL_hints.h | 757 ++++- .../Versions/A/Headers/SDL_init.h | 67 +- .../Versions/A/Headers/SDL_iostream.h | 21 +- .../Versions/A/Headers/SDL_joystick.h | 107 +- .../Versions/A/Headers/SDL_keyboard.h | 95 +- .../Versions/A/Headers/SDL_log.h | 49 +- .../Versions/A/Headers/SDL_main.h | 69 +- .../Versions/A/Headers/SDL_messagebox.h | 12 +- .../Versions/A/Headers/SDL_misc.h | 6 +- .../Versions/A/Headers/SDL_mouse.h | 100 +- .../Versions/A/Headers/SDL_mutex.h | 112 +- .../Versions/A/Headers/SDL_oldnames.h | 10 +- .../Versions/A/Headers/SDL_opengl_glext.h | 40 +- .../Versions/A/Headers/SDL_pen.h | 273 +- .../Versions/A/Headers/SDL_pixels.h | 16 +- .../Versions/A/Headers/SDL_properties.h | 60 +- .../Versions/A/Headers/SDL_rect.h | 50 +- .../Versions/A/Headers/SDL_render.h | 472 ++- .../Versions/A/Headers/SDL_sensor.h | 9 +- .../Versions/A/Headers/SDL_stdinc.h | 96 +- .../Versions/A/Headers/SDL_storage.h | 74 +- .../Versions/A/Headers/SDL_surface.h | 215 +- .../Versions/A/Headers/SDL_system.h | 58 +- .../Versions/A/Headers/SDL_thread.h | 28 +- .../Versions/A/Headers/SDL_time.h | 37 +- .../Versions/A/Headers/SDL_timer.h | 16 +- .../Versions/A/Headers/SDL_video.h | 488 +-- .../Versions/A/Headers/SDL_vulkan.h | 18 +- .../Versions/A/Resources/Info.plist | 14 +- .../Versions/A/Resources/compile_shaders.sh | 68 + .../Versions/A/Resources/default.metallib | Bin 25005 -> 25005 bytes .../SDL3.framework/Versions/A/SDL3 | Bin 3775544 -> 4143448 bytes .../tvos-arm64/SDL3.framework/Headers/SDL.h | 1 + .../SDL3.framework/Headers/SDL_assert.h | 16 +- .../SDL3.framework/Headers/SDL_atomic.h | 12 +- .../SDL3.framework/Headers/SDL_audio.h | 214 +- .../SDL3.framework/Headers/SDL_camera.h | 21 +- .../SDL3.framework/Headers/SDL_clipboard.h | 24 +- .../SDL3.framework/Headers/SDL_error.h | 12 +- .../SDL3.framework/Headers/SDL_events.h | 191 +- .../SDL3.framework/Headers/SDL_filesystem.h | 36 +- .../SDL3.framework/Headers/SDL_gamepad.h | 59 +- .../SDL3.framework/Headers/SDL_gpu.h | 2620 +++++++++++++++++ .../SDL3.framework/Headers/SDL_haptic.h | 106 +- .../SDL3.framework/Headers/SDL_hints.h | 757 ++++- .../SDL3.framework/Headers/SDL_init.h | 67 +- .../SDL3.framework/Headers/SDL_iostream.h | 21 +- .../SDL3.framework/Headers/SDL_joystick.h | 107 +- .../SDL3.framework/Headers/SDL_keyboard.h | 95 +- .../SDL3.framework/Headers/SDL_log.h | 49 +- .../SDL3.framework/Headers/SDL_main.h | 69 +- .../SDL3.framework/Headers/SDL_messagebox.h | 12 +- .../SDL3.framework/Headers/SDL_misc.h | 6 +- .../SDL3.framework/Headers/SDL_mouse.h | 100 +- .../SDL3.framework/Headers/SDL_mutex.h | 112 +- .../SDL3.framework/Headers/SDL_oldnames.h | 10 +- .../SDL3.framework/Headers/SDL_opengl_glext.h | 40 +- .../SDL3.framework/Headers/SDL_pen.h | 273 +- .../SDL3.framework/Headers/SDL_pixels.h | 16 +- .../SDL3.framework/Headers/SDL_properties.h | 60 +- .../SDL3.framework/Headers/SDL_rect.h | 50 +- .../SDL3.framework/Headers/SDL_render.h | 472 ++- .../SDL3.framework/Headers/SDL_sensor.h | 9 +- .../SDL3.framework/Headers/SDL_stdinc.h | 96 +- .../SDL3.framework/Headers/SDL_storage.h | 74 +- .../SDL3.framework/Headers/SDL_surface.h | 215 +- .../SDL3.framework/Headers/SDL_system.h | 58 +- .../SDL3.framework/Headers/SDL_thread.h | 28 +- .../SDL3.framework/Headers/SDL_time.h | 37 +- .../SDL3.framework/Headers/SDL_timer.h | 16 +- .../SDL3.framework/Headers/SDL_video.h | 488 +-- .../SDL3.framework/Headers/SDL_vulkan.h | 18 +- .../tvos-arm64/SDL3.framework/Info.plist | Bin 816 -> 816 bytes .../tvos-arm64/SDL3.framework/SDL3 | Bin 1323320 -> 1345064 bytes .../SDL3.framework/compile_shaders.sh | 68 + .../SDL3.framework/default.metallib | Bin 26077 -> 26077 bytes .../SDL3.framework/Headers/SDL.h | 1 + .../SDL3.framework/Headers/SDL_assert.h | 16 +- .../SDL3.framework/Headers/SDL_atomic.h | 12 +- .../SDL3.framework/Headers/SDL_audio.h | 214 +- .../SDL3.framework/Headers/SDL_camera.h | 21 +- .../SDL3.framework/Headers/SDL_clipboard.h | 24 +- .../SDL3.framework/Headers/SDL_error.h | 12 +- .../SDL3.framework/Headers/SDL_events.h | 191 +- .../SDL3.framework/Headers/SDL_filesystem.h | 36 +- .../SDL3.framework/Headers/SDL_gamepad.h | 59 +- .../SDL3.framework/Headers/SDL_gpu.h | 2620 +++++++++++++++++ .../SDL3.framework/Headers/SDL_haptic.h | 106 +- .../SDL3.framework/Headers/SDL_hints.h | 757 ++++- .../SDL3.framework/Headers/SDL_init.h | 67 +- .../SDL3.framework/Headers/SDL_iostream.h | 21 +- .../SDL3.framework/Headers/SDL_joystick.h | 107 +- .../SDL3.framework/Headers/SDL_keyboard.h | 95 +- .../SDL3.framework/Headers/SDL_log.h | 49 +- .../SDL3.framework/Headers/SDL_main.h | 69 +- .../SDL3.framework/Headers/SDL_messagebox.h | 12 +- .../SDL3.framework/Headers/SDL_misc.h | 6 +- .../SDL3.framework/Headers/SDL_mouse.h | 100 +- .../SDL3.framework/Headers/SDL_mutex.h | 112 +- .../SDL3.framework/Headers/SDL_oldnames.h | 10 +- .../SDL3.framework/Headers/SDL_opengl_glext.h | 40 +- .../SDL3.framework/Headers/SDL_pen.h | 273 +- .../SDL3.framework/Headers/SDL_pixels.h | 16 +- .../SDL3.framework/Headers/SDL_properties.h | 60 +- .../SDL3.framework/Headers/SDL_rect.h | 50 +- .../SDL3.framework/Headers/SDL_render.h | 472 ++- .../SDL3.framework/Headers/SDL_sensor.h | 9 +- .../SDL3.framework/Headers/SDL_stdinc.h | 96 +- .../SDL3.framework/Headers/SDL_storage.h | 74 +- .../SDL3.framework/Headers/SDL_surface.h | 215 +- .../SDL3.framework/Headers/SDL_system.h | 58 +- .../SDL3.framework/Headers/SDL_thread.h | 28 +- .../SDL3.framework/Headers/SDL_time.h | 37 +- .../SDL3.framework/Headers/SDL_timer.h | 16 +- .../SDL3.framework/Headers/SDL_video.h | 488 +-- .../SDL3.framework/Headers/SDL_vulkan.h | 18 +- .../SDL3.framework/Info.plist | Bin 843 -> 843 bytes .../SDL3.framework/SDL3 | Bin 2964112 -> 2934160 bytes .../_CodeSignature/CodeResources | 1227 -------- .../SDL3.framework/compile_shaders.sh | 68 + .../SDL3.framework/default.metallib | Bin 30151 -> 30151 bytes Sources/SDLSwift/shim.h | 4 +- Sources/Voxelotl/Application.swift | 10 +- Sources/Voxelotl/Input/Mouse.swift | 3 +- 226 files changed, 24489 insertions(+), 11757 deletions(-) create mode 100644 Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_gpu.h create mode 100755 Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/compile_shaders.sh create mode 100644 Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_gpu.h delete mode 100644 Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/_CodeSignature/CodeResources create mode 100755 Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/compile_shaders.sh create mode 100644 Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_gpu.h create mode 100755 Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Resources/compile_shaders.sh create mode 100644 Frameworks/SDL3.xcframework/tvos-arm64/SDL3.framework/Headers/SDL_gpu.h create mode 100755 Frameworks/SDL3.xcframework/tvos-arm64/SDL3.framework/compile_shaders.sh create mode 100644 Frameworks/SDL3.xcframework/tvos-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_gpu.h delete mode 100644 Frameworks/SDL3.xcframework/tvos-arm64_x86_64-simulator/SDL3.framework/_CodeSignature/CodeResources create mode 100755 Frameworks/SDL3.xcframework/tvos-arm64_x86_64-simulator/SDL3.framework/compile_shaders.sh diff --git a/Frameworks/SDL3.xcframework/Info.plist b/Frameworks/SDL3.xcframework/Info.plist index 6a4517b..a89f873 100644 --- a/Frameworks/SDL3.xcframework/Info.plist +++ b/Frameworks/SDL3.xcframework/Info.plist @@ -4,49 +4,6 @@ AvailableLibraries - - BinaryPath - SDL3.framework/SDL3 - LibraryIdentifier - tvos-arm64 - LibraryPath - SDL3.framework - SupportedArchitectures - - arm64 - - SupportedPlatform - tvos - - - BinaryPath - SDL3.framework/Versions/A/SDL3 - LibraryIdentifier - macos-arm64_x86_64 - LibraryPath - SDL3.framework - SupportedArchitectures - - arm64 - x86_64 - - SupportedPlatform - macos - - - BinaryPath - SDL3.framework/SDL3 - LibraryIdentifier - ios-arm64 - LibraryPath - SDL3.framework - SupportedArchitectures - - arm64 - - SupportedPlatform - ios - BinaryPath SDL3.framework/SDL3 @@ -64,6 +21,34 @@ SupportedPlatformVariant simulator + + BinaryPath + SDL3.framework/SDL3 + LibraryIdentifier + ios-arm64 + LibraryPath + SDL3.framework + SupportedArchitectures + + arm64 + + SupportedPlatform + ios + + + BinaryPath + SDL3.framework/SDL3 + LibraryIdentifier + tvos-arm64 + LibraryPath + SDL3.framework + SupportedArchitectures + + arm64 + + SupportedPlatform + tvos + BinaryPath SDL3.framework/SDL3 @@ -81,6 +66,21 @@ SupportedPlatformVariant simulator + + BinaryPath + SDL3.framework/Versions/A/SDL3 + LibraryIdentifier + macos-arm64_x86_64 + LibraryPath + SDL3.framework + SupportedArchitectures + + arm64 + x86_64 + + SupportedPlatform + macos + CFBundlePackageType XFWK diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL.h index 4e18f63..c963394 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL.h @@ -43,6 +43,7 @@ #include #include #include +#include #include #include #include diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_assert.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_assert.h index 346d1e3..f5f798e 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_assert.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_assert.h @@ -303,9 +303,6 @@ extern SDL_DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData * * "break" so that your debugger takes control as soon as assert is triggered, * instead of risking a bad UI interaction (deadlock, etc) in the application. * - * Note that SDL_ASSERT is an _environment variable_ and not an SDL hint! - * Please refer to your platform's documentation for how to set it! - * * \param condition boolean value to test. * * \since This macro is available since SDL 3.0.0. @@ -335,9 +332,7 @@ extern SDL_DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData * * an assertion in a background thread, it might be desirable to set this to * "break" so that your debugger takes control as soon as assert is triggered, * instead of risking a bad UI interaction (deadlock, etc) in the application. - * - * Note that SDL_ASSERT is an _environment variable_ and not an SDL hint! - * Please refer to your platform's documentation for how to set it! + * * * * \param condition boolean value to test. * @@ -366,18 +361,14 @@ extern SDL_DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData * * "break" so that your debugger takes control as soon as assert is triggered, * instead of risking a bad UI interaction (deadlock, etc) in the application. * - * Note that SDL_ASSERT is an _environment variable_ and not an SDL hint! - * Please refer to your platform's documentation for how to set it! - * * \param condition boolean value to test. * * \since This macro is available since SDL 3.0.0. */ #define SDL_assert_paranoid(condition) SDL_disabled_assert(condition) -#endif /* Enable various levels of assertions. */ -#if SDL_ASSERT_LEVEL == 0 /* assertions disabled */ +#elif SDL_ASSERT_LEVEL == 0 /* assertions disabled */ # define SDL_assert(condition) SDL_disabled_assert(condition) # define SDL_assert_release(condition) SDL_disabled_assert(condition) # define SDL_assert_paranoid(condition) SDL_disabled_assert(condition) @@ -412,9 +403,6 @@ extern SDL_DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData * * "break" so that your debugger takes control as soon as assert is triggered, * instead of risking a bad UI interaction (deadlock, etc) in the application. * - * Note that SDL_ASSERT is an _environment variable_ and not an SDL hint! - * Please refer to your platform's documentation for how to set it! - * * \param condition boolean value to test. * * \since This macro is available since SDL 3.0.0. diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_atomic.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_atomic.h index fbf01c4..f159bcd 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_atomic.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_atomic.h @@ -455,8 +455,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_AtomicAdd(SDL_AtomicInt *a, int v); * \since This function is available since SDL 3.0.0. * * \sa SDL_AtomicCompareAndSwap - * \sa SDL_AtomicGetPtr - * \sa SDL_AtomicSetPtr + * \sa SDL_AtomicGetPointer + * \sa SDL_AtomicSetPointer */ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AtomicCompareAndSwapPointer(void **a, void *oldval, void *newval); @@ -475,9 +475,9 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AtomicCompareAndSwapPointer(void **a, v * \since This function is available since SDL 3.0.0. * * \sa SDL_AtomicCompareAndSwapPointer - * \sa SDL_AtomicGetPtr + * \sa SDL_AtomicGetPointer */ -extern SDL_DECLSPEC void * SDLCALL SDL_AtomicSetPtr(void **a, void *v); +extern SDL_DECLSPEC void * SDLCALL SDL_AtomicSetPointer(void **a, void *v); /** * Get the value of a pointer atomically. @@ -493,9 +493,9 @@ extern SDL_DECLSPEC void * SDLCALL SDL_AtomicSetPtr(void **a, void *v); * \since This function is available since SDL 3.0.0. * * \sa SDL_AtomicCompareAndSwapPointer - * \sa SDL_AtomicSetPtr + * \sa SDL_AtomicSetPointer */ -extern SDL_DECLSPEC void * SDLCALL SDL_AtomicGetPtr(void **a); +extern SDL_DECLSPEC void * SDLCALL SDL_AtomicGetPointer(void **a); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_audio.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_audio.h index f25959c..b7a4b7b 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_audio.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_audio.h @@ -127,6 +127,7 @@ extern "C" { */ typedef enum SDL_AudioFormat { + SDL_AUDIO_UNKNOWN = 0x0000u, /**< Unspecified audio format */ SDL_AUDIO_U8 = 0x0008u, /**< Unsigned 8-bit samples */ /* SDL_DEFINE_AUDIO_FORMAT(0, 0, 0, 8), */ SDL_AUDIO_S8 = 0x8008u, /**< Signed 8-bit samples */ @@ -531,14 +532,14 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetAudioDeviceName(SDL_AudioDeviceI * \param spec on return, will be filled with device details. * \param sample_frames pointer to store device buffer size, in sample frames. * Can be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetAudioDeviceFormat(SDL_AudioDeviceID devid, SDL_AudioSpec *spec, int *sample_frames); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetAudioDeviceFormat(SDL_AudioDeviceID devid, SDL_AudioSpec *spec, int *sample_frames); /** * Get the current channel map of an audio device. @@ -658,8 +659,8 @@ extern SDL_DECLSPEC SDL_AudioDeviceID SDLCALL SDL_OpenAudioDevice(SDL_AudioDevic * created through SDL_OpenAudioDevice() can be. * * \param dev a device opened by SDL_OpenAudioDevice(). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -668,7 +669,7 @@ extern SDL_DECLSPEC SDL_AudioDeviceID SDLCALL SDL_OpenAudioDevice(SDL_AudioDevic * \sa SDL_ResumeAudioDevice * \sa SDL_AudioDevicePaused */ -extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev); /** * Use this function to unpause audio playback on a specified device. @@ -686,8 +687,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev); * created through SDL_OpenAudioDevice() can be. * * \param dev a device opened by SDL_OpenAudioDevice(). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -696,7 +697,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev); * \sa SDL_AudioDevicePaused * \sa SDL_PauseAudioDevice */ -extern SDL_DECLSPEC int SDLCALL SDL_ResumeAudioDevice(SDL_AudioDeviceID dev); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ResumeAudioDevice(SDL_AudioDeviceID dev); /** * Use this function to query if an audio device is paused. @@ -766,8 +767,8 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioDeviceGain(SDL_AudioDeviceID devid * * \param devid the audio device on which to change gain. * \param gain the gain. 1.0f is no change, 0.0f is silence. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. @@ -776,7 +777,7 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioDeviceGain(SDL_AudioDeviceID devid * * \sa SDL_GetAudioDeviceGain */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioDeviceGain(SDL_AudioDeviceID devid, float gain); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioDeviceGain(SDL_AudioDeviceID devid, float gain); /** * Close a previously-opened audio device. @@ -823,8 +824,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_CloseAudioDevice(SDL_AudioDeviceID devid); * \param devid an audio device to bind a stream to. * \param streams an array of audio streams to bind. * \param num_streams number streams listed in the `streams` array. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -834,7 +835,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_CloseAudioDevice(SDL_AudioDeviceID devid); * \sa SDL_UnbindAudioStream * \sa SDL_GetAudioStreamDevice */ -extern SDL_DECLSPEC int SDLCALL SDL_BindAudioStreams(SDL_AudioDeviceID devid, SDL_AudioStream **streams, int num_streams); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BindAudioStreams(SDL_AudioDeviceID devid, SDL_AudioStream **streams, int num_streams); /** * Bind a single audio stream to an audio device. @@ -844,8 +845,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BindAudioStreams(SDL_AudioDeviceID devid, SD * * \param devid an audio device to bind a stream to. * \param stream an audio stream to bind to a device. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -855,7 +856,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BindAudioStreams(SDL_AudioDeviceID devid, SD * \sa SDL_UnbindAudioStream * \sa SDL_GetAudioStreamDevice */ -extern SDL_DECLSPEC int SDLCALL SDL_BindAudioStream(SDL_AudioDeviceID devid, SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BindAudioStream(SDL_AudioDeviceID devid, SDL_AudioStream *stream); /** * Unbind a list of audio streams from their audio devices. @@ -952,8 +953,8 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetAudioStreamProperties(SDL_Au * \param stream the SDL_AudioStream to query. * \param src_spec where to store the input audio format; ignored if NULL. * \param dst_spec where to store the output audio format; ignored if NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. @@ -962,9 +963,7 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetAudioStreamProperties(SDL_Au * * \sa SDL_SetAudioStreamFormat */ -extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamFormat(SDL_AudioStream *stream, - SDL_AudioSpec *src_spec, - SDL_AudioSpec *dst_spec); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetAudioStreamFormat(SDL_AudioStream *stream, SDL_AudioSpec *src_spec, SDL_AudioSpec *dst_spec); /** * Change the input and output formats of an audio stream. @@ -984,8 +983,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamFormat(SDL_AudioStream *stream * changed. * \param dst_spec the new format of the audio output; if NULL, it is not * changed. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. @@ -995,9 +994,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamFormat(SDL_AudioStream *stream * \sa SDL_GetAudioStreamFormat * \sa SDL_SetAudioStreamFrequencyRatio */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamFormat(SDL_AudioStream *stream, - const SDL_AudioSpec *src_spec, - const SDL_AudioSpec *dst_spec); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamFormat(SDL_AudioStream *stream, const SDL_AudioSpec *src_spec, const SDL_AudioSpec *dst_spec); /** * Get the frequency ratio of an audio stream. @@ -1030,8 +1027,8 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioStreamFrequencyRatio(SDL_AudioStre * \param stream the stream the frequency ratio is being changed. * \param ratio the frequency ratio. 1.0 is normal speed. Must be between 0.01 * and 100. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. @@ -1041,7 +1038,7 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioStreamFrequencyRatio(SDL_AudioStre * \sa SDL_GetAudioStreamFrequencyRatio * \sa SDL_SetAudioStreamFormat */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamFrequencyRatio(SDL_AudioStream *stream, float ratio); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamFrequencyRatio(SDL_AudioStream *stream, float ratio); /** * Get the gain of an audio stream. @@ -1077,8 +1074,8 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioStreamGain(SDL_AudioStream *stream * * \param stream the stream on which the gain is being changed. * \param gain the gain. 1.0f is no change, 0.0f is silence. - * \returns 0 on successor a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. @@ -1087,7 +1084,7 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioStreamGain(SDL_AudioStream *stream * * \sa SDL_GetAudioStreamGain */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamGain(SDL_AudioStream *stream, float gain); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamGain(SDL_AudioStream *stream, float gain); /** * Get the current input channel map of an audio stream. @@ -1174,8 +1171,8 @@ extern SDL_DECLSPEC int * SDLCALL SDL_GetAudioStreamOutputChannelMap(SDL_AudioSt * \param stream the SDL_AudioStream to change. * \param chmap the new channel map, NULL to reset to default. * \param count The number of channels in the map. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. Don't change the @@ -1186,7 +1183,7 @@ extern SDL_DECLSPEC int * SDLCALL SDL_GetAudioStreamOutputChannelMap(SDL_AudioSt * * \sa SDL_SetAudioStreamInputChannelMap */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamInputChannelMap(SDL_AudioStream *stream, const int *chmap, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamInputChannelMap(SDL_AudioStream *stream, const int *chmap, int count); /** * Set the current output channel map of an audio stream. @@ -1221,8 +1218,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamInputChannelMap(SDL_AudioStrea * \param stream the SDL_AudioStream to change. * \param chmap the new channel map, NULL to reset to default. * \param count The number of channels in the map. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. Don't change the @@ -1233,7 +1230,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamInputChannelMap(SDL_AudioStrea * * \sa SDL_SetAudioStreamInputChannelMap */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamOutputChannelMap(SDL_AudioStream *stream, const int *chmap, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamOutputChannelMap(SDL_AudioStream *stream, const int *chmap, int count); /** * Add data to the stream. @@ -1249,8 +1246,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamOutputChannelMap(SDL_AudioStre * \param stream the stream the audio data is being added to. * \param buf a pointer to the audio data to add. * \param len the number of bytes to write to the stream. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, but if the * stream has a callback set, the caller might need to manage @@ -1263,7 +1260,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamOutputChannelMap(SDL_AudioStre * \sa SDL_GetAudioStreamData * \sa SDL_GetAudioStreamQueued */ -extern SDL_DECLSPEC int SDLCALL SDL_PutAudioStreamData(SDL_AudioStream *stream, const void *buf, int len); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PutAudioStreamData(SDL_AudioStream *stream, const void *buf, int len); /** * Get converted/resampled data from the stream. @@ -1280,8 +1277,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_PutAudioStreamData(SDL_AudioStream *stream, * \param stream the stream the audio is being requested from. * \param buf a buffer to fill with audio data. * \param len the maximum number of bytes to fill. - * \returns the number of bytes read from the stream or a negative error code - * on failure; call SDL_GetError() for more information. + * \returns the number of bytes read from the stream or -1 on failure; call + * SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread, but if the * stream has a callback set, the caller might need to manage @@ -1309,7 +1306,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamData(SDL_AudioStream *stream, * clamped. * * \param stream the audio stream to query. - * \returns the number of converted/resampled bytes available. + * \returns the number of converted/resampled bytes available or -1 on + * failure; call SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1341,7 +1339,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamAvailable(SDL_AudioStream *str * clamped. * * \param stream the audio stream to query. - * \returns the number of bytes queued. + * \returns the number of bytes queued or -1 on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1362,8 +1361,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamQueued(SDL_AudioStream *stream * input, so the complete output becomes available. * * \param stream the audio stream to flush. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1371,7 +1370,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamQueued(SDL_AudioStream *stream * * \sa SDL_PutAudioStreamData */ -extern SDL_DECLSPEC int SDLCALL SDL_FlushAudioStream(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FlushAudioStream(SDL_AudioStream *stream); /** * Clear any pending data in the stream. @@ -1380,8 +1379,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_FlushAudioStream(SDL_AudioStream *stream); * stream until more is added. * * \param stream the audio stream to clear. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1392,7 +1391,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_FlushAudioStream(SDL_AudioStream *stream); * \sa SDL_GetAudioStreamQueued * \sa SDL_PutAudioStreamData */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearAudioStream(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearAudioStream(SDL_AudioStream *stream); /** * Use this function to pause audio playback on the audio device associated @@ -1407,8 +1406,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_ClearAudioStream(SDL_AudioStream *stream); * loading, etc. * * \param stream the audio stream associated with the audio device to pause. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1416,7 +1415,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_ClearAudioStream(SDL_AudioStream *stream); * * \sa SDL_ResumeAudioStreamDevice */ -extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioStreamDevice(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PauseAudioStreamDevice(SDL_AudioStream *stream); /** * Use this function to unpause audio playback on the audio device associated @@ -1427,8 +1426,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioStreamDevice(SDL_AudioStream *stre * to progress again, and audio can be generated. * * \param stream the audio stream associated with the audio device to resume. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1436,7 +1435,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioStreamDevice(SDL_AudioStream *stre * * \sa SDL_PauseAudioStreamDevice */ -extern SDL_DECLSPEC int SDLCALL SDL_ResumeAudioStreamDevice(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ResumeAudioStreamDevice(SDL_AudioStream *stream); /** * Lock an audio stream for serialized access. @@ -1455,8 +1454,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_ResumeAudioStreamDevice(SDL_AudioStream *str * all the same attributes (recursive locks are allowed, etc). * * \param stream the audio stream to lock. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1464,7 +1463,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_ResumeAudioStreamDevice(SDL_AudioStream *str * * \sa SDL_UnlockAudioStream */ -extern SDL_DECLSPEC int SDLCALL SDL_LockAudioStream(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LockAudioStream(SDL_AudioStream *stream); /** @@ -1473,8 +1472,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_LockAudioStream(SDL_AudioStream *stream); * This unlocks an audio stream after a call to SDL_LockAudioStream. * * \param stream the audio stream to unlock. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety You should only call this from the same thread that * previously called SDL_LockAudioStream. @@ -1483,7 +1482,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_LockAudioStream(SDL_AudioStream *stream); * * \sa SDL_LockAudioStream */ -extern SDL_DECLSPEC int SDLCALL SDL_UnlockAudioStream(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UnlockAudioStream(SDL_AudioStream *stream); /** * A callback that fires when data passes through an SDL_AudioStream. @@ -1558,13 +1557,12 @@ typedef void (SDLCALL *SDL_AudioStreamCallback)(void *userdata, SDL_AudioStream * Setting a NULL function turns off the callback. * * \param stream the audio stream to set the new callback on. - * \param callback the new callback function to call when data is added to the - * stream. + * \param callback the new callback function to call when data is requested + * from the stream. * \param userdata an opaque pointer provided to the callback for its own * personal use. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. This only fails if `stream` - * is NULL. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. This only fails if `stream` is NULL. * * \threadsafety It is safe to call this function from any thread. * @@ -1572,7 +1570,7 @@ typedef void (SDLCALL *SDL_AudioStreamCallback)(void *userdata, SDL_AudioStream * * \sa SDL_SetAudioStreamPutCallback */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamGetCallback(SDL_AudioStream *stream, SDL_AudioStreamCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamGetCallback(SDL_AudioStream *stream, SDL_AudioStreamCallback callback, void *userdata); /** * Set a callback that runs when data is added to an audio stream. @@ -1612,9 +1610,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamGetCallback(SDL_AudioStream *s * stream. * \param userdata an opaque pointer provided to the callback for its own * personal use. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. This only fails if `stream` - * is NULL. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. This only fails if `stream` is NULL. * * \threadsafety It is safe to call this function from any thread. * @@ -1622,7 +1619,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamGetCallback(SDL_AudioStream *s * * \sa SDL_SetAudioStreamGetCallback */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamPutCallback(SDL_AudioStream *stream, SDL_AudioStreamCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamPutCallback(SDL_AudioStream *stream, SDL_AudioStreamCallback callback, void *userdata); /** @@ -1791,14 +1788,14 @@ typedef void (SDLCALL *SDL_AudioPostmixCallback)(void *userdata, const SDL_Audio * \param devid the ID of an opened audio device. * \param callback a callback function to be called. Can be NULL. * \param userdata app-controlled pointer passed to callback. Can be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioPostmixCallback(SDL_AudioDeviceID devid, SDL_AudioPostmixCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioPostmixCallback(SDL_AudioDeviceID devid, SDL_AudioPostmixCallback callback, void *userdata); /** @@ -1861,13 +1858,13 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioPostmixCallback(SDL_AudioDeviceID de * function. * \param audio_len a pointer filled with the length of the audio data buffer * in bytes. - * \returns 0 on success. `audio_buf` will be filled with a pointer to an - * allocated buffer containing the audio data, and `audio_len` is + * \returns SDL_TRUE on success. `audio_buf` will be filled with a pointer to + * an allocated buffer containing the audio data, and `audio_len` is * filled with the length of that audio buffer in bytes. * - * This function returns -1 if the .WAV file cannot be opened, uses - * an unknown data format, or is corrupt; call SDL_GetError() for - * more information. + * This function returns SDL_FALSE if the .WAV file cannot be opened, + * uses an unknown data format, or is corrupt; call SDL_GetError() + * for more information. * * When the application is done with the data returned in * `audio_buf`, it should call SDL_free() to dispose of it. @@ -1879,9 +1876,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioPostmixCallback(SDL_AudioDeviceID de * \sa SDL_free * \sa SDL_LoadWAV */ -extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV_IO(SDL_IOStream * src, SDL_bool closeio, - SDL_AudioSpec * spec, Uint8 ** audio_buf, - Uint32 * audio_len); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LoadWAV_IO(SDL_IOStream *src, SDL_bool closeio, SDL_AudioSpec *spec, Uint8 **audio_buf, Uint32 *audio_len); /** * Loads a WAV from a file path. @@ -1889,7 +1884,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV_IO(SDL_IOStream * src, SDL_bool clos * This is a convenience function that is effectively the same as: * * ```c - * SDL_LoadWAV_IO(SDL_IOFromFile(path, "rb"), 1, spec, audio_buf, audio_len); + * SDL_LoadWAV_IO(SDL_IOFromFile(path, "rb"), SDL_TRUE, spec, audio_buf, audio_len); * ``` * * \param path the file path of the WAV file to open. @@ -1899,13 +1894,13 @@ extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV_IO(SDL_IOStream * src, SDL_bool clos * function. * \param audio_len a pointer filled with the length of the audio data buffer * in bytes. - * \returns 0 on success. `audio_buf` will be filled with a pointer to an - * allocated buffer containing the audio data, and `audio_len` is + * \returns SDL_TRUE on success. `audio_buf` will be filled with a pointer to + * an allocated buffer containing the audio data, and `audio_len` is * filled with the length of that audio buffer in bytes. * - * This function returns -1 if the .WAV file cannot be opened, uses - * an unknown data format, or is corrupt; call SDL_GetError() for - * more information. + * This function returns SDL_FALSE if the .WAV file cannot be opened, + * uses an unknown data format, or is corrupt; call SDL_GetError() + * for more information. * * When the application is done with the data returned in * `audio_buf`, it should call SDL_free() to dispose of it. @@ -1917,8 +1912,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV_IO(SDL_IOStream * src, SDL_bool clos * \sa SDL_free * \sa SDL_LoadWAV_IO */ -extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV(const char *path, SDL_AudioSpec * spec, - Uint8 ** audio_buf, Uint32 * audio_len); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LoadWAV(const char *path, SDL_AudioSpec *spec, Uint8 **audio_buf, Uint32 *audio_len); /** * Mix audio data in a specified format. @@ -1947,17 +1941,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV(const char *path, SDL_AudioSpec * sp * \param len the length of the audio buffer in bytes. * \param volume ranges from 0.0 - 1.0, and should be set to 1.0 for full * audio volume. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_MixAudio(Uint8 * dst, - const Uint8 * src, - SDL_AudioFormat format, - Uint32 len, float volume); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_MixAudio(Uint8 *dst, const Uint8 *src, SDL_AudioFormat format, Uint32 len, float volume); /** * Convert some audio data of one format to another format. @@ -1980,20 +1971,27 @@ extern SDL_DECLSPEC int SDLCALL SDL_MixAudio(Uint8 * dst, * which should be freed with SDL_free(). On error, it will be * NULL. * \param dst_len will be filled with the len of dst_data. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ConvertAudioSamples(const SDL_AudioSpec *src_spec, - const Uint8 *src_data, - int src_len, - const SDL_AudioSpec *dst_spec, - Uint8 **dst_data, - int *dst_len); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ConvertAudioSamples(const SDL_AudioSpec *src_spec, const Uint8 *src_data, int src_len, const SDL_AudioSpec *dst_spec, Uint8 **dst_data, int *dst_len); +/** + * Get the human readable name of an audio format. + * + * \param format the audio format to query. + * \returns the human readable name of the specified audio format or + * "SDL_AUDIO_UNKNOWN" if the format isn't recognized. + * + * \threadsafety It is safe to call this function from any thread. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC const char * SDLCALL SDL_GetAudioFormatName(SDL_AudioFormat format); /** * Get the appropriate memset value for silencing an audio format. diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_camera.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_camera.h index 46dcee1..3d4c57e 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_camera.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_camera.h @@ -48,8 +48,7 @@ extern "C" { * * If the device is disconnected and reconnected, it will get a new ID. * - * The ID value starts at 1 and increments from there. The value 0 is an - * invalid ID. + * The value 0 is an invalid ID. * * \since This datatype is available since SDL 3.0.0. * @@ -367,15 +366,15 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetCameraProperties(SDL_Camera * be converting to this format behind the scenes. * * If the system is waiting for the user to approve access to the camera, as - * some platforms require, this will return -1, but this isn't necessarily a - * fatal error; you should either wait for an SDL_EVENT_CAMERA_DEVICE_APPROVED - * (or SDL_EVENT_CAMERA_DEVICE_DENIED) event, or poll SDL_IsCameraApproved() - * occasionally until it returns non-zero. + * some platforms require, this will return SDL_FALSE, but this isn't + * necessarily a fatal error; you should either wait for an + * SDL_EVENT_CAMERA_DEVICE_APPROVED (or SDL_EVENT_CAMERA_DEVICE_DENIED) event, + * or poll SDL_IsCameraApproved() occasionally until it returns non-zero. * * \param camera opened camera device. * \param spec the SDL_CameraSpec to be initialized by this function. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -383,7 +382,7 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetCameraProperties(SDL_Camera * * \sa SDL_OpenCamera */ -extern SDL_DECLSPEC int SDLCALL SDL_GetCameraFormat(SDL_Camera *camera, SDL_CameraSpec *spec); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetCameraFormat(SDL_Camera *camera, SDL_CameraSpec *spec); /** * Acquire a frame. @@ -447,8 +446,6 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_AcquireCameraFrame(SDL_Camera *cam * * \param camera opened camera device. * \param frame the video frame surface to release. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -456,7 +453,7 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_AcquireCameraFrame(SDL_Camera *cam * * \sa SDL_AcquireCameraFrame */ -extern SDL_DECLSPEC int SDLCALL SDL_ReleaseCameraFrame(SDL_Camera *camera, SDL_Surface *frame); +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseCameraFrame(SDL_Camera *camera, SDL_Surface *frame); /** * Use this function to shut down camera processing and close the camera diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_clipboard.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_clipboard.h index ccd3201..4d4ae32 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_clipboard.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_clipboard.h @@ -46,15 +46,15 @@ extern "C" { * Put UTF-8 text into the clipboard. * * \param text the text to store in the clipboard. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetClipboardText * \sa SDL_HasClipboardText */ -extern SDL_DECLSPEC int SDLCALL SDL_SetClipboardText(const char *text); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetClipboardText(const char *text); /** * Get UTF-8 text from the clipboard. @@ -89,15 +89,15 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasClipboardText(void); * Put UTF-8 text into the primary selection. * * \param text the text to store in the primary selection. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetPrimarySelectionText * \sa SDL_HasPrimarySelectionText */ -extern SDL_DECLSPEC int SDLCALL SDL_SetPrimarySelectionText(const char *text); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetPrimarySelectionText(const char *text); /** * Get UTF-8 text from the primary selection. @@ -185,8 +185,8 @@ typedef void (SDLCALL *SDL_ClipboardCleanupCallback)(void *userdata); * \param userdata an opaque pointer that will be forwarded to the callbacks. * \param mime_types a list of mime-types that are being offered. * \param num_mime_types the number of mime-types in the mime_types list. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -194,19 +194,19 @@ typedef void (SDLCALL *SDL_ClipboardCleanupCallback)(void *userdata); * \sa SDL_GetClipboardData * \sa SDL_HasClipboardData */ -extern SDL_DECLSPEC int SDLCALL SDL_SetClipboardData(SDL_ClipboardDataCallback callback, SDL_ClipboardCleanupCallback cleanup, void *userdata, const char **mime_types, size_t num_mime_types); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetClipboardData(SDL_ClipboardDataCallback callback, SDL_ClipboardCleanupCallback cleanup, void *userdata, const char **mime_types, size_t num_mime_types); /** * Clear the clipboard data. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetClipboardData */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearClipboardData(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearClipboardData(void); /** * Get the data from clipboard for a given mime type. diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_error.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_error.h index 75e8370..a98823f 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_error.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_error.h @@ -56,25 +56,25 @@ extern "C" { * \param fmt a printf()-style message format string. * \param ... additional parameters matching % tokens in the `fmt` string, if * any. - * \returns -1. + * \returns SDL_FALSE. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ClearError * \sa SDL_GetError */ -extern SDL_DECLSPEC int SDLCALL SDL_SetError(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetError(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1); /** * Set an error indicating that memory allocation failed. * * This function does not do any memory allocation. * - * \returns -1. + * \returns SDL_FALSE. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_OutOfMemory(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_OutOfMemory(void); /** * Retrieve a message about the last error that occurred on the current @@ -114,14 +114,14 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetError(void); /** * Clear any previous error message for this thread. * - * \returns 0. + * \returns SDL_TRUE. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetError * \sa SDL_SetError */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearError(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearError(void); /** * \name Internal error functions diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_events.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_events.h index 4c113f9..fbe2bb0 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_events.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_events.h @@ -151,8 +151,6 @@ typedef enum SDL_EventType in an event watcher, the window handle is still valid and can still be used to retrieve any userdata associated with the window. Otherwise, the handle has already been destroyed and all resources associated with it are invalid */ - SDL_EVENT_WINDOW_PEN_ENTER, /**< Window has gained focus of the pressure-sensitive pen with ID "data1" */ - SDL_EVENT_WINDOW_PEN_LEAVE, /**< Window has lost focus of the pressure-sensitive pen with ID "data1" */ SDL_EVENT_WINDOW_HDR_STATE_CHANGED, /**< Window HDR properties have changed */ SDL_EVENT_WINDOW_FIRST = SDL_EVENT_WINDOW_SHOWN, SDL_EVENT_WINDOW_LAST = SDL_EVENT_WINDOW_HDR_STATE_CHANGED, @@ -227,11 +225,14 @@ typedef enum SDL_EventType SDL_EVENT_SENSOR_UPDATE = 0x1200, /**< A sensor was updated */ /* Pressure-sensitive pen events */ - SDL_EVENT_PEN_DOWN = 0x1300, /**< Pressure-sensitive pen touched drawing surface */ + SDL_EVENT_PEN_PROXIMITY_IN = 0x1300, /**< Pressure-sensitive pen has become available */ + SDL_EVENT_PEN_PROXIMITY_OUT, /**< Pressure-sensitive pen has become unavailable */ + SDL_EVENT_PEN_DOWN, /**< Pressure-sensitive pen touched drawing surface */ SDL_EVENT_PEN_UP, /**< Pressure-sensitive pen stopped touching drawing surface */ - SDL_EVENT_PEN_MOTION, /**< Pressure-sensitive pen moved, or angle/pressure changed */ SDL_EVENT_PEN_BUTTON_DOWN, /**< Pressure-sensitive pen button pressed */ SDL_EVENT_PEN_BUTTON_UP, /**< Pressure-sensitive pen button released */ + SDL_EVENT_PEN_MOTION, /**< Pressure-sensitive pen is moving on the tablet */ + SDL_EVENT_PEN_AXIS, /**< Pressure-sensitive pen angle/pressure/etc changed */ /* Camera hotplug events */ SDL_EVENT_CAMERA_DEVICE_ADDED = 0x1400, /**< A new camera device is available */ @@ -426,7 +427,7 @@ typedef struct SDL_MouseMotionEvent Uint32 reserved; Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ SDL_WindowID windowID; /**< The window with mouse focus, if any */ - SDL_MouseID which; /**< The mouse instance id, SDL_TOUCH_MOUSEID, or SDL_PEN_MOUSEID */ + SDL_MouseID which; /**< The mouse instance id or SDL_TOUCH_MOUSEID */ SDL_MouseButtonFlags state; /**< The current button state */ float x; /**< X coordinate, relative to window */ float y; /**< Y coordinate, relative to window */ @@ -445,7 +446,7 @@ typedef struct SDL_MouseButtonEvent Uint32 reserved; Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ SDL_WindowID windowID; /**< The window with mouse focus, if any */ - SDL_MouseID which; /**< The mouse instance id, SDL_TOUCH_MOUSEID, or SDL_PEN_MOUSEID */ + SDL_MouseID which; /**< The mouse instance id, SDL_TOUCH_MOUSEID */ Uint8 button; /**< The mouse button index */ Uint8 state; /**< SDL_PRESSED or SDL_RELEASED */ Uint8 clicks; /**< 1 for single-click, 2 for double-click, etc. */ @@ -465,7 +466,7 @@ typedef struct SDL_MouseWheelEvent Uint32 reserved; Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ SDL_WindowID windowID; /**< The window with mouse focus, if any */ - SDL_MouseID which; /**< The mouse instance id, SDL_TOUCH_MOUSEID, or SDL_PEN_MOUSEID */ + SDL_MouseID which; /**< The mouse instance id, SDL_TOUCH_MOUSEID */ float x; /**< The amount scrolled horizontally, positive to the right and negative to the left */ float y; /**< The amount scrolled vertically, positive away from the user and negative toward the user */ SDL_MouseWheelDirection direction; /**< Set to one of the SDL_MOUSEWHEEL_* defines. When FLIPPED the values in X and Y will be opposite. Multiply by -1 to change them back */ @@ -714,67 +715,118 @@ typedef struct SDL_TouchFingerEvent SDL_WindowID windowID; /**< The window underneath the finger, if any */ } SDL_TouchFingerEvent; - /** - * Pressure-sensitive pen touched or stopped touching surface (event.ptip.*) + * Pressure-sensitive pen proximity event structure (event.pmotion.*) + * + * When a pen becomes visible to the system (it is close enough to a tablet, + * etc), SDL will send an SDL_EVENT_PEN_PROXIMITY_IN event with the new pen's + * ID. This ID is valid until the pen leaves proximity again (has been removed + * from the tablet's area, the tablet has been unplugged, etc). If the same + * pen reenters proximity again, it will be given a new ID. + * + * Note that "proximity" means "close enough for the tablet to know the tool + * is there." The pen touching and lifting off from the tablet while not + * leaving the area are handled by SDL_EVENT_PEN_DOWN and SDL_EVENT_PEN_UP. * * \since This struct is available since SDL 3.0.0. */ -typedef struct SDL_PenTipEvent +typedef struct SDL_PenProximityEvent +{ + SDL_EventType type; /**< SDL_EVENT_PEN_PROXIMITY_IN or SDL_EVENT_PEN_PROXIMITY_OUT */ + Uint32 reserved; + Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ + SDL_WindowID windowID; /**< The window with mouse focus, if any */ + SDL_PenID which; /**< The pen instance id */ +} SDL_PenProximityEvent; + +/** + * Pressure-sensitive pen motion event structure (event.pmotion.*) + * + * Depending on the hardware, you may get motion events when the pen is not + * touching a tablet, for tracking a pen even when it isn't drawing. You + * should listen for SDL_EVENT_PEN_DOWN and SDL_EVENT_PEN_UP events, or check + * `pen_state & SDL_PEN_INPUT_DOWN` to decide if a pen is "drawing" when + * dealing with pen motion. + * + * \since This struct is available since SDL 3.0.0. + */ +typedef struct SDL_PenMotionEvent +{ + SDL_EventType type; /**< SDL_EVENT_PEN_MOTION */ + Uint32 reserved; + Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ + SDL_WindowID windowID; /**< The window with mouse focus, if any */ + SDL_PenID which; /**< The pen instance id */ + SDL_PenInputFlags pen_state; /**< Complete pen input state at time of event */ + float x; /**< X position of pen on tablet */ + float y; /**< Y position of pen on tablet */ +} SDL_PenMotionEvent; + +/** + * Pressure-sensitive pen touched event structure (event.ptouch.*) + * + * These events come when a pen touches a surface (a tablet, etc), or lifts + * off from one. + * + * \since This struct is available since SDL 3.0.0. + */ +typedef struct SDL_PenTouchEvent { SDL_EventType type; /**< SDL_EVENT_PEN_DOWN or SDL_EVENT_PEN_UP */ Uint32 reserved; Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ SDL_WindowID windowID; /**< The window with pen focus, if any */ SDL_PenID which; /**< The pen instance id */ - Uint8 tip; /**< SDL_PEN_TIP_INK when using a regular pen tip, or SDL_PEN_TIP_ERASER if the pen is being used as an eraser (e.g., flipped to use the eraser tip) */ - Uint8 state; /**< SDL_PRESSED on SDL_EVENT_PEN_DOWN and SDL_RELEASED on SDL_EVENT_PEN_UP */ - Uint16 pen_state; /**< Pen button masks (where SDL_BUTTON(1) is the first button, SDL_BUTTON(2) is the second button etc.), SDL_PEN_DOWN_MASK is set if the pen is touching the surface, and SDL_PEN_ERASER_MASK is set if the pen is (used as) an eraser. */ - float x; /**< X coordinate, relative to window */ - float y; /**< Y coordinate, relative to window */ - float axes[SDL_PEN_NUM_AXES]; /**< Pen axes such as pressure and tilt (ordered as per SDL_PenAxis) */ -} SDL_PenTipEvent; - -/** - * Pressure-sensitive pen motion / pressure / angle event structure - * (event.pmotion.*) - * - * \since This struct is available since SDL 3.0.0. - */ -typedef struct SDL_PenMotionEvent -{ - SDL_EventType type; /**< SDL_EVENT_PEN_MOTION */ - Uint32 reserved; - Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ - SDL_WindowID windowID; /**< The window with pen focus, if any */ - SDL_PenID which; /**< The pen instance id */ - Uint8 padding1; - Uint8 padding2; - Uint16 pen_state; /**< Pen button masks (where SDL_BUTTON(1) is the first button, SDL_BUTTON(2) is the second button etc.), SDL_PEN_DOWN_MASK is set if the pen is touching the surface, and SDL_PEN_ERASER_MASK is set if the pen is (used as) an eraser. */ - float x; /**< X coordinate, relative to window */ - float y; /**< Y coordinate, relative to window */ - float axes[SDL_PEN_NUM_AXES]; /**< Pen axes such as pressure and tilt (ordered as per SDL_PenAxis) */ -} SDL_PenMotionEvent; + SDL_PenInputFlags pen_state; /**< Complete pen input state at time of event */ + float x; /**< X position of pen on tablet */ + float y; /**< Y position of pen on tablet */ + Uint8 eraser; /**< Non-zero if eraser end is used (not all pens support this). */ + Uint8 state; /**< SDL_PRESSED (pen is touching) or SDL_RELEASED (pen is lifted off) */ +} SDL_PenTouchEvent; /** * Pressure-sensitive pen button event structure (event.pbutton.*) * + * This is for buttons on the pen itself that the user might click. The pen + * itself pressing down to draw triggers a SDL_EVENT_PEN_DOWN event instead. + * * \since This struct is available since SDL 3.0.0. */ typedef struct SDL_PenButtonEvent { - SDL_EventType type; /**< SDL_EVENT_PEN_BUTTON_DOWN or SDL_EVENT_PEN_BUTTON_UP */ + SDL_EventType type; /**< SDL_EVENT_PEN_BUTTON_DOWN or SDL_EVENT_PEN_BUTTON_UP */ + Uint32 reserved; + Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ + SDL_WindowID windowID; /**< The window with mouse focus, if any */ + SDL_PenID which; /**< The pen instance id */ + SDL_PenInputFlags pen_state; /**< Complete pen input state at time of event */ + float x; /**< X position of pen on tablet */ + float y; /**< Y position of pen on tablet */ + Uint8 button; /**< The pen button index (first button is 1). */ + Uint8 state; /**< SDL_PRESSED or SDL_RELEASED */ +} SDL_PenButtonEvent; + +/** + * Pressure-sensitive pen pressure / angle event structure (event.paxis.*) + * + * You might get some of these events even if the pen isn't touching the + * tablet. + * + * \since This struct is available since SDL 3.0.0. + */ +typedef struct SDL_PenAxisEvent +{ + SDL_EventType type; /**< SDL_EVENT_PEN_AXIS */ Uint32 reserved; Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ SDL_WindowID windowID; /**< The window with pen focus, if any */ SDL_PenID which; /**< The pen instance id */ - Uint8 button; /**< The pen button index (1 represents the pen tip for compatibility with mouse events) */ - Uint8 state; /**< SDL_PRESSED or SDL_RELEASED */ - Uint16 pen_state; /**< Pen button masks (where SDL_BUTTON(1) is the first button, SDL_BUTTON(2) is the second button etc.), SDL_PEN_DOWN_MASK is set if the pen is touching the surface, and SDL_PEN_ERASER_MASK is set if the pen is (used as) an eraser. */ - float x; /**< X coordinate, relative to window */ - float y; /**< Y coordinate, relative to window */ - float axes[SDL_PEN_NUM_AXES]; /**< Pen axes such as pressure and tilt (ordered as per SDL_PenAxis) */ -} SDL_PenButtonEvent; + SDL_PenInputFlags pen_state; /**< Complete pen input state at time of event */ + float x; /**< X position of pen on tablet */ + float y; /**< Y position of pen on tablet */ + SDL_PenAxis axis; /**< Axis that has changed */ + float value; /**< New value of axis */ +} SDL_PenAxisEvent; /** * An event used to drop text or request a file open by the system @@ -894,9 +946,11 @@ typedef union SDL_Event SDL_QuitEvent quit; /**< Quit request event data */ SDL_UserEvent user; /**< Custom event data */ SDL_TouchFingerEvent tfinger; /**< Touch finger event data */ - SDL_PenTipEvent ptip; /**< Pen tip touching or leaving drawing surface */ - SDL_PenMotionEvent pmotion; /**< Pen change in position, pressure, or angle */ - SDL_PenButtonEvent pbutton; /**< Pen button press */ + SDL_PenProximityEvent pproximity; /**< Pen proximity event data */ + SDL_PenTouchEvent ptouch; /**< Pen tip touching event data */ + SDL_PenMotionEvent pmotion; /**< Pen motion event data */ + SDL_PenButtonEvent pbutton; /**< Pen button event data */ + SDL_PenAxisEvent paxis; /**< Pen axis event data */ SDL_DropEvent drop; /**< Drag and drop event data */ SDL_ClipboardEvent clipboard; /**< Clipboard event data */ @@ -985,8 +1039,8 @@ typedef enum SDL_EventAction * SDL_EVENT_FIRST is a safe choice. * \param maxType maximum value of the event type to be considered; * SDL_EVENT_LAST is a safe choice. - * \returns the number of events actually stored or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the number of events actually stored or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -1200,9 +1254,9 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WaitEventTimeout(SDL_Event *event, Sint * its own custom event types. * * \param event the SDL_Event to be added to the queue. - * \returns 1 on success, 0 if the event was filtered, or a negative error - * code on failure; call SDL_GetError() for more information. A - * common reason for error is the event queue being full. + * \returns SDL_TRUE on success, SDL_FALSE if the event was filtered or on + * failure; call SDL_GetError() for more information. A common reason + * for error is the event queue being full. * * \since This function is available since SDL 3.0.0. * @@ -1210,7 +1264,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WaitEventTimeout(SDL_Event *event, Sint * \sa SDL_PollEvent * \sa SDL_RegisterEvents */ -extern SDL_DECLSPEC int SDLCALL SDL_PushEvent(SDL_Event *event); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PushEvent(SDL_Event *event); /** * A function pointer used for callbacks that watch the event queue. @@ -1218,8 +1272,9 @@ extern SDL_DECLSPEC int SDLCALL SDL_PushEvent(SDL_Event *event); * \param userdata what was passed as `userdata` to SDL_SetEventFilter() or * SDL_AddEventWatch, etc. * \param event the event that triggered the callback. - * \returns 1 to permit event to be added to the queue, and 0 to disallow it. - * When used with SDL_AddEventWatch, the return value is ignored. + * \returns SDL_TRUE to permit event to be added to the queue, and SDL_FALSE + * to disallow it. When used with SDL_AddEventWatch, the return value + * is ignored. * * \threadsafety SDL may call this callback at any time from any thread; the * application is responsible for locking resources the callback @@ -1230,16 +1285,16 @@ extern SDL_DECLSPEC int SDLCALL SDL_PushEvent(SDL_Event *event); * \sa SDL_SetEventFilter * \sa SDL_AddEventWatch */ -typedef int (SDLCALL *SDL_EventFilter)(void *userdata, SDL_Event *event); +typedef SDL_bool (SDLCALL *SDL_EventFilter)(void *userdata, SDL_Event *event); /** * Set up a filter to process all events before they change internal state and * are posted to the internal event queue. * - * If the filter function returns 1 when called, then the event will be added - * to the internal queue. If it returns 0, then the event will be dropped from - * the queue, but the internal state will still be updated. This allows - * selective filtering of dynamically arriving events. + * If the filter function returns SDL_TRUE when called, then the event will be + * added to the internal queue. If it returns SDL_FALSE, then the event will + * be dropped from the queue, but the internal state will still be updated. + * This allows selective filtering of dynamically arriving events. * * **WARNING**: Be very careful of what you do in the event filter function, * as it may run in a different thread! @@ -1317,17 +1372,17 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetEventFilter(SDL_EventFilter *filter, * * \param filter an SDL_EventFilter function to call when an event happens. * \param userdata a pointer that is passed to `filter`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. * - * \sa SDL_DelEventWatch + * \sa SDL_RemoveEventWatch * \sa SDL_SetEventFilter */ -extern SDL_DECLSPEC int SDLCALL SDL_AddEventWatch(SDL_EventFilter filter, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AddEventWatch(SDL_EventFilter filter, void *userdata); /** * Remove an event watch callback added with SDL_AddEventWatch(). @@ -1342,11 +1397,11 @@ extern SDL_DECLSPEC int SDLCALL SDL_AddEventWatch(SDL_EventFilter filter, void * * * \sa SDL_AddEventWatch */ -extern SDL_DECLSPEC void SDLCALL SDL_DelEventWatch(SDL_EventFilter filter, void *userdata); +extern SDL_DECLSPEC void SDLCALL SDL_RemoveEventWatch(SDL_EventFilter filter, void *userdata); /** * Run a specific filter function on the current event queue, removing any - * events for which the filter returns 0. + * events for which the filter returns SDL_FALSE. * * See SDL_SetEventFilter() for more information. Unlike SDL_SetEventFilter(), * this function does not change the filter permanently, it only uses the diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_filesystem.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_filesystem.h index 756a52d..5faa244 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_filesystem.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_filesystem.h @@ -266,12 +266,12 @@ typedef Uint32 SDL_GlobFlags; * Create a directory. * * \param path the path of the directory to create. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_CreateDirectory(const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CreateDirectory(const char *path); /* Callback for directory enumeration. Return 1 to keep enumerating, 0 to stop enumerating (no error), -1 to stop enumerating and @@ -289,47 +289,47 @@ typedef int (SDLCALL *SDL_EnumerateDirectoryCallback)(void *userdata, const char * \param path the path of the directory to enumerate. * \param callback a function that is called for each entry in the directory. * \param userdata a pointer that is passed to `callback`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_EnumerateDirectory(const char *path, SDL_EnumerateDirectoryCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_EnumerateDirectory(const char *path, SDL_EnumerateDirectoryCallback callback, void *userdata); /** * Remove a file or an empty directory. * * \param path the path of the directory to enumerate. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RemovePath(const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RemovePath(const char *path); /** * Rename a file or directory. * * \param oldpath the old path. * \param newpath the new path. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RenamePath(const char *oldpath, const char *newpath); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenamePath(const char *oldpath, const char *newpath); /** * Copy a file. * * \param oldpath the old path. * \param newpath the new path. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_CopyFile(const char *oldpath, const char *newpath); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CopyFile(const char *oldpath, const char *newpath); /** * Get information about a filesystem path. @@ -337,12 +337,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_CopyFile(const char *oldpath, const char *ne * \param path the path to query. * \param info a pointer filled in with information about the path, or NULL to * check for the existence of a file. - * \returns 0 on success or a negative error code if the file doesn't exist, - * or another failure; call SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE if the file doesn't exist, or + * another failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetPathInfo(const char *path, SDL_PathInfo *info); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetPathInfo(const char *path, SDL_PathInfo *info); /** * Enumerate a directory tree, filtered by pattern, and return a list. diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_gamepad.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_gamepad.h index cec0684..3d2d726 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_gamepad.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_gamepad.h @@ -379,12 +379,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_AddGamepadMappingsFromFile(const char *file) * * This will generate gamepad events as needed if device mappings change. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ReloadGamepadMappings(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ReloadGamepadMappings(void); /** * Get the current gamepad mappings. @@ -442,15 +442,15 @@ extern SDL_DECLSPEC char * SDLCALL SDL_GetGamepadMapping(SDL_Gamepad *gamepad); * \param instance_id the joystick instance ID. * \param mapping the mapping to use for this device, or NULL to clear the * mapping. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_AddGamepadMapping * \sa SDL_GetGamepadMapping */ -extern SDL_DECLSPEC int SDLCALL SDL_SetGamepadMapping(SDL_JoystickID instance_id, const char *mapping); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetGamepadMapping(SDL_JoystickID instance_id, const char *mapping); /** * Return whether a gamepad is currently connected. @@ -813,14 +813,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetGamepadPlayerIndex(SDL_Gamepad *gamepad); * \param gamepad the gamepad object to adjust. * \param player_index player index to assign to this gamepad, or -1 to clear * the player index and turn off player LEDs. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetGamepadPlayerIndex */ -extern SDL_DECLSPEC int SDLCALL SDL_SetGamepadPlayerIndex(SDL_Gamepad *gamepad, int player_index); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetGamepadPlayerIndex(SDL_Gamepad *gamepad, int player_index); /** * Get the USB vendor ID of an opened gamepad, if available. @@ -1257,14 +1257,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetNumGamepadTouchpadFingers(SDL_Gamepad *ga * \param y filled with y position, normalized 0 to 1, with the origin in the * upper left. * \param pressure filled with pressure value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetNumGamepadTouchpadFingers */ -extern SDL_DECLSPEC int SDLCALL SDL_GetGamepadTouchpadFinger(SDL_Gamepad *gamepad, int touchpad, int finger, Uint8 *state, float *x, float *y, float *pressure); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetGamepadTouchpadFinger(SDL_Gamepad *gamepad, int touchpad, int finger, Uint8 *state, float *x, float *y, float *pressure); /** * Return whether a gamepad has a particular sensor. @@ -1287,15 +1287,15 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GamepadHasSensor(SDL_Gamepad *gamepad, * \param gamepad the gamepad to update. * \param type the type of sensor to enable/disable. * \param enabled whether data reporting should be enabled. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GamepadHasSensor * \sa SDL_GamepadSensorEnabled */ -extern SDL_DECLSPEC int SDLCALL SDL_SetGamepadSensorEnabled(SDL_Gamepad *gamepad, SDL_SensorType type, SDL_bool enabled); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetGamepadSensorEnabled(SDL_Gamepad *gamepad, SDL_SensorType type, SDL_bool enabled); /** * Query whether sensor data reporting is enabled for a gamepad. @@ -1331,12 +1331,12 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetGamepadSensorDataRate(SDL_Gamepad *game * \param type the type of sensor to query. * \param data a pointer filled with the current sensor state. * \param num_values the number of values to write to data. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetGamepadSensorData(SDL_Gamepad *gamepad, SDL_SensorType type, float *data, int num_values); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetGamepadSensorData(SDL_Gamepad *gamepad, SDL_SensorType type, float *data, int num_values); /** * Start a rumble effect on a gamepad. @@ -1353,11 +1353,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetGamepadSensorData(SDL_Gamepad *gamepad, S * \param high_frequency_rumble the intensity of the high frequency (right) * rumble motor, from 0 to 0xFFFF. * \param duration_ms the duration of the rumble effect, in milliseconds. - * \returns 0, or -1 if rumble isn't supported on this gamepad. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RumbleGamepad(SDL_Gamepad *gamepad, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RumbleGamepad(SDL_Gamepad *gamepad, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); /** * Start a rumble effect in the gamepad's triggers. @@ -1378,14 +1379,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RumbleGamepad(SDL_Gamepad *gamepad, Uint16 l * \param right_rumble the intensity of the right trigger rumble motor, from 0 * to 0xFFFF. * \param duration_ms the duration of the rumble effect, in milliseconds. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RumbleGamepad */ -extern SDL_DECLSPEC int SDLCALL SDL_RumbleGamepadTriggers(SDL_Gamepad *gamepad, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RumbleGamepadTriggers(SDL_Gamepad *gamepad, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); /** * Update a gamepad's LED color. @@ -1400,12 +1401,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_RumbleGamepadTriggers(SDL_Gamepad *gamepad, * \param red the intensity of the red LED. * \param green the intensity of the green LED. * \param blue the intensity of the blue LED. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetGamepadLED(SDL_Gamepad *gamepad, Uint8 red, Uint8 green, Uint8 blue); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetGamepadLED(SDL_Gamepad *gamepad, Uint8 red, Uint8 green, Uint8 blue); /** * Send a gamepad specific effect packet. @@ -1413,12 +1414,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetGamepadLED(SDL_Gamepad *gamepad, Uint8 re * \param gamepad the gamepad to affect. * \param data the data to send to the gamepad. * \param size the size of the data to send to the gamepad. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SendGamepadEffect(SDL_Gamepad *gamepad, const void *data, int size); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SendGamepadEffect(SDL_Gamepad *gamepad, const void *data, int size); /** * Close a gamepad previously opened with SDL_OpenGamepad(). diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_gpu.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_gpu.h new file mode 100644 index 0000000..bba47cc --- /dev/null +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_gpu.h @@ -0,0 +1,2620 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2024 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. +*/ + +/* WIKI CATEGORY: GPU */ + +/** + * # CategoryGPU + * + * Include file for SDL GPU API functions + */ + +#ifndef SDL_gpu_h_ +#define SDL_gpu_h_ + +#include +#include +#include +#include +#include +#include + +#include +#ifdef __cplusplus +extern "C" { +#endif /* __cplusplus */ + +/* Type Declarations */ + +typedef struct SDL_GPUDevice SDL_GPUDevice; +typedef struct SDL_GPUBuffer SDL_GPUBuffer; +typedef struct SDL_GPUTransferBuffer SDL_GPUTransferBuffer; +typedef struct SDL_GPUTexture SDL_GPUTexture; +typedef struct SDL_GPUSampler SDL_GPUSampler; +typedef struct SDL_GPUShader SDL_GPUShader; +typedef struct SDL_GPUComputePipeline SDL_GPUComputePipeline; +typedef struct SDL_GPUGraphicsPipeline SDL_GPUGraphicsPipeline; +typedef struct SDL_GPUCommandBuffer SDL_GPUCommandBuffer; +typedef struct SDL_GPURenderPass SDL_GPURenderPass; +typedef struct SDL_GPUComputePass SDL_GPUComputePass; +typedef struct SDL_GPUCopyPass SDL_GPUCopyPass; +typedef struct SDL_GPUFence SDL_GPUFence; + +typedef enum SDL_GPUPrimitiveType +{ + SDL_GPU_PRIMITIVETYPE_POINTLIST, + SDL_GPU_PRIMITIVETYPE_LINELIST, + SDL_GPU_PRIMITIVETYPE_LINESTRIP, + SDL_GPU_PRIMITIVETYPE_TRIANGLELIST, + SDL_GPU_PRIMITIVETYPE_TRIANGLESTRIP +} SDL_GPUPrimitiveType; + +typedef enum SDL_GPULoadOp +{ + SDL_GPU_LOADOP_LOAD, + SDL_GPU_LOADOP_CLEAR, + SDL_GPU_LOADOP_DONT_CARE +} SDL_GPULoadOp; + +typedef enum SDL_GPUStoreOp +{ + SDL_GPU_STOREOP_STORE, + SDL_GPU_STOREOP_DONT_CARE +} SDL_GPUStoreOp; + +typedef enum SDL_GPUIndexElementSize +{ + SDL_GPU_INDEXELEMENTSIZE_16BIT, + SDL_GPU_INDEXELEMENTSIZE_32BIT +} SDL_GPUIndexElementSize; + +/* Texture format support varies depending on driver, hardware, and usage flags. + * In general, you should use SDL_GPUTextureSupportsFormat to query if a format + * is supported before using it. However, there are a few guaranteed formats. + * + * For SAMPLER usage, the following formats are universally supported: + * - R8G8B8A8_UNORM + * - B8G8R8A8_UNORM + * - R8_UNORM + * - R8G8_SNORM + * - R8G8B8A8_SNORM + * - R16_FLOAT + * - R16G16_FLOAT + * - R16G16B16A16_FLOAT + * - R32_FLOAT + * - R32G32_FLOAT + * - R32G32B32A32_FLOAT + * - R8G8B8A8_UNORM_SRGB + * - B8G8R8A8_UNORM_SRGB + * - D16_UNORM + * + * For COLOR_TARGET usage, the following formats are universally supported: + * - R8G8B8A8_UNORM + * - B8G8R8A8_UNORM + * - R8_UNORM + * - R16_FLOAT + * - R16G16_FLOAT + * - R16G16B16A16_FLOAT + * - R32_FLOAT + * - R32G32_FLOAT + * - R32G32B32A32_FLOAT + * - R8_UINT + * - R8G8_UINT + * - R8G8B8A8_UINT + * - R16_UINT + * - R16G16_UINT + * - R16G16B16A16_UINT + * - R8G8B8A8_UNORM_SRGB + * - B8G8R8A8_UNORM_SRGB + * + * For STORAGE usages, the following formats are universally supported: + * - R8G8B8A8_UNORM + * - R8G8B8A8_SNORM + * - R16G16B16A16_FLOAT + * - R32_FLOAT + * - R32G32_FLOAT + * - R32G32B32A32_FLOAT + * - R8_UINT + * - R8G8_UINT + * - R8G8B8A8_UINT + * - R16_UINT + * - R16G16_UINT + * - R16G16B16A16_UINT + * + * For DEPTH_STENCIL_TARGET usage, the following formats are universally supported: + * - D16_UNORM + * - Either (but not necessarily both!) D24_UNORM or D32_SFLOAT + * - Either (but not necessarily both!) D24_UNORM_S8_UINT or D32_SFLOAT_S8_UINT + * + * Unless D16_UNORM is sufficient for your purposes, always check which + * of D24/D32 is supported before creating a depth-stencil texture! + */ +typedef enum SDL_GPUTextureFormat +{ + SDL_GPU_TEXTUREFORMAT_INVALID = -1, + + /* Unsigned Normalized Float Color Formats */ + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM, + SDL_GPU_TEXTUREFORMAT_B8G8R8A8_UNORM, + SDL_GPU_TEXTUREFORMAT_B5G6R5_UNORM, + SDL_GPU_TEXTUREFORMAT_B5G5R5A1_UNORM, + SDL_GPU_TEXTUREFORMAT_B4G4R4A4_UNORM, + SDL_GPU_TEXTUREFORMAT_R10G10B10A2_UNORM, + SDL_GPU_TEXTUREFORMAT_R16G16_UNORM, + SDL_GPU_TEXTUREFORMAT_R16G16B16A16_UNORM, + SDL_GPU_TEXTUREFORMAT_R8_UNORM, + SDL_GPU_TEXTUREFORMAT_A8_UNORM, + /* Compressed Unsigned Normalized Float Color Formats */ + SDL_GPU_TEXTUREFORMAT_BC1_UNORM, + SDL_GPU_TEXTUREFORMAT_BC2_UNORM, + SDL_GPU_TEXTUREFORMAT_BC3_UNORM, + SDL_GPU_TEXTUREFORMAT_BC7_UNORM, + /* Signed Normalized Float Color Formats */ + SDL_GPU_TEXTUREFORMAT_R8G8_SNORM, + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_SNORM, + /* Signed Float Color Formats */ + SDL_GPU_TEXTUREFORMAT_R16_FLOAT, + SDL_GPU_TEXTUREFORMAT_R16G16_FLOAT, + SDL_GPU_TEXTUREFORMAT_R16G16B16A16_FLOAT, + SDL_GPU_TEXTUREFORMAT_R32_FLOAT, + SDL_GPU_TEXTUREFORMAT_R32G32_FLOAT, + SDL_GPU_TEXTUREFORMAT_R32G32B32A32_FLOAT, + /* Unsigned Integer Color Formats */ + SDL_GPU_TEXTUREFORMAT_R8_UINT, + SDL_GPU_TEXTUREFORMAT_R8G8_UINT, + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UINT, + SDL_GPU_TEXTUREFORMAT_R16_UINT, + SDL_GPU_TEXTUREFORMAT_R16G16_UINT, + SDL_GPU_TEXTUREFORMAT_R16G16B16A16_UINT, + /* SRGB Unsigned Normalized Color Formats */ + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM_SRGB, + SDL_GPU_TEXTUREFORMAT_B8G8R8A8_UNORM_SRGB, + /* Compressed SRGB Unsigned Normalized Color Formats */ + SDL_GPU_TEXTUREFORMAT_BC3_UNORM_SRGB, + SDL_GPU_TEXTUREFORMAT_BC7_UNORM_SRGB, + /* Depth Formats */ + SDL_GPU_TEXTUREFORMAT_D16_UNORM, + SDL_GPU_TEXTUREFORMAT_D24_UNORM, + SDL_GPU_TEXTUREFORMAT_D32_FLOAT, + SDL_GPU_TEXTUREFORMAT_D24_UNORM_S8_UINT, + SDL_GPU_TEXTUREFORMAT_D32_FLOAT_S8_UINT +} SDL_GPUTextureFormat; + +typedef enum SDL_GPUTextureUsageFlagBits +{ + SDL_GPU_TEXTUREUSAGE_SAMPLER_BIT = 0x00000001, + SDL_GPU_TEXTUREUSAGE_COLOR_TARGET_BIT = 0x00000002, + SDL_GPU_TEXTUREUSAGE_DEPTH_STENCIL_TARGET_BIT = 0x00000004, + SDL_GPU_TEXTUREUSAGE_GRAPHICS_STORAGE_READ_BIT = 0x00000008, + SDL_GPU_TEXTUREUSAGE_COMPUTE_STORAGE_READ_BIT = 0x00000020, + SDL_GPU_TEXTUREUSAGE_COMPUTE_STORAGE_WRITE_BIT = 0x00000040 +} SDL_GPUTextureUsageFlagBits; + +typedef Uint32 SDL_GPUTextureUsageFlags; + +typedef enum SDL_GPUTextureType +{ + SDL_GPU_TEXTURETYPE_2D, + SDL_GPU_TEXTURETYPE_2D_ARRAY, + SDL_GPU_TEXTURETYPE_3D, + SDL_GPU_TEXTURETYPE_CUBE +} SDL_GPUTextureType; + +typedef enum SDL_GPUSampleCount +{ + SDL_GPU_SAMPLECOUNT_1, + SDL_GPU_SAMPLECOUNT_2, + SDL_GPU_SAMPLECOUNT_4, + SDL_GPU_SAMPLECOUNT_8 +} SDL_GPUSampleCount; + +typedef enum SDL_GPUCubeMapFace +{ + SDL_GPU_CUBEMAPFACE_POSITIVEX, + SDL_GPU_CUBEMAPFACE_NEGATIVEX, + SDL_GPU_CUBEMAPFACE_POSITIVEY, + SDL_GPU_CUBEMAPFACE_NEGATIVEY, + SDL_GPU_CUBEMAPFACE_POSITIVEZ, + SDL_GPU_CUBEMAPFACE_NEGATIVEZ +} SDL_GPUCubeMapFace; + +typedef enum SDL_GPUBufferUsageFlagBits +{ + SDL_GPU_BUFFERUSAGE_VERTEX_BIT = 0x00000001, + SDL_GPU_BUFFERUSAGE_INDEX_BIT = 0x00000002, + SDL_GPU_BUFFERUSAGE_INDIRECT_BIT = 0x00000004, + SDL_GPU_BUFFERUSAGE_GRAPHICS_STORAGE_READ_BIT = 0x00000008, + SDL_GPU_BUFFERUSAGE_COMPUTE_STORAGE_READ_BIT = 0x00000020, + SDL_GPU_BUFFERUSAGE_COMPUTE_STORAGE_WRITE_BIT = 0x00000040 +} SDL_GPUBufferUsageFlagBits; + +typedef Uint32 SDL_GPUBufferUsageFlags; + +typedef enum SDL_GPUTransferBufferUsage +{ + SDL_GPU_TRANSFERBUFFERUSAGE_UPLOAD, + SDL_GPU_TRANSFERBUFFERUSAGE_DOWNLOAD +} SDL_GPUTransferBufferUsage; + +typedef enum SDL_GPUShaderStage +{ + SDL_GPU_SHADERSTAGE_VERTEX, + SDL_GPU_SHADERSTAGE_FRAGMENT +} SDL_GPUShaderStage; + +typedef enum SDL_GPUShaderFormatFlagBits +{ + SDL_GPU_SHADERFORMAT_INVALID = 0x00000000, + SDL_GPU_SHADERFORMAT_SECRET = 0x00000001, /* NDA'd platforms */ + SDL_GPU_SHADERFORMAT_SPIRV = 0x00000002, /* Vulkan */ + SDL_GPU_SHADERFORMAT_DXBC = 0x00000004, /* D3D11 (Shader Model 5_0) */ + SDL_GPU_SHADERFORMAT_DXIL = 0x00000008, /* D3D12 */ + SDL_GPU_SHADERFORMAT_MSL = 0x00000010, /* Metal */ + SDL_GPU_SHADERFORMAT_METALLIB = 0x00000020, /* Metal */ +} SDL_GPUShaderFormatFlagBits; + +typedef Uint32 SDL_GPUShaderFormat; + +typedef enum SDL_GPUVertexElementFormat +{ + /* 32-bit Signed Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_INT, + SDL_GPU_VERTEXELEMENTFORMAT_INT2, + SDL_GPU_VERTEXELEMENTFORMAT_INT3, + SDL_GPU_VERTEXELEMENTFORMAT_INT4, + + /* 32-bit Unsigned Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_UINT, + SDL_GPU_VERTEXELEMENTFORMAT_UINT2, + SDL_GPU_VERTEXELEMENTFORMAT_UINT3, + SDL_GPU_VERTEXELEMENTFORMAT_UINT4, + + /* 32-bit Floats */ + SDL_GPU_VERTEXELEMENTFORMAT_FLOAT, + SDL_GPU_VERTEXELEMENTFORMAT_FLOAT2, + SDL_GPU_VERTEXELEMENTFORMAT_FLOAT3, + SDL_GPU_VERTEXELEMENTFORMAT_FLOAT4, + + /* 8-bit Signed Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_BYTE2, + SDL_GPU_VERTEXELEMENTFORMAT_BYTE4, + + /* 8-bit Unsigned Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_UBYTE2, + SDL_GPU_VERTEXELEMENTFORMAT_UBYTE4, + + /* 8-bit Signed Normalized */ + SDL_GPU_VERTEXELEMENTFORMAT_BYTE2_NORM, + SDL_GPU_VERTEXELEMENTFORMAT_BYTE4_NORM, + + /* 8-bit Unsigned Normalized */ + SDL_GPU_VERTEXELEMENTFORMAT_UBYTE2_NORM, + SDL_GPU_VERTEXELEMENTFORMAT_UBYTE4_NORM, + + /* 16-bit Signed Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_SHORT2, + SDL_GPU_VERTEXELEMENTFORMAT_SHORT4, + + /* 16-bit Unsigned Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_USHORT2, + SDL_GPU_VERTEXELEMENTFORMAT_USHORT4, + + /* 16-bit Signed Normalized */ + SDL_GPU_VERTEXELEMENTFORMAT_SHORT2_NORM, + SDL_GPU_VERTEXELEMENTFORMAT_SHORT4_NORM, + + /* 16-bit Unsigned Normalized */ + SDL_GPU_VERTEXELEMENTFORMAT_USHORT2_NORM, + SDL_GPU_VERTEXELEMENTFORMAT_USHORT4_NORM, + + /* 16-bit Floats */ + SDL_GPU_VERTEXELEMENTFORMAT_HALF2, + SDL_GPU_VERTEXELEMENTFORMAT_HALF4 +} SDL_GPUVertexElementFormat; + +typedef enum SDL_GPUVertexInputRate +{ + SDL_GPU_VERTEXINPUTRATE_VERTEX = 0, + SDL_GPU_VERTEXINPUTRATE_INSTANCE = 1 +} SDL_GPUVertexInputRate; + +typedef enum SDL_GPUFillMode +{ + SDL_GPU_FILLMODE_FILL, + SDL_GPU_FILLMODE_LINE +} SDL_GPUFillMode; + +typedef enum SDL_GPUCullMode +{ + SDL_GPU_CULLMODE_NONE, + SDL_GPU_CULLMODE_FRONT, + SDL_GPU_CULLMODE_BACK +} SDL_GPUCullMode; + +typedef enum SDL_GPUFrontFace +{ + SDL_GPU_FRONTFACE_COUNTER_CLOCKWISE, + SDL_GPU_FRONTFACE_CLOCKWISE +} SDL_GPUFrontFace; + +typedef enum SDL_GPUCompareOp +{ + SDL_GPU_COMPAREOP_NEVER, + SDL_GPU_COMPAREOP_LESS, + SDL_GPU_COMPAREOP_EQUAL, + SDL_GPU_COMPAREOP_LESS_OR_EQUAL, + SDL_GPU_COMPAREOP_GREATER, + SDL_GPU_COMPAREOP_NOT_EQUAL, + SDL_GPU_COMPAREOP_GREATER_OR_EQUAL, + SDL_GPU_COMPAREOP_ALWAYS +} SDL_GPUCompareOp; + +typedef enum SDL_GPUStencilOp +{ + SDL_GPU_STENCILOP_KEEP, + SDL_GPU_STENCILOP_ZERO, + SDL_GPU_STENCILOP_REPLACE, + SDL_GPU_STENCILOP_INCREMENT_AND_CLAMP, + SDL_GPU_STENCILOP_DECREMENT_AND_CLAMP, + SDL_GPU_STENCILOP_INVERT, + SDL_GPU_STENCILOP_INCREMENT_AND_WRAP, + SDL_GPU_STENCILOP_DECREMENT_AND_WRAP +} SDL_GPUStencilOp; + +typedef enum SDL_GPUBlendOp +{ + SDL_GPU_BLENDOP_ADD, + SDL_GPU_BLENDOP_SUBTRACT, + SDL_GPU_BLENDOP_REVERSE_SUBTRACT, + SDL_GPU_BLENDOP_MIN, + SDL_GPU_BLENDOP_MAX +} SDL_GPUBlendOp; + +typedef enum SDL_GPUBlendFactor +{ + SDL_GPU_BLENDFACTOR_ZERO, + SDL_GPU_BLENDFACTOR_ONE, + SDL_GPU_BLENDFACTOR_SRC_COLOR, + SDL_GPU_BLENDFACTOR_ONE_MINUS_SRC_COLOR, + SDL_GPU_BLENDFACTOR_DST_COLOR, + SDL_GPU_BLENDFACTOR_ONE_MINUS_DST_COLOR, + SDL_GPU_BLENDFACTOR_SRC_ALPHA, + SDL_GPU_BLENDFACTOR_ONE_MINUS_SRC_ALPHA, + SDL_GPU_BLENDFACTOR_DST_ALPHA, + SDL_GPU_BLENDFACTOR_ONE_MINUS_DST_ALPHA, + SDL_GPU_BLENDFACTOR_CONSTANT_COLOR, + SDL_GPU_BLENDFACTOR_ONE_MINUS_CONSTANT_COLOR, + SDL_GPU_BLENDFACTOR_SRC_ALPHA_SATURATE +} SDL_GPUBlendFactor; + +typedef enum SDL_GPUColorComponentFlagBits +{ + SDL_GPU_COLORCOMPONENT_R_BIT = 0x00000001, + SDL_GPU_COLORCOMPONENT_G_BIT = 0x00000002, + SDL_GPU_COLORCOMPONENT_B_BIT = 0x00000004, + SDL_GPU_COLORCOMPONENT_A_BIT = 0x00000008 +} SDL_GPUColorComponentFlagBits; + +typedef Uint8 SDL_GPUColorComponentFlags; + +typedef enum SDL_GPUFilter +{ + SDL_GPU_FILTER_NEAREST, + SDL_GPU_FILTER_LINEAR +} SDL_GPUFilter; + +typedef enum SDL_GPUSamplerMipmapMode +{ + SDL_GPU_SAMPLERMIPMAPMODE_NEAREST, + SDL_GPU_SAMPLERMIPMAPMODE_LINEAR +} SDL_GPUSamplerMipmapMode; + +typedef enum SDL_GPUSamplerAddressMode +{ + SDL_GPU_SAMPLERADDRESSMODE_REPEAT, + SDL_GPU_SAMPLERADDRESSMODE_MIRRORED_REPEAT, + SDL_GPU_SAMPLERADDRESSMODE_CLAMP_TO_EDGE +} SDL_GPUSamplerAddressMode; + +/* + * VSYNC: + * Waits for vblank before presenting. + * If there is a pending image to present, the new image is enqueued for presentation. + * Disallows tearing at the cost of visual latency. + * When using this present mode, AcquireSwapchainTexture will block if too many frames are in flight. + * IMMEDIATE: + * Immediately presents. + * Lowest latency option, but tearing may occur. + * When using this mode, AcquireSwapchainTexture will return NULL if too many frames are in flight. + * MAILBOX: + * Waits for vblank before presenting. No tearing is possible. + * If there is a pending image to present, the pending image is replaced by the new image. + * Similar to VSYNC, but with reduced visual latency. + * When using this mode, AcquireSwapchainTexture will return NULL if too many frames are in flight. + */ +typedef enum SDL_GPUPresentMode +{ + SDL_GPU_PRESENTMODE_VSYNC, + SDL_GPU_PRESENTMODE_IMMEDIATE, + SDL_GPU_PRESENTMODE_MAILBOX +} SDL_GPUPresentMode; + +/* + * SDR: + * B8G8R8A8 or R8G8B8A8 swapchain. Pixel values are in nonlinear sRGB encoding. Blends raw pixel values. + * SDR_LINEAR: + * B8G8R8A8_SRGB or R8G8B8A8_SRGB swapchain. Pixel values are in nonlinear sRGB encoding. Blends in linear space. + * HDR_EXTENDED_LINEAR: + * R16G16B16A16_SFLOAT swapchain. Pixel values are in extended linear encoding. Blends in linear space. + * HDR10_ST2048: + * A2R10G10B10 or A2B10G10R10 swapchain. Pixel values are in PQ ST2048 encoding. Blends raw pixel values. (TODO: verify this) + */ +typedef enum SDL_GPUSwapchainComposition +{ + SDL_GPU_SWAPCHAINCOMPOSITION_SDR, + SDL_GPU_SWAPCHAINCOMPOSITION_SDR_LINEAR, + SDL_GPU_SWAPCHAINCOMPOSITION_HDR_EXTENDED_LINEAR, + SDL_GPU_SWAPCHAINCOMPOSITION_HDR10_ST2048 +} SDL_GPUSwapchainComposition; + +typedef enum SDL_GPUDriver +{ + SDL_GPU_DRIVER_INVALID = -1, + SDL_GPU_DRIVER_SECRET, /* NDA'd platforms */ + SDL_GPU_DRIVER_VULKAN, + SDL_GPU_DRIVER_D3D11, + SDL_GPU_DRIVER_D3D12, + SDL_GPU_DRIVER_METAL +} SDL_GPUDriver; + +/* Structures */ + +typedef struct SDL_GPUDepthStencilValue +{ + float depth; + Uint8 stencil; +} SDL_GPUDepthStencilValue; + +typedef struct SDL_GPUViewport +{ + float x; + float y; + float w; + float h; + float minDepth; + float maxDepth; +} SDL_GPUViewport; + +typedef struct SDL_GPUTextureTransferInfo +{ + SDL_GPUTransferBuffer *transferBuffer; + Uint32 offset; /* starting location of the image data */ + Uint32 imagePitch; /* number of pixels from one row to the next */ + Uint32 imageHeight; /* number of rows from one layer/depth-slice to the next */ +} SDL_GPUTextureTransferInfo; + +typedef struct SDL_GPUTransferBufferLocation +{ + SDL_GPUTransferBuffer *transferBuffer; + Uint32 offset; +} SDL_GPUTransferBufferLocation; + +typedef struct SDL_GPUTextureLocation +{ + SDL_GPUTexture *texture; + Uint32 mipLevel; + Uint32 layer; + Uint32 x; + Uint32 y; + Uint32 z; +} SDL_GPUTextureLocation; + +typedef struct SDL_GPUTextureRegion +{ + SDL_GPUTexture *texture; + Uint32 mipLevel; + Uint32 layer; + Uint32 x; + Uint32 y; + Uint32 z; + Uint32 w; + Uint32 h; + Uint32 d; +} SDL_GPUTextureRegion; + +typedef struct SDL_GPUBlitRegion +{ + SDL_GPUTexture *texture; + Uint32 mipLevel; + Uint32 layerOrDepthPlane; + Uint32 x; + Uint32 y; + Uint32 w; + Uint32 h; +} SDL_GPUBlitRegion; + +typedef struct SDL_GPUBufferLocation +{ + SDL_GPUBuffer *buffer; + Uint32 offset; +} SDL_GPUBufferLocation; + +typedef struct SDL_GPUBufferRegion +{ + SDL_GPUBuffer *buffer; + Uint32 offset; + Uint32 size; +} SDL_GPUBufferRegion; + +/* Note that the `firstVertex` and `firstInstance` parameters are NOT compatible with + * built-in vertex/instance ID variables in shaders (for example, SV_VertexID). If + * your shader depends on these variables, the correlating draw call parameter MUST + * be 0. + */ +typedef struct SDL_GPUIndirectDrawCommand +{ + Uint32 vertexCount; /* number of vertices to draw */ + Uint32 instanceCount; /* number of instances to draw */ + Uint32 firstVertex; /* index of the first vertex to draw */ + Uint32 firstInstance; /* ID of the first instance to draw */ +} SDL_GPUIndirectDrawCommand; + +typedef struct SDL_GPUIndexedIndirectDrawCommand +{ + Uint32 indexCount; /* number of vertices to draw per instance */ + Uint32 instanceCount; /* number of instances to draw */ + Uint32 firstIndex; /* base index within the index buffer */ + Sint32 vertexOffset; /* value added to vertex index before indexing into the vertex buffer */ + Uint32 firstInstance; /* ID of the first instance to draw */ +} SDL_GPUIndexedIndirectDrawCommand; + +typedef struct SDL_GPUIndirectDispatchCommand +{ + Uint32 groupCountX; + Uint32 groupCountY; + Uint32 groupCountZ; +} SDL_GPUIndirectDispatchCommand; + +/* State structures */ + +typedef struct SDL_GPUSamplerCreateInfo +{ + SDL_GPUFilter minFilter; + SDL_GPUFilter magFilter; + SDL_GPUSamplerMipmapMode mipmapMode; + SDL_GPUSamplerAddressMode addressModeU; + SDL_GPUSamplerAddressMode addressModeV; + SDL_GPUSamplerAddressMode addressModeW; + float mipLodBias; + SDL_bool anisotropyEnable; + float maxAnisotropy; + SDL_bool compareEnable; + SDL_GPUCompareOp compareOp; + float minLod; + float maxLod; + + SDL_PropertiesID props; +} SDL_GPUSamplerCreateInfo; + +typedef struct SDL_GPUVertexBinding +{ + Uint32 binding; + Uint32 stride; + SDL_GPUVertexInputRate inputRate; + Uint32 instanceStepRate; /* ignored unless inputRate is INSTANCE */ +} SDL_GPUVertexBinding; + +typedef struct SDL_GPUVertexAttribute +{ + Uint32 location; + Uint32 binding; + SDL_GPUVertexElementFormat format; + Uint32 offset; +} SDL_GPUVertexAttribute; + +typedef struct SDL_GPUVertexInputState +{ + const SDL_GPUVertexBinding *vertexBindings; + Uint32 vertexBindingCount; + const SDL_GPUVertexAttribute *vertexAttributes; + Uint32 vertexAttributeCount; +} SDL_GPUVertexInputState; + +typedef struct SDL_GPUStencilOpState +{ + SDL_GPUStencilOp failOp; + SDL_GPUStencilOp passOp; + SDL_GPUStencilOp depthFailOp; + SDL_GPUCompareOp compareOp; +} SDL_GPUStencilOpState; + +typedef struct SDL_GPUColorAttachmentBlendState +{ + SDL_bool blendEnable; + SDL_GPUBlendFactor srcColorBlendFactor; + SDL_GPUBlendFactor dstColorBlendFactor; + SDL_GPUBlendOp colorBlendOp; + SDL_GPUBlendFactor srcAlphaBlendFactor; + SDL_GPUBlendFactor dstAlphaBlendFactor; + SDL_GPUBlendOp alphaBlendOp; + SDL_GPUColorComponentFlags colorWriteMask; +} SDL_GPUColorAttachmentBlendState; + +typedef struct SDL_GPUShaderCreateInfo +{ + size_t codeSize; + const Uint8 *code; + const char *entryPointName; + SDL_GPUShaderFormat format; + SDL_GPUShaderStage stage; + Uint32 samplerCount; + Uint32 storageTextureCount; + Uint32 storageBufferCount; + Uint32 uniformBufferCount; + + SDL_PropertiesID props; +} SDL_GPUShaderCreateInfo; + +typedef struct SDL_GPUTextureCreateInfo +{ + SDL_GPUTextureType type; + SDL_GPUTextureFormat format; + SDL_GPUTextureUsageFlags usageFlags; + Uint32 width; + Uint32 height; + Uint32 layerCountOrDepth; + Uint32 levelCount; + SDL_GPUSampleCount sampleCount; + + SDL_PropertiesID props; +} SDL_GPUTextureCreateInfo; + +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_R_FLOAT "SDL.gpu.createtexture.d3d12.clear.r" +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_G_FLOAT "SDL.gpu.createtexture.d3d12.clear.g" +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_B_FLOAT "SDL.gpu.createtexture.d3d12.clear.b" +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_A_FLOAT "SDL.gpu.createtexture.d3d12.clear.a" +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_DEPTH_FLOAT "SDL.gpu.createtexture.d3d12.clear.depth" +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_STENCIL_UINT8 "SDL.gpu.createtexture.d3d12.clear.stencil" + +typedef struct SDL_GPUBufferCreateInfo +{ + SDL_GPUBufferUsageFlags usageFlags; + Uint32 sizeInBytes; + + SDL_PropertiesID props; +} SDL_GPUBufferCreateInfo; + +typedef struct SDL_GPUTransferBufferCreateInfo +{ + SDL_GPUTransferBufferUsage usage; + Uint32 sizeInBytes; + + SDL_PropertiesID props; +} SDL_GPUTransferBufferCreateInfo; + +/* Pipeline state structures */ + +typedef struct SDL_GPURasterizerState +{ + SDL_GPUFillMode fillMode; + SDL_GPUCullMode cullMode; + SDL_GPUFrontFace frontFace; + SDL_bool depthBiasEnable; + float depthBiasConstantFactor; + float depthBiasClamp; + float depthBiasSlopeFactor; +} SDL_GPURasterizerState; + +typedef struct SDL_GPUMultisampleState +{ + SDL_GPUSampleCount sampleCount; + Uint32 sampleMask; +} SDL_GPUMultisampleState; + +typedef struct SDL_GPUDepthStencilState +{ + SDL_bool depthTestEnable; + SDL_bool depthWriteEnable; + SDL_GPUCompareOp compareOp; + SDL_bool stencilTestEnable; + SDL_GPUStencilOpState backStencilState; + SDL_GPUStencilOpState frontStencilState; + Uint8 compareMask; + Uint8 writeMask; + Uint8 reference; +} SDL_GPUDepthStencilState; + +typedef struct SDL_GPUColorAttachmentDescription +{ + SDL_GPUTextureFormat format; + SDL_GPUColorAttachmentBlendState blendState; +} SDL_GPUColorAttachmentDescription; + +typedef struct SDL_GPUGraphicsPipelineAttachmentInfo +{ + SDL_GPUColorAttachmentDescription *colorAttachmentDescriptions; + Uint32 colorAttachmentCount; + SDL_bool hasDepthStencilAttachment; + SDL_GPUTextureFormat depthStencilFormat; +} SDL_GPUGraphicsPipelineAttachmentInfo; + +typedef struct SDL_GPUGraphicsPipelineCreateInfo +{ + SDL_GPUShader *vertexShader; + SDL_GPUShader *fragmentShader; + SDL_GPUVertexInputState vertexInputState; + SDL_GPUPrimitiveType primitiveType; + SDL_GPURasterizerState rasterizerState; + SDL_GPUMultisampleState multisampleState; + SDL_GPUDepthStencilState depthStencilState; + SDL_GPUGraphicsPipelineAttachmentInfo attachmentInfo; + float blendConstants[4]; + + SDL_PropertiesID props; +} SDL_GPUGraphicsPipelineCreateInfo; + +typedef struct SDL_GPUComputePipelineCreateInfo +{ + size_t codeSize; + const Uint8 *code; + const char *entryPointName; + SDL_GPUShaderFormat format; + Uint32 readOnlyStorageTextureCount; + Uint32 readOnlyStorageBufferCount; + Uint32 writeOnlyStorageTextureCount; + Uint32 writeOnlyStorageBufferCount; + Uint32 uniformBufferCount; + Uint32 threadCountX; + Uint32 threadCountY; + Uint32 threadCountZ; + + SDL_PropertiesID props; +} SDL_GPUComputePipelineCreateInfo; + +typedef struct SDL_GPUColorAttachmentInfo +{ + /* The texture that will be used as a color attachment by a render pass. */ + SDL_GPUTexture *texture; + Uint32 mipLevel; + Uint32 layerOrDepthPlane; /* For 3D textures, you can bind an individual depth plane as an attachment. */ + + /* Can be ignored by RenderPass if CLEAR is not used */ + SDL_FColor clearColor; + + /* Determines what is done with the texture at the beginning of the render pass. + * + * LOAD: + * Loads the data currently in the texture. + * + * CLEAR: + * Clears the texture to a single color. + * + * DONT_CARE: + * The driver will do whatever it wants with the texture memory. + * This is a good option if you know that every single pixel will be touched in the render pass. + */ + SDL_GPULoadOp loadOp; + + /* Determines what is done with the texture at the end of the render pass. + * + * STORE: + * Stores the results of the render pass in the texture. + * + * DONT_CARE: + * The driver will do whatever it wants with the texture memory. + * This is often a good option for depth/stencil textures. + */ + SDL_GPUStoreOp storeOp; + + /* if SDL_TRUE, cycles the texture if the texture is bound and loadOp is not LOAD */ + SDL_bool cycle; +} SDL_GPUColorAttachmentInfo; + +typedef struct SDL_GPUDepthStencilAttachmentInfo +{ + /* The texture that will be used as the depth stencil attachment by a render pass. */ + SDL_GPUTexture *texture; + + /* Can be ignored by the render pass if CLEAR is not used */ + SDL_GPUDepthStencilValue depthStencilClearValue; + + /* Determines what is done with the depth values at the beginning of the render pass. + * + * LOAD: + * Loads the depth values currently in the texture. + * + * CLEAR: + * Clears the texture to a single depth. + * + * DONT_CARE: + * The driver will do whatever it wants with the memory. + * This is a good option if you know that every single pixel will be touched in the render pass. + */ + SDL_GPULoadOp loadOp; + + /* Determines what is done with the depth values at the end of the render pass. + * + * STORE: + * Stores the depth results in the texture. + * + * DONT_CARE: + * The driver will do whatever it wants with the texture memory. + * This is often a good option for depth/stencil textures. + */ + SDL_GPUStoreOp storeOp; + + /* Determines what is done with the stencil values at the beginning of the render pass. + * + * LOAD: + * Loads the stencil values currently in the texture. + * + * CLEAR: + * Clears the texture to a single stencil value. + * + * DONT_CARE: + * The driver will do whatever it wants with the memory. + * This is a good option if you know that every single pixel will be touched in the render pass. + */ + SDL_GPULoadOp stencilLoadOp; + + /* Determines what is done with the stencil values at the end of the render pass. + * + * STORE: + * Stores the stencil results in the texture. + * + * DONT_CARE: + * The driver will do whatever it wants with the texture memory. + * This is often a good option for depth/stencil textures. + */ + SDL_GPUStoreOp stencilStoreOp; + + /* if SDL_TRUE, cycles the texture if the texture is bound and any load ops are not LOAD */ + SDL_bool cycle; +} SDL_GPUDepthStencilAttachmentInfo; + +/* Binding structs */ + +typedef struct SDL_GPUBufferBinding +{ + SDL_GPUBuffer *buffer; + Uint32 offset; +} SDL_GPUBufferBinding; + +typedef struct SDL_GPUTextureSamplerBinding +{ + SDL_GPUTexture *texture; + SDL_GPUSampler *sampler; +} SDL_GPUTextureSamplerBinding; + +typedef struct SDL_GPUStorageBufferWriteOnlyBinding +{ + SDL_GPUBuffer *buffer; + + /* if SDL_TRUE, cycles the buffer if it is bound. */ + SDL_bool cycle; +} SDL_GPUStorageBufferWriteOnlyBinding; + +typedef struct SDL_GPUStorageTextureWriteOnlyBinding +{ + SDL_GPUTexture *texture; + Uint32 mipLevel; + Uint32 layer; + + /* if SDL_TRUE, cycles the texture if the texture is bound. */ + SDL_bool cycle; +} SDL_GPUStorageTextureWriteOnlyBinding; + +/* Functions */ + +/* Device */ + +/** + * Creates a GPU context. + * + * \param formatFlags a bitflag indicating which shader formats the app is + * able to provide. + * \param debugMode enable debug mode properties and validations. + * \param name the preferred GPU driver, or NULL to let SDL pick the optimal + * driver. + * \returns a GPU context on success or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_GetGPUDriver + * \sa SDL_DestroyGPUDevice + */ +extern SDL_DECLSPEC SDL_GPUDevice *SDLCALL SDL_CreateGPUDevice( + SDL_GPUShaderFormat formatFlags, + SDL_bool debugMode, + const char *name); + +/** + * Creates a GPU context. + * + * These are the supported properties: + * + * - `SDL_PROP_GPU_DEVICE_CREATE_DEBUGMODE_BOOL`: enable debug mode properties + * and validations, defaults to SDL_TRUE. + * - `SDL_PROP_GPU_DEVICE_CREATE_PREFERLOWPOWER_BOOL`: enable to prefer energy + * efficiency over maximum GPU performance, defaults to SDL_FALSE. + * - `SDL_PROP_GPU_DEVICE_CREATE_NAME_STRING`: the name of the GPU driver to + * use, if a specific one is desired. + * + * These are the current shader format properties: + * + * - `SDL_PROP_GPU_DEVICE_CREATE_SHADERS_SECRET_BOOL`: The app is able to + * provide shaders for an NDA platform. + * - `SDL_PROP_GPU_DEVICE_CREATE_SHADERS_SPIRV_BOOL`: The app is able to + * provide SPIR-V shaders if applicable. + * - SDL_PROP_GPU_DEVICE_CREATE_SHADERS_DXBC_BOOL`: The app is able to provide + * DXBC shaders if applicable + * `SDL_PROP_GPU_DEVICE_CREATE_SHADERS_DXIL_BOOL`: The app is able to + * provide DXIL shaders if applicable. + * - `SDL_PROP_GPU_DEVICE_CREATE_SHADERS_MSL_BOOL`: The app is able to provide + * MSL shaders if applicable. + * - `SDL_PROP_GPU_DEVICE_CREATE_SHADERS_METALLIB_BOOL`: The app is able to + * provide Metal shader libraries if applicable. + * + * With the D3D12 renderer: + * + * - `SDL_PROP_GPU_DEVICE_CREATE_D3D12_SEMANTIC_NAME_STRING`: the prefix to + * use for all vertex semantics, default is "TEXCOORD". + * + * \param props the properties to use. + * \returns a GPU context on success or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_GetGPUDriver + * \sa SDL_DestroyGPUDevice + */ +extern SDL_DECLSPEC SDL_GPUDevice *SDLCALL SDL_CreateGPUDeviceWithProperties( + SDL_PropertiesID props); + +#define SDL_PROP_GPU_DEVICE_CREATE_DEBUGMODE_BOOL "SDL.gpu.device.create.debugmode" +#define SDL_PROP_GPU_DEVICE_CREATE_PREFERLOWPOWER_BOOL "SDL.gpu.device.create.preferlowpower" +#define SDL_PROP_GPU_DEVICE_CREATE_NAME_STRING "SDL.gpu.device.create.name" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_SECRET_BOOL "SDL.gpu.device.create.shaders.secret" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_SPIRV_BOOL "SDL.gpu.device.create.shaders.spirv" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_DXBC_BOOL "SDL.gpu.device.create.shaders.dxbc" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_DXIL_BOOL "SDL.gpu.device.create.shaders.dxil" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_MSL_BOOL "SDL.gpu.device.create.shaders.msl" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_METALLIB_BOOL "SDL.gpu.device.create.shaders.metallib" +#define SDL_PROP_GPU_DEVICE_CREATE_D3D12_SEMANTIC_NAME_STRING "SDL.gpu.device.create.d3d12.semantic" + +/** + * Destroys a GPU context previously returned by SDL_CreateGPUDevice. + * + * \param device a GPU Context to destroy. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_CreateGPUDevice + */ +extern SDL_DECLSPEC void SDLCALL SDL_DestroyGPUDevice(SDL_GPUDevice *device); + +/** + * Returns the backend used to create this GPU context. + * + * \param device a GPU context to query. + * \returns an SDL_GPUDriver value, or SDL_GPU_DRIVER_INVALID on error. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC SDL_GPUDriver SDLCALL SDL_GetGPUDriver(SDL_GPUDevice *device); + +/* State Creation */ + +/** + * Creates a pipeline object to be used in a compute workflow. + * + * Shader resource bindings must be authored to follow a particular order. For + * SPIR-V shaders, use the following resource sets: 0: Read-only storage + * textures, followed by read-only storage buffers 1: Write-only storage + * textures, followed by write-only storage buffers 2: Uniform buffers + * + * For DXBC Shader Model 5_0 shaders, use the following register order: For t + * registers: Read-only storage textures, followed by read-only storage + * buffers For u registers: Write-only storage textures, followed by + * write-only storage buffers For b registers: Uniform buffers + * + * For DXIL shaders, use the following register order: (t[n], space0): + * Read-only storage textures, followed by read-only storage buffers (u[n], + * space1): Write-only storage textures, followed by write-only storage + * buffers (b[n], space2): Uniform buffers + * + * For MSL/metallib, use the following order: For [[buffer]]: Uniform buffers, + * followed by write-only storage buffers, followed by write-only storage + * buffers For [[texture]]: Read-only storage textures, followed by write-only + * storage textures + * + * \param device a GPU Context. + * \param computePipelineCreateInfo a struct describing the state of the + * requested compute pipeline. + * \returns a compute pipeline object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_BindGPUComputePipeline + * \sa SDL_ReleaseGPUComputePipeline + */ +extern SDL_DECLSPEC SDL_GPUComputePipeline *SDLCALL SDL_CreateGPUComputePipeline( + SDL_GPUDevice *device, + SDL_GPUComputePipelineCreateInfo *computePipelineCreateInfo); + +/** + * Creates a pipeline object to be used in a graphics workflow. + * + * \param device a GPU Context. + * \param pipelineCreateInfo a struct describing the state of the desired + * graphics pipeline. + * \returns a graphics pipeline object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_CreateGPUShader + * \sa SDL_BindGPUGraphicsPipeline + * \sa SDL_ReleaseGPUGraphicsPipeline + */ +extern SDL_DECLSPEC SDL_GPUGraphicsPipeline *SDLCALL SDL_CreateGPUGraphicsPipeline( + SDL_GPUDevice *device, + SDL_GPUGraphicsPipelineCreateInfo *pipelineCreateInfo); + +/** + * Creates a sampler object to be used when binding textures in a graphics + * workflow. + * + * \param device a GPU Context. + * \param samplerCreateInfo a struct describing the state of the desired + * sampler. + * \returns a sampler object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_BindGPUVertexSamplers + * \sa SDL_BindGPUFragmentSamplers + * \sa SDL_ReleaseSampler + */ +extern SDL_DECLSPEC SDL_GPUSampler *SDLCALL SDL_CreateGPUSampler( + SDL_GPUDevice *device, + SDL_GPUSamplerCreateInfo *samplerCreateInfo); + +/** + * Creates a shader to be used when creating a graphics pipeline. + * + * Shader resource bindings must be authored to follow a particular order + * depending on the shader format. + * + * For SPIR-V shaders, use the following resource sets: For vertex shaders: 0: + * Sampled textures, followed by storage textures, followed by storage buffers + * 1: Uniform buffers For fragment shaders: 2: Sampled textures, followed by + * storage textures, followed by storage buffers 3: Uniform buffers + * + * For DXBC Shader Model 5_0 shaders, use the following register order: For t + * registers: Sampled textures, followed by storage textures, followed by + * storage buffers For s registers: Samplers with indices corresponding to the + * sampled textures For b registers: Uniform buffers + * + * For DXIL shaders, use the following register order: For vertex shaders: + * (t[n], space0): Sampled textures, followed by storage textures, followed by + * storage buffers (s[n], space0): Samplers with indices corresponding to the + * sampled textures (b[n], space1): Uniform buffers For pixel shaders: (t[n], + * space2): Sampled textures, followed by storage textures, followed by + * storage buffers (s[n], space2): Samplers with indices corresponding to the + * sampled textures (b[n], space3): Uniform buffers + * + * For MSL/metallib, use the following order: For [[texture]]: Sampled + * textures, followed by storage textures For [[sampler]]: Samplers with + * indices corresponding to the sampled textures For [[buffer]]: Uniform + * buffers, followed by storage buffers. Vertex buffer 0 is bound at + * [[buffer(30)]], vertex buffer 1 at [[buffer(29)]], and so on. Rather than + * manually authoring vertex buffer indices, use the [[stage_in]] attribute + * which will automatically use the vertex input information from the + * SDL_GPUPipeline. + * + * \param device a GPU Context. + * \param shaderCreateInfo a struct describing the state of the desired + * shader. + * \returns a shader object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_CreateGPUGraphicsPipeline + * \sa SDL_ReleaseGPUShader + */ +extern SDL_DECLSPEC SDL_GPUShader *SDLCALL SDL_CreateGPUShader( + SDL_GPUDevice *device, + SDL_GPUShaderCreateInfo *shaderCreateInfo); + +/** + * Creates a texture object to be used in graphics or compute workflows. + * + * The contents of this texture are undefined until data is written to the + * texture. + * + * Note that certain combinations of usage flags are invalid. For example, a + * texture cannot have both the SAMPLER and GRAPHICS_STORAGE_READ flags. + * + * If you request a sample count higher than the hardware supports, the + * implementation will automatically fall back to the highest available sample + * count. + * + * \param device a GPU Context. + * \param textureCreateInfo a struct describing the state of the texture to + * create. + * \returns a texture object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_UploadToGPUTexture + * \sa SDL_DownloadFromGPUTexture + * \sa SDL_BindGPUVertexSamplers + * \sa SDL_BindGPUVertexStorageTextures + * \sa SDL_BindGPUFragmentSamplers + * \sa SDL_BindGPUFragmentStorageTextures + * \sa SDL_BindGPUComputeStorageTextures + * \sa SDL_BlitGPUTexture + * \sa SDL_ReleaseGPUTexture + * \sa SDL_GPUTextureSupportsFormat + */ +extern SDL_DECLSPEC SDL_GPUTexture *SDLCALL SDL_CreateGPUTexture( + SDL_GPUDevice *device, + SDL_GPUTextureCreateInfo *textureCreateInfo); + +/** + * Creates a buffer object to be used in graphics or compute workflows. + * + * The contents of this buffer are undefined until data is written to the + * buffer. + * + * Note that certain combinations of usage flags are invalid. For example, a + * buffer cannot have both the VERTEX and INDEX flags. + * + * \param device a GPU Context. + * \param bufferCreateInfo a struct describing the state of the buffer to + * create. + * \returns a buffer object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_UploadToGPUBuffer + * \sa SDL_BindGPUVertexBuffers + * \sa SDL_BindGPUIndexBuffer + * \sa SDL_BindGPUVertexStorageBuffers + * \sa SDL_BindGPUFragmentStorageBuffers + * \sa SDL_BindGPUComputeStorageBuffers + * \sa SDL_ReleaseGPUBuffer + */ +extern SDL_DECLSPEC SDL_GPUBuffer *SDLCALL SDL_CreateGPUBuffer( + SDL_GPUDevice *device, + SDL_GPUBufferCreateInfo *bufferCreateInfo); + +/** + * Creates a transfer buffer to be used when uploading to or downloading from + * graphics resources. + * + * \param device a GPU Context. + * \param transferBufferCreateInfo a struct describing the state of the + * transfer buffer to create. + * \returns a transfer buffer on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_UploadToGPUBuffer + * \sa SDL_DownloadFromGPUBuffer + * \sa SDL_UploadToGPUTexture + * \sa SDL_DownloadFromGPUTexture + * \sa SDL_ReleaseGPUTransferBuffer + */ +extern SDL_DECLSPEC SDL_GPUTransferBuffer *SDLCALL SDL_CreateGPUTransferBuffer( + SDL_GPUDevice *device, + SDL_GPUTransferBufferCreateInfo *transferBufferCreateInfo); + +/* Debug Naming */ + +/** + * Sets an arbitrary string constant to label a buffer. + * + * Useful for debugging. + * + * \param device a GPU Context. + * \param buffer a buffer to attach the name to. + * \param text a UTF-8 string constant to mark as the name of the buffer. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_SetGPUBufferName( + SDL_GPUDevice *device, + SDL_GPUBuffer *buffer, + const char *text); + +/** + * Sets an arbitrary string constant to label a texture. + * + * Useful for debugging. + * + * \param device a GPU Context. + * \param texture a texture to attach the name to. + * \param text a UTF-8 string constant to mark as the name of the texture. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_SetGPUTextureName( + SDL_GPUDevice *device, + SDL_GPUTexture *texture, + const char *text); + +/** + * Inserts an arbitrary string label into the command buffer callstream. + * + * Useful for debugging. + * + * \param commandBuffer a command buffer. + * \param text a UTF-8 string constant to insert as the label. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_InsertGPUDebugLabel( + SDL_GPUCommandBuffer *commandBuffer, + const char *text); + +/** + * Begins a debug group with an arbitary name. + * + * Used for denoting groups of calls when viewing the command buffer + * callstream in a graphics debugging tool. + * + * Each call to SDL_PushGPUDebugGroup must have a corresponding call to + * SDL_PopGPUDebugGroup. + * + * On some backends (e.g. Metal), pushing a debug group during a + * render/blit/compute pass will create a group that is scoped to the native + * pass rather than the command buffer. For best results, if you push a debug + * group during a pass, always pop it in the same pass. + * + * \param commandBuffer a command buffer. + * \param name a UTF-8 string constant that names the group. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_PopGPUDebugGroup + */ +extern SDL_DECLSPEC void SDLCALL SDL_PushGPUDebugGroup( + SDL_GPUCommandBuffer *commandBuffer, + const char *name); + +/** + * Ends the most-recently pushed debug group. + * + * \param commandBuffer a command buffer. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_PushGPUDebugGroup + */ +extern SDL_DECLSPEC void SDLCALL SDL_PopGPUDebugGroup( + SDL_GPUCommandBuffer *commandBuffer); + +/* Disposal */ + +/** + * Frees the given texture as soon as it is safe to do so. + * + * You must not reference the texture after calling this function. + * + * \param device a GPU context. + * \param texture a texture to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUTexture( + SDL_GPUDevice *device, + SDL_GPUTexture *texture); + +/** + * Frees the given sampler as soon as it is safe to do so. + * + * You must not reference the texture after calling this function. + * + * \param device a GPU context. + * \param sampler a sampler to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUSampler( + SDL_GPUDevice *device, + SDL_GPUSampler *sampler); + +/** + * Frees the given buffer as soon as it is safe to do so. + * + * You must not reference the buffer after calling this function. + * + * \param device a GPU context. + * \param buffer a buffer to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUBuffer( + SDL_GPUDevice *device, + SDL_GPUBuffer *buffer); + +/** + * Frees the given transfer buffer as soon as it is safe to do so. + * + * You must not reference the transfer buffer after calling this function. + * + * \param device a GPU context. + * \param transferBuffer a transfer buffer to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUTransferBuffer( + SDL_GPUDevice *device, + SDL_GPUTransferBuffer *transferBuffer); + +/** + * Frees the given compute pipeline as soon as it is safe to do so. + * + * You must not reference the compute pipeline after calling this function. + * + * \param device a GPU context. + * \param computePipeline a compute pipeline to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUComputePipeline( + SDL_GPUDevice *device, + SDL_GPUComputePipeline *computePipeline); + +/** + * Frees the given shader as soon as it is safe to do so. + * + * You must not reference the shader after calling this function. + * + * \param device a GPU context. + * \param shader a shader to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUShader( + SDL_GPUDevice *device, + SDL_GPUShader *shader); + +/** + * Frees the given graphics pipeline as soon as it is safe to do so. + * + * You must not reference the graphics pipeline after calling this function. + * + * \param device a GPU context. + * \param graphicsPipeline a graphics pipeline to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUGraphicsPipeline( + SDL_GPUDevice *device, + SDL_GPUGraphicsPipeline *graphicsPipeline); + +/* + * COMMAND BUFFERS + * + * Render state is managed via command buffers. + * When setting render state, that state is always local to the command buffer. + * + * Commands only begin execution on the GPU once Submit is called. + * Once the command buffer is submitted, it is no longer valid to use it. + * + * Command buffers are executed in submission order. If you submit command buffer A and then command buffer B + * all commands in A will begin executing before any command in B begins executing. + * + * In multi-threading scenarios, you should acquire and submit a command buffer on the same thread. + * As long as you satisfy this requirement, all functionality related to command buffers is thread-safe. + */ + +/** + * Acquire a command buffer. + * + * This command buffer is managed by the implementation and should not be + * freed by the user. The command buffer may only be used on the thread it was + * acquired on. The command buffer should be submitted on the thread it was + * acquired on. + * + * \param device a GPU context. + * \returns a command buffer. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SubmitGPUCommandBuffer + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + */ +extern SDL_DECLSPEC SDL_GPUCommandBuffer *SDLCALL SDL_AcquireGPUCommandBuffer( + SDL_GPUDevice *device); + +/* + * UNIFORM DATA + * + * Uniforms are for passing data to shaders. + * The uniform data will be constant across all executions of the shader. + * + * There are 4 available uniform slots per shader stage (vertex, fragment, compute). + * Uniform data pushed to a slot on a stage keeps its value throughout the command buffer + * until you call the relevant Push function on that slot again. + * + * For example, you could write your vertex shaders to read a camera matrix from uniform binding slot 0, + * push the camera matrix at the start of the command buffer, and that data will be used for every + * subsequent draw call. + * + * It is valid to push uniform data during a render or compute pass. + * + * Uniforms are best for pushing small amounts of data. + * If you are pushing more than a matrix or two per call you should consider using a storage buffer instead. + */ + +/** + * Pushes data to a vertex uniform slot on the command buffer. + * + * Subsequent draw calls will use this uniform data. + * + * \param commandBuffer a command buffer. + * \param slotIndex the vertex uniform slot to push data to. + * \param data client data to write. + * \param dataLengthInBytes the length of the data to write. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_PushGPUVertexUniformData( + SDL_GPUCommandBuffer *commandBuffer, + Uint32 slotIndex, + const void *data, + Uint32 dataLengthInBytes); + +/** + * Pushes data to a fragment uniform slot on the command buffer. + * + * Subsequent draw calls will use this uniform data. + * + * \param commandBuffer a command buffer. + * \param slotIndex the fragment uniform slot to push data to. + * \param data client data to write. + * \param dataLengthInBytes the length of the data to write. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_PushGPUFragmentUniformData( + SDL_GPUCommandBuffer *commandBuffer, + Uint32 slotIndex, + const void *data, + Uint32 dataLengthInBytes); + +/** + * Pushes data to a uniform slot on the command buffer. + * + * Subsequent draw calls will use this uniform data. + * + * \param commandBuffer a command buffer. + * \param slotIndex the uniform slot to push data to. + * \param data client data to write. + * \param dataLengthInBytes the length of the data to write. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_PushGPUComputeUniformData( + SDL_GPUCommandBuffer *commandBuffer, + Uint32 slotIndex, + const void *data, + Uint32 dataLengthInBytes); + +/* + * A NOTE ON CYCLING + * + * When using a command buffer, operations do not occur immediately - + * they occur some time after the command buffer is submitted. + * + * When a resource is used in a pending or active command buffer, it is considered to be "bound". + * When a resource is no longer used in any pending or active command buffers, it is considered to be "unbound". + * + * If data resources are bound, it is unspecified when that data will be unbound + * unless you acquire a fence when submitting the command buffer and wait on it. + * However, this doesn't mean you need to track resource usage manually. + * + * All of the functions and structs that involve writing to a resource have a "cycle" bool. + * GPUTransferBuffer, GPUBuffer, and GPUTexture all effectively function as ring buffers on internal resources. + * When cycle is SDL_TRUE, if the resource is bound, the cycle rotates to the next unbound internal resource, + * or if none are available, a new one is created. + * This means you don't have to worry about complex state tracking and synchronization as long as cycling is correctly employed. + * + * For example: you can call MapTransferBuffer, write texture data, UnmapTransferBuffer, and then UploadToTexture. + * The next time you write texture data to the transfer buffer, if you set the cycle param to SDL_TRUE, you don't have + * to worry about overwriting any data that is not yet uploaded. + * + * Another example: If you are using a texture in a render pass every frame, this can cause a data dependency between frames. + * If you set cycle to SDL_TRUE in the ColorAttachmentInfo struct, you can prevent this data dependency. + * + * Cycling will never undefine already bound data. + * When cycling, all data in the resource is considered to be undefined for subsequent commands until that data is written again. + * You must take care not to read undefined data. + * + * Note that when cycling a texture, the entire texture will be cycled, + * even if only part of the texture is used in the call, + * so you must consider the entire texture to contain undefined data after cycling. + * + * You must also take care not to overwrite a section of data that has been referenced in a command without cycling first. + * It is OK to overwrite unreferenced data in a bound resource without cycling, + * but overwriting a section of data that has already been referenced will produce unexpected results. + */ + +/* Graphics State */ + +/** + * Begins a render pass on a command buffer. + * + * A render pass consists of a set of texture subresources (or depth slices in + * the 3D texture case) which will be rendered to during the render pass, + * along with corresponding clear values and load/store operations. All + * operations related to graphics pipelines must take place inside of a render + * pass. A default viewport and scissor state are automatically set when this + * is called. You cannot begin another render pass, or begin a compute pass or + * copy pass until you have ended the render pass. + * + * \param commandBuffer a command buffer. + * \param colorAttachmentInfos an array of texture subresources with + * corresponding clear values and load/store ops. + * \param colorAttachmentCount the number of color attachments in the + * colorAttachmentInfos array. + * \param depthStencilAttachmentInfo a texture subresource with corresponding + * clear value and load/store ops, may be + * NULL. + * \returns a render pass handle. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_EndGPURenderPass + */ +extern SDL_DECLSPEC SDL_GPURenderPass *SDLCALL SDL_BeginGPURenderPass( + SDL_GPUCommandBuffer *commandBuffer, + SDL_GPUColorAttachmentInfo *colorAttachmentInfos, + Uint32 colorAttachmentCount, + SDL_GPUDepthStencilAttachmentInfo *depthStencilAttachmentInfo); + +/** + * Binds a graphics pipeline on a render pass to be used in rendering. + * + * A graphics pipeline must be bound before making any draw calls. + * + * \param renderPass a render pass handle. + * \param graphicsPipeline the graphics pipeline to bind. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUGraphicsPipeline( + SDL_GPURenderPass *renderPass, + SDL_GPUGraphicsPipeline *graphicsPipeline); + +/** + * Sets the current viewport state on a command buffer. + * + * \param renderPass a render pass handle. + * \param viewport the viewport to set. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_SetGPUViewport( + SDL_GPURenderPass *renderPass, + SDL_GPUViewport *viewport); + +/** + * Sets the current scissor state on a command buffer. + * + * \param renderPass a render pass handle. + * \param scissor the scissor area to set. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_SetGPUScissor( + SDL_GPURenderPass *renderPass, + SDL_Rect *scissor); + +/** + * Binds vertex buffers on a command buffer for use with subsequent draw + * calls. + * + * \param renderPass a render pass handle. + * \param firstBinding the starting bind point for the vertex buffers. + * \param pBindings an array of SDL_GPUBufferBinding structs containing vertex + * buffers and offset values. + * \param bindingCount the number of bindings in the pBindings array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUVertexBuffers( + SDL_GPURenderPass *renderPass, + Uint32 firstBinding, + SDL_GPUBufferBinding *pBindings, + Uint32 bindingCount); + +/** + * Binds an index buffer on a command buffer for use with subsequent draw + * calls. + * + * \param renderPass a render pass handle. + * \param pBinding a pointer to a struct containing an index buffer and + * offset. + * \param indexElementSize whether the index values in the buffer are 16- or + * 32-bit. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUIndexBuffer( + SDL_GPURenderPass *renderPass, + SDL_GPUBufferBinding *pBinding, + SDL_GPUIndexElementSize indexElementSize); + +/** + * Binds texture-sampler pairs for use on the vertex shader. + * + * The textures must have been created with SDL_GPU_TEXTUREUSAGE_SAMPLER_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the vertex sampler slot to begin binding from. + * \param textureSamplerBindings an array of texture-sampler binding structs. + * \param bindingCount the number of texture-sampler pairs to bind from the + * array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUVertexSamplers( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUTextureSamplerBinding *textureSamplerBindings, + Uint32 bindingCount); + +/** + * Binds storage textures for use on the vertex shader. + * + * These textures must have been created with + * SDL_GPU_TEXTUREUSAGE_GRAPHICS_STORAGE_READ_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the vertex storage texture slot to begin binding from. + * \param storageTextures an array of storage textures. + * \param bindingCount the number of storage texture to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUVertexStorageTextures( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUTexture **storageTextures, + Uint32 bindingCount); + +/** + * Binds storage buffers for use on the vertex shader. + * + * These buffers must have been created with + * SDL_GPU_BUFFERUSAGE_GRAPHICS_STORAGE_READ_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the vertex storage buffer slot to begin binding from. + * \param storageBuffers an array of buffers. + * \param bindingCount the number of buffers to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUVertexStorageBuffers( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUBuffer **storageBuffers, + Uint32 bindingCount); + +/** + * Binds texture-sampler pairs for use on the fragment shader. + * + * The textures must have been created with SDL_GPU_TEXTUREUSAGE_SAMPLER_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the fragment sampler slot to begin binding from. + * \param textureSamplerBindings an array of texture-sampler binding structs. + * \param bindingCount the number of texture-sampler pairs to bind from the + * array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUFragmentSamplers( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUTextureSamplerBinding *textureSamplerBindings, + Uint32 bindingCount); + +/** + * Binds storage textures for use on the fragment shader. + * + * These textures must have been created with + * SDL_GPU_TEXTUREUSAGE_GRAPHICS_STORAGE_READ_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the fragment storage texture slot to begin binding from. + * \param storageTextures an array of storage textures. + * \param bindingCount the number of storage textures to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUFragmentStorageTextures( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUTexture **storageTextures, + Uint32 bindingCount); + +/** + * Binds storage buffers for use on the fragment shader. + * + * These buffers must have been created with + * SDL_GPU_BUFFERUSAGE_GRAPHICS_STORAGE_READ_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the fragment storage buffer slot to begin binding from. + * \param storageBuffers an array of storage buffers. + * \param bindingCount the number of storage buffers to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUFragmentStorageBuffers( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUBuffer **storageBuffers, + Uint32 bindingCount); + +/* Drawing */ + +/** + * Draws data using bound graphics state with an index buffer and instancing + * enabled. + * + * You must not call this function before binding a graphics pipeline. + * + * Note that the `firstVertex` and `firstInstance` parameters are NOT + * compatible with built-in vertex/instance ID variables in shaders (for + * example, SV_VertexID). If your shader depends on these variables, the + * correlating draw call parameter MUST be 0. + * + * \param renderPass a render pass handle. + * \param indexCount the number of vertices to draw per instance. + * \param instanceCount the number of instances to draw. + * \param firstIndex the starting index within the index buffer. + * \param vertexOffset value added to vertex index before indexing into the + * vertex buffer. + * \param firstInstance the ID of the first instance to draw. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DrawGPUIndexedPrimitives( + SDL_GPURenderPass *renderPass, + Uint32 indexCount, + Uint32 instanceCount, + Uint32 firstIndex, + Sint32 vertexOffset, + Uint32 firstInstance); + +/** + * Draws data using bound graphics state. + * + * You must not call this function before binding a graphics pipeline. + * + * Note that the `firstVertex` and `firstInstance` parameters are NOT + * compatible with built-in vertex/instance ID variables in shaders (for + * example, SV_VertexID). If your shader depends on these variables, the + * correlating draw call parameter MUST be 0. + * + * \param renderPass a render pass handle. + * \param vertexCount the number of vertices to draw. + * \param instanceCount the number of instances that will be drawn. + * \param firstVertex the index of the first vertex to draw. + * \param firstInstance the ID of the first instance to draw. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DrawGPUPrimitives( + SDL_GPURenderPass *renderPass, + Uint32 vertexCount, + Uint32 instanceCount, + Uint32 firstVertex, + Uint32 firstInstance); + +/** + * Draws data using bound graphics state and with draw parameters set from a + * buffer. + * + * The buffer layout should match the layout of SDL_GPUIndirectDrawCommand. + * You must not call this function before binding a graphics pipeline. + * + * \param renderPass a render pass handle. + * \param buffer a buffer containing draw parameters. + * \param offsetInBytes the offset to start reading from the draw buffer. + * \param drawCount the number of draw parameter sets that should be read from + * the draw buffer. + * \param stride the byte stride between sets of draw parameters. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DrawGPUPrimitivesIndirect( + SDL_GPURenderPass *renderPass, + SDL_GPUBuffer *buffer, + Uint32 offsetInBytes, + Uint32 drawCount, + Uint32 stride); + +/** + * Draws data using bound graphics state with an index buffer enabled and with + * draw parameters set from a buffer. + * + * The buffer layout should match the layout of + * SDL_GPUIndexedIndirectDrawCommand. You must not call this function before + * binding a graphics pipeline. + * + * \param renderPass a render pass handle. + * \param buffer a buffer containing draw parameters. + * \param offsetInBytes the offset to start reading from the draw buffer. + * \param drawCount the number of draw parameter sets that should be read from + * the draw buffer. + * \param stride the byte stride between sets of draw parameters. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DrawGPUIndexedPrimitivesIndirect( + SDL_GPURenderPass *renderPass, + SDL_GPUBuffer *buffer, + Uint32 offsetInBytes, + Uint32 drawCount, + Uint32 stride); + +/** + * Ends the given render pass. + * + * All bound graphics state on the render pass command buffer is unset. The + * render pass handle is now invalid. + * + * \param renderPass a render pass handle. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_EndGPURenderPass( + SDL_GPURenderPass *renderPass); + +/* Compute Pass */ + +/** + * Begins a compute pass on a command buffer. + * + * A compute pass is defined by a set of texture subresources and buffers that + * will be written to by compute pipelines. These textures and buffers must + * have been created with the COMPUTE_STORAGE_WRITE bit. All operations + * related to compute pipelines must take place inside of a compute pass. You + * must not begin another compute pass, or a render pass or copy pass before + * ending the compute pass. + * + * A VERY IMPORTANT NOTE Textures and buffers bound as write-only MUST NOT be + * read from during the compute pass. Doing so will result in undefined + * behavior. If your compute work requires reading the output from a previous + * dispatch, you MUST end the current compute pass and begin a new one before + * you can safely access the data. + * + * \param commandBuffer a command buffer. + * \param storageTextureBindings an array of writeable storage texture binding + * structs. + * \param storageTextureBindingCount the number of storage textures to bind + * from the array. + * \param storageBufferBindings an array of writeable storage buffer binding + * structs. + * \param storageBufferBindingCount the number of storage buffers to bind from + * the array. + * \returns a compute pass handle. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_EndGPUComputePass + */ +extern SDL_DECLSPEC SDL_GPUComputePass *SDLCALL SDL_BeginGPUComputePass( + SDL_GPUCommandBuffer *commandBuffer, + SDL_GPUStorageTextureWriteOnlyBinding *storageTextureBindings, + Uint32 storageTextureBindingCount, + SDL_GPUStorageBufferWriteOnlyBinding *storageBufferBindings, + Uint32 storageBufferBindingCount); + +/** + * Binds a compute pipeline on a command buffer for use in compute dispatch. + * + * \param computePass a compute pass handle. + * \param computePipeline a compute pipeline to bind. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUComputePipeline( + SDL_GPUComputePass *computePass, + SDL_GPUComputePipeline *computePipeline); + +/** + * Binds storage textures as readonly for use on the compute pipeline. + * + * These textures must have been created with + * SDL_GPU_TEXTUREUSAGE_COMPUTE_STORAGE_READ_BIT. + * + * \param computePass a compute pass handle. + * \param firstSlot the compute storage texture slot to begin binding from. + * \param storageTextures an array of storage textures. + * \param bindingCount the number of storage textures to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUComputeStorageTextures( + SDL_GPUComputePass *computePass, + Uint32 firstSlot, + SDL_GPUTexture **storageTextures, + Uint32 bindingCount); + +/** + * Binds storage buffers as readonly for use on the compute pipeline. + * + * These buffers must have been created with + * SDL_GPU_BUFFERUSAGE_COMPUTE_STORAGE_READ_BIT. + * + * \param computePass a compute pass handle. + * \param firstSlot the compute storage buffer slot to begin binding from. + * \param storageBuffers an array of storage buffer binding structs. + * \param bindingCount the number of storage buffers to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUComputeStorageBuffers( + SDL_GPUComputePass *computePass, + Uint32 firstSlot, + SDL_GPUBuffer **storageBuffers, + Uint32 bindingCount); + +/** + * Dispatches compute work. + * + * You must not call this function before binding a compute pipeline. + * + * A VERY IMPORTANT NOTE If you dispatch multiple times in a compute pass, and + * the dispatches write to the same resource region as each other, there is no + * guarantee of which order the writes will occur. If the write order matters, + * you MUST end the compute pass and begin another one. + * + * \param computePass a compute pass handle. + * \param groupCountX number of local workgroups to dispatch in the X + * dimension. + * \param groupCountY number of local workgroups to dispatch in the Y + * dimension. + * \param groupCountZ number of local workgroups to dispatch in the Z + * dimension. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DispatchGPUCompute( + SDL_GPUComputePass *computePass, + Uint32 groupCountX, + Uint32 groupCountY, + Uint32 groupCountZ); + +/** + * Dispatches compute work with parameters set from a buffer. + * + * The buffer layout should match the layout of + * SDL_GPUIndirectDispatchCommand. You must not call this function before + * binding a compute pipeline. + * + * A VERY IMPORTANT NOTE If you dispatch multiple times in a compute pass, and + * the dispatches write to the same resource region as each other, there is no + * guarantee of which order the writes will occur. If the write order matters, + * you MUST end the compute pass and begin another one. + * + * \param computePass a compute pass handle. + * \param buffer a buffer containing dispatch parameters. + * \param offsetInBytes the offset to start reading from the dispatch buffer. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DispatchGPUComputeIndirect( + SDL_GPUComputePass *computePass, + SDL_GPUBuffer *buffer, + Uint32 offsetInBytes); + +/** + * Ends the current compute pass. + * + * All bound compute state on the command buffer is unset. The compute pass + * handle is now invalid. + * + * \param computePass a compute pass handle. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_EndGPUComputePass( + SDL_GPUComputePass *computePass); + +/* TransferBuffer Data */ + +/** + * Maps a transfer buffer into application address space. + * + * You must unmap the transfer buffer before encoding upload commands. + * + * \param device a GPU context. + * \param transferBuffer a transfer buffer. + * \param cycle if SDL_TRUE, cycles the transfer buffer if it is bound. + * \returns the address of the mapped transfer buffer memory. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void *SDLCALL SDL_MapGPUTransferBuffer( + SDL_GPUDevice *device, + SDL_GPUTransferBuffer *transferBuffer, + SDL_bool cycle); + +/** + * Unmaps a previously mapped transfer buffer. + * + * \param device a GPU context. + * \param transferBuffer a previously mapped transfer buffer. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_UnmapGPUTransferBuffer( + SDL_GPUDevice *device, + SDL_GPUTransferBuffer *transferBuffer); + +/* Copy Pass */ + +/** + * Begins a copy pass on a command buffer. + * + * All operations related to copying to or from buffers or textures take place + * inside a copy pass. You must not begin another copy pass, or a render pass + * or compute pass before ending the copy pass. + * + * \param commandBuffer a command buffer. + * \returns a copy pass handle. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC SDL_GPUCopyPass *SDLCALL SDL_BeginGPUCopyPass( + SDL_GPUCommandBuffer *commandBuffer); + +/** + * Uploads data from a transfer buffer to a texture. + * + * The upload occurs on the GPU timeline. You may assume that the upload has + * finished in subsequent commands. + * + * You must align the data in the transfer buffer to a multiple of the texel + * size of the texture format. + * + * \param copyPass a copy pass handle. + * \param source the source transfer buffer with image layout information. + * \param destination the destination texture region. + * \param cycle if SDL_TRUE, cycles the texture if the texture is bound, + * otherwise overwrites the data. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_UploadToGPUTexture( + SDL_GPUCopyPass *copyPass, + SDL_GPUTextureTransferInfo *source, + SDL_GPUTextureRegion *destination, + SDL_bool cycle); + +/* Uploads data from a TransferBuffer to a Buffer. */ + +/** + * Uploads data from a transfer buffer to a buffer. + * + * The upload occurs on the GPU timeline. You may assume that the upload has + * finished in subsequent commands. + * + * \param copyPass a copy pass handle. + * \param source the source transfer buffer with offset. + * \param destination the destination buffer with offset and size. + * \param cycle if SDL_TRUE, cycles the buffer if it is bound, otherwise + * overwrites the data. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_UploadToGPUBuffer( + SDL_GPUCopyPass *copyPass, + SDL_GPUTransferBufferLocation *source, + SDL_GPUBufferRegion *destination, + SDL_bool cycle); + +/** + * Performs a texture-to-texture copy. + * + * This copy occurs on the GPU timeline. You may assume the copy has finished + * in subsequent commands. + * + * \param copyPass a copy pass handle. + * \param source a source texture region. + * \param destination a destination texture region. + * \param w the width of the region to copy. + * \param h the height of the region to copy. + * \param d the depth of the region to copy. + * \param cycle if SDL_TRUE, cycles the destination texture if the destination + * texture is bound, otherwise overwrites the data. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_CopyGPUTextureToTexture( + SDL_GPUCopyPass *copyPass, + SDL_GPUTextureLocation *source, + SDL_GPUTextureLocation *destination, + Uint32 w, + Uint32 h, + Uint32 d, + SDL_bool cycle); + +/* Copies data from a buffer to a buffer. */ + +/** + * Performs a buffer-to-buffer copy. + * + * This copy occurs on the GPU timeline. You may assume the copy has finished + * in subsequent commands. + * + * \param copyPass a copy pass handle. + * \param source the buffer and offset to copy from. + * \param destination the buffer and offset to copy to. + * \param size the length of the buffer to copy. + * \param cycle if SDL_TRUE, cycles the destination buffer if it is bound, + * otherwise overwrites the data. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_CopyGPUBufferToBuffer( + SDL_GPUCopyPass *copyPass, + SDL_GPUBufferLocation *source, + SDL_GPUBufferLocation *destination, + Uint32 size, + SDL_bool cycle); + +/** + * Copies data from a texture to a transfer buffer on the GPU timeline. + * + * This data is not guaranteed to be copied until the command buffer fence is + * signaled. + * + * \param copyPass a copy pass handle. + * \param source the source texture region. + * \param destination the destination transfer buffer with image layout + * information. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DownloadFromGPUTexture( + SDL_GPUCopyPass *copyPass, + SDL_GPUTextureRegion *source, + SDL_GPUTextureTransferInfo *destination); + +/** + * Copies data from a buffer to a transfer buffer on the GPU timeline. + * + * This data is not guaranteed to be copied until the command buffer fence is + * signaled. + * + * \param copyPass a copy pass handle. + * \param source the source buffer with offset and size. + * \param destination the destination transfer buffer with offset. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DownloadFromGPUBuffer( + SDL_GPUCopyPass *copyPass, + SDL_GPUBufferRegion *source, + SDL_GPUTransferBufferLocation *destination); + +/** + * Ends the current copy pass. + * + * \param copyPass a copy pass handle. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_EndGPUCopyPass( + SDL_GPUCopyPass *copyPass); + +/** + * Generates mipmaps for the given texture. + * + * This function must not be called inside of any pass. + * + * \param commandBuffer a commandBuffer. + * \param texture a texture with more than 1 mip level. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_GenerateMipmapsForGPUTexture( + SDL_GPUCommandBuffer *commandBuffer, + SDL_GPUTexture *texture); + +/** + * Blits from a source texture region to a destination texture region. + * + * This function must not be called inside of any pass. + * + * \param commandBuffer a command buffer. + * \param source the texture region to copy from. + * \param destination the texture region to copy to. + * \param flipMode the flip mode for the source texture region. + * \param filterMode the filter mode that will be used when blitting. + * \param cycle if SDL_TRUE, cycles the destination texture if the destination + * texture is bound, otherwise overwrites the data. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BlitGPUTexture( + SDL_GPUCommandBuffer *commandBuffer, + SDL_GPUBlitRegion *source, + SDL_GPUBlitRegion *destination, + SDL_FlipMode flipMode, + SDL_GPUFilter filterMode, + SDL_bool cycle); + +/* Submission/Presentation */ + +/** + * Determines whether a swapchain composition is supported by the window. + * + * The window must be claimed before calling this function. + * + * \param device a GPU context. + * \param window an SDL_Window. + * \param swapchainComposition the swapchain composition to check. + * \returns SDL_TRUE if supported, SDL_FALSE if unsupported (or on error). + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_ClaimWindowForGPUDevice + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WindowSupportsGPUSwapchainComposition( + SDL_GPUDevice *device, + SDL_Window *window, + SDL_GPUSwapchainComposition swapchainComposition); + +/** + * Determines whether a presentation mode is supported by the window. + * + * The window must be claimed before calling this function. + * + * \param device a GPU context. + * \param window an SDL_Window. + * \param presentMode the presentation mode to check. + * \returns SDL_TRUE if supported, SDL_FALSE if unsupported (or on error). + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_ClaimWindowForGPUDevice + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WindowSupportsGPUPresentMode( + SDL_GPUDevice *device, + SDL_Window *window, + SDL_GPUPresentMode presentMode); + +/** + * Claims a window, creating a swapchain structure for it. + * + * This must be called before SDL_AcquireGPUSwapchainTexture is called using + * the window. + * + * The swapchain will be created with SDL_GPU_SWAPCHAINCOMPOSITION_SDR and + * SDL_GPU_PRESENTMODE_VSYNC. If you want to have different swapchain + * parameters, you must call SetSwapchainParameters after claiming the window. + * + * \param device a GPU context. + * \param window an SDL_Window. + * \returns SDL_TRUE on success, otherwise SDL_FALSE. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_AcquireGPUSwapchainTexture + * \sa SDL_ReleaseWindowFromGPUDevice + * \sa SDL_WindowSupportsGPUPresentMode + * \sa SDL_WindowSupportsGPUSwapchainComposition + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClaimWindowForGPUDevice( + SDL_GPUDevice *device, + SDL_Window *window); + +/** + * Unclaims a window, destroying its swapchain structure. + * + * \param device a GPU context. + * \param window an SDL_Window that has been claimed. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_ClaimWindowForGPUDevice + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseWindowFromGPUDevice( + SDL_GPUDevice *device, + SDL_Window *window); + +/** + * Changes the swapchain parameters for the given claimed window. + * + * This function will fail if the requested present mode or swapchain + * composition are unsupported by the device. Check if the parameters are + * supported via SDL_WindowSupportsGPUPresentMode / + * SDL_WindowSupportsGPUSwapchainComposition prior to calling this function. + * + * SDL_GPU_PRESENTMODE_VSYNC and SDL_GPU_SWAPCHAINCOMPOSITION_SDR are always + * supported. + * + * \param device a GPU context. + * \param window an SDL_Window that has been claimed. + * \param swapchainComposition the desired composition of the swapchain. + * \param presentMode the desired present mode for the swapchain. + * \returns SDL_TRUE if successful, SDL_FALSE on error. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_WindowSupportsGPUPresentMode + * \sa SDL_WindowSupportsGPUSwapchainComposition + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetGPUSwapchainParameters( + SDL_GPUDevice *device, + SDL_Window *window, + SDL_GPUSwapchainComposition swapchainComposition, + SDL_GPUPresentMode presentMode); + +/** + * Obtains the texture format of the swapchain for the given window. + * + * \param device a GPU context. + * \param window an SDL_Window that has been claimed. + * \returns the texture format of the swapchain. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC SDL_GPUTextureFormat SDLCALL SDL_GetGPUSwapchainTextureFormat( + SDL_GPUDevice *device, + SDL_Window *window); + +/** + * Acquire a texture to use in presentation. + * + * When a swapchain texture is acquired on a command buffer, it will + * automatically be submitted for presentation when the command buffer is + * submitted. The swapchain texture should only be referenced by the command + * buffer used to acquire it. May return NULL under certain conditions. This + * is not necessarily an error. This texture is managed by the implementation + * and must not be freed by the user. You MUST NOT call this function from any + * thread other than the one that created the window. + * + * \param commandBuffer a command buffer. + * \param window a window that has been claimed. + * \param pWidth a pointer filled in with the swapchain width. + * \param pHeight a pointer filled in with the swapchain height. + * \returns a swapchain texture. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_ClaimWindowForGPUDevice + * \sa SDL_SubmitGPUCommandBuffer + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + */ +extern SDL_DECLSPEC SDL_GPUTexture *SDLCALL SDL_AcquireGPUSwapchainTexture( + SDL_GPUCommandBuffer *commandBuffer, + SDL_Window *window, + Uint32 *pWidth, + Uint32 *pHeight); + +/** + * Submits a command buffer so its commands can be processed on the GPU. + * + * It is invalid to use the command buffer after this is called. + * + * This must be called from the thread the command buffer was acquired on. + * + * All commands in the submission are guaranteed to begin executing before any + * command in a subsequent submission begins executing. + * + * \param commandBuffer a command buffer. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_AcquireGPUCommandBuffer + * \sa SDL_AcquireGPUSwapchainTexture + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + */ +extern SDL_DECLSPEC void SDLCALL SDL_SubmitGPUCommandBuffer( + SDL_GPUCommandBuffer *commandBuffer); + +/** + * Submits a command buffer so its commands can be processed on the GPU, and + * acquires a fence associated with the command buffer. + * + * You must release this fence when it is no longer needed or it will cause a + * leak. It is invalid to use the command buffer after this is called. + * + * This must be called from the thread the command buffer was acquired on. + * + * All commands in the submission are guaranteed to begin executing before any + * command in a subsequent submission begins executing. + * + * \param commandBuffer a command buffer. + * \returns a fence associated with the command buffer. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_AcquireGPUCommandBuffer + * \sa SDL_AcquireGPUSwapchainTexture + * \sa SDL_SubmitGPUCommandBuffer + * \sa SDL_ReleaseGPUFence + */ +extern SDL_DECLSPEC SDL_GPUFence *SDLCALL SDL_SubmitGPUCommandBufferAndAcquireFence( + SDL_GPUCommandBuffer *commandBuffer); + +/** + * Blocks the thread until the GPU is completely idle. + * + * \param device a GPU context. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_WaitForGPUFences + */ +extern SDL_DECLSPEC void SDLCALL SDL_WaitForGPUIdle( + SDL_GPUDevice *device); + +/** + * Blocks the thread until the given fences are signaled. + * + * \param device a GPU context. + * \param waitAll if 0, wait for any fence to be signaled, if 1, wait for all + * fences to be signaled. + * \param pFences an array of fences to wait on. + * \param fenceCount the number of fences in the pFences array. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + * \sa SDL_WaitForGPUIdle + */ +extern SDL_DECLSPEC void SDLCALL SDL_WaitForGPUFences( + SDL_GPUDevice *device, + SDL_bool waitAll, + SDL_GPUFence **pFences, + Uint32 fenceCount); + +/** + * Checks the status of a fence. + * + * \param device a GPU context. + * \param fence a fence. + * \returns SDL_TRUE if the fence is signaled, SDL_FALSE if it is not. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_QueryGPUFence( + SDL_GPUDevice *device, + SDL_GPUFence *fence); + +/** + * Releases a fence obtained from SDL_SubmitGPUCommandBufferAndAcquireFence. + * + * \param device a GPU context. + * \param fence a fence. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUFence( + SDL_GPUDevice *device, + SDL_GPUFence *fence); + +/* Format Info */ + +/** + * Obtains the texel block size for a texture format. + * + * \param textureFormat the texture format you want to know the texel size of. + * \returns the texel block size of the texture format. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_UploadToGPUTexture + */ +extern SDL_DECLSPEC Uint32 SDLCALL SDL_GPUTextureFormatTexelBlockSize( + SDL_GPUTextureFormat textureFormat); + +/** + * Determines whether a texture format is supported for a given type and + * usage. + * + * \param device a GPU context. + * \param format the texture format to check. + * \param type the type of texture (2D, 3D, Cube). + * \param usage a bitmask of all usage scenarios to check. + * \returns whether the texture format is supported for this type and usage. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GPUTextureSupportsFormat( + SDL_GPUDevice *device, + SDL_GPUTextureFormat format, + SDL_GPUTextureType type, + SDL_GPUTextureUsageFlags usage); + +/** + * Determines if a sample count for a texture format is supported. + * + * \param device a GPU context. + * \param format the texture format to check. + * \param sampleCount the sample count to check. + * \returns a hardware-specific version of min(preferred, possible). + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GPUTextureSupportsSampleCount( + SDL_GPUDevice *device, + SDL_GPUTextureFormat format, + SDL_GPUSampleCount sampleCount); + +#ifdef SDL_PLATFORM_GDK + +/** + * Call this to suspend GPU operation on Xbox when you receive the + * SDL_EVENT_DID_ENTER_BACKGROUND event. + * + * Do NOT call any SDL_GPU functions after calling this function! This must + * also be called before calling SDL_GDKSuspendComplete. + * + * \param device a GPU context. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_AddEventWatch + */ +extern SDL_DECLSPEC void SDLCALL SDL_GDKSuspendGPU(SDL_GPUDevice *device); + +/** + * Call this to resume GPU operation on Xbox when you receive the + * SDL_EVENT_WILL_ENTER_FOREGROUND event. + * + * When resuming, this function MUST be called before calling any other + * SDL_GPU functions. + * + * \param device a GPU context. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_AddEventWatch + */ +extern SDL_DECLSPEC void SDLCALL SDL_GDKResumeGPU(SDL_GPUDevice *device); + +#endif /* SDL_PLATFORM_GDK */ + +#ifdef __cplusplus +} +#endif /* __cplusplus */ +#include + +#endif /* SDL_gpu_h_ */ diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_haptic.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_haptic.h index 1d0a54e..95446fe 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_haptic.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_haptic.h @@ -48,15 +48,15 @@ * SDL_free(haptics); * } * if (haptic == NULL) - * return -1; + * return; * * // Initialize simple rumble - * if (SDL_InitHapticRumble(haptic) != 0) - * return -1; + * if (!SDL_InitHapticRumble(haptic)) + * return; * * // Play effect at 50% strength for 2 seconds - * if (SDL_PlayHapticRumble(haptic, 0.5, 2000) != 0) - * return -1; + * if (!SDL_PlayHapticRumble(haptic, 0.5, 2000)) + * return; * SDL_Delay(2000); * * // Clean up @@ -66,7 +66,7 @@ * Complete example: * * ```c - * int test_haptic(SDL_Joystick *joystick) + * SDL_bool test_haptic(SDL_Joystick *joystick) * { * SDL_Haptic *haptic; * SDL_HapticEffect effect; @@ -74,12 +74,12 @@ * * // Open the device * haptic = SDL_OpenHapticFromJoystick(joystick); - * if (haptic == NULL) return -1; // Most likely joystick isn't haptic + * if (haptic == NULL) return SDL_FALSE; // Most likely joystick isn't haptic * * // See if it can do sine waves * if ((SDL_GetHapticFeatures(haptic) & SDL_HAPTIC_SINE)==0) { * SDL_CloseHaptic(haptic); // No sine effect - * return -1; + * return SDL_FALSE; * } * * // Create the effect @@ -106,7 +106,7 @@ * // Close the device * SDL_CloseHaptic(haptic); * - * return 0; // Success + * return SDL_TRUE; // Success * } * ``` * @@ -919,8 +919,7 @@ typedef union SDL_HapticEffect * * If the haptic device is disconnected and reconnected, it will get a new ID. * - * The ID value starts at 1 and increments from there. The value 0 is an - * invalid ID. + * The value 0 is an invalid ID. * * \since This datatype is available since SDL 3.0.0. */ @@ -1117,8 +1116,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetMaxHapticEffects(SDL_Haptic *haptic); * * \param haptic the SDL_Haptic device to query maximum playing effects. * \returns the number of effects the haptic device can play at the same time - * or a negative error code on failure; call SDL_GetError() for more - * information. + * or -1 on failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -1148,8 +1146,8 @@ extern SDL_DECLSPEC Uint32 SDLCALL SDL_GetHapticFeatures(SDL_Haptic *haptic); * SDL_HapticDirection effect. * * \param haptic the SDL_Haptic device to query. - * \returns the number of axes on success or a negative error code on failure; - * call SDL_GetError() for more information. + * \returns the number of axes on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ @@ -1175,8 +1173,8 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HapticEffectSupported(SDL_Haptic *hapti * \param haptic an SDL_Haptic device to create the effect on. * \param effect an SDL_HapticEffect structure containing the properties of * the effect to create. - * \returns the ID of the effect on success or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the ID of the effect on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -1198,15 +1196,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_CreateHapticEffect(SDL_Haptic *haptic, const * \param effect the identifier of the effect to update. * \param data an SDL_HapticEffect structure containing the new effect * properties to use. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CreateHapticEffect * \sa SDL_RunHapticEffect */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateHapticEffect(SDL_Haptic *haptic, int effect, const SDL_HapticEffect *data); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateHapticEffect(SDL_Haptic *haptic, int effect, const SDL_HapticEffect *data); /** * Run the haptic effect on its associated haptic device. @@ -1221,8 +1219,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateHapticEffect(SDL_Haptic *haptic, int e * \param effect the ID of the haptic effect to run. * \param iterations the number of iterations to run the effect; use * `SDL_HAPTIC_INFINITY` to repeat forever. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1230,22 +1228,22 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateHapticEffect(SDL_Haptic *haptic, int e * \sa SDL_StopHapticEffect * \sa SDL_StopHapticEffects */ -extern SDL_DECLSPEC int SDLCALL SDL_RunHapticEffect(SDL_Haptic *haptic, int effect, Uint32 iterations); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RunHapticEffect(SDL_Haptic *haptic, int effect, Uint32 iterations); /** * Stop the haptic effect on its associated haptic device. * * \param haptic the SDL_Haptic device to stop the effect on. * \param effect the ID of the haptic effect to stop. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RunHapticEffect * \sa SDL_StopHapticEffects */ -extern SDL_DECLSPEC int SDLCALL SDL_StopHapticEffect(SDL_Haptic *haptic, int effect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StopHapticEffect(SDL_Haptic *haptic, int effect); /** * Destroy a haptic effect on the device. @@ -1269,12 +1267,14 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyHapticEffect(SDL_Haptic *haptic, int * * \param haptic the SDL_Haptic device to query for the effect status on. * \param effect the ID of the haptic effect to query its status. - * \returns 0 if it isn't playing, 1 if it is playing, or a negative error - * code on failure; call SDL_GetError() for more information. + * \returns SDL_TRUE if it is playing, SDL_FALSE if it isn't playing or haptic + * status isn't supported. * * \since This function is available since SDL 3.0.0. + * + * \sa SDL_GetHapticFeatures */ -extern SDL_DECLSPEC int SDLCALL SDL_GetHapticEffectStatus(SDL_Haptic *haptic, int effect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetHapticEffectStatus(SDL_Haptic *haptic, int effect); /** * Set the global gain of the specified haptic device. @@ -1289,14 +1289,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetHapticEffectStatus(SDL_Haptic *haptic, in * \param haptic the SDL_Haptic device to set the gain on. * \param gain value to set the gain to, should be between 0 and 100 (0 - * 100). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetHapticFeatures */ -extern SDL_DECLSPEC int SDLCALL SDL_SetHapticGain(SDL_Haptic *haptic, int gain); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHapticGain(SDL_Haptic *haptic, int gain); /** * Set the global autocenter of the device. @@ -1308,14 +1308,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetHapticGain(SDL_Haptic *haptic, int gain); * * \param haptic the SDL_Haptic device to set autocentering on. * \param autocenter value to set autocenter to (0-100). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetHapticFeatures */ -extern SDL_DECLSPEC int SDLCALL SDL_SetHapticAutocenter(SDL_Haptic *haptic, int autocenter); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHapticAutocenter(SDL_Haptic *haptic, int autocenter); /** * Pause a haptic device. @@ -1327,14 +1327,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetHapticAutocenter(SDL_Haptic *haptic, int * can cause all sorts of weird errors. * * \param haptic the SDL_Haptic device to pause. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ResumeHaptic */ -extern SDL_DECLSPEC int SDLCALL SDL_PauseHaptic(SDL_Haptic *haptic); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PauseHaptic(SDL_Haptic *haptic); /** * Resume a haptic device. @@ -1342,28 +1342,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_PauseHaptic(SDL_Haptic *haptic); * Call to unpause after SDL_PauseHaptic(). * * \param haptic the SDL_Haptic device to unpause. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_PauseHaptic */ -extern SDL_DECLSPEC int SDLCALL SDL_ResumeHaptic(SDL_Haptic *haptic); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ResumeHaptic(SDL_Haptic *haptic); /** * Stop all the currently playing effects on a haptic device. * * \param haptic the SDL_Haptic device to stop. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RunHapticEffect * \sa SDL_StopHapticEffects */ -extern SDL_DECLSPEC int SDLCALL SDL_StopHapticEffects(SDL_Haptic *haptic); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StopHapticEffects(SDL_Haptic *haptic); /** * Check whether rumble is supported on a haptic device. @@ -1381,8 +1381,8 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HapticRumbleSupported(SDL_Haptic *hapti * Initialize a haptic device for simple rumble playback. * * \param haptic the haptic device to initialize for simple rumble playback. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1390,7 +1390,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HapticRumbleSupported(SDL_Haptic *hapti * \sa SDL_StopHapticRumble * \sa SDL_HapticRumbleSupported */ -extern SDL_DECLSPEC int SDLCALL SDL_InitHapticRumble(SDL_Haptic *haptic); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_InitHapticRumble(SDL_Haptic *haptic); /** * Run a simple rumble effect on a haptic device. @@ -1398,28 +1398,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_InitHapticRumble(SDL_Haptic *haptic); * \param haptic the haptic device to play the rumble effect on. * \param strength strength of the rumble to play as a 0-1 float value. * \param length length of the rumble to play in milliseconds. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_InitHapticRumble * \sa SDL_StopHapticRumble */ -extern SDL_DECLSPEC int SDLCALL SDL_PlayHapticRumble(SDL_Haptic *haptic, float strength, Uint32 length); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PlayHapticRumble(SDL_Haptic *haptic, float strength, Uint32 length); /** * Stop the simple rumble on a haptic device. * * \param haptic the haptic device to stop the rumble effect on. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_PlayHapticRumble */ -extern SDL_DECLSPEC int SDLCALL SDL_StopHapticRumble(SDL_Haptic *haptic); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StopHapticRumble(SDL_Haptic *haptic); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_hints.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_hints.h index 79aa008..8433240 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_hints.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_hints.h @@ -39,8 +39,8 @@ #ifndef SDL_hints_h_ #define SDL_hints_h_ -#include #include +#include #include /* Set up for C function definitions, even when using C++ */ @@ -139,7 +139,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_APP_ID "SDL_APP_ID" +#define SDL_HINT_APP_ID "SDL_APP_ID" /** * A variable setting the application name. @@ -197,6 +197,20 @@ extern "C" { */ #define SDL_HINT_APPLE_TV_REMOTE_ALLOW_ROTATION "SDL_APPLE_TV_REMOTE_ALLOW_ROTATION" +/** + * Specify the default ALSA audio device name. + * + * This variable is a specific audio device to open when the "default" audio + * device is used. By default if 4 channel audio is requested, the + * "plug:surround40" device will be opened and if 6 channel audio is requested + * the "plug:surround51" device will be opened. + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_ALSA_DEFAULT_DEVICE "SDL_AUDIO_ALSA_DEFAULT_DEVICE" + /** * A variable controlling the audio category on iOS and macOS. * @@ -213,7 +227,20 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_AUDIO_CATEGORY "SDL_AUDIO_CATEGORY" +#define SDL_HINT_AUDIO_CATEGORY "SDL_AUDIO_CATEGORY" + +/** + * A variable controlling the default audio channel count. + * + * If the application doesn't specify the audio channel count when opening the + * device, this hint can be used to specify a default channel count that will + * be used. This defaults to "1" for recording and "2" for playback devices. + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_CHANNELS "SDL_AUDIO_CHANNELS" /** * Specify an application icon name for an audio device. @@ -313,6 +340,41 @@ extern "C" { */ #define SDL_HINT_AUDIO_DEVICE_STREAM_ROLE "SDL_AUDIO_DEVICE_STREAM_ROLE" +/** + * Specify the input file when recording audio using the disk audio driver. + * + * This defaults to "sdlaudio-in.raw" + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_DISK_INPUT_FILE "SDL_AUDIO_DISK_INPUT_FILE" + +/** + * Specify the output file when playing audio using the disk audio driver. + * + * This defaults to "sdlaudio.raw" + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_DISK_OUTPUT_FILE "SDL_AUDIO_DISK_OUTPUT_FILE" + +/** + * A variable controlling the audio rate when using the disk audio driver. + * + * The disk audio driver normally simulates real-time for the audio rate that + * was specified, but you can use this variable to adjust this rate higher or + * lower down to 0. The default value is "1.0". + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_DISK_TIMESCALE "SDL_AUDIO_DISK_TIMESCALE" + /** * A variable that specifies an audio backend to use. * @@ -327,6 +389,54 @@ extern "C" { */ #define SDL_HINT_AUDIO_DRIVER "SDL_AUDIO_DRIVER" +/** + * A variable controlling the audio rate when using the dummy audio driver. + * + * The dummy audio driver normally simulates real-time for the audio rate that + * was specified, but you can use this variable to adjust this rate higher or + * lower down to 0. The default value is "1.0". + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_DUMMY_TIMESCALE "SDL_AUDIO_DUMMY_TIMESCALE" + +/** + * A variable controlling the default audio format. + * + * If the application doesn't specify the audio format when opening the + * device, this hint can be used to specify a default format that will be + * used. + * + * The variable can be set to the following values: - "U8": Unsigned 8-bit + * audio - "S8": Signed 8-bit audio - "S16LE": Signed 16-bit little-endian + * audio - "S16BE": Signed 16-bit big-endian audio - "S16": Signed 16-bit + * native-endian audio (default) - "S32LE": Signed 32-bit little-endian audio + * - "S32BE": Signed 32-bit big-endian audio - "S32": Signed 32-bit + * native-endian audio - "F32LE": Floating point little-endian audio - + * "F32BE": Floating point big-endian audio - "F32": Floating point + * native-endian audio + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_FORMAT "SDL_AUDIO_FORMAT" + +/** + * A variable controlling the default audio frequency. + * + * If the application doesn't specify the audio frequency when opening the + * device, this hint can be used to specify a default frequency that will be + * used. This defaults to "44100". + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_FREQUENCY "SDL_AUDIO_FREQUENCY" + /** * A variable that causes SDL to not ignore audio "monitors". * @@ -363,7 +473,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_AUTO_UPDATE_JOYSTICKS "SDL_AUTO_UPDATE_JOYSTICKS" +#define SDL_HINT_AUTO_UPDATE_JOYSTICKS "SDL_AUTO_UPDATE_JOYSTICKS" /** * A variable controlling whether SDL updates sensor state when getting input @@ -378,7 +488,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_AUTO_UPDATE_SENSORS "SDL_AUTO_UPDATE_SENSORS" +#define SDL_HINT_AUTO_UPDATE_SENSORS "SDL_AUTO_UPDATE_SENSORS" /** * Prevent SDL from using version 4 of the bitmap header when saving BMPs. @@ -532,7 +642,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_EMSCRIPTEN_ASYNCIFY "SDL_EMSCRIPTEN_ASYNCIFY" +#define SDL_HINT_EMSCRIPTEN_ASYNCIFY "SDL_EMSCRIPTEN_ASYNCIFY" /** * Specify the CSS selector used for the "default" window/canvas. @@ -565,7 +675,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT "SDL_EMSCRIPTEN_KEYBOARD_ELEMENT" +#define SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT "SDL_EMSCRIPTEN_KEYBOARD_ELEMENT" /** * A variable that controls whether the on-screen keyboard should be shown @@ -584,6 +694,23 @@ extern "C" { */ #define SDL_HINT_ENABLE_SCREEN_KEYBOARD "SDL_ENABLE_SCREEN_KEYBOARD" +/** + * A variable containing a list of evdev devices to use if udev is not + * available. + * + * The list of devices is in the form: + * + * deviceclass:path[,deviceclass:path[,...]] + * + * where device class is an integer representing the SDL_UDEV_deviceclass and + * path is the full path to the event device. + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_EVDEV_DEVICES "SDL_EVDEV_DEVICES" + /** * A variable controlling verbosity of the logging of SDL events pushed onto * the internal queue. @@ -606,7 +733,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_EVENT_LOGGING "SDL_EVENT_LOGGING" +#define SDL_HINT_EVENT_LOGGING "SDL_EVENT_LOGGING" /** * A variable controlling whether raising the window should be done more @@ -626,7 +753,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_FORCE_RAISEWINDOW "SDL_FORCE_RAISEWINDOW" +#define SDL_HINT_FORCE_RAISEWINDOW "SDL_FORCE_RAISEWINDOW" /** * A variable controlling how 3D acceleration is used to accelerate the SDL @@ -647,7 +774,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_FRAMEBUFFER_ACCELERATION "SDL_FRAMEBUFFER_ACCELERATION" +#define SDL_HINT_FRAMEBUFFER_ACCELERATION "SDL_FRAMEBUFFER_ACCELERATION" /** * A variable that lets you manually hint extra gamecontroller db entries. @@ -773,7 +900,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_GDK_TEXTINPUT_DEFAULT_TEXT "SDL_GDK_TEXTINPUT_DEFAULT_TEXT" +#define SDL_HINT_GDK_TEXTINPUT_DEFAULT_TEXT "SDL_GDK_TEXTINPUT_DEFAULT_TEXT" /** * This variable sets the description of the TextInput window on GDK @@ -829,6 +956,70 @@ extern "C" { */ #define SDL_HINT_GDK_TEXTINPUT_TITLE "SDL_GDK_TEXTINPUT_TITLE" +/** + * A variable to control whether HIDAPI uses libusb for device access. + * + * By default libusb will only be used for a few devices that require direct + * USB access, and this can be controlled with + * SDL_HINT_HIDAPI_LIBUSB_WHITELIST. + * + * The variable can be set to the following values: + * + * - "0": HIDAPI will not use libusb for device access. + * - "1": HIDAPI will use libusb for device access if available. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_HIDAPI_LIBUSB "SDL_HIDAPI_LIBUSB" + +/** + * A variable to control whether HIDAPI uses libusb only for whitelisted + * devices. + * + * By default libusb will only be used for a few devices that require direct + * USB access. + * + * The variable can be set to the following values: + * + * - "0": HIDAPI will use libusb for all device access. + * - "1": HIDAPI will use libusb only for whitelisted devices. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_HIDAPI_LIBUSB_WHITELIST "SDL_HIDAPI_LIBUSB_WHITELIST" + +/** + * A variable to control whether HIDAPI uses udev for device detection. + * + * The variable can be set to the following values: + * + * - "0": HIDAPI will poll for device changes. + * - "1": HIDAPI will use udev for device detection. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_HIDAPI_UDEV "SDL_HIDAPI_UDEV" + +/** + * A variable that specifies a GPU backend to use. + * + * By default, SDL will try all available GPU backends in a reasonable order + * until it finds one that can work, but this hint allows the app or user to + * force a specific target, such as "d3d11" if, say, your hardware supports + * D3D12 but want to try using D3D11 instead. + * + * This hint should be set before SDL_GPUSelectBackend() is called. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_GPU_DRIVER "SDL_GPU_DRIVER" + /** * A variable to control whether SDL_hid_enumerate() enumerates all HID * devices or only controllers. @@ -1049,6 +1240,21 @@ extern "C" { */ #define SDL_HINT_JOYSTICK_FLIGHTSTICK_DEVICES_EXCLUDED "SDL_JOYSTICK_FLIGHTSTICK_DEVICES_EXCLUDED" +/** + * A variable controlling whether GameInput should be used for controller + * handling on Windows. + * + * The variable can be set to the following values: + * + * - "0": GameInput is not used. (default) + * - "1": GameInput is used. + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_JOYSTICK_GAMEINPUT "SDL_JOYSTICK_GAMEINPUT" + /** * A variable containing a list of devices known to have a GameCube form * factor. @@ -1564,7 +1770,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX "SDL_JOYSTICK_HIDAPI_XBOX" +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX "SDL_JOYSTICK_HIDAPI_XBOX" /** * A variable controlling whether the HIDAPI driver for XBox 360 controllers @@ -1581,7 +1787,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360 "SDL_JOYSTICK_HIDAPI_XBOX_360" +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360 "SDL_JOYSTICK_HIDAPI_XBOX_360" /** * A variable controlling whether the player LEDs should be lit to indicate @@ -1613,7 +1819,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360_WIRELESS "SDL_JOYSTICK_HIDAPI_XBOX_360_WIRELESS" +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360_WIRELESS "SDL_JOYSTICK_HIDAPI_XBOX_360_WIRELESS" /** * A variable controlling whether the HIDAPI driver for XBox One controllers @@ -1630,7 +1836,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_ONE "SDL_JOYSTICK_HIDAPI_XBOX_ONE" +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_ONE "SDL_JOYSTICK_HIDAPI_XBOX_ONE" /** * A variable controlling whether the Home button LED should be turned on when @@ -1775,7 +1981,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_JOYSTICK_RAWINPUT_CORRELATE_XINPUT "SDL_JOYSTICK_RAWINPUT_CORRELATE_XINPUT" +#define SDL_HINT_JOYSTICK_RAWINPUT_CORRELATE_XINPUT "SDL_JOYSTICK_RAWINPUT_CORRELATE_XINPUT" /** * A variable controlling whether the ROG Chakram mice should show up as @@ -1935,7 +2141,7 @@ extern "C" { * layout. e.g. pressing the key associated with SDL_SCANCODE_A on a Russian * keyboard would yield 'a' instead of 'Ñ„'. * - * The default value for this hint is "french_numbers" + * The default value for this hint is "french_numbers,latin_letters" * * Some platforms like Emscripten only provide modified keycodes and the * options are not used. @@ -1990,7 +2196,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_KMSDRM_REQUIRE_DRM_MASTER "SDL_KMSDRM_REQUIRE_DRM_MASTER" +#define SDL_HINT_KMSDRM_REQUIRE_DRM_MASTER "SDL_KMSDRM_REQUIRE_DRM_MASTER" /** * A variable controlling the default SDL log levels. @@ -2016,7 +2222,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_LOGGING "SDL_LOGGING" +#define SDL_HINT_LOGGING "SDL_LOGGING" /** * A variable controlling whether to force the application to become the @@ -2032,7 +2238,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MAC_BACKGROUND_APP "SDL_MAC_BACKGROUND_APP" +#define SDL_HINT_MAC_BACKGROUND_APP "SDL_MAC_BACKGROUND_APP" /** * A variable that determines whether Ctrl+Click should generate a right-click @@ -2108,7 +2314,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_AUTO_CAPTURE "SDL_MOUSE_AUTO_CAPTURE" +#define SDL_HINT_MOUSE_AUTO_CAPTURE "SDL_MOUSE_AUTO_CAPTURE" /** * A variable setting the double click radius, in pixels. @@ -2117,7 +2323,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_DOUBLE_CLICK_RADIUS "SDL_MOUSE_DOUBLE_CLICK_RADIUS" +#define SDL_HINT_MOUSE_DOUBLE_CLICK_RADIUS "SDL_MOUSE_DOUBLE_CLICK_RADIUS" /** * A variable setting the double click time, in milliseconds. @@ -2126,14 +2332,15 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_DOUBLE_CLICK_TIME "SDL_MOUSE_DOUBLE_CLICK_TIME" +#define SDL_HINT_MOUSE_DOUBLE_CLICK_TIME "SDL_MOUSE_DOUBLE_CLICK_TIME" /** * A variable controlling whether warping a hidden mouse cursor will activate * relative mouse mode. * - * When this hint is set and the mouse cursor is hidden, SDL will emulate - * mouse warps using relative mouse mode. This can provide smoother and more + * When this hint is set, the mouse cursor is hidden, and multiple warps to + * the window center occur within a short time period, SDL will emulate mouse + * warps using relative mouse mode. This can provide smoother and more * reliable mouse motion for some older games, which continuously calculate * the distance travelled by the mouse pointer and warp it back to the center * of the window, rather than using relative mouse motion. @@ -2141,9 +2348,8 @@ extern "C" { * Note that relative mouse mode may have different mouse acceleration * behavior than pointer warps. * - * If your game or application needs to warp the mouse cursor while hidden for - * other purposes, such as drawing a software cursor, it should disable this - * hint. + * If your application needs to repeatedly warp the hidden mouse cursor at a + * high-frequency for other purposes, it should disable this hint. * * The variable can be set to the following values: * @@ -2182,7 +2388,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_NORMAL_SPEED_SCALE "SDL_MOUSE_NORMAL_SPEED_SCALE" +#define SDL_HINT_MOUSE_NORMAL_SPEED_SCALE "SDL_MOUSE_NORMAL_SPEED_SCALE" /** * A variable controlling whether relative mouse mode constrains the mouse to @@ -2203,7 +2409,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_MODE_CENTER "SDL_MOUSE_RELATIVE_MODE_CENTER" +#define SDL_HINT_MOUSE_RELATIVE_MODE_CENTER "SDL_MOUSE_RELATIVE_MODE_CENTER" /** * A variable controlling whether relative mouse mode is implemented using @@ -2218,7 +2424,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_MODE_WARP "SDL_MOUSE_RELATIVE_MODE_WARP" +#define SDL_HINT_MOUSE_RELATIVE_MODE_WARP "SDL_MOUSE_RELATIVE_MODE_WARP" /** * A variable setting the scale for mouse motion, in floating point, when the @@ -2228,7 +2434,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE "SDL_MOUSE_RELATIVE_SPEED_SCALE" +#define SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE "SDL_MOUSE_RELATIVE_SPEED_SCALE" /** * A variable controlling whether the system mouse acceleration curve is used @@ -2247,7 +2453,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_SYSTEM_SCALE "SDL_MOUSE_RELATIVE_SYSTEM_SCALE" +#define SDL_HINT_MOUSE_RELATIVE_SYSTEM_SCALE "SDL_MOUSE_RELATIVE_SYSTEM_SCALE" /** * A variable controlling whether a motion event should be generated for mouse @@ -2266,7 +2472,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_WARP_MOTION "SDL_MOUSE_RELATIVE_WARP_MOTION" +#define SDL_HINT_MOUSE_RELATIVE_WARP_MOTION "SDL_MOUSE_RELATIVE_WARP_MOTION" /** * A variable controlling whether the hardware cursor stays visible when @@ -2284,7 +2490,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_CURSOR_VISIBLE "SDL_MOUSE_RELATIVE_CURSOR_VISIBLE" +#define SDL_HINT_MOUSE_RELATIVE_CURSOR_VISIBLE "SDL_MOUSE_RELATIVE_CURSOR_VISIBLE" /** * Controls how often SDL issues cursor confinement commands to the operating @@ -2301,7 +2507,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_CLIP_INTERVAL "SDL_MOUSE_RELATIVE_CLIP_INTERVAL" +#define SDL_HINT_MOUSE_RELATIVE_CLIP_INTERVAL "SDL_MOUSE_RELATIVE_CLIP_INTERVAL" /** * A variable controlling whether mouse events should generate synthetic touch @@ -2318,7 +2524,25 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_TOUCH_EVENTS "SDL_MOUSE_TOUCH_EVENTS" +#define SDL_HINT_MOUSE_TOUCH_EVENTS "SDL_MOUSE_TOUCH_EVENTS" + +/** + * A variable controlling whether the keyboard should be muted on the console. + * + * Normally the keyboard is muted while SDL applications are running so that + * keyboard input doesn't show up as key strokes on the console. This hint + * allows you to turn that off for debugging purposes. + * + * The variable can be set to the following values: + * + * - "0": Allow keystrokes to go through to the console. + * - "1": Mute keyboard input so it doesn't show up on the console. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_MUTE_CONSOLE_KEYBOARD "SDL_MUTE_CONSOLE_KEYBOARD" /** * Tell SDL not to catch the SIGINT or SIGTERM signals on POSIX platforms. @@ -2333,7 +2557,17 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_NO_SIGNAL_HANDLERS "SDL_NO_SIGNAL_HANDLERS" +#define SDL_HINT_NO_SIGNAL_HANDLERS "SDL_NO_SIGNAL_HANDLERS" + +/** + * Specify the OpenGL library to load. + * + * This hint should be set before creating an OpenGL window or creating an + * OpenGL context. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_OPENGL_LIBRARY "SDL_OPENGL_LIBRARY" /** * A variable controlling what driver to use for OpenGL ES contexts. @@ -2367,7 +2601,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_OPENGL_ES_DRIVER "SDL_OPENGL_ES_DRIVER" +#define SDL_HINT_OPENGL_ES_DRIVER "SDL_OPENGL_ES_DRIVER" /** * A variable controlling which orientations are allowed on iOS/Android. @@ -2388,54 +2622,6 @@ extern "C" { */ #define SDL_HINT_ORIENTATIONS "SDL_ORIENTATIONS" -/** - * A variable controlling whether pen mouse button emulation triggers only - * when the pen touches the tablet surface. - * - * The variable can be set to the following values: - * - * - "0": The pen reports mouse button press/release immediately when the pen - * button is pressed/released, and the pen tip touching the surface counts - * as left mouse button press. - * - "1": Mouse button presses are sent when the pen first touches the tablet - * (analogously for releases). Not pressing a pen button simulates mouse - * button 1, pressing the first pen button simulates mouse button 2 etc.; it - * is not possible to report multiple buttons as pressed at the same time. - * (default) - * - * This hint can be set anytime. - * - * \since This hint is available since SDL 3.0.0. - */ -#define SDL_HINT_PEN_DELAY_MOUSE_BUTTON "SDL_PEN_DELAY_MOUSE_BUTTON" - -/** - * A variable controlling whether to treat pen movement as separate from mouse - * movement. - * - * By default, pens report both SDL_MouseMotionEvent and SDL_PenMotionEvent - * updates (analogously for button presses). This hint allows decoupling mouse - * and pen updates. - * - * This variable toggles between the following behaviour: - * - * - "0": Pen acts as a mouse with mouse ID SDL_PEN_MOUSEID. (default) Use - * case: client application is not pen aware, user wants to use pen instead - * of mouse to interact. - * - "1": Pen reports mouse clicks and movement events but does not update - * SDL-internal mouse state (buttons pressed, current mouse location). Use - * case: client application is not pen aware, user frequently alternates - * between pen and "real" mouse. - * - "2": Pen reports no mouse events. Use case: pen-aware client application - * uses this hint to allow user to toggle between pen+mouse mode ("2") and - * pen-only mode ("1" or "0"). - * - * This hint can be set anytime. - * - * \since This hint is available since SDL 3.0.0. - */ -#define SDL_HINT_PEN_NOT_MOUSE "SDL_PEN_NOT_MOUSE" - /** * A variable controlling the use of a sentinel event when polling the event * queue. @@ -2522,7 +2708,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_RENDER_DIRECT3D11_DEBUG "SDL_RENDER_DIRECT3D11_DEBUG" +#define SDL_HINT_RENDER_DIRECT3D11_DEBUG "SDL_RENDER_DIRECT3D11_DEBUG" /** * A variable controlling whether to enable Vulkan Validation Layers. @@ -2536,7 +2722,36 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_RENDER_VULKAN_DEBUG "SDL_RENDER_VULKAN_DEBUG" +#define SDL_HINT_RENDER_VULKAN_DEBUG "SDL_RENDER_VULKAN_DEBUG" + +/** + * A variable controlling whether to create the GPU device in debug mode. + * + * This variable can be set to the following values: + * + * - "0": Disable debug mode use (default) + * - "1": Enable debug mode use + * + * This hint should be set before creating a renderer. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_RENDER_GPU_DEBUG "SDL_RENDER_GPU_DEBUG" + +/** + * A variable controlling whether to prefer a low-power GPU on multi-GPU + * systems. + * + * This variable can be set to the following values: + * + * - "0": Prefer high-performance GPU (default) + * - "1": Prefer low-power GPU + * + * This hint should be set before creating a renderer. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_RENDER_GPU_LOW_POWER "SDL_RENDER_GPU_LOW_POWER" /** * A variable specifying which render driver to use. @@ -2564,7 +2779,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_RENDER_DRIVER "SDL_RENDER_DRIVER" +#define SDL_HINT_RENDER_DRIVER "SDL_RENDER_DRIVER" /** * A variable controlling how the 2D render API renders lines. @@ -2614,7 +2829,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_RENDER_VSYNC "SDL_RENDER_VSYNC" +#define SDL_HINT_RENDER_VSYNC "SDL_RENDER_VSYNC" /** * A variable to control whether the return key on the soft keyboard should @@ -2682,7 +2897,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_RPI_VIDEO_LAYER "SDL_RPI_VIDEO_LAYER" +#define SDL_HINT_RPI_VIDEO_LAYER "SDL_RPI_VIDEO_LAYER" /** * Specify an "activity name" for screensaver inhibition. @@ -2803,7 +3018,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_THREAD_PRIORITY_POLICY "SDL_THREAD_PRIORITY_POLICY" +#define SDL_HINT_THREAD_PRIORITY_POLICY "SDL_THREAD_PRIORITY_POLICY" /** * A variable that controls the timer resolution, in milliseconds. @@ -2838,7 +3053,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_TOUCH_MOUSE_EVENTS "SDL_TOUCH_MOUSE_EVENTS" +#define SDL_HINT_TOUCH_MOUSE_EVENTS "SDL_TOUCH_MOUSE_EVENTS" /** * A variable controlling whether trackpads should be treated as touch @@ -2888,7 +3103,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_ALLOW_SCREENSAVER "SDL_VIDEO_ALLOW_SCREENSAVER" +#define SDL_HINT_VIDEO_ALLOW_SCREENSAVER "SDL_VIDEO_ALLOW_SCREENSAVER" /** * Tell the video driver that we only want a double buffer. @@ -2911,7 +3126,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_DOUBLE_BUFFER "SDL_VIDEO_DOUBLE_BUFFER" +#define SDL_HINT_VIDEO_DOUBLE_BUFFER "SDL_VIDEO_DOUBLE_BUFFER" /** * A variable that specifies a video backend to use. @@ -2927,6 +3142,19 @@ extern "C" { */ #define SDL_HINT_VIDEO_DRIVER "SDL_VIDEO_DRIVER" +/** + * A variable controlling whether the dummy video driver saves output frames. + * + * - "0": Video frames are not saved to disk. (default) + * - "1": Video frames are saved to files in the format "SDL_windowX-Y.bmp", + * where X is the window ID, and Y is the frame number. + * + * This hint can be set anytime. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VIDEO_DUMMY_SAVE_FRAMES "SDL_VIDEO_DUMMY_SAVE_FRAMES" + /** * If eglGetPlatformDisplay fails, fall back to calling eglGetDisplay. * @@ -2973,7 +3201,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_MAC_FULLSCREEN_SPACES "SDL_VIDEO_MAC_FULLSCREEN_SPACES" +#define SDL_HINT_VIDEO_MAC_FULLSCREEN_SPACES "SDL_VIDEO_MAC_FULLSCREEN_SPACES" /** * A variable controlling whether fullscreen windows are minimized when they @@ -2989,7 +3217,24 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS "SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS" +#define SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS "SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS" + +/** + * A variable controlling whether the offscreen video driver saves output + * frames. + * + * This only saves frames that are generated using software rendering, not + * accelerated OpenGL rendering. + * + * - "0": Video frames are not saved to disk. (default) + * - "1": Video frames are saved to files in the format "SDL_windowX-Y.bmp", + * where X is the window ID, and Y is the frame number. + * + * This hint can be set anytime. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VIDEO_OFFSCREEN_SAVE_FRAMES "SDL_VIDEO_OFFSCREEN_SAVE_FRAMES" /** * A variable controlling whether all window operations will block until @@ -3154,7 +3399,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_WIN_D3DCOMPILER "SDL_VIDEO_WIN_D3DCOMPILER" +#define SDL_HINT_VIDEO_WIN_D3DCOMPILER "SDL_VIDEO_WIN_D3DCOMPILER" /** * A variable controlling whether the X11 _NET_WM_BYPASS_COMPOSITOR hint @@ -3188,7 +3433,21 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_X11_NET_WM_PING "SDL_VIDEO_X11_NET_WM_PING" +#define SDL_HINT_VIDEO_X11_NET_WM_PING "SDL_VIDEO_X11_NET_WM_PING" + +/** + * A variable controlling whether SDL uses DirectColor visuals. + * + * The variable can be set to the following values: + * + * - "0": Disable DirectColor visuals. + * - "1": Enable DirectColor visuals. (default) + * + * This hint should be set before initializing the video subsystem. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VIDEO_X11_NODIRECTCOLOR "SDL_VIDEO_X11_NODIRECTCOLOR" /** * A variable forcing the content scaling factor for X11 displays. @@ -3199,7 +3458,16 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_X11_SCALING_FACTOR "SDL_VIDEO_X11_SCALING_FACTOR" +#define SDL_HINT_VIDEO_X11_SCALING_FACTOR "SDL_VIDEO_X11_SCALING_FACTOR" + +/** + * A variable forcing the visual ID used for X11 display modes. + * + * This hint should be set before initializing the video subsystem. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VIDEO_X11_VISUALID "SDL_VIDEO_X11_VISUALID" /** * A variable forcing the visual ID chosen for new X11 windows. @@ -3208,7 +3476,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_X11_WINDOW_VISUALID "SDL_VIDEO_X11_WINDOW_VISUALID" +#define SDL_HINT_VIDEO_X11_WINDOW_VISUALID "SDL_VIDEO_X11_WINDOW_VISUALID" /** * A variable controlling whether the X11 XRandR extension should be used. @@ -3222,7 +3490,91 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_X11_XRANDR "SDL_VIDEO_X11_XRANDR" +#define SDL_HINT_VIDEO_X11_XRANDR "SDL_VIDEO_X11_XRANDR" + +/** + * A variable controlling whether touch should be enabled on the back panel of + * the PlayStation Vita. + * + * The variable can be set to the following values: + * + * - "0": Disable touch on the back panel. + * - "1": Enable touch on the back panel. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_ENABLE_BACK_TOUCH "SDL_VITA_ENABLE_BACK_TOUCH" + +/** + * A variable controlling whether touch should be enabled on the front panel + * of the PlayStation Vita. + * + * The variable can be set to the following values: + * + * - "0": Disable touch on the front panel. + * - "1": Enable touch on the front panel. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_ENABLE_FRONT_TOUCH "SDL_VITA_ENABLE_FRONT_TOUCH" + +/** + * A variable controlling the module path on the PlayStation Vita. + * + * This hint defaults to "app0:module" + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_MODULE_PATH "SDL_VITA_MODULE_PATH" + +/** + * A variable controlling whether to perform PVR initialization on the + * PlayStation Vita. + * + * - "0": Skip PVR initialization. + * - "1": Perform the normal PVR initialization. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_PVR_INIT "SDL_VITA_PVR_INIT" + +/** + * A variable overriding the resolution reported on the PlayStation Vita. + * + * The variable can be set to the following values: + * + * - "544": 544p (default) + * - "720": 725p for PSTV + * - "1080": 1088i for PSTV + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_RESOLUTION "SDL_VITA_RESOLUTION" + +/** + * A variable controlling whether OpenGL should be used instead of OpenGL ES + * on the PlayStation Vita. + * + * The variable can be set to the following values: + * + * - "0": Use OpenGL ES. (default) + * - "1": Use OpenGL. + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_PVR_OPENGL "SDL_VITA_PVR_OPENGL" /** * A variable controlling which touchpad should generate synthetic mouse @@ -3238,7 +3590,28 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VITA_TOUCH_MOUSE_DEVICE "SDL_VITA_TOUCH_MOUSE_DEVICE" +#define SDL_HINT_VITA_TOUCH_MOUSE_DEVICE "SDL_VITA_TOUCH_MOUSE_DEVICE" + +/** + * A variable overriding the display index used in SDL_Vulkan_CreateSurface() + * + * The display index starts at 0, which is the default. + * + * This hint should be set before calling SDL_Vulkan_CreateSurface() + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VULKAN_DISPLAY "SDL_VULKAN_DISPLAY" + +/** + * Specify the Vulkan library to load. + * + * This hint should be set before creating a Vulkan window or calling + * SDL_Vulkan_LoadLibrary(). + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VULKAN_LIBRARY "SDL_VULKAN_LIBRARY" /** * A variable controlling how the fact chunk affects the loading of a WAVE @@ -3270,7 +3643,19 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WAVE_FACT_CHUNK "SDL_WAVE_FACT_CHUNK" +#define SDL_HINT_WAVE_FACT_CHUNK "SDL_WAVE_FACT_CHUNK" + +/** + * A variable controlling the maximum number of chunks in a WAVE file. + * + * This sets an upper bound on the number of chunks in a WAVE file to avoid + * wasting time on malformed or corrupt WAVE files. This defaults to "10000". + * + * This hint should be set before calling SDL_LoadWAV() or SDL_LoadWAV_IO() + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_WAVE_CHUNK_LIMIT "SDL_WAVE_CHUNK_LIMIT" /** * A variable controlling how the size of the RIFF chunk affects the loading @@ -3283,7 +3668,7 @@ extern "C" { * Note that files that have trailing data unrelated to the WAVE file or * corrupt files may slow down the loading process without a reliable * boundary. By default, SDL stops after 10000 chunks to prevent wasting time. - * Use the environment variable SDL_WAVE_CHUNK_LIMIT to adjust this value. + * Use SDL_HINT_WAVE_CHUNK_LIMIT to adjust this value. * * The variable can be set to the following values: * @@ -3298,7 +3683,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WAVE_RIFF_CHUNK_SIZE "SDL_WAVE_RIFF_CHUNK_SIZE" +#define SDL_HINT_WAVE_RIFF_CHUNK_SIZE "SDL_WAVE_RIFF_CHUNK_SIZE" /** * A variable controlling how a truncated WAVE file is handled. @@ -3318,7 +3703,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WAVE_TRUNCATION "SDL_WAVE_TRUNCATION" +#define SDL_HINT_WAVE_TRUNCATION "SDL_WAVE_TRUNCATION" /** * A variable controlling whether the window is activated when the @@ -3335,7 +3720,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WINDOW_ACTIVATE_WHEN_RAISED "SDL_WINDOW_ACTIVATE_WHEN_RAISED" +#define SDL_HINT_WINDOW_ACTIVATE_WHEN_RAISED "SDL_WINDOW_ACTIVATE_WHEN_RAISED" /** * A variable controlling whether the window is activated when the @@ -3352,7 +3737,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WINDOW_ACTIVATE_WHEN_SHOWN "SDL_WINDOW_ACTIVATE_WHEN_SHOWN" +#define SDL_HINT_WINDOW_ACTIVATE_WHEN_SHOWN "SDL_WINDOW_ACTIVATE_WHEN_SHOWN" /** * If set to "0" then never set the top-most flag on an SDL Window even if the @@ -3386,7 +3771,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN "SDL_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN" +#define SDL_HINT_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN "SDL_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN" /** * A variable controlling whether SDL generates window-close events for Alt+F4 @@ -3448,6 +3833,22 @@ extern "C" { */ #define SDL_HINT_WINDOWS_ENABLE_MESSAGELOOP "SDL_WINDOWS_ENABLE_MESSAGELOOP" +/** + * A variable controlling whether GameInput is used for raw keyboard and mouse + * on Windows. + * + * The variable can be set to the following values: + * + * - "0": GameInput is not used for raw keyboard and mouse events. + * - "1": GameInput is used for raw keyboard and mouse events, if available. + * (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_WINDOWS_GAMEINPUT "SDL_WINDOWS_GAMEINPUT" + /** * A variable controlling whether raw keyboard events are used on Windows. * @@ -3460,28 +3861,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WINDOWS_RAW_KEYBOARD "SDL_WINDOWS_RAW_KEYBOARD" - -/** - * A variable controlling whether SDL uses Critical Sections for mutexes on - * Windows. - * - * On Windows 7 and newer, Slim Reader/Writer Locks are available. They offer - * better performance, allocate no kernel resources and use less memory. SDL - * will fall back to Critical Sections on older OS versions or if forced to by - * this hint. - * - * The variable can be set to the following values: - * - * - "0": Use SRW Locks when available, otherwise fall back to Critical - * Sections. (default) - * - "1": Force the use of Critical Sections in all cases. - * - * This hint should be set before SDL is initialized. - * - * \since This hint is available since SDL 3.0.0. - */ -#define SDL_HINT_WINDOWS_FORCE_MUTEX_CRITICAL_SECTIONS "SDL_WINDOWS_FORCE_MUTEX_CRITICAL_SECTIONS" +#define SDL_HINT_WINDOWS_RAW_KEYBOARD "SDL_WINDOWS_RAW_KEYBOARD" /** * A variable controlling whether SDL uses Kernel Semaphores on Windows. @@ -3709,6 +4089,17 @@ extern "C" { */ #define SDL_HINT_X11_WINDOW_TYPE "SDL_X11_WINDOW_TYPE" +/** + * Specify the XCB library to load for the X11 driver. + * + * This defaults to "libX11-xcb.so" + * + * This hint should be set before initializing the video subsystem. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_X11_XCB_LIBRARY "SDL_X11_XCB_LIBRARY" + /** * A variable controlling whether XInput should be used for controller * handling. @@ -3724,6 +4115,31 @@ extern "C" { */ #define SDL_HINT_XINPUT_ENABLED "SDL_XINPUT_ENABLED" +/** + * A variable controlling response to SDL_assert failures. + * + * The variable can be set to the following case-sensitive values: + * + * - "abort": Program terminates immediately. + * - "break": Program triggers a debugger breakpoint. + * - "retry": Program reruns the SDL_assert's test again. + * - "ignore": Program continues on, ignoring this assertion failure this + * time. + * - "always_ignore": Program continues on, ignoring this assertion failure + * for the rest of the run. + * + * Note that SDL_SetAssertionHandler offers a programmatic means to deal with + * assertion failures through a callback, and this hint is largely intended to + * be used via environment variables by end users and automated tools. + * + * This hint should be set before an assertion failure is triggered and can be + * changed at any time. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_ASSERT "SDL_ASSERT" + + /** * An enumeration of hint priorities. * @@ -3736,7 +4152,6 @@ typedef enum SDL_HintPriority SDL_HINT_OVERRIDE } SDL_HintPriority; - /** * Set a hint with a specific priority. * @@ -3747,7 +4162,10 @@ typedef enum SDL_HintPriority * \param name the hint to set. * \param value the value of the hint variable. * \param priority the SDL_HintPriority level for the hint. - * \returns SDL_TRUE if the hint was set, SDL_FALSE otherwise. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. + * + * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. * @@ -3755,9 +4173,7 @@ typedef enum SDL_HintPriority * \sa SDL_ResetHint * \sa SDL_SetHint */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHintWithPriority(const char *name, - const char *value, - SDL_HintPriority priority); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHintWithPriority(const char *name, const char *value, SDL_HintPriority priority); /** * Set a hint with normal priority. @@ -3768,7 +4184,10 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHintWithPriority(const char *name, * * \param name the hint to set. * \param value the value of the hint variable. - * \returns SDL_TRUE if the hint was set, SDL_FALSE otherwise. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. + * + * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. * @@ -3776,8 +4195,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHintWithPriority(const char *name, * \sa SDL_ResetHint * \sa SDL_SetHintWithPriority */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHint(const char *name, - const char *value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHint(const char *name, const char *value); /** * Reset a hint to the default value. @@ -3787,7 +4205,10 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHint(const char *name, * change. * * \param name the hint to set. - * \returns SDL_TRUE if the hint was set, SDL_FALSE otherwise. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. + * + * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. * @@ -3803,6 +4224,8 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ResetHint(const char *name); * variable, or NULL if the environment isn't set. Callbacks will be called * normally with this change. * + * \threadsafety It is safe to call this function from any thread. + * * \since This function is available since SDL 3.0.0. * * \sa SDL_ResetHint @@ -3815,12 +4238,19 @@ extern SDL_DECLSPEC void SDLCALL SDL_ResetHints(void); * \param name the hint to query. * \returns the string value of a hint or NULL if the hint isn't set. * + * \threadsafety It is safe to call this function from any thread, however the + * return value only remains valid until the hint is changed; if + * another thread might do so, the app should supply locks + * and/or make a copy of the string. Note that using a hint + * callback instead is always thread-safe, as SDL holds a lock + * on the thread subsystem during the callback. + * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetHint * \sa SDL_SetHintWithPriority */ -extern SDL_DECLSPEC const char * SDLCALL SDL_GetHint(const char *name); +extern SDL_DECLSPEC const char *SDLCALL SDL_GetHint(const char *name); /** * Get the boolean value of a hint variable. @@ -3830,6 +4260,8 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetHint(const char *name); * \returns the boolean value of a hint or the provided default value if the * hint does not exist. * + * \threadsafety It is safe to call this function from any thread. + * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetHint @@ -3838,37 +4270,46 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetHint(const char *name); extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetHintBoolean(const char *name, SDL_bool default_value); /** - * Type definition of the hint callback function. + * A callback used to send notifications of hint value changes. + * + * This is called an initial time during SDL_AddHintCallback with the hint's + * current value, and then again each time the hint's value changes. * * \param userdata what was passed as `userdata` to SDL_AddHintCallback(). * \param name what was passed as `name` to SDL_AddHintCallback(). * \param oldValue the previous hint value. * \param newValue the new value hint is to be set to. * + * \threadsafety This callback is fired from whatever thread is setting a new + * hint value. SDL holds a lock on the hint subsystem when + * calling this callback. + * * \since This datatype is available since SDL 3.0.0. + * + * \sa SDL_AddHintCallback */ -typedef void (SDLCALL *SDL_HintCallback)(void *userdata, const char *name, const char *oldValue, const char *newValue); +typedef void(SDLCALL *SDL_HintCallback)(void *userdata, const char *name, const char *oldValue, const char *newValue); /** * Add a function to watch a particular hint. * + * The callback function is called _during_ this function, to provide it an + * initial value, and again each time the hint's value changes. + * * \param name the hint to watch. - * \param callback an SDL_HintCallback function that will be called when the + * \param callback An SDL_HintCallback function that will be called when the * hint value changes. * \param userdata a pointer to pass to the callback function. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * - * \threadsafety It is **NOT** safe to call this function from two threads at - * once. + * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. * - * \sa SDL_DelHintCallback + * \sa SDL_RemoveHintCallback */ -extern SDL_DECLSPEC int SDLCALL SDL_AddHintCallback(const char *name, - SDL_HintCallback callback, - void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AddHintCallback(const char *name, SDL_HintCallback callback, void *userdata); /** * Remove a function watching a particular hint. @@ -3878,13 +4319,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_AddHintCallback(const char *name, * hint value changes. * \param userdata a pointer being passed to the callback function. * + * \threadsafety It is safe to call this function from any thread. + * * \since This function is available since SDL 3.0.0. * * \sa SDL_AddHintCallback */ -extern SDL_DECLSPEC void SDLCALL SDL_DelHintCallback(const char *name, - SDL_HintCallback callback, - void *userdata); +extern SDL_DECLSPEC void SDLCALL SDL_RemoveHintCallback(const char *name, + SDL_HintCallback callback, + void *userdata); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_init.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_init.h index 6b51816..5a13947 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_init.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_init.h @@ -31,6 +31,7 @@ #include #include +#include #include /* Set up for C function definitions, even when using C++ */ @@ -66,6 +67,38 @@ typedef Uint32 SDL_InitFlags; #define SDL_INIT_SENSOR 0x00008000u /**< `SDL_INIT_SENSOR` implies `SDL_INIT_EVENTS` */ #define SDL_INIT_CAMERA 0x00010000u /**< `SDL_INIT_CAMERA` implies `SDL_INIT_EVENTS` */ +/** + * Return values for optional main callbacks. + * + * Returning SDL_APP_SUCCESS or SDL_APP_FAILURE from SDL_AppInit, + * SDL_AppEvent, or SDL_AppIterate will terminate the program and report + * success/failure to the operating system. What that means is + * platform-dependent. On Unix, for example, on success, the process error + * code will be zero, and on failure it will be 1. This interface doesn't + * allow you to return specific exit codes, just whether there was an error + * generally or not. + * + * Returning SDL_APP_CONTINUE from these functions will let the app continue + * to run. + * + * See + * [Main callbacks in SDL3](https://wiki.libsdl.org/SDL3/README/main-functions#main-callbacks-in-sdl3) + * for complete details. + * + * \since This enum is available since SDL 3.0.0. + */ +typedef enum SDL_AppResult +{ + SDL_APP_CONTINUE, /**< Value that requests that the app continue from the main callbacks. */ + SDL_APP_SUCCESS, /**< Value that requests termination with success from the main callbacks. */ + SDL_APP_FAILURE /**< Value that requests termination with error from the main callbacks. */ +} SDL_AppResult; + +typedef SDL_AppResult (SDLCALL *SDL_AppInit_func)(void **appstate, int argc, char *argv[]); +typedef SDL_AppResult (SDLCALL *SDL_AppIterate_func)(void *appstate); +typedef SDL_AppResult (SDLCALL *SDL_AppEvent_func)(void *appstate, const SDL_Event *event); +typedef void (SDLCALL *SDL_AppQuit_func)(void *appstate); + /** * Initialize the SDL library. * @@ -110,8 +143,8 @@ typedef Uint32 SDL_InitFlags; * SDL_SetAppMetadataProperty(). * * \param flags subsystem initialization flags. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -122,7 +155,7 @@ typedef Uint32 SDL_InitFlags; * \sa SDL_SetMainReady * \sa SDL_WasInit */ -extern SDL_DECLSPEC int SDLCALL SDL_Init(SDL_InitFlags flags); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_Init(SDL_InitFlags flags); /** * Compatibility function to initialize the SDL library. @@ -130,8 +163,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_Init(SDL_InitFlags flags); * This function and SDL_Init() are interchangeable. * * \param flags any of the flags used by SDL_Init(); see SDL_Init for details. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -139,7 +172,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_Init(SDL_InitFlags flags); * \sa SDL_Quit * \sa SDL_QuitSubSystem */ -extern SDL_DECLSPEC int SDLCALL SDL_InitSubSystem(SDL_InitFlags flags); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_InitSubSystem(SDL_InitFlags flags); /** * Shut down specific SDL subsystems. @@ -215,8 +248,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_Quit(void); * hash, or whatever makes sense). * \param appidentifier A unique string in reverse-domain format that * identifies this app ("com.example.mygame2"). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -224,7 +257,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_Quit(void); * * \sa SDL_SetAppMetadataProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadata(const char *appname, const char *appversion, const char *appidentifier); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAppMetadata(const char *appname, const char *appversion, const char *appidentifier); /** * Specify metadata about your app through a set of properties. @@ -250,7 +283,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadata(const char *appname, const ch * anywhere the OS shows the name of the application separately from window * titles, such as volume control applets, etc. This defaults to "SDL * Application". - * - SDL_PROP_APP_METADATA_VERSION_STRING`: The version of the app that is + * - `SDL_PROP_APP_METADATA_VERSION_STRING`: The version of the app that is * running; there are no rules on format, so "1.0.3beta2" and "April 22nd, * 2024" and a git hash are all valid options. This has no default. * - `SDL_PROP_APP_METADATA_IDENTIFIER_STRING`: A unique string that @@ -260,16 +293,16 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadata(const char *appname, const ch * associated desktop settings and icons. If you plan to package your * application in a container such as Flatpak, the app ID should match the * name of your Flatpak container as well. This has no default. - * - SDL_PROP_APP_METADATA_CREATOR_STRING`: The human-readable name of the + * - `SDL_PROP_APP_METADATA_CREATOR_STRING`: The human-readable name of the * creator/developer/maker of this app, like "MojoWorkshop, LLC" - * - SDL_PROP_APP_METADATA_COPYRIGHT_STRING`: The human-readable copyright + * - `SDL_PROP_APP_METADATA_COPYRIGHT_STRING`: The human-readable copyright * notice, like "Copyright (c) 2024 MojoWorkshop, LLC" or whatnot. Keep this * to one line, don't paste a copy of a whole software license in here. This * has no default. - * - SDL_PROP_APP_METADATA_URL_STRING`: A URL to the app on the web. Maybe a + * - `SDL_PROP_APP_METADATA_URL_STRING`: A URL to the app on the web. Maybe a * product page, or a storefront, or even a GitHub repository, for user's * further information This has no default. - * - SDL_PROP_APP_METADATA_TYPE_STRING`: The type of application this is. + * - `SDL_PROP_APP_METADATA_TYPE_STRING`: The type of application this is. * Currently this string can be "game" for a video game, "mediaplayer" for a * media player, or generically "application" if nothing else applies. * Future versions of SDL might add new types. This defaults to @@ -277,8 +310,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadata(const char *appname, const ch * * \param name the name of the metadata property to set. * \param value the value of the property, or NULL to remove that property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -287,7 +320,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadata(const char *appname, const ch * \sa SDL_GetAppMetadataProperty * \sa SDL_SetAppMetadata */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadataProperty(const char *name, const char *value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAppMetadataProperty(const char *name, const char *value); #define SDL_PROP_APP_METADATA_NAME_STRING "SDL.app.metadata.name" #define SDL_PROP_APP_METADATA_VERSION_STRING "SDL.app.metadata.version" diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_iostream.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_iostream.h index 430cd3e..a306deb 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_iostream.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_iostream.h @@ -132,9 +132,10 @@ typedef struct SDL_IOStreamInterface * The SDL_IOStream is still destroyed even if this fails, so clean up anything * even if flushing to disk returns an error. * - * \return 0 if successful or -1 on write error when flushing data. + * \return SDL_TRUE if successful or SDL_FALSE on write error when flushing data. */ - int (SDLCALL *close)(void *userdata); + SDL_bool (SDLCALL *close)(void *userdata); + } SDL_IOStreamInterface; @@ -371,21 +372,21 @@ extern SDL_DECLSPEC SDL_IOStream * SDLCALL SDL_OpenIO(const SDL_IOStreamInterfac * * SDL_CloseIO() closes and cleans up the SDL_IOStream stream. It releases any * resources used by the stream and frees the SDL_IOStream itself. This - * returns 0 on success, or -1 if the stream failed to flush to its output - * (e.g. to disk). + * returns SDL_TRUE on success, or SDL_FALSE if the stream failed to flush to + * its output (e.g. to disk). * * Note that if this fails to flush the stream to disk, this function reports * an error, but the SDL_IOStream is still invalid once this function returns. * * \param context SDL_IOStream structure to close. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_OpenIO */ -extern SDL_DECLSPEC int SDLCALL SDL_CloseIO(SDL_IOStream *context); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CloseIO(SDL_IOStream *context); /** * Get the properties associated with an SDL_IOStream. @@ -481,9 +482,9 @@ extern SDL_DECLSPEC Sint64 SDLCALL SDL_TellIO(SDL_IOStream *context); * * This function reads up `size` bytes from the data source to the area * pointed at by `ptr`. This function may read less bytes than requested. It - * will return zero when the data stream is completely read, or on error. To - * determine if there was an error or all data was read, call - * SDL_GetIOStatus(). + * will return zero when the data stream is completely read, and + * SDL_GetIOStatus() will return SDL_IO_STATUS_EOF, or on error, and + * SDL_GetIOStatus() will return SDL_IO_STATUS_ERROR. * * \param context a pointer to an SDL_IOStream structure. * \param ptr a pointer to a buffer to read data into. diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_joystick.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_joystick.h index 1a17076..43bc1e9 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_joystick.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_joystick.h @@ -91,8 +91,7 @@ typedef struct SDL_Joystick SDL_Joystick; * * If the joystick is disconnected and reconnected, it will get a new ID. * - * The ID value starts at 1 and increments from there. The value 0 is an - * invalid ID. + * The value 0 is an invalid ID. * * \since This datatype is available since SDL 3.0.0. */ @@ -447,11 +446,12 @@ typedef struct SDL_VirtualJoystickDesc void *userdata; /**< User data pointer passed to callbacks */ void (SDLCALL *Update)(void *userdata); /**< Called when the joystick state should be updated */ void (SDLCALL *SetPlayerIndex)(void *userdata, int player_index); /**< Called when the player index is set */ - int (SDLCALL *Rumble)(void *userdata, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble); /**< Implements SDL_RumbleJoystick() */ - int (SDLCALL *RumbleTriggers)(void *userdata, Uint16 left_rumble, Uint16 right_rumble); /**< Implements SDL_RumbleJoystickTriggers() */ - int (SDLCALL *SetLED)(void *userdata, Uint8 red, Uint8 green, Uint8 blue); /**< Implements SDL_SetJoystickLED() */ - int (SDLCALL *SendEffect)(void *userdata, const void *data, int size); /**< Implements SDL_SendJoystickEffect() */ - int (SDLCALL *SetSensorsEnabled)(void *userdata, SDL_bool enabled); /**< Implements SDL_SetGamepadSensorEnabled() */ + SDL_bool (SDLCALL *Rumble)(void *userdata, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble); /**< Implements SDL_RumbleJoystick() */ + SDL_bool (SDLCALL *RumbleTriggers)(void *userdata, Uint16 left_rumble, Uint16 right_rumble); /**< Implements SDL_RumbleJoystickTriggers() */ + SDL_bool (SDLCALL *SetLED)(void *userdata, Uint8 red, Uint8 green, Uint8 blue); /**< Implements SDL_SetJoystickLED() */ + SDL_bool (SDLCALL *SendEffect)(void *userdata, const void *data, int size); /**< Implements SDL_SendJoystickEffect() */ + SDL_bool (SDLCALL *SetSensorsEnabled)(void *userdata, SDL_bool enabled); /**< Implements SDL_SetGamepadSensorEnabled() */ + void (SDLCALL *Cleanup)(void *userdata); /**< Cleans up the userdata when the joystick is detached */ } SDL_VirtualJoystickDesc; /** @@ -472,14 +472,14 @@ extern SDL_DECLSPEC SDL_JoystickID SDLCALL SDL_AttachVirtualJoystick(const SDL_V * * \param instance_id the joystick instance ID, previously returned from * SDL_AttachVirtualJoystick(). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_AttachVirtualJoystick */ -extern SDL_DECLSPEC int SDLCALL SDL_DetachVirtualJoystick(SDL_JoystickID instance_id); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_DetachVirtualJoystick(SDL_JoystickID instance_id); /** * Query whether or not a joystick is virtual. @@ -507,12 +507,12 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_IsJoystickVirtual(SDL_JoystickID instan * \param joystick the virtual joystick on which to set state. * \param axis the index of the axis on the virtual joystick to update. * \param value the new value for the specified axis. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualAxis(SDL_Joystick *joystick, int axis, Sint16 value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickVirtualAxis(SDL_Joystick *joystick, int axis, Sint16 value); /** * Generate ball motion on an opened virtual joystick. @@ -527,12 +527,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualAxis(SDL_Joystick *joystic * \param ball the index of the ball on the virtual joystick to update. * \param xrel the relative motion on the X axis. * \param yrel the relative motion on the Y axis. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualBall(SDL_Joystick *joystick, int ball, Sint16 xrel, Sint16 yrel); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickVirtualBall(SDL_Joystick *joystick, int ball, Sint16 xrel, Sint16 yrel); /** * Set the state of a button on an opened virtual joystick. @@ -546,12 +546,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualBall(SDL_Joystick *joystic * \param joystick the virtual joystick on which to set state. * \param button the index of the button on the virtual joystick to update. * \param value the new value for the specified button. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualButton(SDL_Joystick *joystick, int button, Uint8 value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickVirtualButton(SDL_Joystick *joystick, int button, Uint8 value); /** * Set the state of a hat on an opened virtual joystick. @@ -565,12 +565,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualButton(SDL_Joystick *joyst * \param joystick the virtual joystick on which to set state. * \param hat the index of the hat on the virtual joystick to update. * \param value the new value for the specified hat. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualHat(SDL_Joystick *joystick, int hat, Uint8 value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickVirtualHat(SDL_Joystick *joystick, int hat, Uint8 value); /** * Set touchpad finger state on an opened virtual joystick. @@ -592,12 +592,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualHat(SDL_Joystick *joystick * \param y the y coordinate of the finger on the touchpad, normalized 0 to 1, * with the origin in the upper left. * \param pressure the pressure of the finger. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualTouchpad(SDL_Joystick *joystick, int touchpad, int finger, Uint8 state, float x, float y, float pressure); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickVirtualTouchpad(SDL_Joystick *joystick, int touchpad, int finger, Uint8 state, float x, float y, float pressure); /** * Send a sensor update for an opened virtual joystick. @@ -614,12 +614,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualTouchpad(SDL_Joystick *joy * the sensor reading. * \param data the data associated with the sensor reading. * \param num_values the number of values pointed to by `data`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SendJoystickVirtualSensorData(SDL_Joystick *joystick, SDL_SensorType type, Uint64 sensor_timestamp, const float *data, int num_values); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SendJoystickVirtualSensorData(SDL_Joystick *joystick, SDL_SensorType type, Uint64 sensor_timestamp, const float *data, int num_values); /** * Get the properties associated with a joystick. @@ -698,14 +698,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetJoystickPlayerIndex(SDL_Joystick *joystic * \param joystick the SDL_Joystick obtained from SDL_OpenJoystick(). * \param player_index player index to assign to this joystick, or -1 to clear * the player index and turn off player LEDs. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetJoystickPlayerIndex */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickPlayerIndex(SDL_Joystick *joystick, int player_index); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickPlayerIndex(SDL_Joystick *joystick, int player_index); /** * Get the implementation-dependent GUID for the joystick. @@ -853,9 +853,8 @@ extern SDL_DECLSPEC SDL_JoystickID SDLCALL SDL_GetJoystickID(SDL_Joystick *joyst * device and platform. * * \param joystick an SDL_Joystick structure containing joystick information. - * \returns the number of axis controls/number of axes on success or a - * negative error code on failure; call SDL_GetError() for more - * information. + * \returns the number of axis controls/number of axes on success or -1 on + * failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -875,8 +874,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetNumJoystickAxes(SDL_Joystick *joystick); * Most joysticks do not have trackballs. * * \param joystick an SDL_Joystick structure containing joystick information. - * \returns the number of trackballs on success or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the number of trackballs on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -891,8 +890,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetNumJoystickBalls(SDL_Joystick *joystick); * Get the number of POV hats on a joystick. * * \param joystick an SDL_Joystick structure containing joystick information. - * \returns the number of POV hats on success or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the number of POV hats on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -907,8 +906,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetNumJoystickHats(SDL_Joystick *joystick); * Get the number of buttons on a joystick. * * \param joystick an SDL_Joystick structure containing joystick information. - * \returns the number of buttons on success or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the number of buttons on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -1013,14 +1012,14 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetJoystickAxisInitialState(SDL_Joystic * \param ball the ball index to query; ball indices start at index 0. * \param dx stores the difference in the x axis position since the last poll. * \param dy stores the difference in the y axis position since the last poll. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetNumJoystickBalls */ -extern SDL_DECLSPEC int SDLCALL SDL_GetJoystickBall(SDL_Joystick *joystick, int ball, int *dx, int *dy); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetJoystickBall(SDL_Joystick *joystick, int ball, int *dx, int *dy); /** * Get the current state of a POV hat on a joystick. @@ -1076,11 +1075,11 @@ extern SDL_DECLSPEC Uint8 SDLCALL SDL_GetJoystickButton(SDL_Joystick *joystick, * \param high_frequency_rumble the intensity of the high frequency (right) * rumble motor, from 0 to 0xFFFF. * \param duration_ms the duration of the rumble effect, in milliseconds. - * \returns 0, or -1 if rumble isn't supported on this joystick. + * \returns SDL_TRUE, or SDL_FALSE if rumble isn't supported on this joystick. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RumbleJoystick(SDL_Joystick *joystick, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RumbleJoystick(SDL_Joystick *joystick, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); /** * Start a rumble effect in the joystick's triggers. @@ -1102,14 +1101,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RumbleJoystick(SDL_Joystick *joystick, Uint1 * \param right_rumble the intensity of the right trigger rumble motor, from 0 * to 0xFFFF. * \param duration_ms the duration of the rumble effect, in milliseconds. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RumbleJoystick */ -extern SDL_DECLSPEC int SDLCALL SDL_RumbleJoystickTriggers(SDL_Joystick *joystick, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RumbleJoystickTriggers(SDL_Joystick *joystick, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); /** * Update a joystick's LED color. @@ -1124,12 +1123,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_RumbleJoystickTriggers(SDL_Joystick *joystic * \param red the intensity of the red LED. * \param green the intensity of the green LED. * \param blue the intensity of the blue LED. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickLED(SDL_Joystick *joystick, Uint8 red, Uint8 green, Uint8 blue); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickLED(SDL_Joystick *joystick, Uint8 red, Uint8 green, Uint8 blue); /** * Send a joystick specific effect packet. @@ -1137,12 +1136,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickLED(SDL_Joystick *joystick, Uint8 * \param joystick the joystick to affect. * \param data the data to send to the joystick. * \param size the size of the data to send to the joystick. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SendJoystickEffect(SDL_Joystick *joystick, const void *data, int size); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SendJoystickEffect(SDL_Joystick *joystick, const void *data, int size); /** * Close a joystick previously opened with SDL_OpenJoystick(). diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_keyboard.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_keyboard.h index 07bce75..ec6c3f2 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_keyboard.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_keyboard.h @@ -45,8 +45,7 @@ extern "C" { * * If the keyboard is disconnected and reconnected, it will get a new ID. * - * The ID value starts at 1 and increments from there. The value 0 is an - * invalid ID. + * The value 0 is an invalid ID. * * \since This datatype is available since SDL 3.0.0. */ @@ -184,61 +183,27 @@ extern SDL_DECLSPEC SDL_Keymod SDLCALL SDL_GetModState(void); */ extern SDL_DECLSPEC void SDLCALL SDL_SetModState(SDL_Keymod modstate); -/** - * Get the key code corresponding to the given scancode according to a default - * en_US keyboard layout. - * - * See SDL_Keycode for details. - * - * \param scancode the desired SDL_Scancode to query. - * \param modstate the modifier state to use when translating the scancode to - * a keycode. - * \returns the SDL_Keycode that corresponds to the given SDL_Scancode. - * - * \since This function is available since SDL 3.0.0. - * - * \sa SDL_GetKeyName - * \sa SDL_GetScancodeFromKey - */ -extern SDL_DECLSPEC SDL_Keycode SDLCALL SDL_GetDefaultKeyFromScancode(SDL_Scancode scancode, SDL_Keymod modstate); - /** * Get the key code corresponding to the given scancode according to the * current keyboard layout. * - * See SDL_Keycode for details. + * If you want to get the keycode as it would be delivered in key events, + * including options specified in SDL_HINT_KEYCODE_OPTIONS, then you should + * pass `key_event` as SDL_TRUE. Otherwise this function simply translates the + * scancode based on the given modifier state. * * \param scancode the desired SDL_Scancode to query. * \param modstate the modifier state to use when translating the scancode to * a keycode. + * \param key_event SDL_TRUE if the keycode will be used in key events. * \returns the SDL_Keycode that corresponds to the given SDL_Scancode. * * \since This function is available since SDL 3.0.0. * - * \sa SDL_GetDefaultKeyFromScancode * \sa SDL_GetKeyName * \sa SDL_GetScancodeFromKey */ -extern SDL_DECLSPEC SDL_Keycode SDLCALL SDL_GetKeyFromScancode(SDL_Scancode scancode, SDL_Keymod modstate); - -/** - * Get the scancode corresponding to the given key code according to a default - * en_US keyboard layout. - * - * Note that there may be multiple scancode+modifier states that can generate - * this keycode, this will just return the first one found. - * - * \param key the desired SDL_Keycode to query. - * \param modstate a pointer to the modifier state that would be used when the - * scancode generates this key, may be NULL. - * \returns the SDL_Scancode that corresponds to the given SDL_Keycode. - * - * \since This function is available since SDL 3.0.0. - * - * \sa SDL_GetScancodeFromKey - * \sa SDL_GetScancodeName - */ -extern SDL_DECLSPEC SDL_Scancode SDLCALL SDL_GetDefaultScancodeFromKey(SDL_Keycode key, SDL_Keymod *modstate); +extern SDL_DECLSPEC SDL_Keycode SDLCALL SDL_GetKeyFromScancode(SDL_Scancode scancode, SDL_Keymod modstate, SDL_bool key_event); /** * Get the scancode corresponding to the given key code according to the @@ -254,7 +219,6 @@ extern SDL_DECLSPEC SDL_Scancode SDLCALL SDL_GetDefaultScancodeFromKey(SDL_Keyco * * \since This function is available since SDL 3.0.0. * - * \sa SDL_GetDefaultScancodeFromKey * \sa SDL_GetKeyFromScancode * \sa SDL_GetScancodeName */ @@ -267,14 +231,14 @@ extern SDL_DECLSPEC SDL_Scancode SDLCALL SDL_GetScancodeFromKey(SDL_Keycode key, * \param name the name to use for the scancode, encoded as UTF-8. The string * is not copied, so the pointer given to this function must stay * valid while SDL is being used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetScancodeName */ -extern SDL_DECLSPEC int SDLCALL SDL_SetScancodeName(SDL_Scancode scancode, const char *name); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetScancodeName(SDL_Scancode scancode, const char *name); /** * Get a human-readable name for a scancode. @@ -318,9 +282,6 @@ extern SDL_DECLSPEC SDL_Scancode SDLCALL SDL_GetScancodeFromName(const char *nam /** * Get a human-readable name for a key. * - * Both lowercase and uppercase alphabetic keycodes have uppercase names, e.g. - * SDL_Keycode 'a' and 'A' both have the name "A". - * * If the key doesn't have a name, this function returns an empty string (""). * * \param key the desired SDL_Keycode to query. @@ -361,8 +322,8 @@ extern SDL_DECLSPEC SDL_Keycode SDLCALL SDL_GetKeyFromName(const char *name); * On some platforms using this function shows the screen keyboard. * * \param window the window to enable text input. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -371,7 +332,7 @@ extern SDL_DECLSPEC SDL_Keycode SDLCALL SDL_GetKeyFromName(const char *name); * \sa SDL_StopTextInput * \sa SDL_TextInputActive */ -extern SDL_DECLSPEC int SDLCALL SDL_StartTextInput(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StartTextInput(SDL_Window *window); /** * Text input type. @@ -453,8 +414,8 @@ typedef enum SDL_Capitalization * * \param window the window to enable text input. * \param props the properties to use. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -463,7 +424,7 @@ typedef enum SDL_Capitalization * \sa SDL_StopTextInput * \sa SDL_TextInputActive */ -extern SDL_DECLSPEC int SDLCALL SDL_StartTextInputWithProperties(SDL_Window *window, SDL_PropertiesID props); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StartTextInputWithProperties(SDL_Window *window, SDL_PropertiesID props); #define SDL_PROP_TEXTINPUT_TYPE_NUMBER "SDL.textinput.type" #define SDL_PROP_TEXTINPUT_CAPITALIZATION_NUMBER "SDL.textinput.capitalization" @@ -490,28 +451,28 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TextInputActive(SDL_Window *window); * it. * * \param window the window to disable text input. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StartTextInput */ -extern SDL_DECLSPEC int SDLCALL SDL_StopTextInput(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StopTextInput(SDL_Window *window); /** * Dismiss the composition window/IME without disabling the subsystem. * * \param window the window to affect. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StartTextInput * \sa SDL_StopTextInput */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearComposition(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearComposition(SDL_Window *window); /** * Set the area used to type Unicode text input. @@ -524,15 +485,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_ClearComposition(SDL_Window *window); * coordinates, or NULL to clear it. * \param cursor the offset of the current cursor location relative to * `rect->x`, in window coordinates. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetTextInputArea * \sa SDL_StartTextInput */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextInputArea(SDL_Window *window, const SDL_Rect *rect, int cursor); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextInputArea(SDL_Window *window, const SDL_Rect *rect, int cursor); /** * Get the area used to type Unicode text input. @@ -544,14 +505,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextInputArea(SDL_Window *window, const S * may be NULL. * \param cursor a pointer to the offset of the current cursor location * relative to `rect->x`, may be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetTextInputArea */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextInputArea(SDL_Window *window, SDL_Rect *rect, int *cursor); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextInputArea(SDL_Window *window, SDL_Rect *rect, int *cursor); /** * Check whether the platform has screen keyboard support. diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_log.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_log.h index 171cce8..deda238 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_log.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_log.h @@ -29,9 +29,27 @@ * it will only be sent out if it has that minimum priority or higher. * * SDL's own logs are sent below the default priority threshold, so they are - * quiet by default. If you're debugging SDL you might want: + * quiet by default. * - * SDL_SetLogPriorities(SDL_LOG_PRIORITY_WARN); + * You can change the log verbosity programmatically using + * SDL_SetLogPriority() or with SDL_SetHint(SDL_HINT_LOGGING, ...), or with + * the "SDL_LOGGING" environment variable. This variable is a comma separated + * set of category=level tokens that define the default logging levels for SDL + * applications. + * + * The category can be a numeric category, one of "app", "error", "assert", + * "system", "audio", "video", "render", "input", "test", or `*` for any + * unspecified category. + * + * The level can be a numeric level, one of "verbose", "debug", "info", + * "warn", "error", "critical", or "quiet" to disable that category. + * + * You can omit the category if you want to set the logging level for all + * categories. + * + * If this hint isn't set, the default log levels are equivalent to: + * + * `app=info,assert=warn,test=verbose,*=error` * * Here's where the messages go on different platforms: * @@ -54,9 +72,9 @@ extern "C" { /** * The predefined log categories * - * By default the application category is enabled at the INFO level, the - * assert category is enabled at the WARN level, test is enabled at the - * VERBOSE level and all other categories are enabled at the ERROR level. + * By default the application and gpu categories are enabled at the INFO + * level, the assert category is enabled at the WARN level, test is enabled at + * the VERBOSE level and all other categories are enabled at the ERROR level. * * \since This enum is available since SDL 3.0.0. */ @@ -69,6 +87,7 @@ typedef enum SDL_LogCategory SDL_LOG_CATEGORY_AUDIO, SDL_LOG_CATEGORY_VIDEO, SDL_LOG_CATEGORY_RENDER, + SDL_LOG_CATEGORY_GPU, SDL_LOG_CATEGORY_INPUT, SDL_LOG_CATEGORY_TEST, @@ -163,6 +182,26 @@ extern SDL_DECLSPEC SDL_LogPriority SDLCALL SDL_GetLogPriority(int category); */ extern SDL_DECLSPEC void SDLCALL SDL_ResetLogPriorities(void); +/** + * Set the text prepended to log messages of a given priority. + * + * By default SDL_LOG_PRIORITY_INFO and below have no prefix, and + * SDL_LOG_PRIORITY_WARN and higher have a prefix showing their priority, e.g. + * "WARNING: ". + * + * \param priority the SDL_LogPriority to modify. + * \param prefix the prefix to use for that log priority, or NULL to use no + * prefix. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SetLogPriorities + * \sa SDL_SetLogPriority + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetLogPriorityPrefix(SDL_LogPriority priority, const char *prefix); + /** * Log a message with SDL_LOG_CATEGORY_APPLICATION and SDL_LOG_PRIORITY_INFO. * diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_main.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_main.h index 0985629..de3c187 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_main.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_main.h @@ -188,16 +188,12 @@ #define main SDL_main #endif +#include #include #ifdef __cplusplus extern "C" { #endif -typedef int (SDLCALL *SDL_AppInit_func)(void **appstate, int argc, char *argv[]); -typedef int (SDLCALL *SDL_AppIterate_func)(void *appstate); -typedef int (SDLCALL *SDL_AppEvent_func)(void *appstate, const SDL_Event *event); -typedef void (SDLCALL *SDL_AppQuit_func)(void *appstate); - /* * You can (optionally!) define SDL_MAIN_USE_CALLBACKS before including * SDL_main.h, and then your application will _not_ have a standard @@ -224,49 +220,6 @@ typedef void (SDLCALL *SDL_AppQuit_func)(void *appstate); */ #ifdef SDL_MAIN_USE_CALLBACKS -/** - * Value that requests that the app continue from the main callbacks. - * - * If SDL_AppInit, SDL_AppEvent, or SDL_AppIterate returns this value, the - * program will continue to run. This is the normal return value case. - * - * This is always 0; using this macro may be clearer, but is not required. - * - * \since This macro is available since SDL 3.0.0. - */ -#define SDL_APP_CONTINUE 0 - -/** - * Value that requests termination with error from the main callbacks. - * - * If SDL_AppInit, SDL_AppEvent, or SDL_AppIterate returns this value, the - * program will terminate and report failure to the operating system. - * - * What that failure looks like is platform-dependent. On Unix, for example, - * the process error code will be non-zero. - * - * This is always -1; using this macro may be clearer, but is not required. - * - * \since This macro is available since SDL 3.0.0. - */ -#define SDL_APP_FAILURE -1 - -/** - * Value that requests termination with success from the main callbacks. - * - * If SDL_AppInit, SDL_AppEvent, or SDL_AppIterate returns this value, the - * program will terminate and report success to the operating system. - * - * What that success looks like is platform-dependent. On Unix, for example, - * the process error code will be zero. - * - * This is always 1; using this macro may be clearer, but is not required. - * - * \since This macro is available since SDL 3.0.0. - */ -#define SDL_APP_SUCCESS 1 - - /** * App-implemented initial entry point for SDL_MAIN_USE_CALLBACKS apps. * @@ -311,7 +264,7 @@ typedef void (SDLCALL *SDL_AppQuit_func)(void *appstate); * \sa SDL_AppEvent * \sa SDL_AppQuit */ -extern SDLMAIN_DECLSPEC int SDLCALL SDL_AppInit(void **appstate, int argc, char *argv[]); +extern SDLMAIN_DECLSPEC SDL_AppResult SDLCALL SDL_AppInit(void **appstate, int argc, char *argv[]); /** * App-implemented iteration entry point for SDL_MAIN_USE_CALLBACKS apps. @@ -359,7 +312,7 @@ extern SDLMAIN_DECLSPEC int SDLCALL SDL_AppInit(void **appstate, int argc, char * \sa SDL_AppInit * \sa SDL_AppEvent */ -extern SDLMAIN_DECLSPEC int SDLCALL SDL_AppIterate(void *appstate); +extern SDLMAIN_DECLSPEC SDL_AppResult SDLCALL SDL_AppIterate(void *appstate); /** * App-implemented event entry point for SDL_MAIN_USE_CALLBACKS apps. @@ -406,7 +359,7 @@ extern SDLMAIN_DECLSPEC int SDLCALL SDL_AppIterate(void *appstate); * \sa SDL_AppInit * \sa SDL_AppIterate */ -extern SDLMAIN_DECLSPEC int SDLCALL SDL_AppEvent(void *appstate, const SDL_Event *event); +extern SDLMAIN_DECLSPEC SDL_AppResult SDLCALL SDL_AppEvent(void *appstate, const SDL_Event *event); /** * App-implemented deinit entry point for SDL_MAIN_USE_CALLBACKS apps. @@ -525,8 +478,9 @@ extern SDL_DECLSPEC void SDLCALL SDL_SetMainReady(void); * literally have to be `main`. * \param reserved should be NULL (reserved for future use, will probably be * platform-specific then). - * \returns the return value from mainFunction: 0 on success, -1 on failure; - * SDL_GetError() might have more information on the failure. + * \returns the return value from mainFunction: 0 on success, otherwise + * failure; SDL_GetError() might have more information on the + * failure. * * \threadsafety Generally this is called once, near startup, from the * process's initial thread. @@ -584,12 +538,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_EnterAppMainCallbacks(int argc, char *argv[] * what is specified here. * \param hInst the HINSTANCE to use in WNDCLASSEX::hInstance. If zero, SDL * will use `GetModuleHandle(NULL)` instead. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RegisterApp(const char *name, Uint32 style, void *hInst); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RegisterApp(const char *name, Uint32 style, void *hInst); /** * Deregister the win32 window class from an SDL_RegisterApp call. @@ -631,7 +585,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_GDKSuspendComplete(void); /* include header-only SDL_main implementations */ #if defined(SDL_MAIN_USE_CALLBACKS) \ || defined(SDL_PLATFORM_WIN32) || defined(SDL_PLATFORM_GDK) || defined(SDL_PLATFORM_IOS) || defined(SDL_PLATFORM_TVOS) \ - || defined(SDL_PLATFORM_3DS) || defined(SDL_PLATFORM_NGAGE) || defined(SDL_PLATFORM_PS2) || defined(SDL_PLATFORM_PSP) + || defined(SDL_PLATFORM_3DS) || defined(SDL_PLATFORM_NGAGE) || defined(SDL_PLATFORM_PS2) || defined(SDL_PLATFORM_PSP) \ + || defined(SDL_PLATFORM_EMSCRIPTEN) /* platforms which main (-equivalent) can be implemented in plain C */ #include diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_messagebox.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_messagebox.h index 6aa3853..c626b22 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_messagebox.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_messagebox.h @@ -154,14 +154,14 @@ typedef struct SDL_MessageBoxData * other options. * \param buttonid the pointer to which user id of hit button should be * copied. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ShowSimpleMessageBox */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid); /** * Display a simple modal message box. @@ -196,14 +196,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_ShowMessageBox(const SDL_MessageBoxData *mes * \param title uTF-8 title text. * \param message uTF-8 message text. * \param window the parent window, or NULL for no parent. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ShowMessageBox */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowSimpleMessageBox(SDL_MessageBoxFlags flags, const char *title, const char *message, SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowSimpleMessageBox(SDL_MessageBoxFlags flags, const char *title, const char *message, SDL_Window *window); /* Ends C function definitions when using C++ */ diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_misc.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_misc.h index 09dec9e..23317e0 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_misc.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_misc.h @@ -62,12 +62,12 @@ extern "C" { * * \param url a valid URL/URI to open. Use `file:///full/path/to/file` for * local files, if supported. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_OpenURL(const char *url); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_OpenURL(const char *url); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_mouse.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_mouse.h index 4284ecc..90c8560 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_mouse.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_mouse.h @@ -38,9 +38,26 @@ extern "C" { #endif +/** + * This is a unique ID for a mouse for the time it is connected to the system, + * and is never reused for the lifetime of the application. + * + * If the mouse is disconnected and reconnected, it will get a new ID. + * + * The value 0 is an invalid ID. + * + * \since This datatype is available since SDL 3.0.0. + */ typedef Uint32 SDL_MouseID; -typedef struct SDL_Cursor SDL_Cursor; /**< Implementation dependent */ +/** + * The structure used to identify an SDL cursor. + * + * This is opaque data. + * + * \since This struct is available since SDL 3.0.0. + */ +typedef struct SDL_Cursor SDL_Cursor; /** * Cursor types for SDL_CreateSystemCursor(). @@ -278,33 +295,48 @@ extern SDL_DECLSPEC void SDLCALL SDL_WarpMouseInWindow(SDL_Window * window, * * \param x the x coordinate. * \param y the y coordinate. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_WarpMouseInWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_WarpMouseGlobal(float x, float y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WarpMouseGlobal(float x, float y); /** - * Set relative mouse mode. + * Set relative mouse mode for a window. * - * While the mouse is in relative mode, the cursor is hidden, the mouse - * position is constrained to the window, and SDL will report continuous - * relative mouse motion even if the mouse is at the edge of the window. + * While the window has focus and relative mouse mode is enabled, the cursor + * is hidden, the mouse position is constrained to the window, and SDL will + * report continuous relative mouse motion even if the mouse is at the edge of + * the window. * - * This function will flush any pending mouse motion. + * This function will flush any pending mouse motion for this window. * + * \param window the window to change. * \param enabled SDL_TRUE to enable relative mode, SDL_FALSE to disable. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * - * \sa SDL_GetRelativeMouseMode + * \sa SDL_GetWindowRelativeMouseMode */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRelativeMouseMode(SDL_bool enabled); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowRelativeMouseMode(SDL_Window *window, SDL_bool enabled); + +/** + * Query whether relative mouse mode is enabled for a window. + * + * \param window the window to query. + * \returns SDL_TRUE if relative mode is enabled for a window or SDL_FALSE + * otherwise. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SetWindowRelativeMouseMode + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowRelativeMouseMode(SDL_Window *window); /** * Capture the mouse and to track input outside an SDL window. @@ -321,7 +353,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRelativeMouseMode(SDL_bool enabled); * mouse while the user is dragging something, until the user releases a mouse * button. It is not recommended that you capture the mouse for long periods * of time, such as the entire time your app is running. For that, you should - * probably use SDL_SetRelativeMouseMode() or SDL_SetWindowMouseGrab(), + * probably use SDL_SetWindowRelativeMouseMode() or SDL_SetWindowMouseGrab(), * depending on your goals. * * While captured, mouse events still report coordinates relative to the @@ -343,25 +375,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRelativeMouseMode(SDL_bool enabled); * `SDL_HINT_MOUSE_AUTO_CAPTURE` hint to zero. * * \param enabled SDL_TRUE to enable capturing, SDL_FALSE to disable. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetGlobalMouseState */ -extern SDL_DECLSPEC int SDLCALL SDL_CaptureMouse(SDL_bool enabled); - -/** - * Query whether relative mouse mode is enabled. - * - * \returns SDL_TRUE if relative mode is enabled or SDL_FALSE otherwise. - * - * \since This function is available since SDL 3.0.0. - * - * \sa SDL_SetRelativeMouseMode - */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRelativeMouseMode(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CaptureMouse(SDL_bool enabled); /** * Create a cursor using the specified bitmap data and mask (in MSB format). @@ -419,8 +440,9 @@ extern SDL_DECLSPEC SDL_Cursor * SDLCALL SDL_CreateCursor(const Uint8 * data, * situations. For example, if the original surface is 32x32, then on a 2x * macOS display or 200% display scale on Windows, a 64x64 version of the * image will be used, if available. If a matching version of the image isn't - * available, the closest size image will be scaled to the appropriate size - * and be used instead. + * available, the closest larger size image will be downscaled to the + * appropriate size and be used instead, if available. Otherwise, the closest + * smaller image will be upscaled and be used instead. * * \param surface an SDL_Surface structure representing the cursor image. * \param hot_x the x position of the cursor hot spot. @@ -461,14 +483,14 @@ extern SDL_DECLSPEC SDL_Cursor * SDLCALL SDL_CreateSystemCursor(SDL_SystemCursor * this is desired for any reason. * * \param cursor a cursor to make active. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetCursor */ -extern SDL_DECLSPEC int SDLCALL SDL_SetCursor(SDL_Cursor *cursor); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetCursor(SDL_Cursor *cursor); /** * Get the active cursor. @@ -516,28 +538,28 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyCursor(SDL_Cursor *cursor); /** * Show the cursor. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CursorVisible * \sa SDL_HideCursor */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowCursor(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowCursor(void); /** * Hide the cursor. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CursorVisible * \sa SDL_ShowCursor */ -extern SDL_DECLSPEC int SDLCALL SDL_HideCursor(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HideCursor(void); /** * Return whether the cursor is currently being shown. diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_mutex.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_mutex.h index eea0030..3a7ce56 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_mutex.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_mutex.h @@ -115,16 +115,6 @@ extern "C" { #endif -/** - * Synchronization functions return this value if they time out. - * - * Not all functions _can_ time out; some will block indefinitely. - * - * \since This macro is available since SDL 3.0.0. - */ -#define SDL_MUTEX_TIMEDOUT 1 - - /** * \name Mutex functions */ @@ -194,25 +184,22 @@ extern SDL_DECLSPEC void SDLCALL SDL_LockMutex(SDL_Mutex *mutex) SDL_ACQUIRE(mut * Try to lock a mutex without blocking. * * This works just like SDL_LockMutex(), but if the mutex is not available, - * this function returns `SDL_MUTEX_TIMEDOUT` immediately. + * this function returns SDL_FALSE immediately. * * This technique is useful if you need exclusive access to a resource but * don't want to wait for it, and will return to it to try again later. * - * This function does not fail; if mutex is NULL, it will return 0 immediately - * having locked nothing. If the mutex is valid, this function will always - * either lock the mutex and return 0, or return SDL_MUTEX_TIMEOUT and lock - * nothing. + * This function returns SDL_TRUE if passed a NULL mutex. * * \param mutex the mutex to try to lock. - * \returns 0 or `SDL_MUTEX_TIMEDOUT`. + * \returns SDL_TRUE on success, SDL_FALSE if the mutex would block. * * \since This function is available since SDL 3.0.0. * * \sa SDL_LockMutex * \sa SDL_UnlockMutex */ -extern SDL_DECLSPEC int SDLCALL SDL_TryLockMutex(SDL_Mutex *mutex) SDL_TRY_ACQUIRE(0, mutex); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TryLockMutex(SDL_Mutex *mutex) SDL_TRY_ACQUIRE(0, mutex); /** * Unlock the mutex. @@ -278,19 +265,6 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyMutex(SDL_Mutex *mutex); */ typedef struct SDL_RWLock SDL_RWLock; -/* - * Synchronization functions return this value if they time out. - * - * Not all functions _can_ time out; some will block indefinitely. - * - * This symbol is just for clarity when dealing with SDL_RWLock - * functions; its value is equivalent to SDL_MUTEX_TIMEOUT. - * - * \since This macro is available since SDL 3.0.0. - */ -#define SDL_RWLOCK_TIMEDOUT SDL_MUTEX_TIMEDOUT - - /** * Create a new read/write lock. * @@ -405,7 +379,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_LockRWLockForWriting(SDL_RWLock *rwlock) SD * Try to lock a read/write lock _for reading_ without blocking. * * This works just like SDL_LockRWLockForReading(), but if the rwlock is not - * available, then this function returns `SDL_RWLOCK_TIMEDOUT` immediately. + * available, then this function returns SDL_FALSE immediately. * * This technique is useful if you need access to a resource but don't want to * wait for it, and will return to it to try again later. @@ -413,13 +387,10 @@ extern SDL_DECLSPEC void SDLCALL SDL_LockRWLockForWriting(SDL_RWLock *rwlock) SD * Trying to lock for read-only access can succeed if other threads are * holding read-only locks, as this won't prevent access. * - * This function does not fail; if rwlock is NULL, it will return 0 - * immediately having locked nothing. If rwlock is valid, this function will - * always either lock the rwlock and return 0, or return SDL_RWLOCK_TIMEOUT - * and lock nothing. + * This function returns SDL_TRUE if passed a NULL rwlock. * * \param rwlock the rwlock to try to lock. - * \returns 0 or `SDL_RWLOCK_TIMEDOUT`. + * \returns SDL_TRUE on success, SDL_FALSE if the lock would block. * * \since This function is available since SDL 3.0.0. * @@ -427,13 +398,13 @@ extern SDL_DECLSPEC void SDLCALL SDL_LockRWLockForWriting(SDL_RWLock *rwlock) SD * \sa SDL_TryLockRWLockForWriting * \sa SDL_UnlockRWLock */ -extern SDL_DECLSPEC int SDLCALL SDL_TryLockRWLockForReading(SDL_RWLock *rwlock) SDL_TRY_ACQUIRE_SHARED(0, rwlock); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TryLockRWLockForReading(SDL_RWLock *rwlock) SDL_TRY_ACQUIRE_SHARED(0, rwlock); /** * Try to lock a read/write lock _for writing_ without blocking. * * This works just like SDL_LockRWLockForWriting(), but if the rwlock is not - * available, this function returns `SDL_RWLOCK_TIMEDOUT` immediately. + * available, then this function returns SDL_FALSE immediately. * * This technique is useful if you need exclusive access to a resource but * don't want to wait for it, and will return to it to try again later. @@ -446,13 +417,10 @@ extern SDL_DECLSPEC int SDLCALL SDL_TryLockRWLockForReading(SDL_RWLock *rwlock) * read-only lock. Doing so results in undefined behavior. Unlock the * read-only lock before requesting a write lock. * - * This function does not fail; if rwlock is NULL, it will return 0 - * immediately having locked nothing. If rwlock is valid, this function will - * always either lock the rwlock and return 0, or return SDL_RWLOCK_TIMEOUT - * and lock nothing. + * This function returns SDL_TRUE if passed a NULL rwlock. * * \param rwlock the rwlock to try to lock. - * \returns 0 or `SDL_RWLOCK_TIMEDOUT`. + * \returns SDL_TRUE on success, SDL_FALSE if the lock would block. * * \since This function is available since SDL 3.0.0. * @@ -460,7 +428,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_TryLockRWLockForReading(SDL_RWLock *rwlock) * \sa SDL_TryLockRWLockForReading * \sa SDL_UnlockRWLock */ -extern SDL_DECLSPEC int SDLCALL SDL_TryLockRWLockForWriting(SDL_RWLock *rwlock) SDL_TRY_ACQUIRE(0, rwlock); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TryLockRWLockForWriting(SDL_RWLock *rwlock) SDL_TRY_ACQUIRE(0, rwlock); /** * Unlock the read/write lock. @@ -569,17 +537,14 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroySemaphore(SDL_Semaphore *sem); /** * Wait until a semaphore has a positive value and then decrements it. * - * This function suspends the calling thread until either the semaphore - * pointed to by `sem` has a positive value or the call is interrupted by a - * signal or error. If the call is successful it will atomically decrement the - * semaphore value. + * This function suspends the calling thread until the semaphore pointed to by + * `sem` has a positive value, and then atomically decrement the semaphore + * value. * * This function is the equivalent of calling SDL_WaitSemaphoreTimeout() with * a time length of -1. * * \param sem the semaphore wait on. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -587,7 +552,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroySemaphore(SDL_Semaphore *sem); * \sa SDL_TryWaitSemaphore * \sa SDL_WaitSemaphoreTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_WaitSemaphore(SDL_Semaphore *sem); +extern SDL_DECLSPEC void SDLCALL SDL_WaitSemaphore(SDL_Semaphore *sem); /** * See if a semaphore has a positive value and decrement it if it does. @@ -595,12 +560,10 @@ extern SDL_DECLSPEC int SDLCALL SDL_WaitSemaphore(SDL_Semaphore *sem); * This function checks to see if the semaphore pointed to by `sem` has a * positive value and atomically decrements the semaphore value if it does. If * the semaphore doesn't have a positive value, the function immediately - * returns SDL_MUTEX_TIMEDOUT. + * returns SDL_FALSE. * * \param sem the semaphore to wait on. - * \returns 0 if the wait succeeds, `SDL_MUTEX_TIMEDOUT` if the wait would - * block, or a negative error code on failure; call SDL_GetError() - * for more information. + * \returns SDL_TRUE if the wait succeeds, SDL_FALSE if the wait would block. * * \since This function is available since SDL 3.0.0. * @@ -608,21 +571,19 @@ extern SDL_DECLSPEC int SDLCALL SDL_WaitSemaphore(SDL_Semaphore *sem); * \sa SDL_WaitSemaphore * \sa SDL_WaitSemaphoreTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_TryWaitSemaphore(SDL_Semaphore *sem); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TryWaitSemaphore(SDL_Semaphore *sem); /** * Wait until a semaphore has a positive value and then decrements it. * * This function suspends the calling thread until either the semaphore - * pointed to by `sem` has a positive value, the call is interrupted by a - * signal or error, or the specified time has elapsed. If the call is - * successful it will atomically decrement the semaphore value. + * pointed to by `sem` has a positive value or the specified time has elapsed. + * If the call is successful it will atomically decrement the semaphore value. * * \param sem the semaphore to wait on. - * \param timeoutMS the length of the timeout, in milliseconds. - * \returns 0 if the wait succeeds, `SDL_MUTEX_TIMEDOUT` if the wait does not - * succeed in the allotted time, or a negative error code on failure; - * call SDL_GetError() for more information. + * \param timeoutMS the length of the timeout, in milliseconds, or -1 to wait + * indefinitely. + * \returns SDL_TRUE if the wait succeeds or SDL_FALSE if the wait times out. * * \since This function is available since SDL 3.0.0. * @@ -630,14 +591,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_TryWaitSemaphore(SDL_Semaphore *sem); * \sa SDL_TryWaitSemaphore * \sa SDL_WaitSemaphore */ -extern SDL_DECLSPEC int SDLCALL SDL_WaitSemaphoreTimeout(SDL_Semaphore *sem, Sint32 timeoutMS); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WaitSemaphoreTimeout(SDL_Semaphore *sem, Sint32 timeoutMS); /** * Atomically increment a semaphore's value and wake waiting threads. * * \param sem the semaphore to increment. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -645,7 +604,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_WaitSemaphoreTimeout(SDL_Semaphore *sem, Sin * \sa SDL_WaitSemaphore * \sa SDL_WaitSemaphoreTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_SignalSemaphore(SDL_Semaphore *sem); +extern SDL_DECLSPEC void SDLCALL SDL_SignalSemaphore(SDL_Semaphore *sem); /** * Get the current value of a semaphore. @@ -711,8 +670,6 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyCondition(SDL_Condition *cond); * Restart one of the threads that are waiting on the condition variable. * * \param cond the condition variable to signal. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -722,14 +679,12 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyCondition(SDL_Condition *cond); * \sa SDL_WaitCondition * \sa SDL_WaitConditionTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_SignalCondition(SDL_Condition *cond); +extern SDL_DECLSPEC void SDLCALL SDL_SignalCondition(SDL_Condition *cond); /** * Restart all threads that are waiting on the condition variable. * * \param cond the condition variable to signal. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -739,7 +694,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SignalCondition(SDL_Condition *cond); * \sa SDL_WaitCondition * \sa SDL_WaitConditionTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_BroadcastCondition(SDL_Condition *cond); +extern SDL_DECLSPEC void SDLCALL SDL_BroadcastCondition(SDL_Condition *cond); /** * Wait until a condition variable is signaled. @@ -758,8 +713,6 @@ extern SDL_DECLSPEC int SDLCALL SDL_BroadcastCondition(SDL_Condition *cond); * * \param cond the condition variable to wait on. * \param mutex the mutex used to coordinate thread access. - * \returns 0 when it is signaled or a negative error code on failure; call - * SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -769,7 +722,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BroadcastCondition(SDL_Condition *cond); * \sa SDL_SignalCondition * \sa SDL_WaitConditionTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_WaitCondition(SDL_Condition *cond, SDL_Mutex *mutex); +extern SDL_DECLSPEC void SDLCALL SDL_WaitCondition(SDL_Condition *cond, SDL_Mutex *mutex); /** * Wait until a condition variable is signaled or a certain time has passed. @@ -788,9 +741,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_WaitCondition(SDL_Condition *cond, SDL_Mutex * \param mutex the mutex used to coordinate thread access. * \param timeoutMS the maximum time to wait, in milliseconds, or -1 to wait * indefinitely. - * \returns 0 if the condition variable is signaled, `SDL_MUTEX_TIMEDOUT` if - * the condition is not signaled in the allotted time, or a negative - * error code on failure; call SDL_GetError() for more information. + * \returns SDL_TRUE if the condition variable is signaled, SDL_FALSE if the + * condition is not signaled in the allotted time. * * \threadsafety It is safe to call this function from any thread. * @@ -800,7 +752,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_WaitCondition(SDL_Condition *cond, SDL_Mutex * \sa SDL_SignalCondition * \sa SDL_WaitCondition */ -extern SDL_DECLSPEC int SDLCALL SDL_WaitConditionTimeout(SDL_Condition *cond, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WaitConditionTimeout(SDL_Condition *cond, SDL_Mutex *mutex, Sint32 timeoutMS); /* @} *//* Condition variable functions */ diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_oldnames.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_oldnames.h index cd895d5..02c881c 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_oldnames.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_oldnames.h @@ -40,7 +40,9 @@ /* ##SDL_atomic.h */ #define SDL_AtomicCAS SDL_AtomicCompareAndSwap #define SDL_AtomicCASPtr SDL_AtomicCompareAndSwapPointer +#define SDL_AtomicGetPtr SDL_AtomicGetPointer #define SDL_AtomicLock SDL_LockSpinlock +#define SDL_AtomicSetPtr SDL_AtomicSetPointer #define SDL_AtomicTryLock SDL_TryLockSpinlock #define SDL_AtomicUnlock SDL_UnlockSpinlock #define SDL_atomic_t SDL_AtomicInt @@ -116,6 +118,7 @@ #define SDL_DROPCOMPLETE SDL_EVENT_DROP_COMPLETE #define SDL_DROPFILE SDL_EVENT_DROP_FILE #define SDL_DROPTEXT SDL_EVENT_DROP_TEXT +#define SDL_DelEventWatch SDL_RemoveEventWatch #define SDL_FINGERDOWN SDL_EVENT_FINGER_DOWN #define SDL_FINGERMOTION SDL_EVENT_FINGER_MOTION #define SDL_FINGERUP SDL_EVENT_FINGER_UP @@ -296,6 +299,7 @@ #define SDL_MouseIsHaptic SDL_IsMouseHaptic /* ##SDL_hints.h */ +#define SDL_DelHintCallback SDL_RemoveHintCallback #define SDL_HINT_ALLOW_TOPMOST SDL_HINT_WINDOW_ALLOW_TOPMOST #define SDL_HINT_DIRECTINPUT_ENABLED SDL_HINT_JOYSTICK_DIRECTINPUT #define SDL_HINT_GDK_TEXTINPUT_DEFAULT SDL_HINT_GDK_TEXTINPUT_DEFAULT_TEXT @@ -523,7 +527,6 @@ #define SDL_RenderSetVSync SDL_SetRenderVSync #define SDL_RenderSetViewport SDL_SetRenderViewport #define SDL_RenderWindowToLogical SDL_RenderCoordinatesFromWindow -#define SDL_ScaleModeBest SDL_SCALEMODE_BEST #define SDL_ScaleModeLinear SDL_SCALEMODE_LINEAR #define SDL_ScaleModeNearest SDL_SCALEMODE_NEAREST @@ -660,7 +663,9 @@ /* ##SDL_atomic.h */ #define SDL_AtomicCAS SDL_AtomicCAS_renamed_SDL_AtomicCompareAndSwap #define SDL_AtomicCASPtr SDL_AtomicCASPtr_renamed_SDL_AtomicCompareAndSwapPointer +#define SDL_AtomicGetPtr SDL_AtomicGetPtr_renamed_SDL_AtomicGetPointer #define SDL_AtomicLock SDL_AtomicLock_renamed_SDL_LockSpinlock +#define SDL_AtomicSetPtr SDL_AtomicSetPtr_renamed_SDL_AtomicSetPointer #define SDL_AtomicTryLock SDL_AtomicTryLock_renamed_SDL_TryLockSpinlock #define SDL_AtomicUnlock SDL_AtomicUnlock_renamed_SDL_UnlockSpinlock #define SDL_atomic_t SDL_atomic_t_renamed_SDL_AtomicInt @@ -736,6 +741,7 @@ #define SDL_DROPCOMPLETE SDL_DROPCOMPLETE_renamed_SDL_EVENT_DROP_COMPLETE #define SDL_DROPFILE SDL_DROPFILE_renamed_SDL_EVENT_DROP_FILE #define SDL_DROPTEXT SDL_DROPTEXT_renamed_SDL_EVENT_DROP_TEXT +#define SDL_DelEventWatch SDL_DelEventWatch_renamed_SDL_RemoveEventWatch #define SDL_FINGERDOWN SDL_FINGERDOWN_renamed_SDL_EVENT_FINGER_DOWN #define SDL_FINGERMOTION SDL_FINGERMOTION_renamed_SDL_EVENT_FINGER_MOTION #define SDL_FINGERUP SDL_FINGERUP_renamed_SDL_EVENT_FINGER_UP @@ -917,6 +923,7 @@ #define SDL_MouseIsHaptic SDL_MouseIsHaptic_renamed_SDL_IsMouseHaptic /* ##SDL_hints.h */ +#define SDL_DelHintCallback SDL_DelHintCallback_renamed_SDL_RemoveHintCallback #define SDL_HINT_ALLOW_TOPMOST SDL_HINT_ALLOW_TOPMOST_renamed_SDL_HINT_WINDOW_ALLOW_TOPMOST #define SDL_HINT_DIRECTINPUT_ENABLED SDL_HINT_DIRECTINPUT_ENABLED_renamed_SDL_HINT_JOYSTICK_DIRECTINPUT #define SDL_HINT_GDK_TEXTINPUT_DEFAULT SDL_HINT_GDK_TEXTINPUT_DEFAULT_renamed_SDL_HINT_GDK_TEXTINPUT_DEFAULT_TEXT @@ -1144,7 +1151,6 @@ #define SDL_RenderSetVSync SDL_RenderSetVSync_renamed_SDL_SetRenderVSync #define SDL_RenderSetViewport SDL_RenderSetViewport_renamed_SDL_SetRenderViewport #define SDL_RenderWindowToLogical SDL_RenderWindowToLogical_renamed_SDL_RenderCoordinatesFromWindow -#define SDL_ScaleModeBest SDL_ScaleModeBest_renamed_SDL_SCALEMODE_BEST #define SDL_ScaleModeLinear SDL_ScaleModeLinear_renamed_SDL_SCALEMODE_LINEAR #define SDL_ScaleModeNearest SDL_ScaleModeNearest_renamed_SDL_SCALEMODE_NEAREST diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_opengl_glext.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_opengl_glext.h index ff6ad12..fa0f6c2 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_opengl_glext.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_opengl_glext.h @@ -9807,15 +9807,15 @@ typedef void (APIENTRYP PFNGLUPLOADGPUMASKNVXPROC) (GLbitfield mask); typedef void (APIENTRYP PFNGLMULTICASTVIEWPORTARRAYVNVXPROC) (GLuint gpu, GLuint first, GLsizei count, const GLfloat *v); typedef void (APIENTRYP PFNGLMULTICASTVIEWPORTPOSITIONWSCALENVXPROC) (GLuint gpu, GLuint index, GLfloat xcoeff, GLfloat ycoeff); typedef void (APIENTRYP PFNGLMULTICASTSCISSORARRAYVNVXPROC) (GLuint gpu, GLuint first, GLsizei count, const GLint *v); -typedef GLuint (APIENTRYP PFNGLASYNCCOPYBUFFERSUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); -typedef GLuint (APIENTRYP PFNGLASYNCCOPYIMAGESUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); +typedef GLuint (APIENTRYP PFNGLASYNCCOPYBUFFERSUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGPU, GLbitfield writeGPUMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); +typedef GLuint (APIENTRYP PFNGLASYNCCOPYIMAGESUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGPU, GLbitfield dstGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); #ifdef GL_GLEXT_PROTOTYPES -GLAPI void APIENTRY glUploadGpuMaskNVX (GLbitfield mask); +GLAPI void APIENTRY glUploadGPUMaskNVX (GLbitfield mask); GLAPI void APIENTRY glMulticastViewportArrayvNVX (GLuint gpu, GLuint first, GLsizei count, const GLfloat *v); GLAPI void APIENTRY glMulticastViewportPositionWScaleNVX (GLuint gpu, GLuint index, GLfloat xcoeff, GLfloat ycoeff); GLAPI void APIENTRY glMulticastScissorArrayvNVX (GLuint gpu, GLuint first, GLsizei count, const GLint *v); -GLAPI GLuint APIENTRY glAsyncCopyBufferSubDataNVX (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); -GLAPI GLuint APIENTRY glAsyncCopyImageSubDataNVX (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); +GLAPI GLuint APIENTRY glAsyncCopyBufferSubDataNVX (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGPU, GLbitfield writeGPUMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); +GLAPI GLuint APIENTRY glAsyncCopyImageSubDataNVX (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGPU, GLbitfield dstGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); #endif #endif /* GL_NVX_gpu_multicast2 */ @@ -9824,11 +9824,11 @@ GLAPI GLuint APIENTRY glAsyncCopyImageSubDataNVX (GLsizei waitSemaphoreCount, co #define GL_LGPU_SEPARATE_STORAGE_BIT_NVX 0x0800 #define GL_MAX_LGPU_GPUS_NVX 0x92BA typedef void (APIENTRYP PFNGLLGPUNAMEDBUFFERSUBDATANVXPROC) (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); -typedef void (APIENTRYP PFNGLLGPUCOPYIMAGESUBDATANVXPROC) (GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); +typedef void (APIENTRYP PFNGLLGPUCOPYIMAGESUBDATANVXPROC) (GLuint sourceGPU, GLbitfield destinationGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); typedef void (APIENTRYP PFNGLLGPUINTERLOCKNVXPROC) (void); #ifdef GL_GLEXT_PROTOTYPES GLAPI void APIENTRY glLGPUNamedBufferSubDataNVX (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); -GLAPI void APIENTRY glLGPUCopyImageSubDataNVX (GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); +GLAPI void APIENTRY glLGPUCopyImageSubDataNVX (GLuint sourceGPU, GLbitfield destinationGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); GLAPI void APIENTRY glLGPUInterlockNVX (void); #endif #endif /* GL_NVX_linked_gpu_multicast */ @@ -9836,13 +9836,13 @@ GLAPI void APIENTRY glLGPUInterlockNVX (void); #ifndef GL_NVX_progress_fence #define GL_NVX_progress_fence 1 typedef GLuint (APIENTRYP PFNGLCREATEPROGRESSFENCENVXPROC) (void); -typedef void (APIENTRYP PFNGLSIGNALSEMAPHOREUI64NVXPROC) (GLuint signalGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); -typedef void (APIENTRYP PFNGLWAITSEMAPHOREUI64NVXPROC) (GLuint waitGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); +typedef void (APIENTRYP PFNGLSIGNALSEMAPHOREUI64NVXPROC) (GLuint signalGPU, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); +typedef void (APIENTRYP PFNGLWAITSEMAPHOREUI64NVXPROC) (GLuint waitGPU, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); typedef void (APIENTRYP PFNGLCLIENTWAITSEMAPHOREUI64NVXPROC) (GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); #ifdef GL_GLEXT_PROTOTYPES GLAPI GLuint APIENTRY glCreateProgressFenceNVX (void); -GLAPI void APIENTRY glSignalSemaphoreui64NVX (GLuint signalGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); -GLAPI void APIENTRY glWaitSemaphoreui64NVX (GLuint waitGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); +GLAPI void APIENTRY glSignalSemaphoreui64NVX (GLuint signalGPU, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); +GLAPI void APIENTRY glWaitSemaphoreui64NVX (GLuint waitGPU, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); GLAPI void APIENTRY glClientWaitSemaphoreui64NVX (GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); #endif #endif /* GL_NVX_progress_fence */ @@ -10433,25 +10433,25 @@ GLAPI void APIENTRY glFramebufferTextureFaceEXT (GLenum target, GLenum attachmen #define GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV 0x9549 typedef void (APIENTRYP PFNGLRENDERGPUMASKNVPROC) (GLbitfield mask); typedef void (APIENTRYP PFNGLMULTICASTBUFFERSUBDATANVPROC) (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); -typedef void (APIENTRYP PFNGLMULTICASTCOPYBUFFERSUBDATANVPROC) (GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); -typedef void (APIENTRYP PFNGLMULTICASTCOPYIMAGESUBDATANVPROC) (GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); -typedef void (APIENTRYP PFNGLMULTICASTBLITFRAMEBUFFERNVPROC) (GLuint srcGpu, GLuint dstGpu, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +typedef void (APIENTRYP PFNGLMULTICASTCOPYBUFFERSUBDATANVPROC) (GLuint readGPU, GLbitfield writeGPUMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); +typedef void (APIENTRYP PFNGLMULTICASTCOPYIMAGESUBDATANVPROC) (GLuint srcGPU, GLbitfield dstGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); +typedef void (APIENTRYP PFNGLMULTICASTBLITFRAMEBUFFERNVPROC) (GLuint srcGPU, GLuint dstGPU, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); typedef void (APIENTRYP PFNGLMULTICASTFRAMEBUFFERSAMPLELOCATIONSFVNVPROC) (GLuint gpu, GLuint framebuffer, GLuint start, GLsizei count, const GLfloat *v); typedef void (APIENTRYP PFNGLMULTICASTBARRIERNVPROC) (void); -typedef void (APIENTRYP PFNGLMULTICASTWAITSYNCNVPROC) (GLuint signalGpu, GLbitfield waitGpuMask); +typedef void (APIENTRYP PFNGLMULTICASTWAITSYNCNVPROC) (GLuint signalGPU, GLbitfield waitGPUMask); typedef void (APIENTRYP PFNGLMULTICASTGETQUERYOBJECTIVNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLint *params); typedef void (APIENTRYP PFNGLMULTICASTGETQUERYOBJECTUIVNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLuint *params); typedef void (APIENTRYP PFNGLMULTICASTGETQUERYOBJECTI64VNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLint64 *params); typedef void (APIENTRYP PFNGLMULTICASTGETQUERYOBJECTUI64VNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLuint64 *params); #ifdef GL_GLEXT_PROTOTYPES -GLAPI void APIENTRY glRenderGpuMaskNV (GLbitfield mask); +GLAPI void APIENTRY glRenderGPUMaskNV (GLbitfield mask); GLAPI void APIENTRY glMulticastBufferSubDataNV (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); -GLAPI void APIENTRY glMulticastCopyBufferSubDataNV (GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); -GLAPI void APIENTRY glMulticastCopyImageSubDataNV (GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); -GLAPI void APIENTRY glMulticastBlitFramebufferNV (GLuint srcGpu, GLuint dstGpu, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +GLAPI void APIENTRY glMulticastCopyBufferSubDataNV (GLuint readGPU, GLbitfield writeGPUMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); +GLAPI void APIENTRY glMulticastCopyImageSubDataNV (GLuint srcGPU, GLbitfield dstGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); +GLAPI void APIENTRY glMulticastBlitFramebufferNV (GLuint srcGPU, GLuint dstGPU, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); GLAPI void APIENTRY glMulticastFramebufferSampleLocationsfvNV (GLuint gpu, GLuint framebuffer, GLuint start, GLsizei count, const GLfloat *v); GLAPI void APIENTRY glMulticastBarrierNV (void); -GLAPI void APIENTRY glMulticastWaitSyncNV (GLuint signalGpu, GLbitfield waitGpuMask); +GLAPI void APIENTRY glMulticastWaitSyncNV (GLuint signalGPU, GLbitfield waitGPUMask); GLAPI void APIENTRY glMulticastGetQueryObjectivNV (GLuint gpu, GLuint id, GLenum pname, GLint *params); GLAPI void APIENTRY glMulticastGetQueryObjectuivNV (GLuint gpu, GLuint id, GLenum pname, GLuint *params); GLAPI void APIENTRY glMulticastGetQueryObjecti64vNV (GLuint gpu, GLuint id, GLenum pname, GLint64 *params); diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_pen.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_pen.h index c02c008..cda4f0f 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_pen.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_pen.h @@ -22,56 +22,65 @@ /** * # CategoryPen * - * Include file for SDL pen event handling. + * SDL pen event handling. * - * This file describes operations for pressure-sensitive pen (stylus and/or - * eraser) handling, e.g., for input and drawing tablets or suitably equipped - * mobile / tablet devices. + * SDL provides an API for pressure-sensitive pen (stylus and/or eraser) + * handling, e.g., for input and drawing tablets or suitably equipped mobile / + * tablet devices. * - * To get started with pens: + * To get started with pens, simply handle SDL_EVENT_PEN_* events. When a pen + * starts providing input, SDL will assign it a unique SDL_PenID, which will + * remain for the life of the process, as long as the pen stays connected. * - * - Listen to SDL_PenMotionEvent and SDL_PenButtonEvent - * - To avoid treating pen events as mouse events, ignore SDL_MouseMotionEvent - * and SDL_MouseButtonEvent whenever `which` == SDL_PEN_MOUSEID. - * - * We primarily identify pens by SDL_PenID. The implementation makes a best - * effort to relate each SDL_PenID to the same physical device during a - * session. Formerly valid SDL_PenID values remain valid even if a device - * disappears. - * - * For identifying pens across sessions, the API provides the type SDL_GUID . + * Pens may provide more than simple touch input; they might have other axes, + * such as pressure, tilt, rotation, etc. */ #ifndef SDL_pen_h_ #define SDL_pen_h_ #include -#include -#include -#include /* Set up for C function definitions, even when using C++ */ #ifdef __cplusplus extern "C" { #endif -typedef Uint32 SDL_PenID; /**< SDL_PenIDs identify pens uniquely within a session */ +/** + * SDL pen instance IDs. + * + * Zero is used to signify an invalid/null device. + * + * These show up in pen events when SDL sees input from them. They remain + * consistent as long as SDL can recognize a tool to be the same pen; but if a + * pen physically leaves the area and returns, it might get a new ID. + * + * \since This datatype is available since SDL 3.0.0. + */ +typedef Uint32 SDL_PenID; -#define SDL_PEN_INVALID ((SDL_PenID)0) /**< Reserved invalid SDL_PenID is valid */ - -#define SDL_PEN_MOUSEID ((SDL_MouseID)-2) /**< Device ID for mouse events triggered by pen events */ - -#define SDL_PEN_INFO_UNKNOWN (-1) /**< Marks unknown information when querying the pen */ /** - * Pen axis indices + * Pen input flags, as reported by various pen events' `pen_state` field. * - * Below are the valid indices to the "axis" array from SDL_PenMotionEvent and - * SDL_PenButtonEvent. The axis indices form a contiguous range of ints from 0 - * to SDL_PEN_AXIS_LAST, inclusive. All "axis[]" entries are either normalised - * to 0..1 or report a (positive or negative) angle in degrees, with 0.0 - * representing the centre. Not all pens/backends support all axes: - * unsupported entries are always "0.0f". + * \since This datatype is available since SDL 3.0.0. + */ +typedef Uint32 SDL_PenInputFlags; +#define SDL_PEN_INPUT_DOWN (1u << 0) /**< & to see if pen is pressed down */ +#define SDL_PEN_INPUT_BUTTON_1 (1u << 1) /**< & to see if button 1 is pressed */ +#define SDL_PEN_INPUT_BUTTON_2 (1u << 2) /**< & to see if button 2 is pressed */ +#define SDL_PEN_INPUT_BUTTON_3 (1u << 3) /**< & to see if button 3 is pressed */ +#define SDL_PEN_INPUT_BUTTON_4 (1u << 4) /**< & to see if button 4 is pressed */ +#define SDL_PEN_INPUT_BUTTON_5 (1u << 5) /**< & to see if button 5 is pressed */ +#define SDL_PEN_INPUT_ERASER_TIP (1u << 30) /**< & to see if eraser tip is used */ + +/** + * Pen axis indices. + * + * These are the valid values for the `axis` field in SDL_PenAxisEvent. All + * axes are either normalised to 0..1 or report a (positive or negative) angle + * in degrees, with 0.0 representing the centre. Not all pens/backends support + * all axes: unsupported axes are always zero. * * To convert angles for tilt and rotation into vector representation, use * SDL_sinf on the XTILT, YTILT, or ROTATION component, for example: @@ -82,200 +91,18 @@ typedef Uint32 SDL_PenID; /**< SDL_PenIDs identify pens uniquely within a sessio */ typedef enum SDL_PenAxis { - SDL_PEN_AXIS_PRESSURE = 0, /**< Pen pressure. Unidirectional: 0..1.0 */ - SDL_PEN_AXIS_XTILT, /**< Pen horizontal tilt angle. Bidirectional: -90.0..90.0 (left-to-right). - The physical max/min tilt may be smaller than -90.0 / 90.0, cf. SDL_PenCapabilityInfo */ - SDL_PEN_AXIS_YTILT, /**< Pen vertical tilt angle. Bidirectional: -90.0..90.0 (top-to-down). - The physical max/min tilt may be smaller than -90.0 / 90.0, cf. SDL_PenCapabilityInfo */ - SDL_PEN_AXIS_DISTANCE, /**< Pen distance to drawing surface. Unidirectional: 0.0..1.0 */ - SDL_PEN_AXIS_ROTATION, /**< Pen barrel rotation. Bidirectional: -180..179.9 (clockwise, 0 is facing up, -180.0 is facing down). */ - SDL_PEN_AXIS_SLIDER, /**< Pen finger wheel or slider (e.g., Airbrush Pen). Unidirectional: 0..1.0 */ - SDL_PEN_NUM_AXES, /**< Last valid axis index */ - SDL_PEN_AXIS_LAST = SDL_PEN_NUM_AXES - 1 /**< Last axis index plus 1 */ + SDL_PEN_AXIS_PRESSURE, /**< Pen pressure. Unidirectional: 0 to 1.0 */ + SDL_PEN_AXIS_XTILT, /**< Pen horizontal tilt angle. Bidirectional: -90.0 to 90.0 (left-to-right). + The physical max/min tilt may be smaller than -90.0 / 90.0, check SDL_PenCapabilityInfo */ + SDL_PEN_AXIS_YTILT, /**< Pen vertical tilt angle. Bidirectional: -90.0 to 90.0 (top-to-down). + The physical max/min tilt may be smaller than -90.0 / 90.0 check SDL_PenCapabilityInfo */ + SDL_PEN_AXIS_DISTANCE, /**< Pen distance to drawing surface. Unidirectional: 0.0 to 1.0 */ + SDL_PEN_AXIS_ROTATION, /**< Pen barrel rotation. Bidirectional: -180 to 179.9 (clockwise, 0 is facing up, -180.0 is facing down). */ + SDL_PEN_AXIS_SLIDER, /**< Pen finger wheel or slider (e.g., Airbrush Pen). Unidirectional: 0 to 1.0 */ + SDL_PEN_AXIS_TANGENTIAL_PRESSURE, /**< Pressure from squeezing the pen ("barrel pressure"). */ + SDL_PEN_NUM_AXES /**< Total known pen axis types in this version of SDL. This number may grow in future releases! */ } SDL_PenAxis; -/* Pen flags. These share a bitmask space with SDL_BUTTON_LEFT and friends. */ -#define SDL_PEN_FLAG_DOWN_BIT_INDEX 13 /* Bit for storing that pen is touching the surface */ -#define SDL_PEN_FLAG_INK_BIT_INDEX 14 /* Bit for storing has-non-eraser-capability status */ -#define SDL_PEN_FLAG_ERASER_BIT_INDEX 15 /* Bit for storing is-eraser or has-eraser-capability property */ -#define SDL_PEN_FLAG_AXIS_BIT_OFFSET 16 /* Bit for storing has-axis-0 property */ - -#define SDL_PEN_CAPABILITY(capbit) (1ul << (capbit)) -#define SDL_PEN_AXIS_CAPABILITY(axis) SDL_PEN_CAPABILITY((axis) + SDL_PEN_FLAG_AXIS_BIT_OFFSET) - -/* Pen tips */ -#define SDL_PEN_TIP_INK SDL_PEN_FLAG_INK_BIT_INDEX /**< Regular pen tip (for drawing) touched the surface */ -#define SDL_PEN_TIP_ERASER SDL_PEN_FLAG_ERASER_BIT_INDEX /**< Eraser pen tip touched the surface */ - -/** - * Pen capabilities reported by SDL_GetPenCapabilities. - * - * \since This datatype is available since SDL 3.0.0. - */ -typedef Uint32 SDL_PenCapabilityFlags; - -#define SDL_PEN_DOWN_MASK SDL_PEN_CAPABILITY(SDL_PEN_FLAG_DOWN_BIT_INDEX) /**< Pen tip is currently touching the drawing surface. */ -#define SDL_PEN_INK_MASK SDL_PEN_CAPABILITY(SDL_PEN_FLAG_INK_BIT_INDEX) /**< Pen has a regular drawing tip (SDL_GetPenCapabilities). For events (SDL_PenButtonEvent, SDL_PenMotionEvent, SDL_GetPenStatus) this flag is mutually exclusive with SDL_PEN_ERASER_MASK . */ -#define SDL_PEN_ERASER_MASK SDL_PEN_CAPABILITY(SDL_PEN_FLAG_ERASER_BIT_INDEX) /**< Pen has an eraser tip (SDL_GetPenCapabilities) or is being used as eraser (SDL_PenButtonEvent , SDL_PenMotionEvent , SDL_GetPenStatus) */ -#define SDL_PEN_AXIS_PRESSURE_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_PRESSURE) /**< Pen provides pressure information in axis SDL_PEN_AXIS_PRESSURE */ -#define SDL_PEN_AXIS_XTILT_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_XTILT) /**< Pen provides horizontal tilt information in axis SDL_PEN_AXIS_XTILT */ -#define SDL_PEN_AXIS_YTILT_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_YTILT) /**< Pen provides vertical tilt information in axis SDL_PEN_AXIS_YTILT */ -#define SDL_PEN_AXIS_DISTANCE_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_DISTANCE) /**< Pen provides distance to drawing tablet in SDL_PEN_AXIS_DISTANCE */ -#define SDL_PEN_AXIS_ROTATION_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_ROTATION) /**< Pen provides barrel rotation information in axis SDL_PEN_AXIS_ROTATION */ -#define SDL_PEN_AXIS_SLIDER_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_SLIDER) /**< Pen provides slider / finger wheel or similar in axis SDL_PEN_AXIS_SLIDER */ -#define SDL_PEN_AXIS_BIDIRECTIONAL_MASKS (SDL_PEN_AXIS_XTILT_MASK | SDL_PEN_AXIS_YTILT_MASK) - -/** - * Pen types - * - * Some pens identify as a particular type of drawing device (e.g., an - * airbrush or a pencil). - * - * \since This enum is available since SDL 3.0.0 - */ -typedef enum SDL_PenSubtype -{ - SDL_PEN_TYPE_UNKNOWN = 0, - SDL_PEN_TYPE_ERASER = 1, /**< Eraser */ - SDL_PEN_TYPE_PEN, /**< Generic pen; this is the default. */ - SDL_PEN_TYPE_PENCIL, /**< Pencil */ - SDL_PEN_TYPE_BRUSH, /**< Brush-like device */ - SDL_PEN_TYPE_AIRBRUSH, /**< Airbrush device that "sprays" ink */ - SDL_PEN_TYPE_LAST = SDL_PEN_TYPE_AIRBRUSH /**< Last valid pen type */ -} SDL_PenSubtype; - - -/* Function prototypes */ - -/** - * Retrieves all pens that are connected to the system. - * - * Yields an array of SDL_PenID values. These identify and track pens - * throughout a session. To track pens across sessions (program restart), use - * SDL_GUID . - * - * \param count the number of pens in the array (number of array elements - * minus 1, i.e., not counting the terminator 0). - * \returns a 0 terminated array of SDL_PenID values, or NULL on failure. The - * array must be freed with SDL_free(). On a NULL return, - * SDL_GetError() is set. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_PenID * SDLCALL SDL_GetPens(int *count); - -/** - * Retrieves the pen's current status. - * - * If the pen is detached (cf. SDL_PenConnected), this operation may return - * default values. - * - * \param instance_id the pen to query. - * \param x out-mode parameter for pen x coordinate. May be NULL. - * \param y out-mode parameter for pen y coordinate. May be NULL. - * \param axes out-mode parameter for axis information. May be null. The axes - * are in the same order as SDL_PenAxis. - * \param num_axes maximum number of axes to write to "axes". - * \returns a bit mask with the current pen button states (SDL_BUTTON_LMASK - * etc.), possibly SDL_PEN_DOWN_MASK, and exactly one of - * SDL_PEN_INK_MASK or SDL_PEN_ERASER_MASK , or 0 on error (see - * SDL_GetError()). - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC Uint32 SDLCALL SDL_GetPenStatus(SDL_PenID instance_id, float *x, float *y, float *axes, size_t num_axes); - -/** - * Retrieves an SDL_PenID for the given SDL_GUID. - * - * \param guid a pen GUID. - * \returns a valid SDL_PenID, or SDL_PEN_INVALID if there is no matching - * SDL_PenID. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_PenID SDLCALL SDL_GetPenFromGUID(SDL_GUID guid); - -/** - * Retrieves the SDL_GUID for a given SDL_PenID. - * - * \param instance_id the pen to query. - * \returns the corresponding pen GUID; persistent across multiple sessions. - * If "instance_id" is SDL_PEN_INVALID, returns an all-zeroes GUID. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_GUID SDLCALL SDL_GetPenGUID(SDL_PenID instance_id); - -/** - * Checks whether a pen is still attached. - * - * If a pen is detached, it will not show up for SDL_GetPens(). Other - * operations will still be available but may return default values. - * - * \param instance_id a pen ID. - * \returns SDL_TRUE if "instance_id" is valid and the corresponding pen is - * attached, or SDL_FALSE otherwise. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PenConnected(SDL_PenID instance_id); - -/** - * Retrieves a human-readable description for a SDL_PenID. - * - * \param instance_id the pen to query. - * \returns a string that contains the name of the pen, intended for human - * consumption. The string might or might not be localised, depending - * on platform settings. It is not guaranteed to be unique; use - * SDL_GetPenGUID() for (best-effort) unique identifiers. The pointer - * is managed by the SDL pen subsystem and must not be deallocated. - * The pointer remains valid until SDL is shut down. Returns NULL on - * error (cf. SDL_GetError()). - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC const char * SDLCALL SDL_GetPenName(SDL_PenID instance_id); - -/** - * Pen capabilities, as reported by SDL_GetPenCapabilities() - * - * \since This struct is available since SDL 3.0.0. - */ -typedef struct SDL_PenCapabilityInfo -{ - float max_tilt; /**< Physical maximum tilt angle, for XTILT and YTILT, or SDL_PEN_INFO_UNKNOWN . Pens cannot typically tilt all the way to 90 degrees, so this value is usually less than 90.0. */ - Uint32 wacom_id; /**< For Wacom devices: wacom tool type ID, otherwise 0 (useful e.g. with libwacom) */ - Sint8 num_buttons; /**< Number of pen buttons (not counting the pen tip), or SDL_PEN_INFO_UNKNOWN */ -} SDL_PenCapabilityInfo; - -/** - * Retrieves capability flags for a given SDL_PenID. - * - * \param instance_id the pen to query. - * \param capabilities detail information about pen capabilities, such as the - * number of buttons. - * \returns a set of capability flags, cf. SDL_PEN_CAPABILITIES. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_PenCapabilityFlags SDLCALL SDL_GetPenCapabilities(SDL_PenID instance_id, SDL_PenCapabilityInfo *capabilities); - -/** - * Retrieves the pen type for a given SDL_PenID. - * - * \param instance_id the pen to query. - * \returns the corresponding pen type (cf. SDL_PenSubtype) or 0 on error. - * Note that the pen type does not dictate whether the pen tip is - * SDL_PEN_TIP_INK or SDL_PEN_TIP_ERASER; to determine whether a pen - * is being used for drawing or in eraser mode, check either the pen - * tip on SDL_EVENT_PEN_DOWN, or the flag SDL_PEN_ERASER_MASK in the - * pen state. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_PenSubtype SDLCALL SDL_GetPenType(SDL_PenID instance_id); - /* Ends C function definitions when using C++ */ #ifdef __cplusplus } diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_pixels.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_pixels.h index 851d595..3825dd5 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_pixels.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_pixels.h @@ -742,8 +742,8 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetPixelFormatName(SDL_PixelFormat * \param Gmask a pointer filled in with the green mask for the format. * \param Bmask a pointer filled in with the blue mask for the format. * \param Amask a pointer filled in with the alpha mask for the format. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -751,7 +751,7 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetPixelFormatName(SDL_PixelFormat * * \sa SDL_GetPixelFormatForMasks */ -extern SDL_DECLSPEC int SDLCALL SDL_GetMasksForPixelFormat(SDL_PixelFormat format, int *bpp, Uint32 *Rmask, Uint32 *Gmask, Uint32 *Bmask, Uint32 *Amask); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetMasksForPixelFormat(SDL_PixelFormat format, int *bpp, Uint32 *Rmask, Uint32 *Gmask, Uint32 *Bmask, Uint32 *Amask); /** * Convert a bpp value and RGBA masks to an enumerated pixel format. @@ -819,15 +819,15 @@ extern SDL_DECLSPEC SDL_Palette * SDLCALL SDL_CreatePalette(int ncolors); * \param colors an array of SDL_Color structures to copy into the palette. * \param firstcolor the index of the first palette entry to modify. * \param ncolors the number of entries to modify. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as long as * the palette is not modified or destroyed in another thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetPaletteColors(SDL_Palette *palette, const SDL_Color *colors, int firstcolor, int ncolors); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetPaletteColors(SDL_Palette *palette, const SDL_Color *colors, int firstcolor, int ncolors); /** * Free a palette created with SDL_CreatePalette(). @@ -874,6 +874,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyPalette(SDL_Palette *palette); * * \since This function is available since SDL 3.0.0. * + * \sa SDL_GetPixelFormatDetails * \sa SDL_GetRGB * \sa SDL_MapRGBA * \sa SDL_MapSurfaceRGB @@ -912,6 +913,7 @@ extern SDL_DECLSPEC Uint32 SDLCALL SDL_MapRGB(const SDL_PixelFormatDetails *form * * \since This function is available since SDL 3.0.0. * + * \sa SDL_GetPixelFormatDetails * \sa SDL_GetRGBA * \sa SDL_MapRGB * \sa SDL_MapSurfaceRGBA @@ -939,6 +941,7 @@ extern SDL_DECLSPEC Uint32 SDLCALL SDL_MapRGBA(const SDL_PixelFormatDetails *for * * \since This function is available since SDL 3.0.0. * + * \sa SDL_GetPixelFormatDetails * \sa SDL_GetRGBA * \sa SDL_MapRGB * \sa SDL_MapRGBA @@ -970,6 +973,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_GetRGB(Uint32 pixel, const SDL_PixelFormatD * * \since This function is available since SDL 3.0.0. * + * \sa SDL_GetPixelFormatDetails * \sa SDL_GetRGB * \sa SDL_MapRGB * \sa SDL_MapRGBA diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_properties.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_properties.h index b3e061a..c3a2c82 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_properties.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_properties.h @@ -116,14 +116,14 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_CreateProperties(void); * * \param src the properties to copy. * \param dst the destination properties. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_CopyProperties(SDL_PropertiesID src, SDL_PropertiesID dst); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CopyProperties(SDL_PropertiesID src, SDL_PropertiesID dst); /** * Lock a group of properties. @@ -138,8 +138,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_CopyProperties(SDL_PropertiesID src, SDL_Pro * thread. * * \param props the properties to lock. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -147,7 +147,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_CopyProperties(SDL_PropertiesID src, SDL_Pro * * \sa SDL_UnlockProperties */ -extern SDL_DECLSPEC int SDLCALL SDL_LockProperties(SDL_PropertiesID props); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LockProperties(SDL_PropertiesID props); /** * Unlock a group of properties. @@ -204,8 +204,8 @@ typedef void (SDLCALL *SDL_CleanupPropertyCallback)(void *userdata, void *value) * \param cleanup the function to call when this property is deleted, or NULL * if no cleanup is necessary. * \param userdata a pointer that is passed to the cleanup function. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -215,7 +215,7 @@ typedef void (SDLCALL *SDL_CleanupPropertyCallback)(void *userdata, void *value) * \sa SDL_SetPointerProperty * \sa SDL_CleanupPropertyCallback */ -extern SDL_DECLSPEC int SDLCALL SDL_SetPointerPropertyWithCleanup(SDL_PropertiesID props, const char *name, void *value, SDL_CleanupPropertyCallback cleanup, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetPointerPropertyWithCleanup(SDL_PropertiesID props, const char *name, void *value, SDL_CleanupPropertyCallback cleanup, void *userdata); /** * Set a pointer property in a group of properties. @@ -223,8 +223,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetPointerPropertyWithCleanup(SDL_Properties * \param props the properties to modify. * \param name the name of the property to modify. * \param value the new value of the property, or NULL to delete the property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -238,7 +238,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetPointerPropertyWithCleanup(SDL_Properties * \sa SDL_SetPointerPropertyWithCleanup * \sa SDL_SetStringProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetPointerProperty(SDL_PropertiesID props, const char *name, void *value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetPointerProperty(SDL_PropertiesID props, const char *name, void *value); /** * Set a string property in a group of properties. @@ -249,8 +249,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetPointerProperty(SDL_PropertiesID props, c * \param props the properties to modify. * \param name the name of the property to modify. * \param value the new value of the property, or NULL to delete the property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -258,7 +258,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetPointerProperty(SDL_PropertiesID props, c * * \sa SDL_GetStringProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetStringProperty(SDL_PropertiesID props, const char *name, const char *value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetStringProperty(SDL_PropertiesID props, const char *name, const char *value); /** * Set an integer property in a group of properties. @@ -266,8 +266,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetStringProperty(SDL_PropertiesID props, co * \param props the properties to modify. * \param name the name of the property to modify. * \param value the new value of the property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -275,7 +275,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetStringProperty(SDL_PropertiesID props, co * * \sa SDL_GetNumberProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetNumberProperty(SDL_PropertiesID props, const char *name, Sint64 value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetNumberProperty(SDL_PropertiesID props, const char *name, Sint64 value); /** * Set a floating point property in a group of properties. @@ -283,8 +283,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetNumberProperty(SDL_PropertiesID props, co * \param props the properties to modify. * \param name the name of the property to modify. * \param value the new value of the property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -292,7 +292,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetNumberProperty(SDL_PropertiesID props, co * * \sa SDL_GetFloatProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetFloatProperty(SDL_PropertiesID props, const char *name, float value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetFloatProperty(SDL_PropertiesID props, const char *name, float value); /** * Set a boolean property in a group of properties. @@ -300,8 +300,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetFloatProperty(SDL_PropertiesID props, con * \param props the properties to modify. * \param name the name of the property to modify. * \param value the new value of the property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -309,7 +309,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetFloatProperty(SDL_PropertiesID props, con * * \sa SDL_GetBooleanProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetBooleanProperty(SDL_PropertiesID props, const char *name, SDL_bool value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetBooleanProperty(SDL_PropertiesID props, const char *name, SDL_bool value); /** * Return whether a property exists in a group of properties. @@ -470,14 +470,14 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetBooleanProperty(SDL_PropertiesID pro * * \param props the properties to modify. * \param name the name of the property to clear. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearProperty(SDL_PropertiesID props, const char *name); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearProperty(SDL_PropertiesID props, const char *name); /** * A callback used to enumerate all the properties in a group of properties. @@ -507,14 +507,14 @@ typedef void (SDLCALL *SDL_EnumeratePropertiesCallback)(void *userdata, SDL_Prop * \param props the properties to query. * \param callback the function to call for each property. * \param userdata a pointer that is passed to `callback`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_EnumerateProperties(SDL_PropertiesID props, SDL_EnumeratePropertiesCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_EnumerateProperties(SDL_PropertiesID props, SDL_EnumeratePropertiesCallback callback, void *userdata); /** * Destroy a group of properties. diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_rect.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_rect.h index 0583300..ea97df9 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_rect.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_rect.h @@ -221,8 +221,7 @@ SDL_FORCE_INLINE SDL_bool SDL_RectsEqual(const SDL_Rect *a, const SDL_Rect *b) * * \sa SDL_GetRectIntersection */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersection(const SDL_Rect * A, - const SDL_Rect * B); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersection(const SDL_Rect *A, const SDL_Rect *B); /** * Calculate the intersection of two rectangles. @@ -239,9 +238,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersection(const SDL_Rect * A, * * \sa SDL_HasRectIntersection */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersection(const SDL_Rect * A, - const SDL_Rect * B, - SDL_Rect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersection(const SDL_Rect *A, const SDL_Rect *B, SDL_Rect *result); /** * Calculate the union of two rectangles. @@ -250,14 +247,12 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersection(const SDL_Rect * A, * \param B an SDL_Rect structure representing the second rectangle. * \param result an SDL_Rect structure filled in with the union of rectangles * `A` and `B`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRectUnion(const SDL_Rect * A, - const SDL_Rect * B, - SDL_Rect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectUnion(const SDL_Rect *A, const SDL_Rect *B, SDL_Rect *result); /** * Calculate a minimal rectangle enclosing a set of points. @@ -276,10 +271,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRectUnion(const SDL_Rect * A, * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPoints(const SDL_Point * points, - int count, - const SDL_Rect * clip, - SDL_Rect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPoints(const SDL_Point *points, int count, const SDL_Rect *clip, SDL_Rect *result); /** * Calculate the intersection of a rectangle and line segment. @@ -299,10 +291,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPoints(const SDL_Point * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectAndLineIntersection(const SDL_Rect * - rect, int *X1, - int *Y1, int *X2, - int *Y2); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectAndLineIntersection(const SDL_Rect *rect, int *X1, int *Y1, int *X2, int *Y2); /* SDL_FRect versions... */ @@ -435,8 +424,7 @@ SDL_FORCE_INLINE SDL_bool SDL_RectsEqualFloat(const SDL_FRect *a, const SDL_FRec * * \sa SDL_GetRectIntersection */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersectionFloat(const SDL_FRect * A, - const SDL_FRect * B); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersectionFloat(const SDL_FRect *A, const SDL_FRect *B); /** * Calculate the intersection of two rectangles with float precision. @@ -453,9 +441,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersectionFloat(const SDL_FRec * * \sa SDL_HasRectIntersectionFloat */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersectionFloat(const SDL_FRect * A, - const SDL_FRect * B, - SDL_FRect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersectionFloat(const SDL_FRect *A, const SDL_FRect *B, SDL_FRect *result); /** * Calculate the union of two rectangles with float precision. @@ -464,14 +450,12 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersectionFloat(const SDL_FRec * \param B an SDL_FRect structure representing the second rectangle. * \param result an SDL_FRect structure filled in with the union of rectangles * `A` and `B`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRectUnionFloat(const SDL_FRect * A, - const SDL_FRect * B, - SDL_FRect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectUnionFloat(const SDL_FRect *A, const SDL_FRect *B, SDL_FRect *result); /** * Calculate a minimal rectangle enclosing a set of points with float @@ -491,10 +475,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRectUnionFloat(const SDL_FRect * A, * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPointsFloat(const SDL_FPoint * points, - int count, - const SDL_FRect * clip, - SDL_FRect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPointsFloat(const SDL_FPoint *points, int count, const SDL_FRect *clip, SDL_FRect *result); /** * Calculate the intersection of a rectangle and line segment with float @@ -515,10 +496,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPointsFloat(const SDL_F * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectAndLineIntersectionFloat(const SDL_FRect * - rect, float *X1, - float *Y1, float *X2, - float *Y2); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectAndLineIntersectionFloat(const SDL_FRect *rect, float *X1, float *Y1, float *X2, float *Y2); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_render.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_render.h index 69bf515..706308c 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_render.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_render.h @@ -133,8 +133,7 @@ typedef struct SDL_Texture SDL_Texture; * * There may be none if SDL was compiled without render support. * - * \returns a number >= 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns the number of built in render drivers. * * \since This function is available since SDL 3.0.0. * @@ -175,15 +174,15 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetRenderDriver(int index); * SDL_CreateWindow()). * \param window a pointer filled with the window, or NULL on error. * \param renderer a pointer filled with the renderer, or NULL on error. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CreateRenderer * \sa SDL_CreateWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_CreateWindowAndRenderer(const char *title, int width, int height, SDL_WindowFlags window_flags, SDL_Window **window, SDL_Renderer **renderer); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CreateWindowAndRenderer(const char *title, int width, int height, SDL_WindowFlags window_flags, SDL_Window **window, SDL_Renderer **renderer); /** * Create a 2D rendering context for a window. @@ -266,17 +265,17 @@ extern SDL_DECLSPEC SDL_Renderer * SDLCALL SDL_CreateRenderer(SDL_Window *window */ extern SDL_DECLSPEC SDL_Renderer * SDLCALL SDL_CreateRendererWithProperties(SDL_PropertiesID props); -#define SDL_PROP_RENDERER_CREATE_NAME_STRING "name" -#define SDL_PROP_RENDERER_CREATE_WINDOW_POINTER "window" -#define SDL_PROP_RENDERER_CREATE_SURFACE_POINTER "surface" -#define SDL_PROP_RENDERER_CREATE_OUTPUT_COLORSPACE_NUMBER "output_colorspace" -#define SDL_PROP_RENDERER_CREATE_PRESENT_VSYNC_NUMBER "present_vsync" -#define SDL_PROP_RENDERER_CREATE_VULKAN_INSTANCE_POINTER "vulkan.instance" -#define SDL_PROP_RENDERER_CREATE_VULKAN_SURFACE_NUMBER "vulkan.surface" -#define SDL_PROP_RENDERER_CREATE_VULKAN_PHYSICAL_DEVICE_POINTER "vulkan.physical_device" -#define SDL_PROP_RENDERER_CREATE_VULKAN_DEVICE_POINTER "vulkan.device" -#define SDL_PROP_RENDERER_CREATE_VULKAN_GRAPHICS_QUEUE_FAMILY_INDEX_NUMBER "vulkan.graphics_queue_family_index" -#define SDL_PROP_RENDERER_CREATE_VULKAN_PRESENT_QUEUE_FAMILY_INDEX_NUMBER "vulkan.present_queue_family_index" +#define SDL_PROP_RENDERER_CREATE_NAME_STRING "SDL.renderer.create.name" +#define SDL_PROP_RENDERER_CREATE_WINDOW_POINTER "SDL.renderer.create.window" +#define SDL_PROP_RENDERER_CREATE_SURFACE_POINTER "SDL.renderer.create.surface" +#define SDL_PROP_RENDERER_CREATE_OUTPUT_COLORSPACE_NUMBER "SDL.renderer.create.output_colorspace" +#define SDL_PROP_RENDERER_CREATE_PRESENT_VSYNC_NUMBER "SDL.renderer.create.present_vsync" +#define SDL_PROP_RENDERER_CREATE_VULKAN_INSTANCE_POINTER "SDL.renderer.create.vulkan.instance" +#define SDL_PROP_RENDERER_CREATE_VULKAN_SURFACE_NUMBER "SDL.renderer.create.vulkan.surface" +#define SDL_PROP_RENDERER_CREATE_VULKAN_PHYSICAL_DEVICE_POINTER "SDL.renderer.create.vulkan.physical_device" +#define SDL_PROP_RENDERER_CREATE_VULKAN_DEVICE_POINTER "SDL.renderer.create.vulkan.device" +#define SDL_PROP_RENDERER_CREATE_VULKAN_GRAPHICS_QUEUE_FAMILY_INDEX_NUMBER "SDL.renderer.create.vulkan.graphics_queue_family_index" +#define SDL_PROP_RENDERER_CREATE_VULKAN_PRESENT_QUEUE_FAMILY_INDEX_NUMBER "SDL.renderer.create.vulkan.present_queue_family_index" /** * Create a 2D software rendering context for a surface. @@ -445,14 +444,14 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetRendererProperties(SDL_Rende * \param renderer the rendering context. * \param w a pointer filled in with the width in pixels. * \param h a pointer filled in with the height in pixels. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetCurrentRenderOutputSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderOutputSize(SDL_Renderer *renderer, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderOutputSize(SDL_Renderer *renderer, int *w, int *h); /** * Get the current output size in pixels of a rendering context. @@ -465,14 +464,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderOutputSize(SDL_Renderer *renderer, * \param renderer the rendering context. * \param w a pointer filled in with the current width. * \param h a pointer filled in with the current height. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderOutputSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetCurrentRenderOutputSize(SDL_Renderer *renderer, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetCurrentRenderOutputSize(SDL_Renderer *renderer, int *w, int *h); /** * Create a texture for a rendering context. @@ -633,29 +632,29 @@ extern SDL_DECLSPEC SDL_Texture * SDLCALL SDL_CreateTextureFromSurface(SDL_Rende */ extern SDL_DECLSPEC SDL_Texture * SDLCALL SDL_CreateTextureWithProperties(SDL_Renderer *renderer, SDL_PropertiesID props); -#define SDL_PROP_TEXTURE_CREATE_COLORSPACE_NUMBER "colorspace" -#define SDL_PROP_TEXTURE_CREATE_FORMAT_NUMBER "format" -#define SDL_PROP_TEXTURE_CREATE_ACCESS_NUMBER "access" -#define SDL_PROP_TEXTURE_CREATE_WIDTH_NUMBER "width" -#define SDL_PROP_TEXTURE_CREATE_HEIGHT_NUMBER "height" -#define SDL_PROP_TEXTURE_CREATE_SDR_WHITE_POINT_FLOAT "SDR_white_point" -#define SDL_PROP_TEXTURE_CREATE_HDR_HEADROOM_FLOAT "HDR_headroom" -#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_POINTER "d3d11.texture" -#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_U_POINTER "d3d11.texture_u" -#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_V_POINTER "d3d11.texture_v" -#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_POINTER "d3d12.texture" -#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_U_POINTER "d3d12.texture_u" -#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_V_POINTER "d3d12.texture_v" -#define SDL_PROP_TEXTURE_CREATE_METAL_PIXELBUFFER_POINTER "metal.pixelbuffer" -#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_NUMBER "opengl.texture" -#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_UV_NUMBER "opengl.texture_uv" -#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_U_NUMBER "opengl.texture_u" -#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_V_NUMBER "opengl.texture_v" -#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_NUMBER "opengles2.texture" -#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_UV_NUMBER "opengles2.texture_uv" -#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_U_NUMBER "opengles2.texture_u" -#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_V_NUMBER "opengles2.texture_v" -#define SDL_PROP_TEXTURE_CREATE_VULKAN_TEXTURE_NUMBER "vulkan.texture" +#define SDL_PROP_TEXTURE_CREATE_COLORSPACE_NUMBER "SDL.texture.create.colorspace" +#define SDL_PROP_TEXTURE_CREATE_FORMAT_NUMBER "SDL.texture.create.format" +#define SDL_PROP_TEXTURE_CREATE_ACCESS_NUMBER "SDL.texture.create.access" +#define SDL_PROP_TEXTURE_CREATE_WIDTH_NUMBER "SDL.texture.create.width" +#define SDL_PROP_TEXTURE_CREATE_HEIGHT_NUMBER "SDL.texture.create.height" +#define SDL_PROP_TEXTURE_CREATE_SDR_WHITE_POINT_FLOAT "SDL.texture.create.SDR_white_point" +#define SDL_PROP_TEXTURE_CREATE_HDR_HEADROOM_FLOAT "SDL.texture.create.HDR_headroom" +#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_POINTER "SDL.texture.create.d3d11.texture" +#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_U_POINTER "SDL.texture.create.d3d11.texture_u" +#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_V_POINTER "SDL.texture.create.d3d11.texture_v" +#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_POINTER "SDL.texture.create.d3d12.texture" +#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_U_POINTER "SDL.texture.create.d3d12.texture_u" +#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_V_POINTER "SDL.texture.create.d3d12.texture_v" +#define SDL_PROP_TEXTURE_CREATE_METAL_PIXELBUFFER_POINTER "SDL.texture.create.metal.pixelbuffer" +#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_NUMBER "SDL.texture.create.opengl.texture" +#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_UV_NUMBER "SDL.texture.create.opengl.texture_uv" +#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_U_NUMBER "SDL.texture.create.opengl.texture_u" +#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_V_NUMBER "SDL.texture.create.opengl.texture_v" +#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_NUMBER "SDL.texture.create.opengles2.texture" +#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_UV_NUMBER "SDL.texture.create.opengles2.texture_uv" +#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_U_NUMBER "SDL.texture.create.opengles2.texture_u" +#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_V_NUMBER "SDL.texture.create.opengles2.texture_v" +#define SDL_PROP_TEXTURE_CREATE_VULKAN_TEXTURE_NUMBER "SDL.texture.create.vulkan.texture" /** * Get the properties associated with a texture. @@ -802,12 +801,12 @@ extern SDL_DECLSPEC SDL_Renderer * SDLCALL SDL_GetRendererFromTexture(SDL_Textur * argument can be NULL if you don't need this information. * \param h a pointer filled in with the height of the texture in pixels. This * argument can be NULL if you don't need this information. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureSize(SDL_Texture *texture, float *w, float *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureSize(SDL_Texture *texture, float *w, float *h); /** * Set an additional color value multiplied into render copy operations. @@ -818,15 +817,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureSize(SDL_Texture *texture, float * * * `srcC = srcC * (color / 255)` * - * Color modulation is not always supported by the renderer; it will return -1 - * if color modulation is not supported. + * Color modulation is not always supported by the renderer; it will return + * SDL_FALSE if color modulation is not supported. * * \param texture the texture to update. * \param r the red color value multiplied into copy operations. * \param g the green color value multiplied into copy operations. * \param b the blue color value multiplied into copy operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -834,7 +833,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureSize(SDL_Texture *texture, float * * \sa SDL_SetTextureAlphaMod * \sa SDL_SetTextureColorModFloat */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorMod(SDL_Texture *texture, Uint8 r, Uint8 g, Uint8 b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureColorMod(SDL_Texture *texture, Uint8 r, Uint8 g, Uint8 b); /** @@ -846,15 +845,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorMod(SDL_Texture *texture, Uin * * `srcC = srcC * color` * - * Color modulation is not always supported by the renderer; it will return -1 - * if color modulation is not supported. + * Color modulation is not always supported by the renderer; it will return + * SDL_FALSE if color modulation is not supported. * * \param texture the texture to update. * \param r the red color value multiplied into copy operations. * \param g the green color value multiplied into copy operations. * \param b the blue color value multiplied into copy operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -862,7 +861,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorMod(SDL_Texture *texture, Uin * \sa SDL_SetTextureAlphaModFloat * \sa SDL_SetTextureColorMod */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorModFloat(SDL_Texture *texture, float r, float g, float b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureColorModFloat(SDL_Texture *texture, float r, float g, float b); /** @@ -872,8 +871,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorModFloat(SDL_Texture *texture * \param r a pointer filled in with the current red color value. * \param g a pointer filled in with the current green color value. * \param b a pointer filled in with the current blue color value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -881,7 +880,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorModFloat(SDL_Texture *texture * \sa SDL_GetTextureColorModFloat * \sa SDL_SetTextureColorMod */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorMod(SDL_Texture *texture, Uint8 *r, Uint8 *g, Uint8 *b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureColorMod(SDL_Texture *texture, Uint8 *r, Uint8 *g, Uint8 *b); /** * Get the additional color value multiplied into render copy operations. @@ -890,8 +889,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorMod(SDL_Texture *texture, Uin * \param r a pointer filled in with the current red color value. * \param g a pointer filled in with the current green color value. * \param b a pointer filled in with the current blue color value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -899,7 +898,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorMod(SDL_Texture *texture, Uin * \sa SDL_GetTextureColorMod * \sa SDL_SetTextureColorModFloat */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorModFloat(SDL_Texture *texture, float *r, float *g, float *b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureColorModFloat(SDL_Texture *texture, float *r, float *g, float *b); /** * Set an additional alpha value multiplied into render copy operations. @@ -909,13 +908,13 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorModFloat(SDL_Texture *texture * * `srcA = srcA * (alpha / 255)` * - * Alpha modulation is not always supported by the renderer; it will return -1 - * if alpha modulation is not supported. + * Alpha modulation is not always supported by the renderer; it will return + * SDL_FALSE if alpha modulation is not supported. * * \param texture the texture to update. * \param alpha the source alpha value multiplied into copy operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -923,7 +922,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorModFloat(SDL_Texture *texture * \sa SDL_SetTextureAlphaModFloat * \sa SDL_SetTextureColorMod */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureAlphaMod(SDL_Texture *texture, Uint8 alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureAlphaMod(SDL_Texture *texture, Uint8 alpha); /** * Set an additional alpha value multiplied into render copy operations. @@ -933,13 +932,13 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureAlphaMod(SDL_Texture *texture, Uin * * `srcA = srcA * alpha` * - * Alpha modulation is not always supported by the renderer; it will return -1 - * if alpha modulation is not supported. + * Alpha modulation is not always supported by the renderer; it will return + * SDL_FALSE if alpha modulation is not supported. * * \param texture the texture to update. * \param alpha the source alpha value multiplied into copy operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -947,15 +946,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureAlphaMod(SDL_Texture *texture, Uin * \sa SDL_SetTextureAlphaMod * \sa SDL_SetTextureColorModFloat */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureAlphaModFloat(SDL_Texture *texture, float alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureAlphaModFloat(SDL_Texture *texture, float alpha); /** * Get the additional alpha value multiplied into render copy operations. * * \param texture the texture to query. * \param alpha a pointer filled in with the current alpha value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -963,15 +962,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureAlphaModFloat(SDL_Texture *texture * \sa SDL_GetTextureColorMod * \sa SDL_SetTextureAlphaMod */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureAlphaMod(SDL_Texture *texture, Uint8 *alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureAlphaMod(SDL_Texture *texture, Uint8 *alpha); /** * Get the additional alpha value multiplied into render copy operations. * * \param texture the texture to query. * \param alpha a pointer filled in with the current alpha value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -979,7 +978,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureAlphaMod(SDL_Texture *texture, Uin * \sa SDL_GetTextureColorModFloat * \sa SDL_SetTextureAlphaModFloat */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureAlphaModFloat(SDL_Texture *texture, float *alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureAlphaModFloat(SDL_Texture *texture, float *alpha); /** * Set the blend mode for a texture, used by SDL_RenderTexture(). @@ -989,28 +988,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureAlphaModFloat(SDL_Texture *texture * * \param texture the texture to update. * \param blendMode the SDL_BlendMode to use for texture blending. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetTextureBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureBlendMode(SDL_Texture *texture, SDL_BlendMode blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureBlendMode(SDL_Texture *texture, SDL_BlendMode blendMode); /** * Get the blend mode used for texture copy operations. * * \param texture the texture to query. * \param blendMode a pointer filled in with the current SDL_BlendMode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetTextureBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureBlendMode(SDL_Texture *texture, SDL_BlendMode *blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureBlendMode(SDL_Texture *texture, SDL_BlendMode *blendMode); /** * Set the scale mode used for texture scale operations. @@ -1021,28 +1020,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureBlendMode(SDL_Texture *texture, SD * * \param texture the texture to update. * \param scaleMode the SDL_ScaleMode to use for texture scaling. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetTextureScaleMode */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureScaleMode(SDL_Texture *texture, SDL_ScaleMode scaleMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureScaleMode(SDL_Texture *texture, SDL_ScaleMode scaleMode); /** * Get the scale mode used for texture scale operations. * * \param texture the texture to query. * \param scaleMode a pointer filled in with the current scale mode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetTextureScaleMode */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureScaleMode(SDL_Texture *texture, SDL_ScaleMode *scaleMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureScaleMode(SDL_Texture *texture, SDL_ScaleMode *scaleMode); /** * Update the given texture rectangle with new pixel data. @@ -1064,8 +1063,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureScaleMode(SDL_Texture *texture, SD * \param pixels the raw pixel data in the format of the texture. * \param pitch the number of bytes in a row of pixel data, including padding * between lines. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1074,7 +1073,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureScaleMode(SDL_Texture *texture, SD * \sa SDL_UpdateNVTexture * \sa SDL_UpdateYUVTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateTexture(SDL_Texture *texture, const SDL_Rect *rect, const void *pixels, int pitch); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateTexture(SDL_Texture *texture, const SDL_Rect *rect, const void *pixels, int pitch); /** * Update a rectangle within a planar YV12 or IYUV texture with new pixel @@ -1096,15 +1095,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateTexture(SDL_Texture *texture, const SD * \param Vplane the raw pixel data for the V plane. * \param Vpitch the number of bytes between rows of pixel data for the V * plane. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_UpdateNVTexture * \sa SDL_UpdateTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateYUVTexture(SDL_Texture *texture, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateYUVTexture(SDL_Texture *texture, const SDL_Rect *rect, const Uint8 *Yplane, int Ypitch, const Uint8 *Uplane, int Upitch, @@ -1126,15 +1125,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateYUVTexture(SDL_Texture *texture, * \param UVplane the raw pixel data for the UV plane. * \param UVpitch the number of bytes between rows of pixel data for the UV * plane. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_UpdateTexture * \sa SDL_UpdateYUVTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateNVTexture(SDL_Texture *texture, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateNVTexture(SDL_Texture *texture, const SDL_Rect *rect, const Uint8 *Yplane, int Ypitch, const Uint8 *UVplane, int UVpitch); @@ -1158,8 +1157,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateNVTexture(SDL_Texture *texture, * appropriately offset by the locked area. * \param pitch this is filled in with the pitch of the locked pixels; the * pitch is the length of one row in bytes. - * \returns 0 on success or a negative error code if the texture is not valid - * or was not created with `SDL_TEXTUREACCESS_STREAMING`; call + * \returns SDL_TRUE on success or SDL_FALSE if the texture is not valid or + * was not created with `SDL_TEXTUREACCESS_STREAMING`; call * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. @@ -1167,7 +1166,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateNVTexture(SDL_Texture *texture, * \sa SDL_LockTextureToSurface * \sa SDL_UnlockTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_LockTexture(SDL_Texture *texture, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LockTexture(SDL_Texture *texture, const SDL_Rect *rect, void **pixels, int *pitch); @@ -1195,17 +1194,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_LockTexture(SDL_Texture *texture, * NULL, the entire texture will be locked. * \param surface this is filled in with an SDL surface representing the * locked area. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_LockTexture * \sa SDL_UnlockTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_LockTextureToSurface(SDL_Texture *texture, - const SDL_Rect *rect, - SDL_Surface **surface); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LockTextureToSurface(SDL_Texture *texture, const SDL_Rect *rect, SDL_Surface **surface); /** * Unlock a texture, uploading the changes to video memory, if needed. @@ -1237,14 +1234,14 @@ extern SDL_DECLSPEC void SDLCALL SDL_UnlockTexture(SDL_Texture *texture); * \param texture the targeted texture, which must be created with the * `SDL_TEXTUREACCESS_TARGET` flag, or NULL to render to the * window instead of a texture. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderTarget */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderTarget(SDL_Renderer *renderer, SDL_Texture *texture); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderTarget(SDL_Renderer *renderer, SDL_Texture *texture); /** * Get the current render target. @@ -1280,8 +1277,8 @@ extern SDL_DECLSPEC SDL_Texture * SDLCALL SDL_GetRenderTarget(SDL_Renderer *rend * \param h the height of the logical resolution. * \param mode the presentation mode used. * \param scale_mode the scale mode used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1289,7 +1286,7 @@ extern SDL_DECLSPEC SDL_Texture * SDLCALL SDL_GetRenderTarget(SDL_Renderer *rend * \sa SDL_GetRenderLogicalPresentation * \sa SDL_GetRenderLogicalPresentationRect */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderLogicalPresentation(SDL_Renderer *renderer, int w, int h, SDL_RendererLogicalPresentation mode, SDL_ScaleMode scale_mode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderLogicalPresentation(SDL_Renderer *renderer, int w, int h, SDL_RendererLogicalPresentation mode, SDL_ScaleMode scale_mode); /** * Get device independent resolution and presentation mode for rendering. @@ -1302,14 +1299,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderLogicalPresentation(SDL_Renderer *r * \param h an int to be filled with the height. * \param mode a pointer filled in with the presentation mode. * \param scale_mode a pointer filled in with the scale mode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderLogicalPresentation */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderLogicalPresentation(SDL_Renderer *renderer, int *w, int *h, SDL_RendererLogicalPresentation *mode, SDL_ScaleMode *scale_mode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderLogicalPresentation(SDL_Renderer *renderer, int *w, int *h, SDL_RendererLogicalPresentation *mode, SDL_ScaleMode *scale_mode); /** * Get the final presentation rectangle for rendering. @@ -1322,14 +1319,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderLogicalPresentation(SDL_Renderer *r * \param renderer the rendering context. * \param rect a pointer filled in with the final presentation rectangle, may * be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderLogicalPresentation */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderLogicalPresentationRect(SDL_Renderer *renderer, SDL_FRect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderLogicalPresentationRect(SDL_Renderer *renderer, SDL_FRect *rect); /** * Get a point in render coordinates when given a point in window coordinates. @@ -1339,15 +1336,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderLogicalPresentationRect(SDL_Rendere * \param window_y the y coordinate in window coordinates. * \param x a pointer filled with the x coordinate in render coordinates. * \param y a pointer filled with the y coordinate in render coordinates. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderLogicalPresentation * \sa SDL_SetRenderScale */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderCoordinatesFromWindow(SDL_Renderer *renderer, float window_x, float window_y, float *x, float *y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderCoordinatesFromWindow(SDL_Renderer *renderer, float window_x, float window_y, float *x, float *y); /** * Get a point in window coordinates when given a point in render coordinates. @@ -1359,15 +1356,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderCoordinatesFromWindow(SDL_Renderer *re * coordinates. * \param window_y a pointer filled with the y coordinate in window * coordinates. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderLogicalPresentation * \sa SDL_SetRenderScale */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderCoordinatesToWindow(SDL_Renderer *renderer, float x, float y, float *window_x, float *window_y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderCoordinatesToWindow(SDL_Renderer *renderer, float x, float y, float *window_x, float *window_y); /** * Convert the coordinates in an event to render coordinates. @@ -1379,14 +1376,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderCoordinatesToWindow(SDL_Renderer *rend * * \param renderer the rendering context. * \param event the event to modify. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderCoordinatesFromWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_ConvertEventToRenderCoordinates(SDL_Renderer *renderer, SDL_Event *event); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ConvertEventToRenderCoordinates(SDL_Renderer *renderer, SDL_Event *event); /** * Set the drawing area for rendering on the current target. @@ -1394,30 +1391,30 @@ extern SDL_DECLSPEC int SDLCALL SDL_ConvertEventToRenderCoordinates(SDL_Renderer * \param renderer the rendering context. * \param rect the SDL_Rect structure representing the drawing area, or NULL * to set the viewport to the entire target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderViewport * \sa SDL_RenderViewportSet */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderViewport(SDL_Renderer *renderer, const SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderViewport(SDL_Renderer *renderer, const SDL_Rect *rect); /** * Get the drawing area for the current target. * * \param renderer the rendering context. * \param rect an SDL_Rect structure filled in with the current drawing area. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderViewportSet * \sa SDL_SetRenderViewport */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderViewport(SDL_Renderer *renderer, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderViewport(SDL_Renderer *renderer, SDL_Rect *rect); /** * Return whether an explicit rectangle was set as the viewport. @@ -1450,12 +1447,12 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderViewportSet(SDL_Renderer *rendere * \param renderer the rendering context. * \param rect a pointer filled in with the area that is safe for interactive * content. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderSafeArea(SDL_Renderer *renderer, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderSafeArea(SDL_Renderer *renderer, SDL_Rect *rect); /** * Set the clip rectangle for rendering on the specified target. @@ -1463,15 +1460,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderSafeArea(SDL_Renderer *renderer, SD * \param renderer the rendering context. * \param rect an SDL_Rect structure representing the clip area, relative to * the viewport, or NULL to disable clipping. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderClipRect * \sa SDL_RenderClipEnabled */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderClipRect(SDL_Renderer *renderer, const SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderClipRect(SDL_Renderer *renderer, const SDL_Rect *rect); /** * Get the clip rectangle for the current target. @@ -1479,15 +1476,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderClipRect(SDL_Renderer *renderer, co * \param renderer the rendering context. * \param rect an SDL_Rect structure filled in with the current clipping area * or an empty rectangle if clipping is disabled. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderClipEnabled * \sa SDL_SetRenderClipRect */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderClipRect(SDL_Renderer *renderer, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderClipRect(SDL_Renderer *renderer, SDL_Rect *rect); /** * Get whether clipping is enabled on the given renderer. @@ -1517,14 +1514,14 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderClipEnabled(SDL_Renderer *rendere * \param renderer the rendering context. * \param scaleX the horizontal scaling factor. * \param scaleY the vertical scaling factor. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderScale */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderScale(SDL_Renderer *renderer, float scaleX, float scaleY); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderScale(SDL_Renderer *renderer, float scaleX, float scaleY); /** * Get the drawing scale for the current target. @@ -1532,14 +1529,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderScale(SDL_Renderer *renderer, float * \param renderer the rendering context. * \param scaleX a pointer filled in with the horizontal scaling factor. * \param scaleY a pointer filled in with the vertical scaling factor. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderScale */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderScale(SDL_Renderer *renderer, float *scaleX, float *scaleY); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderScale(SDL_Renderer *renderer, float *scaleX, float *scaleY); /** * Set the color used for drawing operations. @@ -1554,15 +1551,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderScale(SDL_Renderer *renderer, float * \param a the alpha value used to draw on the rendering target; usually * `SDL_ALPHA_OPAQUE` (255). Use SDL_SetRenderDrawBlendMode to * specify how the alpha channel is used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderDrawColor * \sa SDL_SetRenderDrawColorFloat */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderDrawColor(SDL_Renderer *renderer, Uint8 r, Uint8 g, Uint8 b, Uint8 a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderDrawColor(SDL_Renderer *renderer, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /** * Set the color used for drawing operations (Rect, Line and Clear). @@ -1577,15 +1574,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderDrawColor(SDL_Renderer *renderer, U * \param a the alpha value used to draw on the rendering target. Use * SDL_SetRenderDrawBlendMode to specify how the alpha channel is * used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderDrawColorFloat * \sa SDL_SetRenderDrawColor */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderDrawColorFloat(SDL_Renderer *renderer, float r, float g, float b, float a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderDrawColorFloat(SDL_Renderer *renderer, float r, float g, float b, float a); /** * Get the color used for drawing operations (Rect, Line and Clear). @@ -1599,15 +1596,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderDrawColorFloat(SDL_Renderer *render * rendering target. * \param a a pointer filled in with the alpha value used to draw on the * rendering target; usually `SDL_ALPHA_OPAQUE` (255). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderDrawColorFloat * \sa SDL_SetRenderDrawColor */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawColor(SDL_Renderer *renderer, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderDrawColor(SDL_Renderer *renderer, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a); /** * Get the color used for drawing operations (Rect, Line and Clear). @@ -1621,15 +1618,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawColor(SDL_Renderer *renderer, U * rendering target. * \param a a pointer filled in with the alpha value used to draw on the * rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderDrawColorFloat * \sa SDL_GetRenderDrawColor */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawColorFloat(SDL_Renderer *renderer, float *r, float *g, float *b, float *a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderDrawColorFloat(SDL_Renderer *renderer, float *r, float *g, float *b, float *a); /** * Set the color scale used for render operations. @@ -1644,28 +1641,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawColorFloat(SDL_Renderer *render * * \param renderer the rendering context. * \param scale the color scale value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderColorScale */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderColorScale(SDL_Renderer *renderer, float scale); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderColorScale(SDL_Renderer *renderer, float scale); /** * Get the color scale used for render operations. * * \param renderer the rendering context. * \param scale a pointer filled in with the current color scale value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderColorScale */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderColorScale(SDL_Renderer *renderer, float *scale); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderColorScale(SDL_Renderer *renderer, float *scale); /** * Set the blend mode used for drawing operations (Fill and Line). @@ -1674,28 +1671,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderColorScale(SDL_Renderer *renderer, * * \param renderer the rendering context. * \param blendMode the SDL_BlendMode to use for blending. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderDrawBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderDrawBlendMode(SDL_Renderer *renderer, SDL_BlendMode blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderDrawBlendMode(SDL_Renderer *renderer, SDL_BlendMode blendMode); /** * Get the blend mode used for drawing operations. * * \param renderer the rendering context. * \param blendMode a pointer filled in with the current SDL_BlendMode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderDrawBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawBlendMode(SDL_Renderer *renderer, SDL_BlendMode *blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderDrawBlendMode(SDL_Renderer *renderer, SDL_BlendMode *blendMode); /** * Clear the current rendering target with the drawing color. @@ -1706,14 +1703,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawBlendMode(SDL_Renderer *rendere * SDL_SetRenderDrawColor() when needed. * * \param renderer the rendering context. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderDrawColor */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderClear(SDL_Renderer *renderer); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderClear(SDL_Renderer *renderer); /** * Draw a point on the current rendering target at subpixel precision. @@ -1721,14 +1718,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderClear(SDL_Renderer *renderer); * \param renderer the renderer which should draw a point. * \param x the x coordinate of the point. * \param y the y coordinate of the point. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderPoints */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderPoint(SDL_Renderer *renderer, float x, float y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderPoint(SDL_Renderer *renderer, float x, float y); /** * Draw multiple points on the current rendering target at subpixel precision. @@ -1736,14 +1733,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderPoint(SDL_Renderer *renderer, float x, * \param renderer the renderer which should draw multiple points. * \param points the points to draw. * \param count the number of points to draw. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderPoint */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderPoints(SDL_Renderer *renderer, const SDL_FPoint *points, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderPoints(SDL_Renderer *renderer, const SDL_FPoint *points, int count); /** * Draw a line on the current rendering target at subpixel precision. @@ -1753,14 +1750,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderPoints(SDL_Renderer *renderer, const S * \param y1 the y coordinate of the start point. * \param x2 the x coordinate of the end point. * \param y2 the y coordinate of the end point. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderLines */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderLine(SDL_Renderer *renderer, float x1, float y1, float x2, float y2); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderLine(SDL_Renderer *renderer, float x1, float y1, float x2, float y2); /** * Draw a series of connected lines on the current rendering target at @@ -1769,14 +1766,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderLine(SDL_Renderer *renderer, float x1, * \param renderer the renderer which should draw multiple lines. * \param points the points along the lines. * \param count the number of points, drawing count-1 lines. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderLine */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderLines(SDL_Renderer *renderer, const SDL_FPoint *points, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderLines(SDL_Renderer *renderer, const SDL_FPoint *points, int count); /** * Draw a rectangle on the current rendering target at subpixel precision. @@ -1784,14 +1781,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderLines(SDL_Renderer *renderer, const SD * \param renderer the renderer which should draw a rectangle. * \param rect a pointer to the destination rectangle, or NULL to outline the * entire rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderRects */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderRect(SDL_Renderer *renderer, const SDL_FRect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderRect(SDL_Renderer *renderer, const SDL_FRect *rect); /** * Draw some number of rectangles on the current rendering target at subpixel @@ -1800,14 +1797,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderRect(SDL_Renderer *renderer, const SDL * \param renderer the renderer which should draw multiple rectangles. * \param rects a pointer to an array of destination rectangles. * \param count the number of rectangles. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderRect */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderRects(SDL_Renderer *renderer, const SDL_FRect *rects, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderRects(SDL_Renderer *renderer, const SDL_FRect *rects, int count); /** * Fill a rectangle on the current rendering target with the drawing color at @@ -1816,14 +1813,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderRects(SDL_Renderer *renderer, const SD * \param renderer the renderer which should fill a rectangle. * \param rect a pointer to the destination rectangle, or NULL for the entire * rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderFillRects */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderFillRect(SDL_Renderer *renderer, const SDL_FRect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderFillRect(SDL_Renderer *renderer, const SDL_FRect *rect); /** * Fill some number of rectangles on the current rendering target with the @@ -1832,14 +1829,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderFillRect(SDL_Renderer *renderer, const * \param renderer the renderer which should fill multiple rectangles. * \param rects a pointer to an array of destination rectangles. * \param count the number of rectangles. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderFillRect */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderFillRects(SDL_Renderer *renderer, const SDL_FRect *rects, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderFillRects(SDL_Renderer *renderer, const SDL_FRect *rects, int count); /** * Copy a portion of the texture to the current rendering target at subpixel @@ -1851,15 +1848,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderFillRects(SDL_Renderer *renderer, cons * texture. * \param dstrect a pointer to the destination rectangle, or NULL for the * entire rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderTextureRotated * \sa SDL_RenderTextureTiled */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderTexture(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, const SDL_FRect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderTexture(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, const SDL_FRect *dstrect); /** * Copy a portion of the source texture to the current rendering target, with @@ -1878,14 +1875,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderTexture(SDL_Renderer *renderer, SDL_Te * around dstrect.w/2, dstrect.h/2). * \param flip an SDL_FlipMode value stating which flipping actions should be * performed on the texture. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderTextureRotated(SDL_Renderer *renderer, SDL_Texture *texture, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderTextureRotated(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, const SDL_FRect *dstrect, const double angle, const SDL_FPoint *center, const SDL_FlipMode flip); @@ -1906,14 +1903,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderTextureRotated(SDL_Renderer *renderer, * 64x64 tiles. * \param dstrect a pointer to the destination rectangle, or NULL for the * entire rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderTextureTiled(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, float scale, const SDL_FRect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderTextureTiled(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, float scale, const SDL_FRect *dstrect); /** * Perform a scaled copy using the 9-grid algorithm to the current rendering @@ -1938,14 +1935,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderTextureTiled(SDL_Renderer *renderer, S * corner of `dstrect`, or 0.0f for an unscaled copy. * \param dstrect a pointer to the destination rectangle, or NULL for the * entire rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderTexture9Grid(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, float left_width, float right_width, float top_height, float bottom_height, float scale, const SDL_FRect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderTexture9Grid(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, float left_width, float right_width, float top_height, float bottom_height, float scale, const SDL_FRect *dstrect); /** * Render a list of triangles, optionally using a texture and indices into the @@ -1960,14 +1957,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderTexture9Grid(SDL_Renderer *renderer, S * array, if NULL all vertices will be rendered in sequential * order. * \param num_indices number of indices. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderGeometryRaw */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderGeometry(SDL_Renderer *renderer, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderGeometry(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_Vertex *vertices, int num_vertices, const int *indices, int num_indices); @@ -1990,14 +1987,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderGeometry(SDL_Renderer *renderer, * if NULL all vertices will be rendered in sequential order. * \param num_indices number of indices. * \param size_indices index size: 1 (byte), 2 (short), 4 (int). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderGeometry */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderGeometryRaw(SDL_Renderer *renderer, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderGeometryRaw(SDL_Renderer *renderer, SDL_Texture *texture, const float *xy, int xy_stride, const SDL_FColor *color, int color_stride, @@ -2050,26 +2047,27 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_RenderReadPixels(SDL_Renderer *ren * do not have a concept of backbuffers. * * \param renderer the rendering context. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety You may only call this function on the main thread. * * \since This function is available since SDL 3.0.0. * + * \sa SDL_CreateRenderer * \sa SDL_RenderClear + * \sa SDL_RenderFillRect + * \sa SDL_RenderFillRects * \sa SDL_RenderLine * \sa SDL_RenderLines * \sa SDL_RenderPoint * \sa SDL_RenderPoints * \sa SDL_RenderRect * \sa SDL_RenderRects - * \sa SDL_RenderFillRect - * \sa SDL_RenderFillRects * \sa SDL_SetRenderDrawBlendMode * \sa SDL_SetRenderDrawColor */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderPresent(SDL_Renderer *renderer); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderPresent(SDL_Renderer *renderer); /** * Destroy the specified texture. @@ -2124,12 +2122,12 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyRenderer(SDL_Renderer *renderer); * be prepared to make changes if specific state needs to be protected. * * \param renderer the rendering context. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_FlushRenderer(SDL_Renderer *renderer); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FlushRenderer(SDL_Renderer *renderer); /** * Get the CAMetalLayer associated with the given Metal renderer. @@ -2189,15 +2187,15 @@ extern SDL_DECLSPEC void * SDLCALL SDL_GetRenderMetalCommandEncoder(SDL_Renderer * \param signal_semaphore a VkSempahore that SDL will signal when rendering * for the current frame is complete, or 0 if not * needed. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is **NOT** safe to call this function from two threads at * once. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_AddVulkanRenderSemaphores(SDL_Renderer *renderer, Uint32 wait_stage_mask, Sint64 wait_semaphore, Sint64 signal_semaphore); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AddVulkanRenderSemaphores(SDL_Renderer *renderer, Uint32 wait_stage_mask, Sint64 wait_semaphore, Sint64 signal_semaphore); /** * Toggle VSync of the given renderer. @@ -2213,14 +2211,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_AddVulkanRenderSemaphores(SDL_Renderer *rend * * \param renderer the renderer to toggle. * \param vsync the vertical refresh sync interval. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderVSync */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderVSync(SDL_Renderer *renderer, int vsync); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderVSync(SDL_Renderer *renderer, int vsync); #define SDL_RENDERER_VSYNC_DISABLED 0 #define SDL_RENDERER_VSYNC_ADAPTIVE (-1) @@ -2231,14 +2229,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderVSync(SDL_Renderer *renderer, int v * \param renderer the renderer to toggle. * \param vsync an int filled with the current vertical refresh sync interval. * See SDL_SetRenderVSync() for the meaning of the value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderVSync */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderVSync(SDL_Renderer *renderer, int *vsync); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderVSync(SDL_Renderer *renderer, int *vsync); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_sensor.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_sensor.h index 2d4aa46..3ae4856 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_sensor.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_sensor.h @@ -55,8 +55,7 @@ typedef struct SDL_Sensor SDL_Sensor; * This is a unique ID for a sensor for the time it is connected to the * system, and is never reused for the lifetime of the application. * - * The ID value starts at 1 and increments from there. The value 0 is an - * invalid ID. + * The value 0 is an invalid ID. * * \since This datatype is available since SDL 3.0.0. */ @@ -278,12 +277,12 @@ extern SDL_DECLSPEC SDL_SensorID SDLCALL SDL_GetSensorID(SDL_Sensor *sensor); * \param sensor the SDL_Sensor object to query. * \param data a pointer filled with the current sensor state. * \param num_values the number of values to write to data. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSensorData(SDL_Sensor *sensor, float *data, int num_values); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSensorData(SDL_Sensor *sensor, float *data, int num_values); /** * Close a sensor previously opened with SDL_OpenSensor(). diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_stdinc.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_stdinc.h index 14e0750..5539f2a 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_stdinc.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_stdinc.h @@ -36,6 +36,9 @@ #include #endif #include +#ifndef __cplusplus +#include +#endif #include #include #include @@ -191,7 +194,7 @@ void *alloca(size_t); * * \sa SDL_bool */ -#define SDL_FALSE 0 +#define SDL_FALSE false /** * A boolean true. @@ -200,7 +203,7 @@ void *alloca(size_t); * * \sa SDL_bool */ -#define SDL_TRUE 1 +#define SDL_TRUE true /** * A boolean type: true or false. @@ -210,7 +213,7 @@ void *alloca(size_t); * \sa SDL_TRUE * \sa SDL_FALSE */ -typedef int SDL_bool; +typedef bool SDL_bool; /** * A signed 8-bit integer type. @@ -482,6 +485,7 @@ typedef Sint64 SDL_Time; /** \cond */ #ifndef DOXYGEN_SHOULD_IGNORE_THIS +SDL_COMPILE_TIME_ASSERT(bool, sizeof(SDL_bool) == 1); SDL_COMPILE_TIME_ASSERT(uint8, sizeof(Uint8) == 1); SDL_COMPILE_TIME_ASSERT(sint8, sizeof(Sint8) == 1); SDL_COMPILE_TIME_ASSERT(uint16, sizeof(Uint16) == 2); @@ -595,8 +599,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_GetMemoryFunctions(SDL_malloc_func *malloc_ * \param calloc_func custom calloc function. * \param realloc_func custom realloc function. * \param free_func custom free function. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, but one * should not replace the memory functions once any allocations @@ -607,10 +611,10 @@ extern SDL_DECLSPEC void SDLCALL SDL_GetMemoryFunctions(SDL_malloc_func *malloc_ * \sa SDL_GetMemoryFunctions * \sa SDL_GetOriginalMemoryFunctions */ -extern SDL_DECLSPEC int SDLCALL SDL_SetMemoryFunctions(SDL_malloc_func malloc_func, - SDL_calloc_func calloc_func, - SDL_realloc_func realloc_func, - SDL_free_func free_func); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetMemoryFunctions(SDL_malloc_func malloc_func, + SDL_calloc_func calloc_func, + SDL_realloc_func realloc_func, + SDL_free_func free_func); /** * Allocate memory aligned to a specific value. @@ -2899,14 +2903,78 @@ extern SDL_DECLSPEC float SDLCALL SDL_tanf(float x); #define SDL_ICONV_EILSEQ (size_t)-3 #define SDL_ICONV_EINVAL (size_t)-4 -/* SDL_iconv_* are now always real symbols/types, not macros or inlined. */ typedef struct SDL_iconv_data_t *SDL_iconv_t; + +/** + * This function allocates a context for the specified character set + * conversion. + * + * \param tocode The target character encoding, must not be NULL. + * \param fromcode The source character encoding, must not be NULL. + * \returns a handle that must be freed with SDL_iconv_close, or + * SDL_ICONV_ERROR on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_iconv + * \sa SDL_iconv_close + * \sa SDL_iconv_string + */ extern SDL_DECLSPEC SDL_iconv_t SDLCALL SDL_iconv_open(const char *tocode, const char *fromcode); + +/** + * This function frees a context used for character set conversion. + * + * \param cd The character set conversion handle. + * \returns 0 on success, or -1 on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_iconv + * \sa SDL_iconv_open + * \sa SDL_iconv_string + */ extern SDL_DECLSPEC int SDLCALL SDL_iconv_close(SDL_iconv_t cd); + +/** + * This function converts text between encodings, reading from and writing to + * a buffer. + * + * It returns the number of succesful conversions. + * + * \param cd The character set conversion context, created in + * SDL_iconv_open(). + * \param inbuf Address of variable that points to the first character of the + * input sequence. + * \param inbytesleft The number of bytes in the input buffer. + * \param outbuf Address of variable that points to the output buffer. + * \param outbytesleft The number of bytes in the output buffer. + * \returns the number of conversions on success, else SDL_ICONV_E2BIG is + * returned when the output buffer is too small, or SDL_ICONV_EILSEQ + * is returned when an invalid input sequence is encountered, or + * SDL_ICONV_EINVAL is returned when an incomplete input sequence is + * encountered. + * + * On exit: + * + * - inbuf will point to the beginning of the next multibyte + * sequence. On error, this is the location of the problematic + * input sequence. On success, this is the end of the input + * sequence. - inbytesleft will be set to the number of bytes left + * to convert, which will be 0 on success. - outbuf will point to + * the location where to store the next output byte. - outbytesleft + * will be set to the number of bytes left in the output buffer. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_iconv_open + * \sa SDL_iconv_close + * \sa SDL_iconv_string + */ extern SDL_DECLSPEC size_t SDLCALL SDL_iconv(SDL_iconv_t cd, const char **inbuf, - size_t * inbytesleft, char **outbuf, - size_t * outbytesleft); + size_t *inbytesleft, char **outbuf, + size_t *outbytesleft); /** * Helper function to convert a string's encoding in one call. @@ -2928,6 +2996,10 @@ extern SDL_DECLSPEC size_t SDLCALL SDL_iconv(SDL_iconv_t cd, const char **inbuf, * \returns a new string, converted to the new encoding, or NULL on error. * * \since This function is available since SDL 3.0.0. + * + * \sa SDL_iconv_open + * \sa SDL_iconv_close + * \sa SDL_iconv */ extern SDL_DECLSPEC char * SDLCALL SDL_iconv_string(const char *tocode, const char *fromcode, diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_storage.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_storage.h index 7fc58a8..91a90bc 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_storage.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_storage.h @@ -57,34 +57,34 @@ extern "C" { typedef struct SDL_StorageInterface { /* Called when the storage is closed */ - int (SDLCALL *close)(void *userdata); + SDL_bool (SDLCALL *close)(void *userdata); /* Optional, returns whether the storage is currently ready for access */ SDL_bool (SDLCALL *ready)(void *userdata); /* Enumerate a directory, optional for write-only storage */ - int (SDLCALL *enumerate)(void *userdata, const char *path, SDL_EnumerateDirectoryCallback callback, void *callback_userdata); + SDL_bool (SDLCALL *enumerate)(void *userdata, const char *path, SDL_EnumerateDirectoryCallback callback, void *callback_userdata); /* Get path information, optional for write-only storage */ - int (SDLCALL *info)(void *userdata, const char *path, SDL_PathInfo *info); + SDL_bool (SDLCALL *info)(void *userdata, const char *path, SDL_PathInfo *info); /* Read a file from storage, optional for write-only storage */ - int (SDLCALL *read_file)(void *userdata, const char *path, void *destination, Uint64 length); + SDL_bool (SDLCALL *read_file)(void *userdata, const char *path, void *destination, Uint64 length); /* Write a file to storage, optional for read-only storage */ - int (SDLCALL *write_file)(void *userdata, const char *path, const void *source, Uint64 length); + SDL_bool (SDLCALL *write_file)(void *userdata, const char *path, const void *source, Uint64 length); /* Create a directory, optional for read-only storage */ - int (SDLCALL *mkdir)(void *userdata, const char *path); + SDL_bool (SDLCALL *mkdir)(void *userdata, const char *path); /* Remove a file or empty directory, optional for read-only storage */ - int (SDLCALL *remove)(void *userdata, const char *path); + SDL_bool (SDLCALL *remove)(void *userdata, const char *path); /* Rename a path, optional for read-only storage */ - int (SDLCALL *rename)(void *userdata, const char *oldpath, const char *newpath); + SDL_bool (SDLCALL *rename)(void *userdata, const char *oldpath, const char *newpath); /* Copy a file, optional for read-only storage */ - int (SDLCALL *copy)(void *userdata, const char *oldpath, const char *newpath); + SDL_bool (SDLCALL *copy)(void *userdata, const char *oldpath, const char *newpath); /* Get the space remaining, optional for read-only storage */ Uint64 (SDLCALL *space_remaining)(void *userdata); @@ -196,7 +196,7 @@ extern SDL_DECLSPEC SDL_Storage * SDLCALL SDL_OpenStorage(const SDL_StorageInter * Closes and frees a storage container. * * \param storage a storage container to close. - * \returns 0 if the container was freed with no errors, a negative value + * \returns SDL_TRUE if the container was freed with no errors, SDL_FALSE * otherwise; call SDL_GetError() for more information. Even if the * function returns an error, the container data will be freed; the * error is only for informational purposes. @@ -208,7 +208,7 @@ extern SDL_DECLSPEC SDL_Storage * SDLCALL SDL_OpenStorage(const SDL_StorageInter * \sa SDL_OpenTitleStorage * \sa SDL_OpenUserStorage */ -extern SDL_DECLSPEC int SDLCALL SDL_CloseStorage(SDL_Storage *storage); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CloseStorage(SDL_Storage *storage); /** * Checks if the storage container is ready to use. @@ -230,15 +230,15 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StorageReady(SDL_Storage *storage); * \param storage a storage container to query. * \param path the relative path of the file to query. * \param length a pointer to be filled with the file's length. - * \returns 0 if the file could be queried or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns SDL_TRUE if the file could be queried or SDL_FALSE on failure; + * call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ReadStorageFile * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_GetStorageFileSize(SDL_Storage *storage, const char *path, Uint64 *length); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetStorageFileSize(SDL_Storage *storage, const char *path, Uint64 *length); /** * Synchronously read a file from a storage container into a client-provided @@ -248,7 +248,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetStorageFileSize(SDL_Storage *storage, con * \param path the relative path of the file to read. * \param destination a client-provided buffer to read the file into. * \param length the length of the destination buffer. - * \returns 0 if the file was read or a negative error code on failure; call + * \returns SDL_TRUE if the file was read or SDL_FALSE on failure; call * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. @@ -257,7 +257,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetStorageFileSize(SDL_Storage *storage, con * \sa SDL_StorageReady * \sa SDL_WriteStorageFile */ -extern SDL_DECLSPEC int SDLCALL SDL_ReadStorageFile(SDL_Storage *storage, const char *path, void *destination, Uint64 length); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ReadStorageFile(SDL_Storage *storage, const char *path, void *destination, Uint64 length); /** * Synchronously write a file from client memory into a storage container. @@ -266,8 +266,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_ReadStorageFile(SDL_Storage *storage, const * \param path the relative path of the file to write. * \param source a client-provided buffer to write from. * \param length the length of the source buffer. - * \returns 0 if the file was written or a negative error code on failure; - * call SDL_GetError() for more information. + * \returns SDL_TRUE if the file was written or SDL_FALSE on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -275,21 +275,21 @@ extern SDL_DECLSPEC int SDLCALL SDL_ReadStorageFile(SDL_Storage *storage, const * \sa SDL_ReadStorageFile * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_WriteStorageFile(SDL_Storage *storage, const char *path, const void *source, Uint64 length); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WriteStorageFile(SDL_Storage *storage, const char *path, const void *source, Uint64 length); /** * Create a directory in a writable storage container. * * \param storage a storage container. * \param path the path of the directory to create. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_CreateStorageDirectory(SDL_Storage *storage, const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CreateStorageDirectory(SDL_Storage *storage, const char *path); /** * Enumerate a directory in a storage container through a callback function. @@ -302,28 +302,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_CreateStorageDirectory(SDL_Storage *storage, * \param path the path of the directory to enumerate. * \param callback a function that is called for each entry in the directory. * \param userdata a pointer that is passed to `callback`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_EnumerateStorageDirectory(SDL_Storage *storage, const char *path, SDL_EnumerateDirectoryCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_EnumerateStorageDirectory(SDL_Storage *storage, const char *path, SDL_EnumerateDirectoryCallback callback, void *userdata); /** * Remove a file or an empty directory in a writable storage container. * * \param storage a storage container. * \param path the path of the directory to enumerate. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_RemoveStoragePath(SDL_Storage *storage, const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RemoveStoragePath(SDL_Storage *storage, const char *path); /** * Rename a file or directory in a writable storage container. @@ -331,14 +331,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RemoveStoragePath(SDL_Storage *storage, cons * \param storage a storage container. * \param oldpath the old path. * \param newpath the new path. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_RenameStoragePath(SDL_Storage *storage, const char *oldpath, const char *newpath); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenameStoragePath(SDL_Storage *storage, const char *oldpath, const char *newpath); /** * Copy a file in a writable storage container. @@ -346,14 +346,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenameStoragePath(SDL_Storage *storage, cons * \param storage a storage container. * \param oldpath the old path. * \param newpath the new path. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_CopyStorageFile(SDL_Storage *storage, const char *oldpath, const char *newpath); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CopyStorageFile(SDL_Storage *storage, const char *oldpath, const char *newpath); /** * Get information about a filesystem path in a storage container. @@ -362,14 +362,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_CopyStorageFile(SDL_Storage *storage, const * \param path the path to query. * \param info a pointer filled in with information about the path, or NULL to * check for the existence of a file. - * \returns 0 on success or a negative error code if the file doesn't exist, - * or another failure; call SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE if the file doesn't exist, or + * another failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_GetStoragePathInfo(SDL_Storage *storage, const char *path, SDL_PathInfo *info); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetStoragePathInfo(SDL_Storage *storage, const char *path, SDL_PathInfo *info); /** * Queries the remaining space in a storage container. diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_surface.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_surface.h index 57745ac..aafe574 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_surface.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_surface.h @@ -71,8 +71,7 @@ typedef Uint32 SDL_SurfaceFlags; typedef enum SDL_ScaleMode { SDL_SCALEMODE_NEAREST, /**< nearest pixel sampling */ - SDL_SCALEMODE_LINEAR, /**< linear filtering */ - SDL_SCALEMODE_BEST /**< anisotropic filtering */ + SDL_SCALEMODE_LINEAR /**< linear filtering */ } SDL_ScaleMode; /** @@ -125,6 +124,8 @@ typedef struct SDL_Surface /** * Allocate a new surface with a specific pixel format. * + * The pixels of the new surface are initialized to zero. + * * \param width the width of the surface. * \param height the height of the surface. * \param format the SDL_PixelFormat for the new surface's pixel format. @@ -222,14 +223,14 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetSurfaceProperties(SDL_Surfac * \param surface the SDL_Surface structure to update. * \param colorspace an SDL_ColorSpace value describing the surface * colorspace. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceColorspace */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceColorspace(SDL_Surface *surface, SDL_Colorspace colorspace); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceColorspace(SDL_Surface *surface, SDL_Colorspace colorspace); /** * Get the colorspace used by a surface. @@ -283,15 +284,15 @@ extern SDL_DECLSPEC SDL_Palette * SDLCALL SDL_CreateSurfacePalette(SDL_Surface * * * \param surface the SDL_Surface structure to update. * \param palette the SDL_Palette structure to use. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CreatePalette * \sa SDL_GetSurfacePalette */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfacePalette(SDL_Surface *surface, SDL_Palette *palette); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfacePalette(SDL_Surface *surface, SDL_Palette *palette); /** * Get the palette used by a surface. @@ -320,8 +321,8 @@ extern SDL_DECLSPEC SDL_Palette * SDLCALL SDL_GetSurfacePalette(SDL_Surface *sur * \param surface the SDL_Surface structure to update. * \param image a pointer to an alternate SDL_Surface to associate with this * surface. - * \returns SDL_TRUE if alternate versions are available or SDL_TRUE - * otherwise. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -329,7 +330,7 @@ extern SDL_DECLSPEC SDL_Palette * SDLCALL SDL_GetSurfacePalette(SDL_Surface *sur * \sa SDL_GetSurfaceImages * \sa SDL_SurfaceHasAlternateImages */ -extern SDL_DECLSPEC int SDLCALL SDL_AddSurfaceAlternateImage(SDL_Surface *surface, SDL_Surface *image); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AddSurfaceAlternateImage(SDL_Surface *surface, SDL_Surface *image); /** * Return whether a surface has alternate versions available. @@ -400,15 +401,15 @@ extern SDL_DECLSPEC void SDLCALL SDL_RemoveSurfaceAlternateImages(SDL_Surface *s * format of the surface will not change. * * \param surface the SDL_Surface structure to be locked. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_MUSTLOCK * \sa SDL_UnlockSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_LockSurface(SDL_Surface *surface); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LockSurface(SDL_Surface *surface); /** * Release a surface after directly accessing the pixels. @@ -472,15 +473,15 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_LoadBMP(const char *file); * \param dst a data stream to save to. * \param closeio if SDL_TRUE, calls SDL_CloseIO() on `dst` before returning, * even in the case of an error. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_LoadBMP_IO * \sa SDL_SaveBMP */ -extern SDL_DECLSPEC int SDLCALL SDL_SaveBMP_IO(SDL_Surface *surface, SDL_IOStream *dst, SDL_bool closeio); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SaveBMP_IO(SDL_Surface *surface, SDL_IOStream *dst, SDL_bool closeio); /** * Save a surface to a file. @@ -493,15 +494,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SaveBMP_IO(SDL_Surface *surface, SDL_IOStrea * * \param surface the SDL_Surface structure containing the image to be saved. * \param file a file to save to. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_LoadBMP * \sa SDL_SaveBMP_IO */ -extern SDL_DECLSPEC int SDLCALL SDL_SaveBMP(SDL_Surface *surface, const char *file); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SaveBMP(SDL_Surface *surface, const char *file); /** * Set the RLE acceleration hint for a surface. @@ -512,8 +513,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SaveBMP(SDL_Surface *surface, const char *fi * \param surface the SDL_Surface structure to optimize. * \param enabled SDL_TRUE to enable RLE acceleration, SDL_FALSE to disable * it. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -521,7 +522,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SaveBMP(SDL_Surface *surface, const char *fi * \sa SDL_LockSurface * \sa SDL_UnlockSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceRLE(SDL_Surface *surface, SDL_bool enabled); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceRLE(SDL_Surface *surface, SDL_bool enabled); /** * Returns whether the surface is RLE enabled. @@ -551,8 +552,8 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SurfaceHasRLE(SDL_Surface *surface); * \param enabled SDL_TRUE to enable color key, SDL_FALSE to disable color * key. * \param key the transparent pixel. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -560,7 +561,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SurfaceHasRLE(SDL_Surface *surface); * \sa SDL_SetSurfaceRLE * \sa SDL_SurfaceHasColorKey */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceColorKey(SDL_Surface *surface, SDL_bool enabled, Uint32 key); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceColorKey(SDL_Surface *surface, SDL_bool enabled, Uint32 key); /** * Returns whether the surface has a color key. @@ -587,15 +588,15 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SurfaceHasColorKey(SDL_Surface *surface * * \param surface the SDL_Surface structure to query. * \param key a pointer filled in with the transparent pixel. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetSurfaceColorKey * \sa SDL_SurfaceHasColorKey */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceColorKey(SDL_Surface *surface, Uint32 *key); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSurfaceColorKey(SDL_Surface *surface, Uint32 *key); /** * Set an additional color value multiplied into blit operations. @@ -610,15 +611,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceColorKey(SDL_Surface *surface, Uin * \param r the red color value multiplied into blit operations. * \param g the green color value multiplied into blit operations. * \param b the blue color value multiplied into blit operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceColorMod * \sa SDL_SetSurfaceAlphaMod */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceColorMod(SDL_Surface *surface, Uint8 r, Uint8 g, Uint8 b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceColorMod(SDL_Surface *surface, Uint8 r, Uint8 g, Uint8 b); /** @@ -628,15 +629,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceColorMod(SDL_Surface *surface, Uin * \param r a pointer filled in with the current red color value. * \param g a pointer filled in with the current green color value. * \param b a pointer filled in with the current blue color value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceAlphaMod * \sa SDL_SetSurfaceColorMod */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceColorMod(SDL_Surface *surface, Uint8 *r, Uint8 *g, Uint8 *b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSurfaceColorMod(SDL_Surface *surface, Uint8 *r, Uint8 *g, Uint8 *b); /** * Set an additional alpha value used in blit operations. @@ -648,30 +649,30 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceColorMod(SDL_Surface *surface, Uin * * \param surface the SDL_Surface structure to update. * \param alpha the alpha value multiplied into blit operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceAlphaMod * \sa SDL_SetSurfaceColorMod */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceAlphaMod(SDL_Surface *surface, Uint8 alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceAlphaMod(SDL_Surface *surface, Uint8 alpha); /** * Get the additional alpha value used in blit operations. * * \param surface the SDL_Surface structure to query. * \param alpha a pointer filled in with the current alpha value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceColorMod * \sa SDL_SetSurfaceAlphaMod */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceAlphaMod(SDL_Surface *surface, Uint8 *alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSurfaceAlphaMod(SDL_Surface *surface, Uint8 *alpha); /** * Set the blend mode used for blit operations. @@ -682,28 +683,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceAlphaMod(SDL_Surface *surface, Uin * * \param surface the SDL_Surface structure to update. * \param blendMode the SDL_BlendMode to use for blit blending. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceBlendMode(SDL_Surface *surface, SDL_BlendMode blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceBlendMode(SDL_Surface *surface, SDL_BlendMode blendMode); /** * Get the blend mode used for blit operations. * * \param surface the SDL_Surface structure to query. * \param blendMode a pointer filled in with the current SDL_BlendMode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetSurfaceBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceBlendMode(SDL_Surface *surface, SDL_BlendMode *blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSurfaceBlendMode(SDL_Surface *surface, SDL_BlendMode *blendMode); /** * Set the clipping rectangle for a surface. @@ -736,26 +737,26 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceClipRect(SDL_Surface *surface * clipped. * \param rect an SDL_Rect structure filled in with the clipping rectangle for * the surface. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetSurfaceClipRect */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceClipRect(SDL_Surface *surface, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSurfaceClipRect(SDL_Surface *surface, SDL_Rect *rect); /** * Flip a surface vertically or horizontally. * * \param surface the surface to flip. * \param flip the direction to flip. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_FlipSurface(SDL_Surface *surface, SDL_FlipMode flip); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FlipSurface(SDL_Surface *surface, SDL_FlipMode flip); /** * Creates a new surface identical to the existing surface. @@ -858,14 +859,14 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_ConvertSurfaceAndColorspace(SDL_Su * \param dst_format an SDL_PixelFormat value of the `dst` pixels format. * \param dst a pointer to be filled in with new pixel data. * \param dst_pitch the pitch of the destination pixels, in bytes. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_FALSE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ConvertPixelsAndColorspace */ -extern SDL_DECLSPEC int SDLCALL SDL_ConvertPixels(int width, int height, SDL_PixelFormat src_format, const void *src, int src_pitch, SDL_PixelFormat dst_format, void *dst, int dst_pitch); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ConvertPixels(int width, int height, SDL_PixelFormat src_format, const void *src, int src_pitch, SDL_PixelFormat dst_format, void *dst, int dst_pitch); /** * Copy a block of pixels of one format and colorspace to another format and @@ -887,14 +888,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_ConvertPixels(int width, int height, SDL_Pix * properties, or 0. * \param dst a pointer to be filled in with new pixel data. * \param dst_pitch the pitch of the destination pixels, in bytes. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_FALSE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ConvertPixels */ -extern SDL_DECLSPEC int SDLCALL SDL_ConvertPixelsAndColorspace(int width, int height, SDL_PixelFormat src_format, SDL_Colorspace src_colorspace, SDL_PropertiesID src_properties, const void *src, int src_pitch, SDL_PixelFormat dst_format, SDL_Colorspace dst_colorspace, SDL_PropertiesID dst_properties, void *dst, int dst_pitch); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ConvertPixelsAndColorspace(int width, int height, SDL_PixelFormat src_format, SDL_Colorspace src_colorspace, SDL_PropertiesID src_properties, const void *src, int src_pitch, SDL_PixelFormat dst_format, SDL_Colorspace dst_colorspace, SDL_PropertiesID dst_properties, void *dst, int dst_pitch); /** * Premultiply the alpha on a block of pixels. @@ -911,12 +912,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_ConvertPixelsAndColorspace(int width, int he * \param dst_pitch the pitch of the destination pixels, in bytes. * \param linear SDL_TRUE to convert from sRGB to linear space for the alpha * multiplication, SDL_FALSE to do multiplication in sRGB space. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_PremultiplyAlpha(int width, int height, SDL_PixelFormat src_format, const void *src, int src_pitch, SDL_PixelFormat dst_format, void *dst, int dst_pitch, SDL_bool linear); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PremultiplyAlpha(int width, int height, SDL_PixelFormat src_format, const void *src, int src_pitch, SDL_PixelFormat dst_format, void *dst, int dst_pitch, SDL_bool linear); /** * Premultiply the alpha in a surface. @@ -926,12 +927,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_PremultiplyAlpha(int width, int height, SDL_ * \param surface the surface to modify. * \param linear SDL_TRUE to convert from sRGB to linear space for the alpha * multiplication, SDL_FALSE to do multiplication in sRGB space. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_PremultiplySurfaceAlpha(SDL_Surface *surface, SDL_bool linear); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PremultiplySurfaceAlpha(SDL_Surface *surface, SDL_bool linear); /** * Clear a surface with a specific color, with floating point precision. @@ -946,12 +947,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_PremultiplySurfaceAlpha(SDL_Surface *surface * \param g the green component of the pixel, normally in the range 0-1. * \param b the blue component of the pixel, normally in the range 0-1. * \param a the alpha component of the pixel, normally in the range 0-1. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearSurface(SDL_Surface *surface, float r, float g, float b, float a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearSurface(SDL_Surface *surface, float r, float g, float b, float a); /** * Perform a fast fill of a rectangle with a specific color. @@ -969,14 +970,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_ClearSurface(SDL_Surface *surface, float r, * \param rect the SDL_Rect structure representing the rectangle to fill, or * NULL to fill the entire surface. * \param color the color to fill with. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_FillSurfaceRects */ -extern SDL_DECLSPEC int SDLCALL SDL_FillSurfaceRect(SDL_Surface *dst, const SDL_Rect *rect, Uint32 color); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FillSurfaceRect(SDL_Surface *dst, const SDL_Rect *rect, Uint32 color); /** * Perform a fast fill of a set of rectangles with a specific color. @@ -994,14 +995,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_FillSurfaceRect(SDL_Surface *dst, const SDL_ * \param rects an array of SDL_Rects representing the rectangles to fill. * \param count the number of rectangles in the array. * \param color the color to fill with. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_FillSurfaceRect */ -extern SDL_DECLSPEC int SDLCALL SDL_FillSurfaceRects(SDL_Surface *dst, const SDL_Rect *rects, int count, Uint32 color); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FillSurfaceRects(SDL_Surface *dst, const SDL_Rect *rects, int count, Uint32 color); /** * Performs a fast blit from the source surface to the destination surface. @@ -1065,8 +1066,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_FillSurfaceRects(SDL_Surface *dst, const SDL * height are ignored, and are copied from `srcrect`. If you * want a specific width and height, you should use * SDL_BlitSurfaceScaled(). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1076,7 +1077,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_FillSurfaceRects(SDL_Surface *dst, const SDL * * \sa SDL_BlitSurfaceScaled */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurface(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurface(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); /** * Perform low-level surface blitting only. @@ -1090,8 +1091,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurface(SDL_Surface *src, const SDL_Rect * \param dst the SDL_Surface structure that is the blit target. * \param dstrect the SDL_Rect structure representing the target rectangle in * the destination surface, may not be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1101,7 +1102,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurface(SDL_Surface *src, const SDL_Rect * * \sa SDL_BlitSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUnchecked(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurfaceUnchecked(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); /** * Perform a scaled blit to a destination surface, which may be of a different @@ -1115,8 +1116,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUnchecked(SDL_Surface *src, const * the destination surface, or NULL to fill the entire * destination surface. * \param scaleMode the SDL_ScaleMode to be used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1126,7 +1127,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUnchecked(SDL_Surface *src, const * * \sa SDL_BlitSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceScaled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect, SDL_ScaleMode scaleMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurfaceScaled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect, SDL_ScaleMode scaleMode); /** * Perform low-level surface scaled blitting only. @@ -1141,8 +1142,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceScaled(SDL_Surface *src, const SD * \param dstrect the SDL_Rect structure representing the target rectangle in * the destination surface, may not be NULL. * \param scaleMode the SDL_ScaleMode to be used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1152,7 +1153,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceScaled(SDL_Surface *src, const SD * * \sa SDL_BlitSurfaceScaled */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUncheckedScaled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect, SDL_ScaleMode scaleMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurfaceUncheckedScaled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect, SDL_ScaleMode scaleMode); /** * Perform a tiled blit to a destination surface, which may be of a different @@ -1167,8 +1168,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUncheckedScaled(SDL_Surface *src, * \param dst the SDL_Surface structure that is the blit target. * \param dstrect the SDL_Rect structure representing the target rectangle in * the destination surface, or NULL to fill the entire surface. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1178,7 +1179,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUncheckedScaled(SDL_Surface *src, * * \sa SDL_BlitSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurfaceTiled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); /** * Perform a scaled and tiled blit to a destination surface, which may be of a @@ -1197,8 +1198,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiled(SDL_Surface *src, const SDL * \param dst the SDL_Surface structure that is the blit target. * \param dstrect the SDL_Rect structure representing the target rectangle in * the destination surface, or NULL to fill the entire surface. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1208,7 +1209,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiled(SDL_Surface *src, const SDL * * \sa SDL_BlitSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiledWithScale(SDL_Surface *src, const SDL_Rect *srcrect, float scale, SDL_ScaleMode scaleMode, SDL_Surface *dst, const SDL_Rect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurfaceTiledWithScale(SDL_Surface *src, const SDL_Rect *srcrect, float scale, SDL_ScaleMode scaleMode, SDL_Surface *dst, const SDL_Rect *dstrect); /** * Perform a scaled blit using the 9-grid algorithm to a destination surface, @@ -1234,8 +1235,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiledWithScale(SDL_Surface *src, * \param dst the SDL_Surface structure that is the blit target. * \param dstrect the SDL_Rect structure representing the target rectangle in * the destination surface, or NULL to fill the entire surface. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1245,7 +1246,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiledWithScale(SDL_Surface *src, * * \sa SDL_BlitSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurface9Grid(SDL_Surface *src, const SDL_Rect *srcrect, int left_width, int right_width, int top_height, int bottom_height, float scale, SDL_ScaleMode scaleMode, SDL_Surface *dst, const SDL_Rect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurface9Grid(SDL_Surface *src, const SDL_Rect *srcrect, int left_width, int right_width, int top_height, int bottom_height, float scale, SDL_ScaleMode scaleMode, SDL_Surface *dst, const SDL_Rect *dstrect); /** * Map an RGB triple to an opaque pixel value for a surface. @@ -1328,12 +1329,12 @@ extern SDL_DECLSPEC Uint32 SDLCALL SDL_MapSurfaceRGBA(SDL_Surface *surface, Uint * ignore this channel. * \param a a pointer filled in with the alpha channel, 0-255, or NULL to * ignore this channel. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ReadSurfacePixel(SDL_Surface *surface, int x, int y, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ReadSurfacePixel(SDL_Surface *surface, int x, int y, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a); /** * Retrieves a single pixel from a surface. @@ -1352,12 +1353,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_ReadSurfacePixel(SDL_Surface *surface, int x * 0-1, or NULL to ignore this channel. * \param a a pointer filled in with the alpha channel, normally in the range * 0-1, or NULL to ignore this channel. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ReadSurfacePixelFloat(SDL_Surface *surface, int x, int y, float *r, float *g, float *b, float *a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ReadSurfacePixelFloat(SDL_Surface *surface, int x, int y, float *r, float *g, float *b, float *a); /** * Writes a single pixel to a surface. @@ -1375,12 +1376,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_ReadSurfacePixelFloat(SDL_Surface *surface, * \param g the green channel value, 0-255. * \param b the blue channel value, 0-255. * \param a the alpha channel value, 0-255. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_WriteSurfacePixel(SDL_Surface *surface, int x, int y, Uint8 r, Uint8 g, Uint8 b, Uint8 a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WriteSurfacePixel(SDL_Surface *surface, int x, int y, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /** * Writes a single pixel to a surface. @@ -1395,12 +1396,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_WriteSurfacePixel(SDL_Surface *surface, int * \param g the green channel value, normally in the range 0-1. * \param b the blue channel value, normally in the range 0-1. * \param a the alpha channel value, normally in the range 0-1. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_WriteSurfacePixelFloat(SDL_Surface *surface, int x, int y, float r, float g, float b, float a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WriteSurfacePixelFloat(SDL_Surface *surface, int x, int y, float r, float g, float b, float a); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_system.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_system.h index 9e79e79..17ac0a1 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_system.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_system.h @@ -101,8 +101,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_SetWindowsMessageHook(SDL_WindowsMessageHoo * controls on which monitor a full screen application will appear. * * \param displayID the instance of the display to query. - * \returns the D3D9 adapter index on success or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the D3D9 adapter index on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ @@ -122,12 +122,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetDirect3D9AdapterIndex(SDL_DisplayID displ * \param displayID the instance of the display to query. * \param adapterIndex a pointer to be filled in with the adapter index. * \param outputIndex a pointer to be filled in with the output index. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetDXGIOutputInfo(SDL_DisplayID displayID, int *adapterIndex, int *outputIndex); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetDXGIOutputInfo(SDL_DisplayID displayID, int *adapterIndex, int *outputIndex); #endif /* defined(SDL_PLATFORM_WIN32) || defined(SDL_PLATFORM_WINGDK) */ @@ -162,12 +162,12 @@ extern SDL_DECLSPEC void SDLCALL SDL_SetX11EventHook(SDL_X11EventHook callback, * * \param threadID the Unix thread ID to change priority of. * \param priority the new, Unix-specific, priority value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetLinuxThreadPriority(Sint64 threadID, int priority); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetLinuxThreadPriority(Sint64 threadID, int priority); /** * Sets the priority (not nice level) and scheduling policy for a thread. @@ -178,12 +178,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetLinuxThreadPriority(Sint64 threadID, int * \param sdlPriority the new SDL_ThreadPriority value. * \param schedPolicy the new scheduling policy (SCHED_FIFO, SCHED_RR, * SCHED_OTHER, etc...). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetLinuxThreadPriorityAndPolicy(Sint64 threadID, int sdlPriority, int schedPolicy); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetLinuxThreadPriorityAndPolicy(Sint64 threadID, int sdlPriority, int schedPolicy); #endif /* SDL_PLATFORM_LINUX */ @@ -240,14 +240,14 @@ typedef void (SDLCALL *SDL_iOSAnimationCallback)(void *userdata); * called. * \param callback the function to call for every frame. * \param callbackParam a pointer that is passed to `callback`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetiOSEventPump */ -extern SDL_DECLSPEC int SDLCALL SDL_SetiOSAnimationCallback(SDL_Window *window, int interval, SDL_iOSAnimationCallback callback, void *callbackParam); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetiOSAnimationCallback(SDL_Window *window, int interval, SDL_iOSAnimationCallback callback, void *callbackParam); /** * Use this function to enable or disable the SDL event pump on Apple iOS. @@ -503,15 +503,15 @@ typedef void (SDLCALL *SDL_RequestAndroidPermissionCallback)(void *userdata, con * \param permission the permission to request. * \param cb the callback to trigger when the request has a response. * \param userdata an app-controlled pointer that is passed to the callback. - * \returns zero if the request was submitted, -1 if there was an error - * submitting. The result of the request is only ever reported + * \returns SDL_TRUE if the request was submitted, SDL_FALSE if there was an + * error submitting. The result of the request is only ever reported * through the callback, not this return value. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RequestAndroidPermission(const char *permission, SDL_RequestAndroidPermissionCallback cb, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RequestAndroidPermission(const char *permission, SDL_RequestAndroidPermissionCallback cb, void *userdata); /** * Shows an Android toast notification. @@ -532,14 +532,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RequestAndroidPermission(const char *permiss * \param gravity where the notification should appear on the screen. * \param xoffset set this parameter only when gravity >=0. * \param yoffset set this parameter only when gravity >=0. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowAndroidToast(const char *message, int duration, int gravity, int xoffset, int yoffset); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowAndroidToast(const char *message, int duration, int gravity, int xoffset, int yoffset); /** * Send a user command to SDLActivity. @@ -548,14 +548,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_ShowAndroidToast(const char *message, int du * * \param command user command that must be greater or equal to 0x8000. * \param param user parameter. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SendAndroidMessage(Uint32 command, int param); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SendAndroidMessage(Uint32 command, int param); #endif /* SDL_PLATFORM_ANDROID */ @@ -794,12 +794,12 @@ typedef struct XUser *XUserHandle; * leak. * * \param outTaskQueue a pointer to be filled in with task queue handle. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetGDKTaskQueue(XTaskQueueHandle *outTaskQueue); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetGDKTaskQueue(XTaskQueueHandle *outTaskQueue); /** * Gets a reference to the default user handle for GDK. @@ -809,12 +809,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetGDKTaskQueue(XTaskQueueHandle *outTaskQue * * \param outUserHandle a pointer to be filled in with the default user * handle. - * \returns 0 if success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE if success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetGDKDefaultUser(XUserHandle *outUserHandle); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetGDKDefaultUser(XUserHandle *outUserHandle); #endif diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_thread.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_thread.h index f6ec760..0fdc8a0 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_thread.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_thread.h @@ -252,10 +252,10 @@ extern SDL_DECLSPEC SDL_Thread * SDLCALL SDL_CreateThread(SDL_ThreadFunction fn, */ extern SDL_DECLSPEC SDL_Thread * SDLCALL SDL_CreateThreadWithProperties(SDL_PropertiesID props); -#define SDL_PROP_THREAD_CREATE_ENTRY_FUNCTION_POINTER "entry_function" -#define SDL_PROP_THREAD_CREATE_NAME_STRING "name" -#define SDL_PROP_THREAD_CREATE_USERDATA_POINTER "userdata" -#define SDL_PROP_THREAD_CREATE_STACKSIZE_NUMBER "stacksize" +#define SDL_PROP_THREAD_CREATE_ENTRY_FUNCTION_POINTER "SDL.thread.create.entry_function" +#define SDL_PROP_THREAD_CREATE_NAME_STRING "SDL.thread.create.name" +#define SDL_PROP_THREAD_CREATE_USERDATA_POINTER "SDL.thread.create.userdata" +#define SDL_PROP_THREAD_CREATE_STACKSIZE_NUMBER "SDL.thread.create.stacksize" /* end wiki documentation for macros that are meant to look like functions. */ #endif @@ -320,10 +320,10 @@ extern SDL_DECLSPEC SDL_Thread * SDLCALL SDL_CreateThreadWithPropertiesRuntime(S #define SDL_CreateThread(fn, name, data) SDL_CreateThreadRuntime((fn), (name), (data), (SDL_FunctionPointer) (SDL_BeginThreadFunction), (SDL_FunctionPointer) (SDL_EndThreadFunction)) #define SDL_CreateThreadWithProperties(props) SDL_CreateThreadWithPropertiesRuntime((props), (SDL_FunctionPointer) (SDL_BeginThreadFunction), (SDL_FunctionPointer) (SDL_EndThreadFunction)) -#define SDL_PROP_THREAD_CREATE_ENTRY_FUNCTION_POINTER "entry_function" -#define SDL_PROP_THREAD_CREATE_NAME_STRING "name" -#define SDL_PROP_THREAD_CREATE_USERDATA_POINTER "userdata" -#define SDL_PROP_THREAD_CREATE_STACKSIZE_NUMBER "stacksize" +#define SDL_PROP_THREAD_CREATE_ENTRY_FUNCTION_POINTER "SDL.thread.create.entry_function" +#define SDL_PROP_THREAD_CREATE_NAME_STRING "SDL.thread.create.name" +#define SDL_PROP_THREAD_CREATE_USERDATA_POINTER "SDL.thread.create.userdata" +#define SDL_PROP_THREAD_CREATE_STACKSIZE_NUMBER "SDL.thread.create.stacksize" #endif @@ -381,12 +381,12 @@ extern SDL_DECLSPEC SDL_ThreadID SDLCALL SDL_GetThreadID(SDL_Thread *thread); * an administrator account. Be prepared for this to fail. * * \param priority the SDL_ThreadPriority to set. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetThreadPriority(SDL_ThreadPriority priority); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetThreadPriority(SDL_ThreadPriority priority); /** * Wait for a thread to finish. @@ -504,8 +504,8 @@ typedef void (SDLCALL *SDL_TLSDestructorCallback)(void *value); * \param value the value to associate with the ID for the current thread. * \param destructor a function called when the thread exits, to free the * value, may be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -513,7 +513,7 @@ typedef void (SDLCALL *SDL_TLSDestructorCallback)(void *value); * * \sa SDL_GetTLS */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTLS(SDL_TLSID *id, const void *value, SDL_TLSDestructorCallback destructor); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTLS(SDL_TLSID *id, const void *value, SDL_TLSDestructorCallback destructor); /** * Cleanup all TLS data for this thread. diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_time.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_time.h index de71506..86c1fad 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_time.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_time.h @@ -95,24 +95,24 @@ typedef enum SDL_TimeFormat * format, may be NULL. * \param timeFormat a pointer to the SDL_TimeFormat to hold the returned time * format, may be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetDateTimeLocalePreferences(SDL_DateFormat *dateFormat, SDL_TimeFormat *timeFormat); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetDateTimeLocalePreferences(SDL_DateFormat *dateFormat, SDL_TimeFormat *timeFormat); /** * Gets the current value of the system realtime clock in nanoseconds since * Jan 1, 1970 in Universal Coordinated Time (UTC). * * \param ticks the SDL_Time to hold the returned tick count. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetCurrentTime(SDL_Time *ticks); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetCurrentTime(SDL_Time *ticks); /** * Converts an SDL_Time in nanoseconds since the epoch to a calendar time in @@ -123,12 +123,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetCurrentTime(SDL_Time *ticks); * \param localTime the resulting SDL_DateTime will be expressed in local time * if true, otherwise it will be in Universal Coordinated * Time (UTC). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_TimeToDateTime(SDL_Time ticks, SDL_DateTime *dt, SDL_bool localTime); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TimeToDateTime(SDL_Time ticks, SDL_DateTime *dt, SDL_bool localTime); /** * Converts a calendar time to an SDL_Time in nanoseconds since the epoch. @@ -138,12 +138,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_TimeToDateTime(SDL_Time ticks, SDL_DateTime * * \param dt the source SDL_DateTime. * \param ticks the resulting SDL_Time. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_DateTimeToTime(const SDL_DateTime *dt, SDL_Time *ticks); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_DateTimeToTime(const SDL_DateTime *dt, SDL_Time *ticks); /** * Converts an SDL time into a Windows FILETIME (100-nanosecond intervals @@ -181,8 +181,8 @@ extern SDL_DECLSPEC SDL_Time SDLCALL SDL_TimeFromWindows(Uint32 dwLowDateTime, U * * \param year the year. * \param month the month [1-12]. - * \returns the number of days in the requested month or a negative error code - * on failure; call SDL_GetError() for more information. + * \returns the number of days in the requested month or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ @@ -194,8 +194,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetDaysInMonth(int year, int month); * \param year the year component of the date. * \param month the month component of the date. * \param day the day component of the date. - * \returns the day of year [0-365] if the date is valid or a negative error - * code on failure; call SDL_GetError() for more information. + * \returns the day of year [0-365] if the date is valid or -1 on failure; + * call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ @@ -207,9 +207,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetDayOfYear(int year, int month, int day); * \param year the year component of the date. * \param month the month component of the date. * \param day the day component of the date. - * \returns a value between 0 and 6 (0 being Sunday) if the date is valid or a - * negative error code on failure; call SDL_GetError() for more - * information. + * \returns a value between 0 and 6 (0 being Sunday) if the date is valid or + * -1 on failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_timer.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_timer.h index cd3cc3a..9d05161 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_timer.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_timer.h @@ -137,7 +137,8 @@ typedef Uint32 SDL_TimerID; * The callback function is passed the current timer interval and returns the * next timer interval, in milliseconds. If the returned value is the same as * the one passed in, the periodic alarm continues, otherwise a new alarm is - * scheduled. If the callback returns 0, the periodic alarm is cancelled. + * scheduled. If the callback returns 0, the periodic alarm is canceled and + * will be removed. * * \param userdata an arbitrary pointer provided by the app through * SDL_AddTimer, for its own use. @@ -164,7 +165,7 @@ typedef Uint32 (SDLCALL *SDL_TimerCallback)(void *userdata, SDL_TimerID timerID, * The callback function is passed the current timer interval and the user * supplied parameter from the SDL_AddTimer() call and should return the next * timer interval. If the value returned from the callback is 0, the timer is - * canceled. + * canceled and will be removed. * * The callback is run on a separate thread, and for short timeouts can * potentially be called before this function returns. @@ -200,7 +201,8 @@ extern SDL_DECLSPEC SDL_TimerID SDLCALL SDL_AddTimer(Uint32 interval, SDL_TimerC * The callback function is passed the current timer interval and returns the * next timer interval, in nanoseconds. If the returned value is the same as * the one passed in, the periodic alarm continues, otherwise a new alarm is - * scheduled. If the callback returns 0, the periodic alarm is cancelled. + * scheduled. If the callback returns 0, the periodic alarm is canceled and + * will be removed. * * \param userdata an arbitrary pointer provided by the app through * SDL_AddTimer, for its own use. @@ -227,7 +229,7 @@ typedef Uint64 (SDLCALL *SDL_NSTimerCallback)(void *userdata, SDL_TimerID timerI * The callback function is passed the current timer interval and the user * supplied parameter from the SDL_AddTimerNS() call and should return the * next timer interval. If the value returned from the callback is 0, the - * timer is canceled. + * timer is canceled and will be removed. * * The callback is run on a separate thread, and for short timeouts can * potentially be called before this function returns. @@ -261,14 +263,14 @@ extern SDL_DECLSPEC SDL_TimerID SDLCALL SDL_AddTimerNS(Uint64 interval, SDL_NSTi * Remove a timer created with SDL_AddTimer(). * * \param id the ID of the timer to remove. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_AddTimer */ -extern SDL_DECLSPEC int SDLCALL SDL_RemoveTimer(SDL_TimerID id); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RemoveTimer(SDL_TimerID id); /* Ends C function definitions when using C++ */ diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_video.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_video.h index f78a9c1..7cce828 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_video.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_video.h @@ -41,8 +41,25 @@ extern "C" { #endif - +/** + * This is a unique ID for a display for the time it is connected to the + * system, and is never reused for the lifetime of the application. + * + * If the display is disconnected and reconnected, it will get a new ID. + * + * The value 0 is an invalid ID. + * + * \since This datatype is available since SDL 3.0.0. + */ typedef Uint32 SDL_DisplayID; + +/** + * This is a unique ID for a window. + * + * The value 0 is an invalid ID. + * + * \since This datatype is available since SDL 3.0.0. + */ typedef Uint32 SDL_WindowID; /* Global video properties... */ @@ -155,7 +172,8 @@ typedef Uint64 SDL_WindowFlags; #define SDL_WINDOW_MODAL SDL_UINT64_C(0x0000000000001000) /**< window is modal */ #define SDL_WINDOW_HIGH_PIXEL_DENSITY SDL_UINT64_C(0x0000000000002000) /**< window uses high pixel density back buffer if possible */ #define SDL_WINDOW_MOUSE_CAPTURE SDL_UINT64_C(0x0000000000004000) /**< window has mouse captured (unrelated to MOUSE_GRABBED) */ -#define SDL_WINDOW_ALWAYS_ON_TOP SDL_UINT64_C(0x0000000000008000) /**< window should always be above others */ +#define SDL_WINDOW_MOUSE_RELATIVE_MODE SDL_UINT64_C(0x0000000000008000) /**< window has relative mode enabled */ +#define SDL_WINDOW_ALWAYS_ON_TOP SDL_UINT64_C(0x0000000000010000) /**< window should always be above others */ #define SDL_WINDOW_UTILITY SDL_UINT64_C(0x0000000000020000) /**< window should be treated as a utility window, not showing in the task bar and window list */ #define SDL_WINDOW_TOOLTIP SDL_UINT64_C(0x0000000000040000) /**< window should be treated as a tooltip and does not get mouse or keyboard focus, requires a parent window */ #define SDL_WINDOW_POPUP_MENU SDL_UINT64_C(0x0000000000080000) /**< window should be treated as a popup menu, requires a parent window */ @@ -247,31 +265,31 @@ typedef SDL_EGLint *(SDLCALL *SDL_EGLIntArrayCallback)(void); */ typedef enum SDL_GLattr { - SDL_GL_RED_SIZE, - SDL_GL_GREEN_SIZE, - SDL_GL_BLUE_SIZE, - SDL_GL_ALPHA_SIZE, - SDL_GL_BUFFER_SIZE, - SDL_GL_DOUBLEBUFFER, - SDL_GL_DEPTH_SIZE, - SDL_GL_STENCIL_SIZE, - SDL_GL_ACCUM_RED_SIZE, - SDL_GL_ACCUM_GREEN_SIZE, - SDL_GL_ACCUM_BLUE_SIZE, - SDL_GL_ACCUM_ALPHA_SIZE, - SDL_GL_STEREO, - SDL_GL_MULTISAMPLEBUFFERS, - SDL_GL_MULTISAMPLESAMPLES, - SDL_GL_ACCELERATED_VISUAL, - SDL_GL_RETAINED_BACKING, - SDL_GL_CONTEXT_MAJOR_VERSION, - SDL_GL_CONTEXT_MINOR_VERSION, - SDL_GL_CONTEXT_FLAGS, - SDL_GL_CONTEXT_PROFILE_MASK, - SDL_GL_SHARE_WITH_CURRENT_CONTEXT, - SDL_GL_FRAMEBUFFER_SRGB_CAPABLE, - SDL_GL_CONTEXT_RELEASE_BEHAVIOR, - SDL_GL_CONTEXT_RESET_NOTIFICATION, + SDL_GL_RED_SIZE, /**< the minimum number of bits for the red channel of the color buffer; defaults to 3. */ + SDL_GL_GREEN_SIZE, /**< the minimum number of bits for the green channel of the color buffer; defaults to 3. */ + SDL_GL_BLUE_SIZE, /**< the minimum number of bits for the blue channel of the color buffer; defaults to 2. */ + SDL_GL_ALPHA_SIZE, /**< the minimum number of bits for the alpha channel of the color buffer; defaults to 0. */ + SDL_GL_BUFFER_SIZE, /**< the minimum number of bits for frame buffer size; defaults to 0. */ + SDL_GL_DOUBLEBUFFER, /**< whether the output is single or double buffered; defaults to double buffering on. */ + SDL_GL_DEPTH_SIZE, /**< the minimum number of bits in the depth buffer; defaults to 16. */ + SDL_GL_STENCIL_SIZE, /**< the minimum number of bits in the stencil buffer; defaults to 0. */ + SDL_GL_ACCUM_RED_SIZE, /**< the minimum number of bits for the red channel of the accumulation buffer; defaults to 0. */ + SDL_GL_ACCUM_GREEN_SIZE, /**< the minimum number of bits for the green channel of the accumulation buffer; defaults to 0. */ + SDL_GL_ACCUM_BLUE_SIZE, /**< the minimum number of bits for the blue channel of the accumulation buffer; defaults to 0. */ + SDL_GL_ACCUM_ALPHA_SIZE, /**< the minimum number of bits for the alpha channel of the accumulation buffer; defaults to 0. */ + SDL_GL_STEREO, /**< whether the output is stereo 3D; defaults to off. */ + SDL_GL_MULTISAMPLEBUFFERS, /**< the number of buffers used for multisample anti-aliasing; defaults to 0. */ + SDL_GL_MULTISAMPLESAMPLES, /**< the number of samples used around the current pixel used for multisample anti-aliasing. */ + SDL_GL_ACCELERATED_VISUAL, /**< set to 1 to require hardware acceleration, set to 0 to force software rendering; defaults to allow either. */ + SDL_GL_RETAINED_BACKING, /**< not used (deprecated). */ + SDL_GL_CONTEXT_MAJOR_VERSION, /**< OpenGL context major version. */ + SDL_GL_CONTEXT_MINOR_VERSION, /**< OpenGL context minor version. */ + SDL_GL_CONTEXT_FLAGS, /**< some combination of 0 or more of elements of the SDL_GLcontextFlag enumeration; defaults to 0. */ + SDL_GL_CONTEXT_PROFILE_MASK, /**< type of GL context (Core, Compatibility, ES). See SDL_GLprofile; default value depends on platform. */ + SDL_GL_SHARE_WITH_CURRENT_CONTEXT, /**< OpenGL context sharing; defaults to 0. */ + SDL_GL_FRAMEBUFFER_SRGB_CAPABLE, /**< requests sRGB capable visual; defaults to 0. */ + SDL_GL_CONTEXT_RELEASE_BEHAVIOR, /**< sets context the release behavior. See SDL_GLcontextReleaseFlag; defaults to FLUSH. */ + SDL_GL_CONTEXT_RESET_NOTIFICATION, /**< set context reset notification. See SDL_GLContextResetNotification; defaults to NO_NOTIFICATION. */ SDL_GL_CONTEXT_NO_ERROR, SDL_GL_FLOATBUFFERS, SDL_GL_EGL_PLATFORM @@ -330,8 +348,7 @@ typedef enum SDL_GLContextResetNotification /** * Get the number of video drivers compiled into SDL. * - * \returns a number >= 1 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns the number of built in video drivers. * * \since This function is available since SDL 3.0.0. * @@ -458,15 +475,15 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetDisplayName(SDL_DisplayID displa * * \param displayID the instance ID of the display to query. * \param rect the SDL_Rect structure filled in with the display bounds. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetDisplayUsableBounds * \sa SDL_GetDisplays */ -extern SDL_DECLSPEC int SDLCALL SDL_GetDisplayBounds(SDL_DisplayID displayID, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetDisplayBounds(SDL_DisplayID displayID, SDL_Rect *rect); /** * Get the usable desktop area represented by a display, in screen @@ -482,15 +499,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetDisplayBounds(SDL_DisplayID displayID, SD * * \param displayID the instance ID of the display to query. * \param rect the SDL_Rect structure filled in with the display bounds. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetDisplayBounds * \sa SDL_GetDisplays */ -extern SDL_DECLSPEC int SDLCALL SDL_GetDisplayUsableBounds(SDL_DisplayID displayID, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetDisplayUsableBounds(SDL_DisplayID displayID, SDL_Rect *rect); /** * Get the orientation of a display when it is unrotated. @@ -581,15 +598,15 @@ extern SDL_DECLSPEC SDL_DisplayMode ** SDLCALL SDL_GetFullscreenDisplayModes(SDL * the search. * \param mode a pointer filled in with the closest display mode equal to or * larger than the desired mode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetDisplays * \sa SDL_GetFullscreenDisplayModes */ -extern SDL_DECLSPEC int SDLCALL SDL_GetClosestFullscreenDisplayMode(SDL_DisplayID displayID, int w, int h, float refresh_rate, SDL_bool include_high_density_modes, SDL_DisplayMode *mode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetClosestFullscreenDisplayMode(SDL_DisplayID displayID, int w, int h, float refresh_rate, SDL_bool include_high_density_modes, SDL_DisplayMode *mode); /** * Get information about the desktop's display mode. @@ -734,8 +751,8 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetWindowDisplayScale(SDL_Window *window); * borderless fullscreen desktop mode, or one of the fullscreen * modes returned by SDL_GetFullscreenDisplayModes() to set an * exclusive fullscreen mode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -743,7 +760,7 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetWindowDisplayScale(SDL_Window *window); * \sa SDL_SetWindowFullscreen * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFullscreenMode(SDL_Window *window, const SDL_DisplayMode *mode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowFullscreenMode(SDL_Window *window, const SDL_DisplayMode *mode); /** * Query the display mode to use when a window is visible at fullscreen. @@ -1052,39 +1069,40 @@ extern SDL_DECLSPEC SDL_Window * SDLCALL SDL_CreatePopupWindow(SDL_Window *paren */ extern SDL_DECLSPEC SDL_Window * SDLCALL SDL_CreateWindowWithProperties(SDL_PropertiesID props); -#define SDL_PROP_WINDOW_CREATE_ALWAYS_ON_TOP_BOOLEAN "always_on_top" -#define SDL_PROP_WINDOW_CREATE_BORDERLESS_BOOLEAN "borderless" -#define SDL_PROP_WINDOW_CREATE_FOCUSABLE_BOOLEAN "focusable" -#define SDL_PROP_WINDOW_CREATE_EXTERNAL_GRAPHICS_CONTEXT_BOOLEAN "external_graphics_context" -#define SDL_PROP_WINDOW_CREATE_FULLSCREEN_BOOLEAN "fullscreen" -#define SDL_PROP_WINDOW_CREATE_HEIGHT_NUMBER "height" -#define SDL_PROP_WINDOW_CREATE_HIDDEN_BOOLEAN "hidden" -#define SDL_PROP_WINDOW_CREATE_HIGH_PIXEL_DENSITY_BOOLEAN "high_pixel_density" -#define SDL_PROP_WINDOW_CREATE_MAXIMIZED_BOOLEAN "maximized" -#define SDL_PROP_WINDOW_CREATE_MENU_BOOLEAN "menu" -#define SDL_PROP_WINDOW_CREATE_METAL_BOOLEAN "metal" -#define SDL_PROP_WINDOW_CREATE_MINIMIZED_BOOLEAN "minimized" -#define SDL_PROP_WINDOW_CREATE_MODAL_BOOLEAN "modal" -#define SDL_PROP_WINDOW_CREATE_MOUSE_GRABBED_BOOLEAN "mouse_grabbed" -#define SDL_PROP_WINDOW_CREATE_OPENGL_BOOLEAN "opengl" -#define SDL_PROP_WINDOW_CREATE_PARENT_POINTER "parent" -#define SDL_PROP_WINDOW_CREATE_RESIZABLE_BOOLEAN "resizable" -#define SDL_PROP_WINDOW_CREATE_TITLE_STRING "title" -#define SDL_PROP_WINDOW_CREATE_TRANSPARENT_BOOLEAN "transparent" -#define SDL_PROP_WINDOW_CREATE_TOOLTIP_BOOLEAN "tooltip" -#define SDL_PROP_WINDOW_CREATE_UTILITY_BOOLEAN "utility" -#define SDL_PROP_WINDOW_CREATE_VULKAN_BOOLEAN "vulkan" -#define SDL_PROP_WINDOW_CREATE_WIDTH_NUMBER "width" -#define SDL_PROP_WINDOW_CREATE_X_NUMBER "x" -#define SDL_PROP_WINDOW_CREATE_Y_NUMBER "y" -#define SDL_PROP_WINDOW_CREATE_COCOA_WINDOW_POINTER "cocoa.window" -#define SDL_PROP_WINDOW_CREATE_COCOA_VIEW_POINTER "cocoa.view" -#define SDL_PROP_WINDOW_CREATE_WAYLAND_SURFACE_ROLE_CUSTOM_BOOLEAN "wayland.surface_role_custom" -#define SDL_PROP_WINDOW_CREATE_WAYLAND_CREATE_EGL_WINDOW_BOOLEAN "wayland.create_egl_window" -#define SDL_PROP_WINDOW_CREATE_WAYLAND_WL_SURFACE_POINTER "wayland.wl_surface" -#define SDL_PROP_WINDOW_CREATE_WIN32_HWND_POINTER "win32.hwnd" -#define SDL_PROP_WINDOW_CREATE_WIN32_PIXEL_FORMAT_HWND_POINTER "win32.pixel_format_hwnd" -#define SDL_PROP_WINDOW_CREATE_X11_WINDOW_NUMBER "x11.window" +#define SDL_PROP_WINDOW_CREATE_ALWAYS_ON_TOP_BOOLEAN "SDL.window.create.always_on_top" +#define SDL_PROP_WINDOW_CREATE_BORDERLESS_BOOLEAN "SDL.window.create.borderless" +#define SDL_PROP_WINDOW_CREATE_FOCUSABLE_BOOLEAN "SDL.window.create.focusable" +#define SDL_PROP_WINDOW_CREATE_EXTERNAL_GRAPHICS_CONTEXT_BOOLEAN "SDL.window.create.external_graphics_context" +#define SDL_PROP_WINDOW_CREATE_FLAGS_NUMBER "SDL.window.create.flags" +#define SDL_PROP_WINDOW_CREATE_FULLSCREEN_BOOLEAN "SDL.window.create.fullscreen" +#define SDL_PROP_WINDOW_CREATE_HEIGHT_NUMBER "SDL.window.create.height" +#define SDL_PROP_WINDOW_CREATE_HIDDEN_BOOLEAN "SDL.window.create.hidden" +#define SDL_PROP_WINDOW_CREATE_HIGH_PIXEL_DENSITY_BOOLEAN "SDL.window.create.high_pixel_density" +#define SDL_PROP_WINDOW_CREATE_MAXIMIZED_BOOLEAN "SDL.window.create.maximized" +#define SDL_PROP_WINDOW_CREATE_MENU_BOOLEAN "SDL.window.create.menu" +#define SDL_PROP_WINDOW_CREATE_METAL_BOOLEAN "SDL.window.create.metal" +#define SDL_PROP_WINDOW_CREATE_MINIMIZED_BOOLEAN "SDL.window.create.minimized" +#define SDL_PROP_WINDOW_CREATE_MODAL_BOOLEAN "SDL.window.create.modal" +#define SDL_PROP_WINDOW_CREATE_MOUSE_GRABBED_BOOLEAN "SDL.window.create.mouse_grabbed" +#define SDL_PROP_WINDOW_CREATE_OPENGL_BOOLEAN "SDL.window.create.opengl" +#define SDL_PROP_WINDOW_CREATE_PARENT_POINTER "SDL.window.create.parent" +#define SDL_PROP_WINDOW_CREATE_RESIZABLE_BOOLEAN "SDL.window.create.resizable" +#define SDL_PROP_WINDOW_CREATE_TITLE_STRING "SDL.window.create.title" +#define SDL_PROP_WINDOW_CREATE_TRANSPARENT_BOOLEAN "SDL.window.create.transparent" +#define SDL_PROP_WINDOW_CREATE_TOOLTIP_BOOLEAN "SDL.window.create.tooltip" +#define SDL_PROP_WINDOW_CREATE_UTILITY_BOOLEAN "SDL.window.create.utility" +#define SDL_PROP_WINDOW_CREATE_VULKAN_BOOLEAN "SDL.window.create.vulkan" +#define SDL_PROP_WINDOW_CREATE_WIDTH_NUMBER "SDL.window.create.width" +#define SDL_PROP_WINDOW_CREATE_X_NUMBER "SDL.window.create.x" +#define SDL_PROP_WINDOW_CREATE_Y_NUMBER "SDL.window.create.y" +#define SDL_PROP_WINDOW_CREATE_COCOA_WINDOW_POINTER "SDL.window.create.cocoa.window" +#define SDL_PROP_WINDOW_CREATE_COCOA_VIEW_POINTER "SDL.window.create.cocoa.view" +#define SDL_PROP_WINDOW_CREATE_WAYLAND_SURFACE_ROLE_CUSTOM_BOOLEAN "SDL.window.create.wayland.surface_role_custom" +#define SDL_PROP_WINDOW_CREATE_WAYLAND_CREATE_EGL_WINDOW_BOOLEAN "SDL.window.create.wayland.create_egl_window" +#define SDL_PROP_WINDOW_CREATE_WAYLAND_WL_SURFACE_POINTER "SDL.window.create.wayland.wl_surface" +#define SDL_PROP_WINDOW_CREATE_WIN32_HWND_POINTER "SDL.window.create.win32.hwnd" +#define SDL_PROP_WINDOW_CREATE_WIN32_PIXEL_FORMAT_HWND_POINTER "SDL.window.create.win32.pixel_format_hwnd" +#define SDL_PROP_WINDOW_CREATE_X11_WINDOW_NUMBER "SDL.window.create.x11.window" /** * Get the numeric ID of a window. @@ -1309,14 +1327,14 @@ extern SDL_DECLSPEC SDL_WindowFlags SDLCALL SDL_GetWindowFlags(SDL_Window *windo * * \param window the window to change. * \param title the desired window title in UTF-8 format. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowTitle */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowTitle(SDL_Window *window, const char *title); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowTitle(SDL_Window *window, const char *title); /** * Get the title of a window. @@ -1340,17 +1358,18 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetWindowTitle(SDL_Window *window); * situations. For example, if the original surface is 32x32, then on a 2x * macOS display or 200% display scale on Windows, a 64x64 version of the * image will be used, if available. If a matching version of the image isn't - * available, the closest size image will be scaled to the appropriate size - * and be used instead. + * available, the closest larger size image will be downscaled to the + * appropriate size and be used instead, if available. Otherwise, the closest + * smaller image will be upscaled and be used instead. * * \param window the window to change. * \param icon an SDL_Surface structure containing the icon for the window. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowIcon(SDL_Window *window, SDL_Surface *icon); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowIcon(SDL_Window *window, SDL_Surface *icon); /** * Request that the window's position be set. @@ -1382,15 +1401,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowIcon(SDL_Window *window, SDL_Surfac * `SDL_WINDOWPOS_UNDEFINED`. * \param y the y coordinate of the window, or `SDL_WINDOWPOS_CENTERED` or * `SDL_WINDOWPOS_UNDEFINED`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowPosition * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowPosition(SDL_Window *window, int x, int y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowPosition(SDL_Window *window, int x, int y); /** * Get the position of a window. @@ -1406,14 +1425,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowPosition(SDL_Window *window, int x, * NULL. * \param y a pointer filled in with the y position of the window, may be * NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetWindowPosition */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowPosition(SDL_Window *window, int *x, int *y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowPosition(SDL_Window *window, int *x, int *y); /** * Request that the size of a window's client area be set. @@ -1440,8 +1459,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowPosition(SDL_Window *window, int *x * \param window the window to change. * \param w the width of the window, must be > 0. * \param h the height of the window, must be > 0. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1449,7 +1468,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowPosition(SDL_Window *window, int *x * \sa SDL_SetWindowFullscreenMode * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowSize(SDL_Window *window, int w, int h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowSize(SDL_Window *window, int w, int h); /** * Get the size of a window's client area. @@ -1461,8 +1480,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowSize(SDL_Window *window, int w, int * \param window the window to query the width and height from. * \param w a pointer filled in with the width of the window, may be NULL. * \param h a pointer filled in with the height of the window, may be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1470,7 +1489,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowSize(SDL_Window *window, int w, int * \sa SDL_GetWindowSizeInPixels * \sa SDL_SetWindowSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSize(SDL_Window *window, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowSize(SDL_Window *window, int *w, int *h); /** * Get the safe area for this window. @@ -1485,12 +1504,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSize(SDL_Window *window, int *w, in * \param window the window to query. * \param rect a pointer filled in with the client area that is safe for * interactive content. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSafeArea(SDL_Window *window, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowSafeArea(SDL_Window *window, SDL_Rect *rect); /** * Request that the aspect ratio of a window's client area be set. @@ -1521,15 +1540,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSafeArea(SDL_Window *window, SDL_Re * limit. * \param max_aspect the maximum aspect ratio of the window, or 0.0f for no * limit. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowAspectRatio * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowAspectRatio(SDL_Window *window, float min_aspect, float max_aspect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowAspectRatio(SDL_Window *window, float min_aspect, float max_aspect); /** * Get the size of a window's client area. @@ -1539,14 +1558,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowAspectRatio(SDL_Window *window, flo * window, may be NULL. * \param max_aspect a pointer filled in with the maximum aspect ratio of the * window, may be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetWindowAspectRatio */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowAspectRatio(SDL_Window *window, float *min_aspect, float *max_aspect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowAspectRatio(SDL_Window *window, float *min_aspect, float *max_aspect); /** * Get the size of a window's borders (decorations) around the client area. @@ -1573,14 +1592,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowAspectRatio(SDL_Window *window, flo * border; NULL is permitted. * \param right pointer to variable for storing the size of the right border; * NULL is permitted. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowBordersSize(SDL_Window *window, int *top, int *left, int *bottom, int *right); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowBordersSize(SDL_Window *window, int *top, int *left, int *bottom, int *right); /** * Get the size of a window's client area, in pixels. @@ -1590,15 +1609,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowBordersSize(SDL_Window *window, int * NULL. * \param h a pointer to variable for storing the height in pixels, may be * NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CreateWindow * \sa SDL_GetWindowSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSizeInPixels(SDL_Window *window, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowSizeInPixels(SDL_Window *window, int *w, int *h); /** * Set the minimum size of a window's client area. @@ -1606,15 +1625,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSizeInPixels(SDL_Window *window, in * \param window the window to change. * \param min_w the minimum width of the window, or 0 for no limit. * \param min_h the minimum height of the window, or 0 for no limit. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMinimumSize * \sa SDL_SetWindowMaximumSize */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMinimumSize(SDL_Window *window, int min_w, int min_h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowMinimumSize(SDL_Window *window, int min_w, int min_h); /** * Get the minimum size of a window's client area. @@ -1624,15 +1643,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMinimumSize(SDL_Window *window, int * NULL. * \param h a pointer filled in with the minimum height of the window, may be * NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMaximumSize * \sa SDL_SetWindowMinimumSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowMinimumSize(SDL_Window *window, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowMinimumSize(SDL_Window *window, int *w, int *h); /** * Set the maximum size of a window's client area. @@ -1640,15 +1659,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowMinimumSize(SDL_Window *window, int * \param window the window to change. * \param max_w the maximum width of the window, or 0 for no limit. * \param max_h the maximum height of the window, or 0 for no limit. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMaximumSize * \sa SDL_SetWindowMinimumSize */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMaximumSize(SDL_Window *window, int max_w, int max_h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowMaximumSize(SDL_Window *window, int max_w, int max_h); /** * Get the maximum size of a window's client area. @@ -1658,15 +1677,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMaximumSize(SDL_Window *window, int * NULL. * \param h a pointer filled in with the maximum height of the window, may be * NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMinimumSize * \sa SDL_SetWindowMaximumSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowMaximumSize(SDL_Window *window, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowMaximumSize(SDL_Window *window, int *w, int *h); /** * Set the border state of a window. @@ -1679,14 +1698,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowMaximumSize(SDL_Window *window, int * * \param window the window of which to change the border state. * \param bordered SDL_FALSE to remove border, SDL_TRUE to add border. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowFlags */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowBordered(SDL_Window *window, SDL_bool bordered); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowBordered(SDL_Window *window, SDL_bool bordered); /** * Set the user-resizable state of a window. @@ -1699,14 +1718,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowBordered(SDL_Window *window, SDL_bo * * \param window the window of which to change the resizable state. * \param resizable SDL_TRUE to allow resizing, SDL_FALSE to disallow. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowFlags */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowResizable(SDL_Window *window, SDL_bool resizable); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowResizable(SDL_Window *window, SDL_bool resizable); /** * Set the window to always be above the others. @@ -1717,41 +1736,41 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowResizable(SDL_Window *window, SDL_b * \param window the window of which to change the always on top state. * \param on_top SDL_TRUE to set the window always on top, SDL_FALSE to * disable. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowFlags */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowAlwaysOnTop(SDL_Window *window, SDL_bool on_top); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowAlwaysOnTop(SDL_Window *window, SDL_bool on_top); /** * Show a window. * * \param window the window to show. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_HideWindow * \sa SDL_RaiseWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowWindow(SDL_Window *window); /** * Hide a window. * * \param window the window to hide. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ShowWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_HideWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HideWindow(SDL_Window *window); /** * Request that a window be raised above other windows and gain the input @@ -1764,12 +1783,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_HideWindow(SDL_Window *window); * the window will have the SDL_WINDOW_INPUT_FOCUS flag set. * * \param window the window to raise. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RaiseWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RaiseWindow(SDL_Window *window); /** * Request that the window be made as large as possible. @@ -1792,8 +1811,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_RaiseWindow(SDL_Window *window); * and Wayland window managers may vary. * * \param window the window to maximize. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1801,7 +1820,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_RaiseWindow(SDL_Window *window); * \sa SDL_RestoreWindow * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_MaximizeWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_MaximizeWindow(SDL_Window *window); /** * Request that the window be minimized to an iconic representation. @@ -1816,8 +1835,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_MaximizeWindow(SDL_Window *window); * deny the state change. * * \param window the window to minimize. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1825,7 +1844,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_MaximizeWindow(SDL_Window *window); * \sa SDL_RestoreWindow * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_MinimizeWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_MinimizeWindow(SDL_Window *window); /** * Request that the size and position of a minimized or maximized window be @@ -1841,8 +1860,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_MinimizeWindow(SDL_Window *window); * deny the state change. * * \param window the window to restore. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1850,7 +1869,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_MinimizeWindow(SDL_Window *window); * \sa SDL_MinimizeWindow * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_RestoreWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RestoreWindow(SDL_Window *window); /** * Request that the window's fullscreen state be changed. @@ -1871,8 +1890,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_RestoreWindow(SDL_Window *window); * \param window the window to change. * \param fullscreen SDL_TRUE for fullscreen mode, SDL_FALSE for windowed * mode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1880,7 +1899,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_RestoreWindow(SDL_Window *window); * \sa SDL_SetWindowFullscreenMode * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFullscreen(SDL_Window *window, SDL_bool fullscreen); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowFullscreen(SDL_Window *window, SDL_bool fullscreen); /** * Block until any pending window state is finalized. @@ -1896,9 +1915,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFullscreen(SDL_Window *window, SDL_ * * \param window the window for which to wait for the pending state to be * applied. - * \returns 0 on success, a positive value if the operation timed out before - * the window was in the requested state, or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE if the operation timed out before + * the window was in the requested state. * * \since This function is available since SDL 3.0.0. * @@ -1910,7 +1928,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFullscreen(SDL_Window *window, SDL_ * \sa SDL_RestoreWindow * \sa SDL_HINT_VIDEO_SYNC_WINDOW_OPERATIONS */ -extern SDL_DECLSPEC int SDLCALL SDL_SyncWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SyncWindow(SDL_Window *window); /** * Return whether the window has a surface associated with it. @@ -1967,14 +1985,14 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_GetWindowSurface(SDL_Window *windo * * \param window the window. * \param vsync the vertical refresh sync interval. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowSurfaceVSync */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowSurfaceVSync(SDL_Window *window, int vsync); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowSurfaceVSync(SDL_Window *window, int vsync); #define SDL_WINDOW_SURFACE_VSYNC_DISABLED 0 #define SDL_WINDOW_SURFACE_VSYNC_ADAPTIVE (-1) @@ -1985,14 +2003,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowSurfaceVSync(SDL_Window *window, in * \param window the window to query. * \param vsync an int filled with the current vertical refresh sync interval. * See SDL_SetWindowSurfaceVSync() for the meaning of the value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetWindowSurfaceVSync */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSurfaceVSync(SDL_Window *window, int *vsync); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowSurfaceVSync(SDL_Window *window, int *vsync); /** * Copy the window surface to the screen. @@ -2003,15 +2021,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSurfaceVSync(SDL_Window *window, in * This function is equivalent to the SDL 1.2 API SDL_Flip(). * * \param window the window to update. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowSurface * \sa SDL_UpdateWindowSurfaceRects */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateWindowSurface(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateWindowSurface(SDL_Window *window); /** * Copy areas of the window surface to the screen. @@ -2030,29 +2048,29 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateWindowSurface(SDL_Window *window); * \param rects an array of SDL_Rect structures representing areas of the * surface to copy, in pixels. * \param numrects the number of rectangles. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowSurface * \sa SDL_UpdateWindowSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateWindowSurfaceRects(SDL_Window *window, const SDL_Rect *rects, int numrects); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateWindowSurfaceRects(SDL_Window *window, const SDL_Rect *rects, int numrects); /** * Destroy the surface associated with the window. * * \param window the window to update. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowSurface * \sa SDL_WindowHasSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_DestroyWindowSurface(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_DestroyWindowSurface(SDL_Window *window); /** * Set a window's keyboard grab mode. @@ -2075,15 +2093,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_DestroyWindowSurface(SDL_Window *window); * * \param window the window for which the keyboard grab mode should be set. * \param grabbed this is SDL_TRUE to grab keyboard, and SDL_FALSE to release. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowKeyboardGrab * \sa SDL_SetWindowMouseGrab */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowKeyboardGrab(SDL_Window *window, SDL_bool grabbed); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowKeyboardGrab(SDL_Window *window, SDL_bool grabbed); /** * Set a window's mouse grab mode. @@ -2092,15 +2110,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowKeyboardGrab(SDL_Window *window, SD * * \param window the window for which the mouse grab mode should be set. * \param grabbed this is SDL_TRUE to grab mouse, and SDL_FALSE to release. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMouseGrab * \sa SDL_SetWindowKeyboardGrab */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMouseGrab(SDL_Window *window, SDL_bool grabbed); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowMouseGrab(SDL_Window *window, SDL_bool grabbed); /** * Get a window's keyboard grab mode. @@ -2147,15 +2165,15 @@ extern SDL_DECLSPEC SDL_Window * SDLCALL SDL_GetGrabbedWindow(void); * \param window the window that will be associated with the barrier. * \param rect a rectangle area in window-relative coordinates. If NULL the * barrier for the specified window will be destroyed. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMouseRect * \sa SDL_SetWindowMouseGrab */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMouseRect(SDL_Window *window, const SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowMouseRect(SDL_Window *window, const SDL_Rect *rect); /** * Get the mouse confinement rectangle of a window. @@ -2180,14 +2198,14 @@ extern SDL_DECLSPEC const SDL_Rect * SDLCALL SDL_GetWindowMouseRect(SDL_Window * * * \param window the window which will be made transparent or opaque. * \param opacity the opacity value (0.0f - transparent, 1.0f - opaque). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowOpacity */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowOpacity(SDL_Window *window, float opacity); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowOpacity(SDL_Window *window, float opacity); /** * Get the opacity of a window. @@ -2196,8 +2214,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowOpacity(SDL_Window *window, float o * as 1.0f without error. * * \param window the window to get the current opacity value from. - * \returns the opacity, (0.0f - transparent, 1.0f - opaque), or a negative - * error code on failure; call SDL_GetError() for more information. + * \returns the opacity, (0.0f - transparent, 1.0f - opaque), or -1.0f on + * failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -2217,12 +2235,12 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetWindowOpacity(SDL_Window *window); * * \param modal_window the window that should be set modal. * \param parent_window the parent window for the modal window. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowModalFor(SDL_Window *modal_window, SDL_Window *parent_window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowModalFor(SDL_Window *modal_window, SDL_Window *parent_window); /** * Set whether the window may have input focus. @@ -2230,12 +2248,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowModalFor(SDL_Window *modal_window, * \param window the window to set focusable state. * \param focusable SDL_TRUE to allow input focus, SDL_FALSE to not allow * input focus. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFocusable(SDL_Window *window, SDL_bool focusable); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowFocusable(SDL_Window *window, SDL_bool focusable); /** @@ -2254,12 +2272,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFocusable(SDL_Window *window, SDL_b * the client area. * \param y the y coordinate of the menu, relative to the origin (top-left) of * the client area. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowWindowSystemMenu(SDL_Window *window, int x, int y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowWindowSystemMenu(SDL_Window *window, int x, int y); /** * Possible return values from the SDL_HitTest callback. @@ -2317,7 +2335,7 @@ typedef SDL_HitTestResult (SDLCALL *SDL_HitTest)(SDL_Window *win, * Specifying NULL for a callback disables hit-testing. Hit-testing is * disabled by default. * - * Platforms that don't support this functionality will return -1 + * Platforms that don't support this functionality will return SDL_FALSE * unconditionally, even if you're attempting to disable hit-testing. * * Your callback may fire at any time, and its firing does not indicate any @@ -2331,12 +2349,12 @@ typedef SDL_HitTestResult (SDLCALL *SDL_HitTest)(SDL_Window *win, * \param window the window to set hit-testing on. * \param callback the function to call when doing a hit-test. * \param callback_data an app-defined void pointer passed to **callback**. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowHitTest(SDL_Window *window, SDL_HitTest callback, void *callback_data); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowHitTest(SDL_Window *window, SDL_HitTest callback, void *callback_data); /** * Set the shape of a transparent window. @@ -2355,24 +2373,24 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowHitTest(SDL_Window *window, SDL_Hit * \param window the window. * \param shape the surface representing the shape of the window, or NULL to * remove any current shape. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowShape(SDL_Window *window, SDL_Surface *shape); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowShape(SDL_Window *window, SDL_Surface *shape); /** * Request a window to demand attention from the user. * * \param window the window to be flashed. * \param operation the operation to perform. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_FlashWindow(SDL_Window *window, SDL_FlashOperation operation); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FlashWindow(SDL_Window *window, SDL_FlashOperation operation); /** * Destroy a window. @@ -2411,15 +2429,15 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ScreenSaverEnabled(void); /** * Allow the screen to be blanked by a screen saver. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_DisableScreenSaver * \sa SDL_ScreenSaverEnabled */ -extern SDL_DECLSPEC int SDLCALL SDL_EnableScreenSaver(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_EnableScreenSaver(void); /** * Prevent the screen from being blanked by a screen saver. @@ -2430,15 +2448,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_EnableScreenSaver(void); * The screensaver is disabled by default, but this may by changed by * SDL_HINT_VIDEO_ALLOW_SCREENSAVER. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_EnableScreenSaver * \sa SDL_ScreenSaverEnabled */ -extern SDL_DECLSPEC int SDLCALL SDL_DisableScreenSaver(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_DisableScreenSaver(void); /** @@ -2458,15 +2476,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_DisableScreenSaver(void); * * \param path the platform dependent OpenGL library name, or NULL to open the * default OpenGL library. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_GetProcAddress * \sa SDL_GL_UnloadLibrary */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_LoadLibrary(const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_LoadLibrary(const char *path); /** * Get an OpenGL function by name. @@ -2589,15 +2607,15 @@ extern SDL_DECLSPEC void SDLCALL SDL_GL_ResetAttributes(void); * \param attr an SDL_GLattr enum value specifying the OpenGL attribute to * set. * \param value the desired value for the attribute. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_GetAttribute * \sa SDL_GL_ResetAttributes */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_SetAttribute(SDL_GLattr attr, int value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_SetAttribute(SDL_GLattr attr, int value); /** * Get the actual value for an attribute from the current context. @@ -2605,15 +2623,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GL_SetAttribute(SDL_GLattr attr, int value); * \param attr an SDL_GLattr enum value specifying the OpenGL attribute to * get. * \param value a pointer filled in with the current value of `attr`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_ResetAttributes * \sa SDL_GL_SetAttribute */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_GetAttribute(SDL_GLattr attr, int *value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_GetAttribute(SDL_GLattr attr, int *value); /** * Create an OpenGL context for an OpenGL window, and make it current. @@ -2644,14 +2662,14 @@ extern SDL_DECLSPEC SDL_GLContext SDLCALL SDL_GL_CreateContext(SDL_Window *windo * * \param window the window to associate with the context. * \param context the OpenGL context to associate with the window. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_CreateContext */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_MakeCurrent(SDL_Window *window, SDL_GLContext context); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_MakeCurrent(SDL_Window *window, SDL_GLContext context); /** * Get the currently active OpenGL window. @@ -2740,8 +2758,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_EGL_SetAttributeCallbacks(SDL_EGLAttribArra * the vertical retrace for a given frame, it swaps buffers immediately, which * might be less jarring for the user during occasional framerate drops. If an * application requests adaptive vsync and the system does not support it, - * this function will fail and return -1. In such a case, you should probably - * retry the call with 1 for the interval. + * this function will fail and return SDL_FALSE. In such a case, you should + * probably retry the call with 1 for the interval. * * Adaptive vsync is implemented for some glX drivers with * GLX_EXT_swap_control_tear, and for some Windows drivers with @@ -2752,14 +2770,14 @@ extern SDL_DECLSPEC void SDLCALL SDL_EGL_SetAttributeCallbacks(SDL_EGLAttribArra * * \param interval 0 for immediate updates, 1 for updates synchronized with * the vertical retrace, -1 for adaptive vsync. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_GetSwapInterval */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_SetSwapInterval(int interval); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_SetSwapInterval(int interval); /** * Get the swap interval for the current OpenGL context. @@ -2771,14 +2789,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GL_SetSwapInterval(int interval); * synchronization, 1 if the buffer swap is synchronized with * the vertical retrace, and -1 if late swaps happen * immediately instead of waiting for the next retrace. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_SetSwapInterval */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_GetSwapInterval(int *interval); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_GetSwapInterval(int *interval); /** * Update a window with OpenGL rendering. @@ -2791,25 +2809,25 @@ extern SDL_DECLSPEC int SDLCALL SDL_GL_GetSwapInterval(int *interval); * extra. * * \param window the window to change. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_SwapWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_SwapWindow(SDL_Window *window); /** * Delete an OpenGL context. * * \param context the OpenGL context to be deleted. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_CreateContext */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_DestroyContext(SDL_GLContext context); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_DestroyContext(SDL_GLContext context); /* @} *//* OpenGL support functions */ diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_vulkan.h b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_vulkan.h index 6dd0537..c31d33c 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_vulkan.h +++ b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Headers/SDL_vulkan.h @@ -95,15 +95,15 @@ struct VkAllocationCallbacks; * library version. * * \param path the platform dependent Vulkan loader library name or NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_Vulkan_GetVkGetInstanceProcAddr * \sa SDL_Vulkan_UnloadLibrary */ -extern SDL_DECLSPEC int SDLCALL SDL_Vulkan_LoadLibrary(const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_Vulkan_LoadLibrary(const char *path); /** * Get the address of the `vkGetInstanceProcAddr` function. @@ -175,18 +175,18 @@ extern SDL_DECLSPEC char const * const * SDLCALL SDL_Vulkan_GetInstanceExtension * allocator that creates the surface. Can be NULL. * \param surface a pointer to a VkSurfaceKHR handle to output the newly * created surface. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_Vulkan_GetInstanceExtensions * \sa SDL_Vulkan_DestroySurface */ -extern SDL_DECLSPEC int SDLCALL SDL_Vulkan_CreateSurface(SDL_Window *window, - VkInstance instance, - const struct VkAllocationCallbacks *allocator, - VkSurfaceKHR* surface); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_Vulkan_CreateSurface(SDL_Window *window, + VkInstance instance, + const struct VkAllocationCallbacks *allocator, + VkSurfaceKHR* surface); /** * Destroy the Vulkan rendering surface of a window. diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Info.plist b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/Info.plist index d58297c1ad752551f9cb61f506a997cde7eb95e9..0555f88782d2e7408ae9acf4803733ea22140850 100644 GIT binary patch delta 67 zcmcb^c86^PBNMZ+Y3gJarkVOqrUpjFNfDU^8Toms`NbiI7J7y;Fdm2#VrXV)5MgKr NRA^wBI{6IK1OUD(6tVyS delta 67 zcmcb^c86^PBNMZMWzJ+4rkVPVrpAV5X%U$P8Toms`NbiI7J3FTFdm2#VrXVy5MgNM OXli6=m^S$g(*yv)HWb1D diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/SDL3 b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/SDL3 index b4b66d8b97bfbee427981cbf8376745919eb59ca..b1152908408e7d338b5773a24a7faccbc2c2712c 100755 GIT binary patch delta 568893 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�Jb=qwi`{BCEv^YN7t`m?yk+wbT<1V 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 A%r+jR& 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 delta 557310 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%0AWQQfu1huYVvLwEEjZZ2o=wytB!l{+N*-q15-mc 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./${shadername}_$fileplatform.h + rm -f $shadername.air $shadername.metallib + done +} + +generate_shaders macos macos macosx 10.11 +generate_shaders ios ios iphoneos 8.0 +generate_shaders iphonesimulator ios iphonesimulator 8.0 +generate_shaders tvos ios appletvos 9.0 +generate_shaders tvsimulator ios appletvsimulator 9.0 + +# Bundle together one mega-header +catShaders() +{ + target=$1 + for shadername in "${shadernames[@]}"; do + cat ${shadername}_$target.h >> Metal_Blit.h + done +} + +rm -f Metal_Blit.h +echo "#if defined(SDL_PLATFORM_IOS)" >> Metal_Blit.h + echo "#if TARGET_OS_SIMULATOR" >> Metal_Blit.h + catShaders iphonesimulator + echo "#else" >> Metal_Blit.h + catShaders ios + echo "#endif" >> Metal_Blit.h +echo "#elif defined(SDL_PLATFORM_TVOS)" >> Metal_Blit.h + echo "#if TARGET_OS_SIMULATOR" >> Metal_Blit.h + catShaders tvsimulator + echo "#else" >> Metal_Blit.h + catShaders tvos + echo "#endif" >> Metal_Blit.h +echo "#else" >> Metal_Blit.h + catShaders macos +echo "#endif" >> Metal_Blit.h + +# Clean up +cleanupShaders() +{ + target=$1 + for shadername in "${shadernames[@]}"; do + rm -f ${shadername}_$target.h + done +} +cleanupShaders iphonesimulator +cleanupShaders ios +cleanupShaders tvsimulator +cleanupShaders tvos +cleanupShaders macos \ No newline at end of file diff --git a/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/default.metallib b/Frameworks/SDL3.xcframework/ios-arm64/SDL3.framework/default.metallib index c487958db0a25c0d41fa7bc837b834fb5033ae6d..24685fd8b44e6fb3c6aec8d33c8989b7afa3b0e3 100644 GIT binary patch delta 422 zcmcb6n(^*w#tAJ7H&X0#8s{%cd2;yF^uCxW<#WF_@L%l8Ssb?EeA+jEt%(ztq$*ru zJ;djAYelh;nNYW=<1kI)5v3PLp5P z9$kObW7A{{rfh}koq21M{d~`?s+i62MqExV^v6Nt1y9#{Ow6kPZL;ZF>*T{sX$rf7 z=idKRWB-pc?O5k=`F$dvbN8OnckSQm@})B7#_f~$H+wQyuri8FKEx3qvW$&o>DnH> zp0jJ#q`I-Wr5#I6Teew^Gnxk|-z17d{+XyF4Dxi`D2&2()Sl& xTr#=KJ{Y_FNBa+wK>0_Jfg&pz9W%8Tb0-^XXV0A2IB{m-%$X}UyGKpq1^^)ozXJdO delta 422 zcmcb6n(^*w#tAJ7?b19o5tYw>@5&Zc@C#WpMRe6KbHj>tjJ@{WN?!Fx9#347sxVt} z9&5`rohS8^Yx z+^-*d5JDO(}v{+dk&?mTXMN0wiC%yH?Ef=}e$IkFO)J)0OW_r@%qIQcMBn!?e_ zL`ye*)-$vEPd9tKwp*&~bR_&+()P@YE7|j2%Vs^??8#ig%E&VL5J!MW8XL>fwLN-0 zXVT3wpoocng=M~B#J}+nW!TVBg143B|q%?yOexD`mgKxW0$wm_ZMJP wncQU`j9vbt{Rc^){G-S~k(rE+nc9oFlZ~~rXHIOKIJ0o(%$b|rqo#2K00R589{>OV diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL.h index 4e18f63..c963394 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL.h @@ -43,6 +43,7 @@ #include #include #include +#include #include #include #include diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_assert.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_assert.h index 346d1e3..f5f798e 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_assert.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_assert.h @@ -303,9 +303,6 @@ extern SDL_DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData * * "break" so that your debugger takes control as soon as assert is triggered, * instead of risking a bad UI interaction (deadlock, etc) in the application. * - * Note that SDL_ASSERT is an _environment variable_ and not an SDL hint! - * Please refer to your platform's documentation for how to set it! - * * \param condition boolean value to test. * * \since This macro is available since SDL 3.0.0. @@ -335,9 +332,7 @@ extern SDL_DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData * * an assertion in a background thread, it might be desirable to set this to * "break" so that your debugger takes control as soon as assert is triggered, * instead of risking a bad UI interaction (deadlock, etc) in the application. - * - * Note that SDL_ASSERT is an _environment variable_ and not an SDL hint! - * Please refer to your platform's documentation for how to set it! + * * * * \param condition boolean value to test. * @@ -366,18 +361,14 @@ extern SDL_DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData * * "break" so that your debugger takes control as soon as assert is triggered, * instead of risking a bad UI interaction (deadlock, etc) in the application. * - * Note that SDL_ASSERT is an _environment variable_ and not an SDL hint! - * Please refer to your platform's documentation for how to set it! - * * \param condition boolean value to test. * * \since This macro is available since SDL 3.0.0. */ #define SDL_assert_paranoid(condition) SDL_disabled_assert(condition) -#endif /* Enable various levels of assertions. */ -#if SDL_ASSERT_LEVEL == 0 /* assertions disabled */ +#elif SDL_ASSERT_LEVEL == 0 /* assertions disabled */ # define SDL_assert(condition) SDL_disabled_assert(condition) # define SDL_assert_release(condition) SDL_disabled_assert(condition) # define SDL_assert_paranoid(condition) SDL_disabled_assert(condition) @@ -412,9 +403,6 @@ extern SDL_DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData * * "break" so that your debugger takes control as soon as assert is triggered, * instead of risking a bad UI interaction (deadlock, etc) in the application. * - * Note that SDL_ASSERT is an _environment variable_ and not an SDL hint! - * Please refer to your platform's documentation for how to set it! - * * \param condition boolean value to test. * * \since This macro is available since SDL 3.0.0. diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_atomic.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_atomic.h index fbf01c4..f159bcd 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_atomic.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_atomic.h @@ -455,8 +455,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_AtomicAdd(SDL_AtomicInt *a, int v); * \since This function is available since SDL 3.0.0. * * \sa SDL_AtomicCompareAndSwap - * \sa SDL_AtomicGetPtr - * \sa SDL_AtomicSetPtr + * \sa SDL_AtomicGetPointer + * \sa SDL_AtomicSetPointer */ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AtomicCompareAndSwapPointer(void **a, void *oldval, void *newval); @@ -475,9 +475,9 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AtomicCompareAndSwapPointer(void **a, v * \since This function is available since SDL 3.0.0. * * \sa SDL_AtomicCompareAndSwapPointer - * \sa SDL_AtomicGetPtr + * \sa SDL_AtomicGetPointer */ -extern SDL_DECLSPEC void * SDLCALL SDL_AtomicSetPtr(void **a, void *v); +extern SDL_DECLSPEC void * SDLCALL SDL_AtomicSetPointer(void **a, void *v); /** * Get the value of a pointer atomically. @@ -493,9 +493,9 @@ extern SDL_DECLSPEC void * SDLCALL SDL_AtomicSetPtr(void **a, void *v); * \since This function is available since SDL 3.0.0. * * \sa SDL_AtomicCompareAndSwapPointer - * \sa SDL_AtomicSetPtr + * \sa SDL_AtomicSetPointer */ -extern SDL_DECLSPEC void * SDLCALL SDL_AtomicGetPtr(void **a); +extern SDL_DECLSPEC void * SDLCALL SDL_AtomicGetPointer(void **a); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_audio.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_audio.h index f25959c..b7a4b7b 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_audio.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_audio.h @@ -127,6 +127,7 @@ extern "C" { */ typedef enum SDL_AudioFormat { + SDL_AUDIO_UNKNOWN = 0x0000u, /**< Unspecified audio format */ SDL_AUDIO_U8 = 0x0008u, /**< Unsigned 8-bit samples */ /* SDL_DEFINE_AUDIO_FORMAT(0, 0, 0, 8), */ SDL_AUDIO_S8 = 0x8008u, /**< Signed 8-bit samples */ @@ -531,14 +532,14 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetAudioDeviceName(SDL_AudioDeviceI * \param spec on return, will be filled with device details. * \param sample_frames pointer to store device buffer size, in sample frames. * Can be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetAudioDeviceFormat(SDL_AudioDeviceID devid, SDL_AudioSpec *spec, int *sample_frames); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetAudioDeviceFormat(SDL_AudioDeviceID devid, SDL_AudioSpec *spec, int *sample_frames); /** * Get the current channel map of an audio device. @@ -658,8 +659,8 @@ extern SDL_DECLSPEC SDL_AudioDeviceID SDLCALL SDL_OpenAudioDevice(SDL_AudioDevic * created through SDL_OpenAudioDevice() can be. * * \param dev a device opened by SDL_OpenAudioDevice(). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -668,7 +669,7 @@ extern SDL_DECLSPEC SDL_AudioDeviceID SDLCALL SDL_OpenAudioDevice(SDL_AudioDevic * \sa SDL_ResumeAudioDevice * \sa SDL_AudioDevicePaused */ -extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev); /** * Use this function to unpause audio playback on a specified device. @@ -686,8 +687,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev); * created through SDL_OpenAudioDevice() can be. * * \param dev a device opened by SDL_OpenAudioDevice(). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -696,7 +697,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev); * \sa SDL_AudioDevicePaused * \sa SDL_PauseAudioDevice */ -extern SDL_DECLSPEC int SDLCALL SDL_ResumeAudioDevice(SDL_AudioDeviceID dev); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ResumeAudioDevice(SDL_AudioDeviceID dev); /** * Use this function to query if an audio device is paused. @@ -766,8 +767,8 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioDeviceGain(SDL_AudioDeviceID devid * * \param devid the audio device on which to change gain. * \param gain the gain. 1.0f is no change, 0.0f is silence. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. @@ -776,7 +777,7 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioDeviceGain(SDL_AudioDeviceID devid * * \sa SDL_GetAudioDeviceGain */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioDeviceGain(SDL_AudioDeviceID devid, float gain); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioDeviceGain(SDL_AudioDeviceID devid, float gain); /** * Close a previously-opened audio device. @@ -823,8 +824,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_CloseAudioDevice(SDL_AudioDeviceID devid); * \param devid an audio device to bind a stream to. * \param streams an array of audio streams to bind. * \param num_streams number streams listed in the `streams` array. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -834,7 +835,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_CloseAudioDevice(SDL_AudioDeviceID devid); * \sa SDL_UnbindAudioStream * \sa SDL_GetAudioStreamDevice */ -extern SDL_DECLSPEC int SDLCALL SDL_BindAudioStreams(SDL_AudioDeviceID devid, SDL_AudioStream **streams, int num_streams); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BindAudioStreams(SDL_AudioDeviceID devid, SDL_AudioStream **streams, int num_streams); /** * Bind a single audio stream to an audio device. @@ -844,8 +845,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BindAudioStreams(SDL_AudioDeviceID devid, SD * * \param devid an audio device to bind a stream to. * \param stream an audio stream to bind to a device. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -855,7 +856,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BindAudioStreams(SDL_AudioDeviceID devid, SD * \sa SDL_UnbindAudioStream * \sa SDL_GetAudioStreamDevice */ -extern SDL_DECLSPEC int SDLCALL SDL_BindAudioStream(SDL_AudioDeviceID devid, SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BindAudioStream(SDL_AudioDeviceID devid, SDL_AudioStream *stream); /** * Unbind a list of audio streams from their audio devices. @@ -952,8 +953,8 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetAudioStreamProperties(SDL_Au * \param stream the SDL_AudioStream to query. * \param src_spec where to store the input audio format; ignored if NULL. * \param dst_spec where to store the output audio format; ignored if NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. @@ -962,9 +963,7 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetAudioStreamProperties(SDL_Au * * \sa SDL_SetAudioStreamFormat */ -extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamFormat(SDL_AudioStream *stream, - SDL_AudioSpec *src_spec, - SDL_AudioSpec *dst_spec); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetAudioStreamFormat(SDL_AudioStream *stream, SDL_AudioSpec *src_spec, SDL_AudioSpec *dst_spec); /** * Change the input and output formats of an audio stream. @@ -984,8 +983,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamFormat(SDL_AudioStream *stream * changed. * \param dst_spec the new format of the audio output; if NULL, it is not * changed. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. @@ -995,9 +994,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamFormat(SDL_AudioStream *stream * \sa SDL_GetAudioStreamFormat * \sa SDL_SetAudioStreamFrequencyRatio */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamFormat(SDL_AudioStream *stream, - const SDL_AudioSpec *src_spec, - const SDL_AudioSpec *dst_spec); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamFormat(SDL_AudioStream *stream, const SDL_AudioSpec *src_spec, const SDL_AudioSpec *dst_spec); /** * Get the frequency ratio of an audio stream. @@ -1030,8 +1027,8 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioStreamFrequencyRatio(SDL_AudioStre * \param stream the stream the frequency ratio is being changed. * \param ratio the frequency ratio. 1.0 is normal speed. Must be between 0.01 * and 100. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. @@ -1041,7 +1038,7 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioStreamFrequencyRatio(SDL_AudioStre * \sa SDL_GetAudioStreamFrequencyRatio * \sa SDL_SetAudioStreamFormat */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamFrequencyRatio(SDL_AudioStream *stream, float ratio); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamFrequencyRatio(SDL_AudioStream *stream, float ratio); /** * Get the gain of an audio stream. @@ -1077,8 +1074,8 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioStreamGain(SDL_AudioStream *stream * * \param stream the stream on which the gain is being changed. * \param gain the gain. 1.0f is no change, 0.0f is silence. - * \returns 0 on successor a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. @@ -1087,7 +1084,7 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioStreamGain(SDL_AudioStream *stream * * \sa SDL_GetAudioStreamGain */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamGain(SDL_AudioStream *stream, float gain); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamGain(SDL_AudioStream *stream, float gain); /** * Get the current input channel map of an audio stream. @@ -1174,8 +1171,8 @@ extern SDL_DECLSPEC int * SDLCALL SDL_GetAudioStreamOutputChannelMap(SDL_AudioSt * \param stream the SDL_AudioStream to change. * \param chmap the new channel map, NULL to reset to default. * \param count The number of channels in the map. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. Don't change the @@ -1186,7 +1183,7 @@ extern SDL_DECLSPEC int * SDLCALL SDL_GetAudioStreamOutputChannelMap(SDL_AudioSt * * \sa SDL_SetAudioStreamInputChannelMap */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamInputChannelMap(SDL_AudioStream *stream, const int *chmap, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamInputChannelMap(SDL_AudioStream *stream, const int *chmap, int count); /** * Set the current output channel map of an audio stream. @@ -1221,8 +1218,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamInputChannelMap(SDL_AudioStrea * \param stream the SDL_AudioStream to change. * \param chmap the new channel map, NULL to reset to default. * \param count The number of channels in the map. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. Don't change the @@ -1233,7 +1230,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamInputChannelMap(SDL_AudioStrea * * \sa SDL_SetAudioStreamInputChannelMap */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamOutputChannelMap(SDL_AudioStream *stream, const int *chmap, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamOutputChannelMap(SDL_AudioStream *stream, const int *chmap, int count); /** * Add data to the stream. @@ -1249,8 +1246,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamOutputChannelMap(SDL_AudioStre * \param stream the stream the audio data is being added to. * \param buf a pointer to the audio data to add. * \param len the number of bytes to write to the stream. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, but if the * stream has a callback set, the caller might need to manage @@ -1263,7 +1260,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamOutputChannelMap(SDL_AudioStre * \sa SDL_GetAudioStreamData * \sa SDL_GetAudioStreamQueued */ -extern SDL_DECLSPEC int SDLCALL SDL_PutAudioStreamData(SDL_AudioStream *stream, const void *buf, int len); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PutAudioStreamData(SDL_AudioStream *stream, const void *buf, int len); /** * Get converted/resampled data from the stream. @@ -1280,8 +1277,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_PutAudioStreamData(SDL_AudioStream *stream, * \param stream the stream the audio is being requested from. * \param buf a buffer to fill with audio data. * \param len the maximum number of bytes to fill. - * \returns the number of bytes read from the stream or a negative error code - * on failure; call SDL_GetError() for more information. + * \returns the number of bytes read from the stream or -1 on failure; call + * SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread, but if the * stream has a callback set, the caller might need to manage @@ -1309,7 +1306,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamData(SDL_AudioStream *stream, * clamped. * * \param stream the audio stream to query. - * \returns the number of converted/resampled bytes available. + * \returns the number of converted/resampled bytes available or -1 on + * failure; call SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1341,7 +1339,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamAvailable(SDL_AudioStream *str * clamped. * * \param stream the audio stream to query. - * \returns the number of bytes queued. + * \returns the number of bytes queued or -1 on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1362,8 +1361,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamQueued(SDL_AudioStream *stream * input, so the complete output becomes available. * * \param stream the audio stream to flush. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1371,7 +1370,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamQueued(SDL_AudioStream *stream * * \sa SDL_PutAudioStreamData */ -extern SDL_DECLSPEC int SDLCALL SDL_FlushAudioStream(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FlushAudioStream(SDL_AudioStream *stream); /** * Clear any pending data in the stream. @@ -1380,8 +1379,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_FlushAudioStream(SDL_AudioStream *stream); * stream until more is added. * * \param stream the audio stream to clear. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1392,7 +1391,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_FlushAudioStream(SDL_AudioStream *stream); * \sa SDL_GetAudioStreamQueued * \sa SDL_PutAudioStreamData */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearAudioStream(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearAudioStream(SDL_AudioStream *stream); /** * Use this function to pause audio playback on the audio device associated @@ -1407,8 +1406,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_ClearAudioStream(SDL_AudioStream *stream); * loading, etc. * * \param stream the audio stream associated with the audio device to pause. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1416,7 +1415,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_ClearAudioStream(SDL_AudioStream *stream); * * \sa SDL_ResumeAudioStreamDevice */ -extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioStreamDevice(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PauseAudioStreamDevice(SDL_AudioStream *stream); /** * Use this function to unpause audio playback on the audio device associated @@ -1427,8 +1426,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioStreamDevice(SDL_AudioStream *stre * to progress again, and audio can be generated. * * \param stream the audio stream associated with the audio device to resume. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1436,7 +1435,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioStreamDevice(SDL_AudioStream *stre * * \sa SDL_PauseAudioStreamDevice */ -extern SDL_DECLSPEC int SDLCALL SDL_ResumeAudioStreamDevice(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ResumeAudioStreamDevice(SDL_AudioStream *stream); /** * Lock an audio stream for serialized access. @@ -1455,8 +1454,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_ResumeAudioStreamDevice(SDL_AudioStream *str * all the same attributes (recursive locks are allowed, etc). * * \param stream the audio stream to lock. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1464,7 +1463,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_ResumeAudioStreamDevice(SDL_AudioStream *str * * \sa SDL_UnlockAudioStream */ -extern SDL_DECLSPEC int SDLCALL SDL_LockAudioStream(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LockAudioStream(SDL_AudioStream *stream); /** @@ -1473,8 +1472,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_LockAudioStream(SDL_AudioStream *stream); * This unlocks an audio stream after a call to SDL_LockAudioStream. * * \param stream the audio stream to unlock. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety You should only call this from the same thread that * previously called SDL_LockAudioStream. @@ -1483,7 +1482,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_LockAudioStream(SDL_AudioStream *stream); * * \sa SDL_LockAudioStream */ -extern SDL_DECLSPEC int SDLCALL SDL_UnlockAudioStream(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UnlockAudioStream(SDL_AudioStream *stream); /** * A callback that fires when data passes through an SDL_AudioStream. @@ -1558,13 +1557,12 @@ typedef void (SDLCALL *SDL_AudioStreamCallback)(void *userdata, SDL_AudioStream * Setting a NULL function turns off the callback. * * \param stream the audio stream to set the new callback on. - * \param callback the new callback function to call when data is added to the - * stream. + * \param callback the new callback function to call when data is requested + * from the stream. * \param userdata an opaque pointer provided to the callback for its own * personal use. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. This only fails if `stream` - * is NULL. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. This only fails if `stream` is NULL. * * \threadsafety It is safe to call this function from any thread. * @@ -1572,7 +1570,7 @@ typedef void (SDLCALL *SDL_AudioStreamCallback)(void *userdata, SDL_AudioStream * * \sa SDL_SetAudioStreamPutCallback */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamGetCallback(SDL_AudioStream *stream, SDL_AudioStreamCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamGetCallback(SDL_AudioStream *stream, SDL_AudioStreamCallback callback, void *userdata); /** * Set a callback that runs when data is added to an audio stream. @@ -1612,9 +1610,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamGetCallback(SDL_AudioStream *s * stream. * \param userdata an opaque pointer provided to the callback for its own * personal use. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. This only fails if `stream` - * is NULL. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. This only fails if `stream` is NULL. * * \threadsafety It is safe to call this function from any thread. * @@ -1622,7 +1619,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamGetCallback(SDL_AudioStream *s * * \sa SDL_SetAudioStreamGetCallback */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamPutCallback(SDL_AudioStream *stream, SDL_AudioStreamCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamPutCallback(SDL_AudioStream *stream, SDL_AudioStreamCallback callback, void *userdata); /** @@ -1791,14 +1788,14 @@ typedef void (SDLCALL *SDL_AudioPostmixCallback)(void *userdata, const SDL_Audio * \param devid the ID of an opened audio device. * \param callback a callback function to be called. Can be NULL. * \param userdata app-controlled pointer passed to callback. Can be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioPostmixCallback(SDL_AudioDeviceID devid, SDL_AudioPostmixCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioPostmixCallback(SDL_AudioDeviceID devid, SDL_AudioPostmixCallback callback, void *userdata); /** @@ -1861,13 +1858,13 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioPostmixCallback(SDL_AudioDeviceID de * function. * \param audio_len a pointer filled with the length of the audio data buffer * in bytes. - * \returns 0 on success. `audio_buf` will be filled with a pointer to an - * allocated buffer containing the audio data, and `audio_len` is + * \returns SDL_TRUE on success. `audio_buf` will be filled with a pointer to + * an allocated buffer containing the audio data, and `audio_len` is * filled with the length of that audio buffer in bytes. * - * This function returns -1 if the .WAV file cannot be opened, uses - * an unknown data format, or is corrupt; call SDL_GetError() for - * more information. + * This function returns SDL_FALSE if the .WAV file cannot be opened, + * uses an unknown data format, or is corrupt; call SDL_GetError() + * for more information. * * When the application is done with the data returned in * `audio_buf`, it should call SDL_free() to dispose of it. @@ -1879,9 +1876,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioPostmixCallback(SDL_AudioDeviceID de * \sa SDL_free * \sa SDL_LoadWAV */ -extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV_IO(SDL_IOStream * src, SDL_bool closeio, - SDL_AudioSpec * spec, Uint8 ** audio_buf, - Uint32 * audio_len); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LoadWAV_IO(SDL_IOStream *src, SDL_bool closeio, SDL_AudioSpec *spec, Uint8 **audio_buf, Uint32 *audio_len); /** * Loads a WAV from a file path. @@ -1889,7 +1884,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV_IO(SDL_IOStream * src, SDL_bool clos * This is a convenience function that is effectively the same as: * * ```c - * SDL_LoadWAV_IO(SDL_IOFromFile(path, "rb"), 1, spec, audio_buf, audio_len); + * SDL_LoadWAV_IO(SDL_IOFromFile(path, "rb"), SDL_TRUE, spec, audio_buf, audio_len); * ``` * * \param path the file path of the WAV file to open. @@ -1899,13 +1894,13 @@ extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV_IO(SDL_IOStream * src, SDL_bool clos * function. * \param audio_len a pointer filled with the length of the audio data buffer * in bytes. - * \returns 0 on success. `audio_buf` will be filled with a pointer to an - * allocated buffer containing the audio data, and `audio_len` is + * \returns SDL_TRUE on success. `audio_buf` will be filled with a pointer to + * an allocated buffer containing the audio data, and `audio_len` is * filled with the length of that audio buffer in bytes. * - * This function returns -1 if the .WAV file cannot be opened, uses - * an unknown data format, or is corrupt; call SDL_GetError() for - * more information. + * This function returns SDL_FALSE if the .WAV file cannot be opened, + * uses an unknown data format, or is corrupt; call SDL_GetError() + * for more information. * * When the application is done with the data returned in * `audio_buf`, it should call SDL_free() to dispose of it. @@ -1917,8 +1912,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV_IO(SDL_IOStream * src, SDL_bool clos * \sa SDL_free * \sa SDL_LoadWAV_IO */ -extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV(const char *path, SDL_AudioSpec * spec, - Uint8 ** audio_buf, Uint32 * audio_len); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LoadWAV(const char *path, SDL_AudioSpec *spec, Uint8 **audio_buf, Uint32 *audio_len); /** * Mix audio data in a specified format. @@ -1947,17 +1941,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV(const char *path, SDL_AudioSpec * sp * \param len the length of the audio buffer in bytes. * \param volume ranges from 0.0 - 1.0, and should be set to 1.0 for full * audio volume. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_MixAudio(Uint8 * dst, - const Uint8 * src, - SDL_AudioFormat format, - Uint32 len, float volume); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_MixAudio(Uint8 *dst, const Uint8 *src, SDL_AudioFormat format, Uint32 len, float volume); /** * Convert some audio data of one format to another format. @@ -1980,20 +1971,27 @@ extern SDL_DECLSPEC int SDLCALL SDL_MixAudio(Uint8 * dst, * which should be freed with SDL_free(). On error, it will be * NULL. * \param dst_len will be filled with the len of dst_data. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ConvertAudioSamples(const SDL_AudioSpec *src_spec, - const Uint8 *src_data, - int src_len, - const SDL_AudioSpec *dst_spec, - Uint8 **dst_data, - int *dst_len); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ConvertAudioSamples(const SDL_AudioSpec *src_spec, const Uint8 *src_data, int src_len, const SDL_AudioSpec *dst_spec, Uint8 **dst_data, int *dst_len); +/** + * Get the human readable name of an audio format. + * + * \param format the audio format to query. + * \returns the human readable name of the specified audio format or + * "SDL_AUDIO_UNKNOWN" if the format isn't recognized. + * + * \threadsafety It is safe to call this function from any thread. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC const char * SDLCALL SDL_GetAudioFormatName(SDL_AudioFormat format); /** * Get the appropriate memset value for silencing an audio format. diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_camera.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_camera.h index 46dcee1..3d4c57e 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_camera.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_camera.h @@ -48,8 +48,7 @@ extern "C" { * * If the device is disconnected and reconnected, it will get a new ID. * - * The ID value starts at 1 and increments from there. The value 0 is an - * invalid ID. + * The value 0 is an invalid ID. * * \since This datatype is available since SDL 3.0.0. * @@ -367,15 +366,15 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetCameraProperties(SDL_Camera * be converting to this format behind the scenes. * * If the system is waiting for the user to approve access to the camera, as - * some platforms require, this will return -1, but this isn't necessarily a - * fatal error; you should either wait for an SDL_EVENT_CAMERA_DEVICE_APPROVED - * (or SDL_EVENT_CAMERA_DEVICE_DENIED) event, or poll SDL_IsCameraApproved() - * occasionally until it returns non-zero. + * some platforms require, this will return SDL_FALSE, but this isn't + * necessarily a fatal error; you should either wait for an + * SDL_EVENT_CAMERA_DEVICE_APPROVED (or SDL_EVENT_CAMERA_DEVICE_DENIED) event, + * or poll SDL_IsCameraApproved() occasionally until it returns non-zero. * * \param camera opened camera device. * \param spec the SDL_CameraSpec to be initialized by this function. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -383,7 +382,7 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetCameraProperties(SDL_Camera * * \sa SDL_OpenCamera */ -extern SDL_DECLSPEC int SDLCALL SDL_GetCameraFormat(SDL_Camera *camera, SDL_CameraSpec *spec); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetCameraFormat(SDL_Camera *camera, SDL_CameraSpec *spec); /** * Acquire a frame. @@ -447,8 +446,6 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_AcquireCameraFrame(SDL_Camera *cam * * \param camera opened camera device. * \param frame the video frame surface to release. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -456,7 +453,7 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_AcquireCameraFrame(SDL_Camera *cam * * \sa SDL_AcquireCameraFrame */ -extern SDL_DECLSPEC int SDLCALL SDL_ReleaseCameraFrame(SDL_Camera *camera, SDL_Surface *frame); +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseCameraFrame(SDL_Camera *camera, SDL_Surface *frame); /** * Use this function to shut down camera processing and close the camera diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_clipboard.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_clipboard.h index ccd3201..4d4ae32 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_clipboard.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_clipboard.h @@ -46,15 +46,15 @@ extern "C" { * Put UTF-8 text into the clipboard. * * \param text the text to store in the clipboard. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetClipboardText * \sa SDL_HasClipboardText */ -extern SDL_DECLSPEC int SDLCALL SDL_SetClipboardText(const char *text); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetClipboardText(const char *text); /** * Get UTF-8 text from the clipboard. @@ -89,15 +89,15 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasClipboardText(void); * Put UTF-8 text into the primary selection. * * \param text the text to store in the primary selection. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetPrimarySelectionText * \sa SDL_HasPrimarySelectionText */ -extern SDL_DECLSPEC int SDLCALL SDL_SetPrimarySelectionText(const char *text); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetPrimarySelectionText(const char *text); /** * Get UTF-8 text from the primary selection. @@ -185,8 +185,8 @@ typedef void (SDLCALL *SDL_ClipboardCleanupCallback)(void *userdata); * \param userdata an opaque pointer that will be forwarded to the callbacks. * \param mime_types a list of mime-types that are being offered. * \param num_mime_types the number of mime-types in the mime_types list. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -194,19 +194,19 @@ typedef void (SDLCALL *SDL_ClipboardCleanupCallback)(void *userdata); * \sa SDL_GetClipboardData * \sa SDL_HasClipboardData */ -extern SDL_DECLSPEC int SDLCALL SDL_SetClipboardData(SDL_ClipboardDataCallback callback, SDL_ClipboardCleanupCallback cleanup, void *userdata, const char **mime_types, size_t num_mime_types); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetClipboardData(SDL_ClipboardDataCallback callback, SDL_ClipboardCleanupCallback cleanup, void *userdata, const char **mime_types, size_t num_mime_types); /** * Clear the clipboard data. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetClipboardData */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearClipboardData(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearClipboardData(void); /** * Get the data from clipboard for a given mime type. diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_error.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_error.h index 75e8370..a98823f 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_error.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_error.h @@ -56,25 +56,25 @@ extern "C" { * \param fmt a printf()-style message format string. * \param ... additional parameters matching % tokens in the `fmt` string, if * any. - * \returns -1. + * \returns SDL_FALSE. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ClearError * \sa SDL_GetError */ -extern SDL_DECLSPEC int SDLCALL SDL_SetError(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetError(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1); /** * Set an error indicating that memory allocation failed. * * This function does not do any memory allocation. * - * \returns -1. + * \returns SDL_FALSE. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_OutOfMemory(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_OutOfMemory(void); /** * Retrieve a message about the last error that occurred on the current @@ -114,14 +114,14 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetError(void); /** * Clear any previous error message for this thread. * - * \returns 0. + * \returns SDL_TRUE. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetError * \sa SDL_SetError */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearError(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearError(void); /** * \name Internal error functions diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_events.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_events.h index 4c113f9..fbe2bb0 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_events.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_events.h @@ -151,8 +151,6 @@ typedef enum SDL_EventType in an event watcher, the window handle is still valid and can still be used to retrieve any userdata associated with the window. Otherwise, the handle has already been destroyed and all resources associated with it are invalid */ - SDL_EVENT_WINDOW_PEN_ENTER, /**< Window has gained focus of the pressure-sensitive pen with ID "data1" */ - SDL_EVENT_WINDOW_PEN_LEAVE, /**< Window has lost focus of the pressure-sensitive pen with ID "data1" */ SDL_EVENT_WINDOW_HDR_STATE_CHANGED, /**< Window HDR properties have changed */ SDL_EVENT_WINDOW_FIRST = SDL_EVENT_WINDOW_SHOWN, SDL_EVENT_WINDOW_LAST = SDL_EVENT_WINDOW_HDR_STATE_CHANGED, @@ -227,11 +225,14 @@ typedef enum SDL_EventType SDL_EVENT_SENSOR_UPDATE = 0x1200, /**< A sensor was updated */ /* Pressure-sensitive pen events */ - SDL_EVENT_PEN_DOWN = 0x1300, /**< Pressure-sensitive pen touched drawing surface */ + SDL_EVENT_PEN_PROXIMITY_IN = 0x1300, /**< Pressure-sensitive pen has become available */ + SDL_EVENT_PEN_PROXIMITY_OUT, /**< Pressure-sensitive pen has become unavailable */ + SDL_EVENT_PEN_DOWN, /**< Pressure-sensitive pen touched drawing surface */ SDL_EVENT_PEN_UP, /**< Pressure-sensitive pen stopped touching drawing surface */ - SDL_EVENT_PEN_MOTION, /**< Pressure-sensitive pen moved, or angle/pressure changed */ SDL_EVENT_PEN_BUTTON_DOWN, /**< Pressure-sensitive pen button pressed */ SDL_EVENT_PEN_BUTTON_UP, /**< Pressure-sensitive pen button released */ + SDL_EVENT_PEN_MOTION, /**< Pressure-sensitive pen is moving on the tablet */ + SDL_EVENT_PEN_AXIS, /**< Pressure-sensitive pen angle/pressure/etc changed */ /* Camera hotplug events */ SDL_EVENT_CAMERA_DEVICE_ADDED = 0x1400, /**< A new camera device is available */ @@ -426,7 +427,7 @@ typedef struct SDL_MouseMotionEvent Uint32 reserved; Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ SDL_WindowID windowID; /**< The window with mouse focus, if any */ - SDL_MouseID which; /**< The mouse instance id, SDL_TOUCH_MOUSEID, or SDL_PEN_MOUSEID */ + SDL_MouseID which; /**< The mouse instance id or SDL_TOUCH_MOUSEID */ SDL_MouseButtonFlags state; /**< The current button state */ float x; /**< X coordinate, relative to window */ float y; /**< Y coordinate, relative to window */ @@ -445,7 +446,7 @@ typedef struct SDL_MouseButtonEvent Uint32 reserved; Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ SDL_WindowID windowID; /**< The window with mouse focus, if any */ - SDL_MouseID which; /**< The mouse instance id, SDL_TOUCH_MOUSEID, or SDL_PEN_MOUSEID */ + SDL_MouseID which; /**< The mouse instance id, SDL_TOUCH_MOUSEID */ Uint8 button; /**< The mouse button index */ Uint8 state; /**< SDL_PRESSED or SDL_RELEASED */ Uint8 clicks; /**< 1 for single-click, 2 for double-click, etc. */ @@ -465,7 +466,7 @@ typedef struct SDL_MouseWheelEvent Uint32 reserved; Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ SDL_WindowID windowID; /**< The window with mouse focus, if any */ - SDL_MouseID which; /**< The mouse instance id, SDL_TOUCH_MOUSEID, or SDL_PEN_MOUSEID */ + SDL_MouseID which; /**< The mouse instance id, SDL_TOUCH_MOUSEID */ float x; /**< The amount scrolled horizontally, positive to the right and negative to the left */ float y; /**< The amount scrolled vertically, positive away from the user and negative toward the user */ SDL_MouseWheelDirection direction; /**< Set to one of the SDL_MOUSEWHEEL_* defines. When FLIPPED the values in X and Y will be opposite. Multiply by -1 to change them back */ @@ -714,67 +715,118 @@ typedef struct SDL_TouchFingerEvent SDL_WindowID windowID; /**< The window underneath the finger, if any */ } SDL_TouchFingerEvent; - /** - * Pressure-sensitive pen touched or stopped touching surface (event.ptip.*) + * Pressure-sensitive pen proximity event structure (event.pmotion.*) + * + * When a pen becomes visible to the system (it is close enough to a tablet, + * etc), SDL will send an SDL_EVENT_PEN_PROXIMITY_IN event with the new pen's + * ID. This ID is valid until the pen leaves proximity again (has been removed + * from the tablet's area, the tablet has been unplugged, etc). If the same + * pen reenters proximity again, it will be given a new ID. + * + * Note that "proximity" means "close enough for the tablet to know the tool + * is there." The pen touching and lifting off from the tablet while not + * leaving the area are handled by SDL_EVENT_PEN_DOWN and SDL_EVENT_PEN_UP. * * \since This struct is available since SDL 3.0.0. */ -typedef struct SDL_PenTipEvent +typedef struct SDL_PenProximityEvent +{ + SDL_EventType type; /**< SDL_EVENT_PEN_PROXIMITY_IN or SDL_EVENT_PEN_PROXIMITY_OUT */ + Uint32 reserved; + Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ + SDL_WindowID windowID; /**< The window with mouse focus, if any */ + SDL_PenID which; /**< The pen instance id */ +} SDL_PenProximityEvent; + +/** + * Pressure-sensitive pen motion event structure (event.pmotion.*) + * + * Depending on the hardware, you may get motion events when the pen is not + * touching a tablet, for tracking a pen even when it isn't drawing. You + * should listen for SDL_EVENT_PEN_DOWN and SDL_EVENT_PEN_UP events, or check + * `pen_state & SDL_PEN_INPUT_DOWN` to decide if a pen is "drawing" when + * dealing with pen motion. + * + * \since This struct is available since SDL 3.0.0. + */ +typedef struct SDL_PenMotionEvent +{ + SDL_EventType type; /**< SDL_EVENT_PEN_MOTION */ + Uint32 reserved; + Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ + SDL_WindowID windowID; /**< The window with mouse focus, if any */ + SDL_PenID which; /**< The pen instance id */ + SDL_PenInputFlags pen_state; /**< Complete pen input state at time of event */ + float x; /**< X position of pen on tablet */ + float y; /**< Y position of pen on tablet */ +} SDL_PenMotionEvent; + +/** + * Pressure-sensitive pen touched event structure (event.ptouch.*) + * + * These events come when a pen touches a surface (a tablet, etc), or lifts + * off from one. + * + * \since This struct is available since SDL 3.0.0. + */ +typedef struct SDL_PenTouchEvent { SDL_EventType type; /**< SDL_EVENT_PEN_DOWN or SDL_EVENT_PEN_UP */ Uint32 reserved; Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ SDL_WindowID windowID; /**< The window with pen focus, if any */ SDL_PenID which; /**< The pen instance id */ - Uint8 tip; /**< SDL_PEN_TIP_INK when using a regular pen tip, or SDL_PEN_TIP_ERASER if the pen is being used as an eraser (e.g., flipped to use the eraser tip) */ - Uint8 state; /**< SDL_PRESSED on SDL_EVENT_PEN_DOWN and SDL_RELEASED on SDL_EVENT_PEN_UP */ - Uint16 pen_state; /**< Pen button masks (where SDL_BUTTON(1) is the first button, SDL_BUTTON(2) is the second button etc.), SDL_PEN_DOWN_MASK is set if the pen is touching the surface, and SDL_PEN_ERASER_MASK is set if the pen is (used as) an eraser. */ - float x; /**< X coordinate, relative to window */ - float y; /**< Y coordinate, relative to window */ - float axes[SDL_PEN_NUM_AXES]; /**< Pen axes such as pressure and tilt (ordered as per SDL_PenAxis) */ -} SDL_PenTipEvent; - -/** - * Pressure-sensitive pen motion / pressure / angle event structure - * (event.pmotion.*) - * - * \since This struct is available since SDL 3.0.0. - */ -typedef struct SDL_PenMotionEvent -{ - SDL_EventType type; /**< SDL_EVENT_PEN_MOTION */ - Uint32 reserved; - Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ - SDL_WindowID windowID; /**< The window with pen focus, if any */ - SDL_PenID which; /**< The pen instance id */ - Uint8 padding1; - Uint8 padding2; - Uint16 pen_state; /**< Pen button masks (where SDL_BUTTON(1) is the first button, SDL_BUTTON(2) is the second button etc.), SDL_PEN_DOWN_MASK is set if the pen is touching the surface, and SDL_PEN_ERASER_MASK is set if the pen is (used as) an eraser. */ - float x; /**< X coordinate, relative to window */ - float y; /**< Y coordinate, relative to window */ - float axes[SDL_PEN_NUM_AXES]; /**< Pen axes such as pressure and tilt (ordered as per SDL_PenAxis) */ -} SDL_PenMotionEvent; + SDL_PenInputFlags pen_state; /**< Complete pen input state at time of event */ + float x; /**< X position of pen on tablet */ + float y; /**< Y position of pen on tablet */ + Uint8 eraser; /**< Non-zero if eraser end is used (not all pens support this). */ + Uint8 state; /**< SDL_PRESSED (pen is touching) or SDL_RELEASED (pen is lifted off) */ +} SDL_PenTouchEvent; /** * Pressure-sensitive pen button event structure (event.pbutton.*) * + * This is for buttons on the pen itself that the user might click. The pen + * itself pressing down to draw triggers a SDL_EVENT_PEN_DOWN event instead. + * * \since This struct is available since SDL 3.0.0. */ typedef struct SDL_PenButtonEvent { - SDL_EventType type; /**< SDL_EVENT_PEN_BUTTON_DOWN or SDL_EVENT_PEN_BUTTON_UP */ + SDL_EventType type; /**< SDL_EVENT_PEN_BUTTON_DOWN or SDL_EVENT_PEN_BUTTON_UP */ + Uint32 reserved; + Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ + SDL_WindowID windowID; /**< The window with mouse focus, if any */ + SDL_PenID which; /**< The pen instance id */ + SDL_PenInputFlags pen_state; /**< Complete pen input state at time of event */ + float x; /**< X position of pen on tablet */ + float y; /**< Y position of pen on tablet */ + Uint8 button; /**< The pen button index (first button is 1). */ + Uint8 state; /**< SDL_PRESSED or SDL_RELEASED */ +} SDL_PenButtonEvent; + +/** + * Pressure-sensitive pen pressure / angle event structure (event.paxis.*) + * + * You might get some of these events even if the pen isn't touching the + * tablet. + * + * \since This struct is available since SDL 3.0.0. + */ +typedef struct SDL_PenAxisEvent +{ + SDL_EventType type; /**< SDL_EVENT_PEN_AXIS */ Uint32 reserved; Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ SDL_WindowID windowID; /**< The window with pen focus, if any */ SDL_PenID which; /**< The pen instance id */ - Uint8 button; /**< The pen button index (1 represents the pen tip for compatibility with mouse events) */ - Uint8 state; /**< SDL_PRESSED or SDL_RELEASED */ - Uint16 pen_state; /**< Pen button masks (where SDL_BUTTON(1) is the first button, SDL_BUTTON(2) is the second button etc.), SDL_PEN_DOWN_MASK is set if the pen is touching the surface, and SDL_PEN_ERASER_MASK is set if the pen is (used as) an eraser. */ - float x; /**< X coordinate, relative to window */ - float y; /**< Y coordinate, relative to window */ - float axes[SDL_PEN_NUM_AXES]; /**< Pen axes such as pressure and tilt (ordered as per SDL_PenAxis) */ -} SDL_PenButtonEvent; + SDL_PenInputFlags pen_state; /**< Complete pen input state at time of event */ + float x; /**< X position of pen on tablet */ + float y; /**< Y position of pen on tablet */ + SDL_PenAxis axis; /**< Axis that has changed */ + float value; /**< New value of axis */ +} SDL_PenAxisEvent; /** * An event used to drop text or request a file open by the system @@ -894,9 +946,11 @@ typedef union SDL_Event SDL_QuitEvent quit; /**< Quit request event data */ SDL_UserEvent user; /**< Custom event data */ SDL_TouchFingerEvent tfinger; /**< Touch finger event data */ - SDL_PenTipEvent ptip; /**< Pen tip touching or leaving drawing surface */ - SDL_PenMotionEvent pmotion; /**< Pen change in position, pressure, or angle */ - SDL_PenButtonEvent pbutton; /**< Pen button press */ + SDL_PenProximityEvent pproximity; /**< Pen proximity event data */ + SDL_PenTouchEvent ptouch; /**< Pen tip touching event data */ + SDL_PenMotionEvent pmotion; /**< Pen motion event data */ + SDL_PenButtonEvent pbutton; /**< Pen button event data */ + SDL_PenAxisEvent paxis; /**< Pen axis event data */ SDL_DropEvent drop; /**< Drag and drop event data */ SDL_ClipboardEvent clipboard; /**< Clipboard event data */ @@ -985,8 +1039,8 @@ typedef enum SDL_EventAction * SDL_EVENT_FIRST is a safe choice. * \param maxType maximum value of the event type to be considered; * SDL_EVENT_LAST is a safe choice. - * \returns the number of events actually stored or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the number of events actually stored or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -1200,9 +1254,9 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WaitEventTimeout(SDL_Event *event, Sint * its own custom event types. * * \param event the SDL_Event to be added to the queue. - * \returns 1 on success, 0 if the event was filtered, or a negative error - * code on failure; call SDL_GetError() for more information. A - * common reason for error is the event queue being full. + * \returns SDL_TRUE on success, SDL_FALSE if the event was filtered or on + * failure; call SDL_GetError() for more information. A common reason + * for error is the event queue being full. * * \since This function is available since SDL 3.0.0. * @@ -1210,7 +1264,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WaitEventTimeout(SDL_Event *event, Sint * \sa SDL_PollEvent * \sa SDL_RegisterEvents */ -extern SDL_DECLSPEC int SDLCALL SDL_PushEvent(SDL_Event *event); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PushEvent(SDL_Event *event); /** * A function pointer used for callbacks that watch the event queue. @@ -1218,8 +1272,9 @@ extern SDL_DECLSPEC int SDLCALL SDL_PushEvent(SDL_Event *event); * \param userdata what was passed as `userdata` to SDL_SetEventFilter() or * SDL_AddEventWatch, etc. * \param event the event that triggered the callback. - * \returns 1 to permit event to be added to the queue, and 0 to disallow it. - * When used with SDL_AddEventWatch, the return value is ignored. + * \returns SDL_TRUE to permit event to be added to the queue, and SDL_FALSE + * to disallow it. When used with SDL_AddEventWatch, the return value + * is ignored. * * \threadsafety SDL may call this callback at any time from any thread; the * application is responsible for locking resources the callback @@ -1230,16 +1285,16 @@ extern SDL_DECLSPEC int SDLCALL SDL_PushEvent(SDL_Event *event); * \sa SDL_SetEventFilter * \sa SDL_AddEventWatch */ -typedef int (SDLCALL *SDL_EventFilter)(void *userdata, SDL_Event *event); +typedef SDL_bool (SDLCALL *SDL_EventFilter)(void *userdata, SDL_Event *event); /** * Set up a filter to process all events before they change internal state and * are posted to the internal event queue. * - * If the filter function returns 1 when called, then the event will be added - * to the internal queue. If it returns 0, then the event will be dropped from - * the queue, but the internal state will still be updated. This allows - * selective filtering of dynamically arriving events. + * If the filter function returns SDL_TRUE when called, then the event will be + * added to the internal queue. If it returns SDL_FALSE, then the event will + * be dropped from the queue, but the internal state will still be updated. + * This allows selective filtering of dynamically arriving events. * * **WARNING**: Be very careful of what you do in the event filter function, * as it may run in a different thread! @@ -1317,17 +1372,17 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetEventFilter(SDL_EventFilter *filter, * * \param filter an SDL_EventFilter function to call when an event happens. * \param userdata a pointer that is passed to `filter`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. * - * \sa SDL_DelEventWatch + * \sa SDL_RemoveEventWatch * \sa SDL_SetEventFilter */ -extern SDL_DECLSPEC int SDLCALL SDL_AddEventWatch(SDL_EventFilter filter, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AddEventWatch(SDL_EventFilter filter, void *userdata); /** * Remove an event watch callback added with SDL_AddEventWatch(). @@ -1342,11 +1397,11 @@ extern SDL_DECLSPEC int SDLCALL SDL_AddEventWatch(SDL_EventFilter filter, void * * * \sa SDL_AddEventWatch */ -extern SDL_DECLSPEC void SDLCALL SDL_DelEventWatch(SDL_EventFilter filter, void *userdata); +extern SDL_DECLSPEC void SDLCALL SDL_RemoveEventWatch(SDL_EventFilter filter, void *userdata); /** * Run a specific filter function on the current event queue, removing any - * events for which the filter returns 0. + * events for which the filter returns SDL_FALSE. * * See SDL_SetEventFilter() for more information. Unlike SDL_SetEventFilter(), * this function does not change the filter permanently, it only uses the diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_filesystem.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_filesystem.h index 756a52d..5faa244 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_filesystem.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_filesystem.h @@ -266,12 +266,12 @@ typedef Uint32 SDL_GlobFlags; * Create a directory. * * \param path the path of the directory to create. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_CreateDirectory(const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CreateDirectory(const char *path); /* Callback for directory enumeration. Return 1 to keep enumerating, 0 to stop enumerating (no error), -1 to stop enumerating and @@ -289,47 +289,47 @@ typedef int (SDLCALL *SDL_EnumerateDirectoryCallback)(void *userdata, const char * \param path the path of the directory to enumerate. * \param callback a function that is called for each entry in the directory. * \param userdata a pointer that is passed to `callback`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_EnumerateDirectory(const char *path, SDL_EnumerateDirectoryCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_EnumerateDirectory(const char *path, SDL_EnumerateDirectoryCallback callback, void *userdata); /** * Remove a file or an empty directory. * * \param path the path of the directory to enumerate. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RemovePath(const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RemovePath(const char *path); /** * Rename a file or directory. * * \param oldpath the old path. * \param newpath the new path. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RenamePath(const char *oldpath, const char *newpath); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenamePath(const char *oldpath, const char *newpath); /** * Copy a file. * * \param oldpath the old path. * \param newpath the new path. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_CopyFile(const char *oldpath, const char *newpath); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CopyFile(const char *oldpath, const char *newpath); /** * Get information about a filesystem path. @@ -337,12 +337,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_CopyFile(const char *oldpath, const char *ne * \param path the path to query. * \param info a pointer filled in with information about the path, or NULL to * check for the existence of a file. - * \returns 0 on success or a negative error code if the file doesn't exist, - * or another failure; call SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE if the file doesn't exist, or + * another failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetPathInfo(const char *path, SDL_PathInfo *info); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetPathInfo(const char *path, SDL_PathInfo *info); /** * Enumerate a directory tree, filtered by pattern, and return a list. diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_gamepad.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_gamepad.h index cec0684..3d2d726 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_gamepad.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_gamepad.h @@ -379,12 +379,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_AddGamepadMappingsFromFile(const char *file) * * This will generate gamepad events as needed if device mappings change. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ReloadGamepadMappings(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ReloadGamepadMappings(void); /** * Get the current gamepad mappings. @@ -442,15 +442,15 @@ extern SDL_DECLSPEC char * SDLCALL SDL_GetGamepadMapping(SDL_Gamepad *gamepad); * \param instance_id the joystick instance ID. * \param mapping the mapping to use for this device, or NULL to clear the * mapping. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_AddGamepadMapping * \sa SDL_GetGamepadMapping */ -extern SDL_DECLSPEC int SDLCALL SDL_SetGamepadMapping(SDL_JoystickID instance_id, const char *mapping); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetGamepadMapping(SDL_JoystickID instance_id, const char *mapping); /** * Return whether a gamepad is currently connected. @@ -813,14 +813,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetGamepadPlayerIndex(SDL_Gamepad *gamepad); * \param gamepad the gamepad object to adjust. * \param player_index player index to assign to this gamepad, or -1 to clear * the player index and turn off player LEDs. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetGamepadPlayerIndex */ -extern SDL_DECLSPEC int SDLCALL SDL_SetGamepadPlayerIndex(SDL_Gamepad *gamepad, int player_index); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetGamepadPlayerIndex(SDL_Gamepad *gamepad, int player_index); /** * Get the USB vendor ID of an opened gamepad, if available. @@ -1257,14 +1257,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetNumGamepadTouchpadFingers(SDL_Gamepad *ga * \param y filled with y position, normalized 0 to 1, with the origin in the * upper left. * \param pressure filled with pressure value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetNumGamepadTouchpadFingers */ -extern SDL_DECLSPEC int SDLCALL SDL_GetGamepadTouchpadFinger(SDL_Gamepad *gamepad, int touchpad, int finger, Uint8 *state, float *x, float *y, float *pressure); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetGamepadTouchpadFinger(SDL_Gamepad *gamepad, int touchpad, int finger, Uint8 *state, float *x, float *y, float *pressure); /** * Return whether a gamepad has a particular sensor. @@ -1287,15 +1287,15 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GamepadHasSensor(SDL_Gamepad *gamepad, * \param gamepad the gamepad to update. * \param type the type of sensor to enable/disable. * \param enabled whether data reporting should be enabled. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GamepadHasSensor * \sa SDL_GamepadSensorEnabled */ -extern SDL_DECLSPEC int SDLCALL SDL_SetGamepadSensorEnabled(SDL_Gamepad *gamepad, SDL_SensorType type, SDL_bool enabled); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetGamepadSensorEnabled(SDL_Gamepad *gamepad, SDL_SensorType type, SDL_bool enabled); /** * Query whether sensor data reporting is enabled for a gamepad. @@ -1331,12 +1331,12 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetGamepadSensorDataRate(SDL_Gamepad *game * \param type the type of sensor to query. * \param data a pointer filled with the current sensor state. * \param num_values the number of values to write to data. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetGamepadSensorData(SDL_Gamepad *gamepad, SDL_SensorType type, float *data, int num_values); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetGamepadSensorData(SDL_Gamepad *gamepad, SDL_SensorType type, float *data, int num_values); /** * Start a rumble effect on a gamepad. @@ -1353,11 +1353,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetGamepadSensorData(SDL_Gamepad *gamepad, S * \param high_frequency_rumble the intensity of the high frequency (right) * rumble motor, from 0 to 0xFFFF. * \param duration_ms the duration of the rumble effect, in milliseconds. - * \returns 0, or -1 if rumble isn't supported on this gamepad. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RumbleGamepad(SDL_Gamepad *gamepad, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RumbleGamepad(SDL_Gamepad *gamepad, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); /** * Start a rumble effect in the gamepad's triggers. @@ -1378,14 +1379,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RumbleGamepad(SDL_Gamepad *gamepad, Uint16 l * \param right_rumble the intensity of the right trigger rumble motor, from 0 * to 0xFFFF. * \param duration_ms the duration of the rumble effect, in milliseconds. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RumbleGamepad */ -extern SDL_DECLSPEC int SDLCALL SDL_RumbleGamepadTriggers(SDL_Gamepad *gamepad, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RumbleGamepadTriggers(SDL_Gamepad *gamepad, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); /** * Update a gamepad's LED color. @@ -1400,12 +1401,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_RumbleGamepadTriggers(SDL_Gamepad *gamepad, * \param red the intensity of the red LED. * \param green the intensity of the green LED. * \param blue the intensity of the blue LED. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetGamepadLED(SDL_Gamepad *gamepad, Uint8 red, Uint8 green, Uint8 blue); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetGamepadLED(SDL_Gamepad *gamepad, Uint8 red, Uint8 green, Uint8 blue); /** * Send a gamepad specific effect packet. @@ -1413,12 +1414,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetGamepadLED(SDL_Gamepad *gamepad, Uint8 re * \param gamepad the gamepad to affect. * \param data the data to send to the gamepad. * \param size the size of the data to send to the gamepad. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SendGamepadEffect(SDL_Gamepad *gamepad, const void *data, int size); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SendGamepadEffect(SDL_Gamepad *gamepad, const void *data, int size); /** * Close a gamepad previously opened with SDL_OpenGamepad(). diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_gpu.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_gpu.h new file mode 100644 index 0000000..bba47cc --- /dev/null +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_gpu.h @@ -0,0 +1,2620 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2024 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. +*/ + +/* WIKI CATEGORY: GPU */ + +/** + * # CategoryGPU + * + * Include file for SDL GPU API functions + */ + +#ifndef SDL_gpu_h_ +#define SDL_gpu_h_ + +#include +#include +#include +#include +#include +#include + +#include +#ifdef __cplusplus +extern "C" { +#endif /* __cplusplus */ + +/* Type Declarations */ + +typedef struct SDL_GPUDevice SDL_GPUDevice; +typedef struct SDL_GPUBuffer SDL_GPUBuffer; +typedef struct SDL_GPUTransferBuffer SDL_GPUTransferBuffer; +typedef struct SDL_GPUTexture SDL_GPUTexture; +typedef struct SDL_GPUSampler SDL_GPUSampler; +typedef struct SDL_GPUShader SDL_GPUShader; +typedef struct SDL_GPUComputePipeline SDL_GPUComputePipeline; +typedef struct SDL_GPUGraphicsPipeline SDL_GPUGraphicsPipeline; +typedef struct SDL_GPUCommandBuffer SDL_GPUCommandBuffer; +typedef struct SDL_GPURenderPass SDL_GPURenderPass; +typedef struct SDL_GPUComputePass SDL_GPUComputePass; +typedef struct SDL_GPUCopyPass SDL_GPUCopyPass; +typedef struct SDL_GPUFence SDL_GPUFence; + +typedef enum SDL_GPUPrimitiveType +{ + SDL_GPU_PRIMITIVETYPE_POINTLIST, + SDL_GPU_PRIMITIVETYPE_LINELIST, + SDL_GPU_PRIMITIVETYPE_LINESTRIP, + SDL_GPU_PRIMITIVETYPE_TRIANGLELIST, + SDL_GPU_PRIMITIVETYPE_TRIANGLESTRIP +} SDL_GPUPrimitiveType; + +typedef enum SDL_GPULoadOp +{ + SDL_GPU_LOADOP_LOAD, + SDL_GPU_LOADOP_CLEAR, + SDL_GPU_LOADOP_DONT_CARE +} SDL_GPULoadOp; + +typedef enum SDL_GPUStoreOp +{ + SDL_GPU_STOREOP_STORE, + SDL_GPU_STOREOP_DONT_CARE +} SDL_GPUStoreOp; + +typedef enum SDL_GPUIndexElementSize +{ + SDL_GPU_INDEXELEMENTSIZE_16BIT, + SDL_GPU_INDEXELEMENTSIZE_32BIT +} SDL_GPUIndexElementSize; + +/* Texture format support varies depending on driver, hardware, and usage flags. + * In general, you should use SDL_GPUTextureSupportsFormat to query if a format + * is supported before using it. However, there are a few guaranteed formats. + * + * For SAMPLER usage, the following formats are universally supported: + * - R8G8B8A8_UNORM + * - B8G8R8A8_UNORM + * - R8_UNORM + * - R8G8_SNORM + * - R8G8B8A8_SNORM + * - R16_FLOAT + * - R16G16_FLOAT + * - R16G16B16A16_FLOAT + * - R32_FLOAT + * - R32G32_FLOAT + * - R32G32B32A32_FLOAT + * - R8G8B8A8_UNORM_SRGB + * - B8G8R8A8_UNORM_SRGB + * - D16_UNORM + * + * For COLOR_TARGET usage, the following formats are universally supported: + * - R8G8B8A8_UNORM + * - B8G8R8A8_UNORM + * - R8_UNORM + * - R16_FLOAT + * - R16G16_FLOAT + * - R16G16B16A16_FLOAT + * - R32_FLOAT + * - R32G32_FLOAT + * - R32G32B32A32_FLOAT + * - R8_UINT + * - R8G8_UINT + * - R8G8B8A8_UINT + * - R16_UINT + * - R16G16_UINT + * - R16G16B16A16_UINT + * - R8G8B8A8_UNORM_SRGB + * - B8G8R8A8_UNORM_SRGB + * + * For STORAGE usages, the following formats are universally supported: + * - R8G8B8A8_UNORM + * - R8G8B8A8_SNORM + * - R16G16B16A16_FLOAT + * - R32_FLOAT + * - R32G32_FLOAT + * - R32G32B32A32_FLOAT + * - R8_UINT + * - R8G8_UINT + * - R8G8B8A8_UINT + * - R16_UINT + * - R16G16_UINT + * - R16G16B16A16_UINT + * + * For DEPTH_STENCIL_TARGET usage, the following formats are universally supported: + * - D16_UNORM + * - Either (but not necessarily both!) D24_UNORM or D32_SFLOAT + * - Either (but not necessarily both!) D24_UNORM_S8_UINT or D32_SFLOAT_S8_UINT + * + * Unless D16_UNORM is sufficient for your purposes, always check which + * of D24/D32 is supported before creating a depth-stencil texture! + */ +typedef enum SDL_GPUTextureFormat +{ + SDL_GPU_TEXTUREFORMAT_INVALID = -1, + + /* Unsigned Normalized Float Color Formats */ + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM, + SDL_GPU_TEXTUREFORMAT_B8G8R8A8_UNORM, + SDL_GPU_TEXTUREFORMAT_B5G6R5_UNORM, + SDL_GPU_TEXTUREFORMAT_B5G5R5A1_UNORM, + SDL_GPU_TEXTUREFORMAT_B4G4R4A4_UNORM, + SDL_GPU_TEXTUREFORMAT_R10G10B10A2_UNORM, + SDL_GPU_TEXTUREFORMAT_R16G16_UNORM, + SDL_GPU_TEXTUREFORMAT_R16G16B16A16_UNORM, + SDL_GPU_TEXTUREFORMAT_R8_UNORM, + SDL_GPU_TEXTUREFORMAT_A8_UNORM, + /* Compressed Unsigned Normalized Float Color Formats */ + SDL_GPU_TEXTUREFORMAT_BC1_UNORM, + SDL_GPU_TEXTUREFORMAT_BC2_UNORM, + SDL_GPU_TEXTUREFORMAT_BC3_UNORM, + SDL_GPU_TEXTUREFORMAT_BC7_UNORM, + /* Signed Normalized Float Color Formats */ + SDL_GPU_TEXTUREFORMAT_R8G8_SNORM, + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_SNORM, + /* Signed Float Color Formats */ + SDL_GPU_TEXTUREFORMAT_R16_FLOAT, + SDL_GPU_TEXTUREFORMAT_R16G16_FLOAT, + SDL_GPU_TEXTUREFORMAT_R16G16B16A16_FLOAT, + SDL_GPU_TEXTUREFORMAT_R32_FLOAT, + SDL_GPU_TEXTUREFORMAT_R32G32_FLOAT, + SDL_GPU_TEXTUREFORMAT_R32G32B32A32_FLOAT, + /* Unsigned Integer Color Formats */ + SDL_GPU_TEXTUREFORMAT_R8_UINT, + SDL_GPU_TEXTUREFORMAT_R8G8_UINT, + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UINT, + SDL_GPU_TEXTUREFORMAT_R16_UINT, + SDL_GPU_TEXTUREFORMAT_R16G16_UINT, + SDL_GPU_TEXTUREFORMAT_R16G16B16A16_UINT, + /* SRGB Unsigned Normalized Color Formats */ + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM_SRGB, + SDL_GPU_TEXTUREFORMAT_B8G8R8A8_UNORM_SRGB, + /* Compressed SRGB Unsigned Normalized Color Formats */ + SDL_GPU_TEXTUREFORMAT_BC3_UNORM_SRGB, + SDL_GPU_TEXTUREFORMAT_BC7_UNORM_SRGB, + /* Depth Formats */ + SDL_GPU_TEXTUREFORMAT_D16_UNORM, + SDL_GPU_TEXTUREFORMAT_D24_UNORM, + SDL_GPU_TEXTUREFORMAT_D32_FLOAT, + SDL_GPU_TEXTUREFORMAT_D24_UNORM_S8_UINT, + SDL_GPU_TEXTUREFORMAT_D32_FLOAT_S8_UINT +} SDL_GPUTextureFormat; + +typedef enum SDL_GPUTextureUsageFlagBits +{ + SDL_GPU_TEXTUREUSAGE_SAMPLER_BIT = 0x00000001, + SDL_GPU_TEXTUREUSAGE_COLOR_TARGET_BIT = 0x00000002, + SDL_GPU_TEXTUREUSAGE_DEPTH_STENCIL_TARGET_BIT = 0x00000004, + SDL_GPU_TEXTUREUSAGE_GRAPHICS_STORAGE_READ_BIT = 0x00000008, + SDL_GPU_TEXTUREUSAGE_COMPUTE_STORAGE_READ_BIT = 0x00000020, + SDL_GPU_TEXTUREUSAGE_COMPUTE_STORAGE_WRITE_BIT = 0x00000040 +} SDL_GPUTextureUsageFlagBits; + +typedef Uint32 SDL_GPUTextureUsageFlags; + +typedef enum SDL_GPUTextureType +{ + SDL_GPU_TEXTURETYPE_2D, + SDL_GPU_TEXTURETYPE_2D_ARRAY, + SDL_GPU_TEXTURETYPE_3D, + SDL_GPU_TEXTURETYPE_CUBE +} SDL_GPUTextureType; + +typedef enum SDL_GPUSampleCount +{ + SDL_GPU_SAMPLECOUNT_1, + SDL_GPU_SAMPLECOUNT_2, + SDL_GPU_SAMPLECOUNT_4, + SDL_GPU_SAMPLECOUNT_8 +} SDL_GPUSampleCount; + +typedef enum SDL_GPUCubeMapFace +{ + SDL_GPU_CUBEMAPFACE_POSITIVEX, + SDL_GPU_CUBEMAPFACE_NEGATIVEX, + SDL_GPU_CUBEMAPFACE_POSITIVEY, + SDL_GPU_CUBEMAPFACE_NEGATIVEY, + SDL_GPU_CUBEMAPFACE_POSITIVEZ, + SDL_GPU_CUBEMAPFACE_NEGATIVEZ +} SDL_GPUCubeMapFace; + +typedef enum SDL_GPUBufferUsageFlagBits +{ + SDL_GPU_BUFFERUSAGE_VERTEX_BIT = 0x00000001, + SDL_GPU_BUFFERUSAGE_INDEX_BIT = 0x00000002, + SDL_GPU_BUFFERUSAGE_INDIRECT_BIT = 0x00000004, + SDL_GPU_BUFFERUSAGE_GRAPHICS_STORAGE_READ_BIT = 0x00000008, + SDL_GPU_BUFFERUSAGE_COMPUTE_STORAGE_READ_BIT = 0x00000020, + SDL_GPU_BUFFERUSAGE_COMPUTE_STORAGE_WRITE_BIT = 0x00000040 +} SDL_GPUBufferUsageFlagBits; + +typedef Uint32 SDL_GPUBufferUsageFlags; + +typedef enum SDL_GPUTransferBufferUsage +{ + SDL_GPU_TRANSFERBUFFERUSAGE_UPLOAD, + SDL_GPU_TRANSFERBUFFERUSAGE_DOWNLOAD +} SDL_GPUTransferBufferUsage; + +typedef enum SDL_GPUShaderStage +{ + SDL_GPU_SHADERSTAGE_VERTEX, + SDL_GPU_SHADERSTAGE_FRAGMENT +} SDL_GPUShaderStage; + +typedef enum SDL_GPUShaderFormatFlagBits +{ + SDL_GPU_SHADERFORMAT_INVALID = 0x00000000, + SDL_GPU_SHADERFORMAT_SECRET = 0x00000001, /* NDA'd platforms */ + SDL_GPU_SHADERFORMAT_SPIRV = 0x00000002, /* Vulkan */ + SDL_GPU_SHADERFORMAT_DXBC = 0x00000004, /* D3D11 (Shader Model 5_0) */ + SDL_GPU_SHADERFORMAT_DXIL = 0x00000008, /* D3D12 */ + SDL_GPU_SHADERFORMAT_MSL = 0x00000010, /* Metal */ + SDL_GPU_SHADERFORMAT_METALLIB = 0x00000020, /* Metal */ +} SDL_GPUShaderFormatFlagBits; + +typedef Uint32 SDL_GPUShaderFormat; + +typedef enum SDL_GPUVertexElementFormat +{ + /* 32-bit Signed Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_INT, + SDL_GPU_VERTEXELEMENTFORMAT_INT2, + SDL_GPU_VERTEXELEMENTFORMAT_INT3, + SDL_GPU_VERTEXELEMENTFORMAT_INT4, + + /* 32-bit Unsigned Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_UINT, + SDL_GPU_VERTEXELEMENTFORMAT_UINT2, + SDL_GPU_VERTEXELEMENTFORMAT_UINT3, + SDL_GPU_VERTEXELEMENTFORMAT_UINT4, + + /* 32-bit Floats */ + SDL_GPU_VERTEXELEMENTFORMAT_FLOAT, + SDL_GPU_VERTEXELEMENTFORMAT_FLOAT2, + SDL_GPU_VERTEXELEMENTFORMAT_FLOAT3, + SDL_GPU_VERTEXELEMENTFORMAT_FLOAT4, + + /* 8-bit Signed Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_BYTE2, + SDL_GPU_VERTEXELEMENTFORMAT_BYTE4, + + /* 8-bit Unsigned Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_UBYTE2, + SDL_GPU_VERTEXELEMENTFORMAT_UBYTE4, + + /* 8-bit Signed Normalized */ + SDL_GPU_VERTEXELEMENTFORMAT_BYTE2_NORM, + SDL_GPU_VERTEXELEMENTFORMAT_BYTE4_NORM, + + /* 8-bit Unsigned Normalized */ + SDL_GPU_VERTEXELEMENTFORMAT_UBYTE2_NORM, + SDL_GPU_VERTEXELEMENTFORMAT_UBYTE4_NORM, + + /* 16-bit Signed Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_SHORT2, + SDL_GPU_VERTEXELEMENTFORMAT_SHORT4, + + /* 16-bit Unsigned Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_USHORT2, + SDL_GPU_VERTEXELEMENTFORMAT_USHORT4, + + /* 16-bit Signed Normalized */ + SDL_GPU_VERTEXELEMENTFORMAT_SHORT2_NORM, + SDL_GPU_VERTEXELEMENTFORMAT_SHORT4_NORM, + + /* 16-bit Unsigned Normalized */ + SDL_GPU_VERTEXELEMENTFORMAT_USHORT2_NORM, + SDL_GPU_VERTEXELEMENTFORMAT_USHORT4_NORM, + + /* 16-bit Floats */ + SDL_GPU_VERTEXELEMENTFORMAT_HALF2, + SDL_GPU_VERTEXELEMENTFORMAT_HALF4 +} SDL_GPUVertexElementFormat; + +typedef enum SDL_GPUVertexInputRate +{ + SDL_GPU_VERTEXINPUTRATE_VERTEX = 0, + SDL_GPU_VERTEXINPUTRATE_INSTANCE = 1 +} SDL_GPUVertexInputRate; + +typedef enum SDL_GPUFillMode +{ + SDL_GPU_FILLMODE_FILL, + SDL_GPU_FILLMODE_LINE +} SDL_GPUFillMode; + +typedef enum SDL_GPUCullMode +{ + SDL_GPU_CULLMODE_NONE, + SDL_GPU_CULLMODE_FRONT, + SDL_GPU_CULLMODE_BACK +} SDL_GPUCullMode; + +typedef enum SDL_GPUFrontFace +{ + SDL_GPU_FRONTFACE_COUNTER_CLOCKWISE, + SDL_GPU_FRONTFACE_CLOCKWISE +} SDL_GPUFrontFace; + +typedef enum SDL_GPUCompareOp +{ + SDL_GPU_COMPAREOP_NEVER, + SDL_GPU_COMPAREOP_LESS, + SDL_GPU_COMPAREOP_EQUAL, + SDL_GPU_COMPAREOP_LESS_OR_EQUAL, + SDL_GPU_COMPAREOP_GREATER, + SDL_GPU_COMPAREOP_NOT_EQUAL, + SDL_GPU_COMPAREOP_GREATER_OR_EQUAL, + SDL_GPU_COMPAREOP_ALWAYS +} SDL_GPUCompareOp; + +typedef enum SDL_GPUStencilOp +{ + SDL_GPU_STENCILOP_KEEP, + SDL_GPU_STENCILOP_ZERO, + SDL_GPU_STENCILOP_REPLACE, + SDL_GPU_STENCILOP_INCREMENT_AND_CLAMP, + SDL_GPU_STENCILOP_DECREMENT_AND_CLAMP, + SDL_GPU_STENCILOP_INVERT, + SDL_GPU_STENCILOP_INCREMENT_AND_WRAP, + SDL_GPU_STENCILOP_DECREMENT_AND_WRAP +} SDL_GPUStencilOp; + +typedef enum SDL_GPUBlendOp +{ + SDL_GPU_BLENDOP_ADD, + SDL_GPU_BLENDOP_SUBTRACT, + SDL_GPU_BLENDOP_REVERSE_SUBTRACT, + SDL_GPU_BLENDOP_MIN, + SDL_GPU_BLENDOP_MAX +} SDL_GPUBlendOp; + +typedef enum SDL_GPUBlendFactor +{ + SDL_GPU_BLENDFACTOR_ZERO, + SDL_GPU_BLENDFACTOR_ONE, + SDL_GPU_BLENDFACTOR_SRC_COLOR, + SDL_GPU_BLENDFACTOR_ONE_MINUS_SRC_COLOR, + SDL_GPU_BLENDFACTOR_DST_COLOR, + SDL_GPU_BLENDFACTOR_ONE_MINUS_DST_COLOR, + SDL_GPU_BLENDFACTOR_SRC_ALPHA, + SDL_GPU_BLENDFACTOR_ONE_MINUS_SRC_ALPHA, + SDL_GPU_BLENDFACTOR_DST_ALPHA, + SDL_GPU_BLENDFACTOR_ONE_MINUS_DST_ALPHA, + SDL_GPU_BLENDFACTOR_CONSTANT_COLOR, + SDL_GPU_BLENDFACTOR_ONE_MINUS_CONSTANT_COLOR, + SDL_GPU_BLENDFACTOR_SRC_ALPHA_SATURATE +} SDL_GPUBlendFactor; + +typedef enum SDL_GPUColorComponentFlagBits +{ + SDL_GPU_COLORCOMPONENT_R_BIT = 0x00000001, + SDL_GPU_COLORCOMPONENT_G_BIT = 0x00000002, + SDL_GPU_COLORCOMPONENT_B_BIT = 0x00000004, + SDL_GPU_COLORCOMPONENT_A_BIT = 0x00000008 +} SDL_GPUColorComponentFlagBits; + +typedef Uint8 SDL_GPUColorComponentFlags; + +typedef enum SDL_GPUFilter +{ + SDL_GPU_FILTER_NEAREST, + SDL_GPU_FILTER_LINEAR +} SDL_GPUFilter; + +typedef enum SDL_GPUSamplerMipmapMode +{ + SDL_GPU_SAMPLERMIPMAPMODE_NEAREST, + SDL_GPU_SAMPLERMIPMAPMODE_LINEAR +} SDL_GPUSamplerMipmapMode; + +typedef enum SDL_GPUSamplerAddressMode +{ + SDL_GPU_SAMPLERADDRESSMODE_REPEAT, + SDL_GPU_SAMPLERADDRESSMODE_MIRRORED_REPEAT, + SDL_GPU_SAMPLERADDRESSMODE_CLAMP_TO_EDGE +} SDL_GPUSamplerAddressMode; + +/* + * VSYNC: + * Waits for vblank before presenting. + * If there is a pending image to present, the new image is enqueued for presentation. + * Disallows tearing at the cost of visual latency. + * When using this present mode, AcquireSwapchainTexture will block if too many frames are in flight. + * IMMEDIATE: + * Immediately presents. + * Lowest latency option, but tearing may occur. + * When using this mode, AcquireSwapchainTexture will return NULL if too many frames are in flight. + * MAILBOX: + * Waits for vblank before presenting. No tearing is possible. + * If there is a pending image to present, the pending image is replaced by the new image. + * Similar to VSYNC, but with reduced visual latency. + * When using this mode, AcquireSwapchainTexture will return NULL if too many frames are in flight. + */ +typedef enum SDL_GPUPresentMode +{ + SDL_GPU_PRESENTMODE_VSYNC, + SDL_GPU_PRESENTMODE_IMMEDIATE, + SDL_GPU_PRESENTMODE_MAILBOX +} SDL_GPUPresentMode; + +/* + * SDR: + * B8G8R8A8 or R8G8B8A8 swapchain. Pixel values are in nonlinear sRGB encoding. Blends raw pixel values. + * SDR_LINEAR: + * B8G8R8A8_SRGB or R8G8B8A8_SRGB swapchain. Pixel values are in nonlinear sRGB encoding. Blends in linear space. + * HDR_EXTENDED_LINEAR: + * R16G16B16A16_SFLOAT swapchain. Pixel values are in extended linear encoding. Blends in linear space. + * HDR10_ST2048: + * A2R10G10B10 or A2B10G10R10 swapchain. Pixel values are in PQ ST2048 encoding. Blends raw pixel values. (TODO: verify this) + */ +typedef enum SDL_GPUSwapchainComposition +{ + SDL_GPU_SWAPCHAINCOMPOSITION_SDR, + SDL_GPU_SWAPCHAINCOMPOSITION_SDR_LINEAR, + SDL_GPU_SWAPCHAINCOMPOSITION_HDR_EXTENDED_LINEAR, + SDL_GPU_SWAPCHAINCOMPOSITION_HDR10_ST2048 +} SDL_GPUSwapchainComposition; + +typedef enum SDL_GPUDriver +{ + SDL_GPU_DRIVER_INVALID = -1, + SDL_GPU_DRIVER_SECRET, /* NDA'd platforms */ + SDL_GPU_DRIVER_VULKAN, + SDL_GPU_DRIVER_D3D11, + SDL_GPU_DRIVER_D3D12, + SDL_GPU_DRIVER_METAL +} SDL_GPUDriver; + +/* Structures */ + +typedef struct SDL_GPUDepthStencilValue +{ + float depth; + Uint8 stencil; +} SDL_GPUDepthStencilValue; + +typedef struct SDL_GPUViewport +{ + float x; + float y; + float w; + float h; + float minDepth; + float maxDepth; +} SDL_GPUViewport; + +typedef struct SDL_GPUTextureTransferInfo +{ + SDL_GPUTransferBuffer *transferBuffer; + Uint32 offset; /* starting location of the image data */ + Uint32 imagePitch; /* number of pixels from one row to the next */ + Uint32 imageHeight; /* number of rows from one layer/depth-slice to the next */ +} SDL_GPUTextureTransferInfo; + +typedef struct SDL_GPUTransferBufferLocation +{ + SDL_GPUTransferBuffer *transferBuffer; + Uint32 offset; +} SDL_GPUTransferBufferLocation; + +typedef struct SDL_GPUTextureLocation +{ + SDL_GPUTexture *texture; + Uint32 mipLevel; + Uint32 layer; + Uint32 x; + Uint32 y; + Uint32 z; +} SDL_GPUTextureLocation; + +typedef struct SDL_GPUTextureRegion +{ + SDL_GPUTexture *texture; + Uint32 mipLevel; + Uint32 layer; + Uint32 x; + Uint32 y; + Uint32 z; + Uint32 w; + Uint32 h; + Uint32 d; +} SDL_GPUTextureRegion; + +typedef struct SDL_GPUBlitRegion +{ + SDL_GPUTexture *texture; + Uint32 mipLevel; + Uint32 layerOrDepthPlane; + Uint32 x; + Uint32 y; + Uint32 w; + Uint32 h; +} SDL_GPUBlitRegion; + +typedef struct SDL_GPUBufferLocation +{ + SDL_GPUBuffer *buffer; + Uint32 offset; +} SDL_GPUBufferLocation; + +typedef struct SDL_GPUBufferRegion +{ + SDL_GPUBuffer *buffer; + Uint32 offset; + Uint32 size; +} SDL_GPUBufferRegion; + +/* Note that the `firstVertex` and `firstInstance` parameters are NOT compatible with + * built-in vertex/instance ID variables in shaders (for example, SV_VertexID). If + * your shader depends on these variables, the correlating draw call parameter MUST + * be 0. + */ +typedef struct SDL_GPUIndirectDrawCommand +{ + Uint32 vertexCount; /* number of vertices to draw */ + Uint32 instanceCount; /* number of instances to draw */ + Uint32 firstVertex; /* index of the first vertex to draw */ + Uint32 firstInstance; /* ID of the first instance to draw */ +} SDL_GPUIndirectDrawCommand; + +typedef struct SDL_GPUIndexedIndirectDrawCommand +{ + Uint32 indexCount; /* number of vertices to draw per instance */ + Uint32 instanceCount; /* number of instances to draw */ + Uint32 firstIndex; /* base index within the index buffer */ + Sint32 vertexOffset; /* value added to vertex index before indexing into the vertex buffer */ + Uint32 firstInstance; /* ID of the first instance to draw */ +} SDL_GPUIndexedIndirectDrawCommand; + +typedef struct SDL_GPUIndirectDispatchCommand +{ + Uint32 groupCountX; + Uint32 groupCountY; + Uint32 groupCountZ; +} SDL_GPUIndirectDispatchCommand; + +/* State structures */ + +typedef struct SDL_GPUSamplerCreateInfo +{ + SDL_GPUFilter minFilter; + SDL_GPUFilter magFilter; + SDL_GPUSamplerMipmapMode mipmapMode; + SDL_GPUSamplerAddressMode addressModeU; + SDL_GPUSamplerAddressMode addressModeV; + SDL_GPUSamplerAddressMode addressModeW; + float mipLodBias; + SDL_bool anisotropyEnable; + float maxAnisotropy; + SDL_bool compareEnable; + SDL_GPUCompareOp compareOp; + float minLod; + float maxLod; + + SDL_PropertiesID props; +} SDL_GPUSamplerCreateInfo; + +typedef struct SDL_GPUVertexBinding +{ + Uint32 binding; + Uint32 stride; + SDL_GPUVertexInputRate inputRate; + Uint32 instanceStepRate; /* ignored unless inputRate is INSTANCE */ +} SDL_GPUVertexBinding; + +typedef struct SDL_GPUVertexAttribute +{ + Uint32 location; + Uint32 binding; + SDL_GPUVertexElementFormat format; + Uint32 offset; +} SDL_GPUVertexAttribute; + +typedef struct SDL_GPUVertexInputState +{ + const SDL_GPUVertexBinding *vertexBindings; + Uint32 vertexBindingCount; + const SDL_GPUVertexAttribute *vertexAttributes; + Uint32 vertexAttributeCount; +} SDL_GPUVertexInputState; + +typedef struct SDL_GPUStencilOpState +{ + SDL_GPUStencilOp failOp; + SDL_GPUStencilOp passOp; + SDL_GPUStencilOp depthFailOp; + SDL_GPUCompareOp compareOp; +} SDL_GPUStencilOpState; + +typedef struct SDL_GPUColorAttachmentBlendState +{ + SDL_bool blendEnable; + SDL_GPUBlendFactor srcColorBlendFactor; + SDL_GPUBlendFactor dstColorBlendFactor; + SDL_GPUBlendOp colorBlendOp; + SDL_GPUBlendFactor srcAlphaBlendFactor; + SDL_GPUBlendFactor dstAlphaBlendFactor; + SDL_GPUBlendOp alphaBlendOp; + SDL_GPUColorComponentFlags colorWriteMask; +} SDL_GPUColorAttachmentBlendState; + +typedef struct SDL_GPUShaderCreateInfo +{ + size_t codeSize; + const Uint8 *code; + const char *entryPointName; + SDL_GPUShaderFormat format; + SDL_GPUShaderStage stage; + Uint32 samplerCount; + Uint32 storageTextureCount; + Uint32 storageBufferCount; + Uint32 uniformBufferCount; + + SDL_PropertiesID props; +} SDL_GPUShaderCreateInfo; + +typedef struct SDL_GPUTextureCreateInfo +{ + SDL_GPUTextureType type; + SDL_GPUTextureFormat format; + SDL_GPUTextureUsageFlags usageFlags; + Uint32 width; + Uint32 height; + Uint32 layerCountOrDepth; + Uint32 levelCount; + SDL_GPUSampleCount sampleCount; + + SDL_PropertiesID props; +} SDL_GPUTextureCreateInfo; + +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_R_FLOAT "SDL.gpu.createtexture.d3d12.clear.r" +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_G_FLOAT "SDL.gpu.createtexture.d3d12.clear.g" +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_B_FLOAT "SDL.gpu.createtexture.d3d12.clear.b" +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_A_FLOAT "SDL.gpu.createtexture.d3d12.clear.a" +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_DEPTH_FLOAT "SDL.gpu.createtexture.d3d12.clear.depth" +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_STENCIL_UINT8 "SDL.gpu.createtexture.d3d12.clear.stencil" + +typedef struct SDL_GPUBufferCreateInfo +{ + SDL_GPUBufferUsageFlags usageFlags; + Uint32 sizeInBytes; + + SDL_PropertiesID props; +} SDL_GPUBufferCreateInfo; + +typedef struct SDL_GPUTransferBufferCreateInfo +{ + SDL_GPUTransferBufferUsage usage; + Uint32 sizeInBytes; + + SDL_PropertiesID props; +} SDL_GPUTransferBufferCreateInfo; + +/* Pipeline state structures */ + +typedef struct SDL_GPURasterizerState +{ + SDL_GPUFillMode fillMode; + SDL_GPUCullMode cullMode; + SDL_GPUFrontFace frontFace; + SDL_bool depthBiasEnable; + float depthBiasConstantFactor; + float depthBiasClamp; + float depthBiasSlopeFactor; +} SDL_GPURasterizerState; + +typedef struct SDL_GPUMultisampleState +{ + SDL_GPUSampleCount sampleCount; + Uint32 sampleMask; +} SDL_GPUMultisampleState; + +typedef struct SDL_GPUDepthStencilState +{ + SDL_bool depthTestEnable; + SDL_bool depthWriteEnable; + SDL_GPUCompareOp compareOp; + SDL_bool stencilTestEnable; + SDL_GPUStencilOpState backStencilState; + SDL_GPUStencilOpState frontStencilState; + Uint8 compareMask; + Uint8 writeMask; + Uint8 reference; +} SDL_GPUDepthStencilState; + +typedef struct SDL_GPUColorAttachmentDescription +{ + SDL_GPUTextureFormat format; + SDL_GPUColorAttachmentBlendState blendState; +} SDL_GPUColorAttachmentDescription; + +typedef struct SDL_GPUGraphicsPipelineAttachmentInfo +{ + SDL_GPUColorAttachmentDescription *colorAttachmentDescriptions; + Uint32 colorAttachmentCount; + SDL_bool hasDepthStencilAttachment; + SDL_GPUTextureFormat depthStencilFormat; +} SDL_GPUGraphicsPipelineAttachmentInfo; + +typedef struct SDL_GPUGraphicsPipelineCreateInfo +{ + SDL_GPUShader *vertexShader; + SDL_GPUShader *fragmentShader; + SDL_GPUVertexInputState vertexInputState; + SDL_GPUPrimitiveType primitiveType; + SDL_GPURasterizerState rasterizerState; + SDL_GPUMultisampleState multisampleState; + SDL_GPUDepthStencilState depthStencilState; + SDL_GPUGraphicsPipelineAttachmentInfo attachmentInfo; + float blendConstants[4]; + + SDL_PropertiesID props; +} SDL_GPUGraphicsPipelineCreateInfo; + +typedef struct SDL_GPUComputePipelineCreateInfo +{ + size_t codeSize; + const Uint8 *code; + const char *entryPointName; + SDL_GPUShaderFormat format; + Uint32 readOnlyStorageTextureCount; + Uint32 readOnlyStorageBufferCount; + Uint32 writeOnlyStorageTextureCount; + Uint32 writeOnlyStorageBufferCount; + Uint32 uniformBufferCount; + Uint32 threadCountX; + Uint32 threadCountY; + Uint32 threadCountZ; + + SDL_PropertiesID props; +} SDL_GPUComputePipelineCreateInfo; + +typedef struct SDL_GPUColorAttachmentInfo +{ + /* The texture that will be used as a color attachment by a render pass. */ + SDL_GPUTexture *texture; + Uint32 mipLevel; + Uint32 layerOrDepthPlane; /* For 3D textures, you can bind an individual depth plane as an attachment. */ + + /* Can be ignored by RenderPass if CLEAR is not used */ + SDL_FColor clearColor; + + /* Determines what is done with the texture at the beginning of the render pass. + * + * LOAD: + * Loads the data currently in the texture. + * + * CLEAR: + * Clears the texture to a single color. + * + * DONT_CARE: + * The driver will do whatever it wants with the texture memory. + * This is a good option if you know that every single pixel will be touched in the render pass. + */ + SDL_GPULoadOp loadOp; + + /* Determines what is done with the texture at the end of the render pass. + * + * STORE: + * Stores the results of the render pass in the texture. + * + * DONT_CARE: + * The driver will do whatever it wants with the texture memory. + * This is often a good option for depth/stencil textures. + */ + SDL_GPUStoreOp storeOp; + + /* if SDL_TRUE, cycles the texture if the texture is bound and loadOp is not LOAD */ + SDL_bool cycle; +} SDL_GPUColorAttachmentInfo; + +typedef struct SDL_GPUDepthStencilAttachmentInfo +{ + /* The texture that will be used as the depth stencil attachment by a render pass. */ + SDL_GPUTexture *texture; + + /* Can be ignored by the render pass if CLEAR is not used */ + SDL_GPUDepthStencilValue depthStencilClearValue; + + /* Determines what is done with the depth values at the beginning of the render pass. + * + * LOAD: + * Loads the depth values currently in the texture. + * + * CLEAR: + * Clears the texture to a single depth. + * + * DONT_CARE: + * The driver will do whatever it wants with the memory. + * This is a good option if you know that every single pixel will be touched in the render pass. + */ + SDL_GPULoadOp loadOp; + + /* Determines what is done with the depth values at the end of the render pass. + * + * STORE: + * Stores the depth results in the texture. + * + * DONT_CARE: + * The driver will do whatever it wants with the texture memory. + * This is often a good option for depth/stencil textures. + */ + SDL_GPUStoreOp storeOp; + + /* Determines what is done with the stencil values at the beginning of the render pass. + * + * LOAD: + * Loads the stencil values currently in the texture. + * + * CLEAR: + * Clears the texture to a single stencil value. + * + * DONT_CARE: + * The driver will do whatever it wants with the memory. + * This is a good option if you know that every single pixel will be touched in the render pass. + */ + SDL_GPULoadOp stencilLoadOp; + + /* Determines what is done with the stencil values at the end of the render pass. + * + * STORE: + * Stores the stencil results in the texture. + * + * DONT_CARE: + * The driver will do whatever it wants with the texture memory. + * This is often a good option for depth/stencil textures. + */ + SDL_GPUStoreOp stencilStoreOp; + + /* if SDL_TRUE, cycles the texture if the texture is bound and any load ops are not LOAD */ + SDL_bool cycle; +} SDL_GPUDepthStencilAttachmentInfo; + +/* Binding structs */ + +typedef struct SDL_GPUBufferBinding +{ + SDL_GPUBuffer *buffer; + Uint32 offset; +} SDL_GPUBufferBinding; + +typedef struct SDL_GPUTextureSamplerBinding +{ + SDL_GPUTexture *texture; + SDL_GPUSampler *sampler; +} SDL_GPUTextureSamplerBinding; + +typedef struct SDL_GPUStorageBufferWriteOnlyBinding +{ + SDL_GPUBuffer *buffer; + + /* if SDL_TRUE, cycles the buffer if it is bound. */ + SDL_bool cycle; +} SDL_GPUStorageBufferWriteOnlyBinding; + +typedef struct SDL_GPUStorageTextureWriteOnlyBinding +{ + SDL_GPUTexture *texture; + Uint32 mipLevel; + Uint32 layer; + + /* if SDL_TRUE, cycles the texture if the texture is bound. */ + SDL_bool cycle; +} SDL_GPUStorageTextureWriteOnlyBinding; + +/* Functions */ + +/* Device */ + +/** + * Creates a GPU context. + * + * \param formatFlags a bitflag indicating which shader formats the app is + * able to provide. + * \param debugMode enable debug mode properties and validations. + * \param name the preferred GPU driver, or NULL to let SDL pick the optimal + * driver. + * \returns a GPU context on success or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_GetGPUDriver + * \sa SDL_DestroyGPUDevice + */ +extern SDL_DECLSPEC SDL_GPUDevice *SDLCALL SDL_CreateGPUDevice( + SDL_GPUShaderFormat formatFlags, + SDL_bool debugMode, + const char *name); + +/** + * Creates a GPU context. + * + * These are the supported properties: + * + * - `SDL_PROP_GPU_DEVICE_CREATE_DEBUGMODE_BOOL`: enable debug mode properties + * and validations, defaults to SDL_TRUE. + * - `SDL_PROP_GPU_DEVICE_CREATE_PREFERLOWPOWER_BOOL`: enable to prefer energy + * efficiency over maximum GPU performance, defaults to SDL_FALSE. + * - `SDL_PROP_GPU_DEVICE_CREATE_NAME_STRING`: the name of the GPU driver to + * use, if a specific one is desired. + * + * These are the current shader format properties: + * + * - `SDL_PROP_GPU_DEVICE_CREATE_SHADERS_SECRET_BOOL`: The app is able to + * provide shaders for an NDA platform. + * - `SDL_PROP_GPU_DEVICE_CREATE_SHADERS_SPIRV_BOOL`: The app is able to + * provide SPIR-V shaders if applicable. + * - SDL_PROP_GPU_DEVICE_CREATE_SHADERS_DXBC_BOOL`: The app is able to provide + * DXBC shaders if applicable + * `SDL_PROP_GPU_DEVICE_CREATE_SHADERS_DXIL_BOOL`: The app is able to + * provide DXIL shaders if applicable. + * - `SDL_PROP_GPU_DEVICE_CREATE_SHADERS_MSL_BOOL`: The app is able to provide + * MSL shaders if applicable. + * - `SDL_PROP_GPU_DEVICE_CREATE_SHADERS_METALLIB_BOOL`: The app is able to + * provide Metal shader libraries if applicable. + * + * With the D3D12 renderer: + * + * - `SDL_PROP_GPU_DEVICE_CREATE_D3D12_SEMANTIC_NAME_STRING`: the prefix to + * use for all vertex semantics, default is "TEXCOORD". + * + * \param props the properties to use. + * \returns a GPU context on success or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_GetGPUDriver + * \sa SDL_DestroyGPUDevice + */ +extern SDL_DECLSPEC SDL_GPUDevice *SDLCALL SDL_CreateGPUDeviceWithProperties( + SDL_PropertiesID props); + +#define SDL_PROP_GPU_DEVICE_CREATE_DEBUGMODE_BOOL "SDL.gpu.device.create.debugmode" +#define SDL_PROP_GPU_DEVICE_CREATE_PREFERLOWPOWER_BOOL "SDL.gpu.device.create.preferlowpower" +#define SDL_PROP_GPU_DEVICE_CREATE_NAME_STRING "SDL.gpu.device.create.name" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_SECRET_BOOL "SDL.gpu.device.create.shaders.secret" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_SPIRV_BOOL "SDL.gpu.device.create.shaders.spirv" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_DXBC_BOOL "SDL.gpu.device.create.shaders.dxbc" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_DXIL_BOOL "SDL.gpu.device.create.shaders.dxil" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_MSL_BOOL "SDL.gpu.device.create.shaders.msl" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_METALLIB_BOOL "SDL.gpu.device.create.shaders.metallib" +#define SDL_PROP_GPU_DEVICE_CREATE_D3D12_SEMANTIC_NAME_STRING "SDL.gpu.device.create.d3d12.semantic" + +/** + * Destroys a GPU context previously returned by SDL_CreateGPUDevice. + * + * \param device a GPU Context to destroy. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_CreateGPUDevice + */ +extern SDL_DECLSPEC void SDLCALL SDL_DestroyGPUDevice(SDL_GPUDevice *device); + +/** + * Returns the backend used to create this GPU context. + * + * \param device a GPU context to query. + * \returns an SDL_GPUDriver value, or SDL_GPU_DRIVER_INVALID on error. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC SDL_GPUDriver SDLCALL SDL_GetGPUDriver(SDL_GPUDevice *device); + +/* State Creation */ + +/** + * Creates a pipeline object to be used in a compute workflow. + * + * Shader resource bindings must be authored to follow a particular order. For + * SPIR-V shaders, use the following resource sets: 0: Read-only storage + * textures, followed by read-only storage buffers 1: Write-only storage + * textures, followed by write-only storage buffers 2: Uniform buffers + * + * For DXBC Shader Model 5_0 shaders, use the following register order: For t + * registers: Read-only storage textures, followed by read-only storage + * buffers For u registers: Write-only storage textures, followed by + * write-only storage buffers For b registers: Uniform buffers + * + * For DXIL shaders, use the following register order: (t[n], space0): + * Read-only storage textures, followed by read-only storage buffers (u[n], + * space1): Write-only storage textures, followed by write-only storage + * buffers (b[n], space2): Uniform buffers + * + * For MSL/metallib, use the following order: For [[buffer]]: Uniform buffers, + * followed by write-only storage buffers, followed by write-only storage + * buffers For [[texture]]: Read-only storage textures, followed by write-only + * storage textures + * + * \param device a GPU Context. + * \param computePipelineCreateInfo a struct describing the state of the + * requested compute pipeline. + * \returns a compute pipeline object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_BindGPUComputePipeline + * \sa SDL_ReleaseGPUComputePipeline + */ +extern SDL_DECLSPEC SDL_GPUComputePipeline *SDLCALL SDL_CreateGPUComputePipeline( + SDL_GPUDevice *device, + SDL_GPUComputePipelineCreateInfo *computePipelineCreateInfo); + +/** + * Creates a pipeline object to be used in a graphics workflow. + * + * \param device a GPU Context. + * \param pipelineCreateInfo a struct describing the state of the desired + * graphics pipeline. + * \returns a graphics pipeline object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_CreateGPUShader + * \sa SDL_BindGPUGraphicsPipeline + * \sa SDL_ReleaseGPUGraphicsPipeline + */ +extern SDL_DECLSPEC SDL_GPUGraphicsPipeline *SDLCALL SDL_CreateGPUGraphicsPipeline( + SDL_GPUDevice *device, + SDL_GPUGraphicsPipelineCreateInfo *pipelineCreateInfo); + +/** + * Creates a sampler object to be used when binding textures in a graphics + * workflow. + * + * \param device a GPU Context. + * \param samplerCreateInfo a struct describing the state of the desired + * sampler. + * \returns a sampler object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_BindGPUVertexSamplers + * \sa SDL_BindGPUFragmentSamplers + * \sa SDL_ReleaseSampler + */ +extern SDL_DECLSPEC SDL_GPUSampler *SDLCALL SDL_CreateGPUSampler( + SDL_GPUDevice *device, + SDL_GPUSamplerCreateInfo *samplerCreateInfo); + +/** + * Creates a shader to be used when creating a graphics pipeline. + * + * Shader resource bindings must be authored to follow a particular order + * depending on the shader format. + * + * For SPIR-V shaders, use the following resource sets: For vertex shaders: 0: + * Sampled textures, followed by storage textures, followed by storage buffers + * 1: Uniform buffers For fragment shaders: 2: Sampled textures, followed by + * storage textures, followed by storage buffers 3: Uniform buffers + * + * For DXBC Shader Model 5_0 shaders, use the following register order: For t + * registers: Sampled textures, followed by storage textures, followed by + * storage buffers For s registers: Samplers with indices corresponding to the + * sampled textures For b registers: Uniform buffers + * + * For DXIL shaders, use the following register order: For vertex shaders: + * (t[n], space0): Sampled textures, followed by storage textures, followed by + * storage buffers (s[n], space0): Samplers with indices corresponding to the + * sampled textures (b[n], space1): Uniform buffers For pixel shaders: (t[n], + * space2): Sampled textures, followed by storage textures, followed by + * storage buffers (s[n], space2): Samplers with indices corresponding to the + * sampled textures (b[n], space3): Uniform buffers + * + * For MSL/metallib, use the following order: For [[texture]]: Sampled + * textures, followed by storage textures For [[sampler]]: Samplers with + * indices corresponding to the sampled textures For [[buffer]]: Uniform + * buffers, followed by storage buffers. Vertex buffer 0 is bound at + * [[buffer(30)]], vertex buffer 1 at [[buffer(29)]], and so on. Rather than + * manually authoring vertex buffer indices, use the [[stage_in]] attribute + * which will automatically use the vertex input information from the + * SDL_GPUPipeline. + * + * \param device a GPU Context. + * \param shaderCreateInfo a struct describing the state of the desired + * shader. + * \returns a shader object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_CreateGPUGraphicsPipeline + * \sa SDL_ReleaseGPUShader + */ +extern SDL_DECLSPEC SDL_GPUShader *SDLCALL SDL_CreateGPUShader( + SDL_GPUDevice *device, + SDL_GPUShaderCreateInfo *shaderCreateInfo); + +/** + * Creates a texture object to be used in graphics or compute workflows. + * + * The contents of this texture are undefined until data is written to the + * texture. + * + * Note that certain combinations of usage flags are invalid. For example, a + * texture cannot have both the SAMPLER and GRAPHICS_STORAGE_READ flags. + * + * If you request a sample count higher than the hardware supports, the + * implementation will automatically fall back to the highest available sample + * count. + * + * \param device a GPU Context. + * \param textureCreateInfo a struct describing the state of the texture to + * create. + * \returns a texture object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_UploadToGPUTexture + * \sa SDL_DownloadFromGPUTexture + * \sa SDL_BindGPUVertexSamplers + * \sa SDL_BindGPUVertexStorageTextures + * \sa SDL_BindGPUFragmentSamplers + * \sa SDL_BindGPUFragmentStorageTextures + * \sa SDL_BindGPUComputeStorageTextures + * \sa SDL_BlitGPUTexture + * \sa SDL_ReleaseGPUTexture + * \sa SDL_GPUTextureSupportsFormat + */ +extern SDL_DECLSPEC SDL_GPUTexture *SDLCALL SDL_CreateGPUTexture( + SDL_GPUDevice *device, + SDL_GPUTextureCreateInfo *textureCreateInfo); + +/** + * Creates a buffer object to be used in graphics or compute workflows. + * + * The contents of this buffer are undefined until data is written to the + * buffer. + * + * Note that certain combinations of usage flags are invalid. For example, a + * buffer cannot have both the VERTEX and INDEX flags. + * + * \param device a GPU Context. + * \param bufferCreateInfo a struct describing the state of the buffer to + * create. + * \returns a buffer object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_UploadToGPUBuffer + * \sa SDL_BindGPUVertexBuffers + * \sa SDL_BindGPUIndexBuffer + * \sa SDL_BindGPUVertexStorageBuffers + * \sa SDL_BindGPUFragmentStorageBuffers + * \sa SDL_BindGPUComputeStorageBuffers + * \sa SDL_ReleaseGPUBuffer + */ +extern SDL_DECLSPEC SDL_GPUBuffer *SDLCALL SDL_CreateGPUBuffer( + SDL_GPUDevice *device, + SDL_GPUBufferCreateInfo *bufferCreateInfo); + +/** + * Creates a transfer buffer to be used when uploading to or downloading from + * graphics resources. + * + * \param device a GPU Context. + * \param transferBufferCreateInfo a struct describing the state of the + * transfer buffer to create. + * \returns a transfer buffer on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_UploadToGPUBuffer + * \sa SDL_DownloadFromGPUBuffer + * \sa SDL_UploadToGPUTexture + * \sa SDL_DownloadFromGPUTexture + * \sa SDL_ReleaseGPUTransferBuffer + */ +extern SDL_DECLSPEC SDL_GPUTransferBuffer *SDLCALL SDL_CreateGPUTransferBuffer( + SDL_GPUDevice *device, + SDL_GPUTransferBufferCreateInfo *transferBufferCreateInfo); + +/* Debug Naming */ + +/** + * Sets an arbitrary string constant to label a buffer. + * + * Useful for debugging. + * + * \param device a GPU Context. + * \param buffer a buffer to attach the name to. + * \param text a UTF-8 string constant to mark as the name of the buffer. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_SetGPUBufferName( + SDL_GPUDevice *device, + SDL_GPUBuffer *buffer, + const char *text); + +/** + * Sets an arbitrary string constant to label a texture. + * + * Useful for debugging. + * + * \param device a GPU Context. + * \param texture a texture to attach the name to. + * \param text a UTF-8 string constant to mark as the name of the texture. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_SetGPUTextureName( + SDL_GPUDevice *device, + SDL_GPUTexture *texture, + const char *text); + +/** + * Inserts an arbitrary string label into the command buffer callstream. + * + * Useful for debugging. + * + * \param commandBuffer a command buffer. + * \param text a UTF-8 string constant to insert as the label. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_InsertGPUDebugLabel( + SDL_GPUCommandBuffer *commandBuffer, + const char *text); + +/** + * Begins a debug group with an arbitary name. + * + * Used for denoting groups of calls when viewing the command buffer + * callstream in a graphics debugging tool. + * + * Each call to SDL_PushGPUDebugGroup must have a corresponding call to + * SDL_PopGPUDebugGroup. + * + * On some backends (e.g. Metal), pushing a debug group during a + * render/blit/compute pass will create a group that is scoped to the native + * pass rather than the command buffer. For best results, if you push a debug + * group during a pass, always pop it in the same pass. + * + * \param commandBuffer a command buffer. + * \param name a UTF-8 string constant that names the group. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_PopGPUDebugGroup + */ +extern SDL_DECLSPEC void SDLCALL SDL_PushGPUDebugGroup( + SDL_GPUCommandBuffer *commandBuffer, + const char *name); + +/** + * Ends the most-recently pushed debug group. + * + * \param commandBuffer a command buffer. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_PushGPUDebugGroup + */ +extern SDL_DECLSPEC void SDLCALL SDL_PopGPUDebugGroup( + SDL_GPUCommandBuffer *commandBuffer); + +/* Disposal */ + +/** + * Frees the given texture as soon as it is safe to do so. + * + * You must not reference the texture after calling this function. + * + * \param device a GPU context. + * \param texture a texture to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUTexture( + SDL_GPUDevice *device, + SDL_GPUTexture *texture); + +/** + * Frees the given sampler as soon as it is safe to do so. + * + * You must not reference the texture after calling this function. + * + * \param device a GPU context. + * \param sampler a sampler to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUSampler( + SDL_GPUDevice *device, + SDL_GPUSampler *sampler); + +/** + * Frees the given buffer as soon as it is safe to do so. + * + * You must not reference the buffer after calling this function. + * + * \param device a GPU context. + * \param buffer a buffer to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUBuffer( + SDL_GPUDevice *device, + SDL_GPUBuffer *buffer); + +/** + * Frees the given transfer buffer as soon as it is safe to do so. + * + * You must not reference the transfer buffer after calling this function. + * + * \param device a GPU context. + * \param transferBuffer a transfer buffer to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUTransferBuffer( + SDL_GPUDevice *device, + SDL_GPUTransferBuffer *transferBuffer); + +/** + * Frees the given compute pipeline as soon as it is safe to do so. + * + * You must not reference the compute pipeline after calling this function. + * + * \param device a GPU context. + * \param computePipeline a compute pipeline to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUComputePipeline( + SDL_GPUDevice *device, + SDL_GPUComputePipeline *computePipeline); + +/** + * Frees the given shader as soon as it is safe to do so. + * + * You must not reference the shader after calling this function. + * + * \param device a GPU context. + * \param shader a shader to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUShader( + SDL_GPUDevice *device, + SDL_GPUShader *shader); + +/** + * Frees the given graphics pipeline as soon as it is safe to do so. + * + * You must not reference the graphics pipeline after calling this function. + * + * \param device a GPU context. + * \param graphicsPipeline a graphics pipeline to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUGraphicsPipeline( + SDL_GPUDevice *device, + SDL_GPUGraphicsPipeline *graphicsPipeline); + +/* + * COMMAND BUFFERS + * + * Render state is managed via command buffers. + * When setting render state, that state is always local to the command buffer. + * + * Commands only begin execution on the GPU once Submit is called. + * Once the command buffer is submitted, it is no longer valid to use it. + * + * Command buffers are executed in submission order. If you submit command buffer A and then command buffer B + * all commands in A will begin executing before any command in B begins executing. + * + * In multi-threading scenarios, you should acquire and submit a command buffer on the same thread. + * As long as you satisfy this requirement, all functionality related to command buffers is thread-safe. + */ + +/** + * Acquire a command buffer. + * + * This command buffer is managed by the implementation and should not be + * freed by the user. The command buffer may only be used on the thread it was + * acquired on. The command buffer should be submitted on the thread it was + * acquired on. + * + * \param device a GPU context. + * \returns a command buffer. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SubmitGPUCommandBuffer + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + */ +extern SDL_DECLSPEC SDL_GPUCommandBuffer *SDLCALL SDL_AcquireGPUCommandBuffer( + SDL_GPUDevice *device); + +/* + * UNIFORM DATA + * + * Uniforms are for passing data to shaders. + * The uniform data will be constant across all executions of the shader. + * + * There are 4 available uniform slots per shader stage (vertex, fragment, compute). + * Uniform data pushed to a slot on a stage keeps its value throughout the command buffer + * until you call the relevant Push function on that slot again. + * + * For example, you could write your vertex shaders to read a camera matrix from uniform binding slot 0, + * push the camera matrix at the start of the command buffer, and that data will be used for every + * subsequent draw call. + * + * It is valid to push uniform data during a render or compute pass. + * + * Uniforms are best for pushing small amounts of data. + * If you are pushing more than a matrix or two per call you should consider using a storage buffer instead. + */ + +/** + * Pushes data to a vertex uniform slot on the command buffer. + * + * Subsequent draw calls will use this uniform data. + * + * \param commandBuffer a command buffer. + * \param slotIndex the vertex uniform slot to push data to. + * \param data client data to write. + * \param dataLengthInBytes the length of the data to write. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_PushGPUVertexUniformData( + SDL_GPUCommandBuffer *commandBuffer, + Uint32 slotIndex, + const void *data, + Uint32 dataLengthInBytes); + +/** + * Pushes data to a fragment uniform slot on the command buffer. + * + * Subsequent draw calls will use this uniform data. + * + * \param commandBuffer a command buffer. + * \param slotIndex the fragment uniform slot to push data to. + * \param data client data to write. + * \param dataLengthInBytes the length of the data to write. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_PushGPUFragmentUniformData( + SDL_GPUCommandBuffer *commandBuffer, + Uint32 slotIndex, + const void *data, + Uint32 dataLengthInBytes); + +/** + * Pushes data to a uniform slot on the command buffer. + * + * Subsequent draw calls will use this uniform data. + * + * \param commandBuffer a command buffer. + * \param slotIndex the uniform slot to push data to. + * \param data client data to write. + * \param dataLengthInBytes the length of the data to write. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_PushGPUComputeUniformData( + SDL_GPUCommandBuffer *commandBuffer, + Uint32 slotIndex, + const void *data, + Uint32 dataLengthInBytes); + +/* + * A NOTE ON CYCLING + * + * When using a command buffer, operations do not occur immediately - + * they occur some time after the command buffer is submitted. + * + * When a resource is used in a pending or active command buffer, it is considered to be "bound". + * When a resource is no longer used in any pending or active command buffers, it is considered to be "unbound". + * + * If data resources are bound, it is unspecified when that data will be unbound + * unless you acquire a fence when submitting the command buffer and wait on it. + * However, this doesn't mean you need to track resource usage manually. + * + * All of the functions and structs that involve writing to a resource have a "cycle" bool. + * GPUTransferBuffer, GPUBuffer, and GPUTexture all effectively function as ring buffers on internal resources. + * When cycle is SDL_TRUE, if the resource is bound, the cycle rotates to the next unbound internal resource, + * or if none are available, a new one is created. + * This means you don't have to worry about complex state tracking and synchronization as long as cycling is correctly employed. + * + * For example: you can call MapTransferBuffer, write texture data, UnmapTransferBuffer, and then UploadToTexture. + * The next time you write texture data to the transfer buffer, if you set the cycle param to SDL_TRUE, you don't have + * to worry about overwriting any data that is not yet uploaded. + * + * Another example: If you are using a texture in a render pass every frame, this can cause a data dependency between frames. + * If you set cycle to SDL_TRUE in the ColorAttachmentInfo struct, you can prevent this data dependency. + * + * Cycling will never undefine already bound data. + * When cycling, all data in the resource is considered to be undefined for subsequent commands until that data is written again. + * You must take care not to read undefined data. + * + * Note that when cycling a texture, the entire texture will be cycled, + * even if only part of the texture is used in the call, + * so you must consider the entire texture to contain undefined data after cycling. + * + * You must also take care not to overwrite a section of data that has been referenced in a command without cycling first. + * It is OK to overwrite unreferenced data in a bound resource without cycling, + * but overwriting a section of data that has already been referenced will produce unexpected results. + */ + +/* Graphics State */ + +/** + * Begins a render pass on a command buffer. + * + * A render pass consists of a set of texture subresources (or depth slices in + * the 3D texture case) which will be rendered to during the render pass, + * along with corresponding clear values and load/store operations. All + * operations related to graphics pipelines must take place inside of a render + * pass. A default viewport and scissor state are automatically set when this + * is called. You cannot begin another render pass, or begin a compute pass or + * copy pass until you have ended the render pass. + * + * \param commandBuffer a command buffer. + * \param colorAttachmentInfos an array of texture subresources with + * corresponding clear values and load/store ops. + * \param colorAttachmentCount the number of color attachments in the + * colorAttachmentInfos array. + * \param depthStencilAttachmentInfo a texture subresource with corresponding + * clear value and load/store ops, may be + * NULL. + * \returns a render pass handle. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_EndGPURenderPass + */ +extern SDL_DECLSPEC SDL_GPURenderPass *SDLCALL SDL_BeginGPURenderPass( + SDL_GPUCommandBuffer *commandBuffer, + SDL_GPUColorAttachmentInfo *colorAttachmentInfos, + Uint32 colorAttachmentCount, + SDL_GPUDepthStencilAttachmentInfo *depthStencilAttachmentInfo); + +/** + * Binds a graphics pipeline on a render pass to be used in rendering. + * + * A graphics pipeline must be bound before making any draw calls. + * + * \param renderPass a render pass handle. + * \param graphicsPipeline the graphics pipeline to bind. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUGraphicsPipeline( + SDL_GPURenderPass *renderPass, + SDL_GPUGraphicsPipeline *graphicsPipeline); + +/** + * Sets the current viewport state on a command buffer. + * + * \param renderPass a render pass handle. + * \param viewport the viewport to set. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_SetGPUViewport( + SDL_GPURenderPass *renderPass, + SDL_GPUViewport *viewport); + +/** + * Sets the current scissor state on a command buffer. + * + * \param renderPass a render pass handle. + * \param scissor the scissor area to set. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_SetGPUScissor( + SDL_GPURenderPass *renderPass, + SDL_Rect *scissor); + +/** + * Binds vertex buffers on a command buffer for use with subsequent draw + * calls. + * + * \param renderPass a render pass handle. + * \param firstBinding the starting bind point for the vertex buffers. + * \param pBindings an array of SDL_GPUBufferBinding structs containing vertex + * buffers and offset values. + * \param bindingCount the number of bindings in the pBindings array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUVertexBuffers( + SDL_GPURenderPass *renderPass, + Uint32 firstBinding, + SDL_GPUBufferBinding *pBindings, + Uint32 bindingCount); + +/** + * Binds an index buffer on a command buffer for use with subsequent draw + * calls. + * + * \param renderPass a render pass handle. + * \param pBinding a pointer to a struct containing an index buffer and + * offset. + * \param indexElementSize whether the index values in the buffer are 16- or + * 32-bit. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUIndexBuffer( + SDL_GPURenderPass *renderPass, + SDL_GPUBufferBinding *pBinding, + SDL_GPUIndexElementSize indexElementSize); + +/** + * Binds texture-sampler pairs for use on the vertex shader. + * + * The textures must have been created with SDL_GPU_TEXTUREUSAGE_SAMPLER_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the vertex sampler slot to begin binding from. + * \param textureSamplerBindings an array of texture-sampler binding structs. + * \param bindingCount the number of texture-sampler pairs to bind from the + * array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUVertexSamplers( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUTextureSamplerBinding *textureSamplerBindings, + Uint32 bindingCount); + +/** + * Binds storage textures for use on the vertex shader. + * + * These textures must have been created with + * SDL_GPU_TEXTUREUSAGE_GRAPHICS_STORAGE_READ_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the vertex storage texture slot to begin binding from. + * \param storageTextures an array of storage textures. + * \param bindingCount the number of storage texture to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUVertexStorageTextures( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUTexture **storageTextures, + Uint32 bindingCount); + +/** + * Binds storage buffers for use on the vertex shader. + * + * These buffers must have been created with + * SDL_GPU_BUFFERUSAGE_GRAPHICS_STORAGE_READ_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the vertex storage buffer slot to begin binding from. + * \param storageBuffers an array of buffers. + * \param bindingCount the number of buffers to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUVertexStorageBuffers( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUBuffer **storageBuffers, + Uint32 bindingCount); + +/** + * Binds texture-sampler pairs for use on the fragment shader. + * + * The textures must have been created with SDL_GPU_TEXTUREUSAGE_SAMPLER_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the fragment sampler slot to begin binding from. + * \param textureSamplerBindings an array of texture-sampler binding structs. + * \param bindingCount the number of texture-sampler pairs to bind from the + * array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUFragmentSamplers( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUTextureSamplerBinding *textureSamplerBindings, + Uint32 bindingCount); + +/** + * Binds storage textures for use on the fragment shader. + * + * These textures must have been created with + * SDL_GPU_TEXTUREUSAGE_GRAPHICS_STORAGE_READ_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the fragment storage texture slot to begin binding from. + * \param storageTextures an array of storage textures. + * \param bindingCount the number of storage textures to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUFragmentStorageTextures( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUTexture **storageTextures, + Uint32 bindingCount); + +/** + * Binds storage buffers for use on the fragment shader. + * + * These buffers must have been created with + * SDL_GPU_BUFFERUSAGE_GRAPHICS_STORAGE_READ_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the fragment storage buffer slot to begin binding from. + * \param storageBuffers an array of storage buffers. + * \param bindingCount the number of storage buffers to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUFragmentStorageBuffers( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUBuffer **storageBuffers, + Uint32 bindingCount); + +/* Drawing */ + +/** + * Draws data using bound graphics state with an index buffer and instancing + * enabled. + * + * You must not call this function before binding a graphics pipeline. + * + * Note that the `firstVertex` and `firstInstance` parameters are NOT + * compatible with built-in vertex/instance ID variables in shaders (for + * example, SV_VertexID). If your shader depends on these variables, the + * correlating draw call parameter MUST be 0. + * + * \param renderPass a render pass handle. + * \param indexCount the number of vertices to draw per instance. + * \param instanceCount the number of instances to draw. + * \param firstIndex the starting index within the index buffer. + * \param vertexOffset value added to vertex index before indexing into the + * vertex buffer. + * \param firstInstance the ID of the first instance to draw. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DrawGPUIndexedPrimitives( + SDL_GPURenderPass *renderPass, + Uint32 indexCount, + Uint32 instanceCount, + Uint32 firstIndex, + Sint32 vertexOffset, + Uint32 firstInstance); + +/** + * Draws data using bound graphics state. + * + * You must not call this function before binding a graphics pipeline. + * + * Note that the `firstVertex` and `firstInstance` parameters are NOT + * compatible with built-in vertex/instance ID variables in shaders (for + * example, SV_VertexID). If your shader depends on these variables, the + * correlating draw call parameter MUST be 0. + * + * \param renderPass a render pass handle. + * \param vertexCount the number of vertices to draw. + * \param instanceCount the number of instances that will be drawn. + * \param firstVertex the index of the first vertex to draw. + * \param firstInstance the ID of the first instance to draw. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DrawGPUPrimitives( + SDL_GPURenderPass *renderPass, + Uint32 vertexCount, + Uint32 instanceCount, + Uint32 firstVertex, + Uint32 firstInstance); + +/** + * Draws data using bound graphics state and with draw parameters set from a + * buffer. + * + * The buffer layout should match the layout of SDL_GPUIndirectDrawCommand. + * You must not call this function before binding a graphics pipeline. + * + * \param renderPass a render pass handle. + * \param buffer a buffer containing draw parameters. + * \param offsetInBytes the offset to start reading from the draw buffer. + * \param drawCount the number of draw parameter sets that should be read from + * the draw buffer. + * \param stride the byte stride between sets of draw parameters. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DrawGPUPrimitivesIndirect( + SDL_GPURenderPass *renderPass, + SDL_GPUBuffer *buffer, + Uint32 offsetInBytes, + Uint32 drawCount, + Uint32 stride); + +/** + * Draws data using bound graphics state with an index buffer enabled and with + * draw parameters set from a buffer. + * + * The buffer layout should match the layout of + * SDL_GPUIndexedIndirectDrawCommand. You must not call this function before + * binding a graphics pipeline. + * + * \param renderPass a render pass handle. + * \param buffer a buffer containing draw parameters. + * \param offsetInBytes the offset to start reading from the draw buffer. + * \param drawCount the number of draw parameter sets that should be read from + * the draw buffer. + * \param stride the byte stride between sets of draw parameters. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DrawGPUIndexedPrimitivesIndirect( + SDL_GPURenderPass *renderPass, + SDL_GPUBuffer *buffer, + Uint32 offsetInBytes, + Uint32 drawCount, + Uint32 stride); + +/** + * Ends the given render pass. + * + * All bound graphics state on the render pass command buffer is unset. The + * render pass handle is now invalid. + * + * \param renderPass a render pass handle. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_EndGPURenderPass( + SDL_GPURenderPass *renderPass); + +/* Compute Pass */ + +/** + * Begins a compute pass on a command buffer. + * + * A compute pass is defined by a set of texture subresources and buffers that + * will be written to by compute pipelines. These textures and buffers must + * have been created with the COMPUTE_STORAGE_WRITE bit. All operations + * related to compute pipelines must take place inside of a compute pass. You + * must not begin another compute pass, or a render pass or copy pass before + * ending the compute pass. + * + * A VERY IMPORTANT NOTE Textures and buffers bound as write-only MUST NOT be + * read from during the compute pass. Doing so will result in undefined + * behavior. If your compute work requires reading the output from a previous + * dispatch, you MUST end the current compute pass and begin a new one before + * you can safely access the data. + * + * \param commandBuffer a command buffer. + * \param storageTextureBindings an array of writeable storage texture binding + * structs. + * \param storageTextureBindingCount the number of storage textures to bind + * from the array. + * \param storageBufferBindings an array of writeable storage buffer binding + * structs. + * \param storageBufferBindingCount the number of storage buffers to bind from + * the array. + * \returns a compute pass handle. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_EndGPUComputePass + */ +extern SDL_DECLSPEC SDL_GPUComputePass *SDLCALL SDL_BeginGPUComputePass( + SDL_GPUCommandBuffer *commandBuffer, + SDL_GPUStorageTextureWriteOnlyBinding *storageTextureBindings, + Uint32 storageTextureBindingCount, + SDL_GPUStorageBufferWriteOnlyBinding *storageBufferBindings, + Uint32 storageBufferBindingCount); + +/** + * Binds a compute pipeline on a command buffer for use in compute dispatch. + * + * \param computePass a compute pass handle. + * \param computePipeline a compute pipeline to bind. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUComputePipeline( + SDL_GPUComputePass *computePass, + SDL_GPUComputePipeline *computePipeline); + +/** + * Binds storage textures as readonly for use on the compute pipeline. + * + * These textures must have been created with + * SDL_GPU_TEXTUREUSAGE_COMPUTE_STORAGE_READ_BIT. + * + * \param computePass a compute pass handle. + * \param firstSlot the compute storage texture slot to begin binding from. + * \param storageTextures an array of storage textures. + * \param bindingCount the number of storage textures to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUComputeStorageTextures( + SDL_GPUComputePass *computePass, + Uint32 firstSlot, + SDL_GPUTexture **storageTextures, + Uint32 bindingCount); + +/** + * Binds storage buffers as readonly for use on the compute pipeline. + * + * These buffers must have been created with + * SDL_GPU_BUFFERUSAGE_COMPUTE_STORAGE_READ_BIT. + * + * \param computePass a compute pass handle. + * \param firstSlot the compute storage buffer slot to begin binding from. + * \param storageBuffers an array of storage buffer binding structs. + * \param bindingCount the number of storage buffers to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUComputeStorageBuffers( + SDL_GPUComputePass *computePass, + Uint32 firstSlot, + SDL_GPUBuffer **storageBuffers, + Uint32 bindingCount); + +/** + * Dispatches compute work. + * + * You must not call this function before binding a compute pipeline. + * + * A VERY IMPORTANT NOTE If you dispatch multiple times in a compute pass, and + * the dispatches write to the same resource region as each other, there is no + * guarantee of which order the writes will occur. If the write order matters, + * you MUST end the compute pass and begin another one. + * + * \param computePass a compute pass handle. + * \param groupCountX number of local workgroups to dispatch in the X + * dimension. + * \param groupCountY number of local workgroups to dispatch in the Y + * dimension. + * \param groupCountZ number of local workgroups to dispatch in the Z + * dimension. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DispatchGPUCompute( + SDL_GPUComputePass *computePass, + Uint32 groupCountX, + Uint32 groupCountY, + Uint32 groupCountZ); + +/** + * Dispatches compute work with parameters set from a buffer. + * + * The buffer layout should match the layout of + * SDL_GPUIndirectDispatchCommand. You must not call this function before + * binding a compute pipeline. + * + * A VERY IMPORTANT NOTE If you dispatch multiple times in a compute pass, and + * the dispatches write to the same resource region as each other, there is no + * guarantee of which order the writes will occur. If the write order matters, + * you MUST end the compute pass and begin another one. + * + * \param computePass a compute pass handle. + * \param buffer a buffer containing dispatch parameters. + * \param offsetInBytes the offset to start reading from the dispatch buffer. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DispatchGPUComputeIndirect( + SDL_GPUComputePass *computePass, + SDL_GPUBuffer *buffer, + Uint32 offsetInBytes); + +/** + * Ends the current compute pass. + * + * All bound compute state on the command buffer is unset. The compute pass + * handle is now invalid. + * + * \param computePass a compute pass handle. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_EndGPUComputePass( + SDL_GPUComputePass *computePass); + +/* TransferBuffer Data */ + +/** + * Maps a transfer buffer into application address space. + * + * You must unmap the transfer buffer before encoding upload commands. + * + * \param device a GPU context. + * \param transferBuffer a transfer buffer. + * \param cycle if SDL_TRUE, cycles the transfer buffer if it is bound. + * \returns the address of the mapped transfer buffer memory. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void *SDLCALL SDL_MapGPUTransferBuffer( + SDL_GPUDevice *device, + SDL_GPUTransferBuffer *transferBuffer, + SDL_bool cycle); + +/** + * Unmaps a previously mapped transfer buffer. + * + * \param device a GPU context. + * \param transferBuffer a previously mapped transfer buffer. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_UnmapGPUTransferBuffer( + SDL_GPUDevice *device, + SDL_GPUTransferBuffer *transferBuffer); + +/* Copy Pass */ + +/** + * Begins a copy pass on a command buffer. + * + * All operations related to copying to or from buffers or textures take place + * inside a copy pass. You must not begin another copy pass, or a render pass + * or compute pass before ending the copy pass. + * + * \param commandBuffer a command buffer. + * \returns a copy pass handle. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC SDL_GPUCopyPass *SDLCALL SDL_BeginGPUCopyPass( + SDL_GPUCommandBuffer *commandBuffer); + +/** + * Uploads data from a transfer buffer to a texture. + * + * The upload occurs on the GPU timeline. You may assume that the upload has + * finished in subsequent commands. + * + * You must align the data in the transfer buffer to a multiple of the texel + * size of the texture format. + * + * \param copyPass a copy pass handle. + * \param source the source transfer buffer with image layout information. + * \param destination the destination texture region. + * \param cycle if SDL_TRUE, cycles the texture if the texture is bound, + * otherwise overwrites the data. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_UploadToGPUTexture( + SDL_GPUCopyPass *copyPass, + SDL_GPUTextureTransferInfo *source, + SDL_GPUTextureRegion *destination, + SDL_bool cycle); + +/* Uploads data from a TransferBuffer to a Buffer. */ + +/** + * Uploads data from a transfer buffer to a buffer. + * + * The upload occurs on the GPU timeline. You may assume that the upload has + * finished in subsequent commands. + * + * \param copyPass a copy pass handle. + * \param source the source transfer buffer with offset. + * \param destination the destination buffer with offset and size. + * \param cycle if SDL_TRUE, cycles the buffer if it is bound, otherwise + * overwrites the data. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_UploadToGPUBuffer( + SDL_GPUCopyPass *copyPass, + SDL_GPUTransferBufferLocation *source, + SDL_GPUBufferRegion *destination, + SDL_bool cycle); + +/** + * Performs a texture-to-texture copy. + * + * This copy occurs on the GPU timeline. You may assume the copy has finished + * in subsequent commands. + * + * \param copyPass a copy pass handle. + * \param source a source texture region. + * \param destination a destination texture region. + * \param w the width of the region to copy. + * \param h the height of the region to copy. + * \param d the depth of the region to copy. + * \param cycle if SDL_TRUE, cycles the destination texture if the destination + * texture is bound, otherwise overwrites the data. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_CopyGPUTextureToTexture( + SDL_GPUCopyPass *copyPass, + SDL_GPUTextureLocation *source, + SDL_GPUTextureLocation *destination, + Uint32 w, + Uint32 h, + Uint32 d, + SDL_bool cycle); + +/* Copies data from a buffer to a buffer. */ + +/** + * Performs a buffer-to-buffer copy. + * + * This copy occurs on the GPU timeline. You may assume the copy has finished + * in subsequent commands. + * + * \param copyPass a copy pass handle. + * \param source the buffer and offset to copy from. + * \param destination the buffer and offset to copy to. + * \param size the length of the buffer to copy. + * \param cycle if SDL_TRUE, cycles the destination buffer if it is bound, + * otherwise overwrites the data. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_CopyGPUBufferToBuffer( + SDL_GPUCopyPass *copyPass, + SDL_GPUBufferLocation *source, + SDL_GPUBufferLocation *destination, + Uint32 size, + SDL_bool cycle); + +/** + * Copies data from a texture to a transfer buffer on the GPU timeline. + * + * This data is not guaranteed to be copied until the command buffer fence is + * signaled. + * + * \param copyPass a copy pass handle. + * \param source the source texture region. + * \param destination the destination transfer buffer with image layout + * information. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DownloadFromGPUTexture( + SDL_GPUCopyPass *copyPass, + SDL_GPUTextureRegion *source, + SDL_GPUTextureTransferInfo *destination); + +/** + * Copies data from a buffer to a transfer buffer on the GPU timeline. + * + * This data is not guaranteed to be copied until the command buffer fence is + * signaled. + * + * \param copyPass a copy pass handle. + * \param source the source buffer with offset and size. + * \param destination the destination transfer buffer with offset. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DownloadFromGPUBuffer( + SDL_GPUCopyPass *copyPass, + SDL_GPUBufferRegion *source, + SDL_GPUTransferBufferLocation *destination); + +/** + * Ends the current copy pass. + * + * \param copyPass a copy pass handle. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_EndGPUCopyPass( + SDL_GPUCopyPass *copyPass); + +/** + * Generates mipmaps for the given texture. + * + * This function must not be called inside of any pass. + * + * \param commandBuffer a commandBuffer. + * \param texture a texture with more than 1 mip level. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_GenerateMipmapsForGPUTexture( + SDL_GPUCommandBuffer *commandBuffer, + SDL_GPUTexture *texture); + +/** + * Blits from a source texture region to a destination texture region. + * + * This function must not be called inside of any pass. + * + * \param commandBuffer a command buffer. + * \param source the texture region to copy from. + * \param destination the texture region to copy to. + * \param flipMode the flip mode for the source texture region. + * \param filterMode the filter mode that will be used when blitting. + * \param cycle if SDL_TRUE, cycles the destination texture if the destination + * texture is bound, otherwise overwrites the data. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BlitGPUTexture( + SDL_GPUCommandBuffer *commandBuffer, + SDL_GPUBlitRegion *source, + SDL_GPUBlitRegion *destination, + SDL_FlipMode flipMode, + SDL_GPUFilter filterMode, + SDL_bool cycle); + +/* Submission/Presentation */ + +/** + * Determines whether a swapchain composition is supported by the window. + * + * The window must be claimed before calling this function. + * + * \param device a GPU context. + * \param window an SDL_Window. + * \param swapchainComposition the swapchain composition to check. + * \returns SDL_TRUE if supported, SDL_FALSE if unsupported (or on error). + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_ClaimWindowForGPUDevice + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WindowSupportsGPUSwapchainComposition( + SDL_GPUDevice *device, + SDL_Window *window, + SDL_GPUSwapchainComposition swapchainComposition); + +/** + * Determines whether a presentation mode is supported by the window. + * + * The window must be claimed before calling this function. + * + * \param device a GPU context. + * \param window an SDL_Window. + * \param presentMode the presentation mode to check. + * \returns SDL_TRUE if supported, SDL_FALSE if unsupported (or on error). + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_ClaimWindowForGPUDevice + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WindowSupportsGPUPresentMode( + SDL_GPUDevice *device, + SDL_Window *window, + SDL_GPUPresentMode presentMode); + +/** + * Claims a window, creating a swapchain structure for it. + * + * This must be called before SDL_AcquireGPUSwapchainTexture is called using + * the window. + * + * The swapchain will be created with SDL_GPU_SWAPCHAINCOMPOSITION_SDR and + * SDL_GPU_PRESENTMODE_VSYNC. If you want to have different swapchain + * parameters, you must call SetSwapchainParameters after claiming the window. + * + * \param device a GPU context. + * \param window an SDL_Window. + * \returns SDL_TRUE on success, otherwise SDL_FALSE. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_AcquireGPUSwapchainTexture + * \sa SDL_ReleaseWindowFromGPUDevice + * \sa SDL_WindowSupportsGPUPresentMode + * \sa SDL_WindowSupportsGPUSwapchainComposition + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClaimWindowForGPUDevice( + SDL_GPUDevice *device, + SDL_Window *window); + +/** + * Unclaims a window, destroying its swapchain structure. + * + * \param device a GPU context. + * \param window an SDL_Window that has been claimed. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_ClaimWindowForGPUDevice + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseWindowFromGPUDevice( + SDL_GPUDevice *device, + SDL_Window *window); + +/** + * Changes the swapchain parameters for the given claimed window. + * + * This function will fail if the requested present mode or swapchain + * composition are unsupported by the device. Check if the parameters are + * supported via SDL_WindowSupportsGPUPresentMode / + * SDL_WindowSupportsGPUSwapchainComposition prior to calling this function. + * + * SDL_GPU_PRESENTMODE_VSYNC and SDL_GPU_SWAPCHAINCOMPOSITION_SDR are always + * supported. + * + * \param device a GPU context. + * \param window an SDL_Window that has been claimed. + * \param swapchainComposition the desired composition of the swapchain. + * \param presentMode the desired present mode for the swapchain. + * \returns SDL_TRUE if successful, SDL_FALSE on error. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_WindowSupportsGPUPresentMode + * \sa SDL_WindowSupportsGPUSwapchainComposition + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetGPUSwapchainParameters( + SDL_GPUDevice *device, + SDL_Window *window, + SDL_GPUSwapchainComposition swapchainComposition, + SDL_GPUPresentMode presentMode); + +/** + * Obtains the texture format of the swapchain for the given window. + * + * \param device a GPU context. + * \param window an SDL_Window that has been claimed. + * \returns the texture format of the swapchain. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC SDL_GPUTextureFormat SDLCALL SDL_GetGPUSwapchainTextureFormat( + SDL_GPUDevice *device, + SDL_Window *window); + +/** + * Acquire a texture to use in presentation. + * + * When a swapchain texture is acquired on a command buffer, it will + * automatically be submitted for presentation when the command buffer is + * submitted. The swapchain texture should only be referenced by the command + * buffer used to acquire it. May return NULL under certain conditions. This + * is not necessarily an error. This texture is managed by the implementation + * and must not be freed by the user. You MUST NOT call this function from any + * thread other than the one that created the window. + * + * \param commandBuffer a command buffer. + * \param window a window that has been claimed. + * \param pWidth a pointer filled in with the swapchain width. + * \param pHeight a pointer filled in with the swapchain height. + * \returns a swapchain texture. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_ClaimWindowForGPUDevice + * \sa SDL_SubmitGPUCommandBuffer + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + */ +extern SDL_DECLSPEC SDL_GPUTexture *SDLCALL SDL_AcquireGPUSwapchainTexture( + SDL_GPUCommandBuffer *commandBuffer, + SDL_Window *window, + Uint32 *pWidth, + Uint32 *pHeight); + +/** + * Submits a command buffer so its commands can be processed on the GPU. + * + * It is invalid to use the command buffer after this is called. + * + * This must be called from the thread the command buffer was acquired on. + * + * All commands in the submission are guaranteed to begin executing before any + * command in a subsequent submission begins executing. + * + * \param commandBuffer a command buffer. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_AcquireGPUCommandBuffer + * \sa SDL_AcquireGPUSwapchainTexture + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + */ +extern SDL_DECLSPEC void SDLCALL SDL_SubmitGPUCommandBuffer( + SDL_GPUCommandBuffer *commandBuffer); + +/** + * Submits a command buffer so its commands can be processed on the GPU, and + * acquires a fence associated with the command buffer. + * + * You must release this fence when it is no longer needed or it will cause a + * leak. It is invalid to use the command buffer after this is called. + * + * This must be called from the thread the command buffer was acquired on. + * + * All commands in the submission are guaranteed to begin executing before any + * command in a subsequent submission begins executing. + * + * \param commandBuffer a command buffer. + * \returns a fence associated with the command buffer. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_AcquireGPUCommandBuffer + * \sa SDL_AcquireGPUSwapchainTexture + * \sa SDL_SubmitGPUCommandBuffer + * \sa SDL_ReleaseGPUFence + */ +extern SDL_DECLSPEC SDL_GPUFence *SDLCALL SDL_SubmitGPUCommandBufferAndAcquireFence( + SDL_GPUCommandBuffer *commandBuffer); + +/** + * Blocks the thread until the GPU is completely idle. + * + * \param device a GPU context. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_WaitForGPUFences + */ +extern SDL_DECLSPEC void SDLCALL SDL_WaitForGPUIdle( + SDL_GPUDevice *device); + +/** + * Blocks the thread until the given fences are signaled. + * + * \param device a GPU context. + * \param waitAll if 0, wait for any fence to be signaled, if 1, wait for all + * fences to be signaled. + * \param pFences an array of fences to wait on. + * \param fenceCount the number of fences in the pFences array. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + * \sa SDL_WaitForGPUIdle + */ +extern SDL_DECLSPEC void SDLCALL SDL_WaitForGPUFences( + SDL_GPUDevice *device, + SDL_bool waitAll, + SDL_GPUFence **pFences, + Uint32 fenceCount); + +/** + * Checks the status of a fence. + * + * \param device a GPU context. + * \param fence a fence. + * \returns SDL_TRUE if the fence is signaled, SDL_FALSE if it is not. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_QueryGPUFence( + SDL_GPUDevice *device, + SDL_GPUFence *fence); + +/** + * Releases a fence obtained from SDL_SubmitGPUCommandBufferAndAcquireFence. + * + * \param device a GPU context. + * \param fence a fence. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUFence( + SDL_GPUDevice *device, + SDL_GPUFence *fence); + +/* Format Info */ + +/** + * Obtains the texel block size for a texture format. + * + * \param textureFormat the texture format you want to know the texel size of. + * \returns the texel block size of the texture format. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_UploadToGPUTexture + */ +extern SDL_DECLSPEC Uint32 SDLCALL SDL_GPUTextureFormatTexelBlockSize( + SDL_GPUTextureFormat textureFormat); + +/** + * Determines whether a texture format is supported for a given type and + * usage. + * + * \param device a GPU context. + * \param format the texture format to check. + * \param type the type of texture (2D, 3D, Cube). + * \param usage a bitmask of all usage scenarios to check. + * \returns whether the texture format is supported for this type and usage. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GPUTextureSupportsFormat( + SDL_GPUDevice *device, + SDL_GPUTextureFormat format, + SDL_GPUTextureType type, + SDL_GPUTextureUsageFlags usage); + +/** + * Determines if a sample count for a texture format is supported. + * + * \param device a GPU context. + * \param format the texture format to check. + * \param sampleCount the sample count to check. + * \returns a hardware-specific version of min(preferred, possible). + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GPUTextureSupportsSampleCount( + SDL_GPUDevice *device, + SDL_GPUTextureFormat format, + SDL_GPUSampleCount sampleCount); + +#ifdef SDL_PLATFORM_GDK + +/** + * Call this to suspend GPU operation on Xbox when you receive the + * SDL_EVENT_DID_ENTER_BACKGROUND event. + * + * Do NOT call any SDL_GPU functions after calling this function! This must + * also be called before calling SDL_GDKSuspendComplete. + * + * \param device a GPU context. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_AddEventWatch + */ +extern SDL_DECLSPEC void SDLCALL SDL_GDKSuspendGPU(SDL_GPUDevice *device); + +/** + * Call this to resume GPU operation on Xbox when you receive the + * SDL_EVENT_WILL_ENTER_FOREGROUND event. + * + * When resuming, this function MUST be called before calling any other + * SDL_GPU functions. + * + * \param device a GPU context. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_AddEventWatch + */ +extern SDL_DECLSPEC void SDLCALL SDL_GDKResumeGPU(SDL_GPUDevice *device); + +#endif /* SDL_PLATFORM_GDK */ + +#ifdef __cplusplus +} +#endif /* __cplusplus */ +#include + +#endif /* SDL_gpu_h_ */ diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_haptic.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_haptic.h index 1d0a54e..95446fe 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_haptic.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_haptic.h @@ -48,15 +48,15 @@ * SDL_free(haptics); * } * if (haptic == NULL) - * return -1; + * return; * * // Initialize simple rumble - * if (SDL_InitHapticRumble(haptic) != 0) - * return -1; + * if (!SDL_InitHapticRumble(haptic)) + * return; * * // Play effect at 50% strength for 2 seconds - * if (SDL_PlayHapticRumble(haptic, 0.5, 2000) != 0) - * return -1; + * if (!SDL_PlayHapticRumble(haptic, 0.5, 2000)) + * return; * SDL_Delay(2000); * * // Clean up @@ -66,7 +66,7 @@ * Complete example: * * ```c - * int test_haptic(SDL_Joystick *joystick) + * SDL_bool test_haptic(SDL_Joystick *joystick) * { * SDL_Haptic *haptic; * SDL_HapticEffect effect; @@ -74,12 +74,12 @@ * * // Open the device * haptic = SDL_OpenHapticFromJoystick(joystick); - * if (haptic == NULL) return -1; // Most likely joystick isn't haptic + * if (haptic == NULL) return SDL_FALSE; // Most likely joystick isn't haptic * * // See if it can do sine waves * if ((SDL_GetHapticFeatures(haptic) & SDL_HAPTIC_SINE)==0) { * SDL_CloseHaptic(haptic); // No sine effect - * return -1; + * return SDL_FALSE; * } * * // Create the effect @@ -106,7 +106,7 @@ * // Close the device * SDL_CloseHaptic(haptic); * - * return 0; // Success + * return SDL_TRUE; // Success * } * ``` * @@ -919,8 +919,7 @@ typedef union SDL_HapticEffect * * If the haptic device is disconnected and reconnected, it will get a new ID. * - * The ID value starts at 1 and increments from there. The value 0 is an - * invalid ID. + * The value 0 is an invalid ID. * * \since This datatype is available since SDL 3.0.0. */ @@ -1117,8 +1116,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetMaxHapticEffects(SDL_Haptic *haptic); * * \param haptic the SDL_Haptic device to query maximum playing effects. * \returns the number of effects the haptic device can play at the same time - * or a negative error code on failure; call SDL_GetError() for more - * information. + * or -1 on failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -1148,8 +1146,8 @@ extern SDL_DECLSPEC Uint32 SDLCALL SDL_GetHapticFeatures(SDL_Haptic *haptic); * SDL_HapticDirection effect. * * \param haptic the SDL_Haptic device to query. - * \returns the number of axes on success or a negative error code on failure; - * call SDL_GetError() for more information. + * \returns the number of axes on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ @@ -1175,8 +1173,8 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HapticEffectSupported(SDL_Haptic *hapti * \param haptic an SDL_Haptic device to create the effect on. * \param effect an SDL_HapticEffect structure containing the properties of * the effect to create. - * \returns the ID of the effect on success or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the ID of the effect on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -1198,15 +1196,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_CreateHapticEffect(SDL_Haptic *haptic, const * \param effect the identifier of the effect to update. * \param data an SDL_HapticEffect structure containing the new effect * properties to use. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CreateHapticEffect * \sa SDL_RunHapticEffect */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateHapticEffect(SDL_Haptic *haptic, int effect, const SDL_HapticEffect *data); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateHapticEffect(SDL_Haptic *haptic, int effect, const SDL_HapticEffect *data); /** * Run the haptic effect on its associated haptic device. @@ -1221,8 +1219,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateHapticEffect(SDL_Haptic *haptic, int e * \param effect the ID of the haptic effect to run. * \param iterations the number of iterations to run the effect; use * `SDL_HAPTIC_INFINITY` to repeat forever. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1230,22 +1228,22 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateHapticEffect(SDL_Haptic *haptic, int e * \sa SDL_StopHapticEffect * \sa SDL_StopHapticEffects */ -extern SDL_DECLSPEC int SDLCALL SDL_RunHapticEffect(SDL_Haptic *haptic, int effect, Uint32 iterations); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RunHapticEffect(SDL_Haptic *haptic, int effect, Uint32 iterations); /** * Stop the haptic effect on its associated haptic device. * * \param haptic the SDL_Haptic device to stop the effect on. * \param effect the ID of the haptic effect to stop. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RunHapticEffect * \sa SDL_StopHapticEffects */ -extern SDL_DECLSPEC int SDLCALL SDL_StopHapticEffect(SDL_Haptic *haptic, int effect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StopHapticEffect(SDL_Haptic *haptic, int effect); /** * Destroy a haptic effect on the device. @@ -1269,12 +1267,14 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyHapticEffect(SDL_Haptic *haptic, int * * \param haptic the SDL_Haptic device to query for the effect status on. * \param effect the ID of the haptic effect to query its status. - * \returns 0 if it isn't playing, 1 if it is playing, or a negative error - * code on failure; call SDL_GetError() for more information. + * \returns SDL_TRUE if it is playing, SDL_FALSE if it isn't playing or haptic + * status isn't supported. * * \since This function is available since SDL 3.0.0. + * + * \sa SDL_GetHapticFeatures */ -extern SDL_DECLSPEC int SDLCALL SDL_GetHapticEffectStatus(SDL_Haptic *haptic, int effect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetHapticEffectStatus(SDL_Haptic *haptic, int effect); /** * Set the global gain of the specified haptic device. @@ -1289,14 +1289,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetHapticEffectStatus(SDL_Haptic *haptic, in * \param haptic the SDL_Haptic device to set the gain on. * \param gain value to set the gain to, should be between 0 and 100 (0 - * 100). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetHapticFeatures */ -extern SDL_DECLSPEC int SDLCALL SDL_SetHapticGain(SDL_Haptic *haptic, int gain); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHapticGain(SDL_Haptic *haptic, int gain); /** * Set the global autocenter of the device. @@ -1308,14 +1308,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetHapticGain(SDL_Haptic *haptic, int gain); * * \param haptic the SDL_Haptic device to set autocentering on. * \param autocenter value to set autocenter to (0-100). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetHapticFeatures */ -extern SDL_DECLSPEC int SDLCALL SDL_SetHapticAutocenter(SDL_Haptic *haptic, int autocenter); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHapticAutocenter(SDL_Haptic *haptic, int autocenter); /** * Pause a haptic device. @@ -1327,14 +1327,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetHapticAutocenter(SDL_Haptic *haptic, int * can cause all sorts of weird errors. * * \param haptic the SDL_Haptic device to pause. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ResumeHaptic */ -extern SDL_DECLSPEC int SDLCALL SDL_PauseHaptic(SDL_Haptic *haptic); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PauseHaptic(SDL_Haptic *haptic); /** * Resume a haptic device. @@ -1342,28 +1342,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_PauseHaptic(SDL_Haptic *haptic); * Call to unpause after SDL_PauseHaptic(). * * \param haptic the SDL_Haptic device to unpause. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_PauseHaptic */ -extern SDL_DECLSPEC int SDLCALL SDL_ResumeHaptic(SDL_Haptic *haptic); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ResumeHaptic(SDL_Haptic *haptic); /** * Stop all the currently playing effects on a haptic device. * * \param haptic the SDL_Haptic device to stop. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RunHapticEffect * \sa SDL_StopHapticEffects */ -extern SDL_DECLSPEC int SDLCALL SDL_StopHapticEffects(SDL_Haptic *haptic); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StopHapticEffects(SDL_Haptic *haptic); /** * Check whether rumble is supported on a haptic device. @@ -1381,8 +1381,8 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HapticRumbleSupported(SDL_Haptic *hapti * Initialize a haptic device for simple rumble playback. * * \param haptic the haptic device to initialize for simple rumble playback. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1390,7 +1390,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HapticRumbleSupported(SDL_Haptic *hapti * \sa SDL_StopHapticRumble * \sa SDL_HapticRumbleSupported */ -extern SDL_DECLSPEC int SDLCALL SDL_InitHapticRumble(SDL_Haptic *haptic); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_InitHapticRumble(SDL_Haptic *haptic); /** * Run a simple rumble effect on a haptic device. @@ -1398,28 +1398,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_InitHapticRumble(SDL_Haptic *haptic); * \param haptic the haptic device to play the rumble effect on. * \param strength strength of the rumble to play as a 0-1 float value. * \param length length of the rumble to play in milliseconds. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_InitHapticRumble * \sa SDL_StopHapticRumble */ -extern SDL_DECLSPEC int SDLCALL SDL_PlayHapticRumble(SDL_Haptic *haptic, float strength, Uint32 length); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PlayHapticRumble(SDL_Haptic *haptic, float strength, Uint32 length); /** * Stop the simple rumble on a haptic device. * * \param haptic the haptic device to stop the rumble effect on. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_PlayHapticRumble */ -extern SDL_DECLSPEC int SDLCALL SDL_StopHapticRumble(SDL_Haptic *haptic); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StopHapticRumble(SDL_Haptic *haptic); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_hints.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_hints.h index 79aa008..8433240 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_hints.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_hints.h @@ -39,8 +39,8 @@ #ifndef SDL_hints_h_ #define SDL_hints_h_ -#include #include +#include #include /* Set up for C function definitions, even when using C++ */ @@ -139,7 +139,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_APP_ID "SDL_APP_ID" +#define SDL_HINT_APP_ID "SDL_APP_ID" /** * A variable setting the application name. @@ -197,6 +197,20 @@ extern "C" { */ #define SDL_HINT_APPLE_TV_REMOTE_ALLOW_ROTATION "SDL_APPLE_TV_REMOTE_ALLOW_ROTATION" +/** + * Specify the default ALSA audio device name. + * + * This variable is a specific audio device to open when the "default" audio + * device is used. By default if 4 channel audio is requested, the + * "plug:surround40" device will be opened and if 6 channel audio is requested + * the "plug:surround51" device will be opened. + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_ALSA_DEFAULT_DEVICE "SDL_AUDIO_ALSA_DEFAULT_DEVICE" + /** * A variable controlling the audio category on iOS and macOS. * @@ -213,7 +227,20 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_AUDIO_CATEGORY "SDL_AUDIO_CATEGORY" +#define SDL_HINT_AUDIO_CATEGORY "SDL_AUDIO_CATEGORY" + +/** + * A variable controlling the default audio channel count. + * + * If the application doesn't specify the audio channel count when opening the + * device, this hint can be used to specify a default channel count that will + * be used. This defaults to "1" for recording and "2" for playback devices. + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_CHANNELS "SDL_AUDIO_CHANNELS" /** * Specify an application icon name for an audio device. @@ -313,6 +340,41 @@ extern "C" { */ #define SDL_HINT_AUDIO_DEVICE_STREAM_ROLE "SDL_AUDIO_DEVICE_STREAM_ROLE" +/** + * Specify the input file when recording audio using the disk audio driver. + * + * This defaults to "sdlaudio-in.raw" + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_DISK_INPUT_FILE "SDL_AUDIO_DISK_INPUT_FILE" + +/** + * Specify the output file when playing audio using the disk audio driver. + * + * This defaults to "sdlaudio.raw" + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_DISK_OUTPUT_FILE "SDL_AUDIO_DISK_OUTPUT_FILE" + +/** + * A variable controlling the audio rate when using the disk audio driver. + * + * The disk audio driver normally simulates real-time for the audio rate that + * was specified, but you can use this variable to adjust this rate higher or + * lower down to 0. The default value is "1.0". + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_DISK_TIMESCALE "SDL_AUDIO_DISK_TIMESCALE" + /** * A variable that specifies an audio backend to use. * @@ -327,6 +389,54 @@ extern "C" { */ #define SDL_HINT_AUDIO_DRIVER "SDL_AUDIO_DRIVER" +/** + * A variable controlling the audio rate when using the dummy audio driver. + * + * The dummy audio driver normally simulates real-time for the audio rate that + * was specified, but you can use this variable to adjust this rate higher or + * lower down to 0. The default value is "1.0". + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_DUMMY_TIMESCALE "SDL_AUDIO_DUMMY_TIMESCALE" + +/** + * A variable controlling the default audio format. + * + * If the application doesn't specify the audio format when opening the + * device, this hint can be used to specify a default format that will be + * used. + * + * The variable can be set to the following values: - "U8": Unsigned 8-bit + * audio - "S8": Signed 8-bit audio - "S16LE": Signed 16-bit little-endian + * audio - "S16BE": Signed 16-bit big-endian audio - "S16": Signed 16-bit + * native-endian audio (default) - "S32LE": Signed 32-bit little-endian audio + * - "S32BE": Signed 32-bit big-endian audio - "S32": Signed 32-bit + * native-endian audio - "F32LE": Floating point little-endian audio - + * "F32BE": Floating point big-endian audio - "F32": Floating point + * native-endian audio + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_FORMAT "SDL_AUDIO_FORMAT" + +/** + * A variable controlling the default audio frequency. + * + * If the application doesn't specify the audio frequency when opening the + * device, this hint can be used to specify a default frequency that will be + * used. This defaults to "44100". + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_FREQUENCY "SDL_AUDIO_FREQUENCY" + /** * A variable that causes SDL to not ignore audio "monitors". * @@ -363,7 +473,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_AUTO_UPDATE_JOYSTICKS "SDL_AUTO_UPDATE_JOYSTICKS" +#define SDL_HINT_AUTO_UPDATE_JOYSTICKS "SDL_AUTO_UPDATE_JOYSTICKS" /** * A variable controlling whether SDL updates sensor state when getting input @@ -378,7 +488,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_AUTO_UPDATE_SENSORS "SDL_AUTO_UPDATE_SENSORS" +#define SDL_HINT_AUTO_UPDATE_SENSORS "SDL_AUTO_UPDATE_SENSORS" /** * Prevent SDL from using version 4 of the bitmap header when saving BMPs. @@ -532,7 +642,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_EMSCRIPTEN_ASYNCIFY "SDL_EMSCRIPTEN_ASYNCIFY" +#define SDL_HINT_EMSCRIPTEN_ASYNCIFY "SDL_EMSCRIPTEN_ASYNCIFY" /** * Specify the CSS selector used for the "default" window/canvas. @@ -565,7 +675,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT "SDL_EMSCRIPTEN_KEYBOARD_ELEMENT" +#define SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT "SDL_EMSCRIPTEN_KEYBOARD_ELEMENT" /** * A variable that controls whether the on-screen keyboard should be shown @@ -584,6 +694,23 @@ extern "C" { */ #define SDL_HINT_ENABLE_SCREEN_KEYBOARD "SDL_ENABLE_SCREEN_KEYBOARD" +/** + * A variable containing a list of evdev devices to use if udev is not + * available. + * + * The list of devices is in the form: + * + * deviceclass:path[,deviceclass:path[,...]] + * + * where device class is an integer representing the SDL_UDEV_deviceclass and + * path is the full path to the event device. + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_EVDEV_DEVICES "SDL_EVDEV_DEVICES" + /** * A variable controlling verbosity of the logging of SDL events pushed onto * the internal queue. @@ -606,7 +733,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_EVENT_LOGGING "SDL_EVENT_LOGGING" +#define SDL_HINT_EVENT_LOGGING "SDL_EVENT_LOGGING" /** * A variable controlling whether raising the window should be done more @@ -626,7 +753,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_FORCE_RAISEWINDOW "SDL_FORCE_RAISEWINDOW" +#define SDL_HINT_FORCE_RAISEWINDOW "SDL_FORCE_RAISEWINDOW" /** * A variable controlling how 3D acceleration is used to accelerate the SDL @@ -647,7 +774,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_FRAMEBUFFER_ACCELERATION "SDL_FRAMEBUFFER_ACCELERATION" +#define SDL_HINT_FRAMEBUFFER_ACCELERATION "SDL_FRAMEBUFFER_ACCELERATION" /** * A variable that lets you manually hint extra gamecontroller db entries. @@ -773,7 +900,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_GDK_TEXTINPUT_DEFAULT_TEXT "SDL_GDK_TEXTINPUT_DEFAULT_TEXT" +#define SDL_HINT_GDK_TEXTINPUT_DEFAULT_TEXT "SDL_GDK_TEXTINPUT_DEFAULT_TEXT" /** * This variable sets the description of the TextInput window on GDK @@ -829,6 +956,70 @@ extern "C" { */ #define SDL_HINT_GDK_TEXTINPUT_TITLE "SDL_GDK_TEXTINPUT_TITLE" +/** + * A variable to control whether HIDAPI uses libusb for device access. + * + * By default libusb will only be used for a few devices that require direct + * USB access, and this can be controlled with + * SDL_HINT_HIDAPI_LIBUSB_WHITELIST. + * + * The variable can be set to the following values: + * + * - "0": HIDAPI will not use libusb for device access. + * - "1": HIDAPI will use libusb for device access if available. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_HIDAPI_LIBUSB "SDL_HIDAPI_LIBUSB" + +/** + * A variable to control whether HIDAPI uses libusb only for whitelisted + * devices. + * + * By default libusb will only be used for a few devices that require direct + * USB access. + * + * The variable can be set to the following values: + * + * - "0": HIDAPI will use libusb for all device access. + * - "1": HIDAPI will use libusb only for whitelisted devices. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_HIDAPI_LIBUSB_WHITELIST "SDL_HIDAPI_LIBUSB_WHITELIST" + +/** + * A variable to control whether HIDAPI uses udev for device detection. + * + * The variable can be set to the following values: + * + * - "0": HIDAPI will poll for device changes. + * - "1": HIDAPI will use udev for device detection. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_HIDAPI_UDEV "SDL_HIDAPI_UDEV" + +/** + * A variable that specifies a GPU backend to use. + * + * By default, SDL will try all available GPU backends in a reasonable order + * until it finds one that can work, but this hint allows the app or user to + * force a specific target, such as "d3d11" if, say, your hardware supports + * D3D12 but want to try using D3D11 instead. + * + * This hint should be set before SDL_GPUSelectBackend() is called. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_GPU_DRIVER "SDL_GPU_DRIVER" + /** * A variable to control whether SDL_hid_enumerate() enumerates all HID * devices or only controllers. @@ -1049,6 +1240,21 @@ extern "C" { */ #define SDL_HINT_JOYSTICK_FLIGHTSTICK_DEVICES_EXCLUDED "SDL_JOYSTICK_FLIGHTSTICK_DEVICES_EXCLUDED" +/** + * A variable controlling whether GameInput should be used for controller + * handling on Windows. + * + * The variable can be set to the following values: + * + * - "0": GameInput is not used. (default) + * - "1": GameInput is used. + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_JOYSTICK_GAMEINPUT "SDL_JOYSTICK_GAMEINPUT" + /** * A variable containing a list of devices known to have a GameCube form * factor. @@ -1564,7 +1770,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX "SDL_JOYSTICK_HIDAPI_XBOX" +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX "SDL_JOYSTICK_HIDAPI_XBOX" /** * A variable controlling whether the HIDAPI driver for XBox 360 controllers @@ -1581,7 +1787,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360 "SDL_JOYSTICK_HIDAPI_XBOX_360" +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360 "SDL_JOYSTICK_HIDAPI_XBOX_360" /** * A variable controlling whether the player LEDs should be lit to indicate @@ -1613,7 +1819,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360_WIRELESS "SDL_JOYSTICK_HIDAPI_XBOX_360_WIRELESS" +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360_WIRELESS "SDL_JOYSTICK_HIDAPI_XBOX_360_WIRELESS" /** * A variable controlling whether the HIDAPI driver for XBox One controllers @@ -1630,7 +1836,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_ONE "SDL_JOYSTICK_HIDAPI_XBOX_ONE" +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_ONE "SDL_JOYSTICK_HIDAPI_XBOX_ONE" /** * A variable controlling whether the Home button LED should be turned on when @@ -1775,7 +1981,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_JOYSTICK_RAWINPUT_CORRELATE_XINPUT "SDL_JOYSTICK_RAWINPUT_CORRELATE_XINPUT" +#define SDL_HINT_JOYSTICK_RAWINPUT_CORRELATE_XINPUT "SDL_JOYSTICK_RAWINPUT_CORRELATE_XINPUT" /** * A variable controlling whether the ROG Chakram mice should show up as @@ -1935,7 +2141,7 @@ extern "C" { * layout. e.g. pressing the key associated with SDL_SCANCODE_A on a Russian * keyboard would yield 'a' instead of 'Ñ„'. * - * The default value for this hint is "french_numbers" + * The default value for this hint is "french_numbers,latin_letters" * * Some platforms like Emscripten only provide modified keycodes and the * options are not used. @@ -1990,7 +2196,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_KMSDRM_REQUIRE_DRM_MASTER "SDL_KMSDRM_REQUIRE_DRM_MASTER" +#define SDL_HINT_KMSDRM_REQUIRE_DRM_MASTER "SDL_KMSDRM_REQUIRE_DRM_MASTER" /** * A variable controlling the default SDL log levels. @@ -2016,7 +2222,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_LOGGING "SDL_LOGGING" +#define SDL_HINT_LOGGING "SDL_LOGGING" /** * A variable controlling whether to force the application to become the @@ -2032,7 +2238,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MAC_BACKGROUND_APP "SDL_MAC_BACKGROUND_APP" +#define SDL_HINT_MAC_BACKGROUND_APP "SDL_MAC_BACKGROUND_APP" /** * A variable that determines whether Ctrl+Click should generate a right-click @@ -2108,7 +2314,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_AUTO_CAPTURE "SDL_MOUSE_AUTO_CAPTURE" +#define SDL_HINT_MOUSE_AUTO_CAPTURE "SDL_MOUSE_AUTO_CAPTURE" /** * A variable setting the double click radius, in pixels. @@ -2117,7 +2323,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_DOUBLE_CLICK_RADIUS "SDL_MOUSE_DOUBLE_CLICK_RADIUS" +#define SDL_HINT_MOUSE_DOUBLE_CLICK_RADIUS "SDL_MOUSE_DOUBLE_CLICK_RADIUS" /** * A variable setting the double click time, in milliseconds. @@ -2126,14 +2332,15 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_DOUBLE_CLICK_TIME "SDL_MOUSE_DOUBLE_CLICK_TIME" +#define SDL_HINT_MOUSE_DOUBLE_CLICK_TIME "SDL_MOUSE_DOUBLE_CLICK_TIME" /** * A variable controlling whether warping a hidden mouse cursor will activate * relative mouse mode. * - * When this hint is set and the mouse cursor is hidden, SDL will emulate - * mouse warps using relative mouse mode. This can provide smoother and more + * When this hint is set, the mouse cursor is hidden, and multiple warps to + * the window center occur within a short time period, SDL will emulate mouse + * warps using relative mouse mode. This can provide smoother and more * reliable mouse motion for some older games, which continuously calculate * the distance travelled by the mouse pointer and warp it back to the center * of the window, rather than using relative mouse motion. @@ -2141,9 +2348,8 @@ extern "C" { * Note that relative mouse mode may have different mouse acceleration * behavior than pointer warps. * - * If your game or application needs to warp the mouse cursor while hidden for - * other purposes, such as drawing a software cursor, it should disable this - * hint. + * If your application needs to repeatedly warp the hidden mouse cursor at a + * high-frequency for other purposes, it should disable this hint. * * The variable can be set to the following values: * @@ -2182,7 +2388,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_NORMAL_SPEED_SCALE "SDL_MOUSE_NORMAL_SPEED_SCALE" +#define SDL_HINT_MOUSE_NORMAL_SPEED_SCALE "SDL_MOUSE_NORMAL_SPEED_SCALE" /** * A variable controlling whether relative mouse mode constrains the mouse to @@ -2203,7 +2409,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_MODE_CENTER "SDL_MOUSE_RELATIVE_MODE_CENTER" +#define SDL_HINT_MOUSE_RELATIVE_MODE_CENTER "SDL_MOUSE_RELATIVE_MODE_CENTER" /** * A variable controlling whether relative mouse mode is implemented using @@ -2218,7 +2424,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_MODE_WARP "SDL_MOUSE_RELATIVE_MODE_WARP" +#define SDL_HINT_MOUSE_RELATIVE_MODE_WARP "SDL_MOUSE_RELATIVE_MODE_WARP" /** * A variable setting the scale for mouse motion, in floating point, when the @@ -2228,7 +2434,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE "SDL_MOUSE_RELATIVE_SPEED_SCALE" +#define SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE "SDL_MOUSE_RELATIVE_SPEED_SCALE" /** * A variable controlling whether the system mouse acceleration curve is used @@ -2247,7 +2453,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_SYSTEM_SCALE "SDL_MOUSE_RELATIVE_SYSTEM_SCALE" +#define SDL_HINT_MOUSE_RELATIVE_SYSTEM_SCALE "SDL_MOUSE_RELATIVE_SYSTEM_SCALE" /** * A variable controlling whether a motion event should be generated for mouse @@ -2266,7 +2472,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_WARP_MOTION "SDL_MOUSE_RELATIVE_WARP_MOTION" +#define SDL_HINT_MOUSE_RELATIVE_WARP_MOTION "SDL_MOUSE_RELATIVE_WARP_MOTION" /** * A variable controlling whether the hardware cursor stays visible when @@ -2284,7 +2490,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_CURSOR_VISIBLE "SDL_MOUSE_RELATIVE_CURSOR_VISIBLE" +#define SDL_HINT_MOUSE_RELATIVE_CURSOR_VISIBLE "SDL_MOUSE_RELATIVE_CURSOR_VISIBLE" /** * Controls how often SDL issues cursor confinement commands to the operating @@ -2301,7 +2507,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_CLIP_INTERVAL "SDL_MOUSE_RELATIVE_CLIP_INTERVAL" +#define SDL_HINT_MOUSE_RELATIVE_CLIP_INTERVAL "SDL_MOUSE_RELATIVE_CLIP_INTERVAL" /** * A variable controlling whether mouse events should generate synthetic touch @@ -2318,7 +2524,25 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_TOUCH_EVENTS "SDL_MOUSE_TOUCH_EVENTS" +#define SDL_HINT_MOUSE_TOUCH_EVENTS "SDL_MOUSE_TOUCH_EVENTS" + +/** + * A variable controlling whether the keyboard should be muted on the console. + * + * Normally the keyboard is muted while SDL applications are running so that + * keyboard input doesn't show up as key strokes on the console. This hint + * allows you to turn that off for debugging purposes. + * + * The variable can be set to the following values: + * + * - "0": Allow keystrokes to go through to the console. + * - "1": Mute keyboard input so it doesn't show up on the console. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_MUTE_CONSOLE_KEYBOARD "SDL_MUTE_CONSOLE_KEYBOARD" /** * Tell SDL not to catch the SIGINT or SIGTERM signals on POSIX platforms. @@ -2333,7 +2557,17 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_NO_SIGNAL_HANDLERS "SDL_NO_SIGNAL_HANDLERS" +#define SDL_HINT_NO_SIGNAL_HANDLERS "SDL_NO_SIGNAL_HANDLERS" + +/** + * Specify the OpenGL library to load. + * + * This hint should be set before creating an OpenGL window or creating an + * OpenGL context. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_OPENGL_LIBRARY "SDL_OPENGL_LIBRARY" /** * A variable controlling what driver to use for OpenGL ES contexts. @@ -2367,7 +2601,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_OPENGL_ES_DRIVER "SDL_OPENGL_ES_DRIVER" +#define SDL_HINT_OPENGL_ES_DRIVER "SDL_OPENGL_ES_DRIVER" /** * A variable controlling which orientations are allowed on iOS/Android. @@ -2388,54 +2622,6 @@ extern "C" { */ #define SDL_HINT_ORIENTATIONS "SDL_ORIENTATIONS" -/** - * A variable controlling whether pen mouse button emulation triggers only - * when the pen touches the tablet surface. - * - * The variable can be set to the following values: - * - * - "0": The pen reports mouse button press/release immediately when the pen - * button is pressed/released, and the pen tip touching the surface counts - * as left mouse button press. - * - "1": Mouse button presses are sent when the pen first touches the tablet - * (analogously for releases). Not pressing a pen button simulates mouse - * button 1, pressing the first pen button simulates mouse button 2 etc.; it - * is not possible to report multiple buttons as pressed at the same time. - * (default) - * - * This hint can be set anytime. - * - * \since This hint is available since SDL 3.0.0. - */ -#define SDL_HINT_PEN_DELAY_MOUSE_BUTTON "SDL_PEN_DELAY_MOUSE_BUTTON" - -/** - * A variable controlling whether to treat pen movement as separate from mouse - * movement. - * - * By default, pens report both SDL_MouseMotionEvent and SDL_PenMotionEvent - * updates (analogously for button presses). This hint allows decoupling mouse - * and pen updates. - * - * This variable toggles between the following behaviour: - * - * - "0": Pen acts as a mouse with mouse ID SDL_PEN_MOUSEID. (default) Use - * case: client application is not pen aware, user wants to use pen instead - * of mouse to interact. - * - "1": Pen reports mouse clicks and movement events but does not update - * SDL-internal mouse state (buttons pressed, current mouse location). Use - * case: client application is not pen aware, user frequently alternates - * between pen and "real" mouse. - * - "2": Pen reports no mouse events. Use case: pen-aware client application - * uses this hint to allow user to toggle between pen+mouse mode ("2") and - * pen-only mode ("1" or "0"). - * - * This hint can be set anytime. - * - * \since This hint is available since SDL 3.0.0. - */ -#define SDL_HINT_PEN_NOT_MOUSE "SDL_PEN_NOT_MOUSE" - /** * A variable controlling the use of a sentinel event when polling the event * queue. @@ -2522,7 +2708,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_RENDER_DIRECT3D11_DEBUG "SDL_RENDER_DIRECT3D11_DEBUG" +#define SDL_HINT_RENDER_DIRECT3D11_DEBUG "SDL_RENDER_DIRECT3D11_DEBUG" /** * A variable controlling whether to enable Vulkan Validation Layers. @@ -2536,7 +2722,36 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_RENDER_VULKAN_DEBUG "SDL_RENDER_VULKAN_DEBUG" +#define SDL_HINT_RENDER_VULKAN_DEBUG "SDL_RENDER_VULKAN_DEBUG" + +/** + * A variable controlling whether to create the GPU device in debug mode. + * + * This variable can be set to the following values: + * + * - "0": Disable debug mode use (default) + * - "1": Enable debug mode use + * + * This hint should be set before creating a renderer. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_RENDER_GPU_DEBUG "SDL_RENDER_GPU_DEBUG" + +/** + * A variable controlling whether to prefer a low-power GPU on multi-GPU + * systems. + * + * This variable can be set to the following values: + * + * - "0": Prefer high-performance GPU (default) + * - "1": Prefer low-power GPU + * + * This hint should be set before creating a renderer. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_RENDER_GPU_LOW_POWER "SDL_RENDER_GPU_LOW_POWER" /** * A variable specifying which render driver to use. @@ -2564,7 +2779,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_RENDER_DRIVER "SDL_RENDER_DRIVER" +#define SDL_HINT_RENDER_DRIVER "SDL_RENDER_DRIVER" /** * A variable controlling how the 2D render API renders lines. @@ -2614,7 +2829,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_RENDER_VSYNC "SDL_RENDER_VSYNC" +#define SDL_HINT_RENDER_VSYNC "SDL_RENDER_VSYNC" /** * A variable to control whether the return key on the soft keyboard should @@ -2682,7 +2897,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_RPI_VIDEO_LAYER "SDL_RPI_VIDEO_LAYER" +#define SDL_HINT_RPI_VIDEO_LAYER "SDL_RPI_VIDEO_LAYER" /** * Specify an "activity name" for screensaver inhibition. @@ -2803,7 +3018,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_THREAD_PRIORITY_POLICY "SDL_THREAD_PRIORITY_POLICY" +#define SDL_HINT_THREAD_PRIORITY_POLICY "SDL_THREAD_PRIORITY_POLICY" /** * A variable that controls the timer resolution, in milliseconds. @@ -2838,7 +3053,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_TOUCH_MOUSE_EVENTS "SDL_TOUCH_MOUSE_EVENTS" +#define SDL_HINT_TOUCH_MOUSE_EVENTS "SDL_TOUCH_MOUSE_EVENTS" /** * A variable controlling whether trackpads should be treated as touch @@ -2888,7 +3103,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_ALLOW_SCREENSAVER "SDL_VIDEO_ALLOW_SCREENSAVER" +#define SDL_HINT_VIDEO_ALLOW_SCREENSAVER "SDL_VIDEO_ALLOW_SCREENSAVER" /** * Tell the video driver that we only want a double buffer. @@ -2911,7 +3126,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_DOUBLE_BUFFER "SDL_VIDEO_DOUBLE_BUFFER" +#define SDL_HINT_VIDEO_DOUBLE_BUFFER "SDL_VIDEO_DOUBLE_BUFFER" /** * A variable that specifies a video backend to use. @@ -2927,6 +3142,19 @@ extern "C" { */ #define SDL_HINT_VIDEO_DRIVER "SDL_VIDEO_DRIVER" +/** + * A variable controlling whether the dummy video driver saves output frames. + * + * - "0": Video frames are not saved to disk. (default) + * - "1": Video frames are saved to files in the format "SDL_windowX-Y.bmp", + * where X is the window ID, and Y is the frame number. + * + * This hint can be set anytime. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VIDEO_DUMMY_SAVE_FRAMES "SDL_VIDEO_DUMMY_SAVE_FRAMES" + /** * If eglGetPlatformDisplay fails, fall back to calling eglGetDisplay. * @@ -2973,7 +3201,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_MAC_FULLSCREEN_SPACES "SDL_VIDEO_MAC_FULLSCREEN_SPACES" +#define SDL_HINT_VIDEO_MAC_FULLSCREEN_SPACES "SDL_VIDEO_MAC_FULLSCREEN_SPACES" /** * A variable controlling whether fullscreen windows are minimized when they @@ -2989,7 +3217,24 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS "SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS" +#define SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS "SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS" + +/** + * A variable controlling whether the offscreen video driver saves output + * frames. + * + * This only saves frames that are generated using software rendering, not + * accelerated OpenGL rendering. + * + * - "0": Video frames are not saved to disk. (default) + * - "1": Video frames are saved to files in the format "SDL_windowX-Y.bmp", + * where X is the window ID, and Y is the frame number. + * + * This hint can be set anytime. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VIDEO_OFFSCREEN_SAVE_FRAMES "SDL_VIDEO_OFFSCREEN_SAVE_FRAMES" /** * A variable controlling whether all window operations will block until @@ -3154,7 +3399,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_WIN_D3DCOMPILER "SDL_VIDEO_WIN_D3DCOMPILER" +#define SDL_HINT_VIDEO_WIN_D3DCOMPILER "SDL_VIDEO_WIN_D3DCOMPILER" /** * A variable controlling whether the X11 _NET_WM_BYPASS_COMPOSITOR hint @@ -3188,7 +3433,21 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_X11_NET_WM_PING "SDL_VIDEO_X11_NET_WM_PING" +#define SDL_HINT_VIDEO_X11_NET_WM_PING "SDL_VIDEO_X11_NET_WM_PING" + +/** + * A variable controlling whether SDL uses DirectColor visuals. + * + * The variable can be set to the following values: + * + * - "0": Disable DirectColor visuals. + * - "1": Enable DirectColor visuals. (default) + * + * This hint should be set before initializing the video subsystem. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VIDEO_X11_NODIRECTCOLOR "SDL_VIDEO_X11_NODIRECTCOLOR" /** * A variable forcing the content scaling factor for X11 displays. @@ -3199,7 +3458,16 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_X11_SCALING_FACTOR "SDL_VIDEO_X11_SCALING_FACTOR" +#define SDL_HINT_VIDEO_X11_SCALING_FACTOR "SDL_VIDEO_X11_SCALING_FACTOR" + +/** + * A variable forcing the visual ID used for X11 display modes. + * + * This hint should be set before initializing the video subsystem. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VIDEO_X11_VISUALID "SDL_VIDEO_X11_VISUALID" /** * A variable forcing the visual ID chosen for new X11 windows. @@ -3208,7 +3476,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_X11_WINDOW_VISUALID "SDL_VIDEO_X11_WINDOW_VISUALID" +#define SDL_HINT_VIDEO_X11_WINDOW_VISUALID "SDL_VIDEO_X11_WINDOW_VISUALID" /** * A variable controlling whether the X11 XRandR extension should be used. @@ -3222,7 +3490,91 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_X11_XRANDR "SDL_VIDEO_X11_XRANDR" +#define SDL_HINT_VIDEO_X11_XRANDR "SDL_VIDEO_X11_XRANDR" + +/** + * A variable controlling whether touch should be enabled on the back panel of + * the PlayStation Vita. + * + * The variable can be set to the following values: + * + * - "0": Disable touch on the back panel. + * - "1": Enable touch on the back panel. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_ENABLE_BACK_TOUCH "SDL_VITA_ENABLE_BACK_TOUCH" + +/** + * A variable controlling whether touch should be enabled on the front panel + * of the PlayStation Vita. + * + * The variable can be set to the following values: + * + * - "0": Disable touch on the front panel. + * - "1": Enable touch on the front panel. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_ENABLE_FRONT_TOUCH "SDL_VITA_ENABLE_FRONT_TOUCH" + +/** + * A variable controlling the module path on the PlayStation Vita. + * + * This hint defaults to "app0:module" + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_MODULE_PATH "SDL_VITA_MODULE_PATH" + +/** + * A variable controlling whether to perform PVR initialization on the + * PlayStation Vita. + * + * - "0": Skip PVR initialization. + * - "1": Perform the normal PVR initialization. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_PVR_INIT "SDL_VITA_PVR_INIT" + +/** + * A variable overriding the resolution reported on the PlayStation Vita. + * + * The variable can be set to the following values: + * + * - "544": 544p (default) + * - "720": 725p for PSTV + * - "1080": 1088i for PSTV + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_RESOLUTION "SDL_VITA_RESOLUTION" + +/** + * A variable controlling whether OpenGL should be used instead of OpenGL ES + * on the PlayStation Vita. + * + * The variable can be set to the following values: + * + * - "0": Use OpenGL ES. (default) + * - "1": Use OpenGL. + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_PVR_OPENGL "SDL_VITA_PVR_OPENGL" /** * A variable controlling which touchpad should generate synthetic mouse @@ -3238,7 +3590,28 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VITA_TOUCH_MOUSE_DEVICE "SDL_VITA_TOUCH_MOUSE_DEVICE" +#define SDL_HINT_VITA_TOUCH_MOUSE_DEVICE "SDL_VITA_TOUCH_MOUSE_DEVICE" + +/** + * A variable overriding the display index used in SDL_Vulkan_CreateSurface() + * + * The display index starts at 0, which is the default. + * + * This hint should be set before calling SDL_Vulkan_CreateSurface() + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VULKAN_DISPLAY "SDL_VULKAN_DISPLAY" + +/** + * Specify the Vulkan library to load. + * + * This hint should be set before creating a Vulkan window or calling + * SDL_Vulkan_LoadLibrary(). + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VULKAN_LIBRARY "SDL_VULKAN_LIBRARY" /** * A variable controlling how the fact chunk affects the loading of a WAVE @@ -3270,7 +3643,19 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WAVE_FACT_CHUNK "SDL_WAVE_FACT_CHUNK" +#define SDL_HINT_WAVE_FACT_CHUNK "SDL_WAVE_FACT_CHUNK" + +/** + * A variable controlling the maximum number of chunks in a WAVE file. + * + * This sets an upper bound on the number of chunks in a WAVE file to avoid + * wasting time on malformed or corrupt WAVE files. This defaults to "10000". + * + * This hint should be set before calling SDL_LoadWAV() or SDL_LoadWAV_IO() + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_WAVE_CHUNK_LIMIT "SDL_WAVE_CHUNK_LIMIT" /** * A variable controlling how the size of the RIFF chunk affects the loading @@ -3283,7 +3668,7 @@ extern "C" { * Note that files that have trailing data unrelated to the WAVE file or * corrupt files may slow down the loading process without a reliable * boundary. By default, SDL stops after 10000 chunks to prevent wasting time. - * Use the environment variable SDL_WAVE_CHUNK_LIMIT to adjust this value. + * Use SDL_HINT_WAVE_CHUNK_LIMIT to adjust this value. * * The variable can be set to the following values: * @@ -3298,7 +3683,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WAVE_RIFF_CHUNK_SIZE "SDL_WAVE_RIFF_CHUNK_SIZE" +#define SDL_HINT_WAVE_RIFF_CHUNK_SIZE "SDL_WAVE_RIFF_CHUNK_SIZE" /** * A variable controlling how a truncated WAVE file is handled. @@ -3318,7 +3703,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WAVE_TRUNCATION "SDL_WAVE_TRUNCATION" +#define SDL_HINT_WAVE_TRUNCATION "SDL_WAVE_TRUNCATION" /** * A variable controlling whether the window is activated when the @@ -3335,7 +3720,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WINDOW_ACTIVATE_WHEN_RAISED "SDL_WINDOW_ACTIVATE_WHEN_RAISED" +#define SDL_HINT_WINDOW_ACTIVATE_WHEN_RAISED "SDL_WINDOW_ACTIVATE_WHEN_RAISED" /** * A variable controlling whether the window is activated when the @@ -3352,7 +3737,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WINDOW_ACTIVATE_WHEN_SHOWN "SDL_WINDOW_ACTIVATE_WHEN_SHOWN" +#define SDL_HINT_WINDOW_ACTIVATE_WHEN_SHOWN "SDL_WINDOW_ACTIVATE_WHEN_SHOWN" /** * If set to "0" then never set the top-most flag on an SDL Window even if the @@ -3386,7 +3771,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN "SDL_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN" +#define SDL_HINT_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN "SDL_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN" /** * A variable controlling whether SDL generates window-close events for Alt+F4 @@ -3448,6 +3833,22 @@ extern "C" { */ #define SDL_HINT_WINDOWS_ENABLE_MESSAGELOOP "SDL_WINDOWS_ENABLE_MESSAGELOOP" +/** + * A variable controlling whether GameInput is used for raw keyboard and mouse + * on Windows. + * + * The variable can be set to the following values: + * + * - "0": GameInput is not used for raw keyboard and mouse events. + * - "1": GameInput is used for raw keyboard and mouse events, if available. + * (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_WINDOWS_GAMEINPUT "SDL_WINDOWS_GAMEINPUT" + /** * A variable controlling whether raw keyboard events are used on Windows. * @@ -3460,28 +3861,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WINDOWS_RAW_KEYBOARD "SDL_WINDOWS_RAW_KEYBOARD" - -/** - * A variable controlling whether SDL uses Critical Sections for mutexes on - * Windows. - * - * On Windows 7 and newer, Slim Reader/Writer Locks are available. They offer - * better performance, allocate no kernel resources and use less memory. SDL - * will fall back to Critical Sections on older OS versions or if forced to by - * this hint. - * - * The variable can be set to the following values: - * - * - "0": Use SRW Locks when available, otherwise fall back to Critical - * Sections. (default) - * - "1": Force the use of Critical Sections in all cases. - * - * This hint should be set before SDL is initialized. - * - * \since This hint is available since SDL 3.0.0. - */ -#define SDL_HINT_WINDOWS_FORCE_MUTEX_CRITICAL_SECTIONS "SDL_WINDOWS_FORCE_MUTEX_CRITICAL_SECTIONS" +#define SDL_HINT_WINDOWS_RAW_KEYBOARD "SDL_WINDOWS_RAW_KEYBOARD" /** * A variable controlling whether SDL uses Kernel Semaphores on Windows. @@ -3709,6 +4089,17 @@ extern "C" { */ #define SDL_HINT_X11_WINDOW_TYPE "SDL_X11_WINDOW_TYPE" +/** + * Specify the XCB library to load for the X11 driver. + * + * This defaults to "libX11-xcb.so" + * + * This hint should be set before initializing the video subsystem. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_X11_XCB_LIBRARY "SDL_X11_XCB_LIBRARY" + /** * A variable controlling whether XInput should be used for controller * handling. @@ -3724,6 +4115,31 @@ extern "C" { */ #define SDL_HINT_XINPUT_ENABLED "SDL_XINPUT_ENABLED" +/** + * A variable controlling response to SDL_assert failures. + * + * The variable can be set to the following case-sensitive values: + * + * - "abort": Program terminates immediately. + * - "break": Program triggers a debugger breakpoint. + * - "retry": Program reruns the SDL_assert's test again. + * - "ignore": Program continues on, ignoring this assertion failure this + * time. + * - "always_ignore": Program continues on, ignoring this assertion failure + * for the rest of the run. + * + * Note that SDL_SetAssertionHandler offers a programmatic means to deal with + * assertion failures through a callback, and this hint is largely intended to + * be used via environment variables by end users and automated tools. + * + * This hint should be set before an assertion failure is triggered and can be + * changed at any time. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_ASSERT "SDL_ASSERT" + + /** * An enumeration of hint priorities. * @@ -3736,7 +4152,6 @@ typedef enum SDL_HintPriority SDL_HINT_OVERRIDE } SDL_HintPriority; - /** * Set a hint with a specific priority. * @@ -3747,7 +4162,10 @@ typedef enum SDL_HintPriority * \param name the hint to set. * \param value the value of the hint variable. * \param priority the SDL_HintPriority level for the hint. - * \returns SDL_TRUE if the hint was set, SDL_FALSE otherwise. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. + * + * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. * @@ -3755,9 +4173,7 @@ typedef enum SDL_HintPriority * \sa SDL_ResetHint * \sa SDL_SetHint */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHintWithPriority(const char *name, - const char *value, - SDL_HintPriority priority); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHintWithPriority(const char *name, const char *value, SDL_HintPriority priority); /** * Set a hint with normal priority. @@ -3768,7 +4184,10 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHintWithPriority(const char *name, * * \param name the hint to set. * \param value the value of the hint variable. - * \returns SDL_TRUE if the hint was set, SDL_FALSE otherwise. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. + * + * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. * @@ -3776,8 +4195,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHintWithPriority(const char *name, * \sa SDL_ResetHint * \sa SDL_SetHintWithPriority */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHint(const char *name, - const char *value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHint(const char *name, const char *value); /** * Reset a hint to the default value. @@ -3787,7 +4205,10 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHint(const char *name, * change. * * \param name the hint to set. - * \returns SDL_TRUE if the hint was set, SDL_FALSE otherwise. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. + * + * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. * @@ -3803,6 +4224,8 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ResetHint(const char *name); * variable, or NULL if the environment isn't set. Callbacks will be called * normally with this change. * + * \threadsafety It is safe to call this function from any thread. + * * \since This function is available since SDL 3.0.0. * * \sa SDL_ResetHint @@ -3815,12 +4238,19 @@ extern SDL_DECLSPEC void SDLCALL SDL_ResetHints(void); * \param name the hint to query. * \returns the string value of a hint or NULL if the hint isn't set. * + * \threadsafety It is safe to call this function from any thread, however the + * return value only remains valid until the hint is changed; if + * another thread might do so, the app should supply locks + * and/or make a copy of the string. Note that using a hint + * callback instead is always thread-safe, as SDL holds a lock + * on the thread subsystem during the callback. + * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetHint * \sa SDL_SetHintWithPriority */ -extern SDL_DECLSPEC const char * SDLCALL SDL_GetHint(const char *name); +extern SDL_DECLSPEC const char *SDLCALL SDL_GetHint(const char *name); /** * Get the boolean value of a hint variable. @@ -3830,6 +4260,8 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetHint(const char *name); * \returns the boolean value of a hint or the provided default value if the * hint does not exist. * + * \threadsafety It is safe to call this function from any thread. + * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetHint @@ -3838,37 +4270,46 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetHint(const char *name); extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetHintBoolean(const char *name, SDL_bool default_value); /** - * Type definition of the hint callback function. + * A callback used to send notifications of hint value changes. + * + * This is called an initial time during SDL_AddHintCallback with the hint's + * current value, and then again each time the hint's value changes. * * \param userdata what was passed as `userdata` to SDL_AddHintCallback(). * \param name what was passed as `name` to SDL_AddHintCallback(). * \param oldValue the previous hint value. * \param newValue the new value hint is to be set to. * + * \threadsafety This callback is fired from whatever thread is setting a new + * hint value. SDL holds a lock on the hint subsystem when + * calling this callback. + * * \since This datatype is available since SDL 3.0.0. + * + * \sa SDL_AddHintCallback */ -typedef void (SDLCALL *SDL_HintCallback)(void *userdata, const char *name, const char *oldValue, const char *newValue); +typedef void(SDLCALL *SDL_HintCallback)(void *userdata, const char *name, const char *oldValue, const char *newValue); /** * Add a function to watch a particular hint. * + * The callback function is called _during_ this function, to provide it an + * initial value, and again each time the hint's value changes. + * * \param name the hint to watch. - * \param callback an SDL_HintCallback function that will be called when the + * \param callback An SDL_HintCallback function that will be called when the * hint value changes. * \param userdata a pointer to pass to the callback function. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * - * \threadsafety It is **NOT** safe to call this function from two threads at - * once. + * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. * - * \sa SDL_DelHintCallback + * \sa SDL_RemoveHintCallback */ -extern SDL_DECLSPEC int SDLCALL SDL_AddHintCallback(const char *name, - SDL_HintCallback callback, - void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AddHintCallback(const char *name, SDL_HintCallback callback, void *userdata); /** * Remove a function watching a particular hint. @@ -3878,13 +4319,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_AddHintCallback(const char *name, * hint value changes. * \param userdata a pointer being passed to the callback function. * + * \threadsafety It is safe to call this function from any thread. + * * \since This function is available since SDL 3.0.0. * * \sa SDL_AddHintCallback */ -extern SDL_DECLSPEC void SDLCALL SDL_DelHintCallback(const char *name, - SDL_HintCallback callback, - void *userdata); +extern SDL_DECLSPEC void SDLCALL SDL_RemoveHintCallback(const char *name, + SDL_HintCallback callback, + void *userdata); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_init.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_init.h index 6b51816..5a13947 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_init.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_init.h @@ -31,6 +31,7 @@ #include #include +#include #include /* Set up for C function definitions, even when using C++ */ @@ -66,6 +67,38 @@ typedef Uint32 SDL_InitFlags; #define SDL_INIT_SENSOR 0x00008000u /**< `SDL_INIT_SENSOR` implies `SDL_INIT_EVENTS` */ #define SDL_INIT_CAMERA 0x00010000u /**< `SDL_INIT_CAMERA` implies `SDL_INIT_EVENTS` */ +/** + * Return values for optional main callbacks. + * + * Returning SDL_APP_SUCCESS or SDL_APP_FAILURE from SDL_AppInit, + * SDL_AppEvent, or SDL_AppIterate will terminate the program and report + * success/failure to the operating system. What that means is + * platform-dependent. On Unix, for example, on success, the process error + * code will be zero, and on failure it will be 1. This interface doesn't + * allow you to return specific exit codes, just whether there was an error + * generally or not. + * + * Returning SDL_APP_CONTINUE from these functions will let the app continue + * to run. + * + * See + * [Main callbacks in SDL3](https://wiki.libsdl.org/SDL3/README/main-functions#main-callbacks-in-sdl3) + * for complete details. + * + * \since This enum is available since SDL 3.0.0. + */ +typedef enum SDL_AppResult +{ + SDL_APP_CONTINUE, /**< Value that requests that the app continue from the main callbacks. */ + SDL_APP_SUCCESS, /**< Value that requests termination with success from the main callbacks. */ + SDL_APP_FAILURE /**< Value that requests termination with error from the main callbacks. */ +} SDL_AppResult; + +typedef SDL_AppResult (SDLCALL *SDL_AppInit_func)(void **appstate, int argc, char *argv[]); +typedef SDL_AppResult (SDLCALL *SDL_AppIterate_func)(void *appstate); +typedef SDL_AppResult (SDLCALL *SDL_AppEvent_func)(void *appstate, const SDL_Event *event); +typedef void (SDLCALL *SDL_AppQuit_func)(void *appstate); + /** * Initialize the SDL library. * @@ -110,8 +143,8 @@ typedef Uint32 SDL_InitFlags; * SDL_SetAppMetadataProperty(). * * \param flags subsystem initialization flags. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -122,7 +155,7 @@ typedef Uint32 SDL_InitFlags; * \sa SDL_SetMainReady * \sa SDL_WasInit */ -extern SDL_DECLSPEC int SDLCALL SDL_Init(SDL_InitFlags flags); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_Init(SDL_InitFlags flags); /** * Compatibility function to initialize the SDL library. @@ -130,8 +163,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_Init(SDL_InitFlags flags); * This function and SDL_Init() are interchangeable. * * \param flags any of the flags used by SDL_Init(); see SDL_Init for details. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -139,7 +172,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_Init(SDL_InitFlags flags); * \sa SDL_Quit * \sa SDL_QuitSubSystem */ -extern SDL_DECLSPEC int SDLCALL SDL_InitSubSystem(SDL_InitFlags flags); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_InitSubSystem(SDL_InitFlags flags); /** * Shut down specific SDL subsystems. @@ -215,8 +248,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_Quit(void); * hash, or whatever makes sense). * \param appidentifier A unique string in reverse-domain format that * identifies this app ("com.example.mygame2"). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -224,7 +257,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_Quit(void); * * \sa SDL_SetAppMetadataProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadata(const char *appname, const char *appversion, const char *appidentifier); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAppMetadata(const char *appname, const char *appversion, const char *appidentifier); /** * Specify metadata about your app through a set of properties. @@ -250,7 +283,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadata(const char *appname, const ch * anywhere the OS shows the name of the application separately from window * titles, such as volume control applets, etc. This defaults to "SDL * Application". - * - SDL_PROP_APP_METADATA_VERSION_STRING`: The version of the app that is + * - `SDL_PROP_APP_METADATA_VERSION_STRING`: The version of the app that is * running; there are no rules on format, so "1.0.3beta2" and "April 22nd, * 2024" and a git hash are all valid options. This has no default. * - `SDL_PROP_APP_METADATA_IDENTIFIER_STRING`: A unique string that @@ -260,16 +293,16 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadata(const char *appname, const ch * associated desktop settings and icons. If you plan to package your * application in a container such as Flatpak, the app ID should match the * name of your Flatpak container as well. This has no default. - * - SDL_PROP_APP_METADATA_CREATOR_STRING`: The human-readable name of the + * - `SDL_PROP_APP_METADATA_CREATOR_STRING`: The human-readable name of the * creator/developer/maker of this app, like "MojoWorkshop, LLC" - * - SDL_PROP_APP_METADATA_COPYRIGHT_STRING`: The human-readable copyright + * - `SDL_PROP_APP_METADATA_COPYRIGHT_STRING`: The human-readable copyright * notice, like "Copyright (c) 2024 MojoWorkshop, LLC" or whatnot. Keep this * to one line, don't paste a copy of a whole software license in here. This * has no default. - * - SDL_PROP_APP_METADATA_URL_STRING`: A URL to the app on the web. Maybe a + * - `SDL_PROP_APP_METADATA_URL_STRING`: A URL to the app on the web. Maybe a * product page, or a storefront, or even a GitHub repository, for user's * further information This has no default. - * - SDL_PROP_APP_METADATA_TYPE_STRING`: The type of application this is. + * - `SDL_PROP_APP_METADATA_TYPE_STRING`: The type of application this is. * Currently this string can be "game" for a video game, "mediaplayer" for a * media player, or generically "application" if nothing else applies. * Future versions of SDL might add new types. This defaults to @@ -277,8 +310,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadata(const char *appname, const ch * * \param name the name of the metadata property to set. * \param value the value of the property, or NULL to remove that property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -287,7 +320,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadata(const char *appname, const ch * \sa SDL_GetAppMetadataProperty * \sa SDL_SetAppMetadata */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadataProperty(const char *name, const char *value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAppMetadataProperty(const char *name, const char *value); #define SDL_PROP_APP_METADATA_NAME_STRING "SDL.app.metadata.name" #define SDL_PROP_APP_METADATA_VERSION_STRING "SDL.app.metadata.version" diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_iostream.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_iostream.h index 430cd3e..a306deb 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_iostream.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_iostream.h @@ -132,9 +132,10 @@ typedef struct SDL_IOStreamInterface * The SDL_IOStream is still destroyed even if this fails, so clean up anything * even if flushing to disk returns an error. * - * \return 0 if successful or -1 on write error when flushing data. + * \return SDL_TRUE if successful or SDL_FALSE on write error when flushing data. */ - int (SDLCALL *close)(void *userdata); + SDL_bool (SDLCALL *close)(void *userdata); + } SDL_IOStreamInterface; @@ -371,21 +372,21 @@ extern SDL_DECLSPEC SDL_IOStream * SDLCALL SDL_OpenIO(const SDL_IOStreamInterfac * * SDL_CloseIO() closes and cleans up the SDL_IOStream stream. It releases any * resources used by the stream and frees the SDL_IOStream itself. This - * returns 0 on success, or -1 if the stream failed to flush to its output - * (e.g. to disk). + * returns SDL_TRUE on success, or SDL_FALSE if the stream failed to flush to + * its output (e.g. to disk). * * Note that if this fails to flush the stream to disk, this function reports * an error, but the SDL_IOStream is still invalid once this function returns. * * \param context SDL_IOStream structure to close. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_OpenIO */ -extern SDL_DECLSPEC int SDLCALL SDL_CloseIO(SDL_IOStream *context); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CloseIO(SDL_IOStream *context); /** * Get the properties associated with an SDL_IOStream. @@ -481,9 +482,9 @@ extern SDL_DECLSPEC Sint64 SDLCALL SDL_TellIO(SDL_IOStream *context); * * This function reads up `size` bytes from the data source to the area * pointed at by `ptr`. This function may read less bytes than requested. It - * will return zero when the data stream is completely read, or on error. To - * determine if there was an error or all data was read, call - * SDL_GetIOStatus(). + * will return zero when the data stream is completely read, and + * SDL_GetIOStatus() will return SDL_IO_STATUS_EOF, or on error, and + * SDL_GetIOStatus() will return SDL_IO_STATUS_ERROR. * * \param context a pointer to an SDL_IOStream structure. * \param ptr a pointer to a buffer to read data into. diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_joystick.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_joystick.h index 1a17076..43bc1e9 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_joystick.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_joystick.h @@ -91,8 +91,7 @@ typedef struct SDL_Joystick SDL_Joystick; * * If the joystick is disconnected and reconnected, it will get a new ID. * - * The ID value starts at 1 and increments from there. The value 0 is an - * invalid ID. + * The value 0 is an invalid ID. * * \since This datatype is available since SDL 3.0.0. */ @@ -447,11 +446,12 @@ typedef struct SDL_VirtualJoystickDesc void *userdata; /**< User data pointer passed to callbacks */ void (SDLCALL *Update)(void *userdata); /**< Called when the joystick state should be updated */ void (SDLCALL *SetPlayerIndex)(void *userdata, int player_index); /**< Called when the player index is set */ - int (SDLCALL *Rumble)(void *userdata, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble); /**< Implements SDL_RumbleJoystick() */ - int (SDLCALL *RumbleTriggers)(void *userdata, Uint16 left_rumble, Uint16 right_rumble); /**< Implements SDL_RumbleJoystickTriggers() */ - int (SDLCALL *SetLED)(void *userdata, Uint8 red, Uint8 green, Uint8 blue); /**< Implements SDL_SetJoystickLED() */ - int (SDLCALL *SendEffect)(void *userdata, const void *data, int size); /**< Implements SDL_SendJoystickEffect() */ - int (SDLCALL *SetSensorsEnabled)(void *userdata, SDL_bool enabled); /**< Implements SDL_SetGamepadSensorEnabled() */ + SDL_bool (SDLCALL *Rumble)(void *userdata, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble); /**< Implements SDL_RumbleJoystick() */ + SDL_bool (SDLCALL *RumbleTriggers)(void *userdata, Uint16 left_rumble, Uint16 right_rumble); /**< Implements SDL_RumbleJoystickTriggers() */ + SDL_bool (SDLCALL *SetLED)(void *userdata, Uint8 red, Uint8 green, Uint8 blue); /**< Implements SDL_SetJoystickLED() */ + SDL_bool (SDLCALL *SendEffect)(void *userdata, const void *data, int size); /**< Implements SDL_SendJoystickEffect() */ + SDL_bool (SDLCALL *SetSensorsEnabled)(void *userdata, SDL_bool enabled); /**< Implements SDL_SetGamepadSensorEnabled() */ + void (SDLCALL *Cleanup)(void *userdata); /**< Cleans up the userdata when the joystick is detached */ } SDL_VirtualJoystickDesc; /** @@ -472,14 +472,14 @@ extern SDL_DECLSPEC SDL_JoystickID SDLCALL SDL_AttachVirtualJoystick(const SDL_V * * \param instance_id the joystick instance ID, previously returned from * SDL_AttachVirtualJoystick(). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_AttachVirtualJoystick */ -extern SDL_DECLSPEC int SDLCALL SDL_DetachVirtualJoystick(SDL_JoystickID instance_id); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_DetachVirtualJoystick(SDL_JoystickID instance_id); /** * Query whether or not a joystick is virtual. @@ -507,12 +507,12 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_IsJoystickVirtual(SDL_JoystickID instan * \param joystick the virtual joystick on which to set state. * \param axis the index of the axis on the virtual joystick to update. * \param value the new value for the specified axis. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualAxis(SDL_Joystick *joystick, int axis, Sint16 value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickVirtualAxis(SDL_Joystick *joystick, int axis, Sint16 value); /** * Generate ball motion on an opened virtual joystick. @@ -527,12 +527,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualAxis(SDL_Joystick *joystic * \param ball the index of the ball on the virtual joystick to update. * \param xrel the relative motion on the X axis. * \param yrel the relative motion on the Y axis. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualBall(SDL_Joystick *joystick, int ball, Sint16 xrel, Sint16 yrel); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickVirtualBall(SDL_Joystick *joystick, int ball, Sint16 xrel, Sint16 yrel); /** * Set the state of a button on an opened virtual joystick. @@ -546,12 +546,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualBall(SDL_Joystick *joystic * \param joystick the virtual joystick on which to set state. * \param button the index of the button on the virtual joystick to update. * \param value the new value for the specified button. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualButton(SDL_Joystick *joystick, int button, Uint8 value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickVirtualButton(SDL_Joystick *joystick, int button, Uint8 value); /** * Set the state of a hat on an opened virtual joystick. @@ -565,12 +565,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualButton(SDL_Joystick *joyst * \param joystick the virtual joystick on which to set state. * \param hat the index of the hat on the virtual joystick to update. * \param value the new value for the specified hat. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualHat(SDL_Joystick *joystick, int hat, Uint8 value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickVirtualHat(SDL_Joystick *joystick, int hat, Uint8 value); /** * Set touchpad finger state on an opened virtual joystick. @@ -592,12 +592,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualHat(SDL_Joystick *joystick * \param y the y coordinate of the finger on the touchpad, normalized 0 to 1, * with the origin in the upper left. * \param pressure the pressure of the finger. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualTouchpad(SDL_Joystick *joystick, int touchpad, int finger, Uint8 state, float x, float y, float pressure); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickVirtualTouchpad(SDL_Joystick *joystick, int touchpad, int finger, Uint8 state, float x, float y, float pressure); /** * Send a sensor update for an opened virtual joystick. @@ -614,12 +614,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualTouchpad(SDL_Joystick *joy * the sensor reading. * \param data the data associated with the sensor reading. * \param num_values the number of values pointed to by `data`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SendJoystickVirtualSensorData(SDL_Joystick *joystick, SDL_SensorType type, Uint64 sensor_timestamp, const float *data, int num_values); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SendJoystickVirtualSensorData(SDL_Joystick *joystick, SDL_SensorType type, Uint64 sensor_timestamp, const float *data, int num_values); /** * Get the properties associated with a joystick. @@ -698,14 +698,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetJoystickPlayerIndex(SDL_Joystick *joystic * \param joystick the SDL_Joystick obtained from SDL_OpenJoystick(). * \param player_index player index to assign to this joystick, or -1 to clear * the player index and turn off player LEDs. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetJoystickPlayerIndex */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickPlayerIndex(SDL_Joystick *joystick, int player_index); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickPlayerIndex(SDL_Joystick *joystick, int player_index); /** * Get the implementation-dependent GUID for the joystick. @@ -853,9 +853,8 @@ extern SDL_DECLSPEC SDL_JoystickID SDLCALL SDL_GetJoystickID(SDL_Joystick *joyst * device and platform. * * \param joystick an SDL_Joystick structure containing joystick information. - * \returns the number of axis controls/number of axes on success or a - * negative error code on failure; call SDL_GetError() for more - * information. + * \returns the number of axis controls/number of axes on success or -1 on + * failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -875,8 +874,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetNumJoystickAxes(SDL_Joystick *joystick); * Most joysticks do not have trackballs. * * \param joystick an SDL_Joystick structure containing joystick information. - * \returns the number of trackballs on success or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the number of trackballs on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -891,8 +890,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetNumJoystickBalls(SDL_Joystick *joystick); * Get the number of POV hats on a joystick. * * \param joystick an SDL_Joystick structure containing joystick information. - * \returns the number of POV hats on success or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the number of POV hats on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -907,8 +906,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetNumJoystickHats(SDL_Joystick *joystick); * Get the number of buttons on a joystick. * * \param joystick an SDL_Joystick structure containing joystick information. - * \returns the number of buttons on success or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the number of buttons on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -1013,14 +1012,14 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetJoystickAxisInitialState(SDL_Joystic * \param ball the ball index to query; ball indices start at index 0. * \param dx stores the difference in the x axis position since the last poll. * \param dy stores the difference in the y axis position since the last poll. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetNumJoystickBalls */ -extern SDL_DECLSPEC int SDLCALL SDL_GetJoystickBall(SDL_Joystick *joystick, int ball, int *dx, int *dy); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetJoystickBall(SDL_Joystick *joystick, int ball, int *dx, int *dy); /** * Get the current state of a POV hat on a joystick. @@ -1076,11 +1075,11 @@ extern SDL_DECLSPEC Uint8 SDLCALL SDL_GetJoystickButton(SDL_Joystick *joystick, * \param high_frequency_rumble the intensity of the high frequency (right) * rumble motor, from 0 to 0xFFFF. * \param duration_ms the duration of the rumble effect, in milliseconds. - * \returns 0, or -1 if rumble isn't supported on this joystick. + * \returns SDL_TRUE, or SDL_FALSE if rumble isn't supported on this joystick. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RumbleJoystick(SDL_Joystick *joystick, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RumbleJoystick(SDL_Joystick *joystick, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); /** * Start a rumble effect in the joystick's triggers. @@ -1102,14 +1101,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RumbleJoystick(SDL_Joystick *joystick, Uint1 * \param right_rumble the intensity of the right trigger rumble motor, from 0 * to 0xFFFF. * \param duration_ms the duration of the rumble effect, in milliseconds. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RumbleJoystick */ -extern SDL_DECLSPEC int SDLCALL SDL_RumbleJoystickTriggers(SDL_Joystick *joystick, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RumbleJoystickTriggers(SDL_Joystick *joystick, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); /** * Update a joystick's LED color. @@ -1124,12 +1123,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_RumbleJoystickTriggers(SDL_Joystick *joystic * \param red the intensity of the red LED. * \param green the intensity of the green LED. * \param blue the intensity of the blue LED. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickLED(SDL_Joystick *joystick, Uint8 red, Uint8 green, Uint8 blue); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickLED(SDL_Joystick *joystick, Uint8 red, Uint8 green, Uint8 blue); /** * Send a joystick specific effect packet. @@ -1137,12 +1136,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickLED(SDL_Joystick *joystick, Uint8 * \param joystick the joystick to affect. * \param data the data to send to the joystick. * \param size the size of the data to send to the joystick. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SendJoystickEffect(SDL_Joystick *joystick, const void *data, int size); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SendJoystickEffect(SDL_Joystick *joystick, const void *data, int size); /** * Close a joystick previously opened with SDL_OpenJoystick(). diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_keyboard.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_keyboard.h index 07bce75..ec6c3f2 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_keyboard.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_keyboard.h @@ -45,8 +45,7 @@ extern "C" { * * If the keyboard is disconnected and reconnected, it will get a new ID. * - * The ID value starts at 1 and increments from there. The value 0 is an - * invalid ID. + * The value 0 is an invalid ID. * * \since This datatype is available since SDL 3.0.0. */ @@ -184,61 +183,27 @@ extern SDL_DECLSPEC SDL_Keymod SDLCALL SDL_GetModState(void); */ extern SDL_DECLSPEC void SDLCALL SDL_SetModState(SDL_Keymod modstate); -/** - * Get the key code corresponding to the given scancode according to a default - * en_US keyboard layout. - * - * See SDL_Keycode for details. - * - * \param scancode the desired SDL_Scancode to query. - * \param modstate the modifier state to use when translating the scancode to - * a keycode. - * \returns the SDL_Keycode that corresponds to the given SDL_Scancode. - * - * \since This function is available since SDL 3.0.0. - * - * \sa SDL_GetKeyName - * \sa SDL_GetScancodeFromKey - */ -extern SDL_DECLSPEC SDL_Keycode SDLCALL SDL_GetDefaultKeyFromScancode(SDL_Scancode scancode, SDL_Keymod modstate); - /** * Get the key code corresponding to the given scancode according to the * current keyboard layout. * - * See SDL_Keycode for details. + * If you want to get the keycode as it would be delivered in key events, + * including options specified in SDL_HINT_KEYCODE_OPTIONS, then you should + * pass `key_event` as SDL_TRUE. Otherwise this function simply translates the + * scancode based on the given modifier state. * * \param scancode the desired SDL_Scancode to query. * \param modstate the modifier state to use when translating the scancode to * a keycode. + * \param key_event SDL_TRUE if the keycode will be used in key events. * \returns the SDL_Keycode that corresponds to the given SDL_Scancode. * * \since This function is available since SDL 3.0.0. * - * \sa SDL_GetDefaultKeyFromScancode * \sa SDL_GetKeyName * \sa SDL_GetScancodeFromKey */ -extern SDL_DECLSPEC SDL_Keycode SDLCALL SDL_GetKeyFromScancode(SDL_Scancode scancode, SDL_Keymod modstate); - -/** - * Get the scancode corresponding to the given key code according to a default - * en_US keyboard layout. - * - * Note that there may be multiple scancode+modifier states that can generate - * this keycode, this will just return the first one found. - * - * \param key the desired SDL_Keycode to query. - * \param modstate a pointer to the modifier state that would be used when the - * scancode generates this key, may be NULL. - * \returns the SDL_Scancode that corresponds to the given SDL_Keycode. - * - * \since This function is available since SDL 3.0.0. - * - * \sa SDL_GetScancodeFromKey - * \sa SDL_GetScancodeName - */ -extern SDL_DECLSPEC SDL_Scancode SDLCALL SDL_GetDefaultScancodeFromKey(SDL_Keycode key, SDL_Keymod *modstate); +extern SDL_DECLSPEC SDL_Keycode SDLCALL SDL_GetKeyFromScancode(SDL_Scancode scancode, SDL_Keymod modstate, SDL_bool key_event); /** * Get the scancode corresponding to the given key code according to the @@ -254,7 +219,6 @@ extern SDL_DECLSPEC SDL_Scancode SDLCALL SDL_GetDefaultScancodeFromKey(SDL_Keyco * * \since This function is available since SDL 3.0.0. * - * \sa SDL_GetDefaultScancodeFromKey * \sa SDL_GetKeyFromScancode * \sa SDL_GetScancodeName */ @@ -267,14 +231,14 @@ extern SDL_DECLSPEC SDL_Scancode SDLCALL SDL_GetScancodeFromKey(SDL_Keycode key, * \param name the name to use for the scancode, encoded as UTF-8. The string * is not copied, so the pointer given to this function must stay * valid while SDL is being used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetScancodeName */ -extern SDL_DECLSPEC int SDLCALL SDL_SetScancodeName(SDL_Scancode scancode, const char *name); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetScancodeName(SDL_Scancode scancode, const char *name); /** * Get a human-readable name for a scancode. @@ -318,9 +282,6 @@ extern SDL_DECLSPEC SDL_Scancode SDLCALL SDL_GetScancodeFromName(const char *nam /** * Get a human-readable name for a key. * - * Both lowercase and uppercase alphabetic keycodes have uppercase names, e.g. - * SDL_Keycode 'a' and 'A' both have the name "A". - * * If the key doesn't have a name, this function returns an empty string (""). * * \param key the desired SDL_Keycode to query. @@ -361,8 +322,8 @@ extern SDL_DECLSPEC SDL_Keycode SDLCALL SDL_GetKeyFromName(const char *name); * On some platforms using this function shows the screen keyboard. * * \param window the window to enable text input. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -371,7 +332,7 @@ extern SDL_DECLSPEC SDL_Keycode SDLCALL SDL_GetKeyFromName(const char *name); * \sa SDL_StopTextInput * \sa SDL_TextInputActive */ -extern SDL_DECLSPEC int SDLCALL SDL_StartTextInput(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StartTextInput(SDL_Window *window); /** * Text input type. @@ -453,8 +414,8 @@ typedef enum SDL_Capitalization * * \param window the window to enable text input. * \param props the properties to use. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -463,7 +424,7 @@ typedef enum SDL_Capitalization * \sa SDL_StopTextInput * \sa SDL_TextInputActive */ -extern SDL_DECLSPEC int SDLCALL SDL_StartTextInputWithProperties(SDL_Window *window, SDL_PropertiesID props); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StartTextInputWithProperties(SDL_Window *window, SDL_PropertiesID props); #define SDL_PROP_TEXTINPUT_TYPE_NUMBER "SDL.textinput.type" #define SDL_PROP_TEXTINPUT_CAPITALIZATION_NUMBER "SDL.textinput.capitalization" @@ -490,28 +451,28 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TextInputActive(SDL_Window *window); * it. * * \param window the window to disable text input. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StartTextInput */ -extern SDL_DECLSPEC int SDLCALL SDL_StopTextInput(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StopTextInput(SDL_Window *window); /** * Dismiss the composition window/IME without disabling the subsystem. * * \param window the window to affect. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StartTextInput * \sa SDL_StopTextInput */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearComposition(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearComposition(SDL_Window *window); /** * Set the area used to type Unicode text input. @@ -524,15 +485,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_ClearComposition(SDL_Window *window); * coordinates, or NULL to clear it. * \param cursor the offset of the current cursor location relative to * `rect->x`, in window coordinates. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetTextInputArea * \sa SDL_StartTextInput */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextInputArea(SDL_Window *window, const SDL_Rect *rect, int cursor); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextInputArea(SDL_Window *window, const SDL_Rect *rect, int cursor); /** * Get the area used to type Unicode text input. @@ -544,14 +505,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextInputArea(SDL_Window *window, const S * may be NULL. * \param cursor a pointer to the offset of the current cursor location * relative to `rect->x`, may be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetTextInputArea */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextInputArea(SDL_Window *window, SDL_Rect *rect, int *cursor); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextInputArea(SDL_Window *window, SDL_Rect *rect, int *cursor); /** * Check whether the platform has screen keyboard support. diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_log.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_log.h index 171cce8..deda238 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_log.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_log.h @@ -29,9 +29,27 @@ * it will only be sent out if it has that minimum priority or higher. * * SDL's own logs are sent below the default priority threshold, so they are - * quiet by default. If you're debugging SDL you might want: + * quiet by default. * - * SDL_SetLogPriorities(SDL_LOG_PRIORITY_WARN); + * You can change the log verbosity programmatically using + * SDL_SetLogPriority() or with SDL_SetHint(SDL_HINT_LOGGING, ...), or with + * the "SDL_LOGGING" environment variable. This variable is a comma separated + * set of category=level tokens that define the default logging levels for SDL + * applications. + * + * The category can be a numeric category, one of "app", "error", "assert", + * "system", "audio", "video", "render", "input", "test", or `*` for any + * unspecified category. + * + * The level can be a numeric level, one of "verbose", "debug", "info", + * "warn", "error", "critical", or "quiet" to disable that category. + * + * You can omit the category if you want to set the logging level for all + * categories. + * + * If this hint isn't set, the default log levels are equivalent to: + * + * `app=info,assert=warn,test=verbose,*=error` * * Here's where the messages go on different platforms: * @@ -54,9 +72,9 @@ extern "C" { /** * The predefined log categories * - * By default the application category is enabled at the INFO level, the - * assert category is enabled at the WARN level, test is enabled at the - * VERBOSE level and all other categories are enabled at the ERROR level. + * By default the application and gpu categories are enabled at the INFO + * level, the assert category is enabled at the WARN level, test is enabled at + * the VERBOSE level and all other categories are enabled at the ERROR level. * * \since This enum is available since SDL 3.0.0. */ @@ -69,6 +87,7 @@ typedef enum SDL_LogCategory SDL_LOG_CATEGORY_AUDIO, SDL_LOG_CATEGORY_VIDEO, SDL_LOG_CATEGORY_RENDER, + SDL_LOG_CATEGORY_GPU, SDL_LOG_CATEGORY_INPUT, SDL_LOG_CATEGORY_TEST, @@ -163,6 +182,26 @@ extern SDL_DECLSPEC SDL_LogPriority SDLCALL SDL_GetLogPriority(int category); */ extern SDL_DECLSPEC void SDLCALL SDL_ResetLogPriorities(void); +/** + * Set the text prepended to log messages of a given priority. + * + * By default SDL_LOG_PRIORITY_INFO and below have no prefix, and + * SDL_LOG_PRIORITY_WARN and higher have a prefix showing their priority, e.g. + * "WARNING: ". + * + * \param priority the SDL_LogPriority to modify. + * \param prefix the prefix to use for that log priority, or NULL to use no + * prefix. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SetLogPriorities + * \sa SDL_SetLogPriority + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetLogPriorityPrefix(SDL_LogPriority priority, const char *prefix); + /** * Log a message with SDL_LOG_CATEGORY_APPLICATION and SDL_LOG_PRIORITY_INFO. * diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_main.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_main.h index 0985629..de3c187 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_main.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_main.h @@ -188,16 +188,12 @@ #define main SDL_main #endif +#include #include #ifdef __cplusplus extern "C" { #endif -typedef int (SDLCALL *SDL_AppInit_func)(void **appstate, int argc, char *argv[]); -typedef int (SDLCALL *SDL_AppIterate_func)(void *appstate); -typedef int (SDLCALL *SDL_AppEvent_func)(void *appstate, const SDL_Event *event); -typedef void (SDLCALL *SDL_AppQuit_func)(void *appstate); - /* * You can (optionally!) define SDL_MAIN_USE_CALLBACKS before including * SDL_main.h, and then your application will _not_ have a standard @@ -224,49 +220,6 @@ typedef void (SDLCALL *SDL_AppQuit_func)(void *appstate); */ #ifdef SDL_MAIN_USE_CALLBACKS -/** - * Value that requests that the app continue from the main callbacks. - * - * If SDL_AppInit, SDL_AppEvent, or SDL_AppIterate returns this value, the - * program will continue to run. This is the normal return value case. - * - * This is always 0; using this macro may be clearer, but is not required. - * - * \since This macro is available since SDL 3.0.0. - */ -#define SDL_APP_CONTINUE 0 - -/** - * Value that requests termination with error from the main callbacks. - * - * If SDL_AppInit, SDL_AppEvent, or SDL_AppIterate returns this value, the - * program will terminate and report failure to the operating system. - * - * What that failure looks like is platform-dependent. On Unix, for example, - * the process error code will be non-zero. - * - * This is always -1; using this macro may be clearer, but is not required. - * - * \since This macro is available since SDL 3.0.0. - */ -#define SDL_APP_FAILURE -1 - -/** - * Value that requests termination with success from the main callbacks. - * - * If SDL_AppInit, SDL_AppEvent, or SDL_AppIterate returns this value, the - * program will terminate and report success to the operating system. - * - * What that success looks like is platform-dependent. On Unix, for example, - * the process error code will be zero. - * - * This is always 1; using this macro may be clearer, but is not required. - * - * \since This macro is available since SDL 3.0.0. - */ -#define SDL_APP_SUCCESS 1 - - /** * App-implemented initial entry point for SDL_MAIN_USE_CALLBACKS apps. * @@ -311,7 +264,7 @@ typedef void (SDLCALL *SDL_AppQuit_func)(void *appstate); * \sa SDL_AppEvent * \sa SDL_AppQuit */ -extern SDLMAIN_DECLSPEC int SDLCALL SDL_AppInit(void **appstate, int argc, char *argv[]); +extern SDLMAIN_DECLSPEC SDL_AppResult SDLCALL SDL_AppInit(void **appstate, int argc, char *argv[]); /** * App-implemented iteration entry point for SDL_MAIN_USE_CALLBACKS apps. @@ -359,7 +312,7 @@ extern SDLMAIN_DECLSPEC int SDLCALL SDL_AppInit(void **appstate, int argc, char * \sa SDL_AppInit * \sa SDL_AppEvent */ -extern SDLMAIN_DECLSPEC int SDLCALL SDL_AppIterate(void *appstate); +extern SDLMAIN_DECLSPEC SDL_AppResult SDLCALL SDL_AppIterate(void *appstate); /** * App-implemented event entry point for SDL_MAIN_USE_CALLBACKS apps. @@ -406,7 +359,7 @@ extern SDLMAIN_DECLSPEC int SDLCALL SDL_AppIterate(void *appstate); * \sa SDL_AppInit * \sa SDL_AppIterate */ -extern SDLMAIN_DECLSPEC int SDLCALL SDL_AppEvent(void *appstate, const SDL_Event *event); +extern SDLMAIN_DECLSPEC SDL_AppResult SDLCALL SDL_AppEvent(void *appstate, const SDL_Event *event); /** * App-implemented deinit entry point for SDL_MAIN_USE_CALLBACKS apps. @@ -525,8 +478,9 @@ extern SDL_DECLSPEC void SDLCALL SDL_SetMainReady(void); * literally have to be `main`. * \param reserved should be NULL (reserved for future use, will probably be * platform-specific then). - * \returns the return value from mainFunction: 0 on success, -1 on failure; - * SDL_GetError() might have more information on the failure. + * \returns the return value from mainFunction: 0 on success, otherwise + * failure; SDL_GetError() might have more information on the + * failure. * * \threadsafety Generally this is called once, near startup, from the * process's initial thread. @@ -584,12 +538,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_EnterAppMainCallbacks(int argc, char *argv[] * what is specified here. * \param hInst the HINSTANCE to use in WNDCLASSEX::hInstance. If zero, SDL * will use `GetModuleHandle(NULL)` instead. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RegisterApp(const char *name, Uint32 style, void *hInst); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RegisterApp(const char *name, Uint32 style, void *hInst); /** * Deregister the win32 window class from an SDL_RegisterApp call. @@ -631,7 +585,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_GDKSuspendComplete(void); /* include header-only SDL_main implementations */ #if defined(SDL_MAIN_USE_CALLBACKS) \ || defined(SDL_PLATFORM_WIN32) || defined(SDL_PLATFORM_GDK) || defined(SDL_PLATFORM_IOS) || defined(SDL_PLATFORM_TVOS) \ - || defined(SDL_PLATFORM_3DS) || defined(SDL_PLATFORM_NGAGE) || defined(SDL_PLATFORM_PS2) || defined(SDL_PLATFORM_PSP) + || defined(SDL_PLATFORM_3DS) || defined(SDL_PLATFORM_NGAGE) || defined(SDL_PLATFORM_PS2) || defined(SDL_PLATFORM_PSP) \ + || defined(SDL_PLATFORM_EMSCRIPTEN) /* platforms which main (-equivalent) can be implemented in plain C */ #include diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_messagebox.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_messagebox.h index 6aa3853..c626b22 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_messagebox.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_messagebox.h @@ -154,14 +154,14 @@ typedef struct SDL_MessageBoxData * other options. * \param buttonid the pointer to which user id of hit button should be * copied. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ShowSimpleMessageBox */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid); /** * Display a simple modal message box. @@ -196,14 +196,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_ShowMessageBox(const SDL_MessageBoxData *mes * \param title uTF-8 title text. * \param message uTF-8 message text. * \param window the parent window, or NULL for no parent. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ShowMessageBox */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowSimpleMessageBox(SDL_MessageBoxFlags flags, const char *title, const char *message, SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowSimpleMessageBox(SDL_MessageBoxFlags flags, const char *title, const char *message, SDL_Window *window); /* Ends C function definitions when using C++ */ diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_misc.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_misc.h index 09dec9e..23317e0 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_misc.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_misc.h @@ -62,12 +62,12 @@ extern "C" { * * \param url a valid URL/URI to open. Use `file:///full/path/to/file` for * local files, if supported. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_OpenURL(const char *url); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_OpenURL(const char *url); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_mouse.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_mouse.h index 4284ecc..90c8560 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_mouse.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_mouse.h @@ -38,9 +38,26 @@ extern "C" { #endif +/** + * This is a unique ID for a mouse for the time it is connected to the system, + * and is never reused for the lifetime of the application. + * + * If the mouse is disconnected and reconnected, it will get a new ID. + * + * The value 0 is an invalid ID. + * + * \since This datatype is available since SDL 3.0.0. + */ typedef Uint32 SDL_MouseID; -typedef struct SDL_Cursor SDL_Cursor; /**< Implementation dependent */ +/** + * The structure used to identify an SDL cursor. + * + * This is opaque data. + * + * \since This struct is available since SDL 3.0.0. + */ +typedef struct SDL_Cursor SDL_Cursor; /** * Cursor types for SDL_CreateSystemCursor(). @@ -278,33 +295,48 @@ extern SDL_DECLSPEC void SDLCALL SDL_WarpMouseInWindow(SDL_Window * window, * * \param x the x coordinate. * \param y the y coordinate. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_WarpMouseInWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_WarpMouseGlobal(float x, float y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WarpMouseGlobal(float x, float y); /** - * Set relative mouse mode. + * Set relative mouse mode for a window. * - * While the mouse is in relative mode, the cursor is hidden, the mouse - * position is constrained to the window, and SDL will report continuous - * relative mouse motion even if the mouse is at the edge of the window. + * While the window has focus and relative mouse mode is enabled, the cursor + * is hidden, the mouse position is constrained to the window, and SDL will + * report continuous relative mouse motion even if the mouse is at the edge of + * the window. * - * This function will flush any pending mouse motion. + * This function will flush any pending mouse motion for this window. * + * \param window the window to change. * \param enabled SDL_TRUE to enable relative mode, SDL_FALSE to disable. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * - * \sa SDL_GetRelativeMouseMode + * \sa SDL_GetWindowRelativeMouseMode */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRelativeMouseMode(SDL_bool enabled); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowRelativeMouseMode(SDL_Window *window, SDL_bool enabled); + +/** + * Query whether relative mouse mode is enabled for a window. + * + * \param window the window to query. + * \returns SDL_TRUE if relative mode is enabled for a window or SDL_FALSE + * otherwise. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SetWindowRelativeMouseMode + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowRelativeMouseMode(SDL_Window *window); /** * Capture the mouse and to track input outside an SDL window. @@ -321,7 +353,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRelativeMouseMode(SDL_bool enabled); * mouse while the user is dragging something, until the user releases a mouse * button. It is not recommended that you capture the mouse for long periods * of time, such as the entire time your app is running. For that, you should - * probably use SDL_SetRelativeMouseMode() or SDL_SetWindowMouseGrab(), + * probably use SDL_SetWindowRelativeMouseMode() or SDL_SetWindowMouseGrab(), * depending on your goals. * * While captured, mouse events still report coordinates relative to the @@ -343,25 +375,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRelativeMouseMode(SDL_bool enabled); * `SDL_HINT_MOUSE_AUTO_CAPTURE` hint to zero. * * \param enabled SDL_TRUE to enable capturing, SDL_FALSE to disable. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetGlobalMouseState */ -extern SDL_DECLSPEC int SDLCALL SDL_CaptureMouse(SDL_bool enabled); - -/** - * Query whether relative mouse mode is enabled. - * - * \returns SDL_TRUE if relative mode is enabled or SDL_FALSE otherwise. - * - * \since This function is available since SDL 3.0.0. - * - * \sa SDL_SetRelativeMouseMode - */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRelativeMouseMode(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CaptureMouse(SDL_bool enabled); /** * Create a cursor using the specified bitmap data and mask (in MSB format). @@ -419,8 +440,9 @@ extern SDL_DECLSPEC SDL_Cursor * SDLCALL SDL_CreateCursor(const Uint8 * data, * situations. For example, if the original surface is 32x32, then on a 2x * macOS display or 200% display scale on Windows, a 64x64 version of the * image will be used, if available. If a matching version of the image isn't - * available, the closest size image will be scaled to the appropriate size - * and be used instead. + * available, the closest larger size image will be downscaled to the + * appropriate size and be used instead, if available. Otherwise, the closest + * smaller image will be upscaled and be used instead. * * \param surface an SDL_Surface structure representing the cursor image. * \param hot_x the x position of the cursor hot spot. @@ -461,14 +483,14 @@ extern SDL_DECLSPEC SDL_Cursor * SDLCALL SDL_CreateSystemCursor(SDL_SystemCursor * this is desired for any reason. * * \param cursor a cursor to make active. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetCursor */ -extern SDL_DECLSPEC int SDLCALL SDL_SetCursor(SDL_Cursor *cursor); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetCursor(SDL_Cursor *cursor); /** * Get the active cursor. @@ -516,28 +538,28 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyCursor(SDL_Cursor *cursor); /** * Show the cursor. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CursorVisible * \sa SDL_HideCursor */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowCursor(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowCursor(void); /** * Hide the cursor. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CursorVisible * \sa SDL_ShowCursor */ -extern SDL_DECLSPEC int SDLCALL SDL_HideCursor(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HideCursor(void); /** * Return whether the cursor is currently being shown. diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_mutex.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_mutex.h index eea0030..3a7ce56 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_mutex.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_mutex.h @@ -115,16 +115,6 @@ extern "C" { #endif -/** - * Synchronization functions return this value if they time out. - * - * Not all functions _can_ time out; some will block indefinitely. - * - * \since This macro is available since SDL 3.0.0. - */ -#define SDL_MUTEX_TIMEDOUT 1 - - /** * \name Mutex functions */ @@ -194,25 +184,22 @@ extern SDL_DECLSPEC void SDLCALL SDL_LockMutex(SDL_Mutex *mutex) SDL_ACQUIRE(mut * Try to lock a mutex without blocking. * * This works just like SDL_LockMutex(), but if the mutex is not available, - * this function returns `SDL_MUTEX_TIMEDOUT` immediately. + * this function returns SDL_FALSE immediately. * * This technique is useful if you need exclusive access to a resource but * don't want to wait for it, and will return to it to try again later. * - * This function does not fail; if mutex is NULL, it will return 0 immediately - * having locked nothing. If the mutex is valid, this function will always - * either lock the mutex and return 0, or return SDL_MUTEX_TIMEOUT and lock - * nothing. + * This function returns SDL_TRUE if passed a NULL mutex. * * \param mutex the mutex to try to lock. - * \returns 0 or `SDL_MUTEX_TIMEDOUT`. + * \returns SDL_TRUE on success, SDL_FALSE if the mutex would block. * * \since This function is available since SDL 3.0.0. * * \sa SDL_LockMutex * \sa SDL_UnlockMutex */ -extern SDL_DECLSPEC int SDLCALL SDL_TryLockMutex(SDL_Mutex *mutex) SDL_TRY_ACQUIRE(0, mutex); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TryLockMutex(SDL_Mutex *mutex) SDL_TRY_ACQUIRE(0, mutex); /** * Unlock the mutex. @@ -278,19 +265,6 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyMutex(SDL_Mutex *mutex); */ typedef struct SDL_RWLock SDL_RWLock; -/* - * Synchronization functions return this value if they time out. - * - * Not all functions _can_ time out; some will block indefinitely. - * - * This symbol is just for clarity when dealing with SDL_RWLock - * functions; its value is equivalent to SDL_MUTEX_TIMEOUT. - * - * \since This macro is available since SDL 3.0.0. - */ -#define SDL_RWLOCK_TIMEDOUT SDL_MUTEX_TIMEDOUT - - /** * Create a new read/write lock. * @@ -405,7 +379,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_LockRWLockForWriting(SDL_RWLock *rwlock) SD * Try to lock a read/write lock _for reading_ without blocking. * * This works just like SDL_LockRWLockForReading(), but if the rwlock is not - * available, then this function returns `SDL_RWLOCK_TIMEDOUT` immediately. + * available, then this function returns SDL_FALSE immediately. * * This technique is useful if you need access to a resource but don't want to * wait for it, and will return to it to try again later. @@ -413,13 +387,10 @@ extern SDL_DECLSPEC void SDLCALL SDL_LockRWLockForWriting(SDL_RWLock *rwlock) SD * Trying to lock for read-only access can succeed if other threads are * holding read-only locks, as this won't prevent access. * - * This function does not fail; if rwlock is NULL, it will return 0 - * immediately having locked nothing. If rwlock is valid, this function will - * always either lock the rwlock and return 0, or return SDL_RWLOCK_TIMEOUT - * and lock nothing. + * This function returns SDL_TRUE if passed a NULL rwlock. * * \param rwlock the rwlock to try to lock. - * \returns 0 or `SDL_RWLOCK_TIMEDOUT`. + * \returns SDL_TRUE on success, SDL_FALSE if the lock would block. * * \since This function is available since SDL 3.0.0. * @@ -427,13 +398,13 @@ extern SDL_DECLSPEC void SDLCALL SDL_LockRWLockForWriting(SDL_RWLock *rwlock) SD * \sa SDL_TryLockRWLockForWriting * \sa SDL_UnlockRWLock */ -extern SDL_DECLSPEC int SDLCALL SDL_TryLockRWLockForReading(SDL_RWLock *rwlock) SDL_TRY_ACQUIRE_SHARED(0, rwlock); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TryLockRWLockForReading(SDL_RWLock *rwlock) SDL_TRY_ACQUIRE_SHARED(0, rwlock); /** * Try to lock a read/write lock _for writing_ without blocking. * * This works just like SDL_LockRWLockForWriting(), but if the rwlock is not - * available, this function returns `SDL_RWLOCK_TIMEDOUT` immediately. + * available, then this function returns SDL_FALSE immediately. * * This technique is useful if you need exclusive access to a resource but * don't want to wait for it, and will return to it to try again later. @@ -446,13 +417,10 @@ extern SDL_DECLSPEC int SDLCALL SDL_TryLockRWLockForReading(SDL_RWLock *rwlock) * read-only lock. Doing so results in undefined behavior. Unlock the * read-only lock before requesting a write lock. * - * This function does not fail; if rwlock is NULL, it will return 0 - * immediately having locked nothing. If rwlock is valid, this function will - * always either lock the rwlock and return 0, or return SDL_RWLOCK_TIMEOUT - * and lock nothing. + * This function returns SDL_TRUE if passed a NULL rwlock. * * \param rwlock the rwlock to try to lock. - * \returns 0 or `SDL_RWLOCK_TIMEDOUT`. + * \returns SDL_TRUE on success, SDL_FALSE if the lock would block. * * \since This function is available since SDL 3.0.0. * @@ -460,7 +428,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_TryLockRWLockForReading(SDL_RWLock *rwlock) * \sa SDL_TryLockRWLockForReading * \sa SDL_UnlockRWLock */ -extern SDL_DECLSPEC int SDLCALL SDL_TryLockRWLockForWriting(SDL_RWLock *rwlock) SDL_TRY_ACQUIRE(0, rwlock); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TryLockRWLockForWriting(SDL_RWLock *rwlock) SDL_TRY_ACQUIRE(0, rwlock); /** * Unlock the read/write lock. @@ -569,17 +537,14 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroySemaphore(SDL_Semaphore *sem); /** * Wait until a semaphore has a positive value and then decrements it. * - * This function suspends the calling thread until either the semaphore - * pointed to by `sem` has a positive value or the call is interrupted by a - * signal or error. If the call is successful it will atomically decrement the - * semaphore value. + * This function suspends the calling thread until the semaphore pointed to by + * `sem` has a positive value, and then atomically decrement the semaphore + * value. * * This function is the equivalent of calling SDL_WaitSemaphoreTimeout() with * a time length of -1. * * \param sem the semaphore wait on. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -587,7 +552,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroySemaphore(SDL_Semaphore *sem); * \sa SDL_TryWaitSemaphore * \sa SDL_WaitSemaphoreTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_WaitSemaphore(SDL_Semaphore *sem); +extern SDL_DECLSPEC void SDLCALL SDL_WaitSemaphore(SDL_Semaphore *sem); /** * See if a semaphore has a positive value and decrement it if it does. @@ -595,12 +560,10 @@ extern SDL_DECLSPEC int SDLCALL SDL_WaitSemaphore(SDL_Semaphore *sem); * This function checks to see if the semaphore pointed to by `sem` has a * positive value and atomically decrements the semaphore value if it does. If * the semaphore doesn't have a positive value, the function immediately - * returns SDL_MUTEX_TIMEDOUT. + * returns SDL_FALSE. * * \param sem the semaphore to wait on. - * \returns 0 if the wait succeeds, `SDL_MUTEX_TIMEDOUT` if the wait would - * block, or a negative error code on failure; call SDL_GetError() - * for more information. + * \returns SDL_TRUE if the wait succeeds, SDL_FALSE if the wait would block. * * \since This function is available since SDL 3.0.0. * @@ -608,21 +571,19 @@ extern SDL_DECLSPEC int SDLCALL SDL_WaitSemaphore(SDL_Semaphore *sem); * \sa SDL_WaitSemaphore * \sa SDL_WaitSemaphoreTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_TryWaitSemaphore(SDL_Semaphore *sem); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TryWaitSemaphore(SDL_Semaphore *sem); /** * Wait until a semaphore has a positive value and then decrements it. * * This function suspends the calling thread until either the semaphore - * pointed to by `sem` has a positive value, the call is interrupted by a - * signal or error, or the specified time has elapsed. If the call is - * successful it will atomically decrement the semaphore value. + * pointed to by `sem` has a positive value or the specified time has elapsed. + * If the call is successful it will atomically decrement the semaphore value. * * \param sem the semaphore to wait on. - * \param timeoutMS the length of the timeout, in milliseconds. - * \returns 0 if the wait succeeds, `SDL_MUTEX_TIMEDOUT` if the wait does not - * succeed in the allotted time, or a negative error code on failure; - * call SDL_GetError() for more information. + * \param timeoutMS the length of the timeout, in milliseconds, or -1 to wait + * indefinitely. + * \returns SDL_TRUE if the wait succeeds or SDL_FALSE if the wait times out. * * \since This function is available since SDL 3.0.0. * @@ -630,14 +591,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_TryWaitSemaphore(SDL_Semaphore *sem); * \sa SDL_TryWaitSemaphore * \sa SDL_WaitSemaphore */ -extern SDL_DECLSPEC int SDLCALL SDL_WaitSemaphoreTimeout(SDL_Semaphore *sem, Sint32 timeoutMS); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WaitSemaphoreTimeout(SDL_Semaphore *sem, Sint32 timeoutMS); /** * Atomically increment a semaphore's value and wake waiting threads. * * \param sem the semaphore to increment. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -645,7 +604,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_WaitSemaphoreTimeout(SDL_Semaphore *sem, Sin * \sa SDL_WaitSemaphore * \sa SDL_WaitSemaphoreTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_SignalSemaphore(SDL_Semaphore *sem); +extern SDL_DECLSPEC void SDLCALL SDL_SignalSemaphore(SDL_Semaphore *sem); /** * Get the current value of a semaphore. @@ -711,8 +670,6 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyCondition(SDL_Condition *cond); * Restart one of the threads that are waiting on the condition variable. * * \param cond the condition variable to signal. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -722,14 +679,12 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyCondition(SDL_Condition *cond); * \sa SDL_WaitCondition * \sa SDL_WaitConditionTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_SignalCondition(SDL_Condition *cond); +extern SDL_DECLSPEC void SDLCALL SDL_SignalCondition(SDL_Condition *cond); /** * Restart all threads that are waiting on the condition variable. * * \param cond the condition variable to signal. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -739,7 +694,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SignalCondition(SDL_Condition *cond); * \sa SDL_WaitCondition * \sa SDL_WaitConditionTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_BroadcastCondition(SDL_Condition *cond); +extern SDL_DECLSPEC void SDLCALL SDL_BroadcastCondition(SDL_Condition *cond); /** * Wait until a condition variable is signaled. @@ -758,8 +713,6 @@ extern SDL_DECLSPEC int SDLCALL SDL_BroadcastCondition(SDL_Condition *cond); * * \param cond the condition variable to wait on. * \param mutex the mutex used to coordinate thread access. - * \returns 0 when it is signaled or a negative error code on failure; call - * SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -769,7 +722,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BroadcastCondition(SDL_Condition *cond); * \sa SDL_SignalCondition * \sa SDL_WaitConditionTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_WaitCondition(SDL_Condition *cond, SDL_Mutex *mutex); +extern SDL_DECLSPEC void SDLCALL SDL_WaitCondition(SDL_Condition *cond, SDL_Mutex *mutex); /** * Wait until a condition variable is signaled or a certain time has passed. @@ -788,9 +741,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_WaitCondition(SDL_Condition *cond, SDL_Mutex * \param mutex the mutex used to coordinate thread access. * \param timeoutMS the maximum time to wait, in milliseconds, or -1 to wait * indefinitely. - * \returns 0 if the condition variable is signaled, `SDL_MUTEX_TIMEDOUT` if - * the condition is not signaled in the allotted time, or a negative - * error code on failure; call SDL_GetError() for more information. + * \returns SDL_TRUE if the condition variable is signaled, SDL_FALSE if the + * condition is not signaled in the allotted time. * * \threadsafety It is safe to call this function from any thread. * @@ -800,7 +752,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_WaitCondition(SDL_Condition *cond, SDL_Mutex * \sa SDL_SignalCondition * \sa SDL_WaitCondition */ -extern SDL_DECLSPEC int SDLCALL SDL_WaitConditionTimeout(SDL_Condition *cond, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WaitConditionTimeout(SDL_Condition *cond, SDL_Mutex *mutex, Sint32 timeoutMS); /* @} *//* Condition variable functions */ diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_oldnames.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_oldnames.h index cd895d5..02c881c 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_oldnames.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_oldnames.h @@ -40,7 +40,9 @@ /* ##SDL_atomic.h */ #define SDL_AtomicCAS SDL_AtomicCompareAndSwap #define SDL_AtomicCASPtr SDL_AtomicCompareAndSwapPointer +#define SDL_AtomicGetPtr SDL_AtomicGetPointer #define SDL_AtomicLock SDL_LockSpinlock +#define SDL_AtomicSetPtr SDL_AtomicSetPointer #define SDL_AtomicTryLock SDL_TryLockSpinlock #define SDL_AtomicUnlock SDL_UnlockSpinlock #define SDL_atomic_t SDL_AtomicInt @@ -116,6 +118,7 @@ #define SDL_DROPCOMPLETE SDL_EVENT_DROP_COMPLETE #define SDL_DROPFILE SDL_EVENT_DROP_FILE #define SDL_DROPTEXT SDL_EVENT_DROP_TEXT +#define SDL_DelEventWatch SDL_RemoveEventWatch #define SDL_FINGERDOWN SDL_EVENT_FINGER_DOWN #define SDL_FINGERMOTION SDL_EVENT_FINGER_MOTION #define SDL_FINGERUP SDL_EVENT_FINGER_UP @@ -296,6 +299,7 @@ #define SDL_MouseIsHaptic SDL_IsMouseHaptic /* ##SDL_hints.h */ +#define SDL_DelHintCallback SDL_RemoveHintCallback #define SDL_HINT_ALLOW_TOPMOST SDL_HINT_WINDOW_ALLOW_TOPMOST #define SDL_HINT_DIRECTINPUT_ENABLED SDL_HINT_JOYSTICK_DIRECTINPUT #define SDL_HINT_GDK_TEXTINPUT_DEFAULT SDL_HINT_GDK_TEXTINPUT_DEFAULT_TEXT @@ -523,7 +527,6 @@ #define SDL_RenderSetVSync SDL_SetRenderVSync #define SDL_RenderSetViewport SDL_SetRenderViewport #define SDL_RenderWindowToLogical SDL_RenderCoordinatesFromWindow -#define SDL_ScaleModeBest SDL_SCALEMODE_BEST #define SDL_ScaleModeLinear SDL_SCALEMODE_LINEAR #define SDL_ScaleModeNearest SDL_SCALEMODE_NEAREST @@ -660,7 +663,9 @@ /* ##SDL_atomic.h */ #define SDL_AtomicCAS SDL_AtomicCAS_renamed_SDL_AtomicCompareAndSwap #define SDL_AtomicCASPtr SDL_AtomicCASPtr_renamed_SDL_AtomicCompareAndSwapPointer +#define SDL_AtomicGetPtr SDL_AtomicGetPtr_renamed_SDL_AtomicGetPointer #define SDL_AtomicLock SDL_AtomicLock_renamed_SDL_LockSpinlock +#define SDL_AtomicSetPtr SDL_AtomicSetPtr_renamed_SDL_AtomicSetPointer #define SDL_AtomicTryLock SDL_AtomicTryLock_renamed_SDL_TryLockSpinlock #define SDL_AtomicUnlock SDL_AtomicUnlock_renamed_SDL_UnlockSpinlock #define SDL_atomic_t SDL_atomic_t_renamed_SDL_AtomicInt @@ -736,6 +741,7 @@ #define SDL_DROPCOMPLETE SDL_DROPCOMPLETE_renamed_SDL_EVENT_DROP_COMPLETE #define SDL_DROPFILE SDL_DROPFILE_renamed_SDL_EVENT_DROP_FILE #define SDL_DROPTEXT SDL_DROPTEXT_renamed_SDL_EVENT_DROP_TEXT +#define SDL_DelEventWatch SDL_DelEventWatch_renamed_SDL_RemoveEventWatch #define SDL_FINGERDOWN SDL_FINGERDOWN_renamed_SDL_EVENT_FINGER_DOWN #define SDL_FINGERMOTION SDL_FINGERMOTION_renamed_SDL_EVENT_FINGER_MOTION #define SDL_FINGERUP SDL_FINGERUP_renamed_SDL_EVENT_FINGER_UP @@ -917,6 +923,7 @@ #define SDL_MouseIsHaptic SDL_MouseIsHaptic_renamed_SDL_IsMouseHaptic /* ##SDL_hints.h */ +#define SDL_DelHintCallback SDL_DelHintCallback_renamed_SDL_RemoveHintCallback #define SDL_HINT_ALLOW_TOPMOST SDL_HINT_ALLOW_TOPMOST_renamed_SDL_HINT_WINDOW_ALLOW_TOPMOST #define SDL_HINT_DIRECTINPUT_ENABLED SDL_HINT_DIRECTINPUT_ENABLED_renamed_SDL_HINT_JOYSTICK_DIRECTINPUT #define SDL_HINT_GDK_TEXTINPUT_DEFAULT SDL_HINT_GDK_TEXTINPUT_DEFAULT_renamed_SDL_HINT_GDK_TEXTINPUT_DEFAULT_TEXT @@ -1144,7 +1151,6 @@ #define SDL_RenderSetVSync SDL_RenderSetVSync_renamed_SDL_SetRenderVSync #define SDL_RenderSetViewport SDL_RenderSetViewport_renamed_SDL_SetRenderViewport #define SDL_RenderWindowToLogical SDL_RenderWindowToLogical_renamed_SDL_RenderCoordinatesFromWindow -#define SDL_ScaleModeBest SDL_ScaleModeBest_renamed_SDL_SCALEMODE_BEST #define SDL_ScaleModeLinear SDL_ScaleModeLinear_renamed_SDL_SCALEMODE_LINEAR #define SDL_ScaleModeNearest SDL_ScaleModeNearest_renamed_SDL_SCALEMODE_NEAREST diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_opengl_glext.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_opengl_glext.h index ff6ad12..fa0f6c2 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_opengl_glext.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_opengl_glext.h @@ -9807,15 +9807,15 @@ typedef void (APIENTRYP PFNGLUPLOADGPUMASKNVXPROC) (GLbitfield mask); typedef void (APIENTRYP PFNGLMULTICASTVIEWPORTARRAYVNVXPROC) (GLuint gpu, GLuint first, GLsizei count, const GLfloat *v); typedef void (APIENTRYP PFNGLMULTICASTVIEWPORTPOSITIONWSCALENVXPROC) (GLuint gpu, GLuint index, GLfloat xcoeff, GLfloat ycoeff); typedef void (APIENTRYP PFNGLMULTICASTSCISSORARRAYVNVXPROC) (GLuint gpu, GLuint first, GLsizei count, const GLint *v); -typedef GLuint (APIENTRYP PFNGLASYNCCOPYBUFFERSUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); -typedef GLuint (APIENTRYP PFNGLASYNCCOPYIMAGESUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); +typedef GLuint (APIENTRYP PFNGLASYNCCOPYBUFFERSUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGPU, GLbitfield writeGPUMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); +typedef GLuint (APIENTRYP PFNGLASYNCCOPYIMAGESUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGPU, GLbitfield dstGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); #ifdef GL_GLEXT_PROTOTYPES -GLAPI void APIENTRY glUploadGpuMaskNVX (GLbitfield mask); +GLAPI void APIENTRY glUploadGPUMaskNVX (GLbitfield mask); GLAPI void APIENTRY glMulticastViewportArrayvNVX (GLuint gpu, GLuint first, GLsizei count, const GLfloat *v); GLAPI void APIENTRY glMulticastViewportPositionWScaleNVX (GLuint gpu, GLuint index, GLfloat xcoeff, GLfloat ycoeff); GLAPI void APIENTRY glMulticastScissorArrayvNVX (GLuint gpu, GLuint first, GLsizei count, const GLint *v); -GLAPI GLuint APIENTRY glAsyncCopyBufferSubDataNVX (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); -GLAPI GLuint APIENTRY glAsyncCopyImageSubDataNVX (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); +GLAPI GLuint APIENTRY glAsyncCopyBufferSubDataNVX (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGPU, GLbitfield writeGPUMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); +GLAPI GLuint APIENTRY glAsyncCopyImageSubDataNVX (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGPU, GLbitfield dstGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); #endif #endif /* GL_NVX_gpu_multicast2 */ @@ -9824,11 +9824,11 @@ GLAPI GLuint APIENTRY glAsyncCopyImageSubDataNVX (GLsizei waitSemaphoreCount, co #define GL_LGPU_SEPARATE_STORAGE_BIT_NVX 0x0800 #define GL_MAX_LGPU_GPUS_NVX 0x92BA typedef void (APIENTRYP PFNGLLGPUNAMEDBUFFERSUBDATANVXPROC) (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); -typedef void (APIENTRYP PFNGLLGPUCOPYIMAGESUBDATANVXPROC) (GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); +typedef void (APIENTRYP PFNGLLGPUCOPYIMAGESUBDATANVXPROC) (GLuint sourceGPU, GLbitfield destinationGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); typedef void (APIENTRYP PFNGLLGPUINTERLOCKNVXPROC) (void); #ifdef GL_GLEXT_PROTOTYPES GLAPI void APIENTRY glLGPUNamedBufferSubDataNVX (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); -GLAPI void APIENTRY glLGPUCopyImageSubDataNVX (GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); +GLAPI void APIENTRY glLGPUCopyImageSubDataNVX (GLuint sourceGPU, GLbitfield destinationGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); GLAPI void APIENTRY glLGPUInterlockNVX (void); #endif #endif /* GL_NVX_linked_gpu_multicast */ @@ -9836,13 +9836,13 @@ GLAPI void APIENTRY glLGPUInterlockNVX (void); #ifndef GL_NVX_progress_fence #define GL_NVX_progress_fence 1 typedef GLuint (APIENTRYP PFNGLCREATEPROGRESSFENCENVXPROC) (void); -typedef void (APIENTRYP PFNGLSIGNALSEMAPHOREUI64NVXPROC) (GLuint signalGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); -typedef void (APIENTRYP PFNGLWAITSEMAPHOREUI64NVXPROC) (GLuint waitGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); +typedef void (APIENTRYP PFNGLSIGNALSEMAPHOREUI64NVXPROC) (GLuint signalGPU, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); +typedef void (APIENTRYP PFNGLWAITSEMAPHOREUI64NVXPROC) (GLuint waitGPU, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); typedef void (APIENTRYP PFNGLCLIENTWAITSEMAPHOREUI64NVXPROC) (GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); #ifdef GL_GLEXT_PROTOTYPES GLAPI GLuint APIENTRY glCreateProgressFenceNVX (void); -GLAPI void APIENTRY glSignalSemaphoreui64NVX (GLuint signalGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); -GLAPI void APIENTRY glWaitSemaphoreui64NVX (GLuint waitGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); +GLAPI void APIENTRY glSignalSemaphoreui64NVX (GLuint signalGPU, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); +GLAPI void APIENTRY glWaitSemaphoreui64NVX (GLuint waitGPU, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); GLAPI void APIENTRY glClientWaitSemaphoreui64NVX (GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); #endif #endif /* GL_NVX_progress_fence */ @@ -10433,25 +10433,25 @@ GLAPI void APIENTRY glFramebufferTextureFaceEXT (GLenum target, GLenum attachmen #define GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV 0x9549 typedef void (APIENTRYP PFNGLRENDERGPUMASKNVPROC) (GLbitfield mask); typedef void (APIENTRYP PFNGLMULTICASTBUFFERSUBDATANVPROC) (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); -typedef void (APIENTRYP PFNGLMULTICASTCOPYBUFFERSUBDATANVPROC) (GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); -typedef void (APIENTRYP PFNGLMULTICASTCOPYIMAGESUBDATANVPROC) (GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); -typedef void (APIENTRYP PFNGLMULTICASTBLITFRAMEBUFFERNVPROC) (GLuint srcGpu, GLuint dstGpu, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +typedef void (APIENTRYP PFNGLMULTICASTCOPYBUFFERSUBDATANVPROC) (GLuint readGPU, GLbitfield writeGPUMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); +typedef void (APIENTRYP PFNGLMULTICASTCOPYIMAGESUBDATANVPROC) (GLuint srcGPU, GLbitfield dstGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); +typedef void (APIENTRYP PFNGLMULTICASTBLITFRAMEBUFFERNVPROC) (GLuint srcGPU, GLuint dstGPU, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); typedef void (APIENTRYP PFNGLMULTICASTFRAMEBUFFERSAMPLELOCATIONSFVNVPROC) (GLuint gpu, GLuint framebuffer, GLuint start, GLsizei count, const GLfloat *v); typedef void (APIENTRYP PFNGLMULTICASTBARRIERNVPROC) (void); -typedef void (APIENTRYP PFNGLMULTICASTWAITSYNCNVPROC) (GLuint signalGpu, GLbitfield waitGpuMask); +typedef void (APIENTRYP PFNGLMULTICASTWAITSYNCNVPROC) (GLuint signalGPU, GLbitfield waitGPUMask); typedef void (APIENTRYP PFNGLMULTICASTGETQUERYOBJECTIVNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLint *params); typedef void (APIENTRYP PFNGLMULTICASTGETQUERYOBJECTUIVNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLuint *params); typedef void (APIENTRYP PFNGLMULTICASTGETQUERYOBJECTI64VNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLint64 *params); typedef void (APIENTRYP PFNGLMULTICASTGETQUERYOBJECTUI64VNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLuint64 *params); #ifdef GL_GLEXT_PROTOTYPES -GLAPI void APIENTRY glRenderGpuMaskNV (GLbitfield mask); +GLAPI void APIENTRY glRenderGPUMaskNV (GLbitfield mask); GLAPI void APIENTRY glMulticastBufferSubDataNV (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); -GLAPI void APIENTRY glMulticastCopyBufferSubDataNV (GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); -GLAPI void APIENTRY glMulticastCopyImageSubDataNV (GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); -GLAPI void APIENTRY glMulticastBlitFramebufferNV (GLuint srcGpu, GLuint dstGpu, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +GLAPI void APIENTRY glMulticastCopyBufferSubDataNV (GLuint readGPU, GLbitfield writeGPUMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); +GLAPI void APIENTRY glMulticastCopyImageSubDataNV (GLuint srcGPU, GLbitfield dstGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); +GLAPI void APIENTRY glMulticastBlitFramebufferNV (GLuint srcGPU, GLuint dstGPU, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); GLAPI void APIENTRY glMulticastFramebufferSampleLocationsfvNV (GLuint gpu, GLuint framebuffer, GLuint start, GLsizei count, const GLfloat *v); GLAPI void APIENTRY glMulticastBarrierNV (void); -GLAPI void APIENTRY glMulticastWaitSyncNV (GLuint signalGpu, GLbitfield waitGpuMask); +GLAPI void APIENTRY glMulticastWaitSyncNV (GLuint signalGPU, GLbitfield waitGPUMask); GLAPI void APIENTRY glMulticastGetQueryObjectivNV (GLuint gpu, GLuint id, GLenum pname, GLint *params); GLAPI void APIENTRY glMulticastGetQueryObjectuivNV (GLuint gpu, GLuint id, GLenum pname, GLuint *params); GLAPI void APIENTRY glMulticastGetQueryObjecti64vNV (GLuint gpu, GLuint id, GLenum pname, GLint64 *params); diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_pen.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_pen.h index c02c008..cda4f0f 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_pen.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_pen.h @@ -22,56 +22,65 @@ /** * # CategoryPen * - * Include file for SDL pen event handling. + * SDL pen event handling. * - * This file describes operations for pressure-sensitive pen (stylus and/or - * eraser) handling, e.g., for input and drawing tablets or suitably equipped - * mobile / tablet devices. + * SDL provides an API for pressure-sensitive pen (stylus and/or eraser) + * handling, e.g., for input and drawing tablets or suitably equipped mobile / + * tablet devices. * - * To get started with pens: + * To get started with pens, simply handle SDL_EVENT_PEN_* events. When a pen + * starts providing input, SDL will assign it a unique SDL_PenID, which will + * remain for the life of the process, as long as the pen stays connected. * - * - Listen to SDL_PenMotionEvent and SDL_PenButtonEvent - * - To avoid treating pen events as mouse events, ignore SDL_MouseMotionEvent - * and SDL_MouseButtonEvent whenever `which` == SDL_PEN_MOUSEID. - * - * We primarily identify pens by SDL_PenID. The implementation makes a best - * effort to relate each SDL_PenID to the same physical device during a - * session. Formerly valid SDL_PenID values remain valid even if a device - * disappears. - * - * For identifying pens across sessions, the API provides the type SDL_GUID . + * Pens may provide more than simple touch input; they might have other axes, + * such as pressure, tilt, rotation, etc. */ #ifndef SDL_pen_h_ #define SDL_pen_h_ #include -#include -#include -#include /* Set up for C function definitions, even when using C++ */ #ifdef __cplusplus extern "C" { #endif -typedef Uint32 SDL_PenID; /**< SDL_PenIDs identify pens uniquely within a session */ +/** + * SDL pen instance IDs. + * + * Zero is used to signify an invalid/null device. + * + * These show up in pen events when SDL sees input from them. They remain + * consistent as long as SDL can recognize a tool to be the same pen; but if a + * pen physically leaves the area and returns, it might get a new ID. + * + * \since This datatype is available since SDL 3.0.0. + */ +typedef Uint32 SDL_PenID; -#define SDL_PEN_INVALID ((SDL_PenID)0) /**< Reserved invalid SDL_PenID is valid */ - -#define SDL_PEN_MOUSEID ((SDL_MouseID)-2) /**< Device ID for mouse events triggered by pen events */ - -#define SDL_PEN_INFO_UNKNOWN (-1) /**< Marks unknown information when querying the pen */ /** - * Pen axis indices + * Pen input flags, as reported by various pen events' `pen_state` field. * - * Below are the valid indices to the "axis" array from SDL_PenMotionEvent and - * SDL_PenButtonEvent. The axis indices form a contiguous range of ints from 0 - * to SDL_PEN_AXIS_LAST, inclusive. All "axis[]" entries are either normalised - * to 0..1 or report a (positive or negative) angle in degrees, with 0.0 - * representing the centre. Not all pens/backends support all axes: - * unsupported entries are always "0.0f". + * \since This datatype is available since SDL 3.0.0. + */ +typedef Uint32 SDL_PenInputFlags; +#define SDL_PEN_INPUT_DOWN (1u << 0) /**< & to see if pen is pressed down */ +#define SDL_PEN_INPUT_BUTTON_1 (1u << 1) /**< & to see if button 1 is pressed */ +#define SDL_PEN_INPUT_BUTTON_2 (1u << 2) /**< & to see if button 2 is pressed */ +#define SDL_PEN_INPUT_BUTTON_3 (1u << 3) /**< & to see if button 3 is pressed */ +#define SDL_PEN_INPUT_BUTTON_4 (1u << 4) /**< & to see if button 4 is pressed */ +#define SDL_PEN_INPUT_BUTTON_5 (1u << 5) /**< & to see if button 5 is pressed */ +#define SDL_PEN_INPUT_ERASER_TIP (1u << 30) /**< & to see if eraser tip is used */ + +/** + * Pen axis indices. + * + * These are the valid values for the `axis` field in SDL_PenAxisEvent. All + * axes are either normalised to 0..1 or report a (positive or negative) angle + * in degrees, with 0.0 representing the centre. Not all pens/backends support + * all axes: unsupported axes are always zero. * * To convert angles for tilt and rotation into vector representation, use * SDL_sinf on the XTILT, YTILT, or ROTATION component, for example: @@ -82,200 +91,18 @@ typedef Uint32 SDL_PenID; /**< SDL_PenIDs identify pens uniquely within a sessio */ typedef enum SDL_PenAxis { - SDL_PEN_AXIS_PRESSURE = 0, /**< Pen pressure. Unidirectional: 0..1.0 */ - SDL_PEN_AXIS_XTILT, /**< Pen horizontal tilt angle. Bidirectional: -90.0..90.0 (left-to-right). - The physical max/min tilt may be smaller than -90.0 / 90.0, cf. SDL_PenCapabilityInfo */ - SDL_PEN_AXIS_YTILT, /**< Pen vertical tilt angle. Bidirectional: -90.0..90.0 (top-to-down). - The physical max/min tilt may be smaller than -90.0 / 90.0, cf. SDL_PenCapabilityInfo */ - SDL_PEN_AXIS_DISTANCE, /**< Pen distance to drawing surface. Unidirectional: 0.0..1.0 */ - SDL_PEN_AXIS_ROTATION, /**< Pen barrel rotation. Bidirectional: -180..179.9 (clockwise, 0 is facing up, -180.0 is facing down). */ - SDL_PEN_AXIS_SLIDER, /**< Pen finger wheel or slider (e.g., Airbrush Pen). Unidirectional: 0..1.0 */ - SDL_PEN_NUM_AXES, /**< Last valid axis index */ - SDL_PEN_AXIS_LAST = SDL_PEN_NUM_AXES - 1 /**< Last axis index plus 1 */ + SDL_PEN_AXIS_PRESSURE, /**< Pen pressure. Unidirectional: 0 to 1.0 */ + SDL_PEN_AXIS_XTILT, /**< Pen horizontal tilt angle. Bidirectional: -90.0 to 90.0 (left-to-right). + The physical max/min tilt may be smaller than -90.0 / 90.0, check SDL_PenCapabilityInfo */ + SDL_PEN_AXIS_YTILT, /**< Pen vertical tilt angle. Bidirectional: -90.0 to 90.0 (top-to-down). + The physical max/min tilt may be smaller than -90.0 / 90.0 check SDL_PenCapabilityInfo */ + SDL_PEN_AXIS_DISTANCE, /**< Pen distance to drawing surface. Unidirectional: 0.0 to 1.0 */ + SDL_PEN_AXIS_ROTATION, /**< Pen barrel rotation. Bidirectional: -180 to 179.9 (clockwise, 0 is facing up, -180.0 is facing down). */ + SDL_PEN_AXIS_SLIDER, /**< Pen finger wheel or slider (e.g., Airbrush Pen). Unidirectional: 0 to 1.0 */ + SDL_PEN_AXIS_TANGENTIAL_PRESSURE, /**< Pressure from squeezing the pen ("barrel pressure"). */ + SDL_PEN_NUM_AXES /**< Total known pen axis types in this version of SDL. This number may grow in future releases! */ } SDL_PenAxis; -/* Pen flags. These share a bitmask space with SDL_BUTTON_LEFT and friends. */ -#define SDL_PEN_FLAG_DOWN_BIT_INDEX 13 /* Bit for storing that pen is touching the surface */ -#define SDL_PEN_FLAG_INK_BIT_INDEX 14 /* Bit for storing has-non-eraser-capability status */ -#define SDL_PEN_FLAG_ERASER_BIT_INDEX 15 /* Bit for storing is-eraser or has-eraser-capability property */ -#define SDL_PEN_FLAG_AXIS_BIT_OFFSET 16 /* Bit for storing has-axis-0 property */ - -#define SDL_PEN_CAPABILITY(capbit) (1ul << (capbit)) -#define SDL_PEN_AXIS_CAPABILITY(axis) SDL_PEN_CAPABILITY((axis) + SDL_PEN_FLAG_AXIS_BIT_OFFSET) - -/* Pen tips */ -#define SDL_PEN_TIP_INK SDL_PEN_FLAG_INK_BIT_INDEX /**< Regular pen tip (for drawing) touched the surface */ -#define SDL_PEN_TIP_ERASER SDL_PEN_FLAG_ERASER_BIT_INDEX /**< Eraser pen tip touched the surface */ - -/** - * Pen capabilities reported by SDL_GetPenCapabilities. - * - * \since This datatype is available since SDL 3.0.0. - */ -typedef Uint32 SDL_PenCapabilityFlags; - -#define SDL_PEN_DOWN_MASK SDL_PEN_CAPABILITY(SDL_PEN_FLAG_DOWN_BIT_INDEX) /**< Pen tip is currently touching the drawing surface. */ -#define SDL_PEN_INK_MASK SDL_PEN_CAPABILITY(SDL_PEN_FLAG_INK_BIT_INDEX) /**< Pen has a regular drawing tip (SDL_GetPenCapabilities). For events (SDL_PenButtonEvent, SDL_PenMotionEvent, SDL_GetPenStatus) this flag is mutually exclusive with SDL_PEN_ERASER_MASK . */ -#define SDL_PEN_ERASER_MASK SDL_PEN_CAPABILITY(SDL_PEN_FLAG_ERASER_BIT_INDEX) /**< Pen has an eraser tip (SDL_GetPenCapabilities) or is being used as eraser (SDL_PenButtonEvent , SDL_PenMotionEvent , SDL_GetPenStatus) */ -#define SDL_PEN_AXIS_PRESSURE_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_PRESSURE) /**< Pen provides pressure information in axis SDL_PEN_AXIS_PRESSURE */ -#define SDL_PEN_AXIS_XTILT_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_XTILT) /**< Pen provides horizontal tilt information in axis SDL_PEN_AXIS_XTILT */ -#define SDL_PEN_AXIS_YTILT_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_YTILT) /**< Pen provides vertical tilt information in axis SDL_PEN_AXIS_YTILT */ -#define SDL_PEN_AXIS_DISTANCE_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_DISTANCE) /**< Pen provides distance to drawing tablet in SDL_PEN_AXIS_DISTANCE */ -#define SDL_PEN_AXIS_ROTATION_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_ROTATION) /**< Pen provides barrel rotation information in axis SDL_PEN_AXIS_ROTATION */ -#define SDL_PEN_AXIS_SLIDER_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_SLIDER) /**< Pen provides slider / finger wheel or similar in axis SDL_PEN_AXIS_SLIDER */ -#define SDL_PEN_AXIS_BIDIRECTIONAL_MASKS (SDL_PEN_AXIS_XTILT_MASK | SDL_PEN_AXIS_YTILT_MASK) - -/** - * Pen types - * - * Some pens identify as a particular type of drawing device (e.g., an - * airbrush or a pencil). - * - * \since This enum is available since SDL 3.0.0 - */ -typedef enum SDL_PenSubtype -{ - SDL_PEN_TYPE_UNKNOWN = 0, - SDL_PEN_TYPE_ERASER = 1, /**< Eraser */ - SDL_PEN_TYPE_PEN, /**< Generic pen; this is the default. */ - SDL_PEN_TYPE_PENCIL, /**< Pencil */ - SDL_PEN_TYPE_BRUSH, /**< Brush-like device */ - SDL_PEN_TYPE_AIRBRUSH, /**< Airbrush device that "sprays" ink */ - SDL_PEN_TYPE_LAST = SDL_PEN_TYPE_AIRBRUSH /**< Last valid pen type */ -} SDL_PenSubtype; - - -/* Function prototypes */ - -/** - * Retrieves all pens that are connected to the system. - * - * Yields an array of SDL_PenID values. These identify and track pens - * throughout a session. To track pens across sessions (program restart), use - * SDL_GUID . - * - * \param count the number of pens in the array (number of array elements - * minus 1, i.e., not counting the terminator 0). - * \returns a 0 terminated array of SDL_PenID values, or NULL on failure. The - * array must be freed with SDL_free(). On a NULL return, - * SDL_GetError() is set. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_PenID * SDLCALL SDL_GetPens(int *count); - -/** - * Retrieves the pen's current status. - * - * If the pen is detached (cf. SDL_PenConnected), this operation may return - * default values. - * - * \param instance_id the pen to query. - * \param x out-mode parameter for pen x coordinate. May be NULL. - * \param y out-mode parameter for pen y coordinate. May be NULL. - * \param axes out-mode parameter for axis information. May be null. The axes - * are in the same order as SDL_PenAxis. - * \param num_axes maximum number of axes to write to "axes". - * \returns a bit mask with the current pen button states (SDL_BUTTON_LMASK - * etc.), possibly SDL_PEN_DOWN_MASK, and exactly one of - * SDL_PEN_INK_MASK or SDL_PEN_ERASER_MASK , or 0 on error (see - * SDL_GetError()). - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC Uint32 SDLCALL SDL_GetPenStatus(SDL_PenID instance_id, float *x, float *y, float *axes, size_t num_axes); - -/** - * Retrieves an SDL_PenID for the given SDL_GUID. - * - * \param guid a pen GUID. - * \returns a valid SDL_PenID, or SDL_PEN_INVALID if there is no matching - * SDL_PenID. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_PenID SDLCALL SDL_GetPenFromGUID(SDL_GUID guid); - -/** - * Retrieves the SDL_GUID for a given SDL_PenID. - * - * \param instance_id the pen to query. - * \returns the corresponding pen GUID; persistent across multiple sessions. - * If "instance_id" is SDL_PEN_INVALID, returns an all-zeroes GUID. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_GUID SDLCALL SDL_GetPenGUID(SDL_PenID instance_id); - -/** - * Checks whether a pen is still attached. - * - * If a pen is detached, it will not show up for SDL_GetPens(). Other - * operations will still be available but may return default values. - * - * \param instance_id a pen ID. - * \returns SDL_TRUE if "instance_id" is valid and the corresponding pen is - * attached, or SDL_FALSE otherwise. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PenConnected(SDL_PenID instance_id); - -/** - * Retrieves a human-readable description for a SDL_PenID. - * - * \param instance_id the pen to query. - * \returns a string that contains the name of the pen, intended for human - * consumption. The string might or might not be localised, depending - * on platform settings. It is not guaranteed to be unique; use - * SDL_GetPenGUID() for (best-effort) unique identifiers. The pointer - * is managed by the SDL pen subsystem and must not be deallocated. - * The pointer remains valid until SDL is shut down. Returns NULL on - * error (cf. SDL_GetError()). - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC const char * SDLCALL SDL_GetPenName(SDL_PenID instance_id); - -/** - * Pen capabilities, as reported by SDL_GetPenCapabilities() - * - * \since This struct is available since SDL 3.0.0. - */ -typedef struct SDL_PenCapabilityInfo -{ - float max_tilt; /**< Physical maximum tilt angle, for XTILT and YTILT, or SDL_PEN_INFO_UNKNOWN . Pens cannot typically tilt all the way to 90 degrees, so this value is usually less than 90.0. */ - Uint32 wacom_id; /**< For Wacom devices: wacom tool type ID, otherwise 0 (useful e.g. with libwacom) */ - Sint8 num_buttons; /**< Number of pen buttons (not counting the pen tip), or SDL_PEN_INFO_UNKNOWN */ -} SDL_PenCapabilityInfo; - -/** - * Retrieves capability flags for a given SDL_PenID. - * - * \param instance_id the pen to query. - * \param capabilities detail information about pen capabilities, such as the - * number of buttons. - * \returns a set of capability flags, cf. SDL_PEN_CAPABILITIES. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_PenCapabilityFlags SDLCALL SDL_GetPenCapabilities(SDL_PenID instance_id, SDL_PenCapabilityInfo *capabilities); - -/** - * Retrieves the pen type for a given SDL_PenID. - * - * \param instance_id the pen to query. - * \returns the corresponding pen type (cf. SDL_PenSubtype) or 0 on error. - * Note that the pen type does not dictate whether the pen tip is - * SDL_PEN_TIP_INK or SDL_PEN_TIP_ERASER; to determine whether a pen - * is being used for drawing or in eraser mode, check either the pen - * tip on SDL_EVENT_PEN_DOWN, or the flag SDL_PEN_ERASER_MASK in the - * pen state. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_PenSubtype SDLCALL SDL_GetPenType(SDL_PenID instance_id); - /* Ends C function definitions when using C++ */ #ifdef __cplusplus } diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_pixels.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_pixels.h index 851d595..3825dd5 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_pixels.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_pixels.h @@ -742,8 +742,8 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetPixelFormatName(SDL_PixelFormat * \param Gmask a pointer filled in with the green mask for the format. * \param Bmask a pointer filled in with the blue mask for the format. * \param Amask a pointer filled in with the alpha mask for the format. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -751,7 +751,7 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetPixelFormatName(SDL_PixelFormat * * \sa SDL_GetPixelFormatForMasks */ -extern SDL_DECLSPEC int SDLCALL SDL_GetMasksForPixelFormat(SDL_PixelFormat format, int *bpp, Uint32 *Rmask, Uint32 *Gmask, Uint32 *Bmask, Uint32 *Amask); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetMasksForPixelFormat(SDL_PixelFormat format, int *bpp, Uint32 *Rmask, Uint32 *Gmask, Uint32 *Bmask, Uint32 *Amask); /** * Convert a bpp value and RGBA masks to an enumerated pixel format. @@ -819,15 +819,15 @@ extern SDL_DECLSPEC SDL_Palette * SDLCALL SDL_CreatePalette(int ncolors); * \param colors an array of SDL_Color structures to copy into the palette. * \param firstcolor the index of the first palette entry to modify. * \param ncolors the number of entries to modify. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as long as * the palette is not modified or destroyed in another thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetPaletteColors(SDL_Palette *palette, const SDL_Color *colors, int firstcolor, int ncolors); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetPaletteColors(SDL_Palette *palette, const SDL_Color *colors, int firstcolor, int ncolors); /** * Free a palette created with SDL_CreatePalette(). @@ -874,6 +874,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyPalette(SDL_Palette *palette); * * \since This function is available since SDL 3.0.0. * + * \sa SDL_GetPixelFormatDetails * \sa SDL_GetRGB * \sa SDL_MapRGBA * \sa SDL_MapSurfaceRGB @@ -912,6 +913,7 @@ extern SDL_DECLSPEC Uint32 SDLCALL SDL_MapRGB(const SDL_PixelFormatDetails *form * * \since This function is available since SDL 3.0.0. * + * \sa SDL_GetPixelFormatDetails * \sa SDL_GetRGBA * \sa SDL_MapRGB * \sa SDL_MapSurfaceRGBA @@ -939,6 +941,7 @@ extern SDL_DECLSPEC Uint32 SDLCALL SDL_MapRGBA(const SDL_PixelFormatDetails *for * * \since This function is available since SDL 3.0.0. * + * \sa SDL_GetPixelFormatDetails * \sa SDL_GetRGBA * \sa SDL_MapRGB * \sa SDL_MapRGBA @@ -970,6 +973,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_GetRGB(Uint32 pixel, const SDL_PixelFormatD * * \since This function is available since SDL 3.0.0. * + * \sa SDL_GetPixelFormatDetails * \sa SDL_GetRGB * \sa SDL_MapRGB * \sa SDL_MapRGBA diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_properties.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_properties.h index b3e061a..c3a2c82 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_properties.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_properties.h @@ -116,14 +116,14 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_CreateProperties(void); * * \param src the properties to copy. * \param dst the destination properties. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_CopyProperties(SDL_PropertiesID src, SDL_PropertiesID dst); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CopyProperties(SDL_PropertiesID src, SDL_PropertiesID dst); /** * Lock a group of properties. @@ -138,8 +138,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_CopyProperties(SDL_PropertiesID src, SDL_Pro * thread. * * \param props the properties to lock. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -147,7 +147,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_CopyProperties(SDL_PropertiesID src, SDL_Pro * * \sa SDL_UnlockProperties */ -extern SDL_DECLSPEC int SDLCALL SDL_LockProperties(SDL_PropertiesID props); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LockProperties(SDL_PropertiesID props); /** * Unlock a group of properties. @@ -204,8 +204,8 @@ typedef void (SDLCALL *SDL_CleanupPropertyCallback)(void *userdata, void *value) * \param cleanup the function to call when this property is deleted, or NULL * if no cleanup is necessary. * \param userdata a pointer that is passed to the cleanup function. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -215,7 +215,7 @@ typedef void (SDLCALL *SDL_CleanupPropertyCallback)(void *userdata, void *value) * \sa SDL_SetPointerProperty * \sa SDL_CleanupPropertyCallback */ -extern SDL_DECLSPEC int SDLCALL SDL_SetPointerPropertyWithCleanup(SDL_PropertiesID props, const char *name, void *value, SDL_CleanupPropertyCallback cleanup, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetPointerPropertyWithCleanup(SDL_PropertiesID props, const char *name, void *value, SDL_CleanupPropertyCallback cleanup, void *userdata); /** * Set a pointer property in a group of properties. @@ -223,8 +223,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetPointerPropertyWithCleanup(SDL_Properties * \param props the properties to modify. * \param name the name of the property to modify. * \param value the new value of the property, or NULL to delete the property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -238,7 +238,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetPointerPropertyWithCleanup(SDL_Properties * \sa SDL_SetPointerPropertyWithCleanup * \sa SDL_SetStringProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetPointerProperty(SDL_PropertiesID props, const char *name, void *value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetPointerProperty(SDL_PropertiesID props, const char *name, void *value); /** * Set a string property in a group of properties. @@ -249,8 +249,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetPointerProperty(SDL_PropertiesID props, c * \param props the properties to modify. * \param name the name of the property to modify. * \param value the new value of the property, or NULL to delete the property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -258,7 +258,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetPointerProperty(SDL_PropertiesID props, c * * \sa SDL_GetStringProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetStringProperty(SDL_PropertiesID props, const char *name, const char *value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetStringProperty(SDL_PropertiesID props, const char *name, const char *value); /** * Set an integer property in a group of properties. @@ -266,8 +266,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetStringProperty(SDL_PropertiesID props, co * \param props the properties to modify. * \param name the name of the property to modify. * \param value the new value of the property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -275,7 +275,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetStringProperty(SDL_PropertiesID props, co * * \sa SDL_GetNumberProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetNumberProperty(SDL_PropertiesID props, const char *name, Sint64 value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetNumberProperty(SDL_PropertiesID props, const char *name, Sint64 value); /** * Set a floating point property in a group of properties. @@ -283,8 +283,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetNumberProperty(SDL_PropertiesID props, co * \param props the properties to modify. * \param name the name of the property to modify. * \param value the new value of the property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -292,7 +292,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetNumberProperty(SDL_PropertiesID props, co * * \sa SDL_GetFloatProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetFloatProperty(SDL_PropertiesID props, const char *name, float value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetFloatProperty(SDL_PropertiesID props, const char *name, float value); /** * Set a boolean property in a group of properties. @@ -300,8 +300,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetFloatProperty(SDL_PropertiesID props, con * \param props the properties to modify. * \param name the name of the property to modify. * \param value the new value of the property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -309,7 +309,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetFloatProperty(SDL_PropertiesID props, con * * \sa SDL_GetBooleanProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetBooleanProperty(SDL_PropertiesID props, const char *name, SDL_bool value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetBooleanProperty(SDL_PropertiesID props, const char *name, SDL_bool value); /** * Return whether a property exists in a group of properties. @@ -470,14 +470,14 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetBooleanProperty(SDL_PropertiesID pro * * \param props the properties to modify. * \param name the name of the property to clear. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearProperty(SDL_PropertiesID props, const char *name); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearProperty(SDL_PropertiesID props, const char *name); /** * A callback used to enumerate all the properties in a group of properties. @@ -507,14 +507,14 @@ typedef void (SDLCALL *SDL_EnumeratePropertiesCallback)(void *userdata, SDL_Prop * \param props the properties to query. * \param callback the function to call for each property. * \param userdata a pointer that is passed to `callback`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_EnumerateProperties(SDL_PropertiesID props, SDL_EnumeratePropertiesCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_EnumerateProperties(SDL_PropertiesID props, SDL_EnumeratePropertiesCallback callback, void *userdata); /** * Destroy a group of properties. diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_rect.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_rect.h index 0583300..ea97df9 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_rect.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_rect.h @@ -221,8 +221,7 @@ SDL_FORCE_INLINE SDL_bool SDL_RectsEqual(const SDL_Rect *a, const SDL_Rect *b) * * \sa SDL_GetRectIntersection */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersection(const SDL_Rect * A, - const SDL_Rect * B); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersection(const SDL_Rect *A, const SDL_Rect *B); /** * Calculate the intersection of two rectangles. @@ -239,9 +238,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersection(const SDL_Rect * A, * * \sa SDL_HasRectIntersection */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersection(const SDL_Rect * A, - const SDL_Rect * B, - SDL_Rect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersection(const SDL_Rect *A, const SDL_Rect *B, SDL_Rect *result); /** * Calculate the union of two rectangles. @@ -250,14 +247,12 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersection(const SDL_Rect * A, * \param B an SDL_Rect structure representing the second rectangle. * \param result an SDL_Rect structure filled in with the union of rectangles * `A` and `B`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRectUnion(const SDL_Rect * A, - const SDL_Rect * B, - SDL_Rect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectUnion(const SDL_Rect *A, const SDL_Rect *B, SDL_Rect *result); /** * Calculate a minimal rectangle enclosing a set of points. @@ -276,10 +271,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRectUnion(const SDL_Rect * A, * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPoints(const SDL_Point * points, - int count, - const SDL_Rect * clip, - SDL_Rect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPoints(const SDL_Point *points, int count, const SDL_Rect *clip, SDL_Rect *result); /** * Calculate the intersection of a rectangle and line segment. @@ -299,10 +291,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPoints(const SDL_Point * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectAndLineIntersection(const SDL_Rect * - rect, int *X1, - int *Y1, int *X2, - int *Y2); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectAndLineIntersection(const SDL_Rect *rect, int *X1, int *Y1, int *X2, int *Y2); /* SDL_FRect versions... */ @@ -435,8 +424,7 @@ SDL_FORCE_INLINE SDL_bool SDL_RectsEqualFloat(const SDL_FRect *a, const SDL_FRec * * \sa SDL_GetRectIntersection */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersectionFloat(const SDL_FRect * A, - const SDL_FRect * B); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersectionFloat(const SDL_FRect *A, const SDL_FRect *B); /** * Calculate the intersection of two rectangles with float precision. @@ -453,9 +441,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersectionFloat(const SDL_FRec * * \sa SDL_HasRectIntersectionFloat */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersectionFloat(const SDL_FRect * A, - const SDL_FRect * B, - SDL_FRect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersectionFloat(const SDL_FRect *A, const SDL_FRect *B, SDL_FRect *result); /** * Calculate the union of two rectangles with float precision. @@ -464,14 +450,12 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersectionFloat(const SDL_FRec * \param B an SDL_FRect structure representing the second rectangle. * \param result an SDL_FRect structure filled in with the union of rectangles * `A` and `B`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRectUnionFloat(const SDL_FRect * A, - const SDL_FRect * B, - SDL_FRect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectUnionFloat(const SDL_FRect *A, const SDL_FRect *B, SDL_FRect *result); /** * Calculate a minimal rectangle enclosing a set of points with float @@ -491,10 +475,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRectUnionFloat(const SDL_FRect * A, * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPointsFloat(const SDL_FPoint * points, - int count, - const SDL_FRect * clip, - SDL_FRect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPointsFloat(const SDL_FPoint *points, int count, const SDL_FRect *clip, SDL_FRect *result); /** * Calculate the intersection of a rectangle and line segment with float @@ -515,10 +496,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPointsFloat(const SDL_F * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectAndLineIntersectionFloat(const SDL_FRect * - rect, float *X1, - float *Y1, float *X2, - float *Y2); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectAndLineIntersectionFloat(const SDL_FRect *rect, float *X1, float *Y1, float *X2, float *Y2); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_render.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_render.h index 69bf515..706308c 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_render.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_render.h @@ -133,8 +133,7 @@ typedef struct SDL_Texture SDL_Texture; * * There may be none if SDL was compiled without render support. * - * \returns a number >= 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns the number of built in render drivers. * * \since This function is available since SDL 3.0.0. * @@ -175,15 +174,15 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetRenderDriver(int index); * SDL_CreateWindow()). * \param window a pointer filled with the window, or NULL on error. * \param renderer a pointer filled with the renderer, or NULL on error. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CreateRenderer * \sa SDL_CreateWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_CreateWindowAndRenderer(const char *title, int width, int height, SDL_WindowFlags window_flags, SDL_Window **window, SDL_Renderer **renderer); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CreateWindowAndRenderer(const char *title, int width, int height, SDL_WindowFlags window_flags, SDL_Window **window, SDL_Renderer **renderer); /** * Create a 2D rendering context for a window. @@ -266,17 +265,17 @@ extern SDL_DECLSPEC SDL_Renderer * SDLCALL SDL_CreateRenderer(SDL_Window *window */ extern SDL_DECLSPEC SDL_Renderer * SDLCALL SDL_CreateRendererWithProperties(SDL_PropertiesID props); -#define SDL_PROP_RENDERER_CREATE_NAME_STRING "name" -#define SDL_PROP_RENDERER_CREATE_WINDOW_POINTER "window" -#define SDL_PROP_RENDERER_CREATE_SURFACE_POINTER "surface" -#define SDL_PROP_RENDERER_CREATE_OUTPUT_COLORSPACE_NUMBER "output_colorspace" -#define SDL_PROP_RENDERER_CREATE_PRESENT_VSYNC_NUMBER "present_vsync" -#define SDL_PROP_RENDERER_CREATE_VULKAN_INSTANCE_POINTER "vulkan.instance" -#define SDL_PROP_RENDERER_CREATE_VULKAN_SURFACE_NUMBER "vulkan.surface" -#define SDL_PROP_RENDERER_CREATE_VULKAN_PHYSICAL_DEVICE_POINTER "vulkan.physical_device" -#define SDL_PROP_RENDERER_CREATE_VULKAN_DEVICE_POINTER "vulkan.device" -#define SDL_PROP_RENDERER_CREATE_VULKAN_GRAPHICS_QUEUE_FAMILY_INDEX_NUMBER "vulkan.graphics_queue_family_index" -#define SDL_PROP_RENDERER_CREATE_VULKAN_PRESENT_QUEUE_FAMILY_INDEX_NUMBER "vulkan.present_queue_family_index" +#define SDL_PROP_RENDERER_CREATE_NAME_STRING "SDL.renderer.create.name" +#define SDL_PROP_RENDERER_CREATE_WINDOW_POINTER "SDL.renderer.create.window" +#define SDL_PROP_RENDERER_CREATE_SURFACE_POINTER "SDL.renderer.create.surface" +#define SDL_PROP_RENDERER_CREATE_OUTPUT_COLORSPACE_NUMBER "SDL.renderer.create.output_colorspace" +#define SDL_PROP_RENDERER_CREATE_PRESENT_VSYNC_NUMBER "SDL.renderer.create.present_vsync" +#define SDL_PROP_RENDERER_CREATE_VULKAN_INSTANCE_POINTER "SDL.renderer.create.vulkan.instance" +#define SDL_PROP_RENDERER_CREATE_VULKAN_SURFACE_NUMBER "SDL.renderer.create.vulkan.surface" +#define SDL_PROP_RENDERER_CREATE_VULKAN_PHYSICAL_DEVICE_POINTER "SDL.renderer.create.vulkan.physical_device" +#define SDL_PROP_RENDERER_CREATE_VULKAN_DEVICE_POINTER "SDL.renderer.create.vulkan.device" +#define SDL_PROP_RENDERER_CREATE_VULKAN_GRAPHICS_QUEUE_FAMILY_INDEX_NUMBER "SDL.renderer.create.vulkan.graphics_queue_family_index" +#define SDL_PROP_RENDERER_CREATE_VULKAN_PRESENT_QUEUE_FAMILY_INDEX_NUMBER "SDL.renderer.create.vulkan.present_queue_family_index" /** * Create a 2D software rendering context for a surface. @@ -445,14 +444,14 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetRendererProperties(SDL_Rende * \param renderer the rendering context. * \param w a pointer filled in with the width in pixels. * \param h a pointer filled in with the height in pixels. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetCurrentRenderOutputSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderOutputSize(SDL_Renderer *renderer, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderOutputSize(SDL_Renderer *renderer, int *w, int *h); /** * Get the current output size in pixels of a rendering context. @@ -465,14 +464,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderOutputSize(SDL_Renderer *renderer, * \param renderer the rendering context. * \param w a pointer filled in with the current width. * \param h a pointer filled in with the current height. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderOutputSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetCurrentRenderOutputSize(SDL_Renderer *renderer, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetCurrentRenderOutputSize(SDL_Renderer *renderer, int *w, int *h); /** * Create a texture for a rendering context. @@ -633,29 +632,29 @@ extern SDL_DECLSPEC SDL_Texture * SDLCALL SDL_CreateTextureFromSurface(SDL_Rende */ extern SDL_DECLSPEC SDL_Texture * SDLCALL SDL_CreateTextureWithProperties(SDL_Renderer *renderer, SDL_PropertiesID props); -#define SDL_PROP_TEXTURE_CREATE_COLORSPACE_NUMBER "colorspace" -#define SDL_PROP_TEXTURE_CREATE_FORMAT_NUMBER "format" -#define SDL_PROP_TEXTURE_CREATE_ACCESS_NUMBER "access" -#define SDL_PROP_TEXTURE_CREATE_WIDTH_NUMBER "width" -#define SDL_PROP_TEXTURE_CREATE_HEIGHT_NUMBER "height" -#define SDL_PROP_TEXTURE_CREATE_SDR_WHITE_POINT_FLOAT "SDR_white_point" -#define SDL_PROP_TEXTURE_CREATE_HDR_HEADROOM_FLOAT "HDR_headroom" -#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_POINTER "d3d11.texture" -#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_U_POINTER "d3d11.texture_u" -#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_V_POINTER "d3d11.texture_v" -#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_POINTER "d3d12.texture" -#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_U_POINTER "d3d12.texture_u" -#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_V_POINTER "d3d12.texture_v" -#define SDL_PROP_TEXTURE_CREATE_METAL_PIXELBUFFER_POINTER "metal.pixelbuffer" -#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_NUMBER "opengl.texture" -#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_UV_NUMBER "opengl.texture_uv" -#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_U_NUMBER "opengl.texture_u" -#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_V_NUMBER "opengl.texture_v" -#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_NUMBER "opengles2.texture" -#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_UV_NUMBER "opengles2.texture_uv" -#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_U_NUMBER "opengles2.texture_u" -#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_V_NUMBER "opengles2.texture_v" -#define SDL_PROP_TEXTURE_CREATE_VULKAN_TEXTURE_NUMBER "vulkan.texture" +#define SDL_PROP_TEXTURE_CREATE_COLORSPACE_NUMBER "SDL.texture.create.colorspace" +#define SDL_PROP_TEXTURE_CREATE_FORMAT_NUMBER "SDL.texture.create.format" +#define SDL_PROP_TEXTURE_CREATE_ACCESS_NUMBER "SDL.texture.create.access" +#define SDL_PROP_TEXTURE_CREATE_WIDTH_NUMBER "SDL.texture.create.width" +#define SDL_PROP_TEXTURE_CREATE_HEIGHT_NUMBER "SDL.texture.create.height" +#define SDL_PROP_TEXTURE_CREATE_SDR_WHITE_POINT_FLOAT "SDL.texture.create.SDR_white_point" +#define SDL_PROP_TEXTURE_CREATE_HDR_HEADROOM_FLOAT "SDL.texture.create.HDR_headroom" +#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_POINTER "SDL.texture.create.d3d11.texture" +#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_U_POINTER "SDL.texture.create.d3d11.texture_u" +#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_V_POINTER "SDL.texture.create.d3d11.texture_v" +#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_POINTER "SDL.texture.create.d3d12.texture" +#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_U_POINTER "SDL.texture.create.d3d12.texture_u" +#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_V_POINTER "SDL.texture.create.d3d12.texture_v" +#define SDL_PROP_TEXTURE_CREATE_METAL_PIXELBUFFER_POINTER "SDL.texture.create.metal.pixelbuffer" +#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_NUMBER "SDL.texture.create.opengl.texture" +#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_UV_NUMBER "SDL.texture.create.opengl.texture_uv" +#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_U_NUMBER "SDL.texture.create.opengl.texture_u" +#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_V_NUMBER "SDL.texture.create.opengl.texture_v" +#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_NUMBER "SDL.texture.create.opengles2.texture" +#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_UV_NUMBER "SDL.texture.create.opengles2.texture_uv" +#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_U_NUMBER "SDL.texture.create.opengles2.texture_u" +#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_V_NUMBER "SDL.texture.create.opengles2.texture_v" +#define SDL_PROP_TEXTURE_CREATE_VULKAN_TEXTURE_NUMBER "SDL.texture.create.vulkan.texture" /** * Get the properties associated with a texture. @@ -802,12 +801,12 @@ extern SDL_DECLSPEC SDL_Renderer * SDLCALL SDL_GetRendererFromTexture(SDL_Textur * argument can be NULL if you don't need this information. * \param h a pointer filled in with the height of the texture in pixels. This * argument can be NULL if you don't need this information. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureSize(SDL_Texture *texture, float *w, float *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureSize(SDL_Texture *texture, float *w, float *h); /** * Set an additional color value multiplied into render copy operations. @@ -818,15 +817,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureSize(SDL_Texture *texture, float * * * `srcC = srcC * (color / 255)` * - * Color modulation is not always supported by the renderer; it will return -1 - * if color modulation is not supported. + * Color modulation is not always supported by the renderer; it will return + * SDL_FALSE if color modulation is not supported. * * \param texture the texture to update. * \param r the red color value multiplied into copy operations. * \param g the green color value multiplied into copy operations. * \param b the blue color value multiplied into copy operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -834,7 +833,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureSize(SDL_Texture *texture, float * * \sa SDL_SetTextureAlphaMod * \sa SDL_SetTextureColorModFloat */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorMod(SDL_Texture *texture, Uint8 r, Uint8 g, Uint8 b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureColorMod(SDL_Texture *texture, Uint8 r, Uint8 g, Uint8 b); /** @@ -846,15 +845,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorMod(SDL_Texture *texture, Uin * * `srcC = srcC * color` * - * Color modulation is not always supported by the renderer; it will return -1 - * if color modulation is not supported. + * Color modulation is not always supported by the renderer; it will return + * SDL_FALSE if color modulation is not supported. * * \param texture the texture to update. * \param r the red color value multiplied into copy operations. * \param g the green color value multiplied into copy operations. * \param b the blue color value multiplied into copy operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -862,7 +861,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorMod(SDL_Texture *texture, Uin * \sa SDL_SetTextureAlphaModFloat * \sa SDL_SetTextureColorMod */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorModFloat(SDL_Texture *texture, float r, float g, float b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureColorModFloat(SDL_Texture *texture, float r, float g, float b); /** @@ -872,8 +871,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorModFloat(SDL_Texture *texture * \param r a pointer filled in with the current red color value. * \param g a pointer filled in with the current green color value. * \param b a pointer filled in with the current blue color value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -881,7 +880,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorModFloat(SDL_Texture *texture * \sa SDL_GetTextureColorModFloat * \sa SDL_SetTextureColorMod */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorMod(SDL_Texture *texture, Uint8 *r, Uint8 *g, Uint8 *b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureColorMod(SDL_Texture *texture, Uint8 *r, Uint8 *g, Uint8 *b); /** * Get the additional color value multiplied into render copy operations. @@ -890,8 +889,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorMod(SDL_Texture *texture, Uin * \param r a pointer filled in with the current red color value. * \param g a pointer filled in with the current green color value. * \param b a pointer filled in with the current blue color value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -899,7 +898,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorMod(SDL_Texture *texture, Uin * \sa SDL_GetTextureColorMod * \sa SDL_SetTextureColorModFloat */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorModFloat(SDL_Texture *texture, float *r, float *g, float *b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureColorModFloat(SDL_Texture *texture, float *r, float *g, float *b); /** * Set an additional alpha value multiplied into render copy operations. @@ -909,13 +908,13 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorModFloat(SDL_Texture *texture * * `srcA = srcA * (alpha / 255)` * - * Alpha modulation is not always supported by the renderer; it will return -1 - * if alpha modulation is not supported. + * Alpha modulation is not always supported by the renderer; it will return + * SDL_FALSE if alpha modulation is not supported. * * \param texture the texture to update. * \param alpha the source alpha value multiplied into copy operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -923,7 +922,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorModFloat(SDL_Texture *texture * \sa SDL_SetTextureAlphaModFloat * \sa SDL_SetTextureColorMod */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureAlphaMod(SDL_Texture *texture, Uint8 alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureAlphaMod(SDL_Texture *texture, Uint8 alpha); /** * Set an additional alpha value multiplied into render copy operations. @@ -933,13 +932,13 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureAlphaMod(SDL_Texture *texture, Uin * * `srcA = srcA * alpha` * - * Alpha modulation is not always supported by the renderer; it will return -1 - * if alpha modulation is not supported. + * Alpha modulation is not always supported by the renderer; it will return + * SDL_FALSE if alpha modulation is not supported. * * \param texture the texture to update. * \param alpha the source alpha value multiplied into copy operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -947,15 +946,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureAlphaMod(SDL_Texture *texture, Uin * \sa SDL_SetTextureAlphaMod * \sa SDL_SetTextureColorModFloat */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureAlphaModFloat(SDL_Texture *texture, float alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureAlphaModFloat(SDL_Texture *texture, float alpha); /** * Get the additional alpha value multiplied into render copy operations. * * \param texture the texture to query. * \param alpha a pointer filled in with the current alpha value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -963,15 +962,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureAlphaModFloat(SDL_Texture *texture * \sa SDL_GetTextureColorMod * \sa SDL_SetTextureAlphaMod */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureAlphaMod(SDL_Texture *texture, Uint8 *alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureAlphaMod(SDL_Texture *texture, Uint8 *alpha); /** * Get the additional alpha value multiplied into render copy operations. * * \param texture the texture to query. * \param alpha a pointer filled in with the current alpha value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -979,7 +978,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureAlphaMod(SDL_Texture *texture, Uin * \sa SDL_GetTextureColorModFloat * \sa SDL_SetTextureAlphaModFloat */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureAlphaModFloat(SDL_Texture *texture, float *alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureAlphaModFloat(SDL_Texture *texture, float *alpha); /** * Set the blend mode for a texture, used by SDL_RenderTexture(). @@ -989,28 +988,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureAlphaModFloat(SDL_Texture *texture * * \param texture the texture to update. * \param blendMode the SDL_BlendMode to use for texture blending. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetTextureBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureBlendMode(SDL_Texture *texture, SDL_BlendMode blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureBlendMode(SDL_Texture *texture, SDL_BlendMode blendMode); /** * Get the blend mode used for texture copy operations. * * \param texture the texture to query. * \param blendMode a pointer filled in with the current SDL_BlendMode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetTextureBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureBlendMode(SDL_Texture *texture, SDL_BlendMode *blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureBlendMode(SDL_Texture *texture, SDL_BlendMode *blendMode); /** * Set the scale mode used for texture scale operations. @@ -1021,28 +1020,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureBlendMode(SDL_Texture *texture, SD * * \param texture the texture to update. * \param scaleMode the SDL_ScaleMode to use for texture scaling. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetTextureScaleMode */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureScaleMode(SDL_Texture *texture, SDL_ScaleMode scaleMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureScaleMode(SDL_Texture *texture, SDL_ScaleMode scaleMode); /** * Get the scale mode used for texture scale operations. * * \param texture the texture to query. * \param scaleMode a pointer filled in with the current scale mode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetTextureScaleMode */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureScaleMode(SDL_Texture *texture, SDL_ScaleMode *scaleMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureScaleMode(SDL_Texture *texture, SDL_ScaleMode *scaleMode); /** * Update the given texture rectangle with new pixel data. @@ -1064,8 +1063,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureScaleMode(SDL_Texture *texture, SD * \param pixels the raw pixel data in the format of the texture. * \param pitch the number of bytes in a row of pixel data, including padding * between lines. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1074,7 +1073,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureScaleMode(SDL_Texture *texture, SD * \sa SDL_UpdateNVTexture * \sa SDL_UpdateYUVTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateTexture(SDL_Texture *texture, const SDL_Rect *rect, const void *pixels, int pitch); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateTexture(SDL_Texture *texture, const SDL_Rect *rect, const void *pixels, int pitch); /** * Update a rectangle within a planar YV12 or IYUV texture with new pixel @@ -1096,15 +1095,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateTexture(SDL_Texture *texture, const SD * \param Vplane the raw pixel data for the V plane. * \param Vpitch the number of bytes between rows of pixel data for the V * plane. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_UpdateNVTexture * \sa SDL_UpdateTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateYUVTexture(SDL_Texture *texture, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateYUVTexture(SDL_Texture *texture, const SDL_Rect *rect, const Uint8 *Yplane, int Ypitch, const Uint8 *Uplane, int Upitch, @@ -1126,15 +1125,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateYUVTexture(SDL_Texture *texture, * \param UVplane the raw pixel data for the UV plane. * \param UVpitch the number of bytes between rows of pixel data for the UV * plane. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_UpdateTexture * \sa SDL_UpdateYUVTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateNVTexture(SDL_Texture *texture, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateNVTexture(SDL_Texture *texture, const SDL_Rect *rect, const Uint8 *Yplane, int Ypitch, const Uint8 *UVplane, int UVpitch); @@ -1158,8 +1157,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateNVTexture(SDL_Texture *texture, * appropriately offset by the locked area. * \param pitch this is filled in with the pitch of the locked pixels; the * pitch is the length of one row in bytes. - * \returns 0 on success or a negative error code if the texture is not valid - * or was not created with `SDL_TEXTUREACCESS_STREAMING`; call + * \returns SDL_TRUE on success or SDL_FALSE if the texture is not valid or + * was not created with `SDL_TEXTUREACCESS_STREAMING`; call * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. @@ -1167,7 +1166,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateNVTexture(SDL_Texture *texture, * \sa SDL_LockTextureToSurface * \sa SDL_UnlockTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_LockTexture(SDL_Texture *texture, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LockTexture(SDL_Texture *texture, const SDL_Rect *rect, void **pixels, int *pitch); @@ -1195,17 +1194,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_LockTexture(SDL_Texture *texture, * NULL, the entire texture will be locked. * \param surface this is filled in with an SDL surface representing the * locked area. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_LockTexture * \sa SDL_UnlockTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_LockTextureToSurface(SDL_Texture *texture, - const SDL_Rect *rect, - SDL_Surface **surface); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LockTextureToSurface(SDL_Texture *texture, const SDL_Rect *rect, SDL_Surface **surface); /** * Unlock a texture, uploading the changes to video memory, if needed. @@ -1237,14 +1234,14 @@ extern SDL_DECLSPEC void SDLCALL SDL_UnlockTexture(SDL_Texture *texture); * \param texture the targeted texture, which must be created with the * `SDL_TEXTUREACCESS_TARGET` flag, or NULL to render to the * window instead of a texture. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderTarget */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderTarget(SDL_Renderer *renderer, SDL_Texture *texture); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderTarget(SDL_Renderer *renderer, SDL_Texture *texture); /** * Get the current render target. @@ -1280,8 +1277,8 @@ extern SDL_DECLSPEC SDL_Texture * SDLCALL SDL_GetRenderTarget(SDL_Renderer *rend * \param h the height of the logical resolution. * \param mode the presentation mode used. * \param scale_mode the scale mode used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1289,7 +1286,7 @@ extern SDL_DECLSPEC SDL_Texture * SDLCALL SDL_GetRenderTarget(SDL_Renderer *rend * \sa SDL_GetRenderLogicalPresentation * \sa SDL_GetRenderLogicalPresentationRect */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderLogicalPresentation(SDL_Renderer *renderer, int w, int h, SDL_RendererLogicalPresentation mode, SDL_ScaleMode scale_mode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderLogicalPresentation(SDL_Renderer *renderer, int w, int h, SDL_RendererLogicalPresentation mode, SDL_ScaleMode scale_mode); /** * Get device independent resolution and presentation mode for rendering. @@ -1302,14 +1299,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderLogicalPresentation(SDL_Renderer *r * \param h an int to be filled with the height. * \param mode a pointer filled in with the presentation mode. * \param scale_mode a pointer filled in with the scale mode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderLogicalPresentation */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderLogicalPresentation(SDL_Renderer *renderer, int *w, int *h, SDL_RendererLogicalPresentation *mode, SDL_ScaleMode *scale_mode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderLogicalPresentation(SDL_Renderer *renderer, int *w, int *h, SDL_RendererLogicalPresentation *mode, SDL_ScaleMode *scale_mode); /** * Get the final presentation rectangle for rendering. @@ -1322,14 +1319,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderLogicalPresentation(SDL_Renderer *r * \param renderer the rendering context. * \param rect a pointer filled in with the final presentation rectangle, may * be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderLogicalPresentation */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderLogicalPresentationRect(SDL_Renderer *renderer, SDL_FRect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderLogicalPresentationRect(SDL_Renderer *renderer, SDL_FRect *rect); /** * Get a point in render coordinates when given a point in window coordinates. @@ -1339,15 +1336,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderLogicalPresentationRect(SDL_Rendere * \param window_y the y coordinate in window coordinates. * \param x a pointer filled with the x coordinate in render coordinates. * \param y a pointer filled with the y coordinate in render coordinates. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderLogicalPresentation * \sa SDL_SetRenderScale */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderCoordinatesFromWindow(SDL_Renderer *renderer, float window_x, float window_y, float *x, float *y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderCoordinatesFromWindow(SDL_Renderer *renderer, float window_x, float window_y, float *x, float *y); /** * Get a point in window coordinates when given a point in render coordinates. @@ -1359,15 +1356,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderCoordinatesFromWindow(SDL_Renderer *re * coordinates. * \param window_y a pointer filled with the y coordinate in window * coordinates. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderLogicalPresentation * \sa SDL_SetRenderScale */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderCoordinatesToWindow(SDL_Renderer *renderer, float x, float y, float *window_x, float *window_y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderCoordinatesToWindow(SDL_Renderer *renderer, float x, float y, float *window_x, float *window_y); /** * Convert the coordinates in an event to render coordinates. @@ -1379,14 +1376,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderCoordinatesToWindow(SDL_Renderer *rend * * \param renderer the rendering context. * \param event the event to modify. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderCoordinatesFromWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_ConvertEventToRenderCoordinates(SDL_Renderer *renderer, SDL_Event *event); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ConvertEventToRenderCoordinates(SDL_Renderer *renderer, SDL_Event *event); /** * Set the drawing area for rendering on the current target. @@ -1394,30 +1391,30 @@ extern SDL_DECLSPEC int SDLCALL SDL_ConvertEventToRenderCoordinates(SDL_Renderer * \param renderer the rendering context. * \param rect the SDL_Rect structure representing the drawing area, or NULL * to set the viewport to the entire target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderViewport * \sa SDL_RenderViewportSet */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderViewport(SDL_Renderer *renderer, const SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderViewport(SDL_Renderer *renderer, const SDL_Rect *rect); /** * Get the drawing area for the current target. * * \param renderer the rendering context. * \param rect an SDL_Rect structure filled in with the current drawing area. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderViewportSet * \sa SDL_SetRenderViewport */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderViewport(SDL_Renderer *renderer, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderViewport(SDL_Renderer *renderer, SDL_Rect *rect); /** * Return whether an explicit rectangle was set as the viewport. @@ -1450,12 +1447,12 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderViewportSet(SDL_Renderer *rendere * \param renderer the rendering context. * \param rect a pointer filled in with the area that is safe for interactive * content. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderSafeArea(SDL_Renderer *renderer, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderSafeArea(SDL_Renderer *renderer, SDL_Rect *rect); /** * Set the clip rectangle for rendering on the specified target. @@ -1463,15 +1460,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderSafeArea(SDL_Renderer *renderer, SD * \param renderer the rendering context. * \param rect an SDL_Rect structure representing the clip area, relative to * the viewport, or NULL to disable clipping. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderClipRect * \sa SDL_RenderClipEnabled */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderClipRect(SDL_Renderer *renderer, const SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderClipRect(SDL_Renderer *renderer, const SDL_Rect *rect); /** * Get the clip rectangle for the current target. @@ -1479,15 +1476,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderClipRect(SDL_Renderer *renderer, co * \param renderer the rendering context. * \param rect an SDL_Rect structure filled in with the current clipping area * or an empty rectangle if clipping is disabled. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderClipEnabled * \sa SDL_SetRenderClipRect */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderClipRect(SDL_Renderer *renderer, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderClipRect(SDL_Renderer *renderer, SDL_Rect *rect); /** * Get whether clipping is enabled on the given renderer. @@ -1517,14 +1514,14 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderClipEnabled(SDL_Renderer *rendere * \param renderer the rendering context. * \param scaleX the horizontal scaling factor. * \param scaleY the vertical scaling factor. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderScale */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderScale(SDL_Renderer *renderer, float scaleX, float scaleY); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderScale(SDL_Renderer *renderer, float scaleX, float scaleY); /** * Get the drawing scale for the current target. @@ -1532,14 +1529,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderScale(SDL_Renderer *renderer, float * \param renderer the rendering context. * \param scaleX a pointer filled in with the horizontal scaling factor. * \param scaleY a pointer filled in with the vertical scaling factor. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderScale */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderScale(SDL_Renderer *renderer, float *scaleX, float *scaleY); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderScale(SDL_Renderer *renderer, float *scaleX, float *scaleY); /** * Set the color used for drawing operations. @@ -1554,15 +1551,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderScale(SDL_Renderer *renderer, float * \param a the alpha value used to draw on the rendering target; usually * `SDL_ALPHA_OPAQUE` (255). Use SDL_SetRenderDrawBlendMode to * specify how the alpha channel is used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderDrawColor * \sa SDL_SetRenderDrawColorFloat */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderDrawColor(SDL_Renderer *renderer, Uint8 r, Uint8 g, Uint8 b, Uint8 a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderDrawColor(SDL_Renderer *renderer, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /** * Set the color used for drawing operations (Rect, Line and Clear). @@ -1577,15 +1574,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderDrawColor(SDL_Renderer *renderer, U * \param a the alpha value used to draw on the rendering target. Use * SDL_SetRenderDrawBlendMode to specify how the alpha channel is * used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderDrawColorFloat * \sa SDL_SetRenderDrawColor */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderDrawColorFloat(SDL_Renderer *renderer, float r, float g, float b, float a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderDrawColorFloat(SDL_Renderer *renderer, float r, float g, float b, float a); /** * Get the color used for drawing operations (Rect, Line and Clear). @@ -1599,15 +1596,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderDrawColorFloat(SDL_Renderer *render * rendering target. * \param a a pointer filled in with the alpha value used to draw on the * rendering target; usually `SDL_ALPHA_OPAQUE` (255). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderDrawColorFloat * \sa SDL_SetRenderDrawColor */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawColor(SDL_Renderer *renderer, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderDrawColor(SDL_Renderer *renderer, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a); /** * Get the color used for drawing operations (Rect, Line and Clear). @@ -1621,15 +1618,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawColor(SDL_Renderer *renderer, U * rendering target. * \param a a pointer filled in with the alpha value used to draw on the * rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderDrawColorFloat * \sa SDL_GetRenderDrawColor */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawColorFloat(SDL_Renderer *renderer, float *r, float *g, float *b, float *a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderDrawColorFloat(SDL_Renderer *renderer, float *r, float *g, float *b, float *a); /** * Set the color scale used for render operations. @@ -1644,28 +1641,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawColorFloat(SDL_Renderer *render * * \param renderer the rendering context. * \param scale the color scale value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderColorScale */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderColorScale(SDL_Renderer *renderer, float scale); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderColorScale(SDL_Renderer *renderer, float scale); /** * Get the color scale used for render operations. * * \param renderer the rendering context. * \param scale a pointer filled in with the current color scale value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderColorScale */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderColorScale(SDL_Renderer *renderer, float *scale); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderColorScale(SDL_Renderer *renderer, float *scale); /** * Set the blend mode used for drawing operations (Fill and Line). @@ -1674,28 +1671,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderColorScale(SDL_Renderer *renderer, * * \param renderer the rendering context. * \param blendMode the SDL_BlendMode to use for blending. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderDrawBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderDrawBlendMode(SDL_Renderer *renderer, SDL_BlendMode blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderDrawBlendMode(SDL_Renderer *renderer, SDL_BlendMode blendMode); /** * Get the blend mode used for drawing operations. * * \param renderer the rendering context. * \param blendMode a pointer filled in with the current SDL_BlendMode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderDrawBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawBlendMode(SDL_Renderer *renderer, SDL_BlendMode *blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderDrawBlendMode(SDL_Renderer *renderer, SDL_BlendMode *blendMode); /** * Clear the current rendering target with the drawing color. @@ -1706,14 +1703,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawBlendMode(SDL_Renderer *rendere * SDL_SetRenderDrawColor() when needed. * * \param renderer the rendering context. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderDrawColor */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderClear(SDL_Renderer *renderer); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderClear(SDL_Renderer *renderer); /** * Draw a point on the current rendering target at subpixel precision. @@ -1721,14 +1718,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderClear(SDL_Renderer *renderer); * \param renderer the renderer which should draw a point. * \param x the x coordinate of the point. * \param y the y coordinate of the point. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderPoints */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderPoint(SDL_Renderer *renderer, float x, float y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderPoint(SDL_Renderer *renderer, float x, float y); /** * Draw multiple points on the current rendering target at subpixel precision. @@ -1736,14 +1733,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderPoint(SDL_Renderer *renderer, float x, * \param renderer the renderer which should draw multiple points. * \param points the points to draw. * \param count the number of points to draw. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderPoint */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderPoints(SDL_Renderer *renderer, const SDL_FPoint *points, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderPoints(SDL_Renderer *renderer, const SDL_FPoint *points, int count); /** * Draw a line on the current rendering target at subpixel precision. @@ -1753,14 +1750,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderPoints(SDL_Renderer *renderer, const S * \param y1 the y coordinate of the start point. * \param x2 the x coordinate of the end point. * \param y2 the y coordinate of the end point. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderLines */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderLine(SDL_Renderer *renderer, float x1, float y1, float x2, float y2); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderLine(SDL_Renderer *renderer, float x1, float y1, float x2, float y2); /** * Draw a series of connected lines on the current rendering target at @@ -1769,14 +1766,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderLine(SDL_Renderer *renderer, float x1, * \param renderer the renderer which should draw multiple lines. * \param points the points along the lines. * \param count the number of points, drawing count-1 lines. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderLine */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderLines(SDL_Renderer *renderer, const SDL_FPoint *points, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderLines(SDL_Renderer *renderer, const SDL_FPoint *points, int count); /** * Draw a rectangle on the current rendering target at subpixel precision. @@ -1784,14 +1781,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderLines(SDL_Renderer *renderer, const SD * \param renderer the renderer which should draw a rectangle. * \param rect a pointer to the destination rectangle, or NULL to outline the * entire rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderRects */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderRect(SDL_Renderer *renderer, const SDL_FRect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderRect(SDL_Renderer *renderer, const SDL_FRect *rect); /** * Draw some number of rectangles on the current rendering target at subpixel @@ -1800,14 +1797,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderRect(SDL_Renderer *renderer, const SDL * \param renderer the renderer which should draw multiple rectangles. * \param rects a pointer to an array of destination rectangles. * \param count the number of rectangles. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderRect */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderRects(SDL_Renderer *renderer, const SDL_FRect *rects, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderRects(SDL_Renderer *renderer, const SDL_FRect *rects, int count); /** * Fill a rectangle on the current rendering target with the drawing color at @@ -1816,14 +1813,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderRects(SDL_Renderer *renderer, const SD * \param renderer the renderer which should fill a rectangle. * \param rect a pointer to the destination rectangle, or NULL for the entire * rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderFillRects */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderFillRect(SDL_Renderer *renderer, const SDL_FRect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderFillRect(SDL_Renderer *renderer, const SDL_FRect *rect); /** * Fill some number of rectangles on the current rendering target with the @@ -1832,14 +1829,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderFillRect(SDL_Renderer *renderer, const * \param renderer the renderer which should fill multiple rectangles. * \param rects a pointer to an array of destination rectangles. * \param count the number of rectangles. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderFillRect */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderFillRects(SDL_Renderer *renderer, const SDL_FRect *rects, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderFillRects(SDL_Renderer *renderer, const SDL_FRect *rects, int count); /** * Copy a portion of the texture to the current rendering target at subpixel @@ -1851,15 +1848,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderFillRects(SDL_Renderer *renderer, cons * texture. * \param dstrect a pointer to the destination rectangle, or NULL for the * entire rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderTextureRotated * \sa SDL_RenderTextureTiled */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderTexture(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, const SDL_FRect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderTexture(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, const SDL_FRect *dstrect); /** * Copy a portion of the source texture to the current rendering target, with @@ -1878,14 +1875,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderTexture(SDL_Renderer *renderer, SDL_Te * around dstrect.w/2, dstrect.h/2). * \param flip an SDL_FlipMode value stating which flipping actions should be * performed on the texture. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderTextureRotated(SDL_Renderer *renderer, SDL_Texture *texture, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderTextureRotated(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, const SDL_FRect *dstrect, const double angle, const SDL_FPoint *center, const SDL_FlipMode flip); @@ -1906,14 +1903,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderTextureRotated(SDL_Renderer *renderer, * 64x64 tiles. * \param dstrect a pointer to the destination rectangle, or NULL for the * entire rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderTextureTiled(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, float scale, const SDL_FRect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderTextureTiled(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, float scale, const SDL_FRect *dstrect); /** * Perform a scaled copy using the 9-grid algorithm to the current rendering @@ -1938,14 +1935,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderTextureTiled(SDL_Renderer *renderer, S * corner of `dstrect`, or 0.0f for an unscaled copy. * \param dstrect a pointer to the destination rectangle, or NULL for the * entire rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderTexture9Grid(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, float left_width, float right_width, float top_height, float bottom_height, float scale, const SDL_FRect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderTexture9Grid(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, float left_width, float right_width, float top_height, float bottom_height, float scale, const SDL_FRect *dstrect); /** * Render a list of triangles, optionally using a texture and indices into the @@ -1960,14 +1957,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderTexture9Grid(SDL_Renderer *renderer, S * array, if NULL all vertices will be rendered in sequential * order. * \param num_indices number of indices. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderGeometryRaw */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderGeometry(SDL_Renderer *renderer, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderGeometry(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_Vertex *vertices, int num_vertices, const int *indices, int num_indices); @@ -1990,14 +1987,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderGeometry(SDL_Renderer *renderer, * if NULL all vertices will be rendered in sequential order. * \param num_indices number of indices. * \param size_indices index size: 1 (byte), 2 (short), 4 (int). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderGeometry */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderGeometryRaw(SDL_Renderer *renderer, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderGeometryRaw(SDL_Renderer *renderer, SDL_Texture *texture, const float *xy, int xy_stride, const SDL_FColor *color, int color_stride, @@ -2050,26 +2047,27 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_RenderReadPixels(SDL_Renderer *ren * do not have a concept of backbuffers. * * \param renderer the rendering context. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety You may only call this function on the main thread. * * \since This function is available since SDL 3.0.0. * + * \sa SDL_CreateRenderer * \sa SDL_RenderClear + * \sa SDL_RenderFillRect + * \sa SDL_RenderFillRects * \sa SDL_RenderLine * \sa SDL_RenderLines * \sa SDL_RenderPoint * \sa SDL_RenderPoints * \sa SDL_RenderRect * \sa SDL_RenderRects - * \sa SDL_RenderFillRect - * \sa SDL_RenderFillRects * \sa SDL_SetRenderDrawBlendMode * \sa SDL_SetRenderDrawColor */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderPresent(SDL_Renderer *renderer); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderPresent(SDL_Renderer *renderer); /** * Destroy the specified texture. @@ -2124,12 +2122,12 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyRenderer(SDL_Renderer *renderer); * be prepared to make changes if specific state needs to be protected. * * \param renderer the rendering context. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_FlushRenderer(SDL_Renderer *renderer); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FlushRenderer(SDL_Renderer *renderer); /** * Get the CAMetalLayer associated with the given Metal renderer. @@ -2189,15 +2187,15 @@ extern SDL_DECLSPEC void * SDLCALL SDL_GetRenderMetalCommandEncoder(SDL_Renderer * \param signal_semaphore a VkSempahore that SDL will signal when rendering * for the current frame is complete, or 0 if not * needed. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is **NOT** safe to call this function from two threads at * once. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_AddVulkanRenderSemaphores(SDL_Renderer *renderer, Uint32 wait_stage_mask, Sint64 wait_semaphore, Sint64 signal_semaphore); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AddVulkanRenderSemaphores(SDL_Renderer *renderer, Uint32 wait_stage_mask, Sint64 wait_semaphore, Sint64 signal_semaphore); /** * Toggle VSync of the given renderer. @@ -2213,14 +2211,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_AddVulkanRenderSemaphores(SDL_Renderer *rend * * \param renderer the renderer to toggle. * \param vsync the vertical refresh sync interval. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderVSync */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderVSync(SDL_Renderer *renderer, int vsync); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderVSync(SDL_Renderer *renderer, int vsync); #define SDL_RENDERER_VSYNC_DISABLED 0 #define SDL_RENDERER_VSYNC_ADAPTIVE (-1) @@ -2231,14 +2229,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderVSync(SDL_Renderer *renderer, int v * \param renderer the renderer to toggle. * \param vsync an int filled with the current vertical refresh sync interval. * See SDL_SetRenderVSync() for the meaning of the value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderVSync */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderVSync(SDL_Renderer *renderer, int *vsync); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderVSync(SDL_Renderer *renderer, int *vsync); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_sensor.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_sensor.h index 2d4aa46..3ae4856 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_sensor.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_sensor.h @@ -55,8 +55,7 @@ typedef struct SDL_Sensor SDL_Sensor; * This is a unique ID for a sensor for the time it is connected to the * system, and is never reused for the lifetime of the application. * - * The ID value starts at 1 and increments from there. The value 0 is an - * invalid ID. + * The value 0 is an invalid ID. * * \since This datatype is available since SDL 3.0.0. */ @@ -278,12 +277,12 @@ extern SDL_DECLSPEC SDL_SensorID SDLCALL SDL_GetSensorID(SDL_Sensor *sensor); * \param sensor the SDL_Sensor object to query. * \param data a pointer filled with the current sensor state. * \param num_values the number of values to write to data. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSensorData(SDL_Sensor *sensor, float *data, int num_values); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSensorData(SDL_Sensor *sensor, float *data, int num_values); /** * Close a sensor previously opened with SDL_OpenSensor(). diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_stdinc.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_stdinc.h index 14e0750..5539f2a 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_stdinc.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_stdinc.h @@ -36,6 +36,9 @@ #include #endif #include +#ifndef __cplusplus +#include +#endif #include #include #include @@ -191,7 +194,7 @@ void *alloca(size_t); * * \sa SDL_bool */ -#define SDL_FALSE 0 +#define SDL_FALSE false /** * A boolean true. @@ -200,7 +203,7 @@ void *alloca(size_t); * * \sa SDL_bool */ -#define SDL_TRUE 1 +#define SDL_TRUE true /** * A boolean type: true or false. @@ -210,7 +213,7 @@ void *alloca(size_t); * \sa SDL_TRUE * \sa SDL_FALSE */ -typedef int SDL_bool; +typedef bool SDL_bool; /** * A signed 8-bit integer type. @@ -482,6 +485,7 @@ typedef Sint64 SDL_Time; /** \cond */ #ifndef DOXYGEN_SHOULD_IGNORE_THIS +SDL_COMPILE_TIME_ASSERT(bool, sizeof(SDL_bool) == 1); SDL_COMPILE_TIME_ASSERT(uint8, sizeof(Uint8) == 1); SDL_COMPILE_TIME_ASSERT(sint8, sizeof(Sint8) == 1); SDL_COMPILE_TIME_ASSERT(uint16, sizeof(Uint16) == 2); @@ -595,8 +599,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_GetMemoryFunctions(SDL_malloc_func *malloc_ * \param calloc_func custom calloc function. * \param realloc_func custom realloc function. * \param free_func custom free function. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, but one * should not replace the memory functions once any allocations @@ -607,10 +611,10 @@ extern SDL_DECLSPEC void SDLCALL SDL_GetMemoryFunctions(SDL_malloc_func *malloc_ * \sa SDL_GetMemoryFunctions * \sa SDL_GetOriginalMemoryFunctions */ -extern SDL_DECLSPEC int SDLCALL SDL_SetMemoryFunctions(SDL_malloc_func malloc_func, - SDL_calloc_func calloc_func, - SDL_realloc_func realloc_func, - SDL_free_func free_func); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetMemoryFunctions(SDL_malloc_func malloc_func, + SDL_calloc_func calloc_func, + SDL_realloc_func realloc_func, + SDL_free_func free_func); /** * Allocate memory aligned to a specific value. @@ -2899,14 +2903,78 @@ extern SDL_DECLSPEC float SDLCALL SDL_tanf(float x); #define SDL_ICONV_EILSEQ (size_t)-3 #define SDL_ICONV_EINVAL (size_t)-4 -/* SDL_iconv_* are now always real symbols/types, not macros or inlined. */ typedef struct SDL_iconv_data_t *SDL_iconv_t; + +/** + * This function allocates a context for the specified character set + * conversion. + * + * \param tocode The target character encoding, must not be NULL. + * \param fromcode The source character encoding, must not be NULL. + * \returns a handle that must be freed with SDL_iconv_close, or + * SDL_ICONV_ERROR on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_iconv + * \sa SDL_iconv_close + * \sa SDL_iconv_string + */ extern SDL_DECLSPEC SDL_iconv_t SDLCALL SDL_iconv_open(const char *tocode, const char *fromcode); + +/** + * This function frees a context used for character set conversion. + * + * \param cd The character set conversion handle. + * \returns 0 on success, or -1 on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_iconv + * \sa SDL_iconv_open + * \sa SDL_iconv_string + */ extern SDL_DECLSPEC int SDLCALL SDL_iconv_close(SDL_iconv_t cd); + +/** + * This function converts text between encodings, reading from and writing to + * a buffer. + * + * It returns the number of succesful conversions. + * + * \param cd The character set conversion context, created in + * SDL_iconv_open(). + * \param inbuf Address of variable that points to the first character of the + * input sequence. + * \param inbytesleft The number of bytes in the input buffer. + * \param outbuf Address of variable that points to the output buffer. + * \param outbytesleft The number of bytes in the output buffer. + * \returns the number of conversions on success, else SDL_ICONV_E2BIG is + * returned when the output buffer is too small, or SDL_ICONV_EILSEQ + * is returned when an invalid input sequence is encountered, or + * SDL_ICONV_EINVAL is returned when an incomplete input sequence is + * encountered. + * + * On exit: + * + * - inbuf will point to the beginning of the next multibyte + * sequence. On error, this is the location of the problematic + * input sequence. On success, this is the end of the input + * sequence. - inbytesleft will be set to the number of bytes left + * to convert, which will be 0 on success. - outbuf will point to + * the location where to store the next output byte. - outbytesleft + * will be set to the number of bytes left in the output buffer. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_iconv_open + * \sa SDL_iconv_close + * \sa SDL_iconv_string + */ extern SDL_DECLSPEC size_t SDLCALL SDL_iconv(SDL_iconv_t cd, const char **inbuf, - size_t * inbytesleft, char **outbuf, - size_t * outbytesleft); + size_t *inbytesleft, char **outbuf, + size_t *outbytesleft); /** * Helper function to convert a string's encoding in one call. @@ -2928,6 +2996,10 @@ extern SDL_DECLSPEC size_t SDLCALL SDL_iconv(SDL_iconv_t cd, const char **inbuf, * \returns a new string, converted to the new encoding, or NULL on error. * * \since This function is available since SDL 3.0.0. + * + * \sa SDL_iconv_open + * \sa SDL_iconv_close + * \sa SDL_iconv */ extern SDL_DECLSPEC char * SDLCALL SDL_iconv_string(const char *tocode, const char *fromcode, diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_storage.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_storage.h index 7fc58a8..91a90bc 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_storage.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_storage.h @@ -57,34 +57,34 @@ extern "C" { typedef struct SDL_StorageInterface { /* Called when the storage is closed */ - int (SDLCALL *close)(void *userdata); + SDL_bool (SDLCALL *close)(void *userdata); /* Optional, returns whether the storage is currently ready for access */ SDL_bool (SDLCALL *ready)(void *userdata); /* Enumerate a directory, optional for write-only storage */ - int (SDLCALL *enumerate)(void *userdata, const char *path, SDL_EnumerateDirectoryCallback callback, void *callback_userdata); + SDL_bool (SDLCALL *enumerate)(void *userdata, const char *path, SDL_EnumerateDirectoryCallback callback, void *callback_userdata); /* Get path information, optional for write-only storage */ - int (SDLCALL *info)(void *userdata, const char *path, SDL_PathInfo *info); + SDL_bool (SDLCALL *info)(void *userdata, const char *path, SDL_PathInfo *info); /* Read a file from storage, optional for write-only storage */ - int (SDLCALL *read_file)(void *userdata, const char *path, void *destination, Uint64 length); + SDL_bool (SDLCALL *read_file)(void *userdata, const char *path, void *destination, Uint64 length); /* Write a file to storage, optional for read-only storage */ - int (SDLCALL *write_file)(void *userdata, const char *path, const void *source, Uint64 length); + SDL_bool (SDLCALL *write_file)(void *userdata, const char *path, const void *source, Uint64 length); /* Create a directory, optional for read-only storage */ - int (SDLCALL *mkdir)(void *userdata, const char *path); + SDL_bool (SDLCALL *mkdir)(void *userdata, const char *path); /* Remove a file or empty directory, optional for read-only storage */ - int (SDLCALL *remove)(void *userdata, const char *path); + SDL_bool (SDLCALL *remove)(void *userdata, const char *path); /* Rename a path, optional for read-only storage */ - int (SDLCALL *rename)(void *userdata, const char *oldpath, const char *newpath); + SDL_bool (SDLCALL *rename)(void *userdata, const char *oldpath, const char *newpath); /* Copy a file, optional for read-only storage */ - int (SDLCALL *copy)(void *userdata, const char *oldpath, const char *newpath); + SDL_bool (SDLCALL *copy)(void *userdata, const char *oldpath, const char *newpath); /* Get the space remaining, optional for read-only storage */ Uint64 (SDLCALL *space_remaining)(void *userdata); @@ -196,7 +196,7 @@ extern SDL_DECLSPEC SDL_Storage * SDLCALL SDL_OpenStorage(const SDL_StorageInter * Closes and frees a storage container. * * \param storage a storage container to close. - * \returns 0 if the container was freed with no errors, a negative value + * \returns SDL_TRUE if the container was freed with no errors, SDL_FALSE * otherwise; call SDL_GetError() for more information. Even if the * function returns an error, the container data will be freed; the * error is only for informational purposes. @@ -208,7 +208,7 @@ extern SDL_DECLSPEC SDL_Storage * SDLCALL SDL_OpenStorage(const SDL_StorageInter * \sa SDL_OpenTitleStorage * \sa SDL_OpenUserStorage */ -extern SDL_DECLSPEC int SDLCALL SDL_CloseStorage(SDL_Storage *storage); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CloseStorage(SDL_Storage *storage); /** * Checks if the storage container is ready to use. @@ -230,15 +230,15 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StorageReady(SDL_Storage *storage); * \param storage a storage container to query. * \param path the relative path of the file to query. * \param length a pointer to be filled with the file's length. - * \returns 0 if the file could be queried or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns SDL_TRUE if the file could be queried or SDL_FALSE on failure; + * call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ReadStorageFile * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_GetStorageFileSize(SDL_Storage *storage, const char *path, Uint64 *length); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetStorageFileSize(SDL_Storage *storage, const char *path, Uint64 *length); /** * Synchronously read a file from a storage container into a client-provided @@ -248,7 +248,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetStorageFileSize(SDL_Storage *storage, con * \param path the relative path of the file to read. * \param destination a client-provided buffer to read the file into. * \param length the length of the destination buffer. - * \returns 0 if the file was read or a negative error code on failure; call + * \returns SDL_TRUE if the file was read or SDL_FALSE on failure; call * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. @@ -257,7 +257,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetStorageFileSize(SDL_Storage *storage, con * \sa SDL_StorageReady * \sa SDL_WriteStorageFile */ -extern SDL_DECLSPEC int SDLCALL SDL_ReadStorageFile(SDL_Storage *storage, const char *path, void *destination, Uint64 length); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ReadStorageFile(SDL_Storage *storage, const char *path, void *destination, Uint64 length); /** * Synchronously write a file from client memory into a storage container. @@ -266,8 +266,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_ReadStorageFile(SDL_Storage *storage, const * \param path the relative path of the file to write. * \param source a client-provided buffer to write from. * \param length the length of the source buffer. - * \returns 0 if the file was written or a negative error code on failure; - * call SDL_GetError() for more information. + * \returns SDL_TRUE if the file was written or SDL_FALSE on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -275,21 +275,21 @@ extern SDL_DECLSPEC int SDLCALL SDL_ReadStorageFile(SDL_Storage *storage, const * \sa SDL_ReadStorageFile * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_WriteStorageFile(SDL_Storage *storage, const char *path, const void *source, Uint64 length); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WriteStorageFile(SDL_Storage *storage, const char *path, const void *source, Uint64 length); /** * Create a directory in a writable storage container. * * \param storage a storage container. * \param path the path of the directory to create. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_CreateStorageDirectory(SDL_Storage *storage, const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CreateStorageDirectory(SDL_Storage *storage, const char *path); /** * Enumerate a directory in a storage container through a callback function. @@ -302,28 +302,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_CreateStorageDirectory(SDL_Storage *storage, * \param path the path of the directory to enumerate. * \param callback a function that is called for each entry in the directory. * \param userdata a pointer that is passed to `callback`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_EnumerateStorageDirectory(SDL_Storage *storage, const char *path, SDL_EnumerateDirectoryCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_EnumerateStorageDirectory(SDL_Storage *storage, const char *path, SDL_EnumerateDirectoryCallback callback, void *userdata); /** * Remove a file or an empty directory in a writable storage container. * * \param storage a storage container. * \param path the path of the directory to enumerate. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_RemoveStoragePath(SDL_Storage *storage, const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RemoveStoragePath(SDL_Storage *storage, const char *path); /** * Rename a file or directory in a writable storage container. @@ -331,14 +331,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RemoveStoragePath(SDL_Storage *storage, cons * \param storage a storage container. * \param oldpath the old path. * \param newpath the new path. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_RenameStoragePath(SDL_Storage *storage, const char *oldpath, const char *newpath); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenameStoragePath(SDL_Storage *storage, const char *oldpath, const char *newpath); /** * Copy a file in a writable storage container. @@ -346,14 +346,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenameStoragePath(SDL_Storage *storage, cons * \param storage a storage container. * \param oldpath the old path. * \param newpath the new path. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_CopyStorageFile(SDL_Storage *storage, const char *oldpath, const char *newpath); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CopyStorageFile(SDL_Storage *storage, const char *oldpath, const char *newpath); /** * Get information about a filesystem path in a storage container. @@ -362,14 +362,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_CopyStorageFile(SDL_Storage *storage, const * \param path the path to query. * \param info a pointer filled in with information about the path, or NULL to * check for the existence of a file. - * \returns 0 on success or a negative error code if the file doesn't exist, - * or another failure; call SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE if the file doesn't exist, or + * another failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_GetStoragePathInfo(SDL_Storage *storage, const char *path, SDL_PathInfo *info); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetStoragePathInfo(SDL_Storage *storage, const char *path, SDL_PathInfo *info); /** * Queries the remaining space in a storage container. diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_surface.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_surface.h index 57745ac..aafe574 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_surface.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_surface.h @@ -71,8 +71,7 @@ typedef Uint32 SDL_SurfaceFlags; typedef enum SDL_ScaleMode { SDL_SCALEMODE_NEAREST, /**< nearest pixel sampling */ - SDL_SCALEMODE_LINEAR, /**< linear filtering */ - SDL_SCALEMODE_BEST /**< anisotropic filtering */ + SDL_SCALEMODE_LINEAR /**< linear filtering */ } SDL_ScaleMode; /** @@ -125,6 +124,8 @@ typedef struct SDL_Surface /** * Allocate a new surface with a specific pixel format. * + * The pixels of the new surface are initialized to zero. + * * \param width the width of the surface. * \param height the height of the surface. * \param format the SDL_PixelFormat for the new surface's pixel format. @@ -222,14 +223,14 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetSurfaceProperties(SDL_Surfac * \param surface the SDL_Surface structure to update. * \param colorspace an SDL_ColorSpace value describing the surface * colorspace. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceColorspace */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceColorspace(SDL_Surface *surface, SDL_Colorspace colorspace); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceColorspace(SDL_Surface *surface, SDL_Colorspace colorspace); /** * Get the colorspace used by a surface. @@ -283,15 +284,15 @@ extern SDL_DECLSPEC SDL_Palette * SDLCALL SDL_CreateSurfacePalette(SDL_Surface * * * \param surface the SDL_Surface structure to update. * \param palette the SDL_Palette structure to use. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CreatePalette * \sa SDL_GetSurfacePalette */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfacePalette(SDL_Surface *surface, SDL_Palette *palette); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfacePalette(SDL_Surface *surface, SDL_Palette *palette); /** * Get the palette used by a surface. @@ -320,8 +321,8 @@ extern SDL_DECLSPEC SDL_Palette * SDLCALL SDL_GetSurfacePalette(SDL_Surface *sur * \param surface the SDL_Surface structure to update. * \param image a pointer to an alternate SDL_Surface to associate with this * surface. - * \returns SDL_TRUE if alternate versions are available or SDL_TRUE - * otherwise. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -329,7 +330,7 @@ extern SDL_DECLSPEC SDL_Palette * SDLCALL SDL_GetSurfacePalette(SDL_Surface *sur * \sa SDL_GetSurfaceImages * \sa SDL_SurfaceHasAlternateImages */ -extern SDL_DECLSPEC int SDLCALL SDL_AddSurfaceAlternateImage(SDL_Surface *surface, SDL_Surface *image); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AddSurfaceAlternateImage(SDL_Surface *surface, SDL_Surface *image); /** * Return whether a surface has alternate versions available. @@ -400,15 +401,15 @@ extern SDL_DECLSPEC void SDLCALL SDL_RemoveSurfaceAlternateImages(SDL_Surface *s * format of the surface will not change. * * \param surface the SDL_Surface structure to be locked. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_MUSTLOCK * \sa SDL_UnlockSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_LockSurface(SDL_Surface *surface); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LockSurface(SDL_Surface *surface); /** * Release a surface after directly accessing the pixels. @@ -472,15 +473,15 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_LoadBMP(const char *file); * \param dst a data stream to save to. * \param closeio if SDL_TRUE, calls SDL_CloseIO() on `dst` before returning, * even in the case of an error. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_LoadBMP_IO * \sa SDL_SaveBMP */ -extern SDL_DECLSPEC int SDLCALL SDL_SaveBMP_IO(SDL_Surface *surface, SDL_IOStream *dst, SDL_bool closeio); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SaveBMP_IO(SDL_Surface *surface, SDL_IOStream *dst, SDL_bool closeio); /** * Save a surface to a file. @@ -493,15 +494,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SaveBMP_IO(SDL_Surface *surface, SDL_IOStrea * * \param surface the SDL_Surface structure containing the image to be saved. * \param file a file to save to. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_LoadBMP * \sa SDL_SaveBMP_IO */ -extern SDL_DECLSPEC int SDLCALL SDL_SaveBMP(SDL_Surface *surface, const char *file); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SaveBMP(SDL_Surface *surface, const char *file); /** * Set the RLE acceleration hint for a surface. @@ -512,8 +513,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SaveBMP(SDL_Surface *surface, const char *fi * \param surface the SDL_Surface structure to optimize. * \param enabled SDL_TRUE to enable RLE acceleration, SDL_FALSE to disable * it. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -521,7 +522,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SaveBMP(SDL_Surface *surface, const char *fi * \sa SDL_LockSurface * \sa SDL_UnlockSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceRLE(SDL_Surface *surface, SDL_bool enabled); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceRLE(SDL_Surface *surface, SDL_bool enabled); /** * Returns whether the surface is RLE enabled. @@ -551,8 +552,8 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SurfaceHasRLE(SDL_Surface *surface); * \param enabled SDL_TRUE to enable color key, SDL_FALSE to disable color * key. * \param key the transparent pixel. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -560,7 +561,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SurfaceHasRLE(SDL_Surface *surface); * \sa SDL_SetSurfaceRLE * \sa SDL_SurfaceHasColorKey */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceColorKey(SDL_Surface *surface, SDL_bool enabled, Uint32 key); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceColorKey(SDL_Surface *surface, SDL_bool enabled, Uint32 key); /** * Returns whether the surface has a color key. @@ -587,15 +588,15 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SurfaceHasColorKey(SDL_Surface *surface * * \param surface the SDL_Surface structure to query. * \param key a pointer filled in with the transparent pixel. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetSurfaceColorKey * \sa SDL_SurfaceHasColorKey */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceColorKey(SDL_Surface *surface, Uint32 *key); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSurfaceColorKey(SDL_Surface *surface, Uint32 *key); /** * Set an additional color value multiplied into blit operations. @@ -610,15 +611,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceColorKey(SDL_Surface *surface, Uin * \param r the red color value multiplied into blit operations. * \param g the green color value multiplied into blit operations. * \param b the blue color value multiplied into blit operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceColorMod * \sa SDL_SetSurfaceAlphaMod */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceColorMod(SDL_Surface *surface, Uint8 r, Uint8 g, Uint8 b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceColorMod(SDL_Surface *surface, Uint8 r, Uint8 g, Uint8 b); /** @@ -628,15 +629,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceColorMod(SDL_Surface *surface, Uin * \param r a pointer filled in with the current red color value. * \param g a pointer filled in with the current green color value. * \param b a pointer filled in with the current blue color value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceAlphaMod * \sa SDL_SetSurfaceColorMod */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceColorMod(SDL_Surface *surface, Uint8 *r, Uint8 *g, Uint8 *b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSurfaceColorMod(SDL_Surface *surface, Uint8 *r, Uint8 *g, Uint8 *b); /** * Set an additional alpha value used in blit operations. @@ -648,30 +649,30 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceColorMod(SDL_Surface *surface, Uin * * \param surface the SDL_Surface structure to update. * \param alpha the alpha value multiplied into blit operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceAlphaMod * \sa SDL_SetSurfaceColorMod */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceAlphaMod(SDL_Surface *surface, Uint8 alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceAlphaMod(SDL_Surface *surface, Uint8 alpha); /** * Get the additional alpha value used in blit operations. * * \param surface the SDL_Surface structure to query. * \param alpha a pointer filled in with the current alpha value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceColorMod * \sa SDL_SetSurfaceAlphaMod */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceAlphaMod(SDL_Surface *surface, Uint8 *alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSurfaceAlphaMod(SDL_Surface *surface, Uint8 *alpha); /** * Set the blend mode used for blit operations. @@ -682,28 +683,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceAlphaMod(SDL_Surface *surface, Uin * * \param surface the SDL_Surface structure to update. * \param blendMode the SDL_BlendMode to use for blit blending. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceBlendMode(SDL_Surface *surface, SDL_BlendMode blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceBlendMode(SDL_Surface *surface, SDL_BlendMode blendMode); /** * Get the blend mode used for blit operations. * * \param surface the SDL_Surface structure to query. * \param blendMode a pointer filled in with the current SDL_BlendMode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetSurfaceBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceBlendMode(SDL_Surface *surface, SDL_BlendMode *blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSurfaceBlendMode(SDL_Surface *surface, SDL_BlendMode *blendMode); /** * Set the clipping rectangle for a surface. @@ -736,26 +737,26 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceClipRect(SDL_Surface *surface * clipped. * \param rect an SDL_Rect structure filled in with the clipping rectangle for * the surface. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetSurfaceClipRect */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceClipRect(SDL_Surface *surface, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSurfaceClipRect(SDL_Surface *surface, SDL_Rect *rect); /** * Flip a surface vertically or horizontally. * * \param surface the surface to flip. * \param flip the direction to flip. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_FlipSurface(SDL_Surface *surface, SDL_FlipMode flip); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FlipSurface(SDL_Surface *surface, SDL_FlipMode flip); /** * Creates a new surface identical to the existing surface. @@ -858,14 +859,14 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_ConvertSurfaceAndColorspace(SDL_Su * \param dst_format an SDL_PixelFormat value of the `dst` pixels format. * \param dst a pointer to be filled in with new pixel data. * \param dst_pitch the pitch of the destination pixels, in bytes. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_FALSE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ConvertPixelsAndColorspace */ -extern SDL_DECLSPEC int SDLCALL SDL_ConvertPixels(int width, int height, SDL_PixelFormat src_format, const void *src, int src_pitch, SDL_PixelFormat dst_format, void *dst, int dst_pitch); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ConvertPixels(int width, int height, SDL_PixelFormat src_format, const void *src, int src_pitch, SDL_PixelFormat dst_format, void *dst, int dst_pitch); /** * Copy a block of pixels of one format and colorspace to another format and @@ -887,14 +888,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_ConvertPixels(int width, int height, SDL_Pix * properties, or 0. * \param dst a pointer to be filled in with new pixel data. * \param dst_pitch the pitch of the destination pixels, in bytes. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_FALSE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ConvertPixels */ -extern SDL_DECLSPEC int SDLCALL SDL_ConvertPixelsAndColorspace(int width, int height, SDL_PixelFormat src_format, SDL_Colorspace src_colorspace, SDL_PropertiesID src_properties, const void *src, int src_pitch, SDL_PixelFormat dst_format, SDL_Colorspace dst_colorspace, SDL_PropertiesID dst_properties, void *dst, int dst_pitch); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ConvertPixelsAndColorspace(int width, int height, SDL_PixelFormat src_format, SDL_Colorspace src_colorspace, SDL_PropertiesID src_properties, const void *src, int src_pitch, SDL_PixelFormat dst_format, SDL_Colorspace dst_colorspace, SDL_PropertiesID dst_properties, void *dst, int dst_pitch); /** * Premultiply the alpha on a block of pixels. @@ -911,12 +912,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_ConvertPixelsAndColorspace(int width, int he * \param dst_pitch the pitch of the destination pixels, in bytes. * \param linear SDL_TRUE to convert from sRGB to linear space for the alpha * multiplication, SDL_FALSE to do multiplication in sRGB space. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_PremultiplyAlpha(int width, int height, SDL_PixelFormat src_format, const void *src, int src_pitch, SDL_PixelFormat dst_format, void *dst, int dst_pitch, SDL_bool linear); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PremultiplyAlpha(int width, int height, SDL_PixelFormat src_format, const void *src, int src_pitch, SDL_PixelFormat dst_format, void *dst, int dst_pitch, SDL_bool linear); /** * Premultiply the alpha in a surface. @@ -926,12 +927,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_PremultiplyAlpha(int width, int height, SDL_ * \param surface the surface to modify. * \param linear SDL_TRUE to convert from sRGB to linear space for the alpha * multiplication, SDL_FALSE to do multiplication in sRGB space. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_PremultiplySurfaceAlpha(SDL_Surface *surface, SDL_bool linear); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PremultiplySurfaceAlpha(SDL_Surface *surface, SDL_bool linear); /** * Clear a surface with a specific color, with floating point precision. @@ -946,12 +947,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_PremultiplySurfaceAlpha(SDL_Surface *surface * \param g the green component of the pixel, normally in the range 0-1. * \param b the blue component of the pixel, normally in the range 0-1. * \param a the alpha component of the pixel, normally in the range 0-1. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearSurface(SDL_Surface *surface, float r, float g, float b, float a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearSurface(SDL_Surface *surface, float r, float g, float b, float a); /** * Perform a fast fill of a rectangle with a specific color. @@ -969,14 +970,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_ClearSurface(SDL_Surface *surface, float r, * \param rect the SDL_Rect structure representing the rectangle to fill, or * NULL to fill the entire surface. * \param color the color to fill with. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_FillSurfaceRects */ -extern SDL_DECLSPEC int SDLCALL SDL_FillSurfaceRect(SDL_Surface *dst, const SDL_Rect *rect, Uint32 color); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FillSurfaceRect(SDL_Surface *dst, const SDL_Rect *rect, Uint32 color); /** * Perform a fast fill of a set of rectangles with a specific color. @@ -994,14 +995,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_FillSurfaceRect(SDL_Surface *dst, const SDL_ * \param rects an array of SDL_Rects representing the rectangles to fill. * \param count the number of rectangles in the array. * \param color the color to fill with. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_FillSurfaceRect */ -extern SDL_DECLSPEC int SDLCALL SDL_FillSurfaceRects(SDL_Surface *dst, const SDL_Rect *rects, int count, Uint32 color); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FillSurfaceRects(SDL_Surface *dst, const SDL_Rect *rects, int count, Uint32 color); /** * Performs a fast blit from the source surface to the destination surface. @@ -1065,8 +1066,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_FillSurfaceRects(SDL_Surface *dst, const SDL * height are ignored, and are copied from `srcrect`. If you * want a specific width and height, you should use * SDL_BlitSurfaceScaled(). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1076,7 +1077,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_FillSurfaceRects(SDL_Surface *dst, const SDL * * \sa SDL_BlitSurfaceScaled */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurface(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurface(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); /** * Perform low-level surface blitting only. @@ -1090,8 +1091,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurface(SDL_Surface *src, const SDL_Rect * \param dst the SDL_Surface structure that is the blit target. * \param dstrect the SDL_Rect structure representing the target rectangle in * the destination surface, may not be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1101,7 +1102,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurface(SDL_Surface *src, const SDL_Rect * * \sa SDL_BlitSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUnchecked(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurfaceUnchecked(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); /** * Perform a scaled blit to a destination surface, which may be of a different @@ -1115,8 +1116,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUnchecked(SDL_Surface *src, const * the destination surface, or NULL to fill the entire * destination surface. * \param scaleMode the SDL_ScaleMode to be used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1126,7 +1127,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUnchecked(SDL_Surface *src, const * * \sa SDL_BlitSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceScaled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect, SDL_ScaleMode scaleMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurfaceScaled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect, SDL_ScaleMode scaleMode); /** * Perform low-level surface scaled blitting only. @@ -1141,8 +1142,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceScaled(SDL_Surface *src, const SD * \param dstrect the SDL_Rect structure representing the target rectangle in * the destination surface, may not be NULL. * \param scaleMode the SDL_ScaleMode to be used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1152,7 +1153,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceScaled(SDL_Surface *src, const SD * * \sa SDL_BlitSurfaceScaled */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUncheckedScaled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect, SDL_ScaleMode scaleMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurfaceUncheckedScaled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect, SDL_ScaleMode scaleMode); /** * Perform a tiled blit to a destination surface, which may be of a different @@ -1167,8 +1168,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUncheckedScaled(SDL_Surface *src, * \param dst the SDL_Surface structure that is the blit target. * \param dstrect the SDL_Rect structure representing the target rectangle in * the destination surface, or NULL to fill the entire surface. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1178,7 +1179,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUncheckedScaled(SDL_Surface *src, * * \sa SDL_BlitSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurfaceTiled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); /** * Perform a scaled and tiled blit to a destination surface, which may be of a @@ -1197,8 +1198,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiled(SDL_Surface *src, const SDL * \param dst the SDL_Surface structure that is the blit target. * \param dstrect the SDL_Rect structure representing the target rectangle in * the destination surface, or NULL to fill the entire surface. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1208,7 +1209,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiled(SDL_Surface *src, const SDL * * \sa SDL_BlitSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiledWithScale(SDL_Surface *src, const SDL_Rect *srcrect, float scale, SDL_ScaleMode scaleMode, SDL_Surface *dst, const SDL_Rect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurfaceTiledWithScale(SDL_Surface *src, const SDL_Rect *srcrect, float scale, SDL_ScaleMode scaleMode, SDL_Surface *dst, const SDL_Rect *dstrect); /** * Perform a scaled blit using the 9-grid algorithm to a destination surface, @@ -1234,8 +1235,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiledWithScale(SDL_Surface *src, * \param dst the SDL_Surface structure that is the blit target. * \param dstrect the SDL_Rect structure representing the target rectangle in * the destination surface, or NULL to fill the entire surface. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1245,7 +1246,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiledWithScale(SDL_Surface *src, * * \sa SDL_BlitSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurface9Grid(SDL_Surface *src, const SDL_Rect *srcrect, int left_width, int right_width, int top_height, int bottom_height, float scale, SDL_ScaleMode scaleMode, SDL_Surface *dst, const SDL_Rect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurface9Grid(SDL_Surface *src, const SDL_Rect *srcrect, int left_width, int right_width, int top_height, int bottom_height, float scale, SDL_ScaleMode scaleMode, SDL_Surface *dst, const SDL_Rect *dstrect); /** * Map an RGB triple to an opaque pixel value for a surface. @@ -1328,12 +1329,12 @@ extern SDL_DECLSPEC Uint32 SDLCALL SDL_MapSurfaceRGBA(SDL_Surface *surface, Uint * ignore this channel. * \param a a pointer filled in with the alpha channel, 0-255, or NULL to * ignore this channel. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ReadSurfacePixel(SDL_Surface *surface, int x, int y, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ReadSurfacePixel(SDL_Surface *surface, int x, int y, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a); /** * Retrieves a single pixel from a surface. @@ -1352,12 +1353,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_ReadSurfacePixel(SDL_Surface *surface, int x * 0-1, or NULL to ignore this channel. * \param a a pointer filled in with the alpha channel, normally in the range * 0-1, or NULL to ignore this channel. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ReadSurfacePixelFloat(SDL_Surface *surface, int x, int y, float *r, float *g, float *b, float *a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ReadSurfacePixelFloat(SDL_Surface *surface, int x, int y, float *r, float *g, float *b, float *a); /** * Writes a single pixel to a surface. @@ -1375,12 +1376,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_ReadSurfacePixelFloat(SDL_Surface *surface, * \param g the green channel value, 0-255. * \param b the blue channel value, 0-255. * \param a the alpha channel value, 0-255. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_WriteSurfacePixel(SDL_Surface *surface, int x, int y, Uint8 r, Uint8 g, Uint8 b, Uint8 a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WriteSurfacePixel(SDL_Surface *surface, int x, int y, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /** * Writes a single pixel to a surface. @@ -1395,12 +1396,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_WriteSurfacePixel(SDL_Surface *surface, int * \param g the green channel value, normally in the range 0-1. * \param b the blue channel value, normally in the range 0-1. * \param a the alpha channel value, normally in the range 0-1. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_WriteSurfacePixelFloat(SDL_Surface *surface, int x, int y, float r, float g, float b, float a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WriteSurfacePixelFloat(SDL_Surface *surface, int x, int y, float r, float g, float b, float a); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_system.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_system.h index 9e79e79..17ac0a1 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_system.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_system.h @@ -101,8 +101,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_SetWindowsMessageHook(SDL_WindowsMessageHoo * controls on which monitor a full screen application will appear. * * \param displayID the instance of the display to query. - * \returns the D3D9 adapter index on success or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the D3D9 adapter index on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ @@ -122,12 +122,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetDirect3D9AdapterIndex(SDL_DisplayID displ * \param displayID the instance of the display to query. * \param adapterIndex a pointer to be filled in with the adapter index. * \param outputIndex a pointer to be filled in with the output index. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetDXGIOutputInfo(SDL_DisplayID displayID, int *adapterIndex, int *outputIndex); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetDXGIOutputInfo(SDL_DisplayID displayID, int *adapterIndex, int *outputIndex); #endif /* defined(SDL_PLATFORM_WIN32) || defined(SDL_PLATFORM_WINGDK) */ @@ -162,12 +162,12 @@ extern SDL_DECLSPEC void SDLCALL SDL_SetX11EventHook(SDL_X11EventHook callback, * * \param threadID the Unix thread ID to change priority of. * \param priority the new, Unix-specific, priority value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetLinuxThreadPriority(Sint64 threadID, int priority); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetLinuxThreadPriority(Sint64 threadID, int priority); /** * Sets the priority (not nice level) and scheduling policy for a thread. @@ -178,12 +178,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetLinuxThreadPriority(Sint64 threadID, int * \param sdlPriority the new SDL_ThreadPriority value. * \param schedPolicy the new scheduling policy (SCHED_FIFO, SCHED_RR, * SCHED_OTHER, etc...). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetLinuxThreadPriorityAndPolicy(Sint64 threadID, int sdlPriority, int schedPolicy); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetLinuxThreadPriorityAndPolicy(Sint64 threadID, int sdlPriority, int schedPolicy); #endif /* SDL_PLATFORM_LINUX */ @@ -240,14 +240,14 @@ typedef void (SDLCALL *SDL_iOSAnimationCallback)(void *userdata); * called. * \param callback the function to call for every frame. * \param callbackParam a pointer that is passed to `callback`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetiOSEventPump */ -extern SDL_DECLSPEC int SDLCALL SDL_SetiOSAnimationCallback(SDL_Window *window, int interval, SDL_iOSAnimationCallback callback, void *callbackParam); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetiOSAnimationCallback(SDL_Window *window, int interval, SDL_iOSAnimationCallback callback, void *callbackParam); /** * Use this function to enable or disable the SDL event pump on Apple iOS. @@ -503,15 +503,15 @@ typedef void (SDLCALL *SDL_RequestAndroidPermissionCallback)(void *userdata, con * \param permission the permission to request. * \param cb the callback to trigger when the request has a response. * \param userdata an app-controlled pointer that is passed to the callback. - * \returns zero if the request was submitted, -1 if there was an error - * submitting. The result of the request is only ever reported + * \returns SDL_TRUE if the request was submitted, SDL_FALSE if there was an + * error submitting. The result of the request is only ever reported * through the callback, not this return value. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RequestAndroidPermission(const char *permission, SDL_RequestAndroidPermissionCallback cb, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RequestAndroidPermission(const char *permission, SDL_RequestAndroidPermissionCallback cb, void *userdata); /** * Shows an Android toast notification. @@ -532,14 +532,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RequestAndroidPermission(const char *permiss * \param gravity where the notification should appear on the screen. * \param xoffset set this parameter only when gravity >=0. * \param yoffset set this parameter only when gravity >=0. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowAndroidToast(const char *message, int duration, int gravity, int xoffset, int yoffset); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowAndroidToast(const char *message, int duration, int gravity, int xoffset, int yoffset); /** * Send a user command to SDLActivity. @@ -548,14 +548,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_ShowAndroidToast(const char *message, int du * * \param command user command that must be greater or equal to 0x8000. * \param param user parameter. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SendAndroidMessage(Uint32 command, int param); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SendAndroidMessage(Uint32 command, int param); #endif /* SDL_PLATFORM_ANDROID */ @@ -794,12 +794,12 @@ typedef struct XUser *XUserHandle; * leak. * * \param outTaskQueue a pointer to be filled in with task queue handle. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetGDKTaskQueue(XTaskQueueHandle *outTaskQueue); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetGDKTaskQueue(XTaskQueueHandle *outTaskQueue); /** * Gets a reference to the default user handle for GDK. @@ -809,12 +809,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetGDKTaskQueue(XTaskQueueHandle *outTaskQue * * \param outUserHandle a pointer to be filled in with the default user * handle. - * \returns 0 if success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE if success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetGDKDefaultUser(XUserHandle *outUserHandle); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetGDKDefaultUser(XUserHandle *outUserHandle); #endif diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_thread.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_thread.h index f6ec760..0fdc8a0 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_thread.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_thread.h @@ -252,10 +252,10 @@ extern SDL_DECLSPEC SDL_Thread * SDLCALL SDL_CreateThread(SDL_ThreadFunction fn, */ extern SDL_DECLSPEC SDL_Thread * SDLCALL SDL_CreateThreadWithProperties(SDL_PropertiesID props); -#define SDL_PROP_THREAD_CREATE_ENTRY_FUNCTION_POINTER "entry_function" -#define SDL_PROP_THREAD_CREATE_NAME_STRING "name" -#define SDL_PROP_THREAD_CREATE_USERDATA_POINTER "userdata" -#define SDL_PROP_THREAD_CREATE_STACKSIZE_NUMBER "stacksize" +#define SDL_PROP_THREAD_CREATE_ENTRY_FUNCTION_POINTER "SDL.thread.create.entry_function" +#define SDL_PROP_THREAD_CREATE_NAME_STRING "SDL.thread.create.name" +#define SDL_PROP_THREAD_CREATE_USERDATA_POINTER "SDL.thread.create.userdata" +#define SDL_PROP_THREAD_CREATE_STACKSIZE_NUMBER "SDL.thread.create.stacksize" /* end wiki documentation for macros that are meant to look like functions. */ #endif @@ -320,10 +320,10 @@ extern SDL_DECLSPEC SDL_Thread * SDLCALL SDL_CreateThreadWithPropertiesRuntime(S #define SDL_CreateThread(fn, name, data) SDL_CreateThreadRuntime((fn), (name), (data), (SDL_FunctionPointer) (SDL_BeginThreadFunction), (SDL_FunctionPointer) (SDL_EndThreadFunction)) #define SDL_CreateThreadWithProperties(props) SDL_CreateThreadWithPropertiesRuntime((props), (SDL_FunctionPointer) (SDL_BeginThreadFunction), (SDL_FunctionPointer) (SDL_EndThreadFunction)) -#define SDL_PROP_THREAD_CREATE_ENTRY_FUNCTION_POINTER "entry_function" -#define SDL_PROP_THREAD_CREATE_NAME_STRING "name" -#define SDL_PROP_THREAD_CREATE_USERDATA_POINTER "userdata" -#define SDL_PROP_THREAD_CREATE_STACKSIZE_NUMBER "stacksize" +#define SDL_PROP_THREAD_CREATE_ENTRY_FUNCTION_POINTER "SDL.thread.create.entry_function" +#define SDL_PROP_THREAD_CREATE_NAME_STRING "SDL.thread.create.name" +#define SDL_PROP_THREAD_CREATE_USERDATA_POINTER "SDL.thread.create.userdata" +#define SDL_PROP_THREAD_CREATE_STACKSIZE_NUMBER "SDL.thread.create.stacksize" #endif @@ -381,12 +381,12 @@ extern SDL_DECLSPEC SDL_ThreadID SDLCALL SDL_GetThreadID(SDL_Thread *thread); * an administrator account. Be prepared for this to fail. * * \param priority the SDL_ThreadPriority to set. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetThreadPriority(SDL_ThreadPriority priority); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetThreadPriority(SDL_ThreadPriority priority); /** * Wait for a thread to finish. @@ -504,8 +504,8 @@ typedef void (SDLCALL *SDL_TLSDestructorCallback)(void *value); * \param value the value to associate with the ID for the current thread. * \param destructor a function called when the thread exits, to free the * value, may be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -513,7 +513,7 @@ typedef void (SDLCALL *SDL_TLSDestructorCallback)(void *value); * * \sa SDL_GetTLS */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTLS(SDL_TLSID *id, const void *value, SDL_TLSDestructorCallback destructor); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTLS(SDL_TLSID *id, const void *value, SDL_TLSDestructorCallback destructor); /** * Cleanup all TLS data for this thread. diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_time.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_time.h index de71506..86c1fad 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_time.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_time.h @@ -95,24 +95,24 @@ typedef enum SDL_TimeFormat * format, may be NULL. * \param timeFormat a pointer to the SDL_TimeFormat to hold the returned time * format, may be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetDateTimeLocalePreferences(SDL_DateFormat *dateFormat, SDL_TimeFormat *timeFormat); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetDateTimeLocalePreferences(SDL_DateFormat *dateFormat, SDL_TimeFormat *timeFormat); /** * Gets the current value of the system realtime clock in nanoseconds since * Jan 1, 1970 in Universal Coordinated Time (UTC). * * \param ticks the SDL_Time to hold the returned tick count. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetCurrentTime(SDL_Time *ticks); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetCurrentTime(SDL_Time *ticks); /** * Converts an SDL_Time in nanoseconds since the epoch to a calendar time in @@ -123,12 +123,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetCurrentTime(SDL_Time *ticks); * \param localTime the resulting SDL_DateTime will be expressed in local time * if true, otherwise it will be in Universal Coordinated * Time (UTC). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_TimeToDateTime(SDL_Time ticks, SDL_DateTime *dt, SDL_bool localTime); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TimeToDateTime(SDL_Time ticks, SDL_DateTime *dt, SDL_bool localTime); /** * Converts a calendar time to an SDL_Time in nanoseconds since the epoch. @@ -138,12 +138,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_TimeToDateTime(SDL_Time ticks, SDL_DateTime * * \param dt the source SDL_DateTime. * \param ticks the resulting SDL_Time. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_DateTimeToTime(const SDL_DateTime *dt, SDL_Time *ticks); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_DateTimeToTime(const SDL_DateTime *dt, SDL_Time *ticks); /** * Converts an SDL time into a Windows FILETIME (100-nanosecond intervals @@ -181,8 +181,8 @@ extern SDL_DECLSPEC SDL_Time SDLCALL SDL_TimeFromWindows(Uint32 dwLowDateTime, U * * \param year the year. * \param month the month [1-12]. - * \returns the number of days in the requested month or a negative error code - * on failure; call SDL_GetError() for more information. + * \returns the number of days in the requested month or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ @@ -194,8 +194,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetDaysInMonth(int year, int month); * \param year the year component of the date. * \param month the month component of the date. * \param day the day component of the date. - * \returns the day of year [0-365] if the date is valid or a negative error - * code on failure; call SDL_GetError() for more information. + * \returns the day of year [0-365] if the date is valid or -1 on failure; + * call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ @@ -207,9 +207,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetDayOfYear(int year, int month, int day); * \param year the year component of the date. * \param month the month component of the date. * \param day the day component of the date. - * \returns a value between 0 and 6 (0 being Sunday) if the date is valid or a - * negative error code on failure; call SDL_GetError() for more - * information. + * \returns a value between 0 and 6 (0 being Sunday) if the date is valid or + * -1 on failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_timer.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_timer.h index cd3cc3a..9d05161 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_timer.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_timer.h @@ -137,7 +137,8 @@ typedef Uint32 SDL_TimerID; * The callback function is passed the current timer interval and returns the * next timer interval, in milliseconds. If the returned value is the same as * the one passed in, the periodic alarm continues, otherwise a new alarm is - * scheduled. If the callback returns 0, the periodic alarm is cancelled. + * scheduled. If the callback returns 0, the periodic alarm is canceled and + * will be removed. * * \param userdata an arbitrary pointer provided by the app through * SDL_AddTimer, for its own use. @@ -164,7 +165,7 @@ typedef Uint32 (SDLCALL *SDL_TimerCallback)(void *userdata, SDL_TimerID timerID, * The callback function is passed the current timer interval and the user * supplied parameter from the SDL_AddTimer() call and should return the next * timer interval. If the value returned from the callback is 0, the timer is - * canceled. + * canceled and will be removed. * * The callback is run on a separate thread, and for short timeouts can * potentially be called before this function returns. @@ -200,7 +201,8 @@ extern SDL_DECLSPEC SDL_TimerID SDLCALL SDL_AddTimer(Uint32 interval, SDL_TimerC * The callback function is passed the current timer interval and returns the * next timer interval, in nanoseconds. If the returned value is the same as * the one passed in, the periodic alarm continues, otherwise a new alarm is - * scheduled. If the callback returns 0, the periodic alarm is cancelled. + * scheduled. If the callback returns 0, the periodic alarm is canceled and + * will be removed. * * \param userdata an arbitrary pointer provided by the app through * SDL_AddTimer, for its own use. @@ -227,7 +229,7 @@ typedef Uint64 (SDLCALL *SDL_NSTimerCallback)(void *userdata, SDL_TimerID timerI * The callback function is passed the current timer interval and the user * supplied parameter from the SDL_AddTimerNS() call and should return the * next timer interval. If the value returned from the callback is 0, the - * timer is canceled. + * timer is canceled and will be removed. * * The callback is run on a separate thread, and for short timeouts can * potentially be called before this function returns. @@ -261,14 +263,14 @@ extern SDL_DECLSPEC SDL_TimerID SDLCALL SDL_AddTimerNS(Uint64 interval, SDL_NSTi * Remove a timer created with SDL_AddTimer(). * * \param id the ID of the timer to remove. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_AddTimer */ -extern SDL_DECLSPEC int SDLCALL SDL_RemoveTimer(SDL_TimerID id); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RemoveTimer(SDL_TimerID id); /* Ends C function definitions when using C++ */ diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_video.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_video.h index f78a9c1..7cce828 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_video.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_video.h @@ -41,8 +41,25 @@ extern "C" { #endif - +/** + * This is a unique ID for a display for the time it is connected to the + * system, and is never reused for the lifetime of the application. + * + * If the display is disconnected and reconnected, it will get a new ID. + * + * The value 0 is an invalid ID. + * + * \since This datatype is available since SDL 3.0.0. + */ typedef Uint32 SDL_DisplayID; + +/** + * This is a unique ID for a window. + * + * The value 0 is an invalid ID. + * + * \since This datatype is available since SDL 3.0.0. + */ typedef Uint32 SDL_WindowID; /* Global video properties... */ @@ -155,7 +172,8 @@ typedef Uint64 SDL_WindowFlags; #define SDL_WINDOW_MODAL SDL_UINT64_C(0x0000000000001000) /**< window is modal */ #define SDL_WINDOW_HIGH_PIXEL_DENSITY SDL_UINT64_C(0x0000000000002000) /**< window uses high pixel density back buffer if possible */ #define SDL_WINDOW_MOUSE_CAPTURE SDL_UINT64_C(0x0000000000004000) /**< window has mouse captured (unrelated to MOUSE_GRABBED) */ -#define SDL_WINDOW_ALWAYS_ON_TOP SDL_UINT64_C(0x0000000000008000) /**< window should always be above others */ +#define SDL_WINDOW_MOUSE_RELATIVE_MODE SDL_UINT64_C(0x0000000000008000) /**< window has relative mode enabled */ +#define SDL_WINDOW_ALWAYS_ON_TOP SDL_UINT64_C(0x0000000000010000) /**< window should always be above others */ #define SDL_WINDOW_UTILITY SDL_UINT64_C(0x0000000000020000) /**< window should be treated as a utility window, not showing in the task bar and window list */ #define SDL_WINDOW_TOOLTIP SDL_UINT64_C(0x0000000000040000) /**< window should be treated as a tooltip and does not get mouse or keyboard focus, requires a parent window */ #define SDL_WINDOW_POPUP_MENU SDL_UINT64_C(0x0000000000080000) /**< window should be treated as a popup menu, requires a parent window */ @@ -247,31 +265,31 @@ typedef SDL_EGLint *(SDLCALL *SDL_EGLIntArrayCallback)(void); */ typedef enum SDL_GLattr { - SDL_GL_RED_SIZE, - SDL_GL_GREEN_SIZE, - SDL_GL_BLUE_SIZE, - SDL_GL_ALPHA_SIZE, - SDL_GL_BUFFER_SIZE, - SDL_GL_DOUBLEBUFFER, - SDL_GL_DEPTH_SIZE, - SDL_GL_STENCIL_SIZE, - SDL_GL_ACCUM_RED_SIZE, - SDL_GL_ACCUM_GREEN_SIZE, - SDL_GL_ACCUM_BLUE_SIZE, - SDL_GL_ACCUM_ALPHA_SIZE, - SDL_GL_STEREO, - SDL_GL_MULTISAMPLEBUFFERS, - SDL_GL_MULTISAMPLESAMPLES, - SDL_GL_ACCELERATED_VISUAL, - SDL_GL_RETAINED_BACKING, - SDL_GL_CONTEXT_MAJOR_VERSION, - SDL_GL_CONTEXT_MINOR_VERSION, - SDL_GL_CONTEXT_FLAGS, - SDL_GL_CONTEXT_PROFILE_MASK, - SDL_GL_SHARE_WITH_CURRENT_CONTEXT, - SDL_GL_FRAMEBUFFER_SRGB_CAPABLE, - SDL_GL_CONTEXT_RELEASE_BEHAVIOR, - SDL_GL_CONTEXT_RESET_NOTIFICATION, + SDL_GL_RED_SIZE, /**< the minimum number of bits for the red channel of the color buffer; defaults to 3. */ + SDL_GL_GREEN_SIZE, /**< the minimum number of bits for the green channel of the color buffer; defaults to 3. */ + SDL_GL_BLUE_SIZE, /**< the minimum number of bits for the blue channel of the color buffer; defaults to 2. */ + SDL_GL_ALPHA_SIZE, /**< the minimum number of bits for the alpha channel of the color buffer; defaults to 0. */ + SDL_GL_BUFFER_SIZE, /**< the minimum number of bits for frame buffer size; defaults to 0. */ + SDL_GL_DOUBLEBUFFER, /**< whether the output is single or double buffered; defaults to double buffering on. */ + SDL_GL_DEPTH_SIZE, /**< the minimum number of bits in the depth buffer; defaults to 16. */ + SDL_GL_STENCIL_SIZE, /**< the minimum number of bits in the stencil buffer; defaults to 0. */ + SDL_GL_ACCUM_RED_SIZE, /**< the minimum number of bits for the red channel of the accumulation buffer; defaults to 0. */ + SDL_GL_ACCUM_GREEN_SIZE, /**< the minimum number of bits for the green channel of the accumulation buffer; defaults to 0. */ + SDL_GL_ACCUM_BLUE_SIZE, /**< the minimum number of bits for the blue channel of the accumulation buffer; defaults to 0. */ + SDL_GL_ACCUM_ALPHA_SIZE, /**< the minimum number of bits for the alpha channel of the accumulation buffer; defaults to 0. */ + SDL_GL_STEREO, /**< whether the output is stereo 3D; defaults to off. */ + SDL_GL_MULTISAMPLEBUFFERS, /**< the number of buffers used for multisample anti-aliasing; defaults to 0. */ + SDL_GL_MULTISAMPLESAMPLES, /**< the number of samples used around the current pixel used for multisample anti-aliasing. */ + SDL_GL_ACCELERATED_VISUAL, /**< set to 1 to require hardware acceleration, set to 0 to force software rendering; defaults to allow either. */ + SDL_GL_RETAINED_BACKING, /**< not used (deprecated). */ + SDL_GL_CONTEXT_MAJOR_VERSION, /**< OpenGL context major version. */ + SDL_GL_CONTEXT_MINOR_VERSION, /**< OpenGL context minor version. */ + SDL_GL_CONTEXT_FLAGS, /**< some combination of 0 or more of elements of the SDL_GLcontextFlag enumeration; defaults to 0. */ + SDL_GL_CONTEXT_PROFILE_MASK, /**< type of GL context (Core, Compatibility, ES). See SDL_GLprofile; default value depends on platform. */ + SDL_GL_SHARE_WITH_CURRENT_CONTEXT, /**< OpenGL context sharing; defaults to 0. */ + SDL_GL_FRAMEBUFFER_SRGB_CAPABLE, /**< requests sRGB capable visual; defaults to 0. */ + SDL_GL_CONTEXT_RELEASE_BEHAVIOR, /**< sets context the release behavior. See SDL_GLcontextReleaseFlag; defaults to FLUSH. */ + SDL_GL_CONTEXT_RESET_NOTIFICATION, /**< set context reset notification. See SDL_GLContextResetNotification; defaults to NO_NOTIFICATION. */ SDL_GL_CONTEXT_NO_ERROR, SDL_GL_FLOATBUFFERS, SDL_GL_EGL_PLATFORM @@ -330,8 +348,7 @@ typedef enum SDL_GLContextResetNotification /** * Get the number of video drivers compiled into SDL. * - * \returns a number >= 1 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns the number of built in video drivers. * * \since This function is available since SDL 3.0.0. * @@ -458,15 +475,15 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetDisplayName(SDL_DisplayID displa * * \param displayID the instance ID of the display to query. * \param rect the SDL_Rect structure filled in with the display bounds. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetDisplayUsableBounds * \sa SDL_GetDisplays */ -extern SDL_DECLSPEC int SDLCALL SDL_GetDisplayBounds(SDL_DisplayID displayID, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetDisplayBounds(SDL_DisplayID displayID, SDL_Rect *rect); /** * Get the usable desktop area represented by a display, in screen @@ -482,15 +499,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetDisplayBounds(SDL_DisplayID displayID, SD * * \param displayID the instance ID of the display to query. * \param rect the SDL_Rect structure filled in with the display bounds. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetDisplayBounds * \sa SDL_GetDisplays */ -extern SDL_DECLSPEC int SDLCALL SDL_GetDisplayUsableBounds(SDL_DisplayID displayID, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetDisplayUsableBounds(SDL_DisplayID displayID, SDL_Rect *rect); /** * Get the orientation of a display when it is unrotated. @@ -581,15 +598,15 @@ extern SDL_DECLSPEC SDL_DisplayMode ** SDLCALL SDL_GetFullscreenDisplayModes(SDL * the search. * \param mode a pointer filled in with the closest display mode equal to or * larger than the desired mode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetDisplays * \sa SDL_GetFullscreenDisplayModes */ -extern SDL_DECLSPEC int SDLCALL SDL_GetClosestFullscreenDisplayMode(SDL_DisplayID displayID, int w, int h, float refresh_rate, SDL_bool include_high_density_modes, SDL_DisplayMode *mode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetClosestFullscreenDisplayMode(SDL_DisplayID displayID, int w, int h, float refresh_rate, SDL_bool include_high_density_modes, SDL_DisplayMode *mode); /** * Get information about the desktop's display mode. @@ -734,8 +751,8 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetWindowDisplayScale(SDL_Window *window); * borderless fullscreen desktop mode, or one of the fullscreen * modes returned by SDL_GetFullscreenDisplayModes() to set an * exclusive fullscreen mode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -743,7 +760,7 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetWindowDisplayScale(SDL_Window *window); * \sa SDL_SetWindowFullscreen * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFullscreenMode(SDL_Window *window, const SDL_DisplayMode *mode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowFullscreenMode(SDL_Window *window, const SDL_DisplayMode *mode); /** * Query the display mode to use when a window is visible at fullscreen. @@ -1052,39 +1069,40 @@ extern SDL_DECLSPEC SDL_Window * SDLCALL SDL_CreatePopupWindow(SDL_Window *paren */ extern SDL_DECLSPEC SDL_Window * SDLCALL SDL_CreateWindowWithProperties(SDL_PropertiesID props); -#define SDL_PROP_WINDOW_CREATE_ALWAYS_ON_TOP_BOOLEAN "always_on_top" -#define SDL_PROP_WINDOW_CREATE_BORDERLESS_BOOLEAN "borderless" -#define SDL_PROP_WINDOW_CREATE_FOCUSABLE_BOOLEAN "focusable" -#define SDL_PROP_WINDOW_CREATE_EXTERNAL_GRAPHICS_CONTEXT_BOOLEAN "external_graphics_context" -#define SDL_PROP_WINDOW_CREATE_FULLSCREEN_BOOLEAN "fullscreen" -#define SDL_PROP_WINDOW_CREATE_HEIGHT_NUMBER "height" -#define SDL_PROP_WINDOW_CREATE_HIDDEN_BOOLEAN "hidden" -#define SDL_PROP_WINDOW_CREATE_HIGH_PIXEL_DENSITY_BOOLEAN "high_pixel_density" -#define SDL_PROP_WINDOW_CREATE_MAXIMIZED_BOOLEAN "maximized" -#define SDL_PROP_WINDOW_CREATE_MENU_BOOLEAN "menu" -#define SDL_PROP_WINDOW_CREATE_METAL_BOOLEAN "metal" -#define SDL_PROP_WINDOW_CREATE_MINIMIZED_BOOLEAN "minimized" -#define SDL_PROP_WINDOW_CREATE_MODAL_BOOLEAN "modal" -#define SDL_PROP_WINDOW_CREATE_MOUSE_GRABBED_BOOLEAN "mouse_grabbed" -#define SDL_PROP_WINDOW_CREATE_OPENGL_BOOLEAN "opengl" -#define SDL_PROP_WINDOW_CREATE_PARENT_POINTER "parent" -#define SDL_PROP_WINDOW_CREATE_RESIZABLE_BOOLEAN "resizable" -#define SDL_PROP_WINDOW_CREATE_TITLE_STRING "title" -#define SDL_PROP_WINDOW_CREATE_TRANSPARENT_BOOLEAN "transparent" -#define SDL_PROP_WINDOW_CREATE_TOOLTIP_BOOLEAN "tooltip" -#define SDL_PROP_WINDOW_CREATE_UTILITY_BOOLEAN "utility" -#define SDL_PROP_WINDOW_CREATE_VULKAN_BOOLEAN "vulkan" -#define SDL_PROP_WINDOW_CREATE_WIDTH_NUMBER "width" -#define SDL_PROP_WINDOW_CREATE_X_NUMBER "x" -#define SDL_PROP_WINDOW_CREATE_Y_NUMBER "y" -#define SDL_PROP_WINDOW_CREATE_COCOA_WINDOW_POINTER "cocoa.window" -#define SDL_PROP_WINDOW_CREATE_COCOA_VIEW_POINTER "cocoa.view" -#define SDL_PROP_WINDOW_CREATE_WAYLAND_SURFACE_ROLE_CUSTOM_BOOLEAN "wayland.surface_role_custom" -#define SDL_PROP_WINDOW_CREATE_WAYLAND_CREATE_EGL_WINDOW_BOOLEAN "wayland.create_egl_window" -#define SDL_PROP_WINDOW_CREATE_WAYLAND_WL_SURFACE_POINTER "wayland.wl_surface" -#define SDL_PROP_WINDOW_CREATE_WIN32_HWND_POINTER "win32.hwnd" -#define SDL_PROP_WINDOW_CREATE_WIN32_PIXEL_FORMAT_HWND_POINTER "win32.pixel_format_hwnd" -#define SDL_PROP_WINDOW_CREATE_X11_WINDOW_NUMBER "x11.window" +#define SDL_PROP_WINDOW_CREATE_ALWAYS_ON_TOP_BOOLEAN "SDL.window.create.always_on_top" +#define SDL_PROP_WINDOW_CREATE_BORDERLESS_BOOLEAN "SDL.window.create.borderless" +#define SDL_PROP_WINDOW_CREATE_FOCUSABLE_BOOLEAN "SDL.window.create.focusable" +#define SDL_PROP_WINDOW_CREATE_EXTERNAL_GRAPHICS_CONTEXT_BOOLEAN "SDL.window.create.external_graphics_context" +#define SDL_PROP_WINDOW_CREATE_FLAGS_NUMBER "SDL.window.create.flags" +#define SDL_PROP_WINDOW_CREATE_FULLSCREEN_BOOLEAN "SDL.window.create.fullscreen" +#define SDL_PROP_WINDOW_CREATE_HEIGHT_NUMBER "SDL.window.create.height" +#define SDL_PROP_WINDOW_CREATE_HIDDEN_BOOLEAN "SDL.window.create.hidden" +#define SDL_PROP_WINDOW_CREATE_HIGH_PIXEL_DENSITY_BOOLEAN "SDL.window.create.high_pixel_density" +#define SDL_PROP_WINDOW_CREATE_MAXIMIZED_BOOLEAN "SDL.window.create.maximized" +#define SDL_PROP_WINDOW_CREATE_MENU_BOOLEAN "SDL.window.create.menu" +#define SDL_PROP_WINDOW_CREATE_METAL_BOOLEAN "SDL.window.create.metal" +#define SDL_PROP_WINDOW_CREATE_MINIMIZED_BOOLEAN "SDL.window.create.minimized" +#define SDL_PROP_WINDOW_CREATE_MODAL_BOOLEAN "SDL.window.create.modal" +#define SDL_PROP_WINDOW_CREATE_MOUSE_GRABBED_BOOLEAN "SDL.window.create.mouse_grabbed" +#define SDL_PROP_WINDOW_CREATE_OPENGL_BOOLEAN "SDL.window.create.opengl" +#define SDL_PROP_WINDOW_CREATE_PARENT_POINTER "SDL.window.create.parent" +#define SDL_PROP_WINDOW_CREATE_RESIZABLE_BOOLEAN "SDL.window.create.resizable" +#define SDL_PROP_WINDOW_CREATE_TITLE_STRING "SDL.window.create.title" +#define SDL_PROP_WINDOW_CREATE_TRANSPARENT_BOOLEAN "SDL.window.create.transparent" +#define SDL_PROP_WINDOW_CREATE_TOOLTIP_BOOLEAN "SDL.window.create.tooltip" +#define SDL_PROP_WINDOW_CREATE_UTILITY_BOOLEAN "SDL.window.create.utility" +#define SDL_PROP_WINDOW_CREATE_VULKAN_BOOLEAN "SDL.window.create.vulkan" +#define SDL_PROP_WINDOW_CREATE_WIDTH_NUMBER "SDL.window.create.width" +#define SDL_PROP_WINDOW_CREATE_X_NUMBER "SDL.window.create.x" +#define SDL_PROP_WINDOW_CREATE_Y_NUMBER "SDL.window.create.y" +#define SDL_PROP_WINDOW_CREATE_COCOA_WINDOW_POINTER "SDL.window.create.cocoa.window" +#define SDL_PROP_WINDOW_CREATE_COCOA_VIEW_POINTER "SDL.window.create.cocoa.view" +#define SDL_PROP_WINDOW_CREATE_WAYLAND_SURFACE_ROLE_CUSTOM_BOOLEAN "SDL.window.create.wayland.surface_role_custom" +#define SDL_PROP_WINDOW_CREATE_WAYLAND_CREATE_EGL_WINDOW_BOOLEAN "SDL.window.create.wayland.create_egl_window" +#define SDL_PROP_WINDOW_CREATE_WAYLAND_WL_SURFACE_POINTER "SDL.window.create.wayland.wl_surface" +#define SDL_PROP_WINDOW_CREATE_WIN32_HWND_POINTER "SDL.window.create.win32.hwnd" +#define SDL_PROP_WINDOW_CREATE_WIN32_PIXEL_FORMAT_HWND_POINTER "SDL.window.create.win32.pixel_format_hwnd" +#define SDL_PROP_WINDOW_CREATE_X11_WINDOW_NUMBER "SDL.window.create.x11.window" /** * Get the numeric ID of a window. @@ -1309,14 +1327,14 @@ extern SDL_DECLSPEC SDL_WindowFlags SDLCALL SDL_GetWindowFlags(SDL_Window *windo * * \param window the window to change. * \param title the desired window title in UTF-8 format. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowTitle */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowTitle(SDL_Window *window, const char *title); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowTitle(SDL_Window *window, const char *title); /** * Get the title of a window. @@ -1340,17 +1358,18 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetWindowTitle(SDL_Window *window); * situations. For example, if the original surface is 32x32, then on a 2x * macOS display or 200% display scale on Windows, a 64x64 version of the * image will be used, if available. If a matching version of the image isn't - * available, the closest size image will be scaled to the appropriate size - * and be used instead. + * available, the closest larger size image will be downscaled to the + * appropriate size and be used instead, if available. Otherwise, the closest + * smaller image will be upscaled and be used instead. * * \param window the window to change. * \param icon an SDL_Surface structure containing the icon for the window. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowIcon(SDL_Window *window, SDL_Surface *icon); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowIcon(SDL_Window *window, SDL_Surface *icon); /** * Request that the window's position be set. @@ -1382,15 +1401,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowIcon(SDL_Window *window, SDL_Surfac * `SDL_WINDOWPOS_UNDEFINED`. * \param y the y coordinate of the window, or `SDL_WINDOWPOS_CENTERED` or * `SDL_WINDOWPOS_UNDEFINED`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowPosition * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowPosition(SDL_Window *window, int x, int y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowPosition(SDL_Window *window, int x, int y); /** * Get the position of a window. @@ -1406,14 +1425,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowPosition(SDL_Window *window, int x, * NULL. * \param y a pointer filled in with the y position of the window, may be * NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetWindowPosition */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowPosition(SDL_Window *window, int *x, int *y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowPosition(SDL_Window *window, int *x, int *y); /** * Request that the size of a window's client area be set. @@ -1440,8 +1459,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowPosition(SDL_Window *window, int *x * \param window the window to change. * \param w the width of the window, must be > 0. * \param h the height of the window, must be > 0. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1449,7 +1468,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowPosition(SDL_Window *window, int *x * \sa SDL_SetWindowFullscreenMode * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowSize(SDL_Window *window, int w, int h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowSize(SDL_Window *window, int w, int h); /** * Get the size of a window's client area. @@ -1461,8 +1480,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowSize(SDL_Window *window, int w, int * \param window the window to query the width and height from. * \param w a pointer filled in with the width of the window, may be NULL. * \param h a pointer filled in with the height of the window, may be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1470,7 +1489,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowSize(SDL_Window *window, int w, int * \sa SDL_GetWindowSizeInPixels * \sa SDL_SetWindowSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSize(SDL_Window *window, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowSize(SDL_Window *window, int *w, int *h); /** * Get the safe area for this window. @@ -1485,12 +1504,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSize(SDL_Window *window, int *w, in * \param window the window to query. * \param rect a pointer filled in with the client area that is safe for * interactive content. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSafeArea(SDL_Window *window, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowSafeArea(SDL_Window *window, SDL_Rect *rect); /** * Request that the aspect ratio of a window's client area be set. @@ -1521,15 +1540,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSafeArea(SDL_Window *window, SDL_Re * limit. * \param max_aspect the maximum aspect ratio of the window, or 0.0f for no * limit. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowAspectRatio * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowAspectRatio(SDL_Window *window, float min_aspect, float max_aspect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowAspectRatio(SDL_Window *window, float min_aspect, float max_aspect); /** * Get the size of a window's client area. @@ -1539,14 +1558,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowAspectRatio(SDL_Window *window, flo * window, may be NULL. * \param max_aspect a pointer filled in with the maximum aspect ratio of the * window, may be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetWindowAspectRatio */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowAspectRatio(SDL_Window *window, float *min_aspect, float *max_aspect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowAspectRatio(SDL_Window *window, float *min_aspect, float *max_aspect); /** * Get the size of a window's borders (decorations) around the client area. @@ -1573,14 +1592,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowAspectRatio(SDL_Window *window, flo * border; NULL is permitted. * \param right pointer to variable for storing the size of the right border; * NULL is permitted. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowBordersSize(SDL_Window *window, int *top, int *left, int *bottom, int *right); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowBordersSize(SDL_Window *window, int *top, int *left, int *bottom, int *right); /** * Get the size of a window's client area, in pixels. @@ -1590,15 +1609,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowBordersSize(SDL_Window *window, int * NULL. * \param h a pointer to variable for storing the height in pixels, may be * NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CreateWindow * \sa SDL_GetWindowSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSizeInPixels(SDL_Window *window, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowSizeInPixels(SDL_Window *window, int *w, int *h); /** * Set the minimum size of a window's client area. @@ -1606,15 +1625,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSizeInPixels(SDL_Window *window, in * \param window the window to change. * \param min_w the minimum width of the window, or 0 for no limit. * \param min_h the minimum height of the window, or 0 for no limit. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMinimumSize * \sa SDL_SetWindowMaximumSize */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMinimumSize(SDL_Window *window, int min_w, int min_h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowMinimumSize(SDL_Window *window, int min_w, int min_h); /** * Get the minimum size of a window's client area. @@ -1624,15 +1643,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMinimumSize(SDL_Window *window, int * NULL. * \param h a pointer filled in with the minimum height of the window, may be * NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMaximumSize * \sa SDL_SetWindowMinimumSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowMinimumSize(SDL_Window *window, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowMinimumSize(SDL_Window *window, int *w, int *h); /** * Set the maximum size of a window's client area. @@ -1640,15 +1659,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowMinimumSize(SDL_Window *window, int * \param window the window to change. * \param max_w the maximum width of the window, or 0 for no limit. * \param max_h the maximum height of the window, or 0 for no limit. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMaximumSize * \sa SDL_SetWindowMinimumSize */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMaximumSize(SDL_Window *window, int max_w, int max_h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowMaximumSize(SDL_Window *window, int max_w, int max_h); /** * Get the maximum size of a window's client area. @@ -1658,15 +1677,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMaximumSize(SDL_Window *window, int * NULL. * \param h a pointer filled in with the maximum height of the window, may be * NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMinimumSize * \sa SDL_SetWindowMaximumSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowMaximumSize(SDL_Window *window, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowMaximumSize(SDL_Window *window, int *w, int *h); /** * Set the border state of a window. @@ -1679,14 +1698,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowMaximumSize(SDL_Window *window, int * * \param window the window of which to change the border state. * \param bordered SDL_FALSE to remove border, SDL_TRUE to add border. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowFlags */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowBordered(SDL_Window *window, SDL_bool bordered); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowBordered(SDL_Window *window, SDL_bool bordered); /** * Set the user-resizable state of a window. @@ -1699,14 +1718,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowBordered(SDL_Window *window, SDL_bo * * \param window the window of which to change the resizable state. * \param resizable SDL_TRUE to allow resizing, SDL_FALSE to disallow. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowFlags */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowResizable(SDL_Window *window, SDL_bool resizable); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowResizable(SDL_Window *window, SDL_bool resizable); /** * Set the window to always be above the others. @@ -1717,41 +1736,41 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowResizable(SDL_Window *window, SDL_b * \param window the window of which to change the always on top state. * \param on_top SDL_TRUE to set the window always on top, SDL_FALSE to * disable. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowFlags */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowAlwaysOnTop(SDL_Window *window, SDL_bool on_top); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowAlwaysOnTop(SDL_Window *window, SDL_bool on_top); /** * Show a window. * * \param window the window to show. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_HideWindow * \sa SDL_RaiseWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowWindow(SDL_Window *window); /** * Hide a window. * * \param window the window to hide. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ShowWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_HideWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HideWindow(SDL_Window *window); /** * Request that a window be raised above other windows and gain the input @@ -1764,12 +1783,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_HideWindow(SDL_Window *window); * the window will have the SDL_WINDOW_INPUT_FOCUS flag set. * * \param window the window to raise. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RaiseWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RaiseWindow(SDL_Window *window); /** * Request that the window be made as large as possible. @@ -1792,8 +1811,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_RaiseWindow(SDL_Window *window); * and Wayland window managers may vary. * * \param window the window to maximize. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1801,7 +1820,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_RaiseWindow(SDL_Window *window); * \sa SDL_RestoreWindow * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_MaximizeWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_MaximizeWindow(SDL_Window *window); /** * Request that the window be minimized to an iconic representation. @@ -1816,8 +1835,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_MaximizeWindow(SDL_Window *window); * deny the state change. * * \param window the window to minimize. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1825,7 +1844,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_MaximizeWindow(SDL_Window *window); * \sa SDL_RestoreWindow * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_MinimizeWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_MinimizeWindow(SDL_Window *window); /** * Request that the size and position of a minimized or maximized window be @@ -1841,8 +1860,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_MinimizeWindow(SDL_Window *window); * deny the state change. * * \param window the window to restore. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1850,7 +1869,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_MinimizeWindow(SDL_Window *window); * \sa SDL_MinimizeWindow * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_RestoreWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RestoreWindow(SDL_Window *window); /** * Request that the window's fullscreen state be changed. @@ -1871,8 +1890,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_RestoreWindow(SDL_Window *window); * \param window the window to change. * \param fullscreen SDL_TRUE for fullscreen mode, SDL_FALSE for windowed * mode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1880,7 +1899,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_RestoreWindow(SDL_Window *window); * \sa SDL_SetWindowFullscreenMode * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFullscreen(SDL_Window *window, SDL_bool fullscreen); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowFullscreen(SDL_Window *window, SDL_bool fullscreen); /** * Block until any pending window state is finalized. @@ -1896,9 +1915,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFullscreen(SDL_Window *window, SDL_ * * \param window the window for which to wait for the pending state to be * applied. - * \returns 0 on success, a positive value if the operation timed out before - * the window was in the requested state, or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE if the operation timed out before + * the window was in the requested state. * * \since This function is available since SDL 3.0.0. * @@ -1910,7 +1928,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFullscreen(SDL_Window *window, SDL_ * \sa SDL_RestoreWindow * \sa SDL_HINT_VIDEO_SYNC_WINDOW_OPERATIONS */ -extern SDL_DECLSPEC int SDLCALL SDL_SyncWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SyncWindow(SDL_Window *window); /** * Return whether the window has a surface associated with it. @@ -1967,14 +1985,14 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_GetWindowSurface(SDL_Window *windo * * \param window the window. * \param vsync the vertical refresh sync interval. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowSurfaceVSync */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowSurfaceVSync(SDL_Window *window, int vsync); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowSurfaceVSync(SDL_Window *window, int vsync); #define SDL_WINDOW_SURFACE_VSYNC_DISABLED 0 #define SDL_WINDOW_SURFACE_VSYNC_ADAPTIVE (-1) @@ -1985,14 +2003,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowSurfaceVSync(SDL_Window *window, in * \param window the window to query. * \param vsync an int filled with the current vertical refresh sync interval. * See SDL_SetWindowSurfaceVSync() for the meaning of the value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetWindowSurfaceVSync */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSurfaceVSync(SDL_Window *window, int *vsync); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowSurfaceVSync(SDL_Window *window, int *vsync); /** * Copy the window surface to the screen. @@ -2003,15 +2021,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSurfaceVSync(SDL_Window *window, in * This function is equivalent to the SDL 1.2 API SDL_Flip(). * * \param window the window to update. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowSurface * \sa SDL_UpdateWindowSurfaceRects */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateWindowSurface(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateWindowSurface(SDL_Window *window); /** * Copy areas of the window surface to the screen. @@ -2030,29 +2048,29 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateWindowSurface(SDL_Window *window); * \param rects an array of SDL_Rect structures representing areas of the * surface to copy, in pixels. * \param numrects the number of rectangles. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowSurface * \sa SDL_UpdateWindowSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateWindowSurfaceRects(SDL_Window *window, const SDL_Rect *rects, int numrects); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateWindowSurfaceRects(SDL_Window *window, const SDL_Rect *rects, int numrects); /** * Destroy the surface associated with the window. * * \param window the window to update. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowSurface * \sa SDL_WindowHasSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_DestroyWindowSurface(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_DestroyWindowSurface(SDL_Window *window); /** * Set a window's keyboard grab mode. @@ -2075,15 +2093,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_DestroyWindowSurface(SDL_Window *window); * * \param window the window for which the keyboard grab mode should be set. * \param grabbed this is SDL_TRUE to grab keyboard, and SDL_FALSE to release. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowKeyboardGrab * \sa SDL_SetWindowMouseGrab */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowKeyboardGrab(SDL_Window *window, SDL_bool grabbed); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowKeyboardGrab(SDL_Window *window, SDL_bool grabbed); /** * Set a window's mouse grab mode. @@ -2092,15 +2110,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowKeyboardGrab(SDL_Window *window, SD * * \param window the window for which the mouse grab mode should be set. * \param grabbed this is SDL_TRUE to grab mouse, and SDL_FALSE to release. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMouseGrab * \sa SDL_SetWindowKeyboardGrab */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMouseGrab(SDL_Window *window, SDL_bool grabbed); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowMouseGrab(SDL_Window *window, SDL_bool grabbed); /** * Get a window's keyboard grab mode. @@ -2147,15 +2165,15 @@ extern SDL_DECLSPEC SDL_Window * SDLCALL SDL_GetGrabbedWindow(void); * \param window the window that will be associated with the barrier. * \param rect a rectangle area in window-relative coordinates. If NULL the * barrier for the specified window will be destroyed. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMouseRect * \sa SDL_SetWindowMouseGrab */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMouseRect(SDL_Window *window, const SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowMouseRect(SDL_Window *window, const SDL_Rect *rect); /** * Get the mouse confinement rectangle of a window. @@ -2180,14 +2198,14 @@ extern SDL_DECLSPEC const SDL_Rect * SDLCALL SDL_GetWindowMouseRect(SDL_Window * * * \param window the window which will be made transparent or opaque. * \param opacity the opacity value (0.0f - transparent, 1.0f - opaque). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowOpacity */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowOpacity(SDL_Window *window, float opacity); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowOpacity(SDL_Window *window, float opacity); /** * Get the opacity of a window. @@ -2196,8 +2214,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowOpacity(SDL_Window *window, float o * as 1.0f without error. * * \param window the window to get the current opacity value from. - * \returns the opacity, (0.0f - transparent, 1.0f - opaque), or a negative - * error code on failure; call SDL_GetError() for more information. + * \returns the opacity, (0.0f - transparent, 1.0f - opaque), or -1.0f on + * failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -2217,12 +2235,12 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetWindowOpacity(SDL_Window *window); * * \param modal_window the window that should be set modal. * \param parent_window the parent window for the modal window. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowModalFor(SDL_Window *modal_window, SDL_Window *parent_window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowModalFor(SDL_Window *modal_window, SDL_Window *parent_window); /** * Set whether the window may have input focus. @@ -2230,12 +2248,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowModalFor(SDL_Window *modal_window, * \param window the window to set focusable state. * \param focusable SDL_TRUE to allow input focus, SDL_FALSE to not allow * input focus. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFocusable(SDL_Window *window, SDL_bool focusable); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowFocusable(SDL_Window *window, SDL_bool focusable); /** @@ -2254,12 +2272,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFocusable(SDL_Window *window, SDL_b * the client area. * \param y the y coordinate of the menu, relative to the origin (top-left) of * the client area. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowWindowSystemMenu(SDL_Window *window, int x, int y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowWindowSystemMenu(SDL_Window *window, int x, int y); /** * Possible return values from the SDL_HitTest callback. @@ -2317,7 +2335,7 @@ typedef SDL_HitTestResult (SDLCALL *SDL_HitTest)(SDL_Window *win, * Specifying NULL for a callback disables hit-testing. Hit-testing is * disabled by default. * - * Platforms that don't support this functionality will return -1 + * Platforms that don't support this functionality will return SDL_FALSE * unconditionally, even if you're attempting to disable hit-testing. * * Your callback may fire at any time, and its firing does not indicate any @@ -2331,12 +2349,12 @@ typedef SDL_HitTestResult (SDLCALL *SDL_HitTest)(SDL_Window *win, * \param window the window to set hit-testing on. * \param callback the function to call when doing a hit-test. * \param callback_data an app-defined void pointer passed to **callback**. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowHitTest(SDL_Window *window, SDL_HitTest callback, void *callback_data); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowHitTest(SDL_Window *window, SDL_HitTest callback, void *callback_data); /** * Set the shape of a transparent window. @@ -2355,24 +2373,24 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowHitTest(SDL_Window *window, SDL_Hit * \param window the window. * \param shape the surface representing the shape of the window, or NULL to * remove any current shape. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowShape(SDL_Window *window, SDL_Surface *shape); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowShape(SDL_Window *window, SDL_Surface *shape); /** * Request a window to demand attention from the user. * * \param window the window to be flashed. * \param operation the operation to perform. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_FlashWindow(SDL_Window *window, SDL_FlashOperation operation); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FlashWindow(SDL_Window *window, SDL_FlashOperation operation); /** * Destroy a window. @@ -2411,15 +2429,15 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ScreenSaverEnabled(void); /** * Allow the screen to be blanked by a screen saver. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_DisableScreenSaver * \sa SDL_ScreenSaverEnabled */ -extern SDL_DECLSPEC int SDLCALL SDL_EnableScreenSaver(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_EnableScreenSaver(void); /** * Prevent the screen from being blanked by a screen saver. @@ -2430,15 +2448,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_EnableScreenSaver(void); * The screensaver is disabled by default, but this may by changed by * SDL_HINT_VIDEO_ALLOW_SCREENSAVER. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_EnableScreenSaver * \sa SDL_ScreenSaverEnabled */ -extern SDL_DECLSPEC int SDLCALL SDL_DisableScreenSaver(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_DisableScreenSaver(void); /** @@ -2458,15 +2476,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_DisableScreenSaver(void); * * \param path the platform dependent OpenGL library name, or NULL to open the * default OpenGL library. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_GetProcAddress * \sa SDL_GL_UnloadLibrary */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_LoadLibrary(const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_LoadLibrary(const char *path); /** * Get an OpenGL function by name. @@ -2589,15 +2607,15 @@ extern SDL_DECLSPEC void SDLCALL SDL_GL_ResetAttributes(void); * \param attr an SDL_GLattr enum value specifying the OpenGL attribute to * set. * \param value the desired value for the attribute. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_GetAttribute * \sa SDL_GL_ResetAttributes */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_SetAttribute(SDL_GLattr attr, int value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_SetAttribute(SDL_GLattr attr, int value); /** * Get the actual value for an attribute from the current context. @@ -2605,15 +2623,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GL_SetAttribute(SDL_GLattr attr, int value); * \param attr an SDL_GLattr enum value specifying the OpenGL attribute to * get. * \param value a pointer filled in with the current value of `attr`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_ResetAttributes * \sa SDL_GL_SetAttribute */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_GetAttribute(SDL_GLattr attr, int *value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_GetAttribute(SDL_GLattr attr, int *value); /** * Create an OpenGL context for an OpenGL window, and make it current. @@ -2644,14 +2662,14 @@ extern SDL_DECLSPEC SDL_GLContext SDLCALL SDL_GL_CreateContext(SDL_Window *windo * * \param window the window to associate with the context. * \param context the OpenGL context to associate with the window. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_CreateContext */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_MakeCurrent(SDL_Window *window, SDL_GLContext context); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_MakeCurrent(SDL_Window *window, SDL_GLContext context); /** * Get the currently active OpenGL window. @@ -2740,8 +2758,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_EGL_SetAttributeCallbacks(SDL_EGLAttribArra * the vertical retrace for a given frame, it swaps buffers immediately, which * might be less jarring for the user during occasional framerate drops. If an * application requests adaptive vsync and the system does not support it, - * this function will fail and return -1. In such a case, you should probably - * retry the call with 1 for the interval. + * this function will fail and return SDL_FALSE. In such a case, you should + * probably retry the call with 1 for the interval. * * Adaptive vsync is implemented for some glX drivers with * GLX_EXT_swap_control_tear, and for some Windows drivers with @@ -2752,14 +2770,14 @@ extern SDL_DECLSPEC void SDLCALL SDL_EGL_SetAttributeCallbacks(SDL_EGLAttribArra * * \param interval 0 for immediate updates, 1 for updates synchronized with * the vertical retrace, -1 for adaptive vsync. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_GetSwapInterval */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_SetSwapInterval(int interval); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_SetSwapInterval(int interval); /** * Get the swap interval for the current OpenGL context. @@ -2771,14 +2789,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GL_SetSwapInterval(int interval); * synchronization, 1 if the buffer swap is synchronized with * the vertical retrace, and -1 if late swaps happen * immediately instead of waiting for the next retrace. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_SetSwapInterval */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_GetSwapInterval(int *interval); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_GetSwapInterval(int *interval); /** * Update a window with OpenGL rendering. @@ -2791,25 +2809,25 @@ extern SDL_DECLSPEC int SDLCALL SDL_GL_GetSwapInterval(int *interval); * extra. * * \param window the window to change. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_SwapWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_SwapWindow(SDL_Window *window); /** * Delete an OpenGL context. * * \param context the OpenGL context to be deleted. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_CreateContext */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_DestroyContext(SDL_GLContext context); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_DestroyContext(SDL_GLContext context); /* @} *//* OpenGL support functions */ diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_vulkan.h b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_vulkan.h index 6dd0537..c31d33c 100644 --- a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_vulkan.h +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Headers/SDL_vulkan.h @@ -95,15 +95,15 @@ struct VkAllocationCallbacks; * library version. * * \param path the platform dependent Vulkan loader library name or NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_Vulkan_GetVkGetInstanceProcAddr * \sa SDL_Vulkan_UnloadLibrary */ -extern SDL_DECLSPEC int SDLCALL SDL_Vulkan_LoadLibrary(const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_Vulkan_LoadLibrary(const char *path); /** * Get the address of the `vkGetInstanceProcAddr` function. @@ -175,18 +175,18 @@ extern SDL_DECLSPEC char const * const * SDLCALL SDL_Vulkan_GetInstanceExtension * allocator that creates the surface. Can be NULL. * \param surface a pointer to a VkSurfaceKHR handle to output the newly * created surface. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_Vulkan_GetInstanceExtensions * \sa SDL_Vulkan_DestroySurface */ -extern SDL_DECLSPEC int SDLCALL SDL_Vulkan_CreateSurface(SDL_Window *window, - VkInstance instance, - const struct VkAllocationCallbacks *allocator, - VkSurfaceKHR* surface); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_Vulkan_CreateSurface(SDL_Window *window, + VkInstance instance, + const struct VkAllocationCallbacks *allocator, + VkSurfaceKHR* surface); /** * Destroy the Vulkan rendering surface of a window. diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Info.plist b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/Info.plist index b0172b952b87932e7bd8375ec0e6efeaf2fc3480..2948e7ef8488ce6d73d8f72b0ebaaf21bc7ead17 100644 GIT binary patch delta 85 zcmX@Xc7kog14d?J)6~h285cP^nHm@wC&df!XBK4S=cN{B=9cCpmgE8%bdxN85cP^ni?CLrNs;IXBK4S=cN{B=9cCpmgEb>v!*1NvD*3Y6- zRlBBLReSH+wQD#TZ-2`?U*xgumTexd(CKu|m`)c8SEq~e=yZ{-lHqIiW&GA5ihoG+ z2AvVA3R7Ap_iUaM34gtRIm&&>16uTLr-7D7hI3EfcFLQ{_q6yaUJI57YtcW&D<=S6 zewPOJGz#RpOSxOTCvvK&fd?Mcz!VNr51CuHQl6JWl+VO=kt?Djc-)GMS`rEeFOF}k zgqa#DezA3Aa%&C0zT>q7Jgk*r92yfjd!`m$f#%Xb3hTA}p~?qCBO=Gl(h|%IV9di> z{!mjB<@C_jk)`QclE-4SGI&@^(tlV?WZyTmXirNmn!>z_aw%AG4~uAB+k<@rIMjxt zm2ZdLRolOP1NG~26uogs^EH7o8wSc;qugg467hWik>MJ&3gIAXjK>%qImw{apB$z| zQrMuiG&+1)xE5Ki#pw`Mn@Fu=lt)diTRaw_MGg!^J{F-YG2IinA^;8vfGJGvS~5I3 za#bL1nMI4FFt2RP@aXX5hqUr4w9(ZetbRA5by9e=O^e9UYq=06ERw>@=V=icfvONz zrywG7%rk+a0y!wm>&YGw9ohFeEiyWQA%%Hl1tP~d0y*!|%A_#wtG-fnqrQb&WM6f$ zx%CLc)B`QmedgA~+f-;^U2>qh@<17HFm=$#))SHt4#PNw{oGQwC%^zyy7x>=-6|x_ z4r!&!nxxZF?kM~w&26Qd&;aQVx6+lrq;476x@B;BkWOb)zBG3X&fnci_qy8j-qvk9 z-2F|(fyMSAX{-I!T^3|5oYNJVwP6Iqu&os~kQ+inPSftuxRO^ob z{n}-1&kQ=YM)`Eq|6x;}4GCz)NtV$ARo(T$h zdY0r)YSA@Z7w?fA#j#Vw2gFqILGk~j`tH~qqC;G1OgNl`U*O!5qzO+F{74g>PLfUe za%#Ebihh27UlGu;OYY#e(K+=Z+W9_31mM4sQ;Y;l=he0Hjm^^*(tfL#a7wt{iItMb<0|p&Ev8b8(pTd9G1An*1(u(+L@j$4hlVJ zd)YJyg$PSMl^If+sa#z>Kd5zhnCKc`8U#FmhWGHREp$0d&A8mCb$E(6ew-+8Hww9_ zVMf^#S8lsoJ(CgCHqJ02N<0ECpa_FV5RBQ zR`!WeQd+f?R%VRbA-InKDhjJT(lUvijjuLk?vn)L8Hw$ZScxgF&?xVak^%>AD`(F9+p$;JO0}n-azFu->N0dzc z#j0zwMD!)D4iDfHcX-|a;xhY{LdA%6-vu%PRr**e0=sa`UCdnNn z8RcymXPA(?fdZzu14iD-8`(C&nL%CL2E1>Qe>KIO*8r{&VUlY!xXTRgG6%nL;gV4< zkzDpDGsc02vPN)Q(4fFjx`Regmu}}{=?)r$T4tLP<1juo=z+`fS$0`)CQ{da1)*e4 z+d^m{h7id77eJ0nVS-}`Fp=a!-wx%<6P?&>rTvqw?kfNqQKq;{g8Lw{8$mhdv~tNE zI@X-FgPi#7ro?l?JB99uG5(EGT4B6jL*pVMpB3dZs05TyMnk)q>JJK5c0MwKeW$dW z7HxkMOpF$kVw}+e{KnK_o4EjStOi51n?|~g#U0v+Mmu}D93}ca7FK3VEVZ3A#uYkh z8VWCrL28Micl$S*&i~yZbR-7Q>5zW9+%807WpLOH&ZHZI*F#l~!i%<2-&F%zET`@? zg8LkHu{&u(+*-@ zuD3rk3B^fi+l_2XEdh2#t6EU2@b3<#Y`Tg}Qy)#l-!~s^lTvPsD=@~DnBq75h@R8Q zXXTVKx#q$FQ~Y*gVwET?FBYs9WE;@idf}icexEUMeleiyL8F%-Gpu1IRsb3mGJVJn zX~aB`UdoooI``ue(3eE)X-?_n+QYJ{dtZCJv>;e0lc1|BAKVSn<{*2IR zCH1jZlWsxCW!m{a#i`p(IQ5yH{huM!{_$30Z$apPhE4j+`n@w?dM)YvX9(?oT!aWf zuWKS;q7wH+Y&{W>Wt2D6iGZv+5wM|71Y80e{-+|~ZuDZE2zZG^z=nVb$Obp%To(bC zG!f7p>3xgqL_ij(lMu*Uz(qjFbrDd=MZlvF0iC3+$aJ0Y7i)~a_;!p>l@sHy6}fmj zW0cE@@xP~9j|3^UC-1k{vHMFvFdOx2m}Snof!%w6G2Fzx0p=)(dr+W5T4gq4Vl5HN7Tqa)FqX`v`s7bIE zaG@eXr~uFTkSiUP!L!jeM%aqi)-R;>#Jf$X5T2YeeHH$kX+u~k62}vdQ@-c8M?$0F( z$@9x(+XoieJ)3~?2CM9|$j-+Q7$e>%jvMElh9x`H?&wU9kXZ&T+9+Q%##eo;dmd`A zJU_!C+p>hrb*M*Ncy&zQ_`WXN2a?@oS|&Jy8|!pQLD3Ui3YnL&sIa)^mkoEvP*P|P z#Zp?0B&@y&vh$8R8>W+-DF1P;r571xzfnH*EtO_**&y)FSX}F-0wt4t(cDKuen zijX-40pGV;j!_f(#S58>fCHjOO^EL&WG>VKlMzVo=v$(tOF>p4vy)bg8Kn!(XAqNQ zh?>w+c=aP{pCPJSOJPwm+LIInZ+c4%_5cjFk=Y3pJ-nshe4kW)jDtl!VUaIcT&5f> zl6H;@jDl^I_pN8cbiT77k3h*Qu9w{9mXc}O2^6dXvp+4ki6153w-F`3(Maj^j|lre zw2UtTyQbtdM1{2yoEPE!(=w=tzE7cu5gfVbf1s@w2)Q8gW{$jG;yDdvD)HRyn`^(` z-bFv4$Uk5{NYaNzMhcm6yqu_(=&L9G4xPgl?E4rQr&2~D5Fs<3*9{`Eb^FVF?|y)M zvB*c=N%ANT9+F4Gt1kdq>P|ZerOf4;FwtaEHUgDh5UB~IGA*ShkiH9KBY`v-NoXPv zoNr$8`xnk%#wQe~8vzIuLJTsIq|2?M<>TQ@=gX!sv@g7>$+NZ^3N)g&kN5!IAj_s} z3{_8-5l;pr&QE_w@%QhBnC(eZokxl^*D5jO66gY%H{62Y)w6J&?(3&Eu&!vVp zvi~JLYJjO>&= zb*Bi^lWSVEQLd;{@L`E7pBqg|ejifu??GHw^oQ^rSez^Fc2e@Kwcz-D0VThvGO-r+ z9cVhB<99X7H9-B0p4N5pId4}W1T(yRfNvI%uKx*0#pp^MXmMHlVtF3rvWAHZuhD4Q zI-YyN>0Ex(Wu8A#e&2Px{5OTSL)*&99V=9xD zS>+nDe6@}mFL>WS3@UJ?MDt}9Np-7y#w^2pe90`ATI6XSqkLSHH_Ka$@(C#DMo5fu z$(33*ZVVQgSPAllmdg}2#{2RNjl8H?KT(B_lOY&+6mZNUUzYb`B1RLf1H}p6(fz@e zWW4@s+(PQ(_5zYyYE<|OhFigHw;OmG5wufEXc1e=0WbV$u)>8IC z+O7&J!`eL>tg!GhX-(K8SkP_ZWxkF}TX>lyF*QKQyZ|~wm@nii;je7B@G|L46q`Pl z{LqrjNMR?B2v%WHoK@b@)w0UMVlPI#-UiF8l_4mTR3fd8*LWRVEBaBA-CQ)ems&_d zxtI6Cy4vDi)0aEzE?$FBayzTwi1K+kWd&>oX1M^i0{b{{-bC+CXlBIdL?3fdE(o>2 z+tJ7>WM?)N;c`=6qiYS7%eOC9@3f}I_QL{zt|Q?w%Lgs;7OVVoWv`od04%J^Dxa{j(`G-+^(DqZ zshc6o(ag88mcYK{+)fsGkD0cc45kbzDX~OwybQ7#=?-dOPAnB1^AUi}9cCk;V+Q=X zVXg=j+imi;0$&&ms3u|J@8^s{4d`9kvZM`V%r|VM|$~6PInXkokOvI#P7LiGjR|^u>MQ*cI(xW_FYW znbSOyU3QjZe9dX=LFL@uG1?kNO5NyJ2wg_e* zC>H##Hy0c=nBsrq!|AL55Q83UL!C6B37hxwaZK6?x3c5(Y>Q!CG}SH{xT(wR$F}Mv zG4Z^R`CCtnlwU8r@{8h;AqJHLa!-4P5SO|_h?|)s#JR)JhjZ_+$Q7_nal9o1ug{!V zAUI4QXQD$CjeR32u}E*m6RJZn^C75>I&L7)HQxzkdS*`F3`qTl(z{J ze>*4iI3xmq-9PLhZrJ8a5GHN_aD$M$g$O|Caf)r(c1oDI58eYpZk3Q*C`_zIpxPbL zciRbJ;&%AAD?h&6wb7w-!lbHmLa!~#?=N>AS0H8y0C)lTDWf0*G&1=R{kaI>RjuX< z3Li%JIDQpKSS)6ZW=7@_vqtF836oP-;Ey!}k(=O2$x$A1McrFuP5ec0?xPOnf_Fa5 zP@5~mId{~V)6oO*p5*FMCS;xge>0CO$RXrzmJ16`fVQ`5ZQQ8jx$HqCbCdzE#D{by zS>keLD6?LP#x`O0E3NDm(}mf^y6J-5nS=U_Lfq$L;F^Sz-@&PIpJ!{p<;faw9|4#5 zMXw7b8*~`HD!_%3eef>Vap-nsEJMJ=e&4o^+Gu9mM!EZkC(#6Bk(X9c z_RQX7A23gznld51NfKEMvC~clVwaO91{g8>BAMv83Kn}8D`D3f5=!o|tl&gPw$Wd> z?Q+~MNnS%`Nv@@uKu>rAZMV3Cc9|WXFmu|^lDxF9UwQ4-p7t@wE3pH}z(+8)_r@L6 zoe4YOphdl(go~CYQAZ)1Kw&QG=LS4YpM|ILu7J1&lDuM8h%*WZ(CA65$jnN(Krc5# zLm#v}o42zV>sXvc(LaB$GCaEniHMXHLY$L^?&&Vr#mDxxMXvGXf&DqZBLENtDA^^2 zj!>`mTZGl0^D10!YKVpTEQZgiA*0-(VWZtKtt^QZ!V*)qHF0aQu%uKG(L@&T4mc&h>U|&*TPTVRiDS)*-$C`LdM1(c*G@SL8#3OKulQZXM3(hE@(|IZ7 z7M!8*8>6=fP6PLxkzDJ_scFu0&;?AMx4lf|~S7iAWQt@{zj&k@6+0m$cu{gHzFd;1B z)CjQIDWzg@PE@uqc`t+}M|X0CFzJXeWxEi&JX%?~q-zK-b~1>5`;tEQtwOqUolsiskcoyVRCiUL3;{{ep6m;Uh_Nbc@E1pZ}!sp-FR-tZ+F$jt_X6z6Fm({(KD4 zH}o=#yqsv#g8Bfd>Y_gLhu5YPmXUqFn%2(iaC9iS46 zuN>v{%8vHtG-dCgX&K}?X(NSB!sEk_X8NBq3Ny0CVzFGRCtWbnBRGGjM!Qn5ezST= z%3EAqcw1arXS;Z3W7~;Fp)v%*3Vjv7opV4xWM$i3L5k>#cpWOPkgF{EFt!tw0-Xia z%^MY%%tcKZ0eNpzc751ckGb#ihm!qCOa%4znxPP{hpgAA2CA`>s77+Fseof)Tg-{u zAok3O)g%K+%Ua@*63>z3OU}euqbwAb9F4tyyQV7;U7Fp48J9=!lXN2Cl#&erHWdJ& zAp{uwvz3wWcO8}k2>KSg(Iv$sxB8;V&^f~)BdATlizpjY$%PF#awf#$%u8&|jmm-Y zulEmN=3nqZmryEAn6yop43$Iq{DYqMVZyG^IJ0AYh$Zoa;LJrd8kRv0wuUhRmc)`k zKSKs#w8DbFLOt+bfXE_j;axhLN_9R)^YU8E%NmoP2qz|AcN-=zz0Txz8%o1UvQTn( z+JP&mb>=iKCS`0Zr>wv+h8CDTiMinAnzq#)wB2zS%+BkT7?vYT31eb*jn}D*(LZLk z2OGi32xx3y0Ux#COqs^)YfHoJ)Rcs=r5unn87}AcsR2*ZkKlnUAvyz#m!p8nE`hn& z%C1Q4ika1z{p+prUgIFH+F`ZZA|MRkqRB~{qfzTXta`%6(1K5*_1>8C6rN#Aq{wB;5e5i3(||AjaqYD{R@n)M+$Bc2YZb& z)?B$YqQ?9D`~%5?U0Qf7ta%psAX5A)F8ocC2j?*ZhzpN$L2yJ91eIdJ$yz?ZR6OEoDbch-aGs%oxPhtZv_ychdEa7!=RNJ>P3DY^ z9=IK2EAofEE%kW%R(=L!5HX>v??dI}2@9L6U>qHwuyt#5a&6LB%&nlG+6l#K`Wr9Io+9gW_|Tt2+lklvJrO8C`T< znC#{?PF}h~dGCV(H%XVZC?35rn;cELNP}!p-T9zf<@L1^rl6=!!cY@Q!cf}<=Yu3+ z@*!ccdZU&5pa@d`g5O2@`YZRkg}WURWeoNG|NWJF2h>TTBEeRm$&UGOD`V@;8h^fo z&xB;WVF^F#?f-uX|G&9}@BU6;3IE|c|3ypqPL_wiCxLCpazW=)w zd>&76;|g9OSp60Jh80E}EB`ka@b95&u#Z}DlI)F#HgPfEK!4L$ocO({^g4yjD%x?Q6 zwwJ8JfJ4{^hf>dw9d+DynkVvpcz|fq!*B!33m6QNk=`P&At6-Ry*_KZmWTQ6WM9~A zVLPz&=Ek{mLS{-+&e>QLkjNKaIS&;8({GqfhxsPV8bp3m2>nexPk*Ofq`xz-Lei7m zG`e`Ylu$~Y8b*JoMQEylbp=#J6ZC@=Nd8o)iYx6TcIWn}GuU#Y9yjtm2;BiCQeV{? z`R)ZsGxF6M_ab22vygGG8rC^jxS$i9l{adhjlpe5OsLsuQ)}I1`>&oH4ZZZX5I>FvNi!* zT-vw^*JtQ@2EJ{WVYz`%Ij=^CP9qKBFm?A#oziJpc>ifo(Iy{3)kpEGAR{A9{0%7u zhO9O%RD{X2h&jpO%8X^5?@pmXn`{jQls7Cj0=`=9VG~T6FjndbUvvp?i;n>l3|5Fz zx~z*m2l!)(_kb4T_=*wk$}j-yPuzWpQeYm;(BO4*eU%o*0-$6)&Hbb+P8Wrz%3zQz z;08$#QUq*^QxO?Z3}}WFN`6C@$d%wjkAB{8pZI|9krIo12{#2 z^sq$g;M7?np)rO9OL<&AaNPx%VpWXh(g08+!{7?eNK#I0P)=ZFz}_qtEqwu}HK~(s zn)p7%77LcCVs$YrCU5Zl7FbLY8|bj#S7$OgldF98`Q07vM>O^jMo5X91cw!Y_zjYL z8Hgmf&{8G%i^Dx>Y3!?ljSm{KR%U+~Hn|mMA*#Dxfz~YW5vLxdE(UKx55m#x*uD2cb zJSp)C0tJ@DU9|kQB!V256vEtN$~-4HX)o9qy#W__xM#QEoCgogI3%|r$MqxKgBu93 zXM~b7AU|7%5L+dbRE3d$g%EpIC^<{s9OXhzOjOseG@9rQ7rma80+$Sz${k;J*0=pi zx$nz?`o&)=uYB1lF2e*11Jc-5z;gx$YMcw7;sIc04gg--jY1${;+M*W1@%vHP{~`$+K$bX9JT@u95~fhCxREmHtB#^crVCG($ZCdV5w4WLpa2^hH)wzzs+61Sbku9ydMzDJ3Y`&CD_RoV5`eLeeu1ti=ZW4lR$u>i@y z%(9Vsz8>*pUQ#B0-Mta94)(qhzf@lO`cD1%9Oe736Iv00Wij7G^r=R4+yWvgjlPKs zWQcq*M;Y|Zoq91xnf*;n7fqT?f@C9!2C3}(1dXqk_br{$_?y_;%zIZWd%n4|`D?4m zNKHb!S0TwkgVJ_QOk-LI;fMpa;S_02r&fWnyJhGy)zX>aZ|{xGW_H(gK&!CgCXmWNSA5IA<%f zauY`H{S3tn7j^|TG&?*nW0VNaaOx}=Vw@u{fG0a&^!w!kY|fe85%=CgY=42Ugp!F) zDn8XH&I^|iuKJWCeC5;s5yD-kQ!yieFeZST5gtqk3qV-8H~$U&o==ry`IFntqzq73 zg2#Wt5o!AC#~L7V+$Ud8S-X_!H-D_0{q~;0Gggt9Z0dwVc)K+>cnw@G@4nXn?RS2p z0g|2z#Poh))z>q=yHDTbo(}^_O&@-}VO_XhU-5x*;Kwg}G<}~J*}JReCiK?aB8`@OGs7PMgcUGFO1LTjhe6+}r>3eF0%J>KcUoT>&8 z*ue#WVxn5mAcrXviu%PqY?Zg*6adcEyKDntMZ{r@Y5X{XG4ZhN5%C*lPCS5p96|Y_ zD5^(1b}Ph%ety0r^B-D3JCOM}0=^jh0pCOxwBU!e^erD%8Wi`je}k1Ha`CeY55vRH zoM*lac}D?$Qei#4&UA$B53;mPOoA!qm`iWL>l!JOq$ZU?`Ay7O{uGm&V zp`@mgK*nh|YQNxA`2f~v6m}o>4aJ2ud@wVcX))T4;%o$blMuboPqB3sFkZprC;p;_ z0rhJbq}4ze37H-0Rp%6_hLai*a#}Ihl3X$_pLn0$#V_C_{iuYNwzeNn3n9wYXiz(Z z#qqLvj56;KoK=$Ky&w>x6Mn%HBuS(xWVXfZBBkx7BN0$*EVvcvHsKn}Y0+^U`zlzD zWaa}4?ZOQiUFFRddDC^J+ae#wQHlfJmsitZkWD#9GNghM&Wrx_ro_{>gE$3fkq>DE zQEZAk>EcA`xCkraPbf-oJc06kCHTV$cptxXvRA(7_t4G}9EQE4tCqBj0TiXQ1B4>A z1c$90hYh$)(hZr=8XUmjh0f2ZznYUzTV&kz#7qo=J@N$+>}89=1{H3Pne7+-#iqpL zHsI)k9ch&*?kFS>ZUSN3+2h-en-vEiG-3*+A*m7FqZy8Q8QCR&!M00i9G!bQAn@*{rHYXG zBw8u@e{u(DhgxtyHm)!ZCq;3r4T^5scDi@`N@yE&F%7?J6FTo7eLzmnYYDVtXt!nc%mKAYASi^) z#Cj!mpi!jK>JFjSz31?8C%kNtxgE^M&&ztBC9gZ_x$j!&e8*rNz&L3a3xauhfr;lC z&e?&9=Sc*7E0ESCpA2w;UEVbJ5x&iJS^_Wq@@Wg5#zcQuWP)(YExs-Ei`zn%0eS;B z{vkSwuiE~F6Sfxll*>soM-t6N!lEhQe>*=y0n&ghgjh@gP4J5bd~T{eMR5>h=oa-r zS$JUw{4zFm!J$TX1QY#*CV89aI8=iI$^sFz>AUTsyv<(#>SJ)W(e0{yoIdo!AOU)W zyX~@+_KPLWe#nwmCAvjyEgjaUPXs4ha2OHNhPFj;=m8s~kXl!G55cxf{jtg<@A7{A zNelGiSqnR2G0e~50_T+NSKi1Pj9YPFA35f&fVr8-(H}S!VJ)}Fc1Q^5 z=D&E;P@t9Jx+!&h05@06lSp~Fp>vNxmY~aNVs{~d z+aBmvI|6mx8j5Z$5OFT^#xBJ^dc8hHm*3K9#Uw8MC|0y2|271yyHhYab{0^JIs zzRDsW!PUqdF3+pYvc3LxC^ne2mgBUocl^gBE)Su5S3zWIU3}8^E1#~b>$*5)71%o< zGkGt615W3=$~(~4H||z~E~(2&CgT*X_uQ%$IhA6KvCMV0nNM5?b0o zmnZTGHgK_UHJ6>*okM31NWH#*ENT!CkoMb1$j2dDF(GLZ(nrGo?W|IMpA=^aiR2$=9dx%ie(~%F2#G*{CJ)%ifrqV0N6^_J-XAB-qstYQ+i_5TNk| zsEM={R6F+>sAOc?p&mZYx$3gFlrllZF*C4gE%2+`0hb4W_8XFB1)y9-`c-tShiYBf zw02tb8he3`zF{~xeaj39^9nz0ug%8H`$l(IU%K1~tZa5eSm%vs4|6|?T7_m+euFtw z(}JGnoXj=Z^pQS#yaiDtObL-%Ei1h*fFw)PyK@f~Q5}3wYiVizs-G4QG(h(t_30KR z%&uu+mEcFd{G5vtXx(Pvw-6+^^8rkm7WY!R`)qNi;?arJ47`GpMane4HFG&|8~wzm zSW*N|mv`0B;QBk(avV*;c{f_*`IT{ z7ph;KuzCz;qrc_yTs(NCsdJyaO2R6BR?{W${I#?SMagw+tR$9O@E#DUZxg9gz*p2^ zq-gWIYO6!_<3*ZWT@1G#ru}cDc~-(wTZih+nkTV~^23I^*kX=8 zAJcm1Gk30J&eDu+EW;l!z={SmOTGsU^ z1fZT}KqED}KIi=9nh(ZuKBBQ2*+ju=E5K&UaJvk|wMt$}D}{iy0*X%=n9eSaL!M^< zALAWZS6})((LJ2b9zuo87u^vJNZE8bDLYqoaX460z*=Eh=2}Bl#_fvRm5+%^=L-Xj z=D9bD>*l#d96$CF@HB~|!a!@TOE2U2fgoWw5-*(ie-biB zAZK-fA^jfQ*D%E^Umb4~JXBZ^`j)bIZ=~H4x1-V^LhY+D%>B?LZ^Xk&eAg#gH+`7! zROmajUs5)mrze2rouE31<*gtM6jBcqqJcu|fkJUeCdlk4s4^w~V*A({x5W~-$#)le z5$&7-xrQY~2JD=*4NZst-)iVd`KE^6jhxibc;3)`w>03E27mp(*kCe_)oU=UyLAnQ z|KDoxXIVEl7&-r28eCnk!SMfk4Swn71|#QxON0NY*I@Yntp;y?@#Y32=YLCs&(~`( z{Qp*iUvb{tVC4LNy1`J#>|o`3`WV!)Z5K6d4D+Mz`iupIKkLutD7riig)uNO)ti@k zuF&Q|Oc7*#Ym0l+WW$8cAv&&Mn|P8Q3NW|L;%2`j7g!jU{kHr#7}xO34!?$?&1S4B zU=Njd$Cct`B*|r3;aaCnm_Y+^l=m4l!@^EWhLmMS_b41W!5Lqf+qvnbGMEO8^3rsY zTJhU0H21pr_JQw;E*e^Zkc&Guwq;ojB=>MVs$OP>b_$nXPiv^$dnj6YqT-I=Y1vpS zD9bC_+vjJw)=WZSund^l1&N(;t>I??U_ms}JDav;umfYEm5s+QwK*1GGy6lL#8qZi zg#}oam7TN5qy=!?QQHa&kQN<|xHGmsS>tWZfl+fNOt*w#wqlq^W01>B)?rnHl`S5tRKT$+J_+Olt6EGsc-NKbD@zkxzZ?WHkd>bVD zkA&2h|BDS8TE9UL{eEkMzF2TegYHJM|BePNJb7z_w#>h!LH8rse@BDft-Q5C&2DYb zKauReqd^5HZf(%1=WZFHH<9fB=>}mIvV)bd(4$!$ruAiz*sDbMGk&~+5Rd(bi;&xQ zV-aZ7X5E6rdKj2SH(Wl@W8^^PWG6FY}z zGjUT5VVe68wy=Fxw#Uj2;vHN-`CM&CEwiw_R)%LWmJ{L@y7#e^s}ahK-$MGLOg=kf zWsaEwIs>NWB23MxfvNcz`jJn~`S8SV&sK7NiwJ&>&%_&kyQ@#VCg28GP;E1C-ZiUJ z{bmFzQTiP1`nc8%-0pR8Ri#o-&j6!~Q!z{5!6#>qA9aTB)7r_p5p4=lm+u~g#iw)j zaS-eT%+i6`8MjMuTr3{?7F}d4=QDGGQgF0G?@(h_>k&fk1EG3j)?_wZ$ZglenAH)G zc9>o}@R%UP=($e`J=Vr9Al$A2UD0Kw_={C=2-KAt+uK&Q*}^tianZ8c!_o&};DTa| zSq!c*2BnL*1XrM^0mejbFlIGGL_;IAEk2y37)B}%ibXzGIy@i)biNf6d1~!Mj=4P> z7p82O$;)wJ;uxRFgJKl9c4W>#%su$j}A93D9H&bl4&{@VdfSxU3hy;`@r z9w+)Y+m8885Dj^JN0kYuYY@`5=_vHkOUh@b zqdK@XAjjye*It_eO3_*GoR^ftr~C9st_9*bn6ut~JOgaxJV^`>`MnM2h2fP6Wl+_f zz4Jvplyk+~{b+NY`(D~fr`cX|!;VWG zg;$o5UEbmExV9s)kzm<+0Vl=>3yxAjzT`MmWxuc&hYcJBrzLlKqs|~!te56AClwT> ztg=AT!6vuN>^N3+uRC-AU@Op=g402MJmOBT&}4}67142|hQ42b{S+)93h~&9nH59K zQO7xE?!?i8XdvO3pC9&g`}ln(x(R*4ESKY8QF3)RJn`Us3#j=v5II%j=#uP%$u|=r z+MuD6+p~iDE03RzVf~dwXS>{kTWs!7TQXvC2Oj4`qs7F1wl~ac?y!rF@II7r(=OV z+JKgbm>UJ>kEjQGvUmg-!U#sdElB9YD`Xh7O;W*;U~K(oVXFtPJO@bzE7ndM&1|!o zPUGTSycg$hORb5A`I+2PIE!n{ydpR|BqMt?p4e{**Axd~XI)`+_iBvm)O|;}V+O=; zpfSby`~^YH@W;|D1eh;~fQ@fzA^FCKD4Wjpw2P4c+HP@tHQ%+Zy&I+@QP$s-Wx~P3 z+@OB&V9Bu_cmGNf&)AM23#!CDVmkB_Xw*(v_Uj$O!93PKM$EG5uK-6;ysn^Foh7=IF3-w*nO0o{`6q)AG1kdVdH7i^;eXNl))FGC+1hS z#e%)q%u3A+uLk{LrRSlJm|$M^Z%uz6tb;c+?l8OCwXnJehno}kgTRWdiTEWHfi(HU`_-Iz)@ zVC0X7eBI#ZoA*%M}P0&%vOV^mC2M|**0*y_hxD0qm8KQ zQUfOK_ze&{!-U+>P%+DjdlI>!I16p%^ltVSm=eouhvhTIxD6Jz5%WC+^wTXWb0E3k zo4YE|9k{%Nd@&{z0ETG{my`fY41%F{TxiSaMq$ zv!;V+OCU)K6SvuZllR6!sfLMYw||r4is9*DzGldNqbP!G^U%HNQ)YRWRX&cgZ6Dy( zY)UV@a1bmXIBzn!mNX$oT4lAw-&Bz7k1vnB*l7%s`2iQM{< zHK75);4cZvn$QqPa*6YmZ+?yX<;5oLl^-s*(wF|C?7sXM%T$uD^b0D)cqqSKjnaSd zgpz%w&0QZo$HhoFgc3b?5BYFVO50&!CurK0iWl|#{;6PXPxN6#8*u#5wG~q8|%EGX!_y| zw9A}Y*@ZU|A-hV=X=Q|)C9TNHyqZejgWM`p9=O(-T*3>|A^ptfm-3H|COa8&IA|Dj*6<$ z?ojNwZRFqgNhznUYxEFSso}Mk`rZ9Ufab^fx1@h>miJlX&Y2xoqMwc;KeW6}mE(wb z@;(e=F>JW|Sxtmgpqpqb4pTNLxU$R5(CW2&XR|1Wuh$P967P@Tin=KyDr{Wn7-V0kbmu-LpyM#o0<%QfGW4 zO>!j+dOH#`Lqbqh1kUo{t)f!zgFFr1R!QiNI6wmM;egZQgsy~E1b0V9-BUlhJI_|? z4d=;;>~5lq)4cfulg5#^m%)I{g> zq<2H68K?1ti#y@DKuoF@V?y!Y^5PFxHi!Rp&5!hhkv@R%>$9k_rQR3dYKYtC)kCSc zax8MDYB>X09;r*3QkRm7ump-4$m8+8M?&wqc(YuLb%Q^0(W?z6bN4na9kzK{HfOR~BjK-ao&>5upQ zC$)a~KRhQ^gb7pMCc5gL%vcOj`QFcmLELm5ATi{>Y~Q1eW!0`P)p`}{E-D3 z(>WLXkzY{&tyw!m-Q1XU)2lPo^Nm@jhKrtWq4V}DQ`|-L=)EE zo`Mv<2_#S4Nl%l1q~>2t{(Ip65ob5*56nZ4Yn|F2n3(C>L_&vUfq_|B85o#cZD5)r z!s1F=1TY^J(T^uWOT9+|L%S93L{J5aC{_bpx0?^_%g9gche5e-CB_Qd8s0|t2Sk1b zkK`kkz$0g4=@L1DW*R!cM&oeJqmB(_?e%A#P-nxn??NQH95K!gA-c+uXzT7e&|CuD zO(T*3_#R%)DI~ogaN_HSQ8C4~LhN?TEm}c?5sRV4?uo_K`=t}S`$az%IT!F3Jm7ud z2}0;1#B_)n+LYaEe;_|n=TFzC7G)&GUBCfD+aD-U0x-VXdkTpmJB~=D!Tl&1{&}Z8 zrPq}N*HlO9@ZpjAf|6d)%}6>*5w-@YzEq@xXspRY7drg@bbu5Thwq^jX=many(HUf zGLpXHc^cssV5;vWEn69~c@JyV3qZ(&7Sg9wqS}W*nNBSt3xrmojc0D=y<-;P^(aC* zd=SNz^kQwrVct7X4w^6<5Nbjysml0A`NhHX=I{7%KjK`8&bw)%##OU%h8)uL*Go8U zyT;%2O!zR!7ebu-qgMfC+boaFbOf=gXJVUoJ1 z8S7#Hmcp**LcCvU5!ClnQhni*!gNK`v$04JGFR84qhW(Xcwsn(&#z*g$MI@W$lL8z zkOtq}O8+OmqSDon275z+V}pTIW5I|iaI3g*s}81!3kCGoC>Sq^1;@iojgF6&T!SQc z3SQ)?@kamA9A5%Sj{=B-?;=Q;L166hzQzNCOk|kg7MJkzT5RCtVh{zP^{B}`gQD7v z8w2d*bF{=sz8N94YZ!~RS9o7U4%F5FU#Y98?6L5Q4r<2SHWJX0%&Hn#z> zhk$S$SAw2yh9{?aA88LbJFc{!*9JXM`mqi}U_1P=AzBA<=O{|TSNke=IIaww*YSFE zk)!DFDnoi-Dajo?F$H($T>Y0-u67iaF1+GH2hRIIO2g-Jny%8K7FNFIC`zSrUcqxF zdE>S8zUTdF_WOobYWL=>nY|A_c^3ldgg*3o-#o{g)E26)SI8^CWFchIJDzxybGqEb z*BxHK(u1edrxQ%h>huocg%Z@8Y-@*8PycdUY(1~D=qPy~P4r!c7=uZT-qgb-RuJZo z1pSSI?%_W=F1C5PCCak%!VFNqN{T3cJ&zxC(Q)Y?^WyUHsw(7ABz@gVN(+4%7hC;@ z@_PX2TMkfuPx2}7(Z*+uJ>P<`U@GusP-HAc($`J$H5_uLghe?;ziK@(rl-^(G$~ z8T0QVUj_LFlFz=2yu29Nwaq8X7Ju71Kbm}G+t$$ff_xmU56IVrV&5bmM=+aw9EBIj zM+jEh^Y0|*Db1O~v8kNO(W^}3cvRk(Zzn7&@8$JY8uM|5MOQf@Kc1ZA{J!KQ^13Qx z^QjG$o$?dNiP2JqYbisul)*f%mOu=go$yRKi8GxQ%IQS>9;)|Chu>Zw@bCH;)GMSm zPZnU<1oAI|`!;?b;+KQpxA+y~N5-x__#MXYB!1QSL0j>86e}r!>j{k}KA*%cwzi;sS4!=VDHlV+5=)wP_!2dLDIV#+Z z-vRuN;-^i912QrEbp4P^yGTg8he*wHC(MJ;1G|468Nz2C%)#!a!)f6l_blfczB*zo!?xu&n(2)1p-vG#Q#cm5lk-fe|ky#pGUWj`bmy!2)O_Kz!$GKA~pq%0A z6}=4(T_mR3RAI1nfI=ged@{qSO|62SHZ}K3R?4FxUI#*YnqhYyLhrCa#~L;5HdIs^YrfHqn@AM?e>V z<>@ZmwyQ$Z=StpQZ$J-qTnrMN`_;3pSd5*2X{_=gOrN=Ffq*3ZD`Y^U ze-qJhY>3#Xgyy+n-n0pVP8uO&c1^(@V(b`Hd(Ys&B&~?%qE*$VV+J8p+kicYuP|)) z7U6UuZX)}}BNkP#^!$uLy7U21yyVZ+l~F9#@>PJI@s-o0aiqk#6Xs&osI6VzYaRka z%mu7twqMs4d=E?%fd2J=q~r;?!N*Rhty{AWEL9!YnsvjMJ3!a2q*s>{MJ80qPz)oV zz$imoiNu1x4A$%@uC`ZmwX1SCIOW7IpaPt@q8XZyK6QFt~yz~;a=M3-OQtv4A6WvnXM)#a??J@Y7J!*q?SUh?Tt9P_xgS*cSB;1N# z(w4~n$ms;b_aLFjV&!?+A8GwXUEGefv-d%Sk7hWt%M^k|T>4DOmH!xq-ya#n%OTrL z;fsWQsXvkhihfWln%fNi*h|(2e|mqc<=;g@G#gu({>YyJr~d87)8cL|@^9d2tJ9l+ zLVft`kIs%&85(=|4XkEzC)W{!I5w!lp&1v<2b!PawniX%MN%jBI9>O=*|jQD!CFq z){^-nb0~^zEO}ZH=q7*U`#gQZD@eri+g%*c-UtA!dbM3?<9SQH+b0EjC?Sm(3;S3~ zIhQtAarq-hAsIN!0}jJ`38>1%OH0ibU8ZPxSd@1p&u=O#2_AM7t5EC)=eUMNiGxhh zf^#u(yxkT2$xdoQ6lge#uyQ4}hEul%iT+4j#s}wYCiTa!yQx*B-b9oPqC|9OL}Oy{ zM-~L4I`AkmTVdH$%Q7Dz5{3_ptLuC4iT<64#$SjL92!kV?K4*qTIty(!EgSC6)R}B z%=;3?l=jI$ZLodilO#%b1Zbd}xbX=+fWo|wpHr81WL*+_A>iLZ{fs{sU|Ompj&up6bZrLTyNdUi3Zb!OsWPkBnz#U0C zN{a_#kcxkiAS`&C#9v@co27*BxQuj-5~M65`fWT?P40^ms2!Yl3HDoU}1Q zk3oeXiT8*G3k$$5jsR?{28#~ByafAhn!30%iyoaw<;Ky63BrQcQbg8`g?>!1^cxF( zgJ4r{EL0|#B~a)_1W+jUZNq}^r-;@!7CMq(!8aCqH^I(4!dp~}X%B+!e?-G{3IZr} z1r>T_I3hmL64y4rl3=fEu-fMDBiIW!7P^UGPX!7+i2w@4<8NWXZ&Spe8w-7fVBK#l z^m&4X-&p7jg89=lOy?tjLOoPy5=CrIyJ4Vu6D(hY)neM7U>|6(+U7SUShiNEzS;2C zW1!7$FsZ#`*ofZgCe#sIcushr;GFPap*I9sQD4$|Bhk&|;7L5b4Bn<=P3pTbEL^|S zsOHA7DUnSOA4HoHjcQ~!c3+#N!!(TcBkv@jP$+~) z0lB6Nhp7v@!Q}MnF!f*ESdWJslnzB*!;hnf2ZdwLq1=BW0@YR{`#DNbirnoPr3SJD zpy!V#M_w38*!OOyrEVX?6EuJJGi2M3evKKX_UO(gw0j=OkddAR1TqE4+Wgsk{0(b5 zeW?0&ch)XGofov9x}b`1zKnj@g$ia691mEbeRzAn1>WqhM5iWA8>;%cvmV`#ioD>T zsKl|~(^%}&AT`3|_E+HrlI??rs&~h-NA>vP*!!^{kOxJzJeIY5asuLk6g~6D8zc%X zHe+y5e(!q`g@@|!h+y+)H`CA{4#RQb`YRYTPKd$2zG zr-!Jn9_$`{pCRg|9xOrMYly1v33%Hf>YY7VU;P{RsMC6~ad*Ug43nBWDRoaIG*2Ou ze@f7u@F0Zjx5=a!R*r-qCw&tH{LG%bV?CiqO{we+HMr@v+BBa?qzMFDLXk=i{^Mt& z_TVkpwm|4KgoCkri_M6C;Cb+W z;CXO^N|Z{t4IsBTZGkBQXJ;I_|zgCf2f+Ct(Ny;ck5g1R73l+ zA+4M5L^bSeSMXs+dWa2QH2@I>zn7Tz2%UYGd&kcpj_i3#9{!lhZ|5U76F_d-Hj|jj!#;SdW0e-l<2LGb(-{tUuUUoh7k{^p?)*c8Set z)Tnbf9V{5!P@S`swO1cEvzhwgom4zWGgTkaDevx)?ByW+q;_h_D7IR^yKUaQ(JYSX zpKqhSH-^p8C$>=|$FfEGXItm39Lr`g{lF--usjwS0mw^DnJ zNA)!=)iL8)H^Z)$;p)@}S%m5y4+4L!r4~Co5G!f1_=HePbyN!Lq~9N@&PidBhLXr| zHT5ypF>h50dz={tMTD#IpR)1lV-wk8eV1_c%0%|H{+$+iIg^-~>AN&nuS{lh^#{Y$ zS@*LQhNfZRc`c@}$CzPzvv76(18ljWA3W_-L1j&vaYPLpnue<{rm{|kmGFF$%DNin z!&8fDhdRB=nk2ocxG0}jlj(fYnfPZI81Exi{x%U zlfZ0`y7*PrGVkhx>{({m-8j&S%~RPMhP+1MDobY_)t4S(Zy9S8m7T>A`L0uXb_(F;v*mgHLXqbXO^ zjnmm+efukF{A|$CrOWEU*x~A`rP0`MNj>x+YnS)#9CUfmT^FGl)}q{AeduYnT;Jis>*?$}{o?Apb?Iz8Yue-w zNFSWSOT=duK2a+q)=GUVjal@Y&Z{SWWJA>_XQD^<|AU$J)#udMd7v!a`Mgo{*f2vw zS5*sa-d|J4I$5~-=|3SRXH?}K{wJHF*9)iehRkQ-OuzA@I(`A#wf$t?^9$H;L+JfJ zl6EjiVIi(QxBx=kj2DmYLq5Uwc4Z`U-l}w_ij!tTL1>{743#%Ab$`&oTrDO;kC{#mVA%Es!i?aUkdIvW+FpI@%N`zCYi zJCx`3eT&_}^gnD-r@jp#V&9@}eVe)Tg+HkeEJvO0pYjTpvsuCVlcj3qHxMm-p7O7`s3@>yH+CGs`cuJE7@!M|BtpWkBhSU{-5Vz5fL3gMsYz=L2*H)90iqP zl&PT@wOrB?Q%SSZG=uV!;b1^HJ&sbT*LJKdTTJ_yVVVkVpqZk%mE~6IgOj_t>-^s5 z+-Csm^ZoPZOXj)TIrrRi&%O8DbGKugMBh&VwsceJqED6Qg4EFUBI+w;wK`*6Y1LQC zU`4(5gNXkc5UYO>)!B+eoLQ^{i(_9a4)wws(PbH6*RCmjW0^8MNWJ?z%5tsx$;#3% zRw`CSP5o9J{SL6VSBOES%3L*dg*aLYh>#Vf_pMU81*xAc6)&zuZY`FU-n~w_Ur|5$ zQoOt#jCkTps^?GD*UIZPkqVUuq?~BzxDP2NOyhk9DQxCl-&i$mc zR)2p_MC?$anwL_z-F)yT03SR@7|s)1!@2K?dv{=%2z#$|><(qUqTYC?v|W|bTu}$U zE$-cgfphm8;^kdb0SikP>{13Q?MnqvrJE04Mn2Zn(&N2M*vgRum1(kNg%AyXR)(v; z%oXE)R^D#%!2%-7djfI0P(irs_h7>>7Ko@lN@bUG^O@wttMY3#aoWkLA@rp(n+-?9 zE%QalUS*^jGQV{EUga4@eQ;js&-;`{in2-^+pnZ4--~t!ln%;j@!$ca2YmSllrH!z zrOzty>jBuuz85#}ajlA=rC(3b%cX{6sNZpy-x20_oWM03oOqqz@s8i|g5NRR@96G# z)b~67Txo#M@jHrFx{RQC{-6bZ$2)#UiQjS3PsfjbqWAh8C;W~c{xnbeLw5MHul7e> z^M_n0jc6weG}a&2iycLn1U1|Z3}DQmRif{&%7^jnv(Dy^?d<>)|9ki{2$(D8` z%o(`gpwe93@VaPuP)SIpG_*JNI->dxtOw6wJzX;c!rKYE;dBQk?9eQSARX>}rPmfp7jK@)hu89 zBhAHYzbSpXZfoi{IaK*9G0n+7g&i1txD~4H4{XAe?_O!vEnCDnU{u}_4S$C`oJAxy z!NKZ*{Xly3J1B$J@EAehKuWqh4!TIggYdf9N;0cuC>!zI&B)+~9YJ40@rDIw7wlwY zI9c*GE$>gtXFHH}I;ez&hwWqc17ena7Iw$Lp41N>G6rdr%=y?^!iJyyK=aIRV$JVL zcV(gY>vyGN)MwFAChrKatPyIE7ih+1ijIeryIc<;1`7{C^!r0!dTrvF-FU>(PTfMt50*Psx*%K7&u8?*l+%X;0 zfO26=&T?3_@(z&CdLL4`%-`{AZE~;Dqm1EqG9c46ELza^n(816_d@*P^g-%<65dR? zcyKh>10{$r?BHD|*vJMnPWNAub>}w`iLjz>kcKhrR9OJ5a)XNPVeC`Utou046<8VV z#YlyMZD;8yq6GvTJ&9gVCVZ;aw-;bXqt>IcEkLp^MW%X)qrzk^>yCi#)r{oSJdt=53rsB#FU2k_ zI5QwI3f`K!_;wy~BFMxjKqv!FmVxg=M2LFCA7JMlxfflYk*vRsl-^XZ?1%qSn?UnI zAM&FEy$x=k0r#UVQ6^D!6b*cyIDJ%!!KcA7?4x?i&++YW8La*fS${OXd`9ao3Hb=I zVEUPIVtU>ZpXKE!b`_)Y{sSi@UdvkuYpOOWUnY2l5@0KkmO271*_0`Uc8qC3ry~g5 zX;hj|gU0QTGHHSJvNjt2Te)gAF@f!zGCF>DX4;YGlO+tlhx_67YRcTz^CAt&*;Bk}j+O zc9mQ{3PynXhB6$k#^j0$uxX9#T0KtFMURlcDK)@p5_qu$-nEwt3t;m;@%W!gla>hg zhPn5-x23zw^|kP6xxYz}v2Tbs{#07H7BWmd5YiX}p0eDK39K_dFOg1`NR0%4Ekgp5 zPb7F)CU~_bK^Npa1-_Ym1I}S-8YAa!BnMiZKG<&Mhm4kxJ@!VWQSBJG4-jtZJ%Ia4 zF|(sZ4en+@Q(2oiFI{F;R~3tAjw>Bqm3yL0{R;YaFqsP%qdTau@1Yh5as(o%{y&FT zPXbc(nvWq2yFxqbBS3}}fNATf=CKsz3#V}c+YzzSbA#M;2x1fv4I@NR0dNf=S6Bcx zAY#8D?P!}|a$#T01XG&H^w7ilFLOaTu1iD80HnN6@lm z>Hwri^H^_=60s+tH_jEdlS;JfA~2?>bP33fL275!1@nl?3+67g@_!UDDS-{lg|vwQ z<6QYpWT07(As?S5(@ca^=%1q);6CubgycBzf~KXvz=4~%44sh>FR$i+QSmNdp!i`N z&%2*T1Dju!xYmf=*a3YN4&*eGN<_s!!Vx~bHQ;zOMjh`#7;XZ~X$r~`BxOg}5c~zK z$8ma8{<20L%p zCwlOXM8&(r4xo>(4TK;(56A)t4i<@&jf@>tqpKcKzgp>f|M4nf7dFTG^rHZyrO&Cv zNceZb&zeiB{u48zJ_-iyr=etd6-RG^;62qaO3bKMTG;+rjgn)}I;TL_w+~Da5_S-x zl6Ld9^el)?&;jBV@7%YpL=+^bQh&%Jeyvtw9Pyw@??BYJE3&Gu&yK(rk9=a5(S=(P zU$;w7yu%-mdK|d3s`tzm_nv~mcXq^r(9pzy<+CHixwnH8)%@9FC&Cr}M2n_gr77Iq zya>`LCR)5mL5BM?>0Vzay53((FMsqSe?@sVa3)D-GMw$DvpbwEq%#4|aOsSNGe|n4;k@of7IZYseK_f|(QBPR7~gLxrkqw< zsctTS+Yc*ol!c)&SLrq&s1{$1J9^g;`|wh>>;~7l*AZ2 z5DsCV?Fd>RMLP>+Bo=j;KaQ7%_1;Fb_chAH5>OjW8(H)gM)Yrv#0VK>oXs^;6y(&(hQxaUSy%J(tPo%C3$4}C3l=zc8 z(rIVM>1dBLuayLuB6FfHFE>s-L0 z14RR86^%~B=&u)|h+0rfRWiJf9f$H;2-gMd33-5$%RD&S-VA<44}ClwCD_a*U4r8U z=s-T(gx;VXqq6>pQlnTti;DC}gjW}c&*nmO7Bb=**Y5kW5(-LCr!m=3v-#XpSr0E~mT(_cp$8*JP%?832>?}l?!-*@#eWFN#OV>VIiGe3 z)F0<|eMmkJSOENmYLYH8-@uy)GSE4vA`&qb zG6pvhNCMZxPp1mpXJt>SSy##w2FXJpiJ(zxAs?R6anpI;^h$!B? zCrLd;^jQ;SsMCE*&OKG2l=!j{L#)T0)!30ja*N`;3S>U)_^~<}4uyFCDzIS-2CL`R zdt@+qAf78-QfQ3zr<_mSiWE0{L$fSE?Et;Fk^W|tN zhh^C@p(;d{=tKc1xwc)x@}!@RqxdXen26-m{si}#0mlHDZm%>Hln{(&UBsX(9aL5= z^mwjlO59!f zBJzsTEB-xSW1bDJoq$Bf_8Mv?n)Mx|rTf`ZpYw@luPB3B6~gL={A;nzSz04A6I|lA zD=;Zn-4;!+DzWvqAPS%#-WF+B6=(C6Gh{tLrZwxvuWG>FpFvfb;-c(Lb}XmCx*Y~{rW;V(AB|NSMw^P$6?c_R0k(sx9UTUZ1q=|>lB*r6Pfs5Z_`1?b{o`Aac0*|* zc9Un3;fcBd&*SV#Q)7(4g%o&jg-re{dEQvm zm$a4IzMReET&H*7efnCY1Pi!!De8>xXR<7({(z0UFiFQ>l3!~W_Q+9$wSXKjkH0Iw zF)Q%J{$1F&#m1XTM9eG#fCc^!r1r+YPCi^B@iR=^7S9xM{-%W(5LYW6WND)|0z?w@k&M4u>;+P^{y{+_6+fETb+*Xdc z)-Cqe*xN5sjZweMqVs($^;BGQQ$J;yChfs!q1cqIB{sN1a!DP^7$h(@r=cnGShJtR zkb>#N8u#2Oz)v$Ck7f6L{_ZN-h3x&ZP2CBg68%9HxFd!^ScvM-^M_2q^sw53y|f6b zo3$?eM%L?J@Mk@(ChK*dP|hydtc1ybnzi_jj2_`w z%m!of392G6&S-_`LLC}kZB7@3a5smEy3HrBnA0GTULX;PirUiElhG}u{t6ux<*8Xa zahU8kB{w}m&ti8p?xG|WCBtpUs1!62A#mcx!5|wHP&mWkJRzOfcpWsoDThvhv$#1s zr@=YDB{_@osj@vmuKQcDm-g|)+bouS#nN{Whj);4q4fPOeI?SjGlAmlu>krOr;y;p z?FT{MOJ{dD8{r5OLX+YAxeGgo!%5G!AapdGzjuez<+e|N`{6zmT(m^u{sbc}e9NV8 zK^ps3NnfS(l}X?0{W-2u`rebiD(O2UeFw;=1XBl|0G2(Lj@aYPFU~dEhESA7>V^`C3#UIrgQ7#+@IENR1!!l-WF@-a4 z^x+^7laKbWK2rC5L2r76EV(?Ug1Yk;j4_tRb<+QML}v#L=Io%pogKsdj&Q$&R6UNO zvEDa^;7$Ix5Wj=8OW)5c@Msj@U|Ox?-bG9q_{FpYL{;xc04mF8c>>g6esLLwG)hpW z--xIAMfG<`podP0Fo`$pk+CkfbGyThk?0C6IjsQ#+bJ3~`n3OkNR1tx3M{U8BS(ur zf1XAuT6p5H3f(@HI)KeK?f$T≧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 GK#_EpH>me0dFl63)ri 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

~z5pWp(4%NsJ0{=%7!7Wkyp9VH_n4 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�jr6w(!j2R{W?#$m(On0&S+XO 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

X*#{X(FEv;T1@ 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 !z9mj`Gg+dIVywcab~*>}k8&(s>Jv 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�^k{1h2RAp*lN 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

7fHn0I{5Ixr@ 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

)n}T;t4gkrGUodinh`am z#-^aLxC?$zbK)Wh0DW51gQytUv)b6H4DvT5VUQDAFQj3g^q^jqHW#!VjRi!z8zu4z z68%DK)T*{>Z@-Xg?595A7ZM(wi*|CdPo6&S)7LhCZCi6A-CNw;pT(ZM{Sow_hj=#Ws` zwKdz)Ad1^uD}LQUe6LKdRL}P_CWr))BB1PYbx)p9pl*H-tRZb}IIEJw5Im`z|0o#W z5AluHD)9y`{G80Ge**pS#gp&6f;otBSY93No#l{U9Zh3=DAb(Lb{xEPj6|bg6gCb& zNQOgPGcL)p%U?bZm|b2%qAV!UDWTTmhvq#P{=s4i7J85FnFG&WAEVk8NcYLI>i+R?=h&KA774v?4goa?LF6|a)(3%;r;*cwYwy{9gIp{(_LTj;+ zqmAH!vfy|JPK0Pq4>6#(jp8^L5@1V4q?6${c9AyuQP-nYTY+%Dda6Kp+Bja#EEH^s z<0JEU#TNrEkcb*4DejW`L7~ts5{pY+`Ss1jdFz22*q;L#YE_}o&XV~X-k&zO4`8

5Y%j(@wbA2v{#Ap+8U7o7JSbLN{ZfYMqOV+=Xh^Tp_vR-=4(; z`r0C)_DUD>^$TIW`CS0j+POla`nS14rygHqkRMgCs0^*N(joEn;hYGJE_r$Sx9Kfr!>hdCC zvT+Pg`H+m1WA2#JQmamrkur;?tfQ1!cT73+XLZ0I8dI+N15%E@W6E!SQfn#YXuX}v zzf5`cN8Zj+dOP1j%29VL)AFM_?JeP1!GXvTxr|amtHhR&0-4y&uG5@IWh%dPI*RH5rdOoxo#K^q4<4#MJ09E%X@D zx$!)udQ2^vj+V~m(B(SxAcs!j&|(hF)HZPNvmE@6p7<*c9l@bwB4scP=qLcezHV_4(Jq~>4ZbE6v5<(>u+<@9+;suxC3O3~&h-w6}ZmlnZ%`*cju}W8UL2 zH{%=fJgvvf;W0rL<7dU$SQO|>Abo#hhPycwg8lT0MrZ}&Tj}+m4HDugf?@w zg?28e)B_0@pP_Xy2#UlV*}*sF@a>mxedMzmDxvGZ`!9#{)gn7;^Q_%Q6SeD(M!L{Q zsiFepE3BmlMXVHaOGIum-xvi7>X+cBT6-WQ5~{?2gr*^RXfQ$f*|Qs>BxSlps|)c+ z98ZwIELh7WJdM^$c!XV&4`_GsGJ2tmb|?e~fgK zDzP`+Z4Ip@g~fQ!Xa~=T2Gv&6Ho<`hYtu?;Kjh0i{~QiOVfZ0c%yzVy_Nu6GRfXe5 z^J&qz_~X05_*t;Sce9rHuB3&v)*3#46>~2=J#(pg0%(0Fw#^avv>t*Qyja~{oOc;{aX?#*w8K0P z6f=8rcpsFOMthe@{`_OBg4IaDA-+FL`IXVZQUGjulceiGx^U#In7aVg(|;_L(bpY( z>nrfjJFTE}Mgp2gnj(X*C7`oyG7|%Xy-oDBuvvz85epu}qCiw4GIR;P6sgPTO99aD z1#||ANo**lwL|`@0Og@1;zm(YvRL>%wa79&MJ%kr7qPHwUxY8;AF<$&Ad^*P7Yn|p zu>5K!3bhA`e`XEN6xjs|sn?@u2|Ab=Jf=q#fN?JR44L$}*gQl8%k|i$*vH;#hzx$A zgFoZy!q+J#mcE%1gKFY21x%&dD-6X?Xch-!9>qc%&w%gH^AWHg2Zg?@iZCWDia~gq=n5Z?t)%O>iW#;pl;YIL}V43YZsS{@|nzcnBwTEp(A{klwZP<`yh%RDdnAr&bwyJuQr5W1`gNi}tDfy6E7tIKiGu)vM4XYn@`e>3s71%DkdDtOj3`~ZGO;O`au z<>PNL{{D%-t@xw($lr;E@ThS3Is&nX?1n!t{^sLvDRB2g`o$lKc`3XezdP}F7=Jt5@(e|7skY%HqGfXu&+A*zRm-Oph{>{c0!(wD*6+~#aBw>QnWSF+P#A6; zr#e0oy0s{xdSTn6J*vL?k&xCU+lsei3lI6A_RlHNrvAVlTQ87-7TO8*yN`t2sDGSN zGZqU2qP{+*PFXBm^H?RlnbsbCWe6#$hb`8Nb6K1Bu{N+&9{jo64f0STRc=-_HeUZK= zouHoiVzmI~pN@8SVMrkR+`$SuM9=CBp+>BwaKQR8{$j(+?*WTygEmn4_K#Aj$@Yk@VZQcp`Ss!yao*gqd~)oaWiOzSR^D#{4LIXo;a60 z9pZTSyB;p6Ba4N0t%@+5Trm9A8g*JR9LK%kK#A1?En@R?_;$*VA)9q9KGExO6nhb| zu0Z;3eAA-61PdJ`-a{#5>Q2%YJ*F=jhD`sUOh0YFmZdxt>PX_Mw6zf3i)jA>iV~2F z{Hj3-kgu9Q5nSn?+W~II8j+;po8-i~cFX;~B#@JIRlhVTiLY&j(hSgodpGUv}C z7LsS=YwGY(S~N#B6LPYO)pr)ON$^`|qW~rVLIF3StU%ky4?B?iyHj{VquFD`|CJSP z_CC7Ku;ot~@|MV%O}--UgKoU8aF_3rTwg+w6qL>PQ$N7E<1Uoff)Do6b11#S+#V4q zT91s8z8y8*|6%dHC3b^UcLMfFE#-t8L$J6sP~cF1%2;<GJXC>DDR z^KKuoDm?W9p4xd5WBeZ4!pGREk1;>T{L2w8AN(&y_-}}~WrY2s#@{x=Zz0KTBRmtJ z|C14RBmMt4!UK>%d(@5*_HU+Vtr|wyL=muDpzca{$NplAHz?*h{0ohJnG$=RzI0PH z*tSV^=W*hJH7p%z@)|}w-?|#<8b>t4$i|<{>@faUk7Gpbyb4?v^!_i0bULg04oEu& z5w{HKuSRqbQrtG8sQ|GN#Z8m{71G|!{5L~-3<t1_&&h-h%P};F)zcv zd_?d2j6VO}kU|0W(v?gUk{t{TQ70}DIvVd&XDtyrHyblVG-z$qkCwnf?D7q@WQmZh zRvs7nm_IVX*@pVdap4~^Dd1s%|I6ytuTKc^F_k_nfPnQg9*p|Jx9Y?R;cjD8TB$0Y z62?XCNm390Af&5*K84qItVycz2jM`}b6p5HKWbNJ3inXwpB8pS9qvSdyVbxMVGd=F z(}aCdSsm5vvyhc`2@0O5HHqq+pl~qicn1Q?QDZu&+F9Y}s2AE3{4q88obVEIu2Rkk zvjzHysTHo$hibYcTo!<8Cy1!Jp`vt zG^<}<7dkWpR}$4SUbWTosvu%uJ&nRI%^`umfF6hDZ6EpQq-;; zqC0e)bB@lU*oW7Ok%RMc74wsVtaYDR0u$3vJ#b@ucqE57KtLC&ab-%a1nyiCynFGFf zv^j$f^z@ruE2@ju-=29ABB^!skGA_GoVL{Ntxa7l#J%vtQ7Vc2 zcJhwFpu-AF8IX$7CLw^_+;MN{uyC;!;o5c-7A@{3j|H^D_cuKjo^+OTdU zP3{nu^jXpL&|UM8v|&nHG^Ab7koNQk)L^9Tr5+PaZSU%wufme`Q#RmucbyFI|_MA6hkeWs16ZL6=|X^x{dtN^r~e^Gze#?-t0cQKJgS*7hf z9}Odw{>gFi>Z&%T2ct$@P=9V?vPFH7rzXam9*w#lR-cMDrK%sbHN{6+f2V%k*3={F zrSm+|CO=Pc)7}ApcH! zl@Dy}^fUbZpZ>rrY(Awr_!%8c>N0@;u7e#qxQv7UqJ!_z!GGuA_jGUv9sCy#o}+^e z0Q+gobP@ThIy`uqH>Hp#e_99cVqov@(2OT_&^iv93eYee^aTe!56}=D^Z`I561S~| zp_RcdI?jh4hrLy3C?1|v!|hDZMTs|6Pl9R0OK)PIqQO}I1JebN!1QGuw2XtE0w`Mt zeZ)a-fS%AnG6&fJa_FEpI0#3T^hb1%=LfZOd()7pM{cMS+M6Etf4xn_A_;4oPemJS z|1{E&3)e<1zZR(%9? zILTDeL`?_(T?c>8!TWXahdTHp4zAR}1v)su!QbfMDLOcpgO}>yF(>`JiBmcJ10DXT zo_qoa|3L@$(ZOV^fELcu!EJQ#U=AL-h4<$g%+P4w?&shvJ@rW)oWj5()9pHZn+{Ll z$?w;}D|B!(4(_3Y|Ez=S_&RB$gXf)4>k>^D+u)!a?h+GMo>A{# zQIk8FQpd#`8|l!CoeA&xg?zmEgB=1i8&)wQ@gvm!B-D(JU8~ok4I0U(CEYMroKKIA zRXCV<+ZE{bW`+7mC)3>`DJZa#*oxDJ)ToC#neOWKc@5|i_KGi|;CIVs$d+gFrf7o` z*R8PY_d^!#$}aV;&ZfTpemjvAZ$s;MEnV^nZ8LJCErm8TPiuvSQ2D6bppA&eVYXZw z2v}MvjJ7^5H9Fo3vMb{Ot7{W6T3Tq3*%0cYH&n|;J}nyQY1vK4#ZyL(x1b1mKMX|* z>4DVUolWg}KmUP9hC7XiQ+j*MHkwpjaoQkifnvT1ezQdvQ}ToN<#2h6Y_2j#9=b&j z4r@UWc}PRZ(!#qQZcPu94(S{CnGm$Kv(*V*Ot#;A2uf&&{GO?wxlu3=dAU@yk7tUdjHlBu^py`K7p zSUhAJLxn2oTTJvgVl%vMW|Ldv5G1}$KAcF3g$Vi&4-=x-AhC#!9s`1cb@re2S(Kv)}q9#Zbf7x-`7Q#4fY7_e7M zKok_jyp|H&CThtiqixA4yhaE2`l!yS50Yx{%RubZjcqiMUK zHgs9~ReKlf5Ay-I=0=8qO=((wBc!G zwQNpQLQ8EAV5s9&W4!uKvZ=#36bBhuoc0zKL67R?(+Bp`SqzZ$040EIcqh(3BM-L) zqX@eNe7{BC57D<`9l+9%5$A(6Jr(B8#`yQUn|k`6x)#CTV_JXe;eK=+nQvfI#cAWe z+2&>4fIT0fk9g?Qoh&q;hu*DXp*$X%SIt6n6$quY*u_H6^N_KIg~ssE6$<$;YZ4EB zx0^*i%tQ0`uuwl9TD_Nry7G{p4se&XI39X@KMO_ikaB>9E@2W;{hos?MC%Em?T1*1 z@0r$(hbiROw(!V`?^)z(9@=|^g}&mULq}Ptn1{|DW1)9>s5_(zXiNbQJ#~VG-r%7R zPqNTt9{ThY3ytTYH9xRWUl$LqJI#WR@X%HWUs31)9{MlHr?ux7t6O@Qx=dPG0pzfT z!Ir<749tC!ooUw`Bd(cfaRh<2M_^-*KEFzN+b-7k8$U2HZ=eCp9yXnGl|Xxx1-l4rI6J?$D-e&|-J$FU~-YQQJA4Qy3@NGm*3aR|U>$ zKVf`_Y%=wus?V;aL4sXB>kz-d?0pjv2lR+@d(cxTrWew^_;3i^zV$;Ebs1azvHM^` zu^R9&y=+^^Zf%k!&!z%19e&ZwQ*1yB*MS_nj92q!M;onT;nxUBfkC7jh|*f20+?Y0 zKLT(Qs|1eAOWmh{njqInF$Zkz*Z)1j}iteeP!+icrpN_h?@Z}jCb zOvHkQzlwnv0=z$7!=h&b~%Hlr?F|AtyP5)*+v{Rf5?=i?&xib?>`F` zrP#`LUu{e1K~$z6^jg~yWZUnzaTql=#h10rZ`9U(OugGQe+|1hBRbxx;4o%fRfqO5 z-P3#|@@O?B>a0GdKKFbBv$X$@wYPzbs`&oLcj2yrf)^DO6BG><&G(>~d?K53TO$4`Aqs*ew4>Y@f{=2K=qlwz6QZ8aZLe8~O1 z&&=Ir!JfXK|KFF(ojZ5t%$b=pXU?2Cb0$Y$k>jWc^^~ffV|1_Wd142}WI)HPDAaEd zOJeAKGn4}f!UI8RWlFn5VMvqbX8=B~Fi5*)Lw&ESb7m;dCkp-ZreE?+g!|Pj%Ilo8 z3i;VE`r*?yfUAC&NJH?fI&mZCi!>>ZX5k7pFI!m{j^C~ia(3&P<0ucNXmr?D8^MAe z-l-&a6k269qEsNCehcRH^d{wsrZZ}KL)?$f%#~zHd2R!PPuQPA5bmCGrP~nabG#(c ztJ9uTmUa|c*qum=qZ1mIv~PKknBsZcD2OG|#GaQR_kwxR-lT#iz~X5zAXcNx>RA_~ z$_9X-#e9Pp7Cb}tcNP45c1@1;Jm$y-PRIE>LfWx$c#p;F0_-xx)1)$($ej}#4Xle7 zltG<@R*{<}Zh-^`YZmDWER56>-zp0_2^}LwA|pFZ@M#h@L{5LJeAY?mVjptB*BMnz zhE%X^fX%c2G7OyJyQ z6XWqTcYa33H0sSQ)GEuqyJaVq7E81}3 zjrq`G*&1f_Kw)ChKfv(w9XFn~&CJNcNh7i7IYeaiXTdoLx*LMSXoy!>I8KW=PH$3= zIPGjgXGoz>)QJqQ)DV}b^T)Zi60Xi8ejH)&?9KvkabsBqVIvm53y?Xuf3WOAPn;cc zRNcv-irb#R$;k?*<%Z)1EVB99*Dw=!Tk^u-sfSEsBs*)V)+Pi`j3@bof)H1TlZu%272Ru zFg47utT*heJ5Hk7;>In!xz|&3t5y>XP2o2cX=%+$TD3YUe$HY@hauH2q;k`x-F1?D z+n+c2b7&1D`t{?Z+xRj!k|EtbnI^%u zXf(bcv6~*EsoG7tH@u$#b-PP=xH~HAu_JN^1!g1g90<@etqyh#K*>;%TiR^dm>;q0Jm2PkkgzB&S;*Ry@s6Z7*b@x;-dbN z!*_Y8_sNbEz3)M7YW4e$Iv6$Nh$?lW<2j<#q?@qZau;B3s*|J*Ptu)KR|cfKae&8AkmIPX2a6eJs$3UX2?JJ(v}}xU z#G*@}TIwZQ6S@!3jJC0e^=%qOxDWv>h$izJGGuV~F5=vDpCMMJCoxgdk30#Ukt+S@av4%<)`yc^ z3Ok;3b=NH>qrzPW%{g%vc?Nz%64Zqx+)Fz=%|X4km#IlpkCbX0w_OKt+#v^*`6*Zj ze(CmcTvdGu{a}&IN8s3~3K@D{gi6ac{I?Ny9LiV=8|Rz^tPAiu(QmU?vyB zADpdKn>F3xLVE<86MHfN;j*vF3bumPHELe2ub`egjE#SnlN;! z`R&Q?D7epkHR%iXsts_Lp`yd<`Ut1d!x=c(xRta8)+-kO~8z8ssV zN|^V2rwAHuR+@Gd+IOF|h}wqB6&p!LVUoC-^dXzi{W`B4$1nPskKw$*Ji)8>U8GF! zDl|8Zz(|D@0}%{WzY&iWn{3#Ame+@w+`fjv2=7YRaj?`Z8z7TjP{-zzyqt0WW@UF* zA=W+#%s1arxD^x6X+qSQx`uiQg3J35Ug7EGwSSPfagyfg_9SZgs&Si1f)+hKU;xZQ zDs=4)V|hK6xz7izy$YfsxWsvr!1RV91;E8Xn_>}7a3Q!ccdJ$E)H@zUu4Mejkc5&! zJFB2+gb_JvcJxbXqPby&j&qW-w42acKUMjtn-FauHi@(~XVrmtx{q?q%hqwsD+o2} ztoq>R7KaOd?JH8Qaf)nN9-_;a%v-Tv1`lPq(k}&)xDmS9LYKM<2Y%e7c-@u^cR%fLv15<^z_UY$9@Z{xz4%OjMVks0ou+x!q5)f;eG8s1v$1CfLrrsMbj{a zb_iR7KzQCn<}so^sFnLQFbcK)S;pm55yenT)yESwA`vzDhv!APNS>0QdozDY}Oti5g_5#r6VA_}L&!q%(4`>j&aUFa6J1X?-N?c9P4gGZ_CE+nKRO~vlzXC!sD zrOL>Lu^PCVbw8EkTlXi-r)5HWdz6+6%ll0_sGfrBIjTd%=N|-zgC9f440L3|FEgm+ zdsrim`k8v@xLAZWDRiyb5u}Q1n5Gwt_OiM#t(@(gyD2`aFY`S2`tsa?$ini#Vgf6{+Y(k3jaVKqw%5}hw7y?Y9Y z_F?##E6)jm)11kX_+yV!cY^xmfeGX@Jr!SJoR|!1it)rS>ze?RE{7}5;sphYNadJ& zT5mgVN*k}*&N}8^h0Du0%Imb;HW$I|3i%9AGs)wt)qFtbTg9KxsL%HR_d~GbdQ{p% zhDv!f1_LGu8Q$#4ON*&w%|txl5Q2FTbSHyka@Yw<=5J0zedF|Kv$*Y7wH^u}gUSJN zWR;wifbqCE9vLk1z~mfhU&=L4v`>{|@s``MJVPbmO-zq8Mn~Tu+t22-$%5^)83h>O z!pE3aT_~E$rKlp zvl3IudRp&8+}uk(rs8l@NMF1s!>teQgvq4rDc4A?l4PZ8rkTEg)(x+Ag{aQfqU>t7 ztOTsu;@Aalos>4cg!p>N$Xf7$GO(A>LOim|*S?)G8j6)!y@ZUM7ZGWM$+KAW0Fv^y z9*VX`oWa&Yja@?%aFzva?%1S)I3c)T8R^|dY1DO3^6l;Bh*1{6L7mbfT@Zt=PF6am zW4oquGBX6xSJg}dOvT}T1x;xNc|e2_7SFa&xnHC)Jv)-l!D<)Molx~% z=rA-e3_~`fJU9Z>AL6(HLfQ;`jPjf?M8YB1s2E(|BcvTJ=wM7N$E`Wawsavj)@{^( zWtQhes##Dvaq@a?8b^DLPPvgT+;9IN@L=%Q`CtT-sB7TDi1kYUl5TNe2scmot5Gn{ zy_6L_7)6hYl=dc;OV`UTwASA_a7SOBg3iLV#n&>$6%|Htr7I2BLs$`F7yMCQQqN7r z#um}yAgQ;#3eZ>7K)0na$pcdAS`-p6S;|AI0cD@I^yV~2a{;e6c@Pabxv`2O2DqJIfDHebUuVicF{M9$I3Ne0p# zVc~Tyl;+m(UqfO0n&RCGo&cI~(Lyy#z!y5@Xh=kQbIF;MgVg`aaKh|_+ROkI!+|eo zp9ki^bih~hXRt(x=qogfYPKIZg17g8+z5uNE7^V|ApIcc!k=VlUsvAVl)m z7q!^$cx(cXefDk9&H$J5=-xc~2`zCcj~&8e$7->!^Vo?zcCZ#(#AE03Sd$j}B#(WO z$EItsqj~Hqip7Gks}|jlNB@^6ZmY#6@z_cp+f<8f#$&(Zv4R$>y?jK|K^ zV)J?IJRbYF7CR&f8#gF!36FkAi|)k}zr$k(X|eG#SV`F%1x)!^N$0qaGSKs7Fyuf0eCW^&{ zy?8L~>P=EL+`+ar1{nqyZ7jD_PLL>TsQ#9ZTss+C;aqVQX&x}L19-aXdMaQucbxkS z#B4sJ6aO9O?v8;T_&%FfNB+&YQK-{UiGmeycL3zmQ<>blAsF zRZE4L7Q@(Q22}sd)saXC==G&31a;btO=zpr=3;ZwVJHWUgGLN!+5YQnKIlktA_h3Ryx*c;YdNyru&+vfm? zI)6QzJ|@bB$c;^O4Gkml*Cyb2>|}Cx0iF3TR;T%AE(Xwi*|`lA9=LH3d1>1fhf*9F zM>oK~3|6$~;1u&0apMgvDd$6r67?D4)!5EVg@~I9qe}Ij#)$S%biK}@EPk0w+@PGg z5!$k$SN(-Jw;bE|xbkhb&_Tad@n#G61UVj1T3Upd2EVSPY16BI^_60@2(dwZ9#F#b#xTukhbC9IVZRSZLQS+DAuK$5s`D89lWGB;DaX}tLQ*>qN2cV8*CKRkH1lg; zKkrxjf3Eb*5mM@RLvyQ*K38Vs2$A;i*YT3~F7g7+UZ7#1a0AvoYU|gC&ansSfa1Y2PXd{g3(X5sygIS6BW45rZH!o8+GA0gwVUQVZGz<5WL4 z5}qZAE9Ijn02Et?lwvJXuzC9zBK!dfMEDizL6#qe6FE@eRAj{v!9sM5(?)C6c3`}c zW5_p@c}EuF08qI1bq;)Q+lvZvTb+gm}!yjOu11>NPDYlt(>|C|QfT_7OLm z#MZG>$nlV$fqd=LaePAc9zfJ+Evk}7kul@|Eo!|VfTABL3~n7louB}%Pq7YS?PHJz z#&{Yyo{fP9=q+XXK%w137x0Pgq~L-T9O$>g2F%mKw-@e>vyGPy8zmPmY%obK+&f6l zNW~2|9NtdzPi>{yacZOd=iC zk+b?p+e@rbrCt~N>{&!{=`3!E7djXBObA8d26Jfx^Aa4wB3A>>5m2_ARDXzv*-wXZ z^9~xA-@1r1*h)QOxp_53RPl%s!-x!ID?dSg<&|@z)^Fe=wBR>{HxUEVX(=62;9{&hX@l2%Q|Z(A^0U>Yyn!w=iYN zICnn0T-3}QP@V9dtVgh)2Ufy$vJbq@bg~0;q`(&yUZ0uMs|C(M(!P0H=ExPGZrcY$Zr|iHm1YcpHrhh_WVW z+96L{jWP&xTnT||&vDIAC9UUk()NhXz6{vI$^9Jj(ys>DPW4ZlnqFz6xA9-e-CVn4ZCIz0R0a@B9d zm1VSeq}7ninD(o<0_!KNBSF|!muTI`&bqe&=@mi6(t@67qQ-c7rlwWeKTa#Rf7nl+ zmwvmyETpI1ur)BHmD>zP=?jmdJTzE{?_v^@uqyt|JsDZhJ5SqK?|cV!C@Kz`OlW}a z2}W2Qgqg@FZu>$xlMvL#&I#t^e*-$`pi)CH{ZIUTf(f7({oVAkr+{H}KQLnSGB1?q zB@_g+8ii{FqbwdG)Nk7Z5g2fsd^<91#3EAq(R}gx_rOTmI7FBkH0wvD(@>#T%Z;-b z=zFl4z(7w9(MWOeC(44MLTuB0=pO7iU?(6wOD@Q`sJ1$zlnxbgf<7rzZVeU8_7}kv z{RC=X#_E4R5$BcTtp4|!<@qt{yGVt-tl)yKSYaX%RFFnnTekkrEWM{KT7B6}hDh}i zYIQPDG1bR@#&l%!v~^|~5a+lhn8bb;Jxvjq)yR?ui;D0IE;!*Z$=w$6)i3wjqP+EG z;}(%< zJN1CgJ|tx0v>X9#er1JaJ{nlg2wo1GqIVr*jbK1IY}ZEOaL>UigTYNBxD!88-W!Hp z8*eF4zKK8n_B{U&hBCZ1^id~pP)WIRcQp#-k@d&O;^TAEjA<(g@A=6&@*+~oa_@|C zOo#_OIOFCFR+DkQ65lhR#BWdtV@2Qbue<1LQ}j#&Gv)kn zp}GET#V|q`IfdMp94vT*JWO5@BTOM-SH#9ap24WfzaXukQyMG=vMzOufQl4h|7tVF zt=H2T2^R4Lvyi|O#iMDfY&wsg#PhX5K8U{q)+tLz;P_jIe26~Gh~YbI?5N-3kH7hM zFJ;X?hMK?65!RErxd>lIB2Xmh>K-)8FVW61ZfY8wBR{_!L0}#XPcu0w2W!s@X)zH6 zeJqac(H30jd>Q#Y3 z7D-W*E&_l2NC$JIF+ufF=X}eMHWAHq`cV0Lq+sk-J&m>E*cVwVz86H~fXyIvKkW!P zGkyX-?6e#Plm94U5mIHPDT77{ae36C)Q{?=V_z7i1yMk*f3Yw;y|!H@sUucYI&C|ppUM(%7IZB4hVG8GI%SE63dw- zJ(MJnY_Vzxz;TCq1hJbKE&P-tZzZ(Ii2N%xa~JTeV0a=<=h=*}94BwVI<+nT z%64_=>k8lE(9U;MhHy6D8^F~b_~UQqjxW^^$4XejLDpl$@c&u7r0l9o93ey; zWgw2-oH*=69nGe)&U*RvWq!FboMWWndWx^PtOWP?=Fa-9%<7Jq zPAw)d3-AYZUxuRn*3{$Nz3?6GoPwEyR-@SOFl0a2A(n@g{Q&pLC)JbVAUT_n6=yy_ zcuSe>y}Iq@(Qz=41b9B?A59S0nXMIqLN=_Ix|Es=0x z9Sv52ZLp)-gxQ9JE+Wv>b_Z?)`0aoB=U>0$F|Nv?^BpVk)z|MJ<`-CPvZ+u5FEpJx z{!>bY+E|cO{SO?%L9s)ADe<=Wv@&Fz&@AR!BvT~3G?~@zaxtr&kr0^rFXg#$Lc;K% zfTGl2rJ8n|vcIO?VzrX)Znvf!@@x+Ii(7zv@m=N4IH9%uC9K2!1NAu#G7Z#g`#5A8 zsP7>Wi2(^nDV-n(rT;_GyG#(iTeiOnv$9pY7qeWE4Ey( zMOn|lZ6P4sA8wKrM&W} z5ZAjWD~NAXvHd`34Q{DFyajG_QvK(5RDi1>*(4{cdl83>tzFFEprC2~5@pq+LS#b~ z@l3ov`IaK)37zfJ5kZPIm^SFtM~fKl59Y{y)x*0P?t^gl2*bOI6d?ngy{pLIzj~~@ z->SMlc7GvDk?=V<8LM^M*a6PSpF#i)N=Azw-fGCV8%g9ov&Y;Cth%MJ9xrCh`XMMaX!D+Y|Fy zSA2FAc>VOI#u`^Z9ucXx*OKn^>R;eBVNQZ-3vb?-{fZqGiI{}EXTczx% zzD2V1HGG-pK(9E46`*yvl^1}OTVK^x!EleyMYv$4@_4>*Pg1p;p+13w-#L$=-ju-i z@qy=3Fll**3={5Yau9nGHOy-P@K^TagOX>#fDH<=tDBX}`9ik`w{8YuYHpu2RtHl{ zmz`{Vo=sNIc4dK{>IojmRKKABsQfE>GDmCfM^O|%REN7EqNrRsHh;6SV6xDx!)!8? z&{bW?5HQ-O9SSg<(bTH=hVs945 zr*x7{XA{+pHaeBs$RaIdXWL{${>L0KG6fC8<{n|e_jP($v9EI#o>lB$8l}Uq1dG*k*Q76m~GF%j~XkB@5hOe1 z+RAks_B{N>ef(@qaqVjtccP}a??$uY`ud7{k&4^6T)FIc~vDod1$Q-v0Zt64fwwYkb9KNIPA z2HPiQb=s>wQ?(uG+*ECy(q)>EJj|vh;1d+d-h$Z`%mR{_1l|p{Bz4PE8oRRu4}-y8 z!@2|BR5Rc?AMZ`Tm37mEP7Pk{#)k73|7onmjS6oO`%3@1P7Yvd>o^yOW?cLqCGJU~ zRkJ(uSkoNGt}|;Hnk;{wrwo4*`@bI|5`$v@)(D~}>?oigJhA%NKdu?Y$p-uT%Kg)YsGwnHrT=uHT~M1>lxfq2ZtZ`@ z*0eg33QReV0S0@vFNi)OG3}FMZV6{xe^Kix71M?9ViRZ3t_k)a7u=X&%fm&FFgVBi zym-C3GFx%Y5F&%-O3L9G!hq=B*=)$%gDt8Gb16+T7&K}#N$L5N&^pMFt&DjJ!s40! zlu9f*f$up^z`+5$VAWNEV(6soS#^Dh^4e3vsGvPhDwm%U?h8KOK3r)#Q|J`jxJG_|2A2JNw7H&Z$hI=8c30&co1ADJPh=R*ck{OU_qHQ^mq$~-HSz%X@pTDi*9~0Tzz&OCcnkc*@e@(_~PrTmZubBu|;f^uHS`bWy7as(NAb5-iM)%XV{04H+OLRV7&hZz4UW&$`J@G||n~fK` zcZR(zY9*5b&a**~p(}WHVKd7fLa^89u?@LcQ3DLBI_msu{IPaV^|@ z5h$!O=$hDSu8aak=dh>CBk?3Kclc{Zy4QZH~|? zqVWtYyK$}th7tXr1Pv?yoP+KA7g|K)$yk=&p!k z!rw+JF#$K)_6^a&R5)T#f;j4+*!jSmR$}My3{A27j7cuW_vA zXrQab4Yotz9Q6B&b)p?6A>sziIVaW26qaYlQ25maO66Q(XuT`*aLKD2 zXehaGKW#5O{T()ggVG45Gbur)N3|^9N~}w>k#Qnn4{)M zSFL$&91=N?oZws5c$nOh^Ux(7L2M9GVsYnQd<5;2EnbKewBxC_MZm=-OsG7AjoSz< z&*RF^&j@`xk-2!2`PwH}^Jy4-zeaf@?M zNXqf8anzm%)!iL<72D=inBpUVKd2|7K5MVW6s*UCnGqfX+dU+UWX+sfY^~gXJ*=61 zKejz`59LaGFJt?oGFPg|k@nU){`K3ee{3r~y@6P>gif^fOYN)GzTjdSiM zSWiLMpv;&L^?Uzl+NL>Vahfr8jOYn!-EYamc8M7}_H`FI{XNm1wTf8uAlMNMpV)VG(Xi6XH>*&NrvQ#Fn%iV8@ z%G)Jv7uSu5u;d*?RZLC8fU8SMunQeRH;K){Ld1j-tCZ1pp>56*d>`HvTfSosh>0T> zus3u&y)B!8a*SeQA)aRY5cL-otHgwHOT>g7NY?J3FGmm)+lg>^cH;=eWydn}LU*tu za3^C4dK!rrXo-gfB=+JW&nx2gFZE)=0dd5Barho_vLFyMEEBh)*cO(GH!v;z#hfnoI-l_!2mc-fRIZ=Xe-kAu&0|ve;1)W zOKK2m8~~^(4wgaqiL|DzXNNY>b7IkGbQ2j@i1wmpFndBUr~uNUSFqjFPZmnu^$@wF zpSV$&;U=H`d_n@hbDzf>Q(3vAwVrN7prpNG0t|#Bi+!{Pna{nBx;$Xa61>N>UeDVl zt}{nimfO)VreN0P7J0-bVonXjG3He?3h*g17=Lm>=d8zB{|DFV|KQsF-&BYv;qL1* zwR(R6n#R|DNw{h;p#79Rb|K1ss9OysfZqI+&@&+8XG19!&wWekbbG%=G62fxR zexdPOU?vK{(I0faSd`nH(}7^?018;^&cbW$?PnUa3Cv2)M-Hkx_Kq?mE3BDforfFG zCOU)|Wz~s#_3X=-J_O2T`AwP*t#Uf-AZ#%E#eJj_g|YkJjAUf5dTRogst@2jU%cST z7wzUHFfv|6te36uOIS)A?v>e1h1df$fv?bY5eSALxQYj(5nRrK1L)>e=Mf6CgQLZC zh}-id#=5ywGMADFQdr3a5phgZdo&kGCvSJ*(ur!3$GIRPU?DEfQJyRknvHM1nItI0 zz{YeSBn=;W^6X58;$hq_3I}lH_aJnR+u{sw3!MFD7;~Kcfsc8KrxKwswgw~P2wIWB zySsV0r&KvrB(#X@f=fBX&Xse5A!dP6439e_bgDarcVLP69pz3jbSgI+QmQgaRf$yL zU66|8vJd?U*D&!c27kv4iqK@N2#h1cHkP%ffa@=!fZ6_h?^3@0apI_5gazdYch)KF zix+X}8I@-A=lT~rGtX)eZLL#45fuP`(@J%*(5hv#I=}|uE5X{G9HOKw5?W389ye(O zHb4|*eGYlfuG(DW!{qC`%r7j-0!Mo%o%ErH{;9g}xd>Rwv@(VHA@ixS=|O)!|=3v)2oR z7ShlM?O_etH4WN?KY@l){#C+s6S;8Umm@zMq0#yvXM9hy{3IN5fc%}dCF*N*jV6moDaY}D-+{D&S1R^j655WV#Q9%D>i&Pwe zS;`_WU_z?qv(i^g*C775eotF4l_Kp2)N zOe1hc{b+{bED@rECx=ETYmv@QyhP3lNzaP50za|%aflXjR#@KGTo5)UaOgW5({?Be`^5&7bsO31MTBS0X@ zm?X2}m~4sD#Qan*MRgMs8KvjS>sX(nvD7VNId@%1=QApbb-YT_jH4 z$PlISfUxudF}9`@??}VwV1cIvU4elWXG}MT*y7OqrE+E%UcxA;xzs@ei3Kp2w4@*F zWpnC_xQ>I%u_<00Rkuo8l2Nj>;t(bk@%ffesC?QOgF#$f#<;rZXpJGSQZ#G|0loGpx>d^ldd#%&;R#uKZ*&th$o|$-g>+rdC{* zITv{6$i*59pb>182Wg{XEyV&Y-=Hx21_k_YIBtLqboC7jw6nOnQgpOM1Q-D!23knD zR$^a9)ijk9Q-i6)ri9WcV=v$eluX>fQivNaYhwn?;DUPWao?D^pl(G&AWpWGs(ENC zbR}oozo9Hy4>m1r58W*m{eoA1>RaMo3t$K$~V@#@D&tv{_4WJrp`k`1W6JTMaOys(@pc^_~3YMiqU5np-};oyNWIDH)^ zzVtF)z|vSfS2^EA4kw1zQ|9fu2=mQ~IOcptgkp1AF<7VAyM#j0&UufFCSQCjnNcvUy=W6%YEL;>8WDcp5M3 z01Ai92~~Ps0$?($2fcM+#bXBrY`{gWKLMwgLLh5jNOVwUtMK`Mg4aXFm&O?lDOL%yoF@flxxcJ zmxPBxx?{|YN5d%IB|=-{ofQIYu1C1rATiA>7@`n!oHLMuMi-@|c@oX42CZZ5jx8jJ z17+$b5OCc;D-SOf+J;jBx%w(7VVIfl5+OtHQuZtn+T%X5D@%mV4W7VGFe|5((rGF7 zE`mR-1?v^MxXyD~d1R^3Mt?+ExKtQW3&8yi+F)Q1o~Wh?R9%D zQIp4^Q(V;I`}{3_gF3{8Kg##72$nH3(1s<;dZKEKZO@ICXT*F)T4Z(XaE-EQBx_s| zicWSmUcEC3x;-Ky%IWR_AeKZ-7uwn(vPH@+WyUhW3RPX0YzcO*Qg$vAx{tHUA5bHT zi@JoJd>QVKwtfupNAHLt`iQgOT7qzSSlZl{h}fWbqu z@BFZMCIA@4!(s9CZjBG~MIgvyqHAKJd5k}kH9j6@!vcy*Cez^$Vn~(Pm+a5AnvbTI zEvpK$IE74Q-!gc_3By*H&CNLHLl^Kdc*Sy142}!&wV%Z~OSL$MT{X!AFUncBP4Y0D zQiO~u9W_g;@qr=g6JN6$LZ`433~EQbIqmkm-R{N!mAO&xpTGDNhaRCh(jslCL>a7~ z?NF|+p-6J^NKPzpZl_qlQ?|Wmkyk{pg0^^Q)3Fl86eA_NIgO8^3E zM%Uzv33kTfF|0YwFQbMLi`N65+kx#QF@cG45co1ts1;(h5u^r(9tH8*xL7$v8y9+4X4wZRBWHT3^<`h)Hbp3)JjL;i;#QmP96NQ zLEv#+J6N<`EMAC87wszO0$xX!xA|h?xKj1N_}XFP#d}y(IsO6)pF7}wfUxkY4^9MI4nrMSu@+o1Ueok6 zL1A)1dtN1M64Zr?75iHumqgfGSIy9IG1r1<$?UfTh`MG_S|wwOVY znMesQIdRZ^p^?VIC9l@EQ~*t9zP^#b(>&8^4+9&@_w@(ez5uX44@Yr;4m1S~)<;?o}sXYyoI806`uqz6Nw*=tA@edV`z>yoiF;F%PrKQ-LUj zs)Onk4AQE`>XZNhaSXb8Y}p^x>c41b&;2#EvQvkyLWe^A>|V)=u4xA0ugMmaML?k`=AjguelJL{h7?T-O;EN}$4KAoHp9zI;KoDZ#3^+8m@YP;TP3|}$AO``vDD=EyER=atRXDuBid-- z_kMxhq*GEIl2S?oQhIPx`&m3M;TMXMF5tHr7jH+ynTZX*>-cqp&xH<(@pYkfCh6sJ ziY$outxq*~S% z_Dg8+j^q-(9W~&#&15A@$JW(&hMjFPE7iZJ151|ga5M~z;h_5HKgbKH#c6o26We26 zN)OR=5!ZFlu`{BQ!6<=%P3CZs`-epOl66*1)jn;pP%9L?#_g4)W4@x?1>ax<-R0QE zaW0zQ7x9WR_YI*>dc9_0fJdfI9wUs720ubZN9_u6BFpN$&w&Rf=pwWeTi1ZC!zK8q zG8#wyty;PChS0SB+Hs*c5+9+I-rqD*X?;4_pv12bB4U%Sh&o$~XPRR(w+#gwJrf4T z0|9QFd)mXw&=o?PtOj5+EM^CR*NmItAmGvuxAp@UJ57%wOB3Y-dz$GM(X9b<@EFED{```ltA=H!2)m6w!Z|b+cz{3>q z_ig6QFx{(#L6P=}3>WfkH-ucsNw+Mx_gsAdiD@8?#qp7Wf^(=|8YTe0M$$lmU9rJi z$s*5!=<+P|9yitTC?0+@L9w;ZTxkdLPLb%O%zsm8W?$O}1<9>o&lRG6hcKCYYp#v3yoH{C zD#RRsvYI@NB-Bc3^JVEEKV^ntH!u*rVKZcxQ#;;I-X>0ZqlV6-lojfH#FK0y8y=ZM zR$92Te)nFv}8V9fn8$& zMXB4KQU3du(5BJZNRDF^;h3-V@71)&@NBGI487P?m5tq7!y`PHj9>u|W+Hf$2Q3KR z;XxSv7(M}USfuRnVuE4$bST~%XU||>)Re}18^>V+#waorv+hPR^L}pVG=q9&`mY%3 zl7ni+Eg?`(v4~yd0h1c)IOcgm%|;3IC64&doTfxW6|m`E)eBT0r%p&hW6Af;d>Z@e z-fxJ^-e5^~UKTrM*&jm+3sN9HoG=Z>Bvtkw+S*^<;|?A zH%-f%F%{Zw6qubXXH7Ip*(Pj+5a7q)5}zZ}-Y-(-tri}#XIrk9=^}6`vB9`taJL{&w^|W9N9o5Y! zuFE!+slg~Wlfu0b=m}?<>=q4KW;ja5A*|WfAtO9=Ecq-G0ni{he(BX5d=4j@pxvV* z8qzT`oVB~uuOqSk@Z~43tp(F9^3y}qfz2qMbqFYIh$>^{?0c`s90I^-@SZfXx>_7_ zN9zibKzaF50f{IH(#(JfSjIveIm3jW|1l0z;(E6x#M!V@Xg9aG<}-Z(X++y-i0drm zsL9M3o+Us+L5gbyH7V`|+;D!B?J`b+F`gBW+A3-COH&I1q z9Ix(NNNik+6~aX&{$1f-{eH#rE*QeLFkCw8_cI4p>>tGNutH5m!-J3IWOX?b`(Psy zZTsF`F^>htu&$_&boQp`16p1G#y??$V)E@Alj-$$z+ z_RcAvpN=?sNon^lA=wTu$%UnAE0IRt7Z`cj-PykUKSynYs9Mr? z+_qicB1fHmva!xlxCtVkdApW=mn{w3TAm#KiX5Ae#?uZ1hN8RJ5mSK}yn7n^i`a|U z*AR<#^hT|nMMYp1#-#ZQg=Iq_`<9Ho;t)&Pl^oFwXJQrsLE!KdeWPvT^n2)GbY@#8Gswd+~0+F0r+=^A5zB@Bsp)-I|IXGkae*|hNZ`4muVeWz6 z3)`LUOE-cc_m8g+gUA6#n-7t#=npaLRY!Lpw*&;YJu{~kraDmC9E1{5cdQ;)d|gZMb2j=o^5!R)!s4(rH*E`?w_l`X~pA zU|}U=Gv25UgaCuQ#2eL-Lqz>gV_xv5A zh39(=Z`xU9`^Z*#2F=?ERH9tC$_{ft@7JuQ%8`eLIGVS*0oqYceX%u>8;lz%g;!Ns zZ0xH@hgTNo{o1$%Xz1K_{Ee&ZttTg_8CKfpxTcO^xTG!uJyXSqKD<#wkh|RQQ2}TJ zU4mVP*uH*Ti$;RifWM7Pp&Y6GW1Hx_IB*AnBsB=A05jVD!E(v_HBKW8W^fJBPf!Qr ze`(0nlJ1F^4w@k z_vFxbC{@;KTXC=(e@v_S^Q?VSKSMIcBAz0Slrd}4%r<;4ocyC$)3?keHd_29OI%ng z+YVv1dhG_ZIOM`;AZqwH2f#%B3Uxv#C-huAIibJZlC=PRcV>J(1{aL ziRk_7U_pcnTB&fk)=$*gETWSBvMn(6Lu{R6Aw&oE9;+o6q@HNQY6DpB02Xq9DE5VL zls4nZQHtOw;j=R%2N=;Q0*2IJA5u>uxBCg|RbrrC_1_G}N%dO;3CQ@TOm0%YxgFa1 zTaInyQ$$w)Bixhf_qW4z9%x%2?jxkhjPP{@&sVD{nR-AV3gu#&qbvm6^W|w&|1Qve z7Ie2rVdU?=IV3)mN@`Q7EEh_C=)xXDMob`3t7p8&&trc6upO63oTi@P*;0NdTTh;? zDY6ytY_H+r{*dK5srCsA$Etpm3pz+MELve536Yj;jp~cfkHFA?z0p2mJ~&}((N}t_ zD$FjuZlcbUfk2Q>xo@42Zf7DV2`tVLuB}t^o|^D!9MyDLFd-}!kwO%um%%>y;uv6=V9ebfUhby)olQ8%u|t`^AP&0ch*#3vw+X2R`Q6y~{4sb4Cz zO%5U|IjNreEsTqh$v*7~jNuI{A8SnNcAffx5JG|QH4~J za+`UBscD`NdDc{1#Sv}Q|DZzAOYK`s%3gnp%;*8KU5F$3QT~KjzZ{`%VbrFMP8--1rkleJhHn4M!ocuJi5x=IE@Un{PLp_SV{BSJm%b^c}l2jN* zX(rij1o1U%3I7~KpLg@PLLL=DQ5(sWs9JfRLx6UWdbC1pzznoq0d+EXW z9a;|Gv0^5P^FpK{aq9J30mAW&IE%9WW1(f|C}d))Ns{SJe&to2yzQ%bUggfmLfhEy ziP-#Nwr{1tJZQYM8?e)&@n;gQB!vf5P4J9l8po&o9o>RZ;9AnHDP@bHh^4VMjFkM+kGE0aSS_zfxkObH!IUN3Q78l%Ih12n4oiE zuWk|&+dKg*|D@*bF^YGi(6P;#zesk7C;Q^7+75@A*`F2K&p^0k^&ne-KkgNG zJNA7qddZ^onbuK7hu{r~V(xGoK321@z5+w9Vh_oBt}wp9%N$sOi@n zwC3N;dtaE6@|n;gAoHHTpSkp|%xU3&yX4q#R6a?KT|%3n=~2pzGNEmc*Ps;qKaXigD9;=P_Hb9` zON=3e&Gqim7(yBAJz@y`h#`1+=I%>>FY{k)MRC9{}&2Da9FjN*!&QrY#RghbkYynP|&;(B72qc9l< z)|R=Qhi3aH_je`$;X|JrI}((l!8H_{b87nBn_ zv2S|ASmthEbew9PEpF%*X4IcBF1$mN;!HXNiKkhj6b3CtSePj|_mFYn4J`>X|1&zy zQtsZp&H9tZh0JmgxwlagW7(Pd#)W72m_G$+NSEylTWl=55NrzU@RDPDwQZaG zb-@0!rg(>n4K6`ro2jpT zV|$4bw_A8g|GhHwywJ8W1_%?;%1u(G{-Rj)o^oQha9>CpbY3VrPl^5#1Ac_k^Gm^s z<4nlXN-6zH5Zcu$=Lq;O%K4~UAP<49p0ejl!J*GkhU^jA;&?Vn!q{V6C!FUv(={-M zr<=xb^yNy$9^rg^tt?+c;f6xq=~6387sjFVisD-$Rkg;F!DP@W)Ak9^*?Z9dDu#%b<&5krjo5EW{Mnp%0sgp|A^@Di4DIsu zlUOk`=5@y;748A@n`)4!s?X>-XUt$|hsU&i>9Y@~i{XPBTt#miKoi zVGW>6-;X=k_~1r`u(m^mj#>0OiVvD4EX^!7oNEQ2-h<$zJv7K>nIw;BIcn4&GwIKm z^q0Z-Y+txnK^EmT*kelEZBE?hs{!!ce>eZ#REz(%_#*~9P}y@uh)KwHPVEkTLpJQD zVYZk@OgQ5v?UKub6a1({r=l!6AhhYW(^z&6y!AA7KztkC+=3pX=t}OCYe9OwKBw%L zIJ{0elsn}#e?O-jKOnR)pAIrEJY5B5W)8h-DO2w?g;o_G1jpP@?XU+2aa`02oAM=L z4s>*)rOc>@jHWe$Se!#$Ib2CQD0EKp%`?7dXq z^_0^T>Xpo^w0gQMdD*avg_hW9cDl6wfstrMNJS;>$y{Y;mvqH&Zz(1h+EK+8MDO6|TeOKmT5G?;@$vy7U zY4n6B{5Lbl{DoA#oar<&p2P;5MV^DE$9@yjYoym|dl09x^tjMELR)PVWpkZIs1k8P zn2L=hraJVgp>{HzM(XR>D6_~l{mCF|61%eUgs}Wi^&10D3i0U|H2p^BztC@_&X228 z7QE4(6r}F;{!qbjjwv`&x6|fn0Fs_mYy&AT9Tz&|wuZ%3!nYmkRBkiVd896-z4gF+ z-QYikWt*vNJtcgve}(HkW@>tm6@RSv_+zf{yr#Nn|9h&7ztVd|aMi_Izn7P*J^r|0 zndfc#zp%33xZ1<}zvOi{R4)A@v`MM8nkZ&!kJPcWqbd(#?7@=fwdlQ`9)9;6%HGpL zM|}_F#%W=0%1-DQARks?on%VHdE2juMfg-1*z|xZ$0>I?Q?m$Bm;93DG_S7h?SpW6mkNb_G&s)owL|)xm!S(TJXBlW zUByh<*$^W%t`I^Op1lo0*XZo+#R@Oj7EI40B@j`2NQoQ_y-lZA@^8b_GML*Q1pwaX$EB<1JD5SET8N-^@X$ZdD zW6iPCEzGoVZ8sDzRZM46yD4aM$)`ql;X44n8dV3Nrz<-$NYi{<|2#8?0oxd=l>RJK z_N?2&fnd1;CSyWmU9g?udUMHfAzhbmPb;iC?WOni7yeR+F!6 zIwx$tO9k_WVm~k3*Dy{~!H^#1^Yen7Pz&gnOo5X6R^z%rF=I^sMOd9wE47ZNJ{(au zwWkX;`NlpMgckb5T3I$TbxZ0}@vbcQEm0O+6t>%;5QvvXfEz*~u%|{LFbN8QUyawl z_vtji@TR%2P~KCc)6f*MI5i)zPG&k;3Gy6<80lp9LzA%wij96wfhjg5^PU=RvdJQk zVhV$`*1W-_FzDQfSjqGRt2{Y5KxweAmI5aX3Y@)I;5OvS8>zBPH8`sJf=dVjcmkf# z;3zFG3-J+HvhK4?*~OQv?l_Y&_%fU#ff1NOFNKyB9|V%3g>IdP<^bvgSH2WBN6y_O zT5?N``rRh|HNMj3T7%~y?2`HfKAimupwG#S3ko2UWUDkwXN=cR_%zs85k-78K!dF* zfjZY}E@*-72Vf}E%_V2iN`>GVbl$npWiGkX-`UNkgk2Fj2b1X0_lodPT3t@=qB39& z#rlf$~y8q``! zv`w{?Xw(PYQplTy!EuVZAWZxNWe!}T9kNWZ`}+c2v%@mQMO_1BIoS0XV%NAmYT>CW ztjxG-=VE9jIw=>OluMmds&$eu2mIP7TE1Yqooo8tq}VSeGdTBfh=YGZ()RzErs+87 z-=t|y(wc5)6?8)@8qn~wB*1VncR6e(=veiVx=l=`W&v~#Hq>p7S-OO2t07G2mS>@D z!}vRGO7w*`WeMELhJ|Qao1|_==>)jorJO0{oZi(qB7f_YOY}Xn)eLf45uhck!wO0RCV5 zbyrA@P2uLx-TVDq62 zroj`l%BZ&knVtTqzbAJ2dcuw|){aX=LV4YO_zNa@AI4XJiY}k&=vp!zo!9$T9hKav zI`5hq&hFRCwfX<3qoacLP|0;5MHHT&;73p2FAOR;U%2LJuZf)Wy9sK(*JS$rI4byk z=;$I(dcC*s90-*hJ$=7_)_G^~_J9PQ-%Aki-3RE8o>cI0{9>UhYY$|e!jGQ5-{%2g zUtF#)K+pPU!oc_cYdBW9?*SbPxa+!vE*iM7|5c+ED61Em9=fT=12Z$bSnm7!#4KVZgmIPr++?1|Z0 z!un~Qi+0@(l6jGkO?FYD2{uTFQOFQe;tuJEI~ED8(zqpbIjj+f>#m;!o4aY0j++y4 zj`Y~|W0=9dHl}@Rdy*GBfl0rH?}5*NyvP!Ze!KSvIa@h%3%k`0E{en6X+Mk?Msa(m z+ROZdbb5m9sen*SKNR4eicB2zEv!Lcjd7uqPB$no?1dct0i*YnNxIB%z;($xjMt9? zxg+o*lXyfj7l{sB9jw!%C$LER#+)dAuPutP_ZMVd98QA3Va~{~0MVV?eK& zEe6PuFe@CfT--2>F8UpK&j4j#OGEu2d6x2oXoykn7Yq$Uk3m56WI|k5p1dR67xiq8 z7oK|$nDjTqqN$0P_J(U<@E58Oi#KPFmdKcG0oI=ep53vQZRD9k4ckO-7 zeIP!X|Nry(fB0O^Is3iWUVH7e)?RyUzTi^moXZdohnKGp@wOo$;EslkVShb?&B=1` z*<^*MrfgS=gJCe?QxR??Q;}v?cmu`*fmN5b-Mt@JfReJb?Pg)kXT#@I+V#wax5-Z9 zszoit;Re5=Tvwi1?;_>Z%jy;xP}Y@;YK?@-{Oyj(r(nA90`TD8)SUtoDpD;KO2NH7 z;7|<2L0PO47Q}mSNWzsuq%E+3Q)Y6qI(y^j4OHz+yzz)~X3r$evl}I-zBJar9q{r;I+k)D1W;-Q=d>Oz9k5ZOI zPDT&l(K(?Gh+Ef)rlC9bge{^w$O)%VF`cMYvc-uLiqOH#x2Uo7)9r&hT*4wo~ zvb~4mZ6OmXwG(xX0OsBR*s67hkW;POqgsEqThH08C#Q_kA}7-o;b@=DvRe@zz}(*? z5fOn2U4}s<;MUEuLMiws!WV=s3{!iJiB{{5(G-bM>ki_1ckIH)DY%nbcbGl!F!90s-RZM7yqC)t(HX(Z9 zJny5hi~#!5p6H7(1M*Um6#iT&n|`|=r764%@2IGL;y2WNak0HTe z4DcU}f(PSaMg_6R#E(-x{8(jAI7#?%h=10arAKza^1RkL)gJ|x@kd&*j(lMh1KSeD z;#%#VqAJf-^6_D;SMXC^d2Ses4<6Z-|09gWx&}x^)o)vFW046|3BG1ZFk++GUsW&d z6@+)9cMU%aiW^|FY^vL_hSTn!Z~Je%Tjd{ES=_*L-ps#&0oW_@4q~9mk^| z+~~BNSBX^qCkCD1(=6--*BGF_DqQ%vhvC(a30eW|4Va+g!~`8z@^QWns&()`TUEo3UisJy86v^B+tzKlOtqCwzcFR7Swg)rY$nJtp*MofS*AVYl zc>o8d#d=*`y5JIbaW94F;hxdo$@E%D{tULQOUY0t`I@MAInMNsCf-OtuWSlmh|3s-X zo6^8STHlv@j`2TQi4BcfE7O6LQ-3%YihMrYe_o>!uTiYj!um-~N zH8IO_3RAMsiScm1hMiVr{x-pV(Mga2qwOxzUlS^nVFSo!sm9F=NOXloHeihvX*%l@ zD(emb6|lhWL5*^a-Q<`%qBz{*S*e}N-_v?lchjiVU&{%4(H(}ZE~jOkEqyszwpQmi z!Ls#7+SMh?*6?PQt(ezSw40`Ak*yq-6?pW!uE)Ck>a#hO?mwW^7WvLwD+q6%LbM;= z+R-NFfkFoWPGyhX4{cD)m#{lK>O@O6Vt%b9lt zj=cy(;!a5Ck_g*3TSC3frELIjE&#sX zo^Vi1T$-xHapU?CWqysHN)J=dU-N3Iu_Znsncu^LHJ`}@TTU~a#wlF~Gmq12%KWCx zsb}P@h89?`Moq?)=A*l?wvndUI&zj$&ICQDlAr3#dQ4PaKL+)yR2RGV;k9Mx6V7I1 zMe_rGkH%{Pf8_PZN&&R4QS~9Nm+J7|H?mHdZS6%MG=TIFNnr{~AteIRLj_(v9ds{~GZAOwjhRvPC2%IiIV zrK+%pbjRS8zuAd(ZN>&I2j}3=2I+1B)PKVU^=ifj-4$uWIw%E8lB#^LvhfcTHm|cy z8{)L=C6-7^HZOxS6!iBze`{Z8bP_g=yu^2%jbxmWNU<=?sb`mvlmnGq8DIFHwn_H~ z$T8MUhA88hTy4MlSyZ7S~qcKV3l!ZV1=NpYe*|4DXUF8I7Pc{ik1<~J4Ay` z507S1)>Zi{h*TCREisdKBeOpgV-EheQ0&qSiY7A&J6^#v_T`ov*wY=G@sx#RHsDTf z-%{Itfh6GHw(s`;H*GuDiFHq%8KLD61sV+sG&55Biu}qL6v*KlUeF>4v$W*yp~=vt zmvC8Xw{FFvh7ms{nBWv4)L=f4z5oK#Ijx)orjpL=rdvC}U!&k_xXB zrQ#S(Vy+}O$N01;jMK5stbqTm6T6`qjz?f4-5&zm_x?8!AXY!N+35J=c%zLUh-7Jy z1o|6jU64h#MZ8xO`_L6jQ&F7dao>Q~QNk$Q3b)TFfm8xYEZgYhV6+Cnjt6F0(`WdV$4EEt`*FKj&8q1P{ zx9{dfv23QLA3q<<;$t!p=hWXJkGf9%{eI$6*b@&-Rz4t()mbulSXVaCWrx-XM}`K% zB*~rv;o$&UEF6{DwNubK!R}x1*GEK~&(QX>^8RvoG=P>_G#Pu%o4{S4_04Fzr5^6& zp*OW_KihHKsc7@?;>c%FH61qCR8(#&e%y*iO@pG)72%>e4@s@p=x7{D5*mxqG2riD zC=aPDmRPOPoosscGL`fyYTaHD(%Ga6qoLifwaqTGw|xK_4!Rl6M!JTbP;bCmy~1f} zuops=e1bOGp@3AijS##h)Bsy!U=&oZDlSL0rNU-`^aB?nbar778a}FcKo_z~XfADF z1lNn>7gE~5W_&Jem<=xlCtbJlx=G00# zZ5!fo=UAn4>K?hmACA|HCn6toif97#D|#`BLd3dkudCOy@&udiR<(;zQ$fLK*H(a8 zF9Fk12&*V)b{%CduqQN9SX+~3*mMC6eF6^EJ2rU*rS)*6OZ&79P+m#A1(j(w)xu|_*SCw^1mgszQK9h`Ko00TF4Db*Ck`SvviBA2HSyMHsRm_ zO!sa0(bN3R_Io$O{GZFO5$~V2rFYcp@}$&zJbmgso?JXP;zv*O*Bx7h=6g%em#-1u zQXc=XK6NgSr_~mZCt)KF9pL#t_|en+?e}{(!~CE9w))cghhOh|f(sRI#jno>?5F|? zlklUb`TMuuyBX&HJbaCK|FkW=Tl(KbKzl;A zl&wl}H0U5SSb?4yzJSR4N3UmwKfyDDP21|eK--^ZQr2td&+JqjyX@LldkPc|o-?~Z z4?OATbBva+0r!pS`k)ow-Ar6T5`k)Ar+XKFs22<4lX|moXA^0{yuKX1X=!g0ry^)? z^9$O?iF_Tkx%ZQLEx)O&Q+qZ~d1E1jDwvNA?7_e3&3eZ@0WnaXPF^5PdUpuL9qHY+ zyC03>Gj3;5JYxcD$31;mST~&jBlZYe1giTbCUZR6hedXKS|ldF7$t!t5K1F((tW>? z*jM~Z*C_tU%W_P-Mvjrqb2tWFBS*4`#|}p1AN_6C%W>v68CPvJg+31#*mdq(_?vxM zO21gRSiyaxebeMK&G;Vr)gFY~lxgg~>A^XP z{E=H&$J+w1tUt!=IrXWzx1v{%ACj(iZUN zZe@4edf^@eIYTChm+32iC0vdA%TI)&!-7tYRHh}pjy<1gl~a_#L2TJQOZME#QZ2!* zIKtcBeAoasGq^sMPrH@fK6cez0fjucQx+aO+?WzCQ-Ie%lFAMhW#gPY%6^7&+m&hc zXu;s1owiS~3W7VrnEYbq z?`x@`7F~4wQ7jU(A?mr;iGmUaP765ba-A#8gM9k!tlPld|4rVtB5(RPB#i#nmF?fi z#5as&3GIogq_g&xvr2*EMt;{F>=xJo+xVMzu!nG6dgC3ei=~3M9>!v0zeOgkj#lIy ze%3tOV9lfCALQyV*2%JuKR68d^$-3EG6eH>{O}ztx*Ik=l>Gn2=Av)COfi>B70cy^ z?ag#+l>By323;XtSOjmcvZS$)Id@?LXwxv|{c70~^H6m)qP7Wf6!MX9-T@QVJf+}v z+F*pLQx;q{tmu4khLpl`Yi&GNW&LBj`bk^9qt!C|M!rF1Uw69-sk}&EC#<8HqXUiM-$Wbiy&I%afmctgdhs{!7ULOt93$=Vtglb)0 zzBkNftmqlJRK&fw0clGE*n1u5e3o_YF?d1}s6xfgoC2z`P|BRKsmM&ZP3ZYpt z3cA-@P<%=G-e?*kSdv?Rwvh$FCCw~!5OV09w4ck5MqrG$U`wkmi}YOOhkC#pm#YlEbJO61oi=Q9K`dLbNzfo+uWh4J!6odB---y@H zT>S@MKZ-fR6EV178H3AvIxy+_w&9~3EF<(7h?$t;0cC&B7dqIj{GfwP2~BP>#V`Do zOqQyo295=vpNV<>7rs7|RR$DT!QUH=lEFejmO$ekyrD;*;6 zpRUjmJX;npWtD<_p)y%O3aIt|T$i7Cr z9;Me0#j9tEiYq`@s6R;b@~)OJ6`=R-&@G;OQ>r)^ESJ3?8!5>cxWwcdfGA@I1P%-@O6U5@ghjhNx5%6CUt z%Q3U9tLa3@0-OlhB+neoQ?-Y_3W7IS#gSX)BRops1EfNDg;zUSau0ZsSWkP{(74Uh zn#fy`N1VbShac;Gz~k+**wkP!%dRYTn?>W_WU=^hBt(f#a!^e#(Ub}XQAUMVg=f-C zrC)S~k~omE-UcD{QI>&)L#SttI`ovaOCGK(oUPc$I8!x@r2S3olSOAQW3 zs+7er>zn@*-Ao$f0YJ7p${Ty|kM3lBT-FL7Fy_%dl!J`QV!qUKYe~%WhlM!gHXMR! zaby>0CPA=lDXUYwh<3mj?6EI-x*T_wLMP4HcTLHF>7$FaWQ$H)~0 zZPeg21?S^fqU$sE_!!W*wpnYt>OrfKdBXlQb3Z@89pAKsfu8W}!$*!G! zUJyI>Ej@q&i1w~^A@&ku7qNrbMg*~J!X!IS0Oae&vpD|H7}kMb9M9Ug%J)W;*N0ha ztlO|Qj?geQfs#-Y!kq^}w6}oh8aVdQzoXu|JL8|<*#V5%Z8#vXX&bJN#q$&V=xP2M z{NBwl|7SNB4iEST{ML7>SjAz1pP)7RE1oCtqo?`H#MuDzy``t?gKH#cDU*K~Rh+vM z5P({19iCl(luvr6-}GkRX1MWmdCISzKors}Q$QG1{AV=c$ITwkE)L~Ny_d!F_=)T$+l~HuvBI5RXQhE^G18v7Z-&A{sKtyE1p7fwQCxC&{`Lfx zI5<k>R9l5cnt`)~w>1SiSl zrXuSyD7bH9GVQSYSX4raNNeb^{L&g~td2%nQEtzxmwS_6T3&h|YkO1bM!yo}7`RV{ z`dT`&o`8PkmaY@gLQ^0MG8CHyeY<(JRU6%1_{@ncrB~6-LTF7ZmCvE#o3vD22TFOh z-MvdF1q7#c6IpdIOW@}xv2Oh9``LuxIr03_2Uy1;HVt|jzmabT@L%7^pX8GsV6g*b zULmU9e_eS=M|C@2_yFq?h;y5-D>rFkzY)391KJ($ry#pJ#t^V;h!;VY!P zOzZ+Gzq6dgp7n7gb=C6JXIM~eFoIHSEh&lGIeRSm;t^)E zgqA1;Gx)hl>`qHJp7|*IB6wOfj~&e7Tw`I-sIAjr-fw7P~$Yw&X z1^t>bttLz~GdoG)|9p(CqGq1w(0W`@0!B8TTb$qrm)JiFR>^8Tj_WyuYHn5 z^Epqlc4^_)(qYj$Kt8LzDy$RkGn7Ah;Oi}A^*{gB!V)sgN)$I~;O74#?{b-U@LSi? zezj2VtH>jy+wjyfA_qc$^(c>+%6eP98U%j(RF*Yt7ZghV?oCWXX5pR%HrT&MQP>%l z+;pwj%Q@-Y%Q@kGj@L{D{!il#Q&~*#@7nT*h5~Z-IdDUr`=by;Sf5$paDT5gY&fFQ^Zht0?8MeJ)A5C`P z{vtSO%nEn<6lOrp@uYL|Da>p|XNog~*8q5NG-ZseHBSA-Xg>eSv36_=b8C(0A* zD<~l7dpsqcCe0?G(OV7hFZ?>gqeW_SM$;ttT&dj+8Jz|W%On7ohiN- z*PmydEt~nfGg$>xU0&+asx|*$21{wz*warn#$TNYMb}sS-_Nrg7tVCRkO~(A7)Deu znaVAdx(Q*65~!RYH%WwW>;vhRh+eju~_F!Y-j$`3}A?+#0~S$A8TNWE1G^%hNa zsI)d|;a^H`Cs1yA-HH~zNCJBY?#yA`hx#eE%6!T#kg6)F+%f@j92QWZE8l`~CmIHG zU^uYlpX9J%z?GvpV7E)NFc_)4*Y8=v)3xNG)Hogjz?1n}3tFKSh%z;hW<5AoxDisE z5Ac5aF9808t$3Cdx)l@b_N9UZx~io<#j9ec6ix|efQl4jONC;L0R5w~Sn5s)&K~^M z8d@W=oc__!rNra8k^r86Ft7ZeHGglOWv6wu^}G+lS%9$Anb|bgnLq_%PM(`gG~mx- zpf;g205buKr6zRX3Ox`yv{spDS&1lI&E!K#>JzSTM7dZTmdf=DE`>eAi!)rt@{ngM z+AUO2S#!MlC!6wGu2enww6qc}4WN-ruVF#WR}gV0>SRZRbn8_vy?PxOu7{VBPcI^f z$6(e*5Co+7&=)bcYxz`qtl^!YXX8s>WH*vwnN2%G8Y8ls#=8C5@sNZzOaSsh%^T;}R1$L)wq!0y68zj!0>5~(pesEOZQ~ET z$~xov^7ELM6MEto5C2khofEn47~yr@k%67iL%>Ww*ByM`t1QC>eH>kJ1-FOl?9*P2 zTs`h!U5aINQBJnh%$>ySg4*lN0e&W5`Uq&DU2sD{l(ffQdFp@%i=|}H=3Yjky-Ulk)mEpRGA-HiNj+4|KJHKTgu_urxo0N!Y`LC7x%_NLG5fK_xY9qO!A@+(L$1T$HAAoK(@O-n5<5Smo%-)(e% zhuEuvnvQ8I#e2~)Q}5OixNC{2x%!BW7gjuS#9Z*Q*Ie1^z5@xaQO2MA%4n$>uU)%{ z8pz@fm!U#zsf@3X;Hu4#5Sau1_i7M%NyI~C6a&jSLQn4jcW^u%mckzD7L2BJaWFLG zHLm8d+^~CuyFy68WqB+!xb-c(?QB-+!r`hb;HGSfl}6a>N}~n*%rNm2rvbq#Hb;1$ zpAVcEP>Sz^dd^f~qUiwEW$NnzFzT$t*<|++q`kbr%VtmqGJm^T3%xVw^yLM*TAGt- zWDs|?61{!yjFi`GqJib43%ab(d%ZIqjvP!#)*vY)sNI>9f5GX~B~WO+D~i zfQaz_u>-{Q{;tl+yEDu81vh4SSy6ItQFjCmR_gYHg|2I$W3+l!k&3qyDo#=08=Ta3 zoT#-n*sRr7Sk>H~WjUaF*2}il_eR?~>9^bUsbOluMLJe+MAg;sgtOwn8=v$R8>mSC z9cAVrLH@~GtXujZ4>rN1pw|blLW$WN%WHA+3jpXxmEcS*0btxq{D%Veq~%54qmae7 z_t~M0)I&ez_Y|`6kQ(M+%9?u6Jb-{B!ix~JE^DfJ>X6RN(b?iHSyPwGR1FBS-g?M)&r$m|G>JX!CC94nI7EmomC6bMk$OyL*4&Kp*d?95(@f*{ed%<6}SNpZJnLM zflcBy?X# zyb0ZZ=I|$r*vteH!q97AU{^fIG zBJ21|_n@GWdd9!FO=BZM1)Tq=vElOVgAcHgc1&a4?x6^$ZTl(|z-{wcwZa!nEoNThy<(&0 z=pP~G0|j)}HD;ui^evnuNfc|ZRQ zO^GDQMx6ffWS)SkzApjz4?i|*A&>m?eW%$jw z&eeTQd;Z!S)^P;(lg3BeQVuG`w|SX_vtSYo>qB9>Xe$nV5yzXzzz77#R_0Uv(*8~o z|5Gsx5SzT&e*=%PSL7X(f+Ypy?YH&d#v7;y$%Br8hX3Zw+i&DE{?59^lW#O4qATFP zLK3Pm2?8lzigp&Wr>F5hyvbe)&4kY5-M83q%WHhZTWqe&%lwd+2rxf2#Qf9=~SU zkokAou{ATAmW&;-Ewf&|;eY@RKKRQetcy$AMLgkoUlrO}@MosejVItNLOW+U2QOf# zS5yGgJ{rv_6l3ys0o{{%WgFYTQ3*PyTF~YRSfu>>NO7a?EFN$Jc>$%PRT~X$mQAbE zvTLL*(Z=)>!j`BMI+|*&noa}S)9dL-6%GT!(2H!<1j(f1ZXZP$utA#N~MmRN^YOlRFtW1K@PB$*bkUGX{*uQpAb z9dqj6Q5uIXi5&3eUB8*z3HF0T?FgwLt> zsVG_?8yz|hh}FN%GVY?53O`U-Z1?D*saSe#L{RIE<9k@0al&!GF4{`x9kEvLwOecL zR=6mXXWFb4IL`=b4cn-7{JB4~?yd~-IOES)WPq{2$x)gUI5~>jT8WO`M8k~(m9%^e zghv^JvB2`N_yMo~8)7vuoQD6K&bUDtOH9r@gv^WsQ}F;1)?JXr<_ZS}DPToPmbxVH z!HX0byhshk)_C0}N0;(~A#rDx?+9rx zeL|8WSdk@t0%szP$q_hx&S+uiS0mXZad@$ayp7Zy6sH&^zoZuvE~u_LH>$^?XsyPA zsA5^vlq}0J)w4z^j7I|ZKg2B+^XmoUhl54M1O5nQnjD`p>3KvhoWDmx;ul(Q@g=;E z(2;mLdyS)&dqg_nfy8CHAQ3?Zt1*UH4LBN8t()!E&4DgS$WM47CJZcr%Shj5({2_g z=7ld3&@kzX4PN@@JGAfUPaE!OtQU zuuibS#ZP*%Rj|Q?ttxqIB5bWy`I2|Bt#kccu|z_zb%3h3QgQva7Xei-0^0RQfo||P zW4N>-k2Y$e>O;0#TJ9}i1xrV{fQs?(olIV$l0sn%xX9siZbN5i9g@?59z7ntw^#b% z9^NU zZNY>ZM-(7>N{1joa4U%x%HoMJ2p3Kz1xS&GoJu;(`CqCmo*svQiRSb-{g-StDS-`G z16p9XHCeCa78$R*H0U~!vn#Glc9ic92I-|q)A)d&Jywt@m++cWcJshHKyxWgrllHl zNH+Z@S{C&?Z2D7P!NUfZm?}vgf)YFUEg!I+k&>tMdWNxEHYdKwpZS1A$JxbTL0^q~ zFJW+>HMLd>1Bc=Ty9TzjtIIANl7ykkc^K=#&}~EWJ%44E&$*i{f2GXoj<>_PsZ^dS zuP-NFPiRoxOYn+}rlbcMuqA^0E2K=I_;6xUq8{%Ml-Wa%EE5=QP~_2_#^{kX{uKG; z&SUfeXZiGhV(S@{!z=uO;F`1-mxH%VdtsP*Ft~BNY55Pz=92{lwt=cZ8pIiGH%WuL zC3Q2-ZiC;qS!-<8GOe}K;=!;uM~X$I3;Lk9w(Gycuv7_o(4T^nI|VhNoF*bD%p)-lV5k#FJZL5PYjD*`DWLJn{1tv4eM0OthI`1}fV31Vx8jXE z-(>Oeg6)tp^;Ws`G3XKi>6Z!8$&c}-zp-ay2*UzaB`-nHhw%LO*m!6t=O6Ih2#6Iz zNR}%yr=FDy%dvR5j6l{DOO5|B!j<=7y8j{{_CAa1VAI+!ty^5A~as?O%Ci=1!fS10*ZXJvc_=tKHh_!a5&rq#*~?@=e#<{tO|V-Le0D-0V4py) zFQK4Bu2+)?vKzDcz*1HaA?Eje-uj`LDrEz@XhXmVQIx~7S|}7Ke>J2YfV;y7Y@{6T z2R>jnubeo%*HxyQ5E12cBN5RUdLP%bNe=y=$cDlg`h^eD&?mL>&7!nK59pJZRDI`% z6mq&`VSVK5|H+biQk0<`5tCs(6eQ&D1Wx~8|3D!87W?ezOzgkdASotZ6Scd$sDpkh zLr8ATY!4~DmDlUhDJcPO!P}_fNUI&PNXkZV<6c%gYo27pR~n4?+?E;fk^n|r$5y>v zYXpt6l)1=BY*7<7l(W!1_@XGX!Ks0`cQOxDuvTs;3u^2j<;>y{SUcMN{(i9@!ylgT zH~>aH2Cu{bz0H zZ-`Gf*vB$WI1lpjm4#0s4yA&HH~Dt3@YraU{5!E*Htq9?csTW9Y7sbb!QUI_ov2gt zyvIIl#vXpq8S*&|tk{sHGau(5KGA4`ih-hm#KKWigI#|BD@}#T%}+uGP_hgQarW{Z zcZKQ?fYeoh%9ToOWU!R9}>@`-xFB7)wiP883Sm;i-(oS;54X|ghrJS*+oJ=hTDx_S|OTD_nwHOM2Zvy95(zq?hud9q_O* z0Z{coZl(!CCoQsyXobUt=ycSACJ$x{dGn51KA{8L6Oq8{G6mgXB=iy*VS)@Zg5^wR7xz996{^zjM3gbrv4$-I3C6Y!21Q!FOM;$f!H zi)ljbfp|-4Ap4HvyXLXP-{py!anDzf7VWsQY8WO(EzJYSzT+?_pgF+We#oXz1oGEG zl9jkmQ%cBYiQ^y&3#ppi=fZ2Un3J^HcYtRi>LFbF#dOB|U_SkSp&g)pkvdwUGWE+( zV5W`%vxUG6yr!O!BP#N}xZGylVY6b3h$LeeL(Bz2mk>gisv26aPbh-VpLy`2BoKNf zA@q-g(4Ru*ip~EUphHPHr>5{*K4IZ50)b6iO~<96;=uj9+v#kPaPniGm#PQOz$k+J z#uWKvIn{F3iL1S^lmnwjqi9{wE7sLA{E$3tB4xl&OQZf_H;IqQ$t> zrMTUoyNSwXfXa$x35%EuWHy&1AQy;icoT>!jTxAjvA~(gl~A1Yl;8Iek%engL7oIE z5RD}Sk~H?LR!D&MQB?x8@l~s}5d@fujpgd6Eb>MH>Bi&$rs9!LS(L@eb3SG9DM0)h zu@f*V+?KEnR0*QEsy`B8OV~+N2!6GVrJr~CE9-KDT-5z|^tJrZr#M$kogq?5N5Go9 zB3!|XcCZ*1^$*B{?u)Jw^1w5c$)$VQa=EH*muwoysAYA)StMP60^Bb(TxeSe8g&gQ zm2e6jF!eE#jMf3!1nvzH-}9i7!3K$H-3fP7BefW=+vkFt)^m%BD3=Rkqa9nSwOC5fn1MauR0L9 zg!PTQ(Mc|ifyiYCauvSlqUxno-Of2KU=>I3c;J`N{){(W+Y-DH@e*ce4Dd}j5d&h} zPxu9w>H>~l{PLm{t>IpbN&&KY7jze0`5;zwY6WPLom5LIE#cr@7LV`RnCRmhRm%nP zjJq5p+}H7^vG1Qb*^Y(a0*;}bb%uz^;h22MuE+d9`%+NI5z-kuQ@}@j%@YWDe}t`@ zz{t50BMIMxL}E|8Ka#{qx=KVS_v70MIwiDASft5GW9%TJR)l-akPAz60CEAW^1Yj3{?9*OBi=u4OYf-H<;kn{cph8h@odI38E%*8Y5soS?Ar`C zpVilhH`86|`Pdql$8!^U|H^6%1D>V$(bN3x^?NtN{GZ(cLjUjI`u<95R7@fvuUQBx znyFm`qY+@7lMP=l7KRyKtIj@2vJKDvg0*wOThbGYa-NsQDecJgrkE}3 z>u1eF4xHfMz81opVbZh0FzLw*nP8ao{7U&QH_U)FurTRCLw3ME6l-#=Qg{$)-K(*= ztgTNuljHiGtXY-zJr&q>_uBW!n!%My;~uz|&eU^pP!Ct}oluG$Sl6MX#}Xy>ok*`$ z9R3!5e^PA6DUr4dcT~XI0V>fGZaNO6k$I1Fm|@pW3g1>6UE(^Njp=ncGh{<1kb!wI z`xXrh@L}Z#0-Ls+8e&U1sT9BZTlNd#iwaE=20>Ghk1BM*nblI|ja92348{iMZ<+w+Rg9L{}L&_i%vidJtfOI6KvX zO;?7r=^Bps7Rzx7<1im4#e>1WT7%jlzQux?mD3q=%+<zz(^o-xQ0+%jF?LvrJ zS1V|yh{ts(y*p24wnKb#ihVLe@mmw4UIBr z>S5c`T|kH$SX#5Ge1;0U&Z+D=;of<9ftPi55A6-=rzBDNF{ z8ij45#$i)R0A4UTFe3twBa{>JY9ZR-JVrX@gSc9V8e(rdD=E@$y=2$=XId)g(hRcV zuFtiVU(Wngghdz~ zo>vWbg!8{)?XzCN02~~pWqgt8SwVB%W;vl0js^hSpCl6HfgMtY*9>u^Ww}Go0Rp{= zxP@W8?u>?fy#|6h+|}b6qI$me#T(-9wOe6KJ2Eo=9PSQp^sY+yEe2>Q4`0T{wId1ED_`(Oma&vkONmjZO9sk} zO9paFF=`oIv1PZ$8FgMvHPvdBBcd(0#$#?{KvhZFdpU}&5%&lAA~r6o-F%FnP?y+aIdSFg}U%WIp63IWv8V`1-bf8} zx^V=iDIfL&OP)kP^q)N1cA7c``*Biyl%9ln{0iprL7K;~W*`HR{pR#tDu|Cgak7}c zhYfh04^#`U;p5k^E)f8LS3?3aw}5}3v5qdfA^0Y_q?%*}98wRk|CGOb;4^LMu^j&ZW*Ig(UZ^4r1$xO$yCa)M> zobiTpGPsxRcNWLILArF(3>AmJ=vfI}q&>Y5?xo&Y4vQ@z(iDt^Ne`%%;PRfs4&G=< z?MSCGDhB@^F-eJF{nD*=lUnen%UR!RGJ=*xd{_mG zzRN2m1Q?hp`L7UDg~J16SO!uaXjhg)k*0Xzy@zV6EoGOIpULM}fX^I7rs-x9@4@o%t}HNb_l`WTl6C6%&Wo6Gf%^(&P~-81mF&jxe*14kpGZe6?|PDk4x}HZ>?&<6 z82VxRd)}S6Ihne+ z?Z#D7C46ob8-N3GYpYnCWdT2o2cP&gi{PDCu<=%4SmN0%MBD;sc0>+29A9=CTcmo`wV3P!cNcT(;O}&gyD#N0l5x^%2 z!;W+t*e$G32eYOgHdiFULgGRpk2AoAd;th8_$PlGa^jx?xm$VNqA;W|+1ta$0&CL} z9hM5!v(C8uWT~|Mm)tp-fPuFn7rV3(w%o3{YU~y=e+N|GLdq|UiyrmtHFb?N>M?bD z@pxX`g+LcQde?Nd*WI0o-9AjI;;{4!ORo+dn1L?O-xHz~ybJ>k(=Z_QbctQR8|y!= zpWI{9I(k+(E$h=y<{Yv=rR`Qzj=RSrF~G9p7Z-Gvnt2X(>rAG7Jxu!R09 zmQY*b3u5Iwig6dWZ>G~s0^gQ#3#1BS;F1PNzRmx-g4_jJQ;&Iv8`l>sa{1pfMuTeH zRv<){BSLx+o2TZW{%UJG4N$vi*Lq8FrSLw?R`*trjcd;mau<%l5woPWzkrv^H%$=p z3K8jmY2uX`PT zysV%PQwzeVL(Qg`s=op*&_i4x30}r@GbNC#GlB7)G32-zDi>T}lhZc{#KiEm8{oft zD@l=8;`JJRydD`tTpQFLtQ;n&<8HlPg5+wEA~h#S1~qE*y9h@z++IL~HVD-5mv(X2 zMoWOck4)uFKo7wv0@DvSll7WG+GMT+4U%~21{N7jB20?p3@_&yQ|JmQe-H- zk;1RSmx1wAn&2hixpKJwDT8_F$|<~I4ICBT3sKG8=cpJ2KR#u2OH7KSX@W-~de#M5 zu^0$(=eB-c9)+|Efg*DmLRw(OX_eq_tYxv8I7NRVv;06XmZ^FEf}9VOUg`Pjs{*fI z%MyB!YtFOI0Fw-&`ZdkiYo1%pqLVOt4wD80m+Kxg*nji3qg6^FDa71I`Q&vh@n#=c zx4|Qf1qTuc3X8xun%DRGQ+2*@9lJ3E!Wpk##}bq_NM=%N?ELZb>sZpL9g+j~gZq{E zLoa(MDRq;`DA~j4oB5;b;T2&ie`P%z5+=QX=v{clde)~u(NMZzkIqRMvai3ChU@h} zLy!8=(A-75TP@Cd^)@)j!UqWgjr_@4)~&Y>0$wB_hrLAVh*j9shi0a@f=r0zo!bY} zJHDfqb!`K(20xN}gK^6$+rSdwrP52j{HYf#VKZ^R5HYdBlMbCt^XXCkTjJ$6$zVuA z0v6Bsp0&R&a%Nf0!#1)3Ph8L3I6CZ652dU#MKxgJyKllfLCeZR@cnJZMBwNhHa#h%lFJn{j7G5d(WKYrF!yn z`vs9xM$1;0G%ZTUv07ODg3HE@QboJKV&|ehkK83UxolyBK}Ify$=f7q9UZj=znz!@ z<6J!ymbk)<1Hmfsw=a=-?pavA(Pl0J$H(H|{hhP)&}}g90YmS?kw>v~)3GA^dxlL; zla@6{6$jGP6tI7b?}tkssp+Ei)j9c5aP6nbsfsh?BWeYiH|e2^?66U{!$_U<3fN;8ZY;NpYpG7ul_&^p~d3Fmd zTvw>!(vr-B#oYZCpTC*)xJAi2Prh-K_bW|1F&axad?7nA8c8w~Q!TKoBGxmVdp5IZ z7i_NF;s!A}UgM&Pvi2Gaon$t2l8s0VHtTk}NlfP@TUa}I5BmES7W?q;u`h(X zop4TSwVKlWoYXv^E)0;);dH&>lz1zST4AB{-S}ot7sv}+qI!SSg$*M5+leb%q4g0q zW?rLA6GO*ItQ$=j+NQe~Lnq2$ai#SGgrVCEGfkk{U4)?zm>5bZf!$`Y2$M-={am>!ZQj4$-3qv!6Zw8`E7_`!6gehxIpy_SNFmVZiX&-i6 zn(&Z)Sl+;9Haw;RpbPdmb^9EmOLJ5|BV2J^anW|3wVg!|5eBzyk_0nL2Dbz@(4MDB zy(1)tCg1Sh4TG8qw1kg=$Q8blmu|;qztAjrExqhCkPpT+Vkm7`k}a2f7B*(H9ttJh z!6;CnONNCFjjVI>fl+$+$5>IrYzga~8cqP=`nY4NJ_6!F4X~k1oWBy+ze%PadlF#! zdH)?OHf@X;cDJ-`p2-Bm39>}vE-k(wA^2ZDOWdx?<3Gch48jM(6D#bz7C{EUX$&uu zD>+-Q*_YkoHcn$;6H}Om8-_N=GPTWUFWJfxS_{LQGCJ%4I_DNgw^VC6rhRSO7ctS- zkI*tc#+e>r)8&%JHva<6!dU6WPUM#-1Kn>S%)pMa=GgIGAa;~q5j#q*fE*vgS^?@9 z%Y(p<_x!QLKF2idqNW(Cp*)PLI57WSf?%$2XipdzB3LllV@N1RpgLM5rONi=Z6-m+vPxGqSu7)ik+09#Co(W0oc`$yKftF;+I-~=D``I?Mv z?XP*~pTJ296fno#ZWRYpY;7L}jaY*_2Y&!2>#%Od;0r6OIvV(__uweXCI{bLju7~< z$ZrY}to`eY(Ms<*ITKwv07TV=DZ(mIL|7&7yYKeL{#)cmpwIZOG$pV%|5 zN?fRCgNN#ic=q2fpY%?@-!=O-!_DVM*N8XMUFnH>U7kB|q28UF;G-MQL-^6t{Hc3< z?`D|)^POwN`=@Q`{mxA;k0%Arz(?XvyBF}R#E+ilFLImj-3;@8K6Z_G|FkW=k948p zVDvr<7xIn9^KJa-Y5sQjy_;eF&u$nx|L@=WZpq@~>sjZ-?TryZvyx%qd)%S3XU<1p zZ`6L)p{K1xxT84tc*C6j+t>Jj(0jN6vFF?D4_uZ``Hr@~QKHfsvvUPGKy zA9`jGm9)#Lom4$r5j>5u;9gAnV1K+25ws#S1o9Yr!}nU?d!22*77zV8r9Ik_))96m zC}2l}XD7d7H%n~)BsP9fty4SWiF$1ipT3)Q>i)0D)Q8h0*ycd)q_(x zL*I3y1$x?(2l@Qn*y?*7pGF)N(N?yX%oiV4AIWy_sBIU7y|)PtZU5bl{KGI~g%^jk zXAeaLd7`!sB+v}q*;BME9khiSHvT7cNXy1)V73Ad4FE=8jk!S8<;cYukzUa}av)w;f!}+8=te4{uTIGpyQUyAT0>o`vQV3pez^hZsz-v22 zybfsV$j=A~niY*YzN4OLyUezGlEVk`jeA(~ld-TgL5@Gjp1(mo){|?~DD@5i#i3O< zoLS$FhU;JFBCw5Zz86(!Nxy9k8Hj7pd0f$DmqK0K&e}t8l?20l>oo^z+q@8 zLUL;Ia<>M}dR*4OWVg3|_c~d>Xu^}I%BX(>!kyagOsx`aLf!Wu%CiB0yt|1%xR3R? zrx%Uyrky=V9me!HM|JA4 z5d-*^eXM)GnzLdYdLzk4NaBfF-{0tC+FHEHE@r{&AayMHi~hXNewJ|K3o_RrF7!~cr(VNnODzOJ|OAMllS4C9T$JyEAq zBZ3OcUc`wJKnvdo@SVCc|7`G5D6N7VioN_n_2KLa6twI#zu_S37T)k=LMXC8g3GSp z!w#~J_vfA#P#pwA$33s(RSWI!)cd}Gl2p%TjM+ygBZ3;#)j(H0ZN|?63ak16auF6K zA~Qni;7r25&?G>72=Yio1)kk}nlCuWB3%(^tDI3_clyiOkrskLjIHr?5oEx?uCAh< zc8$MMJsE8sT4-Ce!blf|+P}eE6Nz=U4v8e89J=!arBC~8ueYErtK^Wl^mZQ;mC;#E zUjR*~`Md?mfbUKX8vY$ns0u7=S0s~ZMzYJ|r_1=4t`t8}#;bwxH~K0VW>&yAH^8ah zr^f-;k5>w~{_qpEZRpZl2v(TsI0BAA8+sf`(DH=TEr=Tu-YN9XL%bN6PAk zuTTnT2q4gkP)~z52w3QY5*+hHJws(;6lGB(jiR*EuGEz%(1nt+v`V9#=ZtbtfS$ID z#@bg-vMlFeS&rf@Cv{~OF6@@=xYTKo zKu(cshBp^d5kVvpfHf~$u6hwQy!;UBGJ2et`{yvu1p6MyBu0y!?S+sb(X&8l*c#*g zR=n35?|uEkd*XdTFW$Y8_3rS>_ia$ZE=h1a$pwA+V~s3%>JtPh&0df3{wL_AL)+?! z8jnh8Q7F!ZIt$iE%Nv~4gg~q(CMmY8i0I}bF-W~9Dv~gfUT&nO>MRmz@@QFv33u8f zqR3sIsH1)O@kW;FT1_y8K{(Jb-mGp3jWRH?IJX9q<)ji}ugAYEXfKvG%v&KUc4FqK zD?(f0;3bQuj%xPOrI@12@iGr2ACnX6(H`~|qaYtBW@Z6q!A)X99c+2; zSZX}=$V7`*8fDUl{v8=oH`3J6*~uOeL5;T=@li7VH4*Pl0L3#RE{J})hCYFqZ=mEt z?X(?jMOM9A4Rzz z_T|)#oTpNJIeQyfOOX{fy_C&rgN!2r+K??8n*4nVk3R-+wvSQDU;Iij3Q>*vcN3oI zY)^O8Uxjz013@SZ!zvaVPt?x{X}r%!_o%Om6$qE$^cMfTEWRVU z5`p67sJLj*Z$-Ywc19t|_@DtPL&jsiSUF2Vs!w$IAt zWYelWQO_eRtMK%!?*NgG$bbdgf=plr)1r|{l2{TdJjuh5lx8^1=)1=u{T)c3m(ema{cF9G&cYj>3LNn=2*pCXfgt*g89kdrLgg;Y*G zqqQKj^N=0<9EfK_aeg@PC8q-l8jd7HKb3+sOb~l2jw-V5M&amA|LtOc9wMv~VikcR zzl=apjQ~&7Xn_!Ha-zTsT#rX2YD#s(M3Gi-kx}3x5AQ&_;@kxw^bNfc)!0_K zuS`j?({BMV;X<-mkx_=8wtX|Q5Eq8Z(iqqr6Wd&|YwaRtYxd5CZj#kcPYR!U<|m`IbXsDnk)X5K)!CRJp$aitzFa z?541_Zi0C0AiirscpNr-(tbn$27OS&-q{4rS?!Rw1Yu$|>VXek>q8Y3&ALapy0rL+E@|OpWVkar2jc zVZD1qBfEjT7q<}_wWcZnvH{=wkoSBdU;PVfkhJ; zF-(Y~vDW*3)?ktl5td&4Jn;l?B9wrMPUO582q2QMc{&-^xWEgm*tU*psi>~b(cgBo`HyN!P+ zw7Lz|2+H)V&w;UK-^K&pQ9_|VB~W9wP$OE4M$nL;Bj2GiAyB4Oh}i`WiH2t}k~@d+ z$TKjVdfS(E8J07_4W<<$A4(A56{UWFC?Pdtjy;7O4d=gTgUR63PNDWuNS!mBXaqNQ#}n&e@uO;ay~9|)n%qv&D@Dp4Sl?gn7vjs z0*hL_cxh-ronoL5QUJ^#0EbQc#eiK_L@0iojU>9c>I@iES8zSUAxK zZJPqZRzm;s@K5Y~LH6%}LI~h>WA%)iQTmBB^zF(i1JI6krS~T=AP0?+>maJ4R=iy& zI&6eD!JwH0q~hFC)Jg2?N#{jWe=JM;mChM>>QDy$L2Cdgp!H4-9(FgQ#Zxf^|2D%e zkwlEiQ_dYtEUwp`>w$+f_Zw!5@M8l>YE`9*LYj}n1?u_C=x2Y8|sG=1rL zmf~FfIgnXr`*s^ENjK;npHkWfrJin>UKT4z;0H{B-YY!Ua0sY)LffUneeQ1vB$wxZVWPx)A=&>PIr`a(f zViABZG3Z+mkA|AMSNBJY-o3=SOnGyW(FQPRnfmwsZTJ~8#}kz&@>Mr{j)Xu#(T47# z4X4qD;j#^XLuG=_+$CB8f-~N%?%`~A(jq?l5|-|^zPcQKb!8Bein=a#lKt&P34t*nB&ab2@91a)|FRwU`Qu*ZBb%>1 zZVht@hL)iJ3gQjuKj#Pi$57$w)ztH6jn@1RB}8i;ME5gwJ`BT@slVl*(bCiAV$y>w zsWL6Ckb2sy6h>_4)`GHG;Puk(mI0oq&Yd9si$k9l9^EU>=g?Hw8;Ic7Bru zc6Zdq{H3G=01af1BPB9qK@4lmQS)Dm49e-H=D8SB#s;Pwog-5I>q(>>;}S_{wNBmX zzJ!9zdS3uei+azP^{OaD)Vr1H^VOS$l&JUKp?D~^ZEk80eoBy<*a~5-f|SCKs9+ zGP4UrRw!?GG`7Z9+AIWW+k7}xq3R>U)FGq7a^TVB&Tw_e*zla6RsG%wb;x}YIh$nb z)~csR#FJ@OIQj zEel@JSxueh6-LJovjNzA&WK zzk{QimfRoO>OYp?C(bOfwrcfvOK{b%Oa8Yty(Is#B-7feDmeJz6H6k(TeY_Y-+6pV ze7jcdLxOKVvZP-Gh1`62$*>L-66anrE|NmpH!PVHMIo2=EtwuoAxHNv$?MeW!#1um zjJ#D!duj=BA+K?*j*(Wx($DABBt}6FJ@*uot6_1O| z#4fq~s~ny?@u|qFrsu}RRJmtt45@POjGBQ|m3v-F-B`K&rPPTrm3yX+s;g?6zGFhw z?#7J{&6YF~j;P|w8(bm4e)3vh)%4m1YYhsiMfDRmRvoz%weAph*(Q(5aO#hQIrOnT zos-AHUre=jJiq=dO6cjtzj2wxbOV_!$wAp-dy8swUrPQ0c`F~wy+17hAyv84hL$6s zs{ELzQXTsHGHq5;QdO?&!=y3{38Gz}C6(gEp}m?k*r_>_&~w*clJXGb)b2?d)|h1O zq-1KaMA?~X@i;B3J*zS`aHP0*Oewe#mNoFMpR0gWs_Cb5x4M@h^OO=^lH4lFRds2a zwQ_lG&|$POXnEB;jb&9AC!MLf_*8XO&ZPBKIZth^nlNcs)#j&;RhDNpov8X~^XV%4 zr0tbza?{GHuP&ahEYEFPUUhMERaMnfD=W)$npRc)da;bs)=*Sg)#e!+!m2i3Tv_$2 zc$ra4U#Ns$etptaR&~i`$;_{acjTAH=a+@0A6MRd9EfMbap#_Bu2OsxzML9JEd~bb z!BbuF&k^IqrNQH1-Sct`{Hexj4<*H8upWq|kwfTRaW=p)Og)23TTZL_ms;BZIoKf3 zsp*H3VlXDrHb5_2apm^}k`dfA_#S#DsSiRYsoHT{ZyU~Dr_yOh8)}NQ>DX=2Urh?9 z<=(qjG+dATQrm*4K6OXo99>wyA3^mv^$llq`?Xp`#nZXqGQ7m#P6=znD80`Td_>nB zf=>{w$yK+eyk`_ z7=3}?kbiIh=dd8A2L7GHD5<5!@wG7lJPsHnQ66^~d4IN+kI=%G;FL2!egWooAh)zr z>`d92m9h&RodmFBM+u1KKyL>-(YAi>_o0t6&QoM+=U~gb(2-veiWO{3ap;$h{4$(i zhTnjA52`U#fuTwxmf_=OUg-ibOzkRn>)*f}}j2+N0Ht zag#7=A}Zb&MQgPPi{ZERXw}Un-ot(I^+0=|`ovV?8K`%DBUx#AZCd!3mECgFA{WyC zhZaUu?n$#hg9dEg*+{Rbn##YpvjQcKDoCOhR6dqw|1e3^8@qFF#(ou7gs0meRjq9quLW0L~(`qXB=BAffP-0qH)%(vMkH!po{zNpQ zS5g_Mt+MLZoogz~)1E(txY*}UMpvq_jTVe*9H&{0P&wH*t*qRW z6XaTjZUrr;=2Tg#&aS8`qSv*Ss^crx7FB-mVu$dB^xw8HA~SzQSXTNkN+G!mbEem$ zc91`S%16f$BKt z>gn-+SbGz=DvR%b94_!&5by!zA}X6E3Wf^iHC#}xa`j@MnBr36l0{aUR-m@v#em}W zd~VU#Y^+a(vwIz9+EHJG}p`L(xg=9Rd{j@IX310x6bR!mvb*v#=*^2}}@KGu>Ra-L}n#ACM< zh#L2l2qaEICV1;|b{SqYSZ%RoEXJz>OS5DvzupeN3)4ZFKh){!z~WMDJ5y~3QgAZE zz0A2Yg*;a-QEiRDpkd0tziH{pc2=XVzRnngWATtv=y-@9)Wi`onv>~wunO3o z?S!_2qjBzmww=)UZHS1g`yGE0j70L;ZN$KtEcvBtArv}>&{Yc69iu;I@TcZH{W*ms zGpi6nPfNk=6ud;iI?ArD3V*CnMC8m-4^rp|kZ%1&f2epf_X9Tb4suN}UdWQ4r4}%= z9-lL>A>!&aWW6^Mu&d_?b{2oG0_~;h$SnElX~5Cx0`C@;cxEj^)%z$^PcfHxjP(zK z?!cd!7bxl`6)O^<>Pq^9T6*a!|J+KSRD#BqW0I?n()|9qFn>67d0-rR|S;3PjwhfpzrTr>q zO=)mU#-z!t#D0Q{E%}@&**0+-O`6gc{a?(PesN8cT(c)8ca;o%Dor-OPb|)jG*2@1 zL0c5lqyuR&N0gkrWCcAe%1=$Bse^X>8-o#3TIj=BpLprpb|ItDA4v%sCQ(Czq8T zdQ^JR!~G?eHb#2fXY`tuZt_e+#+uR}$4GzZkVWozNyaa;KQ28U)M+J;j-nrHMlDL* zVrA*=$E5%eDD|HtB~XeXQ=}R0x`W@Au6jaxoOAi4)YDU%j(&F1OQk8(q$qdY&IP5j zo{`>m*A4iulINs(?z;8GrFqjSFyNh%=Q+S$nm3aJ{#Eh<2fS69_aX<_O0uOr?yaWV z(pG@x7%vRcHgSO`0Pu*L5!}4VWvn^U$?=y%f+^?z+2q zrAe<5&yzE(ObPm(-zTV7^!^QFtWJ#$N^7f5<WSQisl&oGv-y9l7YN0JeFnI!Qxafk^cUPwbCv0}1ouEV;XRh0Myar-Tci-ZN7{*9uVxHn7nI zYH^@O{3%gK`txcX+6O;;Kg(G~I};wYZ z4p1U2+}(y@_iITY}A^899gR60w3@nQu2)Z)*~-?QZDf8gJtEV%}Cd2}PD zi#Snzs*G1B-(-1g6S2MmVOCfy#WU-lFx^&|xw3)lCoH@k{^~_av6mDHV%4D(w6R2+ zB-;Q>>vJtTglc>fN`Y4ASHaJGVD;rz*FuD0`g5b{4oNg^F+v$DEZkb^896%`vu!a2 zYHg3k_;$rA2l6Yq!C7H18t^I#6Yv8PsM#-*5JcI%LULL{^nryF@GTrtaHWgzcR3fr z{at!t)95D%60D`#&XWYYdwo{#?>0w|h$YP;F3XRR1o=(qD71A5O0E7L$z}CAX#%Oh zWv5}^8zj=rWTTGaeujGiK=+e}eJ`3VDLEghKRxE_7GDDwm9{l?5ov`dvRl*c8+{Du$Z6QHQ%}I1L+UK;vGgAF+!tnR`-Tl%K!p0FawjRvT3V(wVf~rIAQsE*1%4%7A!dHR=PGpXt#wleNjJ>UOUcfg*r4+G-=(fLbmq5q;}TRg}e}D*j){M z!dK`c$;Orm7Y*}PB>^}06?_5!da_X<1t13C%&puIp+qf4a@xzJ*#!!O?nmiIQP^Oa zuHFJc-ao9)0|BSuRUm6Mh}}n=AI(|q?=+0z9AGyu!k-+n6?V5)9?#`DSeJ)cd``L&?yGPkHE$7Qf9FoQC9<#_Ao1{>p4)D z35u@^iVM)P(amQgwYG`>iAGg1E*Gty;Q3{DEO1yRiw*C1Qh{F=-nbuJ$>zK#1qD~Y znsuFzRuPC6J1o(UGgG?mfmRU3LR?a5QAiq<>XtBnw(mWuYvGNG}ufK@EvPGDDisu1$$$L2UsiE-())9@Cm zHN`%}NxnD@9&=#M_c}V44P;WJ$DPPK>u2=w5a$gpfgEuCcIyKv($I%X)A$yuP}@OYiKw^_C4-OX*#qqfZ1{(; z4~b8063{n9;=MfqAz?1FeQ19Cj&s*kAxOib;ezXdFS3D?!N-DDEFVYWxAoa5e_Gzh zPGbvvfRg3pTi7jw^ie6Vh%*(Ch*iDaMyQCgj@HXgLq#r^r$t#uV#cXD+aZ1^q)g4l zR0G3!(U-giL~H89*ZXqeyBx-o*p4LIZX!vV?V>siNgO$d!&4VjL%e~7O+XgpmvP-$ zH30cUBLY(?WgV%P8UcP#zsFt?+SkuqnG+OWhEXB`Vrc6AHmb{l{N336u-1{dVH=)C zSJd6Xq@-q8UASsuo_72-F?)k0IJYbX?!`1?L)U1W(vwo{#nI);*>Qy2d8igEU9Ebb$z&C_?#b!y1gM&!gYF~c&&xZkR!nhn>scJt@FVZ(hdDvB#Nws8&q?1zt}U~3-r({y&ykmA5_hoPl>7)a2IHbNO>c`3BMELa49E2)Qsoa*FEAB2OE>az~J046`*# zpEpr@$wlb_r(x2)q~rnm>*YRi2{!+DUX59!Mwl;optp z?bd0iB~gP@e`KW%o8%>Vki0*+m*jc17G&yLHVz$pW{24?3j7_?nw0*X(B-L1F)6{c z0o^(VnN#K!SMXGGn@^OV992_5#Z-PfA{iDhjHT>@09_Y$@wk^htdK^0#dx;| zb?+fSSKT<{=F0rF0j%H?sdMK5%yl}-&QF!U#pqeV;g?ErsP z`H3{ZBMpJTPo;Q|wg{L%m7+X+TKlsZpGuu{zAv){pGrn+EEaO=;#Q>V#?|CLO7qO+ zb5RpCQ?5oHqL$w4&g1yZtQgTWQ${nQBS?_a8-TzVi<=Lg`VNGyqoagSrx6)a-M!kJ z4^H|vj2Dvu$7le>Z|NP&3p^*9jaV$T3wZ!B&1d;=^1vuzn9JrbmO_WjoajqVB5;=N zP4f`kU_`P;k-Mm$w}fCKRr^Ysv58@R+Z?WBvaK($1TF@LpXabci=__i#Ecf<9dBkz z-07&`Bb4(unnJIqZ46a+1#Ul7{;yfDB~k}#iZW!D#g@Ma2qrmT%w#!mL6H_tmjg%5 zC14T))8xQM66CaJE%1ZM8P9ju%c2#y?PujTc+W9e7blbJ($cc zERlkJlfirbt4VM?Sik~4lR`SY0w(3so34?vy z&hEO3Eo{!`QkeImi{!hPzm$FSx%9C2c=5G@)qF0s_wFseR+mA(B12t6&LE7^`Oq(?$So`$GoD1!P6*h8Va0s!k-ncDRS z*6T}YvTs9QOeH+f^hV5KpMEK|nbbgtg?n-?S>~5hn7kJJJIo=CY>Ni_^is)9Y44z` zWg4e7-1kWhA1@(YO*Wm8xjY-_SW7%=>2n}Ews9I{QHmSfSkzZiC#%S0n?+H0$Zq(I zQpn_bi{l6R7da1Q*};~Iyd+W;`mW$$9>f(1q>BFPbLUYR6@$G6bnQ~YLqvf3D38b| z0R4yIVFms0xZda4cV9{EdbATbt2qY8DRbf6Jx7G|2|)iL{ZdTpP5h8r|NteQAI;MXMJw1&j5=6Y>bBWD-!ZSF4J1Ef=&-JkI ztBx_uxK!#ifa(IiU0Jr!k$FXn@!{U6_T;dSV?l{ApiJUUjBm<9G>84m7+Weu>Yf_I z)-08h2(|L9^e<-Q(1u3V1<4Z;W~t8dR@$7-M^8-hEcA% z_%a&N8}l48Rm*b<0!>kl`fqT6(zW0dhX`CnvSqM^-$E5BG3Cv^!pPU z^#%l*M>^($exqVGDY7dEpA2SLCUs(KzLEUmiEZ!Zsj0GtHIla9Pr6|#o4rixrF(HS z`)--k)qN}5zf2l5fT#p;Dgn(aAbSc}3;@Ax6rkGQkHEcnjy6l#*l(pSx=%*2yll&*drV za-)Q!-!1i*bjeL!g+CZ3-v$w4Dw3Qk+k>g%G-`jW@CPZe2X#zYaQ#Yf%f_8E^_ayq z_uNQP-rNd=K}xSU>T)wbVV8c8dK#!x7^Gy!HC!1a2YB+R_dj6?%Q4t(drOBR`*8Nu3aMA; zYZEl|;QP_nVB@iINzANIdWPuC!`ZClm^6VWZPu~YEFtb(o6?-dm{GPXDezLCnTENDQbI!uohu4UQQlaDS|BxiAVrxs z*>=QPiEtZn+}fTPj$DW@c%l}7tjYGt0iXloL+7!1H^rPkO2I9j?s5k^Tbos9DvS6@ z>OOce(3ZMq4}i|hi{mknz!pPAmZ{H> zxH;7(<&DLx_$R4{dl@VHN$N5_;~U9sScT^;5WwuHba=1262igPQcsafPggF~If`6L z{1TdS+3@*2x%AX>N%~oOfVKWvY7_j^7xy6aZe-(UX%M=ys-L9{o#&UV>q;rkN_~pk zyeCch>#06)^!R#q%Gv;g&^DT?9?gRKpj5kOh%!3lB3zR~8sPdAf=z8Ix*A)B(;#pj zn))WugM}?JrO%evwwWsUH$WhK*HpoaNna3h2wxPkgDa)Lpq|61Gs!1mk^pJWaFN|z zDRqguoP<=RIezhbE!JckExeMrQL%r3Mq|25o1_x1G(WsES8(dMQBu|PVk21u>-V@_Z zG5tkM(mgQ&6q7DuM&AoqsM+lilb3C%;HQ3gLKE5?~f0l_=~RitM|u8 zQoJV;i}c?3XE; zcnxfKAynRrU>d}0pw<=pL|bxYrSa@uYu7n zgmL#EAfDI2G*|re`{D=l8hFhWpVvG-xZX5ammN@%U+jv14j@gwpHpC;^0$+=OCjLWv{+x`DshZIE4Lc3?&RxF*C2IyW}pXU||O z2HTmV{oT|6cO0)kFVGr8ya@m@cueRo(M}R(s+k+bDmV{5WUBFyn6Rl8c~?P^vca-z zCjHnf-Uw3TK@bx~|F%6TSQHIBe0?h-rXg4+f{Bw6Hnc_G2P9C!7ZYD3etbRCj>lQV zmmp9y7i?fGD`x4xNXFJ<Mu>S$^AfWz1{J+j$h}g-G=)#8E*-e5PZ|!4`<4|7bY2^#4v;4Pj8LZI z$?G_nYES$DAE>iWpMggJu&-HjQaKJqi%HgNG^DRs>`Y*uEp6W z*ctyN6J1=4%Wow3x!zA0ZwzNAQ?!3B2w{plWIXMG;eX?Iz=r_=Mk{eg32Zha!42OT zql;OdB(g4gQ$f!{W=q3If}T;(v+f+n31VvKqJ%Kn3hjwUM{|$W^OfR6SVbn8D{HkF2v47m}u2pJ+74z$C67z`mhl>HYZfIME}+z_7{r#STQih z0_zue65?DaMq1)f-1$QE6JHRN`UVED%ym*b-QmaB%j={L!B3#tv^^zcbTxpK;giSM zigi+K_*Q&DpwB!;(zqZt_}`_>6r+DY01NEe!ocM9(nyal6km~8FhTyl;)~4P`0@g|4eO;LmJF&|rEn{(3+>x6YF_Tk-N4!`AJW!XK)>;OCmMi&^*>aW#kWYoviv zhad~>4xfFX^g+u2Hl$4IZOzMQUfn$@Q^T)g0fRa@E{TlE__+cwnt`{;PmG&@iDPz* z8jR?Inrx$kPVB_jfSZRjV%QeIg{^3Xj(!k7^!?`JP>Y6(es1b9{3)o(8B0#-5BeVp zM1ED1Ig#pMaDlF7Fy*TlJ%Nf`oQ7|KQCK!_ zqNOh`!}1eNLkW8yP$AQDB;)PC*wcekC$PBf?PVaL2HK5gC(1G3UP`HzZt;Nf-GK`A z@y4`?U$o)5t^x`UA-(^#3nhVbg{?T+B}p_3wD&n$##Z<8pbNOEh=1 z#l0l6t5Ad#n*=j*w{;opgAGzb3x!L?80#CrYBoq6bmM5Jfh4n6;H|QKMP>CTXDc z+&Mot$I~c>W|M>Fz3?Sz$tkj<)=_VW4YpOpDq7tSqg)vsKtfU*o)PEWZWxP{;6t3y zM<#D_^u4&{KrWyoDxfeOAiNfzfG=p6LLEOo z+o+B$o$TUfscq1e5kwESAyET7i0xc;yMu*ofrmw*H>vYor@@c11l>M7F>O9O4Q_zJ zPed-*N!_$PvGQ}-&2|KJHq1eFhOLZKBgMWW5{4ilorJSnV0{|yjeUn+e4GI76~H3e zhf&pHgJd?c1ti{zJ8$4jgm~W2ih1C=TE%4o`c?p7GJ4c9b))5(i*CPv*blBCUm|x5 z(6@#Y)wI=g-wdudN-M*}XecoX?`s6BGkJ7nsx9XLTErc~wr9Wt9(PI*0ZfS=H(49) zn7p~F6ObC=%2sFy(;+aNW zbQ($lgFQ+vcwJQG*PqESKd8YT$cgttpYlX}zkT-^_Im|7yQvzTVonFctTCRqB1p!9 zC@z4Z90wc&hg7TanhkIpOHr=xjnqM*Xj6cQlJ$GdG5Xp6vP3Xl=B4F$*udVUEnVGHELx!?xsH3E3; z6o87+m*gdVd*UtTuJOe3T?w> zyVygnP%V(B=zpK#X@wzfQedroTr{NXSE;#Nr65l5>o9Y?Bu5QC{+LPjK zyEwlzFd)Ev>bzb~p@cXWZ?xW|k{KJ)h;ZWt3K38b-eM9hG{!5&Z=Arl8xAcddgbwD z+W2;zYMCxRQH;CXfM_?&{gminCwgB&nQSdMD%5TxrNb+ga5=?hKT3A(1eZh=#w|=q zfK6SLVtm#0jS;6FS*wF62gTTqmk|9c?&QQZ8kuNMG%%GRiZ!KyOtOHVYI|x0FQ%ul z&Le=u{vm}#2Q-$C+`pc?CrL*n;poPnfj#{XY`kttW&ibulx%$?mCB3xp>dOr>Obl! z0C+v}$@{;cPc+?9j5`_#QSis3Uf@wQ--7E65|L4O1P}{|jt#yvG^xfdZOuMOF>o9m z5Q;-tx^?12s0Ho=)I}eNaHf2O%kA(Z?B(rJfv)%@b8bh!Jo%&_+;`is)2e&0F770o zv_tC9!JqWV{%Q#3<~j<}VU%VU2b@2_mH;hy8K0wY*I_G_hg^pjoL~obNRd4r>) z#8?Y$88VEDixx!EP>enJ2<-Zdb`M}(c1i;}T_-K0E{?iFuNyRVz)f~Yu=6@6e?UF{ z7qjh@BAwQMA!bwB*Ya(78nI*k3x z&uxo`$7<>g>RN!XY6e8x4xn8qX1$7cMI$SvmZlPnkKnBf8VSbD0E=r1)%Q48trVSFKM2YLdH^;OVsc4j5 zB^0V4K?y4#^ao>xzQ0@QC&wcW*YzSbs{OkmY}jro%;)<7{7Q^9huN&%(z9~MWQrw$ z;3A=%AeT6Js$C^4VF-S-`4!FYNg2o2@`kwg7K`5_O&Xhx4iU38I!)v9g~9`F zl#I_mXtowf3tz>n{5A(`^Q;HNmp0A%UVLebp097S(|e@k%$`RnufhW$K3wTv3n9%} zM5Vopo@3UZ)WFfDt|Efa#j7X??-VN3aHQkyG4W~Y;+0iA7rS9RQfnx;jF3M!0& z8j6Sx*okSxbraiBEp?0dkcikm=DdpaEu``y=pcjh4YF&w*@7kPl>&UexB((cl<_7T zxmW6;D`;S^@0B{o5*RYlgmFrIX~L)#Uz#vpyuqsXO36Oe=nAOkyTLl_lO7n~7WJ>K zKvR|21CY%p3yIzHkj>bGB%ANawM?u`eL+#HcrThfe|_692v+7I)MZ6 zZN(SK#APTt3t2%)as9|#>Y7~eYQTkV@1T^LW}%x4f)Ixa_C`gaMp|5BuN{(NbYCa3uMbI4Nn78g%7vdr1zN}64eP>g;vEuO;!A7e?-|66TyY3;@+Hv)9P7NwGe;IRkpAO17gp8th@%! zu=Dz}12t05DUTwlnDtJ(LaNm*9stylR_t+HRxk!6F5!cT@h505+WM7uT(xH8D5SyN zi2@%EdFO|jR9Ia<_S~ORTfg*TUO}jxm?~EMr}SX^5BkYsb(Ct`0N%R-!D8D9gunK% zeSb=i=`#1So`f6Zo~>L7AFwv(w5+tT^UZkgPBrIs_DpeJwQsd~K(%`5R~9 ztNHwB6~K+#$=nUQiUvQNb2>-E?3lj92VC`m1+x=B=Rl3ppfmSnfk&j)<8hCr3D=D& ziSLMXZaiHpE!{xM)V7g!4}(Bdxk%*r;^blLm7A9_F?uTQkeCL zhlv}&X&#>FN5cee;Xg&PiFzLiv~IMlit-VovyymDpiMmMieF6exbOJ_WubX*V?^Wq zYXMJ71Kv8$N+Wza;4MfQXoB@nANJ5usk2{eKFVe)ds|| zeYa@wB#8wNv#MI@f!_ZH3}xe9*?b5fidqq^9A7h?5^W9s^llb=OnOk~|1cYWOzQXS zk2^VC>dp<@dsAMR->#z}FU6)u#+Y>w*IMdbmAn%`{Qyp7)8M6mi)I#bp7i`W@9>3b zn&@;SgLBM?-mJ}Wn8~UiVttQGQMyGt*p%bgqqcz$tPKOyJQ0Xg=ZHYG`aA`& z=FZy5zCSLFXc_PjsRTec7h&4PTKpx2d70lY4y?e{v^A0Xy!`~Wz%#N>jrVp18%S>UInpdgQ&;YgaheUymP z6y&;yqsm8v;OP{vjsnFSz<69u^Q9XCb?m|ksb@^;4yxF~rBH!Xr5Bvwu_{}|=L$-< z2r#4db16I6u#-}!;PX9c2+tlS@F*9j;ZRRja8eo>^(K##3tIt*_*8}GLnrnO(-B2# z`oVT~6J(+W;9IM(Y1^sVc|)Z{bOj-=;PmZm@F^)-cQ~HePD$N;{`Chj>NUIvD?5b^ zw%~2l+x^WjRXgj(jr6Lv8>#4P6iec`YS8 z&B44v9mo;L?7Il?K3w8_{@aBZL)lt$1nTFf9pT+Pv&R}DIY=L;}#*VEKkJn7y)OY?d z{!xm@KBb#Fb2}TNO0!HQJ%}UH)==m@xJ54k5MDIGe~>3${xx>xF-KuPNU8uF+Y~8TDfKf3_sTIm)68bQ&H*yr`A3lUl7j+&u=x{!OcvU@*FmN1=6J~R40Xx+`@54hhha2U>G1*L1S=y zBD*DYIb%MbSYFyl4c0i2Ba8Zb3HUUb=QOa6?Y4qVN{VdJ`ywf6p%{>bb z&ThBalCx4!k2x2-aI|1k&W5@Wq*ABRr)?9;s%C02OYwpEJeD@<&D-n*5_{b631BVH zNo_k;ck+ji)d^u<^v=?`@k!-ys`r>?@QJ3Cgz0XT= z9wpdCc;>tm+Hv*+#Me2o#9#KL#@Dw33clEr?CbMVgl^y0Z0mU`#{Eln`MfkFD49km zyD=Jg+&TT~RJc;O_ws4YCS8y^2dN#&{m!uhP`YIaj2XXVA6$_7hJ8pe39ZqwQFClK3op+~c+p$zZ1F{@ zZ@&c{s06@`%XEwZ9Z-FT#wWY6c}#y1GapPfBF8+z440(X9zrn4O%3iLHwADtYQ;&YhbFQouS$J;><%tFI@k}=1niS$6z(*}JwAXlT7n=`|wf0x!j3Ja}Wxt{Q zAZqR*^rlMUHyyFNPs25u98F&Eq8K9Zp>6r^hf%O z0fKKGVE2Qp>6ba^C^r((ehju8JId_odTfOjoo4UXV>U%zXgFilfe&SvrWEodSZOO^ zZvn{16I|Fp)12jNX=tZifN5G*cp;XIFfjdR5w2n!OA&NsI~`=C`5#X>+m&#jNGQOQ z0LC#z3<`9C0*G`JM4qeS z#3mkK0S!0{d+8+W)*wBoRdh=v#xRYFz8%3?rgaj$PWF>Nb*tqtteyB&O3!JL9LMeA z<=~J0L%Q@o;1up2j|UV{b#M6Y1DY?sy^LQlADqt zdT@;|`an=w_B*mv!ulP>kDab)=Y+m4<<0oxz3j+Mshwd8$dC-)CNRwaqsE5G%>S0u z+1eJMrlUXVoV&hYD%(5Wnd!J&LPQc*9-$nJQQ*mGxE?Afb>fup!r(z5HKm8uhQ9(* z%h8aLvA&w8zAi+_r;I-%64QQ~ilq*qP593NFs3;4kR?H-2w zn>vf#tLt$Pwfna}&aT|T*fxvupd-rI_liZDEIFv0Oha+-=!@M(sQkhOx~`;F?Owu0 z-Ifwl|7=f*h((=X@e1UDO5!XoMU2de(X4(h;w{@A%^yl0frWL^};i zdzt-tTQUaT3IPFOGC+Tx25`qaQXk!#N|t#?>KJ&q9nlx7Z|eT{u;M%LvRwsmT>^?H zZb*O?T^MkTqbq@LU&u}C;^aKHgESGygUu5v@dcVL=+bH&Uq6Vi1o5>(d}(X^W#UUS z35j%L3$-QxCnC~YB%CF_v@MT4q+P=44#!mMItziTuU3uA+4 z7sRm{cd=u%=VxZWD@C-Q{4F15TBE{X7$8=uEVvmV+qQ7Bex~e;S-$%2W4CbxRxWDm zTzEu3R99Kgy146;gU`&wCxW%XHODD=a0u(f@GF1>BIcT{LswMz|P;6 z9ti9gM2S$Z{NXTru%<3I{t)UCMl_qLOPNrYYli=zF7J{0{&(u~yik`Dd>m_3m-FIF zQBrY@~&IP0`S)?8iI?h@+q>VH(1R?CIDEdJ`h zSC>cdD3!W9;~sShxXey_=}p1i#z0+)gu1xXn1b5|4hnVI>Y)$REx5!YAaS8Cy^oQ) z_;~_8g2UVEF4qz$oj|@CD%X@BYDrU~bQKpxdUA(Vp9ON8ppk#m6zfHH!BgKpx??Sr zBupsD@Kz*mu1};JO-gcD7D}R9`VILMw1$VaaR$0|n5)kR%IsZ99~bzXOopOa+0nk&gA7I_Ig=;}EmA~=2jfMa&4&JR$bFD!ALpKAdXLLFCJt)33 zVMmECt!s!7Us?~-R(xr)uG`9~kgP#dm$r{x((C)`o><1ZdFvw*E-vAc4CaF?_pZgg zJH!vQ{r7QcMKluf8Iy47gR8OT|dPfWq^i)W5&5FG?YY*NEycn)iBCv8k|h$*6>XICDlBZ*;?qk zSpW2=s;3cb7)f0*URg%~Z3IIkMzF_SBN#`9iT`Vw+L3Js<11j~W78WG0xOTF(N43r zf36|ISzt3K3%E9&F+2w3x;}9hyVv+AdSa(OKfx`h12}k=qhe5uCvy1>(i~rm(|KMk zadB_2`FyyH@R!*%U%j#4J1vN5O{I;;{3w(CnBj5mFv~(teMW9_2; z;J`W&>jylv1RE~8ggalk~4WmFJRovTxCITX`s((p2Kw&Rn z2!vJ0Q|&yBPu04kTC}#xK!&KF^gRRfU=7`%px=aXJEO5R5PrSlff z8(w2S!!X5ieD%@&26`j8OFZwAu>LNd$LvBpFaLvhj9k9PeZOhqx#`2Xi=$#t13dcQ zizoXxV*fs8nfplCg?M5%aPb_1KuJ8~|6B1q2^!7B(_RzL#M8~iL+@Srz0C&6kWKjK zkd5M!jfC|7Nj9HB09-Z)pSoW*7if5HJhxz+!ga5?Y&N0hA)BSB^?PJ9P$vo5c(hpT z$1eJMMzUgGy??(8UZCd^kBNl!ck#4P{WP5yjdhxMmeF@J)&C#F(~0_;`@}Qu zJ`$RE4nmS>J#XRXe-=*=X#9hCTAsXLJijVJJUh{!Hxo~Z^q3uRhfypI;yx!EsIws+w0c=yiAst2utccpF)+1Dr z`IHc?FsBESZbZ^Lvc0~GfV%!nqrDpUNzzOqe=W~NE>P&pzScS#^WR_S)Eov2b;WKk zR18OfMQtikuu~S)!VeRZw)`Z1fW&x+ICRpZU-=e-5XK3@u;=jo^3FGJijLt?kj~Go zc9RQwB1D#Vd*U@D#t>bGF~JI(cZInUDcvf}baoZiWq2$!cUk}(DX}2gq?oHy=5L|1 zsQfLxWq?9-#JGCQi&nbTDECqjC(vF2>HyF(4YYxScxR0b7Pam>Il>A*Y~)WF)P17H ze+0&`^LCehj8E|&!!G(EmtXbs0XjEFK2U+91I@aZfHjb!D=IK^ajJLzjWAUOqlpZT zI6^QK;n>V4Ho0Z$MQaOG$9A{u`1rD9pBa@ybB2Q0vqY>56pOzt7Q>Mf@1BA$Rv3k` z*k6NmK)i;`z({*AqLBwTZmV(4@ufs5hz z6oWq6!-gqXi9z2ZN)xHd%P9u!O(@t!e8Uz*79VI0YZ0uEY`bBFuPEUA$QENeZV=+< z6y9cogE5)Q`H4LftPf3FidY&mX~BJ0J@}(9R{q!37p_7l?1@#NTbGN#SPGEG`cwqC zx+n0%=|bJ}`|GG+DB7-IeNy+wG$NO;a3XV%MELD=0A8IhHDSX5ciLq_vq@k9AA1J( z)mjv$;J;BBGaU=B-*jef1aoBSY3{K$4v!8b;X#{psO3_V;?6#5qmQuqR+v}P%AjCd z&Q#lm`Ny#^mgnDebJI)mdm9i(i_wDLbB4y(C%SvPwZ=QLk-PJ5xaY*#%F7)g`N!n^ z^4mZo<-*%gb0W&sp!`}H7d__J-sDF_^LM-3(pJ_{vVhq)|e>hHCdCwFE6m2XGIW~F zTp*VWoncDik0 zGCuLR)gH_BOLd<7Oqq?}xXL0rwrsLRMeW_~YKSvVPxl-*}6%A9CS1b|G%a^ew|#w+#tt1|Ir zbT#@m9AT;Cf6HhWdfhlY`iuUBn?dTHZsuE{n77lWuaZ%QcV;AX4?&RA?2Ww^rv$rs757sxmxJR+_T zTiBcqj*XfZWp}h?Y)^&De@gk807Q6G2ErxNQ32f|PXH6$>e`H(WZNOf3&1n2a{{Aq zPqMxLLedoUdz2M6^z8i$2_Pqf#k9qR+w7ip@m)UDK7EGUn)!Kod8zVpt0SfS9J;0% zMc}pkcsPy;+R_%6*9O^cl%HVYrGW-P|j8VHu*<~|T?z(Wn&&GahL7W8u_u{jd+JA_1amO6D>NUBv{{yi_S$24z? z-Rq5G7)_O=0MJ;hWUR#8EfSbi1Nk>SA2&6C!SzZ1lCi_q)7P|7A z^@zbjD3lY`UNk47juoiSCjS!`ezm~=6I(T|7tlHWAT-J*{A5LMQhZk5KB_w0%gf7s z^KT%p_Ew%au~;O=%XbaV+GJZ`7WEt$G@tka1!5}VLF@+`DHiAI_M~35lMpOBD46IX)tSybLCkVI<1H849&jox!-0d6bmJlkSB{2_u352$|s60+2EiCE5Ty zlC3SK28Wl5`xcW~rs(V<-3bgMNU$CPZ zt>C^`t4q2h@QXY)oLVei+jP$=ZeAq?pCWS;o zwq3OCHsS3YpE44Xt?Z#f>W2$?2cMI9Z~L{HoEuE}H*q`5XL!}e;g2(n@n!Mb;$aLd zb3}k&^r@%=m<^~OJprhzE?xxDIy`e$)_gXnn2YgR!+SWiQFzW`TS$vtxu6zG&YRYL z(Ny;1vI8`gckyzT)mbZ-NEU@(>S|F^yycQ0*d8)g%O#`d<4|WtB?WZUi=y4m_i$k8 z2ch#`-fnU7M)VHq1)HaM@|UQ-WpS@W8{%~24CLiL?J_koLn9fX&7&#q}#!A302N&3PX$(t}J)x94A2vRk$bK>7YBb z(IUFn;rUndQZO|))Kq@KBgOqXUcm`NOSM|uVP-0s7H%p(2k^DJ$;k@d|INi9Jv1a) zv3i?3T)?Xecy?`USW!l$spJMBt0LB^Md{(5M}WQDo=i3 zW&qNKVI>3Ql2-UhL))^>crOXpDp4`y5}fwLLDrIT2VIV#&DXj7 z%lO|){&#h~xxig6phn=x!XLRb7`H|$Y2cXmNKjl!kTcOkPTD8Pn&`nM`gCkVtti2% z%8aEZE3UIg)6Vtou%9?W%f5gWgaV^Ym|0|0r$f07gu68ET8V zK&qRZ4AjOVgmiMDO~BIS!VeH~Y|^sQxoBCNRHqpaW#tZZ0_Mdifw#@Pov3Din=CK? z(t`H1S{u4+Q_9bFk(Yl=vooCLKVT`Z>jIor>G;OTelex|d>0od1#_q+F1ORPjT1l$ zJYeUrb^-D9?6~mj`2aG`G_I=zPq-2yZavD3~R=U&ec#{JYW-hE{ja zGLcU#(u&NsYqq1ww&S!4(^Jbdzn2f2dBI?0p5G8D7q&o_@a6*S0dK?QfTFBC{F9EN$C zMlWW^V0%!kygXxdqs%HPTTxA%m^^s*AbbA@k!dBw)Ig;YSs@d%`!#SgqYN@rX_lu+ z3i&%Q!G+cq<>y+9;ifucvHZp#V8PLYE;atA$`b`bvF~X0Mw85Y>*ycqhSx>2T7dPW z2oq|$;-n%!m*;FCAGkggMN7aY3ptJ!gyQmkbKI0ZfJ8;i!ygI z*4A>tIg(FFIU1tA2*XrvrNf^yd(QxL^D6Qq%Mh0Ol;>1WF_HVx8!47{9f93*n!E2u z@7>s!o2pL#=-qWhTPv?f+h+9BG-#hBARehUFSc!=;eLS1QT6sk^H7N6iQ?7R|+<=M@nX;)q~xSFCOG%OwI3K zJD3+2mSJ_l7ZX@rH1O3!V-LaAN-Q4K@>{W*F9yQn2k z*agA=2N6=8;n>*!PJ&h+HOnSsxaKldk82z)3X*8*OmloHMGf@yKQM#&!_2Tog+dW4 zsphD5YQdIEp}6*-axjuM(IoY&S4DGb3chv%(3sZRk<9THHrOR}Afi0g_x? z$2HliHWqIKrW@)b4*w?O-^=*d4o%L8f1~iP8@{8UEf3;f4*s13{v5z^@$Yl|>xn+& zN&G9uzqRH zWAU4Yf1~g(`l8d>9sfQBd?M6$JN}))zcR!P!|Z)A{%yxUmbczL$O_vsH}HIfDdDUl z-VhObp~#$vpBIY?>6#UUUMeb_MU|k8P0}npe2ZF{la9}Eu&k^AMYz*jl);ho8gsJp zLI4)+_?;VIwp}%qpKW2vKM`TJ-NB?5!IMz1gb8cu9AJ7M3I~LMwr(`oCG156j^0WapLd4| zh#M+$VqU>G@@k}7XZ;noyV;GG9DcY{mfna`Z`{B=sz4SGIM!L4!W1ocFP}YKj;Cizt#s?Vj;MmepS$+G#csI|lv2xsGp{L{&{^J;sJ#=VsAY9OBY z!o^$6)Ls8TXP@;L$jCA}{%@Ai_2{n2E;=y2{{8Oyc3swEh~x&)w)Yr7>){@jzt6qS z1J+M;k*nE?}6bgZp=TH zjw0CX!mNq+E3Nb}XV-GlJ#Qdmg^&kLXaxCjkexSbkqf^@eSk#Tb~*avT25~KANbCw#2<5YT{bE$nG2bk3|&1N zh`l&ugqv9G8P)1vOIg2oea8phfpP90%Cn7EWOzP}=S1akVe|H~SK{HOaX*2lmg3+; z4JPQ&aVjJBaFkV|Kfskoik*5wl$81(;%E_yS%#9mN5$Jpe>SD7^Kotq14^XAt>>ot z3is?`guMNVJf7HGdJH{E_f50AQjXj44BL4AIGl?C{^iP; ze^uw-8YsU#4}!_Rl_cx{^Ka1(qg>Dne-Y-Z7;*vu(HUiwO*XQ*B2UzS zmi2fQi72ned_aiEQy$Ie9{`BxTLXD^=J)VTwe{3{j^B}k=9E%leh(iojL@NZ{A?0G zW%Sb|T)FT8D1~F1P<~!cDx<~#&z$N}6pqT2xwS5u*aer?@%N&RC#)va@x&citm~!W zHxX?@;za=GbwOGk1i0!k;Hmdgl+4L^`y+cat(s#p7H7Yj-{3D7?m-dc=*?C+=40NY z#e5kD-BJJi4C7-ArUx`w?h+r1hxSVn4xjz$r0$zU))tX|6QvKUnm~Mv|4WXplryU3(HrG48?MN)<~&UO8xSbR zFE+_vBVJ<5Oy#G&OywtaSR=yDgc&`KWyuAb@W>mMu^t!=9BV18iMn}_ttfNlm}X`6 zJ-{=*x6H5beEy-#3q?{<=F0s%>EFuSUrUYJLS+keYpieU=;oQfBPiUP`Q2B^hXD%} zxy0gSa&9wm6L3QVdOG;|ne(t>q#B_YCu7UxlHD+>r`io?ecjwfO!a#!&3(7Yd5qQ+ zuqSr4gj8JszJ*?xPYT0|+=?ZprES$27}AgX+@zJIr5&D421FLA)xBY%P*_!Bs- z+wyOC3I3AEC}KCbbN>9Wsj=I6jJlEpOhptN9$xN1(6gnZ z{_6ie`>xi%XHU6*4w~2wJA}%C2%=WwHtG8`q&v-jNJBcB)Da7#$tQRO_;=Xjw^c_BYeY2O9CFsfSeo zk;bJW@-mNnbuT-gs1FO>fk?+Wfsr_~dGbM8^6$lz$Y^SwJV+$B7SN>W3;dDCZj;CE zq3&qxxpFmxJZc(za|Ss!Q_V(WAy8GH3Ic!Y$sO55!^(*a(eXjC*$l)@kPtJF zT~+_U!!n*;B=@BLByX;lcjLfX_z^5oLLY@ntr*VBBh9O7q5F$C-RPBXxN#Z6susi*k=t+Oa zV4cW$#H9V~MG-yR&v6Vvw$`No&`Zja=N)9V1NA#~Lv(C;lD?{SQ?Uw*&(qXy-ZnxA zVlNNUchHSG&psNY@8Q`IQ7piuH+VxFLnMdCd3JV?evZKS>6agg$JAn$Q}QpQUeZr;!U^J_F?q#hrt&D_9>c#`m{82czYXZ-ih%nk{z>=_ z2a&^w?|^UPb@qC)ep2}9-${ZKFTxnq(^jvJTdW?9sX{4uaI{5kJ!Oxn)U5;RXdns)_>e80a3ul+v!i>(Xtx< ztJ_)MA^M?hPH!jpye%fU!O!1Dl9#)C?c2^44bgYA=n*N8_YdGW&qK4r3VjxGayG5Mf4K)8B|6u+@^$!>lIDFn7+rIg@7nw3L z#B68gq53pk-%|G8Q2nI9y%nH2(d*Gas0sqY<_%$<7Ja&IZV4M>(ZA)dZsApP2`E#3 zXXh;XZoxxPTPRmq^RnID#^O?N%B1!0Y($FQ5VUn0s6JkXR67wO!Y#~fE-;e*z&9V9 zn~^|;)_BbmNy^o5GJn_V^;lt1qO++0#wz9n``i?qVGP{wYpB{GI&Q~>< z_2QnQGvWj5!C>tm%uNi{uS?vK-HUWJEjEJ-+{9#a&bW& z3t0;+l3|Hybi5pujtjwXTBVcPSIZC=fFVEFaGmNRq)+a1F*^o1Cil6OQ->VCr7I9> zUW(F?SZl4J2V#cC(sPeLE`+!WQM<=zHL)T9Z>J?)#xb{m-7h9y;@w0FbI3uj%(;#kdNaWe&cH#r|?6)Pzj2K&;9gi zwlhxqI$xrl}^6x(NVk=;GCUot^uXlg~&|iS4qkcp^p=3R% z(oQX9*M{qRc&nS28(Lyj0V5%R2dLS<55El<3Fi>!@WGgS; zC9mdO`g z(v9fT{V2n|bj&?nAO2vNz>~38;LTM#)6ouWBFQL`WEHL)LIN)&7?!SYZ=Lh67H-!o z%hia?ja1L-)A+`7yWTdOwC;z_9VxR#l69Wcitf7$g&)7ZrM|nI6zr(#bI=R!^Yy60 zaQeJ?+KV1CAMBv!n&V5LhrOwBZ&5!*3Y@gIYDcZ}pjV>ZjTuFKfC#f&L)l2hdi4s8V(+s-B^*NH8X4g*Z+USeF=ON#qxi4Hp|YCW5cnK0D%Mo zggb!*5?~=q64)gP_bEhfkQ*h-A;$)jAnUjaPq9ItiZ?0uV#Mo-|7!u=<0`|6f>n{b#s)wE(NR1N- zwlS&U_Po#f;5@>zOw{))tU+76_@5`~;LISh|x^>XD3n+0R%j{)wsq-uFSm zNwxmR1Df|0A|e?0`}1PyXf3H4*-+&R7T(|3qxu#)cjUk8b)Kj!NM#TAH`a`wkV@*c zVntVM(Qk7#mXnH8^mAIKCC?0B*o1BD4|ce?^j_v{q#7-KM8_NKyHhxuLOvxn@ra>_ z(8MW4^OImP5He8V)f6ul6m7EQ=iNNOaT$&T))>&MR=6UOd!1A{@*CPAI8s%PObu7t z5mv=4NotwTbk?9Y(bVM8#~-&AbdNGE-{GwbdT&kQG-Ugcd)KE6@CxzAU25B6g#(SXoemYm zBiugsB#EW#x(a+4k1^$w!5OeQWPU$1Zh{C$|J~j$&!SbbK$|--7ac3aw;a=e0ElT9 z8~Pp+8LRJ8dtPy$%;Xym1&A#JM&99gu}yMv6yGW0r2l$H=hyfCyBpx(Nu?r|b4PPh zmR-6JNdZ7qBPXf(KT-n&D<^#&p_#fnpbO`tltGKDVmQTnm4aQ4=h%CLjO`7j!_eH> zl|jac$VOa)n)06j+Hfs4$B~}AFnr;3&Yl-o>%qo)wO&M2IlwOps1D`~CrIs_SS@W1 zyy~fP^BUG{yk>kKdx+E7xscQOB!W2xyo$Bqh1;@0O=RZ8lt-0jBROCQcZa7V{H_rX zt24wH>a59CT~0FLAH(slPy1io3D|LVF3_%@g)RQq!He7ZyldnbkLFBMN^ffzN2$m> zwvA(a0Ks=-tlk^O{jQdG?JJ>nhM?(nBu&tmYk~&oDEwvH^fPIUqP(V-%-cIiJEzv) zRDa>GPvGpTq82{LUpVi>ofY*?1d2mx?WnZ+ytHr(Dgqr=06oKVbKN2U0z#&$#r%9r zqp^irjC(7m@mmC!k2dZ_nnMcD$0?~l&^m4?J0MdB7>JHUl$Xt`TW!asPJl<)rtzG# zI%=7d{AFs59lX(!hk--XrB_fMtvGyVPObPtDk2BVxBk?6qz3TeD)6maI6E#VaD+q4;T+H7aB8Y>W~p#?{#vo}+3PE+n-f(P;Z^~JnLMdc@yFj5L}&^q9~$Fq zAIIs8ArPb)9{~_{C#ZTvihmSnQ8Sz33-jhB1k8!`v%qbcspkC(zNL_}ai!wnInF%H z7*ntA+W{!e(FsKKds$ReXgDW+G#(wo$R4M z(~gO`RRgSXuASDRI}N;zQTFF*#r8vqTs^tQaAdu3`UGSZLMD!4rkPuhP?4*q4#0usG1h9qK#zd(ZKNM}KQ^Y>WHrDHRyAVzWdM&ycg%c_{jqtk+^3m4j zHr%2Jv`51QdTEK5UG&n3D?y+68+;&a4}LIC^ag9l8va?xnm=f?OUu;w(S>R;Qz-B6 z71N0#sF;5ALd7K0i@%u8_&}H$Kb49JE@T%TG&Tx4i8I7B8aC|Q#==J!>-YQ?0oaQB z6X;bgyhUe!5jl#VjSabgK$|J81R=dKse_R|iEQ`XVO(ravFCVueQc)%LgbAr(wZeB|*t6JdGI0%w6%9dAnhuWiW4ZA$S z__#1@4V&|jabmR>-l5Fq*YShQk!#*zKR#r9DtyYj6*3R;XCCw}TQL!tzkG*9Pcl9d z5%D(96%vhK0BNp%Mz(#Mt(jzG;cM|-hQUBT5cW13Hre=y(DZG#Z?Z8$2!5Mgm~5=m z;L2*Ax`$|U_Xu8X%IU{7MDy;!q$UooW{sv8hX@b9#THC4z9t-ci#42TOcY*xiw&J> z%oS?9$&ODoE)$-7lTDju%oB`nvY)0IdjxHNUB&R7h!B=O-8ft5{07@P9i>LU!H!Nh zJ|irBolTp83_-86pJpJ#fmgK*wUOarWJr09ZG9LS8o$PlK5TqQ*!C)W;Spm58~%vV zEIj=xoB4>bi7 z4^+)qrIy!!6+1o?guJneW#<^13iDU7#W^V6xQgMhrBCSc(sQ$nAL{$O6v8ggGMd>J zvw%~Bm)QAP#`VI$7um|$#xB(y|5Sl3z%T0K%@>$5+qg~`_)oTS4n@D9M!WG#(a$qw zj&Y^*!t?wy?RoaZT;nLg@B+Iu*En2wZ6(Wi)Yx4Z^E`XzQR8&s+DaBU&zLH_zmnPK z8JE>(!ZgNz&6(1SlD@>`j4=MSgTBJ7$-UI1AJS({e5z^RpwDo8s)?T?z8aEC9BymD zfSA~v#a1~jrk*SP5YBNaZ|2j@xxlCCa%@b@DpB4n2nxV%WgdngIlaUkSkfr{khK#s znF@NaJ&R!QTT=)81IQkWIt4~`sO5MBJe$)2=lRe{v**3RCD>3A{90jF;NH z|E<8H#UH>f#_a;(6>R-fX}3)Qj_Ool(Blq*lmt!h{TeU(By5oP?y)ZF!po+(5STf= zACovZI#ZPeIuaof)=u3;M@u<17%#z&MlcoNCCpJL@7F*_3puqWzG^yJBYWsoeL(44 zj71QG&o;ez*MZHdC8c8!il8Y2QS*b<_psh5zcd3MW%JN-BP(uWNs|Z1$vv=Du(v1= zu9xQSsmEDhlYO_f=%#@EyRkTz+!=0uN76*T6Ny4~NOrpW0b{zmTWEU0@pO}YhqdU2 z-kNvDm^EgXuO!`d0PFJCz=+;s60k0R!ilq+R^K_wdl;d}XSBK>MP3}Mvfn83X<3Wx zMW=*x*O%C9ag1l?do8>*)ctw7A2W4D1mao5`AV#=U#+fN*odJSHPU1lUXK@f!xnva z3Zj_~4{k+21X=UW)w4=YynCxy^S;xkOFyM8sblkP|Fh(Odul4*kIUZ<{61hif1fS) zqLS`9m?l?Ca~-UZfsWd0d_;x|VB;CE@yE0!)xpMecYmK1TP{scjX=XFeUz-mWv8Lj z;|;6_0px=01Rm70PP$p%M?ArJP9SVOp2zU`4RG8I$Nxc5IqzFj z{dW`|aJRAr1IMO6;|0@&zR zRL=X>RJAH8DnRoqDnR?s6_wMk2>)I1Wi9dlmJ$6wIz&>ve@)TfRAi+Rotn1)11A1A zimX(k^PUdok2DpOlM~PXNm0=acXE$7c`$}lv$2V-M=TDA^{$8EY9W3*)3DVhj~Iy| zRSLE-jxcc3^dKW0qQo#89z)zVW14$LXu&Rw!mh&Rqt82K^zC-Rd=RpU9E#w8y|&#D zCz;`SKwCqx;$9GJO`HwuT}Tv64`o{t)10P_q22*Y;ZFcAY<88B{hL%PoC<_`EfxA} zI0%4ifeY{h?KL_%Qjj=Lkt2>>?7*>zXFgDRw#Ln&D}R={)*!*jDd7@h`p(`ic_ z0K;Lz3%&I<&!@=~f}QEnU*Nu$gBKAVk)@9*PHWU#^DIz`pgLLlU~<3_7=wRRaZ*#t zJ$#WDLyX)-!D7!zxod0f}HM?KR{*tiiQ$d*X4_oH{Mi`y2 zEojYb6n1OhSDpPOWo*iQSDEtwsu!!HaiFY+0 z1(1UT^0{Ps{5{^+gltFho?`+xb7uwMO%rc-xYI{>)8tROLtc#j zMhY9 z8QvwOc`#%CT@?N~fsj9KJp4axh9AIC$_aGp;1q@Hng2h{(D~m|G~Zzb<36g8`k#tD z)&IH~I{!me3erBd>5gc1*Qoc~T|@n2|$PR!TbRv3zJ!ccq=J+akQRO-cV zg*6m9M>7%!P24!9umQ&vzQr*H1D;kmzAzAHA(kNiDLl{O`3O%Rgbl(o9M5BT!jX=S zI>g}ViRToab9gS|aaISQ)p*{+^C6yNcxIrGS$O8-c@<9*3hsg@4bLPzr8rFz0EEKu zq|gI=$;j=5k@962C%4`5`A%YQhYy2_26%cPz7L*}c$VU+g|H|*aW{Q~d?WF44$l=l z0mu}GXCt0MJp1tk0N7$YOYyA2vmXy`yYP*~GXu{mJWWt=9G(+c)Y#S&_k{6|PUtnn6ZfRCiy(v!^2~UO zUiS9)tY1nmPxbX&`3Jr9>g|bJ&eLRhW-y+nr)T|2<2O2Cz3h4F1>=i>LfX>Peol~Mu;;IT$eh@}mG{lMu)5dHg)iK*?Yte1ZFf#BE zAGB3P3XIlZWZ_3K(_G`A_4p1`vVR3w-QCN~BQq$e|HLMgL#TJ`QdmadZV@IDYxGfT z@=a60zmSRFZLjWwzuQ^@JSW3i!aXkHy+4L$ycfjCDU~}Q(p>>a?=YBWc=;HAg;Kh3 zZ1yOEeI{L=jA7ayB+sC;!>O2XUh1W9c_3Zxk73$w8m5uU)YOPfea-DwEC!}Umr&yR z{Mc$n9h*LIH@>Ul8HiQf02S?=y18fk27@mPl`3KhPRcrwCeUbIqS{WbS@Uk|oN@4! zPAe>*lSN7ISP%2bCSM7bS+RynmZohKu5nT(PFj6mfSz>sARq5axdlZX;c_#|Yv2~l zD65gJ@?;@C&E$lgsl|Qr3(JvZZ2D(|zlTjk|NZc(GMny$TAVhzm)d)Yb^f7rRHSx& z{lACWdx>@au2lTn)Lsd`FKX{477j{zTc}9wr?{f-f7Jvq{=!Og#U^kcbzAd4rS@K8 zo#rF;{&&>gORV#++ilW47ALgZdnNhay1kcL^F>^qSE*{j|No|X`^%~&{i}Kw(6rR> zd#q6ZIkf?IQ+qG5&c9Qc|0T6|6Pru>Pwvsl|6$$M#O;NZ>h@l0?z=HAt#aZuQKf-Bp6GZh7$AAF?i8FXF8%SKp(hv9w^^}2;#A#QN(|WL!pkVDK z6XqR0mN-S}{bLEcK5Y+~eIz{9`B>r`Yx3=!8h4K+%7zesMEnPQ6c94HvVqI_2NtgX z9>tXjcK-J%e(WBDPz94-`2_+0D~c-<4E>t{&-;IG9lv^yfv5t-WqW`)!A@;x{P#+A z8Q8NUUo%z$*C z6jvtLNyESYDaDluc48gbKl%9!%_aOj6jvtLiMikX>gxZrjw@4KnPBJdc2t_KZg`Ik z?LVsH$`n^7*!icu)89@pT>qB9+{CR-i5Mf;oanzxhvTh+y=iG*vhBdea}>6pORxv& z@R(sNY6fGH1qP;3h@XIGDxT$dC@d9^9nZsfB9N{D9`f0nh36MMxA5o)2A(hR9LDqQ z&ps!&WUWO3AK)QR<>Z$a_e}eq#ch-!PYYw_MdsM z3CXY(y#O21yCCKh#P7#*3Qrim-@>yVPa&QwcpgW(rFd4|9E5~;nSjhQ@Z{oIkEaI! z_Q5j}4;h}CqL4T|DR{`}WJJMXc%tz1!E+wZ6+8hzDh>}@wcXf5H^rlDH(n8hv%#KY zpBWbl!q}>w2TF_&3PPah`Di!2yl(K+*+VaBde5W#=;dsH=h&Bc(dXX@^>jL9%og-9 zw?jQId~M9AqMO3be`Ab+O)L0YqYI{_=e{*A3DLiFKGYNK#W4i^W8a4|yv2E@UNVLV z`flH8pKCAEr*K;PymZwVEa-Qf&^}xKYz#%-Z~S?$QEcil?Q_iy%Bw%3eO~<4_^xOy z_&yjng6(4`^kRf@+$H*0$3KMhU)WK-SifrH-zac8cB!&u*?~1p*hfu9m8J-Q$$6$H zCQyvkgM=)jxYK~&njzwPQMmDmXQx?wM)%Cb89{7xZLxZ%FYK4D<{>+Imo~x*U-=p$OX!JufT4Hi;e3=0yIwK7$WfN4a0e$ zkRTosW-uOOmI$%Vu)z=biF>)oy6BD`b~#5J&L+1cNWm%%fQy4wI}IC;f`($ldiud% zvEd!<&AJ2^G#D}us9fumzTaWSaas0$gTNYwnp1*s!RhJ=^!5?%F=AIyX=RyfsP zpdjxQ7D}eWE4Yg>{xQ6|7br^lG~8nc2Ov10*AOSyZ$67~IkD}c&;Xw~nAgxeWKRwE znX4RPQFX*t`mkw1&z0(Gv&R)(ZQWGntRuE;zh-Jsz|yjFptii?aCq2w5rH=MyfD1} zgI@D?h&YcIe@#0Axo|2wT}O;|R{sG`G0eVSQTL8XD0}x}!V;J5>fm#Ud}OpnW?Ya+ zD4K1u`Bx`Ly^y>m=n&-%q63id`+}zs`G0&o6bEtA3*ilVzo{BdWZ<|~3%EYH^5F{*@vI8V^@O$8{nokQF7iv^SkauAN{mquXVo#}LqTLm;{fk52eTZ|Nx z*6RC;xO52#iA!=~Ys4c&3;&9Te~R#hW#K>KfN2T-WvvIC$JLUM9B9#hxz!W|jR#k8 zL39>;9JMYn6%>QUaMKe-_@U7CYA6|xO;4<0d+UjHxL+{JrCj(#y`MD~vA}St&m0bb zU>o?no=^rdFQJw-45Kv6(S0FeEh0d;78h8C{fj&thvTAjR1%1dGwuKV#=q^19G_nu|Bg6AndMhfP&ri zcrL}riD_!H$#hL!jT<_^*BTrlaO6BH0<0mr6Ew`6vc>TfXXmv?%OonCM-n5E`vlyF zRpe(*4O?;HJ}7N_BU}-gR}yA-^{|aMol8d(<8&;bR$&9axNLYO&&=J-W>jP(EwB)$WoHx(#LM>NFEeGS@eQmN5MXvQN{n$n3*3~|<9Qt@ zB!YC0`>+06gA>2yL8^=#LM1}}UPXRLsB9TUS*Ic^{GwBX{s{%QLzBR^F1e%0{HcmiJg&<3mxarWPl}ogiC7|)0M2y7Tc9Yhv9*PG(}_s!r>rd zlM%}=IzkdV6v~|=lmr(gTepH0kPhO{IAFVAh1G|9CrJSv=2yk4{~O{5s_ZaIR^Gwo z+2pQa(Wk4CwQP*e*3YaO<-DfMMl|FQ-N!=FE^j5_gPeXN^Ln?;A zfCsK%2RDH!wLIik_5TX!GT@*FKg5HHRX4fFgZ)3!?dXvWIS8ZzqkQaSLoq@)K9>F3 zP^|0xbSy`uqzsK#U+v~X3n(AVCh3m+5CMcON>JbC z<^ppHIaKbJ&Z^Go<7Xxji_~lv8xeyJ@Bv<&<`wAi6$t)H>*|dvY^%_KH zefsxt9VBd;aoEN2h44N7Y@uE51vPN`GIv=cmDpX~ZA5Er$P8+#f+L2DxM;f)aqLEn zXmXO^_{^6}hyZj^iLK_51SRg}0Z@R@uf@tQ$jhq_{jGz@$;Potba6cL2qM+09O~Da zJiL&HL;Nf{7q6MekX6g`ItRETQ`RR=En%+4Vl!t)HBkoC66p|>&l^IqGN=sxVH$9` zim7X)hT=1a5|(me2Mj-{VkraFs+{(-{sQkGf#!@MpYKyg<3#PpSdT3s9tBQ zg=_=#fUPuv;00V9%&%k*106RPayl>~Lk?<$JGtlz-;7{4n~KpjAKO6{09f$5_`wL2 zD}S8JTE~i!&i6mlSWiNAk#o}GMi`3K>h(jUSMdtr%9g^xsu@TGB&nm66EmQjaGghr zIzY>$17lE*#mXF>mufNs7$U@nrm>TA{3|}ZXS-v?MuO*2b~#qeYWxs{%I02v1=Dkz zn_nE_Gyn5bl`R-A*-)%w0UOl}(~C(6w)uA0lTYNlYLnF)HjETqE>AUX|K7Bm~Cs2OtfcP}2QK&xIqj zSgBu@vgyOj)Le`Vp*E^K@c`IcoR`azn~M#b&B-Qa8#)%L{HN(%b#xU<#jYZIhhiAU z@|&Y^wWQ><3k3DU8+;d39K;I@oR3yXs8UU;BOdTK4e3>Ee|v;ut4S`w;iE7J(NEh$ zFh{wR6Nk~}<>|!W1-X!M<=XHdKIUJFfq(jnYpM1qhp`#n%^7W3yB1=TUNRD+s%TcR zn$IdU;Omi5ZC&xuujRZpPMNVqrg87>?5!4JO3e@;!#gnmratPra%>p8 z)k19P9I-tpK#3YlW0mwm<@I5l5v!rX&<$(M_!n`J5ARpdJXcP9dnWP3@&v;D!is!E zxSTkSWQlqp=z1=TD|r;UGIKwQk`raMf)S0egp(^OJ0PX!`*H>XN8|+JZ8&T$8bdh% znu=AQMzEn+dAOB_qa=)T60f6;U_6Pdhj?sy2@z_(S_qG*?GSxrD$fbPUn58Z5C8z8 z%DJMstW_(qp7UMA(p_yfTFu)HX@PpaPHI(790Cwp#(zQ9)O_=(X}Zk=%mf}Slq2>G zi6Wmi_{_z8s7+=eOGP5>u?NFBM`z-eaF~2a&ly)Am zgU#$DkgGkkLT(s-FsH(_{_HkZy|ox?%m=cvYY8q<5+hqbr=q+LoYru9f2d!0F8J9` z!#pr#(l+*FYcWBnF_dj@Ep{3}4IsdjUqHmWKDXo6WY^D1@enQ-`|a`;wSgSnN(}@R zZrO%6&<+lT@Zxx-pG5jB*G;tvZJ5pawh?PupGL}ZA*3Ej8HRLsdrTy+eYM`dH@vhd zd$Wxg724!zFow&QxnG&)N7y#rB$fEMdobQweo&9M{!$(lEVQ*n5?0gG@eT6Q=cD$2cP;mN{ zPYAEXA;1cLA+L_$9+>{6298k!zfl7{2;}2*r7i+o2J_39QC!Kr19!lipw)4YQ;v|m zLpF>9aPLamcgo&w3nsk$Af=8+X!ec@&Lqht+2NHkaWh_LlMC8oZfmwlUdo5rOf?(M37njl>o5Ek1Gimvcg~VJ}|kFV`|~ zA6|71*aCM_m}0&8s}IV|ZF&AD&Hj|?8rwpEd3&W<66nx8(ZMU(r z?J)Sh@DWGi6?DDun07!(0<(bIO*Qx(3O=ATQUmWGP_2N`*~HS}FQNiEIPZ|DucObf z0Yj8r%SIZgz-tQ#D4mXfz8$W}cM%2_uE7sH7n_O=&*6>G`hxIQ=XhTkZd2G zYs$vFJD8vC%(Hy+Pgay5CJAE_*sTPyRo2eU9NPsLT5)V^0uNyOl^VR5f)6OZ;XLpd z0#$6gAi!lv`X{ihv5;ds&1YD)g*g(%IKk77y_F~?1V%r0$H%@rU!@lNB~fhDI4yxD zH}k@jPU=gP(pG(mRhrQYgd;kES=x)uTDc6)YZ#%D@p~1B1SQ)> z;#b+zmMv>9)(BqWgdNM(4jT`*maz5h#fDk+HgUQRVm*V?HE9?pp@ka!4Fw-i2C9K^ z2vq5M_5q^nspmo0#QB`A5TD`v$E-mIu~j3_$Ar}b)YX25NRACzyUVb-9Is;Y&O$#n zr-})i`a{QorCmH6qhGM%!ZCUhWg$3A4ZcIc2b9@rU_S(^7;PL%7_DCkjO2M7qX?ft z0w#n;#C&E*5)%x0D6oKaNfH~17dDcbRmQQ0C?bkSypkj~7W35zAKRNGwlM5iKsoLt ziH*c&YQ*cTS+dxy$s~#>%&B3QyV&LKBJN@gcby~Z*->noeS01+wkNJ;gl}BY z*Cz=Mj3E+RMKBnA$wWLCo|$d>sV_;&5PE?W^}(;VCa_IZi&)PhJBcj~ zGpPvHtCQGBI{E=Gd%z{uv7;Cl$RpmPh`DOS&llOTWU-CmgGV_Xorw-L=2@298GP-{ zBOd82HWB~zFAl2}Th$pkF3qJJhY(S<4@Hp6#9b`VBDU>a#p&04dU#$H;RxI=FAO6k zWK??2^2fp1kIBDotpTo5)o>8rNqWIu6pj;`aO zG9yuT>5DAxN%6EWIi1yTi>rmAG`7W!Qo_>Mw5P-qLR_k+*VCd^6fSjS%b57K(5)lu zyh6+s3X|E^6(~L+*|Tt^xGzv>lfZhvBrXuvw_|%>LeBkdJ@36Nnsmapc+a*~;ud%+ zZ^0J6CB7pJXwI6i7GD+CH)DHO1H_eB&r@%U;Z=mM8?x2w#7Bh(8nT%6A`^sbuuyjztWEEZitR8{t135u8@c|v!Io-y?3B zH^lS9IWS7^yb!Wc5oa3&!}p%Km&ACzaNx9O%@y%uonSuYnfRmFO(%SL!n5`#v7;a? z|Av+RBEBsAe4IUTO)P?6W0rMY{6VlD^H^?(?W(X*N5mSQygOn&-N06!KvGVv>~fD- zXeJStX$9upG|ujd#=hw?T-%dSBvlZK+ZY{^BH+%~6X*S2lB4WrpST~zF5fA&H9VVV z3@BLso77k&|H=f7{n|#V&ulu$<4~zp;4N(pWKZz#Fi?nyXxdyH5aU$KyXu!?X!E zEgZm%Nf`|XuzVhN!3)>qw1j{{)8xb&01oS9O^)ofh2bcMEN(#XmNEs-XYIaXEWkN1 zJBPQe@gk@8R1;%Yl*8SJLZYpLrGvK`)5G@F`%Rj$`rhtb6C72r6pmXqBNG~TgeulH^y>n#*9f2od5*|6Rn%Y*l*5HhywNan>iF0gdXr?;lM=3<(2* zSbs@skvWU9%a-$`w&cWzILHSykdK#xYz2`0Rgko`ia-w5K-x5rpY&(DC8@F1phCQ+ zLNr2o_{^nLU0`)B4I)|%DHYgPX5tKx=*Qv_Cp5M5Bid& zb;$M~;k!GzfZr`$U}EQjq?oXtyohg3t4K)mS)E|1uGpXhq4xf1W(k(U#RfdhvePV^ zzMSnT?%~sHLHSqT)9l4ysadzZJYSRsEo+`8xm(B%?lXt+@E7TW^D+S6yaT#^ie9iz z^TR17hDZ%-J<4_Z@;<~kza9R)Q!FJ!it7C=65}#4g2IiHm!StBA_GYu%89kmFn#8S zC=Duf`J?C$rh$`05QM%=a(ieAavo*tLZp}$y^xR^SwSIE5okv%41l~KRo>7UpUM&} zeGtUPkFq-DV?BDW#divie{Z~*j~ zm!D*#LZyc0hbgmc=?N97bU_jjG3`mV0#QQSlkAgFDWahdsuhBP9?NGALUI_jRT0y| zuAgAnLoqa11*DXJ&hZP9aulzs>KL?wAV8j9JV9d)EVd=)sX(E$5QOheNJ5(9rc4$md|YF>9GjJE6Hd6?OVcX%N3sTiu!Sie|)EYDE#AV^@GExYTm`a43mzt zgfJ<(QCmmV065fk)TElrn~mFRmf|07ubGb$Da@C{=7dT0Cyu9lwCpTfGDy|QiNl{J z<)3Ilgf@tpfUN5B@y!Z&P8e^06|@u3ND~D?<|zi zl}gY+zl%g#-mg$m>Z(bX-+}Dmu`1++$dpy!1Wcw<(48~UQjAd);0LG_M5ADDJz#o; z4@w$GtBGD!6V)w8qE%Cl1m|*JUJS;CXag!;Jh-F3bO@=AmwwjKq&{kT517VN9`l(` zA0q)ORzlUpT=2g-#-eLTHHCL_Sce)?>WD|EbhJBY1z{G-5r#FBh26nv;vy_@r{g5UY`Jh#-!Vu<}qik|bsbSV& z%tp8iK0Xdqn@nOu6o78VF#2aQ)eT%?b7KP_4Ts_ZmR2`><~HivYM;3=y^&t1ca$Bg zDMdSrphB<|o9%0S{zx#a^tpr*r%HB40sV-@A?p2cKJ!i_$Sw^KfAvv3zsdt@b}83E ziOW{x}Jdx}}%~9H# zg0j+v0t$~RPUURk(>b7NKf>0UrPf095%#TFis;y#bSt)k@Ait7|ParW&O$H_IGxtVHt~DBG;SKE)b2?NDt*aH#UV}CiDvxvScQgi+<^<)= z3=ZX~CpeydY>X-(n=88zMO;OF@GjuW*D8{c8j{q#oJAP+qnh&RI(tAR_wmTHCyzM4 zP0Mf*r9iH+N>4pySDM6aKmwb4!BQHzeS&EJByJTZaZ4e8Ze-=SW8;S93PuOY02S5z zJoZ>^sfF|KLFyL6XqaQzk&abK$Ttce0=Q73+Sh1&(Q>-~yDh%4{Yssu0dQ5dCU0@w z&Fd&qMHP@1KSpF@;>W`c2+wj|RD05cPlv=4c3c;N#kYX)rmr-XYjZ}W&39yhHLs_> zLr$FgG|LW``Z_yIN2ipAf2fbP$Wlrkf0g&ARK8_L^Wdwbtj5M9uq-K4-b8zWX`t5< z4OT?X_~WY4#4c~6g-M#fV>P6Dmb^{fBkXg0?`;u(+}l*0E^JvuRoo0!_Q@f&8cU~f zEyNq{dLDL?OhUA#Rw_?pgCeAOrvu?-(;d91u%=V5LQT5625KfiLGoy0a!bHd1`}vG zaa}H@Ly`574qYjsUlZXSkRKA|t&Y=02*drCa$*ZV%pXy))D#*3Ml!twap2UQj`YLZ zhcxjRQ=UT&DBEw}fpjq)5wV{uBjj#*#R*JS2MsXjG>loNj(NUd%EstFZ%1ly|7fQ@^v2J=s8N zq|0OL8%Qx3TPC2X=qA`Qn|j9pXycWj=eVJS`U)yVOl z-VLQ}o%#DQM9%kid3F-mlLE|@17lcGBUJmy-t0~z>5*E|NMhGzr+6o-O_I_aNoR{= zq*S3~H2XY8iU4!IkC6rl4~}M?8cPj?4x`!d#?m`MH9oHj`zKw&`U$JnL~0%sP!{kw z1vFsenqWxrT_&5?M4A%!&PZxlSxYi?xD{`&z1fMJKGr;Ecz`253!NvmrHz=z^xsW` zUclVQYB!Y{ns$tX8gZQ@4g8}rcqFqmmD&ntGT8j4Qhy+}zp0e$BsaW$GUYbbZNvuJ zzB8HM9%_{r1h{S#DSE4EU3OsJsRpKXN9@TDM$K%a6n;nxNw9jIP#idQLyD>cS~+xY zm=ZWf4+$TSO~?;M5eRQ!mdwAx71vm5SLewlcT9;KLG=651e`$mC>lcgT&xr=EVr`F zu~LpOVmoWoOsXr4evoB0lR66@zRsR#CJlBDdtI;f_qy@F!cC1ZyS81%HP`OMuRf@% z#(?^QNwizfu&@XU1-2R53RRoS81_RQfzXv3z;`HV!|oblL5YmZMt)ZjR!eiIg6&x4 z50k6q{VL>C3!+IzpiQ=lw3EP4rIfsx za8=k`>LOX8;iGUwBAFRmNU>p&2XP^$+&dQQi?JB#wq{*hNcMU(#tX}#R;mpBTtF)~ z<#(g8zT5EVA@+I;X}+$6MYojd2`?A2t}Ueu=XNX_dwU>$VqIK`nQFb3A5%gw990QM ze$zWXZ!>!9x%#%x+rU-gze_xL_FG#+v1P;b+Rm9TQUccmTxALBYS~?BF+=zoLWMoD zJJRLpfmZp!z->RlnX9I#fBsJq(5cYS}e&G<`{EBN)V*0 z@VyD&f-<=*el@-W75NQHFE2PmS(YOR)g3YjHzA=KusjGelWcY(`1%2F2!dj9F+wo9os!0r!+=l{jizd4*a()LqjHrf1U+J7TR>0|@z^~1Q) zp@Ei$-&m})K?>B{lB%dTEQP4stg3?ye@B?dN@7*Y)*A=xY~C8Ar6tyS+gM!8_X^_=*X1v@&A zl;NcM8kOZ*7;BXmCO}b|l#jLr;KE;AT#rMDImu8S&clVE0$M2=Ed-Vux8=xaA}et= z!o8vRE>XXy;9J$&vvHaO*NY49gLEgGKv)$dO*f#!JXarjro)0N1+r<@}bSZJaYB`i!}afwoI;Zg!y zlqgNCmGlY6--}blguga}e6GFJM3~o?#kQBmCG^G-Zfb$9^aL;J-{Q>Xg+KT))!SJR z-n67+nfE;^~Dtqel$Yc&N>uR5rx3%}G)MnjEzvyNsiaIMC!82WlN( z(9F-2|22=89~0}_k8wZ7!5;?%BB{xK!sec*Q_|yjqc!Ez$yq)z!s3T}WE@Qgmoz|F zrfcf@_+2=|v%j(@7rP4wP}A3Ex)VfuWZr@>sFt%xZY>UsL5TrMB)FQHe9M%7h$VNF zT8$o!NYvqo2RLb?ATUstpe__Azp?uTryUB~qcbf{z&|@~zrx%e*ryRzGO&-o#*bJK z5tyO)OiR=le>!Z@3Sha(QbZ3^KE3lis3@$u>@VGmzJdzF##}m`lU`$$^4 z4*$TjO`C}^@duD-)A-hGMMtS&gGbtE+@aEXxf7BwY};?kn;RD3XjEE7$BuTC>eW$* z!>-TDDEELOPWeS<>Lhh?&ZA;W`PABNxjK~B=}VW8X3Pzu#Ptd9%63A%`bs~cUH|gb z_1=dtKwpnpt{>&nf1nib?|n7@gFOG0GDa1=4j_pBhZ@}#(WT@s(eC<1Q2xcHc9LQn z4pid=#1Rv)&`iL+b!nixptTrK+MjtkNlkSH>|`e?vU;})=Am=`R8*BE-!Jv_U|zM;HgF297deHcwEdKJIg!ApQLYL#N#Zys-5;CI zp6)D#59v;cU{Ro|qalwaeh3G6!byuQfZha@hULFrV6R)G*m{#OvsHpf6Y)_r7gN>fRQd)}EK-Bmd}8`G-M#5w>G$hCPZ9%9FRG2ZQ10m(tM%dT~^vvY9|yfWA#(e?L=H) zQC6u#r;+_RoUZR{$-|V&a57O2hjaZrN$rA7%ED$4N7>+chj~&k1zVKHj?nM-O9^nj zsz-nWP{5)LYhaa<5(@h90>-Y_;3NW0MMNJ40=$5FY5_--*J7D$m6}I%$BpHgZfBe= z&lwhwGuT?(J&pr@n(ehpwVlw!B+^+n?AW!Mp2hOfamR4)NYMUmUtZ)V>--(Sljndt zqAgylwb-c1(GDO67^u9dT6BGgSzgxwM>XX*a3R5rLUIyJWX`E#+L(TR2|Tu6;lfo{ z-8PK`Gy@^%r@UviBj)U7t5mDbAK}05Jllu(KOx|^KAeDW-t%L)=KJ3v;5(4165!UN z%L%vzlKz5#I)6+6>yj!({2~5(&asD6E8{PeSHLJ#KwTC8U)TB(+gORm(^?_MM-E?&Ty@1EFdae5^&+_cql?XogCmDrj7Rgdk2rQK6`kQKwvi z@2Eh=aqros&!tPTf7k*pvgq!WTR>oW1&jdp9eZ)?Bi8uQD?Q`KKBXM{DA1^4zgvs0 z?~T^5PePRt_6;gvZ;;c^ma%`Bwf5cYKkYqBmK)-KbLSsP|7|b|!#Ye09A`fwWrbx^ zt8Y*k5b-zX3dE2!^~~bLG<(;N?akAEVk$^e97tA)IY!acAj`$chC+#&O5y}+OeGcQ zxtkm=O)1Qmh8=m|c9(+xkffk;l1_aj{w_&kdHoPcLo+!^N$>b^7JrYVt{_|`sq_>` z>QRZL!Kku(NWy^dlFTlTq4YTM1(lcVzBYOP~w zgQ6<-IFo@Y?{R7&f($UYN%C3R%NYjP)YYc2mu*rD;UA~i7d9!r+etfzxAiS8+tVj1 z!}}cNad@*3@%!*j+NBn{A6f4Vpx0FeSKklr^0$@2weW-c8W9{E3?r4%=wSMA<_FTa59SH*tP#da1An~Ho|)+Sf30jzU!?X9Nw`vv~2HwQyIPUD38PY2O{o8 zk40r*jW1LKHcSQ9(GM)>E?_idCQK2jM-3qO#r5y63o_Xtog$YVbh+{>vPr-iR* zMfbi7oQ&c)PVN5?T!TKS^L0mA?>72)7S%^; zC74ub&fzMwPJU>?cR{oHq5bsr??R(Nc>g{yH_yhh#VwoMRe2+UTZ^Kgv9D<0Q zU_k?<7|Ui9Fc2l=48V&WNI2d~bIlC5x_jx0N*ko-~lqT1{`A-r}$RrMG z4!35j3(JQOFg8$XCW($2PaW z&^tl!Y-3Ww*~B4IbCc-68WW-HuwptK#$FvFB?!Y>vm?lH7XiAVQuDAX08)v7PD7=Z z6$qFyRGJ(#s1+{>H^+-?bGFo4|1s2e?FXb@4~iAg3bT!=Z_^#j9CMYO~A_Lm)3?OM^Oy zj&QkqaHk%@4l--R%A^JbSG;z3x9zheT-l{nc0)+rmSFAk`Yty6L8*;7FsBx^L=xW+ zC3!gHvpChpK7LSYL2``dG|x%2Yyx=(pg5x&U0*z7-7?jh|-u6;`lzsJk7wuEioRyEsCs zBXpOUI8y3f11mqYsl=3jguh_@37b?A;q3Phn5O!)A^QMOr)?kZ#K8z7&AD;V~_EgBsjk3!bb6)9G@gZmtCn(1MpEIKGhYU9^5e1bA(z&q2?%MOp5| z50;_ls*ixh>i25;rsa}Z>i4Vo1_NS?(Z}%I>DYq8m%27kk0={XxXKoPO$DpjtWi?Z z;DyMfq_$RR>#fp8VMN=L6N$DQ3(B5_Afjuo8WfM9Nm|f&HK;LyMrlF)C$hz(r6$9k z1ach^rfhFjsQ?P20)om5_+_bDz>SA^nN+}fE$DkShzfX43p(%+70{#mMtmzdGx&OY zn!KSNSZ2yUtTJ~U;;9lhlA5(}IRrNc;%LM;94-MgC#LSb9trf}q;6|84x${e~quTU)I`$gQATTi178y4gAfE^A~fgS;PfiM9CR}atw z78W8ANO<;B8a#Z8jWTm_4796KvkF$lP{m!aQ<(3WM*|O2?ig6)SSd38q=Cnp3Yz@} zBX&#t!=CwA0tk1J2bBFpQ&~R8``&FVbF37eRXt^+4x4Fn+UMQW=hP+ewa|sybtPCf zf%hNFlfb34JHTwl<3qT&4nmt!=r17Aw)r}RV~IP{Z57%3W2M@{XL`1KtYjCq>zR3+ z)U5h=nA&{B@&@96@*PwDI6dn#PBQD42SSmKliJ&V1mkRZ+eKUam$u|0)01cLZOuEa z%hK%y^4zAa*f5OEOuk|&xB+PXnxa}$?vSvPpN4{W*oAS@`@*jRdvUxpykSiYI#I#I z0|)fyNi5Ok;9a?mDb;2afkUx%CrFXb67Xu#mYRqfKQ$-HRIrzShvR$fsGL!z0<4?+ z^0tuoG+j=}^>lK7>qC1&s9X?(cblGWXZt_!6KYi?&2*xaDM`xx!BmXRY107mK}}+|<+x zXeYU8$uEFZ#=*-Ni*gR0q)<(EJ0A6ga^c;AK;EKQ`a@ET)4hSp_^1}fmH?n&*h4FO zGxD|&!6CD=LCkF;rW=@n_lbCi#O~Y1C01*h5L}Zh2?l(4-VI3PQ>cNw8&D;62qdpmu4o$q!P0ABC2KQD z3U}5eOuiz{dJ4J$hOZ>=MwsdGCA`8z_^xyRMNt|?SW3h0ROKxcL^f{2`6tS12l!DX zl@{P1s9Zrs&E@Z$N-Zb$papoFsL&c=IfjEf3LgXB>XnQ5swS@?_UR<-4{f_SEElch z(*OZGShhdX3py~TIqv&*L~M>)guE8DztHNbH1;M(VHBZo0Ag+OZ0HB-+}&@O)?Cr& z-3Xj%#r(=0^2tj<0dnvnt1CDrcgscK3MO+6XEUX%=b>D@B}~9Fvmf?XH_+ltbx1W^ zPJ;T<6)0dE@`j)U`t5*UdT!#K9{=~B{YE1_8GQClhPqjl!j#EUqtVe=L+36+sJHLm z2QF-Ew22E^Pdz~&qO`eVq_Gg~x}e{1`jt}y(I_%a-Drg@Cx!Yv@i!#XCP(lhM7sd6 zHBQkTU{|MOKh}r)S?COy2*wK4>pJD>;r8n^7Rb%12MTw&NW%G4w0ziK`Z0+cX0cA} zT>3$&Q`TRT&gW;C&<$t0=S89CLJcc(q0lI%K1s2AW(?spP79-LGYG>%-*qMah|kFr zUL$(kGx_e*$RldzGiq2IC2Xc;-it7kCp8L=0~*@%ehYh~4RY~)J4P)9cU6)1TXi0j zKzT1gYhYa0pmZ5BkEhPGCIxR)hn~)xOHif3s1CTw>3YX84q#&+F^b>du#@!y*Jxy0R`Yr zQSAXYJzhAQ#@<_7Et1JorEX)75Hh#3HYVQ|9$UoPCm_AfXEz!ub>ZwhebAQ|U2fJ74YBe+Fi=y2A?>rsAcv2Xvu*5p+E=JdfVUAov;=)9^joy8CiperTWemKxL1=$yb*iPUPoDt4C% zGq@60jVue0>;!Db?ay%69BcCARQt`eaeg&lx1DKk-wqhx&6V@^Z{3#6f7@qwJ0LOJ zf5Wy0>}qp-01mB2{tvDp$~SwSs!zQ$fy(6@(9}py{X}r&>V@ zub>45ysLj~gTI0lsvy7w4|<@2KI0Ws1oDZ~{lQXa?~0Z23spw6zb4Xcn+6S3|Ln=1 z&6NBqw=MYJjJK(~RBjN;wW}-ID*xjPz1irMykakR%v7onJG8MKmm88Tf!HlMuc`cQ zYj^jC*YV4R@RExaYHWngyICbC?*CEtAMjBY&mTB`DM#`ggeO2QgpvXz^b*ih0-SJ= zz(o>-52B!kB1N##5Ei&b05;1*DFU z4wLwu;E1}QkiTQN3LKwSKK*H@r(QHtr%xq<8iF8+@jnq}%H$wI2Y=uG1U)=1OF}V) zWK9IDsZ?fR8+;J`UPv;PK-NF>`yu~&;b*l98v}*sBAg*xAY~We^#V37WmTE(^32P} z@O&P;9GmyN4Cngl40hjE!QsjA$N2XT96wI(^i9VLWQ07~c1R}LPtb2Va-J~)QNI`g z>z^;LJC_Ud_qu!4qBlVtA73WSP#$po;yu7b{o>tKo48*JPlLD}&cYr4NnA?KOGMls z@We6MHipBK?M;XtDt|OZWDx22vTk`%k`+JctV~b2fSAAgs`J9t3GLPHCi7GS;sW50 z+s??ZKWx8Hz@bh)GC@6V&3SQMiV{!>b<^_fqoyFdV-uE00ml&C8Y1q>4|FqJ+PHrRgvaiI9 zr>%+%mSnl8r6#0tTNT zP-Ca3<^k&3dTHYE*-DEsPx~iixSiGg)pc3({1f`S>pew57YAp-?+KRjbzq~G_Yw9{ zvo!eH#NA1%x0bymGvp-X3-j}GxSoWo85b+SyH;cENGppH$SE?3-)1YfMZHGC+3ph8 z$0It;QCeqp?2(CS2bOuWh-9EvpYH~!dr(KG=7~e(AWywX2om>TT)1$MCuUNXC#R&V z-`DM?iit&Y6l+qiSxzE&YaM6W)!h8cJ4}7xt1bl#;^Dxc7B&#uQLd}kQx5k(j*{PS zdcUr2hPrurXuA68Uk-KiP{e$Cw6CXmw}P$o7Djr=UuxzLrB`t#zVw1I-(`lt-juJ(XSdTKDclX(dDZ9N zU|lFL(HCBcbZjDP2Z$O2s99dIyg*rzbN7O}CP@43{c(0w`g>T0dyk{^EFKoTmYC7v zq9f#Dy8FA*a|xx@iP#9<|3{0<*q&Pl&+Zwa;a$^1aNzV^;kl5@KRQa`mZ`-hM@Ti$ z;4>fPseLbrW%HF@At%L&`M7oSoJcKH24tk1i!gb0v=I1Ep*O}C^UGb1D=O5MH76%H z)dR#oKSw~RoY#NDFBy}QUAcl5Lj$|1>xL$) z>q^y6x8N()(`zs2hyCs4%edV|9_{WxwqT~|E5uvHu!@MACUzIYcC(xN0?n)oXJg*h zS{rz8;cU#>Xih%25wiY0m6cZ2+h~)q<-SP7yTa%ekbB^8XX%yR?sAd1OKIFhT{oZ` z?T_}tvKBL>)CoQBNzTiFZ&fkv8Krfn5kTXE9~=7`1Zve_GU4^u6Sx$fFXeb26x)%- z`Tv_Pi=<2azv+_Lwk{Hb7by3IRy-+IE>K$a{%Z>4U@5h)$G#cinl+a9zU91Tori@M zt?>xbHv@C@IBX?adD#~;Rah3{lq-Cy=(A9XzoRA9sy zc(X?zP)Q?Z|ItqB^KXck7s76HTfW$^P;rEwpCYa=RNBYuv@uv(mBGGe^}-wB@{XNdcr?mT6j zwoPv)%aZr8MCWIfcj^~Ut|cQQ#i?hNq|_8`z`b%3k4;#f#3w$%;*h))B`zUpC?#pY zo_CnDw5m6Yg1AppmekL#jc$mzrr}QAt>~^i#^|cw_)m033z9GgOmOSuc*mUK#bUoyi@;GYJIx`XFfv*W8ROmFtsQPeBj3duqmWx_75|`ga|E- zW-9JV8dB?YV!U+T-S(ydHB-xj=D`K}yI4i^$kv{~eZ$}K&TnpuBK1wj4Hfa?1ZXrNibjnKmQ!QGB4~C+1x4yWhiCKld!A?cV ztx0#zp-e3&(ueauV2pIQbD}fLGI;w6gIZe=>0$yl&x|lzn}M2K%6*7zO?L1bXm~DTMkH~+ zDUsilD!!>FRXnf0Z=G?Ohf-FtDgxXJoOpBFP=)T`i=OW9gY`MRHl*8#q(4IlpJuTnD=J z%SP%7nc7+Xwr8QgQ*J%IMU`0kBDQy{(!|;qm8ACVsh6v3RrHaB!Yiq;&-d6;kXg4Q zCwx(pJQnZFqa*bEiaO0)?!Q?U3s~l`H--zQw9TreQU&_TBQ)-8TTgRN-t>AO6lS`cCuh6Si=f>mGrr$)6J3N*YP4l5f9qZ4JY$k)3KN1Cc6{&;-fRwbQc_tMe4IrKkqhxl0wYHwchA#_xL!HhPQiDEw_PX zy+Jr_Q1z(c*ekGjf=omQxOLt~{>gkcu$=nDTu4B@Ol@wYuC=1}ha;cMd~9=?e4QM` zK9n^p29wz8!!()wL%)PyZZeVhRCrS;Q8fJ8k+R{Z@!shr3|E2n50{14R+8BP?&S6} zI8&cgMt~c+o#<2{Efszy(ndw*ox70}#E5{l^WJ|rB9bTFn2Lzyg<*|dJ~g0{(0|*4 zQn-IoKpge|-Z1${a>7G<4&6fTsVkg3J5o2v0JO3{x6H_&rOk}i&mW>HvrmaXd>^yb zE(C)AqrR=5$LI?2sQ(B$^(tDF#e&ZLFMO%2uI#}ea;7SQrmC{MSF98W!ISOv~r8{06U!NEnh;^VXG^I>-qYN9U}*98oV z2DcWSmncnLmJl%4b(`$;|3LU5gHUXqafqJC(YYgK)I5qBCZisgQIjdEuZ((HMvbAU zE)t*g^+=CX;%o)({$kbnA6NSa`h5?f(hRWy5EG>LzyQQ^AjsD<0Pvaw z=!R+p03IU%9yOZ}6b)Zf+IJca{$Qi0E!Fk*{c?fWk$>%-9*B}!8a9Xp+h|fEUW*QG z=F%HugrgOb{pS%RI*Z||ATW6#LFAd^y+fgp9T+ly!SI6daw9;~(`i~-0ccZXEuBlbyjxOg@YI?WlaMu({lP|K)0M~E)3EA1QK2Ab%l zt6A2x_{P96510PUmxhZeuPbpa!;y%(?HSJ9f;N!#KQU}*=HrNgqy7TyOfBk%-dNy|&L7-NEnbZ<4&c?X5+F3Xn^i69zyP7qw^`LF zg`nT?kzzglUL7sIr{6K7#J}|GdssAEj^Eumq8I%R86$G&w{n!2hhJAUF0-?XjZCHq z)DIeI#B>ZKb->+jhDjW41oj7D8Zn{B<-yHrhFKfHb0m=Kt^l6Sff!2wkKzhIKO6u$ ziTl-z=wbjmFA&HNWZN4k?8iX%2Lc3*2;k`)fQb&k6a-*C2^7)eAsB~pVZQ}{Is||= z1qvG%z}WslQU12_AWi;KRw%=oVxgb2wG0jBrwwha6&+>t7oA4DvO-B~b!tjoQ(x`& zw=mpXF$Q^G>1DC z2)n+c#I|6#40l|*yMeohgDf>c0N^s*(e5;NH#l0K_>Qv5?3#Kv`XC0z-uer$=0b0p zXhaN3hlPM=SS2}>Ir}Jk2YC$14kYXEGAQl{)x7(n=fm8K<~VM10)aRrwx$wW-sd=< ze)37!dwZg0;wKAUT=3J?KbYT2z>$nzI??c7V?LjWEr{%ihrY{ zj^j7S`}XlrjxD7x3rX{&mrjr ziSom=-^DLk7cppqjBENGoO!r;24d9vcdDIBXT%fchZ!Oo5HWyI+m-`!)DW31yNV$C z1R?(Vf#@A!zJp_io4d)BVE`LhL7*v!P}^?Ncm5C>!H`Wx3j4=UC{=i;3;@<&zqH^t zrveoGt!^m|QHO1TdF=(t`#nJPSttP!m2eKuk=rP8EJe1>u2f^n)e%wK5d{*zV~nw- zD7sv2i=XJIHxLCuP0I0hMGkHjcXi>pMD&!NzlXGG((QlsOuj*-f5a7@R}1}N(}%dL zAf>neub!Cwd&r%k4gV+Z{X`knBLrYhExZ(ts&*Fou|;RTpWZ4|)5{C}A^7sr+kk2Y z(hJM}E%ZlBhnaX85WP4={Pv0RQIns)hJZneN8y$PyzS$~txy`Ozx!IO`BZ6}^7BzR z25Nz^tK(HYpv&?4GZVEUF;?oi(pZPzFXZ6*SN z;lZfFiV&C#)iOlp`RyVxWevO;oh4%Ek^tWkIP$evxkhP`vK0@8(V1eW zT}B{kzY$0|MgetlO63FM_cgFNI{3i4x}PZ%LlT}E!3kR?s1r*75GB74mm(aW{gHU_ zb6g?0cZAsRIUKO{9wAPBuEd4fMu;n)D~~4}9nR%dSEA7Ba{8mwAK}OSJ8Ny6WT%zq#$yCFk179A}O z*k|KJ_(n{IB(5#Ut}vY^QT?pp%~7c;M}gQ<5EO;Zj{sQIwfBV z8qyc8wLEwx*v!IcrX8I>D@U)+Amtyge`E-9(S1wgt1(+ddw4sQ`Yf{w$~1!-7{d@U&~ zRSP@d3qaUJct9(~#DJLlamGCou zVGERKf=$BYKM~XE44#K#<>1b`Q8~zOsT^{aO64#vODYE(HnDQZ$Rg#C9X3LWJRr?TA|V zDZbFIxpQe-W){wNYY=C-(aOZ_?Yad;WV>~|JW4TmhP(vXxTL%xIM3p~hhC-@jX~S_ z?s9ru_A$7!$g1R17{uK`oBKju2O|gU4^k;dvm4|STCRV1kAC55(Mf9Hfasz~lXth2 z!`y*E>fnfwr4Ulbg0`3h&2@te-YTG_u-@f+_i9E3k6SN0XhN!ofmm;IDg)-@9Id?JpJXoeKt# znQoU-rCF=9pGCGG*u-)0SNDF$!LvB_KS&Wx5B`#&Tr@I>M@z9qQJL=E4^bgnC%D5c zPXCUKkiVR1UyBSeLz|cW61K2jsJeDwe5p4qePMD4f(aaK9unY7 zd*}ojKph2D!=YAOZ4lswE5gfvb^Z7vt)mt#75Q6~CJpc`AH}ieDVl)~kqSQjzh-Eo zS`1wnZt+h0|BRt_lb}Vsk-$)ENZ`KVn*zC~HZwX~mc~L3g9H*MAKV`QXDav4t|ebX zQfQ+UJ2?vho(pG+*|-Vz0*y>?fL=loeGsvL#zdIx>7&O(lC`LIt!b#EXEEhVzcdcg zex|%|xmCZoSurib6NCOLD7I>7BeGhrz1Jh%YL_ioLWSqLBSl%5XNpYcf#l|Lc3 zG(zOQCeCFgG+Qu>Wp-a1RgLMA552EkmzgL+Zg^c+*{HY z#`J`Jk2CG4TJ#D)C#X->`+9;px_p81 z;r<>-d~f6MBBqR-976Z;v=>`cPnTe_#P@b19~AyBO6>6auo-rhoSuJ&5k`OQe^LvOSKGgF);y z6s%+O6n*g!Ufh!_==ONs0;I#Celq#0&&|oVe?m}d@nBNgk1?cL+z%gszJ@m=82Sr_ z#_pAj|CQo3`_jRPMmo9thTm}8@9<*|?!oIVzP&UGAhMKUQ>IB!J}e~P*;>>ZdXPdh zH)uh)2;H)y^~9nwB_>iPG;ASOm*G7W`SnAR*i-YhD@pu{FQ-h~ki;ms=xUUXIlnBT zt4yE&f2B8(>HkX-^~&J}cV;WmrCe$J@R4UDA>44J#cT2$Z~vRVU;Y2{eaU@e{+qvN zEEg-waUF16TexcFS9pga1YY&RI~Q<(|8Yxj#$)eKksjLzHatJGc>~&1vv-hiF%qsA za6vMW>N!gswLQO&q+uc<(d<{+0EyfD7k+^GLC(R|D#iq0vAJ0Uk_+v}kt`|MMev&K z3p`5!_+&}RCW`df5{QyJBqb{(oF?I}p%H5zP?M+*9sC!z44OLeG>%j4SVA^ErB{0Y zr9Nb?FXI|^JmzcxM=V?QPflM!hp>)nBhK%HONZ1pB6gS3>W(@P%-ji(kx-y_YH@}t zLOYXU@C*n%MjE?b!8t^DF0N>s*CmL_yOg*dIljJ5AExd7CDD4*D>O7Vi6Se0y{P0m6UmG?uyd(M7xHY#+G=6aCH--@&29~4E84K<d=6pu(4OB zPlXo4riDM#T7g9F`(+FzcM^i*oOjXJ&`mcFYxF)k`O3$eHwNl;UyJ5@upuxdQQWad zNosZ<$HR%lWy8IlerQ=8u+6-;xtO{KHzSX9BbqYG;TE$3*goKgGg7J&C>BqLAhcaf_gLQKBnHbhn}(^`WR*)V}?xF zzTtShD25a?jyXZRy%*Q`H>{IFHuF;{WPMmw+ACNc+1{=o4!%L+gaXSUzFb*rS}Qa; z<^eXa>v|KUYLO`7@BLh3jJ$s9BP@dUXaX!VoAE>c`K|YJywy|-!8RapNerLY!q8e` zINFji?7@%35G&)`oI+umeF?vJ0SUTH(h4GznMjf|ztx905;b&O`(@M!tx|y~NF4DN zz?Zo_a7;DcFPS*)EfN9SP{!&vpbjw9HpKViVTGA^7|5PuWb{x3+Kc~UIGf3Y+$^Mh zfMbGK`AVHc*U!u_5Svk<$08bS$O1tRQp@L0utQzJKCsoI|3Or++u+2k1(mq_1o7H7 zww&sc@@unT-#73e?H;6|YKDAPe-)6=-W2b#mP~J3JN*==mmyzwbQYNpx2{pQCCxq={3Dm`w&ctM_@_($YZbl#j>ToiN)x{C~ z5PvoEyD~fSeZ={UC#Ga}@o|M>iEApezAv*blUXra6>l%9V->CwiY4KQq;mi$FzUV^ zPU`7QQnTG%AwE8#G!b_#u2V;J*spXAt=cC>?pN+kF$2bT03Ec^G`uTOqTllwzEg;H zExr=%&Es>+vz7$QVN%!dB7oMJ=riPq} zFQo1n+(g`WKxxtDa4c~QNf~%Br!51a9|!c%(F!^oF)xo5ZykVj={<4JyVDBiQ!Nk~``qX!iL2W&Vt>Pah}D50P!feL}t6G zoTsf~+d-xE;MY5Fd20afUb>z$okFGuYs%UVF3YM-xS_0%Ier`Jv?N&8?FU4ULyFz@ zGn9!zDmAOjUWLdSQtw1Ox?iB;wvYCR)rXXEvFUpNGp5R`LE}`2YPGs+6Ch4_v{}Qg&LUR6=|jiSv|uT|1#3 zQJS~t%DJo2;T~Za=Io2WAj$1pA+nBO&^p#oOgMsU!`q4HkuAAR5TX)OteOg`98Vmt z*eAX_qNKPoW00XH(5SXa~9S~)KlUwHKJ|?UUdgG6fi&6fJm0lHZ-Ic8!#r-Uf13a;%}Ye$$l5N zlltB3z)7T*L5re&DcD%F-lNnH&qoTY;k(U7DclE#Bbuzdw3O<-Xihv-BQapLZM@t? zj}{Or%~p>q$%6n4)$GBZ%HMv6&;7g$3Ccz!-GQAPvVHJan@9q`5j^Vk_8B_#~ zL7aY)*-D5hz9!#x<~|K%NE(VH8oH052Z6{r4Gk@au8&uU;D0=T?S&w=)EltPtijeu zvzc!|XYbrl%=%vG0r4laOjS$}&nD^%q%1i88hB4iRnCAk+vGBF{(B`Ov~8K_{DYDj zT7Qoi{ezMi*BNj=7~uNx_8%Cn+t0!}MO%|9#1BeRhn}1LmH(k4vPIK|7 z(DrB)rI{zxr=OsToz!(DPw@`80V=l*gv(TC*9bXbLVqeWgyEYkQO|p2p`(A9AbTIzF#?Th5orJsAcy zh17~>`(X=7-yvL=p_UK%i2Dzg6Z5U;SH^s)e?0=F`BKMiBnOvyzOsa>jorC+re^kQ{0~E=K&Q#E&=!(V|C#cci=jqD`MFUT#T; zWIz0XwebyG8bfht9hYw}X-KO*yg+qTZI@m7x7r}%qP`S}w4q6S27G_irv+l)k4l^} zY!@V#d@hMa4>yW!Q21+G%GB2SM1jSWZ-1bnXnaaZsMp5GyEdw8L*Y23#D=E)AV!?R zGXH=g=A2S;`!vU*D_fgW2cF0`(NqupS)T~2J6PpKJ3Z#>SgK@b9qZ7mQHdJM=vzNTK-gys+d+xg zjFMhX5eF;b17h?~@JOizuv$$imW2#$eH|7OMbTPn&v~h5k@=elPIV_>C;A%2<~GHG z(*@zgH(A!?SyBD!Jk`4u9|&Trp1m*lcdJEog$-BOLu=>HEA!#y&#kbptRbWLX*4{R zYg~G`I==uRD!tSfisHj4`*jk4roJ9hYH_54Q%0m3rE@qXpY%69-e#f`8ruDT2K=^b8S8^%RXJbGxm8u0u>_Y=G93R;saI^G- zdjRGKc`z=Z$KZ0!xD@MywNS0G-r)|(EG!MrEZlO9mL=|lZ1-JRZYA3to#}Vss)`G}{jGW}aK{rkL`frNr<7eKi>e+a|`mp@#El~o(AqxtO|T@3NX5@G|O zO*=ByN01Cn1Bb6&$b&<|wf#bpFZ9ZXQ`52xI{!6!NhZN3Vu=*D2x5-9wo&QnNR&P{ z#GxF@^gM{hpIKe7#RPj+93xj@1Ajj4c%!9VemLP!7m%D}7FLH6Bh~rT7(nu1Xz7{A zOiw?qn&)LBH_B2AC!=W{crpUH+*`d*()zMC6?9$z1Vck48Lj>gDyB7ZxFGvP!87ep z6NwQ=LYeO4-dG@&b(%_rsq4Zfz<)T7$0~jGW&8-lXQ=C1f%~E0ezo^J;mE&MISs~R ze75{Wh&yK+_^1Z?SQ+4BrR1YaGSb%x`AXFJbioO&Qds$;y#y=)r+J5$@azGe#IlTS zh&F+pP_KVG+Z|NrAA%%0-NRO5{r@F4dbrvS_aR6?$$DZCn4FI+c^%;J?923)dF#r!4fArOb)MUF)uwZC8<=O5tU<$pjUJgv& z-S|_}SWR#ygF^d-l~zUuVv-JUbbK`xj@I(}| zAzgLi6zw$nf~*@32MNsOzU;2p$b4dPvYSi|Ow+^APu*K!_fX|B6;@W;tHH-~HT?{P z7w1_NB0+^xF}iFjgc4o$HP936vaGX9a1^$_H!6)ghprh-e7!mLqhM@-Xr?PIn>oBW;4z zHW0`y)u@Gc$W?J27!v=5{x|`Xd}anz@GSWCu5@ovcRAb*ys89p5zu?JfYgPR_yVB! z7=9%I#esA*g9+QY(ZE@2_a08`KQD3cb&jzC@_V2sRv068*jqkx(UUI5KwR3EaNf-T3Me)76YmRG#Z7g0Aj)S$1|cE?U3-H)X2w=QZ}gT+g2^5`I<2hmQD16#t6HGUv<|TYgnW#>|-=Ve;V~ zqhFtf5KZ|Woh@$vO-X$W=RR+SW73UhOqQ|{uK9U<(){l(B)K^WTNu_wZLz-aM7@R| zSoL-T>$>{Cjm8fd^`2=-Yc=yjM$X!HW`Vi^QtbN;Q^)sO16H0(!&@xwB$Bt-HB@xq z1?Zr`;`jC(Gk9 zdoVSC9cV3<_iVu|{}MT90g>!|0AirOw~1QU{HlyKUa2g!dl>JB(xEpsnw~WafMgMu zB&CPOffO#XFBfU1%XcUa!?Y>Gg(lvUMCFBX9`ePl_vE7Zp(wTJL&Si)iCiwcUh46j zip>gh-2g4c1XE}aC0g?CM1hK|V?$ZsDs+xo^?QiRGan8?{aj$;K%g(hhyDsMr)##I z2s=FeLvZ!TQFtUI-ECV(pql+%{E&MT_Yb-P9^q9;L@uD5uOla(e$2zsNly}idU{nW zRO)6~3?tHOWKlmeQ*6ATWGB8dlf-Oxw5}mQ%dA3*aO3@EycR!mrfBo0(%D6faQ{s! zCE9DlJsuSPh6#l~`3>c^3xwgI0>@S5`fjSCW-me%-s^(3yZ*I|d6Y8D~d3gEu z2wo&x4`>wLo%)=ITkDi=EyvoCnhS?1CLcp6s)xlzU8CUrs9B#62irQ|`|GkZCEE#xx1GNuTAKbiv4}PqyvCQ5C+1W8? zg#3iAzsHOu&%_Ij+xti|epInk?@OWz&&p_t?kFq_v!+H>OB=s7(XR(7~e4MWw-= zzgEeZp%7ZbVPX|$ceHDJz zv#6k)m+McA6*2!P8Lm~=fMni!F5&}((;@h{RH7em&J}%*l9zFEMkNdMNm2&H>dZi_ z)}7oB+#S!N3;m8ujU>D1XFG6K&wKL7%TUy}KWiq%;Vl4Z;@CgRcdkoQseE+M-w*(; z=ja;(@gx1>jk7nHjqjrq_`1;0qi+vn_(o><%E<7s%y6H~@Ih3N?{fF5x(mq-@)rm4 z&!PMe`Sm;l!4ncetVHk#Bhbr{4btL+`a#~i19=??P%YDpyj}4d?2V`}c=XoV2r=ZB zI*rAW%Qz2eH${APS-Fi|>0zRsvnnh>)UCon#n+QXN|kb37_5@T{>w@u@nn^v#NrFA zNSwkPiNjAYTjL1q+vj-Cl!#STO1rqo$>0)Xupf5J%izG3c<GA6_6JBT#nrMB@^ zw=X3R<75_Jx`T{n3Hw6KxvDhjI2=%59OV&`4AP5`|1`(H3V=C!((^w|8H2 z2?z^6=kit~94N0cmdksQlHcWISzcd8_P@`$yrd5Rh4OIsGUHfbcYYIlI2A679PzpM z>Z)?5s|7lStgBjNMVRWV7S*K?*IEAug>3wcX*i3pq~VwzCu!J8$tO5D;~00@3NVl9 zc!pw)J5)pij~K%$srw$cGHJ<9ZPMIIY_OG7!+w~&)x5dDhScTKSl z@Ws-5DAV|k#_XSle=pz+eI`-z98Tu;QHw~hm^ZE0a2uIt1F~4`xURGx^3Cp0sG+UCM5i`9 z($@sl=o3j*&>JlbWvi%TzHsN*S}o}N6b0W%<`*DsyFp^5a8%=L8v8$hlD->gLYChX z&AS5uOgd=e{8z~Gq`yIEFG8o;$0ICf9+moQjkq3nQ*sU`8}%p%)FXmo%QDCg7MV%3 zFe?~#jK=zhkh!?Tm77JZ)glW^tKq_ZCT!WQLkT$GnU>ixbr-6Ly84>JWZ-Y7+P+Vu zPh}4HA}NL<3}UGaG}As@`v3sQ$6YSodtL;erd;_7{K8wWpLfzlo?p46^@zVvgO138 z3Jya!&`|D%T)`fcoc)Q|?^j|%FMlkXCJSlBi_MmlJ5ia*FJKA0)z^Y<^v}Yv$KtI% zD-*V*Ph|K6b>7y(GaFdbbexi2SU%0$zt<;+*0`*k%lx&+_EXr54!k95y4Ou@2C^b6KPZ}8xxb?|$9%!R`dzqQvdbs>0V`lKQ{wvy&PsfZ(UpT0OD zZH_PoG(H$*ORYW(NN1@HfCgFVI2C87IH0WZ0+(hBk?3W-X8-rydM*Qn-})Vapt!4r zHN|Z~T%fp55WbI%WY+^&4SAoI?71I<6buM@FhXo@{tg3NgWjIC=na+hszqzLm2H2$BaiQ_KVe}= zm8&m-S@NQ@%W?BlE#68um(*uBAqxmVb){1#)az^@`#Z>v_p)&^?YAyN7>}3aK9T9h zWv=*z_ymgq{S2VxLF0$>iG|zIuNO*jv#mfHL~S7o1{wZ?S?)8qCcDsY9f9nbF5371 z!*9*Nhp!1lW`l`kC8`z8WOjHT#Ojbtnqd|tDZ(4T)@Uvm1gQvky90#D3&9ua;B@D# zSBu(U6vAO;HkFREUUc4;AEAe=Euh{KHRucpMFZHv+p-8ki{EsfudRYaQVr#Pcy z$5!<=bLZ`Ie7)9ulHTg3R%Dw8`xeSGf$}hm%@)o_UnRi!%?Fg%wh1V}r#0YH*PXB) z(6x!v24u6ouH<1XXGP)3&86iyA&5uxIMtQL)q@1h^n%TMMm>A zCE`69i&1hh|uq;nmEp>xb#;&%U_8-t@IS8>BitQ1W z*#7@sBeAo609bCKGJv#{ASB{hKuy2hxd>9bo<#%+QHLaB&Q4-}AVIWCd;AB2px8u^O0LA+yxV>0N@IT(a60iy|!vA!o#=$mzOm zF3Z~*$Op|-!K_WQFg`mq^PKmI9+E6uix;VBI6?1*4AdYV2(o*Jo=y2R+cFRUHkJ6T z|4@HH#ac2PRZOEaW^1|Mdc;T$<8rsUkbZF~5q}DU!vx3#qIvVBaFl zt#hf1xHFa@*rbZMld&A^TZ#RmiaYhP*_d$~B!2_7LA>)KPKw&Ys5Ol=i1k~Sax%=0 z-uy{CZLzd=ow!W!#S_tBS-7`J?FO8XcYR1Lto;qF(}P$qzDZaYlkX%(oE$*h3IXa# z)|Lp6c^OdEqii5o4?}=_2BPKl%NWVC>X8jG_O#}%(RV#9I@GmvbA5?;AG}Ut0|q(X z#}|Vyr2yo$$t+nhLg6;z%!sSC-7PnHVewH|mZZ;Q7~Hxp$xVTzOnL*70_)gHsy3cU z;?ix8A=dazhRGN2Ec#PA0|=Yo>4tyG!W~J3F~=MA^sDtOOt}{q0cO?*IeHQOBAi7)iDGrvM1C z!lDN{i04^g#vEir(c@()tjNmrSAYO{q4BY#$v8wf9w!`u%y=;~#0NtBR{P0_x~9^r ziSA>f@@z=FxL)597&F0O)YUqDCu3OK zLW&PVb%4Az$N=jc(u11)9e^+w_+rAY8Q2w9*X;qNaIm`-w7SeI4pW6~k0BRmhD6{H z77YjVQ;^rtX>w9G0J_yy^{UEEeb?v0;Pp0Wl3rG9u4YnK>bHL|uSzmqFgH?TAhIVyJIr`dw~Z~*6tGHnKRX$$F~F1G{Ll$!b5 zqpvo!*j(Z*4^JzyQ3{_I~OCnW;;#q=TRO1!YGJD7zr1} z;8+yZeSu+5VXuXn8lwBfbm9!zxV}P}dDx}+H#i=5zM%sj{$709(9+6v7!&d-JfSpO zC_GMv>ri;O3^$~3mJHXYa32}|>kz{HI)i50p`jp;^`5TvOx_MMc{e3nWjKPeDKgxM z!q;ik(9Gxi6VRXX<8KQ8%)`kk9Uk?Fa((wSs!JKm{w0R9t$KxfxZnEpG1)mjm?qwA zWQqSDKA{Qp=6HvJ;EO*ccs$(qCuVYFn1Hs@_Yo1m`%o>s^7zD-9>81Iz}tPAs2gL6 zZ*o-P{rC+7FSnA%cKe^g5o2l8`nRbyB*sY+Phx_K;RS;k@=|d-r;4Y6%4MLsD}aiQ zP(b3L3m91@5PcV!&N98A7Sh!Oq}iSdAWb!p<}l2*EYHUkI15BEm>TG z*O~0RNhrrP8wFvqL+~4LkZ#hydIuY7_n;}#5AuReGxwuFG-CQvAOe9F2=I*(+Y69F zh^ycF$q`wv<5OhaJzp6l=5eguT{XF}|4 z0)(($9mIstg|A1DjM5EFc?ZX%hngey2Y9=E0r3_C7UztajAaA_pPTYH^^A4ISk2ak z5m9gVTQ?$}q)UfGE$SpRkNOmGnA_zI2W;J1urC;}-_(LFG+;Xd_B_wfCEl?F>jL6M zwSe!Jz`4Vqar-ecsdAXyM;MSQx+pNy=lFXh0+xeVnaOXBLI4dA;Ja6Ug6Ceo(?O2Y zl}phn&QdpIzetO-G;1Cg$-4B#_28nROEG!HgBRvO`^A(v%N?%PK`sv_tWEoZI;l-tQRbjFZO`$t zf&M)3U|qQIHqT6Vj>YUS%0l~LT6n4KHSZQ1+FnB>*DlX>#( zHL}Xpqm1%2`vmAX)c@!_np`Lcgt@8Z_T*MFGV6Iti{B23lqn6c8b;{w$L+Tc-Y>pwiuKkSak8nUnJWbud{qsCNn-EGfp@nmN&D+TI?Ka_V2AL8nlPA!}3SOPt7dW(1atRs+pyW^7CP;t$7(v zwVGSvLY9ln=9aq}79+OUKd-?ea*c#*v+m{MwdR)QkuJ$+g~u&aCxG4LWg>5BDsOw^))xnJp|EV0=2ExHQko8&z*&c%|Dv%f)x`mfI2w zze(l|l-wu`plmy=uM7=?Tb9R@+v>X?5%CF@IM=w{B)!GMA%C<0EJ2uV!GS~n-a&(E zG2e#sm{;>&0^e7IqnTL*f~|sQS#l^d2JXFeO*iTFHlyV3DfPlktvEOl8U;|65!<7A zgo0FDFOI`*GsXgvPYeZ46p@2;Ry56#4i^T|n1lwa<3x1;;|Rc1fj6~a&`V5uGGHLQ zKkpFRAc(XEI@)nAzj%%OI=oOkm1G&<%7*TQQ$NtX6s2~61MMw+L%E12dErsz|D7&Y{Yja6zIzsg|x4zFurxhbM8i*g=z`y z^8GH-E~MdT5e8V0B6_#5#J60I6fe1`0-5RMq!0Mc8Q#F9DVxXMLl^T}SYj2YnLy$v z?Gj5{Sh~7?e^3fe7jBnc$$o1`AR-bq+oPneNMaO3A)wzeE5Fl$gmRvg${PzlzjX^`0h&L?8tqo*53{b_DF(N+bP9Ft6t0$* z*iLUEQ8xCbXN<ND$IY$KKqQR%?eLw%>mEt*Ffp-}rS-$Ehq*Q505M4GcmeFJw~dO! z!vnaQcFu3j2I?%2J$jRZE|B*U02lY{nprWaiNvPn&B@a zteX}QB?rb}0STY;vrM^l{N~?Ip+1`Vne7B1Zw|)b$f;mkBpRvKeFFWSQR41oOV?1x z2r)Mq1IV5t2$Z_+h`MffV0Pe7xrfT}*mHiy;1YqrW0+IOYYB9??~M+HO{dl?nH1{h zU~0*H(!)(D6PjuO2n$S&>LZS}y`Cd*ePJpotuj5ufPfZ>tyicZCiaE@`}oaqJcvM^1XBVG_U&K_gB-o5qgEb0{S)`uf&nH zQqZ3SW(RX|EBgZyP{2SZrxByS!PLPpd+Mx|rJBp+$h1kaxPt&Ks4tZpY#!NkUkTO}J?5H>UrJ^9)7 z0A4Rw7jJ<$J`sT112~%C?4@7cm}2f62{2^KPt1^Ks)G!fpTi6Z^aPxzKpdav;!f$~ zkqAb-gE>qsL31LvSklgsZ6*wEGzA9}b%eBaj6()Ig8BxKw8i44^A4yd+jo&{EI zp(>#TXj2Q~PM`1{r7s(S3}pkzBAVLOZ!P1L-soqz+J%nnw{GIBI6|;(by1Ixe-jZv zgspnq9JW1=Na!4A*%la4Jl)RHD74GH;)QmW9s>rVWTePx=7XS2D$H+qtb*n?Hv}S_ zyFohbOt&$5TrEYk^*a6n{rfXTbbHI_(Da#NT6;@Mf<2d7L_PwonU^uH;%GUbyf#mK z)gD~wQYwzNx7_Xu#i)T1j}#h4yegs+>Ua)%C7*UhAejyhc@!BxHxPZ{0ZAzja*@D{ zK@P;eTM{649{}Wl4rX`|jehVvez+50kCM6q#=L0pYzIrbJBBd8rc^?tz1N-b;f$vT zMdMk920#Wsfvi%aIvpbhn|ExgE51EiC*JiUdU(waFifZP{b(;{qdk;FPO}}HMoMPy zW+|TkQgfo2HS4PFNH(s&4%kSnj0AKFxCiR^`s-_yN3+i-z%uhp{Lp`XtDEDk)3)O* zo-o`Eis}b3oSj~SVYtMQDKXp?#Nb4{uMu{MYxProRU*x8?8yX-l`94*NLvD7K#%`t zxB_$SdIkoz{y=7Nv2J*Ck<`gzNuB=<5ery4G&XPB#uMcjR%o!YK~iAq{VT_<6AyH< zG*|i$mOXp1aCNeDi(a446}bzLceNBdFhY(nZoe8#YS4tIVThX_j5`T%2^SNL%M8Hb zX10|5vV0nmB?0yDQ4`5C=*{RcX}|llXDLaBy!3TlLSoE2vqke%SifxCD0-(_+AHhHKmzx!H;T!r zmR5}$O{Ly7jHJJoguE&~OtmDq9tUnjkEZfH1-y?c7f$%1iXd&UOsfP3@a2?W>*ZG; z`L#!Wb(df7%CA)U)lq)6@#XK{V`vq=&(X19%v(5d! z60^Hm5-hVqT<;XFe-reG<=re+*S+B=oD7v_Ln6KX@g)@{vi$j_AtcZ-m;48@0L0rV z#p^+vM1XBcTG|>iL!QY94@{{2-fFCvZ`51B_w_CK(jmdM5jr)`6rfj&HzR-Htck$w zq1I80KjDbS0}*g1?ja_5Uqw7nKXMCdTz9w$Gcy(Ws08mwqW~95paiuzyQYKyBo*z& z>nt?-f(6hk%Nz0Nrg^Bbun$(;xOVCaq@pJRWxkPI1@R4L-Wp6MIiTF%hr&WBn7%ET zzQ{B$VL0BQ z!W+(IWY1t)=m^JsQOdum1o{2ekI>~DynPCCGMFE7C@A`(3TxbiEHVWYz3;TdHL)70 zm~_CSBJ%MLv3bx2G38FEpaBhuA3X7Z2FdeDYj!dQ()V=1Q3q+2Rs^9mj=W#+R;(4#YZ(WQ;EJxn@LZo)L#JKVqJDpEtx^oDJe=>5=Ud2e6qHEd4 z+?Ie~o{b$bVq0z|u=HS0h{V{pg=UQA0T zUSNXt8Is8%o^2%v0)?;PTduc=q!KhGc*zm4sDI_YsRc)(G;i!p4AdA&XO38pmOId5N9?gm_XV-Hv;C{np|?>2_`G$Bjr7SD{3Z z;6;C^p*Z@cvd@g;vR7LSf;UQNWY4T2`1rsZtNA{XK(Iijn+SIOC&j~=;;BG=E2ry9 zf;*!`rzAM-27*W5RQ7Ek*hdFV4TF>}exJf>bI+%z|5D~*f*vypI?K*FCnvNhs zE{4sLh(Q4&j!5b9TTgsiSH2}C1?)I)CLDISM~%akW>o7-q$4id{WI7@13so&-5*Dd z$$J*>JC|h!3R#YLuvu{hN};MU{WF0DyFX9k(CRE?Yjv#-aNfI;w1)^8+M_9_yNjKw~vuFGJL{% zb6pAUy9ZFiF{^6;2StD+ZqxM}2`b9^Sn4-u9n1#+qClMKV@YwP^^(G{ny2)(`4eQ% z(Bemb1a-xGdK#t%QgJ+vRIo%w=W;Yznj7p!vv7LAm}DpbFi#_;h0U`PN`v!qiGrr` z=n<*05@tPf$d*A$6~`YRh@}pkn?8h#{y@;35O~aQVRsK-eF)UOiDt*>Ab?)`A?a0` zMjE>TFs-9PJd4{hDE1BG=MxN9=3|V$IDwb->Blq$U3J3L7#8n%q?BQbafEE^Ye~HO zFiml^_|`!jLu5J;Ed^vNLs-AWk1VB&gjhrbXts3HgqpedeeqUbRBJZorl55qW%rnu z@^+nZ=({PONq%n@|D1DY#R!Pnwn4%EgBW+xv)v!$LtJ<&-2$=T zG#VUvzC<1dab~;M(H>7gmuZ`be(r}Doq>LnQ-1RhHk6aT2>14e$Qgc8wfH#9atJNz zWL^CMRT}=JG3LWIl?lgr!BRwHmYX{pLn^}+8E~IDgpzJ)(YZ;Ql;x$M1@yINlo&7_ z2HcatCp)#@YWqM8Pq)OkpNGi;@cFG~1E^aqpeyf#kmBRn?%%N|B9^6FQbRh6igZg% z;sVYF+^-S{Xx)l|FM#{m_eEHSrG5L@?nDnCvG)wX_ch=r*Mh&}eQ|$=WnlZa?__w~ zr?!3fFp&lPd*74z|HVKSz+d{F*aQ5n79-8zxg7TDqvAZ9zl|}eMemBF{+2kk<)lzt zT&Cg9y+vRAkQmV4(mMLvd_eoHt*HRbR`!5+x<5`keD6|~F*?wO7RE#<&NZ})rJ;1* zi}LlVy#*cIgOa`6HtqrLdCPg@%Y!ipRagR)gbA#ef!@$y2pz_r^<~m#Fwn0A?A=-~ zT%^RfGzPq63$1ZP2P` zN$&)tzSoT}zt#G#m^z?lPx6;{#M=X4%=rYyV|2E6jJkgltUK@E)zm%p=K9`F1G#5$ zrL1oS#2l+yps7{gpYFM_zIvd(lkC)_R9%w9Iw4fTEWf&Z$nB<$AuUWY!f zRo|aikcjXE+mIBE)t#@N5ex5SlLw1EPHdoOUBsNDa9ebyd%*3P?)$Ohc#7_FeDyCm zKs2Tvxy{i@{nkl9i?gmIy*z;~0{it6{Q5>hjt0ny03TfuGwvh;D9arPz&xkTN-zxe zKTYtywY!{*fWT`+m+#}mI;sFm=KZV%|yaY{q%S@97f5peznVt4$=Vg z0AmgS4LKD#z|;G3SU38uzb!|lp=_G=tWgF(Q5>u>I!(a(PEH5D2nkFS11;ZaBcKcc z@HUfJqY0~=%5np_78%$#^{ByKB(dLu?{UPdMHeB;6V}6&f=>#*2=$i!gWZNRP(J_l zj={=d)XCZ#rQ9z|(SIrCnXdkl)rY+C&+ym(!`i#RH&rZu;Av?~ITTI{EpMbi!GeGk zsZy}eNCJsAQiVc!6yYM^3q?r)K}bs)=`wXU55fL`W^K- zs^8Ek`aBg?v$wsbZMY2~!X!Ps4OSDYx59V*Re{<>wiv}p=a|8g;@Kc|5tj>OPJWH< zCdQFf2R&WYg0|@r9DxrwHS0T1kfb&NZ;>-ViK=Ph$ZDT~GI9w$XXa3~5xG)xZwNXc z6IQM|fb7mr=)Kf&tjg&W)*mmS0^*7sR_>?hx4NN-$|HB8{%R(gzS2hk`iC@{S4G+) zkwyUehd$F6gIK7^8~;hLsB?Skm3yNt*Wx~mRK2zhMFkso_j9brNrD8Lc#t(nUU@Ci zCAEm2@{*SBlG42~P{~*cbRl+>?+n{4SJVVG_?(nFE$6X&Mkm#?$4vkL=N)e)E1VvQ zSc4p3h&J3fioyDE6#Qqnxga}BWPQ@e8j%MX;0J)YaiK{lWz7mAeHgC9725YMsfV|O z0b)TR3{3df(5zi%Wuz@)MoNhGg_Zmgs7 z8ek@sCW6Q#5!mJ%M7$tAHv&Gjj!IuaWu8eT*P!xf1eKf!DywK$Cy+8N0$Xc?3cxcX zz|nO?ykFeTEjHVv^79L#F3Ay84gzM@WiU~}S$f~>*%%QO5Ktf=6M_77WHvf!QUrJ@ zgSq*}36hhEBratPrML~6uR!w6Ub-iOW;HfkKqWr{omEh23-I^|aCZjFC22HK;Drwt zS8g0pB0`M~LjA&oyg^-5;oI|da`w~nR0a1GEEPWx80I3C<-QhC9!RC$KGzpx7^-{_ z#X$s8W=CZCkCA0BvX~Wm7BDtIm*R`rnissZ91EmujG%rG(hcgFg8KLf)VCU_XVs@Z zHX_TlMwSr~)Y}5a)SKapNqtTg;F#`4HNTs^}c|*OrM>6=9 zk>wj?G3)*kU`%~EzL?bcgo`(ja!UmD2a#^neSn~Di=duopq^Ksx-}w8Pb15i2iCLll0QoORgAw!50CM7b()y$6u z)1*Yv;cpM;iC3(G;ZEf#_v>evH7u;2(bkWUu8-bdp#3sJ%JSaJ3ET96y&2(EhT31( zilt=-bXTr2Zyjc~XA2PO7lYieYWF_@tZE~0w}6PM*^L<++4jsT<}RFB$(~F__Fm6L zR*NDSHJoW6rd{MhNLY3b<$6ctDyg4~GC4S2C%X;hS}1Zo_=I*OU&?6u<0!y}GA#3( zJGBlYr4-q*oK_>KJT9#5GI+T*c%;<3Ax-TD(jzw;?@me&ys}?m1E6ay5al?*e z4~Lq08_L0+H~bTi06FdxqLsdynMX6c>18SqWGBGzW>wu*ltZ?T$QE{iWNH1qArO~MRdHG89=9vAA zT{W(VsH^Z2kenPSd(J`XaQQN^1Qbi&^ry6u1yY9|hwW4q5yYg%Rt(}_zcy-Eqn38>Tgm$Gs>KYwTwJxKj4vkwOu$zVXrYE&wqos`G zCdeAR31%JExx`f{<@YDFr$^VVb1R?FwvWa-_tv3gf-feaqBVYB>P24T^8%J@ybk3l zvT~rg6HG_IjEF5`kskvrsBv}VqPHJ#5-LLb1L+dHsD+VOSNV@IyKDE3k#6XAWEs?{ zIB+RlM|I>7O7$aZ7r@Q4!4=E29b=>p(HHkaz0+wT zPz{e6=3fiY(j3&YyNMGarc2pnB$rT(7Q9;D<99?E_6T0-#`!U5r_i)Yi2l z1&n^q6R9Gps#{Y|gJ8kK*Yng6?b2B38prdZL>{1!3^}rdS0uHfB%*OT^d&B9GDIWu zBq~Gl%^Z#BrrkA8YS(j@0EYSLDo~^g6dRZxg%VnfJ?L=v4qtI9YsJaD#;@L;HnMHQ7GL# zGzZ3hL@TG12Sm@Df)W+I9ZLBSFgWw%l2c^FMRem+M&|NswX=m%&-T0HX)Qyi@8yza zxa%H!In*JDtB&<7)UwA*ZTk4vNOaBB@>L8Uy%+6jd{0d2wvf}7w4atfR{li%BxsGrgg!;8o3RN44SAPiX@*59H(#&h`yjj%tb~Fv=`4 z%Fu|){0Xxa;H873P>9sFn%Sma?$Mc%**`{hCx?5N4vwZ?NNEBpD0G@;y)cO`U9}~5 zNiD`5Q8{r}y~K-M%=Q&0x=RPgFs3yk^MC4P{_Jm=V>$Ce^_dA$a&&rot;GbXo3}l* z8~PWGa|5s#6)g;x1%n%qgDV<`@^C0Ti(UZtlv^E=XT@Er7R#IDWpR&1?ysOb7+=pH z9}la6CXx8=XMA7Tl%v+r_N3C7#*t`0eq8%vf;2PhLR)r~-flfVBrnlD6o^wy#F=dw zFF0D)DW%xB&l<+|JaBjbA!a-Yg{;|ju3NfRAWB?m2Xw5Jva#= zoOwIReYw_!w|!w4)`}B00}Noa0faiX=v@sUZU*6;&;%Ae$pFR}K&&e*`sE!0XRHCF z03Q8k0~lujp&TswzD|G^b59lFw|GBzPXp)>aRv;xaV^q%-VJwAmw0n$G`xF#xD`uP z4jLx`HAl73Wzr(izL;A2cC0T>OOYwGS4gT5)KJQg3t0wk#^lG%@)`X`*^8-Wcjy-} zB$Nc+7~?Ff7iwSKEv0&=ZjH9cTR8BGWL`Nf+AdFkd8!d$ZoMo4o{r&WDMI-=zc`n9(wOV>3W zf+psxi`{MY?}lo}Crj6QGg=A*`EF3N`ZkLl$dZxl707(RN@J?0%TG?4ARRW&vQ_t)HrX)@*Y3tH=Yq-!P}+lGu-J0KUh>x&Pg z6VYA+VbU7B=CwCl3GgX(@O})3VISMk%Y6w6Lyqm4;gT)dYtP>!rMI7&Lrse(;JC{U zwIh6n1rpO=JA99nQScIgcugp5;#6djK|6c_U96U5jwmPX3%4H#Aov}G4`2jQZo5Rz zB=?FvJQIE8m@|ZGI_kW3&%M&MiH~ED1i$3Y!vuW1SbO{!H4>H`VRfHCY@@c?T z5Jr@UbIsgF`A8r?KpuD-O5#NMgV_fBd4{_&DpH2t09asC@7j2h!$bP3ZM47c!^zEz zKeX=mOI`Es{goW?ng242wiZPnM$xr>jH04sr#5u@Cf(l~jX4Fv_|OaqzsHp0`RPCo zV0hrV$^A35mG|SCm*b~-FCdiiD&*#>N;?qg03X{tPz?}Ov%=F!#8BZCt%YJio;>7v z7sJb6dKMZRfZ8>X`>9l9&aKS&4>5`?Ki_xAp|x7x$Zw^MpC+{!lZXs-@nxK~Xit2N4f$@Ym#=*o zGm_>)c`Lj?MdsN^?UhGjnhz)pjzyaI zmrqa6iOWqOQSagGChZuMoJ6W4(EdHxMz{m<+85}f%d!Ot+OH2H0%-8ZwJ;^JA24&j z#X2S=E(~a4Z%DGd&+6OqAZJD*3>E_caWUSJbwIoDkR(qv`5Fue z_-c=MwMj6j5c>B0bKyg&g+Y03Z75?`9mft;<&uGvE`(CXX*ERxA(QbzgK2>%HoFRg z6EA4frc2i~K92{mL47PnnD)kW=?3peWCI`##))Xje0e3?`stwiL%=e$y zIFT|7<{CIV^Q@VnD`jYFS2vfT`RL^fS#LfM4hyURl!XLC?y1OagGsM^r_b`^1&(qd zOSA*0`7bqU=5;EyqUAQ;!rZhAb8{VNK1t1R5X`*yA!zjhy)0-581mlKv#LTjt~ z5)t$t^fc9dkJ05{1`FW_26>NjcplCK(+i22N3=$kPgcfS8aKn(TJShZ_|9m*JuJ0o zbA*(Bapf8M@Ry@;FJ_b%55jfv&9pnLO`3bTvoS?B#D7h$e@3$4Hr*K`Xx{6NA9PDu zSN=?F(g~k>uo<)|a>g<+sR6zZjzN(}ZlbJbms63X!7&7mConLLkNqCtnyK_{pU4m{ zHe)<4N-c;jXYlygjr^I|WF0Vx@y&58vgjY5KO@0b!-@2vl-eNH7Qoi8lCjI!HiwBUDJr3Wl zc>T~5G`Jc-Hsq23lHkYIrAJBZvA31E{%N}P0XGKfGmA052Qu?9o^8snP$&Kc6fFF! zeo7RguaC^e;SA+k7p}I(x_xIn)P*`gfAQ_R_~Pw6i2HA3rUWu40j;=rTl^k_-{x2v zXDt-Z6_7pV6k)M7G9eoAI9L^%>pYCZdR&Vd6w~?^TmJOi4!r;z+wWv zcp_V_JKnDi1=Fz7rRV}H%?DF(xjgh5LKU*lJqb6kg?(fp{iQ)@jzDHP*AlE<1J+0* zQpVpY<2P6U<|??aHIV%QDxgnmAu^;F^|QD;14{RCZ1zGkSoD9lMA{@|&3q0(b>43M z2-=K-@$if#wm1%}`MdRbyDo(w-*Sl`nE76H#YcW0{pr3WL_Qtg@n{Vu3Eu>K4L%3V z5C%^x&{DvWelmqyiG^)0R*tx8qmlPc_{H$T0VZrc`wogka`yqeJ7R84a906t3-Art zeKEl@gJu6Ov<9UW0iNs2-)#-Ggb9^Vj@S4wBhSOLsXK|1vVl3RxuK5J;vK~0Kn&*T z_{1!Th4b45_$sHz+Lk~QCi&jMFZ7xYFA@!X-1p!s1qj9^C+UI4+LhUegDwM5zrQi* z#vbL0??pl)vM-Cwu1IE%m329uHgYhIso@;rQ0rkP?b}d}OcqbNZ^L%}(g7^K^DMJS zDK-aUbS(798+Ai9AeF3^C@&uh@ok{fZs;>twTGs~6VMoXZnBVv_GFM3bHe zP$rVy?nqeWAZR>51Vu-Q3G({>VuCbG3%uqN$c}r$OSAEDjDwEvK#LKp^j-+Wa_>?z zr6HxXv8k`p6iE-wHr3C~pfSH)@ev3rUTp1W_E^TlR`*~Uci?tsiujR%tE&Oe#?(q8 z-mDJhg^8+n1zdgV4A@0NXCw1!LIUgOO$CMjkoNB?U855o4yM9cT@^k3$3Hc>}c z7T57MvyP)tpEP7e{cd?1wV;z0B4=mLDVKPObtAi6vYx7g(TuvINFo)%?rZi?*s9>H zd1QV0ZGv$Q#i3)Q^8)s; zP4U+1zaXE#{LyA)0yQB9soV7ZRGN(FxwliDJhA#Qe1YJM9Zw^wVqN#VT1>IK+)nl3 zR=7;-7S-9#zia*g$GsJnPoE#)SPvvL#vnLV?v6OQcHw-@HK@yDDO{I70$i6~UQ{MH z0r@iaU4Yv0wW3Z4cj(us@fPv|qBWjwfxSo^QKjR1im#knN@?E#zx21zPQeGc_hOgu z4$Wa9sI^cJp+uVLs_AeeI`d`Z`h?Uqe&FiT;&{lPBM|!p?KFoqN(i^F&8wzj&l|<) zN!*BHx5aa*xfI^=52fx#DM%;L>s`NKGZZYti)@Cb^7sGCODA95^d?1~Xps(Y))J>e zN}_LKd9u|r$BoUnu5M6=@|>8PrMm}2hVas1?Yc#S73na}5kQmOAer0#vBhY6vP##i zsvQuj>Hp8RdF2e?|C?=oG?RM&u-@nwJda-SVUrYZSPmOLZOGwE)D_5cqaAYs-QK|W zFY6!oyFYP--L!;l(8VHCzo?m))}$ zdD5w<+K=r%E`aHRVDyiOU(ZW_JiC*lU(m6z(tepQwTqwfGIMx9YwDHSO`>^Gg!rxN zi8@#EM9Byc8py0sXy9TLM;ZZ)v@`e=<)(`?0?a+8!@1BV4APqK}8Qgd!>5d)-7V2m@;-5ORY+K_73F$rk}5;A$+LGlM9!#9a6Qh5sJQ^NTk68Um#?uUha zH&Ijvz)A=HRv<{ewrYWJsK}UxC-~}mco;J1rzSMCh&-JOw9Q3Q_iH}{9{5W1VdS_& zTr*#R0w$utWv~yFh*(%_Hy7i$_fSYGjbZYliIaR{OugKPtJ%@4Cf-`ip2_Ujt?h!3 z<0=inx5-?)n@g#75y|%>*`}@$6ViE43w_K3G~{=R35lqFi?jbQ4ib6(#7c-~Q!JJE zcku?AYiLd8xgFAYD@H!D#?JYHq%x$Bha^*0nt+i!1jztXjsoP+2N}s1k<6AQe4m4m zFtb@rGn&7*jHLN{j3^Jq8^~(O3`+)#S2S207S;P+(OQx9YwTFBDT5@0suMZXEf;RpbnCNcmvp4bvMZ<*StQdm-jA`S@V@G(oh2hV*T|SKyfvRR=XuIVB+0vYF@1~ zVQMr=iKdhsk1F86WC=ol@vL$aI0!yO^0(}3{QVUFO*8&`3!mnHeJNq1@t>LDpFV#> z9y8ur%PWDErs1eO#tz0Mei=U`cy5rT1($bAee+g8 z5a!57GX?2&D2i)equkd7H{lyR8Mg*kk+$$vg;~7s7_83ZQ^*f_&-i7zIr~zYaI;z|!fo zz`UR*o*|jQ0`r2t9M7lW1r<|Ebrqa$L=n{Nz{_xom2(pDl* zKz0c#$dmR;6s$=_&A*Yj=6OCNVbROltc6ngFqbGE9+zEhTZ-sDQZ_v?d;#V-Smv(xglzH>69?VmluuC%&SY9U5<@%uR?-QOR?;IXbbmw04WtmDB@A-LD2=r-rHDBCVHUa%4@~HfV?jX? zeSyp;K#D=L0D@y1?~G-Zn6OEljXHjo3Cd#-Tqee4u@=F93#)IF@Jeymu~@iytw*E!E#xH6>n1UQlIK;MWQZWNkh|$=6z#vcSXz~=IZPxPzG&= zseUUe^5yerw?AQx02KVaR%@q9<8K=2!u*Spi;6(grMzE?4=1jaMfW?EMMv<9RA|Fo zW!(XMcPX1FMK97;t5S=oMp~6BT@(Gw1x;6__EC+sxW$OTIEnlI$KLtD!w8>nd$XiaJ>zf4~1`G)#p{ShEAy2R)uqi3w@&;;~XmoCU~CL4be-K`;a@IK+NTYkB2+X}a( z!biYs?m_!TdG60CIS)yya`*Z~8?^*GhWo6=m-BjO^p>CA8rmwqU+vr4z<2C21Z@@2 zIVNqz!_f};{WC1W`j`W8Bqu8=i7d%7d?D8gZe+G#UqHp7n9K$9s4BYmUT!>Shs;F; zIjm0;5Ngg+0U3L5$ZNKzB0x@LLJL!K8jza+fdnNEjj1c>Ghuj&lENzFh3(PQNG}ms zCLuj20fc_Q9zUHj%5MdRl{{z)FpTB(ktI-18KKzValAzP@jXkWg6RIaomjuOgZaE0 zHN)kgo^*ZaI2wX5p9xe$?n6(Ao-564G?#|kc?`9*r?o$ykTS=g8cPz3ja#ISeUO{s z&&f3P{sKVKqudHX0GyNd1JFvjJ6L?MA=}g3yKSWRnAk;VZ`aITITf3Of#h`QgW3enBpQLuyOIgVLhQ^ z0}L#=DBw6aL7hjnU^ zU#)l~iI6nx(|{V)Uv9-zL4dd(81Rr#Y`=MS;}NMUa_?E&<07|tyM;Fpo38m8uH86_da0!(Mqy`pxWIjGrZa@+`QPU)}nMn@}yt zXkZ~cDJC(CPrtdJU45nJ9~)QW0Bo|$|^ryVOM^!79T_2GuGli@qwky(_8IIjkWkk zw4iJ){>x%%80XnxkKgMq57H|oAoUnjOT##KQ_&+$voQ%;Bo7$iMnq-6fYEj}$@RQF zTzhx6P3`dk7|4;IuCyzJn%I!+fT6`40np#;gOP(FJ_)0J!`eh+i&ZeeY z)n~ZI-hJ{CIzqyM<8+Z&xW-oHq7`ysg`ij=sMZVR7~LTzA+IgBXH|L}HF**F)tk#; zkTs`b^_cQ>6qs5Wm@Zo(bTeN;10&X;+zUiFV?vet-Lt8tfmOMJ8O){}0io^Itj|3o z;goz3{zs$5glhKmy-J4DDuT&0ye`GhYQ0WKaMcXjuhU=eg~9M)6tJY@qtd<~m9^A# zTpgvj_SdwrdN+|^*2G!yd1DKZCc0%&ihaM{eiUh|O3WTmD7u?gxrFbpQ7T=yiawu)^!Q`d?UuK&cV!#F6aumP@SA)h^{+(Y*Z@dZK%9x=qcA0ZTUJ zbjCi_Ri>Z6ofU~(@-;-#i{cJ7ua)Y+Eu=p~nSTo)t%F}lZD6U%I^Q7L)7+sBZ>8R5 zq_0PMO-E|kLAL@=WRmF+e1;Ol^SyAjxp14=VZ9T&L0${1ZmnzY6#2pODf0G;XnAb8 z3%kcZ-v*CjH#;V2`##~{DyL25TnFzu+wtV(33C|If)W#?MW4}@)pjR2-Ckyun-58Y z-^9LOd*V4fg80lu)+yc5@|aN^0a`$Mu;~iTD7g4Cg34Dz1(h;TSr$g$K%g%mtYu_$ z4e9N|1}-SWiQzdwxN@M6p%+IYUJzQYgv5%SYz-3dMc;;VyGYH~a-PRsb5C5NDK-1d z1!k-S9SO$%y_j9V`Y+cJBF|f_*MWErtUlGVn>Nmd!7~~hAquY%g@>YWus=YeyXJu~ zL@szeAb*cma`;a6vnspM$q2upZB)^Ct(iG&VWKZx{!?-Z`L7}Sa>-5jg0~~9s4`ad z_GD~SBN)6Dh663FF!j*1bJ(GLt-tnjEKhQc&>h%UQtkUQ4nnt<(D{^TYVTpBsV~>(49x6w6O^4>+oSvFLzEN>f5cp`H4}ozlUJ2 zj51W(-=PoSS_if;MqTfa{nQJW4EoDw-vK>NG+}fms9smOO|>KD)K#Y1-$A2bgn8EG z={HoM2jF0&ah8{bLd_hv2% z)FQjq^n?`W{RoIS=VFUoI(Ucs_o}B_HBDq^$T)GH+Qkhqeb_2GFU#MC%^R zpCmFgEK(6~MeKe`&RZca@bZFBFBlCCpN==L5Re1uoww3tZZC>n%^P`_tQbG~01%O5$87TZN3Fi?4XnQ7-pkHOmtlWjB>&D>+%c(t zyvx|i?*fLffHXt~x5il2`~+19jgS_4pY@OvPwS4*qqdkrLzmfLok3!}7#>FIth+yr zgA@h#!&3JnNhkG8m9cK0p@zMw5e=@vE+Lb5+kuyLx+q=w0im zJc{19Z=&d5F?bMVe$1v^(vz9+&-zJV3XTUBBchB0zQ8-&@P9$y?wlffw{Indi@ok$ zP_BhTSmz#rqHXf|Evy1v=OU+n^rcW1XH!^{T?w zvd^v+LUS;FlFst@c@1Ve#?Q7z!kgozp+-3(Im`n)h!p;d^!-r5hW(r{8p90C5Dau6 zUCe}gM-cwja27J*=YD6xJq6+048lYgK|@+jD50hH&C61s*dLQoC9Ua7%oT=j4ohW> z7O&^JFxB@c57ayAbM`kzyL1}WhrQFUEUXPJ3upC-tk=P%MuWkj4oxIOy}ymNKky~P zrp&-4;^D^HS)%~!3c`ASATxu}>cfCC!fPJLejJrC$lZW6<4JbmKjbN}i6Gkun29XH z)C1X0!RikWfK}T1yX2=i<^Z>VcDO8|J$c_cX^AgLv99Nua}B$aAFVMx{5d3E+H@1?*nRPSRgMO6O-a4fkXEEllbF0gFp6j=vGWYs>p>N6LElHDf%fQ>E`vz^du+9qHl!^I8L%cv0#;!yjiZ@wC}6Qy26DbC zEDdfzTQB&Po1=wbr7u_^#4*;L4MVOrz=Lmbq18qk0Y_YEV~WDijx=e|PJ5@SNrD%d z#0`N(gNQJ`$B7sWWTt?qqCuGCMNQsJ;+ov}_nIV_H9_CCBs8%ABsCSz&{Q<0(Rrsu z=iMhd&xeL<2$81{QElKS39W{iy+!x?7(>6aAo_n8c}{`-2bi`HjlUMa*P9tiNE=mW zbF5F~3bdux97rq==}m1qK0Dl|9nq#go?Gr1lhD0PJ}4em{C5oZkYaJ^b1hf;wZl3kt?AUZ}6J$(-|p8%qD1JQU?7`p-p z$OOG>nI7p1x}{L`&1W)Kt&=*qomKf8v3HRgLG1KNuHgbfY$fzg1hF~`Zsc&BRZ}jK zW0ov*rBaZZAV_t?R8>k#N2j`wRIpVUp9+=Z!D)%}%6E7V1u(PHh{X^j69vg$^+<;A z)w!yMFtmghe`}b6C&hnyvuHo>!jPk6Hd&BzhOsBT3 z3+9~oe+=gA=lK5^&8gMC4)1q*uHq_pDY&Bb3#Wnue-PCxsvYws;*?c;B0j4`n}6Aa zYA=_NN#Y_S`3HO$$N4*}X*0qmyCUl1uy=@%sS%9*Eyf#qTfZH|;&u1{w2C`b`l)r^WA0^t&m3 z9}>Sm#BWmQ-bi}E1@kdaVW-JRtd}+gX-;(oPp!VWcpPT16%VdaondZ12a|`)&3+h? z!c^l%!)tXrxFp)=QEfu+RY3J%Y9 z{nj-!sUOy#MD${i%wp#xoDeT8Q*TRvVBD;HD!fv{Ddq05K`Wfqq`miG@g?D$-WJ+c z(?DMPtyO;id*8MOz8^0;CjDg^#<_a_Cb6wzH~7GYOc`0~O1rdNP=|(r!3)q zFEPqGNn(@@Mw{^}X|mah4=@DdZU(;i;MR~!=(-1Wa6uCqn8FaHNHdLK%4Ag zS6#z4Zoq@$F!h5j<%msn?bo+KCO&~6vGh@pBt6D%Ea7bG3`m7%olTt!shGEsp2jLk zg{mX1;Vo&2Z@#&-p3MUV6k3JiSkG3|2MuH}y9&#{Y7A(d!ZEO(9bzyhRwlq~-w3H# z1?dn{QKmOQd^i=j4L*a6eLUDxPwXwZ~jS~h5Hlps9Zva0gV>Vg+~|5 zL7S2W`JVngOCd-Kj38U^8s%mEr>;fgPKB@CyP+k67U}gfp<5a-$H3!6^^tAekXb zfFLmaaT>x|=_dsA&l+NSfWw^f(|HJpWKWYlYzxt|U>N-C-o@le{)S=ux2OKDMOv<>e|w|MEj3Y$_{{4=PZDGuRpqByI? zJ^^d-Md7eGM9kp_do0M0fFHswK*S39EiI-+2z3{)Cqlm~AosS5k* z&9iO8F$JbWp&UR(p-{*^v9NcId>-?h%GVSs?Q!Cyli}mTS~Zz19taLXsL8uWI#R!D z!`@g@MdXP(09ACHoEw$!HK5Zvr^4LSbXjp{i}#k=0V0*hg@@->-#MOZoBfj9V_%#(f}N+r81-n3BnAf++Po z!lG0$R@e>oOoP2{?cEQg*Bds1&l{X+W7bIB+vvHbBkY2ni)O+&Ccg9uaoS63q&`vU z+TJxd_>NZ*9m-#rqR6c8<5aLxHGIosqQtn2g$z2gUgQxcm+;bZMW7+;R3kLsu7!O(gU7YjKLn44|S11lT#~qG#>H{PzM=~p$QI?~f z{`j6bd@!HEZvbpKhlI>wKBC?NGwJx4;{Gx0?Vl!)w?_aOxveQezMFne7H|I`fQ(?g z2fSPm=vKhNA()SBpn=s2p@mU><0#(9fsTt8Vjk>k*KS=a_2_+~mbjNo_9CMh?$sPM zST9)pW;(?EQ>4LYz^$BX(zVyuV*Yy8C`IgIgOJ$38ZTL224mM?i;xPz%={9qf!?K< zYyG7m5PK|Oz|EMAmJrh z31qIgm3F>RzW*&i8ps?0p6N|1!m4)#%sJ^RfNcO1B$*+!Dc{e4L{mB1e>$&^+DDGo z?Ue5UTzi$Pyh<#%5VBGj_H?{@MYPq&w7#`g+S1zLlb`M;LkxL6UvbDGWDD~&Kx)tx|vq35Mt5&B01 z;~{*qkc||$zqpfyEFQRd{r>lft*6LXA-eeRg9s&7HV{fOczk{F1$gTh3&M9!Pq&p2 zRg2fu>ZGZBCnrGR__i=la!CxlLl_%~171X99=m7Nx#|{bOsHF7U5vkM$Q)3~V_ntq zsC{ztr}`laqLvbeCd*?F$jx8K!Ee<^SbZ0xfnO3StgIRuM9fz6Y{<10C&W{MsQ;lO^fJ= zNq_Nx9%pt$NhSD1ksC$BjzHevK4QI_z38m$9k)a7R#+x?o3>1szzS6+y%59_n`}X3 zx!kLYn3~y@SWkM2maA8ND@nQmlAI@J5+cpd8Ave59^Qy%V_z#Z6 zlZIS?I$%*>t*&Do8uFy*&-Dp;Lpa(+3n&BXegk`cFNA4yV#*0W=$i+LZ(tZTB zG>tye0;Hq$B7wJ)iPy8rsSf1>8vS729f5gArd_DoTSF1qui`iu>etT2jhzp=LR7<# zRI~Ah$U6&nH64jIkmv`}aFIMM4EqSCTcI#avMprEG^c~%_T%{DIwB`m$zv<9krZF^ zrm5+m=(HQQ;2xf8jP`Pvr-Ju&xC;Qn8s;5Q*@5gOg12|>F$5tsec>cUXRBx#IQ|j0O1aswmrAtSW5kxtoq|0YBFE2`r=fxCjSvN`D`E8 z#C99kWL`Mgk7Sc;;w7L>;9fvbq3u)51lD+L?~!hhlU<-+P(`p@d31%S;8IjjRLiX2 z%Ur+F+vM>Te8o_UDtODsFI|UxICBmI2Hw7IU|qCC;j1Igt%34Z+Z~;0=^o z;AZk&ijfyJ0k;UL!<2|GRyq?h?T&^BYZ? zL-teXL!_YmHzE1I$Vimt*e<1c+hTwRN<)7UtI_fTQa;(17*wL z=HX5|!M5x_0;n@EGtC(o$=g;4a6v_GPiNC7)&l>D?_vYlx1O?vhofAAQ-x47VqELq zsj0k>DP0OEw?itm1CK>~q1h8#x)^a`ZE@mv>M*&4oN(cmDY*l`&~YC+(L=PUSbaC< z<{aQ;wvP>qV7oi<6PVc!Y^R>p+HRBN_HUy4!A558wE27S2`z69TG!N4)4TB^!btJi@-Hw{7x+F9ekH%DOJkxvo<(Lbt*;$B{fAGF#)B8~SHobk`WnOpkp ztQ?YqRBS49XzFGMzU$LorI6*Fw7`GBJWd%9w`c^gfc2L*h9=sZtMtKwG*xT7LrTlQ z4A7DT2aINr%<84vhqkZ<PJF*EaiTG4jz(Wl+c;E5yhCY>U^oA+M^hkd2tR;Ti5bo<2`xE>{M_FL*{Pe7iwQapQ`Z zxS9yoJDW?r0VG9&xo9wFR+eruLCW=l`&BmP{^*3OGN`3AwtsWAJhQ=#q9s4pYF3_}I*RxnmY{R$w z7s-6b{Vtzj{&20NKhQ%3_%A7cJN?-o)e01` z)B@#*n7+M~*POqJ0aIH54soS<6FSg}F`s0wvZ?pR+ti6TS&LbdAPBPdRKq|b)<{)? z>qOUfeINqKp(9H_MRSoB$GfVGEU4tTD!H3$C6*U@ zJKVt_&UwUPaIDl5!oP<=z!FJCkF%HQf8bby$TkFq2ErQ&yiz|@2S!+^rwHunj|cbo^=bfmzOkZ zg`h#+oq_0B^wuYNFoxYPbPDv0DBBced1Y)DC^uUf<%L2+j(N+T^b72``SF(7ZSj#{ znVk#`LPN4Lhs+Ti!AXp(!E1je%wp-p%_}G6q(eusVlx6#Xg(Z0Bv)U!L6dh$ZKChn zpk0U08)kj?4`%@ixQz8Q=n*|O4W4j=q{;MvU`QtQiIkM zR}$eiB5n1T2n?l7p-Kz>KsE6=SDiS-9xqg8PJ*F2nWktOFrzRtl|EvRnvOLA1y-4Q z<*FbnvdlR6lh$T&Xc^e6nIghe4DMI$CIAOdGGziqiz8i1UttY#R|Gn_>cR)pQ04Z6}jRBodS`loBLE zFw_Dwn5l4EU1WyuWFp3^OQ%755*;bX)#7YDx&jBlz2bx(RqQLl`Pnf>#e%<3(+9FU z392s)z;-saI;qK%v(H{9+>Nu#8VB#8c2Bg!SM+BYP0+WX!0QMFf&|b?8PLCoX3u@FlD02fzqO=J6WO$Ub4ZvS7ZCmYq%UaXed zH5R%Ab0IWHWwq3E^r|2K-sxUJV@1Bv>HEu>v@45AF9g_Bh-7FPoj#gxMW9}#jdetl zt@tsjmA9UTG$Zefqw8%2>G}%tH$g-;iSQ(c>JJn=eB6(DI5WcFfs+jdNflj4#PMbP z!gKV+i+XaFh-fSku8;1v=+7VH%GdeHX!e~hI9LJ_Eb=?HaP0>Q%CqWG_WhMQD-~1w z`j*&M1wo4g$INClwJI+qvS@pmcrjLC2!W;Nh#wWmQn-gHF?cNyVtv4Yt#q-w!q)TCq6Mj;m;bFV+=R5l>Y#++l(KRe3xscTU$speM%=UawHwi)23H*>|N-o#D1 zvR<;$q;RuQMHCSpc=b8^LP0KUyO8Ym6~yiYHnd(}cqIgtXhCIwNrguT9hU!ZQ~MWB ziK%_d)l+*9F|}if56^E-JU&Rfn73=>B;q>_X4p5$kiw3>=;W5Xl%p*#hZ;LJ1((dK z@bTMq?V9~~e74{SH(K~UlfJ0M^@3a1oko)deMAibf19|;{>bDe>t!a_OwB0wZHOlU zKtPhPC%{uqE^Zc?rZ%#8n$5vPnwXP^--Yx$dhYE`RW)79H>z#tb} zrfL%Yd~C+13U zHILVtxAfHa;_F|%iyJY&ggFY6)Nl>zjUuF(mHV$jxw|FN2c+ zu2TqNOOVXc+v%o^`M+SPAzJ2$u~sx&Cj0Sl%QWGp=}Ca-xi@MLPl;*Xd7xT#!+(`YDE3(IcFLGJwUfW8BLKe-Qgvd?Ao{U__VKj@Vy*cA@|Y~4f)9MHTz zQ5*KH)IA@sRat$Z=*OzeF|kGE%kgMSrsNs04WUI$Kd(qkVVH!wSUfG}B%8xzIQ@p< z*9YSqsLNz+&$m*qenoP)-DQ6pN(*Fv|1onklclkKM+A!yr$CgnzTZjxqN^8c4}K?E zlLCurZ~qsxs+>Np4D4#<-$^CW@i%Eh4obb7lKQ~Xg_ee~OG>nogVHT+XQBvBr8tV` zRTZHI@`8uRhlTCd!o?pSJt(!0j-KE6nL|?NhP%L&KIk>A`ymYL%*KLUv@kYLRv8N+ zEadOW4Lm}{9Th*v_-Y$E6i+#A!Od#!RE|4*m9oS4^BHHi%el&Nm^sRq`a7j@@Uc%@ zh8y#6a2}p~A*_>VmO1GAGg@BU3159%Yq41V1G0`fRoZvcMlX6P_$1eD zXp?kL5%Z|#uOud;?B3n$Fq(wMafWv0W?^IbE3IF7@Jl)U=vn!$ADxpvw}y5&Dvrj;$?y*DfX^?6;{1~yNI-XwJBIB~I92Ex zd-w!Ke@!VP5)!x;xb?^14}zX?5H#e4J@GX+>Zrq45hEAuK(m*__K6C%09YKeK`w+M zKM4nq{5TFI!l?<*P2qQP`Vla4td0?o{ZUT-7MBEo@@MksAHY+)1aJU<$LPLS_hZoH-co{_c&DVyj8sG_=|oN^Cb0&TDUuEo3GYT zW@8s&ydPxUEjuw6H+ekX)E3qBDqTIDCRDuIWJ+Bg_xJkXf5%&Z6ewrBTeBw8z=eX- ztVeNcJrAeA$7D!g9}o`VBe)jtH;Cjq^%~QcdOcRj!YeS4E?mL+Mq2UHa%m{G)pBry zFa35_4$VQYTWVa;iTa+SaH~`>TXgoE0>o?9QNn9KM<%%Z6tq?IW`w`h<0pMDp5|JM zMAemp!{KCCI0I{2;RDfJj=-Hc@MC?Ac;()?O8;E7Fx{nWPStuJlUhby)*Q#ADIK7S zn_7(qiDe^>3#T#jq24fs)NG@(_T zsZw;Iw6EP;Uuh48O031ZQqa!r1{+FyIOct9Kkn|z;8=jo-rN;y_P8$lw}V4%-H!+s zEYN=VQL;r}drs?oT(Wj};2bIVCb1EjOKygw>xW(EzHC#FvS8>Mp1yx2H8({_Slun&WhtPP;0q?c`L(% zK5Y5U_#&g8<>q&?YRY$YQJ!olSLc*Dkt+x z+#d40G!TeBPA5cWcCE;wDnaMS7SYMvIc-njagfumV_9nD5xs6h^%%2f-AAMCfE%=;C)~$kQ+Ak1D zXAUwX=-s!NR@ctV%3T15r~OU_LNcoS85lh_JQ+}5chEq-0i6eXa8I<=r+xOb)XNbi z_~2q+LYsqXs-SX;<)c21;P!!Ns$t$bOO0Zj*;2FW(vwk5-<*$wnj0`H>z_UsZ_%Qh zF&&=yMQZ8|Nzi<3`WSt*W=1*vReDV!seJ`I`0u0 zo&)0#GOQc~gVst6UHl8~p&y$;J`~)Buer*!@>>EiS12ua(ivyPiD;*<)=QK5Pfkt! z1^e&cKSq4-7#xThWDB&*aZdUSb5OLycL`$XSvL#E{*O2UcVOB-cE-^Sw!(IS9{SSL zoo~2s;`(vri(I9!N?!(CP)AjWY7OU-OKL%!4OrauiQ2lVh6Iu~5l1wlIxbQ0?X3Ke zuN?fImFKI~_(TPX3tVxi?9_VKNYjO?HY}f~amt_C0@p@isAM31C1{21NArBueKFSI zP+xi0JMXj5|3bqHAlIU;9u+6=zyyv0&^<22^VSui*dvIC{R| zmpBo-N4Ss21vm!K!YiWBAR3-#f48pnJ2VWKx+7iY6C$wL(w%hZ=&MK%`{=6r`Y{`F z*1H3X@$LN$>Gr?I((SEn&+wZ7w{E2V#eEs5Se;5Q#GT|uFl)5H+r^p1C$-(Q9dLao zDqp`uFqj1!6rNB)V{Izp{9nMCZ__w_k*)`7?kd9;i`M>>)Ta4I|Bl7}$1c*GxFSfH zueY9(a_R8WUL9;zr1v6oark|2Jw|M0*bBN$PtJh(1KghbH<7w%dy!QPKvAPZdLo-&u zUIsM0Ao(393PQNm55waOVKo*dm?&;yjI?$=AP#c{DeN3^wB_3J(^3G_OU60r8qNBv z)N){(-%&>h4~h-@lNjM*o=$*a$;%5H(*v(I=~WL68OhjzKMa}_`0itwOLlD{{#D^}8IA&Y)!I}6C{kuFqWpyWdp63KMq)zObBKO+sd2`Mi4pw1NE^XWyJUICWygewr`4twa zn{W#oX5#5UA_gnO`v!wCE_N9Kha}>~+gE{X#6*IjB7&{b1b;U>v-qf%8z)v`&s+?T z5ZS+;Viw`6y@p8L`Zr9$bD1oFJq1S%SmaGx8uTo`w$J+yaZ+gBaPxSUMPT ziFj45;cs{$H5Ct=;$oB#R=*s}{k5*W6pPV&g5<9m5=gn@p)?Xg|8)Gesh-6SbvdNlrUe#L{@M5m_v<+vj06fw6w+^17P0t4ty@{7hyE^IGmg?pu_?7wmN>90zv;AD z8zff(4)hyxA`_Qm=;Pa$5i8)Lvy5r7w-&_4NHy0P{B z9dPyC`JK`3SULT04Yne`mD9gq=}$T<-O^M}-$acg7hL&WZuX5f?yS_lI~EY9$b^@Z z58>l;IeE9dGjvoQ_r+Pc*=xk3oPJUs9hAo%*4{iTEfOOrGvz$a#L(cuEEPNh!P66$ zV(y!JPU_dLb~6RN(o+;mZ$N`%it7*6ONY&r3)&awq)x3y=KZq)t9|=KlXNZP51it6 zZ~43OysZU`^t~B|@?7~MOM2@R2Hy#=Fb&8IxLS7_A++rUTIkM~OTi@T&Rbhk`T8X~ z1!I7YWLwbK+me(gNlGvK{uyInQTVjrA5za-p9`x@5>@JJ^dxCjmZjM}XxmcmUQt61 z-cMg(e&hauUhu)*+Jy7c;1~_+ReR$+_Dbrss88E>UV2W>_}x@17af5`<=UJJ(j%ff zlC`LdQrongpy(4QG|z9QLKEJXJa}Jn)p*M?t!Q&pvKJE~4(mCTk7(Gy{ezK`$tBoa zfpp%AMQJm{zwDK}El)%qNXb@6Tq=J>TpG5;w>kow&On#zZ3DD~hg?Dy=^E?toDHcb zDfP-?$ZGluLL#RlRvn+J0V;`4KjByWbnOY& zp^2k_Jjs8V(?(-QJ!!cGDR>N&rW8XDd5+qnXpd8O#z~xyF07}VfrWiZ zn<)NrB;gk?-V}d4vfvjPJ4joFG)R`Rf>zCnKL&|%I+pC-MBJ5-^wDGZjWHKQ!!APx zd8eORDF;7`@Kaqu^yF^ul3>+e-{Qqb2Nb|Zy(vS9wXgVpFx-Uo>)fX$ZRT-ovJ-2yp*=*OajLiwk}QgDVX&eT^Atp z8o!s5xamWz$JXu`q#i>O{!u1O&bxmv`<HqY69Zh_epypT5lQ7t)u!3_`~ ziON;F;SC{5pp^i!!69LfCxp}+3omOEFXM4UL}ty5?9(LVUPveVK-01gXwZBtOme!A z9RDkX(YM*CQZe$?RcQr&MOFzL)>n5UF%YEP14izxk3GC*$p#T}j_ln@3<%1Cj|d+M z4WHn%Xlu%;?fxHfo(8?(W5^lNiX-nsE2iTeB(e<1KleX2qxS0+sa0EJzb?rRM_*z? zc)9HGm`v^g`(e74UMux#WQalFqIOp;t^y@vGYP1}^`huh;`a3&{{y$DsEM$p$n|>Q zv;QIIHp&TuJ+fZc-5ZvU{1Q4V^FP*$IuqhSa)DWgYDC_<@Xq8v)^sA8!b<~>%xgIL zsRio^$)oMf3fDCMCm9mzTgu?&*(yzmL?aSflZ>GuTedWE1jrdZ~Uz52|m?&RNr=zxSu_Z zC{PCUInQ2HfXatH^K2tdA{vvN0?7WiuJ)pgy`+8**U{6*FeO>x!(+VTQ!_{9dMj1F zBMosuq|w8Vr2CFu1RrRc|Nft^;-cpuOj0>q!Gf{DP?ZM-BRdg70w;K6doEgowuRjX zQ%U(byaw{5*kEiHZzroSVhN?+Q7jw<+Jh|{w({mRp`w>eJ?I;9=$+jG32y zrlTSdpHzGxumuMeV0aa-^h`8n)`p@`o>ms!xHBx)s^1VvPvV#xc#T9(?$zEq4lAf+ z*D^Vsmwa-v(N1jP@#(c~^3H7t6NMETID?+>#Lj7ez)Nyr^!jWDzEXhZN{SY3NG?|# z9^>XE(W=IGYIXX)pK`>c$t}D<1cw6cUh}Pd*y%i^$LX*mS;R<{c}S}eLi{Nh3Mq3z zCirlOoeT$ryD~0HwWU$=O1T-fQbdk2@F~Vck_#9A)g$vVwh3rHDNQyg42@wDFmK1% zml2!03AHVa!L~F64FdPhU8sRT{vnX(h#KK$nfk~F13BSd2ZtnK!E=#UH3vasylDh4 zqhM9~ay5&!Cj^!m29}{Q7-XUm3+Q-^;BY8$jGqSA*tu$fNMM6?S!DcB{7wMNiOez= z@OusZ?N{^fHz@yk+2sHK*7`O^A@`hx3JMXaJP!qvlk zBC3auzezG)Hjg%H{=Z9wAq1k% zWY+#o8nO(W?_r6~g9BBzpvv;3f(p60oliGFw8vG*<9M+JShW};^f#Bp8XLIda2ToC zE}SUhZ;4e?cu`Sb?y8Sd1mg~C#gz_0y08|3PuiBa#yQPgkFyS0%GxRzx(3k`aFM5a zZMcaP&s*ZsUcRge$Jmrw)!t9BZ^XtIwhYr%SE{(ZsT^ne5*;}FOdd9zgI8S7;)*Bi zd&~7PfU`}5wZ9`mW#Wb*tgzsj zx{0=%>BQ%)xLIl?DQU93^=5+BcwE=A(v`J@90{1O++9GiUmP@LLwvavwPvS61ma+@ zJ%&=|i?7Y9!nH5(@r}Lnk=Ii;QFn z;rg3jQP`$V+vvvQxL0s8i)Oj?Es$iBU&Sq@zsSBJfM84DS*!1_2J+&y&}UZPdSm;H zR=-rg`yJ}XWV}+>$+inFWsg-YPNwr@SmCIJWuCE)NiN)S{Vlo~+IThwU}9_+ob=|M z>BLc&o@9V) z&_AoVhZEGL?3Gzk1#Wy>F5|DoJr>8TJ-9RY814|lJwnyiJBQ=!+;F;`3RiW_K^BPD z?BGghQi0I@{$P3S&68!&cEGEUU`X)|82FAk&LxQbEZvVJ4tmR^^9QlKtFVVDl|@LTqAKcg)aXrD1s z;F*Ad3zUX$3cg!@0InNbz3BgybixtAh~~w9w+nJfVdF*QWbLp(kib(ORIk1uf#HGO zcc8%KD%(**RCKrac!#>4o>ceYx@LJvD|kGueAf_eA2F^mhF7~ZS9y0f8YWbeR<~%d zDfzfAp|FZB8FS($SzFe;5_w5UJT1O!qujmmH`+Z0e`92S5mCY2PHKMo5Hxy)io+E+ul^nIh-;vze8`iCA}^Rl*jNjfiuTqohHfoo z^3iF#MkD?YtP%fS^Fr#mh~O3nku)(U$kW%V?cZ*(nC?mUrqUKSqDUh zGq`|*0r5KtK~ya|QT8u^WZD!&a=13)YPR1TlWJ|sA^Mg(2{*i-;BTsH85s`AS@d^Y z7Dpw;Xt_-r_iglzUA7}~blx&eY1+6WVn5z)+PJg#D?n@Ht-&~X>ybEl(|#Sy)$QK z&YU^3&zw1@L<{imrW7yFA@v_q$}J=Gw3t#Zn?L}r61PO;Sc6Hq;P0kVSo?Z75>=KlVd?c~xDM=X zcI=8^&q#tnTg2Xxgf_PC&~&AaUrBlNMpjxt-dDlc$njyfHV!7`7h8DM05-86$Pv2ie&XB#5Rs2LjjTzajpT+6nuE`n+q`I5er=kY0S7kNva2Gyi6-A69-< zT9r?FpCzd}2xHPY4>BmG4B&kdUK}6MU_c`~d>VN*M<(TFV#KSuP<;*_Odb;}`DA2o z2(h1M02&XNdm*1t2HoUAQxQaDbJ?9v>fT%_0~Yc1X+#^lKHa&EvcwFks)=o-6rh#5 z*_2dW+C}V}*FzfHOiB(v+~7G>G`Ne6Mwn|9Fi?SM{|o-3fG=Pnv+spye&m7nQgzbR z9Wmri-{WLz3~0vcMe6v&3keV_ltzYs08Im+%YR1Bs}_F#HF8O8$=31v7g`(b2hk$% zWHEHEl7b(jW6P4KoU+&FUo?pa<_?P$^(Iw+&G4f_i=Aa=Jcn(E_@Gl7&;rVn2a#ZONO5`f#YK z#@PeV%}~(2f^;@-JK)>5fRo%y!Dl6W5C=JHc5Nf}Dx&Y}zM+|&Pw>hlUZZz=Wa8AruP{5s71NT>Qo#$|&yDeOZ>(NjltGWN_7j3OBBRkyLqw4g? zk?Ydxr4X_Wy5f}(uf!TQ7FsHL(Qp<1f1^Z=-=jJIa~*2R{j2g|{uqf>HH1Ny5!h(r zfaj#_n?}+r7O)lXfE{OjD>hQQ1;m_2kMBz5h41Phqyi-}_H#6JAfy{QE3B=+eoI9# zhGw5U|2$O$52v7Dt~tCj%I-OiWd=&_xr#4>{MK4+o7I$kk&@t*gxZxH12q|hupPjj z9Y|AKvZ#h#$(P>X?IN~j1q=n7!TlNa{PG>1=V(;KcH$-89>Te@d3kWXyEat-#FIf0 zRIOkzrOs9PtXs>+P^s)rzedU>p&GoAq+TsAMdgFo2n?ZIXIQ-pD1J}-dc>4+ zxvE-l&bebF;l^I80n`KCf^;KvBN2%HI+EZUH!_7R@e*C`HIL3cVFHUsnS=$VdON@3 zb(E8hix8S>^VmxfSch&wVNl8mp=e{!_-bHtdEweAjXe!uXeJ<9psYwCq1+-;$&M!- zl-EKx8Q{E0{b$Y3hKlCN|1Wj;8QogHbQKOP(7raK{Af?c;%m{MB!Rc7atmb6@Z@t1 z?v!_g0i>}!lkVIR0T)^iZCGt`_VP+1-4;VBU==*^PcX@x`1K1-o|Dwete!_c<{y-`h{lknUx86+W!&}Ut27Sh9BL|%$ zcPx9cJ^@HQ7AXmP8K%)lK^DzI{ufw~Ndt$Kb%Afq{dAvH2>d4m1d@*Wb_(6^UgdQE zOkj0h1Dn8qpqc`Qyj8)K=y<{iT|!;g|^Lew3H&U|AwH%MX ztJ+oa1CWaf^0tH}*4*7?cuK+kqnDSWA;AS4xfl7DGU|}v;!6C08e3#}>=BmKLWnnS zUq#eQxo6PwoI7Y2B@h3)N(VCu*XCXT5K^EttXPG#(wE6We?%mmR6@%5+)6epT4=5P zo~?-%qHV!cj^UX0(Ji@#1B^C$d3hI_(sryz68SwdNyyT52(&d95;9fUYSwEy8r6#c zqCe!phY0@c&htD{ft!)DIX6Gye5eszTnBGWQ{Fm9SDltPBNVHlxAwG`0gseNqNETZ zRflP7SI?h(yG|+~Z!SlWQb38T8UE4MXl$vk1rrGY{TY3nO2Dy1;&K$8Cs@vYsL@ac zmLqs43d~ij*^VgxyO()I@71HCX}Y@cJm<%34+nn)Fh6nSYGR!BW5|V;7~UF_6dup4 zppxM6DG>rL`-THnQ_-wJQPA@rE|SGXZdMHBNwW(_L|p&-_Mz< zMbX;MOW={JMbRSWaf3gmYEd*C3`{}=<6QMbhVwnjj(m3cI7dT2jbEmM>vx9d&9H_CIzV5L|wz^M!*U? zq+6XJL{EfhM0d4N^?9Lch+?HWC!Ub<=v{=zsf={;hIK@Ub*^GC)&ItJYBf3XECU8u zj1?m=#3^K~j$lI*g+`6Ym+Iih-t{2?gIpmHHaAh|vf{@pO(5w>Z_j_(U46`NEp&|7 z2}3EVFv6$43w1(G(u6>qfu>4BUx-!5yXY+C>?^aPt6e;5;sVA5huRu`k= zx>0)_wl%gI6A$pSilpO?5^ra`7Io@-sg#n4dhXj)F9+~1)zuzYD8co_KavjebqyU{ zI#HNo72o4*B(>7Z_GUxtC zOT_c&OWro%;=3lt2|2kZnFcU9E)XqF)4MP-?Qc9c!NI)pR2(2Je9ojTGUb1RH#-?< zZ9bUJ{5t=TOB_KSoJ=Q`_xgeV(Es#*0#)Oy+i+;LhL%Gp1(r%&E5OrTs@}fyr|-kaubV%M zFFt++4f6C4Agc;?m^PXXRQq#Uf;DU>XN`?s99R=^Z&~}96+KWV4j|?XB_>6*oRSAU z9;~XXcj_Oj5wgpB36+QKMwL>5Uoopw15d9Xfz8GwRG4QsD-G%luJ*paElOwGgTP-_(s}v*qn()eVLTE4*Zao zkWOmqXX*ODeo{yLm-1fb0oj_i)ECd;U?0cjgjOeY6ho}j=S_nrT^EShA%WJh^PWT` zrtK)Sz%DVPP;Lg%OC`e$_E1Nh4_`E<{3PWKM$e|#$*Fo+rI{R9O)t-z?|%MwivI5j zk~Wp%_&r_w^_NWOC^S+?8=w6^(w0+`sv<2IHaPxC%Pditq7X($uhNpq6c6O4a#rEL zlt&A7X~|&xN2(KPnWT9s5PZT}bzXNK)|nC^4e={AB#@g80Q;@u=8gHgVNJeUGv*EQ zbMgs!309XlW-mi^nT0H~cr~ zt&dluzMmP^an58kRRc0}KZ<)Ot`vOoUyxSHn2s<2d*~bn+AIQQlXAb4<9ME* z{fsPM=S=s6u)&>$LEWAQ$a910&t(`%ZW1|0o#x{M9%lqQG73zvRECLaWx8u(K0l0G z!@lk;B-j=!$r35qN{TLR{~qkgaNH(VRC5VTkv9F1rv32?y#8x|TLI&6~VXsYs1p9}y7JfI^xh1aC;)3%d%h1~r(x zQh>^MpH-0m^*W61=|`?)vAu-0;!(_C&a4x-CYFQQs9r)`$VCul%DW^j-N9b&CD@ym zoT!U8V>83gDBmdZ!%S4{qyl#*gU~W43}^ndfv-CAXMeWWHgsE31yS3yJxq;(eo3(o z;rIcj)}=f%np_@RYZC0b+}pUGu#eJ&VZGn& zp%MivMha1v<$?#m7CZnpr3dRdQ0QxG%fq}GT8v=+f;D~sO!olT)fCFVcG@2w04sR_ z>~jT%g4M|QtrWK~2*-lGE!_$8ts14iAWwJzEd2qn?%mn5>B2*{m);ey>1r&molxof zq7ZI#KJp#tXAT2n9a04Odd7{QRq&9 zLQ3_~gcg739fZUeuS240u@_};i4lWEW(bn4_+b@|;rKY7lXr-q@rCbt6YEUmav8yN zMPN7V-2k*!sNYQf;YrZqQ10w};VTeRJ~|%9^G~fP`pz zE^9hmSgG3`$Tklbu1ihyGz2_<>^jDQsL_G$t&a(MZJ2#2P$Y!Ev6((mBX+WbBZMV& z>vC`S-W_briH^dwg-mR z(Rg?Hg(#|;1F1J2ij=Fj2W#ZUbP!36%kb4|WIJ+L9ZjkJ0G#wkqFgaF_MXGq5_4xG zXY%%e2t#5k5@RQ4?ox@Fp~D9NLUK_x;^d0D^A;M8E4c@V^2YfINGn~O&C$}~j!*tX zWW}R}R=S9I_UmZDszWu6eG+So-{PnQl4B;C7VUC=6QJyYRPcbtEvt|@CXS}c#hux? zj>H`0{fGiGL9X?8&^8OPp!c*~UeK}9SE_#+Ui#zbjrs|MqEtUo1tR(+ie4@cL1fTu zn*y(&Mn6JWQi)Y@Dzk9kMmdigC$tfw5Zh6L zhBUa86^s)ajn1V6``T6d479k&`U;K91rQpS1Bl zla^P6zF0s2=*7k(!gNQ6CGe#=@@RDkYk(As{=mPn2vA5_oKWfOsecsy1;M@|hkgKD zKK*BmU3p5FVJlvW%w8FY3eDQDu|9^1S~x`B`6QYGx}=FZuf33tq+lHqHwVF3#mFrX z8%NyqaFLEwN&dpOg5uyhfxl)X3e>or5mz~sq+O4H(?iW63(aA#7ShK!@Jx5bPXirv z8d{&L<6wV0Ep!+;f!Ht7kUcIZJMbm+=ug$5w+4RC%X{z8 z%{|Tzbe6{4AOr7n?72)~k#Gf+s*TEhGgHuMTgJQsv>y#1bExHZLnM3}OK-C?l;C8J zu``RBC?qyRXdVuwR^fi!aL9=ytB?eR!}Q2nwr>!b==j@6Z?6q&DKMVn^Vtn6;L})! z0UyB$Uw^h@qF{(X!8tyNCm1?Wl3V==UnQH;G9WsM4*Col0y_b=8*VQlG$Mcj9F5P~ z0`9Yb()8?kuRlweB=l&q763V(r&!HXbVzp^-dw_7nk2NVKMD|KrsJv)Bm1*$lZ4oy zx2aobBH5Wq!V=rZ4gp8F=9H+9$T2*pCv{INt{@E`0>C?(yg8Pxv-QgWzzws~ZKCYt za~UT1V{x)xrkIYxLMp zb9D|69YbS||2Z3&dLMD7rwjO5>7qd@af2On!WMd%v-aJF*l=YV=JmmwU9WJ?n^ zZ3T%0WHYAllx;z!P0=x4(*v@`Tm2(}(r*hpqZn)>&rYyUuQosgSX#3om9 zLYa&y{~E|X{xZnE5=~@VLwL2wUt<@G=W=Y_459HTJa?3kJL)I@E((fU2@=i8qI-%t z^2Ff^LwjK4pbI&TrBl@y(mLH)*a_nXNku?ze-9UzkaFL^n3>_+Q@}1v6WXe&*|)?XN7LIaKr}88-(1^IS+s(e=ShT&h?@^hDiY% z;RDz`5yBdy5NKXF&$zo!UkPjCUBru8a@Df;5zN^nrcnxwItN~O&z$3bs@g@J%LK9ekE>xfNd=6>7#E`}_;a9Ya4(qL1v+WFt`t5+OyT-S9f4 zz$Ctv>^!hL(}f=O;_+%H&AE#Y*;5~3Z_W^!u?f!!QWqMd{Qg}f_9>9qr%HHa*~*Z>bfYe>J+y4PGf4H8`_(RYVWi(Xcj z5*42hNO$#0GYv?(Q9whyc97tFkQF?r6pu$Gc@Y+HI z$5F7;@GrPAB3W_bWym3TI^b|`1B$8*UH2Yr`)nb$E{4QQG>P11=VuG8dXA!OHl%Po z&%mATjGu@PQun5ig9xE412P=FX&8fDhgPII&L^!ZVl(RnG_KZc?lj!aLy7@Nfz*|7 zn=|z{=;I3PV|H~tz&C37fAfhEW2!@cg2xH{j>l<~mhR|!%32{Y1!4xj9E(gGP&7PlEQ`A%hDY=3ai?KAg}J-e(Kz+9;KW!q7b(W&vC26@ zY{#MLDP1M&HFL@sDcCA!8y-azt+hUG32;~Oy;XO%!y-gg@%?vp-Xb*Xj~-Gk zttytbmttGh4+(I*kmd~Jd)j7>AB!*R?H7Way$X_!OB>G4she`h+Q36${{J2 zt}^nN(JI8Y+zejfEWtz_BQr3^tS$4MLle^iD_?^Yuw1Lqy5)4oQTwk~aif&_r=yd1 z9D=M7d=A(h0|fH%KiE-Vv$dFyQhm^k)@)7TRMu=Q;leh{+6%?IGY=8UD8j|N*zKXJ zq`Vv=fuBL}mD%O_b!wcoV0lArXn(r$@Gd3VdPSzW#``O%jOLh&EPb89<;5|Up6t07 zgy5z@Dzq&@`&e4p&+qXzN9=3!*sCuH@wWY#iTuC!&@gu62Qj|;et3b#tynp3&=l$l zp8(p;&cMBVv~V0!+1#iA1~xVvnxlh)H84>F+aEQ?NE`+G7DmxX=?qPO0!`%W906!? zx*O~;^m>Bzeo<&)y8+^Q&GN5VDwW($zf_%D<9l5?W#c2{=V>ts1KFqYX{;qsFrpvj} z9Q7_OzJ^%9+#M8|GsPvai0(TNNtIV>k<)<48H8tK;da11@xWuyQ1ROV8Lo}(wi{1M zi;pR&)}n|tQH^{XNj8Kai4P$*qrpf0=hd;u-rxg+q^0xW1S0egZhr7ptgg&1{a)|~ zc=FBKVos9pJ>dBTVFn*@ZYgQ~HTa?l*JPW50rRl^Mu4<0)?M*~og(8A3tQOHerNzG}Q8(NZwcEO24VtXK>O8$zpG86| z_RTz8BWn?cmPysZ>tl1EahUwV5MCo;o?!|pP(#AYJw?I4N#S2rxnFn}q;#cnYmu|f zYS7?=oj6qjL8QEgc*5jYi9v&~c;-!0%KbP1`#`nveaNc}k0c@Or^H^(5Zj3o8Zk zgC_%;?5y>m=@bt{WK`*5o^5j8GxU}E;mNhXihk=sy$h{*_C1uLyL^;^Je)uSyZHgbf);UouMmnW}COB z(&!?%2F1W}5Csh2*lH4F9PWXgI-=l_S~^w!WEy@EUAY>=?IRrEn@7)iv-8BqG3y&);b1Y@(#@xg74cGox0Tp zOLY!!lIrUP8o*$6JQ&({}TM73arIEBD_n(TpE4hDB+>em^2gRMfGT5f^ z98o;aP(ZQbUPtb2iu+S?f1tQ`k^4=>eVE+K6!%Z$rdmA)P#5Vd_C?VrmicSJ$edp#K2z@EEiRsC^8Vc)aSd$rHyHFUhNGrT@HkdZcsm za9edkjM~qE22X~P|CLv3GGY$Wd%7qgpHP)oD!t=da{sQl_weHRX9r_-j$j9<9UiB$ zfohkVjX^2He!=`%JxqjlWszAzv-Ur5XieHM;F35Ml3cBoqNEF(kR>#=T>#W`RcVJl za=)**d(%qmb;Z4o+ zRE;2}1_Eh2O*eb0P`nGSli+jmJ4nx4EfUvAdkKZ~&mWXFdww{zy2E^Q2>*&cXmu(* z4_9+(g1SycLt2FG9B55NF4Ex6 z%4$q+6T*@=BXZ4Vyg2~5UP@JSEmC+ARxAClN$e4u(9U-KzNGTYNa&fQBq~FJI8)B^ zlKGpG9mhB-Q_yhV2May1N`fGN-=73WHMzs86V#gTvDDEgqx++)c3aM#%@g8u`&Y1K zc|wzzZ(vxO*7qKI#}7`?SX7Ph+fGD(w9P(022gzz0x<~iPjz)rCDr1K4t$xQ;0+@k zH_5rko0o4HAA|hm8-uIF>hgV3P#X>UWiue5m6^?gkzbyP5_~AvK@4`R- z^UwD00{=e6ORqy}X^&f)MpvL&c;@1(s9{BagZy0{#@SBF;3-~RJ^uSY^#A{UCjTZ6+kaTf zCg9LO{D$L4gVrAW4&z4y);at<_&tj1`UpR|ycvKKpvKpHzG(as@JqsPG^)Y20*>4G zEe0V4_)S2>C*hxr-yHn>w?5{a-wS9S#WRZ0RY#jR9gM(j9SH&iCl!?&wOZ?d(!9Bt z!suC&oEug92=bW=$`K@{REk5lMJ(l2LA1pmt$iA)=ULEU=6$D;m!I&Tb5`Osvh?qu z`|q%z>1z?qr^!b_Fy50*)0kLnSRTH3wT2Z4xAb<%3bQ;b- zrJQ@?;<-8QHAqW<{s@N^Sq90&qX4rTZcWA6jkUgP;ZgKg;HC5B=u-WAhzfk*pn<_D zKaB+PuBLdKQ#650BpDVFG=tE%44>ri0t`{8`d+KP5FERY+Z%<|8-CLU(E_{=((mdc z;Fwy~8q06-{NXkp{#qZlssIP&ov~wwq;YfFi?)V)2NwAd@C~qq5Tp?x(0Lg37)Yku zlm{Y|fN&4py*Wz8dY0o1Suu<)PewW9&++aVv|q~RwC_g^gL!upj_%41?oL%QUV+LA z^aUkqhywgp0nS%|;T$;DvrEHfEfb=HHckP1g03;POlT7__@pBK(ElVWTP8fJ`};fA zY`HL1TgLL13qA2ERz7!@3m*@gGc!cv9gLI27l%NNfGcz#`FoT95$fB=X{lx-F!x!-(S=!=N%a~lXjTest1grJQ(@&g4y z(MKG?&mRd{T5YTw2&M;UquoeL_}w$N2(M|i&D?dj2{QwDY;GN%ecaI%H zwifc#J9bjCFn2HE$%!t){cHvCBmA9hv=-*QeE zN8t@F2xo%v{qwRgl+yRT%EKA_t=uKoz;FO{e+omi9dB8bJH0j}ZUqV4a=C|cv5%t; z!^R{o@)pz;B5%0&ebvfre+e;Rl`DeKos>7*V?E=oY|~#tbKUnV*pa`47J6^-4ORD_1whc2WnN_gG_!+EzroH}DY(^jyIzlC;b^&w}Ds|#Fl z7(V!t29@Mt+vyV}RMyq_z9m`TZWP6t{NcNR^LHMl1c%{Dx=^Ok1;b&7t*rQOp;Nmp z&>>;=?K7v0#q+>?9+m|`ujD~I@sGanB@_Wj-OE_>e}w4Br{JfKm$(Bm42}bE?(TqO z@stR&YY+{U63!OT|`$yj*~gRp2N6lsqevKeb7T5DGve*_mJ{p(_*=i{hVa4>>d1~ zv|AydWR4z`Tl?EzGNWk0NMv>zgQe}y>s|ft!oI2**2HFKKxv`H3N40G-mf?oVnVsl zqJ_sq=j>AcPC6(8I|?;@;BbYX&%oI}V*|>C@u6d$_e*b4vMuF8$BqlYEj(~?j>tDV z`zGKGaj-M3QN=gTY|@0_$oRNr8J-9kp^Xe0 z$5Nr)8?6`5%AmSezj-q2ctg0V>obA1xGAjH%~`^VZVE$mu}fI}Tj))jCbEZa3D3n& zn6B4&gXJe&xEN?vVJ__#K{R9}R-pO8`j33>S+@I@&?=PLMRr{n7sR9GN_Mna{a71> zCWj=XI<>~~qCh-jq@xH&7RV^FpS$JIk|G@+8id(tI>yDu{(`4G=OFOJNO>fOL$yK_ z<2%aPUGDH9jRH`Iy?vBE`<4#8az2AdF1=+kKHRto%!9Z>zniFdZD3nrItreaX%f>i zGs4Uj=cVj@Kn$5WJkAQ1fB%_J%cRHWZ6|^8Sc^L9Iv!`gF*`#OtRx;0W|lS`Gdj*B zordHz2B~5BL69RdC8Rs2jDpR>Kw~yEU3T>>L`wfV0krruSFbl<2QSqDopi9{hIcnU zCcyHyKBI&piGRbX)*}MaRNN=%Scu@9*HL~}DwWeculU9sIzb3;Kmz#9j zGXnzw9@`!>XZ91#nZv=g3sN>t`-yAv&Y!9{HVda<5XezD7KiX`A(%gLE1*`5;n@Z@ zJ+}hRQqy`sP@N>bgQvKzjP*2nlQF&@WdSL9c6eBpvz}U!ZygaZca*$&DtZ#YuuwjV zBdBd8lGtw#4)n_R7sA^CT?G8c--CGYfGPkBO@8LxTLt655pX_)OXm{HU;Uq0UW?7&g==gvUgi9j9Q!8jm66UKh1^2nmrm{+8~pl%I}q zfaUlEV*(C>G`RT3b2@1;E(mZ6r4Q(Zf@bzAOxKqBe)G3KcGV~J(PplCNF1n*ST#>H zX^*ce64S!+=?V?4*{mILOxnKeTNbGmJH_B^2ur&_yefojaw)DQvCflnr{RK`EKcVo zvZ-1z%Jy1oTp5!1f|R!f&YT^`5d-PUd@%@!=hfhc1fKO^iO#=DD)+?+um27a}(KP z+@_|&2_6B0`(cFT1ZRUGoZzQfC!N?roQfMdmEc@9S|>(nC$YIYF>dJFF$y(n8YtAP z=U;`IXB1fcbmiOO#N(jmCtQK6vi669(MroGzr~Qi#t;;$OJV1AVwd3A@Fo>`Q(5m2 zu`%l$AU4#U&tU@s#15@vOeqyv-=RE(sfm>fUrTkIPb{`E?>;=Z$VE};oq*4}o2?2E zcj>-7%pMCATk6>1_g@SYwYpV@*h_k`jc)oO_Ksd$sQdk(JGPGal2$jX%>8DNh!x@c ztbbk6s+%;Q?W!wo(`}l^EFt1<-L;okS3!JK!t8;i!N&3+m{XJIopP@f#KBr!+kNg! zqWFham+=BSSx+fH|zhN7sA z$b|4Zp5IbS$Q=o{L2;(DL5;-mx~F%zKW-$Z)#>;l+8WjQ*&Ad-VrJ-X{Ht*JBLx<} zMfrAkwzs=gGjU9ybOg`Ps$K%EPhm@=#mAG|nH)z_O0rI*lWy%1g^7PHj3+GuiN|fR z-aRC{T0`h2&2bCk=N8XY77~LRcd&#Qv0Ln7@HoxY=yh|zh_bYlQ*-8JIQ~v|+;V2D zHzj@pQ7I^Sx5bDPu^0FyMm!pH19A;eWydDaw+ULvzKj*y>)JidNAzWEmU1K5=vLx*ZK3a!(g$x4{kwyIH2=>rvCNIN{wv5mng~DXwFOvGix)B`Ou#} zXGLwrRodq6$J>doXtl4hi|xg=x_^Fl+d7Dg0}Lfl(v2UG<-v{_z$1kW9=UYc`UWFry%lJLb&i52M zHdR*Ge0foXA=2zj3(kHi5G$R}S*u=Rm#GT@#JgWiT9zl2_rFr!G{7L?_pe9j57oSs(O6^b=iy2QVm7`d?!3!J5`nor6RNH(*4j z=Emlm9b8K`toRm4OJmtX1~JCA#_W0mR})xlj%bD*zT-_U;P1qu%rUWya)8-{chh0| zfKS(;fe-ij)$5Vwc1S0WLfOc?(E@y=+)rrbt=O)lmjLB3=DX3GTs4LwFHckCyK%K6M&b`SmK>v9)s9IyM_h#7IX1&^%gU<+3wT5#V5435ryfQ za)$PfG4TwP0bm?R)n3F)`Z90-Nd?9d6Nc*iENvmyv&e`n(v8@NwHd7%TwT{fcs$i{ zGsAJtH$s{BQ?<8DiFZL*Yy<@1a=QQ>rb(K^&?NBRB&FXqW-o}-2U<5w;yOV>HIqz^ zEL|a0pZ6_xu8-LIu>zQ*J%H6y0WaEvONKnwHK9DFLe2{B5>ivj0D1+DIxEBI9M%X6 z&4JO-8#2h%6^zYV!$uo<+0Poqv)XL7r>~fA!|JT-8WeyEMup%eZ1|FqmX%6bFtRS9 zQYb_>!29(A)quM~vP2LR1+7tK(%AfT#r9R2w$vH0QA?7p^CLC}TZ81TaeRN#0bIrY zqTT%)jIFJB`$PHh_GnOo*-(HT>?%CK{yU zzf@9oh*dGnYls2rS?zJJNJkhxNb(9kR;Rz%xw|sK7h-~!a#Mg`{ub{_JP*;H3o8zD zCiG5dO=Z4}{g&^rK8dL6FzosM;xkRh_Qt8GG&7mx%kk}yaFl=JHy>qJ`-_igTe>?A zK>x5Q>!17Iv^i@RVW2B;7uv2yEr#L4`aqY8Nhb#q(c}m%{7P|z?@=95tLgeVlAp}f zCK!u5G&T_3R1%`I2`xQ5>cp;_#b-K}^#tKS7txBr+SN3w&>i+)A-DSA=wN@80-yJwY{4k)^-JOVO zlxA1xz?RbnA9+(HZ{;Lu_Mc&sq|>2CcDlbACB7NZYQ`6}V$LLQt(b-{+{?y@s{?hv z%y1_@B@WT*RzByR_q4cFs|%d&4tYkLpzXbTCEnqOW?hF6o?#o@c&jg;>5t*Zp?@D< zK6xwhPlgo~wKGL^8l2>Qc>vouQEYCTOA#H|v^t`mgR>ChipJ3|(5W8)pUbRug!YC5 zuL~MMce3SSj2xDk{vCk#u954ywD-i}8cqV^IIgq4@LSVDXs=^w32kIZVU3m_1zH@C zmajn8s}@{`u0A@O_eOLq4WJx-p+6u5wEajC!UyP;x0rTQ7m*`~>21UvDU(2$*)EHSO;)LxneLcmw9?rjC=Mf6v{9bWp<0vd9-8lfVr$ZpQH8K!t z*tKAgo--&u0G|xUMa~69{&UMtV%eM7SlR8?u-B%D^_$IpnsX(_K(|5*hGBwF^FiB= zPma9H4ondfZI4nK2S9hhN8by<#>XIh5~-%5dG84E#%0*NgW{b*-HBLY0Pr3F@*k7o zrqi#_5sSY%<)(YhDf<*HF$H%65jQyxap@5HoALZ8H1}oVR=ObZ&ScM)!0^m`7^MU#i_1dr0bh1eTYq|1+Gu;aR9x2je97} z(-QyX9(|7Rm4c-+sJG9Zpt0bQc!m6BHWnDMN<<(LY9eVs=`KYCG3_+5r;dHedQTI( z+9sYSZGcj48u*MSO$!&+#ZezLY`6@gz6{drPC}0SC5`-2Bpm|wij!mE0PZn}X?8*& zan}T@w-`i}LlLBAPB`hB6IM7Wd{P0&f(0WOQolc{ARWCr4;C$QFZ#1k0xL`i?8F15 zT*yi(*(+g{Um&cJ8V0Genqg-sta7MQQFJ$1Bg01sr{pX` zEn^=zP{w&#yo|_PDc?f`M#=J$us-*8H0}W^ir1IN<4XH28J=z^uQP89{zE^IaSx4E z&<$2eFMIGlu0np-jjD4g4bJ9oaYeV#;+*;$3#zLKVp^s0%nji6ng_jnM|>YT!y9k6VzKa;8C z*N2_W4H&OmI-kWnC-#cz)Utw#oi^XkqDpIB@a7oLLXHY&3!cNN-Mf@iscEC~`B?cB zC?C?5g|N-^nN(^zNgjU904ov%BT_OkG|N|y+{WYSQmX6xo~S_ilP_-L!ovCrJ?93M zXXW&-0N_jEW(Y^4*16F(Tv;|HihKmOBw!IKxcz;55EKqv!Vt94ecR``1{8q)6ie}w z&lvoHP6|AWK*Xi#p2H;o3wVas zB7&8wuqlAygx+2$T4y2tI}~>K8zp|a5`QVd+$yX)!8lR>QX#FCSkNtWR$ivUFvQq2 zI9YzjVO^Ojxu07K-JhFlv)HpA?a*GCAT8Po2eMvC2z^q#hBx$% zLt8?5zet4^!Xo(@+#)|OHno*(@pqQqTW|Zk`J1({b_Yglq}=r=C8=+PYPyV%q4lG{ zQGqL*(vEkaSY)Nsy4kT;K7`8z>e0CaG0H(T0<`*(kA?`xJxUhWaBSHqfmsXtBG5=H zPd|9uM*NWS&-1{oFlB7Np_LZn8X0mhSl~)4_oAR=kM`|AWg5DJIRJ%en-zoyWO!BX z>i;JV8H+wb68qf`#9}#u zU-OF6;wRw!qFxw|v^Eq=_CfFwub;-V5;I-NQ~92v>Bv-+=IR<`wwJ&J7?oyynNqot zk~`z1{YH$ms3Gsq2FK^1wF_tk-6I#k-3D$VX@N!)hGF#_Mmx|H4VpZ!vS(+D596X2 z+8JTv0*%8gneUn%+}aX=W#$yzVbdii?LDDcc8z4mbw0XAK5DER^`T4{uQ&^>pJmW` zjUhKPJuVFD%%r>ptYWsfJCb4~pq(~U0s29NGz9)^ zGVGUEj#DAx1nkCWJRbJW9C2(0kL{?6ZJ&?WH3*n{paucCRs?#C!1BQA@O;YBEn?DO z>t=B1dL{7S%G04muM(v^Dk6wn`Uz6=+?;)ap~(zqfc!r+`;v**62m!_W@wwQ<2C{1A4|56yLXb>Cz1-e5|cABF+JrggEY?% zQ2U4Lz|CnDXYtuM*cI244qRPXr@Zm$0TVaEQ*-x48dC4dxj;sE48W6}bxLFDkCVnC zWc8gqRSmMmQV-ACsgZKYbY4bgxi@4|L7K1RZpJA~A&xM*rl-iW@znnNIhUbT`n&vK z?}bS?s!=kCQ?dMvu7Zp6QKKT6?ukoREK$r&KuIf{!sfpHRw zFv!)YtJ$~L+oCEQ4GvfFCAvO$kM_y8o|1A;^O0}1&z7EYb#{c{_+e^h|Ajq7;l!?#Mi#~Pde!JDw?ul=82PSLm$F6<&V!XcsokD zl;c=W-@pBWhBZ6E6s&Kz_s!UW)55N-R%D8=+($v!LbK z+B2Z#Nz%TbfQwZ7T!=*Fy@JH4j;#IZ#$5pseVSlo-A!M)0&6Qi$@HgI1;Ml9G$ogL znvmCJFgI4#xa0WY$;}V3z9%9$tyFv^ z*l7QyJCZj25C;iBjwQ~X572CQ+*GLG=hlVNoC6Xd4uCe;M~^}27&K20z^ci#o(3}8 z9zKCf`I|7q(N@J}-Oe{B6!^3BOIgaQKk7Gg_7{lHcQ`JE}F z?@j@s(7+lqbHN0$O3^^9}Is=?DUo10DR{&Dl2? zs}5)1Fr&i<)#?sYHs#kB`#oYG317eu0|xTfDyWkJA`3k`IS9QQQjSpynD-2**1??3qt2o+x`G>;_=tn;&TP{&Sr3whOxmAU1tAf0vLN@r5<;t(B zpn|GMSt?{9AlX@E8Z?JDsjFgWBEb{<6cML9aKwqWmQk2@aN&HaTC}?|e(Yc>>nm-y z6zYilnd4FVED0eq7Wnq@F$=} zH&!hW`Z9`GAV3g+?z}Jxkm@6?61d)+S&SkV+Rq0l%o$N;4j2mc=J+}w(uJtp$^`<~ zW5q+glE!Ws$#faf zYoqM94`4>cnj2aYm19iOD>T;gHG6B37-8$Fp&O{^R1IGskM)rDi<!)3erfA>02yi6YOG>x~qQT-j2&zwq0y& zd$U&bv7Qz8_GSX4s3l23j8||1^7+aZ(>!TyJaH4MS z@o%}u|G_H`j!0=0(5UdEtdamALIS#RT;N=^*d~6w0 zH<}eWM7`}X$Rpta2&duMr*PjwHuuSdA|`ofI}$t|*^;>?V04l)q-LNt}G zLmPx3vC;P(6>u=HL4zdTNFc^Pk(3&@VmEy-Z*|QV9)P%HR?;y34Ze~({QB*N5SQ7{ zGyiP@G2pDc`z9N?M2xo?d7QDH{MT9a!{;)7g(^oN0{#z*hSQ2e)JWVEY7$U$M8wB-@*GYBmP?xVC8~t#oE0d zq^{WetYt@?ViVg=MAR&t?6eob0pS+=j-Lo(nJ7QEUE$McHGgOFoG4D3FT4S#zf^ui zDJF9N%@?i*&{#eoEymgncH8v}j|ORA&fNsL{`kw|>S{bWK&#$VsF_$_Ph!u!A~v*r zA^@>d|0$yRjuAV4s8q^KjRE4Y`ju57dw2--h~P#lH7_Di$qDZqoXO9_3)=voDZ}v( z83}M2uApPdNl1xgA2e6_dzn^IzVMWBbtk9?tEeg75Dg_1Ux)ZO8Qt**@k3g*7p4*6 zN_E;_;U6chOPxDba?gr2{PX&Hd~n!e-yy>ReXgX0Ik``B_P9&zWm`KIwN9(>5`^(C zjWmfTA5-G^!iOLVkFZFM&|8V% z_DAUGkMOb@A!?e9qj(E3&{!a=?h6k=Bs3}5%8_lDtU-s;>i`BHaLhe7F2ixv+rznq zS{0g4=^Avy)7bBAW^_Ms#oHXh_7U=?a^91WSbq6$>dzJOYJlhn3XhyHuVd3&^~Z-umwp7VKx}7S`pb%QD4cX{YjzBXfnX-IslYj;6TH|d>!Fv1 zLi&^rSOAyCT&SgmBX>FmSh(Oxjk#4RF<&bg&M};r{MLsWW(mKqRrF4OcM|ul4sOb` zN?O%27<+sB4!$3?Mwm0_PnTy~u%ZdW zV_QjsIoq&IjP3Uw9$Y|stUQELp&QZFhtWA0q+X&84apv)W%d_&7wbbF=R)iUA&L4P zB9boC-1nG%x!5+^34fp5aw%^S9Mbl^>H`6O)b9%YhYemXHXD^~BFmVlyx#)BCs*h> zRF~&RBtSnnahFq@4PAMh+KB4wAJ5zsSk<}=6y`;%FlwDTt)2vIPsq7)Y#-xr??tGiD=kgAf?UgYHHA+kv-mh@vn;m4VvH%flnA7=_4g@EMx z_3$C3T8@lkxZaSK9sv0!#}#jHp~f{io4rEp&`ruEW~4!k2M7CIaoPi`i$!we)c`vE zISq4Jbk6q4J?Ct1vSTa6W>4oDM!?LKMKF-DD=Cl8>J?!Rk|K7TDgHIE?wPdA$N9r7 zdG8-Egs_v^zG7yq2JiM2gyZn@6n@w7BeO>S*2DU&6!+^6UUS!3CB|!Y?_6aaR*SuK z&s=5Ct`;A$wYrK?CxDJ?XcJ9umFnLI@m;w$&XxNhr|*Ltybt2O5ArYV71oxCf9Mu% zbT?lkZVb|WzusN4PHa?1w|6c3>0jc&CtvQVhgqd#PU{K9mf6daavVp7xG+)4-NHzy zB6;*8ynn@%cUfLF6h>W3gUIk18750})PW7DFh>A{EA@q73=YWrmS8>$4sF8LyeEpI z6Z&HG;<8V&8DsE4i6gy|LrAgfOB;?E0JUhP_q#4b1TvGaC!&b}){h2l8LzlfA;mF_ z%uA)s?-g>OLUaNrdaTEqeus{}`1rwAye~EidHXWW5@S6X z3)wgCW8bBEJ1k^>!W*o5Ls{5|VuU~NN*4R==Chs2#GDT$QNxvRK#$RZ*`lV4bRcM;EZ6)xJ*`u;*=wm?iH154=Ucb&GrUjI zWhc95Y!L&s(et`eBO;9u$E>h&y1#q%Xu3}}A7#t7;=xQ(SNE>1;!v&bY-c8I7n^Ip zV(qt!2~qjugEjQJgbrTqH#xHP?P4R{`0;GiT#br{j)*!J zPns#}$YA4UQre{(&n|5jXX+f|*a$c18#9hAa^qpmQ5I1sw#27LAtX@0Vh0Pw-G(DI z%U?BL%P#_si5k~9)SWb+JgEH9hZ)Kb;l(e+J`t-vu8PvInnha=v4_4C+at3vUy7C5 zQEbExNOpH;t9FR7^$*v~daUQk!>nuv=sV0V?+{z#Q-7z}y8fZskLc=?iN$=yz1a?@tC%ht=%JD z)Xf~hY(;1cO-Ha3MF>5>B8w4vfL$&Yf7ZnhX9xEJx}VkCC(63=M_J`Qykp$UdhZvn z>Glj&(oP%7at|O@F*|qwX^Ys}67eV93xnC*QbgXvc9)7j*uJby{G5CI_T9C^ZTI-6 z-s7KmkN@F&{N7zP@fk<5#s|fEy0U22`k?qz^yL=+rg0V)vX+O$%z!B^>M~V?o)&)bMV2NP`fVR5J~N=-iYu-MRi5J^c* znJeR*tXJ?%jq(#wOK8mC1`=iD%sY-IyjV>-)^lVB_Uv-(@JN-m>!NZ0E_|-y{jMEW0@T> ztET?kUdtm96&C7C_Chyz>09<%TH~nR-+L{w4|iJ_g?_^w#3*w!8_u@?%N{TvPdsaQ z0OQU!EjcIE8;>SvZ4JG{K6E(O>cjR~;v&Y?&|Uj1)#9q_@b;Z(N5!fVDgrL`pmUs> ztGagT-|VwI)C6E8R#^8t%U zVD28P63Vt%z4?AiT=>^|>V8YF@b&t_{g%E}*Q3?r+-U_4D%_pJhT5`Y*6QI0F!^~$ zOwq_E7mNv;INDb)0%v@CR0wM;V{Qxu!LJ;rTQPOIos9aVYs!y6@pk(iFx~1he8V!U zAhOu*sxAR!w1!XQX(g~-2v~YAT1@6zotcf>1BD#vEnsybeY{S)PkD~K@FRJgjEm{{ z?_ZO1umUl#R?aae5E1Dwj8n_&#uvilahdquAo!L2!0%Gl;2Un#u8j?rx#|Mf{c>SOyzE~e zpuLK;Tm7(eQ!gB)(0-Q*$yKvyza;Giw4avtd$b>x_M|X`|D&`|=r7co3%BT0`LH-* zMC7y2uXMPFfqRULy({G=FB-uj+%DWAg6J_j8o+d`W$+DUM>rtk?F}M3nj<@IH3S@m zgyP6t_VvjXvX4$KZ)72;5}iJAMIh!0_rNVn(1Ih(H+3t$?miOLlo_=W0Dq*f2c2do zn1b!3&x_ZKnOxodA4^=1X8%=&g;`adW>(&L4KrkIhjWsr5 zVL&V^NavM}6`S-^|FN`>m_A>xa}ejD=dRYfz{GjIXAW8tT(8c;NQ+x$v18V|56d+X zSe!tnFHq)T@{)sJH=|2BhWj{y&{NE5np&`PozQ|#z!~KZQ+-S=_!0!a(gOHhN@aY* z6a5A%TTx?mMK@P#kJ#2s@w$G;{*EX_!0462L1QO^I3R`RDNKp8LqbSo6gFi7-@c$cbj10;D z9_)eGeI#S|6UqG~`4^LHGZKP9e0#ebr(4wj1Zm}hv<<-dls)*G!S6L4G5BX>@SA}$ zu5&Rjj)oc^Y3c_-9N<41Sah z{xP78+gyj!)WIdljb!kxNIojbZA`Mw_6{LLzoKMNa z*9<=2bj0A#dqnEL0?Kep{+mjWzml<=P4d%{Jl`bSj8?%QCJ?8ob8fNx3CUCq(q0A4 zr+D$@&*)g?hJTkb2ouk!%6ilATZh9Cjdl-Mj9*uaRst*ZYG=S4WEXY+53Bw8GAgbo(P?GWYZfEcCjGRosfe2sRW z@)Yd+k^Gzt(ztklZ5R4yc#ud;FUWqcIrPe{(@3(DabCJg#JLuEo`FZF*JZXBUQqnX z19Y6L+`WnlJUv=8*BdVhyJ)Y^W2uMj^=X)Hbtk@|_BtPs(Fa^Os70bS65ft5irb+@ z{u~fn+E*B;rY<7!Q`+nM6b%4>q`w6m%~~*V04)4>Jk)}1>*eD0#YZh=hjxL}UaJ^zgfO;IkA+(G ztDOGYG0Q`)rsKpXIt|#T!`C?h}(C6m(yGSZfPHxa-p0) z_IJxe)!RL0#?9FSPLF1chAS1WzW&|PHgeDTa{4*Aa(&yId;YJBMC|U4UH^$@+~YBP zDy|($h*68x2nQoia(0h%=|hEE1uhi?mZ&PA!JSHXPTGCSL$LEla$BNcZuwC^aNH92DA#0>kEY}h4*VLx z8EbzmDLD`zIp86Q;gH16i{l&J zl7ASWaf)`IQV4q>`TL1N@(02s*Gdp zI(EOboeKgw^3xlk22`dJNc7L`npAsZ#skrs^K!EHhFfh9QdmZX;s&6*)ux14 zohAtjtJ8ScjJ05DRy?tUA4G_vHZ2c`(f;Xsk-9t8K`g_h_>^MU@v9@~S4fAuDKK%# zkr-6iZOJ~}KB0WvfYE#xHn+}V_<$ps<*^7737kicL!@t+K>u=P`3&HB9){XK=7L%6 z;LJmF?{=gF71KbJ7yS=QLgX!@oWAuBoP9mllWUsSQL68Bz3bPMd(~u)UxVpZf5A5_ zGZv%ODoFJKK*mUf#DXDCO`$O-ZvSr7oJVEFQtI%HR%adPJf~CDk<=PTWYL#*YKzio z;Fh-HJl8;2W!h3bkOnzVVv$2TfL+O~CB=3mW2>mazGx5U4sUCpheJWw!;EFSAriUx z=JT8eh8YflVd()?@IWxk=_fp4gFwG{1c2voq2kkdEsnRF3+InWXdEPrl7twEcfw7) z)7z)9Hl+(5B&)DBmSHY^of+2+!?SdO#8%)iBUd5^YEy;_q=?-li5#s>86QH9kjP0| zw=O-AI}hNlNN1QW>tk^7Oi2$Dh=D-N7l`2!F&c;&0x>>pI!@nAnG}|hu?Y)nIKYJ~ zG3JEnt4?DF!AT$zuNTE4bW}4ns!B~f=|hAywLCzhY9Z`Cm8!L#x)9z0uGua{hfJHv-T8jY_pkixa$^jHw=rR z0e8g{Jb&DE=1xk-L5h-{CSQ+@F2p#@*JHml3}KYz7wc$IPLFT6GwE{XVeT|;jf*QL zICGr6V3dC3^OT8xvk=73`=F5?mHI&pz8*!B&%ohT*MGBlyM?nW+rO9II)?< zBTApQPDKG7$BV5Px8m`}Ta{$V{~M-T{R!VtUB3sAG5lju-&KSn?IgS(_aqhF!&U|K zL%som9Sql0AmLyc9jvC^r!0V-KhhTiMY93@Zi8P`D;Ye(eRY|f!a$*C0X9Z{if!8K z!%=+2)3WmE+Rhc_+*C8Tz}!OqH7u#I#+Zm=;J|b94y|u{?CQ2<4F*CkYf|9FHMzKn zQ&kSF;|!-4xwb>NY71AM&F2}n%n6XKk$*!$X$sGLUIup{hEHp6KCh=!uB>Xk zx?r(<&Ti8pwoNYk9{`CDym0h?Bay3I^xjOa?_aE#?@&4k>6*qv( zd%#IH_rc?q#l7A%?1nn&EGWXRhqOXqe)Oj8NGbRWt=9s%V_eJ_VY5qan%hWu1w0GR z$Jl3}21RlrpFNnk8z(fclE2k&s?cKUYZYRrI?TEcGhc zvQu$J%@!k^*cw}(%+#CxW$EoIx&V1Yxt!V-o?Q=2phQ9lkPcCX4)w!UnVbO4SAsT0 z(%ht3j5J(Qi+r-%Dxx6b>>`kg(H_X;tm_B^yZjLcv=q^#w7_6Cx=T&y`||w^INz4t zAVAJ-JEtoMvjYSR3CQn)7=7S5OXG4w zcCkWG6szt%XK5W1_6b)c+WI?i@!9ygz5e4lOPwAcV<#R~F|gYVr}w8s89zwh`oAw~I_$AlHv<-v>SC-@^c|W%w5!XA1-~%@RNtYek7)NP zGhye?Mfz;wO6_2>08_Hf3e2&J&TJ3(4d&&xMItXdkarpQA_1!DH$DTwuQUUmL2S;t z<;T>jQVTE>RT-vRy;|N?GF2DLgURdghx&^H<+Fq@Z!rgvM*y)>{s;&VzbEl$+I`Bm zu=7XqHlS$sgel(v#zb*ol32t)M=}z+=rST@0;ZB(59wDX;M{vmz)Qd*{$ITz<3AK2 z5qHiIw`WBan|6Ob<3&cOljQ^W( z7mUBdoaW~6lxIHEMM4V1UNo~%bwt1r%R1l;H~b4m$5Af=hGWUAXU?Ko4=Ihx2GBYs%{# z#OSpN9+1awzXxO^x0!`sQ)(k76k!#Z?q=$>=#nzL1jz8bD`Xgt48& zvS2+Q+~D;o#MX6#hzNvLQ~<6JSHllQP1E2JQPUi5&C$)Ta72zj!E~!@@eOfYNd|Vw zu{$_^N_fq;NaR>_a25h$s)qvsqL;+CY4<6UVGkREKuMng9L;j{*a20=a8OxJ8%vLm z)8i27(N2$yEXXND!91`jDr_^0IW^QAG0)ZaU&aktH_I>z7o~(>)rEx517~c29}-0E z@FWO+aQx+(qH`B@_=hPTw>W;3i#FnA>dcYNriI~gn&xt(Z>n%FQ@9=A zjG|}_)2&v)HzW!hAY&=G1yr~!5tR^DK)CJR7s73e%jF?T&cph+cSA!m@!s9`u)Y?mrPt)T| z(&OXwXsYlaqTuZ0`k-)2sPOQ=v1hFUoChWBeOpL4g6#IdPf)_+LGUY=Bk9(Z@E+9N z5ECkifP@Fnl#m-!BD7gdq9+27!Z(f6B66d?o(>O9+YrB;OOo% z?8y=m4g-~5t^ch=O@&ZB&>dM61t! z)Eck^deSmOy&tTh4 zs`qc)Cv(tv*X*=?2G-dHQG7XRs1Ewxh#F<365oAEbpXfrwALAT9l(&C# zig+L#kz+bcx0;A=h+}gy$eSBf-UPxe!B8k~H9!>I?_UcEmnE?h6FAhT+`#UOfQbE| z3sJ)qBK{pj%I;I?aUVeASK6_jXZj=AM-)X3(^Ot|tlt{)bZj{xuAxOQZ_>xyw$yxd zD7>-gi!sgNIYQu%lWlGIB|%igc_8=|JMiY5=R*(utQXw2w2RoXU%z$R(!%vQi}g`C zy}79=W>9SCT4CoS<~)`lIqWunjy)-q*HV~n)q`(HUemc>r6NK>2C&yWf$)qqNH&*V zMgyW8S^)v#AQDH??o(1=$Im9{j{`?{M^@`=YFI1lIe%HIy2?t=GKH_t7Ad@g4J*d3 z)xxz*;qxH)m15wjWkRKPp^`;(I%|WwXvzU@aY5vF!*r{k;~R?nGC)RqFfg@eG2s>9 zPVM27tLl$$3-$S-xlo_!O{hL@xFW|%Fx~1Pd_x@jlEc~Dp!%c|9srI)eL4YRGRpt~ zakM1yQQCb<9PIp&+z6;tZ^s+Ps#T`?lmV4`u@?wScgSN3J$Hx0VCELR!OVRTc=(mYqdV$xnYrUN<#A9L?-ZC=#=$ofZ|;y&hSG$jnK$nhpN3b@rH+%6E5#6dvDbCM%7_ea8qu%%cO zkF9{1dozImaTST*((Y3}gq=T@6$)8Xx*L8 z5kGKp9Jlag6h;(}f|fimSIDM(VOvTyrK7h184VE}r)!rW zv5>(m;^rehnAIwFg6mEkMTZ?l=_SE&EF6&ID41@w2fiU`cctf_b432t0<%X6CxaOV zIJ=xKaUMggPD6xopiwqwKNqr(q0?G$3fYIj&L7FqM8TX3XT_V~@2q%7?6|Q?`a2BJ zI7K^FDPa%z+fNky4TQ-Fx+#8txL@xQVXf}Ug|lFPHyW`;OlOcyD%=M9yBB9M8(tP} z&HipG8VzJaqFtNV#gTN~Hk)&ExWvVoGGZ^6(;mR;MT%`hmHnf<*dSv`(S{U87xAze z#5jDm$egDd;zAg4J}~A%=1(Q?r!>pMbgRYKJcr3^yiSF1Y}werL$ALBYrKr;V8t&J z68Hr$llH-9NFw%ok^B?wK4k+L&=<&gM8WI<6SERMz^S+aRKvy7iEq_s=nLSSq36PM zt7GXoSaO~RWZa!8@{%V4pCeAorUZg4<`9bmfE+W3ZKTAiLTvfFZQ4`!SgxVFF(cF$) zzKZQC%)alI3&H*g(6~gqPx%>k{zyJX6wGH~it_QD=`TzA`-=WHN`H%mKipeN56euC z55Y7G2&TG9&b;;QwbipPtU@h7j z#|3~o8{mdXaKRb8thmw?e%2E3DGSNnl+6;N;I1)Dv5pT$`iV)AHCV^9%Zf;I9tAo!Jb!mX)n711b}$~N9qwn?Rwt;-ui4xMocEaY&xF6D6bvXsMl z7c6dd556H~D+FW=Mo1+poEa=?$|4l*vr_KzWh-q6t}b3{%LibqbfYAs)fd2N9gMj;BOTm2Jz=R!Gi z!UfQHRRoPa%$jk4{JD$>ooj;OS5(TpzOjPoD=AOTR zL?^;&P@OaeaTN!SD8e1<5vJBJHi zg*ZbsV*fsJ>rW%eN-F76mk?_as}`r%9UZkt@TGIRY|H72m5pjPHR`R!t**g0l#VX}8J)q=OvfjLS0Ol&j&}etg2RA7I%bhLpLU-z z5%xejTrzq_S&~F%>Q9ZVSlg9b=MlJ~ti@c!*LZ*(T$+)~^$+RP%!GIOGP_a>cmyWZ z`a0@$R)bc1Ose&s$l$e;w~2K?B1EgXv*31Qr(WjbgTLJme6Y z2*XtQF90)DuQCpr`aa3aY4<5_k^_DuzYP@4+AxL2uk{Fx|GJi`@griX@z25wHGU{e zx7vve%)VLwTr~-x@#9n>UREH9ggb&^NagDSMO8lYfryQbE^5ly_={z1NG?kh%sC(E zc@?Y;2IB=HAuS=<4hR9frhy_?1t9r?ABwhzoT*CA$yFbZD&&TaMVd zn!#zHVOWM6SD<&cS?g3R0^QtAV*p)li$2C?jdN`(frf0a*9~m4DO(+FzGr(h&ea%q zL_2~BqTA=Ba4y4itN+0_)R684WIR2Evaw}}F0`g@BW}-P3?xq@9Ps~phLHKC8lrjr zxEgNh)0Aa!MUgLt=~k!X8xVP}I++|Sf@{W0kjcx0r;_75CRprO;|8GJv&04B ziCs+I?L~Ij(ZZ&WJOev_B>zP+%n2|PkLm}`mZ_{i6;ZC7OSG=b;gT6Ba<=|!B4-zo(#z;1c-tEOBA<2bqAxXZhfX1(9RSGf{-YG~2Ot;#= z1tXL{@qmoAlV$$sjJl>)AuditTMSgvkv*a@y;Ft!?irHbHJI4{h;Jxk4gfMn3U(QI z`A^+V_~0T&5Q}xVC?!>MwOt1!B|43GtRm9Q8rprzJFxRd@&`cCYzULj$<~<$A|;wE z{f(u+$MElB&$kc-HAJz$M$6SG)zqgOEk8o6|)e z-KZw==<~{y>6h@wJo*HtTg}EdltpepMrA~UMQ8y+g3L0Ab0MB$nz*=I;_jpZVYMY6 z(Uf7Jl3Rb6ZuJp-Lpk)Yi(Yq54Axdn3AY8SU=Fpd4iqIXj=E}UG+k7N3uMsEGocI$ zlX5b0-bDr#AcKyBNXah;0+HMg&^SuFPsum^@o0k~&gjBjI%qNhSwWEncEV$ufjKOA z9bSXOf_oE0K20ENJG=*n1*bvqE2D&4vw5+jr9wVA?OHnoR#~(q$!E~rp=?yRbgOmo z4auekxqb;o@bxqjP?2zLgn|*(4hlY3?KDkfo?2C8-ldAnyvy902$ttyy44@>4YAw> z$QUG9rhw(vKM}sMdm$wDG9JjFHQs0-SrsQ6uY9AbRtC zQ8NPRU=n%)+1=Z51@E(c9-B$)yS_!1iA|;r?6^59@wDh#I`E!Au2M$OFrdDf(U1Ee zll~NYQ#Y&&cxf!XjKZ!Jy8l2Bg!>i&_fTht(3cOYv+2aENyaK0k6mQOv7T0*Ub+cV zFH0MIgAZ0<{OMiL8|{HCS#}BuOuWtv$v$nH{rr7yk5gtzY{{)rT|FIFhuN}{;Q)6y zq$OR=ynu7wMQs7=FOG_MQ2+h1r3|*&ToXe&wJbOUOVaDFijs8a59rOV1tm(-^B`bJ z1$d~O>`v@LV}LT@80AR%VhIGBSpl|>m%?Vt`UGF6=Ha$;?4i7dKd+bbrw@mRvE1nF z@_EG0Ot>rBO~<&GYqBUsyDExOG`Rvx(GQuHcJx7ruqP!;$XAmfi$WEEJ3s-mgg zi0h4r%j5J#%fQ;0%`FMJIs41P37(5^R)wu0(jj6n%Hb8UhbiJdD!JVGj27$?H8J`x z&?m%N8@S42qoS>%hjWS8ZKNr_lQLF$Fx~1Bd_!e>5g?<5h*d^i#ON);AH2;2|2O6I zQSkf_%PXiX!zvuW@hCcenRcJjA9nt*i~hJVj5xSE^A_re_3)^g9u?`a1wAH7k9C6{ zj~fk5e=Fh76bWBdu*K;u8GaSB(`|gSXE>;9+4X%v7VU`<&sjwR~x!(3BT#LR0Eu$ET*mBW~1` zSeRHpI$ly!t^zVZa6OGH^8<}dm&DyE-r4yeYRb=`k=GuWZgnNTq5S;} zkkL`_%BTZA9})g?zF4Dlp$C}-n9XD=ID?!?vYU3F@+|E9kvs+{n%CwbLpLBpQ$b`7 zSCRfy`g2Nu51IZ*Zc7x*E$}B=$)brOKjnR;-_)|kb~S!y49xvbBgTmw{S7!{Is62- zGV}z&uly+7nv>_t(JHXo{amk58-x3cSVPD4czT=K)&>#V=jnrMTN}E%!2?Cp0Vd{7 z@ePTlIw0fov7)7X3Td|yu8Ba4wjtGQCo^R`iFajC_gyL{+R0;*;W?OSC-Dt2+y%%O zBpGsPXzMW-5WD9>WMd(+)gV(AlYn4O(Dj$Jqn#ul1`6`KM8T{_e|YAw&Lq=c7wPYL z`pc0129@ylwCS&C4$96J76XSj+>ra87S*vn;Hm(}!Bq87;sOB~NTDdy9w< z5ME$&!?st2j0+wRGR}ymj3>YmIgW+tRv*JR#IYwC9D7M{q>Q@~P6I=+{MH5#)%5Oc zA>sxkwgM3%t~v++f27wDDZXJWgFCVOcK4{vn;p{Q1%Sp)+I`9~*!g3g{7DqdF))QX zv%fh+A5$-~R;?N5=fV~5>QkQoo^LF}WwL=Hw&)w)@9*;_qW&mzHHvq zRt9HooIde5Gy};aZ1fy>pAxI&T`Uesj_Qlztc~hK z02S;mAo$PmCM$#I1!1lA<8jui3BH+}$K(&8zgWzO*s{BUYf&;;_Z@*tZS>f9YwaO9 zDwF!F5&sHj#zPlVq<50|Xo(l&HjD9V5A)P_Hw>qz;CL1H%I^#!<8g%r12q?(^||rZ z77=xO==t&1nh{I8>%YZYM@GEgUGG}YI-=|Oe$`qtXk!FbJ+oqOAQ zWz!+O#)H;+6}s*U#CpFm!K*tTw05$%JW~%uhh_X>%S%0=&wtSRV$ENE0qe}##()b{ z%ymu#iVU_G%Tx903D$--S0CPo8^CAjagD6i^k)*Rl_CmL^$7{qw3;y{hk55qb2!;c zKL!q#O;3b4=(Yydwt7Z_HAe5-z`D(KI|)}wH{L%X`id>4>IDE-y4hkJ9iwe63MW>< zWzxS2dZD0O_W*b-w|Pgqdm6h&uOX^#b;?1+|B9_*ZhL?*7j%S~+0i(EE(+)v0m2mI zP&#TG&3i_MUC|dbw5CM-p01y0Xsr>Rt>12FeLnn%KC+RuVZ`ME{mn+!x@EQu=Cw-t zr3a&`x%NWhU*qvxsSNuuF6`gMHv0%vLA*wC)#=^BXryXmomk~M@+Q5nS(ZlyZ!#iGNW*QZX$OdKYj!4lyth2Qw_6;}|dBf%LMeX0|+(Oertio+J|JH)f)9ZKp%HLlyhM z0cvM;BhFw&pPW&_n9u{yI-iN2uQ@rmdv;zOUFxFJPQE;;JMYJ+H`LfgD zfOw~Ou|BY+wGMi0TZl8}^tkU&+$~-_!ysG9&kNL0`!ieM0h<{+*jeSO+)#PgT*@$` zI-bAMl=&go89y202H}b*+Xlz6D2V&gv}knWkS)`HCS;qPgwQ0$_U1$WD7?A3<*k9^ zYh(PdH^qAu%vzevaC>LsQFN~}8lv-T%cl0=5gEkY;r)tH#wzdaEZ96Ipjn@QccNUzH(2hdQBEv_C)?IvM1mX3d2hE`X&;jsYrOTR=qlKZbB;(Jjmi*d!pgZLVRZML zHh6vhE3!!QekqkG0x~tW_7W*m)1(3sm+JkB6>}(&j+`z3l0F5aMv*?5ymn^%@d9q9 zNM5wz?_UOYAa&6%HnYa|zlI001C`2ATws_p9jEVP+LGRJBdNC8FA2{%>I9GgGf3mst5!YR8LbNqLA?nZu7YVdD!phZp zN)V0+LY-d#psuRO5n79Fq*vW8=-UKcSr5R`zC~uMD<8u&UYx-5a>;_&*AIYzA% zp;RxM#Tm6BYcHoa`yYDcm3rk}H`+{DKs+y*uqigtMGK|8Vs-}Enblj1u8E}-@u_c1 zlrvn!f#-M;?-KQ!(YP-!`mfT&tkL~p&U$}4IU2=p0)`tnh>Xk}x;=PjuwJ1~R1Mdk zc(^^N!AbqoZL`EA{y&MUkvv6m>D{^w;49&&KcY zh4Z^B63@k-h{27w1JTm_c*Qo|QaH+XAOBx0g?ZsDpsP@OBOB9vLqrWvoY}er<(V8N zDY<~U}#;6qGl4aGzv3uu$!~H*QLxBbm6U|>FrE#dT#bz&M2P25cR{Wcd$Y{|W~1{xbtb`#yt`Z?w*gyy3@!nZ6~_S~p_NY5iEDHM{ncXE55R3if%?)TzM^p;N;!KuY)N z(;v1vpPs4S_ow(~vUkBBHXr3Gf4oo0;5f6gWTCKW%As9yc(@NHR=e>H4G+HnWON!J z@}&iahaVGOIhpOQ^4vPTQEO|wD-$>l;#7fFN72d4v||zrcK%2nMik65lZ0>Ex?qvc zSYe#+ZC;{n4r^2!Rk961&J0gT*9;2~R zSX%^ZOqIk6a@aXmKp7E3w~N4s77gvHzdY}O%6e8C>#q?NUeSlQwbrn#_3-HWX{@yN zeoD`7Yjuo1HHkWd*GVoKhha_4Z4=3t9XZe*-3r2EL3@(rmA5`sU40cJe(}ZxPOhhU z4e0IbZ=;`9I}7*8e-7c3PYeQ~b9#*vUXL47^~82ocf>Dg`r3BZt}Z;~mpY>PjFj*_ zMOC0xcCiMA;o%FH`5MAmL&r=LZ%gFe*=P8IN4sqCdTG`+=oj4eGu@5*r@IQKyN{&1 zCrx)fO1pDyGtOj5h92o~jOj40w8L%2R@2=I>284O?#6_FMDQKc-7M)&HQnv|r@OIq z$5;5ovs<|hnwt)n|I=Z2lOdm^MvCK2cdmcBt82RB$$Gf6nC=Gr)7^FC3Uee9?#94j z8Pj3Qe>&W2I{bs#ncLvX-!e^^?uhB`I3|5dW!-fBczbKBHuVr*Q5ddH z$g2PkMvI4pa%Ch)#rpW`GGSXufOet3mh8O*)#|BtOR}aWE&dJKqP-LyEtCuF@qE|B z#<*WWsK;Mak9|GMg!Rnr_+Zc6HXYKM+)v5vA8r)%)C-fW4%_fFD45sR&9;7O157*X zwH~#OjkuqpYmZu=ZuuB4*T~T;5dD3 z2Wz8pS1w8(o%IhoSlcznbiUPi5KR)KoqZlPF=}j7@kXoXaUVkdNzYB2ZPw4MpmVK5 z-|1*=;mW?g5qT1}8EXb%Hpk&&5AGsH#XlJZL)<=!8{BehXVXa$#|LQO*1*_^e;)q3 z@PDSne-~K)8@vZ@j^kg1e_)MM9H-X5>S(PT@#7czwvN`8k8OUL_jd3R8HlyTv)BE$ z4L2bH*UB>HEk8AZ!%^sBT-CY{Yec*wNGYyE8|vF>@Qv{uhUvf4|6e2ZE~<4{#R`~+ zaN<#FTr5$D`JCgQ>#J02qlk|j`eD`ja9^wUEwt$J-kF)OCg$VTn7JJ~ew~qMUQlsG zQ_|=re>x8QTYJ*YPaQhW!#zR%ZO)|qnOFFJk&q&9M$Lk#^s$|+gTnvR3p-iWIwd=5 z=$@HfwJ~Tm4`d|k37xHvG|L~wtMUrs3*ryh))$nzUv-9m7*-)NAHtO#A_#p(XKNFS zd9Ge!)_1n5;Vbp4ovrP{U(=g)v5t?xBOHsmSZjq>(l>Om)^%M$w#>Lyc|2zj&ca^& zDcH@p6%kLwFM?Pmk@oLN^v<~TNLz$CLpTb@B!Mk!4G2YJkbA*yr92lu<3_3y7B=Jh zWxQ*F*T>4;mwnIRUNz&;h^R1^C;!*P-JjiociYRvLk>2;0SEX^1Ef%oftoVo z#&i)tG~)Vi0pJ3mayPV|@yJ1}LcP)$O3MXUH*z7YYln_AGg_tiUHPd=1(}z%uIyLg z+O?iBi9d-5{J(S2Orbxe1|;xy{*3!IkQ0dI3_ssV#0%`v+v2~+gCv1m4@l%dEF}_# z-S%dLUF?nrQ#|8FKlBwmXYS0n9)nv$LWwdn)mZ)v%Ib;x6iS3Clt3?#5(&)ZlUA8}*pcM})Z({AS>ZrRocah| zNQpZg#GWJvmZH(|kQ-w1lEr|aJ#a?kXt9E|724}JJ_W(AGzK24)x*(3Rn_#*9GIK_ zYNmb!rt3XJJf$QqVfgIC9bUpv!Mr*TcZF@otvs6Y?l-a@IuE8>eFfi8KXeQrBMhOS zLEx^-X9Zy?a|#*8^b9^_fVRZuRunB@=!eknu`4k#KA@Qx6gT<5}(z z->@r~ZzZl^Y=|g|ZXVkuoIM&JQ@j}Cjt}9Ft-*8f3N~}eW)bZ;2bU8Qc2aU?vGAaw%-=mzm$^e!bnOOCk8Lx1FVOM^!~$Th67;YCPI8e%F`NK_EaA7%F&aWF^1gbc;qiw2%# zNU`>bh`gh}m}0FJTc)5yIX0JbSQ+Xcz?D^lWboQugH*gflcV2HvDUXbB&sP;_8k48 zp4LXzNi&73`aosQ)SvEYjkC6qD7s3Vsprzwijb>irmK-5S5ME>FVI!|tRSyCv-Ens z!0R{Zsv&qCnW?AsLIXOkSkLQaZ5q*SkY3yiJ0rgNN=QW34lO$g4Oju3@#=6P0;vJj zK=3OIfu~ZSwE!I@5k=XNq792r!+TAdG8tqRf|p^s)hF-`Wnda0nQ;1W z98?M{duBMqvgfP6iMul!9=U^+y~c1wj`1+vYB;_jj(5KVhdGiXmp!i%_CJOE!mTCh z89=NjRssRyArk+f9oJ&O&L7G9?7-17fF613a3!eB`3chFhxGWl^f<@#NU}~8%($oY z$I`5A2X_H2Sdcb%6k=>czwG4%3(`^$a91wy@GHgWM?vENf~z9j(mMxN%tEZeExi|K z$Su7!K`*hT*E>yY>8*7R2??N4wk90s#0L)&&N`&`=xuelQofKPw8M0(_3;huzo`Sr zSlxk{V$1S?6C_oUxY~$x(J3Nw)h=B{zI6Uom@ij9mrT#Y#2FiWL-|q&$QUe` zX1u@~$McE!VJJBA^1#q8-dLnm6w%l~HCH62XtX-B;e*2M4^N1aiwxeN-KUI$oj;N% z5(U#g1bLT)yz6iJt1JEW09e;}LVA3pgvZXNN8b?L@|ZPNzj!*lf_|)mwd~+apOwhQ z7atYbcp5lk6~YK+;}anGm4mmSUXVD2C}g$d@z5?!xOTx zH5qiG-KRVVJAWiMBMRo)C(UduZ~FTQ2>83RoY`1LdMpMI@OXuEc%1U2%*I+qcsaew z6V^el0dN&8jXymivauI%Mm2Z|X5%Ih{7MJl!9|wFYEO$w&5l<0)mFGS5;O{^I!w2E z^V5<7x&p|U2^Pp^)@a3quMdKJ@?1o(~=Fsj_#=ssBN+wX9=T0Ya43NUR4UL|F!Q{!(!rvQa^% z)OZK(#2JALpU6B|Cq4cS&?utar|gBDKZ@`dqF@dipvUyHwsKie=rJ=tP5PEi?aekq zqA!z0N9kTRwZ}p5D^CMYA&aKABdTMF<~2MRVuY=`j;=SVngtMQ2e_gLTEoO8OZZ}g zNQpCe)WWi#aLd(u;A$SB@qa8+@9Qs8e+i&*hjyQG0(Sl=90Mqt<6(*;G-W%8JSg)Y z?L*aR<(!Wx)vbv_vck2mK6GUD6x5!t{aG}%PV1;fx0npc3LtR7_yG<5`B zjHTVD^nsl}k_Qt7^He{v`#(=#Q}uxw`g{GY6(dg0)4%F(ZK3=fhY4W)M1O0$a_wqx zbwU|8Pmdd5t?BC2j0-4%3;X0b$mf=pQ13q;7MU>^IHMs#pyWl*cQ*)rr5ErBTxLc? zv;@eEuG*sC5I0R}0U`y^5T;u#i*HB(5rB*ZE-*1Q`}RjbCuHiCgxdIkQ0$|7 zDAHqaM2zDc6qw~vtKQ~>;uo&`Eh z3q7*eGXg}4x0&?VmmZ&@-KRKAeAI>E-)$^|1;iHt6rH^RXF_}@L8M$hlm31JXdI*6r))F*k^DVTFrR>F?v-=u)t=$SEFZaYgDW|{P*JJhj9^*G##&0Vs-Pv0i?#wR6-t<3>Y0ZLl@A*2XILdF?BYMwHiI9D?D~d*u-e&yHA;V13T~a`j_9t}bC2 zHB!8LnLf=WUZkpFB)8I!46$~Os8UX^In-J&qG2Ol9cmp}UAV5A;@u})cjm^wYR0IR z`o^Kw4iQPw@;$0v4f!5bP5t3v*0k_6-95}&&Bf>zTx^xutxNRZ8J)ZbW*`T!m8^}N z598KpXT3rRpdrBYY9Tf`Y}lsG#%y?Ig}g8~MEdo+Tm;Ujh{-Z>14wY&5G05TqaVav zqkRiu__Chx%S(#HjskFCC~OKEX`tzd~vLp*26lkzXf92!AX&$lZ35OBHh2j7>XVC%%Ywnp!=QP_p$hCH$s zgB|9cvo74nq&_3cmxr@Y0xJ3yA0WgJ^N#wJqVm=Cn!~Meefk{3jDo27(ZJ^H!%jEq zQC>wjH68(tSgg+zTbNgg*m@@RV_><&c3=lf=ULo&MV(IGxI&*b9GkvU^0==|)_sS5 zMI^~`EAlVQC?rT;m@NDbcBhuP(K+J`mUQ+xJ$tcac-Ht+9;nUvf#)B*$8qq)s2_9B zKV$PHBy5QihWnlugCrm34nv_dx+!49@yJ`iw4btn#}&z;WjY2~7a zxIaF{J8L+QcHb;+`k^yevrKD>Z`Q&Pb_uNf0lUJqrg}f7A5( zye+Niu+Ed#fw0b&*5R-&lGf3%E|k{sur83+NwCfr)>&={!3FS53Fc5Hnle*Dtgr#O zB_yhBT*D}#C6bmQp%oI6DVw!gLX#wIql7+}P`-p-l29Qbm!^!8;C@LQEuq5_dPYJg zBs4@qBJ*(QP(qg^ZJ>m1O6Um*nVFs{A>K-kBz2cijDTE97YW8n;-eCZmrxrCHI`5d z331B<*ff?LJK8yPC`pee=Z5Gkl=a=t(K5eLK`LYlSc%YFQM}i zDwNO}3GD}Dymk{cm3P)n6g_mR60d)ohzEy_gl=MeG;0~^0QR-uGVI${8g9Ka%9|w3 zB(cnrgbQ!FN>4AF6c{Gu7n3r;q;N1I{d{LqRFi_0ER(X-q&#R+P)x(Vb%}s-Oj0?M zgsRE(G}feCjF9n;4pRD>l%GusJ7F>kkD8RtCZ&9k5^qvI0tGeo!Mw^GkQ*-?V$G3R z;d=7H@Qi4?uSYb+<4Zn>uXNWMYkhXVF3JeHX@kn6S{l*sAbJknFqFr^^B(i?R)cTW zVS1FFcI18fX3&$CyaRc10#t0yc>t+&dhxi1QZEwWV+Rqp?EE6I-C|*_6(g|YVU4LN ztdn3>>e1?P3--#51_H{F(DMxiG*?24BqS;g?3ZdJXiFrmWn)5oz@=MbFm<((a4Xoe zn+Q^SSerHz)`75IWTd^_hQm6trLc~MwMi1Ko)wa5aR&jdme4&3iMl6OiBknFU(!D6 zETBR{sPPB6`X@eY)QOh0e9EAH{f!tC=uJvw5O_GzxL)?2-_}^^ybt?DD|$ph*a)F< zs~h7&?Z>G0%1-nJnjK({ioE0yJ1j3hi+M31CQm_53hhUBhJ{1_^R8iAdI=2s8i{!S zMqfgI^c=7=9N2SUU~i-H{&n;?8yDiNfUWUi@OC0@pP;qHvj?+s;1&&}K`&wMJXo(v zYiFmnmd!09YHf}YiYwRp9wPiLw(j9(JRBP-9tTou45%@VKJ?ukKX-EuG19hTvl`T_ zEp}U@H>PF&D7p>Cx}R`)f1n?-LI7s>V-Wy0jOa5M`#wOMpR2zAG6ED!RMWv2;y23N zM~P#P-m{~zZl4;CS2eU*jNZTZ26*yT^ah;X9QFo$?m%b2=MMA*(0f=266NM|2f6}4 z2D$=bSs0mtpIGbeR1U83HkJ%m|M+=qI>X3A#KMVgI|fsqZ@h=wL9h&FjQ{o?x0cY_ z7FN&;X&`X<50l z9(OvjOz*($_)gFHf!==mQ@l5LgPOLS;xl@pMoH1yBslTjP3;t4Rze{8DcV-b#yIi= z6?76#Q+_}X9)0@@)}G-Oy~2yu8p)R-95o7Eo{R)F3LT`3Iz`8cV)@8;KpljVVawhF zjD1TvEY!>1ofEK8d^=M1?w%;4zx1NDUi(qDvH7EHdoAkrfsEI5PWo)yha2CkCg^u@ETSS zS2w~IpxlQB@8BT6&eeQEZNDxk6IR@mC(+*-gNp{A-FSz^*!1rn++q5n0;+QH?2 zt1+B%mFi%9=)KlAfstASaiFev+>7b=+_ql1OLdQp??#LvOw=QOG=31G#J7nh8TyAFWH_X$< zB4=cdm0|OX_ht~Nl-5N}W~eReF$5J974!f9Caxy`zcMpUe{j6DzL}$?Wp=l;%q~co zt&vLqnh=)SZHtguIH2N(Fr!&YRzribTK7#US)D;P1j|8HYzcI+AegfHc3D7HR4_|C z>RT;swN?>Qs)}HWrXU`o>fz=yKEXAYEk1RYky6!Pe7lxeLq?nGs+5X&hD>~ML+ zTzK0cRHbbm+)AY`!nII#M2t1Sda4y_fGC(KO3T@~9V$9X!D^~af~bc6*NUK2Jut&% zc`Uh4ye(@J7@AexV^xy19dcZLms;)@7>q_e)EvckMc?KdU6L3P3=R?0X)*(djoL z1O;!^f;3-}Tp-~J5jKu^+w302r>$otm+HNlthuT*f|&|E^i(^&<5iaFwRc= z2P%e}QaWV*dW z7mIirzg%MLj?P+phj(<8Gk1Knh`-(c4hILgJL0fjJJVVLw<%yQOG{qj^bYJ&Iz4!D zvt$JDMh(+*2jW2s@u^ga&KpH~?!hQd68o4+6+6tpqfTNgksVCevQ;J1<;uct1;4uk zI|N4_Mkm7NI1)_ejW1;~*UPHp{Uv5HKmG68u5{Gjxm7Cac<)5ibRrMhP8M-ivo|p6 zLmG5r+*|&4P1iRV<7+ER#yG1XA{>ljKQoG^F5mtzkQ40v=9o0-s9bd|*pW@37^iy$Ui3dBK+D6e`eLhcgSL01| zsC%b1;Sk-?jsMhj@z|m06y3)fjA4JEOjz&S=B?Ah&tmZ> z72^>gn**5^ehtCT#ZpY9pb0`{lMp#{HIN}Lcgmw9pb6ISC)^i%^6zHOcWBEPb1n`b zUovWsni~qm2TyRF8aZtv235E~3DVcZ>AJ-0TE8q!%2g953R5XHEpv&zzh9gr^sf_A z*2XL}^T+9N?TF_(nhF_HNJ7Az-SYw%6A}%N*Kk7JKev z5grRMOIctrTGWTkz)sGDvbgNYe&DXwJ;u=?d7~}6n9)EovC7~*>Cenh59*gttS0d7 znbH{XZH-Y*8eT3Q@g#2Xgz8U1+-_*&+mwhJq9P&@4X4PrU_2O&t5FEYW?A)nN;o=N zX@%P4Xnm~5+S1h{yugS{&b1(71@;5CyqEm>K!n4D~@Y=bD0U=1q1n=1`Y1F0;gJ83cx94#9avcj`7$zR`1EH zq3l@p>WB5Acu}05g(i$y$QMLs?-Ht>`EA^%oG*`er>cOiQ@iKP z-2kc7PE<6ysa~8i`8CD+qfrIt-%`Slr-lC+L>ply&Q%h59!J3b>F_XcI5#EHcF(T6 znV&ecXS1NcSh>rn7g+fWab6x^a*aBCR_O4wB~V}?6-`J8$9qN9pryH3G*|cWuVa&D+diyPbn!NfV>z7n*8D&;Pg>rb4^S$EDR0QJfmxBNbai`oZp_KV&MF_G6W_2Fa zMNu82#E|`7&zVSX=4!CFdAN57vf5uHHr;tK_4DW55#2dv@N<{2W94C0K6Es5v(jz#}0y{yhPu+sIloALA|LE)*+mKcm;jpE=i` znN##7qHp)^aWUFVhEQOf2l~}GkHeBe-SM&#N|C@F{ukVif5EK|;(~Eq&A660ppYAK zf~dO80wUs?BcHTIbn_A2LPU3epHM}EGQZG2mrXAfhb5x|Gfj3fQneK&W(a08adJ3s z_ioG1=b#dG=wy7+53GP;9{Pb^bmmh>=c-H4BgN1w7hrKKYN-&bm>{?o=t$Y0Fe)wM zS>GKoCHZF5x97fYP63TwiXPuhW#Sg+LUahLyd!#31;r~jvS1fSyj8HHvi^SgvQ~Yv z8+}(^XW-3cC4l}_p_ui{6Md^-ziPj6GN1jbN7${ZRbnADF#Y$+I?wnAaM`4>Ts|C+wOqtAn8VQlzC|+*h@Rk{qh3X_-x6ZIuZ`B-)Uk)ap8>5yfL=zXN zH;N(ZQjN&30x?GKGsF6Lh2$h7vz{!}$zDVMdWN;N3$;8-RX&QXC{%@~M4{R!ifsc? zsFty55OqAek0~R5MjZ2lMQhziP*J)dlhv=5L0!19_!Vyin-`zXsCnz*9?(M0T4XJ9(e!3x1-oZ|fr zuPPYz;LYhhf_XeNEGgl8F*mHAdfnQw+hU{|^$rsXmEDh)8qG8!|8FAR4WX2%n!l9- z#uL9YtnFL>YfWlo)(r~X-dA)N^gx*?a_aj$nESqjOjsSLJGY$_nUF6sfpsP8OxA}| z_^X4$&-_G6eua>He(}rRA3Uchc@)NJEB?`I6w*KiaoN!Q3Oj9S;dcW#$7RFwU&zbG zxPQS74&pr9?`D4C(58JNq&{?oo~~J|+C&JAq@$GZ-}Hl7*sZ*RDWYU$_n&&3T$nmy zd~_POWV|M1I2;{)Y$+K704>>mv}A0^Vl*eZ_+w*G!(=5V?aHhl5amhPiM01a+Y}OK zOZXOTMZS>dUC|abb)66bl}!Z&ilzd$dOnMbLUHdVC5!pJh0YPlSsWc{Ls#HRPP^x9 zq~}i5t5%3}Ka_(7zj%xkZvd7<>VOb08#nF=!KOw&TNpzAaZho{K5|Lyo_}+?F@&UW zmrKDe%xEmKvPG!p0=*V;o)z){Wj4Ft(}JxC&i6Xl>2^V$=yhk#?E|^zglc5=wPPro zf2)z_LM$a~PP0ayLTTmJiTPaA$l3}T>e5d|h5Rv~;)h4gEnOuyDcg%3VNBYxPX6G3 zsgoC#s*~sZqfW+gPpy2}x-LFYj8I0Wd4EJF;S+Pvi|uf!+J@4Va-nf{6D#F*W~Dqc zFxE}cwunLQq?MvluA8DQ4pzz)%?YP}RLxir5><0laELoV_s_CcZ{G&17Z}C#XMMcC zM15=s&3*-gi{7#)cSvZr=*(;7wO90>IkHBfDR+3lD9KaVBlgY##d8)lOc3{9mCOxsl>mD2dyG$RE2!gtPYXW}MU!Y_?tkN4 z#?=2t8l!VyDe<7n)iPeE1=M+3HjygUO-b5XL2Temt_>WlO%REXE zqL0kZ)puIj4%8)c(OdcdX#4W`ri$+GCS7QuH#a~FWh(`Ww#rr(Awsbi5=f;11PUmd zJ_sVBYzd%J(wY`}y@W-;i;9Y}2r5!Vo3aRPDYPtN*%4GWg@m}UXv?1WduEchD9@w6 zKVCkhclMcc=A4-`GiT1^L0VY{X~iB`7lAqcBCc!%+Q9$0X$r#@jaqC7L(b*c9)%y9 z7*Asq!@y-_eQoC370PK9Va)MsB(H5()$o19TXQnh6p z#-eq6O1N!=;OlO6DmaK_EWQvEvuOtxbhilGBMXYamDHD@n$<{94vDkOB*W0#gw^jg(uVz$%i3TEMR?#k=Hx#m1p^VmNM1fIKJ;5YXRET|4-vgBG2 z7Gcl&AW=zmg;hn*V;StMLdka^Fn*QzrQmHQ`3%OdGHN@7;B^?l{@z6*uwqd*5bH_~ zcG$#}68|nrX7Pcm!5TJjEndY2u5}+^(*vSpA-vvhfdQ6!r&^?Z0(vP`!`EB?Fnqmv z&+zs7--a*9qZ4WzL(mMOj-D^fp^NN4&KKHgAmKTM_>KfmnzEflF2_yHR?P$Wo}!b{ z_#o>DcB+WsMsIOGhZ99Rely#sW1Yfdb+EfIG{O5I5+o9k)Q}84p|}6_WXW&!jh@IKAl%lI}=xLiuz_CY&rzZTw?c z6ZPi>LbT?LdTW93sQtO~?AXB?e@zngePihFfTq{PC(Fn+CLXR6&}OiSV!~mso^%O( z9y%fr6Ap?A`&gO;{C%=-oJD?4j|q7Wo+iDTv`2El+*=*Ihxc649#1YZ$j2QQ?cG*Tmt!i1ia-;>t{Ru2LfLXP_Q`hDRZO(zS3FKOu$^#8Cn?sqR2Z zKfDdziop6|x7LhXzMCqFHP%+hg81RB|3h`ur}Td-6~_2#sMM;{E5e$o0~ZOkfshf4 zVA?YH97hPO)9qH*FA~}h)5GeSw=O@5@{mbFG2t8(NG$TCcs(i%7Kex0O37qj{V<@S z?)Y%}J35m74%O4&{!#4U;f_|EpO5Siy7FK?Ms2ZJXp&sbSXXvCyjfBWs{rGu)Ji2K4!bwcrod zg6pgWx9P7g)wc^(##ju$i#apUiTp^do2qFO9@iv|-YokTgHDQ3v2{~S7#SB5^_Y?l zsm_(ch#)DD>VY4MroePeX0NNRKvH(1vu@1~Gdnwe67i#lRqg+uog@fOURx<8|{` znDf|p)vN|D75dxB_znhbjWrs7wbq3+fZG~LO6SGiTBj+q^BQv%h)|8xfp0TVi|jg$j4YeL@i$`JUdLx{sCF28L$9G#Zyxn zu%^Tj_BB2089qQej!q_OK&pPSOc>J3`Un+lZNv&)!U}E1;G6F+ z@xQ=`4hWFlGxLPFW>|D)VtXE9A5@2k-U8Ae^hM&;$#3F3T7#RC(@j&;h8{ zHZs-Dg-o-PZ3LQ~%Vq;F?k`iJzr_SL#Yq8D_qi*O#TFrTUqH%J)_AFOZeXm2GoWvU zr;;e0B(qdZ>VOVUP^xo5Hw33T^QYh=<{vi8n7^0Nibc&-p%b&t+mXvjv|5FT5alSwc%CH_~3wU;PO4j?(LI|N*gkrNIQ-|P)q!1{^KFD$qC<2s}NTpxo z7Px}Q@atP}U=fT2zBD@>)d1!>P_j?${yv>YiP>kc6`r?4Y}KOiJww+{nV299w__ej4534tUW<>CL2?lmyq1)6S# zxdLNxt@~3)nta34jgEzZ`f$lGcLE@>)&tGh$%Q=6;zLcL8Y2BQ;K-CtP2EObL%r%6 z0z^k`g?#8ahhufj1o|QIG$rXr#>ZjVNHj)1V@VVy`eJgX#bc^{66W%_IY>+r77x+}c-1&=j#8e=NE9 zlU|5FqgF!5G1C;b92M4OrI9a}`KUbd6*3={2oXV#DUXs;p}+)d3R;6!5pM9(0bGQh zAZz0tb)gvw*3P7Og<%mmq{tmXDHJm_#Z!*sX{C2$a(~izSg;-`lP#p4x4?&F$)v*y z3qzm=rnG0Z*I_z*V$N6u;aC`?@*I$vb%SR=hk&dbJpV7qk8oB1krPXub%PymWp`wm zNF7kjegJMyeWXZ*`j_79xEVa{i5>9b)(G0Zi0WvAMzWJAd-g7LJJGYJ3mnP8&@mJj zj;E%E;JSsF{XEq~nUm=*2AYnX9v9-PnVW=aharr=lgpU9dK@%6Ue;@EGqL;vPunJ& zm3}E^N3oXpc^vZKw#E0>@4X|kZt#lZ8H~Kz6g6r6yj|Ros8eYnHui!+*{x|N-pL$MO>;Aw@R?SW@=zn0|VskdjjZ> zLURP|_guP;;xW?&c{Zx=zbC}lNxQ?_mNAO;0mdKJXilX$uOey-M(`ldRB~Y|17nkm zSjjUAF8{(b>6CwInu7@co*JpNVjt~?Kd|I>cFA4LmZL2euzj@2i?AAfa1nHMFn0x% zT2wYyoI&?2%c-FvV(q~7S-t_)-lNareU0n0Y~lJWi)OI3=w9!~TQO$)U~$(`GONZ) zlp4Mczn?07J}vMj0uhCkzGxOef%Kz5n$gu0?+dM->05On)h~WwLbiq(m06MAFlh&I za;mZ-o@Q$aySaG1IMOKJbia!27E0KW?qND@+sw{%%+eR#(=R}-Rvh7AHQZ}Yb!>}2 zqmEoDq=m5p9O`E)h1iA{7qZp+YW7Kf8IMb2@xErEdVVDg-JNr&ksk=L&3b0lT!jB* z4J^WWnSDPHMrq5U)wLf81GMvYs+AuIy<=ydrQIeBB`|||()~R1L79TiqunFUs>44N zTK3hJ&`zldEFg3>5$F--?v`?!Xm*aHCoTeZ+1;V1LxZXZM`p-O*+CQUC{Od1AwjA% zFQU16=0hQ*Cqd?4g}X;WTmQf4j}%;|vHG}Sqy4T}!Mb>?y1cwFb|xKw3MjC&2_83>E+cZ=1ts{kmq z(Sj5H>@IMyR}%dPT#%ltZu$W&kZHKm&?Y<&10DB79=4qFJJeCDg{#`OMd}l4gf{v| z6xMCu&ZAG;dWz~?BQ)2R7pkAF5jr8Ze^%GZO`k%I?zm#>wY{s0>X0Y{I%!@I=n%=p9oF84$y6&gnU0gGnNx9IZcaeuKRdn^Ifj$_Lq_QL}n$-qP1I)HL zWC#vg4(@TYZ}~j*9*Nt#Nu9J_Fx3&WUqg;;RR4{7VVw}KwQW-)*9&pUOS73p8>|qJ zFaOnBV7-g(p145ng{E<`%3~4r4x(Tp$TxTjT|ypBjfr7pr$%)`-{TgGQQqbt{c^Js zdMjDovtEc5b{_`^23S!2ZN1Q_4ZDLKx-q#5LutyK4rZ>Oq4a4Zn^rh>m;pal2AkFP z9}68cE7hkz7Lx3Jp*?v`9F2{Xx(bmdo?CEi9nMlNEyA*>)_lAbBI-k47l-Y+CO(98 zql=K%u^&lrV=9Ja*N2es>LBTkZ^EIXAjeiNal#s^V>$e0r;^EnnMjJUya=Kw^hSO9 zQU^;}9ci85*gA>YK$d14dO)viodSRG)^1d-zk${$Ws?^MZ(0yhlMg8#;977v1WlB5f>ayhQ zgC%FUI4=o7VC!7S%UE`1nKfm;Gtzc8-M)sRr0qnD-d8{zxVd$Rt3Z#r16IS_GDw1| zI$}qImXaNi4=UW9&)!108VS!kAOhxQljC_r6GV(=F?3^4a{LI2uTiAHi?l@{NA}O5 zL7pXmNZMWpX>nW+dC;h=BJ#t|CARhD(}Am(%P@!Hb`o*k1T|)Z(7fS97E($f$tVNc z^_gkPC+pPy8-#|<7o{3Z6U1yYfJR^(;w?Do7-x}x^9uAh!@>5ns%K!3%(SUER1*7^!_dUlsC%Pc-Y)&3QtTdc>|l+d zVkN{HmG~@*YdcN-_;aCgaw8VjBTLCx;oddv-t>2}DSaEnp|}f>hK#bu2fZfcg$|T_ z?Nn9sh0wUmC6+9n713@wFCxTWa?6mbDG@paie_5omF%diy~2`LOk!`kC=ae)nIZ@rNJR& z4x`$WQ)un<^0VGKRJWtJ7B(r})0&uzE|HFmo7$1{G7++)m<3Fyyyr9QEc1IjbAq>* z*>UbRrLS)8)OtwxT?R`xgQc6*6zUVehGIICDu)66zzwccTHI#2jyJS`u?y6n*n`Xg zIfHt^Z}1bRTzYhPE-l|AtTV8?o=b=Pl6*{(Zv*%f03I&@5%@%_rldV?yk$g4$o&ZE zcF?@zo}CAtr7>+ag0S0N&JWLUTa(i_Ov)4@=fogs&_ujzheVKt;%Jbbfg1ykSrGI_ zIbOv)XC0Q=>aP1hE1cgdwi9OD#dz%?tTypGgVz3;b+G77r*I7BsUThNgTTkelSuCD zk_Y{HFNs|5bN^cSnN6wzlQD*{wGPnWw}^{t3%_8Xc5g!S;XXrqy5rRgUkYs^2qF|; z@{QW$E8(F;M@C$bH8?X|O9n_z{)VEIehFq-3a92jV3eoA*2(iJrCH_bOJBhWN3m64t8;-a{3&Lh!seO<3+$c-4TV1fRAu z@L~B+gK5#t;^;}cE-37q3(|lsDHSGH|)EQu`)^r;)dB)s>hkUi3e?=pmhks zQJ@7xSx7`FpEk%`sWiI+H*j#yGDsAZG%%YY- zCBMua`vSpZD?=U=&TeKI=^C_QckP)yI5jW)L=`s+UF(PO$~QgXr=$Fdx733fwd<>s zHVY3v(2=fFvFYdF(ua-Z*%B9CFAn>C>i1Ur|L`b*k{h-ijoJo(`scMSrHBe`65!yAi*GMcO@hH!l z6rS|+57nYALd%#pAI8Dou)-vtXEI`l*QubHAF8*u2p#LE@z_zG2mIMOeyFBw6&{QK z%IXI*d%`Urla00>X5c*0)F1J}1a;L`FvvH=1R##7>i1iPL`{D+Y@5*0-WveMQW=Hr zZ=Per-w1D9(kV|mjdRZA8;4k73!AVMpYRk0V!`IWlig@fTS`Y{XERVr$r=| zq+qx)F}~hWjP&~B{X)uk0qyWqU@#&}yy~WH!r&(d;+ahU@%63oXr(i`Gp~1VX@&E=e5?4)V*H|EynRGs7r_8ogH-BuZ{d; zPhakTYg$!xe~!Dw9uV-cA-HNq!sbMm(eSQaC4-_iZ z#XE%NJ(^;k#DGg;)>)We!=UKVKn6k)Z+y#&NQem(Aw3J^p2bkeWQ+>;74?@L!ZQ(# zrm+4i8>0MMn)X0nltJ#9+-5O zFvnjKji{Kn2f6gNmP)YW%pGqW@cik1))T#=sVCUR!zj=2XJ}M*lxgMQK-f-EO>}7M z*r{?8u63|h^azapAqM>n6K|4S1Sw-c)*e`83zF6SsIIC(5v)PSutf3?a}V>ni=wFR zQJ(LgMpK>1(LD4;+&84q-3ZM(i{A2~pmrz^Zx*<`+v%v7gqZ&(E7pdrI7LX&hNpj?$GEq5W2 z0tYuG?rPlLq&=B8vDigFIL_Uz(E}Xd&u&)%9L(!_t3GeRmt)k4B|=;qR&*GY9ITiI z`zDC_nXDRiCK3o?w5>s7@=JtR{a)7Q=KgXX9i#qKBDCm3WSLZ$k_oL1+-_pB1KpUo z;|%E~GkP(U;ng>q;J>+5)uxubtb%&HO@~LT{dNh>A7C5=;4vQo8^OE7sB3=M!|I*x zPrG2Wx@Z^P(Rcv*?E#u-EMLpQNb9rP+9ShKo}q)uKk8+3e`8hvqc-;LfTzu9Y}_b2 z7+=fRTa)<1TkN0L-U~U-27@vS$ zp@G;AWJ-xwq0AYO+ne0Tp&o2xlHDj+3)39cZI~f$--=OQFe!5pMcL<*L4DdA# z(>x|nOK&h%Ed2lB{%3KTz~CCh{lia(s?t88e#D={89e#p)RcWfl=j4M*U){!O6}uA zzrs6cc$kl_r-=!sLa`n_)0YCDyE~$w{gpXhOvvegfUDw2Op>j622(kLO@#>KiFIG8 zDF=iueU5+0G8G~ZT@_@-Ay**_X0=ehJSr;_yT`0@Qyx`8$$1q^zErm!5c)SdpQil{*C&bo=edRuecpR-?zahww!HzUP)AA!-f>%f8Hs$-(#Et(8(WSzyucbJi} z+hIaOFJ{xr7LFTn0Y{3MvmPO(rgDr{L7vt4!)q3Enj^oYm{5D45HY7Ne6)uC1*P3% zX~&L2Pau$8C!p)QUDe9<@lFkno6& zjirV6q7W|!W!(sg>)OB?CFbvO+z7EnhL>Bzu~+PQ0d0{p_G1v*Mm1s&DjbT>l46U* zGEGwYgm5&dYYqwt_J=TT`Hu~#NTLiQj- zv9&AX?;?y-URc{nj`^B#>t~@vp6^;x z(BoKDL#e80l)1sajn&ng7di%of`72!bsxD(?*#v>WbBue^bkK$x0bpO4Y4)H(JI&s zm?4sp*pThEjv$j-o&mr;(`t%zA38&rCF{797&}%_yya=lNQ?bI>#$VC&SgVj(Q+(z zAyEeKd6Y{|f5+lp2vGk`eBwx)^Q#|;N4GM-UcmiAU~Aq$1P=zl+j;O19z12Bov_H; z@P9>O6jen?e1Vs#;bk^MRXFP-9KLY{iy=Q1LgJ^X5QK)<3irHojL>52sSx4lsG5Zn zK0#^nPH0(RfTMEU{Xw8~fYk?ICUex_&YeZ>7{?jWaUEkwBS=A;`500pI_kj3x~Rh4 zj8_%UXqruboTjNVv*{jg_nl$YdY5z7601@!7a4#kzPrTiEH zH$BkLCYf%gkosHP8R}{=cd^>`m=F_6PV1Y;g!qVKr+GwQ7V#8CJVfkcnh#^XvS~k7 znHpRQF@5SQgu3xk+4LzMuEi!g2*W$kk#Pjt`Za4*OhEMPciM+z*MF0n^fBY*57rsrc@3q#AyMq0D&iY zLBTk8z+nt#r{QYKXSL(hMaP9u(-^$Y&Q1ob>0~+^Gwmo=0JdL-NZ5t6O_eIbLToSK z099;PHr*~CHkani1_A*dXk-9b(vq#7J&t9`>U>7HYq8V9WTK_q|2F)LaA(yZ+;06C z;oiXY*}ug#<#Fje`{GUzxpt&F`-fYceIg;iO1O3yA=U?tSXRpEt4S(`M7C@;X*>GK z{GGL&j=M8D20HE~^V$CBrY!m%0p;&P@Tfm&vT$0;B>99}_ovV9*C{8O?9OPONS!WJ9Ymf*V6Hixp@s%} zhAqGHzZbC|+aHvd`VqG`k&Y27DD{Yj80Rl6GnrUsD3#imH_ZOO3ZLRHoV0`gUO4f~ zR&Q;ixbdP#oCR>j18VOT#62LxCc=f?ZC&LKX zgb)(MDx8G@ny}!rl-Rzfw#HXC($5i;7l@=h`>zoOW<^)&t=FK>om^qxd!fd*Ag$5Z z;S9UpsOnA$b?hmS%xIg49j#?|B(V`1k+}3gHz=6j?05yIZrP+t4a1}+*fo&%Lw?3V zP#kVg=|R1=X5grSevaak9Jk2A-)09(vJ@n*1DzPQVV8#+0Ra-2`3qXrwJX9s3+Ugo z*W)k2CJsBnm(y{SX*mKOT`oFE=|pTNgy8(QW?EaAs4S)^pkERn+710+(vh&_y4S9y zn<>-_tNoEBh&1K8o&Ja+=pWu|tU4Y!6_FUrGfnaz*NkGD%l@ppc0XvB%xy;@3 zSIpSJ3!~)kz|E3U%b0jZ3ho<@>v?E|y5oBxvHl;w@DvMKioPMnM7O%=Meq2U8F{psrY3o!F5mzpxnC@}sQY1DXRr&XQ%gV0JdMg8~( zp=r~){w$w@H~-eE^FIiQJ@$KftLQc&rO;eP{U|Mj7aDHT`~g_#J|RbqOejfTu4om@ zYPIi=!Xx#c@|QrDmMCKYu9OBWf?-C?{T#8T;I2lQu7$FG0)7IO@EQn)hjXkzBq|}O zD}EGOgwPsQ-3a&xynP8VMMXE7pe5hk z_tofgLhAv?->;cw5Ay}mY=zIF`8_SzhQWyMqg-;Yy(h!+dosNKzAB#+;u1Q&MkjTl zlY*<-ZKD???rH2!cei)dgXeGpkPxg^oD=$MmaC@og1J@pd;S*vhT#v_84BIg5Ry7} zsGdor7u;jtQ}fOX&1#Fdx`kTI+HiH_)cTEUHCVyawbbyJ>NnMfYt;rn39t0My`JIs zjjQY#2rLgi>52JV3AJjf+9u{CN6^yv@?RQAO9-C(N{o8^Cm}(5r2NCuHtc#Q zz%T)>S}Q4fG8sU3M4;Vz&Mo5sXet~NU-o9~F<`u83JPGnAT$@10=e8zH!zQb3F2Q1_QRX@P~y z>(~}-%}y2^rJb=Rnh!1`eIr^EEoIw-PTPFdbW!MOpABMWM`olM`V>5Yqk_L3bc@*o ziSTKQ+Ij+*>_t90u*SKM!cK0){6%cHA^jV;*k(ie0l3)qc>1?+vCW3`65N3f9Q|~s z4CoU7*^j#kO2!mN@)@<+KgH4L!m3hcVYbAa@HNd?>Z5LdpfkEF?_Oxx_FL!S4k70%>$*04@W`i*s++Xf8k|3&dLO!gtolY+5o;J$|z|6GVHGRr+3Dxpl`3ek)Iea0aV-JDl^W5?STBeocFe=$GD-MF~0O%k=jd(r| zB+wn+ZujnfqZ1mT$zYsA-S|pwH^%T(UnxTnJC*xZbk;!`?6?w|_`i$>guoik?NSo@ zEAiK%22R^a`KjD?u>70#6SMMif_bbIhg+e$Xm`!M_GJud#PiQn>2&ZpHZ?9yjxS?w zSxWFpagxs%ALq?^(<>y`ZE1E!Z6Ot)R1I_uY2p~*6&j5tvNq-}CMGcEzC|2>{gslG z+|P*xpyX8sHJq$-zbhd8#Y6(cM8;gUS!c{;ykpE=PT8u?C)u8-dlH^^bYy%QB<9Xh z_j!efaOhWPeHeryW``2i$Lgi-=|T2JIGqfKUC3~A(K)TVej&ZeBxZkw6iJ8V^b-Gw zpbQS-`i2M(a(}ZMOh(CQ+mW`Ch_{s~AiN4|BqlNU{BJoI@}5Ts6i)2!5AFiteG{_S z`KgcXT0o?u84jXao?ldRKZD(MR`?23#olc~!RQwJ!o~c7q1afM59=OiMvo{KKIA~A^5}jLCoh?_5X$)pXIXZHyIY51Pxd%`crC~?>N>m9?BA;?y#0lS z-XxzFPIN7wDRM`#EgYz&lG4HE<$zUORV2Q)96rx^{2@rQQD^n2I^%21EkHsz)%850 zFn4$!0YISAV9(RH)U02GKD}cAI+*hHU@13B1Xu)K_-xIeTFGLw)Wy;Xn3u%-WFq_VKGw=tGOa3wfCK zamermuB~|6!M~FGCrJK7heh1~CdHFJRVMcjLOkSvtP)a9t|54}=!|g}=lf6;u*gTT z&VnU4tRhW??u+@i8o=14sSpUkg`rV-c)Y+OUxEP+b@cDhcZJZ+61zXkr)j+^O&Zxh zL!za>3oV9FNtmHJFzr5TqFKH!SIWmQ%|dO`Bwx44SERw*Fa%j)berDq&q@nKqJJGRFg5w)1jK1q2GnYxg9S07pnk(20+6G9$4M3j>`o5NR6E&FC2fOd$ z)RMBZj75MAY8{xZm%{~dYOCSn9!1rtLq5@Ioz!H=O zjT$q)-WdQBFCP;F=DQK#D5gMko#Nz$i{o=AtEfUCJ|pXx&BoT z&-MV3Gdmwfi56bM`5)q_h(L^|G7&|g>Z*XMRS47v!Lg2=D|pI5Kp1)Hdj?{35oh#j0#}!*i)>6 zM;}y6ZV3Z4Z>dqYg-(gf)no>q}u;7MfHeEl(sT{_kZYG)#$ZwGk$osHk1;)Ty zH-*M0_10}+k^L!1?zo4d&wRRxv_qfSp$Uva+)>gKuxSC~e^~L4Sn4P(ia z46xhwF708M<*$e1gZ&5EukZ_XRhIddkj&JxTLlHrb+^EwDjftakOIq-zqibP_7fVIxykc~bFdm)!99>N0a|S>em4SLh zL4^#jD%{20O`LwpXF#L&0%?$MO3cI{pDi;@Sw?bwntT{xHdtmXanHrp2vK>9!yMZ<$?_3>S_Q-qxiaGF73A;z z6QB(0eL6s;-XDA1In}3Rps!42UYHSs0W26RF86&aX4AUCA{W!FCGV>!Qp2@6DeQ*E z`eD*3b)Z(4H4zYCCM=ZXKLDw_Ssp`#^+6^&WAUTR!m{-wgrs}gJPZS*=M6|8TY&=z z$$-}1w0Uq+)9m;{h_{TrnKt$!^}i!a^=Wmn(B6y<){W3v3QZBkrii^pdFXY=4RzjM z!fqq%a6BRu|nrxi3iN`VPXN;eOQOrWAePQV2X8Vnp-fF4Rh8P zYLfj+ARx7UsP2L2eVm||6G5jr+XRE4LD3UJbsNK1f}#sxR$Of!rknMGl_WW384WXO zhV(LP8tw|?c1FJ#rMF)G7UW{)v=^7+TPUr2@dpt!&k@Nyb-7THaP;u2>ll;5*nhGsVx<&g) z1JC@5B}v!okEE=)ImNF~bR*k-QizhOSBAkt;;?XKW@MT&AjYVSfjNL*!j1BAvfKNF zH1LT*(qMOwKN&})uX(rMYVKMbuSR2=xtM+cM=aCQ@^UE zOX|1_!894;<9`51%%(j*F>zcu-}>0X9&z0MF(X+q`??wvu8WNfoEV8Y=~}f%xb87~ z_n%oaI(Wi4&1}tKEqUSqwFJ0&x@wAjrZG0u@?kzYM4Z=(#y8r5E}7XH3eCcmBXlQE zANs*y`WBaHu8B*Rb}h{_uwfs}jOn{VL6&3fcicGJvq?D*ILU501MupL?G~N)1n`?ytpW{!KAzdTm`-;pTR_h{j~S-#=F0 zs;x_C7>fIT{G6@|-_YbTsz27&rL?@e8s$5aA9S#KzlMGz7SG=`Bsm2gL>s8;z&g6F zjn?pV2VP_8p5^H>kxqSjl0I7fs*Y}i9Zx->>&)C9IxP^fc4T5W!3MU%I$O+k!$WsZ zf)Q_+9xg5*^&1l;id+psjD``B;(|&9)x7G1AzaM4ia;^HxFT3>L5D4qZ$rbqxe(0RW!^VxWW>$ge@V{NH8vTpP#075_B!>@1PF>ubx(I z{Rs$XaH%mxGF&9on9#nDW>|~nNj`)C<2{8eq1?Ze{QKxWT2R(adL|3YWsDMV z;{h!(`wt8|SvS++0XE=HD$EjZ(xY0?sPPqgjv+{W7LBUihUPV5%oXZFK^NDc7z+$) zB)g4}QQ-dYBM9-6)m?(_;kqB3=B(yFy|BfpcLiN+Ybbcg2fRA|s;##^{}KwZ%Xiv6 zlmb0K5N#D* zv4EOuOQjTmNvFsnS6Yw+AuNpr(*Y7h@OUr)vo;igIKH_eX5T?RdeJH*XAI=a%kWuX zU?>KKh}q}hqa*!Xx~5|?Oo|7s(Dnt9N(+1?1MJ#}3&^^6OeWw8m~$LXRFLtOl9ceMW(gi%D}Bsg**Pk&#-r z8l-l#9!O0IeXnM=V<-#cb~A%zoA)lr4LdQRuhdNQ1y6H~rx{0SRzVKFxSfsN18I3e zq%{P|AVXDM;{tjx-N8PQDbFI`!18sspXlf^!9{o3YDgWekw>Zs!S(J=WE(~=ZaiTg zyDwF<2eX1SpPaptDif)3b&V%0;(yfOGA!009IFN*lY+ z5)2Xm1AlQZ16w~-b#-+yI(n?yr1{mN@sPb5wPRgf7ki8EIraPd)7AlfNShJ7^T<;I z59>1Wl(CK?*M4%Ldl)!Ykw83(J$=8j4{&<%a8-BNTK!GgCuvU>ac%>!ZjrCZgDo_l z`-2y8zJc*IDCo_4I%|)0ud+_+S>o^8m>PYXrf0)Q4o_0=9se+5i;hx&nI6COWsoh6<$UOYZhBvAF_I+b z8~5>d990-ZXdKYfIPm5^fE>mLhc~B1M5`a^wT;vcQMwTOtb-hW=$t?x5wmv_SydfS zlk%9-JA?>n1Dt8fVDK(Dc_mSZTtVafemIS6pl6ou0)btQO4u|;Xi%VGf}$c+B=g}O|&k$_B0+I-LkJ57p+Uw zZknX_i`F%+-O8W-a36JYG}6B`NnJ$YKjLmF`d(Pz4^Nz=9*x$uv19D7JYi~7;kk_Z z(e>}(4bm!3jp3YHIg|CKv(Vq0!)x^BJCTf2pRJjVKtUfA@@y8>Uj)6hfeNYi}< zPxLS)T7~+X)=cykPn13DJ{7l$R7)G^(&B0IItlK89FoZlLMB3%NgPExUhW&Eej@7H zQ1^glpE|msu7hTky0D>cMC;G6TZ+-JLrs!+8|ecifwp||jT#xFYuV@{ny>b-Cm=b= zzeOZJ^0`n~{}|majb?%?sM$r|3MPMirjn`v zio~9tin`jXBM<6C^@S#4U02_hx~AIJ6L{J}o|bY>mnsUi(q=j|GK!`$%I(UH*SUfl z`_q2O(^By$mx`b6dNM)xR4Cy2vaN0_!8N75u1hss_NgXHtbUoK>!|G$>~bgRj%yyY zXgFNUaCfQ3Ms?%Ld4cay;)>GlyUnZ0$rwe8?iOb(a`elQ{Jiz8K&tdrhvI0_v+Qadn-dJEnQihle(4CEfQt zgNbp~JIp;fxfOj0wpY%(I#1Ji|AG4ES#_UQ!BVq_?!!sLXZ!;vCBCBDOR)T5=Oe_* ztN#tq6!Zmj}I3!{9 z+nnrv!O2U2>{7P+!6~IcBD>hFu0?O_PS<3p|4MaVtk9j&{5xLCfA1f7$@8J^(J(+2 zzn(*N`C|qZMu*7(qVo?EeKug2m^;t4e1on;laQCgp}M}N8mjNfO`X(xtskm~*1EDc zf=O%e(%%^Ro?&9c=ejqmdh8zwXHp?=%(M@})3W za;)wPO~R;2oC?>>XMiz|y20F&le6ec0G^m1>S`FLEBjYu$S0~=`!G=jMztD{VXQ1? z?4SIN?r?Ck32^^?)}sWN5!vMD!sOS72yxXh4p!z#-JjK9)tse*XABKF!^xt%kg=i+I z=%I&PKU~#y3yHx(BESC>=pSOz?N2lB&}sNHXS%Cxr7lj}c}I7^LyS`~f&iMFe3yOM zs2)0KB*G+d+U4f-_e^t27~OWHE9-`CgSNKLz);bwfx*@7Hui}Eko=7@F*mLpC3bYJ zxT`x}m8!M zdjN8mUN71>&;tl)06&v}9!5YvH(h-9}HUrfLTy_@{a5B201Vd zT%vDHz=4?EJzeew;v3r7;_fU_^rJoKJL42(_zXAq@ol@iiEDWyaaL8Y-VYZ~zbZ;D z2wm%{a8YAO1*rQOF51S5y{mAslH-DAJ0u{?fQ&!oxES?>?m^edmSQ(z(fWzvFJRI9 zwqkI|UpdrOFG)P5iER!maA-C=H`&>efzqWP|0b_$>8jI7{NsPpZAX{6i`cKK?bLJr z*&0pbEV!Yo`0rS7e|K>_^DtSR@p##zL>Ref{6mS+t3mn~m0SY#YG_(?I1=ne#) z9uhSHbMh2W+5k>-puPdq)rkLyL$m|_aE5L2PWy@TTkk8b7oHUdXmua{Mmc8Cp;)sS2V8iq{$KE1o9D%gRee8p6Iqbquo3{1;dqN!ecV= zuxW7Fr>no%#WZcyGp+wU2+>*81F~W{YxF$NpEQdv&hpu0qEBm@Y&9zcAfH3&b))#bp|> zv-zP8 zI8ht>vx5>&jvkfGGO+34;8<2#ThCaR?V$KVRiFJ=O6`8Q#`JK%sq)Uz|MOJ2=Ai-kcsG8#jOvPM*se#Q8Sh9@hs!!9dS?^lk zRbQ;>^uaCO`tO=>te>TC)%?(@DTUrMKj@pf-ZSVQ)HYWeQ5>HfU%0_?x8B6RZMWVC zasAX?Kk}d1?ww?P^#pOh+49{K{r_RM%rWVk5y!3S=SRi>{m_sGeq>;DV{43Iw8;W7 zA#I30U0X-%S~UcH+By4221A!^cgec$F_Q-uh6TB& z#or)xu7QJu#%kjUdeI&Soe%nlbR#pkVde6HFkyuq`6y--s?R-Xl#&^WSB;(#mykg%FDM(RUZB<`?uo3J;*ma|-8lM5F32R69-5 zCu%cI>gY-OSnZefm6huVCE9`H-FxG z$a^Li@3g*2Hyv0B;Ed#Hb(*W&rt9mq{A@mJ*k9# zHebCwUEeb4b)++ju5ow+J$W?c$?@4lxAnuzP=bJ#UFhQo!vjOm4}(I)4fn&V)ZSKo zizcLRhDx`iH4I)ng(+<&Ji1>}?N)sQ%`o*%tG;{A;&T(<>Y{>7!+%VzoOI3jK(^iS-B&@m7g3diGkQ!i9<+|bC&IwRUT7~Oya z=^R{14w9V4cvAOH_MztKuR@U=14ToaJN&do$Vl6Z>ooVssk`6hNy`Vjqnk{zRsO^j# zB=*9&d~!L$L>H9NFSwU|K=i?&st7GbxCX=l60ybLUarC#N6$`)IdtCcd5UOOVW~rL zm1RdV>E0lrIIlBe@P-q$x9Ims0O!Q;VCJtN@nT?mhQjCRbZ> zy-lu%$+d`F0=eeGCAv!2X$ma3u(2hH!al!E{dP$aPITd8U z<(*vsm0$o-5Kf<$3Z9|Qa|Qn)`u9FvFqXVe7CcLzK?URJ)30DWeT)UI>62X0gFcTG z^rTPwf(Pi6Q1B>yS`@URPve3(`qVE-p-*H%3;Ki>kSd#>SO@}G56A0d$}%E%+fYfi ze~XDJO@5M4`~^&VA$>wA(L%N{sS(ybnyVd%G!{G#OY2p1X8Wu(v@gPd zlptQP>}*5DRTPFBm9J9ZOj9-x3dJ0om^_lsz6qNWN!13z#oRL%yM&OzsOIpV>2w`7&9`M?KFnpO*RBcxc)f zUl63Fl(8N&^Vx&K$*cD~3NLQEWmkwf^v<&ADy%FY-zs!C9vT@hhdzOiM7Dw}-Lbx# zxOQM2VZ?*wfC;R{MoyVsIycH|CLqu#Z5H35PrPO{AB>MVI8h~>OCGq`I zq_>&Tw-L5p6`^FyJlJYLv5Wo1wpCKhmF4R-xK@W}(w)gIwgv~$;x`T2w~YUWenBgJ7B34JVBpzr!P4Y z;TQ~utwRCbF)dm6u~`1ONYPvG|&(gxi9 z>@^~)0{=gSy@iI{Q#tCf|NpM^AIi5^qvBsey$Volz|VzW5q@R(eT&~Q{C>diC;Z3+ z`&ImI;1_5>5X!HGpANt1s=DkvK~n^@!tWvclJM(>Um)ZCzK_~2au^`CW zC+QSke7TsRR=%un-}MnB@*XJ-JpksQe~@_hlGED4y|2SH-{zYX7A(*^24+Lqv^wU} z(2w9&lP_u-+VNb6GkPqnrqle4bpZag3pA#}Shu#u)*hca8e0NBks4bId;|?W&|DN^ z_S;Z9PAYiGCaRMew-4m^x7wWb%OaG`EM|r-e<2_nx-nQ>vf~XJ_tCu?7#gR$fYBI4 z>S96M69RdJTY&Lz1VCyI{f|Fecaz&T14?CCB~&C^67C2NhSZvMgAJ)iO4%i63c`Ko zDH!RHjE15tR77KA2*yUdCCrU;q{;0o-6u}ngeYXnq*z$O`kDq`_ok~iVR#t}ulIL) zv!ILk3I*;7304<})oL0wP!UFAaDn`{fCRxbrHd(3{oqyo3sFHHXv!#Uzq5x0^>&7| zN6c=!8aG?t+I~AU7-Fi$CkyW)k|f|UC=)oC3$J@Ulzh=IGvMY8PVNgQtxNRoJIf%e zm4b;cKOBvZHq>o~46e($bG#nPw4(FVbMDroZ zuv-!b?3N4__?zn3ska!uvmHu0l~_J!s$Yp#k_U!J@~m)4PKn$~H0&LQxv5TFhM`CW z59Z(%j^tZ*JqyrM0A1|#a{r1=@RK#kQ{4Xs`RQWkKJK3fKQom7>YD4YT*e44z>tFn z0n0EV0HH=$6_v8CV|IE> zTu8L642#UV$-P-DUMD$eK~|XMqg>M_D|14OPL)C=UeL6WMr9}pVY%!B@O&6EL;F~U z5tLgoXC^M0&6$>SXwFNxiZ;joyrd~JY4%EnJ;3N5lL4>VTFNEE-Z=v`#hSZ@QgJ}3 z;h1Q-nsmyro2cFZBrN^H550Z$bsu|AAYWu?Jc&I6hNiXLzaM^vrlCmaH!3@7XU)Mx z{WeQm8~W}|006^QOE{ET&RhoK4UU*!2oD1QCc`1n!-J3h6<;Nk&K{ZNRw`2gFZq6BI=F!(p9|$YbgNKPDRqi zz6HzRkTiuR%}L3y6A0ZYYyBwId~4Jk@MGClVGRB8l6l0xaO$-kR=<6KA;sI%Dbf<&N$jfG(u-O60v;?;uNI*5kU8MIx7OY}1=$E(2kqsuKj!_q6=?!*29LC&Fz;DZW7UiLFtM)I`w5x##CH|6 z*6I6B^{fd#ufjK3sp4bADKw7=>O8)w@_q*1HMot+RY1{a@u4#G23f0lx4sG)TGlPCd1L$-%EyXGLDn&*L=xP2vdS4aljdq z;j$!J;7q$L8IESu;WeOi?*_^6C#e2U9^!ou$a=00!>oNE9^7E49mWIt!p|tT*2?QX z&-Z8o1BCW7jY?PC&7wzwU!(q$@T8k>52gsbIUygbMrlwGribIJTi{H)CZU<~H8l8yWGJ^I6ftS#xanpw9JKB7MgS_@ek-@yP_eD2cX(1E_#?XJ z;1p!`6{Z?Wt-X|}QlsJI?8`>O-VCoYq%_26I5hhlJU@C{uvVGm&he6r>lenv%Rb-< zF9|0e^X-;oYdoKQ8u&*)Y(b9V*QQaKcaf^k)<>|adRy&FEAGC8<|WzB04`tJmX>_uB!VVYz~GH!sp=2a9}dPfJL*horvpQ zIFz0yrG-&Rfg3w*2@Smkjy!@Us2wh>Uosox!$(YLqYk`zu+%_@$5ek8Ml2T)B z8^oapu~75%aki-k1A$8Vena{ZTicXunD1O?i!>UrDOV24-6e;?ejdEDN5W9MIDaR` zMx&hQ*-Br{311m>rHqPg9qd6!hP$@MU@FiEW)6i-&DjE6M(oL1V1rQBz+@%-;`|=i z4Izu0^KlE$j@rsRttdpU>zRNuu{Dr>L^2!^-zx;&vj=Czv|{J*5c#HaR=5fCSK4(G z#DcV2NI7c1gzl!4r?z5r4-(UMI){fF4L8NK6OKY+6*w@#z&P;rh!bM=dI;gTL=2M) zU^v=DwVU#i3cc+l=df@?#-|uRj!W|0Bs2;aGhmJh7ab@w!b}l&P4aJe7!D;!IWUv| z;(js5gJqIMzFkqQu|AtpQA#h1qY-eSACkZ~aACiaZd@;>KcN(3n`6HWv0Ciqj&l;`ymKF}n?to8L;Uyz6-YE~%mfl@Pzcr9lQU zhi+oQgL-J25-!v;4)xIcfX0VkJd!&0s8XX6ll&(t0YK)lSYj00%@H?wMYL^de#>0x z^R$PHx?KL9CBBSyq7%`_N2;3o_jYbUn|M3Fgp0BRES3>Bs}rwt2&Ke3sblY;+NxUZ zB(<<=VJgPMgwA_w26_BL&EHhjOjp#x(%+^6fTBN#fo!~LC5GkJ9<*jX?5(SfZk z>Hu$7e`5dz+T)e{Eh&NRKjIdem?#DKL{lu6o8;r(SV~e6Y&v3+k9gGaJ&bU_qcQ3G z?ULap46vY1alssvB%uxRO~!!K0#7!=jPfI>mkl80Y!s2?Add-_c1&`NCmCOMPm4qx zzi2~;Z)_TB2nQ|+iTHK-{^JnXxx6Ae&HxuMcv((`9{GvBeI9su8Wzx10X&@bTf+WcF&xRzdL8nz~5rJ)6uSU=EQ5_@bB=u zb4?s|>zX*mBewf}X1bcC=EBZl#i!y;rlnApk8Lw1UgW`=}63=Ud3f#GdAgxV?b35YKk z95l5Czrs0)_9Fnw8vx9$@2&?6?eH!HR?}tj&Ezv$nvtk{Ei)8tfDimEH57dyzV;Z3 zR*SFQ?D*?Olil%$mal@gtW){((JGaZr?BsaX@RDe%E@3&g;|M+~^cjXH55iV! zVTGYcMnu%XZbQ)`e680S3YNn)MD8?1?l-WrON@=}bQ2Fa8215K>sF*UXvM@s`a|!4 zI+zknfE-WNO1>sa6rm&3&@&>mu?W4tR>a+hP&|JZCYDQtPb`%97hgKj7mj=uXwpCr zUoolO$zSl&O6e9{URD}%!GdQ|pM-?UQY?a|fY*?zPqnPiQe)%pZ4sJuh%U(<#e!Uq!j^nQ!f2B0>uc72*j-|$=VCWt{VOy3Oo7n646O?;D1nYLr4h~@P zt^}h_J>YEFv&Ju)!oL-MA(|_&%qiv6<4E=;7vaOB)8}M4oq{7dpnA3Sn+aWn|iz#3$!30yTQ&ZGd2in zlDF*5<;Ey&B5SbRxWpb}h~Ll8=u%(vYB6SvhWNvtFX86Z?7kX+I^;*CjIynxwp3wo zT%nRB=qHokaaQnQ2naf8a8R#=E^06b(L@3XM?&JGdhrnIl@RiDcyBbB_B@DY4SbZL zcE;s`#uC2RIf0LCQaGN$hhgM7kUD1;dbc?*u(wwjo9cN{*>@|9Puh3Bt5(wIOV#zq zIjH0yKEZIr)Ev|3l$lL;mgXzaji9$^V5R;eoB= zy!JH8=nVeP*=j52S|(pA1)ys*qz ztWA2VgeWT{dO&s$?;?u^*bh;62 z>uFmBv20RZp_eGsazL zJf)#h6gzvyn4vq8%dTcgk<5P27{W5n8pr9{4PzgjHLlh@{RHdthw)uNK zb6Mg!1H--Ii&-k&feoC=?-x#S4 zTky0X%l0(;^nuY8c43_G|2~fOeQ2D~WUBB-OduB(8g;T8m(Pe_y0Lu^jh3)b5g|%D zj>Y&;v9og6XFgQyu$ZCEDc@wZ6#m5{sV>{HZFF*9Nj;k$Q(CSunWZ|LGH@XdZY-gx6MmIE%H4Brhx}F`_8)4G24$%XFDZ_BZhh)>E zrnC>n9k;ks3U4JNz@D)z&tPA$2F9_;(+3p~sUxk@hV>Xqc~6Q+9LoL*m%eHIuK^sx zWSmi+Sy>CX9{fzWlCQUATO*_vx;{hL=?JNTq3sY#H}hIhp5bJ~mbNUoE*_14sV&Q> zD<$YM+cH~Ssim%UTlQ96=`-EpDXhOi8m>#4!cMoAqM80~t)}dt0V%e&X7!BH@`i7v z3&QEBPV(hAV%T(3aR1^hMk!XWd$tcd6(!BldGgrs2GVHVl03GtfizXOu^DUDP+Hn> zsY#@!6HcbHF+6qh-QLB!8%hyDy61bcUm8nmb&Dr5XKU$6-D4Bk{w7kcZcQVR+TNo^ z>O;{Y^`(^J!%d~|pwOq1gETk#8|+qgqOsJRg~Uqpb)NA8)5`JeWUTazZdoMj-9lOt zJ)?`jM0GelYG-|c>O|M#b1fu1i@EtbfKi{x8@^*N#!30Qfr;#9oU~GBdsg6U{w(ol znl9hK2Dg!3kA5~m;5$V4BEG3B@a^whe7%jdQ5!a|E5N9`7rPd3h?gGM>iTqGzINbu zzh~Hn_9*G)T&C+FEeq)x7K{nm(*8x-NY4$_RUmF+3*^yKG5i@S7`KGBBt>&%gv zdUj^#I!QB|JQq*?lTlBT3z2Nytu|%qpX|>MXiH+-w zT7Rb#d!@6K4tp3RFdJr`Au)Qcl$YTUg&A@y5PtF?{+qrJzKD*UD6g3ZAxz#MDfB2p zqZ)K#A&FA6=C?Wm3Ov6A0fqM%K!-(gWNtd%u{a}9nxvHstx->DsHgNqDpzF?+nywS zPYr+RSg9F%>oG`MWDYy=n6ymytd33XBCQJhz9r>5UB6OWT&JtFS{wFKTMC%eX=Ym* zM+(B9C#!K3zSFb5AZF?&jS4Gj!(-^}ZP@$Wq?Ii$AzQRvdYtY^h8z5;p!k*eC{!+8z5q+e2+OVvq1e|0_Z^};em8Qnbj)FhkaI*C@@$n!k{U#52 z&^q-dyI_%qh2=HjNs`AkVQ#bZn(k0zb|6z~ru(`vyOJqo7k}4JdI??hHP$s<>Zu!C zkIhJz-q3}B(6Q14-3Mc+tBz-HWJn7`wp^*EHkS45FHH}tk8NL~*85lSrvB2~+OVIo zvq=>G5XnYaq?s`{A~-!KTVE0%528vh^Nl>GsrNqaT-=>prYgJnwPIrPXZ?VxhyNcDgBNS=V9G ze%&c9K@)Vda|9cfJt@7Y`>~P*50_Sl#lpB2*_m#iF8+A9^s%;1g&qOaD$4Y1jYarM(P}N{+^DV7$a@c8J-qp|8$(7DCQ}tww)dh)a1j;s|lv`Ffz%9F-xp#DXlxW znTq31?H7%%r4OMl!;F%i6l^j}m$M7kg86*4u+NbK7pi0XSl3e8B6i#fdGU;EDOnF8 zrJ<-7mMgHEI7E*BdDRkV#Wgv*kWhkRz@Cl|1C|p@NL}J8(p*K-+j?=;dPyvgicqM- z9Jj~LnGdT&S~Ui&4om8($aM8VMFL{tl@z)!`<3?rSme_HZYZFI3pV!=#ZX9=k0s3n z-lcX83_EZU<%=)7mOkL0NJ*OBMP-^wKz#5TF~{}n6Jb!>IedCU(N=h2+R;>$tHh!$ z^_?jR6G)3RcZh@_p*SmP%0qziTCu z-~RBL8ak+eocH8DN|=Tu+WpXRyBYg97ya2MpR=-D$%Vc3>K|!Ob36}PQv0VL`Bh6Z zta#tU@k?<8;r0#^G3BRv+&-*t8Gn9!bO^tT7j}}|Ffe%EjUy{# zIf_tAYW8hg6K-&pK(d96EIFcYHOzWmiD^beZ~|PWwVmkA)*MfEDZBQJ)F5n;>hHw; z4MSCLL@7&pR+?ykx;b^Jq{k5jdOzk-|CQKB{ezHKb$qhy3PW*w?oHxe z{=7Cp+jB2}TbsPCxL3>Vb6C`Psg3Thx47Nb`iPeSFIUYeyINhxb#qG7Ql^_ACAIV{B;o_{uEQ(h%@FbS zy4mmvQn!w8iFhzGwBcUOlN{-)K;-%qISk=8z4Dx!6;F`jA|Iy|F4Gef2@>MV@f>K$ zu1t^`jp&LX+#6q;o895zX?=49phKkYHy5XUVdB30O-dZ|<0Lq8szpvzPUqqxx>8wR zg$o98=i@HR_;Qz7>(pQ57Y;_{zRAW-lv<42#=$QQD${?7FBR$4XF1XqKnlyxF+iFr z_a>y%fmDugQX03lp=Erj%c6Bgyd+Rw$93&l&aOLCjxUUcR?8J}W)=HwqSRiuXB7+0 z!wh6s6V^9RYFb}I#6p(Rlx|K~L&|#JDmFb&YSrxoFu+D}7diZLQ_m=hAnrN!s{rXx znrRJ10g5LTyd+zmCp~6=5h1qP7H7m{f#iv5Bo`M4kdW998!FdMI+2#03P3Zbm z{hgjpkEOGP&q>jvXZJ(Z$lo8M8Ul??s%>MG=P}q-gKT)?^|aC*BQc%GiprzQ=;c&J zq)$~Inkn-95M{H8r&`0VJSTP2)z-0Qje;7o-jk%rAyb;;%>$(Qn#VQW!^0a&gQB}W zIc;dFUJrz36eLyeLpZ+nfOW?x$}B{&xW1=d*`!-sEv&ekUH28TwUeZbHbgnhSFAZ1 zAy*6qDUgaR*Mf3yc;2#Xc|u$d0`)gLSombAm-bhdIa$iE|BQR?mC#ptbzaAJmNOUU z5=|HJi99zFbP%98O38&=c^GpY69lboETAh0`comLH7&unJZq@Z`y+mkEgpvhzkdVd zkgYF7>L^}>z_GwZmPKXd2o$)!j=A1}(hed#7YGlyIu4^SB&Wu8j=Ojv8s@PcQ?L?F zjbSUNNNsC9X1+6CWvO3R8o$YqIRFOuDKBx-U ze51&DYEw~)XOO!Fq$#NdycGBG{sNU^!@B=kiVT4NqZF~g1vK9QraVb#_;uCv7TOQ@ ze6>U?U_MK53wu1>0qZcGTZ%~z9*mlX2@pDtFOU#*NrQtjrpa}mGO_e;yh>7X#iw{* zxvRbxivG<|&IwapCNQ z19Rpg!01OkCO*+)PKJX+l#h`QHVp{rOrLm!1u3#zCi7Ud7~e=^mh%pk;#o8TeoLx; zh8+=vDVmwzCY|MaUW=~WP%sj4%=rrtu^t>%#oIKF^E5YJrK3QiXfdGwj6I-#LR-sfJlhiJ=fTx@bJx@E;~ku9(8n zdW~a#w8n~uz$31XgXg7au!r`E3Q(V`5D!#T?W9SDV*CciF)I;7S=L9E$gM(|w^pn1 zR3UVu7F-0*B#zS_t%1b^=Vdz-0=&46JI3JD5x$$k_mgnG70&y@SuC8H!Wko+G~sj< zP81xl@&p{gN>hCbap^aZFK0bZJjKs%HNQ1aqD)3wsxNrv+RD#$A zhy^P93+HL!ScKC;IAOxMA@i80gtJFDUkHcEqW<%RcQPDMn}CEWwa-xqIDrsQ8wv-+ z9-=@&>;Vps$<6W8To3~iEpiZIH{sFf*>8O`|I{}khZXjAF`J8AT%ok7;czTZTF#UgHtmMjXZ#QMMrp zI$lqAbi$~Vgib^Wj^Gj=6FHC&+GqupFJi#~DmMujIe>jCV6z46eGapm$OZ6i0h}j* zvPeh{U@ifBLBQq+7&(C11?*V?8!uqw05(&=MhMst0V4;n@d9QaD1fN~NDhF*1+ce( zwG}XO02?4+{RFJOfRO`Oihy+!FyCU%8FB#YAYknU%qw7Cy8y-rU^4+cDuCo5VI#mi zweVk(Px*;hPlw|(-2Q4U>;w=WJCrXu6m_Upe_=yPN^tZ}{kGG7=>>F9bHA+O-C_Rx zyFNSboG!kjRonIF$P?}QP2muA@J$lV98jYxE5wAmReNo#eoou>54#c+JGUfY-Yc#DnEJ85j zl}#o1R&LBgFY7X0#^0~&X0Iu#<~y_(JJMeE9|aKYN@Zp(SSnMVz$)L{w00l2-vNRa-H=& z=j#1yINf%_7q#_OUXGvOC?zlP$(R!Rwx8n{5DXsE!yRx+gtJySuL)AA{3QrKQj-Ld_+2i>#=oZo_ z64B@HPjJeO@VM|Qs%tp9mh5t6`CGi0x#IqCGL6l^g8_KF$TbnuhH2&ArnvV4)$$b* z;u$M!Y-3DT#)?#laz@E|owd?gT6NHIMw@aR*Gl7@RDyx+EI4TW(SnD0EVzmdS4McZ z3Dm%pOJv=fOT#E;R*v2AY}y5F!|)tm>pgfCgXPGS`R| zh}(*X_fnP12*>Kb6wO0Un+h{V6baAGoc0aF>~}Ye1`%;KCZvV}C!#pMCtEL#b!L`W zc4f@-PAi@b(h4U6kgR@sN!l^T{r zs$djs*)b|F*l9}jy@3@Fwn zV9-Xu`NNMEJD!&YH?{;jGzS+Y#j(!58)0|?HnxDaQrI6`pwtWM)B<0vzd>~1CWCU&ny*(~FSA4ZN! z2fT&@Bk&4uw7>2}cyolC=`wf?WC)@N;qeWN1p~Oi_QfEN=P+zxUcAkbswD9-ANRUL z7tePQ&-Wby(^=sbSERi0iEC1F3CPZW8)5=V|{jB46u~c(jCRGlOI8 z>Jl`)b9Ixs9bVmJrXn0o29s8F9$fo?Zh0K}MET@lQ+WgGLDEiF3m6Le<9~mXp}7Yc zETSn}Txq$GffC-J-QHHB0Cq^lBgSmmvK+NZ z=rp#-dG#{!{Fyu*vi7H;kdAVCH=`dZ5%0g3^A=Ho{){9EO^L)cT~5nQkHw4Ro*>7W z=7ui^O~CmWG^uNH_I^B|l5Y6&s=4$6J1}2rWr8g`>B~}k`$G(!=b* zjKc^(|Cxg+wleoc913>RB9b&8y&S5_L)jRHE^QaA?)|qTz0cpaDn*5frTS4Ssxt@A z$l+=G>T$scq~HK>4PTE%JO+m16O9_yuB9fo{^^%st7C|Mt21BNF+F=*rtGCP~8!$*%A?FRVFgzwZ$Ix<}| zh3#kW0oGTh}z+M5?t&1yP}gah=DNK_W?;TN!Sh^$ZSyl%of<^pb5QX5X*CbpRAVo1;@b&J!QoexZ*j>8pi2qbo)Z{oM zjroy0=cjRWzv3GyiYe#`fetrs0hLXldXE6#A+8+rnTYy2g|tOfsOHy!LtlVHboSA$ zJh7IYS|p8$ef5n0NqKsXrphAYZCZ?lAL3FedUd#rjd(>GjG7s}a@(3BCH2FR|@ zIo@Mo+#wy}nTtN(GS=52McMO!LSxOPgFYXYb0D5$EZhrCQF_XLh}nDRG}j84=AOH@^&mZrm;PN-VvuXzwit8`1i4kQw9cL zhuTAjvB6YCSh$hPU4KB)dXC{)Opi_l%BG=&(o4h;N^1r7Ae76ksY_XK4DY{&C|?F$ z_hsVzc)|BT3zgl{Ie3|+&m%(=$`ndyJ_H)7_@;kgzco|t6{oDLi75}5vYi()Q+8Wt zlTOn$S1ny9$^!XrMr>YY3>ZG8Awo%c{VmXchD?rUJL=JRTZ?j->!oFStv!@i?w{p(S$D=y70I+ zHP<fYvae{!|B7g4&DSTOo)tcLfbzzx>>pj||oziqa7G9U%#Q(+|Px;V2prOyBfF zFwF@R&qE%2BRlr0)Pvnv8d{G<6-iyRB`mW@O4K^oydtS_y>DUZYe8$r%dF0w=nX7= z*~djv2m6UxR2zLWomE(4_(vLt@1fbSa?h;Z&fAVkovk}Y-3lcMR>{6*@z~{J)*_j8Cs@rR0@Ex;UG$11e-doD0hu26$GWV=f@OCt!n_7L9XE})U;UsKMyJG0!+#a zdAxme#y4J$CDZAt1zJASluh+0!sm#9)A!ba>CSuJu9>dw%cx|}fi}|p;o^#BG-3u3 zkK9V>TR2IFMg2u(0E$i-zRzB8O3~U2tjH;~viEz+za5WtZZRz_DbD2wgv=W2w*j!o zLU`j4PVoI4Zd1@RslsR|3<;*X;oD@&1`anA!bA**B=kSc#7b65i^k_6@fnZLqxiHV zxCf@tbJ3V^QD<4Y+yixvde04!9n=|MPG{@l%y=Co8V$KpR;KZ-5^OU%%ak^$q|P^Q zP2WI=X@*qdkthBwXS`0!i*}GRbUkLr5nS$PN}%LVs>$n8@{2w1*^wS871V&CFdI^U zh>a*>M-kCb(3lGf>N&X{!YNq`o~sZc1V03$X*3H{gKvXs1Yc5vZ}hz9`_7n;1vM&1 z5wOE5>}XFr6~IuiUxe>c!`(D_&!r%9}>P;72jI|wn~L9=IIOtAMmwy za)BB=Q=p?n)+sm~N;5-Dy_%Uf5m z*7~-bAm|Z)^?rl(+A;WO>pkA$nAd|g_8s%$HP$X=j@1CrFI}EBAzdCn$-Iqt>doO0 zw(+^}$fqoFKiFKjt-EpEl%s_3YM`}p%9K<@x1lvYpX*2At;Y*MD;SIX1bVhZ*3Y4W zsmPM&fli4U%D@w%pevaj zTPDTXq0&M-Np46I;Hkf&%11^Lm~cS9Yoy4RF|Jh-6ETieDwwjMR5_JgP~Su-@Mc^_ zyuOjD5L#zrhR7>;8rJ-6_F>K6cV2IcV{W|0)?K}Jm*!O1o`P;K*KT(9PbB}R@Yj%o z-@Kh`9Gs&F7DO~g8vHoU29Q{JA{hA0$YfiWZa zZ*~qy%bufpY124S`@cZ7yKZZ+0vs`+xYP0Bq#qMOHr zC~w(dx#K-jQ58fZgtpX`f5RL#)3MDB5;eG=84n7BN=#_bx9(U11a_j-8t?G|Zgy-d z;qe+FUM*3Yw<(e+%_+b#ePvm=+{DHl3o2mzI|SK~qSWlz8pnH1L&0AZ3-|KofV?;?($c1n(x0gG?a4}+R$(Z(2MmMdUS8_QE@eB5-Gs5M z$UmQkY8WqH7g4>D^w-XEmJkTih?}Rg-O$BBJbFMgmq}9MScpFOwM^H5#4-&vLeG3K z48{BNUBL$EQ@6PMjHDb}L4s;hJWvk40kZ|=Lkv=xz8|tvs%)3RV(U|!y-N`4eH^^^ zMrAttgMc2&d>)ar$=VgE?-7+ad$*CwVJXY6F2~?#i?h>WQINe>x5c@LVBTWdxtDXw zNpAblSO>Q@-qXar%`E)g;HIp{n^IkE12*7IY246}7&K{dm@RLJqYRW+5kT~XXUZ8N zL{G9BL+MD6R1wYk0bfy$RwIAok8ELozbW+ya?FckiA*YrDXd4>&e2Nt<+u>#RotYQ ziT8Oq;>qkVlZNy^4s&CR>>r}7&C}&XZwGKV=@u7s8LAkt6!KR28s@+xS_NI6-Zi8go2DNtS5ZYi<#z@9aS}%6 za%Gt3DlJ@;=MgE(si1L-{YdszNJK+Ck8Pxt`f|{10j|w6M-^<48yR+ic9+Qgi!|w}W6I zx5#JAM-SL*k&ouzw*HuQj!^-z%K+#I049jGP5^w)0r*(|FG`A!IsTB}{UK(5$cH>c zoc88Q57<~QrfQP)p#!m~n;=7kGb*vH90X%0C2tsCR`$U+c8+r?=obniV=NL$#A`)? z<9NIn9uG5Qie9Gg1c!bWr#^u~WK-4Ch`VAK`UNRE+EPwph5^859hU`#2&8B8QQSMs zdcBLYCl%P$S^=t>WCpX?kr9n_m(H>;--YhE3E}AW1c-ogo4)5=x<=}H*`y`kJAgnb z8;MDqYB*Ybb(dJvSAry^@CVc`TH7(+U@t0BjmU5;&4MsP0Uan&R^kYP#Tmo{NS~&x zz)=T_vtwEa4KubSHcLJ*j=4hti4=g z{rH~rgdIH%mYmQC(4ALJ#`!e@?U2~)3Vzk$uH{S{ijtM&pkz0O^1Ap2-%wv-&7oX- zfs|mFX;xS}3SGh#<(ki%P7P5{xv9PHQkrS747-oP@}rH{>F4c6dXP`BNz#~P`1 z!uwAl;fWzcuYMQ4g{^Aq5_|&fB7!yr+H7ZUhbiwVCa;lNgr*5pg-@}~You1XH+HcT za9jJvB63fGsuf2y7m5i}v_N%+pf3+$E!Rq|!_NGLduL&)?|OwjzE+BAES5)FM}^K= zmgDJh{u*|o3Q#?`T5#EhT5;^d4YiEyo3)aWMK%qS!d<4vRRj+fk*$Ayc5^LG+M36( z><^@d?UZBG*;^yQOW&}>LibD9pg67cgB*D)d01ciKPq$#bA2GS>Tn8{Y~BXd^FfLn zf?+X$BHEAQEIavu)JQk?JiGOQ6kq3sP-xr;)3nj7-8v~Tepp&S*#aq9vjW0&^&%H0 zL%|G4VJ1vpTv6|@V2jpC4Vp%^hMl7m|1KzF8r)OuM{V5@<7E-U{zqIOMtmTKp+L_C z8YX~$U=|9T*{+VkShZvzzbzP6QHNI)C5luGLtHQSs+VoZc)+a#egX{fwk}6JIt)ZJ zrJ=w}4T%OZz}DA<*}JMhg8;rkK+;=N!e|wCS0H`4ChR`X+)!{{z$Vm$RjRNG0m~v- zsETv93L_mhh%xjeAoWa?;rb}{>xVcyJaGoQ^P$u$qV|knjhr45j6)$)&8*)?Qbtqb z$r|hL(u>B>s_!s22CAs5sBKSng#S1{~AV@t9J)wegLWuwxN zr_aF)Bra1PN8lMk2wbMc3Lk^AL|{(@Cb?m2oli8;NGQ_pIYs%4^l2ihL8P~c^x-1# z?#ngPBkL~b#em_s91m=Ug5Q8PlT7w+&>kQzC0u-oGJ+jD^?xU5x8^px@v+o0w%jrv z1~HS}3aS}_mUdUOv~G(@^W(o#U(U$Z-e$?4z`z}?DEk;RFUP7I4YY<9=kIi}#ZRaN z$L(P2pWx*L$L(IWY`$gg9ffjtyU5FZ7aa&+l3>=tpNsi@J~!zC2IUPTN6L7_jzVwz zNVH-^LwIB~2PmJyOIJ$s=?}}V6CA~-J}y%z!EY%8&s9+)CTk(AcWJyGesu>41Yn`y zE%s8bYH-2`y&?&?Gvg|zKx&Lb%0&>uQ(z`QDUOn#r}z>nXf+Z@!DAd!HlGZpZjFsv zFU9CqoMdy>ORefn6KIqjDw>>=Yy-k|Jx;QN>!qlMXNKXZiLKrb`eXRe?4YS5cBuBT z2kWIqW4@{pwq;+uiqkM-b`bw%XW-(zrP$Od8mT99U8@ccp%_e&Rfble1eIrU ziPq5adm68Rb~Nrhq_baiS2*;B&>4{3*0`KqO8Z~gl~1MEdc6fcL73+NvS(jiuhTfV z8N!+GWnEOeNZxex@T*6{R^cQRZykNbK`%6qS~;Fe$Jl~@OO3Yy;| zyHCtc-k=0yrQG^RDjer^vk%rdWy*cTqCIojH1Q#i)&FiVEX+BqlEYw^keq@*#1_eb z<1LN@hX`T%Q^jMSRwf{J_5HlN?A7y8q1#jj1_-+MfM<0IufJuJgIujc_cwF%FmwtIEKW zsYt^quECS;h{P)Oq0x5119YlNLy>2uyge5OY+Kw@&%3*PC^vEvdZzy{urLTnkZ6$ejrlAn({CbJrgCs&YPe3 zBR$A3s`DbnmXn_a8C3d1zNjxbw8|It1wQ=aZD6tBnS=A>Wn-iAljwFHIctlKjzu; z6aeUe(7B0#M&sDc+?JPxMfOW4t1iiVoJ%m3OzjC zM_#J-(&*!;uGsdkqz1agLG0JBq}a&W<9Mf=ha)W~3+c{;7>~@tzLsL!K5?8DxTaqQ z(wrSPI^E53o>4l9=rJ&a_d&Cfyi#V5e~o)q-bE~B4S-ndxd!Ulm!0cJG5Krk4~`?q zogc5!JQ7lG%fMvmE=6=jta};*flGfG4(VBZ+hZ{z&|#?dV~7iG>o`82H8lYWq?*7- z#2=LKeIU#=ypqf2@5(mt5^)XK=B@O0#1YCxr?nbyD{8NYg6>7}DOY_GJQC#}AP~yd zF|6MvDXz)K;Fb6hGx>~WsPh+W`)|l(i#AD71A(?phFm-s(V!Qwbx_WCzfD^VF`;mjK2M4h1%~BUTox=Ns zHob8QFBh{%|^WKltwH;&$XIm?^9d z8^VKLh7Q@8UW>;{s>6{gb&X^wNCr?nV;6-_FvVUd@p9a%PxMW!$XkZ)MVvGX3gW9I zlGrBM&Ij4;VBQX+%~nkv}Z^9v>p@)Dz72w_|xyI1$q|Z&MsmB7!z2?e!it z`$lk2*>@<5#!Kx`u*5apceZ& z5ZoFUprf8&Fye60P@X|Fa_hKB9N^NA2!z`dMB4#z5YY?;HqgOofzTbz;G)#mP91$X zjNC&l&Jbnh8Q%MBA)vEJp{MxDif*IY>Bmiti+~=F`~dXOZZlk zPbw-A&U!dyMOX1ZvBAPyB455iC(l6@_@91dMaS?Jj4z8^R8I9@=(fXJ#>Ms{+~QhF z5iPD_ibaQsOi>`StmrVj^eZd6tbV~r;jW$NDmsObvLZ5Ppr3DK2%2IhX0#{Madxc4 zNa5BrR7UWts0>#!OaytKcu4uzVZJ1Zcn$z85>EX>OAef5hZ&sNWzfWm0_g1M#0=sMOl-6$FYokAM8AIMqh(VaM5FPjm1D#bv6+ zw=dKAJ6c$Qny3CHo-RL{-7Aq|hCRuBCDDkl^!SVvUM4dIl@(DC{gB5Dk%zT0 zdW#$lyM7F<7(ltb@?NCzt8m$l`}*jt48#pQA&bPxYTA&L6104c4Oa#^`B#qT#{>Ud z)*`;%A79STXS2SSn0-Y%>VMGLWK`@REx2O-gfBWVh!oH{Z<>n8`d)p(2ANBfWqdvt zLRZ&4Ar${B#D|<33TU?xIwOgqIv0_YS;jA?sIC{a&adbr%h{_!Sp>5L=dLZ37p5jg z($WRvIHK9v9QhpS!`|5{H4h7h!5nGZUcSTjY?Wr$ibE!zbf-6nwtQgTs9H=oRl0#e&o1Pn&wBDu|qc( zJNDs9$Bww8)m}!AZ_MRK8FF#$Z-RavwmfkL3jJbBU{@}7yX{jBp|rGFBY}C_X~^eK z`))0#VMD*Uji^j|olxRx0w{t4qn5JBt*vp>3XDBv{V<{oV7XO@d{C5i`;Z4by|`--t-O}>fBcY*1x5_rSrLLWu3J;7)A#OC;R~qkl=<{Mr zG3yro2 z%w-i9?utrHn`8^68X#pH-g$xIKz{@gsenBLlGT*Z9TvhLZv+$i#SM7af-YK=w?K#RO@041@{smU#5yw&}@4eQJ z0j@RjCx@CT@_0&5nDYB}SyGO1neIMcrQp~roPs+~qo>@3jjzSj=1`W!gip>Vwws;5 z4VJr-Js^o@)%Ib2(R^b!c5>|U!nw-Wwz$jzCnc4BYhjH%J}(ljAj>(e!a4?_(SuyU zA7=XYXSq7=xs90|&XS>F;uq+V2gDeG<={CHT zhU7VvoOdU_y-w~vN~~upY+q`Yn8pa`7NJ!@>gGsIax?6o4dd2(ykX$M2vT1~RCU*5 zet*jvD(cvb_g5Af>rm5nFU+Dg!amw9wW@PDA5}_+V(N@zzwDO2YK$!Y?k2KG35X_4 zz=dcwu%|rQ`UlKaWkW&N1T>*JG(nr&02I7OX#BmMMGh_{JtN)C6sStIU|8AAL|lz^ z5{f7me_!KN2nv~NzSZBNwbn7q@3~P2I4EHcql!2OQw=JmK2;_4$pEQM1Kk!k8s{B! zdd&`c4hZgucGbh*Qzu2LEExP0wJiO`WL|vR21KeaO4St*lnSlH9JqI*G>x@$U^#mhyZ$Iq+goWUP&gK~R3KVbw?QYvl^;eF3R$l8_ox4=?_W`WJ2tSO zWl3dHboVZTL~BF;+!?3BR1wsuvj+>%@QQs7iPimI7CX(@u;KZx|M%6~eYU^pFW}XC zXAEaVb5!pVLQ|6uB$c%+a$oHI@Ol=yAN6@QoY>*wJ4(&GQ=q~iaq57I!NtBaJ*8V< zc%km^TboM3NI}6|Q1Bf(1~AjGxEYNBvMHF8!u;cEubo&L8Vaz4LrcL_AJ)x?H2`}x zFv%81s=f-Es?fd-lJDt43_*%DSY~M)JE&!2?!S^l`8*jjqjWizo>eMfJXF5|X|m)s zlx3hKEiotHzkq;e%8|R%Qyzo0wU{ALfi74%C%+mEVOtHGoZYwO9<(u2fz^j>PYclo zd3z(;q1~h;N*H)j>AxV3k z<^I%ub=*Iyr2H`<4^$;stAkatie&$-Q_TKHr+D;5l|gfHLlH=LYb0+qm{CO}a0=8Z zAa#m_vyR+%C=Bg!@`RcW`zk7^LBqcj|L^k~;LlHaiRTwuo!@(e=AW$;`8`=9zqR|Y z{OJd4FtWhCNpqgR>(aq$lsZeLB2kQYm}wA4|?=B3_-@eqgdnpQoD9@e!?79T*F4aDTw%p()nH3>h^f;Hoy={O%Z zJbunS7|-$O$1Q>O!|qD%*_%|SFh9dgiJ-Lz*pGm&k0al~F z3J#^`=Fg$)vhDJgXG5WcXX-5Dk6B#7G@L(A zQpPv_pp0^*HV-pKtR(FyPJE-x#5@pXNXYocP&5EzznPw0P9>~`sqhkI;p7j;)k5%7 z(}%Dliwt{(Qv7d`Nx7hs2UjR-d8jd>(|^mR+)#7|GZfEh{D6rDO+A&Dq=GH>` z{@d6)`X2*8ZQ$jd?D`kDtnD4dI|W*hj3YGFau!|+;}$#;Z;r)U80VL;KA{08OCDmu zqodZj?6+T~czbWqtWO;gY)eL1T{P^l)WIRP_|*R4wpMtG$&m0P#tFReGuUXWKTpE5 zO2XSe(iS`qYB;=OEe{UgPFG;$c)VX?Xmif7@cTRc)=?Qis!zoi{(%l8+qEzjLJVuS`SvPMGv07W3FE$E48-9n6M= z0g+%~ODOC@%<>S-(yBQ3l*BJ!&{+qk1uR}Y3}W~RB$}MD$m3F$@%5IRg@yvMd&8=T z%{VT#={DMqq=GDL&0t6A7d$z=a1mJ|KITgGic*U57~-k+9ne63l%tL`v80~8wT z+yEgT9OknV9Mw=)%wj+h>*z3?yoCuB63j8n3tygYmcPx1&n&-5y9Z`@$znLlP)vTI z-f`PzKs19?5|jNa&5n<(G_x_AiT3yI(nILDNtciST0QRo7oc}1sRd}%pS3t8HMCda z)D)q&E(7|N%>@Vki{$@@;6JKpy_l;C{$k3&t$dmhXy?5NX>~hqO6{C%pgHsG)%F_V z*cqmH5lEo14i2o<2mivE*dL(l%?LCkF#GEwKm%}|FBaBpm$4JC(2V&cN{ccLK(DQL z&Z2Z}-#!ja@Mwc{>Am$Pe5nfS1xS6-4U(l)5g)JDhaGX!kRQhf?-J zj;@J)DCil?>3PiJ`~~O01GVlv#0ic=UyE6e+&|XrtWDkRNo$;09vtVa<86u@2l;bM z7dehcj{n?`hth=WFw`|79d&S+j>ixaqOy3dw{Rn@m(Bp$VKnZgQs%!;V}3_BG=Y3d)IJDs4tYj} zIDjp&gINSyH}%Z>$O>ij5EaT(PSQv+zUFR(omwenurqp54s%a4Y;llmu_Km zgbGyklv<$G6L^8XGY1M(iB1Qd=KwSgPfsEpQmGy9A=>`(97C+YmM>$LfQH7l9LjO)>(p0`!GjsR9uI*k+SqfLzHNl^fjt+W)oH8= z0rIc@gqSYVFIC*er~xiJX;8*Yli?RCo4o20ohH@-z_lm+}!%(HWBL^>e%PQQDR@JJ8Z!_?C`466>0E_#PxyE`t$wV}?;bNmPYcnQeLxGckwsT&X zwVA&DTl9A(6_aNbP-MHFn}izn+!EyjyHRPqvG0%~njzzw zTvx7_GAz~>Njn9Gl+lCYY+*##0Tj)P{Y8}#?oE8(_fC|*fU%StE;0sRlia)lLml&T zHMr?auI)^lkhB-qFlqVNk97|%!dBLu)WFU=(hq<{V{IMiNdMT&J5uQV(k#5uTicNU8PF4PO1bQ|YjT+Mll1+CnXhc9GB_&Z1pz!ASx2c);91H-?VfE^Y!a zwGb2pW;f5O6yN}{N&)TPoEo80(7{hZoS+~L6sQXXKI22HsEFjlN;zeZnRw><5Zg%1 z{Cx+LPC8860n}IzSscww>-lGYT62KGxUdHY^U!#D1I3a^_TYjPZHa}BKy3DS_V&bN zA%F1DzIbK!6;QO?KVH9f9dT$P{0U-sCZG~(OxbafEw+VYSnfqBW_)v;%awG1y&@;-8Xwc!zI3>%m^pRaD4~q?QG{tv2ynB8wNG7qD)8g8dJ2R9l z*QR)Qv6MNr#R&3gZS&VoR(VlslJYpP-bx$P*J^_F6~KrOw^fWnWE`NBzn{xfCI8+E zUBMyc*9g3aj8fM}smIi3T@|VQ7Ov}a9R7|DwnnMJx~GL!QOzmC+&D9Q=W~fNPOf4IS?E$-9hb` zw5j+Tj3G*1PdYV&#IO0l#k4eZIo4MP;a(?7K|hPkKY^nXJ}7t9XcfXo@{P1^IA|n} z%1rbJ(61W`^FSI^Eb3LWg&3o>LU-*j9fL8Y#!z4<#SI3F?c}wlQ%oMohhvA}Krd9l zhX7&hq0?==I8hwq@4gC89r|*aUL8jLHwn7uSa-fh^640rOCMYjmc=-}0f^@WhL)Pm z?Yx;KUy_V7rv-$xW=X&C3$0-al4w?Pn8I6`pt@+dwsMgTWhv3MIVtm!?9<)5LdS{2$kq^gJF%i0Ip%3O?P zIPQa);5ohtJu5m(`*2G<;*e;*vz zZ(?An6<7>g+B&gZBU}0%b*X?wx2d=&k7~a*d@XNrx@30wveeAJ2$3MbZy-{jo8AtF zQj1$mDIKP9A_~rCQ>leuzpX|gDf*ACeZI557q7zco&8uM1Npxc5RDcA(JjDnJ{3L?sY%2on7es=5 z-Ry!v?IgCa++a{qguZ^Y2xLKDO})-1?9V^x>N0s$u(zPPyO;I-1Ug($<|sKv9f9?k z9U64c%3B3@eBV=hhpI)|p{1Z#5u{$W142TOGE3f=h+&d)XkT-Z46rAhOtGsVCCdme zZl_tM#R?5kZD-LRuofNbHD+)BB^jl)h{>DU3gm|QbRygOm((a>8Shl~+O9){@TB#F z5I~hDX7Mcy+KjkmorpEc>8f-7m2B!`w zKi9(G;mlYK9b(y5tp>{yUvs+jpg{-^UytywYKA|o&BN(1MIB6<#DM`155#%G zVMh=~rsJ;UwQI;0n+_JN)$_z_5NNjy_Q%}7W1>+ce}jQT#4HcJO*78SMf)}R#PDoG z`b9z&i0}!Ia52+yz{sK4W=UQmprYe`6%ou^!J+)@(EAi6gAmyK2<%E8BJfEzoovbu zCFpoRRLNBHckB-dWS$j(c2F~4bU+iUQb+ms4nzo3lP}s2>Z{3b8;IbsgTI)$W&(vK zM8qHz#xMN5D(4Y62Q-@401=lkdzoZaR{xX2YH>kNN+Yl?2df1Ry$$Z2jU6#Yj= zIkvjhsD^@tJUjie+M>VC4fNM7d4J89Onz+*jp*qqZL9-p+QV4T57Rv-cQSG3J#h%% zui~3`&g=1kVHADvvQC)8d@8_C4dvbP0tDgifMoElo|=8MUr&vT(z%}BE^K#ju?tKo zkxU>xjqb*ApEJc57^~nTd$2#b*93CD?E3!FIdGN-U*dlZ-4HvHuOsmJ z+)nQ2a;7mF3Z`>;GHn&B#TtBRHOiS`w@~+kp;IRALQh z8Edu&tcw33F=2=-3Yx6)%TO>2$`HTQ737g-WG4Qz$aFpQTnyW2&|Q&@rw`~SUC04a zk8tQ10sUW$eF=P1#TIwE1jf1EN9M~nK`qa zIddk7v8@qnSDrYSOWhE+xQWJfLVkLsxQp^rtgx3@)C^!?Q>vjl+1#U%_#ljcxfd%g+own+E5IMi)t|`qZ<*^meFd|f>xj*UvISDKT;&{W_8+t;E2`Wm#0SJD z66}@Q8nif>rIv3u^%r*8-NJ9DI!8lmO7QX#;-sL63t7wnZL% zypU=&$|U~GU}MnHfo znXN2M;gJtmoe(MfnNBdS-Ex(WQx=NIgAC#tkJ8_Ilm%jG=AAN{qPP8e0gjs7*_FO1 zR{}~kB_=d@#W~yI_8dBoeh$)4=uEGMvMtFg%ug8f7}$Iy~Fs z^6+qiBO8*u;h183XZwm$E+S*P(UG|X$^$KAb4DewrtpVrVa8Fx-KY(;ajGG_ubZtd zO(_KgR0C2-{ZyFJRyGG<9q)|aPOigvbJAG%HR`~Yg-}t=-NKp}4Ff;#MswBUVaDVg zC`i0bKFU|#V~{bZyXv}u8)x5d>)1L2URce+##ubrfP1Y%&2ToAf!w}vuZPy?f@fyeblpoF)Z zy|!-oqAOL|Lp`>8Dn`!1z(lllKqxCA8-6)d80_pnio+D4v&kC)8Sh1LJg?-1%qyNv z98yfq3|7VCj@jF;vs!RhXp?(~*vkw?wsZR!L-xCvFhdd`|JUugrd}W<43NBJ3B$(Q zg8Pue-N*s>T5!2PH`GaCm-aIHDMs&%TM!?d%be4X849ehF`?4*)nl@V_3T1D*AOQS zMOMb~6;l6XlJws$=;u%dBT}S)FzCMrUea%pWEU)CHq?EURBr1p8saH*abo@qxG0e4kp+gKMPMh= zlY`ylYT<@{fkV}n)2;kld<>r%D_-at&5>aH^DXw$JS7fStrm4d1pnAlsSahmK&s9q zJnjujcyO;n*&xwwVvIIuXe{rz{U;d95l9ih#;w~6YvtNxCIWq)1pMM3c6U~bW>BXmAHb^@(n4zdU__-<|rPtP<^^Wk8&dP{O7;0%IH{`lNTqA)nAXt zNc3fQWTdzL^>R?kqx42_Vq~@iW3`3X>L)e7080z%yaccVcG%E95{eB%$`Y-WU&D>G z)F-QgxUwKsyYyc^0NM1dCjB1UVkAdl*V7l0vmC)4L&*u@90T<}%2YjBAizqg*9>K30ZR#K*Vk{>R_wW8qba`#}U``MVnu71S zkv3R%dF&u@LA{4TaPc5iF9L<%V>=BK3phx~W1V|#@kBF0+2%Q0mA*gFxSDE+ zC+?eQN9G|*(MhfL-}U>Xe{hWX=vyIhg8Vlc6psWZT=C0%iz)*yim4%r|Gb+h&0T-T zYP0{Y-~7R3T691&r-qghvpRVlLFGkuLsYg4I-KDN)ryV^OPID4^n7HME3)dJ;Jh1| z9ijCMiAOFg3_OFhzmbjm`&^Oa?_0!<`!xb*F6xdvI(@g90_`t&(U70r&`ZatM#mxBRz}vFr-&>Er<6%M%Tgt%|(Y&4~L1buhJ}IpZ$(_YppNd)V;XHMK<8qnU zSkyuTHL-zf?nA5GMjD|N;2y=c$p}@ZK2fIYOp&W=F92%-FkhYbHZm?iC!X{L_b_>N z1~`OndTUHAf|;8g6-<`d+88B;yuDhwZt0~U14;4Z+3Zun3luF3z!`mKNPEA_7OSt_ z5MiLF=zad;QH4MNio1DL6OEAD8PHF6IL3P+v0FX-e4m^t6ymbHVFyRd7&mG z7}7=$jg8loC~M=S7RPw7a8WIwKDRtr_~JD=GS4p8zK*iq_VCY;hHa)1POQvkqDHYp z%GlcjPgWuGU-Wk`!W_UjJcX8#70WQa{%;I`S>22b8DK&Hd`o)DB$xCHNCLp+5aB@y z7OwlxYJ;M!IqtKUgO@i;Z3!+gc>&Iw@fezzR!~ms-<=O(PQm^T(g=N`$oyMCH8eu* zLkJ(uLeR7ru_4!UWKacy#v4It4Dx2|L@9uVh5=h5B!wss1<=iu&2*|i0ZKU{_~S!> zV(dDSq}>r??d-0^CI7Y<)6+2M72_lwn{#ycYx!yk#{)c_k>@!REmrZZXvM{|f!!VB zR8M>;TWt#;Uc}5T7ckc<1&l6XI^&alc^e?)KHvu#YwQC)A_lkmIC_VkeR(T8jqA}B zkmZ^_7jXK?w>?}`SSSQ?ldCUS_|x9l zG(jrFS?E$GOAFpC#ycnJJyHjD=Y;&_ga=-Ho%vlIcKq(EKrJ7Ax8)8M=j`ugQ}9 z08=+;x9iQ(ogvr&xx7LMK}k7AHoRQObKqCX9O_U!qv1Iljc41~$+FV+%sveS369La zAg0@zowhZrsM0kNoq7lebhy!72ZU$7Aver?_G&Xog^}L>)vME z7j5N3AoI7PQ-F$Q$cP0H2wk7~KbI+bN>WEN0VGt|6fY6*|Ja>>_d8{CmLl9%z%a12 zT9qzFmA(ppg;BOU-NyDDssOh4k<8eh59YKecH5Uwt*H6e?hw^o;aMA4&{<0#iTS&5oa1j^Ngw!np|8wa1wl2^%6 zejj$E;qxeAOV8FC6oPLtJ8=}2BhdZJ#0cc#IJF$w?pRBq6l=LZ;gLnB@e6sf6z6IM z;lO2m4RX!)&E<&6TEHR6Y6R3wEgZvEGaSeC(bmK$N>V$&g4*( zh#HyaFlLDo{j?h;>QSo4hKmHE#8M3B#dfKvj=CuZRt_*7LIcdKBsoHA33aS3y3H3u z;28h%MDBBoM0Lo$t}P>y(%22il!LSfkkZ}VNICo;DdT@SAIotSqJugP≶3Lk$l* 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

<7>pNSY$bf_wci+ERj@ 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

A15y%7R(9P@!hcQ*eOjZA((3F-4$Ri~+`p#&92v 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�L?SvI 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

z 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�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 zπ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ʈ{eP^K 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 l>mit zR5GS4T0W*ukNVIjW12aS?`hiy@7L)-Yj@m{no=<2h<6qkm#A&jg`y>q@dQ|ULq<_ao?R< z&MoQNI6sk&pU5bfBY$eph7ZsR(vb0+X-4}9DcvET6tc+(tmG;ZrY1UI+??nIcl9rc zUQpVfK_UD$t1&wJ5vlEy8?RJgZHfRfM(Eg!^!JL?muVQq*r3M0+u9Kzeg-Jl)*#jh1?o&o9b88oFtzZ@-IAprL@V4j?!FUQ*5Lzwgcj&tcq?|z(@DAYJXEcGeA(2(7R)3NuZg-*!$tMinM zv#yl4yF;GieqOclEkQ&ymUPm5E<9ykq-RR)`4buUHPajOrrcvhTBGovT_`uF{x551 z0v}a%1^k&T5Fqe|)l@~I1|^D05Hu-7GGqqczzjrLwSw4aM5}^ihNS{YoTTPCj#8_w zwYAd4YFDw!qE<-&lRzydpomgsQQ-}v5=yURJ}o_p@O z=bn3RV|OJ9-r=WB67+i3k^}?PZ)ZtRU!?W(DF${sc$CU-L=evO!6r9U3jkFBP;T)q z;~m({mdVF(>R4D{O(z4Yq4UdNV0%ganCY)FrQ8Cs4k@T*V`b#u1vBZ>x21OcQr-7b(Ar|op7Q7)bUJSrgd0UiXaT&yyqo3xM^{_HG()4 zZSqRZSHoEPC}|azylQ5e0z!6>XyuPvrRqn z;K4p@X6Ox3%XUMkVez@Eb?`z;v&G`FDg6&M+ac3RqcqrT{^hy0SyDi3CRM3F zZuy=k>W|D3GNr}JPbn}1Qiee}ND+CRT9l(JILrq>?`G3$gOVWsD4Fsjbjs7#cb2|i z_Q~Ut$v`sJ6|PpFYLEdxQI!gV`V8(w8@cgiX|n%srAcnTp;WBBhg6Z*$+GSx)sRYe zuS8oHF&)ainWeJXFP1CZ|ECHZTzy2_A2}KbVimcqwn@BNfpv&uB#QGfx?m+B>gmWG zjWYl5P_i@85)pk>UPi;e_=W^7j|!#OW(b~0&>rkXCd#!S;TSUXKln&*;%*UpQ}g~M z8;@wSVetLcN45Q;6Ria9zd%0o#vV{JH1c&SfQHiV>loySv$th-Vbp2mlLZhphMuu< z@sV1orBvmY_Ex}-E9K#FDyt+L@5~`S<`8ejFs-*MBVC@DO_DMwl-%>AW>c&hlM(3m zs%~VU$oJO%ZyXYV|G(%608Np84vp+BIXL#*+W#3oidZ>{%#(FhXqEysvK`V0%#?YH zHJ@3+ccz(o`ZZ~aPzd|*$oJOClMqU(Sf#Rv>bftkS||e6QKs=at4v$wplYv%a^(LP z`GpcgSkR4pU*>08#^fh7spA8HS)FPJT1$2*K{l%@dN}}IDT`A0Lt0fxZTrkZ>b#Cf zjod`4qS21nTrJZC&xbH?%a~~wf{{OV>qSEBUtAtyFErSEyIQXukK)QIgpTXo6>Tdp zFgm4!{S8pfosHc@_WBsW*}l;7bWdpc5Tt&#Gc>)x**blg9?H+wN9E@gZ_`5)hj@%$ zUZZ%3-dd#_`Po)ES=`<`M6b;sB5m=Tt$wL+kgQfawimkEoJ)JOE5I~TPA9(}D>pM< z?yOimdr&a5JLh+p_aiwi85g%K_9si5d~(ikPM=b6CglAyp-S|ej_?TnhyFj{-)7}J zgMDuL6y_z%qB9o+&1XJCNQ&}$KW_{%)j4_4FVCV|ZQiiO@})K}FNI&EFf__jwDB7A z3wWM`#%xJLfLm^%u#;})ZaYym)%;C zbn35zzxcb?x-#YqXtL1HL0hj!QT2uW88bbF(~@*f8!-S_niFo%d@NZ+vDJodyz4Xk z84gi}MD+=|Q=DQx_Jr7L6+e1DG6JV&0IWA7Tbjv}W_-rd3|&eVoNir3qliZ0`gTY8 za1^fehDxyNH_O<+(8K9Si0=^Fl<|T2Ji`J#C)rsuKFyA!S-O}LjWmxjJ4H?FaocUD z{*Kolx96ovI6$3=)d%U(`8Imw$`!7GD@lb{5jOQ=)yup6Ijh$1a*K34C*wmZaGN?9G(uzR+z2p3IXA zFZbm9&#UEs=t(TeW;&3)ntn;FBkZ^7-pmiRN2>y7MTfTQD`Lu4$$swKZ3kko1w>#) zRu!~JYnR4q^mLFfo#;{EG3q_i?7^6x-n5#yqG^zc=6r>pHXAx9h7m? zDASGzi;-&1|4D%}q*X@}gL?S=)a7ItZjPJVUK~8?r(uS$u{L*a*Ap27y7@tL>q)-)eiJ~Q|p_iE1_)C;G9g1XRy z*CU4eMORim_XlUa*9|9tY3UqZVe=DDkw>faietLwZec^167CiJ=5hYon@O;OTPr!{ zQH5h!-BC2Ydc*ft@fZ$b%>^TOc@@Enyqfy}mUOS?+D9EI-qW7-WTK{t{b7C@brj#6 zbu98QD7pE)k~s`iS0Vy*J#)jv@aT*5oG-QD)l5w7)lwQ7qttV@S#$5xE4ESn9;)Bq z6BAB>SPK#tW#a&_4$Ui?t0&40VJN`|&Cxa)*B`Spn@t;ej9)X8q>%5eqv&e&a-NH$ zB_M>EKR{rayPky+A7_6Y8l4DDdl6@x6>Y)NAhqrtP*-U&v#d%{wc*H0a z3=y)cTYB2O_7BzSNPY7fU&{V@<~v?HYxdpdLy`ev`i!eRp=Cp2^*ck;&_SmSgAcPk zqsHfH!7pW(DKwc`(1(nghfIU@#%D(kN;;h2vDf&FMR|1TN~#b&MiL&lXaG{zIU3CWc5k+SO72_K40=$2Ud=*>1A9Q85bx zaD)(0xWoPxd&a`uc9evzp3D#Y1=d`e${23BOvpk76Wyfg| zr$h7#I^7u>V@~P8E~c>?QDPi1|9O(WHaS_T9=a!8w|`l>MCA2h|ITQN zHNLWraXVRp-c(Pjp0fefXu;~3)RsA-eZO+*6mRHa7VQ4XhUihw(C7@Kx!O!b2;Z2I z6x=h2vj?7>+3Cesn$5?>B!e3Ifq5AwXPNiU7R4pB++qHk1fQ|ofmW3+bwpFLs-owj zAWKS`Ik0jaO6PWTwDgy0OTb0>{ss#cpNOtjHJp zaQ>Emo%9jro1LUFSW{#~$4-J9%2Ao)tLY@h0xsdoa)p+uqFig4%DG(2e5`=)TBeFD ztYtnezFS)6U8P!PV1<^s48Ba(cC)k%Q9ny@nasAR#!gt&`TdN=zO7KElJ1`zXi=+dIY!NMj{lZ6Uyd$ zT7|MHVtuF8D*td?J5q$iOkl|RyViAX>(q+>wm&hpzjyPy&D;Z=d6t=#N?5eO(juu12+4FS}4M zsUy@o_+^5>2M$w#Bt7Izq36QMkGVCQtjId8w`)xg?mPcWh6QSuzc>X_DWi*uSrDS8-asE2A$Euq)h&z>5 zE}qQkby~%*`9)ANm#=b%?#y5!7&nCZzs}M1J*2z|9&ih)$65d6BLRvn$!Pr{1pJI(=EmAm7 zd$cAmWrwz=A^2tTf^K=`$FzzGD*N)J3Qku%TJ1ENon?EZ1m3e!M6@M$N*#`LZxTP5 zLMTDjw253>70kBz`#77*GwR9Pir1f3{%4+yI+hNamTR+h?IN`T-mi7QD?hANyvO&l z1M;~HckHfRfT`A1UTf_+1CjrprfQ4w<>VAbnNuA}3+~l|$5R(gTi44$(LdG|PZTmF z%}KRIB%Ap_mC!RexT}p-wTe4r0t)B4^UvVE_nwNam%M#gf-O2xh${#<0^Oz7mRC=< zMp?zRn*N7Rv_>yB>Z;AO;2tg5oT}ab6Nc(*77#UBaF!alt>#aH2}@Jt<8)Dw+a&Dy~fp?22qg15x^ZXdFE2cNkmB_EC9bnM8eY1d5F<)d$mp`_PF} z7Y&S&en)ZNvg7s?Ti?J`8ESfv8P4yab%#;iaU2Im8rALGbMDJl$89O@ldB3N^cbVT z#S~73N562NY>oU-6e27RGie>9maQ@`e@%#!`&FLsk-3r+PIT`N-fi#R^7AQU_CMOw zR@&3-)fZ2S-!!V8Dlg$e()gMbpaIUdC*V+TxvBZSH1uPQ+VuhrZn2ITm?7PieUR=sctfLKsBJqFm z`Cf*K@npsl^G4|yCIOigSTkznGLM&DLrN1VA|m=9L5CE>g~k`zNWkp=;bGFk zt7QSfTW@lZp|UR-2yk;Fse^5eHd`*+b2fjETw5vW6<<)_dJ=5r74OFErqZZ*mKbRW zZM$Vz&6XU#c#i+69Bl^CaB?tRiYPZx(|SagNWScRl?r8(7g&$!s0u@zq2(jcaW!*U zJ@kZG#*JVE<)8#Sc#Q@w@0lO%l#_Gtel(H!J3Mj->Cs-i@3P(p@@}mV#Dm<@S%rR< zC+tS^*dYW+wz-;-L7~rcRc>?^Hij5U(hO^z~6OAf^*_I*tcdCv4Q@$MR z%V>^r=c%?@%`T8ZvfbZiUtm8#G_aomf^HmD9rggv^y2z7e$BVuiIMg(m5P?mLUeJ8 z*M34bW;!}hIBI3|&y^kxCofeMCh~Njddf#rN)|sMtjt2-RMq$SLf|axFq`#^1 zm;g&CTukAXSYatyc}htcf9BQD+;S>v)8ABo;&rb4`8#xvcZX%@{~_JODlnaHz%K3R z%Kypi!cF9VqUrz+Mdn^%R~=Av4%iC8cOQk|38xXd{l?1Zzt!TWp@@0i5Pll2o)kabZ#_EV#(%zkWF@sTQz4cem}$=sW6U(g zdY_ygW2QvGO)*o17Ei;m%WJ<>TdhX}IPCb&0r4<7q(_6C(hz&ip3|Vz~gDB@wg+-Wuu&{+qJ@7pR>VT#i~`c86M_Wi~V1v|tXhfcJD=-gj!j^LY1# zE@!s&pG9E!5$=kQ0vDOBEEsVZbQ16kY5 zC*Os#6;&_UlK9o!b=K;RcI-Q)DPx1)ZHolL@OO{d%3sGPQW?Tu_q4u_-7kVulX=_r z81ueNpJ99iQlP)e6PhFvg5_YEp1H+m6d@k>FsC@Y_I(~>dK$JypK*6O!qrdI!n;A@ z)4=7j_hDY85D`mgy~~(uA@eUWv4lrnnJvhC3Nkl0Dr7z-!DVoMbDvqV&4v!-#~!vE z4oVtCTeK_`6XTwmE#5PyN5w)o+tDT++f3Y9yP^j>j91y76QiDEp~BI$0M2(&{W|(y7P+0|tAJ_klR!_DS9T_bwAKS^GzIN0+Lu3} zdqSQGCHv0nrX9Lc>e<}OH@%^YFvgIKbo0H6k{tOQ>i>M#d038z`&de-D?xh(t zhH)ZN1!yo{7YpbVW+pU4;9kvJJYA3|P%_!)}TvxXgiicPZWFtWC-wuTAxzH|K;_eh#VVMcz!@c5{E5tVdPoT6h3UYvQgIQvsP|t zLa(=B^(&~RuzHAM7FI$hJ+wH6RcirA^}|y7F5&{zw2E8kS%K3T9G$`12sRohxJ4I1 zj#X$oVC}&W9z!=ehb4>I_$f=EY;wEn{Z45dv~AHb^opv9gk)(SJL{LKqw~1mNcp_5 z!6S8Zh1enU9MF!uz-%ZL2-g4+BFkCRh4>AMsD38=QDUjQoJD{i)BI846g8~6DxP9o z!LTFDVXsT+17_V;8PzO{8kvZObg*W1Sbtgi$2n?T{So85uukvY$_2~eYMn$`NYPsi0boGvhX5#WwPNyI+rh~9I zyl9vnEOFTUH^Yq{<8xyM_#i}yd2Pf_hQ<1azCpzg zk9>#oMCK?i$Fhvi%J0fjEg~OtRQ5D^%RC*rX+*`YK!#a?t&nq9ta}J)gZ#6AyFV)i z+?ojMw{~xlQ|yyMCf<~refEEa+UshaKXTmVG1LMa{qBfbBd9CXZsY@~?KJZ@ zix8FtucHl*4*aXec#Zo2+HR}AKpc6(C2^_btQ{xaX*1u1PUwz9uw5RAd0igIq0fP4 zBl4)g860B^+-=S!o5-VC&f2a@9{q^U=xagz=w)$Da04gj>G{B*=!N8qNu_Myw#*!V zv_AX0aG2siB|(~7?BY$(HX&@JkVq_YOD*q4-|y5P-wB^qi1Qurd7Nyg;gc`csPM>5 zL*w`y;pF^j_{;@s3!m-Q=l>^sifY{`Bj40Rm$hTG|7C0TKD~$LnKcksFq$3jp&RL; zdz3A0UjVBhd}AEp z8$|wL`+-Hzza-wFlL_)*A&eprA9All77O8F)@RmM?vGS=CVf+Pz9%D2*^j=qKfeQh zO9A{_@tbG%kKxyeVXHn<_&GD<_|4lJ$FBp!ehd{X{0gkk{;uGs)qOjLFs!m)d@X+L z=j{2m4*U&7jUl)v7F+!E4xDF>Alqppa`&eS!8t?X2tKsu3ujx*>@FlZ}g9~iXs;y8Z)+#Sd7;&ukjpqs4@ zeAxQz@2>FE>b?VtZ(9ShlfCq`@rZqjxtnN)hh!*@>!ib7Tbpl9e%pk&vL*=!4#g(F z4ob)wb+w;)dJP}+;EC7_#{?~I)9v%wcY<&D_lK_pQxEjF z#o@c+6!`uM{0hDS-vz!RBf#4AYw7ohbe=`O&tg;4x6yC+L5u$f$LRMkQ2;t>Io;#% zE#w3Ai%maYL%(l?LgYOW*bUMO!2lQ3++rfu#hp)PZDdrn#IO+St z_?w8L;kj`bC!PXh4LB$mho1??Hv28(qv+e=`=|87_oLwnQ^B|N!Wa$zMo^-TG`uJd z-y?iDjfNfJGXkG{1N-%D2kn#CMEY&)H^%~P?*%c?9H)R5g0zZsO$1W{wAgfMv0n%O zU)i65e%}mVv5?;)-FJnr>VP7hGY;Q;!01T2DDW%zW_&03H12l&CJHu42Yf#W&$A$W z>iif5w-Pz4BZQtfgsb^*It5)Z|00Wi-v(dS_lIx!enr97^cZ}Xp90@sfL~Ft|95~7 z%e?sw4ETt2f<-el1&Lq4z4&N{Ma4HF7@J%UT>u%8nVtZf{CYdcf z|9N_7lzFmV?dSJF(<-L^Xa)}>r zS^L#$7fw@-c(Qd9l%To^-NL^% zd$c;=#uZHLXE}{8oW{wr)|u0;AHF=Ddztm?r%f-pnuqI2@w?<<`t{TNqtw0&Z4%GqPH3A8F-ld4q*qMmn3C zNws+?yt50(mEFc-_A7mCsS#=Q7-m3mncMc?qxe+$y=FvCsEcP4TsUws{?G>QAy|qh z(4azLArFFr_OR@~@FHkvVkky0#6z}FYUXgM zdGNAic_=XV$^+~p@ORk%Z`&@VAt8)b{tK(2Nz=1v^=I)`AyB{QW-c#^$3GRS2=+*;jm+?bdlXRVBUxh=EFQ@DeJLA())@ypf?)d$JOZ^M^FEtji2 z?A4si%8T3yr@Anc;*@9AW8WOyd(t5K8}&pcsjr@c#{|j zu?SI})@PmeS2=zb>Y6M4$mCGBd{C}p#%pt}K70uqSFSLlR{l>OqXTm-lJ`v{-6D93 zJYEm&*-{GUp7?>t4j}8W4;8tZfSI|9H_PWrg{mXA>4jays(Eg3d6F$KfZ)g}u2JJt z1E~Z~9yP-0i; z#$BaOj~$KEgDp4N8VgOUH{bsc5|j|=dg81qPvPWL4;O;BZVHW0b>?hZ`i`8U=S=-W z^`H})kz(vqckDnHnyz z!@c$mfbTIi)2Ez`OJ9m~i!qO!sni}iftj2;#Z$N! zP_9QK4Dv@D1|tALAs$y;Gf1!2>xnal!IIwa(6M^qySNP~`vCl-HpcgvzuPQ+8?X{P zEQNXLFrBlN{Y`hBYt-V@rSC+3rP@#|eZ6AoDQzr`2a2$CfbG$eG^1WPK!3a=hjDE| zjp8?FICU7^7{P(mzF9A9(Cr&&-n@XeBXXF_8V^HNQ{Olk)NuLc@$lceZyOKXLh(=) z=^NM9S@B>2e?;_q%^sBtikPOISHr^Gs0R=@l@;UDA+VrG152cAjO3(wQ- z+r5Q{1?ClqW%kd2cb$1xt)ee(2mwax=c=52BXCM&_?)+wz7^6yh0Bv2PNEFr{_87@ zh&U@duIBU0-CR=BTJ21W{kt3ukS@G}vi;G9C!~v(J2}rX4+xeK)88 z9I)A?%MlTqm3*xM+3*CFuE25TY+d?FNb7|4ac^P?SgScCg9}$;bE>K*yx1;`(=K`5 z^w{4NT>k>D>|#1j$Cq2Wc;5hafDWcDkA#q znHaEU>C2}xV0?b+q#vRf53xr0Kt{Mad{0PY-=-MriMZ;-dfvioJa&%l!lG*KTPG~o zS)R&HV?3B~z4_iIk*Q7I#9P;S3db=60yV>i5Xv4{^1n+PDmI4#n=Jo$rbDhz)H`z% z-Kry)h*7N<;+hM$=!uilViQfh2xd=VK@#_=BJ6#I2+23()MH^w$MGDWk9`W5MqHMi zp>f}HNUuAMq8;o(qR*g@lsJ^K;y+6%Dt<@QrxXu=SEa24#)#kFIpX1QkrLPGC?KML zqyfyR@s5CaL<|cpLZ3@8vP6wSyBX12w3}IxqB@pZ;oM%a*BQKaXuqR=mF6?vAe^_; z*h;KldJ4tzM9z#9{{T^OMcM0V9=`x>t~S2_hPH*+&BqNYm}3i!R1ZtgjW`eKtLMA` z*Z<@kU&?xGT7BrcR9umBjx5z&Ifnz?T{#Dd`+%R_Vh+_)?PmYkF5{jQmvMWl*SI;& z;5+k6$R-WIo04{THWTmvJw?s8;^7Xq1-7ZDtKp z`J@_up*J)qEtKc5zA|J&eM1wIyrGH1xCK(SZE0b+~pvHA(#g8aUh$}hP zkjbh77Y*V&;-03Wm=ORVguWXNR9UBW-uc*W!>?J?$WxCwbRI8dpQJEQe8%gzy&aVUUs~34$lKrB$tf7M+VS9YC3F@y5gdrRTF;;QQ=GMKd1l4V#nzJhqwBL3FQ=QFZJ8K2S*%HWg zX&U~@Y2zb*j- zj)@EDZnK9NFG9&5{VBfc*P+dG zPirMjEu;jsu`tPPO2O1MnaKTtOK#yE6ciCICEd)gu6W+S3BycUF=B@N6t8WF-jz55MtI~ie8bBJ<)oIy z`bfy|lH+0&#AbUS5rJ-47hBU|cZgk7PVKxTmA=#j=kl)vM|17|`y`2lq){UwE-F&^ zU>+1B;3)MRxRo(kr;Mr6^(&PXv^ga(iK!tMrzf{ozLOequk(x>r&Y*-BIUwJ8OeSR z8)gy+?Q^n}Evr-cE53jgxPMbx@&v0=BI+boIQM8O%y&U;h1_K&Xh`|z1rPu?#*-Op ztRoMo9^8Oo=|ww{ZhCk)r~V(V$%0Kqu=LhL>Xu;&vfH&++L2!mM_$2M~$SsjcW2`^NEap=s0^s*w8hL{(rp;zTXEA3~6jFZ;d&}!+1oEELTOrTKT^iUfm z)6E%w>O@Hkg;*0**pad?$N7yjGup!+!XkQbLyDf&pyyO;4{qn(8Qg34$+GRXoloQC!?_7~ymOsKmdF2Qc~armDRSv1IdZfU`&;1P?tXg^b6f6-K+d zQZO8r&e72@wION-(|X%ko|XSmHN0B-3P8;-kbyD>-6d_Sks1lA9JxbNlvMBcYD}uf zIiP&dmyEK({DE_pc2$`U{Tm7QF7E><6lpxJzBTYI`YPBi>c*E__!51NhmrE|XC4gs z{v^!tEDtf}p!Y=JMSq5lnWJdu9}sds*jmT*xrp=Ax#OjQTLGS9u4DO;FOEgGaTaWl z(5US$3yZXBMSRd)1(MM*<~yrJzfv@heYhVzlgL+{(k|>p8e2yl^J)Fm`Jss+bt}CJ zti{D>E}EC;r1*J<7)-(D-iz*i$x(`k++<52l)#1sqh-@04RICt@k{AtG;nE*oRNlR z!DaPz)D<4rto^-_O_HQyot0X+=i&l~EtFd3G*UB4UzI6GrVAMioXAqM3RII`X4Z{Y z7p6MMbUP%CTq8NdxufKH2G1)bvd>xMmtUup<9}l8fBgNMelI2Osq14ghyMp#wS;2} zkNgLYA7<~3v}@F=9Wu*x-_!BHX{3P@gqHt;<)2NUj5JTvCfKf&zzY~#lz&i(#k(VTbrL=WaMAq37&K;K&LDoE?@7kz78O@&w`Pp$`wWC zRFxVS+z#-@BGL7Tq0wY6+M;@(HwZ;8fp|qY3bzDqrG_C3x)ufR9npW0$~W1{mnQiV z$VcT@N%_c`)GMz%Ur@cyLrWVFFPQZB>rKma8UkL>{!TY@r?tBwGHs9{ARhx zEAnHiY+IjAol+Dm$*}od!IB|1|AfU;LzCwRk0%7W1WO89{WoiC$6o*gYxj#C=jAsn z{wE>Hw>23+YstWKxjf6{!t*cW*;)tX{)Xq*Xt<=EGLhPKiXJN^TO~z= zP%e&uq-jb^54q2hI*(%SB}g3wog81$qWcrrP{n zYsX9AGFw=0<%X+84CVg21eC(m2XxGAd(Fq71{3U6tT{#iU=b}xdk32f{K>)QX#qL> z^%IghfS3V@=2K^>@xG-)kRZTGZwV|Q*ps$)hD%#Jc^pS@#_RlA^dU3jZ0mI*uaTwv zq5Nf(=M0@3PFis}N%j1f-^H>2x9}_f{zpFMr_m|Nkeiow@AgyWOZ>bcVQQ3&F-{P7MjhnMsS9)=CgaTL zJ=)rd!{kV+oJV!U&ZBM$-dm91*P`RCQ>p4T@WW94)Zo4I69N}{ayBiKHFha1$8v(@ z%cX08qc(r0z!RCoWI~qZ-2ihYr@*2;y++|oF+Ehmjg}3f9KtY$FR%y3@H0FukPRFe zG5>+AZJwsjS;{SR`;3p}IINt=UG6DEFKZpcu_p|5#B`HW&9>-W3jTOR!&teV6xu7% z79}R-P#}#eso2@_5?Qz!4a>5Y#Ew=(S#0HVFrlm4xJaF~X4hzqJ+h33q)`qHgovua zp#o){4DPU*8-7I((t9`P!Hp7|m4odR7vrOo;EHSP0=W}tZmpjfPQ4}GKib-Git)B2SdbIj0k3kIVZGpGtP9-+48#}{p1^7Jk{wF-S zU7g53*`c$$`Z!!SGrEkx9fZV=_jjLIf7d#LOEc*4-qA@`kH-=MW1Jk)(1;g>g2ZA`{k{h>d2(u(cUM7nIB**6B{7xg`Bts6nvY_inyMh^*wanY z)8|7Y!ko1F-TJ!e)2x5gRouaY=>FcHCvv_srbQ$n;A$Z|pOco+W_Ts#|tPdw+%Oxcm&p?Hd^rHeEb&MjklC>*s5m|2yW}55_LGWbu*M$bnnD)zcK2axOq5$q)LQ{;=2Td{($hc zm1y^St7On3tSCPOdOmD9`=JtLJ$GC#&B>ACY$1g@4uf zK5yiSA4tA=xhlVlf)gYY4?VAqJ@lW+!_jft@^dxPvu!(z+}gYkc|5dNo}xVMK3L?` z?s+ST$6fMe&PVd+6Z!l(PhWi@Pc8hp9bG|N&~z4wEiFgg+K;Svhol~Gkm2TI@_0;T zI3^jaca>qkWcW!Ff8JIVO8vKgD*3-q`9G8V*1O98v8wPR$?&<#uwOD*?<&Jbs=|)} z=IsO2_0@j)vxh&s1hYB2_;ct}{@fCkr;qt_T-waG9fTYuLnnBG)y+P7tl|Th#*_0V z%MiM*)BduyX6dk2 zid)B)ruXs)D5N(O8B^!C=;29BEL*X&2cC=M#kgae;)X9Ha=#&mNGz`SGPn<}sNtf? zGjhe?S6$NEAVtqttLJ&SOa1~UNY7VEf?IfoxBmOiviM-&@h7bBgA4e6bgZ^KiJL33 zZOMC?L?ve@nw=$HJN^Oe-mBy~hv$=ed)y=Ajh#PujQZ^H@V z@L7_?ZCF2o?dQMuMUnP7_ddQL1Bdoe>2T!}31jr*r+MFtg4J^0R zk#OiR-;Zxq1>b;f&4{GJ&snRDR`hH*hKKcW@qUh%{X2iNpgpEM_y^G zgV;`0{NL=>#@6x6e(jzlXRt1%WwY$xZr@9ubou5oHaERXP&lWiZ!R*t1u)SBm}rYI z(Gwn{i_5q)awn_ZQ}*xL^l248D<1!`!6W{B7$K5x47crc)Vk|LsI$vZrG5zn5*nYR z=hXPmWfz_0lf@w$EcDi=ph0|+PvY^_XQ45=DRw#0(o=Z#P?;DcHg<=L$u>3Q|f6rNDL2- zR;K<&52;Yh$aef6V%E9Gq)BghXk!fUe*Tg{2zqJWtIma_4kk@MA)z5q@IYv%b)E zDdR(_56H9INEwHoa0hb1&|Bp3?$)AlM(XYII8Qy!C4LJ#0A0K}(ZFAQ)Q|TST&8*> z#cEc3I!%EDADe-4>T8R$i?#Y#%M@zQ9OD?mq#7J3d*f{%GM z?-2=^@ld5m=geb@3`>=yUcFdy8R|xRLU0YiFe)h?)_Ux;R(ivuf9S!X6kDt$D<`oB z&!^;MNXM<_X(Ubxr!L_!UA`O3Dkp{eE%AnDRb}DXNa#P7Hfj;Ajonh@G_-huOwKXH`1WYd5Dp{h*MJuZJCpoqC{eJ4! z)(>66ey6kQGZNPJAn`{D+H>#mJB5Vj-gbpYpY1HGm5l@YdoIoMrL(#>!0+mr4k(_9b_!1+Y*{ z+fgs(FzGcSVk%Gqm2i}Gb-5Zbp+KdGHEz~JvPl+>zZs26-H&#Who-}#dlGLNi2}SL zoV*5YyGxx$Vr00qg9@8(!SlxbZSVx-jQr-~z!DKFraJ#lCgfwN=hG^i5`BR_X9z?4 zi{JO`d_Rh{J}vu1M0|YJLY-|QUe>(kWG<$a;Zced^M&TIocPr5p{FL}nLeUh2ciCj zE<&A1!w7ZmHfmNvT|&Hl+8h($(oXwEZY1!G2=ER|2h2SpD;YOJ4`fso?TFi{5=F5$RX)D^eLbwv7E7gI-hNg#q(j5yXUzVa%+s{M@-j%>1Eb5yRW_d}d7y652x# zD3KPZ@`n4Z1~RDcd)%ATpxt*5AAE*MZ`A1xBIHEe@wQIg&R|Uz;jvta$bK_%ar9sn zBiUW*G5&*Ij>si~&`N^9BWa(Ok?b`dTg*?p|7A>$dU7@rE^cRxUA>ugUV;H@&uvxm zb}%p$u@MMkx>;@~AxV9uEM0Q4Hm}guE`6Y-$QZ3_YeqldtQ?)Hw-Uf^YXAqh&7M}O z+3n5bMmhzkH>Zjz8c~I=IIgQFJi8Zk&^6Caz4}BVJ@uZRv%45KU8}p`(q>uyABlFA z2WQg}S9nApXK;TPebh9y*=zG^XU=q=YQg~f9^82R_{Nrx@8bSzZwpm zFXrfrDdJ8@%5vH9pWhnXZ*Tg5`yLXU=YQd}e?>LCmO=|{>=)YlUG}48Cq%BkCel>% zen7~1;XHR`Qfk==k-M+SAI*o#ZJh0C-RMnxOoo^*=L1~oQA?f2HnLwQdoa$bLrIYf zc|eVf+e`G|mnkYXx2}27G!&Bxt7TRpQ%m;3Y0~9vdgSq=-FH8z`(QHeDI=Ksv&#p2 zLyAMZiLWYt3C()kmq{ElH7a~L+qGcyBt4DMMtEJRtvygKP4~~b*&-&Q5HVM8Ud@|Q z13OC*ymk3_HXo%(AAXTIXs@^OHQ@phuj{tBzi2mDgzx1UpH8f6ge z{voi`I^julg_sog6F0EVlHgr&E)@~($!zf1H%G>Sbtirk{n~Q14{l7SD_hp~v1V)8 zwR#Rs3X9cJ(wjS`|H?|AOZt(H=_OYB4AMX8n0}j;K92PL9n&XU=@|J(?&+9*wUwSB z)@1&lZ+WqtZTZi%dD9?%#hV6|8JZ+jv5_-|O0>124~XlOgd|k^9|}Lq;BNO1l-(h6 zelL*dp4H82mD6fn2XULVcx2Ri%-+zlU{H z#wi(O#??QI&(f+9e5Dn_(e~aPjeE@dv~k9>now3>!o;%@vIrpApct zwRP;lBrKTShR)PDka=++1)XbvW7cP&GmwWDdBEK!PRnxzuyF1Lq_(A{kk*bkqu5$> zeLuu|sT$3HKlMEkKSkcRtv}_yFu6E^J&ExdEEz=CLX)o6))L2tDJfGzATJ#5Gpeyq zZq=*zB*smr=g2I@HAl5ZAS9SN33pMjim*fD}Y|-^w(1*7XY`<|^6P@SjV@%EtP0q%r z^(tkpEgnsc2V*t9|64VDDtR@wN)vBb2~Wkozsf6a=~SW0F4#0HatR#Jt{+(ATQN1O zIK|Z91xH(B4(VVC8>Z4|iZv*WYF}n`X#AZnR>DqvQWl-#$vM1es_a2bmOJajDLQ=9 zOx>6~GkOO#<{yMoL+XrHV|rR>ZK^o4IAdcrJdb=Y~1P3qKfF&f~#S>}06i`AG-K z@Y!#W419!yN|ViL#1K%Uj->Tq?=m59RcQRwU)#l6tM|!nblf zHK%%cD#1OJ6SYhey3vE@ip@({Qnv{}7|l9QHl;w(=iBMxsos;I2%|%oR)4GdC=pcq(xk!GZzUkvI)c#EH|0Vd11J zoQgKQw~L#AlsOxG+V}=fIB5fmY1Tf3Vs@0o{YRjqedr{4bXN@tf%dE)F z1{dIjbAS4ba<{!+fjTR4DOCz#WB-KzV&`FhzQkHO8tyZmhrK`#CEp#(!g<)h^_+#Z zEM4kA?Dn#RP6uLH@^K*c)!S2T?dMkQoUTbwWio5cKTv=w&*@NQ{P=4BU-aw<->k^9 zkH!-O-eB&nyZR9DJz>^HGqo6ddGd7L+v6Y0es9};s_gRSvhhpsdH+ZbzY>2@ma3n# znc`%7aFGik=^q1~Ml&ZU?(5+49r@~UHNLO=G~riR<*HUcT0TDRH?N1H?9TOf1#L=NO0 z1_cSI>w^Ra_EYPUicB?Ox2<=Gd72`Zdx;U#IEaUTE3?i{2}<=bsF+UzX=oPr2Kq2a z-y@-Up-nawpJCs$P5!I%=tp%9ozE6TWn-649blc0Bb>S^_%pAt&LqN*v0K9HM6M() ze!f4>4+T=L5FJXG;YXrjfBIP>KEopiyxYenuC#Zs-sgCNIUpbq$wWnWUC*X6-R0CC ztJTV75`xMuV;M*g1@|NWC^^S5O6X}@D(ZURis*FMDe+H=WwQSoV;LeH$9Ezl&-_vr zi>*;Ygc4wtyE>IyLAtsx5c+vTiwPe+4MW8Tihyzok=q46B1*2!{LvET_Sj(o4h_ii z77UhgPN&H{^wvzRLI3uh4%ZaRCK0Uk>0EX+x)9oW6-zPGSJN*0Gu2% z4~-o2j@7NBg*ao86#QC4u;N||p#gBFze{j&N&$)=L$vo14|EJ5igq0IAs5VoiW0t z0TL-99?G?BF#<=ZG+mYf_EP;yc$-$0TCvo_MOyKIPdh8L5CL#|V0=(d`FjR^0&P9M~7SABpXr%w3ifcfS;finhUpBRh-WM1nq z!$wt^7fS z=SkJ8r96iQUILU1`h}LG6~igbDYg11vC_Y0agJ=!5hl`Ph?Vm6fQh_yD#Z3cRvGz2#ls7QHcvLU+> zrIhZ}zrj!DBYXk#ox9^;?o^`owN=v4J@>?T{pV`5GjXNqDD)0le5bQKzJq&B=Aumu z0dB4QS5jos4NM(!Iax&|uXvaZ(blFESqBzsDi$z|F4NZP38WPBTvHKiAuRQmLl~mRVmA@l)UamMn#FFxXUn`<)`O*v8DMhB zI^Uip@IJXOh-J%N*+VP^kB)O_70)T4?_F&50k4UD? zgX<`P-Fe#2iNgDcw#N4ho*&iL1Rm4YEc>OKh11!1l@2K19OzTNEzpaNy8u_+L9J4& z+)m2w<^LA`*W_X1W+{<^bE0-bAbqg&v5 z-Uryx8v5Azr&eyy+nuG$`%!BZbvP?0orRq+z3lirT;DlyLR#7Jis3w0h}n>D7nB_z zz(PZ-cvbS(jO%TW$jl?~oSCG;)-jU)@mCgGSJ=U-blD>pYZXmW>l*i?&n9RUSCIN_ zl2$Q7emOoQ7nGt+OP@_FOeDiVNRXY z{}d!DMnNtCJh(Zj?6|~Bmh0EYon^zOSet(%bY((Y-pA(Gn1uiGfu)vQKZbD;UOitZ zjrjYLSE0R(1pg58l{{pYx(_ihOD02qdZ~33$?qk1)-iKSJ~52Oa&c)lHCYDs&_ZvU zf8Q#5JmcW#+d^p71!c#F_ZN!ZBSMMJ>2J43Zsl1yU<~?+j9b}-+^JPOE|d;#n%^cN zL8Px8nw7sneqQ?7AzXQ__0r!Sr(XF6D`fz@5GUdNuac&Rlc%50$%3R6+FC_Se_yU! z`>pJhb!Ts5(jEL+cxREE7TL}|FQr!s#mj4W;nVcHCDZ)KT3*dyd58Vbbx^KVmYc4a zd=7q+jug7~j<^(R#)*F}#-tS3>~ElD%$Q^G&z@TMA>M7JCH-ywUN~0YQt95y&#jg2 zJ*6f6Z2tMBB}IJE!{a&YF#`kt285*I?S~s?CI$ z%_y_ZUN0w>jVk;_^5|?=x`R$mqNaYmByLs{Sgej z=jFbDl(pF$#!v+h<8})VS>(r8@C;X;T4$kx zuapbc%N=?sD1sG5yWj96>xi{so%B#cel;dW7DgYvTuLSY+Wkn2#PC9iduS%S?Frv6 z^-!rv_wp9D-sB(jnhs2@MBM4L{~}{sHHX(J zE#B4M;`1^J*QluWVf|3>c(>xY7z`#Y_;2Z}c51gR*;L~${k>X?u#FqW+h7b?;~YY#RSS|<*)Fpm`slEwc@O1sL$+5Bx*q!k&!?0f%5`dg`8%f z!R}i53X*ubbir-T(h`Q+92H&_`P!WvxQZv4*ldBJ zJjn>N1uo!8ECRMb8c%Y!hAq&Gr{BnvR{nGT(pa8$-(IRcRxybBkXvu@67Akv9fz2W zJUPL{P1-Z{pdvD5pCY9*$%Z;>#-D3{i6I0oC2~#pP2@pse2xC(eoef=)W?WUGOimk zY9ABw3JJ>P0?Eh({^;QfNt6To4&9+S3eKi|VFImp!P#1Gl6u=BS-e}5h@iq^z@Ham zJgveYMFgDrzfq#J1eRK|tmPVH*?cMFzhm9!bhsxGd~y_O#b-sQ!&RpyFL0t3%q?Af zuFZe7HKnGj%aqv^4iZSi0aizH2 zJh?&*DK+`a@L}Rs^rqVqq~w~g3>^}a)X!>hq|w&A+Jzrc2L?d9KBxn|PzSn;I*^Py z;2%#dU#AL;-O17~ysT8|0d#zuDzM>BOBH}LDEww|4zrS)U~bQqAbHI87oJ9Yoc=8V zf`NRu>7XxV%{K_s&62a@LZ)+`PktzQ@HeW$>*cvy;`2?t@_G^BCDY9;wa(sXKDk_7 zzKnoqvuDNhVO+TM&`opAPsg2vdy7-dNB!8%9jlKwW$wPDsqF`JxHpEcj#tXijo+-km8^LJs*_#%7djN2+F&vjLfzx~^1 z{mNi56M5pSG>&K4sxlGS;D1~_?xm2|+2r{EDV)k2}#(^|A*%IErrxVcq`oc0FAn?*Px1Pz;_S-xHpn z#|s`p4;Of1upAW0E?!t|u#Eq%uv`E}t4PBqnx*B`_fd$6855N)(#2<&%KrGuNqo;jBiL75Plc$@-weOMYy(w&#N1WYWmt}Uy z{b==`6m5MY>+N4w?@LiI2U2CQ$enrJsFzzwex1HZe%jOaEi7)HF~Z`T$kShputX2#>2F5( zM(gPxMp%wklJ=Yto+(c=IBs>x1{7Ft#+^KEKB`?WE*9R5JFHLD#fWi+WKZ!<{|TzbPUfG5&=S6zw9ANxsH^hnnPtuRA2mQR!vp7B;T2lp=xnzy}cPj zLhf?A@`9%DgRanBrBXp}snQLy%N~%|1YQ%}>IT88ycE3Yfz2-8KWVQ zD`S2PCiQYR8>JAiPFr8iPyJDCCX}6Btqp-@v$t@_1dQ`StED5PZmS!}&Ah4Et0~o1 zxy!0)i#CK>W;aODsTnK)q`#!7(hJv~v8XpzR9cpDu8aa_jVt3q&eN@5nvr3?cwQpg zx3GB0Krl}}e!FHP+l{V_A*OL|qD{LzdE0H8ZDAKx2wMb&hMFav3vFsEG|Zf86?*d2 zLL2`(!^Z%go62?dhChI-G>0YY(?jK(9{B~|L>PHo0EUh0o% zvo{>ku20_D-NE+z?Bt6a@~g)0c+1Qfm_mWc7`(*z7Dzgx&D?xMyJ54i2IEiAnVK<7 ze!LmkN3|QM_4<01ji(#7NjCXT2|iQ@aw%UGz50|IIKCRoQ5X9{rP)>!!z@y5k>Y%; zl2p#u0F*a_0V60?s~3inpwxh&&;lpVs?$Pn8cRY!Oqostw<(-FVVD~l^{<0Q?Fe2^ zTX6*Qq^cV;bgRY!YTQLFI|ae(-%}0Vuw5WxbhY6~9PjIs15_Ek=9G%ORz*`Yq#_|m z99>AMd$3}6z?IETg)R$LXXWg4CX};hwoNF3T+Cvp&LSH-OavnMWg?IXK_-F+ViQ4S z^AZ?^nx;{Z{H9SdvKU%aU4~pTblo_Be6R zIYpm7RUdBGAA_G@P*2upSQw!G=%EzH)sPKa)N=rmHOy-?FK6Ty9+PTylx)fLG zz*LF%c5&&wm@d!9%!1uFe^6>wrMpa&LLBI1E&Y7r%Q(KKbK({{yS!62xfCo@0LW&dFA{vELJ( zei99{lmiyqNEvICj}#j|P)aHrQZ6EqroDfxRZOO?oV{YY%l(Y)3U6~<)8WUN z^s21P&yo2I8Df*AwLcY-3YE=TEZG;>#Vg=fSBR}ymK7Bj2tYOC2HJ&x*kh`7?}l3P z6^kl?qt}eXq}m|A*i`FDmKE)L!hfa9S)ErrCXb_w_Usj`M@I8!H-ZPjg-g(g8Lak+nDt|KpXHKKszE8o&s9S zWo;cJ7Pjx%F@87o(JAFW!Ez^Ec3Y);oBYnLbZ_Sf%I(qfEK@;J9_~mBx}h1b?Po7C zrfrkR^_-+pw(PeUiS;Z><5uiD*wAzuv(w=8_1DD*jftNwi)U*)am}4#%q|zcY2Qy& z=Ua(?Yxw@n&af3MgesQCsz8>RD<5WQWNbn{-JRsh{+lTKTE)NV25n7H(3cO%u545L zKeW9GcvMB!@ZVV)5=^*>(h9Og1qHVOB??M}mNaxUK^z3d5ye4qS4KLD3y_eGrsvwi zj5_1E%u%~S068T0SeLWf zTC|P>j?%UMx`{c0suMJ%ezC!gIQ=rLMHni`S^8^?*dFKP)2NQ-Z~awYF@;<7A2*4f z-Q#qZB*fS`(!i=Cx1subPZdnQ$(0w)pDjQyo@#({eg#O0+--n59T-N=%UvuP2Zqqz z)CsyknZE*rusqIDE>PC507+Nxw4RdfshRb97wfLB6r$?3BT=6Bser26q_g^uv=Ic_ zJJQt8+SR~;=xtg#^%?ciysE0bmn^;nB-k!zd$q5L$-ywPt#`81#jEUW7@BR8ylF`k z`1NFbr?hxe%tuM`*MBQ@nye0GIwJ8@M|KTYx2ch=;AI+qwl8*?6-KF0fwjMc1pq?kH_hnM8Wx|TYKIGc~)&F_>7&#f5W@n+>7h!2N1sw+`hr92Jaev z&`9gvm5VO}ixp^S*g~VGH7A@ere;&EM^LRFkYpb3K1ueNyZk0Da_E z)-gh2KnD^7(?}dGB+S^gOsKq^O$Vh*Jtg!cpDd+(&tBA#klEs!4y~%&iYVep)!bJ` z=SCW)9cNdGEM8d^%sP7}mqcbxi_}O=@T!KYGx&M+sVB|9;O@_GJyW(;d?#E#I&X(H zy?zQ#4_XSW-@z8Eloe<9<9&n`XCI#>4?+;V%DRXpXu;V7_;36mtJ`X(s@5TLb@ENj z2h1|sdUMneQwo-+0zPRJ3xL8v6Bn>uLAkH{#r&_Tey_SbTO2%GKlTN zH_MVU;&nThJ6qBP;Y2A#z?dLRAx0yrYQ8J?e ziA-p!ZsU-6M%8WRka!e_#N(ORpM6!l!XEYiYXiPl=6~COUspF_y>7tkAj=#zImmi{ zV5aHW$O(>pTaLBp?6m2gTZv}IS8{Cje*uw-bPiV#?;&R=E5@nJPma~GkKfDkIGrxv zZ@iZGq<9N!Rj9ZOFDTLCQA@?L;az9mI5nv}f!P3t3ZHFMFLH8Jq|B&U@KzWnV(>2g z`ow%K6+PC7{}9nQN~Tu&yL#u1*_w04u%PAzdB^tX|SA>#e; zX>8DAa<0?i{3vOE%nR+(**i}NzM7IJ$ie$nPOy%%Bs>4#d`h8;g4GR+Wr@b6pl;0Z zt5-;-G(CmbEP=I4rpZrKy<9qTugGUMJGdTG&#v5}9LF+6tcJV9mtrsU*K&&&`CEj&}R7I`CVP#%{ z3*j0$#;=I{nB<>sJ;3>T{>@$e*5fN?htfU+RZb&V#@2*(0o|og&SdO z?p3fD^ARD`($?2v*dO_BX$fL-rifx8i0~kQv1kq^mamkO3$+%GdYpL`=FI;`=FcX2 z3QRaNH9B;$i8@!JE;muvny51+>bEB9RueTuqDB~ewe{fBM#4pVB;uzh0sd_OPD;Zd6aKhZIXmV3_u@KvNLt!Cq}6UN=PEwW zYc$PdL9O}?ESq1bmZ|ac&N4T0%k{UU^4|yJ(ts~JPz&Em<-*xw#B|rVqdzo+mrJ z9$@I;Z|{xctwsz@1~%aC;6FMq8a5@LSyul~7932ymAuJMAhPT1n&G>#%`g_ZcF^EL zm(Ru$Sgaee*c_ri_!H1)MY6w_MpBr?mP~;(9_a^+?RU!lX#BXyPtN!OKXbN@!uf{v zzJZ*x^BHc&5{TeoCY$9_+kITdGp8TmbV2<9VE$o?x)l;-dru~Y_S=mg8h@!Y{zKFB z^Vi$Il!HoIBEPi%C$#O|*}Q@UI8y3vFrTts-QhBLd5Jj|LGq)V?(WRnk*7}hf2=w5J` zReK6E++fr@{WUCUmsck;3MTmQ?w|;>icUGynkN?$B|hx4<~1q8jDi`2yDP#>fe(Md zxL=*fEV$8U)qVwX5dQ8}gYcX|g9lmjwkr~=Y6{$nLxbwXK~qK&{(&B?I#D2{2tT1n z3aSS6v}$>$LXb4Q?s8=v0#{$UoSX^u`&~{>BHXMd zaBJROni2UBmiyb)i5!tz_;k(KX;8u8?5UWHLAn5uNmkMM$e~IzW)+Pl{D@}E7Wsq^ z(u~X3WU(9AeepY%&gf#jr{lsrSp=a-jp^I~6!*XC$UfwSO_d zC#HD537!WiK(^FNc)baCp9arY8Q{ZRp3NJG;_SRSVV=(uKShM){k+=Y2KZpNmOU8- zg^VmjQmBj~!nOi?vI`EjYApjCec4qBX;a}D3V_Za+iirAz+EosOlc$G-zh+5!CXrH z9|LfaE22En|L`aUD5x5T&OdDccDU-AS%7Ybk8?4c3$6T z0AIO0WQ(qb<*79qe)oyUr_2C+=3+4K1%9Cb^4ODAD}sf@lP(V#qI=;r3Xqw1Fg%D! zEdXD?WaL17p=0tYfV87=$U$6}0Pu-hx!Iy)VR1qtJRA)VZyA76mj_QKdKIowfO7)l zi>%sz7=U+@au8h#U!wq-)_8ajU`Rac@<97V4&xOdZ%P4@{JjAfl9B^D6Fyx5vWsqp z2fqPW?(!hdds$&weN-pRi=9OV;4{Slt>YDvz+hDX0#-7qtFl2%rWTpNOG%hrNto#` zinvJnTN2N!$y`SyVG5Hm-zH(UCh-K4F!e9Ec-~I}Uyuw;O;TT&q}7nbQKg36sYn{?ivOLk0S}WhhslrwoZ{R99@eFfLxiV{6@h5$KvkmbHlI z3rFpXobl^8OR{LAp}zbS99B7~F*89<7~n@4NH9GDtby;}*6wtGED@CHcXx4tHru_@6~8sUAYLVska5+}PC5#t76a_p|j7#c=; zltvDY4D&|@X?hAe?h8b^lQD9d#wS1g@;(-YBVQm=5E&LZNk8YyihEX_kI1j9HQRaP}x;82sK?xM7Gy#@9U4O_E+zaY^AyH=Qgqn*C>n% z=y;!8@~9QtPk;3u4~$p#arr;g!8TXG__D%Rx!9^?NATWdq@C;wgx6ZN<4pbxIBxaq zfr~?{_tmp^DFrJih2t}<@bT?3H;^#H=MV3-Y7ZfyruB@t=d*OP%;_ZgquispQ*n|NXu~t37=ZEZ6dU!T@G=7*8QzCM{r>Sc z9~xe5)dq=MoWE0uEp>k-EPv(ueczDwy^`>{wC`k|^xpF_z9U960R@U2cB0az_W~L>p{wDigT#hKDcXKxX&_&jduO}mmh%9BdFFK)x3**ky z@8n^>Z`H15#`0znb>*C;hU0-2-6@f&ncPv2R=zEJF~MlX2DXVel}9T+k_*ja_Za`3 zdM}{At!&`=oer+!|H9wlcHkrMbpusj!PoQu zgs<;^$JdjJ-1%48PcW5d@sc|i2(Zw{HOQZb%BDb|MM@3aa^RdkJEiieOWl~)Z4PJO z_r$T!67fDFAWL?remo>-QJUHo6pR~(8`knjd^G=Ke#)cXE&L2lsP8}AEILoDCQ(sb zPPW)HWJ&G^8vE~(3WJVU+J1T$*hcSAB3#Y}rqV2--RSM+rb(NU{7n9eB76D+zFqe1 z3PJ~0CuGh0s^@6W!HZXBdyb4B7uj3=8EIV?dw7ykx>rw^P><@b>547ZU!KmL3@{r3 z2V12La=9!Fj5(j?s3d>IHx@>CO*8snKInau4-EOdOZ2xO{}p~G$Bx*Qsj&~sSNi>8 z$$vkQlE1Hf%;Uq^@uPrG^4`RUAf2t*B<3OwafP@vb-%4ZvQ1IQ!obhYBF%e&_qW7w zSY(~paFdt~=AWSu1wh;jgjzUWkbi>7Ro3&=gBwUhWgE+;>xBD!H4C_#FmEdy4QSdF^QjX1-=`i`I+Ywdg5c-V$apsY>6Gp z<1V4THG8{+4##(8<*5d!dY|kp%;^V;8{dc@*_QJ#&H4FQb_=7~4HzX)UM?`t$&H0a zn7b|F???CVkNnDC^7})=$^JMxdY`zFI|6q&q2V>Hxs~V0ggB4anJ|}%=C2h3b~Z{m zcvVdTKV;rxwjl$264WFz_^LHqJUHF@n zjnaKc;0S(OP{l7KGKY^3`1pvEKT+CAsGve!nwJjNEe(veG3nf1{O9jZMmdu$LoY7i z5V5ceN|VxO9e>8vCT8Qqqt)!fdQYY^qBFjPZFXF3lr?;vDI2}pP9i!oDo2uVB64z2 z4{jM_h?U*i#-%d&^EQK%SDx>QAH_=Mpo{aVj^eT>S zaAYsmY~mXKC5(pjAtN}{vO5oK9)_9q!<@403&KS(i??ux?G6>Jc7_Y}Kwq4SA9V7jo7O-g~x~R{&0UzzyU->IV8RkbreV|AqYW z_(Z$$5O4T5d{5#Dj~nRCKXP<@!_T}8AnyEcz+`jteuwEwL};gmcve7Ct_@ zhQSrhq#@8LJiVardEDUZCrIR>gKzkMdgEU6mVwmQO*osl^j(U3LvJeyv<5zSCE-fS zE;V$+30~!4s0Z;}g|kKQKvHBs)blZ)@?wK9aOwM+1`F}^8rp&EuS|fPheG6`4SoHg zb!VwH=k~fmJO|UQj{i#QXy$Xu>+omTz&kNFc%S$ZW_eMhMgD7&{~Y;`(*NB5LDGT@ zz^c*LGZT>Eqakm0#C>jrXJ8S3^&Kr^cIW3aIGegrs-SVL%h1s&y?Rk!mDVnw7Ww6$y)yCQ$CFO4)*eV^a^2>tioqLvaqKQaAVJ#SZS$N_>y?@yPe< zzd#7}$DV(9WbJycLY~uSeM@QXnu9Lsmb*N*MKm*7^1%5z;IurB+sxHcx2(mfNq-H_ zrfc@*S$D3H$k)0Sh=JncIJI9Q`D87BHvwDLI(N$kOVGXvE>Q4#j1TKg%?}ot#CxRa zH+AOcaTy$h;vDoWlwj$=^^_#E6eUoZlVA_1s$7ri=2#ulf4!OfWa3jCB-$9Kw z61eORn)T1pYu)j`=(Q@JH67K5TA8iqX*te*)UC{Cc}hFY?^pY(d^%N?oj*HZRc4<_ z_3TPgMB6hZ$z`$UwRXjl_`~?0q;}KvSJ!)7KNeX%l$2Fi#MhyQImZzZ zGWF|cEt=T9)Sj5*KVlzdfxXJs^E6BTrITf4o3|Fx;`%VLGE>ntITgVX8e!Yt&MiXy!;QfqBs;9K7(BY3nE|E2UbIRg3$1KK=Pg*5i zOeNuvPbw*nbYK5nTP5}Q^-8)=!BUkZ0+G6u`nlCj!e6o$kE){;OI`A0;5u#%E*jnQ zsM%Z{AKRBoB|}*ouA%C@EV*oJRfyjr=DXx!9Cz8!xpU z-#lZs)aW_X=-L0v8ckKP)F>=i;XfeiWHo2SaK9Fi$Ul9N&~MEN_Y+Rb?AQC%^DCo9q4RQo@nad*7$P;b zDV6%yH}W)9V&tFP4h%|ww@P^bXF48KXEGJ5Knj!amg(>AmlhBTL{?XS4%Bvc1S+<( zGG1(`y`qzgK7*LpB)*s%Fg0LiaC5y*3YZhjSY#h0H6%V7 z+S9PYuM#I4ZQ(02)f#VMdE~lBtVQ!T5pOM8_yIo*gbO}2zl%5XTfJAT56XE;s&2yD zBkL-gLpVMcBZN?1^-KG5PW2tuyD=v9m?<@Y^lhqgNuIV3c(>Ls_R{fYT&1(ISmDudffnjTA zyufVD3SUo+1R@{E(&SMsE#>sY;+$TH?vE0|QL7>gQ5BR!l_IGmuIiu})}kuW9;}*q zwhpuD*C-Zu0Gf3hrRZ;RAneQwy|OG4cnEjot!%c~l^f!7wEJr7Pe}Tn`N-MK>bGGR&7^QVlfo@L zQueJx_wcX(R-SkKikqtIC4wnoAooW>1vK*+h)Hx$neCt5m-$X}X|7Ys6K=d+H7%0e zC5X4cj2*#YmGhY>Ab3WiSFGm(Z(r3^T_tV%Fvj#(GKgs|y~>d&9)i(09_NDbt2UXq zxW;AiP*>ws^_tT;j5D{;bfnUpSY5L(>*o8gwGD9FDbf^(>@AO$Tr9OPwcB6IGxh}{ z@A9}{0KdJF9}=IJ;+rfhuz-^GYWOCrE-w?#dpE?gO6!i#kV0v&7f-iWZitnjJMHw7 zgS89j8Ri^Az}Shs#+bl|Fd`XhJgSSh_i z7LRfH;rmPBTRaN$#P5o#J}k9&_1PVP^$mgWGk@y`1NJ^$1ocFdJD zXmvT7?~Lg~570PjrX&XKB~|hR(E{g0hJ|2bjYP;lcf-?snE!SB*ZTxZ85=#$nUt3U zL}!SU8&eBBDVMx-uUs$q1V^~^Nb%Fe*4k{dru&)ZbPTsrTDF%Be5*XNHO|{c3FoR_ zGJ3q_Um5URQWl-XyN>wH{@l464(aK{)7(9VLRod93j8m#bsuq))8K$#N&A-F;$_E$<5)1m4NA zI!*uAem+&bwT?u#r0}|rV4TZN5}q%w@;7GpqbER+v+Defoh9fuUca>yzedIq?A^Is zF_at{hed}I_n{Be*|faw_2upG7M<{jQwS6@Smw2c%VB{> zLN6Fw{1%1LC$F4uPEat&z9AMsVECL=?D9t`6?OT6e7H1{0{F}T94P>zbCbvy?}TRo z21G;P(-8CcHaJrNl71eKYxtypn+=DAdI2r9&eJgJ(loBrz%Zz##9GL_VHOU_A4H7%wDIT=FA@*+n>0pWSnZ z-#WHY{(A>+9QeDK`3Q@i<=BX|yq`(lAQo0|oV z*1T)!5=&V*MP?C*UCe*OmRs{C%7@qjRn2;v-dpuw8%C&yUd^kTbw74bgK@MxU+z8N zaxKxoWB1ajyndW2sq+%Q2XZ>+z zH0eAKkM{{iC)2b(b)@5OO9^%I16yg8M_-nEN_1n6bR^}GoitAKW}mzZZ%vzDRGRfC# zazB#44gE9NxEusnL46zQBiM=pLOn!cA>6(dZyTc>zw@UaTI|lei26Ff2yy9&Qh0^17D zC7{cvTL_ffxw_Q9P9kl#v%qz!LbCfHTa!WiaJ#cOpA6r@SIwSmtM(w$)vHHPoKVb_ zZOe)XFSmYDwsu=Z^tKFI{1r?Hf5zMm4}Am@1S);_CT^{?%9}j*^fA8)L$*I|M%QKo2Ek>lj zCn{ibWBYBMx>F&KGcjc~%d>+u%YTj?MqWgEl)vW7IdKv0QM@`COst8uGOF`=2s`fE zVV}`?u{HNl)Flwv$UCEZ7XN}O_^Vqb(W-q1d2sdnbuxKY2AVkC{wecDB))Gue$}`> zo6&Fk@G9%xdb(^NJTbALM{FV<0k!5Pkf6{|lH4ojcWOo;cSA*VMrL{RwpM@jGEb4L zP4;;(BfIgpQu&*qe8-(&^1m+3#7o*?l+}xiaeRi~pgihVG0vD-9{H&vvNQG*B{3}Z zXHLpWF>6{wJ>KJ9X^D3=@%hBFq&x~4W+KDZnA{4Xs4X|1FCq}l;AtIRs=!Ba6B9~T z5-mwdw4_TSK3*fpr&}7>;XUG}*fj=uy*2lDl$7OOP0J@G^?)HwZeym1ZGc$c z#=r_9P=*;Cp6#v}__a0n60cO=`V5B*AGaR5XF}X7#4Tjkn zdNP<{5j-<8$(mCZ9i_S!i2fy6h19!M^H0c{nu}@o;pV1M>_I85xm$q}-O0jPUs7L7 zqx0M05HGqejtV#st;xi55DHq4Zc4$d+Is}1;d6@cB}Ld!HERVr%&f7Ncx*N(NbGrn zn6j!sO08hCtf~`hq+HKQ3Np*$9oR1Z>MzBh)L*^DBdsHMV<6)Pe>Eb{U|3!r6WOzM zE)qOA4ZObqm*zJ6Ggi33u}6VSs!x27aLp0y=g1hY_f?Ttd596ZaQuUcx+QLrBMXK5 zh3>gLGP$YLp3n@_{@1i6T7hMvFO1^;r5f?3{Etaop=U-Gk1YB*!mjze)d&kJt)zya z`g4EJo;kp6l5&=Ak@}+sZh~bxL$`yu4f|7imOIKbwkKM2T*)P7@dy~@Im9_P^@xwq z*q!^5vDH7z2HXtB@Rs;dNj)>X5LL5hj&-N_Sk_!`kc&<7vP45!;@y}fn6&`lQ0B={ zBG0B-cb1byl+2nNkvv#a`Wu$z;J~mje(bO1xhj=s0(o!~C_O7{zQ$I1*4U%M@&43E zkdED&dsH%&F=%EMe25UO)zFJgPA1WGQ*5R(euG0WMN3Aj?nGe896Op{!~W`Iy5`QH zh79ty^7J);j~)mxy%4dFfGA1Ot6O)<*_6q4HIc$=!#B+JR@VpW3j2-7tMb?RQ-zN` z0f;GO38B*HBba2fv-mlAx=0IZ*hcrgCCgv+&Za=!U{qo%f(+E1n_=+cH1l&3SARql zM;!jFSjD#>0|>XV9Y$fB};iM>Q-Q{IXc8cO(iXEJV2p#pI#uUk?in2O4D#Ry6> zI>)Af%pG=OrxVuamt)WEmJJjSPWThg^H(8gm2{cDgHj?FNfjn4t{CokP0Jw8Mk;RJ71=Z&hvTl3Nv>H7-19X z_J8U2Dg(rWLuA6@V5EX&L?V@e5oTZjW`)861 zCjs%I`B)^&oEN(_d>mNee-RW8Wv2T8Vdl@+mM>qsvaM9OlJyB{Fs{L3(I9&Zc-40k%{$1CxHiAJ@0pjucA7 z9L_JMg6v_j9hUC?WPUbi#`1R=e-aiPQj_d!)s&ocH3rd@h0ZlA#2nk(k55@Yj3KG7 zCY{77&DekFDb4x(U3)(Ly<-U)dL<(SNH-KeepLAI9^01IGnMxJaFvk%E+P@(%LAAP z!DGbxPa@=>l!PQCFKzpt5=ln$U*d--eFB(pjYy@1X~@c-NWSp|in0iLi4SWO*_0Qo{b|=nQs&{52byK^LDRkao#% ze(=dC4l>JNnb{1HeI@7BQ;9tj;|M%2@1bExSG) z+V&50BbmlvSfdf@5oN+9~TnBNSd;qJdLuRA%(C@enYqvVPIeA z^ppy;OL`Hd8+px6u8GN%3>BIofV~YhHAj_ZRx{K0umm|yb+*mx3{gQw_WIb`cNLv2ZliN|A0Ka@;{1QfqzYJnGD_VR%wqq=jq9u2j@4NWc zBb2mmE_Uou(pmnONDE=f^+asRahba1(>;x$gIrA z3w@4r9yoxaQbiVmo+t2}PwrPfbPLyCGs}}%nad-fInG2cM*{Y&0;ht2un^!kHjq9$ zCCl}1s$h{Jf?df+)fX8!%!!s<{Tr3lwG&)fU1+|i@Xhf?-jP^nE!S>2O=$b~r&Q8* zsU*~WjP_%`%c$%kC0SBPSXE)W(+dA6$L^`5o@p4`E|NMyx!S(8i|jqRR_M`^X4$ch z7QcJD9R0d|-|a_GrfA8_Cg~+ja;}g_lg%9}+W0v``Kc9(^T7}GYQio**BgGWkkl76 zHK6>^hLF-D665yT>ElOgzA~;tx}G&SYV}8c7IT~-IAAlKpH_P!(^PwDqbxnBm@9LF zkqdZZa%Pb}gGl$WEZ$9aPC7I858jnnZ=wgUQ?jX-NMfVOEnqo-aln&UKRDt1J_}_{ zIKPu0Bb^lde)cT#q^tC=$@4SeU(Tl1Q*AB8Q*Bn5B?Ah_6Q;CsS^LWNq7{BgLV7E2 z)bEke*f&&yBM6t$3vdU|Iqt7orTrxN22FOa-hE6~6=RQNtg5l|M>6N<@pJ#tM?u6iky^sC?BXO#UxfV9&yZV>4BtXf&yyPcmE7DJA<4ls6(dD@(Scx@`EFwrrk}OzM(2wLX zG3_{cmKBlA+BcF6)Vt=VNq*cWc_99Rk=>JHj|228^4X8yS6hvI{%`m##xc$T_?4^6 z!tbFZ!*5^1Z}#t1H@hC~D=4-9uKL6If6Z3zmlX!KnnI?LIL;+;bfZW5RBoaLwgNe_O=lrg zAm=Bs`AIVR$!xr|?eIk2ix#iK?fHM_=M?{5(ZRX{^M7g*agKX!tiAp_vf5*UC7#Vv z?ST@Z+or!Cyjgnuxj>m7KXj`eCWTB-Kj|X6^2=V)o_+%1WKZw^llJtdNph_wYfm34 z(O&*!iD?Y5XD6MX_T!8Xn`B;;L&m|IIUemq!X~?Ws>c{X9-UfrPnN^XcisEo-S-=! z?rdXtjxv0UVR!)sw$6)-l;M96PBJ`yzA_w<au>p@w(;GP6AKeo256Q2Q|o z!3ziVK%D~A!VIT1gHuG6)5roi3|fIr>19tN5$m|>qzdjURdu$@WZwvXdS;P-o;vUK~B8Aw)GU!?X+$F zi^!sdzqk1NkiYcv!?ymbD5(&ldRv4UBrmf&G0m+yoynb?>M}%{e$Fnr^a9F%?Tad& z$%M^{uEi;fs(8+nF48UQe6< zB(hn<->dx9^VdOt+RuRH7%-_mvII8jqjO*d>A`yqRY-CRMG;8+q8WwV0 zMOJZdu!bM&J`5CKL2BmX=lAPj7SU5i-xrL!TiERwj^G$@VZCTRu{2yDs z(F)d^MqhqY9=(o3pUdm9bH&W+QwaDI8`CoAgYcg@A0vA_NZ``a-7?s^P}Y#~AhYN{ z73nN`{`FnWCP20MuEcw=4*qHD*;xNWbXj?^0hvq|*1iQ2x!<0s$cz4tH;gg5njDjN zh1=P$CflD#YL`qQH#)blO)jTa**70ex627}Teq8>qB&l++hKXfb?|y3fnIPx^O4yP z6Nxd~c9ZJcaFjR?m1(JSpMhTuyqVp^Z%yI)fY|{k7N^qKM0OFie!E*9@^XS6jgsthB?(cxVtbXclGWMgKV}pw4O1z z9uGKWE8FHX%s<6|@UuMXII`T#&&0+3YX$trKH|NJJedONC82V=1SXowlSjuhs!3EyPF zWfzY%=uNy`GA51M$u6}yY1EEMqjt#t)F!5=l_4Zayd6Cu1w_N26~AP#Ba z`4C}K{1FB|;T!D&|JeX*H&sy4grgCwwjNmPkFW8+W|hmPWF3;sdJtLt5iCi*PWU<# z4uroAT~`+QC}{WI{+(0^3(ewReU`vs+4Jdk|2Ab~lC zus{?2nQ|rNYJG#}pXlEx*!koZ>rlI-5M(rNF?V2{HE=szua>OE-IeppxmNNy zFGtiH#W)N)io&~!JYW`?)622(S^OQfq++796PnrB6>6*vmutQL>06;u@(swHSx|O~ z{m~Fx@|qNVG6$0%ia~>^tS6HUmRu&e#z-!^c=1A&k||1KV7^;Xw?G}|Q}YoJw0F=e z3&&ERS@RRVo1FF9mDKj$`)TD)kv4L zj5vnGX{N>egJ{ZVWb;#JDU~SC0+*+J(c9>R1*Xv$%~_D}-3<;AB8O;p?_2mFKYDCP z=<6nciqL3fw5s!gzz({eUL>{`%#dc6lB}ngtmse`qy=MR;C`3%tzcuwzn@BHA6+D3 zn4GAPG=N$6CwyMPEC!dwapbRfze)H$MTsCxPxUb&f8sq@;s1)rR+W_qoGCN1>URZ7 zWfylAQeY8ECp>1d@ZrQei98ye_xY9cV7vI`XSM1SB?GM}cb9`yxuGp}LEV|3#pY+B z{AkM(0T6P6Aj5`-iNghH)}Y{?WJ(}COCK$ORxZXZZJ1)uGbDGMPo%vUAibS#Iddhk z_-knuk@r;@147({nw-^MRo{h(TPJhn5o0ZGdxxx&0tTw!r%=io)dXi18KiomvuOD% zolhjcUA+5MAUN(w_^wk*jn1nICzAR?(nMwxni9UTZt??4SE}nglBpHCql9k|sc<`3 zfrLkuC8sAR^f6GfrS0qD;+W{-kYTwsMgiIPz6?|f^p!+VV}o6w#=v4%oqi|$$ShLw zEfp{%oA9k5q(}XqCVUGCW8M=w9_vQ>ud6TDA>i0tjHVB#J(<{I6WdKb}r5qgIvS#5SQU9;*27{wpbahQ$~H7 z3~${CP)lO{EG2@BxdssR{!u9z!~UrEbtR^@`Q=f4vQ$VSP{+w?qq-E1MNC~%RLhm> zeS%*JKco;4eoza?AolGFFx>U6 z5A{doRxLv1?BZo#OW8k_*%6!-uOT+|Y0f_r{r?3_n?Ivq&B`KnJ8=DdUr44-j|2^D_2q25?8W zEb=brWI;@8gSPjn7210087;a~*7C@^Iw~^d*{uQ5Z5>Hvq+z&z3-ush@%Vo;;2sPm z({YDh294eOt*=z^SsgMo*~LrwBp;f<2``x@0tG%M3^HW1 zhSA9+l(TBr)4jHVljLvkbJpoaHYNNQ6tQa=GO*vQzE|-!_ywMVQEq_s^ zfe#>UKc9l#`NAFanZ^|_A>D0Ry$pTcN8MmVf>T*hEMhpPcQ)Y7=YK)0EQZXJOgke0E0It8=-rmwcmQZdTWl1_O{p8BF!Cj z2sE#(ZDx~+#+L~7^vmk3)j9PSn2F{OJq%N%VRd5o7&;D5g0}aQPfa#`jQ;5?nWD(e zBte?i?hho5%eJXBmY|!?rk|y(RU?&^p$T7=FeB}{_+nYv*u|&*%WabgYCMTz8q*DG z=y$2Y(%N=Ov!~;@^CxKvEa{2|nq`q2e}l%aq!&*34kHuy-nvPCAK1RZqneb5(mPb5@|BZy@jSj-cNmv|Z61F5PFKocYQ_sPB)OT%Z zp(l2nNp?OW*=NH21T@!#2TAxBQz6+B{@#QOB>a_xnY5g)Qf_qqXP=bQ_;lE%aK%AL z$>`<#jZ_P=xJ_YJlt-VDD%FO*&5>6tR0@SaF<3bttjg4`w)Qze6D|JbLKb}bWCP^h z7S=#DD2<%lH=$&o(bXuq`cDkGyaSQ@31B7n7*Im)>LfX>?`ZLZLT(*8FQuF8l55!8 zR=Vzn+^tD+=epz`R+#-tC-2QDxszRTKQ+0f(>rC+;?p4)pC+_ax)g0f8m*^=54-r# zB(1Lyy%c}&foK&aX*B{RMVn`6RbGV@Kc6J~mv4yRU-JOy+_*N=6X)2*d+BD~6SBQi zBv3%iB@*aN;0yvmo2cT@Ga_6DyQwY*&+Rc1iN5UCrSmAfs{DgW9@r5I%Ov|00#!b`TH$@a=r5p{K;L<2!HqS_b7kj zx40MO5$8L*`8$;F=}ho%;cqT~Hh&Vg|NKtJFWEocmGJ!o-G_mW-Q)Og=yF+ljiHYm zg#aFWS_iqy6h1j*J-OQm!7dJy{HpBq`WGWysUx~k8S+H`Pc@m62mFctM-$OD|91JI zANVz9R`QM>d|Uw^o1YRsNy3%TNUN^9yPxvk)jPgg)G<_U@>S!ItCm2e(VK zLVAk9t8lsGW|%J-?2`V&Xd@ACAAXdA_josZH2?Pp%y)sw_v28_w~Zg|sI;TAAC?>L z&~m=~Ua)(=d(UWvTte@rxAsL{(q?+jW+u5E+Pm%j7kJy&_srGX^#^iECw=|Sw*7U& zPt^P2#I76+&px~jUYx3R3)+z?2q)gH#CjGVg+bfT0wAT&`{UCKKxygV&j&w<3+GGz z7%f6cp885-IekV3EJllH@@cvuQLS}k~+Vq zrcOxbhoZFO$7_!qWU{ucXOitdhY46&mWaOVRtMl8X{Yw3jz(@&{6PO}_Ac5)rs@wa`^oUox@5~Fm4?dqowrl$h zaB9&Vwjt-!KZ!q}0?*6|W%lrXuyVzEQTf^nNRiFTdcsq*XY*E^Dr0}`mFDZ+oeDRd zuky$jezuz*j}cAcG3j?oJOCra`z10p zl^MYTO?#l?KRm8wcPB8%5HAIn(dXTD(jOET{8c3^l!ED9Z+Yb9#meMvxf3SyAM>)S zbjEWjHGQPMo+0B*Z55F5Q|7y!w*7|W1oumS>3~~~!rBmt`#e;nl%f#bq`AD)l;zrm z=4*=is^d%i3>=Z(zGR?XFCGPkJyTD*6~0Znyd+~$;VL*RN8FVvM^5&)(i7HhqO4=> z;SSL%HqLP$O&zHUjLZO7o!P}F!18#N5I$PMYFC*EafPKl2C_I%?rRKQS#v7P-<$6TUT&Hv4pYk%YFD1;P#G z{vn<$cf$9O#4*k9DeI*<5702M!Si+XL>l#&&ncJZt?l05%7{qWBcCLEm%3=40gY-N z)8Prk>7nwIRKHR5kuZve4>CVR=BI!khR!~KbJ`(tG+14+U+8jX7nd8R-S{(=lvGE; z_szQ^pyK21RYeqpD0wqK$*IB{rYfZ#be+qWVrBWTomQAVE4XkOjn)fKX!`@?6#kq;S(L@^N^dU^ zEo@J8**i*fsuHcVFlR?LY)%cIcGBJV;Arr z0Z=V=ry1>4cexW{^4?)RS8hKcJvW09Zy|~~R7bVlwpl0r_)@sNUydgfD6{#Mp;^vz z&PC_g6W(aOvL?BRN%a3xc)w3Oo=Tk=%HjE~;*>hu$ z^uH)?>xciPytn-Q0OkEbDmPlPqQWh2=l12jZfpDU2ACozd~Zr7N^?+Jd0!;1t-N3T z#*{Zk#hG0zx4icP)>huxeEmv!^?bu0dB>0A4t0_1OaK?nq{4pFR6CuwIFRjF>w7*h zoz<75mf0f`zP`e*T|AD;3W`C5EU(QNkMj#D1X&{IuOi4Q3|lW~EXn(bBhJIl~rx{|M)4()9_rB88hAi;~oC{wecQcfW)dC9CmIzS>Xhp_@92ympfjx!gulkw3jU zIXt}ZpgTN7h!U-NPY}`o&NHj#eWW8$88H*S%YmW)o+dwfex@SYn3PTLvsE_l$5OI6 z4P?kB*?{F3IN>`+DShhn7D~~Qli5m3Yr}sdcf0l#wC~g@AUx#-YlhM_O^&^EqIf*- zIA1oKliv55M59!j%G30bD=4@?8Z!VXc$|NJDZ0Nxu3Ji%a|*-U9SkZ7-~3e~8>&{$ z;1a$+$fw-Nyq`gq+&Pk4CzqFK$_R2>;c8Gb4rwZ%h#xbmZl{-)>7)6PVUI5zC+y<-`xU!ciCdJ; z%oqKC(+Z{|e*&o()2{Eokg|*R!sC32_WfB!R=oZ$priLG%Kavfvig*AW3^N}lCU<* z%gw}5I59(OcZGUJwhiLNZSzN6y0VYj0eyRP;?4<9y%Ys1IYNc~el3A6;Q2bjd<`H? z_OniC*FLmf8XKvxL}U4|H-yb{TbZ%K(-oT@rv&Y&@R^)S3Ukh@pCd6_r>tY`A$z2r z?BZ*gOB;bMC0VvBbQbw-D*6e@rKfgG4256zJz;V}UcE(ZXiJ7h5SfR3{kCjfP-^wN9cVUpq}KNc=T( zbOg_T<1`(?SH5MMgKQKW%+ym_N!!$Ox%1Me?Z)qk?20(#3V8s-A%yJ=<1N3B|DHr=83EyDJW0xE*fQ?>@ANiN?9ij2QE-r$z zK+rXXpjR4#?aF=0XU8aljrKQEw>+6B@=g)@0{9bAIhv{+d&;csJv*aM{I!)~9lqHccz6#f!0igLH% zl>J9GU(dKtrp1Z)1*!fULNg&`8Wg*-+cvD~y`VI9YT+6Y{}qr$W_-@nr?gjZ)Dy>om%)oq9zbiAzdz+U-SD(-y{SpjF|X2Pi5PhL>20l$|jp{Cfi4ZVrQho_d3ocokpf5 z1urw9l~rHye@0Ba-y-A3>qXsIN=SK(nA#Y0QaQJ3&TX3WKOz#_Tiqe26@EdJTp@2y z<^Dl)@6z1!05QAx_cs_#*Hvo)mkDKZQ@ui(LRzQc%01zmv@E%|A-e|*N3!uCqmubq z$PXfNRd+i50q~448lS#$Ytvaekn%gEyV)h2q^a2@om6!NbDQeYmrLsjM*Y|am_3H5 zAA_XYM@%fXPPNlb@JfO+O>jEFDigebV4Vq0AvoUzg9Nt=p{Rcx!96B8l%U4|j3k(2 zf&&N^nBX9S-A%BFV37&VBsf5W)eDd|UxUn-?4R*9)O;;8Un9*|z4;27FR61N$C)pw zL%uFBUwh2g6ut(pqG>Hf1>&O))SiC`YkN)?zRYl=SCX|fV=pKd2ukTEc4TXtzWPsC z?JUAbnuMcB1D8&s3kh1ar@|R5hUUgjAk?n^2XkRMW*JgtHL3b1_(C_N zVU%K?Mth5WC8zkdciZb}Olj7u)3PF_=}P|MiHH789q9LMPd}MS_=pW6Q>sJSe6&tf?5OBB(}-Gmy*`!t zF{wxxhO69Uv9Cxax2BTo+~f`E$%$0*d^h>!^yHDpB#|d+|0O-ypGr>BzBxVl_o?J0 zZL#J^u{Jf8oTNRBWMp;YlC-)qWs~MAML*0yT-gyqTCqU2+jM1_f^NpA7<=8%g{1n?8OUeC9S2b&NgUo}A5G?2+(qz~OUt|pGQ}e@` zVYuHMqcD0(QJ%4BM6TXq6Lwb04bZ?oJ)`$AE&5wq4x58(46KPgeiBR#e6*tSmIzFA(UssO+ zR`?iTm~pcM;_L}`;i}Z=LH@?kx@utm7Kii9irL^_K)G2kO7U^8eZT&En((~=Kjb!u z#YNa_^bT@Q?%F1qhN>I13|Vv8#rys!Bk%2GVD7|GSxHQe6SyZtylz+~e3xkHdSA&8 z6`{)`G0kNgy?41JG3#WttNnI)WGM5(MdW4WuO|FQ8VKk5_uM5Yz-%3d&R}1mlVTJ& zcjLDVAX#q|D=>x}#fQv-8@+-=d06jo4v3oYUgY3iVBzro$Wyv{%B;XUgK?;XvyMnq z`VD8pQ*!2GCJGUMk#0jQAR}C-Ey67$l=B-^C_^B3nQ(6RzYb9HNH+sFFH-$VofR7} zL138HPU^#x%_jmp(g2%zo50t!hc7blWxyjoaH>OP+5dN|)RFVW&_^>{Qrs33Cifi zUt`p37{$+1@xg}Cp6wXDv_0WntUBVyP@ErM(c-jmIJ71y8Qao(EQ+fDtQF?Wrp5oy>l2N&T_1d3@x5=;{52&avFH7rYV6Ak*V+JJ! zDFTUW4D;FAWa(^!`PwAr_gv-l-AF!)X5BaHca(zcpWTtl{+OFR>O0TmBl%2&J(>OF zRQ8Kh2*>e#z>4^g*JD%+?@DfNg{{c2y-<%D~r8z}%aowrB-%wm= zzVG2m8M*GqQse`Fb>o0scfOln5&ccorfWt~gzxWU4up4AM7D)~&x12E4^XVd*9m^R_f09}_3xO0=xKgU zH}J=s+*)_Bb8!0XAicxN?Gx?|p2W)=Xal&h{{&CGbMi@>2m^9IV*EAuu$9ZmxBVt* z&vo4y#-6Kt-hmEI-mF(yn4@niJX@!F#jEBjud8233Zh$z$I&%O9vOvx`H!&9-n6&x zLTL?R+x9Sd*@ZMs>mvnV(_04e8bzmRqSFk~33)VB2lbUBXEHBJngo;?`e&u+->Z0Z z|J*KKPO3pa%SDgf(sN2*n|ATxDS(Sy29P>7;hJ_e&gI7Uy!N zPglSvT)>?ydW3t^n^gzLSq!RaO^VUhqmN2C6-%U5xxT*b;u9e*y@GGDi|OBrNlKOQ zovS2wiK{K`C98tts+P#09KQy+*36RXpyxl*&3b)W)bV*ea^UZrB9J2gcPjjl}eDTxoP_Mw-xFx|?4Wx?;0gyy z3vy>jMR8`L7Q9s-&Y zu@!FAs%4Gq?xISMAnG33|)3uP1dj3qmVA3rsW>=Q=r!`8GZ-ZNC=m zvI&cQwBxkArE?l>8h4T19Ai3@?#mRr8@e2Eo9Nv7v6dd2yozC4Q-`STMz8QEr!Wg> zs=}NT0%u(8mE?ms49$G*ptW`1h8c1b<>81|X1=Zx z#}9X-dF^NRxD=#X0;Of!Fbi?qhCleP=K3rSO;Ndz#N zKC6rDZShWe`~7%cNi^2sq*Z<&tZ}NuZp+&XX!eE@-kt>f_MAb^V|QekYi>+?Sm@-N z+0d4}*nf6WlBzkf#$nQRTgJ2{vzaF47R6pN39NC_6LN}T51Is)E1jk-?o@=?j@#F< z^By{M+TzYdW{O4Q5M;4ufyc5wcDYA$EHJkRt?Mi-inOUU?verE->5T23ocxP^GUX7@e&cPuAdt|H z%K5k4$3*}vZPIx*Sqh?qZ?O@B;_VYScAy43qnYVmWdi2nf4ut;(jI-D?v^)I%RAL6 z@3&5Q@0=}~xw7N3^}s%GddvL2ekY54{o6B{ilU*KO0`c2$t zqraG~;cW?f5G_WfGWTr;`6lsib2{C410{iAP5{AhT-fp+@@kQ`_VS{p*j3 zezi)evQfd>uhncr$du()`2tZwx(8My`?V05i@X_9Wwg_eDV5x5DmfAG;S}(16l~QL zn`QAzQ_&$(C@BndDta(cQA|(nqn++dDWsbg5|{{Oo?r?%(G-AHc)U}5p=s=;lp(AK zhv2w9=~S4Kx7Zq0Q{-YC2{iS{p2 zl3eE``3Fhdo{s^hl~?oOR(`grd`(K_JxsJHdh<Ici{_3ue!xC%b@5ph)+9(gxK{i=p z{4&g07$>lopvA*AH4CF&(0+WGkOhZCW$UKV$VjR8Mp*|x;_E}c=$bBqAJx?H#t zI8h5=ee1wSa(zqn4}vVin=!u7GO>bA3v|Kjj9vT*E@2~=vP6f~HahGnG@_7M5Rbhc zivK0-0so*Kw4Z%VY4~WVcl6(k(&J>Rt5h#dWm$B`zJUw~`m=sd{zzLkORpImRBM5< zFTyz@y;ZyMvJLDP>{63uyvYIsPDz9&y6iv4WvW%!n+s@iXPw0w;xdrgoN$Fge4{=8-{&5)f$eS|2YP7#!k{CsxecDG5z_A=RJibUq zkNcK$+3ul0UC0j>0gv%x)eMs58$X^m3GqHVQ=-rpQ7oGZ=g56CdmcPo8u>0rLeOPY zzblBL`m41-M6;_+KFS+JvV@n(1)5B5X*QbNPQlYn_8Z8qxH^UGmfkcMWdgbZN42uh zgy!+X)&`wQnshr-+HX8c-OEC59fA}>(0^ON$7RzP&gebzQt zrO1m36@eDP{jYIHR>J)+CAsJ_a#y5(ky=9+ts!d^a~rU3?ju>3U8f=0ZKHhMYC@9; zf$CSmh%u&<(zvu9dx0sP(jM9?F+-v~i}-wure6{%*oHnuu#QQ%siWIxkBI_R1e!Bm zF)LA|>@qo!io7cIsv?zdsTGc+K~YhZ1quqkmP)76!sxX&H=zsg>cFx zqF|(3v7|}nQ4+q^q^HE^6wPqw!-lvok+wV28$M-XP1M;YO4S;L8*=nJ8H$Q|g-}g`~82s3vianx0DJ?5kks7RvPsmj22}QNsfOlDE7~U9B~T zj0Oox6FEj}j&6ULuM(GV2u^`z*7HY>`XX;i!}UY@s~>_R{SZ9rhoE0SraB*LNL@K$ z(j5mTL)$wh+eLZk*_i1bnP!Klh+LrW_OLE6LC8#e8Gq9VvYSY{3MUQ3_*) znDX)Ogq^5C+Npmx7>ksS6`YDfX5-veLQavgH#C`upfjZey>cXo`|d>-%S3f2O7aX$ zCzBCauV|6FE;aT339{Ua<=WhV8D!wz8s?IbQA4Mx+&o^=Qx^1BsrIpr8Jr?$f|!K1z873q1|asrA}$_PM1q+EmO|u{+h;;6u6S|GTidc zD$(*(gLYeLd5g5XO%>rUJn_|YGmlFx_0T*lM+!_kovNJ1?yazTzPMOvs;7z`=2V=O zU2iZLCma$IS~Dlj5)w{f?l?$jw1$MLQ_$v|#9j83D!+$#_6@4e<6&R?{9ogsrgR+5 za>Tmlo)>xX--h9n=o1pfKR9M*&X!!1R&LesoDlXe_aGX~eUgtg>RLKhz$FMs&+*lwN0aeLxJ*%06woy8xp7*XvL(l+cLA9Qw*I&AHF58JHuIp|_i%O^XcI9i4%B0s)rBA23*slzw)#G}^7=+(Zsq zeG^fp8YT>z7IA5_v_BPnQVS=RvIl%y58=becWM0pcNAQ!?0T z_LUAW(*d%9NwWtzz$^!-#&UfeU~2~`Q`_zeaF!ClOoEfM;URX(Jk|g+oXWXIoTm_A{Dd_x*zDxBn@s@yM$S6~pi!S8fN_-`&g%6~RLq|H-Qp~J~=(dA*Zm&+eC!aFc37*5> z(a(tiN)=WSIMF^~?f&@dKQXxeRznJX{hB6c`x^(z5mD+&;GFp1^Lw)lTtkmMGw+$2 zX4Q-|JK`Gl0mzZH5g8PfG8{?0@i`F>WjFg**(&H+hYZt8z-5>sSs%}pJYr2ZR0@$v zr93{WDa0D+0!mdl+f(K+Q?6_^8yEyFT^Kd>Rf&2YBFfam%N16ydai*Bn-AVP?H1~I z*ktq>Q-7zbQ=P^Luj+o8rodhDCXpVDyr6tR>lO(^U{AQLJI?d3$qmhQjWL-smtK^-%)>saebw|SPNjMEI zx7HfRlhQq*T>CT#Pv|Am{q?Xk5M7S0@q9I(PpVF*Q?Tqyd6DI)vN$idw@(%iP~Gn$ zH@&=>ABQj)gpp%}=jyoq<AY^4t-1UY*qQ`|xdr7UGnw2Kt_ zm%(BsNtifA${xK!hy@W!Yb9IcgXJ*lX^|2GOAFSL#!jRU{r<=dS2Hh;_D~nJi2twD5qgV zOapGC0mE80;Eomz7?V}$wP=uOK)E(xOs-F1ZX;;h6}lg4BD!TG=ypmYu8~FvTDH_4 z3)#PWSl4JCc`j{~cDjiE6R8E!-z{_z9YDWc`aEgi%QYGclm18;&V9eMPqPmW%19Go zdpD_~rpH9fYX=81rnKYieO`r?7CCPgqD4h`k9{HDowQjVDax(&JQK*HPxk3jb0n)z zjl?@{m3-0bwxrl)Fx8shw7VgJ>+$w~I^T|W+98GL^7P4Y>A+d56d)(^(#f_|rK?ow zz>zXm0(S+sKa$e9C()O#{fYdv+sU||4O4`8WJ+%<~dHg^~-ny?d$Tzt~zQ;g)%S2vMQ6w1KP{l!3kUz6zcRHRJEZ z9dT5Y@IN^&HW@^ke{mv+KSJ0S?KTRPNoBNjXC_XUex(DD zI8UKMmDFB1Jnlt*W^+jhH;97s=LHY7q73hzUXHAs| zMfp|ox@z3^*J273DSKy!>09kYR5U_bdZZ-%SKAoV&|AnuLob@ST-zDUrhoQaq+D7S zrT}TgcwfIQfxfOiT#NP%B#QQR;|{}V=wY}5v80uHw^OT}*!zDxjJ`eDbYCQ*orrci zOUkzJq!DgMjoKD^Ftk#9rBT17Y6P`t*|R7_XhSJ&(1;O4 zgkdP-$F1^2o{~Chw+6qnzr!_nc$Hi0znu5HhgIX>ftM_zrGHCrpZ3PWth5fWj^E8C zZOE3TMn^O0&(#;1vqiwO8a1|7o`XCv>!LLBaR7%`rj+xH1ic|6wBdj5apzlURk0iGo%M{#k}OmDo0mIR@-$y0I2n_5tCMz$ zllFh=uP^di9%RM~!-4C3k%w=P??^-+Y+#KZb_0Pzjb9t!8Ptb0ZDdK2fWo(x6RVJL zL?9wZ=4bdCLy}$o#X}{0HHNNn!pu_(MiC!&HC~U+I5=L_oB>Jj>jb}7e|7%w4`Kor zd0N{Q%{<4K&P&?n0efHk9p5RR_-~|p6a(q|FzoD4sc4 z*h1Q29<|x}mdI>yi}F9fE%NnsjaoUfR}berZ0-~;CA55x1Ur7D&3nmR6@I^}cCA%2 zo9{{t2YHn>v^Lv*?-^m(t>}UAzs{M4eP2*m8}>@2i+{;gKbPC>ebZrx(bCNTD#G8x z>0h0}S!(!u`&-H*lYH(8h;{NA;x2M1MuMJw4cWobzDR$&?VIh=nuQtHp&6l+=Xms~ zxjo^cyBkFyj>+e#WOPw$*4|Y6RQG+>LQnV* zW!F+RjC+H9Xr`DVOLb8|72%!0Y=t!dTcEJ()*1M`S(4Vdz`7Xfu^+fw$q8Rc^jvRB zq4aFlmBeU*zO87d0?+(9Ih0#a-?s^G*3q(we^Ja<@}3lQQuz4ccuc(2ifyY`M2dzw zU4`0`^j9>2hu{JJk)???{RBW9+}R$QDYV>?R6PMw(tE$BB=K-ni4`W`p=iQ#0vQSPeC3Wc`V1mhPkSpfYWk_Dk`ik&R_OnY5h#!xd z-juCxKZir2aJN4z6@mL9SzO_Ix#;R!P?7 zX)HAPA#vj`O3rhk0Qe|wFher|!O}I#Ztg4my=PrGG*9xG6g5tYMf}=p6Dj5=Q_OWz zNb&a03*0guOQw*QUZfT+V@)E3-X1`xl=g&{FC$S}uq3p6g?^k&yKlNc+buD^WejJU za4Y)W1fWs*z9iL*Gnb1mUk1DicgivOik1cA3}@>MB`K@sJpm%Tbh?}SJ8RjXS@Y{d z2U=;lmbX5(SmTYrX-~RXsrup;!f!wZ zn}hs&KqqpY{ox~!zMMK9TLA7UD(4wDLfkhR{s#$xT_n1%Ma%1eQ$}(Z#&^TkGfu-$vG zGMq4p;E-_Lr^%b>$)C!#CqoiF`JJ|_?0%Bdje#^a_LP9!uHR-dj7ntqwJ?)t*_9?k z2QoCzAnX^7OtkdleOk`X^8t^kh&=NcslAw-)gF{R{d~N`vCj>M1RVQXrgyZ=GC7|% zIqM~7FJEN2Ght^TSy}mmv+cPIv-Gywr}g(>rikul7Q{}y`(9Np2!l;y+0i{YEby?M zflz^McL&)}N zSq5~26!CWj`hYCRz8mY)-g&&g?{&U~$v|CA82=E!pUVDyv9*#Wn)T2vkg&tUc!(uW ztXC_3h6 z5wc%lFwN>-m?A_Z2lvnCID`AV6b=$@9|T>T1zoh%Cy2aZk78A3q!<5aR?=~?ecT#j zOIYE^BO`~gJ!_aF+tPH%Dq9vT2xJ?l9@HocpG=T$wnaJOlQ>#>ol}(k0wu}*y~q~{ z6-xVA)6PcP7BSlw_Lcjhp*%jDPbE`tGF4zB(R3Sm63K%fkVcb7`l?{A8CZe@CjX@F zb6k0}GBTyyZVbp}r2VYf!SBUeT*`jXQ0a3_L|VSyv^@9?wbf}!7}IaOUQYq%7h zXD{jndKz_6*ZLyMRkqf+u~a3?q1%?oa@o|IeB~xi0P-)gT;?XZEPM7%@pz+7Rf*7T za*BPX>PJ{O2WPXM4X(78^>LQFfrVzh9GFAIz-s&HL`2ufz`WYJspp$`R^2fJEA2X@ z6J2Tt7DWaY5Pe!obhZ6QC%V~+v(?))q=Ff%-`*xg(j{RiV8+LZ?lGErZswZ z$q%{^ckFY0(V)%q$GhyUlhFc2my8zdHLCQZNnNIQcYo!Q$2&|fa5MCD(_ZClr*Ll4 z+==k$CzavZ|5k82z!9&_N?jM@^_RMPPKi|Qs$I(?FxGGD`QJ3r`c0E{<=Q@F-~BFTwfU1W8)vkzXVojt|v>;)7!eUJ3Y2>*J4>P#G80-x{) z?etzesd2>&GCN?Q=-hViXX%GNZT9@T}#svWaFS zcqudNb9f6$v;KCs>Wb_k%uY!vi#gF-iALa+6mv;opY25NCVFu?2QHI=-qE4Cg9rlW z*hxX4Po0sNU)BQl+mGBX<>tBNzT$vScEC~|)xF_>vr|%w1ZO&8I*>$Ea(@Z-c{>hr zG$KTgel1C=C)n&_Xy?7CLsD5Bm{a3|@0Fxp11t`|(M~b&)!LfD*&^cSDG|YK4Y;`- zWH;t4VWnyIHRh2m$rkJGL3T~>N2P~lhq1eC)jD*ba7q`9lW1P#o;>^Jr{Nv_Rgezk zI?4jG8&d;k*}4Wq>B;e0e7zRoY1JllAb-k-DE3FmB%6>q%a`61-$o+)x26g9zVl$2 z{}B3KLHUca16`V*aU`qe#|8YXfXjmq7+_j+t>iAJfiZ>@T29-_&j$XpS=RqA^XvW> z_-g0B8-J|d-K0tGS9QB;M&!{8bVN>0C=L5CBsGG2Q5yEUA4w=jkzRHS2jYy&FW)+G z-6T#JX6;sNL1wol6@{qO9XK5&hv7H-0vGj(BY(vQXg#@}hS}{%nHGD6KmN$wZ~;>7Lt1>WLrjzjJUwy>5y8yG>CLheJ>&7DgM6Ky5neas zRjs*N1Lc_>zIwjaoK)6UlJ`&F>1*Y5aU_{kW{p0k{p&{mj2d?UF}?{5ZfOrVi|j7{ zc56JoB;8f89I2}P(0+p_)>2fpE012knGdqyTmZ@0_iJidg8#Y86;lt~EXslXb{Yew z%7OiM7ReAF9IjaQ^`qL%F3;=qc%OHucftG*+p{BfrI#PYxup0Z1&{5m^B3X$cZpDBH9vx1wM zI1aUL#u5~f0DF%7RB$Q;f5mrHkU441n7$e+NImR zabxC5Om|Vj5-}wZeWXB1N*dT2SZZ-S1gn1KI7Fb(kL( zhy`_?qB?e(vv$S-1oOSH7g4NClA6RB1c1P((DbG>>jBvbvq7>RSjb1kT<=HW>8~W( zJLw#0FRCdP@n?v4+ilgHCp)re*=32L$dZOWDrJPX)!T)kZC2<&&Xgx!Z=c6H^i2Kj z4|(ttK{Vn~Z+|4JUFdg;RdWX{T18%8c#p5&ZbY8wkgs3(GBR7&I&CMoY(!*XYF6vxW!THc)~-w;svKj z79MuIi+rI*9Cm6u57f4v{QmHqZG?nj zw5bd)+roEM_)UqickQJzlw=;Z17rC+Mzh<`b~mCumE7z`U#-zKWVUA~qbIr1*CuoS zr8tp0;6~q&%sn?5J=GJr$Ud+gi-KrrAEpiHKLPZUHh*xY#NGd;#`QIEhj~9rGvg`jB zn2H72TzPq~On&6f`;ACD_H=60#j{r6u@M5hQCmS772&V#n*k$D%ko&?i?oq0;Sc)M z&k`TSdDcMD0(XVb>2@o`ZpjJ5)}iX&eR^{~8?Uoost?t*3T->&3C~$XM&DzRAZNHQ?N**(`>z$_ z>NyJ~M)o&<;6wEN|E3ZSk0Tr`m1ZhR?B8Nrz!<=NOWPX!jx`V&m39Vl2@q#gjx&(H z1|p;4Ku!k&-R2F>Oy-;H!m^EVn>G7eQRYNTTboiYCqDKGAllYvpFQjW=ngj01muYI zug|`5vGa&_&tJm3kwDOe&H93#?KZR)=o@+P0721#ZDZ_xkw=Az_t~f7UQ++tFZ1QV zoxXU3uiw9edt*yUY09xIDW^^A;P_-YkENE=oU8j4lQl3TlKFCN9hX#LQ}rIx5RYjI zKzQ3q&#djV*z(Lm$wRS?-t4Bp%5kflR=3x*?Sj`PYdbSpTX-!`)8(hs$Mq{>|95q! zwbwe++67lhoo_YY7hYNaO<`!e6Q?p3oPTCshB7XMa88hvTC8^_cjqt?0Kl zSQTq64BvTg?czx0Y}jD}!9$ zog*!ZaBeE+1ld%WX!3(qRM`Aka(}7%H(e6#0cWa=(-oD#I_VKAt`hsv(KK090s_)~ zM<-QDmiFH&Z*GgZ(CT|oBgi{g?0Hl5VJ+mdYOk1ttn-Ai(LyRki(5v?a-1l9ug7*_ zL-tR<5k~k8fO7=!xg7)GpRf@?e*@T}fR6wSG=N3`q7;Vf?fQ|#H1%`)-cd4jb{h#d zajx8=J#t^%9D^Fk{GuM(`J^OU#**Ii3s(@?HXV6Yj@Y_HR7Cm9=Wa{`F-Dk4xfab; zFka;OP&`gqHR84&)fYpX*K%S8e-*B;j}<~6q54A%>68;4;;Z{5bfER^xk$sWp9|WN z!X_UlC7!U8`v$56vaQcq94QjzW)O6Yz#Dj@{SNYv$Rt>kHF}ieRbaj%IVWx9T}JQX zipYdaSw1b~jwCw{_BcW~nNpaPOAcgDY4^HJcWK3qQr7&hTct%V%@j#=*1^oe&Ycl4 zIa!kLk)4D0cp_@Q^tyzQ8Gq}KJYv|*tN|})7TrPWMRE=$d}epBSw*LnVMXdG3~B5+ zC|L-_ltKY#`Xdi$0Y|=9EV3py-L$ZkzJBY2-*GbsCO5w>{El!K_@CI$=UMYtX0Hr4 z(O=7A`GMoyRI?#4(Gyv!^LXDqS7OrO&fyM8eyH=QAy76bQalHw>BQwQ(-dtO2_pOa zm0n)>nDwQU?wR$omcPcE{Xw8E_6@aD(|>8Df%eJ@UG6qA*}+Q_9c<3_#ib{Kz7>(; zhp4mMnveXzc0hY0dxAVbjb5%4&Dur?ekOfr7i=ugJ{(xte3w&HB;6Bv#Biy5u7zRt z^47%NjL?_|fzyM;>DgcBu%tRq?*qXy9h5zRbEy3vLMHh~)E)d6fcozXLp!ZdN%{G3VG!(K03pR9So#QZOeu$3r}IIk0T32~esQ&jf9OzJJ;b)D>Jf@}yH1u$V)Hfai-G_M$ttlTF#pg#ga z!BT-)O2faEOGwpM4%1^ht7ZVYFFeDE3I?$#%|55QFaxV*0c7uuykxlHx4|xUm>hHw z;X+^{LChhEOo|yFwbJku!thJ#{xH$T(}ZbpA|EZ?kbqgh{(2Z@%)ydV#5#&76Mbr+ zqwtAsG=;iY4G~U)H!~j48Wf(ow8Pr7xsSG8X|lbNd%Ive&zn+8&D!7vZWQzVYuRdA zX|mI7lSYcu(>lDhkYsR(?`qa!aQdBQZ!KX@zcs-L75ye;2FD2*bZo&btXkQu9>FoJ zIdW#5$~CMx^3;aQIjoSLtbwSJNc@6Z*#Ln!8rEk+ML6aS@3!B~$W)$ozUnWl3nM<> zh!O#4Pg|pLzYvZZ(~Qxw2WpjPyuvd8tU={dg$qmC(-HhdSh@kq7M#^yi(uYoZR|^q zwB#waN%~^hJghMlN-l zIFu$fpCXj7;1}pSHR?Q~Bx09DM1v^kMzEq)Z4#IdY*h^h^T4&7SiP_MrQtP-xoJE%0Ondxku7#`v$W=M)0)jG)eUy4Tbx>52UFegQp;kk zrFTj#TeOz%LRw3Ksb%3E)ItrTp=uV6o?Ox(XlC2$Q?&8tH4f~`OaOOJNPE!(1wW1b z>441lV3Xus!G16jY!Z3>nk;r)vo)@))>QO74+z9=2Gqjd)ad_oQjas$w55F6AFFMt z-{ifOysAw+7?fsiF-pGw=zncEXO<|))ZPwpJKNKkSxkx2 z+PqGtdHqfE8Urf)fw3Y-0BmWWsO`(6q!By#Q)TnVy9>=C=L8ArU3D_Y_^YV?Y$2#! zN>JJYTR%$#x&5kotbVjchtC|!wUozO$baZK-}Q&_=ff!e;>f== z1J+GDhEQ2vRf+ud_LO1kET1E2)0j@@ZxlrKT=xu`sklwIBZUDE%b zwtur}zo=;)Dx7(doHZF8wAju#6gl%EQ4Q)m7;%zIk>?!QO`%TdCe&F#=Wui^pY5fT z6B#%|o}Elr`oFIjZ=9^;d4#ClVt>K;E(FQ*K8J;W?b~4Z*RFZV@$cr0zcLgv{;3RQ zvySwWGZclZcmV*mHI#Z&Mmm9?1idMh2>~SNF;U;J|5bfwnfivA`aZwy*!4N*wP>E> z2EF^bx>R($;7xHnxVI3*p%0XD>YBSk5bxikz4`H<+M8LFe)Q-Yg?FO;?tF)JGBhQe zI5f6a11Xo0-bK|=?v_(4@&)Vau%PIu&Q_W zqfULgU;8<9xM<2HLYJ?1;Y}&!)1n-{AO*jPiuRsp#HTs%#ES6kyds(4=v$YhtBVX2 zcgQ|7g1<^+dP_3}M$)z=(-k)tZkBTqJrli#*3C;Keb^+$C~UcKay*FT$yTUeg&eqp zfZj(`+Mvhn<4mccbxx0SlRc)+`@n}&*$=nMo7Lw0NY1|uzKa##(&$7xjx+7(78%&p z6K;v?-6y2r`pdhuKW*KbAEpB5fGm|h9ejrlr{8ggp{2i33jMj7_C0ON=)Ea{lPW1? zZwmgIU?$t`CR-0qRs=unZe&6AgvS@5{|jzmr^v}r_>=g&#{fejLJt?2@~`7%0i}oU zf17CI5%kakA4&)={r!BrHWz#p9f^-^L?vkN!@Cq82j6k(3MK103LlC0$3naMdcyDf z!y6d~nqYbw)*7uEG5mv};xLF0QPI})=EK+Ml~Y?b-vwdsipZsf;i@{}YDGw39F=g6 zzS+M1^VZ_nP$W|EK^P%jRUH74?cV{wezImIzm<_CDwSYqLrC?gyX7Mqq@?W?;e&QA zCg@Vk*QVyx#Ij8;2v@E1O&C~+>$A{ZdFfWITo0vTqMXFoWuyF12%Ccuix3LsqO9GD zrz4~!wJ$XldLkopB30`uaOzeWsah2AZVV$okk8(S6MM-tzCAZCQnlYKgOd0 zxCCT&pK^mAs#EFZ~r2KM&V|U)ygg+syC!Zu?diB{l7&)e)?(q{dn>f5XM747Y)SwE@rb|`}Ste-@A%RZX>dyUOy z;8|!kvZRT>(y!CWFUWXM5#@~AzbeCDc*6%g@sX3*BE?Q&T2@#~f2y!vI_L>Cw(^8_ z9`aA%3CfoafD#?7!|)rs-4JscG)Q)1M*uL;}S*f_rbIDhH|%ojHi9jt7_7 zH|MgQ!aj+-c6km0b3M5#!qZoKBGW}BUmiZ(Vyt>QV-?r2I(=4L$Lge6aUHA9GFI`_ zvC0JHpgoE5zy#?*W%!oG4)X2aR~m%#TE?1|?X8Ri7keW^IA*JAf~r@0MpfI(bKC~A z75|#2hGbgpV-qGl7*ds;#%;l^y6C5>+K!O-7pM1otweUrlY~(vZ|+><`@em2M`a*X zpe^`iD*vj4|5S1g8Lonf@x}-i1BW8x3OUWpGwke*0<&-mSEvkMhY!c=7UA&Gs%Zug zn!Yj3s`)ox%IQSA6PjKJNVemmffSaN0aO8|eBkj|r4yZ7^O4pf>g36kHS?%!tIXB2U zb2MXm$)p?g9*jv&SD!ZFArk&I;Rj9FD`BzZm|?;LBrG=Tx0>*|5^hiUDic1F@KKDd z6>T6%r(?zKyq>to)54Q{p}VH01%4fQO;{8B&yK(lSe`FJmyG^Nu=P2&9+&_zC>kUj z6a>VBb@5?S>0nVztf{HzY4F4wnuXi^+iSh_gD2DggZ~-^e^?ki+&xfj z_x2e^Q{gm|IYq^zaw@{-=`xAl%p100>u`R1)sw0$lI2rb`@ijn_8Zn7qnHGfNm=_a z5On0hl=)mz!9?c9m?!+6iX|A#I6KKbd1fB}2`uPjUBw6IDMqAVTVU0E0L08_QIqj> zOitO5k>~VbY7SwBTD3cXGCDe-#4*UNShTcr`S9bLs{``OK{5nI-AlY;XC zW~SVisPKp0bY|vjQjqqP6$C*AZ&q6>n4@;CkU_Xn1qRP#ot4+ui@+dPf_Go*ZtGH6 zEyUZ!qoZ!e0^Ad6!aLEJ7tD`QTV_w-SecSebYJ z(AzWlNelG#@NNhnq5-l{?=koKx&)}`;M$=I2D|;?k3I26C0FctWCJSs8||cDg%qoY zZlWSQk*E~;xrKg!IW6=6%6uzyRUS;VLyr8PYbM$zM%oj)yI2HlvqG{3$ON7K z$ckc_2r2^}51=aYLa`8)CsHd?f~S8?v5=HiJCncu$g6T=K$gFNKe9k9@39-1#19e( z79lqfD%1qr^z}yWq4q2L*IzHsTs*#Vl-TJoWcRXNsl3V&7HMV=Fxz9ka;R2FW8?QMuAyX@PR<76y6 zyG}}E$-um)6-LTjPuOpF2Bw_)*!tX*`N;XXvklK^XQtt7@|s=l6Oe;1qulBB zC)GI}Y4pkongo~WZ)BkKtByV(ebB9F6)w^C+Xs;Tg(aRR<)!Y}>SWV^khz|v&&XfF zWz}{}Zo-L4Hyr<#|I&H$@EgMTk-t(`p8WA8HrRoZ32eH;V&9TAtwte(iZv=69KjF{Q}Y>~DLOsStAp8^kh4hFRl@uW9Z~7ldHg zQ^p^a$<}-oQjJ~NYWYF}T)dOY>AnbH>!te#%_`Rqxo1~Z`uCAxIg#a}(ugb(tjYdK z6awLcl@ae^-SbVwu1lnC$y^D=QDGe^?X+dU8$mE)+v8k?POeT`%>FMF_Hw-c4{0KE7*XXhL*_{(dSzTQzx7WVCGADh~Pw z@GU;(`!CtTmsKOSvcAX?;h<93f7q`jZhD>WiyFTQk%tZctuE)PmF5oX{VnCc>2%uV zzejpn05@U|We-2t7XGfS;5wMxF7ii*oQI~vXH{_U6seYmnd>|cF9Zd0yz68gLslNy z75n(l?VBxGzPYQ)Hb5`ntC9c20`2nWHz+k`@rr_S@dvNOproYF*5+an#WR9uRv8JO zYOAb@{VrB&zhMxMFyRM*KY~Cd>TJ}bo~y>i$|%XBj&Cfa2V%19DA&(wo|!GpH=~4sjLX;70l)olpf~FFruFRTHA2iB9!(N|VhJ zr^V6ZHF4vMZm8wX10aBO>`+=yR;wcgdPAZ`rXnL%&O?O zO*|znm-;!So;i`uhctxjArxkxrB#UKz=sda)7F~GrI##|%2!ibNi8{t-ysAR>lF}qcbyh}J`NM0+R+rPgr6ehtfB!kO{(X3F@RL( zkg6iQT*{OEL8vDmW>%(Ti{((oQR}g+Z=COjc3r(BJ@mG=h({+mIAamU)OwDv2TtYD z!oDqtWGiBD7|$>`+)Sa?m0aQ`+0_(~x0G{d#0K$@jLkH3^J>g@o z)%gRfB*y93H++6+mEaqD{OZtwOsfY4^%zlS^|)@KRl7}!?zLvGwbD+vO4eAz>#Y&r zSR=Wfb5%EB|HcL+Ttufw(F)^11%O_l`V^O|DvAk}i?m!HuiKpu@pXT1n zGH+Ls$9|oGlM|*VNgg{_xI0_E30lxK%bd7b64!+|P&<>xtg(8GTWs~XWuCo%UpkWX z2CHNoP07p6*~gJ~uO?};HTz!aVdoEM?<3M)&N*aA;72mvo=`m9(hiyd8m|qsYVI~& z8ERUv4X+)vEuH%Pp|^x3F&!V^Cw4o3oDy9!efKwj8g=YQN3UYnl87VonN~0FJZDs` zlIs@UaU%l|xX~(M=t^+!IexXLadw3i&OgELBb5X|?JD~M`ghEs7~)A8ieq$bPIq>% z&Hp78J!+LOzT;O>iQvJli`uN|Jm zeXz4XvQ!2U7K0EF%z!y8KsTcr!mE=u5XtjpS01fa*FENZ=tsY~xx|sUSFs`NE@7o1 z`V-E_(NaN*?)kV`0w6%%^@+EYHM6B9=&7%{_MV%EIhLTgrWa4X>c*@fCUIFQVRf29 zLujO@uQ$}V{;*VH79Vtc>m$o_sfh(M+JbS^ri=q!;*3lChMKhwp*0vLHEjE^N%y(jh@# z{|!DK``N{ZuvS!_E}02FrYE}Grm76wZXx>$PD#nRJ?r7^3-JAk;~?c5~YesD2(5^S`WkfL31 z(AvR4CjCFo*!di*|Al6X86tS*r(?{ic`rLt$2-)SQ+JQmj^@x&ooqdc&^d+BqX_my zFj6RsV>EKlgy>wkvKu;>Y3V%~tk10)ajfi-o8=v@X_w~jKPQbI1m6@w7*wD#k4u#u zv_V!4YZo^Q%|y3qekKII_fvn2JHYYi+&H^;Df!;#D7h>RO{G<{K|Wi_XYExa()#{% zb)r72R``)WdPlK8I#MmLFlM9$LrP*1a%QFRUL9VKtk9{FEHN{!nhu2BiEICZi+#dg zhtMQ!kG$I`V$7f-KC5<6c98^!6#GLB;_XXZ^-Mxn5__M;&h$UEJ+A{LPgmL_`SJ#J z)%FyT)9xqPP}P}iTdzv##=ZYdwhXdqA!7Z9I1|jc%O~MSWpcVy$+YYMaLl7ZaD0r{ z*{GAS1+lX7U&a(0^A2h9hd9WRLUDio%P*#)IYNv_7Cc8~Pa#eb3yv|ni5gr@$wJTh z48Tj22K!pX596GBg_7Hoe`mNK0HiELxeI*i{}=WmB@V8%#&6LNoseTih#p@ME2cu_ z7slR;-5|GKWE*AWl@~&*+h)E!L00ns{#%!n^W}?9-}Xix5ZjBKDH=<;ydxVzB4wI( z!l_z0o^T|Lm;G{Lu@N;_Nqv0VxxM7>Sc9-jyg(W~grkCpqI*C+WL11n89oP9g6N1n zjjd^p6qPMSAti1Di-Ypmhj1brA6CR_(OIDQ$dCp$grvdgsNvd@RkG+l#~3oUkay%g zM~-xlz5Y(wcMM)}En}oC;rL4(UQs<-2XEU8PDC0J$69}(8NsSA;>-4j+hdSjyY|jb z5G^x_i8a2w(q8%vvL(9?Pk2bSlRDxns9ig?HISUy}@& zgRgPx@a@WGE`Nmn*+S@JLgO~dpHE%xD2!_+LbWi+muL_0Er>gx0vEA`ta%&{j(1W- zNg?2E_BvZfnz1wDjV%sf7#nT_C5(91OQ5sPzS;*eSH)fc2nTwWAID!oOMfkQ?p2ye=({Mm z?0OlHI{PF_P=&&X5jsv^{Z+wj06YF#gbSR^!#&w)Q@Lq}J>b-QhkzQ&akh*LAOt=` zQ2@;OPI(C|MEQ=nNIgiFtTBTs?W>Z#71vTg&m7cK12`Ia7!IX-ZsIKQo33tQw! zi^;`Jfjf=?$p&FeQ?@zqm1< zOH5}+cx&%4Iu@Ifgc$4YTw2)wr0}!PcDLkbvNd^kk;5!zO7Uj^dF^tocrXPd8&N{hu6ROYizW`Q9Zb$FaKlKT+g~6~*5Mf>s}B{i0e&^|ogPtr9a&VtUE` zJRd7v2cPAYO!R!$2})i{1X7snmK?{vIt)pFEov{s{n}$F$8Y@ZXqp>E^OUr5qzwaU z-9Xd25C7~$?7f(XGbehi->%`$>eU(Yw=q-xHW)W(S&O%$hs#HUDF(!@;E>RHnDZo& z&y*k0_;EIWM(pBG)o%WHe@GB!!?#B_@fGl-O}tTBGL$AR9I6QH?KZJmBIK)$aRr^cA|h5izjj+gi+Wh@ZZyDj)5Iz6lBs?-ZAon{&!w^rK7GN+eT zZZYd8z5e9JR7uRx{{b~t5;aV%uBs8!OD$cbUFLdA z%8vXPH*Z?f$1s_RDb$;7TAvV7g{kkOiAufCUqlOKHQ8RNZJ+!{C*pS!(Z!+OF)h66 zC1%sORSA7as=Tjz1G&xPENFASQS>E+Q)xlKZ9xyI=mH>Dn-=U|=(HeDB2F@5W*5QH z9QBMRo55W|M#_@`oj& zDD-pDlvAmr<%NGcnJTat5i z@yNEE#IMt1C)H`Ba@()+L5i>sKBfEwJ}-zJ1E0limp(3|iK6d3x31w5H&f#N z4`j5VCmR`U`2R{qLp{TRT)FOCAye0FVtF3l!e^}f@`4mfWlOa;xgH76_t8yXB&$bP z^A1p$ZEg?mLYX^F=r|YiQMJxUWDPqF!d*1T^nZn}n(2ST0PuPzpr`$cgtMP=V}?k~ zRgOGP8_O$kB6-%C?bCuCrsYYvns7G>XWTW?AKvMtM43m*lB$JPLDgbZ8))m~l#LC@ zdc*|d7OGVz89ZJCIz$&Hp6EVhv@KX=Bq5)(p`(f9c`FNKp>+TDGGX9#0j?F|;~qc8=KVq!(XtMv zs@XCv#I(i{ePeH2co<`a=I}9ceh=0Bx9csa{`q*9TGrQYxaUmQ2^~H|u)Ffr@5~JS z)Mm=r{_qa`VetU+&fWeVhbqH6n$Hpr9?4qaWbe-v)*2u6#ctq_-KneSZHzyBbIhgk zmJ&kf=giyN^r?%9k!(fS#&3{S(quK@Uae%k)v$gE3cwUUWHZizL#?5daQ;6pH*06)>>nJ@^Va9 zVHGr1SPiR+N%0XWKFBAuaXV2TS6H1sC-7M@c@CayH5}d!6TW+RZ?Bak1BMQUjKVH zW;QXD7w?=vxK+CX{tG!CfpnR_Q@GE>$#%xw>muqlpW|PvMvO3EJluy=b(cG@i@Gz9 zJ5MWcnPHxUQ3{_!>C_lat??3psb*4Lccebp7CXXgEe9Cl#Wbjf7I)|XpU9;j%Jqf@9lAgI&VGE zQSoTzaaacRy0IVRx$AjqHG^*oBwP{L6U-)aE^C-Hn2k*iE(A=IIHueb= z!HpCM%PP5LF{ndYwrX|>4Tvqvmwbrq(>lD~WA(~x2p&I8Wuc0OOu#D#WoAya?x_!b zk=~r~k93($ovksO&_5RxbI7A7T4Re*TC9;%ALeQW*RiaQ6~%cH7+%bU{?4NJ0p1nl zg!j~}<#@0pYXmp(k*-o7gg}6ajx1azT3>(o$3fA8H~CTvhG4KVsw*z^m(4(CU3yx3 z87S=L!rNb$^%*Zv@T{BCZ_2D@qFsJd+D&Qp?^u$sg@>@qxgO`6HN9>oDJQpQf}%d+`9K}(dc6#^i3CTw%tmAi&wrlp0)r=zbo#@w#KZH&izp2oNwh<{?OAZ z`N|r-O}cpP4<*E2`-9#(uK1xZiFO$H0AKWuOqAl$8CezKX_=ML!L2L87iWhjb2a1Q zyvpd%HWlGZ3anlq2Tz-J3YvsF2314{rxRBgp4^qFB0h`xEeSPdGPvgGE#XXy^k<8Pn$(sE#op)<% zS&CD3Pjd7QPd<$}-*QTf{Z%qb)zPbH>J?qX(@gbJ#U(xA&%Hx+IsWj6vWk>^ zTp9iZWLmW^p|w;u`IXTte4)Ay(%ajlnWm$(QTkaCok5w?sCpXrm@lF3i>Z4Wbze-~ z8O^tbCrifwCAt+I%D&~2BXYQ{%?MAcphZ$)>_$XgZMPI)>d}T%Scz772~}QvUU(Wc zUNRs&O*%{V7)E`Y0;#-%j~I^gCM2LnB$8oKi4EXYwv` z&TU{3H&pt+~)2SUr%tteV@A zxfiE%QHE=A8P@%05yXn3E>w5ehh;G&iB*wzrlyeRKQ{EKV;O^oEL3mJ6X%6TykgrQ z8kG`P;r0%M@ONg~n-ZWE29#~D1mq8Y#x8q{0p-{)Nh)5_tYfh(PRFVj--go{MS{yB zBUXeVf#%A{Eeq{~2vCs`uSl!8&0AE@<>1BX{`l(3eqUNO*CMS*ahW^iZ{^NR`5C@5 zTYkpw%&F{mU0v{3i_-CZX!YtM$~Jzl$_!@Tb-K~FAO$s_n6myuU%}(1wT0e;nRh)t zah`->|FtsZd%bJb<}j+(ed>X(1l9exPplFa&a1ZjCcJ|eDr5@u_FrNupgppd?v^ut z>&*A8F`qHl$BMW2(d*C|{8J`+WiDFWs+s09XK{LY4YtImNd+>|#O|Ro9Rs(~;4J_6 zSUbYBr{n`_Ws-bBtzRZ;wF*``%!Vo``sQ31-&k%gfmdzC23oP1vN+WkGeWBzp6gb* zm^mh$oBbC)s1kuE(;AIg9IV*NPmj$5j7fcg430cfR@jySaYn+CfxfrD?2s)ts)~h{ zAlPfIB-!^6bMuz6kZZ{v$?Bg>82HHU-{XIhCumU>7|i#s_lDo+V(4PM7^>Dw(Lr2W z8`8Bh`WM-5`J%7Mh7v0vtS+|kw$8tqCd(oxIftAI4&;^GH=W9+O1N?~g83 zYwOw#zUbxUX!$pDQL%Sr_`=G_xRR>yTjmfHD{#n7jf8k}g0*C}qiDzQDeSe4*x0y5#l~Ll_V-Gps#oVZTezEeR0RV3GRGxAJJ36}m&TFk zfeTfTJn2Cv?XOMR*OFH2P~iAPgLt4z z_K`R{gU&eIO>9ZfqFOa_^HmJYANWc>!oMKvX8J>GcBA({V*d+eo2ISWEKM_66ZW&U z;(cPz#Y~a@^0%^oHcw-D7h;cOjn4JFE11r&S_GEY3p!u0I;vKMWy|Ueo6fIVA<65g z1N<&D$oAqQzVj8`Cq&$se#B7V%h`z$ zv}$|6tB>Bn%NfM!D1*j$!k@X?m7m*8x%_DDN;L&ulUm>wU6IOiP37+k1FCDeCdU3z z0$D6gj|o}X^V=mAF!RaloNKjEz{vfs|5gFhx{sI?=8f$lTa3JGyA)XkU&`0bU1YnJ z*R_jP@R`;5QxhrMH)52*1-j%|V?GwZ-CfSxtLhn)F9nSTQeYMA^jMv@S!1>vKwp!j zB$=epD)^oxwlyYZk_<3OdM1-}wF>r=WVbbDk5zKm>ii4ZomE7yMxWDIY?b_C6&wb% zj^MkZ@Od8v(qR-xlI}zFJ{y63RBUzn&T9A)&Cge&`MI`0G(W=&MDtTwpqifo%T^2aCnAp1^m%Lj=BK7(JoOJ?6-Sm3ze-I7|pz>BHFdwKjG)3nt(fnh&@wI@{2Fg z!A{ndmEnyvl!gUQj&+nK;zQVOlg%&I11n9GRdWzbRMl>wj)>En zjMiXNA@C0cK73PGT>5R8XifSgZK8FU^>W5Z1U6I?_+X;7c_h-&N`|?iP;`M0S4JZ$ zDLQI`;*P2&5O);PmY8Rm=n6zpkcp&pd9|nsZlb4~UBrzZ}!F7Tij^;S_nJ4K2ezbm2@7oml zQ@uOEv(oJ6-&Z!6uvzF2lmGo3cU`V3cDP^-iaTuI3ue19=MrO9XYQ~%kHgDi%PpQX zd!#A!G=IOR<`NFbX-)|YR0YID`q=lU!AXfRWe=H|lh*tvan|0ks!m1}gILUiJ9?Ys z{1r=@5v;W6RyNx^|JWLFcP(q8EVJ@PhP(E3g#f zt79ABB`xgX%>5@09h2J5Yckx~j;od#zO+Cfq1o%eaY|lW(K2(cL%DAWp@|{aXMJ`0 zb5TCLx-#mOIGy}^xUU+=tD2F|QSln*nczQ?doW$<5xwjdOCL*tFsl<|$n8v>Ytm0) z#Y2_PV`Yxfn^o`upwUBfWOT+eI$N!V4f$3inX_1l*+FXNlIm_6*B0Ou?dKZ3+t+6e`ai$5PUs|2zmZ$-K|7N z%mc~NSo?yqrY%`ZjHd^)d} z&ZpJ)x-nl8Lw#eN`s942R+Pdr$7ZdTW~B(h6H$8YvBr0LtFAqK>+5&+T3@f7X!T;z zx|)Vr_g%qXpBC|N=A(M-*bYS;RZ#3R4u0V}X4WozSKB|Js^6<~sV^`{`X9F-7M?(p z_WYT`=+1c91C(@Rt71jcg=pEBv$Sh7aCR3fQatVVM@Ck2%RYDXD?rPL2v0tbb)lrnfkk)6fa2{0k?7HDs4oTGLsu>Xm9)ZR@Ze5%M*EteqV%@{brVH&fOX_OE5kx7zS_4cU26SNYW+df<|S{M z?sWc^=+CTzfARBAt6&{Rf^}bb^fqRPomR;%gib+O#z9)TY*s_NITaXC%S|x|9hF{P^maI_;REnTo4V)})*#bA*f;6HxEF0>{Q!ja7 zh`T85t72>HYHRctR>Nu%){$@}D@t8ebTItxLB~$*82pamJvOsz^Q~caveGPLM%%@m zkpfz-HzUl7QzD2Jj$5^{BK$7;uw}Z1^@XdN)Lj~$dgE`kh3q)`uxFejhsyqdM;7;ns+b>IzS>z6~BeU#tWft{; zdG7Cx%wpVN${|5gW?5`FQ%{#OolQ+0O-&WYYRqdVU~6;4=6Tuw#F@M+M2spztXV9( zl3|Y~d~$vY`(!?57Ryng-?&IHa?So!xyE@t-Si3pN7i2k-Mi5q#f%mgkq;{$#sESH zqE6A%6#QV?`x0Djaa(51v{gpIJ)}T#Hi-r6Kc>BeI$$I+d0y2ztJgchg?HsN|3RY_ zG`; z1r!v#rJ&X-2s5C_C2Wwbx!7vXS+3j}zutu5%klx6GoLWxB+o@Hbp_n;3%l)h2B9pQMVQAX4&sy$YC}`WK5j4+UO{~Lr!jY621Gg zRcz#G=H9n~j~YD@PY9>dde2=1{2QCPZCWaiGCXE>TX>Z54FY@fUionL%J1lW#{N#( zSE6m9_>+G&N#P1rT3O4%6XaeGr`DOHL7TL~c{2L~B%@1mV0RIEd$l*RJewfn0;DNY zx2J^B8`7R26_4Ny3APce6{xvZEBKvcrWGJu%pLy}n*!^#!blzMP0}&r$+Z){Y|XqP zDcQ5BkOFiy!%61FWZp?_hLE%tcO;i^zy7*m(w;{qA9I>tK3sAj%{|CJJB=@u@%XH9 zC0y4lx)Q~jnFtf183Ta+JDINi`tsd;>lJx?U;w}yR`VEWC;+_I z&1rA+Uci@a4{c3_;HikuNqmNXCxvT;uT)8xoQLs+W}#kQz8WfQ643~EUl5V_TH))9 zc#-*sNoJoL<|HGVUNM%eU@ethtH3RSA+F?9714Uxf`g~K#fw|rv|f+*rjo(F(@neB zY?$|Yys!9NI6Ys*VKLn6@&4kItA#nXZfn+ODGvYL+_u1mq0B_Su&1bL>%vncy(cz8 zx|StR1XR^-ydxHiFwbHU)N(-^9T6^pX_?9QZNUvN3tl1B(f@}l2=M&?1`FOU6-*T{ zH7k_cm_jdvh~E-wStW6VzQ(V&&?vqAQ!*s_($*1F(6pgM%RIpj$-9 z(ytd5>wh=*c|0~*UHiDpOWHx2vT38olPmOqNW+r{w*|+~7EOVyj&C97R8r|=}t8{o9oAwGyhTjq+*QKQjeA!SsvNQ zQuXT=HhY5Zfq|bVq~y~_^+t)QKiGzCk;=mstHFd7F?jF_9)|D5ofCYehh zL#>*Il2uPcWEu*>d$qvdeo*>@SZUdwW^u-~svxc6FQkk&S^iK`rI!vTIT!>53kXL( zAk0dN)B;gPXm^$?^nLc^Uarvo2C+W{s9^1fA6IBqL+}&UARW#1jKodU1{+#InL_?) zIDdls$T?sEhn1cJU%6n^NMxt-SI9@pzS<4kEI_ov@ys*h7GM^rbOItbs7eVCkk*-8 zmnrX=^sc!kVYoE!D;C-5xXG*@WM{0i#+pQQhJD@Cnq%yCn_$ zpJ(R!W4}WgX%C35_E$km;*y#qwup=fj3LcJG^=5XFaCRE4#9lI?J7!OmK|itRr(9n zMAVX4H1rCn7509DcUkkKnMM%vZv?2S|NpzihN5kM(%|_cO78H(FZS>H%WZ* zMwP;zNND&e_Vp;TF9d)zQP^~DU|if`g)^bk>|p+6}r8FC=EQ}K2Q%;+hh z=ou2cNbAf#uNk8X=!$?&BG#T(!1GoCs~Bn}k0By79W5O7SkD3hZ>#vadn#|Nd8(|} ztR*iq?^WbI+{%0XX?b65<$bS}cb4SW0tb>eP~%Pa7Hd*SQBTX{n5CU^Q4@fG0OCd~ zQLBPZLCdEFF$apzX1Ch{+lsi#{B94p`3hVCf2=jsb`q_f7I>d+mHN62eB>ko<^Kfl z7M?A39!<*`xPK{^k9%9KNfGB@KFG9I-^8;iM>&TB=`B(B_A8P!hjC7ZqwwUF3dumT+a zzEwDa3zYQnDp_QY;PB%I#X5I9`Xd8jGj8qrPChksso&&=SN;g&Qaq8i^ylawV^i@t zYHTWhNXD;NBB$|m{fyJ)KPW|FeOq6JmX=ro_3FXbu=wo`2m7P<#7arQXLo*lI0vN*FkBNKoydIA#TTo7nb~1swRr2^b-*)r+Cs^T& zS@*sl>Z0K8B~e^N`P}^OA>Vym_tpIMFMs(@^!( z3*m?e<@GrtlZT$Z=Vc2FM{hhhRCGJI;$B_KfbCx_Cfz)O8#`V6EJa(+m?ou!R^1z0 z#O}YDZ{RhI7+=$gl4h`4asK{6_8fK+ih1i+1i+`~Km4=;+I&pDp;ZsZhLMG=IM3Yw zRr24muM9xpiVQ@6o~7KBL3g2l$ti65l{cLE*%!jaAt1ppTCHCE9F;Gy1=@r?y>-uX z%%*0yn)Zh3R!tjSfqqos=l4k;H-6NnF;U}rnUQFAya4Z^XDJfhd5;P`mDwCBM$<%C zqkCR%%DKClbF%`Oa6fI$oTH?LONnzEuk#qPF$lQA%=J|(1W8Bk<02G-Uy~s+JWh_f z^C9aR*&yoQB=~)6k*Y#xHGC=#$&96}SNzJ%eL2SGsF9D{rE7o*EE%sNUn;m>UYdKm zXgV(l&3q04Q%A(+e*Nvy1h|$-FdYI-&`N#W{P=}Qc?ow$ta5XK3wK7W$23y9+Yx+D zoAVIs-q3gUK%dZeX@RjEn9?djG?eW9g+~=|H|{?Mhe!S+V{rJF|HuwCaGj~#Y!iQz z@i`eqTio+!gSEvYe`e?Rmp@BWu{4PlX+aN7@t5?RJXl*Ya&j8Kznq+*;_sr&nCu-k z(~m4fFoqK=qYqleO%L4vu#^ip7>*IYdUA&s>)*7VN+Qmnv`7>lH{VQ0;gwRdN?WWSaED(J z2Eh2>eDD^YC+X=C`C|GRBi2&Aa11h_c*@i*X=l}Z)3oBJ5H+KI+tF>4Y**dLA~^bFy`eJ zR(nh640X!Upl_G=eCBz9|FVwAaD}JA?e8daL&mjUU5T!7kGxiVx`~;bpSJ-=!1=9B z)WE90vuPuxGAFd^?KUvS=RQ7n=TMO61-Bm67OwM_$OO}^qonSbq4kQ(iB_%GR#E1E z%^v(|Y$bg`>$P61cvl=xirHSR*GjG8uj=y^e*4;A<0gdP;u20F%wl0-R1QvsF)eQY zSk;N|I6}d3=vRn}iZ}rx|T!EeJ;|$A*<4FW%N1$L}Oh?UtRS z9?$hxpEBxjv_+8!$?~#U9nLEt3VzwVBxg9|b=p~x-h4{^WfB-eJ96~)CfU9*okPe- zHZk2@)i#BU9o)pL;2yWdP#4!KoK${xd#><*HS2IRo+p{hl(S zQU;$7^Oy*iKD*J#SMJ(;`9y zazPpP*sRqFwP3x{$@2nLKzJw9Q3^lMRG&Bhtm<E<+gn}mYWEXKqg(h4SJ+((V% zSY59jme14z&Z=m)bZL7;PQ7$W?jor6=Ucs9rorW2+o%566=JW!Jft>}+Os zOC+6`fjE?-;GSh>w?MqP;bE6I^0wgH)RjKCS@;#jwwP=Q-7{7umU=?pCx?c>sQ=qx z!3e<-$$$Vm6wj*hEC6jHj1LE2HVT$2d8LV^0k0}7U6LgCz^&Ayz(oA6?}VT;NAEP5 zP;`z0KZ%bayp37U=f^3uEj6R{X^s}`8}=+f;3(W}iog-f=7I+ZT5*MBed?3utk)Z- zzHN8<{!DT`s%+|{YRHHFq~LDSlXL*qL*N}I4`R9)kkm?YEJ8&X)2}$XWrnmP#II~S zb+s%SV3Phd!H!nGmtSxAfAls6byOHZyx4E#mMhMxh|GqD61~b5_lsFLX%S_pA)#*O z5Cssg51Wj7jnQ~ZIvf4iO%83B0f`VX4^)&vjT`S$R}2{6ea@oR440tnxEPIn2COI@ zNN^H6WbOqhi!3BuZ6&NGAt^$2YN+eCx`&zHU-6E;N0OHMEGag>VlSWBG9NeLKYYS! znd&yGWp27H*)k6iA{w+!rWIBuFAE5CrW0Wmd-e;^G+LZjF%FczSIRGqCMwF_@Ov^a z7@sqKQ-z;0QmeZJX6>T#145O=G|m1A-oo$A# zo?S#86{V@mB#<2hvZW=y{!JoL`d(WZlmqwr!|&zdLcN`7o!e+362qT&T%heLM1;|X z!Xu)zRQS=^puu-h%=> z`P2)Ef%({aww; znHBqy?&!OiB#psui0uE(BGS^u!txe|s#onaPNL<8<)oF`Q7eGeafjcNc`s>%Mx^P< z8E*C;&IJ2`F$%t(0$&fnzAasW9lu3+cM$KkH6h7S{+hDtYi3oLJd!trq!*f5?KlQ+ z!7>Q5g0KhCX+vWU;3M2-Wlu?nnV{y^^P0@2rDUT$E@%2A%d?R4!yoNV z>R%~EDmiVWO!--p`Ev`-tmNW9yzzfzTC)G%wT=~U1I@>Ha&$uG*uWs9WCiq|0ijxHy9zn_ z$k~Hj8Lc^WH#8=Du|T^o(N3nK9BlY0Ic~PeZN$PyWptOjWZsy^)Z+NP03Cc7FXK)Y zXU$m!e$JWWd&$-po->ITG0-C5);Citg}I*F_~uBt#1kDMuRgqpP~~GDZk92nlbzc; zB)$B(5(;)$>EvyENdVdrOCXUyX>vge$C)B8FrkJ+yTw;FebN8lu3}WGm-*$3Jik#; z9(luz*JS;anN}rC1agqB9yew)BY@-imS?8%;03~*yte=k2rZZF;ns-N)I9ufTQAhuU;X3p&+-v~eq)J?uRYE<1aq5!TOnBd=f& zwXY&!qzjzuypdP1{Zi?Y<5n(3qQk3C70z7KCttnh>J6bp{2ev~-jeoD zau4IU#2%IB%B8Tlwv|yMBeYvvsd8MoRO|zA!LRLe)?@pv=OAy6=_KTxd{~z@xs!gW zZ%Lo}{eS9~^r`*VtWV(&)kiegS6a0a)KIHzRVx{mwDB7CKkqog+W*o@2M$1azW<5q^g)bxgNz+Q@{?ezA{$1kNl zRh`ZHM~ytGIdx8!FLkfyNxsG1+IP}F`Ihua_kZUtRu(friDuHn2N}6UGil**HF90&w*u}UK;NDmnXK!9 zxb4}>wbaa&%{j}iw`@5-K(3~BhaQrxm|q)hW@`*hhGY=}Z*rU&!L5JEG(VN|kS@JV z{J%WmSLXvU%H6@wjkznucNOQJ#4r9~5Ov^J9k6GAu@cqdytTyQzlyB!X0-0gBkK1K0vBCKIU!KpkAsuM|~#^)t{d{ zU>d(KMRT@jU6x{H5H8M<%D}e?v*>MMvL5Af33KaetF{vwqD?i#0IF#HayFn-5w^JQ zgtVf zwmbZAhTCz%tqnWj(KlEEvbpT{3P%aZGv~6hTZ*h~nbIp`Q^a^?T+<1f9YSRo%nQ$~ zx^(7JV~K7@c(E!xbJe9Yml=QN3$pj<`&@-9z52KX?4{1^>e5fS?5EfUe#=$3T8Xv$ zZ04f)bKH^3h%LUS3LE;YRSQX%zA`*+slM^}b_CZ0#<7j~`>1w9HCi#tT>5&~@lX3~ zb`J<*2;qi3gqT~8Zb#!R**w2%m~^_6bo;Ucr|4d*k%Asy-6RFo%6|&%v0{F(jl|w0 z2l~^+?w^eC+owJ`p0k8tNvuu@aht;i zPsP`6L>S(gZ?Sub`NC?KzLwW|k9~vNz7hmNEuAus%dh`o|&KViZ8E^(AXh zWwiF;Egf1It-V*i(;gkC)@_Y|U~K-2Y-))izt>6uS}b)Y3@6nCVQW@3AxtcF8s3)H zsW^m2q(3xA!cylSK5xgk__eHUgdJkg>mz$%^q}AQM3}lu9i=;oc8wUWl~ZBCa_deS zlEs1`=8W-AWJvlq?(lV3r$pd&4D-RJl08B{SkfEV zU|#K=4h>3t_Q=?!q>F8J3KC*Ex4|3eTTO21AoaT#4R{0a8Prs8A+-VtjxI0VK;nQy*s%4I)cRyb z3{QAgMsw|eQ-LW^{!dq6^xyxFEAR%`_k^crbLaFSU&(4ga|-w&LbWGn@_QQowF*(G z)}Fjul4}b;_myA=DmNq93f$|Zf(J>;l-7u~7jJ3X;E3rro|b2@X!^DPwxNswI-LJO z!|Z@&ez;-&+oji|>i=&`58m-Z7!CHDe#Pmv<}4H)qtRPZE>@NDn1a-9kvBXj+shE`j|5+n6Z;um&pz8YbgNu3znc5h zvR&b+?cY_NWBR8f*f@-TpS7Ip-KZdXlpZ72W6GuLFmIRGSzm>b>Uk_^BraEI?jA#<0p z-I;DHF1b0wUvgV+v9@rFKYc`3SGc1)JSf8>^%cuAZoRr}FZin~JIQaZR{k42U5a~k zl{Lsc?^=0Sy!ha@clJok54rOlS<`KsgzOthJ z;R~Ue40IjObA@ltwr?9SC406eBxFB6;L-NloN_bcxstKmY6+-yEzm9s9L4sd?<~l) zb!O6ciM<=)xm>px_e}<0p;f&VjR}2;QO^A)Q5v7}W*>bc5mHdUGD+p(5!q<{hNraG zgKr6?FS28#d`m_BtdGjLlaMnV*)v{>09qvisk4|(x*%!xdDGKRMH5TDgj-3 zm(gE*BhGTNj`bw+>FfEX^^ZI3%l4Pt)!th&L^Pk5`b%!g4G+wKHnHYdeX1NS=F@`~=xMb$SgFhCT318BkS_2yLL&Ipe2 zMi1r(?ved7Oj*^$f9{k{9GK&j?i+Z*^&TC;7Mr0EQ|-^$tD-;96#W-oJ?X2J%WkI% ziG^@UOs)LYCci%_m+SbqjIhAt*Q@+Fb+Un{mA_38-;x&H#qrp0*{?kGO@~~O8x#7d z^&S=oq5bLbl=1VB-T2czRbG3eD}hn3sC&QzSn*#>xgtx59?JDgqx;j*;jE9Q2S(7b zv8xO@HtU1>^v%BL!H&KjpLp%nL&AAyyY)_D|J9eM@;FuncYE}8p2BLMUK^UZK7C4` z_|uX)B|YI}X@zT#JpjNh!hJfpHOPOv%0B}`)~J-9;pfU|%`;ofDMb&HdKanv5m)Yz z@HH?ukI>Ddu2A*&!3DAJ=z11{o2X*Wo3xff@L$AHNEOyWg5FIBeI;D076iAX;!i9R zH~Kam!j!Bl^d(5$AHTR|{ZPxR@(F%ddG#ai0pr2%&EzTO&Z2R_?>O)~&cbgW1UUa} znZ8&*2!1v2>$9&OqAkfgYl4a4G!{25$MN9jV9-?vR2y7eEIZ}$)AV}@B~L4~75vKK z*yth6+v9WcM-RU56%+J6t$99_)~attv5sYV0|2*^0ZaL8fXqk-NLL$btdRWMSbYkT zr8~^IiJ?d#*oOl#_@GFh4+3Tl1f>?2RAbI|BcyE6tl&O+u#-R1_a=q?NFI5QdaW7V z&GcAouK}Of9a+WcO&5x%<=o!~xMk4ype9Vu_G1eZY!#MC|$YixR5*Hmxe1-pbu3y249R_ z0-YrZRN?MyDx`4NL5)pcHW4RyW2L*%yD5&y!WB9IJtpEkPopOqN#O^+CFXL#o7OOP za7g1!a&$9B`1Gx(rPudDkGVeksv+9qyt4*Z<`w!9t38fG!7s4<3`RYL2Yvd7iWbj` zKQmX+-&XmYTrTU^V*Lwg2{Zj=m%1xC&3>BCefBfGAie|8sigBq?h`!qy+TkYm5_e? zT1@O-H}h_YrG;fVogXjzN+fk*&MPrnh6lpKZgquS@>S&t%RHLqk6iY+x8&9g)&W?4 z@RBJL-*#V#y*P4BsjtM90UPCKp41lBVej^f4Sx+3+ z#)x@#p+rw!^+p{`hoS(45Lh%{&$?LDqtlha1?n(Y_$X7i7uY9}mwlsKKVDcfFw$P; zIabx4`L4p+MDbSrL^O7Ru1sOrPi#7&7r%9UyW3uusM0;9k&NGo1lwP-(N`i1gGvl< z-HS(LV1o6=1nn?px+Zog35cn&iCrEw-`(ZA&*u2$id>reBfYJXF>pTpEKyyoA4Z4X zA66*Q%I#7O&uhmwy6wC5Bhgr{qgoqQyj6R#is@^>sF#bh7f=jdvc@HQ+(>Et9~5QR zxS~dmw`3FNeXYjX=(is%Do?o7Wo~}WU5k$TN@YONU0B8Sc@OT!q@yAFfVyYC&n_ti zHB8z^wMqM_13$RF7T4FnvxpT6+P6E?kvve;T%=9LZmoL zjztgUyjKcp3co3iOw6X5K=>dq+;x0{Tbs0o8a-Ig19*2eiqA)4Eq_*C+iwPIv%0Bj z_08c-!K`cg5PIiEe*XDStDfIdi&IC%d%Jjl)>Li0$*;fd2oa7^o?rkMXqdcBP(Xpr zxZr%jr26fIZ@Y@N_v?FHiCRrrSE*N~VC;d396(`y=Mo?)v_2Zkd0$m%g9SR-QW-Kq zelhEsG>pK`%CK9ooD%4&1iDrHoT}lczb(q|u{D%9d1J>39_{`re(sT`LiKDhV5xb&l&-EVls@jWZ&k$ZF8l_4e!+rXD;5|L9 z--6ZV3`@C)c&zE1I zW96MG-fsOUc?Y`5$5D@c8)DWfJbrmz8$9B;Ms^d|W{>?KD|HprJN-EeV1k=e_v+WAC z(Ss6A<-+@7+t zrO=5#tjHQ8?5fK*^>>BY46_aV3R`9)%s4MIiP%g^G!g4oI9jO?+Xi1D8xZS0Pq4BQ z)cLz*{pWO39($1$8pbHfRtZ;<_GFHr^`!4WGqEcHa zGqruYH`Nh>c3NiThiW)>W)Gex=d@5{Mx@j>YUCE{wT^~a>8=E7 z9r}^bp2m2t;(uLT;cZFFYgI~|y@ZV|(! zXeRz1@cYPh(psfljooK+OiZMhO$|GajI0J6D3wOIhr!x4eB@1e~7HLQ9$Epx(6U%R}^Ey^)p)NFn&+)ky z`hq$u$P>i%=!aRAXKCfXP>W0f=4*Jcs?_;D3C~{RCHb2zwHhHAtjg)tGT zhfdJ|0*he$GO~>QMhX!;J%htvGP5dK`*lqP?pN$Z^Zb-7&#XU1wpM?=feM3y6Yj!2 z2#-Ml4XuiON{YS6ES6!kRyM`7^3Hg;BA$fFFqEwI**7q62qm!lH?zun{B!T|Pneou zDQF!Kve<%;33wwdlrrA5fbW@=t-_bY${x_MG1LH7#@A}0#{{%WdZjCxXyb|uk;DF4 zc|P5nwU#Ti7ts+0yNN1G(x&m3N-Q!iq8veeu^n}V54G}vtRgSnOh1YtQfwy_1zt#P zZ>=k*#Q49Sd~PD2TYGDl+O$i(x!R?}^R-JylgB?wAtG-?@!49}fkj$@Jl78=!JQDRp#znoV5jz!N*yQdYu4_onjrxm|f@Z*rD2~H^5pjF&RU1CcVr8LOOO(YU2 zwD_24K+-Q1fj70M+Q>EQa?lu>EC(IOq~BGo_+8YBpQhlcQt&i}qTdH!iCwB-F}STy zk0#0Pv9s|^p(pmYl4YGVHdP6Z;*eFd-||-c{@jY+yjJ|mTJd|J6~8g9_<8Vyfj7Zv z#;-D!DxHJHylkk%ySK!r-~K_doeeB{#bu1jY%{4|(WrXG<^N%?7(uVNp@_TcLnn&@ zugje{P3@(1&A3`CkjH;DU1H?b^og-o(+NFL6-D0GJelgb3TkGn+ntq^u{8!T( zMqW*K7<)DS!R??!_#O0!kq)}VSjQx9S&j6f(3-~J?_z3|p&O}#`Q*D92^JxLM)Hzu zo4v-5R!Dn&m(m~h8dd(GW9vs0w;%ZF|<#m%Dj{uqX(4&~7=DuOBVr z7O%wYGR(>yo;|Ji1fMpmwpfq)qOp8z+_=j2NvK=j?#`*=$X1o?SmS{Y$Y^BLFi2)wlv;wS{Xyu#LY`r78r`=M?HYLAW z``U`N>QPIqlv}NB(q#501tyPAmp#~qdL0BP|e$uIeE{=~W`)(g4Om;?wp6}8d zUE1s0-bgFhK@8WHy(-eoE1fEa=O1YW)e$e7L{X3S`VM`QYs+puTDT)PEdKBtdnHMu zYs&#opUr00>s)1f%p%vC+!rw~j^9AcCOW*9t`6Mvet-bt-orQ!)XDLF|;6K@|c2s-xZ#?IIfI86UF3nf# zDqIJn;?CI-80eDw%r)EWE-L>mD*swM1)dpSmmPpoOHE)ebCtoD)g_|4WsjxqI$AmQ zH<=Eihp+QSGJk)U*htUKXi#nauAr{4+IdLuRw8&fm~p;a-vt-?r7P#8c*JRi_=E3# zO$@o7ifd;RdP8gNAL~ZYQi&(zHRpOIFpo}{o3Pq5)*l}e|7T^K&+f&ReX2n4q1VOR zo7jx&b)ZD{yLRVOcW+KqSk0&cmP*KLWnk|yo zr>t6epr;-!J0fU3s$Igt{!YaWR-SwE^(t>ptw394yz|@dIjTP<({-mpb_eS{ssT?@ zi4Ep4UHYoP(Oj`9Wz!~^X(PCO#rhgsB?}2UWz_UhRaZY!|D=9DXpj@*h1j;iR1_A* zMSm7Onao{xh`q}(QR9ZY>^3*Xz&2vRm~N_-C)&yyhc8Hihk5?XmNSzbPJ>k_a_sO}@|{ zk2JsIg!XtZdIcWSOphbl9T4 z6KS(6dQx+h9hH^r1dko@ZBexfXAddk5pSZ#(HQ)5?C~50cCH|`e5+Llh2fRdK`i7v zRzei-{3x2BYvbo6*BdT9?`dx$>i9q_A4IsXByWz$lf041v(d)!YCcw}jahghe2R~ZNQ6$N3*s`K z=SHXuzoS8W+@=th@hj7#PJ8^YYVQUnbp4Y)^+I)D{6*{*DMe`yALucpG6trYu?a4LO{9;IoFsS;cFJDua7xSw?*uV7Hpr!ImvZgojx_n9R=}a zLVtrvCxnIC^||9ja&N82kfL03cBrNlK@0cq&aU7p1)s>+MZ6*xt1qtdmDPb~HZ>ZM zm0Z)tRe8-hCSk3L9brkYP;cN!)?ATHO3nYOs63_SziFyDH#BG!-NB{)N$e(Giuzt4 zuOFa3vB2Dd`ecx9ras}X-P($b=|4nvty3I*rf40+*4`qvWwCRU^~%MOB&oBNd_-H9 zLQzLpi@L&jb2QAyKuc$k6=6@CVLwb;e>Z9CRTMtn=xOP(aEG0FTqyS0yUMOcj1hIZNc9Gm@l_u1cPfSAd-jMRJZa+G2kwsDMEQ+Fx9i-`odBoh2Z;1U$ z6>sDsZ00D^`@0qKPeOWs2z{5Ug~rq1C@|=?uF&oVcj3yRk-k|&BiFQngc+wNRY8rD zYLT)}>~j0dNNZZ~M-(ut+u2Cscd`?J)t<@wyH3#V<74tZ921QR+P86%e~n|(PV)G6 zhdB7U8}EtR@%Ys8n6zJl_wcn}g7KcH^1Fb%ww}ucU-Gpz3vV_%ChrsPE#fU-Tf|c3 ztjo@k?T%06XD>Mr|En+9Y1r2D9Bu{6_Bk+gTg*V=bFjy86(dJ%6BQR7WEMZ6FB_oT z*$nry3fVugDh}&Ic^#HWwY5nb1qa-0m;1y zFY>iDO91IRL;yJ=KUBWI4HW;9L|-40j~Fp#UpB-Ss>=2|xZQFfsPH-(wTgXcYQ@$t zxrn8^_Z#r0t3#a|GQ2&u6@J4oxdhZKc0t12l@dkj2M8Tj{usJ0=(7F-d37H(nwQwi zryVBtd|%4jqm9`uUze>=rE8R|zih&ptjp;gedf({M^QkUvm7)Ix!sN3y*et!Ob zt~Q1%W01k+UbaFT9p@cbk*kg7=9wK@^=Ck}N2@--3xiZAk-ZnJackApK>3|p8@Wmw zc~~2DQoH$-OB-3|)<#vkwVT%vrj6R6-MmZ17{wJeHs?>2@U}2~>L*#BYuybcx9a7)kDx z@r8~#`AZpJh%)&L8DC@oVE|AgirIf+$^L`4LdjvvV^Tu8*9pE7(!KDW*nkI{#L8n* zy#&*DR9C$l?^gP5)9569x3yk~H`}3;4@l?SCVf`Ewn?8oh2u-{{#d-_>tpd&H4$&s z!{zIrGL}v3cGU!JCu6}*HZt!a_Rga`3?27S>OEgFvdKlCvwL2}%#f>SOPTLT*=TIxiJ^9A~)=9^Xh3n zeQa*R0VQvgR&cU(&>bE?^BVkQEE$5vNxGzAdc@;35;?LaWrm{|w-?K3q^@mYf25Pb-uCCg`7?QlOu2 zfj*c*0sUzK{as?lmnZo*fmfZ!2ENxwWV~lTmO#&&JH~Do(8r*>oGss*12=f}kLP+F z7X;dQ!?UxgVen}DYOkX|hGxUV7)efY!5damvy~|s-IdEJAKbTq@Xdh?uYP?tXK`RF z42OWK?-27Qa^Ol%sSnHb>cmyK1m9IHR=7bHFOqYgIX$E>!cO~cObzX7V68**%GG8=Hx+&j4w2_@W%o)^vk zKwh|C41W@iAR(uw+C}QI&G6Gt@l^WrClpzBzwG;5?jGp(K!5atf082K@zp$0N(}jv z^Fybe%`%h8`U0V9arku>6le~tDCK1fKpMM@hQzn@2{{)SxYHL_>Baq)PZYovd(_My z(7a$LwTC=p^$-+o+xT>j35wkt7W!Pbw>fr(eq{;?{^7q=$J5G3FtAGb)|sTEMhyV5 zUsN%X0J$sbDr%ub-5_w^QLsaAInUG=@P=QM3K@Askqjz!2EPJ%e;^iTP3w&p&N`N; z$^0)qdc84`$RKq-UrBnuK77p;#u6aCz9!=e$-*02ne9cC z!}><{Yn=C=G~vlLqJC^g)MVa_hl&_>-eQHFX9T6LHJJmgu$s&w%Vk1ztwgNJ9AtTt z?bajE$u7w;?5xEtRn9eTH;Z@^4^_nJ2M~*tyoLT5c0Ow+3g#L5P;wEIPMNcnA14V6 zk7N{bzJ7v?f}M;BDoW;yd`in-xF+*9qT1g?ZN+&#E@Kq&)g|-N|N88Vf5Wpcc|Hs? zdgEfSG9az_d~oueR5^xRSrd5<$>O6vzC9W7T5sj2`S(tgl z-Q#%En&>LAi!^?fR(=(0FR`~V`;8v~tJXRGo zo+`l*=Q845A>k%|gQFSbs+E5QtL$OdGO|y2W(X(z+quMdhkxR6d^Pz~m*d-MANxwy zAlb^ozWF3LAa~XzTz4whow$Z8*Kk}#%2kAYc`bKXE@q?iwcI;;<2g1gP3W-_QqD|N9qQ^tnzKMWnnMccxbs)xzopU%F}5V9JTLs3_leQG^qPX=7@Yd zb|pW8h+s#e{_Pw!R$TD993XMdKTN`xuFv5-3y~7B2C4{>$OY|7+=5RL`h7v0u`SAm z9B5+mv^IX>TqcW%vy$xeH4Hu*{>G6_`{%yIs$$1iTKN(Z5bT!xr{o?>AjY%VX0B&= zD#lB0e`buV5IjO`SK}2wd&PXdjHz>)@33*vzJ7h5H@Yti;d#h8?l|o~i&0~jarwER zA$QOu5aj{cg9O9yqt@WN#JN~IsVQx&}7~z?MzqBODNr$CC&=Y zcS-hgO#ME|env9;X9@6zCy@^Z*&de<{RsVu{I&9*s4%mPL$Uk#!a)8S@pK^nYfzyN zF{7?SU??BTT3MJGRc9)bH+`BJmCPfqrrEEeRMmlLO^=Av98ZC*0N6e}25h@eSXDnR zF_W+zRLOu%5}EKlAr1=%hhl5_va0yFWb^A}Hj7j=tBNnl2fIt)Z)h^@(U_bpu+m;H zX~&sq0}orp2PTpxwLeRG_zMgF@!<+1RjQyH!N>+v-&j}*_yxhpK==$aaKkcf)eBZ` z{y~h$_~s2~-iL~nPH4c`c~G@n_G3I{zIi${w5 zD*8yb?khf04;=*#v-vCRNbOZaLq!$X7fi&k$ti}w85YXoAoQuhIbxF+O56*S9-__J zfx~$2ZYBgF^A7}gSe4LHIbjbSqp|`P-m^izMn_U(7pQ>{!JgRqOgw9z#1Dz5{3YXF zNZi;=JY-m&$*?R_KN{lx$i+Va5*e90vYxfZL6Q;iXMt8G1FR+{)MT(tq3?fgGB7>_Y1Z)0AvS9wm{;YpuZi6aMi^fNzUz|kU8&&P zVWBB($KLnk&m48rcKAxRq3*-{GyGIz+lu2jfOELT-#rfgV%lV~bxGBMHvk2Cey5#O4%J>fFJXO>Q3U zApXLHU*4x`Zn%@zyw1V#iS}HS!<#a5&a2K}$3BD|<)tIgrQFx#(&l0L(ixE~=aVIL z(1Jf7F0i!7Y zWGW;Z6(kreb*4)(9Tg-EY8~TJ7TQ|W|4XU=Kw*kL#cAWvAp9;aSv#GNdj)Q(MQja` z%<-BPnygw-a$h2?;J6_8wec{HIO}SWUnSQg&GnrwrFc{+Q&lNH^@p7^ajE$534v~` z94s52;VieKZt_9L_Gt%<9+EA6!`Yw6%~gmwOkm0hw#vI1TUOtBlWPpQJ7lJ?40FGc zb%w0HwQ_ZGG#n}=iOf#@WVvOIw?DML;DQy_7aSLCT3&3yN}6OKf8KCNMqtTHjJ63b zyn3a2Szk0|mRB!Ru^io>I*@A%_`QzqVR4K|VHcjn<9%p7VU%XEcnoJggooHeRatf~ zk*|oeC>cw&$ITK`?{JlbIlA}fg_zHRNY5Z$}(~>@8a;aLL97*hrlwl z@v-_YcFbzIKIT{`d8V$9eL4~qbA4>owQFNDE*+~Tnm`UqlEmBs#y_KAZI;b=_WE|v z{nmGKq5Di@^*`G3Rbzd9JTc8?YNot7(_M7->;`d)wh+8 z;bL=!)4SbM^A!uV2-R5u8ENDd&opj(N!gIjD>G3(z_S|;y=;}V1*GD-gNt?B{I(r! z)!bkD)SuaYru~?*uU;b^8^zL}!kH^dlkK>XVNRP;n&* zG6WC7wu<14eTolQ%V5D>5$HfryIsww>9f|gRG4|=8Vpm>KP#_bvSw|dPHl^A9@Gwl zGmHmsH5+db?15O#u>~ASMj>#yKfF}zw+fM5#NcDr4_i&&6AwOO896elJS;E9vjZkr ze!yxK5<%(0BMO)~ACUo9`^1!vZk1I{mMygSr+caCmq^+Gx}qB$Bi4Z*X3anct51)o zuJLfgO(35n#> z1~nQQL}{X}3q0ZvqU~YUGIW5qVzrDKr_I+ZBr{_TG-GD89u1Hm%;<76qYq-rkfnJ% z&9@v_VE;y2VD3m0LeAT#rm?I zCPY@s&q)a}0F5j0Tu&2(auo$kfWg_%#1=K9B0ki@2@qpWonv$&DL4~$j>WVQm*LfQR} ze}U}Vzc!IAqj3`1a`-dZQV&YvutE#Rf)tV*Q0;oZ=HJcC=GVM?Ow$WzBGo_Ol_DTI z1DhN|E7p;nTu&f)e!8!yX3^fKWD`m5x?_}09xkjYO_G;4yi}3SXZ_)ZWoY?zO>6;? zjdjndD+8M5YnlJOHEYNmCSV1KIIX`+IGWA(RY^zW2DB0`K^s;#F7_Nzll%hmLSfft zXWIgo({YT^U`NbUBs)>cB-b6ggFydcl_iQd#x9Y0QcT0_GV)crV6Ab>3n?~b6+kWE zwe+Dl%8m$f;1>)4Z`y+$Le9&@sm+m-0j{!ZWeiS=KAf2Z8FR0a*2(OITiA>|SkVr+ z=^bK!UMt^E`QZ)+;Q`*XqYFM~7vF0#PwQCIuyjT~Y}?`M!!z=;$#P&KFP~J;kt+Vln#?zO!;!o$nVFZk`AhoE=8KUkF!}mO z`(qS_ME)9|OC~y7apAY|&a&T-*ue210|^>y?SPL``Zw4DF>gtifh5L+U_$TEAD7Ru zZRVEiBiHn2m(}pwu~@Z7fc0`tUHHIhG&|6=A!ht<$X>J7WL}6HKj%T2>)*ao0!1%51-u5P>zlSie>#dJbh@1dQm&CLvmRTK=*gvFg4|au`AmgLrE7@-W~e+pjfx@$LZTvxo#ijKnPjaRC|h z#+^iY>>cWkLnrtXnf83`?7#0xdF)t-1$ zA-Tg~qI*j+%DnbkY#@g-H*Yr^viw=X!@c#Rp}iTQqm4a|%IPDyv@9EuU+6#w+4RrN z*%p|nZwMVYgfQ5BMDHEH3vh!!Vsk@HN$=;Ahfy^x%QjRuYvNLd6ai{)5~!TKN^tnq z$KZC!&t%PS;566#hjGc8|7s$9AQ83^A+)cNZ6~5=6^x9j3vjRA+A4(O!y9$q?Jmi|poZd5Zi6n`nty-6fZBhnN2f&3{xzt{myh)}7Dst=Fm~E#@1R z!ZH@YhKD=Mm?GRci_c;Uh`(-Y1|qj55R<1`r=M#)rKGoIO4ZpUn08Uf`ReDi#H{u# z5gw*|BS>)4eJ+F+A7BhzBr~I@H0hm&x3zqfBx)s+GPAD4k}}K3Zu8Xg@t>2Ei-?9` z4yy-&pOxeKr>qNuTGTJO-rp`jsDfu?ZQ>|stZfH3|`1Q!3K(T)_!Al|Aoi zkJ!1kc8$6`3GwJ4tfLOi4Reur?x3zHljkGD?3t}+V1c*GO=jwRQhOunUgG!3UNZR^ znLwra;dCc9iEOie=Cn!mABt3p{!Zw`ZQ2vEj3AG{oyE(vA)eTS!fH_)3}HQxVY3mH ze9KOpM?CF`e~>S+Kk3*q_7yEE`6+rqVN?PlT`s{t)`^mx2~alcN@s#%w5R)!7x}`7 zhE8N@Pb_5#;f-Xzo~JUc^xC5egb&*S!e-!gCcufAN^MnXbB382(5EqSqCGLq%wY6s z8T4#V29M>avRGoPvQDV#W>x?W)om)PB#o$_wNp`HvO^~_wI@27xlTVV>i%@DbZKhP zx}U4M(m=U1P@X$HqAOaOgSvgA-CBiXXg&_P{$m6eyWP4O$87~TcG7}^pM@%~<CjFz&etE*^A=w9Hl%}4)2x%rg1j@X8OL8-ph~bJwXP%e)(CTZ5gy_#^|g9Nd_6OQlRv! zmX|iDuDPD8u^1X|C#`-Ouyj;Cm@KTOErspmhf*?HkXnVLH}S--4z#AN7}1rV+s-4; z1_(G60b&j?_A|5DI<&~<+B33QJfe$5k9K0l4w;Q~zPMjC-Q&dlThsl%xXo_VPx?Yk ztk?qV&A6K@yPZ=UNnovhVU=;Cq_GCa72?LKsifc5BK`c7^i7qua#(4{{@+lNL`fo7 zd!Lqe>}hFBAMIkNVGcI7XK~UcE-%fE^+VMKZ$1-oHyJ0Vq;^5LI@+HfN~#oyIm9IH z=fr*3bpKJ@`%L#q0gElxet`@NzG58BxLJ1R8MqO`|A8^Xf^#*QrZ(`R^cW10fYG}} z=6AHrTr!r9qy{4?K@CRIkvNvnrHe|M(rwa>#N;F;I_dwh8~LG(&%u(y^l^o*i3%^4(?&>7ZC?{2KD>BIL^iKx;UgAJ`jh{Nel-jEzQYT_7eIu zSAe0L;rlkU61sdN1&I|=l6+2**b%c~^H1RZ!gOCIZrL^_jzioZnr^qaqo(^taf^Kz z;@l_hKb!8C#r-?e{ie8|G2PYTt}xvjamQznaKAXF;AjxXFK~2VsDjyM6cWd19R0;1 zLz_<=gK^v?4kwOB#36`kFUbW_bHqmw^`bZgQA@=kh}t9$LDW7REfAG`ds9oNAZj~^ zN+n9nbeeWZjir-Pd(hELNU06X67y6RKruk&*WDp6e60@nk&HUy zDc3LETafg(7Bx9Awna@^FPDM)ww_ioTglKH>AqQB&BbJ&-p|uU#O5eYq~Bu-t|aEB z{wL*Gu#Y39I#v$Us=OxtrT2f5OL$OEZ>XV-_QbDY2x+3BmvqGRLbu0!_ARl9^6K|J zB`8|T66^>qos~q>g)Pvu0;9m*@K6jDn=GviP%Wo?3Yev8nldh>8TUMxq=8r9Cu8sM zLm}nl9lOJH&lmRy)BU=*hnVhnrSh_ELi`UB7J+ZW(L5qw0#M9W7@Ni5>`=wQ$q=aq zP2n}vpeekDVnZ&&q1ce#IM{&cQlK(R0XNfF`alxgdKxd*)&%9cZ|LApnyq=0xM!K} zM^t^2E&IZ)O_WsnXdYl@zPMewV~5|%OLNy!WSUg!d^7bM(zAsibLq9sl^WHYjbcr; z#Ur|wK6U7(z9`Lgv)CFow*FG}@qDvu3cDP; z(1hp@DoL_F>&G7LP1?W3gAw@%kJY zuZvB04{?jG9k@AFpNbntGe`^tf|B)wQ}~DSqHy}Cfb`>!#kc##@)ATTR%Qy8sUPj8 zEx9eM8; zIGU*{f%OE7v7?OR-?pR;%6R`5W;Ow47Uw#fjB&vQ7-JLOoZ##3KqL^(Y`8nQxZkZ+ zgajdFtG4s9_J=9|^%lieHWy1HfSM5uNs57cm3XnMxxo#^)|dMes>@>=1+l^^!_o5S-wQ(idm5Bdg9R?NokM0k83gbMOl}b5?5Zx&d?WFiu z4Y_AfZDCm(OfB|Py!uCKcgC3b#i>MP=D=ri*?Y0hJ1BZdh7VKWJx&it`;uccY-;u9 z(w$O=El?ohmVrnSFmH)+?Q!Eu-0wlzSo2Pw-Bx^h;-jzByAP*&vMJkYdAs&=FYDsE z6(VaM7mH#=O6@NjS5a-_u^Qowoloym?X*fb&dtVhvq|nXJ?}6*Uo$;>n4WD-&u2}~ zADf!INC)IGA_0VE!JAfluW=?)GU0I_I2?gdC2`y_B6R28+ST#+?d{G3P3OX}pU{W&H^C_`%x}Fy6 zRx?&Gkj!VuPm(d%lA3l0x?PbD>C-e@{08|RroKnW_qFnUo%()BzI(~{&Acu%pdEV!56sJWR}+cJr1D zyM_(lxf~ews-r?!v&OtBCQpYwsu%xFBmkL_8?qudcSLK*w<&rOeYD^L{Yc>^Z^>GA zHs>*1-V)DzAXtP{NQ^bxfhE0o zE(bl(0wS^qZLm!4=4PutsE>Xf|3y=M-pIaWXjj*kuaNt9b8XqLEgsZeyv}uP`C5!{ zeIXy`Vfc&i^D&erpFdJx7i`(<$@#*av)P?<&{f$98~)gNe_*R?+&O;ia=t#ngs)uF-7 z>|a;K-XnGs{2pzIJ??BCFQ`Dbs3BKQWY~eZdo(8Qyc~faH^t@UxZX;{AF;~wgo!q& zEB7$DdsGV&yju=3?W}&1Q9qoqMzSEQT;w^RHg6ki;r5;$)xIqUF&3298AwN*hv*>J z(_^KS;M)?vKHPpAHk0$t<@-neaJLQai`YnBJoEzJ76S{)7~YP|;vi*${ltxI?{oF# zRu8rVOLt={YH<}uvnq)-w!+2-*Jp-)m=Zx+mLR7#$qR=;NkwqD0?KG#8g`C8{un zM9eKx3^vtN%uRzM{||fL0v|?82^M1w{of zji%bFAnXbVfrQO!rsLYEV5!x&wAQz_wI#0?h!ORHZOH0j!p{i{#NiTUs8GmUqE;{cD%=B z&={8(F~p<#Vd&)&8u?NESu#Ti{yZ-Kw*m)&(GA6dxSU;x3g=%-^OC0U`Sx-02=s_; zYUAk9S*Ot=!|8_56S4A(!B=+#2$NBFfLcTkE{GbXl&{)R5@TsHG@H*42mC~jz1z{_N7()_3j!bHND?hN9$%9l zfv`C#(p%xsljo+#q0e+qkLsLMOJxh+6^b~7Hg3KEq7;{5hEN<$hB!?I8BGSi6`CZUXgp2+Yq-WJ@;Q)# zZf_Cdo|_);??{jT8Vou$mReDAF@6j2tHAFa%q}5Ms1v_G<41Flx8S!AzjWCAMqD3- z-Cu#^9Y^cRF#V zQ$)fqiIMQYkU2@Zn19G;SEf{3l>#j1cpQS8^scG6vg0%Ixv*aX*|>zAZwC5Y0{&7) z@*c+{Q|6J#6W*w}KFn%jvi^S%Ynf6lF*$z_Rgs|IgDdeCJOy((M52BlySu!OW$90% z9xwaWVWTGque!Z*%9fNmOUhoUqz|^X^;xlFIb^*}Xr*JiPKw1d(7~9r*wrPH3Ig2M zL^ud4Fi-&DnB_N|AA4`be4oUbz2GnI&(wg_Ut1wHc7slY5DsJtlf4Aq5?l&IWxV7% z2604m1DJ?Rr#B?jam`4PmWM+Hkmk6d(>Lcpo?}G|6X-`U%k$&{n&p{ZPmlTmy7U_< zV;}Y?j)~y$92^pPPnsoj4Q1|ctqa+}Mo>o|y62yOv9mJl~mAZqsO?>8a za1yS*}B;dcL2xoCD!`4^Jj*H9cklbae!udFFVq5#ulCoOz?*TJeEqRSM zO5W5Pnef#lIXKPh%MM7U8f4W) zHV)7eESTrzClT#6LYOm|kNRscH*|NhX}hwksF}n%0piUtV@xTp*WO1Emwg5s&rNYh z6-sGdDz=eqC29U`q7;}&pWt6Wu&hvYtIk0Hq9)RFXk0a!ZiK>!%-=2y1j0a+ih15i zptSi{#|!j`J=%fZob}%et;vQMTAO(eT7%rui0z{oVtby+_p=e(o8N@kp3;d;hVl%N zivb#!0hw#}j(BE1Bet#ds2}Jf{Su@Yv26uqL1M1~QQ`6Bczn<0vN{7IyOJ_PW*-Kz z?SjnC$f5^*9cuQbSZag5o6|+7v;+Tklm=7pJEye2ejQ4K%kDd%v>&3>{L)$Y@5S#$ z{8r(&2J$)`s7)&BV*Emo&ope8ghC!eitKe2YLN3+2e`cJGyB0I8HPC ze(mvJMeNyc$3BU%$9-QUL=E!C8RMu*bPm#$|DQtncXlwyX9Er6^#AtuI2Ive6QA$T z9v?cVbN&B2w8zO;@E?1enDSZuKL4Kf`1J4A9+!N3i6SEg`7c3}Fvt^~19h6jap&EA z9SrhWeE+}B?eUMlXM6nhnVr*PoGSe-+v8n`Apc{JcSeyB-_QRld)x+@elB}_5#;&z zWREA3JsuJ7-`E}}JDg1HX}UfBiwm&FN5$LYzxtL9ml%5-vOa2%PiL~eGO<&GJh2lS zq2Kpvkmt?#-VE}6|8{1=g73i~|8G$51smkEk@;K3YZ&BLqEy`=H^mv`=dj1O#@OTE zC9QoPLu*f-gVub3E*i0Ih%v}ZzgL62Y3lc5knjJuqcnu@zjK2eTL)e^rOo+HDD5hg zT1rGrzI^hZ`|u-soF-;Gir??>I|O+xzz*+<-wm2QuEG}IL%#D)?eRO$sf62%j1TXC@C5))1!S%2=(_3ms&%ZVC*5DKNCXc^;Y)6K{*!;co*~alY7h5)Xg(SDowo->UuH z2<{P$hl~Gi_IJT|6A%9rC^d=?unu(ZdBk}h9}k}%m;c+rZ^XmfSFF|1O8UO%xZgx1RzhgS{Q4IW4wbrqf&o zXzq_4%1~V{V+ntH-;I|FN&nHq$BI zzWy(u`h~~4r*)*ae-XbmYAbyhCCA#=6_CNP@ouuMPvU2Utj?w%($7Lx@53*>GkN{Z zp@HJQESLW12cO@Kd%D+_i%#^pB;c1PuR`*`(ANog&y!UOlj#BPW(t{M1{(t2 zBN88sQTY)+jt0CDgQHn9&DyLPd@~0zxKW6~9i{IPg9{)A7p52-MO|6M8!@;Udc^xM zMZA9+8}Z(IHnrawiFmL6MiK7{9`V-ZubngEU5~6Mv`K1+c=L&FEaIJwh&QIs9Zp7L z>N|;eBPOngyhnQNg7E#tys>rb1uFj8Lhwms{`O7m0Vq{Bv40pNwRQg1G2Xr7`?9ZN zXic-PJEb*Wz}Sg>y|A5q9Zzgp!29bF8v@>(*gz}@cr#)_z&ik9d+GidVxxdJP4wUa zZ)C=d(WA%*g2IF|Xl2^;5*$Fqr!A=OB|{(j@T&RJwy+9pVhwpf0)oteGeA) zh5NEVXy2VL3+ruMptoP+SBl?<_^pB*z7!fMMS*^cUjQ=tEBq26udl=J2Bc$S-faH) z9k;7vhN!n}kBjc9OY~ zcsCWN?3CR5sl@E8(Iwe9oqMNLa~Onza}y$uo&5!0D8c4llOUUSIQvLVYr42F<@$1* zxfuE&X8ng<*!c#I1f_kok*BNZ8HW_l7tBRcZ|tA7#@+=!L5;l)SJqg+ zq{2Odr36O}$2IdxmNMDgV138dy7(6xK|iil7WM>>uN$QJ-I(l zH9n{{X1g+ z)c=-=giP7=$9j549`vKd_+GsKFa`t9zgc868?ER>{ zdcN_ZCep4h)I?f+5;I2qY5oT~vTMijaU;wVGFBhIHT=7EB#_2NsdgD01sXv3#+BtQ+9O>h}p`Cc^!y(J0oVlWZLe? zTjvmPD#!d>35y|)8Z1{{p`G?FdT416b=q?pUObJfEw9y)hl71NAzvR0kAwzeL(lSH`!G(7z!hNAN`kF&FNq zDwSqVZLFJ+aPK7#KsLDgPjGei0pEL)41mdf5=!n(kZM90n?xzR+G4J8z9BWO?&_kc ztPBa>L&qAiJ$PRo<0J7Ioz*x$53i%OM-3r~5GL~8qBQtIN$0H{ix{YOtSf49zDY}p zTv*z|>s}F8-dX#X(U*68BGzo+jQJWI%AW8IDGUOXQP?bv!mwddI|}=8w0#l!QZp8F z>N4uo^&DX|oqK>@A%U45rLJ{)<9v9>`YaY7b$U{>F}b=uHL-_J8Z}x<)@bR!nY`3X zeg7P^^keGI82EL1io&l`(@G5bObzzl40c9MAM3SL5P#0ET@$i} z*I3Nkob?bQU7cy@oD-zh$mV0ty`l6{j>NG~KPJI?Jt;z=)jAB=_>#dOX)u^M3_3^e z7agy5ib@(XGI)Ss&U~aoeLIXVSQclvqo|L&YQq<0+-kLfx&c9|E6XOkyirci4kygiIx()m5{^g|YfdS4EhCdh{y6`XuFgM5y2@>wmLj&rj@ zQW~%X@Cr$2kZN&m%=}!Ym0WoR_K#+kMS;dKKi9gJx)|cykyqysHrtwagf5H0pHp@d zBc^g>!r(SIlsY=QEuF&)#lae013RD%G_{$eHzDlxP@H9@St>k0ng-5RYjM^?-N=~@ zbtC8A(0XvHN3r$!!x&Gi5Vkh&3iZ(Nh2#^}=d@E@Hsv(c)jLX0vZ3i5_4$sFX3()d zt&6q&71;Xq`2PLc{Ha}^x@H07xoFZXGzonZk*5)Pf1l2XE|2HuT#Sd;p!@3d?jso< zrS~QxmaVb^g=g8^w-PKR^AbpPdy7=J&??kRlD>!5L{5)*ctj(_cKjvR5N3iqQXeKm z+=%LM7MiYCQFYtSQl0Po_(?i4j9#$zb->M9LRScPu=h&YRPV^EhuLfK-jj%n+-TSG;So@SbZ)Bh9&zVEPs5=zMK230)*FH`BHv9>R9qrZg`V(U9)xy1r z5qmX(-EfD3)|l;1vR4ya=d)MQmT&G)=n^wt-;O_lN{k&ZvPIgD*Iw2{-JkG{#)~NZ zJpP0(9mnTu`V+cD#>W^PpFRKj_<(Rb+drmL>3ueT0w-q8p8#S$pFg1Xr%R(yMO3kY(fqdy_>0{jWgSr+FH@f|jH2LIkz_~B28g`Z)=zsA2i_a_u; zL(Z<~oLRhc;{6Hv5r2XltDndD6H?K0XZ0s=XOHes_zN5gi7wiif;kk*H8taM4do;H zO~jwDpY#nfXhz2AH_V@4Wd4M6*Uqdrj;1;4*rBh*M;~KI6cL}AEl-U{EU`#_~B20{D{EM&@6U6VLN-M6Ma1q1`*UE z-Jbwf`knd{dT{%Pf*{-{_TCq&=G+Pj3CU)!Ic+lN@J#T^Ru#3VHTjUUktbay-djrR0A z_a~gae|Z$9egEpDaAExmd3TonjeQf_zo4CO;7`!VNB1X?S#iPsgn1gr>}ax`!=FI0 zgBW|Qr{+)a9mW9b4ux8fR6B_SyUi_v`)yX5dHUvF2w^WDW)RV|e#P z9STe%BVwsPi-k{IpBxGU^d^$Hi1t^+ztBkX9^yVD{(Y_w1~Wwl$icwsk8?0E!9dlY z)t|wNi`I8R{s!Rgc(DFhe*^IM!u<{Ni6zk{mZW;_!j(J2&h2klejfZK2f(@US9btx zh{ayb;h^)o2>y;cAO3b)UmX5M>eGfcB40c6HpciH1PX#m2!g^*RC`KUV=>j)$yL~K z`U1`4(S77U)qLc)YCiHY%ts!XzA%K-yC(5LWHgOIj4@+l-45Nj+nk)bBjWK*^Ian< zh;17qCaXVW1k=puGqMDxxaL!EZQ-$DXtrwv=QE_LDmtum-U;ErYjgz;{2o_ke(>1` z*F^CV@Y1XROhXVmnxzyLKv0jsgoB_Eok9Ce67fL|F5D}^4DAI1HI6Qs+zVi>#@vZo z*JpO29#P!oP`Cx>5}K^=CjzCn21**Pd>#R4JXbG|^%q(h(_gV>e*r@5WUN#QAFsJ`<#i z31Z-IDXuXl^mTFcMp)PZK3(xAGkT&1+fBH}wl4}F!ygSkhCdeoA0N2b^3H0{T?qf_ z%v^T40R3z_R~3y9U4%a8@%9U`k8{u^=dh2--io!4g>TC~PGI)&xocczK(s| z&NilCQcS%4Yf{9YHHyg5D1we_j;Dy9oP!>sW~NRJ%uJ?}#59Z>Mi>{NrzpM=f9Dn@ zQ3J|R?xg`q)@k7r(8AvtEvP6V|6HmT=wl)4UUl=!Pa>6Co z6*_`|p-1enJ1K77N1tCvygu?OM+=;1#|O^)u)sOuk8$zx;TRrGjn?%&ERKrWw?f3e zHBxtXuy5JZ_V#VO5q6$MJw|{}?tbYm3JMCZX#n|LRqy-R9DNBa{z zDH5Xmy7un5>hm2TwV-2t=xXLu_!{=^xj0sPYj+OXGaoV=N+l-p#PZjO{64$A%fzy7 zZ}RSo+PlZ8G2m2w>n=OrSz9klTCo2TEA zFFuN=Q@amK>W7c3#TlD#rqq&rar*Hq@NW9QWcen2 zf;`oDwqENgn|No#aq;S1{y=|sW7~U>f(DacymKF(?M7Dm6u(Iu(ABt3MzNFE;@*cV zb;YO1vjIPx1%Qzei=V`DHyYDwEAdzZhBIufI)gn!;L8~Uw$gIY}>q*A8Fd=}0f3FR^hEF&v?;#|u3XUD{Chb6T zkQ{&?cGph|@!LU2(&Rrp9fIUlJeiB+%RFgC@(( zv_UsnwGcJS#W?vRDfLA<`C~-r1zbc+3!YrXp7gtzE;zw2@Q3+0cE#hfit@Hq)afgG z<6odpa~Fe6dAgdK0C`qyU=aJIN1i4XF@O~$zmuBhJ*-G*-H0ntdf-l8juWRUR0W=D zrM(FWPk-#6ezi?y1*y5ocy!z75n!cn{1Q+X%?8SIm=IyX5I|81ozY3eTi3@qL?ea%*=ceIJ zynd_eGZLL|FT=#qTj=DOA6(qcpdE%2vuD0;A5i@ODq`=@eYAb(^q*Q4 zOfeirV5A0aLRD7PO|V(jS!scJUv@#_1G*1Pr*sv2N04Zz@38jWal2JH0er@g%r8wf zFor<8*#|bZ5^8qA^J01qnlLcL#jCgR%BmzX9gxb?{y2ObyIHlvPa+@S{E<~z1Ek1m z3d})+@t`-b*^W{%>IZrNY+&9d<+p9?<{On~JmZ{cQ!^k6-!xoQO50Wocbs221g)430O?Kr#xM#!B zi!q6JjnzD*Ml2?@#6sq3RMVGLvm@N|Ey{rE+q!iFE>zH1-XoP0`@;8D)l~-KwJWXR zo(eJ&Lf-}Nr%hRl%o+h;446FR%_s0Sdr9c7iamXxvaP>9|&ky;BKtPq*qtapgeX0(#NyU z)m8DkcMGms$$ds}CAk|DT$Pk}<8~T~N_y(Ngz}Zy)Mp;td|qP5o(;f0tN% z8@&*k#bsSdj!C#Hb+-&~eh7=2J#!rk4#q?DNF2Sg`M|`p8DyycF+PkIb=Dxse<01$ zZPs9^D4YbrIQ?>~YMn%9d-Xv3!nFX&B|+x#HVq?S-{1UI7`cteJ@be3J~Q$@7hn3E zBEDn{gmr7UF;3QKtR@P}BaFY!f`AJU7^+pEpgD`1SEk~N^`x1XAf%6cGI&+;iy|I?t`x! z=)J)}w1A&~N7NCaPsRmI#N;S{n*|BZ` z0P~V=(@I*Rzj`090@rsZa9HQq6%3+xXf^{h9GFGwC2I(ApVpV5THXBtwAuf-V zSa|Mdd9I7XqoR3% zinu%vvpnh1JY`hZlDIt6Se{nWb9r4glxJ>So>?r<&S;)7zd@c!v3ZILfdDKU+oG2j zMXGQhD=r%oEz~+%6r|NSmLR_@YG}~V(+vd1zHF~y%l+8P0C9;HXn-oFgqHUDHJ7V`U?Vbnt z^FOxFf0REbh~mm=;m;Sgf6lBH?}*>Fe@^FPqTc7)Kc~2=wP?*r;OP5dDpT17(Hh9W z0heWhc1-z*8=u4Z+Ut0Yf2Q;bq=^r#rN(N>*fy7@a@k=BQQsMz5`amZQO+w->O5BRX0!oZV;tfiSKw={$a8A?+BN;^3 zATfdxKS07o2|9lK&y+|*qJ|P(k!V8#T0?6WoPOyq6N=ZlaE96k#B2kf1mi?OENf>9 zZU=b)YXllknxt%!lzMReKph+?#UL+QhM|vom6V1%CkhGo*Tm3;w~nP~uE_3Eg-{ zJde`Qhnln?{`L&3xrpd0SdDbnW?LT4oC`;Dk-4nSCXGTY{sXdQHDzrM-)6;Z0oRjy zNvb|lVsQqmc6M5Hyu@OnDhTclV`iJse#}A#*_er*Rj8?xabqM^tyC-6YRLQSUZuctI*Wz>U;D#xezhU~8%2_m_5N+&Wb-za_ zWDtw##89i(wFI>I%Bp1Cglm8*qKC1394>>t3&@XQJm}LZ$_%Y(0*tQV@++dZAHyEr zRGgyeT)Sk|%~^z%;peG*y%)F(M|VEKOxICT^uYGfvjzK7X~X44(ennSyd#p(Wuakc z=xe)qL)lA}zr2cG_QlJmV_!bbUrxbG#^)w+_i%8xzheh4Bs|B z^iMQm62VD4`$b9+&;A7^h-ar3G5nJWHnsc8#)zdSdj6aG#a*F+zs9aS0kYP~*7-|9 z`Y6dd?`Gsm-a@e0#dHB`zC50h>q4+t?8-_kHV5NIEVidAFVvuAEOs$iYzW7M4ZRy0 zVGIF$v^$mn;Hw0bywg4gHp;!d^56&DC7T^FlqG80#ysLIJd>IbDMC}_c2Sm?bD1{@S z*-LcS5b_uWzYL#&kCB;e;Zj0mZwWKfTggbrp|9Sa_Xy)E55 zf$p#$WzQk=$fr1k+vwotiXVOF+s~@%!`=-wqekSMKo{m)EJB^|L8(bCJ9ShIxVkZC z69Z~Z;ENV?Q@p*d(=+q`;b8DVkTo{tE0pqVZRck*h{y_xsd1VgPc|T;eco!0u6aeJLI{l zL!QMQ^8Bzvo_9LrxxPc5@(y{j+U0St_z-yvPJn#W`kwg)urd6s%CoFzsdYBhLkzQU zRyNCZ%=-QfC<9Cdxfb$Wf@f%?fVLW}($&&*B8$xe{#4wDw;yvm|9Ru!`vb5U+6$D-`k`j3WS)t^vW=mxD6yaUC~?XG2jNoxpo({2bV z4c=8t@KLz58c!teEqW`|@dM!z%23v6A5c@!NaILl;R-?$3|!N{W3oA-YV;Kk?~G1##;bcX1%~gvQ__{oS6w z6M2HUf3i&%gf$UCcnxAd(AO;LUx_4$x%GLF_P#w_fexIB>=Ld6R+nQi+!#X_Xi)bPp5(rEyp*IW?)2Hf{YQ}Qsto? zY!_pMEy{|4NLG0U;s0s&;2-2om73|i*0A%TD$fvHzhZA*r}e80+IMR(*xsb*V81b) z4R*X9J`4ds)cHJnH+1AoHrV&lh3Vm~C#dS~)1x&w|0^*43mTGKpmUS6cZ`vO-gn|O z;aO?n@zbUt4jXT;{Fs%2a^*mDw4B!{Cp=BF;L~cO50#za(k18xOjaNXMqZZNl)DDN z$;b?FH7U4RM<MhkR9rnz}^kL4^@Fu=F)|A-iOCo=M80G(eMOZDY{j)CNTI=XYwtk zYf{wQ0ZJE|F@ZWhnL+KC5_}kC>hW#rUlvPcn4R=-E$=M1&+jM7d$+TbwN!WvuJ@M65!p&-VH4U>Y@uiqzmhU_l~hHxSoMVU2xRZ zm0>9630)K79nev}!(Uo-$Oo`(%2pc%TY(%&himlaZ3`Sf3b#%J@#K2OY*#ii$pz=qB8eb2z z?NVe5K7@LhlvTDvhAKNW5xNVq5bH}c2?{GYSrdZeH6i$SR230|!xiiV=u6he&+0x6 z`F9LClxJVn#2->joTAV;=~t(0)5I^yJk1;@l8F&+;8EeyLTVdKXGma1AZM}MujkC^ zkC?GwSF_hkg*O>oV?rjW>S^ZjLLpM+)4F@{A)>H+1n+JVDE5x5WYk+RlR+X`c@56&6Ngdgsv={b)V*(tyKF1z1@wX+jj;w@yth*P5vY4?gL_$ z&mB&lIaw-SOtdAw)-q!}J`h}1{7-P+*zU8d_0QZ@U%A6wW?T;PDTfz;eL20C(p+?) zu^Y7Q{-KMSD_JTXN_J5NH8w^IXjf`qe=yy>TXeT3&rD-*h_6-8=t6M2ZgM|mH8?-8 zsw0!dWz&+pquT&I4m~cPZgaO8olm&i1lOzBdm%)qLS8&qz{C9Lha!2$K_d7|LFQOVXvs*4H>3$6a(0Ku=U$Ffd;YgeIG zTw3YHEM{MVxO7x1m3WPoStvBbXBLH8!S6MCNeSnfjn=%Dz)Kt1BrCD_OW0I)9EmEq zTa53KONzzTL<=UyOes;vr9x5`;&pd?AfX~O5sYVl1Y?fQUdlf9F$~6@$Q0msEWll(ZcFL8b_s878Y!Q z#fFO1iA$Wnm6c<%`LO8q;9Cob*O7M^l@a*2c(VuD#ia-BiI1UtxI`lK2scr95jFlw z`OV>Snd>^5N0s>45{J3XwKuDY3YV223>&lzrzOkf0O*aKVD_Y*-RhQ4Mhx6vxhESGpB^BFfS6n{(@ONqOa>Z9F zsTKm60M%Nv<1;Ys0lca4?eyVIcg~L1p4Q=52s*-sOazu7OaO z4DesHwuZYHW(;;HpNF0(#s6S{byYF`GnERU6tzO87-rC+A`G-S~zRzfsm;NJO`cW!9Ia2xrln&p*C#m2_J&aB&-$~`C>E%0rq}dmk zZ-)w~_ykt`k#_tYNDjo@B%3x#=3Q7lC5!fE);qm$bggX2mlan+IZ-=pfoA~+ERhXz ziAyLaeZwZKwZY3KEjoSC=;gG*=>cz^Fj5XEx2LtNVE5Dv+vX0dn& zv{g%@>!Z*;q;E@=#(^mC(Sdr26^=YiWNp$5wdH+=>26w~2Lg|11>*HKoA9YD9F|Q- zR7Sw)kW~$-kPn5ZfHmebH0B6v%MK3)!1XfZvOyDhMO!Lad!4Jwbjv zVvV$_Q%Zo-g*Kr|O?(3@!mR3?-ftwkx(1f4?_vlg2U?$nGx*A8Yt^XUREopY48;NF zRbT+#LuUaGKqP3~AWT!9RBjl+xbj1cdE7QWrHEu$VTuvvzz2w+N7mPHf4}<>LR+^E zvZ#X8?HzN&WcnqH)XW+yx zpoMbGs*W0DS0A24xKE&n#jEj2(9PPTS9m)r+#?qD2fpF!z?-`wmF)({iB#5%kEk*f zsg{!HfJ}rN>mM&5RV6RM1N0FDpd!D4VAm47wJIBFW_E*K8@?=BLZcD>14+&#G(~>&^M2T{(;} z35cy4pGxvk4V4)}nk!6DL0l z(xN!(h7VU z!eU!Sh}!D}INt zfke7cB`GZy^Cst~sAD*8fhwc;<`!_SZiTOBSMYW!CvLo0c@=0hmDeM`^j2@isAy5U zJ1go_RurZVGxpKM&GCAwg;%8vr_6=DXTBy07dWz@Hnx;+lRfMnLGhJ?l^ds z^QJ8yMaMm$2YoIM&n%P#7E)ssCf10{o`;JE8tuj4RpsytLfBM5cN0C-QuUT(X}Eo0 zGUtCqryyM+6%K-*L+aa=0xarUehJ+qip6)QQ6fR~^g;0wFhWxAOjWS(OIBy5SyGOU z2+yaFXaCS(z*g8udR|1bsI?KLIeQkJV%P3cQ5z*h&y#qmj!p%Ch4M3^kSg}PFqFo2 zYSPa#Qb6je19_>R3|LO3hLxmcdszfVXT`F>hHRyYiM<__M3*{Ce%e z4QSa%mx8-iQ^!B^*JL!(+x?4SG>pa~t56+ot$CgEZ@`Cc*uMk^S_wAqs04&>Zv;mwMPc-X zmDF)Z$#4csK^Z}Ija)MCN)%IS^22}e)R&@RerD(;PJcFKjc1+f^1sjP>9`DdQ zk%cTWVYRw~nq=B)ZWZmVh$%cb8MoflpOL2pvJOp6^pa6TI)h!vEZv-vdHY}z>Ttc zHz8rQMZFF9yu*@tirtCJY#A11ou$NUrON9L;=7D=?UmF=R_f(U_}73e%VzgeT60TQ zkkMhQgMH^dzDsF zQR@!j0kuM^+h@Tpv2{nFKzWD0c|tTubqAzwcc;rK2P`RAi{&UQnJl!G%oW1^P+Ca_ z)~xujZ;0r50)jF43eLEa)SrRRjZIZHrQqzrk!dMaMJP9Ha9vq+3bq3H-9k`UQ7ccE zAU%R73y@@JZ$b7b+B=GY31q|?IzxNPi<4r&s(|NL;skr(q-Pi&I>7p^s&@#Ifu`>n*}IO{>^l!^POzJo>*j3d?Tzrtu)JW9>^rvw_3 z)sd-^vP;4#lj2AcKqnL<iB_aI&yb^%4^Ua@W=!P#F)a18KI_?M3{bUONAR6R=Cne> zGMNK^N8?Cu>P=ARP3z4yqP+&v5$+O*9H9v!hp-2G#6#+=*rH1vC^>oOkvW%<%mGt! zLFTlP%xN?oh0Iw?@}?>{2eo&Uj>LXDmyqK)wBtLMkc@vbh^d6UqfAixfbY2kc9#g) zF`)zE4#UkHAGkfOF7;rBNtoCSWEk<{Cc&f&)~ z0Gg1e5;XX+ntx9M!9Th#rrTeOcKge)MmX@x^EBOZpL2lL?Hu@04*YYWwE(^tFhFev z{41qp@Maaf(bP4;nH0F_-URr$j>6qbwnU6Q2yF^hy;$5=gboIcirrkyZoc9-m{Mrq zvW;=kWZ-F(i+WRWYvl-NQC=su8M+L_G=M#Z>f@#SVlizJkG?VS{?+(tZ#)D)9R>1F zLo$}1eh5P4`U1BWG=557MENOwG@LTSU5&BQ>&_dFG7(YD(G9zVy zy#qsGRjyXwr541o(|hp%L!}@uW1%C#x2$*us7Z*zQQ+-&@DNE*#wy3-6`&nOY;+RR z$TE)DC~?aYdO~4op>k~pE8YyyMNBbKecx?oN2aaq(ih?`=h*JlvYQjD{?W| zB4mJZHmY1q&OD9}Xf!pzA}%*Rq3p6`V!{Q}ZippwOlyfuIW6POah#eoYL(>Dl&FF)FsXwx)1xqX{!vi?y#HC@z zV_6k-ta!@RhcVY(jJeu5?}V0O6ri%OIuBB&9+C;Yy|ha52cT|LYiw0xu@3{hx{%^0 z4m*fiUl+iaQeC5zvW@p_w}N6Rr3I~8j1xzU({SRB`CaNW(Q|~@?Nea4co|i6Nkv}| z9~_#2RJgfL+zutY9~`Uc zaR%VTa?`1Kh(~NR)z9x0@;RVihw-(`7hHyEQdyhv#^TMmk!`QL!(zrUllFS}3Ff^d z`S-%<1O3fabBj0QCdd(+H-n-JlKWJ$xL_}s4Y4@MI~`Ll2fk$!KC)rKro+5%uKgjGavG`^9 zeqr2+#Rh0BLo#GY>G86x=K4Ca7#%_A|T650fhUYB>`|5Ev>H#`Md%#A6>n0we4sGXI5T&PLda z*eE_pWsAap2!%v-EkSe>jL#ypK#i@IOrW@>P3-t_plvG{V7%s z3ZPpF;U7mG@6aE7&deb=)paXr49Rgq5M;r;LeBq{@qUouFWEH1 z2+^3#KCRhBcpbpU)ON`C-ju1GSyTe7HKtKHL3*3aMfMt9WIIZAlZcr|Fo}+lz$Rt_ zfvwAHsoVT?OG?!!1?{wjfl#kg&xoF8j&>xpiF%+Ys)=k2BWRb>0qqD&M9&sNyRS|% zVHqz$1Nurz}?wz=|D|HU+BHiRi5Um?0g5b@#(m5#3pMV}Np$(gHh0ROyV`sC$kh!C1 zFI_FdiP})no=n*D!VbhuF9p3MNa1yWAYuA^**m)p6PhocJ_wSVR2!0t_8ysYWR4|svs8OfD%wLgRBI-f z+YXDcnd+^C2!aT7`%z`9FcW74pd^&XdgVThGFs3JN@zDp*^D9>^uX|<-IS7rTB$b3 z8)6aG=PQ>62h%6s+eqQP6eZ)-uH`s(ax0`I`yg`%fa0H?W)QMYkkJdW(hJZe5EMAe z4QQm`u-kQ|qoMzf!_NH~w_H#uW0dq;@X3U6bmZOSTM(_efU3tR6K;Wp=TESh*Snqz zK7z_+gt(P6l6zl^Y}!4}oAL8oz1exP0uS65(1SiVW^LB+mo%Q7OQ7O3=ZgGl}iZlK!@xSd`j z(EnP}i_Rd`Mk>@vN*v1Nhz?JFlgEd1$wAN_|v{qN;Z`Qqb#Y}M%_4%GeCrKz}1s{vb{ z+HcxFJ7qOHLlIWPd0vZI{vifxR#$harQ4xSnCMNIZ1}Vrtr2jMhoGBBp&2!0pM^ zkiXNghngh*91o{|lFXeH^j*UV{PyOHr%obw8+`_$HmwQSPM$&{jKt5O2u!c1Z;*%b zhrVQzu2)1nKLTCTVctXH8677UlP(?n5dYMBQ$q+!#u#%O#Nsk6tRv4@HkxFCO9!3- z%yO9qy^w_sb~=<#1MUx*gUq4qMQ6-~OM;9PDAR94SVcW#bF_eU*!4d5kWECeOg7LjwXaJpF!5n>Lu;9on+4}%&mW({BP!};23PGx* zxLOmZfK+$Qm;pLf*2|`2An+Lf7L?`e+v#Mi+cB+-c94-%PJ&#oXld*UB$6;iRZeLG zsj>&AlOWDL@C7Ep3meI`9|VnD`}4;r*|*zp5;chQjo@CLNcWRl5s=IT>@)0%6Kg04 z8S$^37zN#PD*Ye$ON>Mtv}pVuX#(v)$%VcsPCbNY_&u@@_q*`}9iD>j3mOFNR>lxv zJnbH(*H!cyYBP~${A)a%zBP$x75|7<+fXLeNA*sHgL3+oG$hD7`3VvsBtm#P%mDHq zhLs@VqlWgj>2$CLAf4^vnwpzXo0_5Ve>vPnUFiXi9?b+EdvkC$>noQi1B8^Z^srL zFz=c=u~7gX ztwgT>+CAEK-%_b|EghFDZK5b!l42)ADIH3Lp^`Q;3g zGf%Q=4^iF$d}7ckZDNo%83OLbsIxCfZs^^7HUuUC;ag1qkyAExdvy?il2YJOL!fT7 zl9Ou-`z&VGMWW|(@GUer4Ouh~;GDz)EdOv+kgt-E!E*xq4NZ%Nn+b_T&xgeJPB%iz z-;%0ECN;hd3tg!OKTZ1mWNxFshAT-~2i$}<1lk-m;c86i#)pwO8~hni2ztQ%SS~bU z_j2a*-sr^ikmbXzc}-SCb3_Pvim72w&YwXOLPWI2;Z6M?I(7#OxTX)r#;jJv$t>PG z!%%YR4$5LwEic`$Y$Ok`;<4+EW$ls@n$871#Mg4A3m38%&4pHOcrrzKMZ9SIbn zFImlg8QZ?-(Ij=??_~AS-x+}rkgvStGl&|Y8Y)_*+27g7;(XZ{^Ht_yspxZ_`75dR zi%90fvf}(5IrtD`YH%$KzJ*aG7~Fdi=S%(Ft={y-P#GkW^M~Qq+MmSM4#mYYNit8! zG16snPWp+Fi0=(QN|(XIF`EBsd~YP;d#t$m8N;zt$N*ZEg!mr1t1CbaKE|*x216)R z{D+-{A|P@&>|i>j*`Znp^$JXcApCbugua*Ez$VokM`{LhB4b+nWXz)nY8b~$N~@gZ zhu=2QIU%>OEqVGi7Vj-Uj`VRfybKu}aO2vP%{E~(dTFdpSZ4>myXkyFiMAbY1){LC ze&7(?#&(V(AM|EdQP2p`=$Kitm{tiyA|db-Bb_EI8+7MqX07H+g=c~JW_Ob>814$V zL6d2X9>ElRg$nVGA{Q*76Zul%*(T)UZdgJ-?n`B1&An6xTsLqi6RN_MdK#|O&(Mdm z;sZr6`(YGZsdqu&%f9I|L-$m|J=iN9Y^Zd1sQYPO`iZ>3N+vX|_PC@<3 z31A%h4#;o!rrzi9rca`9Ge*bFmJmcCcYQkS>wMJVqy;S zHawrv6X;gT(XDPqGJW(eKEg>|>{v>;oUz{S7}yy;dmCBH&_hIk*&ovXxgVyTpe`w= z|Mv3l)<;VnQI1;Y&n-_we}H+SKS;>g%sZWUrJ-chcg!WU2LCV~Q=mrZt zNJWhlZjgnelCVuym_0`Aj>a2UoWV@9KVZ4xcaf~DiBL&(B+jrMaRycxQAstZBq3;I z^E=|_&U--tBxEWlav`&kUAZIp1^(=+m-+SD>tE&GnRe_YcgJ_lUTy(abYw5X@bo(bx;hI0t*- z{)rC!<(x&Gg}hY5`QM1YloEfTi2i^0%h~t~LIgU0p(OYV!UgB!FT*->e03Fj|~_y{w-V7>b^XVKK|D}NW`-hF;?rwk1-XB}EH^v=nF`dT3 zSy(9+;WU3?NjU+cEoE+=I@ceed@YYEU!vyEEkMN@*8;Q^t6KhVx? zIRDldC(fRixD$sj`y+dXwAEvE5o}=Es)h|a@R+cnrgLp|JA&}K!V1le>#1C3kY)&9 z-#G5*+a|gfWAJ13)DngxtrF(yLn$`xAX_Nf-x2-{4Qv-3RsjnT3MIMsEEuG{Sp0RO zXfNGLrd_Z<&%m@yl7wiU(^w>eWh42(f=M{(lTH=>d%OxRdVWM$aGYVm2{JZ-0rvr4 zCz1D$ABY;&_n_9?$K3OGWBC8ya{nQ8J@{^n10vTAqUU;sHZc7vM9%_3oBjCLDcZEy zW6hj|%sAA08qz9@807i%u&E4Y#Il*N zcIC0f;&T&_&91QBLoDhzYz~8cI%$uA@yT}e9?WmW!hb|Tu`qE^(kL9EVC7rC*p-K> z?aGRW(Jm|`e$%c@EDxFV_4}C2udnUr3)a}I#jtOXi`vR7SjE7s?wW5mW@VbAl8 z^JZg_T)`5%sR}b3^Gipo#{ZTwYcT0gDr&*F8Jztv)6Z@`;QAa^C8DUIS#k1M!X5(V zj|wJ5%5>yaj8e1Rne}ytrR4$!6J@x@MB=M<^BU(3qg1EcNIBp_5Z%C4d=&_;#WhC$<@5bb^zBHz z|AVb+;7*cJ*Lc)LB`U|B>`S$5;aT;4K5CghrEG*7o%-Md`X`C@oydv>kaSbx!fy&( z;%gJwVIJk$zARX3bnr*v)k-}AVaicVqgI+tRYEH~)MWPKi0437WIsFFnq>vb#eYnS zs=@{^ZLW~jT<;u!m=gGL6=`SK*~(}1{+d89I>kU1(xDk zqeD4j%d5cbe>XNX!K(GPpXum zIhPdh?N{K3E5|^UVTTE8UW3(}{W9Ch<&;BduDg zL&jV?iK;e*rfK|u){2`q#nDrhPEX;DxkOQ4p$lfhmr{tUf#~V_2t9>2GK!)cPkv4m zg*}d{;?5_h+FC+MbOANBVl69Xg)fx1f^0xHL{3CCCSZ100Kwp&Mlh!s!Jzv=Ftnc$ z+*gM}_h3JxL!l>Q#=Bf7#Fk#PkAnZ;b->{ocVmlENjn!+VdtV&tSs>m*x0Ox);#4h z%zc;t2maCqMn?&MYn+)%HG7YJbx3|-EsD`wA{fHq5d@S{J@a#-aYp-yH!~UY0c9i- z0|KWG#J|Y{VJ^)bXtd>35faB>@ckG9>tgJqgdNVXISgSj#b1GWgdj2P(TWD*p=?6D zScJ2A3m`@sfHY;m<;67T00_>InO8s?7@>TQ(5|u18nKlLLV`2d4iop_L&Ow&Y548%X3vv^7K;M12oz)@B-jPFC}JM? zW@Q3aPku&wcs>DZHf%wGopbVTq8)AXuw+siJ~r8PH}=60iywjVzyP}l6-Y&M2d1*EEH0;HGE0h- zOyeqywY#g~Ly=azJha0gmio(hjnCgmUCyKlUvubX}QdbI?UG+C!*|nEw zm5!xKi%=xZmbpvV97>Pn&$Ru@X;2Tk{8H*K^!LhWfA2=W@%~;u4-%mgaWk#I`I6Og zzGU^zEBTVu_`@q%Bl+$W)nP}4^CPfe(bM3pP_|jjA<_FZV8TH5$9@^&vV1n2*u2O2 z8L_49o^|DTZ4hq(mueAjSwj+gz3SLv@?&!|`+7`C8*0tNK6hA@=FPdov<-s8n>|`t zk4a8}KmQinOo~&7j>lPGxL%u_%ew!nQe3g{8BH7wamAr{_9>u0mfNyzk1DZjTP>=* zMWS8es;~;L3V1rN%$kR_AUJ^3n|`MWJN`ET>SaJ~+AC~EGH^CXOOt_}lDqK?&1a|h zhVeQ4pO-ooZK=WZlFgWa!dAv%74ZY>kp38xTWCt*Hk!PGbKp){3FIqt(=>5v)!hNzo{O zC<*5I74WiO!R-G!X8+ge_WyR+|Hu@C{l8tyBV(zL{~%`jtVhT=eI%q498j*m1z!is zwZq}DUgHYtK@E>bEO;8Dhe_l~cX@cCd)ZAGM?C4dTub!(aTf%IGh@fA9ny)#w=;K2s09t`?tu~fNz!~AL4~0h@msWzBj(dl#C!<7e;#}k&xwy54_9&E zw{m=R03VMb91nclMDxVT?AY=Fnlo0bEQrC!O$b#bb9|(=DmJWb%d1A*$zfU#AHYj? z^ZFS*5j(FYr=s0l$#d?ezT}vTpegVGb1Qelfk#U~qy8JC1P2y>u_SwHjp7+QBn$=dT#Ow|;yL1OLMgk~I1-Ush_)G*vm=x%gG4|igBzH<9_!PYTWNFv&Ki> z(-QrL2z>21bcu+V1#&#l!ja={lII$Jlym%em6!qHNKvWAoemkaQuDM@yN}fpNxN}s z5P{MP2!J>L6^A#=BX|>Ko30l)-ZWydC)G<#Mby|Dz&W- zgc;Eak}!$nIF3yftG%^KTiepsThrFk_<{*w5|C;@%0sFIR5-(^AZQ2=Gym_}`^?EC zKp+2K@Be@A{rvc7=IqDXkG1z+d+oK?Uh4!;c*wG&m#avqwUW7LklV{uG{`0LUs|pn zGiRBw0`^EoTx-mA(#J=J&_}J$u!%{|qe8X6fyzcE`%6m0B2DIZUcQ>;r-JPNM)Z(N zjvUlTRzeTo(e%()vdO6ZG1D}5Dn0A9eW$XZU%E_DoD0Was(wec%+ohtsS|aTQPcRj zoQ4#~~_)qPK1MD492=d?A0%z3!|GEF2CB6CQ z_P>99xR2WZUKB=4*(WxZ_N!QF^XnpyF#g;-Y@i9;r>Q+RyY*Q9bdic{fQKs0e_5^=+%KuW$keb+EzzgCU(qouC3ITR3f_T)-MN@`r2tV_ zZiMZcIfOs=4du@*XL!S$$Mr@lwo<# z&yTo~%PZkyF&xJVwNL?^_{8^SG2~Qx{A6C)1C(Xm&R7ZJ6MqDArjctf7r7sU zG~XB58wQgfMfDS{)@Z)3#s3s`bd~cP6C&LuaT#v-wxNCYIpIe3DTf!|e!nsz$AEa>%^KlGAz2o|i z_ZzvN7}t03bHKPh!7X}jr`NbX%H!?aCO%fn2PP1%UoRhT^RZPv{>H}#^6?=bAIrxl ze00difqGhd_gHx;mu%wJmKnx+?h%ajP5jx1+~MwWX{wy=*1sw7a^Bj<`A#GccdKXY z0@5N$0=KW3q*b74>tXP*o_9BKWELW?*qZstm)QV#Gk&0tq>tMpL5~raw>h7JiLC=) zvttg@uK8od1`sCeInGUml=(|uN8;ZWR>tI>3Z4{O!J3uHBc|n&2~!(9MZ1}8$@hSh z!Z|NsLkBNhUhLF(&wNWQls)b+#%j)d1M4heK5(Zud<%v=)~coSk@sw0o?3P>)*~wP zVgVmxgXOCvt7zJnKZmtVQM3O5#Rz;Cl$o1ZjY|fc>dAf|+ezjY5vV{;s<(GC%O*y0 z!cE(AIV7f`WRbmkl9}^cWs`8XQF{~JqWKNjsY_X-J^MswVu;XDElB#ub?6~t-2c0N z|L^+!|8D)>bbgQZd$R<4tltamnE&zX_lRDg3(Pe%uzB!V4g8D<|A~?(;HyC2y7* zPquJ9_5%qbEMy197U*O)<2A;UE6O51)S*6QyKVN=U_|&?wZY<$>4$uHO>XMfyYs6MBw!UNZ4X_gu4#NpCjfWrqf+5<>qd``8hs&WJ7J04Rz`& z`P?dhc1rlpHu*bG?Y=?I7%6)#8*7h!ww|EcW>>K7CU@DUPuNv=s$KPif8)lwNA~2M zsqzwb*}F%cNU!dmS4Hc$cJaCX3%=I#^z`oXdb+*!&E7jJVltwUd9L5Y$NIm{F!s^M zIO^QSKEV*r%qc(_V(G}|Gk$=`_&(V)M-I|^=Eh)cnaNwH7?z6V8bf%?;EAzcfP5Ks zJ62{$u(4>PD35A>8-De1PuRy!i8=H)g|@yecG1;#$@aG$tCi*sp7>++jUAJ{afv)K zJNtHa%;(+0uC4+A)>Pi0mA{DPD>2P08z_t`Myav#_$eBQs5`owKFs%K|HYgAg$OfE zoDN;^LtgxsY&5jxIyUv5yW%nSKl?mz0aLBqeBF@eR;L3m9~cA*}`)0%OT+x zPpLz~8e!{*QzwJPk|;+5iCrSGayF3jfL{&=65A-T!sti&@a3x)i4MmrM+D)6MW@qu zs#`5g-sef^G%-)s`ui;RdA`$?C1l^Qx8Ii&f*ccA(hLZP!%f(_1UK_g-z_3dDLM|Fo{wQh)juJON4W% zcvYW1B<^%MaYPk)w5g-pMk>0m^3Rb+T@fDg3_f1BaOH*C2fD1;Z-C$|_nGg2#Kj81 z@|tsL-XL%Ie(=7HXz(s)wI%ZYvc!G%4Y_6$Hr&+I2Iri%b}06c$&a2DZ!0%7?dem! z3yu$rlsD3HcoAx>;yKcpHYgmn>GK(X!M%ssqH`3czBL69;=@C zpE4d}pK*t8$U0LD(KFrSdb%IdXlJ^M3EZV)S(a+P4`Eou9RDG)XbbY8E})$ufFEBg zW778a``V~|qZ-7fJ^9B&efG9g%m?78kHS17=-~UhDQ?lI5?`F6JsBCdv(-qm{xf}F z!WSC%F5hXvldY>y%VOise2bvcycBT|SznQ?>m_S=+#lt;gM49LtwsYG2{CeSRu+_* z59E5x+4;V3=3)Ui@grmoeS*(MhBwWekP*(jn^45(G6&A!gWKmkoWlk#Lz^LRN0MI0 zyWGp*9@47Dqy-Tmj4D%QZA+Z|_96qlhm63Pyi5inIK*=6#+^Y9YZQ&sfbo-?(_M*y z83Gp`mnn&Lv=$MWoJhnM@5<%p0covYo1LcRJJyq1veR_rYZ7_f`8v5QJZfc&fumvE zP{mdCnOD&}UrFXjnrGB((oHJQ5=XDr-b{tP={mH7P+8=h6@&0&U~HfRvu(!@@U_&fB0I`cWfJaZZ-2x5Lck0+4^n$ z*}&)3`g1X#m*`J%P?)bjtI#VhC<{-@#S>D#Cwx7)J>+622B;A^Cz~HE&?uaSKFVT~ zeW{-~K>bM-g1}{>#Hmr8xHn6od&RB9gjN-dlcc#{MFUSX=*)z5|BXtmDKH5at_)*A zd3d4>Wxf}+BB_!ZKJ@7tu9q6*z}>|dO2OALj^DNmM)kSwRY6*0+|s_1?>$EHX<@A+ zO%!Di?&*Or6G|~Ve(>@+B)-QaZ8WcVO8d+@7dA) z?dUNGmdO2WJ9__3I`;)Sdfy7>D~0^cjy_FCyY1Ys6J5NT(ib&(B4f)*Op8f@?&a!p z2!E|lf6t_0_MJgftM047pO6&z#%)zK&;`*pjR9iq__!*&pN~LElwUhaw z@U#|{T)-Fl&%-4xlDQ&Nu%rOcbRJD)ORa!0`RSQB;;i+loUcjIzQ~{C?Va`T>MZeD zo*%B2V5l?UUM>X4V|Y7b*E6(b;d91MKLK~WIfWqpZt7T8OuAC}wXT}opOmqM)+e+2 z%L*GxPG30J7kTX#3R_k{Mr#X6x_@f0(xuGEe@Z&{*QywlPQm;SKJ1@nJwI8a{oQ00 zI&F@m)!S*m?3s1~O|k-Z8vfr>%ls^ZwCO4>Fh8ZP8C*YDr8@p@=~{Q6=;Xr!HIrtm zuAQX2cE$CoYqUpqtB*u8;V zvx8@T+b(2`w-aCH)vKhfxbnW`ZuI!N`2|IPLm%DFLwERv7Vlyb(^|aG>7OO~r%wOi z5K_{fm!BCe-i;Dy&~dBeM>dU0p-5*ua)h^`Ei!HD76?rkij{j`Bv|vZkO|2#_hBNG ze&aWYVpZJNM~Lt|ox_UY-4_ya36u02B=AH4nwTFvl8A|6Sz^l;Fe@XYu3mzHEtPmU zK;pS15)=a7VV(Ne5wLF5WTZxptk;oym|srLVRqy@L_#j+DtvFVHvd59jjHHiRNB4D zj(eUsJRXKRbAtEKv1cT0^Y?ZBdY%6vmEVq=D{-n>f3Rb|qjPPPT+i5X(}=^j;4^0M z5wtz-d^>5s%Xxcj3W`All$Gj^n@i(Dl|KAbEvaIbF5 z{VG%7c7?`Lqt*}wRWfcjk0h{g9*XWmPrj)6-V=$`RCo?4%&Ge>#&*^7;ou{+9S_d% z)_xqg_5LjM?GJ1=z0X^-nFmaa(i-LmE;;k2tBEvKw^ugc_0|ZADKmFjOSn~$cyvPt zdTSt4Qu~yUB(}5T-=0E$m~jUa10=V{+|5*s%)&GJ?-;6$p{{;&hBn6NsPXf?vri)9 z=Q<;~z9qTpLh~BZjGEt&!}h1li_P%V=Qt>Eo~|{2v+?@I&HVl10PWa6i?I2ZgHkWg2? zQB%z#3Uw72%9BWoR|o=jdKdFo5exR}7Vi@NrZu=s?~6)N!}eI-nPV&z0{GGixq_o6 zBXp%|?=H(~qoc?hgiO@jL<^V+$nW|gu)_hO^yHz1dcaRL{#?E>bg;l!aFSmBf9j&4 zF^Dyd9wv=`mv3p$TxrO2@)nEs45K}DVKeWvx}>7n~D$u+>^r3nf%_@@%8_el$R5gywC`3SR2x1>106=)U~4zxt>NOw3=ohlVTcdV66W*NaVC^}Kz z7~G|6gRwubSvMWe2vbos=c19HG0ODQtP`B3FSrJ{D%^S-HTxNOSr=6-#Mn*(x~Zf6 zyt<>Q-=nD)gr}~;nHqhZeWn|vX0ZhGiRgw%xvFgecR5n>ezX{kUU;H&tfM}cMpr~v>KI` z(!-40f6zghlCeTM1L;f;-po8-ES34-8Klu8q`*k{sBu^nwJ z_=SvhBv>b@eeBfT#Kj)rPpEUGu^_~Uv!`vd*VLNS$TfE4pHd_LWJfNRa#U4cNlpHt zom@?1tbjip{%aVQqxrAVSXblzw5;-5xxUJqbIQVZBmNC;l5^&ENXYM9((!dr0&(;z zw;*^5{~Om4vQ-_}%&J=K!%d}VcCZ@F+m^)7L28=9FH?||r|1zDxui59=~eSKr3I$w zmjS`QTK7_wB+Vcxq-cWhb>)>_HN#{ z{k1MDzGDWfMIIYa;n{YPLb!1Ry@_L=kb7}uEjvt&a2>KG)nt-^g{!MQ88RZ(vRL%{ z5bDD)JXK=dNJxw>euK3NN+B(NQ2+6PsYj`2{9JEIk%h2N*N>&?=-Aho=qc0_y zulq{gnH{a`BZ+Zd*Pv{e&S)?caU7w@3*230Y9u?XQ|!j}qp@hiA~2K@-eo1=IiwSN zzy(HP1x-LMVTf1pDxndBlhVwXoOJDuZ?xV}FhX!}`wJWtuq)bTfk9rKfhu0Sxp+Yf ztUBNLBc4Kia)J*t~=3e=lPC= z-}$|ZovNq*aa4EXN*~KtISCKz*UNUzru?AK7oNnT$l<+SQ#xuj={^&c4SReMmIc3L zU;NG5NAA-&EvC%><}{8QJiabzo%I=VC|!PJ)FVIQe7tuiT!z`Qj8RFei0#~b_0SHR)$@=Bs}~aw+3r8NV&}=@_sF;zL3PS`vTlG#_wsKC>m=@FfBtnE z{C@y5kWI1t&~_u#bc82db54e9f$ZeqP#lRIj6d8G%9W*D?w& z9V~oWTYR>pm@BmXYG3Gnw)oT8-?M=b(MF+Z^$-kxN0sfWH-&1*{woImJewI_ zLOvpSF&SLu97A81RCNqBRkEBLi^F;~&T(R%wfE}VoS29mGliHIZ>#i>$^ib%-d(;z zg54@#K3rxXGn_5{*l43Sd}Cn_?+lg=2TJw&Ubn)LyHUznE`QY19~D_OFPav-^`(Nl zzJ0w!CYB3U$;ppEp)>xn?DWg-;7_~+%i>w6gpCG`?#~7w4gVzG-&l$-sc|O}WDae( zP0yj{Gvo}nnwMY2m|rhm%?0}-T%#}YaM5Vadz#yAv-~-*nIUFQVO6tWh?UU=ZsBXd z@Jh561-%(|f3KuG!r@?*^#eQVvSd_^^`IS9sH4>BM~3j`@8Otks%sM?K?YnrO#7LJW2nN4olZnNh=K zF)H>vT*}xH^DB@WW=fT}a$b1!M}!o&$Neg=YFS56{V1duCBi_RVh%5~cfCubs+2^R z;4Ifp9NZ&uq(Z=F_7-u7HlzYV?6z5(?8J9fBBmu1ILvLOS#7=&E+K1!!bOws+3yKK zQ_W(!&+Jbehp7^Yr8jlYDDYsL@BE+~_Tekrtg-fl7HJJSX>h5M1XOww>UL86m7eY+ zl&V1GJm zZWT+7oQ_%Q9Ioh=xHXc-bXXhhjZ*B&CA`rfI;h?@{}@kU{+!>F!}{g@cE_cge-<$H zM0%!-34OUtk|jwjR;rp)Fz^+7>Q#}}0|Txk)C^LD__SLhH~2Uv(i#d52NzjiJfvyH zgk;oH)^0m$L^A4WYm*%{G#RznT4hJcD_>RCbJp+eC>$5r-G0`N`Ot}p*fDQAF%Q@= zO-{_W?U)ywnCtBrb={{B>a}CSPM%9tOkkd1tiw7-hwj#)Q*`K79m>|BDLQmmP3nMG zhd$O*y!KC=QsTwVC>ak;lhgQd27dH?3=bn7c&nVZkOOhABa-7?R@$rJ8~F^gX`A)O zdmv!O(!bP1-LHW&k>AI>H6I&`qOcLuQ$#jB_kWQOPnqn)zpY$~j(YM3T0HbQTPmf( zNhk>uMPz-wB9`DG5k;r|6ZneQ)n5~B{-nIPA~v~Kcx12edA-6NH}r)6s8@JLukhwx z;m%&+PkMxn>jpkij^&E$GH*)oGpz|mC&?d4`$^B7qSEim7=o|a zo;Q1>Q}KsgIoK@4m4oe%gD5AMKUDrbl=N6@HTjh#LEs zGrw0xS09h2$oEMOrVk{U)VX}vsZ}!0f*%DJHU0w_#s5i09n}0_MeME~^;N`X_6lFu zD|}_IaBqA*-79@aulaIfuW)Ct@F%^(JE!-=-`{$LSM|#OaYE^C7frTc~AuaWs@T&3H^oPT|*OJbEV{o&IbO;NIzG zXQ+K!D7rkiy_|NbSWfA#UO)#x1_iyz^4cZx=D$;(v?ej1+uS5lQt3tHnr9=E z+Cv9VGbS)-N8<~8L?#s+Kb`i{o=_tDIORi+NmNf&e8vQb@Lpf`W?z$45HR>g0(xM- z&-LEyf#_TkQh`~QbH>Y>HQI;jdQlq^?^zf6xLf>WtiFmbfROvpdcqE+Fh+K1gZWma z#ZMGbo}4$K@+&2hLW|z^xwiPsk!Qp|NSP0Em34v)iZ49BvmzE5*Eek?$aelo5;*BG ze|m=-Trw6l3P$o5tFcK5cT~g*Pwb2N5ItUvuy5-2(WB{6@A5={e#+#~^2Ji(gV(T= zxfLfZx30>&b4vTsQSeoUB&Q!2&Zqmrp(T7@86MloDf*VgWFN=&tzwx24~iYe6VZ5| z2A9H%R-HNO{L9{}PP~gwKgh{nH^F%HP0B=SMmh3O2FXvOFBx_`3U*w{4 zS1wHJlVkL-KgL~SIrl*4DVf8lkMBT(1{RLDZq}kNOBu8CNs(YJ!C0lR$#$Hb?TZVD zzlwPJk*qRPm0xClH^0FZA1me=hPxAMlk%^l8(m)~oe8Z<%-SK1fpytqO{Ik#5kjl- zQ#h04csuVQoH3n_))rbY*g*d?HxL`R1B@}alHVVGNRZ?UkKHUtDl>QTUdv;~5|gK+ znu+vC(FIJCb@~!3{gn?bmdqt9=eD@3cDdp_Yv;_}sR#H*cZDA0-t_I?)1F)Yz3sVf zN^-)FQd1BEJIpt3bQC_A(A|^fc6Tf7L- zDvYHJ0Oz?Th5>eSGgS%!bk=*X`pe8u@KA=G7`M4OF?nV$6!dJ=s=qfRsqN#`-tbM) z>#B$iopz*W{X$QUZvXToiatiRxI@~UEU&x0mc7WZDw3$LVwxP)*w-BlzWy)IpKkgz zGTD~Y`I{s_vdHy%Nwhe%wand;LV}LoZz@tKu=F2&4X;dda}ruynTPb}WIiuahp9;g zxX>1zQ=fUw2r?lQ!5@^$U)nrrwrfVqqg{q3Cs#nB}URp5USNXsl)-1^s4y#P2i+q8~Z-<1)i@@SX2OhZH?yUC* zpijAs!^={Y$t}0jgG*4P-~k-`YSXNXAktEbh_S9;z0YTy*SgQRp~-S}Boc%!h}yMK zo=ocwrRsQ73V+Lf8eV8OHgJ|4bi$*pw^j3Ak!Y($zFSl!1VyV&_Ce=7V?*=a%&M66 zc|tJb%pZksyYz5c#YzdQ^HliHby8I2JM_nAzGMCN>i%hL&bnx+MgL3A*C~_DxBX^^ z2v7aLR>ITEM2B&3d3erncj&>fX%9~1r!?)s@krxGDyrR~j%H@c+=xNNMLas`79}3t zzFkCH-BTyF=c`9(eRqT{?{(G-T6y`H6*4z)vdS4oKWv?-wXe!Nm)2KN~HDKJ4W7Rfa*LISWzC+qC4S(3D z8onQ4H4V?nK|EQ&3Y>tYGLcQihg!Gm9Ig{ojw??TRRlCgxjV=CTI~nMqe{`l{ID!? zTQq)=v9!}yDYqN<%7s9)KYe1p@xr_)4xYHgMU!H!`A%YLn>fSpC;k$600mp_tnDeZ z!y3CHgVF=-?l8taqJcm3lGOi9t@?4(r`<4he(t!*BZ@}^P9Jx})Eh1i042JEUFOF<@IOMGld`0e)DB9K5Wc5YIduKY9n&dsv zu72`oQm*=2p#F|vI7{VmO>kRLTf8p@GJv6)#A>Pw9ZWYCJZjf>9C%eqsroxv{k=u~ zohg48RspL%gbP(4i<2J>eE1{F<$$FUqRE7|23h&hx=hG3$?ti5?a6yQ5;Bwqx9(RlHuG0e)h`Xzfwwi{Z@wsK<SkyZ)js zyT2(ha{Vp#zGN$?oyLbBT&z0g!opD{DaT6F|m{Pg`pk&0zdK3;mj} zNHaWjb5C*caTy<%Q6v=~39gNOz|65L=2}%KT95v#`sELHI5j3>$wvGJ$Rs9IBV;I5 z{qhHEtr`;q#xlxt$M)&flDVh!ahfA-q6XEb#@J*^hQ62c^Idwnm;c2Y3l37v|4r0{aP-#_ZGcQg0~2w z-Dw2-lOt9y^P;{qtrPMQmHds8(Nh#%XC+$k(niMFnPiOLNQO7uq3woS102eiS=)aj)DCz|6#9xBA7N4q!ydA#)SbYRW@~T@RF_84Xvzi!Y#`6lRL1Y`!0Td4^^e*`JcYODklIIT z3acnXB5Dd1GS$~&C$51nf25``xtY`yMxC@a=d0cM+RGRB;qK7u>?lGg+@W3Lm3{jK zeVJYEb$h&#ZxMN<-|TF^8I6}J`9NY-H|onGS7()=pE%YKd!F<2FnYTZ zJ9ArtpO%-b6~v=Aqn1>s;IhYh!f!^N&#$qzKPLJdvSD@OEhPFev2Uo>y?;6EAu}0A zZo`a)xc}qcS%xVv%7lguQ}x>wIO}!B6=vQws{A*D`^#KxUu)br7Asj9{43)E*;qj_ zq3y%aFB*@zHMM5x%zRvp;m7$fzGqZ}k5S%gRo=1Eb$^bN?)3Ng=~t=t+Ub!ikN8}B z{qi5H?~quOviCR9&~~rm(eW0OyU@L|zFF2$S=LcxGOfXr+#OL@a2l`7bLxnobi%yRU~h`%%6Xze&FTtZxyw`-OcyhvsY@l$7!FGADM|B z@;Zjl;Qf1R?6_ncpPt2Y)Df~+3oQO;&+!~Y_3Eez2Hwte>Jxwn^_pRmP8VG~;8 zLzR9R8`~EcTxN@HV`6e+j2jy{P_ebQxy`j@X58J;+$S*5AF1dgcG_`La2q1C9qUj` z-6lJA>#ZFLcgHGM;15`vpW!j*PUwpNs-p@0r7DW?RhE-mZM7$X9j`gJ9D}4^s2%oG zy~ED>dLqi!%3B2pvMYvNfG^}z@JVqc>>(xmj#Ymy!wske{)yjpvdu2*b%s#r>z*GN z^)+flUqsHTLSYmVr%f^8s8ep@X?b z&Juy~y32-8ofQ5+yYuPBpPBb8f>JkLfj;L1=}xRx)MtNi zlTe>o)uHVMqt_2xqP0>lHWVk}Jg5}PW6%F%mj`LZ-D?Z`otgIx<#&hK-u^>JNPWdy z3IDh|jBmyxWv=FO*NSr2N}htIyUi`Zr(*}8v37mZNDyNz5P#+PM#TbWplDWNV`a6nmPQii0R6(3_>pAqWn6D%Mq ztJnCFV>VV@o7I8NydL)?lX3*=BfC5?L)+JU4;Iy^IhQreG?Eg!=`ow2+7nCFZd_U* z`(r74ag@CnQ=A>acirYzZ_)n58`Kgy%uXyqHHUwf?8kstrIf0_Y9}teMSZJ%xT;DD z0IsS&`LQ_pAuGfmX-ICtRncTZTk@kl`LUM|E}Yy1`<>=x?(6K*IY4 zCV0%1q4)a9W(`(5bA1_|L?= zL^9JUWWvH4_t5ohj}Kj8UiVOj{K=9(Ir1l0{^ZG@eEBm3d}et{nu2Yyt!&ZQ{_W#2 zH_9QW)5q3un%Zb?!sSBzd%eb2DoGtL;SVwv%3sey__JtM8Kq*)1ZN0UAS8|UEQHbX zlr#rFv*+UMS7Jz|(H;|eCp*EDvMD^tezO913hUUfWX{Td1BtposjKIWR#rYDBNg*@ zRQ=yq^?#rGo2Y*^F9kG}IW9`2DI;cbQsj$(-oPJ(NHMuNu<@eM{bpZx*qdvnbD@NYu~&Oi@n_RdU-d^a`H`^t!kM=Z zO}-+u;%k*CvpZAloN-4I*6%LuueLYo#Hvpe#=Ja|H(M%Ve;V>df&%sS z*ZaPd5@#Zgllzl*#~$PUg!IXF`fJBYA7Q8ezz3VH->EBG9{@(G@C#&>|*lT1Eg5b~t8$ToL^q(9j zJ=ad3cbxRSh`*%&By+lE0FwN^U4ENRznt`Aj!%P5KjV1m^*X%^&&0=spQ+Q|Bi+_6 zP^(3+mw%+6(0jf}4XN$#t*`Kp!pyh!NqWAc+jlg+d)Ie#*ls*OqKH3IA<^7x9^_SI zCqAYQrfo)bS}1~f(D1CO=3`KrF=0*U;QTrL>#~qgRIDtHt~A&19;YAA?M`Xh-M4B@ zv@W-5`}nHWRdqfD_fa%?`G?tBX1BYRyOTE zv1-j;ohir3)B~hX5=5RYWC#)!Jwx+mPJUz(`bno63lGw%P)mV%xw^;h!uLrY`#|6-V`*#X;5=MfFKrd`nh@hzUpWCH?HQDXsiHydDh^(uHhfDgZIdnD zna?w>C>dLA)W{{NGV#A6__5g(g3Hx~TzKVi3c;@lOz>BgGlkUkF{5PcAfraC5U`{7 z^_R2-Kjy@bNHcJW8TB=_)3Sk^DKvat77feDsygHft>@+oRdaPd1->=#peQhxtO@RO zdX4zW2HtuM;5FU$zDmZn@it$-irgPx9`>|ln0;;3apLw2>NCUGg9z1+ZoS4K7?-)rKK}Z`m=+$y%hMY1L!|mqv)(W# z67a#I&$>b!TD6ah0v@~++g>g??BK($O3JI1*HWP!!VXO5(<6XgR&-#1q(=u-%ITovt}x{T;qhp4t}#&?ZGKW z*Bl&=$kB~xg+t+Xnscy9AkPc64{K`Ak*4hIE1Wsf@TMInX0PyMugKn~9`RQ5@{a}F zU(o`EO`i)@dBbdDP!;}VJS$=!UDQ)wG56wRScdov$t3Qa7_X|a{n7#hpddatV4h;` zRg|RX{NO@0aEd*@eG#`SH23=%@Iy_(eUe$GQ+NK}<%h;D{D!f`=X+O)Cc*9?^&2L<>4Z*}uz?|@DR^rQ8DQU@gMu%;cAT?dN zfC4Vq8n=nY=uK$uGxR<3byx6nf61oV-{=jm z+Ukpxk{-{aW=aSyE8Z#+4K&s^%`WCo;DW0oBbW1n$bWzvoDF3q?PbOl?YNBjg>L)- z>tZ@Hp(W#&D(pIpR-mx!syDKmr?jWX`js9HRTCuze={>eW79#=-r#<0m)OQM4p@)p z^@W`lQx<^}I3%FBB6?&mT?hx9RH!;$eLfE1Am(&LmGz;y20K)fhickckb zp;k%jJ>fJtvV4qYlL>_+oOihws(P6SX)Z1YIxZYuaLx|76boPUCe^>e|e^bbs)D)+a($d$~$dYSLga~aKSCjDyZ{{cx4 z&HbVD|EsG1>jUr8mgDvx50?L8|A)pOJ7)il8o8|p2T)o*G#*xi``O=*FF0y`*!UPC z9S#qsuY)2)DR- zAb|)bd}+y+z~#Qmm5G&DA+Hs7%X>EB$rD}D+F}aCy+)2=2jiKV{DudE$}Vw#g~NB{pP#O?_0|v-^~~&yx~j2D;g7;%$9grPyBFKD_9&G(dfat zqYf={6ah2;$F-i0#?%gtT1^VD*2BH6p4=_K-ovC(=- z+?60T=qxL0_ce9)@fV>O8+=OZ1Vc434AdC*zDNW0(0pvvimUHq49)m~J%=V$_rx0U zC5A@b*M|+(#57T9zfhjrL~<5}4&@rPQ4goSw;M1&5FFlyyhQTW;n zlFn2~fq9`r_XY10JC?u4B3q_GthZ)$;I8;RA|n!3MQv&9x1qW0EqZ_8eJ0Yuze%A7 zDO7k)jJlypw051YPnZu1HfkSMNm*_L4Ux=0km?n!uDQg<9^en6Bx(z0y2s=Op`uM$ z#p~lkZ21;~s@3or#Ae_|EdxwSli^`N}jF{)ke6 z{B?X46_!Ya#Zhw&wFdgfbNJ>fm_co4r6Nt?Do3}yb^{|4`>t9s-DrJTEHrgjo;~OK zvPyX0)b-&v*OwbFaM2P)&3Q$cYrQAzmOf>8Ba>*0bcG&zRH)X;+*p!$f@eOI#_Y#dDM)i+JWs8H9W#O<2|A^`OX@Lqcne#SdqiVBtIY6|LHF`G6X`9)v%3S+d#GA{C_ABdv%D7HGxhVGo%_vZ= zql2v5R}otzYs=Y>llUppdd@LekfZ3QIN3%RV>Qi-DYZ(&tqrT3>T*u<)VTykPIsGvAF78Q@5u3G_JH^u zs5GgQOr^STaO%hQ>cxPgG?H;~X=fj2TZ}o%_9a*(LIQ_8-@DjuNKDR7_266X(g?6IVx)u?9 z-9&kw*cZgI_G5}8<+AIaf?x6v;45NfjCuEbsfgXtBW&~QxXBYw40^p@P7dK+FF~WA ztYq(;BAeb}cQt^OW7biZ2)&1rja&m+3I4>J-`vju($O%1&&lZ<_j z^^)Yb(0qRz-XPdlb~42qQ2%27uY(bTH3-(jckxPvWs7;ZsY|#Wxsjzz>U-8qDq|zH z*{W}RB5aK>y<#ysk9EGHmFkTR+{R*9B-pgT*d*`Nlf??g=F^KL|G`ZqOREQaB`hBM z#5^1+-?jt`F1+FJW8(P@YwsRizh+5Omq5$vK3Y0k9**06j^TWjTfl#v>$vOQ02Mn(BWm5LVvM&7Jhj4`m#G!VO#9N zwz!-1Y4+x`lEkJ;RlCB+?S3RD-G}o&aT6`X<^mx;n4-d#fA@NoH7fMNTPI7^rZ;Z| zEuk&C59-9~&=>NL>}xD7ao3IQTUu94Fwoa!EWMuvKesRRFxKz`wq(>C$P6ejI}y%{o1W7QJJWk9T^mxzo-_;^-B% z9*@PbjMf~BLl6GDu0JJfw)qW(FL^v!YOd4h`sFIU@J_F15gc>93BH`Q_Ksv?t%0x9 zIkkJp|4w{4`(JN*b@$5u0(x~Cg{JO*p!#2@S2v%Y9E$%X^y<;mk{$YALa%zPzjK@Z z9qaEqrzUaqzl&Z~#BxsVdA{h#>lt2@-!oj_EBw7);d^_9eZ9hcdW6;a#kPk%n#08K zLjzL|6G(G|4ICiEXjX@<{@2Yz zV{Wt01|Jx;w;ua!aOFYi-ErixV@?9msq!W{|DjyeCL83x%gT9cXA-}izGGQA&!w^v zszR}HKDFI?e=rk2Jg{EDNy~c}HeYz6njGEdnTpsS0O&riI_>{IHP3GRgNEm)HoSH{ zvccaYSVQ)PVpw^*HCT6J^?~F7^yo%(5N%fS0@}@KqG8nhj7A{vZbQ)MUM7!K%MI^= zt0Nc4Z8Zsdtj(R7O7;;@_jg;-l{gRSB`-|h<{ZEcMwz+YdKe0WMe$n^c3CI#O*;@C zj~l7${BWjt!#HGp@)6Y{pcpSwl<=KY`Ej7q9U5Dh78t4Z6Xm|w9h&=yT!1wNKaCG_ zza|35`0dWG`Febc9k{9(S?8OGW4O=U%YA0D#X>1=X80$xcvKX!WvOBiMkywQ=02Z+ z$LKp=V1;ItrD{XD@1KcSzDP(QyYRX_hZS^X%LK%?ljnS>yq zyFN=Ua3+3jo2tdT*mh&^lutb)vKM&0uLX@9tRH@pKh_xsGI6CrAuBEOHll8|0>Tm-2TVvwjY3K$yZvpYJZ& zHfw|!NR`AcYYJ8I%8Jnqz9KmNxl?s~kc1y69LM*Ax30`Apid{+eH!C+d{qc8Qw1ws z1AEPXBx0kHPl=F~8{}~2Tl>55lG^PrbKq^L!o(%eYiUf&3o0wv;1av7XQ8Ju0r+Qr|Q6}-JZ!=X{v^0a>Zb^OHiuN zb}82pggW@DccN1LmM`?CvgmmDba5X8)!`vKYYykT*7R8@>sBwf82-hXX(t-BousJ^ zepwX-TTgwa=#Noz8}TwhBbk}>%a1FONapG4Yf>(sQT>_E=cv;qebP)m-+{>Tc^{w4 z3*=M1S0*&*EEQ5_7b2OD>rg$-C++03RoYWJbXlPaE!LqeDm1BpLWfKFIyi#Qi_VpN z%0R|v`g1z5FBPfSTlhTTJoR}ypO;*s%3Pw${2U`xw5&mg`dy|%GPLB(9<4%A9r}8S z3W*(xa`RVJSrZA0Pm%pW^FrN?kha0ErO*!bV4XP;=JDifKR5HoO73zcBQ{{u) z5_v;1^$z*)o6kxLlkPV~hBVD08{@T1Y~ETE@BRYPCV_hgTP4YWXl7sF1f~tPh7pjN z_UCCb!!iohcC(miP9!2pYrJ321(c8}`_3h77`Oj|-KpPIlHXG}8q>70z6z`l2Pr!Y zUnP|-Y=ZolD^Lh6&&3c3OE@xax&Xd;r3Nh3P%mhxAsXsZ2kI0DYJ@;NWkdNi)cqQ2 z=X0vA6C9}RMzXH{0`(0WYO;o!prINxlqEl^g}-&6B+k0PhMKOS25PA9X{crgD(FDH zEKnUFN)U33hT25?>9R*dJ>@`+cc6YCP*EG|b`AAY4RwNsy4!)ucA#bm)WbH^Obzv2 z4Ym2_3LC0Q)vvctNMhqF0(G4Yb)SYBrJ;VNq4J%&e&RqG0(FLhswu2ua%sRLG={Ey zTLbQvA64Bq9l#HXvp)0*LTU=t;#D(br3M_K0izD!`3~S~0{FZQsMfgxd{_e>_?hb9 zQx4$1fyoZm3*c-UP>}=$c&!FprUAd}0KVh^-YS4!u>lu5eazQ@wHk1&16bt%juSwa z4X8+js&N~A0XbzFFy8^3lQiH*@}sbNf&=&=an|>3Kt*^I z;GG)qou4Y?L><7t<|L8xCjp#h14f-bj?{oZ)qwR5;L{GE#92daKp|&(0vx7E^zn8L z_+1CE(gCaxzz-(sKDIf4D>UFm8gR4&c%B28{}lj#YXfd}08I_pu~_wSe@PNKpAJa& z@gQYdvuwb22XL|md`$yxkct&n8y&#Sj{;a?0}2JzeLO`2)@Z;#l1T&3cK{!k8q;jR zy$;}e^abQxr2+49YMkf*)?s zfLoqb$m#FYxS@X%Iei3hstqVCobKZ#8gQ`&d{-(~$oa7YxS2R>hz*$Q03M=A^zmC7 z@Q)7QHyps{1@L{3?qj|K*rWl!tN|A~fJF}A0|NLP8?e9utkZy>Kco6M%>mq-o$TXe z0ldcs9PR*KqXA#lfag1ae|7-R7QoRqpt4}BusT=+hBRQ8v{)hMK?kstI4dzh_i?mS zx(ztp0X#^P=;I6xc)A04s{=Sl0C!xW zk#ma!7}bCmYQT@As|u^b9l#HXvwm#@-tGV{)PSEot@;>s0QdAu_VFbFoM{8jbO5i` zfUju4MGoLn2k~iZqRylxwqc0%GuK_Q206h-i zWdiuR4Or&@{#*m*YQPg6zyS{62?F?t4Os60en$gt`msVzOpvRvy1s7`IUf>dO|b!= zasZ1p;4>O9>Hz-80sON7o@N6sb^tqR5`DZ)13u;e-r@j0EP&ffHFB0XfXg-D1sd=+ z2k=V{;H?6<#0G58fJP0M;HbELj6`CIQM*G0cvB!|Gp#$MNG!}fw^e+IwV+U-4_Kcu zZE>Bh&sV!tz&>8RLje9(G&>DLPGRG2n#NeJ*+uHj{4>;Thuv^{-3jY%I^<6l}R?0mq2MqC(lMB&J}wHzfwZeHRFm-{nsHRa&w9 z3OiNt8j*2piz#;4-83HYP-fNW5rO-c_Zg;(w70Q<8zDvX4jAzQwTcHc@4LX}e+ zIJ=BM)t>p3XQ^>|>2Zo{yj-;gI|t)llW-PcVQ!;(eg+EUc-Bb3h1|hc-Q3FO@*Px@ ztipO|(;;SOO<|{o;L!Lp3PMo#xcn%2>8K!|%lpzGX5qc>f0povURC+i0yntBHHA_r z3Zip)Pn%eF!?fayty^!^hdlocQ>R(i5$J~aQa41Oxu*%l)dF#m4RQ6fi;JzZ?0^`3 zvrZN^E{S{Aj@wJz^0ZSlLURcSVzVUjo&h@W6wO@j zNev7_79rUr#T}koh)r7^*l*-!{$|erPT;M^a9l5Mb|Pm>|x`Z|MWXaGh zpP$NSVl4)9#QHb(h1{Vp_*zl024_lbk!vs{mq|k6jnLu#rN(2;r3G)67GN*zO?RkE zAR?0!p+n>Vpri#!Q$bs4!QNgnR;}NcBLA9>vpw}fY`JvH8@_uux@h&*FGQx&vM?#_ za5pbhq6|!4=Jp8=a97R$a+*=Y3Snp-%&AV4Ga(=JR41l0OCOwDosjvh)2kCQy#vI_ zJT+P8fkXM~u7f#m?lu>Vpc=Dp&Ev!Sf>Db2aT5 z=Gv5KS+~c-`z4G)40F4pypP8kmdALZ#p{atD?73FQhiWR1t$2txHxz=FJzix!(8hU zP3vOjio}Yh-NRgM3CwI6FEqKLzNfHeu5e`C(hhpe3B%bHjGCKeS%Vnl-%*}d1}{M1 z)aDJ}mFEr5$oGeD9udzHeP>_z>$&pkYmlep{NO%MNo7Xxqj)LTD5cBu1?6kEDU=7! z2hSdJxW~LD1H7Q=nx*P=C!Q4Igukj0)ST-#DYp-MKX)C7zN0>K`gFN=iHy4B`vb6O zfaP?n|4#ffrL%GMZJvYv?J_Gz)e-W@^}}v!6*2UI_Tj)?M_akubsVlLN7bvi+m?{s>J(`F z%P~OwG?)|epc@4)R6-Hjx^0Uk}T&&~lAgPWHN=#ahm|`r# zKA0RO%-wUu!P z!!wKTq$Pq4iC`los3SmVRROsO$*#k&za5cXexOHwaCP}|DKyf$fkn=^U+oUxlv90J zRvl(BpNHfeR%EX>B6EZZ(mcV#&N}KDfb~qQdSCET{**6r50jTw!%cl1{L}>eBM$Ao z^jA9bT{UIY15Pm|$znoHlg$Z}rI_+6ncdg9;)b5PCXavg)a5=XJVN#9pTn^rhbuye zMP!I8v2q=@nadaJ2oIk6xSnyZL-D*DnZa~GB_tGtg`-Xtjg0TaB89y(T&w`#q;Jnz53up2wKh7L=?QbnjowP zG2pq_gsKwZiDY0+5VFi8R~xS{_h&OwNWES5uG=M;f>w7puaJhv!y2i>-_`w$gpO=m z9XkiJzbJpOL50@!!Te&>ZC;bFZm}Ud9$rcRhVJv}We0E4(>zK+#U0j&Zz}5#f+lv5 z`JrfLeBSauu)x%P6ZID`vzLDkW0o4>4}V|c!xKiZ4d%$Zs^3#;Pbdm5(SEx1lk(l+%iZC7^C&<6C8%kdwedOe+dip4 z&LiisP7h@XK_B?EX|L0#S*LJ5sXOV<&r~b=jDB+V>y`Gc1BZEbu@9!;kiFF&(p#;% zcSE(XWBERMZ8j&?IYZQwkR)agKZ=ql)D?Hwc#Hkq;U^t_k-~g7LkZcBdcwC4FAFb~ z%_KZAN7gm(2+i`R@UG4sWpJ?vv&w4V?c9-G$5Fpe;eqRtBI0 zcW86aw-s+ycA||%JhzNrPp)%#OPFS^3|>_hxp0(Wa5X*d>4$~R4K2Wbqk3N0tuMs! zk3%JoSzh{;(7ti^$$N)DjM)WKievCQHw0a4i?><<&XO`*sZ3+|Qk(D`HD_=`{G$Vh zZKT==l1VLYr8B(Z#?Q+aeAUEUFT9n5bXM(CQ`}z_5>wBdV;Bq2tY~moJ?P;9z&xyF z&cnFg2wLinOcEmI#yDD{d0m$od{xy3qrk5IgiKiNBMwH$=i=47kh$vna})(%#5tZq z!+~a>Cp-`1da&hFOJ&iEE9neVaYQTD9Wp-^KIzkS2esot9#S-YBCDB8Y+20`o5P&Z zu{p#xxg~FEpD$cwZH+t5++Zi0T&p*S3zAAH5q`^`MZB zpE8LUj@HNowONcz7c?szr{WjRbS3XYXgmw}zW|$hW(XEj38jNfNW=PtY72i^e!{^e zFK^MLA?4|4tZt~Ro^3MdYJR8=)(%686JI9hztr_QyiD1DUdg)T+_Z@$%FAi5@K(HG zEr9P6Gg#gYWnp!7>}9^Nq<<$%+PZcK)udb@yTd_Pm;-WrElph^iwYH;RTSqvIrU1= z9X)q0P2BZLQqy<|4#ur{D3&P0lV+@)!5;rfy%POzT2+tqkt4xGX^uR@k zF^Ma%5SZ$zB2cV$V|Vo-b%Oqqe85Qr&fr7s+9$KuYL24RSOnRPXYj6RA4lUd3)miF22tzQ<+@^?#xy?R8?UNNJyfiWT2<61!0Xk=#k`(lV zO@Ph&1_f}i{1*xcPX3p&Q=ekL`|*Q#Vf^2%&yS?EXTy66uoCS(!^*ygdhg1!=0D4d zv~~{`_V&RqV+_XK{7@QE=(ubRe8U(1u^Q#@gz4d#S<6c!WJ~GHYWGHQM;r4@aOnc4k_VRDK^43K#;&`MvEKv~yk zb{RQ`RIt+ymK~xvl8-pyEW$ZmPA~@xCVhD1AABi3QA}`m(dxbCTkH1tns#L{3W#qn z*r-@iNB{N;3P`8LR~QJ0vHzLN^E>Qsmb_`yo-Wreh@z7ACzZLI9_tBuHe76%h>GK9 zWtA}uc7IIoxKAl76g(SOBZNoV1c&=zxp_xn?mp33oSr#{M!1cWFyiz@pSj=k!f`1> zCL+(;Ck=Yvm_Bd{d5og+2IEGsIk?IC`NIh?HORZcx*;rjs9r=mxrDBY5E@<{HS!Q& zHyJl%e(m@8|D5h^m|&cgu@etmrQxaUe?f}p7EhkhD(fYbug@+DbB5@^x;zwhR_Jz|ovv@p+We&{t`_@un@V~p?TW?Z!2xM2ki z9h5FX&qd6n8=54H{but+Ad^Chc}$k7qZIy)j)N93sNd6crN zyz&E8Ujcb0W~ummRbzn^Gg0Rp;!mu=GIT+C$vUIvVmgdt4x`4+d=r-(L$Es?{F3TO zxNuSI5~5SiPpW@^F1#)#(-V8I=7!iHzF3knBsQ+zRJhstN zR3m4A>T+owFQr*t`8;k8OrX1gbLpy4Bd&y`yKF_YE1dIEObq|`crP#QU7Ay(ycEu; zcbf-ef+%NU=65q*N&A95?^Jv(RY?|#^*`iytd2odqGH)xCE_<%bCpuBY^h2rS2kBE z)yn27rC6yA9y#=)_xi_kAyx-I!|Fg;_yx6J$c3j|hoM7&h*#d=SJe5!A-V7Jo3#a0 zN!x=HMU>?WH>MHI?PEP_W|1{)O+VbR*N4j&xyRH>6NB0AF_8=S;OeuvR;z)UD#dN8 zcw*I#goe0LvjI)=^2lo*@|Q>cBrApUYXfb-Y|)*qv1je2dR<{I^D_6w!UFm66z17O zpIatt_=Yva-f&&v5O>vUf&h+YMch`%;$9-O0kSh_D(iSq#bQpeGld8(k!fBl_hAwe z>F}W1TkOyV75b(fTC76iQJsbhmeb0^-z+RutshM5-Qkgi__qmlX3yD){3T43;~&h= zrQL{f4nVnn&hn*L6EkY|Q9=n4xZV89L6=K{9cqJg#>-c7KelsTg^PrcmAEf3YQ6NP zJbezOTqA`92BJD%QXJT*-^(BuS)#n1{fZ)C%4LfWPs#U%uM)|?Vl2>cq(d&CRLWmK zftlE<@-cssDaL_su~BnXrnJR793H>w0Z*FTUm!xDQUL_1>KZ4IyL?3r`4Ue=Wda~P z49}j7Y(NVJ0)?YPT~LJ6Xf{?5@vp?kD=zNPVmW+?Atbw*wKuR9x?7|?#ucx&2GcM< z99|aY9G(izTaszitfU3Xeb=(SNC00Jy3PFr4Ok)#z(2-vGNkoRtRgO!Ly!EC8w+#o zyL_ILzi0jN1(DnsHDh?)z^=xaql=&?V{)p-hLHx(jQGVpy4DSb0*1RzeUPP;FuDjg z7UtN+a+~>{b)#LZxV+KD_H&ABBaR7_`!7!5;0U+zp7Pk;gNxFG!eXP4Y^o7l3n?&aS0kV_9$v{`!MP9wENZH_7j)bcLKckL zpQ^YY>$sl?aWHBlDsCZv)xEirjOc|~`z@Lt%VsLPa#6ML0vnd~8P3TB_hBrr#1q2p zOJur=v?H8lm$SSnb=i5N;hD%Cdn~)aSn&;TyIOAXQE=t2@X!MtjK{Vg)*3mj!G_qy zv@*3(>!qauTJ|qAN>+UwE_>Y9bOpt#0*N(hj?jy$2fS&4dwNlg9?ci3aa8kj6~*`| z1?Vnh{)x%b*Zl3oTG4iX?qg4M$IPXr(C_TSqf3@LB@h3 zdd+f3m_6=7#(1QPcTmozdXjS@OC@;)QgDy_zQ|RnWKS{xTP68IEAvyTk`zrXXHt!# zl&LidQPTS#A8MvcjGEr^q2{z~mKdi)rj1ZA*ceO4)-q#%(*T8lQQHIoYV2ztfNH9o zceci{^cTOM**gtPqy_Sp2dY#P7ZZZ0s8~|3|9@yZ^Z2NX`~Pns3qb=LJ zh3G034lyBo)w(^8Lp&2-jkXubvbQ82k}O*(;gG;GK^pESl(4q}I{_pkLV(R8&N7|# zLUUJC1Wt?<5os+8AYY9(@@{B1ZsU0-6yhH?)J=raK%GS`VUWhIgfh}33MC$fujXDG zN{4cwlq3n~?*;I-3ro3vxv5W{7K@>PTP#Uk~&8@PP zxY;&-U7$vun%F6|hStSVu74YMOaq| zz+Y8=5-s4?nM_oNS%|sB@l}tv4$}&&FU5hVfh7{c2C3x@LA=NouWmahFVS7rZzY|{ zA)U?FjiaP$(D(e7%DlY@a|Phd2J-3yYxj>sw!}R@b9#Qziij)=cmnccr`WgCq& zkDbGCDOk6-!KJBdt`M$9LEY3?Lth%5pp7m-*a1Fh$2&tmmFK1ij zbbG&5dVj6{Z1vr(W3ms%7kj7|!$TX>5IMfU>K}CVg~LKKQef^Gq%)5g1l?`4rDU@?6fAMa^^B ziBdfD95;E+r98S!oB^nWzADHj2RqWAB2!4MBQ5^b@yJ@9(GFSY_!M?N6N~Aq@x{AT z(MEQt`-{7gJLxaSSirrcV{s&>zOOgXA`{&P(P1+D`HJ}Oc^Jo)wo2WjLB=%N9k2GK zkLxD-uP87H^>U6S^A)k{deMftXCCIBZ-3{LV~ucj(-Ji7eAU~uJ;r`Wmi?$QLC4+4 z80lOXtJ8jT#uOVz=NIxy#{3v+L*YhkX{FWN>l^l2ZEsM7v<CGm8Ic$yw zXCczSHX7>qnGS&p>jB+kS_*?H6gjHZ$(c)I<%udiD*=(*=Z zP57IfuGua&t-#}}UQ1mCRl_iGQh~@c#<}X}@C!tz!6&MI39E0`WVL)0F4+E8Rx~tT z_!%u}58Xtv42cf?u8~|D%0xe;WnH^|Ps()6GSe~Nq1`Y+J*7lJKpIf#N;j!fz-*EV z4Xrx5_eT07uOC6;0UtW;7Se#wN;$TyFj%re^qE%V>|Y@Il)3aNv-D}ln$^-E2;*_97xBYP)~Aij$@=r}??E&njcl;rxes z5Ah^sdRXrvH$3S?ialGz8(Vlg4dT{AF?P;`a!m#Zdg7LTsru@u*D3hY}kOKGbR3 z5v1h*ks|RA zHHByA5q~*|Z#+IsFjLUR&bC-?5iR5%g|Y>$z?NE5A2rxZ`#;+Yx7BsM?DIqE3vlzR zKPBPRJq!7w)L~dqGE1yXoPV*qUzsdh<6$khNFOl-3z1n#w7z3*p(kEAJy!V^lBpb| zf9KpTR?$j@@R<rJW?y2X#z0b z@D zJzrUUxYNH@3uZ-o_4Ap{rBnGPi(v_Ik9aWIha z4pLoeGXq;W<9S0I{49%3qaNQnFEK!8OdJrVcy;qd*;sZ*lWZ!svZ zfO0A(^U)01%rnj2Wd*~EV*F~Y^}Q4So>{~DYTl!g4_w4Ae}M@%R!?a}30BO`xA;dtEYBIK4Grv3%!1K?fSMqto7^GhYTIupnpXbV&k@AlRW($wqyNk*(jBR;MZZ!s>-3%E90n5$do zG3%OaVUI@?vTUYN3?ymsY5(A*@EraFL+nZAsW(_%m6yEXi;h(^R|(7D_<+AV#jm&W zD7T>x2>F5WYKIpUzsfkA6;Kz@Vp5rB7(dP*pEpZ8U-ea#TY&)8#`n)K)D>?+hOQ#+Kkd2J zOrRSG20GCmJmTqF_J}-H1s3@Q#HEHt;|3KV)kp7j7I?Y^UWr#GO$+H{AW0|RB#juf zqN?&Nc;6#JM}D^|i}5AGU~NhW8yz7&ZJzVW@>ZUPK9H^VM!oP5U!vkU_t$9)i~ty= zduSn0_Ph(>u+3wOVOS%*dBm$`CIClcEn`4@+Ct}Da1p@yHD>ijy7xa|$VGhBUqW>j zYqjxCOt;>#-3mS1Imjv`A+rfwiqaF$tFYa9YT9{Yk=jV;68hhHt%wG3dnWBLgLjE2 z9KU)d#7}it{%mWuLp{BpFF4dQ2@&LOKTlJer3wH(4sg5gSGAltn0A1Fs>577gYlZD zRG>t{s*eg3!(voPU@*>=(YCzE*A}5!T~aZPCYV^FHpc)rw+5Zc@g*XN^VV~0s?fVl z_bdTz!#0M!H0%XnP^8v*(pb85B7nj+ys1Em4qe7F{%9O4zY2@SvC*<<9Q&;-8pkHd zqH(N77L8-~$f9xVAz3tzJt2$6vH4gS$4>T{acuUl%{cadt66kLQ^mepd$P8qI-O2r zr{P#FG^foihD9;kcWXObjsJ2Uq(6+CeL1|xC-^_leR;L+OMuUj#A1*U?8o^d)9rjq+UsgUBb9@}`FZs7P%TCTe{!OZ0w!k7RPn-f$ASnS!S zz2H=kltzt2-)q~q@tD&iHP*+M8swp&0B%SFMEg5jKqY|5xqyiP^b%5S;I;hXvpSag z$~G%}d%VkPz6keeSitlk*qI&WzjulC@7(aP@o!diMhE$SVf}s8Gx4t87(U$O@+Giz zi?W^3lP5LT1L6t{z|!mMako8HNI*s zx$G&Nv&7&+YB%ZZAbps0B&+kwEdY1`0m;Bk&Od>qOBJ3kpU?3TFBj_~teNq2lk=K& zYWx%QN$WH-AkM$y)G&dJ$5Wgwwk>--bU8!H1-%PB;gL5FH|=G+qR?KBPK!e_gf-5RHapik(-z{*Oam%ZYHFPc*0CQ@i`(`DNM~!uRwIm!0<^GC0~WRp`o9* zzDwQ>A5~E@a(1|buV-Dj=;k)1C1X~G3#t(#_F7ubde>zYwa-g$*~kM0L!dP)`;{u0dYwkL5w$Hdxyb{X8$& zYPCCLtVUvPRpVL8h%=mAaL9CaF!sHIZ6Vk@StO$wX)L123$l^zO~4`=;_&udY$`Sn z9BX9EVH&&p|EA+-^y^O1Wd(F^xGMkR%bq*PJ7G7OMO-bcBE+FrHkRkC-{^19Dv%Rm;t-LEfEq!uPZkHz_zaD(o8KhsL|YXRGcS!K*ah zUDJDY7c;$=tvPsZZ+Own?SIui?|N+~=;RlgVbnZe9aWaZH%HH6yzdu}X$gh!NKbFx z3vAG5oUa}n@6w(!HJl@RQ#Op~q1So3BQzL{-=-YJdj<8j&W$W7#?it*GEllbJzeJe``hHKkS9xcTDkMjjdFL9l`^s^?4lpQ2^S`X}Lx@=B zV8gd#@*5G8JvSkmY}SzYx>Eq#qqIf5^=MXH!rT(#aG;Wy7Ix9waw~} zzcH?2>pI%Py5nM}k~_a-FeQ2^Xh}hczPv;UJBu`G#%n%g881@$=xgJW` z(k>vBbS#>MwMj0~VN+on7y5vK>Ol$OD*4oVT5YrQ@}CY0R?hSwzWpB(i9?lal`2Y} zQ(3M4WS0~+M-Z#*>H~?D>ackpbj%XS>~84Fjhx@^Om%ne>zb*z_b}VVQiz&gGr>1$3zJZ|LZQ=bJ7YAG)PMg%L(z`r>+cLnF zxNgn3I4C`v(PN?W;(V46aqk2m74g=0DL{fLJTbC%k*3eyDW~xtW-3$!^q9Q;id^+@ zOhN@@*zw_J9T%EHk(~PoN<*m{N2#@{NL)X=v2BLG&UylY+)z0o*#J0U1vbNavNsQV zZLf?uPK@{M;H0YY zulY-sqHWE{5zJC^g)?d)9VF-eM20^O2aYp4L%xdmwZ+M@_bI)ObPj3fL*5|2YaX+K zx2y(b?ulvdo1C!V=mDck{=M@enUVpOhzZ3(Z^ckwr7C+0j(9^sx148)IymF;o< z@G>+j+2=F2JJqpf`Jgo_#_1h7oR#_m((6CgmkJfRW`2p%`i-%U5DBS?%+0dR9_#P zKRw9JxzE_Z^co32lZoTj<2xo2fr-O96nU{tz; zyv*VM7yeK3kMe(k|04d&UHAK#Z}R`;_U0}Is;00I(2!9yyU8RzjpIdk0`J2FJ|q~7 z4=gV4KV)F2s5~*MSnXl}>n9)s)iY)?adTe3LUI^hl4^ zYLCaj6RoefRSf1+rk5oqrV@kp!F2v@?X%B3a}uhugLMt(@Ob5Mc`F$sIR5ip@Y$e5 zzE}{R(nR}#r7@?J8%D9j1dvt49-53X`GnHg=F%SDbD!g6?#qUY%X)8o3auf3Cr-mV ze0tY5OoTrnc*7e)6q|F0q9^7^!!?=|N_%YLfABN816oNIu#j9#oO>P&6tzx~ZoZ-QRg_8>7igw9GV97`;YT24Lk?`+Ih8boMY{fYQw6)cHKA{cvRm@#;v zYfcbbX^*whT|CnF+;|+5&K98uykRtX=W);Dv*t_ZQS@Ms`bsWZ#@;H8z2}TzU9z5tp9Y$;Sb2!A6oZaEqcC0{Fcp{yw zERo+rI0{pN9=lM+vfX#d9s687bqyC1!fg_PSFxuSbs_`t8Wp@pT`X}W<|0nHJaYU7 zhYk^uHpdo-{WB2#qB*M(Q6`wkubE2xV4kCSAD{9BhuE;8utxv2H@H&=R^56awt#u6 z%(B?GjV;Z29nsl-Sz<*F;fNt5`u}{eDV)c?YL^al>y9ivD4jg+ep)x2=5MsuX z#JV>fYYm|ki_oX+icL*KXk%^6&)}g(G8yV~U&_R+fIPEFH#&wo9v;6QKak121TeUSu3fDZWIt z<&0bXBZX^Qqc9}qeTUO(r|zqL#<2rsc?kc7snj_hqjtjF zLsPnXa(AGo$A;L{nrh2ZiPmyit=?CCEg6YVt%(GPWpZ>#K&+cQCi&Cp$fdE;nh3Yo z;v;IRmnlRUtHT94UCAT&f9LrmizvLfLF<2B0d5j9(fB@iZ_z!!W2;S@m*Rlvo@U{( zka#VPVvVgD?#PbBr_Q#q(pbW_uC{Xqs>%J3RFf+*4$M=BPcik?Z7`;dZ!4xW?#8=p zO=F93vsH_3tD)*U_zCT+DWPTfZa;%>Y5!L=8vABFOL5GL(QCC1<|&7t3w*cUf+z2) z^Mc_n`Sn;6OqgQ_q-;2J*$~{hNh2(z(Wq+gZ*WWL4zUtdid72`i}by`i6iV^_MfOj#bR0yCBK^k38Ymi364^2}h! zn>ghqZ~GEx2TYZZWjFtd2H%RjZ+R9_b0cb(@?RXB=yP&#><&#lKWS{ID)T3H5+Qo; z&_$Y>2vlo)(w$!zxYoOqqYVPfOv7|~J*Md*$Ugp(!kw}X+s4SD@oU6RW{=Tp4OsI? z#ZEz1%gx|&N$F1FjIM*6#YlJU4VL^6euYulT;%CNBjhb<-l81v6Io$A+a1jNDmZ<) z@=>1XvlEG+O#h@Q748S&AwtI;F|La4Dlgd^-rDdvp|id1&bv92Xc%N@zOgL!u5F}h z0Ns~67r!A1rk>snli8WX=L{3k;*XEUn0UDO5rbl-&qc~(>uscl8DvW1(oBMrG{rrI zCa?ufRvIHOX+7Eaiwvi%8WgK|E<(M;6Ix0&PXzf2UA3-7u5Ubtg#o!?h{~B1Sz_d5 z!6urfcQolBiW%)k8yUDa^gY?|u9A+^dtd*Nxo`&!#`K4oFEa3z#kN<()&_Re=Y_kv zE3Jw-5tCz9Nq4NDM_zDwYbSAaHF2Kem&T~9q7Hw@Csd~KM)76vwpS&WZruu6t_Mw{b-OBSxaqmwH)|Vphqi*!9v=iseqbS0 z=Brpy#%mwRKw>i6BB{}e{TzsHW_5Hi4_0aERMdXC7EmMVcF9q?yudVUeDayzM{^Og zwi&HxWo1cScFfXu*vg&H7*Y0gd(7>9KGWF0W)p2g4m^>8GaKpu?sAAGD%I z16(K8%~0R1{naYyVv5n_$S9Jf8zUU0#!Bkzk z{Ut7>w-w#7UbMw>@7w)My>$PGLVV0z@Fphf7Mg+pSROP%^(-~FHYc%j*xzjGG>g59 zFDeNDuxIGM5CRTlB4~@z;SO{OgJAVIHYAm@Eyvcbtf)Z}C%WT4Q!HIA zHWNeh0I!N}ZW%f%n}4!ri4#n%rqJQXhwS!)&&L^mDC&TT&e@ zeNnAJ>{3`Wlh|erCz>`wL5DUeXsrr*80)dowsLaI=ezX;!m5lG?v}4QUB2pc`Ks5u z<*Q!rmalrfTfXY`ZuzR$XUk`{rJ}MesIR6Sy`*V(9Dh$u7#TdD&*~yYkqs@*eE#kOEcw89 zE8?FlX|&HpJxO$PUXT-oou48?VFKkbIVX3SMQW-t59WdD@7zTDf^iIqcdS>V8Rx5C zl_zKWcd@RcgLVIC90Lod2ybGpPQ%+43cgW68DJE%oC&9*90OMc@?x%M-(q(E2E#B3^(ySoamYqmO(w zgK!K@vMd!@8APGsT4>2wG@2Dly@9vQ7aUqc%X@QZ`7V8dMp83|EHpgM$GQB` zR=M{x*k1I9V}*Qg=nV5n7p&~1en{cWU|TAFc4yd};lp)Y5aaHsWt8b|L&F`9x6&2| zQX1yj0rwq{9S1j06YmjjE|hGtXnTPcjG@A8)G-{PZ!$>6G<*-z*^1dlhh#(@U(h(HVxiscVmp#DXA<2!{;PDlS$@vwD z@dXu$D^YP$%S8fSdb_xmk!nbOpngb2TRs)52rrTf$9g8# z$<{gmEmn~VPL88>gRstQ>?||}1qsdr&1|1~N$HPE4$S}X!=&d!e&c|3 z2BLG4{m!~E9EY@{)%x&o?!8o!@?7tO9P`VbIWVmb>9op8tH4cbF!+vk(^3HsOzSu| zt#6%iN~=9-Q5BnBP>{#Xb`2MZpG=SXY}^S>(W!R9+(?=Ip&J zH>IV&QmHtruqnNEU`mIlQ#zlNib$!SmIazRN$n&zwV4N|*3+bh2*GS8L2?ZmkBL{^ z3sdC_k}9W9vy)2J({Kdd=6M58b>^7KO3yXuyd+TH0`2;?(lC3aYpTzI6?QCX5x`I! z^UQR>|FZ$J)ZS(2YpF%R0qKAPZNMzC-n9WuK?yi09dL*Zm{ZQj2}zef%CF;&zB9NG z$>E!GjClpC?`iU-+-pX8tz!4XqnUz+&otLe#^+4yAh>4$2PGSgxCZAX1yOY;@8(-G zu|lhz%@69(&5Xan_{HOUuPV7QKXklVyOrEn5ISNJ9mG>|V`0c=M#n{TPMk&IW-&&S z?D|FH(Sh#F`5osIGl@ppSG#GO%e7Z9=(v(pw`d?h?=Ye0oX7mlcFvm+VMJqdFfq6< zLrVlRA8ziIbOEeLc+`xSHTIA?VB^ic`Lzr_QYekean^QH0PUO4esUc)Dfj8pywIEk zc5BBP$+>o^_dk)1F(L6Jp0CvP))Wp~#)Eq(J>x~SMAd7R^IguCk+yxBO05Unzh7Fh_F<2=rH<4wkhlb?lX zOmo(|5L+0VV+iDNUNeBQyP9O6l^~DWD3mfM17`T2nStaa!xasW^LvZ!o?srY$acPz z(|c70H*YJB?$mGP#Fl}XrAK!{f2?o*h@*S;TXU1~=oMQ|CAjUwZ5-*A(a_4ajGynL zWegjBV9TH~7GG@!(R+8S;p$s3x|+u<=T~&>)UVDU?`TsCb?h~;U%g4cW3O2KFSW>l zzWMbzO>%;pa6}1jxah!yZFQex)4p#INuF_Jx`0Qz1w1`nz|&0u|4Sc871)ycl;F67 z6Ew}`o!^+k&e^fXBzcru%A=2RlRTr}a!ceh{+A^0aFcv+4oUuS;X!3I4fj%;`r;TurHO zYiF|CL_J{lX@9h#@H!$_l}Hb~>$T$+FZ zxTA+|joS`Tm4>8;LIW~Qb!--7$3g=#O)8iL*#X3W@-={*ng!WW$AG*79hL>zanFFv zxVIDPlffZ*=~2vp%)s|g3mR%iYU5uZY_F&NbIWALy=T&pCS@`M-T;k=z%Sbnt10*&DPcY_CnMy_;D3|D{vj=B9ezU8MR=<$ z7(>jYxxC>*4Qf*^#~Ovvbmo)}MUcs#BiQmd!b>Pyx8KO=^_*Qn7jd(C*~HzXX04B!>_R;;r( zKhet57zo6Df&M6DH(45RZ6g+w`7sD>^2;T z{JF@J0u6dXhwJsTi#(xD<6xAAyN-iHcTDe9jk@Q&j7W{E#+A1E!8fO_@i2Tol+Oa= zb8p@LxfKy`-S`iALzoL`#11n z7oPYfIQ*XY72{1)hQt#qY#V-buiJ*LmW3R7aP5Cc^Dn2F&6h^vF%4hj!-nC!N{Yrh zi>O8cK`{0%l6njC_NHbIzR0qPRuDYrr=Y(1-Y%Qlc*Jlq`zzdSa^0XxbV+?Cfm}2i z6WO`x=k07c{NLf{9C8M?r2sHnrkpVVQr=ApYqM>$68FA^S88R<`#NUC{~TXWxINr4 zr04v9#pRqqOm-QEfp#u#m#6j3>AH&5`Sqx_3;`X?#EI@y!nYq0Al@G^O2_+bHD zM&32*uT&u4!|;?$d$amgqW+%p4z)9S;+(@ADP#yA-w>yW&To1PmA5q^Ecl150;6$L zoc=_YZJTn)am_A6j?eIO_Lzt+IfepAdDq}y?_I<<&zX9~PizYP9sW+xUIvx_LfN}o zdqVb3*1k&iLTmRvkKL$>N%#Y@OIrtcrpfMD`y$zmaAm?D>}lG@r^IHOoZ;DjfBxd_rFIA?0k%F`rnUdb8vFj&r9$qqI z1XJvAOXqCmANe9l7#b$&LGsIpO>qU{9I-upFcQYhQcL*QnUg}~QrcHs|893$|7rNw z4<5+9Kcjx7lk?y{v`t97+JvDQ|?g34)4m6nWgHqHLO$7oCXPUlu0!Vp}#=qWMz&8)!?eUaa8~|99 zE8_jcnl6uh%IZF!@xpnwlG#QYuresTXP8PH)FP!WFh-X44v;v_eOlJ04fJ{&LSQH%Td9PoD* zyz6PeQ48LS-E=DFr5n?w{!D&x|IZoF{Ta|F_|{OY|c_$tKfZU`ma&nEpMUe4d>HGr4o zfPc2&y9G{I@O>`W=e%}9y3{wzFYdo519~I_nuK4ycQ#*zxXTTpq?g1@sjKjEdRyGL z=YXqh(pLz4m<5k@!9FLD!GEs&;{Gc$pc68nQvB+@WB4k>lJy{6O` z=YX5rq)!p}ehcp9f_+Z?gmkIf%P;OfH3ND!18R$3z4s)(3URU@idnGMw^X>RJ$1-FKVL>sv^JWl z7>C;o^Vq3>s@xmE(0C@<{XH(_=Qg2a+!63q*^}N2u&1;8q)pK|4O3d+=CBXA{1?vG zhH*0+gHUQysO~)78;QUId#*u*UgK+TsAr>%hf-OSl9~5uS>DdFyuB>Q z51`?}_tRM4aoaM{B?2;))~qCUer?DwL5an|m?6Wb08-v7@#ihI2VQN%1-+5bp(4?@ zf<_ofjVjUZ4_#fksrs^#onePq4W_->Sj9HhxY_ReS|+^2u@Qw$ zhcAC9n@Z<{!-s~uVZR3VE8%R|G;UL#EdJ2(>F`V&KX*k{-KU(TcD`*743!K^#tq&p zmP~s!{0SNyFn_uHs6F(Xg0;Ehe}f(W*FgVv$LEg!02u%AXIOiHMRt&0(uzaLf`;#0 z(yA3uko*PNf}HFYI+q`mEsuTaCWl_JMcJsoM6YS-@{`Orf6j*ecl4^v2|qIQ-@|uF zhljoo9M5eHw6}}Ii>lc%wsSLHtZm+gKHR29Rh0LGcWsk@2Q%Vdz&G3E|BlP?JEqB_ zCDi|@-209dRkx)phlAKIx8twb;!!{Zo1$PJ$e#3Ghh0B`SI7(Ve9XqzXzX^pXwu%P z&wfPFv~9-G=eL^r>@Jjpi6?-W&+h|}@^->sz2Y@nb>*)dOrs|4`)R`E)YnHjRsG-U z%m1f?aUa;ebL;Ez8~=Ow-1=%bHd|ks96#NU!{w!Zei z4V4mGOnse9MQoS5ve>Ms!qSX7;4bk9oo8;{gS=OhDoheob+hRhQ-uo^vmG(1!l$t7 zC$L9em@^5+GL2W5p3d+)h7UvIRHE-637)CGZC{$|`>oJb6DL!B8vvBX`%VA=OSkGo z*x;AR-a9pWP)X;7p+n8ov_HJPEVeV^F9w7%+s1CdS^vnTHRut>qBUqfHs>C2x+{QP zZ{Z$Jf@Tf+6)xqvnJwH#0nd~@>3tJ>x^TzKi(tk6*F7+ zh^^2}ox^{2=daR|ZN6&p)B>qwX~`aq=cgWF+PjH&tcj=m<%SpjobZ3VKaCY0G#xvZwY&14Y z`@O$5OfJGOP-tC*dbNDYWsk)!XJ1qid$u3JOJir$bLIi>#|b_pkrSiiIT`%|FO4x& z8VVb!m(iMlqb3GRn~}wuI#BJKbdDXVP=jHV$zQM9TmM$pA10dogHoUpj1BM3-FR4W zZH$^RXQZ;po8Iv$!;Gi+cFsWSIXXV&O5;hItk13I`1q6wSv}K$ZZ92BTAg zY-x5AK00NX$9Rm!qrrGwX+6f{q4GwjOt2o4@zAViB$Ld|wmecqQKznCaV;aZHoCca zFuET#>cau_-qA1xBNY|HjB~41wubM)jQFSW%??EqaXHOCHytue?Or4I@}pXM%!@J1 z8Kdw}XZt;Vz|R%@QQ4E;v#{$Y@SXC)JX}#f*M$;#l4=tk**)$i<;^RRXp38zGnBKX zhAJFvS+}pWi?Ty(8vnxSoNd#154(O0NY2T4$$a@p($I}KCD`IxdJgMVtj}JDwQg&X zZ$WKot6lNd?H*v#Sygo;%2tZ7_TJGy|0Q3w^i^_+D_HV<_`7)P4RaO7H*2bV;~m!E zbi=7e(%~AfjDEg1n3&uZod_BE_4;!^&#OQ8YyLa(>RX}|rk>aJlHHN?4S%7tlT#2v zp3hyRVaSQL2<^15%C5JuhsuUbrV z9U@fDc2wED{6f-e0;=I!!J{KxCUBJhovnzYLNVllsYTxSCbZYc!D97Wpp@@^wZJhbJCg{FEw$Eq!cLZ}ev%G#Kd#b)t)F5A>hg3ml8T zHr~C0@x{7BW+>|X{WjFgC!_MvFBvs~ur2dMNa*3U1w`B>P)HHY0hX%53EPO~U;t<` zY64-i5yufR7>{ZmA$zIW>PMtA5VwBmLNiQ#%{GL-5`JCtS8eDwL6j|=okQPXe72p& z*0Fs@ZA5GhuW*JN5VYpd_BOP=B>D#087&>#C-XK%E!eq0pO|hVp<^L#Y>5u-l!A}_ zf9w!dxAU?jVB=GYoM)`1lkH4F>f4ch7)WirDxcPXi{8JfGwWJq1$KV<0h(I!K_>Q+Sj_nDGZ z$}eZCVGTnMBe$~)OuU)>zD<4i+Z>avAJ7s-xz4OWOGBw{$*Atap`!1cWK<&xwq?m^ zXV;HmG2E?jS~9BBX$vaO*m44ee&s7Nh-|6bV9**^3GF6UOFG2)0Nx>fE$;1o-=??S2^vDm z`D%l*|2zEEU;k`#KL)3AKN2(IKbvnh_kD5ken%$vJ>;$irOEwKxRkv!Z0-vMyhiq< zcQ3r;bnZvkEI9ux%E^7{0sJ+}u#z~+DmCVD&LL4KvJgM#JtAhxaDpkrQ}~PDP)k^N zI3NAB$sWI6110$~^HxVIKwv?^yIX2kyp-)!Z~ z#pRs%fvFtU!2Ubr-s7F%y>t(g+&Vz6zsEpGyVlz01U z%16qsLcZy&RY<5J;9K?qo@hzjGuO7rHwmUfufUA>|He04=*Mt5r-P0DbOmL(U+(QZ zF4iE`B9QXFDl=2xf2f(MgEwdkd^3TB@J7st|5CnLgck|H=JyRkv;q5v$o&Wi8-EYw z`r#5uhT#FQhk(_xC%s2tPgCv&ycF!`*2L?_r04;tA)=Fw_dUlfPKAxP8M}T0m&gmV zj(EK{=2Y52{EcC}F&>D$?^6BL2SLIiiKTiwa!=;&P$Ex)NdVK|cfTj9Pc>m(s!w8% z1=WW^_4oO|V=15KQvO1Micsa45&!9YvxMq_%UK9Um-1cYo=kFS%6Fb-DBtA}L-}|9 zAj*3PB!s(Qct`x3`DPJ*h|9UgA{6D{lKVtaP?TSaOCnlNaW>n4i#h-sijR{kr>Yd*2ART10veGva@ZZo)Z%N1TL2s=GsI4Q+sbh z@0W<4p?44RO|~Az&shSF484m0q`Y^Vur9q5oere;l>02buOpbqGZr)Aui%>{&tP26 zx-}VkpC$L*B$cN3nKv7HpViXP+xea7eI$W|@G#7Xe-F&;EW+)$oaq*!TKN{a10Xc5 z{6kzKab^NY zc@HsRx7u;u%Wjkr=W+z^-=)4_O~yWEk;V(YQnt=#j>y-qa~A&_cjGG@g8Yra{8qlIAWJDHwPA@`FY zG&OTJE|Go|9#q?D0^Tlr(t8Z{bj?h{OTkht-I{3uP$WOv#@h*J*ty8Y+lpO3fzOc_ zW|DaB_>+4AdGPpO$|KiC75)YUF3My3;B?;)K5*Efs0{@npEH!+qaYQ)3`IY^tty#> zziJ7tk;l1_y%<$89FNl27K9GDSInzu?>md`wLL`VHzHdAGvYsqZn zI3-dtk z{!#l=L%%T%z1g~E&Rbmhix@g`_VajG9@w?WG0WJ=Z<$*8{$)}xBnbgbty}>h<=u>b z?)gL8KWXh~&mY{=_w4>K_dLO#pP4g#oj*MAU?yG{8xMKQZ1@o8o%Z~nu=}bqVUJCR zjfjjn;Wo4Y;#&NsCekps>doy_0E@v_b+fX%4@|@N?4p>&6#Mb}W6bT4m_F5kF@~Gm`;J-*Nyc@0<8% z=v&X`&(inGxc5aMBFEF15&zwMv*d{3ayo&)rSCMkKLmT4zEf{B^qrP6&p`LQTJ*h= zKtebgGvW{M%_8h41j&^Kq3C;x+%rIE#-*ciiEwA)0njJlwX!F@spqrwy%;YA+mz?h zcMCufZa*Hx+kn$K-NsA0@dQ3bUYJi3>_5=g@Pchae2D!PggQj8yV(mBw5gdlm@>!q zn==33Z&c>rk&Mdx8_bBmQi*2nSCry%-b5Pon_y@)W}l%|o3WzR zKmrM2Kg@{#SiV_=orK^?i%{*OQ0{9$XxhjA=WP4vhzG#$a60G7p7d_QuAkb)S$N4@ zmTF=9Up+t(?^8U8w?Od@v+{FC zZU9SWYI+?&$~(k_-D!y&VB-amk3!YOz>-hVXetHKW8c(?SE+A7DA=s=Y8u;7e=r2> zyw?!$?O%(4slQnQ?!=7vKjWJv;09dII8vj>UQSuxl=}p-g1Ah>Vl^f%k?lD|PENC@ z8GO$ZMiufTX2d_6Zx-JS#qVhGm4k1J+#l?Rus6_nug4{d)!+f}asd~~p7ajIuAjh9 z$P2S4CJCE%f4Up>JR9|RMXjA zsuXua8GPMTN*#XAKS7h(;G6~^<$ckFbvHPFV>3mi^bEu&4J<9$Q8k%|YJ;dA)#3c1 zoK41j3)&AG7elJLFcz5_Y~k_ESyOX2jo*ZyuYR|s1xLI_(PX2k!Mt`lU2n9aIDFu`I& zOwzwz?p|PPoIoulb*BLGZ`x~WX`z7a08&d&VNchRM_vS*NiZ~Pivi;>ugVJ5fJ-6Ic%?ZLAFi6~`+`Rx&-i{`$+h4R_ zqiQ={+8Mx)P?yi(t($(_N*d8}%3)br*8>&Tt#m!Jdvf(2crsx4O#w+^%x4 zJeuTthVgW8dCcy87|KrlGsrUA(ZeVR`HU;EC%~B5j{aP$s+nTKx>a)%8!xKn|EQW_ zr6pT@vm)fFe5}sHLx+^dhmMXH)&*id+0>C*#7ETS(}$AzTBV_*#`K`x*P7}(eW$6u ze_f{P>p&_ZcWcaue+L}qEV;kIwa))iJT;aur0%k z_@CmN#rCjb_q5p5gYJ?0+n?PYRD(;k@(>;XZxV2=>`Cu9?D`43R9=`vFe#OK(D{JX zHOAVQ0~GUq8}k%5roh#B$t=V?XidIE}?Y$Qz?Ly zx88(xE3J;LliQyrxczBzlm0Ysys3~!elitu(WR=8YA~4gk4gLIn`VdC=PQi@$JMhioD^&bHTYTzI9=R_CpXpEAAGcL<2p$0c zh0{4(_N4bc?CB~wSzc7h%R96EX@MK{UHpjpl%h7bQRn7F-6k+mCu9D{{*+#iUrJ;u z(XO}FEiqMbzL1Xtg8*i|wFp4U+aG_B+oiynY{jUGA(6!&D&Nd0@V^Kk${dCX|BJ(z zEM>Oia;AgFU6yZ=J3u07cEOk9Ox11q!BpM-m#FGi5l9H@Fp>Y}n??AD5cIMLwd|TB z_qH97TI_-uxYRfw#slDF0pF7y`ETs{30#Yp%%I|lfq4Ny5%3xtZ=mA+*~aVT#uIp^ zyfBL}Ekn&*j)@3wllAPL$8zX<<7+<1jreEi`vDs&=zD$qsJM4I z0FmKU%!vOnzNnd#d=rP?HC)2d%zHP!&avP@r0-@3a2sxw>@PnV0!$Kko$TTl z@VQ$-sQNSaZA7lN%0S%z6;7v2_N4b??D`3Oy1X!7{n5-(S?J~yN5nJjwH1K4H;zAVJ;Ykysz~uJQ5jNI&~*QS{GyIzGqQ`{QK8-o2+R71 zZ?>SP;c}L~Y6_}N(eZLuk**mvJKz!}PgO?Z{uToMT6W|g9?24XC|(No!4Jx>J;ZIA zAGiIO^W4{nNoZT#Ge{cDf5Xp75?ugO+#>1-m7XhPHtb)Td z78V{ID7*_o+>Bj>=wQwxOAc*P{B0`!FhWH9C495R?}f`*wkT8lu5#Z(K1}gD;!?SK zs$6k@O98KvJ?Y&!FI)TzY`&ch+YcyymcQkepREe@y_mSFR>MU*oy5WYEPhVCLEzT+ z5dc!&KjSZ&7=Fxs?3EqHf2G_&4&+7Ihsi=hxtM=ZAW^k0sIc{P4z=hI;ki znE7GSaMA8*0;%>M!HoEC=bJ@1T?mRSLd_3hxz}u?E;K(}gG-fj3myPR3;43^NpBFl zegens4a+ zCVtKqVrJ-F0wCpGjDLpS^V#`8Z(7BaB1zVbaqcy&BD=Mldxas^1790rop+IlHI?Wh zRtPiVAHz3GtP!}Jf4yR;uZ3w)?#E2#(+ktt(BI4md(oo9{Xaqo+XA+_z4y2=1#ZMk=0t%qL+mf}n=Z8|ZF^t$4@3X+g?F4q;;w%Hu>Qe6L;o|``a%CQ z;@$yxBa(YdoVw_HA`T>3`DM~8X+H}gLv&=9tPKAUtK%+T!oO>bsh^*}GWGKeYR=-` zfBxB0^nJ{Te+l0#MgM`z8B8wd9hXw{r{r!<77fp*VIed_y=9$o`N}?ud+#KGs%Hjf z#6N*=7TGn5yyInq?0k@2D);m8%&d| znFWdnA<}oZk@FP!G8_4O&NTEBxEwE;YroD6Wm$Te{?TN=FrTQI{lckaoP0fjpHoNt z%zmLgfRy(>6V{ys?qX|2C86E+OtRXJK}~zAi3AaCuEUJ@NAS(k=6qbv$1i1up>yQ^ z6Un59p|dYDHFr*fskv=KRddG?NC=O_jQE@L%_7|W00?3hp@yMvZGT`l?pi;+Bhc@Us?t+^jl(seqGI#nAiSsvc5A;Q0TF6Uv1 zNqOaCcLeLUG;@yVcX$qob$!Z6g>D7HmEW0F)a>Oa=D~ zHir8(h%`i-F|CcKu?v>7$!{Zfg}iTEg$2H%cLW$s{ps|0e`?r3R+K|&IH%m-24y@! zZaE{$rpCg>s#&XbjU(L((E$rRzUs#b;a)QPhD&A*b8x?y*Vqi%YOV(t ztn8}icyn*hH#xu4{ZqpqGV)R44;gvRQ>Wag4(19-ZU4I&IO zONp6lT0%q~@d$P>wpjE9fa8!Po@Y&iYg}2Yt-fmA^fE`lXfg3PLE;Cd@8{(y4^5ZW zgJL>Mai_L)a_b<$Vbj5iZknWm8D_}s1VRHV#H#;Ex z7MHW@IWxjtLth&s_rk3jAR1l=DMItgrG6|F3yl!7N$uslxVImHg}4`H#D4_eEaD;| zde|b?te-FU6(BaV{*HU?h}8xUfLn1ogJe&7H(=LKBh_j0!d$Q=GwZ(wSYzb-coFkC z#VoKfA97;~{1afA(=dO59d+>h@{8@|e3O{lUY7sOw3q%$ag;&twwI>?u>QqA(_T(s zU&mB)gW8IwW7}3<#TMfD+T2TM(pJW+t=t1x%|Q_`7c02#!L-^M>Ox}(b#l%b_X`an zk4p*hTEfDx8%Yy*W~6BX&wg&2z-2)-fm!$1nz{`$;{OBRY)y^B<^1%lX#ztb>96E| zdl*I30?gYI+D}#D5y!Z2S{UcpG0eeWcuB;+vW-#HA|iiU+`bcLN+Pd(!(2 zcKrk{lNaXOUu0@}9bi@AS9lR~g<>9UW4`Rh6!=iQWZpxtgKPQ#c?_c>(TK`$$a3oM zObTxG{_7c2y_YGON#M#12de?3ycH&F$_@wTvguNdJxT7%`aQW4BYb>WzXhvgIWo}i z;nlLVb?*EP_4P_#dH)$}@VN2R^7ss0Nr4x~FfsoF-~2aOucU@e2*loS#u7H@o!L&8 z7fkT7nFev$OoKKs(;$s|SKMW*VligK|5v`*s`xW5=OpsW!jPHOf2Z7E{fnx&fQE6` zaMLjE{>(It!9&zA!h}%8UXK~^kK&ufR;k$keA-~U1Z)Ah9|RlEx^ivefB~4rVle?! ziTwye__hlFJK2-oJnZ@je2Kg;H-ApX<`d7EZR2@typM1?eQdl{*wgWjb>lrvyart= zJK+4xyrE&`kMAa0=J>1?MIbx33hhJ0%^aU?drCEXqY3NQ?DcHb=(xk&nxcBl(;KN_ zleJbnm!P87IhYZDcfMI_9fQmHI~d(9Ydg7rudKQ<$cJ5I$lq?0A^+>8BL9v%Ey8ax zBmND1vk2e8<&3ciwN_j%cNfu2Th@QzQnP<+v!V6l0(t;K>p9r<6ZjjzGQ*f=tvD5+ zh<~q*cfI1Rls)Mk5U-HKiS-IY>D-OpMOjxYotoL1v*cINuxSm1z0Ax zbL8{;bQ|(89^oZOFkzHVJNNQ_S={^1EVJ7>f=ir>vG!gyyQK5&-12qzSB=Hm2Q4I8 zid%y2a_?>eW|n(o|JCEt3SOOXFCGn2xy)?}(X9*Yj6nTuhO13hhn}Qd`)Z`*xgp5M zxqSf2Uvt(kqK}ck$Wba-aJCx$$4=x$-6qT`6$c=OpLR7%=g?Vb zD=4q~GQVAxuTotjGh39}i@9O)s@&pnO z{lZ?*su;UWR3!1a7+j0mS0JaZMP26Rpbs~YZefLY;I*jISRdX>Eh_s0bX<*M8Z?;f zwWua%=hdLJ{Pp;q3d23mhMJ0V!hFe&KV^+l8jc(U0mK;uI&{p*${d+P%`1OP;0)s!dn~Ln)dqxmpTVJ#_N6AJ&kWS+5cqrOPt@^ zK0%YZra0XrK8*OA-9dNs)jUY!kL{`V9*vWiMSa!vWR#QsGj5b5oz?nsQbwUkWZf>c2 z;o_RU(U{W@dw%0zd)K03>{Dmt_bJAV(eywsV+3P{RM3-s&oa54E!=6gV}^zm#temY zuKephG`l@?JM}>pZ#^M10zLU7b8p=H!qMrG;6s$XrAGpH;B)5nqo`$^Zc(-I_ z6`P8o!7|@`?&`H)7MXfs3s2~C-?EAe^U+i-EW!9ILQopp?X+Z+a-BTI-nckgHNoSX z^#)maIjb)rH|q(&rMzX9tPwn4WQ-4)OoCemMFtdmLhB>` zi7`z`ot*_2NLl0jg~6TeMa*Q-q3V1wxD zbmMX9`nNEix9vp1_t*L6uPs^Qo3#&;2IEUL1pDT%Dvzx!ulp>Yt#V6G)y9%FRcts- z_=>z_?~SOni_Pgn>|kt3F-8SXh+{Ms+40Kq90DoIRh}m1DuM=mUtH# zC#C^siQn0I@c!oi4t{tN51x|Nr^_`}s6?X3nf)q6UEIuWIz`+WKZR?W~iMxWyR z0O-+jYPqsOG%S7l1+j&xzF>5bwD2ujls>}6JqMn!QOoSKD{%&UF2=)pQwMt=oC=yF z)3=qubFZ|zWxCM|;{z}UF#FF^)oHu3l@VbdkBUU4n@Whz<2 zC{wzY4OYfaZNa~$T7yy9Lz$Zm?g22CRE_~51!%{~hYW+I)mB6;*yG8dNO-&{Kv)CY zfXr%I)f$Z=t!E3WvaAP;Nu<=q^!wU8jm9qMf+h~_ZLev_vy+w@{$?220zSKs}r^ z4g|71yBU8b;BTI}Y;XavK7TVj(!vsCB?6>JZ-zVardFFzPh%zcspRoP>{M)opzz@N z@c{%T%bkPkw&k?Hkv9;*w<>Q@O^N#23htb~AUjN0l{cjQ9wse(1Ry9U&KcCNOSXHS zx3Hz3Fxm@)m6kPau!E>IyMeRL+Dl7_TC?AK+UQ9qTo2{+6@i_;9Sch0TC=5y$jK^0wcUCKXr z@bD_sNi^!}#PahWHE-&(+`P}vOKlzz{N(0s?nBK3e-P(q_4chnMD+VoJw4i2zEi3g zj&(~=4Y7zw3kwmVd<1hc6=aVA+h;1likAs%zBLteF-r@(AlRmSi00c>r`fE037h67 zTi|C;HWn4B_a;x)1D&NY`=s6_AaDh05tM zxQn#Ki}$9qNVsnGx3Wy>LX6wK)BE8aFe=Q|oqG*LVM}QhjLpFio;}AP%j=XnNNMaP57Mr^#QUjs0^l!d zuwQyOm5e`uCmK@r7tO~r4NDaDVaGTfD;PaOTKGJIt)vNp`_x}J_%5Bd(2Y|aqVa32 zI*q^NF+t;J;7#i-wRjPB%jUE)X-0#^p;~js65oDInorNgHsODFMqQN=!$TYQHzr4g zV&+niQ+Z3!ds9w~;BO#~0aD-hr_fh<{x3=BS^gBGr-NSS{x-n?G@rxKKjHmWZZGsV z;(O739bzrjstlNe+Kmg%#Crzl%@^p@+=(+CNP5JX_t#5VR5k`-+Kf+G1hf$qiE1AL z5KSLS;Wvg(qxXe%O~`xtBaCc92c9O(2A`jV=#i56e#W5;=|_{W2lM){BUO+8-`SP| zcskOFZQO0ZkW9M+3L+uY@+Z$m6XGNH)p#yI+mgk*H;vp=UdKYK4(mrt0*vcmJ+JXR z68VJ8an}7MU)vAMTRHNACP)QA~o*Q z@Zo^8dSxX-rPWLRPC$i@lN`Z^#R<|$Jdt=fmuh;N6eAXz=a%?p9g3Ie<);vjy6K&dDQaN_CHtP-q4YU$(;tEBDG1-O z94-Cb_VFCuZ)@-7(u&CIA=%EXB6baehvz`5cv{1~h}^U|!yO{t&;E{gb4Wpm!)0y40V)elprFR!Z(D=(^?8&KQ2)_`83D8 zQf#^p3SSo?3HeI++6!6gcJ{eVD~u(Zx%86odITlS2cjR!$r{aqD?DGwY-(-sW?5KZ zgXOeMHuIMb<+P(Fl1FRjPIn&}S6qGHlifB?H+%U`*s-hmCA&EHv+i)&`ek{m~KqxNH%Kx;4k> zh;A8>?LG!INvC9sIHI4#%LCj6@Q2<;z%j3e2e!Iz!U==c?IgBCFdYtlGz(6c&Q5~` zt`;OzUejJzV7L|L5D^EDcicv*>PiTQ4X~T%QZyXCZ|Vd>+9j}63cL=SP(CA2MT$<; z`w~w2jrPHbCNiZLuaCq3i*d#!-Urj7*-qu8`|zMzYkwm!3W4J*gj(oPMB3G+862Sy zCUF$1?6&+LA{QpoE5E{kzDsFxL_dY~@tOBKg6Po=T%GOtC!S#MW;cHA z>VZq*N3~v809&!>Gj>Gm(7(X*UMHmhv4l9~B-?+m563UDbD<6W-DBQv7NZ=xP=V)J-SX`eIhXp)kGCHqllr4Z#QR8(cS-Yj8%4Zw&yi6sbf_dZOUQHo4;DH z-hF$9-pCGP=o|PwyGWlkkdYc9xogttbLkpTUPI)|n( zVQ79**v{Zor<%|Z{*_FBlKiZ)=LxT4HwmNrrJ9cuY5GWUNDUW=Q%~BeSW;%M{!F$ZIqgrt{qDXYT zK8Z?hZg!q7E?>#YSt{S!TEk^fWqXE~Z3#3BhH z-Jk1gY6ZV1o33+Nk>#rt`*?h4IbE|;kG}x%DQcJXJW|fn z<9A(8BgWTcrbHcnr-T4&ckXuDW{hb%I{XPjBnT;>V5Q|9fHBAFZ~Z4F>5+3-{4Uw1D^C*69J&)q0$eBm5WZM&|SkFV+hXtuN*rlAY zPDWk9!)(B33;sXC|4#hhlk~q6<(|vG7jgFE|7ZMTLlr-dYQDbaI+c%<;t!xxfl&aq zY-)OJyHU? z36xtlwb5-tw?P=R*CH0A!g7V2Jn4~($pzMJ15%^soA_{LllFB#j*HjGv#>5(u%DV% zjUUe@Sd;z1-5t)!TgpPVS}6M$e^90r*TDl_4TR78xWcu)!uDw-8w>bg;a;vo}WrK!H@JhjpHSl_8gcjQ`i%e zDa;|!u)Ax_JB7TS3ovTYG5mH@?}H|>zOcdoFJSCSoiE9G$K@5AH=2%yHlJVTjL(Jt z7xAZYW%1}Njwx5eK5n+OxTa7btJ(~m!A7#q4Aj__qxPDEz|&4}_u1RBH!=SXesO6{ z89()uU6)-?N1Xv6TF3{_SwAlC-1XCjeg{H_8pK-LjGp+S6F}BHSE5^27=w=+U=iDY z>ay7u`^HOAB0w;l`_k?iW?$p?Ach`{#nkb!!l>uaQ90uOwntZ@(JHD$iy0ey zjcp;!b-y2R`x*~}2)l3gHQq~`)H#UftGN=qiNDb_d-S>skd5@xwi#;V#^AztK~|9) zR(`UT80klG8+(ABNCDbB`x<+*dprRzVqhhfG%0Ws16N@|lL7)7rIIQ7@*UkOzg&(7HBD>C#$ zPt640eT@z1EBA3<<5~J1;&G_U&$a6sXgpl@N8>>|pW(g!2<|(9_n(23qwNw%Ngkit z7vIpr`sHhw+)|QSx6ErpbY)*g0AEqC}@Z3Lw`%Vy> z;yX@EMyykl>mP#?KXER&pudB%p@(0xGEn z|Nhgy5f~PWmR)S|ZMsSY+?#IJ8 z^fZT{>3R8D=olW?@+wGD>$z1;zx+BbDI2+TgA)%D#Ks$!*Dq1t52C!w5%b$WDi157 zSm2Ke{YdDx5#z(}f)B{}Et>R%cVfRl?`6TB@5wUOTNL8vdl#^{SwonXww5&&H)6_0 zwb1}X)At}e>HVPAu7p0)IrW|102Y$;qn;j~h<`5qr3EqlCG2d^<|pFD^5*?iLjTG= zJSqO!G0LpF*r#&J1>U993={*q+e*B+{v5f)4-wNWx z>6XYq1f9YPNtW|#!r9Vl+{)2-(!droO_5J=t$})t&X8%29Pu~N965qKFh{^-?jqSS z#KRxs3;QSdO(5k>__Y2g9tF}B>`L;VUWN9MU8=?K(H7x#1OVtK;Me31rO$+${s{aL z1>rjqUz*tG;NM^^iO22$B*RP>V|V3)jE|m_?NFp80FT{g0Enh{K{#^#NxrUqhQ*qsvdV5P7b$5BVe?|X4GNpzz+Myf zg{!LdfMohd_0hKlVD*48Y4N7`rog*&ox0a$^gLohX^M!0xk>ZRaJZw!Rk;a zWV_T^xv+l%Firm&d}03tzlrJpB79mNa>2Zrh#9_={DF0PqR|K1A+N z`uT9vAA#>h5PeUqK)U{*$xRak9qKI7{Q|Fcqe%A+-1JBE=Q;|)w+iX<_pzvlRym&j z;<<)Ye3N{Dn2TqTN1Q-+MCDO8mCAS(8N~^7<19k+zb5rpM?OzLf4u^M8>EP@zQO%9rUUht zf*h#7eE50`|AOB{fBhLg?XX+)7xw#vlbb2*P1JNU9OkHAI>!dF4GSYHM8q_2pi z^C{_Ga>M>zQqo!qLegRQ#uxs$KA3g|ug(A0)_d?%V!lRhP454hqW=-59e*>q{{cY% zBOFx}^R;#z_rHueIx|mAe+Mu^?LY8^{YU&JrokidX`PXUP8sKte>d_ER}tQVg%5P$ zp)&V19x6R08Y&YIi836GueWd@eiIp9OBsAPBTgBwB!4+FjNF5H)dfDnWM2ee47DTR z6mo~s&yGv4krb|T&dt&sAdc9hsOfe@A*>YP>n-eo z-vm~&;nUthPCA-1$$u}3iCur|bP=ODb2+2=!*+z`6Jte&zu@aF+=JglhM&TxO%NH< z0<@X@U6CPQe|sN3G(h|0bw<~#1T+E&G(QP9{So*O!1SGkFJFI~2Oyz&sYrJZrQ1sG zQ2GQt9f4O-5WY9yo3Pjt*Z&+n5{tXm;bfd+oduDlvKh3#+zd_(T2&oHIbzwbn9i6t zQej<0&SKfW7l3H`5!}n6&fsPLCv2^N`B|jb)NqWr-aTsir-(s_58>-AT!CN1?@WHZ zfKaVBGSp3eErFk!{>E#Jp#XuuA$KUR0~uuIeuL4?n)Q~|Z{#Aw90h1{X^ z18~zHfd^6$zMxDii76;NB2PW03+1XVASSg)^w&k!oW6wjt@WX_rrD4ZOz= ziW2+V8t`JTZwplj`$c&oPFQ@VxV})FzO_Z$sAn-Iz#rYiqu_Kg+TIxrBmnY`YIgw; zO^+ZPZ5N|pKQ>?(1%uRQzd};na|DpkUyHA|@E!an(EloY+BL{SpLx%a|F?f6Sih&w z=N^6LWuAFAwW0o;he(v62VcDZir++r#gxGh(>Oz#c@FZwj0}0^^@ooJ%t!8(*a`$i>w6$%nG6tBbSKb%EpjSN!p zjdNqDTtGjW`KNo$p`m7^!Gbe18)UF9G&GyM>ViBxMLfV>bD)Lh)S&l@aoL+SRcH2d zD)Z`{rE~M}z6TWWTR`HXO*XbhduQUJ&1)gUxVL3O$!QJ8eOQA{Y*LeLvBhX(8YPES{(-v?)-mIifhqTfgD zkN11Xu2R2GM!%P$-@l9X`?RPT{XQ4{UW$G%MZZr@>h}}W@4cI7(8l^5I??Cq_tuD% z%74b}?~tAYx9>cM@+r4(AT_VER)!a;A|0BwP1u)8YMwJ#nthI@-Tz~}X|BUXdw3H!T7aP(vAgFD((9S#FHfW&i|NW5ejW{I!{Db}*p|v|i!ra3o(_Z9RYT(yY-56e&PuE=WB4&?#pb0A+ z-AHCd2T1ErmMuEI+30zLQusM}3(w!kGg?pnxJZ7g63JU|a%t5*PAysYgo)jv+s|F- zryU7;&)(>OJ#r-?tq&{ zp>ID%-KTc{b|?!+wbOV>i#mHJRy8ckctS@TJLyc+w_d~es7yC>l*(TQs0u#A#>2=| zd-^+`AFx)1a3cGPzY^iKUORq`_K8R62Q}(RR+U*nYDl~hp?W`5YJXxJPYxcNjbZ4zUJk+kw zY=pa(JaCV2=15(ujqfL#`!xrh(B4EFsQKG<|AWw*AU~lG-L|U=26M2V9mqFy+8(#< zGP={{+976R$hM2x$Z@WQqJSKIk_G~CHp{6#rNz5Qv#&>Mdbf7f_aL{ShxZT?DN@k0 zrRvp3(RqUc|1!bj9H};mm^b)+~Y#o(|{0%h)*w&b~d! z>GyK(>79GCuR{1LgpXJs#9SwQ%=iS;KkmaZD+O#=9{Gsq56(r@;li5-=gZLFKxjWW z9apn+ESy~lOUmF$aQd%f=M*@zWO9mIE5YYiZ)xh3woDqpj~17>t1&}3Mbr=rW2ATuo3?I@?=wvpM| zWr!l>rnlXKD}5dOL?rAiiANKtwsnmC!tKw2l&t1K!X4e(SXCXMjv8&Lg6g4xIe+xE z0nw{|gAQJD04&f&pR7cFJX>OJDgbWk4BU20?;2@?3x;*L-Y(_tLB4iWs^#Rikc)MA z_(8;#F-|B6UNnaD2jLuOS69*`gFNYm_QdSBn~RFBBSjvqwF8M(86&d*oOwCyrdH#< ziBnO!jyFjg&~%CzAk7U$OcJuh$kUeVTN%_CRa(s+ofy3i4<-;Oh4u~1t|QaluGSIi?z8hK7ARqaS$-ocWLm$7{Lfd>jv#XE%-ysksx_)p>zW3;}q-T3VyYpJqQ^7=` zRq6?1uY=dTtix^+Fz`Kq%@MGtbXXq&%VyYk0jpdj^6VsFu#bauMFQs5)1A16%gbX} zj(|O^r`soBbXiOa(0wMM2DR(VAC096|knqM7q;`x$Scp zmMdUU9rg{w1QDXg)%@6*8#2{6+w0>3H1 zf7UZE72rxt9IjeWfXC}#s{k*Lf$tIEAv(Cb05g%I%t-?dReMM;yQKg#)go}70KZ|U zoy`gDz}18ke|0SL4g%co3W2gZ0j`UIk7CV1<~L!jq13MlaD5E?nE-EiT7ds5zFA(6pI=EhdS!79AI|TxUs>Q(X3a}-XdY=Gi>18h#;H((<0|7Sc;F$uP z9Roivz#r&kj}l;JgQ@KK0{prTzD9s)i_SHlD8SF^;LZZvF9t5s!OKLuPvmpEi(=qQ z1-L>7?-5{o4BSG1Jvw-;0FQ`)zlQ^8xm^c8Bfw*0;4K0?S_jV+;7Kv?D*}9@4jwPS zQ)1wU1-PFME)?MDG4P!N{AExytg8UeiGisJsG3Dj9nIr*dt=}p0-UCU8w9u_25uw3 zr=Jp;*9h>U7&wAah0K4`!G9OvWic>u*8oR!uwQ^HW8k+0xIqWsA;8OH;DrMGxem4o z@CpHT&qT%{9dxAtt@!t@$xK+JW>bqsOO zpq#M6>7kd3(D4-7DjwQagbtxlb3F97Lgvo$D3p{R1kd)32)&R(!H4UiTRBvgme$7j z4WUC7KR@){&>Ag;#9Z(hCDF>|NK88A&FyJGULY&K>G4RW1M+)o`dOT<(5^DO)mgd; zLe3vsLV^a#2f16rjcZcm+{iJukaMOP$!ek>K~v*&>)CcWx?T1+wVn+|%~KZ~4TWXX z?5pMIr?NlVdiIra^kdvsYCZeX=vGqZzR=&4?oRhNnLM~oZmaj=4Pm-7i%S-yf|Mll zYIYwA@{X}eaXmy_I3IGV{~)eP+g5;$j@mcJ4&9V4ju1qe)b03ls2dF!8`@oe;?2t? z4)t%8z&jTPaXQB2U(qFXhzjx8aY`E7xykC#jP*wBV+)6Yb)Mg~&;^cre&0f3yxsi^ zi5YkIEhGlr-76x?8_dw>ElkTA-Fd;~g(hst+&34RvajvzzA=(hNX)mp2a;Zu@98XW zXpN|ms}O5+XZN2FYgT7>4l%Bn72&Hf6lDJbi-B&$6wad{=tZ!K#?N8{T7=4KS-bQN zCWQ(6DrE(0{jcIjcbgTLj=6XfLD>JnntPo3od(1Cf%!18cFzK zIP7c0uf=^i-vIGN$BrIXyxS=BYi~^ zMIQNAd2)h-j5XRN#`-Bfe%6620&&5p42PMvY9y|l(|tYxffp`Ade>RMx0 zWWgu5#9YVSrY%ZIH3WNg5b9Ps70+^)x{*eZ>|J0sNCAb~9(_uTANPD{xxPe_-e9lK z{cW&qxcDhzo`TmLUEIbHiOVMyQx2{=vM}t+wZuBR_)_J0hfiVe6wB)>**hSIHaWA= z{Z7gHZLq=s6#-|kUDmWVu)df+dkw_2xYj%jTQaAbu`RM3Lgh7%;KV%CEeCZY!)JD- zWQ7w#Pso(96JLO8Kr#oxZI3-LA(&QP4S8gx6!3r)%Auh>iHbVaY0IlN1&~xNsf&)Z zU{sm$&|z+LWG*>38Zi{Cs%ICh$w!yuAq9sTC^R`lhP94NSsj&=1p-l16TZZV&yGd~ zJ%J9f22CyGXtliKBrbX>)*Q21yhX{(v4^ZV7SsWf8e9I>=#pGyPtvN$y=PzxVGK3l z=;JVg7}D;7DkFTRc!S1%aT)|_D6APuf$^d_eW^KBHNR_0-v6(rxYYN>(3wv|XFuUC z`lJ{-Qs4_}Yp`&smj+DtiNuTqd#%I92tvgHsq#^bAEFjMT0@&4Y+gHr#}Hj;-|;hz zp?IcUu?EG*O~YTrxTzN7rZeua@wi!m@zS09U5o}|QGwfEP_`H>XFeB$MGEAjAPf}7 zEDf#yhuDpe4U7>pk>!vnrw!;RI0E{_$4e@bkE9~`JAvf91&riVDkHfVa}-FvE-qge z`0YeJA@Exg$M1bVrQnzNfjEA>cctKWl`)228p65LAj45zE7T4^ts5nVNne#o58Xh- znMiaIZLMhfr8WU$KeBQ?_Jtd|7#|^RiLz=%vyK}n_3Q=p-vm&~Ls+?L~HMP1Ait6?h)vfp| zWBhxJZdCUg-M*x#?@ROJ^(~Co*O*%0VafHiq}F#xyuO6*HFqcB+lkUaH2QuD8leuz zkyW=&o7S39f9->(Kum~mFl!vV<_1I;Bfka6jI6YZ!Q|SZCZkLFAcyv;EE9_p$?J#= z{x^ih_h3#2t<_Rs12Pj-)|r!OQ>{5!|CT7GqWnS1AU5gU_hEDlr)_nx`vnT4+x;k` z``Q@4Bk+Coyg0r|BqR)CJRVLNA76tM#K%WvS<3j>-ISrz55l+oFGQm0E_ru!E|4Ai ze@9Lhn6y0zkF?dthh4o5Vy%6k zk!Yy3pugvkwV>4G(ZXlp2PK?;5~nr9HI7Z3?1n?yDHxGK1k8cN^h!lsK2Fu*h?4@B z!3*Shc}{iz>JdgB%`lABf~4~)fxlzmT=e-hEsnpNQEF0-e?tZ0_?t921%FSTjo}a3 zUtg7ls%kB^fe9f-yq{H>1ltJH&D;d!xB_6<3L?Cal+U3sig?9WCiZiw8)#)&Y1G-0 z%MmTkN=Sk8;RP3BZp4XQuzQ+l*aXZ)l$=+#NVKOLw+FUSzFS)!Z;$T)wMXYka6*7u z$le=>Eop$p3)qq)@#gvN5Y2m6EHA6i=*@fa_e3tW7gjc=^uo*Vq8Co_*zG?0VeW-@ z;X`HnB+<8-55)05Dqi0m`;+kRzARq3A4)~#wus7I7^~cSeCU-lZm?l$rVk)=qHJ`= zUJ0#NHF9*S#96f$PD;p_=3|0|J=x&cgOr{Un8;TIB1JjN7AHKHLlX* zxP$=ycaaqMfksj3O&K=mjxf7IWbsoPkgBUvz29tAZ_ZFVS=G5Ft2z#r1U__0?`W=q z-#nLM&t}d)4(lONPrW=+zD15ck<*V7`nP02rWn zc1Z6uLivS`GMzB$p?y`$tU9yQ!fM_Cpw9fMtp;(<4$Um+!9#xkY=585dP@@0>mdRtH z?~|Tg^nJ#vI(boYFVJaWIis~?4Ooy$*b$~J1QA?&>EI0XK&{i#g72cJ3^JIy1^?aRT;_R&o{P6h2PfLeR$PGGgd-qKX9;`;}9b~1N_6*oQ$VPVUI4Q%T0sOXL zMoT$bBkyQbhghurZOf(dLsWAfb{KObnhiO!iiEvfHCovnt(3vVIh3!QrKlB6Bo%KI zsJ2DX5xHm)TENxpf=IGDJ|`o1lL&yB9IAJ6Z3K*vaw{rk_v z!c)d8<|zzUVOo8p-Tf6!jb9wbuf%~G&5AMS2pfEkus#Tb!iY#N`)kj5URFy2Fc#7s zx;zPekwnH#`?xTd@z>}_9=x7{Il(BPX+gtYW#m{@8)k=V1u<_Uqwf>liPC&eoe~hh zX)_2%Ku*fIr_l=v$QSQtU!{sXq(PxL%h*`3u5%pLuLlA*A zi3X6vxQzyoP4!?Bs3T3vM>Ua4j34bd-F)yEF@|=Wl7ldsCI-Jr3>{guS*&={En5r{ zUi$Ob;w%s6EOl|UV{!<9`1ukG{eLQ_33HBwEL-4NV}e7iV~gXAjm64!htSVd>`xJFU5}x&a054kcq)ek~%29OdX_&q&@(`GhEP}y$DcCvN5z^4#`s=TV>l=)j|LH zDmzpsG_B&RtPG>^I$tL%d*snrVo|q>XoAp8qG_zKPOcK9@vjtv3M_Lf#dtu)_Oe)w z;?%&rfk}>_2Hla=sk|}*i7;TLg^cmi&xrRRqOje+KTViE23;U_ZDva%(vcZT9oRZ@ zf(orjtPh|<7^OUv4r=>8$0o=aaT#IhC>9nvN7%}9guQ?;&}@;MShiQJDyuA`mZ;nc zn3N;=OFUzj@)HJ-HifcM!Y<`Ur}29S_yNqdePXUHqq$b8GJY`KUXD*U!KOt$i&C*l zv+bWBm_P>^JMrO=hZdh}IBezNFeAZjt>NJS<=X$PYMo*gR2!xx8vkC8_o7D*!sztS%h&xto0b9YA*xa=#VZi{67@1Tc+jK-Xp_i~= zgVup*JPW4rjP~cX+&%TYXrISDTLR{C8s2dISz5?zeyJ@$Y$eVJmg7}XENf{v6g16j zhkmJds!Z1+vuWK<3Lx|~!`~qYBDCH+slUE=rcJ|U53`j6FF04A>0E)o?1(3qiFVN zl7$6u8pQEf06iZ1biV=83@m{CXnlySe~>5Z>t7GZ@m-3({(b&$*1ua))<0a}f|UQi zSpWP#%@K>=o2*byN3Ca_>gv?RuTC4&g%-bS^~LYu#NxMsMI0yF@#5Fjp*~M3S+;@K zzP!Li%KBGQFXS68NOpyMV=!FM6HQw2>UhP2TD=E**3rqEvJ*VuM}oZFC{{ZyCpKWRI3vU!5=T;cnf&mO2P9&BJi1Z$ts#bdoe|5t)rm?RVt)* zDtzk&G8-?6GD!0S4XKPX!AlN7&|bguR0>?DRx(UhmZBsT$?`P_+OjI=p=o8+CrTKa#tzH9WLvXtN^*Iz-9%4=opGos&2eNV0c{2f3K5ROe)=McMXc&e9uAYDW@4*kYa=Guh&>8b1xSbL z?8XyLBktxD$O_)+F4;`?DKPH9go!$YY=@CKru(o=$e2&sReP3|Ditg~tW6K&1`T#Q zu;~+DuTt(~jL>PbQ{6}n!gJN@SwmwV1ocn@aNov<`J}t;3f>9XmN?BPI_e6(9Y4RP zQ+>z_qEE&{=tMsr!son{hn^m!b98Rx3O+b?-w=l;mB2CLB@D=6y#dOv7*aHNW7!vr zb2O1RAEHs#R7^Yt*GYdTfdL{du#$9HCECyoKhPgjU!bL@)-Ud4;I`=)r@D%eM!c|*!f#(|AB3_)3drKppvx*X+cul7pO%UtUUy+99Aa6vjB9} zg_OU3c9rhObDux*kim1Gj^J=JG&&y1!+|GBy0u1J@pC z#Cy`E+|ME{rQ97-?neyC#qYSG*)HWy3(I#Zkp*N`;MF%FOgTA%lK_ zKl~2Mgstxu(xbGhV9&9_6)fv1Z$Rnv4w9=5KgA#8r=%V~lXnq4JvvCTWJIK~?T)Pi z`g*ulNaGQ$bB#9m?k0LP$+ksngbR@l&ML% zA4=oW_dkwHBV!@=l{#5-exjP)k@G8k#^;=*�U;^vTG9y>kaN_*@0QNabW5n_jNr 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%0A~AS)V~8b>{D|TohgF!Y--9 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%0AI;>^(*M`;4%OoDsF&Y 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

N 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 z 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
xrMg=e}RrT)w=OUDTwb z$mmPaj(Rt|+l+l$rP=atK!%^>5}8lNuIj zWsalFu=e)Bb(XNo7K!=1 zLi-~jVUq5pZ>qlgw1sx!BYuCQ#u%+5KBCy>HPl67S4eyM!-upb(qbb?tQI{<&S%_k zx5Rz%{L733DQ#}ETNYjJ{NOvyh!-NUNhB_X#FtpXf8-y& zIEE6V4V=7VN{Pt|UMrNdF_icr=g+T5Y&-Cva;FeyqZpf^1%6o>(1%Q(}%Bz1%sKwz7?VakP12ds^y*?s8A#o*%yS(Q5*rCH|f&&GFi`Vahl^yHN!7KX|?EXSs7d*7@oYt=cuIsXrIqspqm^0|h!0TdH4k~yw;THvizYMyr z>&n3eFR)JTg@n839Pat$oEekCu1le;m4j2}^rno!p}pty;oG30edhG#yRUloDM;d* zWvr!Z=y`CCqvvnuDApSt;G7_#s{`EfIm4sB7E&oTq{yDgrmUe59v`6&X_~dJgtLS* zsKYAinGZi_Z&MSlg{N}@wF!6LuT8k?SK5U39;z(z7whe%|5g+BcSV+#Rod65bM{GQ zrM>iyo)cfjyqFgD9 zI9C+@%uKF1BSyOKx@vjt%jlVd$mdkz!a3;A#Lm|7warU-#k=^q&2!t23BXs26I_fZ%I^@qU zX)EO)OF3(ZF}uY1CC-4&IOj+D3LAZ{_$of&orAo-|M}WWT>}G0ML9fY7jCQVJ1!tr z?!r@Fo(5kY#=pLIlu7I;Gv9?V%(c24FW+C|yCnE*_)@~k>t+3`ZE?CQE!fAt`8*)|K z$NWPDmKV+iCjU~O3~M`p?`bFSHrj^xS9T(gT^0V%Gg>+U59<@d7z5jgA-im_b1AXp zl(u%=^MA7#-&^O;Yomp626*=i`YRtECeO@v?Ta-kd~Vk}VpyJ@8H&Fu48LeNeQpFY zPYlZ)x--v_l#tF9!qw*WiwfO*zI1f?#*Y54N1Mdr{000k;*1~Re_BOA^?v3c8ffd* zhTQB58B-85IpdNO(tullCncpM%(-IIK)s6+Y&i!-CQ z!#!2&*3uYLVZ{DU(k7lhh@ANUS8$R4Ha;9s?JLiwIkH90lF?T-WO^iJY~wpCHXY|v zwM-)|c@w8uvMXpSqBHX)FEY8B_TjH@%9-=^*EiVTd$({7%6ucvs(CiL#Opl_ZDefX zAckEsmxXHy{F3rlb#c^}Q?BSJu_HweHRSiq5%hMb+Jvv#qiD;2<#`qP#0MEd+e|9S zXp`@3#k1NtFM%@}7`Jv&^-`vd^r{Hr`~9=Hjk6d%A-%N$_-NmVJwO~it~1MswZ>ZE z??P4mshc(Tx5UY8?i)Cu9luZGaP`Jxv>CD6s%8W*PExV;*j8D5m&A3HZ)@OHo8Pxd zp^i5W^kaQ^B=>>p4PQAY4LWqKTR=GyXGrK{JJoLL2u`Y74!q} zYJ$)OcxgC1b)Xv$(q0CwbhN#VjSB5Nt0KzlW9Fx~)pBMLef36vTPufe&Mv%;wpu`& zy_U8+4qvlhELURBN*h1%sn}ovdyWpW;eQTc9whXR|J2TX=N3!6Xk)JLB5geT9Q_CF zSmx6PJ{VB_I{IGb8jHN`JdJiibJ}x^cpb6Y}VD3-FUaYsF8A76_#`d0Eix?W-tQZHkZ=;#^XPJ$b|?E8^Ww{<)MGkiN56q)qyl zDfQa_G<>DJ;%`RD*+bFA-{|;@V(J(_6jrP!{-z0^AaLxD!Sc>mURI68&`-W+DL-u! z^M=el?%808U4|{>d;aUQmRQ=z-W}Y1u*aU0?;U5=%9;qJ)LFwWSP``6%$>35ldkBM zZs?cp=$SZdf*#DR2RS|7vs2G7XDYtf)84sK(HBym{0!zbS=;!!-nA`9cbu)UIL>b8 z8nv?K(q3E@SA<2}$yK8IBn)Qm>Iv?Ri-);Zan9;UEvpngI4QI}Z{O;X)`?TKex=hQ z<$3(Rs;N;E*YhkgEWXt6_R0GymrmZdR2xt_4PVdzBAy3zz5d z#`AifHRD;nOD{b}Oz8E)4IcoNXh@4wDL|A4&7ooW4QAf4%*-NjXe(8&~7<>US?$kl)Dqv(} zjcz})l`{~Ff}oGy<4nzS+MW%EwLQ;re_@MWEotF%*=5Yn`n{{+or_ow(>cHB*-mqy z8)z5)bD+rRB;Wk!PV|e|FaGnN(||2kD+{;3{p{T}!S|$J2jA%XJVnFQroZUj+B`QB z!!(9i3Y6m+>A=3^+)zIs=NF`}aCm*3yp!?npSN48&*#M-`_w?aIt`zWF&Ey|f#0Cp zmOhL<)0hisyiR$3KXPt5$|RPyUif%G2mO=r%MJ$S1m?q~9o&k$nPu51OWMDD@21Rm ziNS2$mR?zc4bw!q>5C)dgLtmhCvS<`Gt8BU&1}74&8M|1y0=|B$dUeTiX%Nl3(Fr( zOqLfj9O+IiB>&02VvG=C8H6mTjCh{(7uATr|+ zc_%E&bS>w;gZwwXmFjAx%*-W8E(iDReB1M_6c=-p`NtP0yP~;&NIBVWUg}B=Qmv)P zVWJjRdJNkB0U7&Zs`BJ8m#`HX9mhSHf34R-N*$!9l5Z?`{ECHBu^9xG$h#x2tNMJ> z*mQgMYpS)u^6Tzwg`i)!iSf}u!enVUF*}Q!vXUFfGb$0T;gF96HG}?uQE0t?B z*LR$Qe9~ys3H0|8KRSkX9a#6*k$Ux!9gh0L*Eu}Lm?IJ#Phg8})+b|=+#u%?PDl)A zZhZxQN#cv!La~QA+hMg*QT^r@&l_tCt#oLKA3Zy2$`%&WmxV4j>?O`?4a*SS+x)tt zzF7~+U<|jXWh#Dq#(ghweZVz`nAeevg~oH=pikLSw#czo#?VsMDN97<(|ROx(NUGv zmS|%>nll|sLzXf}BL6}Ei=LCX&0la%CugYe%3Q{9QyY?7Rx>}h zRoPkw@XdM^(sERMWU6b+%iPOnrDVy!zoBpYf_c7kdP4qb-JbuY9+>~N9-RNJ9+S`6 zk-N_5J$HHZ9=rT`dGHdGkGr`0_-OE#Hn&s@FRcUa<7EwL;i>Slg|_w(|69*<$cgqz z(g%nPXr$%4Fz(`emiz(}Ke&7sP8u0_w6hFYPqbtAbnvS2UhJ1x`d!8t>GToq7l*px z+wSz7AM?!(tqnW(9>tlVQ?^L|-7?pVY5yE@wXmn-(G$o?^NrX-mpC5nzckbpo=A+` zEAsXo>lfmV9GSPTdQiBl75~k+5qbMUgrAFtyKejC_>9|R9@Y3Tko`df+hJqp-8gZsJq zEe&(68yM;OdLlS2?(53$KhU*nKz~;YYgqa%>Fe4xaGTtgIIGBS@*%P zWLGn7WZ#yn<59h4|Wf8A3`UzOjI864GTY{4W8Mb=k|r}oX{(AR1 zH!=|lo=@x1m2rAP`dH#rYCjCz1 zeU5seYsD?rVJBI4wE9p-yOTD%foIN$>h5cI^6YDOrC+p9+JHS=3vZ0}F-1*!ma;|P zRgz|`Uf7JjGjtrX!5mWtV~9ORkn1Y++{;`aavi6yyb~FYLQYzt@dVNmt9u%YjC2`dzyD1jK1JTH3|R1-Y?L1U&0UboEH`QHoES4blpnMH=SWc-zmN2 z0DRq#o)dkyRfQV*ZvAgm(hmEJW&Kc}yc5c^Ve_E9~ePW1LM>LI%OxE@s} z`uhZR@#*kZ>hs^|@%P4GsK?E^b*FAUs9VoED>AkcUGA&j40JhrGo4G(=VPhgdh~fX z^^7|PKY}TS-_imtn8iLJon0~p0 zd%vYNR~Yun0PK|rY?ajm!(7e7=!1D4h>a43UGge+KoRL=Y!3_ehV!bvuFR_jxmr_| z=R0)xt4jvEs;;`ym6>_Dt7%ENYgOL}S61Ipmm7QH-QIm&CA|l^n&{u%iwE<3CC`_; z-1P5FOCre|<;v)*TutP)_37)f^&+pVcO$Q@&y}voUQ(t;K8vg0BC${Uy815~jQw$? z>nJwIQ9V3kBYnwH`V~pnkiG*vkI~C_cEL7j!H${5x6Q%IlhHTahEa~cM zVZ3z`8}F4dgWU&4VY38>y3a+17(R00gTKvkWQL<&$~`^tD)&ij7O_PPy9Hasuv@T2 z47-K>3u3phh9g>Rnh!PX6l|Jmv2n0t4EqJ!W;4%XD`zB{>!ZYOIWmKBI{lH@Epm3* z$(8{3cLSB@dvxeA`0L@__t-9Cx74nc|bdR?_#OTV(;63`OPeWzm(T{7}pRU`{rAYX z$oUbu54X5qM9y2ha*pl(v$CG$mGx$1y%|~Gh@2nP!`z2MIrnYh&&&C7FL(cIX z7&g4v?IP#2y-6}A^Oy5x#vvl>=()XZTLZAsyEC5eS$77w$i2w?DP-Prqt*SrpUi(` zu^4ilt=lUXip;at^%Uc2k$JH*#fD#s%x56;taCDCeyc?@WPT*Jy2yMn^Yk4u-`%j; zMdnu{^PyZnCG)3|`8Vyz{3FObw)#e7z7|{Ew9)ZFV8b^Qr*Aoc4KFhO4`lq?kq!@Y zNSmI+ALjLs?mdKG; zvo3!Udy9gMd6F}C{t1}IyC3hzYTpsO=QOh80cY7KBKwNI$Cf?GJgA(xBR!r7*1u8r zVeNgjdRc=abh7fUf!HN!LL1<<{rFao+TtFW<356K=or4CSJA&m@ed`R%iEW9Zv4K> z&Q0EzhJI?{YK+lX^ATFw^ayjh2Qql(rKjIhimoejDbgL14=cX`z5F@M`Cj7*HfPO75nv6U8L+}(pJ*q*Vu-S zWTbXkshro>$oCfNA?2KyA@h%pv&me!T&c64jnMJ6Cg1w3;cqQA{H@PjDt_e-f9o$y zf9r}KXEw|=PX+pzh7c6%f@XL_T%^j+wr-zzFK8( z*P=>~ZChiPF<;uNmG*wyDp?zCEgeVRslf7h-mgWM-T@sXZ!>k-szn%cs2|`XdzrcX z58#);WbKul%`CR|cdWzbY@}fMuLyf)5d#ukg9(d|FFR5Ggx27dOqMyz};SW1LgYiNV($6+sXSYz(v-SHV)6J zXU=SJBfLsHtCww{oaRRyp1e!uJ!(6!UiQzlXu$F=x$DuyZA)7>P(~x~8}+n|#7m05 zY2h5}mi5?N?7xyWu@#!v?7+v(^RwKKy~bRO*O%Lff5VDDw{eB?RN&KXT#6ks?C$ij z=<^Evxs4Cv_Z9dP$}@v!&ire=^+wmHj(A6UX0RhYO$Fr# z4OXqYkb^_(t?nZOgWX3*DbG3dZ?j8zen2OWR6(U0bBKv5y0qm92ey}97shh}bC*K< z{i;W);(4SVR2ssaF<@a3*GOG6;k*w8E^T?)qCnS3#=IK--@foze3G22nJ@nqU!|-e zmNl&g9(s7b-~tY;#SYme_%!LZU4l;|ev=&LOa!Mg%Gu9886R$AiO1KIe}SKYTMo}` z9xffn9lW}vdT|r@NK0JlwcME#KaX2-sG9WnqDa^N?L%9($sRKLqvjW`b01xZUQbVV zH9v^nIqs;xc5!(8fNcY?wE}kqS^{@@ERnlj;R@DNjMz5C=(f}F|1|nn`~Ze5qOYz& zcNL(+?n0K>J9uZ!is3KU=-FJCb3J}VbPzT=^H8nyC$D0g)vbuj`u*CtEcbJ9S+%dn zWm%_BNsqoa0Uei9-$Y+y)odXm?~T~@R&<|-IS!@Ww7`M?QmLC3G>y8}eJSt;U`;pT zLnWO=I`>!O_c?gq75!FYxoN?Pn^~hqT9H0XTe!laXN*D*HqUidD>n-4z3@`<`Q%LU`SW!d z?}V?Vt?iR$&!R$76bj&I)bVO<6diEp-uD7Rs z6Fkh&DVi$W+1fs&aRu~6=g9m)+loAQF}|iI>X}ZPZ(6TB_@phTNq~ zp2hfzdEcn_%m~ExY}EA(yWExI(O|hVu8F67IX5a#?tP=&X9hYvmq3$d{yBA9MoT&K ziUz&PMmS|0bvy4`X@BSR=(72@t=^EbxPQZ zoa=qz{`J!{bFekvHr7^-y&`Jj*lBvkvyt=NW0O@z3wnn&*cmTg88xwVTKA0740P(LXnh(y~RCoBkM>e*Abq`spY1 z^d@8o9|G^Vcjt~wHpOtqc5Y%1UDFuutRJbNA8r~>Iv7|!cb&PX)BtxgzKSoAiC~MW z7J1qMjYQTObI79&ir#k9 zCPjB&%JT`@$3WIe1Ok&b+6tb1@H5N=-U6;N7x=39!XH%V?eSYihN!X^^r*I$O66fp zUwCp!gi9NwCbd%kAvZ+1{=lAwu1os4{&9U@R}}NFpXT&-9pjwlOE0&%w$aWnUEI$V zn%&pc@^Pd)eQ}bjXYbxF596d;Sg(By84#VxddpZ3^`OnP&8NLd*^RWZOxmR6X{4Qf zNc;1(L;M8M(l$SmHoH{XqSa`Fjq%t_>}4rGX7q&}ZH~ULmG*p+w*CWjkam}?2YTCG zP^Fdi_G2|Wa^16Xzs{Nj=~I~-If|{e)uMabU8K?OE|Yebkdq!A@v;4~?cL)ioNsq) zLQYtsLWf1XV{d&sIR0ze-PenpA+q-=b4gfy*|yBe%Raqp-o}!&c?Z3`6}}#Vulejz zJKRsJe-6GbMStw-+o4l0#>e-TLSJ}y5?&og=SITIR#8xthO@GI$Zxd!TFQ(g;^tN>^7PI=6O7wyTY?#=FT`u3C8c&*XuI&g~(x z)h`F%j`b(>uB9$d^!^Kx?k4yp{5&V^A$5ZLbJ3sR;M1w{UU~0J@y$VqT@5sznM!`gp{f1^E@8~U8cX4 zQkgnydKTxLWoK?rsZ0rSWN*iplo{g4-h(em_%3I7$vO_Hi-~`C+I2@AKF1f9&KYP{ z>L6>bl9_iIs|DdVi>utaJ+);u>o)f57uF&1d>xW2MNYSa_wvP-`03lg2iYilE3N3mKF>t#us^Y1 zkN*pN_VxQSRQJ#)kk3=!_~i46kXB2Fd}e++W6P^0DO-e}pTldh1x!3S_gCxzFODLA zf}_|e9XJMoW1N9w^T`hRJCCDR{-WhfPH^CBIYEEXivBnH7I-alrqZ{}5goPOwDJB^-%|7E3;UKI#J`8^N#Amc zxmW31qL^lOdyjSTn#Aa&OgIOQg4S!j8 z{AF?Y)Oz4sv$H-h-d&|u79L?eS@D^oeU0(h@oCuFnv4a)48KkWv~7%MjX8Zz2>yd> zbrqY|Ro<(z=9u+UeD7L{@mnN0JjJ}bgYUQU{Sn4dNAU?s-Xk$p_9K5&^)Gc@Z$C0p zs~5eTKNJ58wvqTC8h3I3I;Z}~;T+~hdS`5;-5=HaWNeZ9{+#+_|H@&VM&FF%q7R-^ z9+`uex%i`h?&2OmyOg>4BY%u`Te&x4bEKUqS}T5tBhO8BcO6`ie)JvI+{`L3{G%m2 zJW_dH;aaS-zra;IIVp|2WWQJ$TG-;3C* z`|#ID`UTQ0IrTx3e#Z-AUZ?SRPJN)j{^o^60{b?nK3rfQdtsq6z7EJ(h%e?+E~|2Q z8mB6c^*~NGYacze3*!!*Z*7Q2KBduWsFl{8U2;2Zz~0dR|M~{$|Eld-rQf1b{bZBT#JzLQfrd<$W@egy+NGO zcT+D9a%-$QZl`5Uy<)X>?%YQlQP+r_M>wS=lQxf`>bPR7?c#j~?AL$t~y zOX5e;Cs4F95gO$V&7htiL=Ah#wx8BF;cOI&)l+a1^Z6#jTt|zmb~vX zj+b(GG7i%zcgBG%=c|-E-6+>mDfE-F`%iOZ>+I>At-|uF`n+$?EOTU6CGW9k-bO47 z{B&h~_SjSIb!2CzY_|*jGfPZ(YcJsQO?V3WV1kOysM4Z^H`(jZN0}BaG#Q)cqV;bJ z9_FjJtcNw~U32kz%Q{r?g9LLipHe7mgJk{Pkg)N?=9n~@&m!sA+2HLwJ8IuO*eufo z-!r53%_Th@94C;TNm^n6bPXLptjPSXel~TV4-K>RUe5jtXSbEva?-&&WCmqr_Svzn z8hXx#4)Sh-(n6+7xqY^;TPtwrV1AQpej~Ktn+JI}j=W`yp=0ko>&or`zObwTxh{g&=D_j8F89_)_O?qMrB1WM##NT_-|1l!D$DrCOzzd}-I$0>$ai0J z|A#()SU~{WZy(yiFIJ%l5wfbm$!cFsE>|RL*Mr+XD4fY zjdFHeyc}$r*#86VWBy+3nEueL3V9t|+&`;7w3GB8Nec~0_a(hk^8L@Z&-&LW7dp)s zIrHJsU-SZaWS$$fFN?O4DZD40LR$Q-2K@rn&_#S>@Cv+^AZMS`cHXCbq)f|6&sEVO z+0-ky*C*?$N~UL}AZObbPH&6Tfm3!|-%r*}E}jQG*T{PX|H$q2*}5x`z0VddYFl19 zJu6f4(snZYe6lW^w)4rt`EA*yWm(4m(U-sE|NeaS;kGA44LkGBSoa=$hp&$A={h66 z<*RzSGDUCGPo5cbO~<=2e(&fz&%86Ht{bblJUSN)jov~NqL(0%!Zbhl?ivnSJbgq|tPR|>tICxeHcL|5N?I&zqSD{XaYn_iYj`zu@2QSY)v z9d#~S)KTB|bHvqReA8~x%4(P+Z?^=L9bj&+-C{N3?w!FmcM>~$IQB?9_K3tGYQ|1J z2M&9PA+v(9$ZY(QRg3@ZsyaJ!-+JZ%sxzOl&jwz#IPL=YTHr?*TURlLmHa;#W%sP} zefJ>mjhISa+h^>b+lLH-rXT;QeQBY5x2MuhbCY)1GcA^mzMnWD|06o<=l?UmT>kT4=+IyPzkts# z`N!FXH#6Rv!no@u#$S^ehuw&O`3B;X1RHA^MlNTJ)+u&D68pH-~!En&)v?7w`PyZ_{?q$Im)~x-*?aiDIz@MuLsJjmR4}i- zld@>Do{`>oBUZ*{747YtWi6PjnTet86^qQ?W_}~|_WyThTFN@6+xg#j-0$VP&HRu3 zjh=t=zZ(80Iz)T|vOjkk{55@a60=CvaUPo|iM3fF;xiC`F|euR%V8b<>%e0Ilt+A= z#C6>yF$6Y!hWx>|*m24&INC~xA7EvDPYFIF^4YBTB$4}4-j(L)PJBMC#oFq1HjVhv zd^-r)_0?@V_?dObCk1|dVULCi#~F=KjA-8?#JA} zrH{WC+O7{$9^t|BOAS6=h(l*REVMP`Na@b6bd$G7%iEu5pbXK& zl?Gi!51VlTs)@fxJ@)$7&!&f;e| zMfjl21s8LK5pCH|<5%XeMJU*%T#1Kqc&>NmKG zEE4Y|wyuU)I7P&ocp4gt9uWE>qv!RL%ws(6)lV{C@e%2*Uj6j0S3fm)^;3nPeyXNC zDStBb^R;`?PxryIdkUq0G2;0Z<|1Ra0;?gWwZM{jp3XHDn8JoFN^y9`c;(1nKjeO< z|46r8EJjV5veb#rU@m&2+BCu`u^6R}2YF7exzfq_Wba_s4hxM8Sg(-=ZUVmrxb!au zyu1Ux5xDeG2K+<^JO%hZXecoqPH!;dK4}re!}ynO=!7EP(dN5IY!4*K2|Wr2QqMmK ze$o%VX{jzxQ62~FeeErQ?#KF=JQ6t+e7?U`Rr79GIW(~tG>NTK+-2W2_1mp}$=PoQ zHDWi2yk8i5%@@n&Vl?`e^_bsz*JJwP()_NwrMk^mN9c42-}_&B5C>c6X3!|EPS%bN zWDRNu9R$|3?ltlqz}}UZauPEIAJY>;UxAfTt|_lSj;C{R+{_sMzE~RNd@uAh{%PRV zt?uy)@ak^hV7mY>fyLBS`SKaO6j*FsAM#0@86S=BJdbPlx~qQ%S80O^T`hXD=~fkM zJk!3O&kl$c*q6W*dcwc`id`mjD53q`W47V?3X7^28GjfV@o&eg|D_w{_zwd>%0UG?jznRc8C0HjOYRWeP^eCm-27_ zeh%6^8u7Xrk1dS5HLs$uQLDK-ZBea@*o$S_hV`EY0Y^q3-5nBe{(TDPG*6uG(hzU9IO5sTMru~hz*OaY=;@kYxSckm{ zTf-34s`R+HHwd%ynRM`gb$s>R9EvjC=6Wi6O^A?M9>;YpuQz-Kj?{AEJ(Arh zaU23v7n@d7$a);Jo;|c^!OIFv>T1;8O5F#lY+rp!sE@>9?2M<-TlyNGop5|-K((Bm z@zZBzs5*aq8~Z9xH}JKt^!B5|zpJIccGM@Guo!)T*q5TGg}$etui#_>Kk=Xc3cQT* z8gp`$Jy;vWzJh;Vt(=}aYYXi+)#4*nu?J&B2gKC<9p3qPS>xW=*OC2h3h}cp$tzW?kFYHcp7?Hx%Fa7Ga#-;LCf>6CP4L#hTmChi ze|?EPxb@enjB|V!G|BpM%4zQB$Zi>E#^O@8>lQe8w~ab4-KLibEn^v{u@7Oy!{BYs zJ+88^M-NH9BHP3T4XnRyA}-HPPw>!9p7u@8%rwV$+s!nCJ-fPhnh}rCPqxqXQ=T;M;+Jc*+a!8h9SQ9QaNjyhqS^ z_#xoieQ@aFE5||`_zUoN3&Croi5Fw&NjfjfX&4`&PT4L-OZ&MClMKDZywxxgRu!ToTa4*U^;k77PD*_vV1q6_sAD#nNJa^AOo z&-*bKfB!7+n|Ob?Z^L}wHx^)D$T$5Q^JT8szq}OQ{af-6?8u)B?4Oc<(2w&^=iMIO z9k4WvIQVG8724YJD;VF5AO=zQNlnPjAjb&x&*UY^dfx;Umz#^==jchyH03vp}sy(14CaYb@Vf$d-K?b$C~Nv zV!03R(7{T>KA}&U=KYV@vJGO(?i}v?7^$regmC;Z7^3{;fm;Q}kdL3!Quhm<3S}4ayGl@a@@eh3S(|zsv`il%4 zz@AQqZaD%&rJz3`ZDayLeU?rWqty`!tMs<9B=+bKy~?c<$-qC z+vSCWH>zs<54+U|;zz*GK;I~I{x{z!jIP~@Z1ExQs%d*_z6UB zyrnyj|68l>O*tLsbeVo%`KQ*EbsGP~N9rAqPRGC5ZKY~E$QVqIW!=r&!~tKe>KiN; z=gC5wTWGk(OZRF^kdu8w9@{dDb2a`6WVbbs`m(Um^F$ZZe=|h*!k(gA;fL5+K0F5k z$KOJKD890b`;C2hd;KCHwzF?Z#tV1Q*Zaqoy$8IKh=(ZO+2F-0_HbC?MTWtPt}SU= z#X5xuwpHMH)iSEoE)`@>(}{CyP<&@cJM3;06VhZy7>MxBZbALuqv7C)^S6Il9}&T-p~ zHu4LPYrJ$Z-g#-x96vPgTK5n%chD#2GAc_qBUxTk1y{T3$E9^&kGLF_rfB9Fl-e1t)3a!9(aK*1j8@^ch z&e>@rKazjW=9{K#eQlvb44$ z=|$x}Urw!==Xd0hf7^ppb$KQ@7L*r$_K`_DtHRg44IeG{^n+cU8T2t@C&W3ey_7pm zF`t(?lDNji|I%#EkR(lDyREI!l5h9ewRbM_`*kO|w+*IQm+@&$YI^)>VDNhhDxgdOZ>=4%~5KAXT!STk*s z@5I<`5#$RoVFx26AMxj+$QNqDHgq%d9qd8AFfT08%$Ji&zHslieaw6t`jaohgymdj z<~ulue39O7hne}N4JTie3CkQ|=G%59`J&x<(APRmca9Z0YgY1gF=5eNo!0L##_R;`QV+nDZ*AzybBwjsuw zFNS<^Cag8V%y%%Id_4rV+qxl8^1P1z^XTSEkPg8fOz zOHavn!g?@8$~%$1ERFImF=1u>&3vs=j|6W%qaG*Hqop2+Zky6Xf2^@Gr&A(y$ccAa z12pD*yl^c;;Jec^Bb?SS;86yAw{=g137^)@X^jOQ=Y=mzGU2U#oYtPelYH=W6F#9I zI0H}9JTd(>PotdmF=WiyqP_ZAg^r4)eH4ADd%hjW{M*$5o>sY!4e%V7dqIHbsN4$! zJS}p+A%OiJ+@}P1zLxtf0Y-V&>@jDH4^f`@vZTDvb&sk+*Zo7UmU##EcJD2E+hXLk zjTpnZnO!TpX-eiMJe(UubGoP4l2@OHU17vHVa&0)Im8)GKOz2Q#kk>LS_mWu8w%t5D|ZQm?BU#(EiW!%MH7oXK=F2POuk;MKgb0_bt+GFYjuD|!4i*Mt`nSGx0sb?4F(Kn8vkGz`o6Xsc~^qt09lZ)AV z(l=svu2GAkoZF-y47k!M^eX=cvEFGD`^E%RW7lmwpsS%xQ?aW)mGLI~n)%MaXIvL! z{!(~>eY;Wp8=Kv<`8ICe9^|aWE}`5L$yWV*zM2qZTx>nw8D*S^?Rba%Q)E$_4fvw2 zPFcfiq^;4;P}2Ip@G+Qu^P1$}MmxpUGTyK0V#MJv($z5rjXu8Kq~GH*)*{An#i!VQ zzJK-%ath8xa{@dUz-N2mcXxur`b&S!=2#od*P3Eg8wqa%>Q^N_}{(obsccGZI%=~}o1pkW{{-;jxv`91m zn*qpcOkJtidicANknM}v_(t941$M|#O{5`1S0h8TgNuH1dgh;LV?SOSCAO-xt6F00 z`h0b@E8^R>5~F%+dzO3aiXL0=`>e5McX!t6_BQ&vjVfo%*_svhGc_@mJ-umXNj9}f z=6C+EG*YMzGFk@uEjJQf^eY9FJl?owXaz!J2g!dnla$_-64w(E&0q z`kNgA)x-#iZsI@bBjTK^W({fkCu^>@?C8G5fPDgNN?IG^m5n{V(S;{E7Sv;?>~C7tANVXIJ_riSysR?z?)< zeZc-d)g{0=g?JmX#)L&hv7BS(9I3~(NPn3Hee3!DDdPS!)-GHc(Ji~UOE+xvu5~l` zcU+J%b>E~O22YMoQq_%=p*}?yL?*TwyqnaWcbo^}E$frB?SsFk?jI%Co&Naj1|Q}m z4Sc}Cz(@Wm|1ajhpD_0oNjYhLFwW&L%X;&|vfiMq24Y=E-Tce);VyKWe7b#baRlRr zP&L>MFVom3QwtB8!ENj%cIWB^>1`!lZpeNY8X0_f!*1{eKdg~29X#ACVzzA6W82)s zmB?UxIriW%=Zm^!&x^#$s3T5>#OdCocW*2H=6d7I7Gl0p-^o);eZ?Lc#=lMiKXC49kJuB-s4weu2aCNUWo=HeI`=bf z)#0hgT^nT@yyzcq@aaDIv=v;WU$FigT#zxrMSK_Xug0wp6xLR4xjT{bC$E(`m&-US zFq8A3*`K=;9cq0l&MED+nf5W3*h;Loi5gc@l2vL8t1QwIKQi*%aS5?fmH1KdiQ1iw zK6xm%8#vqm4(+4B7upM*o4#uw@*?(-@Ylzu_rSaDoAx0yfm=tcE==>{)PPUN8hL+V zh4;CJ=Zf48oR{%z;4mWDc_laq4gTn(L0nJc{~7$hLCS6D_zpk8q~bT8D$JYvf>C#w zi#5tQndD@jOstWQXtn3FcaPslz-Jj-<%ZER5_%8Y)opEGS>Q?c|tVw>$l*j24 z&G!FO^2prwq@R;VqpZ)&vPMzXu}(VTe?=zl1YdudNMfJSPss#hF_SmQ#57+TnYe|t zPbO~m!I6o{zBDp%y)TVS6#CM%^Xq(RWMZ5zjZ9qQOCu9k`_i=YQKXIfS0xy2Tc`e_ z_iInK8-2cy7@RoAmkC77Oj< zPv6?JmSHPAH%i;{+cDZ6vC+h)sKQn!?)Bh5rv5tpPn6Zh-fQ`Ov-jIk*b9llDzlup zMro0c7Z#&KW$j~Hn6@QtOIK%;9+#1RO;+W*#Mr@SU(XzVeOk05J8fsz?D8q|+LFo> z+lDoAz??qvp7ET5dPP{*?afVtTOXNc*IF8Um_2>nSUJVB!GweWIrt zkZJW~oU@5IgW{W6P5;-gq&UlWRs-)hs@azqW4r%VJ!O1*MY8#=f8Rt~>@1T;-tUr( zyheIbua0zVf-ikS-DBcnOw|6=cepXt$&F851Y{n7y@ zK0g}^Qjd`S!s&|vd5XENHhje%(>C9I-ZuBz;MRxm0e*LVw$U$ausTOFmwP?)J=SXY zdr18J#Hhk81y$HUMNfj2AE%JX2eU0cE?D1^k8%zJU+rR&FM5{^P zZ^aLd+@viW?U|0RS;`f=NapLL{Nka+;quzv*YDA*StDFG{}4XlPWfjrMo_s`5(wzcUlyPC~#y!jGVk1jXD$QIH=- zK_&@5LQt#`QQKV!xOFFq=wd4?pk@fIoe=9XHr1|lOTgVW6H1#}Z8Nr(U#%OkT14x% zwp#=Knn~1ZRmfmszVGwgdy|_&K%nd{>_xCx_V|~ zgB>3QrX`$}^8s;A%4ydZ={Fl3zKFh;vP(c-2?$ zesC^42-t+2Wr%;Nzzz9n%w5=CbdMGhmhqwtfG!Cy8~u0KFMtK@k2K=bJ;gQojzhyABJRPIJ93G4FvXQo6~nhFojN{*r;094 z`gbAyQ#@%99C7`b7(&p+)5WIJJ<4xtMjLS!2E#M)v$}=4x^DkDx*!)ip}w=3dy12- zd7;**ee+<;*`0UR3=4VR{a#rK{jb=i8P(`&^u{HT>Ku>*d=p>eGD znt(s=N-n?86$xgNMtzN}nS;qI3;e7}y#Ez6>GVu3QvIP8}5ov{3nh z`{ubBGqIhA*Aw>#x|xL@xnZN$U6G@O!uM+Nz4sC4;nZ~n4}5%G!6Db^l&@pcxqtY| zf+p9<6vLIwrKjxmWVVDolUj^*=UkhI%;Q_9*4+K@3p@NX(1#Flv1T1+4wU|VRwxgf zbsla00sVM}w5pw1q5K>3X|L^ggz}Fp{>n2@-FrFlWp2c2J#V=mo*N0Y>{o6b!3|b_A{~#gD2_lio9E3 zrz6|Uv7eD`uo0X8BHLVSKO@_)56(4y{2o2~Tc64H~-H_JJikp4L<{iTHTZ&~RtC#1h+ zrT-}*{mNXk{NoAf4OaRa3F%QQy*(j)p<$NuPC|OXO8-kj`tPjt6A9@Tlc{q8IzD+Zl#Y)NDo@+nF;B? zw$djjq+fiYS$v>EE)_Z%If$Vx?Cmq))iSEa$d_^nbF_??_1hwUxd;A$`Iuvz(0y z={H#E_a>w_Sm`wh=^t3>_a&synr)W9H6cA{r9Y669<|aROi2H`Ic7NzC8U4bN`E9F z{dZRScM{Ssm}{1^De4Z&~RF64Kwb(w|O9pLLm8{^5l5fR+ASLi&qV`q6}R{c^LMmlD#iw9;Qr zNN=>#|CEsamX&@yA^jibndQHckp4R>y*(japKs=WCn4QurT--%Jz%AuNJxLtNKUFcUkG~;r;1x+A|BYQsBJ59Hw~)1K26m>l>4ov&bH#DJ;?7R? zW5oZQqt!o=qdm|0aMxVIS-AnebwA4%*?6(P!|M!yb8Sc2G3%;rFOJ_yI}G}gO?h^`LDDtSp0Ug1Unx`cO98(9 ziuAx6#qoR3$L9T);`m$N=6<3$-Y)l3#qlV2bYDluvQJn1j7WbaCx3F z&Sl+3tgqZGeE)&(wHAE;Mf%0R<^0=9eXmg03D%`wXU!mW=^MV(snd^)8`pPAzNO@o z@yg9YC&Aj@7|A(6w5x-Et^}StTp1nM_g0kBAI{2qZ#A|ci3wRvI|Ia^RBgD?-&w-i z$Sz0D@{_tUs7va&*y;y)X4T%Zkn@am6^m8M-|HUPfnBd(`HeGa3wy1X&}S*%pnUW$ z@!(NCBHwb+VWX2gDs~Nn@7@`lu>hVWXZzwyUEXKB+2X@6uIWk(7UxjE_}R$6;%AeC zeWnrJ#JCN2srKmtD`4O~<|{D3Z`l);m+gzNu3J~jSUfYCJ$39a%;EV0U{{GwBIru4 z^A6)5+NJ*GANjVmqOx<@Ia*{bF*~g?uIb=hzP+wwg?o9~>^Yl(Pcd=8rxIiKaHcPk zPaov$hz8=;arQ#odt+7SGV1VFKs zqdkv*^lQo{-N*L;_mjK_MlFngDEDy-24CIXLY3*wnPOUAK?n z`&ja&lRpDGIu1HIEQEc(xmSm{C9^Yk0{FwY$(a%2lPdnO8ZmzUfx5&WK*x8BIGYjn zsKk5nwMgSMUpRWcCmgIX+kNb2_T_=Ma?ZQxr?S8`+s|t!W!UR|Y_3($Qpcg0*h|qB zqc>Z@x_O(d_YWtdiy-ccTJQI_m2Q*u{=3Wx#cM8hg--Ci9=!f3bEDzF{(0p!U!T`F z9lcCDdpGe*B7S5<&T;P9qD5RuBbWCqVQ<7&8kSFBFGt(gw5Q5vYEM<8XZ+n*{8+2+ zc_EKBmh;}od=PuLv}H<~wr&@+MRYP^Pq6h1(g$BgpFK_9vv{}dtMcyRUG)q7!U6f$ z(o@Sfp{=%_THbeJ$5DCFFZ`6eDby$N-Mqw+P3 z={}1-zK4D!d)$Hf@3~UyES-yOg~ZMOs(Z0asU6k%xOy z*Tw9qx_BDb6=f68ssoIBibsD&;9Q-iy(fBTvB%}o|64!2_rY4?bf!|zJJgd}uxI$J#TFa68lg0Akp5WYj-_t1BNgY^HbG1_}BbfDG5*Ob2Nw5fwO zfl?`0gGrFqD=JOHJRmpk3D!tF% zzD-A0W!c-e>3#P0Z92Lt;Y%uipS^vX-e+&$ruW&~x9NTM_HCBTc*NK_3z<<1t9i^m z=r-^?_e!l^z5m*!-p}P-UO_}ztu%=zj$*eYClJ~4G8vWKsYJ+vBf;`C>j?|g%fN&MJZGS>wMWv=JZNA!wE znTKi)j${trKWt>({mj8s=Ahu@Zy4`3@V*xpnTJQo0b>QP_a50T}xDI@DF%Q$2 zhZ^%xV;*YELydVjnt3>yc{rMRIGTAlg?TuIc{qi6xD))V0vAic#XaER6y_o4bN9|e zAGnxo;bPu}P1{SsMZv*x+LYp$i%Y>rANaV;fsd;kb20Wc=sxz&<#u@Y-cVS zz(MBX)*q7Pk$($svf}%$Q=Ol3x zoO5y}bMor`b8;=`7}+{&_A#zdbHe6fg;#_+UhPTLS#Q&sW8Vg*!lwiu1wZ|dVGmdd z9wPT?B6}SMFXf#)t>C52hiu%GG5JLPaGircO#VN>A81c6f4K3J`NP2RaQ7dNGREWD z{^K!-pNvDMxFS^bUxSPXbna5%Y4dfVwQYh^4!@~=yxV+TzFU4W+r(}lV`1}k`Bsj7 z&F1U!Zuv%S)8XqD&D|z;gI<~oE$;Pkf)@X;(cIr&Jb>mtQ>xVm512e?wPQ^yv~@N( z*g!nhn~StiD>Nor46dHfS^)Z@{r!^ewtTHSS_~h%2>I$}zRiW7-C@aro<3gYu9(W6 zf>Bz0HoS*;cM;h`vgMGc{xxLq^2wY@lZEYju@+g)8fgt{K3N}o@cmzgE<;aB8tu>1 zy0rkdPWvBhjQ+_gHbs05vW1=hUGguNy5K8!)|mBF*#BIi#qYY0I_6Nv9es7oj zS^iCS-o=zpY!1=2(4OA%e@EUqQvPzvKVX)Bjs4F}l>ap4ujHS{`pVCg@+-~q7u$Jn zq5PYy@|pK``}dKzQE+oN`1b`ZUc&mM=V$EAKgjz(DqKCHtp-=CwC)qHq=x;h6M7yU z74E49XFb?xZ(0=pB6d}=p}h(}mvvVTFqb{hvVLIY#lHAFxwD4;Fo${$3{uZcgVaO50rfB@z4b7j z)1+MfJy-6x5PL@M%YE@bP|slW#- zxf|V~N@A9(G*ds>Y^=K^bO1V5e!wH+TQ>RKo`)@&a+^~p8Q9aa!uQjpdYjHjTgqAY z*?d6W1H9XOK;C!quIhr$*!7oEzs(OMPZqI4ZF(c`E_jLh2YO@wGv97AbjMD+)J}u` z*lCxL)@soqJ8in14|-&$8Fm_U$xb`hPJ=$#X;bVp=#-t7X{SN2?6eF!4Z3Bgon@y% zzwERWI}JK!rwzB$Y#&F)h_%%C*whGmiJ^78J)ZH($3xD%l{t9V@!_Jcz(=}}7#_ZO zqi15LmKP|S-)j1SzlEMDhs6P{2xi90iV9RY$3})Oz)z}!Is823u0k*C zWvp!&y2HaMsxE2S$Yc%=0$Z0$Di+=1bn}Y34mA@4)sAd%H3(PCt=jwWtZ>5|g zwkI2%1lKFb()(E_Bb%0G!pFofBcDt5OE}wh8}&+iSUVg!7GKlauHd^I50nJe_$SR+vqHG1md$( zS&4rSem>Nj=HE4pbvg0}u&u_Qt^%0G#@0Skv1?ekm2&+v-I40a_*_!Hf0`>^UF42b zE_O$9DaT*tj`$D21E!O{hJ15e@rvQ-qVHT3&x#bqS0B(rHy=;xUH509bE^K%5HhXh zQ>kc&O%KCE(?jv+w`tj#%Ct5uyGZ{11fNQqhMh}Z^=#=E)N`MHLCH)a>#B51zo4Ei z{epV7^b6|Q(l4lIOTVC=E&YOew)6|?+0rklXPf3fdkM1cUePZc$+q+hXO);XDgSqT z>}5rsKyJVfEF%7|;K337i|nr*qjmoloOoi_gwUO=!K28;LB>PdY{pIb#ydR^-++v9 zmo?_{pBMkEiX2yWka9KGzWILUpXREaSIwA58SCJ#zW=xI|6SmL&@#aV`CnsSZ~0~X zzsvkz^V~nLdNKbBJp*^qMX-Ow7Z>|P-Bf4|Yx1jH#G%Gkv1jAjmbK`-e4AHwm2aNX zWn|Q5iVmP^h8DV?@B5i2?a;X<_5=~5PW;NsV9 zYWWxM=(_U4Rb6eHeOHyEZQD0&^E}bJb~uYRX$yxT@vWtBtxk`m&6^)eX}k z=nK<6KqsF&{GqZ&e4G85)b}7|=eZ)A9%1~}B!&FcAEYh*Q(ELD`tj0(BSW#A#m3={ z6)n}tu1Mu5{;8pjV_cEiWNawptvJk>S5nSxT6gsw?0=@6744*L#NST7|Al`(o)WH3 zc8iT>7W=2yZDJgcp%?OxUs=$If1AwhQS?XB#UASa^L6<8X|tda>}gT@=_A=$NlK4( z%MxUA(p5cw&L}uUJB?$>q4w!Z3}Ztjd$!z>iZSj;?x%Eo8vS{+N$~a&+FM4yDl-iI-8YZM%3RQ%l(5h7*#Vz8f!00HEu5& zWvp|LHdfC$%ed`|G^4tdIRtO?gAeVCvGEjhejhj>`kAVoDJCu#uDW#j{A%NKi+qM} z7-ww|i)s%s;%?h;Tg&YmZg07;;0oi}jsMhg8*RL3_5x!qZT!u~)h*L!YsN)hmtkzC zO!$J}`%ZYzQrceeBx88*+2IZEXz{kZee<;~HS_#0k#-bc&EwaGTgNcBz^6mwI6FAU z6%iZN*2%7j*umuee+#D?Y8n-4nly=S3M&C1M`=aE-_`ID>=Wq$ragv zFX+Dls~ymbedzSFup>-(8XGDyOMtZBQrC6paCTwC+gMV_s2yqR1Hh1t3ux>yekX-B=W%nE^pmo=E>E}kI$iB{0(~U ztI;nWLD&5oblv;Vb?<|Z?L*hS4_)`O=(?Xp*ZnNI?q|_;zk;s&6?EONpzAJ0w`ibS zdovmL4aQ9B&!hfa^k`Y=67$fbEkJ+9d=4Sks@U7D zz*Bc+q==kbBf5Q8hUoT>*!sj6cDh{pY3lYflx|;SfjyV)+5XO`3{$s{?(!n)Il_Og z>85V~N9+TAfqWQUK!11s6}tT=#tg07Z=>I0*ARH;&q(RDYe>JH_KdcT zgV{4Csy^qN_KfDfJ`c2KNT0=?@y@6|dq!`cXZE*eXpFJTvS<9YeLkH%L;5TN>T&Mz{OCrR8zJw=BO_KwM8jLAx9?gZ1m^3pFE z6W+aJeUUI@vcR&h2)&c>NaikUga7OhR+LvtFXxn-f48*>a0E54k zy;oph(?^GWskvP2OAZ)(l6`659Ci1fqv+85W&P*qvkv=G2{uaytvpg1)5Njqh1>^bVNe>RuXuHLa(x1{@%?4JY2#?yan?qF+&OFYmz8#6p?Mv7)WDmVc z?^|;p(fiiiM{JwE%G0;zK4RPSRXS^K;uAcNzHgh+XJcx%*WEK0n(J=S**Ac9tjU|R zUo>t0`FxZ8YK@*7J8Kj6+3%bxHvaUcy<21-+2DRov8n%gtL)3%V%eztmBz+Hb$lPKRedWj{k3p0uCAMe#FIWitMc z+s};ukL+i3ETk&EoS7gBzml)s$vEnC%h z?SF2fd~8*lv2D~m)>r=RQod!Y+HU8)h4OE*%7>=gVKIm49w=Q}a%KZDSl zhClYK*w>uYYyXjUvvCKussqdT+YMSO#I;o!Xleky5G)*rwbndaK z!wm8?>+2?jyy&T#rn9z?^!(vQ&uC;6(ujc`X~^_F)wV!;s__oa6Da0AhxaAgQ|e!I zUSYB4pz{hp=qrd#^%@Nain_!{p$Gqj;6}?Y0sWKUp6#E?c+Qe`i@!shcH20(gYilQ z2Wu@H48muDZFBEB^}h$jLA4)Me7ehXh}#EE^nh!opITo`J3E%0EdxkhPCS!$C!Wc> zg=cD?suR!Tn-kCE-NLhG@i(#XOzl&(@T^(4@QnVv>%g;S@k_Gggk}exHQT;_s{eg* zLbF3oXm-d6&9?8K%HOA(SNlc6)M-rY_5Iss%Lp8rt9<>2f|cwCN!$Y>=L3mdP{W^l zo`rLX{>eehKe-YAoT*X{|j%xwF@rP!7J+nH4GlgdF$jrH*$k@U8LN^cFk@-bpB}}`Z*m#yQ_F(7z z9&{^vq%TsH?2F)kUhtL~OF0s|$YV5~Yo2?!PvTHRGwU@E^~FT zJzLHg^=-s4IljYP-$=Z-671NG5?_w{IOaE|0dv2a-f4@6af2W!Ky+ZoSxY_;v z@169QxE(|F_l7g+FLLyd{T(($f2s4d{q@LtjB|7kV#~{AFHh>q0s}kQQpTZ{afk_A zN4UcJQ^eM|fWBF9l$e$HTq*qHer9F-Xy`KRx@)n!xguu1EN#k5LN5n98_zyZPAgd$ z|K&vdkOa2GGbUEbQHcv8>*A6PQ?B(-(<9~V|8e0T{`zm3;`^{&E#=*K;?<-dRDKfBDz zX(bVSkgJHrze4JLQ}!W&6F%bKzet$@%0J3o=HwA+5C1#kf67^f|28qH-`Q=>zSc@z zMP~ae7n^mtXi1HW$#`ov@?HLaf>h2*S$J5X;gMg!*p%o z&gnZnzn$m0Rqo%M2Ypwu#Sf0vo_KW2*v?(WV_R}2XtT~18qWM{+~R&dBU{cbaOX7= zD|Eu}K-p!ae*mu#Jr)0_`TsO5Qr=#q`u~?-(EoOK-2d{T$VBj1eSdjaB>ZH@L)yK%Q&4ywX?hVJ?Z^Bb`i z!PSJ!OWf3!y&r4gy>9rt8k-4Sm9%9Ubba@h37w_a;P>H~*ixCoz2g$2aMA$u)C0iaps!#RK2R}FEis$M zx9Ar$Zr_`3l+Y%L3EK#~bOT!;KBb})3^S&&5nB9|M~k@mUto=It;9Y*I-L6m?!sdw zzUjt;S^=@D(%5^P<{x!--Nfs(cme&9@y(^p6^y&=N6827)vk#hS;WsXz!!Y9)Slgn zKP^%=hJEiqN6EVhI%?zWmbW;g1RCrGXDd8s%@zMo^o{-Enq{A(tx)6Cc9x18I#?dp z*;bw|Gq&>SVqAT21>?xv5IkXDb+>aa^x}WCXSU!zI?%Ewi-|vsZ_3ZMT-$j$XZEb2 z?_b=~hl4ik-XQOP=4tf;tMW>b_lAN|Mu(4e%V01PztzO~G}$qq#xd?sFqX1*5n1fG zCsX9TqgOHq;CgZO33T=8cvmi_dzr&6AbNrq#d zHaup|(<@%@c{s7ISJ^{8;|%J0jeP&?s7v8VGJD(|cp~egelVE4Sm8;w*u90OOdcL7 z=O3Y||NRs+CD}vl{KXOR`IGcs+LAdul7%dj4gAw+bMRi%cXS(jXq|qh*hHV1;?hDf zcV>P$Ye;OIWhv0Ikt0m`RD23oVGFBa4Dh+iTYls2?fZt|qjF=@yyw7`-{Ak$!#YD~ z(`f#cdH+N5{2AJ`hx;CA(~*h3$aCP9cRX|I^LQ7tq6E?uP@Rsq!W1iUgIJCnh z@z5CSot{hAs=57p_T4kLcQUU<=9jsPEk3e~Jigy$Pj~4JqgEeC?P|o&#dYTr&ITBH zljh5wT>ggkl*CqBT{CL!ntQcwYi{-1(-S2iM)hC{1WXl&B+M;md8w=w( z%m>lENZU9&JMKSa(T`J3`jOr-053i^=|?YKdeQ=oX7i`gijh)89PDYD?o~R=VYfZl{Y+Lo4*{o18%=u?)jMa6d0{q}aGb zPOI2>XJ-Xxb;b zi%vW*N#ZqTX}+h*?@#@Cmd;(*p5orky*n$(_Y~{er?gzgHHmZ?-;vr={=h$nlL{9p z*h}96$l_)>=s8CI%RIlfKAcq0|NCiW6ZpsboC|mY{x4&!_F*LKSD%QC;=kLB^_w^k zlZktGB|h47T_aWeMDYoC=81Z=&;-6s;l72nC$V6Ue&iXOm&O>#xHdjFEYfh?9RL6N zIeVdwyW@?A7e&st#=Y?{w*1iJJNbcuh2F3pg({RO&2S&A-^-pjAr zk%gz4u=^ry#1|zl?HXL3n$XckYz`;h+45B2q$yAB7rbK}{O+WJp<x$A101ihh!&`f1UUihi_&F-`2J zMN0zGPx5|JKR=846a0iR{e`oyr<*@(IbTcW&mPxjHh)%2+s`^z%bx8liaq%R>#$R)b6hG9O*Wc>F`a5p${titahcU)U$QGvjDtj0^89R|z+lad@=L+wjz0)S)6LFEqapRSZ z<5kw%uc7CCo$(u#$0E}V&SR6P&qIA~+*Omo^|Cnbbjcux=p4QBj1tQnB=9udp!6O&)uPLLN z{vdL0;KSrO=^3Awm~SdLDliaP_6c`-3i_b;jKB zuSfdmhLV@yfrIhiMBL6eCib8Ha2iSuI1@N!IpH+<4B?cJ?|&0c+y6>9J<~QgoO(PS z;yDf{KG_K3^ytLv@nVln#vYr39m$P7R%=r0_i4-r#@&CISoFx}axT}Yo3+pvkYn%O zKC7cAu;o?vXkqr{D!pji6s_9}{y{6_ z?NgzF=tX18h%<*?H1a38h=E;6Q|C$lld$m29%f;p9^6c@i88%3omo&+PO@2+X<2jXQkM*zp zJ!O!z(T;!4>V59sw2V1X%G_AW94TS0EFqrNVr-@!%Vz3%9$zW;%nv<}PC%nYXCi(B z8PI?Cw~``j*moiP$JB4Q^UlUEtA#l;VMKb!)^!B2s{~m0$eQxoE!Z5}-JB`eXIBY2 z>?%iJ>C<%t&~KJhpS?YfO(mE0rL0Hv8HEKw&9r+6pPLD8m8?2@ds1qlF|5#6VCswI zjK7IZ-(^hG#cy#`W}SASJ3bM)MCuhfUrT%X^db{G%F$;!>3prF@7IViDQ*8P_&;v6 z88^pQvO4NJNO2YdSrUkF(1u~pJ%)?-0P&ILJ4h+GH;~svQPMa@*;1ot3!Wl_H}&I&!G2`XA*h*_}uf4 zvJ;gsA6wlM=9YMJ=eBxGn5lW$nI3xWQsBbel6Z?U-#2qjWX{=X@-Fi}-H}$vdoGvQ zmh614H0Ch-7iB*8rfHj1n&=z*rH#bLrCJMj%|$N^O^Wq+!WG1tjGeE=qxlk7#oZk3`HFp%nYp_MwGUFGR8^M~f#8iMs6R&ouwH~F9@e-ahz@5gG zz6kc|S?#a7!?IsM+AcOFv15v@LC22i#a^kNv15u&Q}GhZjw$@!fWI$*e?&dO%#R-R z8eP|GkyeX$$AE+Ik1p^z5toMp58F;T4}4Z}c4<%jaiIr##~NboMwkz|RbTG>Bs;Lp zbKjo(+1P~6z`-lQ#bw}RDY&^5 zo>meDSI?NI3BFE+uG{)U8GFImJ{s@Iv+4U>>b2>+Q|^EBC*Z85Z<}Q6aG~$zTTK1v zITp?eecuOt*F702o50nZzflx_)Pbu9D1R*Y>fe$c+P?9wPN9*q_7+_A^L#eX!84@q zw}JyU?F~|{(DT0)efPo>W6=0o+AK7_Hi5?5^Wscs{KL!%>AT`>gRarAi6qeW3X8Vy zgSLwvayz)!hckoAK~5S!*c$kZ^$eTQGd$m?XDDM|#;4J%EVlCNj8{LsO3tU#Gkozs z2GOfb8(hyYSbt49&$M4i`^T&G{&;1tKVWF}uZ>z1->2658OU1ctoKEy(0>gZV68up zUz)lpksrm@GY*_K<(RQe->2NhG4^^jJ#Rm}-CVB?wl*Kv(S|O{fVcGeXjtRElXPV} zb*#-lexh%V%333lzX_gdG{Q1y%~mA#$^42FHVoUZw<7R zIgz;LTq&+7GvfiwIBq?%pSyB9;_!LmK@>%8EuXDBf>N0oy=9L4#{Yt*A;oz;Bnxw;#CU)yVGEACC=JKcdBlS{K-B z0;fN!`2Md!{+2be-?46+{72`yEgd>Kw&^P5Z#xfmd-y#39zD67FOfw&fk2O_`#4jS|%W%FIySrk^q#?t%9q@Ivjn=xu!%g~;%)Bq9?S))!QZvPNk?n?ty!IP^k2~v>A+0M!Gp>)#K=kXD?5$edCB8_yiKhS;bpyRC*;ruivs6Z=1HB_I!)Et?(kVcpA)eB?{1>b!Q}K_8GVZzd>)4U zJ{&oI1oFJjn$pXf(j5}t9MLTaE~i_#d>y!1%=~I}%&jHV(WeuUxs}nh9yv<#Oav!$ zPa`w4W@^qxA0l|SW7hv0nOSt3w#;mR7a}to4w;$tN3(X%lI}M2BSC9TY0J*y!))qE z`s16-Z;_oYgJ%mI1lOX1_oIm;#eCNOJ?o-2PtCmG$EMGnmwIKbk{I4Omhz&r> zki7vyuX1=78&W&475q&n@8EWm^p3Vqfxi#`cp(1v>NmjOfQ7%$yxj9}LVbDpw4qvJ zN_~p@HVsnWVDsgN)YrXfDL7dIZY}{w7qiA(#QM^0tuK?%i6oPj!ncv+NhR+n@OLzJ z2M^~eoAR^Zuh`2(-d)NiG&JwrLL+4&dJERWqT3T+@4F4}BppA_hi-4&-pUvVy_7X) z7=2z09lPPy=T@N83!`I?nL74fn)&V}TD`=(k^f{q%Co`0qN|g89+&9e<#{WY_<@6S zWldZn4@-I}m-vIqb0ybqWY3Okp`{mDwDfYVJ4M$0oOz;X=@u;_?fqBUoBJ=mmgp;K z#wql!C0EPySw=1MwA9q09C7GSj_7?llp~40;C|{AeE~9Q#7o)RZx3&;7+rj+ty>w7 ze0uWHkwz=|qPJ7OEyEU@v{&>?rk?EA z8NaQJ-(kk@x8!S27{hADkTFqXD0&8YmV6QmP{u@_Q+Temo^_tX*0bnZms-y<{uMmG z4NR2%Bw-Ad{lqbbxgO}k`)LO9JNL7UlfeFTJh95-EBHP<@_zVY4Lq@0@xyOs#u%4& z$C$i5!qj=W;GItWZQ@u63{OW(KF!?z%426nOIm*4^YDw*`&sb9f0R1UfERA3&hAZD zLnD?$E3SfOTnX)1hR&)q+~Y|yY04+?L-8lH`Qcn>$qigl`tfP_-0L&{5A(Ure?6aT zWv+(v3XRyKu5kN!EpGF+81S)qo6YBPn6FMACoq&bZ1Xxd^XFo0N1r91`|lr}8E&S5 zC&K5X-Lq&@E_BrLOR)IeAhOzNzxz-4&drnAD` z;O_~~u%<3-gs+Ze-2m@9W#Ou=>q+E!bcIPC0jUp<%C4UiS=d5;w@3Z2G7f`O^i_plP>Jec%mqOX4i!I)` z#Nv(LFnQzI^eZU5@yBD06P~l1T9?c77$ zMlZZE_UI^+H&%0gnr(mBV)DjIX*+&G*dT_c$DMAipm2+Ct?<4QV(>-bg#thJVRvOq z`j(_FwKl}o(+RIM$Pk>`7U{?@GCFoA8|~z2U!_Hw+auxeJ2Fo)JTniTSqjh0q<>pely5=r7(X_{s?5eDT$>Myp%yV~kV4 zU-%=syXKefAbvjjv?qD~{0sPSplj=J`wGzWHGlgO_#^Kof4m?5ILc^ujEnF`8IRNP zM;Q+V+actL35;bWwq4dSy)an|OmyHN|H-~%d6s-)Z_B0c@~mvQ*0ackjn=c5=Mw8# z;8(%34X-EA&G~sxgqPAo0x#wJ@(pkSIxKQ)?3J-bE&dp>SHO4H&F!R#92fI!%@n=l zVc@n5_y~+T^GD%xF}iOpZQ(4wW~YVE!>pz6Wb6m$;~4|jA*Wf>-q}2mkN2(%Sku~j z%EJEzea1d1Yw28}&Fw|vOE5HTK24oB3{q$B+Q+euzMnd~H+>Fzdo^@-IrR4`= zQ}5)Q+eZ4F2~R3H{hE54y{0~V@&9{SV=4F{YwD%_*VNmFT2o&Ro}O+^{RPLGI+wCP z4Lt7qzYLEdWUo(xg)Vjn=6v*fu5c8en5aYcGJuaQd+h>uoHCcdE>Y%s0UWbsFk9d7 z9BGpGbZdl9qi@*s!!wh^e)!U7qiNPWF@#i5`32K9AsDrL?tW$uASTy8jP;3q|Z|4rV(12w6ofySM9rf6pjFcUt&JOm2U+UVCSusMp=F9l6KkW9VyoBws{qsNHUP3>`=7ii4k6n}^`_J)x z!p9N0LHwVB$PKNmvqc`XdE|d^)^q#i$okalg*OUM6n-dogX`1omw&>O(Xs$Pi3J`l z-ryPECAx6&kJ!y#S972Igq9C!YtsY17LgyDemukIK#x{=m9M4g#}^x&_=j#4V8ah^|W7CUAe~^SienvgC0S?llVT zQN9b@JFi_Fw)M9*+&>BCC!nP-1NXOoTx#_Ebc~@ROMB1zb!Kb_YXEp~9?!ekPuhM_ zI^V||`gwoIG`OPQn_zVOMvFvO`66#UdX^DAsCS*(qD4M>G{cA%r*xg#jUD72Q}^qF zFTUY%E8W$r$Og7Nem?CM{jbiLy~TW~1+NXpUB*E4Y)d`b+%R+P5Wc@L{E5BHH6vlJ z9iFb$%fIrElp}tEx%?|KdXT$}b0c?=(M!0CjPB?D0XQmkyg%9(|A@82lZ^S331cqp zNgVGmGJ5#^83uGi_zuq(8?r8v@e!Hxr_i>O$m}s>&l8hmU!Skw3DTax7QdUckI-L6 zcrQS9&p|F-g}mBIJH)Rm{OAS7ZpJZj3`O5Klnmbqt|=Y5)&D;-mM6f~L-0a@r2!0U zfngXJ9s-6je6qb33^x7=p@LoZiatD#|1Bd(jliGVcwN`wND0dOD zEW0<|0AIcy{=5=CeI5LI1-$%P&JZqJ3m;efT=DdSqE|`f`zZ2_CjVLdmj*u{gWN89 z6?7_7wTQ^>2uw=jEvuzF;=wC#CpLu=b_BQB@*my+W@}Cn;eM^Z&=TE@zyQXME#-OqBRCw%j!~ys$ zc&g%)%=z|9M9-2G?wMlgS%|q=O1qT*;YF7J;mukknSPvoebe@>=vvx;oT_v!htajP z|9E6?Od9NH+Z?)xT=pNWg=Aj#w9M#h$J_&O&HEUpMmS78|#^l2bmq#B1y( z=KoscrH;AD#@kbUk+qsO=PlaVPCM3W`kW4QFR^PKI+-s}?mtql*!`s3gTuPo;T`Q? z(jslc3)i+`BhUJZ)Hg!TElv|1MLYc|ecR#>@Kn*)DEP4-USzTnH&(Q~K|jUbVe<>o z-`F@4L^k*@zBNMIBxX?*+NQ%Fa-nTbd?^B7WG+fxp>bzQ-$Vw8Z2>oySa@-*)-CHi zp=s^cYo;#Z$G`yHP3*tM8_+xMe6>>ED=S2n=| z*6?oXZyrW}GsbA&(SNMF;G10|w787(P&`2Bn~Za<&|GMKyJZi`Lq;t{My&)cqLUH% zJ8yJ<_?#mCjKD?y6d7@yBVPm}WffpolgJ>}5TEO_Cw)6=}OdtjY| z@s1qo?A}xc{k{e|{yFIR)zJ0j(EY1e!v_wyfIJsdhe0(-H<4V73V z5---(RF#}muja{D#;KUX@3gz>+lbqw>&!#$Ze*X$#5;#C5Cb;7DUgLPKk)|JreY6T z=2Ni;MfY8C@4YYJtG=yj|Af%3>~m7ju8E-vo>R}#LeptW2XRScjmO*%ts*YWJLm7n zl=Befe2q5tnf#Em)OuVat6Z$}e(3T=dRY6(8Hw+>v^kgXe-{6$wgxhk-u)_YmYAt! zsLvaJtfjMWa@4A7fuY-$@yWlMapuv<9*t3zoQ*rryYA;DXJY` zryYB(cI;wo+VXwz1{tG4>O38s(-PoZ51a#T6V4^v6X84!IBUf9jedbW1KjZ&+GY^D z-XKOuJ8f7-yQ*o|F?>*^KXNvug3ZWG1)Jd(Y-A7hV6YMUuJFDN{f ztDJ*HxrK~DHDe^Ok+Htn>icTB4^n2L|E>6^**JF8+aJfSqwhYK_PA>A&nKz&K1ZA^ zjrKVGU`1xp*uQb2$&4#ImbkK}&L*R&8lSQT6>OH_=k z1HdToTyb3V2CB}tOc*^yoniyJfIbaYcP{%VgWnwyk$+`>%n0%Yp7U@P;*#DyBf(uG zB0dejnQhZUBG;rZaMx!I(vQ=@XRD+A*aMHI${YkIp!H2M4|7M#K9lsOXT9h}lhL^p z;QL0*-F-PK=JJ>+M@=1SAu?*&u4*mpq+kNWr)9W?aO?p?8hlvwPC(5zTVM>kDoW&upj>z$@g!Av|)|a z1}|+$th4zvbv|s@S=hhMV+nNzK4qQXI8B`!Da*#SjZ@JrGv+$;uohhCAO@41dvqnV z@qVryuCZ$VltM$QBt9f_NBktvQC(x)=wQ*bubG3LK~llkDlA?Nr! zdWAcEFu!@(Cognd_Q?yL2rci_`_HpY%mbk@vX9=hb;_Rku}yb>-1BgjTbt9DmfrL{ zY52L%dB4nM*+s_>@Uvfbt~GzYG9@H3ftpJOZJg?x7<)$bdw%@x|VHw-?Y`;77∨{v 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
  • Cztr71w~n>c>KiLNXMf)pz7;#-4%he&A3hq$ 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
  • {pjs?wqF!qpdi8J@VcD*oJo+m(3PnH}pqVp+jY| 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 z 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ⅈp;G%ISX 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 - - - - files - - CMake/sdl3-config-version.cmake - - gQ+LV+T54JMbmVqczZwWryOwVns= - - CMake/sdl3-config.cmake - - E+bsKFeYRozn4nSWM4OxBPxu3Wo= - - Headers/SDL.h - - FTMTHjsuYteQonu++Ckywry5GVU= - - Headers/SDL_assert.h - - P0NggofzAq3POji+d/Ff5sRjoCY= - - Headers/SDL_atomic.h - - ix/kK20wL//FZQpVEACluxR8g84= - - Headers/SDL_audio.h - - 6VLe7o8LZrzIospLupv0FgnIbjM= - - Headers/SDL_begin_code.h - - 7G18WpoAb9cfZCsf3rik/xI8ZtA= - - Headers/SDL_bits.h - - 9GKUlmUdEkM57qkENBCuQNFOmZk= - - Headers/SDL_blendmode.h - - kY2sXgPn94QaEvGR7lxj8R2RRO0= - - Headers/SDL_camera.h - - /sqKZTtQvj7rsdkz34yMVHEycwk= - - Headers/SDL_clipboard.h - - jdxic1IegrdEvs0uRuyXnjLLlxM= - - Headers/SDL_close_code.h - - stpI2IKLGwyLPg+/VRffIpnJprU= - - Headers/SDL_copying.h - - gJU9ZWFTfu1EWAYO8Eou18UaQzU= - - Headers/SDL_cpuinfo.h - - 55rHaPSpVLQeAZMVANVT9tdXUCM= - - Headers/SDL_dialog.h - - kKKCCkyYlc1KePFlWyj5ew6qKiM= - - Headers/SDL_egl.h - - DFPtq0RjCP4+3UsNLTKNq6adAfI= - - Headers/SDL_endian.h - - hRBYGpJQbPcJHbOa+tk/zLs1Nwo= - - Headers/SDL_error.h - - Ela9DWG/EP3oPMx755ZNrBYmu2Q= - - Headers/SDL_events.h - - bUizFrQhB49dyuQGW5Y0mB5bXVc= - - Headers/SDL_filesystem.h - - usWcz40Sp9rBZ30AJiHJqpvLQFI= - - Headers/SDL_gamepad.h - - S8VEL/ZT27PyCVaH0E0bl4bVjEQ= - - Headers/SDL_guid.h - - +qe4pwSeQDilfoGsQSddhHV2vUw= - - Headers/SDL_haptic.h - - spxndIYWTumv/KqEL1upOaaDbw8= - - Headers/SDL_hidapi.h - - MDTprYwZ0155/rrIVsmAcAHaijE= - - Headers/SDL_hints.h - - 5EwtyU5lf9qyrG2N5/cuACo5+3U= - - Headers/SDL_init.h - - xt+XRyxBSg4hKXoTGTbq4rmw9fw= - - Headers/SDL_intrin.h - - Kq1mo1fZkIH/HKH/amIPdhoTCh4= - - Headers/SDL_iostream.h - - znvH2dvHGuYAL+LrvRzeIQlc1Kw= - - Headers/SDL_joystick.h - - LDFa0Vfu7aUyFrXweYz61XMAtSY= - - Headers/SDL_keyboard.h - - 7bRCUW0PYGdiT5ALqTxyuN8k81o= - - Headers/SDL_keycode.h - - 7nrB/CfwjugeoW8S6GSafPAhCcI= - - Headers/SDL_loadso.h - - 9X7aeCQBaGlVYLl8WHChoD+y7oE= - - Headers/SDL_locale.h - - 3UgabWi37OSUaR5Cv3ykSpFRSFU= - - Headers/SDL_log.h - - AjGovpbmz2+Zjg4vFoA+jRln9Ag= - - Headers/SDL_main.h - - nM5LWIZF3HLAad3qVK5YSL8tPo8= - - Headers/SDL_main_impl.h - - /j/z5uFhPx1k4ignpIT7OuI9eCE= - - Headers/SDL_messagebox.h - - l3z7HIKvgvcl88uPQgwirKUBGxQ= - - Headers/SDL_metal.h - - h/b2709w5AE+fKfTbka2JJvvqDo= - - Headers/SDL_misc.h - - /UKenlwt9bM3OZPOLaAefIawb0s= - - Headers/SDL_mouse.h - - U3/L2aFFC+IFjHHspqA/dnmn/tY= - - Headers/SDL_mutex.h - - wUS9C/TOUloJjZlCpzUTJc2L3Nw= - - Headers/SDL_oldnames.h - - qROTHGOa/EOq6psC86LmkXZEgeA= - - Headers/SDL_opengl.h - - 5XjZdn58klM/ZH4xRL32kWFvwmQ= - - Headers/SDL_opengl_glext.h - - eOvalGUielSzNuOWWDLYkwqpYrg= - - Headers/SDL_opengles.h - - gG8fFwXRxWfFzL5XD2UffDRXZ3Q= - - Headers/SDL_opengles2.h - - AxfYXQsD0wpyQFFalhC2+H+bbJw= - - Headers/SDL_opengles2_gl2.h - - GbD4M9ZIR9sxgLX4G8T/ojLVQJk= - - Headers/SDL_opengles2_gl2ext.h - - frTvd+EfShO/uonAvnnsnPkqc80= - - Headers/SDL_opengles2_gl2platform.h - - JO1DB28zz7TCz/P5YCSvV1PaqWg= - - Headers/SDL_opengles2_khrplatform.h - - mBjqEs+5bGC9u1ED2M93VNzONPQ= - - Headers/SDL_pen.h - - 682iJ7WBcXPP59n6GotWTTLbcF4= - - Headers/SDL_pixels.h - - XMpENyf+JyXMoOlgLXvAVH2XWUk= - - Headers/SDL_platform.h - - ibx+rBzgiofjabvIoz74IR6I520= - - Headers/SDL_platform_defines.h - - /Kbr1IehNE5PCihNTCISGfpFGQE= - - Headers/SDL_power.h - - VXRD8swjN+SVSGXhEHbx5kJjpws= - - Headers/SDL_properties.h - - F150c1qnBNLBgeEUC1TBC6Oouoc= - - Headers/SDL_rect.h - - 8qzy2zRniQeliH43voxw/RVwLZs= - - Headers/SDL_render.h - - E42djJM4TabkF6rgVFoXXb2e6A0= - - Headers/SDL_revision.h - - wPbbJkv48GXw7JirykuAoX/HX+s= - - Headers/SDL_scancode.h - - TFln1sCjEKyQIpVx9Rrexg61/tc= - - Headers/SDL_sensor.h - - 9tubC8rImcEZ176ITWeqmbIEmkY= - - Headers/SDL_stdinc.h - - GK+yk89W1wKKSwfZinmtiLKnkaE= - - Headers/SDL_storage.h - - WMFpkEtzGQBue7CMmxa0KEGpHHo= - - Headers/SDL_surface.h - - OkLZ4CQFo0/pQ8F9tHoo8Gdo6c4= - - Headers/SDL_system.h - - p/vP9wu1luKvxk5pOpa7c+G+AI4= - - Headers/SDL_thread.h - - zj6XYOdz8AUI1EPm52Xzvy24l8k= - - Headers/SDL_time.h - - amXdZSZWmQpHKsgNNVSx+Dzf4pc= - - Headers/SDL_timer.h - - q0F4Eu5yrr8qahWsIiPYFFI+S7U= - - Headers/SDL_touch.h - - akfk8DSVubEtG3EbGDEif0lzP4I= - - Headers/SDL_version.h - - sYkB+NDCq7ZZF0DlML1zmn+k79A= - - Headers/SDL_video.h - - tC+nlvGbjtXBTDtkNVqOSFfwms4= - - Headers/SDL_vulkan.h - - /l3bNRmSicwCYWC83cV/5Cb3tjU= - - Info.plist - - U6d8MZfvzpGioi2hzmtl6Alh7Kw= - - License.txt - - A8VTYHTg+gsOssUp337xdGbdHW0= - - ReadMe.txt - - fmvVN4l2bp/qrM2l1v1dfNxJRyo= - - default.metallib - - a2mo7WO50E5tbglYvQP3J9ig25s= - - - files2 - - CMake/sdl3-config-version.cmake - - hash - - gQ+LV+T54JMbmVqczZwWryOwVns= - - hash2 - - o4od03lMXeFmSf7XQVrg+cMoEnzDAA0bJIE6oslEQe0= - - - CMake/sdl3-config.cmake - - hash - - E+bsKFeYRozn4nSWM4OxBPxu3Wo= - - hash2 - - VxylhJ7S86lzsQJvXNKSHDGFR01PL4b7kLkIhMAayCI= - - - Headers/SDL.h - - hash - - FTMTHjsuYteQonu++Ckywry5GVU= - - hash2 - - 9aNi0GcnRnROa/pxub1yt6Svy5od8xyHkKILlFr3Id0= - - - Headers/SDL_assert.h - - hash - - P0NggofzAq3POji+d/Ff5sRjoCY= - - hash2 - - pa3PhUKCa5zZ7qBkAbKi/VUMsQ+KCnvkgB55ZJweMOI= - - - Headers/SDL_atomic.h - - hash - - ix/kK20wL//FZQpVEACluxR8g84= - - hash2 - - 0ikeN0T0/8NBM68wroRmfzBcVy1b/v+mdKfk6pONi30= - - - Headers/SDL_audio.h - - hash - - 6VLe7o8LZrzIospLupv0FgnIbjM= - - hash2 - - 9PtlNNe4RJcxA1KUpmVf0CCaOFD1RKxJ9ePuHzkNgj8= - - - Headers/SDL_begin_code.h - - hash - - 7G18WpoAb9cfZCsf3rik/xI8ZtA= - - hash2 - - A7wqJrpVG9rddmswfQLBTYkLCQ7OWHgcK1ERDOYFxF4= - - - Headers/SDL_bits.h - - hash - - 9GKUlmUdEkM57qkENBCuQNFOmZk= - - hash2 - - 9qfqBJ/8ebcazXzN5LJhzTpcuAgTZQjBDx2FeM09CpM= - - - Headers/SDL_blendmode.h - - hash - - kY2sXgPn94QaEvGR7lxj8R2RRO0= - - hash2 - - p6JBtjwHFvidf/5GdgqM4oRxr4zeL7mYYVNGlyc58UU= - - - Headers/SDL_camera.h - - hash - - /sqKZTtQvj7rsdkz34yMVHEycwk= - - hash2 - - 9IltUNp+OEpKhwiiu+fveWW7394bro/il8j5a3e7jgA= - - - Headers/SDL_clipboard.h - - hash - - jdxic1IegrdEvs0uRuyXnjLLlxM= - - hash2 - - 5fhZNCfIH2MBmFqmlngmUpV1hwgO+xBgBDptoi0XyzI= - - - Headers/SDL_close_code.h - - hash - - stpI2IKLGwyLPg+/VRffIpnJprU= - - hash2 - - bdZE3br3xGggRwF5l6xU5W9vjQUgB9p4t+10F5SEhnA= - - - Headers/SDL_copying.h - - hash - - gJU9ZWFTfu1EWAYO8Eou18UaQzU= - - hash2 - - vqH3+9MIb2T5AP0+Wy4Vl4JO7kIr5B/FlRKGbOVButE= - - - Headers/SDL_cpuinfo.h - - hash - - 55rHaPSpVLQeAZMVANVT9tdXUCM= - - hash2 - - r0S+Rn9dRrduxf6kk14asFCYsaBsnE241geet6TJY2s= - - - Headers/SDL_dialog.h - - hash - - kKKCCkyYlc1KePFlWyj5ew6qKiM= - - hash2 - - p8ld7FxtmlwUpxElqKv452Dw0hixH9S55FtJGYnQU28= - - - Headers/SDL_egl.h - - hash - - DFPtq0RjCP4+3UsNLTKNq6adAfI= - - hash2 - - 3bqSsp9JRnF9dLy8lfkfkzv3v6QU0IR7rx35nmXpMGU= - - - Headers/SDL_endian.h - - hash - - hRBYGpJQbPcJHbOa+tk/zLs1Nwo= - - hash2 - - leP6qVZ8JVFkYZxzbeCKbYgsuGdQVo72uAVU3UeOmjo= - - - Headers/SDL_error.h - - hash - - Ela9DWG/EP3oPMx755ZNrBYmu2Q= - - hash2 - - /p2iNoN6JaAaN0LyZnqVb0WBefbZGv7OxfxIUiLxvrs= - - - Headers/SDL_events.h - - hash - - bUizFrQhB49dyuQGW5Y0mB5bXVc= - - hash2 - - bVVuJAyhkuHoa+f8vgRVzpWfDqL1X/bc3DupoC65N7E= - - - Headers/SDL_filesystem.h - - hash - - usWcz40Sp9rBZ30AJiHJqpvLQFI= - - hash2 - - 1zr9pYjnlG3v/QoNzQVvmxufNzGn4LIFiB1l1k+xV9Q= - - - Headers/SDL_gamepad.h - - hash - - S8VEL/ZT27PyCVaH0E0bl4bVjEQ= - - hash2 - - dPhusBvgBj73h1ZuWsGsCVHHMzXZUlqHnDnb1dMYhro= - - - Headers/SDL_guid.h - - hash - - +qe4pwSeQDilfoGsQSddhHV2vUw= - - hash2 - - mZwI6lGgX6SKgxGS+EoWFe0xL4oohP2pVgPpT7kQXjI= - - - Headers/SDL_haptic.h - - hash - - spxndIYWTumv/KqEL1upOaaDbw8= - - hash2 - - m81Pi+WNNpjGpsLWM8EkPqolbvJ8cpdj4tYjo4YlKtQ= - - - Headers/SDL_hidapi.h - - hash - - MDTprYwZ0155/rrIVsmAcAHaijE= - - hash2 - - hvoNAXTxbTaxT5ZiTZ3/v5VVNJFNGmfMYNsecfet2iQ= - - - Headers/SDL_hints.h - - hash - - 5EwtyU5lf9qyrG2N5/cuACo5+3U= - - hash2 - - 0vZJYHQeQCkY3vfqrzCA13jR7Tg2H9WSXMYad6lK2l4= - - - Headers/SDL_init.h - - hash - - xt+XRyxBSg4hKXoTGTbq4rmw9fw= - - hash2 - - 7LhP0O26ntkrZdPcCuWRjkXm424l5LA9FQOJtT1i23g= - - - Headers/SDL_intrin.h - - hash - - Kq1mo1fZkIH/HKH/amIPdhoTCh4= - - hash2 - - LwGY43+m8i4eQo9+5emflGxQ6iiXTmWXnEh2BmR/sts= - - - Headers/SDL_iostream.h - - hash - - znvH2dvHGuYAL+LrvRzeIQlc1Kw= - - hash2 - - GnW3bR48TuvbDNr0hCg5bl/TDI3RDy1ttiGHSzFT5i0= - - - Headers/SDL_joystick.h - - hash - - LDFa0Vfu7aUyFrXweYz61XMAtSY= - - hash2 - - 0nBglvFxiGkUIt3RfEezy5bXSmJXUxmkZFciIUzpzRY= - - - Headers/SDL_keyboard.h - - hash - - 7bRCUW0PYGdiT5ALqTxyuN8k81o= - - hash2 - - j79zksUOi4vVrBvrnPgQJRD4OIQh3UrxdLRuEglwpig= - - - Headers/SDL_keycode.h - - hash - - 7nrB/CfwjugeoW8S6GSafPAhCcI= - - hash2 - - dMX0jYn16Lfy0y7tge9wQX8Q+ubJSxOeESV93wkOE9g= - - - Headers/SDL_loadso.h - - hash - - 9X7aeCQBaGlVYLl8WHChoD+y7oE= - - hash2 - - Jg/UDLpydORtxkFxbz0XhfNF2Eu302GUG1itkizeXjU= - - - Headers/SDL_locale.h - - hash - - 3UgabWi37OSUaR5Cv3ykSpFRSFU= - - hash2 - - B9dUnAsKgcSvvP+eUqf+22xxGX/OmH5eyeBFBSJiDPY= - - - Headers/SDL_log.h - - hash - - AjGovpbmz2+Zjg4vFoA+jRln9Ag= - - hash2 - - bUvABdplbCd9/U2eiT2pvPW6VBjJODvBDf8Fu6SnN6M= - - - Headers/SDL_main.h - - hash - - nM5LWIZF3HLAad3qVK5YSL8tPo8= - - hash2 - - IJWH/4Oc+C0x3p9ywKE4u7Hu+SWaM1JorQRf7hGqmIc= - - - Headers/SDL_main_impl.h - - hash - - /j/z5uFhPx1k4ignpIT7OuI9eCE= - - hash2 - - Ju+WlVFk6UcLLVDkNB5EfpFUqT8U4UboWRfUf8TpC0w= - - - Headers/SDL_messagebox.h - - hash - - l3z7HIKvgvcl88uPQgwirKUBGxQ= - - hash2 - - uCj0WyHGh8ddQKtPMVQZWCqqsGJBmICQIPJackUC7gc= - - - Headers/SDL_metal.h - - hash - - h/b2709w5AE+fKfTbka2JJvvqDo= - - hash2 - - ZnJqoHPIv5xmwZH3Ya/X2Ck2KFHEJFusU9D7jf2SZmw= - - - Headers/SDL_misc.h - - hash - - /UKenlwt9bM3OZPOLaAefIawb0s= - - hash2 - - 6xTiBSCOYB6LgCtJjrtEPSu3UNlBDOJq5Ce5PR6FdQ0= - - - Headers/SDL_mouse.h - - hash - - U3/L2aFFC+IFjHHspqA/dnmn/tY= - - hash2 - - wq2m7lfzfam1bamOmxGBdhjM15QZoabP5kWs/nKh25c= - - - Headers/SDL_mutex.h - - hash - - wUS9C/TOUloJjZlCpzUTJc2L3Nw= - - hash2 - - mrt3RuUB/NshrAhNF/Nw5GyUhZ/NS7QPsYOLBhbSQV4= - - - Headers/SDL_oldnames.h - - hash - - qROTHGOa/EOq6psC86LmkXZEgeA= - - hash2 - - o8g5jafePszDFnXDKO06Y4WMXEF4kFLbZUotQ8NfiR4= - - - Headers/SDL_opengl.h - - hash - - 5XjZdn58klM/ZH4xRL32kWFvwmQ= - - hash2 - - r7KreHSdayrs85RILI8Xgh+JizNq9Vuze3oi1N7dLnw= - - - Headers/SDL_opengl_glext.h - - hash - - eOvalGUielSzNuOWWDLYkwqpYrg= - - hash2 - - GrsoiRybBmG2/zdJ3iZx2l/hK+tbyxgzsta99ciezfg= - - - Headers/SDL_opengles.h - - hash - - gG8fFwXRxWfFzL5XD2UffDRXZ3Q= - - hash2 - - aoo42jon38SwoJd6YxYz+gpHtBEECX685KyFqnRG/yY= - - - Headers/SDL_opengles2.h - - hash - - AxfYXQsD0wpyQFFalhC2+H+bbJw= - - hash2 - - mfh8cJuZsq8zI8LZw40h4NqpQ16HNuHhbbVHw1q6ZqU= - - - Headers/SDL_opengles2_gl2.h - - hash - - GbD4M9ZIR9sxgLX4G8T/ojLVQJk= - - hash2 - - 1uxEsdc/OvzjogrGl223+z2sZWxRkPC1Y+TOkNeaFao= - - - Headers/SDL_opengles2_gl2ext.h - - hash - - frTvd+EfShO/uonAvnnsnPkqc80= - - hash2 - - T8WwA03N6cElki4+cNAUiaazNQdoVu5mApThpjBaNxk= - - - Headers/SDL_opengles2_gl2platform.h - - hash - - JO1DB28zz7TCz/P5YCSvV1PaqWg= - - hash2 - - R3m+mZrNGQRFgjjwnIaYO3lgrEDmEuBdstuX22FfHg8= - - - Headers/SDL_opengles2_khrplatform.h - - hash - - mBjqEs+5bGC9u1ED2M93VNzONPQ= - - hash2 - - ex4Bqqetj2/DS1x733nr9RibsJ4sTS55/F01BiPRHoM= - - - Headers/SDL_pen.h - - hash - - 682iJ7WBcXPP59n6GotWTTLbcF4= - - hash2 - - IrLPuD9df4GLhqVPV/wYLsMNDtDFlMhMCWC6iOtBQrY= - - - Headers/SDL_pixels.h - - hash - - XMpENyf+JyXMoOlgLXvAVH2XWUk= - - hash2 - - /59bliEM9/q7EYaDYAaaH1k0ms7HViADLQUqWEbrqtw= - - - Headers/SDL_platform.h - - hash - - ibx+rBzgiofjabvIoz74IR6I520= - - hash2 - - AWapRPc+AyddZhvn1FMjdcIJdX7crJ1mN78vxLVxm+Y= - - - Headers/SDL_platform_defines.h - - hash - - /Kbr1IehNE5PCihNTCISGfpFGQE= - - hash2 - - uRsNq1jA7eXKXqnDtikD181YR+p1cz0EfDnR4VDIpZo= - - - Headers/SDL_power.h - - hash - - VXRD8swjN+SVSGXhEHbx5kJjpws= - - hash2 - - UcZ2bS20U4hBnqMc794XIqIxSHx2Xzu+v8TM+ECQPhg= - - - Headers/SDL_properties.h - - hash - - F150c1qnBNLBgeEUC1TBC6Oouoc= - - hash2 - - CiomCgkVq6u+WWo2vh+ItNU1JkGtn2HpguEqRlTQzQM= - - - Headers/SDL_rect.h - - hash - - 8qzy2zRniQeliH43voxw/RVwLZs= - - hash2 - - kY0XN2lKfI3uLvu7ONQmz7rKppdkMxhw+WKqNW6uxAA= - - - Headers/SDL_render.h - - hash - - E42djJM4TabkF6rgVFoXXb2e6A0= - - hash2 - - FVECH+hM+0ohtw2q5nhcqxzGJF0CHZe6OmQCAQIhaC0= - - - Headers/SDL_revision.h - - hash - - wPbbJkv48GXw7JirykuAoX/HX+s= - - hash2 - - teAz/wtokUzr1b4mFKTyJE22JNx6UFN1UXg77FNf9ak= - - - Headers/SDL_scancode.h - - hash - - TFln1sCjEKyQIpVx9Rrexg61/tc= - - hash2 - - y1LYdhxjN9fO3uY50Ke9sVZ9nKBn2K1LPcjLVYhMOkY= - - - Headers/SDL_sensor.h - - hash - - 9tubC8rImcEZ176ITWeqmbIEmkY= - - hash2 - - v4+qhML/25/KBtrv+0p6dfHAuvavG18gXtMdEb8dOAE= - - - Headers/SDL_stdinc.h - - hash - - GK+yk89W1wKKSwfZinmtiLKnkaE= - - hash2 - - q8U9OkKiiFSTw63QEqOcQVSHDrye4ql96xRlNnQexrI= - - - Headers/SDL_storage.h - - hash - - WMFpkEtzGQBue7CMmxa0KEGpHHo= - - hash2 - - +JyqT3bSkEbASqBLXQdWz1gUsEYDzbme6sxq4gsC3wQ= - - - Headers/SDL_surface.h - - hash - - OkLZ4CQFo0/pQ8F9tHoo8Gdo6c4= - - hash2 - - WEzdMAWctrJAv+EVRFvXjGyiNgbwKzJfSbOUK3Ie0KY= - - - Headers/SDL_system.h - - hash - - p/vP9wu1luKvxk5pOpa7c+G+AI4= - - hash2 - - SV7kGEe9BC+Z2/7QBwUSFhDMAmmM/fRed60ZEIIkuUY= - - - Headers/SDL_thread.h - - hash - - zj6XYOdz8AUI1EPm52Xzvy24l8k= - - hash2 - - Bh60e3q2kAgdB5+SI20aAeGaPnla7y8zrjrxJGS2bm0= - - - Headers/SDL_time.h - - hash - - amXdZSZWmQpHKsgNNVSx+Dzf4pc= - - hash2 - - 9MOdJKaCKHDZTKVRGavBiUP4X2nuV9avu4GDi0HPPcQ= - - - Headers/SDL_timer.h - - hash - - q0F4Eu5yrr8qahWsIiPYFFI+S7U= - - hash2 - - a2YcPY1PJY1dYcj2dNehwKIwD+j8PEvdvcbJ8jNprZ0= - - - Headers/SDL_touch.h - - hash - - akfk8DSVubEtG3EbGDEif0lzP4I= - - hash2 - - 17lNGQel6VfvWYFT5WpZHW/4BZLIfas87t3u87SbFc4= - - - Headers/SDL_version.h - - hash - - sYkB+NDCq7ZZF0DlML1zmn+k79A= - - hash2 - - SIdy/p8X6AWtsjbKuapx3GGOdWKPKIwWJI2jWKcz43M= - - - Headers/SDL_video.h - - hash - - tC+nlvGbjtXBTDtkNVqOSFfwms4= - - hash2 - - chXwjgFTNkmjS1VAavg8PiZ1KgNK1EXniIfbOtg8bVQ= - - - Headers/SDL_vulkan.h - - hash - - /l3bNRmSicwCYWC83cV/5Cb3tjU= - - hash2 - - XuJ8rZGpOCSBnlWxX1BTv8BXdYTX30nvBvvpQuybC9c= - - - License.txt - - hash - - A8VTYHTg+gsOssUp337xdGbdHW0= - - hash2 - - UN4cvaEc5FbrLcR2jBIsS5miYCucbhF1iAKC2EMtJhM= - - - ReadMe.txt - - hash - - fmvVN4l2bp/qrM2l1v1dfNxJRyo= - - hash2 - - gUne5zwAtztNlmXGwQhk5IppZm4RJ3GYBlIcGoKHQXw= - - - default.metallib - - hash - - a2mo7WO50E5tbglYvQP3J9ig25s= - - hash2 - - XVtRwtH2SPVi2wHMRGpot5PFSDtd89Nbh7xHM0eQMaQ= - - - - rules - - ^.* - - ^.*\.lproj/ - - optional - - weight - 1000 - - ^.*\.lproj/locversion.plist$ - - omit - - weight - 1100 - - ^Base\.lproj/ - - weight - 1010 - - ^version.plist$ - - - rules2 - - .*\.dSYM($|/) - - weight - 11 - - ^(.*/)?\.DS_Store$ - - omit - - weight - 2000 - - ^.* - - ^.*\.lproj/ - - optional - - weight - 1000 - - ^.*\.lproj/locversion.plist$ - - omit - - weight - 1100 - - ^Base\.lproj/ - - weight - 1010 - - ^Info\.plist$ - - omit - - weight - 20 - - ^PkgInfo$ - - omit - - weight - 20 - - ^embedded\.provisionprofile$ - - weight - 20 - - ^version\.plist$ - - weight - 20 - - - - diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/compile_shaders.sh b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/compile_shaders.sh new file mode 100755 index 0000000..ef5e744 --- /dev/null +++ b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/compile_shaders.sh @@ -0,0 +1,68 @@ +#!/bin/bash + +set -x +set -e +cd `dirname "$0"` + +shadernames=(FullscreenVert BlitFrom2D BlitFrom2DArray BlitFrom3D BlitFromCube) + +generate_shaders() +{ + fileplatform=$1 + compileplatform=$2 + sdkplatform=$3 + minversion=$4 + + for shadername in "${shadernames[@]}"; do + xcrun -sdk $sdkplatform metal -c -std=$compileplatform-metal1.1 -m$sdkplatform-version-min=$minversion -Wall -O3 -D COMPILE_$shadername -o ./$shadername.air ./Metal_Blit.metal || exit $? + xcrun -sdk $sdkplatform metallib -o $shadername.metallib $shadername.air || exit $? + xxd -i $shadername.metallib | perl -w -p -e 's/\Aunsigned /const unsigned /;' >./${shadername}_$fileplatform.h + rm -f $shadername.air $shadername.metallib + done +} + +generate_shaders macos macos macosx 10.11 +generate_shaders ios ios iphoneos 8.0 +generate_shaders iphonesimulator ios iphonesimulator 8.0 +generate_shaders tvos ios appletvos 9.0 +generate_shaders tvsimulator ios appletvsimulator 9.0 + +# Bundle together one mega-header +catShaders() +{ + target=$1 + for shadername in "${shadernames[@]}"; do + cat ${shadername}_$target.h >> Metal_Blit.h + done +} + +rm -f Metal_Blit.h +echo "#if defined(SDL_PLATFORM_IOS)" >> Metal_Blit.h + echo "#if TARGET_OS_SIMULATOR" >> Metal_Blit.h + catShaders iphonesimulator + echo "#else" >> Metal_Blit.h + catShaders ios + echo "#endif" >> Metal_Blit.h +echo "#elif defined(SDL_PLATFORM_TVOS)" >> Metal_Blit.h + echo "#if TARGET_OS_SIMULATOR" >> Metal_Blit.h + catShaders tvsimulator + echo "#else" >> Metal_Blit.h + catShaders tvos + echo "#endif" >> Metal_Blit.h +echo "#else" >> Metal_Blit.h + catShaders macos +echo "#endif" >> Metal_Blit.h + +# Clean up +cleanupShaders() +{ + target=$1 + for shadername in "${shadernames[@]}"; do + rm -f ${shadername}_$target.h + done +} +cleanupShaders iphonesimulator +cleanupShaders ios +cleanupShaders tvsimulator +cleanupShaders tvos +cleanupShaders macos \ No newline at end of file diff --git a/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/default.metallib b/Frameworks/SDL3.xcframework/ios-arm64_x86_64-simulator/SDL3.framework/default.metallib index 82106284f0cab3edd91c1f8b09755792a144197f..3c378dc233577b02f580e3243ffea3aa7d89ddbd 100644 GIT binary patch delta 555 zcmdn~nsNJU#tAJ7!3*Nd1;TXscCYPO`_C{%?#13m8P8|5JN-HpQNXZD=hnm}sS1A1 z(wY&;dQWFfdO1P1-jH3N+1S`@QN-OHE{}_Z4+UgQ)@003Fgbm}l}8~)bFZuuhga+R zLjtAC#9ANM>~w#3^Jx-;&-2L}8PgTS*BpAtJ?YtH-%>k^uj-C3ukUWsyissRQftrj z$IMYjY$sbVWh*SOIc#VD?q|rMFv%qoqxq)IoNN_n%v-SM;_MA&@|V`}Og_w%rm%N% z?%Hj!e-jhJj>@{3X&=6^=lQm;$J`%^N?x_lGOv0u*^}8tKxrdS)D1>k#`S;C-&y?d zztrZr%$=-Ej0~F<(ibyLKFysdVyd8#n_7~Xla{J$Y-C_$tY>U&y4iuJn~l+Q^BJLE zEO5oyQaBVpkeUWmJo$`}_U1*3%UKwiHvcnO$Ta!2MkZFnCp++@Za%BIhZU-4tG+uc zqsV5(^hHdQ=bIPe*7MeTJ>zBzt7wQu<;~memvAsHf%xRVS1CS?>qLOQnUm1W239Y@ Uj882G)8?Hy=Qtp)V_^US03^%PcmMzZ delta 553 zcmdn~nsNJU#tAJ7m6~(X&%KnK=zmG=@#H-pRNQj)BksGtPG<}C_cgJe^J?OfRE2-C zQr6W6c3IcnJH6%TrzPtpU$d{_^H) zukPl#%$=-E3=EqU(ibyLKFysdVyvK%n_7~Xla{J$Y-C_$tY>U&yxD=Ln~l+U^BJLE zEO5oyQaBVpkeUWmJo$`}_U1*3%UL!nrY~Ze{8}RutI?Akcv3f?)!f4h)v;CIos|)) zXTEtMZar_k*E4Rmu!@FgRNlPZehCMo3dA4(y-M+ETqgqb%bbK}Hn4gLW_)Tnm^Sas NImZEU9SZ{x000ZB*nR*2 diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL.h index 4e18f63..c963394 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL.h @@ -43,6 +43,7 @@ #include #include #include +#include #include #include #include diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_assert.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_assert.h index 346d1e3..f5f798e 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_assert.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_assert.h @@ -303,9 +303,6 @@ extern SDL_DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData * * "break" so that your debugger takes control as soon as assert is triggered, * instead of risking a bad UI interaction (deadlock, etc) in the application. * - * Note that SDL_ASSERT is an _environment variable_ and not an SDL hint! - * Please refer to your platform's documentation for how to set it! - * * \param condition boolean value to test. * * \since This macro is available since SDL 3.0.0. @@ -335,9 +332,7 @@ extern SDL_DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData * * an assertion in a background thread, it might be desirable to set this to * "break" so that your debugger takes control as soon as assert is triggered, * instead of risking a bad UI interaction (deadlock, etc) in the application. - * - * Note that SDL_ASSERT is an _environment variable_ and not an SDL hint! - * Please refer to your platform's documentation for how to set it! + * * * * \param condition boolean value to test. * @@ -366,18 +361,14 @@ extern SDL_DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData * * "break" so that your debugger takes control as soon as assert is triggered, * instead of risking a bad UI interaction (deadlock, etc) in the application. * - * Note that SDL_ASSERT is an _environment variable_ and not an SDL hint! - * Please refer to your platform's documentation for how to set it! - * * \param condition boolean value to test. * * \since This macro is available since SDL 3.0.0. */ #define SDL_assert_paranoid(condition) SDL_disabled_assert(condition) -#endif /* Enable various levels of assertions. */ -#if SDL_ASSERT_LEVEL == 0 /* assertions disabled */ +#elif SDL_ASSERT_LEVEL == 0 /* assertions disabled */ # define SDL_assert(condition) SDL_disabled_assert(condition) # define SDL_assert_release(condition) SDL_disabled_assert(condition) # define SDL_assert_paranoid(condition) SDL_disabled_assert(condition) @@ -412,9 +403,6 @@ extern SDL_DECLSPEC SDL_AssertState SDLCALL SDL_ReportAssertion(SDL_AssertData * * "break" so that your debugger takes control as soon as assert is triggered, * instead of risking a bad UI interaction (deadlock, etc) in the application. * - * Note that SDL_ASSERT is an _environment variable_ and not an SDL hint! - * Please refer to your platform's documentation for how to set it! - * * \param condition boolean value to test. * * \since This macro is available since SDL 3.0.0. diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_atomic.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_atomic.h index fbf01c4..f159bcd 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_atomic.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_atomic.h @@ -455,8 +455,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_AtomicAdd(SDL_AtomicInt *a, int v); * \since This function is available since SDL 3.0.0. * * \sa SDL_AtomicCompareAndSwap - * \sa SDL_AtomicGetPtr - * \sa SDL_AtomicSetPtr + * \sa SDL_AtomicGetPointer + * \sa SDL_AtomicSetPointer */ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AtomicCompareAndSwapPointer(void **a, void *oldval, void *newval); @@ -475,9 +475,9 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AtomicCompareAndSwapPointer(void **a, v * \since This function is available since SDL 3.0.0. * * \sa SDL_AtomicCompareAndSwapPointer - * \sa SDL_AtomicGetPtr + * \sa SDL_AtomicGetPointer */ -extern SDL_DECLSPEC void * SDLCALL SDL_AtomicSetPtr(void **a, void *v); +extern SDL_DECLSPEC void * SDLCALL SDL_AtomicSetPointer(void **a, void *v); /** * Get the value of a pointer atomically. @@ -493,9 +493,9 @@ extern SDL_DECLSPEC void * SDLCALL SDL_AtomicSetPtr(void **a, void *v); * \since This function is available since SDL 3.0.0. * * \sa SDL_AtomicCompareAndSwapPointer - * \sa SDL_AtomicSetPtr + * \sa SDL_AtomicSetPointer */ -extern SDL_DECLSPEC void * SDLCALL SDL_AtomicGetPtr(void **a); +extern SDL_DECLSPEC void * SDLCALL SDL_AtomicGetPointer(void **a); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_audio.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_audio.h index f25959c..b7a4b7b 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_audio.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_audio.h @@ -127,6 +127,7 @@ extern "C" { */ typedef enum SDL_AudioFormat { + SDL_AUDIO_UNKNOWN = 0x0000u, /**< Unspecified audio format */ SDL_AUDIO_U8 = 0x0008u, /**< Unsigned 8-bit samples */ /* SDL_DEFINE_AUDIO_FORMAT(0, 0, 0, 8), */ SDL_AUDIO_S8 = 0x8008u, /**< Signed 8-bit samples */ @@ -531,14 +532,14 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetAudioDeviceName(SDL_AudioDeviceI * \param spec on return, will be filled with device details. * \param sample_frames pointer to store device buffer size, in sample frames. * Can be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetAudioDeviceFormat(SDL_AudioDeviceID devid, SDL_AudioSpec *spec, int *sample_frames); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetAudioDeviceFormat(SDL_AudioDeviceID devid, SDL_AudioSpec *spec, int *sample_frames); /** * Get the current channel map of an audio device. @@ -658,8 +659,8 @@ extern SDL_DECLSPEC SDL_AudioDeviceID SDLCALL SDL_OpenAudioDevice(SDL_AudioDevic * created through SDL_OpenAudioDevice() can be. * * \param dev a device opened by SDL_OpenAudioDevice(). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -668,7 +669,7 @@ extern SDL_DECLSPEC SDL_AudioDeviceID SDLCALL SDL_OpenAudioDevice(SDL_AudioDevic * \sa SDL_ResumeAudioDevice * \sa SDL_AudioDevicePaused */ -extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev); /** * Use this function to unpause audio playback on a specified device. @@ -686,8 +687,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev); * created through SDL_OpenAudioDevice() can be. * * \param dev a device opened by SDL_OpenAudioDevice(). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -696,7 +697,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev); * \sa SDL_AudioDevicePaused * \sa SDL_PauseAudioDevice */ -extern SDL_DECLSPEC int SDLCALL SDL_ResumeAudioDevice(SDL_AudioDeviceID dev); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ResumeAudioDevice(SDL_AudioDeviceID dev); /** * Use this function to query if an audio device is paused. @@ -766,8 +767,8 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioDeviceGain(SDL_AudioDeviceID devid * * \param devid the audio device on which to change gain. * \param gain the gain. 1.0f is no change, 0.0f is silence. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. @@ -776,7 +777,7 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioDeviceGain(SDL_AudioDeviceID devid * * \sa SDL_GetAudioDeviceGain */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioDeviceGain(SDL_AudioDeviceID devid, float gain); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioDeviceGain(SDL_AudioDeviceID devid, float gain); /** * Close a previously-opened audio device. @@ -823,8 +824,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_CloseAudioDevice(SDL_AudioDeviceID devid); * \param devid an audio device to bind a stream to. * \param streams an array of audio streams to bind. * \param num_streams number streams listed in the `streams` array. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -834,7 +835,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_CloseAudioDevice(SDL_AudioDeviceID devid); * \sa SDL_UnbindAudioStream * \sa SDL_GetAudioStreamDevice */ -extern SDL_DECLSPEC int SDLCALL SDL_BindAudioStreams(SDL_AudioDeviceID devid, SDL_AudioStream **streams, int num_streams); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BindAudioStreams(SDL_AudioDeviceID devid, SDL_AudioStream **streams, int num_streams); /** * Bind a single audio stream to an audio device. @@ -844,8 +845,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BindAudioStreams(SDL_AudioDeviceID devid, SD * * \param devid an audio device to bind a stream to. * \param stream an audio stream to bind to a device. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -855,7 +856,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BindAudioStreams(SDL_AudioDeviceID devid, SD * \sa SDL_UnbindAudioStream * \sa SDL_GetAudioStreamDevice */ -extern SDL_DECLSPEC int SDLCALL SDL_BindAudioStream(SDL_AudioDeviceID devid, SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BindAudioStream(SDL_AudioDeviceID devid, SDL_AudioStream *stream); /** * Unbind a list of audio streams from their audio devices. @@ -952,8 +953,8 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetAudioStreamProperties(SDL_Au * \param stream the SDL_AudioStream to query. * \param src_spec where to store the input audio format; ignored if NULL. * \param dst_spec where to store the output audio format; ignored if NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. @@ -962,9 +963,7 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetAudioStreamProperties(SDL_Au * * \sa SDL_SetAudioStreamFormat */ -extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamFormat(SDL_AudioStream *stream, - SDL_AudioSpec *src_spec, - SDL_AudioSpec *dst_spec); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetAudioStreamFormat(SDL_AudioStream *stream, SDL_AudioSpec *src_spec, SDL_AudioSpec *dst_spec); /** * Change the input and output formats of an audio stream. @@ -984,8 +983,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamFormat(SDL_AudioStream *stream * changed. * \param dst_spec the new format of the audio output; if NULL, it is not * changed. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. @@ -995,9 +994,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamFormat(SDL_AudioStream *stream * \sa SDL_GetAudioStreamFormat * \sa SDL_SetAudioStreamFrequencyRatio */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamFormat(SDL_AudioStream *stream, - const SDL_AudioSpec *src_spec, - const SDL_AudioSpec *dst_spec); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamFormat(SDL_AudioStream *stream, const SDL_AudioSpec *src_spec, const SDL_AudioSpec *dst_spec); /** * Get the frequency ratio of an audio stream. @@ -1030,8 +1027,8 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioStreamFrequencyRatio(SDL_AudioStre * \param stream the stream the frequency ratio is being changed. * \param ratio the frequency ratio. 1.0 is normal speed. Must be between 0.01 * and 100. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. @@ -1041,7 +1038,7 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioStreamFrequencyRatio(SDL_AudioStre * \sa SDL_GetAudioStreamFrequencyRatio * \sa SDL_SetAudioStreamFormat */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamFrequencyRatio(SDL_AudioStream *stream, float ratio); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamFrequencyRatio(SDL_AudioStream *stream, float ratio); /** * Get the gain of an audio stream. @@ -1077,8 +1074,8 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioStreamGain(SDL_AudioStream *stream * * \param stream the stream on which the gain is being changed. * \param gain the gain. 1.0f is no change, 0.0f is silence. - * \returns 0 on successor a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. @@ -1087,7 +1084,7 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetAudioStreamGain(SDL_AudioStream *stream * * \sa SDL_GetAudioStreamGain */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamGain(SDL_AudioStream *stream, float gain); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamGain(SDL_AudioStream *stream, float gain); /** * Get the current input channel map of an audio stream. @@ -1174,8 +1171,8 @@ extern SDL_DECLSPEC int * SDLCALL SDL_GetAudioStreamOutputChannelMap(SDL_AudioSt * \param stream the SDL_AudioStream to change. * \param chmap the new channel map, NULL to reset to default. * \param count The number of channels in the map. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. Don't change the @@ -1186,7 +1183,7 @@ extern SDL_DECLSPEC int * SDLCALL SDL_GetAudioStreamOutputChannelMap(SDL_AudioSt * * \sa SDL_SetAudioStreamInputChannelMap */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamInputChannelMap(SDL_AudioStream *stream, const int *chmap, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamInputChannelMap(SDL_AudioStream *stream, const int *chmap, int count); /** * Set the current output channel map of an audio stream. @@ -1221,8 +1218,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamInputChannelMap(SDL_AudioStrea * \param stream the SDL_AudioStream to change. * \param chmap the new channel map, NULL to reset to default. * \param count The number of channels in the map. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as it holds * a stream-specific mutex while running. Don't change the @@ -1233,7 +1230,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamInputChannelMap(SDL_AudioStrea * * \sa SDL_SetAudioStreamInputChannelMap */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamOutputChannelMap(SDL_AudioStream *stream, const int *chmap, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamOutputChannelMap(SDL_AudioStream *stream, const int *chmap, int count); /** * Add data to the stream. @@ -1249,8 +1246,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamOutputChannelMap(SDL_AudioStre * \param stream the stream the audio data is being added to. * \param buf a pointer to the audio data to add. * \param len the number of bytes to write to the stream. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, but if the * stream has a callback set, the caller might need to manage @@ -1263,7 +1260,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamOutputChannelMap(SDL_AudioStre * \sa SDL_GetAudioStreamData * \sa SDL_GetAudioStreamQueued */ -extern SDL_DECLSPEC int SDLCALL SDL_PutAudioStreamData(SDL_AudioStream *stream, const void *buf, int len); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PutAudioStreamData(SDL_AudioStream *stream, const void *buf, int len); /** * Get converted/resampled data from the stream. @@ -1280,8 +1277,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_PutAudioStreamData(SDL_AudioStream *stream, * \param stream the stream the audio is being requested from. * \param buf a buffer to fill with audio data. * \param len the maximum number of bytes to fill. - * \returns the number of bytes read from the stream or a negative error code - * on failure; call SDL_GetError() for more information. + * \returns the number of bytes read from the stream or -1 on failure; call + * SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread, but if the * stream has a callback set, the caller might need to manage @@ -1309,7 +1306,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamData(SDL_AudioStream *stream, * clamped. * * \param stream the audio stream to query. - * \returns the number of converted/resampled bytes available. + * \returns the number of converted/resampled bytes available or -1 on + * failure; call SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1341,7 +1339,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamAvailable(SDL_AudioStream *str * clamped. * * \param stream the audio stream to query. - * \returns the number of bytes queued. + * \returns the number of bytes queued or -1 on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1362,8 +1361,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamQueued(SDL_AudioStream *stream * input, so the complete output becomes available. * * \param stream the audio stream to flush. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1371,7 +1370,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetAudioStreamQueued(SDL_AudioStream *stream * * \sa SDL_PutAudioStreamData */ -extern SDL_DECLSPEC int SDLCALL SDL_FlushAudioStream(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FlushAudioStream(SDL_AudioStream *stream); /** * Clear any pending data in the stream. @@ -1380,8 +1379,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_FlushAudioStream(SDL_AudioStream *stream); * stream until more is added. * * \param stream the audio stream to clear. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1392,7 +1391,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_FlushAudioStream(SDL_AudioStream *stream); * \sa SDL_GetAudioStreamQueued * \sa SDL_PutAudioStreamData */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearAudioStream(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearAudioStream(SDL_AudioStream *stream); /** * Use this function to pause audio playback on the audio device associated @@ -1407,8 +1406,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_ClearAudioStream(SDL_AudioStream *stream); * loading, etc. * * \param stream the audio stream associated with the audio device to pause. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1416,7 +1415,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_ClearAudioStream(SDL_AudioStream *stream); * * \sa SDL_ResumeAudioStreamDevice */ -extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioStreamDevice(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PauseAudioStreamDevice(SDL_AudioStream *stream); /** * Use this function to unpause audio playback on the audio device associated @@ -1427,8 +1426,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioStreamDevice(SDL_AudioStream *stre * to progress again, and audio can be generated. * * \param stream the audio stream associated with the audio device to resume. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1436,7 +1435,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_PauseAudioStreamDevice(SDL_AudioStream *stre * * \sa SDL_PauseAudioStreamDevice */ -extern SDL_DECLSPEC int SDLCALL SDL_ResumeAudioStreamDevice(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ResumeAudioStreamDevice(SDL_AudioStream *stream); /** * Lock an audio stream for serialized access. @@ -1455,8 +1454,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_ResumeAudioStreamDevice(SDL_AudioStream *str * all the same attributes (recursive locks are allowed, etc). * * \param stream the audio stream to lock. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -1464,7 +1463,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_ResumeAudioStreamDevice(SDL_AudioStream *str * * \sa SDL_UnlockAudioStream */ -extern SDL_DECLSPEC int SDLCALL SDL_LockAudioStream(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LockAudioStream(SDL_AudioStream *stream); /** @@ -1473,8 +1472,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_LockAudioStream(SDL_AudioStream *stream); * This unlocks an audio stream after a call to SDL_LockAudioStream. * * \param stream the audio stream to unlock. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety You should only call this from the same thread that * previously called SDL_LockAudioStream. @@ -1483,7 +1482,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_LockAudioStream(SDL_AudioStream *stream); * * \sa SDL_LockAudioStream */ -extern SDL_DECLSPEC int SDLCALL SDL_UnlockAudioStream(SDL_AudioStream *stream); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UnlockAudioStream(SDL_AudioStream *stream); /** * A callback that fires when data passes through an SDL_AudioStream. @@ -1558,13 +1557,12 @@ typedef void (SDLCALL *SDL_AudioStreamCallback)(void *userdata, SDL_AudioStream * Setting a NULL function turns off the callback. * * \param stream the audio stream to set the new callback on. - * \param callback the new callback function to call when data is added to the - * stream. + * \param callback the new callback function to call when data is requested + * from the stream. * \param userdata an opaque pointer provided to the callback for its own * personal use. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. This only fails if `stream` - * is NULL. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. This only fails if `stream` is NULL. * * \threadsafety It is safe to call this function from any thread. * @@ -1572,7 +1570,7 @@ typedef void (SDLCALL *SDL_AudioStreamCallback)(void *userdata, SDL_AudioStream * * \sa SDL_SetAudioStreamPutCallback */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamGetCallback(SDL_AudioStream *stream, SDL_AudioStreamCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamGetCallback(SDL_AudioStream *stream, SDL_AudioStreamCallback callback, void *userdata); /** * Set a callback that runs when data is added to an audio stream. @@ -1612,9 +1610,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamGetCallback(SDL_AudioStream *s * stream. * \param userdata an opaque pointer provided to the callback for its own * personal use. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. This only fails if `stream` - * is NULL. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. This only fails if `stream` is NULL. * * \threadsafety It is safe to call this function from any thread. * @@ -1622,7 +1619,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamGetCallback(SDL_AudioStream *s * * \sa SDL_SetAudioStreamGetCallback */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioStreamPutCallback(SDL_AudioStream *stream, SDL_AudioStreamCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioStreamPutCallback(SDL_AudioStream *stream, SDL_AudioStreamCallback callback, void *userdata); /** @@ -1791,14 +1788,14 @@ typedef void (SDLCALL *SDL_AudioPostmixCallback)(void *userdata, const SDL_Audio * \param devid the ID of an opened audio device. * \param callback a callback function to be called. Can be NULL. * \param userdata app-controlled pointer passed to callback. Can be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAudioPostmixCallback(SDL_AudioDeviceID devid, SDL_AudioPostmixCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAudioPostmixCallback(SDL_AudioDeviceID devid, SDL_AudioPostmixCallback callback, void *userdata); /** @@ -1861,13 +1858,13 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioPostmixCallback(SDL_AudioDeviceID de * function. * \param audio_len a pointer filled with the length of the audio data buffer * in bytes. - * \returns 0 on success. `audio_buf` will be filled with a pointer to an - * allocated buffer containing the audio data, and `audio_len` is + * \returns SDL_TRUE on success. `audio_buf` will be filled with a pointer to + * an allocated buffer containing the audio data, and `audio_len` is * filled with the length of that audio buffer in bytes. * - * This function returns -1 if the .WAV file cannot be opened, uses - * an unknown data format, or is corrupt; call SDL_GetError() for - * more information. + * This function returns SDL_FALSE if the .WAV file cannot be opened, + * uses an unknown data format, or is corrupt; call SDL_GetError() + * for more information. * * When the application is done with the data returned in * `audio_buf`, it should call SDL_free() to dispose of it. @@ -1879,9 +1876,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAudioPostmixCallback(SDL_AudioDeviceID de * \sa SDL_free * \sa SDL_LoadWAV */ -extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV_IO(SDL_IOStream * src, SDL_bool closeio, - SDL_AudioSpec * spec, Uint8 ** audio_buf, - Uint32 * audio_len); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LoadWAV_IO(SDL_IOStream *src, SDL_bool closeio, SDL_AudioSpec *spec, Uint8 **audio_buf, Uint32 *audio_len); /** * Loads a WAV from a file path. @@ -1889,7 +1884,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV_IO(SDL_IOStream * src, SDL_bool clos * This is a convenience function that is effectively the same as: * * ```c - * SDL_LoadWAV_IO(SDL_IOFromFile(path, "rb"), 1, spec, audio_buf, audio_len); + * SDL_LoadWAV_IO(SDL_IOFromFile(path, "rb"), SDL_TRUE, spec, audio_buf, audio_len); * ``` * * \param path the file path of the WAV file to open. @@ -1899,13 +1894,13 @@ extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV_IO(SDL_IOStream * src, SDL_bool clos * function. * \param audio_len a pointer filled with the length of the audio data buffer * in bytes. - * \returns 0 on success. `audio_buf` will be filled with a pointer to an - * allocated buffer containing the audio data, and `audio_len` is + * \returns SDL_TRUE on success. `audio_buf` will be filled with a pointer to + * an allocated buffer containing the audio data, and `audio_len` is * filled with the length of that audio buffer in bytes. * - * This function returns -1 if the .WAV file cannot be opened, uses - * an unknown data format, or is corrupt; call SDL_GetError() for - * more information. + * This function returns SDL_FALSE if the .WAV file cannot be opened, + * uses an unknown data format, or is corrupt; call SDL_GetError() + * for more information. * * When the application is done with the data returned in * `audio_buf`, it should call SDL_free() to dispose of it. @@ -1917,8 +1912,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV_IO(SDL_IOStream * src, SDL_bool clos * \sa SDL_free * \sa SDL_LoadWAV_IO */ -extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV(const char *path, SDL_AudioSpec * spec, - Uint8 ** audio_buf, Uint32 * audio_len); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LoadWAV(const char *path, SDL_AudioSpec *spec, Uint8 **audio_buf, Uint32 *audio_len); /** * Mix audio data in a specified format. @@ -1947,17 +1941,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_LoadWAV(const char *path, SDL_AudioSpec * sp * \param len the length of the audio buffer in bytes. * \param volume ranges from 0.0 - 1.0, and should be set to 1.0 for full * audio volume. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_MixAudio(Uint8 * dst, - const Uint8 * src, - SDL_AudioFormat format, - Uint32 len, float volume); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_MixAudio(Uint8 *dst, const Uint8 *src, SDL_AudioFormat format, Uint32 len, float volume); /** * Convert some audio data of one format to another format. @@ -1980,20 +1971,27 @@ extern SDL_DECLSPEC int SDLCALL SDL_MixAudio(Uint8 * dst, * which should be freed with SDL_free(). On error, it will be * NULL. * \param dst_len will be filled with the len of dst_data. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ConvertAudioSamples(const SDL_AudioSpec *src_spec, - const Uint8 *src_data, - int src_len, - const SDL_AudioSpec *dst_spec, - Uint8 **dst_data, - int *dst_len); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ConvertAudioSamples(const SDL_AudioSpec *src_spec, const Uint8 *src_data, int src_len, const SDL_AudioSpec *dst_spec, Uint8 **dst_data, int *dst_len); +/** + * Get the human readable name of an audio format. + * + * \param format the audio format to query. + * \returns the human readable name of the specified audio format or + * "SDL_AUDIO_UNKNOWN" if the format isn't recognized. + * + * \threadsafety It is safe to call this function from any thread. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC const char * SDLCALL SDL_GetAudioFormatName(SDL_AudioFormat format); /** * Get the appropriate memset value for silencing an audio format. diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_camera.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_camera.h index 46dcee1..3d4c57e 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_camera.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_camera.h @@ -48,8 +48,7 @@ extern "C" { * * If the device is disconnected and reconnected, it will get a new ID. * - * The ID value starts at 1 and increments from there. The value 0 is an - * invalid ID. + * The value 0 is an invalid ID. * * \since This datatype is available since SDL 3.0.0. * @@ -367,15 +366,15 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetCameraProperties(SDL_Camera * be converting to this format behind the scenes. * * If the system is waiting for the user to approve access to the camera, as - * some platforms require, this will return -1, but this isn't necessarily a - * fatal error; you should either wait for an SDL_EVENT_CAMERA_DEVICE_APPROVED - * (or SDL_EVENT_CAMERA_DEVICE_DENIED) event, or poll SDL_IsCameraApproved() - * occasionally until it returns non-zero. + * some platforms require, this will return SDL_FALSE, but this isn't + * necessarily a fatal error; you should either wait for an + * SDL_EVENT_CAMERA_DEVICE_APPROVED (or SDL_EVENT_CAMERA_DEVICE_DENIED) event, + * or poll SDL_IsCameraApproved() occasionally until it returns non-zero. * * \param camera opened camera device. * \param spec the SDL_CameraSpec to be initialized by this function. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -383,7 +382,7 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetCameraProperties(SDL_Camera * * \sa SDL_OpenCamera */ -extern SDL_DECLSPEC int SDLCALL SDL_GetCameraFormat(SDL_Camera *camera, SDL_CameraSpec *spec); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetCameraFormat(SDL_Camera *camera, SDL_CameraSpec *spec); /** * Acquire a frame. @@ -447,8 +446,6 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_AcquireCameraFrame(SDL_Camera *cam * * \param camera opened camera device. * \param frame the video frame surface to release. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -456,7 +453,7 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_AcquireCameraFrame(SDL_Camera *cam * * \sa SDL_AcquireCameraFrame */ -extern SDL_DECLSPEC int SDLCALL SDL_ReleaseCameraFrame(SDL_Camera *camera, SDL_Surface *frame); +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseCameraFrame(SDL_Camera *camera, SDL_Surface *frame); /** * Use this function to shut down camera processing and close the camera diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_clipboard.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_clipboard.h index ccd3201..4d4ae32 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_clipboard.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_clipboard.h @@ -46,15 +46,15 @@ extern "C" { * Put UTF-8 text into the clipboard. * * \param text the text to store in the clipboard. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetClipboardText * \sa SDL_HasClipboardText */ -extern SDL_DECLSPEC int SDLCALL SDL_SetClipboardText(const char *text); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetClipboardText(const char *text); /** * Get UTF-8 text from the clipboard. @@ -89,15 +89,15 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasClipboardText(void); * Put UTF-8 text into the primary selection. * * \param text the text to store in the primary selection. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetPrimarySelectionText * \sa SDL_HasPrimarySelectionText */ -extern SDL_DECLSPEC int SDLCALL SDL_SetPrimarySelectionText(const char *text); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetPrimarySelectionText(const char *text); /** * Get UTF-8 text from the primary selection. @@ -185,8 +185,8 @@ typedef void (SDLCALL *SDL_ClipboardCleanupCallback)(void *userdata); * \param userdata an opaque pointer that will be forwarded to the callbacks. * \param mime_types a list of mime-types that are being offered. * \param num_mime_types the number of mime-types in the mime_types list. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -194,19 +194,19 @@ typedef void (SDLCALL *SDL_ClipboardCleanupCallback)(void *userdata); * \sa SDL_GetClipboardData * \sa SDL_HasClipboardData */ -extern SDL_DECLSPEC int SDLCALL SDL_SetClipboardData(SDL_ClipboardDataCallback callback, SDL_ClipboardCleanupCallback cleanup, void *userdata, const char **mime_types, size_t num_mime_types); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetClipboardData(SDL_ClipboardDataCallback callback, SDL_ClipboardCleanupCallback cleanup, void *userdata, const char **mime_types, size_t num_mime_types); /** * Clear the clipboard data. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetClipboardData */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearClipboardData(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearClipboardData(void); /** * Get the data from clipboard for a given mime type. diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_error.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_error.h index 75e8370..a98823f 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_error.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_error.h @@ -56,25 +56,25 @@ extern "C" { * \param fmt a printf()-style message format string. * \param ... additional parameters matching % tokens in the `fmt` string, if * any. - * \returns -1. + * \returns SDL_FALSE. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ClearError * \sa SDL_GetError */ -extern SDL_DECLSPEC int SDLCALL SDL_SetError(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetError(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1); /** * Set an error indicating that memory allocation failed. * * This function does not do any memory allocation. * - * \returns -1. + * \returns SDL_FALSE. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_OutOfMemory(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_OutOfMemory(void); /** * Retrieve a message about the last error that occurred on the current @@ -114,14 +114,14 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetError(void); /** * Clear any previous error message for this thread. * - * \returns 0. + * \returns SDL_TRUE. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetError * \sa SDL_SetError */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearError(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearError(void); /** * \name Internal error functions diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_events.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_events.h index 4c113f9..fbe2bb0 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_events.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_events.h @@ -151,8 +151,6 @@ typedef enum SDL_EventType in an event watcher, the window handle is still valid and can still be used to retrieve any userdata associated with the window. Otherwise, the handle has already been destroyed and all resources associated with it are invalid */ - SDL_EVENT_WINDOW_PEN_ENTER, /**< Window has gained focus of the pressure-sensitive pen with ID "data1" */ - SDL_EVENT_WINDOW_PEN_LEAVE, /**< Window has lost focus of the pressure-sensitive pen with ID "data1" */ SDL_EVENT_WINDOW_HDR_STATE_CHANGED, /**< Window HDR properties have changed */ SDL_EVENT_WINDOW_FIRST = SDL_EVENT_WINDOW_SHOWN, SDL_EVENT_WINDOW_LAST = SDL_EVENT_WINDOW_HDR_STATE_CHANGED, @@ -227,11 +225,14 @@ typedef enum SDL_EventType SDL_EVENT_SENSOR_UPDATE = 0x1200, /**< A sensor was updated */ /* Pressure-sensitive pen events */ - SDL_EVENT_PEN_DOWN = 0x1300, /**< Pressure-sensitive pen touched drawing surface */ + SDL_EVENT_PEN_PROXIMITY_IN = 0x1300, /**< Pressure-sensitive pen has become available */ + SDL_EVENT_PEN_PROXIMITY_OUT, /**< Pressure-sensitive pen has become unavailable */ + SDL_EVENT_PEN_DOWN, /**< Pressure-sensitive pen touched drawing surface */ SDL_EVENT_PEN_UP, /**< Pressure-sensitive pen stopped touching drawing surface */ - SDL_EVENT_PEN_MOTION, /**< Pressure-sensitive pen moved, or angle/pressure changed */ SDL_EVENT_PEN_BUTTON_DOWN, /**< Pressure-sensitive pen button pressed */ SDL_EVENT_PEN_BUTTON_UP, /**< Pressure-sensitive pen button released */ + SDL_EVENT_PEN_MOTION, /**< Pressure-sensitive pen is moving on the tablet */ + SDL_EVENT_PEN_AXIS, /**< Pressure-sensitive pen angle/pressure/etc changed */ /* Camera hotplug events */ SDL_EVENT_CAMERA_DEVICE_ADDED = 0x1400, /**< A new camera device is available */ @@ -426,7 +427,7 @@ typedef struct SDL_MouseMotionEvent Uint32 reserved; Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ SDL_WindowID windowID; /**< The window with mouse focus, if any */ - SDL_MouseID which; /**< The mouse instance id, SDL_TOUCH_MOUSEID, or SDL_PEN_MOUSEID */ + SDL_MouseID which; /**< The mouse instance id or SDL_TOUCH_MOUSEID */ SDL_MouseButtonFlags state; /**< The current button state */ float x; /**< X coordinate, relative to window */ float y; /**< Y coordinate, relative to window */ @@ -445,7 +446,7 @@ typedef struct SDL_MouseButtonEvent Uint32 reserved; Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ SDL_WindowID windowID; /**< The window with mouse focus, if any */ - SDL_MouseID which; /**< The mouse instance id, SDL_TOUCH_MOUSEID, or SDL_PEN_MOUSEID */ + SDL_MouseID which; /**< The mouse instance id, SDL_TOUCH_MOUSEID */ Uint8 button; /**< The mouse button index */ Uint8 state; /**< SDL_PRESSED or SDL_RELEASED */ Uint8 clicks; /**< 1 for single-click, 2 for double-click, etc. */ @@ -465,7 +466,7 @@ typedef struct SDL_MouseWheelEvent Uint32 reserved; Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ SDL_WindowID windowID; /**< The window with mouse focus, if any */ - SDL_MouseID which; /**< The mouse instance id, SDL_TOUCH_MOUSEID, or SDL_PEN_MOUSEID */ + SDL_MouseID which; /**< The mouse instance id, SDL_TOUCH_MOUSEID */ float x; /**< The amount scrolled horizontally, positive to the right and negative to the left */ float y; /**< The amount scrolled vertically, positive away from the user and negative toward the user */ SDL_MouseWheelDirection direction; /**< Set to one of the SDL_MOUSEWHEEL_* defines. When FLIPPED the values in X and Y will be opposite. Multiply by -1 to change them back */ @@ -714,67 +715,118 @@ typedef struct SDL_TouchFingerEvent SDL_WindowID windowID; /**< The window underneath the finger, if any */ } SDL_TouchFingerEvent; - /** - * Pressure-sensitive pen touched or stopped touching surface (event.ptip.*) + * Pressure-sensitive pen proximity event structure (event.pmotion.*) + * + * When a pen becomes visible to the system (it is close enough to a tablet, + * etc), SDL will send an SDL_EVENT_PEN_PROXIMITY_IN event with the new pen's + * ID. This ID is valid until the pen leaves proximity again (has been removed + * from the tablet's area, the tablet has been unplugged, etc). If the same + * pen reenters proximity again, it will be given a new ID. + * + * Note that "proximity" means "close enough for the tablet to know the tool + * is there." The pen touching and lifting off from the tablet while not + * leaving the area are handled by SDL_EVENT_PEN_DOWN and SDL_EVENT_PEN_UP. * * \since This struct is available since SDL 3.0.0. */ -typedef struct SDL_PenTipEvent +typedef struct SDL_PenProximityEvent +{ + SDL_EventType type; /**< SDL_EVENT_PEN_PROXIMITY_IN or SDL_EVENT_PEN_PROXIMITY_OUT */ + Uint32 reserved; + Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ + SDL_WindowID windowID; /**< The window with mouse focus, if any */ + SDL_PenID which; /**< The pen instance id */ +} SDL_PenProximityEvent; + +/** + * Pressure-sensitive pen motion event structure (event.pmotion.*) + * + * Depending on the hardware, you may get motion events when the pen is not + * touching a tablet, for tracking a pen even when it isn't drawing. You + * should listen for SDL_EVENT_PEN_DOWN and SDL_EVENT_PEN_UP events, or check + * `pen_state & SDL_PEN_INPUT_DOWN` to decide if a pen is "drawing" when + * dealing with pen motion. + * + * \since This struct is available since SDL 3.0.0. + */ +typedef struct SDL_PenMotionEvent +{ + SDL_EventType type; /**< SDL_EVENT_PEN_MOTION */ + Uint32 reserved; + Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ + SDL_WindowID windowID; /**< The window with mouse focus, if any */ + SDL_PenID which; /**< The pen instance id */ + SDL_PenInputFlags pen_state; /**< Complete pen input state at time of event */ + float x; /**< X position of pen on tablet */ + float y; /**< Y position of pen on tablet */ +} SDL_PenMotionEvent; + +/** + * Pressure-sensitive pen touched event structure (event.ptouch.*) + * + * These events come when a pen touches a surface (a tablet, etc), or lifts + * off from one. + * + * \since This struct is available since SDL 3.0.0. + */ +typedef struct SDL_PenTouchEvent { SDL_EventType type; /**< SDL_EVENT_PEN_DOWN or SDL_EVENT_PEN_UP */ Uint32 reserved; Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ SDL_WindowID windowID; /**< The window with pen focus, if any */ SDL_PenID which; /**< The pen instance id */ - Uint8 tip; /**< SDL_PEN_TIP_INK when using a regular pen tip, or SDL_PEN_TIP_ERASER if the pen is being used as an eraser (e.g., flipped to use the eraser tip) */ - Uint8 state; /**< SDL_PRESSED on SDL_EVENT_PEN_DOWN and SDL_RELEASED on SDL_EVENT_PEN_UP */ - Uint16 pen_state; /**< Pen button masks (where SDL_BUTTON(1) is the first button, SDL_BUTTON(2) is the second button etc.), SDL_PEN_DOWN_MASK is set if the pen is touching the surface, and SDL_PEN_ERASER_MASK is set if the pen is (used as) an eraser. */ - float x; /**< X coordinate, relative to window */ - float y; /**< Y coordinate, relative to window */ - float axes[SDL_PEN_NUM_AXES]; /**< Pen axes such as pressure and tilt (ordered as per SDL_PenAxis) */ -} SDL_PenTipEvent; - -/** - * Pressure-sensitive pen motion / pressure / angle event structure - * (event.pmotion.*) - * - * \since This struct is available since SDL 3.0.0. - */ -typedef struct SDL_PenMotionEvent -{ - SDL_EventType type; /**< SDL_EVENT_PEN_MOTION */ - Uint32 reserved; - Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ - SDL_WindowID windowID; /**< The window with pen focus, if any */ - SDL_PenID which; /**< The pen instance id */ - Uint8 padding1; - Uint8 padding2; - Uint16 pen_state; /**< Pen button masks (where SDL_BUTTON(1) is the first button, SDL_BUTTON(2) is the second button etc.), SDL_PEN_DOWN_MASK is set if the pen is touching the surface, and SDL_PEN_ERASER_MASK is set if the pen is (used as) an eraser. */ - float x; /**< X coordinate, relative to window */ - float y; /**< Y coordinate, relative to window */ - float axes[SDL_PEN_NUM_AXES]; /**< Pen axes such as pressure and tilt (ordered as per SDL_PenAxis) */ -} SDL_PenMotionEvent; + SDL_PenInputFlags pen_state; /**< Complete pen input state at time of event */ + float x; /**< X position of pen on tablet */ + float y; /**< Y position of pen on tablet */ + Uint8 eraser; /**< Non-zero if eraser end is used (not all pens support this). */ + Uint8 state; /**< SDL_PRESSED (pen is touching) or SDL_RELEASED (pen is lifted off) */ +} SDL_PenTouchEvent; /** * Pressure-sensitive pen button event structure (event.pbutton.*) * + * This is for buttons on the pen itself that the user might click. The pen + * itself pressing down to draw triggers a SDL_EVENT_PEN_DOWN event instead. + * * \since This struct is available since SDL 3.0.0. */ typedef struct SDL_PenButtonEvent { - SDL_EventType type; /**< SDL_EVENT_PEN_BUTTON_DOWN or SDL_EVENT_PEN_BUTTON_UP */ + SDL_EventType type; /**< SDL_EVENT_PEN_BUTTON_DOWN or SDL_EVENT_PEN_BUTTON_UP */ + Uint32 reserved; + Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ + SDL_WindowID windowID; /**< The window with mouse focus, if any */ + SDL_PenID which; /**< The pen instance id */ + SDL_PenInputFlags pen_state; /**< Complete pen input state at time of event */ + float x; /**< X position of pen on tablet */ + float y; /**< Y position of pen on tablet */ + Uint8 button; /**< The pen button index (first button is 1). */ + Uint8 state; /**< SDL_PRESSED or SDL_RELEASED */ +} SDL_PenButtonEvent; + +/** + * Pressure-sensitive pen pressure / angle event structure (event.paxis.*) + * + * You might get some of these events even if the pen isn't touching the + * tablet. + * + * \since This struct is available since SDL 3.0.0. + */ +typedef struct SDL_PenAxisEvent +{ + SDL_EventType type; /**< SDL_EVENT_PEN_AXIS */ Uint32 reserved; Uint64 timestamp; /**< In nanoseconds, populated using SDL_GetTicksNS() */ SDL_WindowID windowID; /**< The window with pen focus, if any */ SDL_PenID which; /**< The pen instance id */ - Uint8 button; /**< The pen button index (1 represents the pen tip for compatibility with mouse events) */ - Uint8 state; /**< SDL_PRESSED or SDL_RELEASED */ - Uint16 pen_state; /**< Pen button masks (where SDL_BUTTON(1) is the first button, SDL_BUTTON(2) is the second button etc.), SDL_PEN_DOWN_MASK is set if the pen is touching the surface, and SDL_PEN_ERASER_MASK is set if the pen is (used as) an eraser. */ - float x; /**< X coordinate, relative to window */ - float y; /**< Y coordinate, relative to window */ - float axes[SDL_PEN_NUM_AXES]; /**< Pen axes such as pressure and tilt (ordered as per SDL_PenAxis) */ -} SDL_PenButtonEvent; + SDL_PenInputFlags pen_state; /**< Complete pen input state at time of event */ + float x; /**< X position of pen on tablet */ + float y; /**< Y position of pen on tablet */ + SDL_PenAxis axis; /**< Axis that has changed */ + float value; /**< New value of axis */ +} SDL_PenAxisEvent; /** * An event used to drop text or request a file open by the system @@ -894,9 +946,11 @@ typedef union SDL_Event SDL_QuitEvent quit; /**< Quit request event data */ SDL_UserEvent user; /**< Custom event data */ SDL_TouchFingerEvent tfinger; /**< Touch finger event data */ - SDL_PenTipEvent ptip; /**< Pen tip touching or leaving drawing surface */ - SDL_PenMotionEvent pmotion; /**< Pen change in position, pressure, or angle */ - SDL_PenButtonEvent pbutton; /**< Pen button press */ + SDL_PenProximityEvent pproximity; /**< Pen proximity event data */ + SDL_PenTouchEvent ptouch; /**< Pen tip touching event data */ + SDL_PenMotionEvent pmotion; /**< Pen motion event data */ + SDL_PenButtonEvent pbutton; /**< Pen button event data */ + SDL_PenAxisEvent paxis; /**< Pen axis event data */ SDL_DropEvent drop; /**< Drag and drop event data */ SDL_ClipboardEvent clipboard; /**< Clipboard event data */ @@ -985,8 +1039,8 @@ typedef enum SDL_EventAction * SDL_EVENT_FIRST is a safe choice. * \param maxType maximum value of the event type to be considered; * SDL_EVENT_LAST is a safe choice. - * \returns the number of events actually stored or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the number of events actually stored or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -1200,9 +1254,9 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WaitEventTimeout(SDL_Event *event, Sint * its own custom event types. * * \param event the SDL_Event to be added to the queue. - * \returns 1 on success, 0 if the event was filtered, or a negative error - * code on failure; call SDL_GetError() for more information. A - * common reason for error is the event queue being full. + * \returns SDL_TRUE on success, SDL_FALSE if the event was filtered or on + * failure; call SDL_GetError() for more information. A common reason + * for error is the event queue being full. * * \since This function is available since SDL 3.0.0. * @@ -1210,7 +1264,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WaitEventTimeout(SDL_Event *event, Sint * \sa SDL_PollEvent * \sa SDL_RegisterEvents */ -extern SDL_DECLSPEC int SDLCALL SDL_PushEvent(SDL_Event *event); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PushEvent(SDL_Event *event); /** * A function pointer used for callbacks that watch the event queue. @@ -1218,8 +1272,9 @@ extern SDL_DECLSPEC int SDLCALL SDL_PushEvent(SDL_Event *event); * \param userdata what was passed as `userdata` to SDL_SetEventFilter() or * SDL_AddEventWatch, etc. * \param event the event that triggered the callback. - * \returns 1 to permit event to be added to the queue, and 0 to disallow it. - * When used with SDL_AddEventWatch, the return value is ignored. + * \returns SDL_TRUE to permit event to be added to the queue, and SDL_FALSE + * to disallow it. When used with SDL_AddEventWatch, the return value + * is ignored. * * \threadsafety SDL may call this callback at any time from any thread; the * application is responsible for locking resources the callback @@ -1230,16 +1285,16 @@ extern SDL_DECLSPEC int SDLCALL SDL_PushEvent(SDL_Event *event); * \sa SDL_SetEventFilter * \sa SDL_AddEventWatch */ -typedef int (SDLCALL *SDL_EventFilter)(void *userdata, SDL_Event *event); +typedef SDL_bool (SDLCALL *SDL_EventFilter)(void *userdata, SDL_Event *event); /** * Set up a filter to process all events before they change internal state and * are posted to the internal event queue. * - * If the filter function returns 1 when called, then the event will be added - * to the internal queue. If it returns 0, then the event will be dropped from - * the queue, but the internal state will still be updated. This allows - * selective filtering of dynamically arriving events. + * If the filter function returns SDL_TRUE when called, then the event will be + * added to the internal queue. If it returns SDL_FALSE, then the event will + * be dropped from the queue, but the internal state will still be updated. + * This allows selective filtering of dynamically arriving events. * * **WARNING**: Be very careful of what you do in the event filter function, * as it may run in a different thread! @@ -1317,17 +1372,17 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetEventFilter(SDL_EventFilter *filter, * * \param filter an SDL_EventFilter function to call when an event happens. * \param userdata a pointer that is passed to `filter`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. * - * \sa SDL_DelEventWatch + * \sa SDL_RemoveEventWatch * \sa SDL_SetEventFilter */ -extern SDL_DECLSPEC int SDLCALL SDL_AddEventWatch(SDL_EventFilter filter, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AddEventWatch(SDL_EventFilter filter, void *userdata); /** * Remove an event watch callback added with SDL_AddEventWatch(). @@ -1342,11 +1397,11 @@ extern SDL_DECLSPEC int SDLCALL SDL_AddEventWatch(SDL_EventFilter filter, void * * * \sa SDL_AddEventWatch */ -extern SDL_DECLSPEC void SDLCALL SDL_DelEventWatch(SDL_EventFilter filter, void *userdata); +extern SDL_DECLSPEC void SDLCALL SDL_RemoveEventWatch(SDL_EventFilter filter, void *userdata); /** * Run a specific filter function on the current event queue, removing any - * events for which the filter returns 0. + * events for which the filter returns SDL_FALSE. * * See SDL_SetEventFilter() for more information. Unlike SDL_SetEventFilter(), * this function does not change the filter permanently, it only uses the diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_filesystem.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_filesystem.h index 756a52d..5faa244 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_filesystem.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_filesystem.h @@ -266,12 +266,12 @@ typedef Uint32 SDL_GlobFlags; * Create a directory. * * \param path the path of the directory to create. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_CreateDirectory(const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CreateDirectory(const char *path); /* Callback for directory enumeration. Return 1 to keep enumerating, 0 to stop enumerating (no error), -1 to stop enumerating and @@ -289,47 +289,47 @@ typedef int (SDLCALL *SDL_EnumerateDirectoryCallback)(void *userdata, const char * \param path the path of the directory to enumerate. * \param callback a function that is called for each entry in the directory. * \param userdata a pointer that is passed to `callback`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_EnumerateDirectory(const char *path, SDL_EnumerateDirectoryCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_EnumerateDirectory(const char *path, SDL_EnumerateDirectoryCallback callback, void *userdata); /** * Remove a file or an empty directory. * * \param path the path of the directory to enumerate. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RemovePath(const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RemovePath(const char *path); /** * Rename a file or directory. * * \param oldpath the old path. * \param newpath the new path. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RenamePath(const char *oldpath, const char *newpath); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenamePath(const char *oldpath, const char *newpath); /** * Copy a file. * * \param oldpath the old path. * \param newpath the new path. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_CopyFile(const char *oldpath, const char *newpath); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CopyFile(const char *oldpath, const char *newpath); /** * Get information about a filesystem path. @@ -337,12 +337,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_CopyFile(const char *oldpath, const char *ne * \param path the path to query. * \param info a pointer filled in with information about the path, or NULL to * check for the existence of a file. - * \returns 0 on success or a negative error code if the file doesn't exist, - * or another failure; call SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE if the file doesn't exist, or + * another failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetPathInfo(const char *path, SDL_PathInfo *info); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetPathInfo(const char *path, SDL_PathInfo *info); /** * Enumerate a directory tree, filtered by pattern, and return a list. diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_gamepad.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_gamepad.h index cec0684..3d2d726 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_gamepad.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_gamepad.h @@ -379,12 +379,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_AddGamepadMappingsFromFile(const char *file) * * This will generate gamepad events as needed if device mappings change. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ReloadGamepadMappings(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ReloadGamepadMappings(void); /** * Get the current gamepad mappings. @@ -442,15 +442,15 @@ extern SDL_DECLSPEC char * SDLCALL SDL_GetGamepadMapping(SDL_Gamepad *gamepad); * \param instance_id the joystick instance ID. * \param mapping the mapping to use for this device, or NULL to clear the * mapping. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_AddGamepadMapping * \sa SDL_GetGamepadMapping */ -extern SDL_DECLSPEC int SDLCALL SDL_SetGamepadMapping(SDL_JoystickID instance_id, const char *mapping); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetGamepadMapping(SDL_JoystickID instance_id, const char *mapping); /** * Return whether a gamepad is currently connected. @@ -813,14 +813,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetGamepadPlayerIndex(SDL_Gamepad *gamepad); * \param gamepad the gamepad object to adjust. * \param player_index player index to assign to this gamepad, or -1 to clear * the player index and turn off player LEDs. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetGamepadPlayerIndex */ -extern SDL_DECLSPEC int SDLCALL SDL_SetGamepadPlayerIndex(SDL_Gamepad *gamepad, int player_index); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetGamepadPlayerIndex(SDL_Gamepad *gamepad, int player_index); /** * Get the USB vendor ID of an opened gamepad, if available. @@ -1257,14 +1257,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetNumGamepadTouchpadFingers(SDL_Gamepad *ga * \param y filled with y position, normalized 0 to 1, with the origin in the * upper left. * \param pressure filled with pressure value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetNumGamepadTouchpadFingers */ -extern SDL_DECLSPEC int SDLCALL SDL_GetGamepadTouchpadFinger(SDL_Gamepad *gamepad, int touchpad, int finger, Uint8 *state, float *x, float *y, float *pressure); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetGamepadTouchpadFinger(SDL_Gamepad *gamepad, int touchpad, int finger, Uint8 *state, float *x, float *y, float *pressure); /** * Return whether a gamepad has a particular sensor. @@ -1287,15 +1287,15 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GamepadHasSensor(SDL_Gamepad *gamepad, * \param gamepad the gamepad to update. * \param type the type of sensor to enable/disable. * \param enabled whether data reporting should be enabled. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GamepadHasSensor * \sa SDL_GamepadSensorEnabled */ -extern SDL_DECLSPEC int SDLCALL SDL_SetGamepadSensorEnabled(SDL_Gamepad *gamepad, SDL_SensorType type, SDL_bool enabled); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetGamepadSensorEnabled(SDL_Gamepad *gamepad, SDL_SensorType type, SDL_bool enabled); /** * Query whether sensor data reporting is enabled for a gamepad. @@ -1331,12 +1331,12 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetGamepadSensorDataRate(SDL_Gamepad *game * \param type the type of sensor to query. * \param data a pointer filled with the current sensor state. * \param num_values the number of values to write to data. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetGamepadSensorData(SDL_Gamepad *gamepad, SDL_SensorType type, float *data, int num_values); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetGamepadSensorData(SDL_Gamepad *gamepad, SDL_SensorType type, float *data, int num_values); /** * Start a rumble effect on a gamepad. @@ -1353,11 +1353,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetGamepadSensorData(SDL_Gamepad *gamepad, S * \param high_frequency_rumble the intensity of the high frequency (right) * rumble motor, from 0 to 0xFFFF. * \param duration_ms the duration of the rumble effect, in milliseconds. - * \returns 0, or -1 if rumble isn't supported on this gamepad. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RumbleGamepad(SDL_Gamepad *gamepad, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RumbleGamepad(SDL_Gamepad *gamepad, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); /** * Start a rumble effect in the gamepad's triggers. @@ -1378,14 +1379,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RumbleGamepad(SDL_Gamepad *gamepad, Uint16 l * \param right_rumble the intensity of the right trigger rumble motor, from 0 * to 0xFFFF. * \param duration_ms the duration of the rumble effect, in milliseconds. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RumbleGamepad */ -extern SDL_DECLSPEC int SDLCALL SDL_RumbleGamepadTriggers(SDL_Gamepad *gamepad, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RumbleGamepadTriggers(SDL_Gamepad *gamepad, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); /** * Update a gamepad's LED color. @@ -1400,12 +1401,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_RumbleGamepadTriggers(SDL_Gamepad *gamepad, * \param red the intensity of the red LED. * \param green the intensity of the green LED. * \param blue the intensity of the blue LED. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetGamepadLED(SDL_Gamepad *gamepad, Uint8 red, Uint8 green, Uint8 blue); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetGamepadLED(SDL_Gamepad *gamepad, Uint8 red, Uint8 green, Uint8 blue); /** * Send a gamepad specific effect packet. @@ -1413,12 +1414,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetGamepadLED(SDL_Gamepad *gamepad, Uint8 re * \param gamepad the gamepad to affect. * \param data the data to send to the gamepad. * \param size the size of the data to send to the gamepad. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SendGamepadEffect(SDL_Gamepad *gamepad, const void *data, int size); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SendGamepadEffect(SDL_Gamepad *gamepad, const void *data, int size); /** * Close a gamepad previously opened with SDL_OpenGamepad(). diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_gpu.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_gpu.h new file mode 100644 index 0000000..bba47cc --- /dev/null +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_gpu.h @@ -0,0 +1,2620 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2024 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. +*/ + +/* WIKI CATEGORY: GPU */ + +/** + * # CategoryGPU + * + * Include file for SDL GPU API functions + */ + +#ifndef SDL_gpu_h_ +#define SDL_gpu_h_ + +#include +#include +#include +#include +#include +#include + +#include +#ifdef __cplusplus +extern "C" { +#endif /* __cplusplus */ + +/* Type Declarations */ + +typedef struct SDL_GPUDevice SDL_GPUDevice; +typedef struct SDL_GPUBuffer SDL_GPUBuffer; +typedef struct SDL_GPUTransferBuffer SDL_GPUTransferBuffer; +typedef struct SDL_GPUTexture SDL_GPUTexture; +typedef struct SDL_GPUSampler SDL_GPUSampler; +typedef struct SDL_GPUShader SDL_GPUShader; +typedef struct SDL_GPUComputePipeline SDL_GPUComputePipeline; +typedef struct SDL_GPUGraphicsPipeline SDL_GPUGraphicsPipeline; +typedef struct SDL_GPUCommandBuffer SDL_GPUCommandBuffer; +typedef struct SDL_GPURenderPass SDL_GPURenderPass; +typedef struct SDL_GPUComputePass SDL_GPUComputePass; +typedef struct SDL_GPUCopyPass SDL_GPUCopyPass; +typedef struct SDL_GPUFence SDL_GPUFence; + +typedef enum SDL_GPUPrimitiveType +{ + SDL_GPU_PRIMITIVETYPE_POINTLIST, + SDL_GPU_PRIMITIVETYPE_LINELIST, + SDL_GPU_PRIMITIVETYPE_LINESTRIP, + SDL_GPU_PRIMITIVETYPE_TRIANGLELIST, + SDL_GPU_PRIMITIVETYPE_TRIANGLESTRIP +} SDL_GPUPrimitiveType; + +typedef enum SDL_GPULoadOp +{ + SDL_GPU_LOADOP_LOAD, + SDL_GPU_LOADOP_CLEAR, + SDL_GPU_LOADOP_DONT_CARE +} SDL_GPULoadOp; + +typedef enum SDL_GPUStoreOp +{ + SDL_GPU_STOREOP_STORE, + SDL_GPU_STOREOP_DONT_CARE +} SDL_GPUStoreOp; + +typedef enum SDL_GPUIndexElementSize +{ + SDL_GPU_INDEXELEMENTSIZE_16BIT, + SDL_GPU_INDEXELEMENTSIZE_32BIT +} SDL_GPUIndexElementSize; + +/* Texture format support varies depending on driver, hardware, and usage flags. + * In general, you should use SDL_GPUTextureSupportsFormat to query if a format + * is supported before using it. However, there are a few guaranteed formats. + * + * For SAMPLER usage, the following formats are universally supported: + * - R8G8B8A8_UNORM + * - B8G8R8A8_UNORM + * - R8_UNORM + * - R8G8_SNORM + * - R8G8B8A8_SNORM + * - R16_FLOAT + * - R16G16_FLOAT + * - R16G16B16A16_FLOAT + * - R32_FLOAT + * - R32G32_FLOAT + * - R32G32B32A32_FLOAT + * - R8G8B8A8_UNORM_SRGB + * - B8G8R8A8_UNORM_SRGB + * - D16_UNORM + * + * For COLOR_TARGET usage, the following formats are universally supported: + * - R8G8B8A8_UNORM + * - B8G8R8A8_UNORM + * - R8_UNORM + * - R16_FLOAT + * - R16G16_FLOAT + * - R16G16B16A16_FLOAT + * - R32_FLOAT + * - R32G32_FLOAT + * - R32G32B32A32_FLOAT + * - R8_UINT + * - R8G8_UINT + * - R8G8B8A8_UINT + * - R16_UINT + * - R16G16_UINT + * - R16G16B16A16_UINT + * - R8G8B8A8_UNORM_SRGB + * - B8G8R8A8_UNORM_SRGB + * + * For STORAGE usages, the following formats are universally supported: + * - R8G8B8A8_UNORM + * - R8G8B8A8_SNORM + * - R16G16B16A16_FLOAT + * - R32_FLOAT + * - R32G32_FLOAT + * - R32G32B32A32_FLOAT + * - R8_UINT + * - R8G8_UINT + * - R8G8B8A8_UINT + * - R16_UINT + * - R16G16_UINT + * - R16G16B16A16_UINT + * + * For DEPTH_STENCIL_TARGET usage, the following formats are universally supported: + * - D16_UNORM + * - Either (but not necessarily both!) D24_UNORM or D32_SFLOAT + * - Either (but not necessarily both!) D24_UNORM_S8_UINT or D32_SFLOAT_S8_UINT + * + * Unless D16_UNORM is sufficient for your purposes, always check which + * of D24/D32 is supported before creating a depth-stencil texture! + */ +typedef enum SDL_GPUTextureFormat +{ + SDL_GPU_TEXTUREFORMAT_INVALID = -1, + + /* Unsigned Normalized Float Color Formats */ + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM, + SDL_GPU_TEXTUREFORMAT_B8G8R8A8_UNORM, + SDL_GPU_TEXTUREFORMAT_B5G6R5_UNORM, + SDL_GPU_TEXTUREFORMAT_B5G5R5A1_UNORM, + SDL_GPU_TEXTUREFORMAT_B4G4R4A4_UNORM, + SDL_GPU_TEXTUREFORMAT_R10G10B10A2_UNORM, + SDL_GPU_TEXTUREFORMAT_R16G16_UNORM, + SDL_GPU_TEXTUREFORMAT_R16G16B16A16_UNORM, + SDL_GPU_TEXTUREFORMAT_R8_UNORM, + SDL_GPU_TEXTUREFORMAT_A8_UNORM, + /* Compressed Unsigned Normalized Float Color Formats */ + SDL_GPU_TEXTUREFORMAT_BC1_UNORM, + SDL_GPU_TEXTUREFORMAT_BC2_UNORM, + SDL_GPU_TEXTUREFORMAT_BC3_UNORM, + SDL_GPU_TEXTUREFORMAT_BC7_UNORM, + /* Signed Normalized Float Color Formats */ + SDL_GPU_TEXTUREFORMAT_R8G8_SNORM, + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_SNORM, + /* Signed Float Color Formats */ + SDL_GPU_TEXTUREFORMAT_R16_FLOAT, + SDL_GPU_TEXTUREFORMAT_R16G16_FLOAT, + SDL_GPU_TEXTUREFORMAT_R16G16B16A16_FLOAT, + SDL_GPU_TEXTUREFORMAT_R32_FLOAT, + SDL_GPU_TEXTUREFORMAT_R32G32_FLOAT, + SDL_GPU_TEXTUREFORMAT_R32G32B32A32_FLOAT, + /* Unsigned Integer Color Formats */ + SDL_GPU_TEXTUREFORMAT_R8_UINT, + SDL_GPU_TEXTUREFORMAT_R8G8_UINT, + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UINT, + SDL_GPU_TEXTUREFORMAT_R16_UINT, + SDL_GPU_TEXTUREFORMAT_R16G16_UINT, + SDL_GPU_TEXTUREFORMAT_R16G16B16A16_UINT, + /* SRGB Unsigned Normalized Color Formats */ + SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM_SRGB, + SDL_GPU_TEXTUREFORMAT_B8G8R8A8_UNORM_SRGB, + /* Compressed SRGB Unsigned Normalized Color Formats */ + SDL_GPU_TEXTUREFORMAT_BC3_UNORM_SRGB, + SDL_GPU_TEXTUREFORMAT_BC7_UNORM_SRGB, + /* Depth Formats */ + SDL_GPU_TEXTUREFORMAT_D16_UNORM, + SDL_GPU_TEXTUREFORMAT_D24_UNORM, + SDL_GPU_TEXTUREFORMAT_D32_FLOAT, + SDL_GPU_TEXTUREFORMAT_D24_UNORM_S8_UINT, + SDL_GPU_TEXTUREFORMAT_D32_FLOAT_S8_UINT +} SDL_GPUTextureFormat; + +typedef enum SDL_GPUTextureUsageFlagBits +{ + SDL_GPU_TEXTUREUSAGE_SAMPLER_BIT = 0x00000001, + SDL_GPU_TEXTUREUSAGE_COLOR_TARGET_BIT = 0x00000002, + SDL_GPU_TEXTUREUSAGE_DEPTH_STENCIL_TARGET_BIT = 0x00000004, + SDL_GPU_TEXTUREUSAGE_GRAPHICS_STORAGE_READ_BIT = 0x00000008, + SDL_GPU_TEXTUREUSAGE_COMPUTE_STORAGE_READ_BIT = 0x00000020, + SDL_GPU_TEXTUREUSAGE_COMPUTE_STORAGE_WRITE_BIT = 0x00000040 +} SDL_GPUTextureUsageFlagBits; + +typedef Uint32 SDL_GPUTextureUsageFlags; + +typedef enum SDL_GPUTextureType +{ + SDL_GPU_TEXTURETYPE_2D, + SDL_GPU_TEXTURETYPE_2D_ARRAY, + SDL_GPU_TEXTURETYPE_3D, + SDL_GPU_TEXTURETYPE_CUBE +} SDL_GPUTextureType; + +typedef enum SDL_GPUSampleCount +{ + SDL_GPU_SAMPLECOUNT_1, + SDL_GPU_SAMPLECOUNT_2, + SDL_GPU_SAMPLECOUNT_4, + SDL_GPU_SAMPLECOUNT_8 +} SDL_GPUSampleCount; + +typedef enum SDL_GPUCubeMapFace +{ + SDL_GPU_CUBEMAPFACE_POSITIVEX, + SDL_GPU_CUBEMAPFACE_NEGATIVEX, + SDL_GPU_CUBEMAPFACE_POSITIVEY, + SDL_GPU_CUBEMAPFACE_NEGATIVEY, + SDL_GPU_CUBEMAPFACE_POSITIVEZ, + SDL_GPU_CUBEMAPFACE_NEGATIVEZ +} SDL_GPUCubeMapFace; + +typedef enum SDL_GPUBufferUsageFlagBits +{ + SDL_GPU_BUFFERUSAGE_VERTEX_BIT = 0x00000001, + SDL_GPU_BUFFERUSAGE_INDEX_BIT = 0x00000002, + SDL_GPU_BUFFERUSAGE_INDIRECT_BIT = 0x00000004, + SDL_GPU_BUFFERUSAGE_GRAPHICS_STORAGE_READ_BIT = 0x00000008, + SDL_GPU_BUFFERUSAGE_COMPUTE_STORAGE_READ_BIT = 0x00000020, + SDL_GPU_BUFFERUSAGE_COMPUTE_STORAGE_WRITE_BIT = 0x00000040 +} SDL_GPUBufferUsageFlagBits; + +typedef Uint32 SDL_GPUBufferUsageFlags; + +typedef enum SDL_GPUTransferBufferUsage +{ + SDL_GPU_TRANSFERBUFFERUSAGE_UPLOAD, + SDL_GPU_TRANSFERBUFFERUSAGE_DOWNLOAD +} SDL_GPUTransferBufferUsage; + +typedef enum SDL_GPUShaderStage +{ + SDL_GPU_SHADERSTAGE_VERTEX, + SDL_GPU_SHADERSTAGE_FRAGMENT +} SDL_GPUShaderStage; + +typedef enum SDL_GPUShaderFormatFlagBits +{ + SDL_GPU_SHADERFORMAT_INVALID = 0x00000000, + SDL_GPU_SHADERFORMAT_SECRET = 0x00000001, /* NDA'd platforms */ + SDL_GPU_SHADERFORMAT_SPIRV = 0x00000002, /* Vulkan */ + SDL_GPU_SHADERFORMAT_DXBC = 0x00000004, /* D3D11 (Shader Model 5_0) */ + SDL_GPU_SHADERFORMAT_DXIL = 0x00000008, /* D3D12 */ + SDL_GPU_SHADERFORMAT_MSL = 0x00000010, /* Metal */ + SDL_GPU_SHADERFORMAT_METALLIB = 0x00000020, /* Metal */ +} SDL_GPUShaderFormatFlagBits; + +typedef Uint32 SDL_GPUShaderFormat; + +typedef enum SDL_GPUVertexElementFormat +{ + /* 32-bit Signed Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_INT, + SDL_GPU_VERTEXELEMENTFORMAT_INT2, + SDL_GPU_VERTEXELEMENTFORMAT_INT3, + SDL_GPU_VERTEXELEMENTFORMAT_INT4, + + /* 32-bit Unsigned Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_UINT, + SDL_GPU_VERTEXELEMENTFORMAT_UINT2, + SDL_GPU_VERTEXELEMENTFORMAT_UINT3, + SDL_GPU_VERTEXELEMENTFORMAT_UINT4, + + /* 32-bit Floats */ + SDL_GPU_VERTEXELEMENTFORMAT_FLOAT, + SDL_GPU_VERTEXELEMENTFORMAT_FLOAT2, + SDL_GPU_VERTEXELEMENTFORMAT_FLOAT3, + SDL_GPU_VERTEXELEMENTFORMAT_FLOAT4, + + /* 8-bit Signed Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_BYTE2, + SDL_GPU_VERTEXELEMENTFORMAT_BYTE4, + + /* 8-bit Unsigned Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_UBYTE2, + SDL_GPU_VERTEXELEMENTFORMAT_UBYTE4, + + /* 8-bit Signed Normalized */ + SDL_GPU_VERTEXELEMENTFORMAT_BYTE2_NORM, + SDL_GPU_VERTEXELEMENTFORMAT_BYTE4_NORM, + + /* 8-bit Unsigned Normalized */ + SDL_GPU_VERTEXELEMENTFORMAT_UBYTE2_NORM, + SDL_GPU_VERTEXELEMENTFORMAT_UBYTE4_NORM, + + /* 16-bit Signed Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_SHORT2, + SDL_GPU_VERTEXELEMENTFORMAT_SHORT4, + + /* 16-bit Unsigned Integers */ + SDL_GPU_VERTEXELEMENTFORMAT_USHORT2, + SDL_GPU_VERTEXELEMENTFORMAT_USHORT4, + + /* 16-bit Signed Normalized */ + SDL_GPU_VERTEXELEMENTFORMAT_SHORT2_NORM, + SDL_GPU_VERTEXELEMENTFORMAT_SHORT4_NORM, + + /* 16-bit Unsigned Normalized */ + SDL_GPU_VERTEXELEMENTFORMAT_USHORT2_NORM, + SDL_GPU_VERTEXELEMENTFORMAT_USHORT4_NORM, + + /* 16-bit Floats */ + SDL_GPU_VERTEXELEMENTFORMAT_HALF2, + SDL_GPU_VERTEXELEMENTFORMAT_HALF4 +} SDL_GPUVertexElementFormat; + +typedef enum SDL_GPUVertexInputRate +{ + SDL_GPU_VERTEXINPUTRATE_VERTEX = 0, + SDL_GPU_VERTEXINPUTRATE_INSTANCE = 1 +} SDL_GPUVertexInputRate; + +typedef enum SDL_GPUFillMode +{ + SDL_GPU_FILLMODE_FILL, + SDL_GPU_FILLMODE_LINE +} SDL_GPUFillMode; + +typedef enum SDL_GPUCullMode +{ + SDL_GPU_CULLMODE_NONE, + SDL_GPU_CULLMODE_FRONT, + SDL_GPU_CULLMODE_BACK +} SDL_GPUCullMode; + +typedef enum SDL_GPUFrontFace +{ + SDL_GPU_FRONTFACE_COUNTER_CLOCKWISE, + SDL_GPU_FRONTFACE_CLOCKWISE +} SDL_GPUFrontFace; + +typedef enum SDL_GPUCompareOp +{ + SDL_GPU_COMPAREOP_NEVER, + SDL_GPU_COMPAREOP_LESS, + SDL_GPU_COMPAREOP_EQUAL, + SDL_GPU_COMPAREOP_LESS_OR_EQUAL, + SDL_GPU_COMPAREOP_GREATER, + SDL_GPU_COMPAREOP_NOT_EQUAL, + SDL_GPU_COMPAREOP_GREATER_OR_EQUAL, + SDL_GPU_COMPAREOP_ALWAYS +} SDL_GPUCompareOp; + +typedef enum SDL_GPUStencilOp +{ + SDL_GPU_STENCILOP_KEEP, + SDL_GPU_STENCILOP_ZERO, + SDL_GPU_STENCILOP_REPLACE, + SDL_GPU_STENCILOP_INCREMENT_AND_CLAMP, + SDL_GPU_STENCILOP_DECREMENT_AND_CLAMP, + SDL_GPU_STENCILOP_INVERT, + SDL_GPU_STENCILOP_INCREMENT_AND_WRAP, + SDL_GPU_STENCILOP_DECREMENT_AND_WRAP +} SDL_GPUStencilOp; + +typedef enum SDL_GPUBlendOp +{ + SDL_GPU_BLENDOP_ADD, + SDL_GPU_BLENDOP_SUBTRACT, + SDL_GPU_BLENDOP_REVERSE_SUBTRACT, + SDL_GPU_BLENDOP_MIN, + SDL_GPU_BLENDOP_MAX +} SDL_GPUBlendOp; + +typedef enum SDL_GPUBlendFactor +{ + SDL_GPU_BLENDFACTOR_ZERO, + SDL_GPU_BLENDFACTOR_ONE, + SDL_GPU_BLENDFACTOR_SRC_COLOR, + SDL_GPU_BLENDFACTOR_ONE_MINUS_SRC_COLOR, + SDL_GPU_BLENDFACTOR_DST_COLOR, + SDL_GPU_BLENDFACTOR_ONE_MINUS_DST_COLOR, + SDL_GPU_BLENDFACTOR_SRC_ALPHA, + SDL_GPU_BLENDFACTOR_ONE_MINUS_SRC_ALPHA, + SDL_GPU_BLENDFACTOR_DST_ALPHA, + SDL_GPU_BLENDFACTOR_ONE_MINUS_DST_ALPHA, + SDL_GPU_BLENDFACTOR_CONSTANT_COLOR, + SDL_GPU_BLENDFACTOR_ONE_MINUS_CONSTANT_COLOR, + SDL_GPU_BLENDFACTOR_SRC_ALPHA_SATURATE +} SDL_GPUBlendFactor; + +typedef enum SDL_GPUColorComponentFlagBits +{ + SDL_GPU_COLORCOMPONENT_R_BIT = 0x00000001, + SDL_GPU_COLORCOMPONENT_G_BIT = 0x00000002, + SDL_GPU_COLORCOMPONENT_B_BIT = 0x00000004, + SDL_GPU_COLORCOMPONENT_A_BIT = 0x00000008 +} SDL_GPUColorComponentFlagBits; + +typedef Uint8 SDL_GPUColorComponentFlags; + +typedef enum SDL_GPUFilter +{ + SDL_GPU_FILTER_NEAREST, + SDL_GPU_FILTER_LINEAR +} SDL_GPUFilter; + +typedef enum SDL_GPUSamplerMipmapMode +{ + SDL_GPU_SAMPLERMIPMAPMODE_NEAREST, + SDL_GPU_SAMPLERMIPMAPMODE_LINEAR +} SDL_GPUSamplerMipmapMode; + +typedef enum SDL_GPUSamplerAddressMode +{ + SDL_GPU_SAMPLERADDRESSMODE_REPEAT, + SDL_GPU_SAMPLERADDRESSMODE_MIRRORED_REPEAT, + SDL_GPU_SAMPLERADDRESSMODE_CLAMP_TO_EDGE +} SDL_GPUSamplerAddressMode; + +/* + * VSYNC: + * Waits for vblank before presenting. + * If there is a pending image to present, the new image is enqueued for presentation. + * Disallows tearing at the cost of visual latency. + * When using this present mode, AcquireSwapchainTexture will block if too many frames are in flight. + * IMMEDIATE: + * Immediately presents. + * Lowest latency option, but tearing may occur. + * When using this mode, AcquireSwapchainTexture will return NULL if too many frames are in flight. + * MAILBOX: + * Waits for vblank before presenting. No tearing is possible. + * If there is a pending image to present, the pending image is replaced by the new image. + * Similar to VSYNC, but with reduced visual latency. + * When using this mode, AcquireSwapchainTexture will return NULL if too many frames are in flight. + */ +typedef enum SDL_GPUPresentMode +{ + SDL_GPU_PRESENTMODE_VSYNC, + SDL_GPU_PRESENTMODE_IMMEDIATE, + SDL_GPU_PRESENTMODE_MAILBOX +} SDL_GPUPresentMode; + +/* + * SDR: + * B8G8R8A8 or R8G8B8A8 swapchain. Pixel values are in nonlinear sRGB encoding. Blends raw pixel values. + * SDR_LINEAR: + * B8G8R8A8_SRGB or R8G8B8A8_SRGB swapchain. Pixel values are in nonlinear sRGB encoding. Blends in linear space. + * HDR_EXTENDED_LINEAR: + * R16G16B16A16_SFLOAT swapchain. Pixel values are in extended linear encoding. Blends in linear space. + * HDR10_ST2048: + * A2R10G10B10 or A2B10G10R10 swapchain. Pixel values are in PQ ST2048 encoding. Blends raw pixel values. (TODO: verify this) + */ +typedef enum SDL_GPUSwapchainComposition +{ + SDL_GPU_SWAPCHAINCOMPOSITION_SDR, + SDL_GPU_SWAPCHAINCOMPOSITION_SDR_LINEAR, + SDL_GPU_SWAPCHAINCOMPOSITION_HDR_EXTENDED_LINEAR, + SDL_GPU_SWAPCHAINCOMPOSITION_HDR10_ST2048 +} SDL_GPUSwapchainComposition; + +typedef enum SDL_GPUDriver +{ + SDL_GPU_DRIVER_INVALID = -1, + SDL_GPU_DRIVER_SECRET, /* NDA'd platforms */ + SDL_GPU_DRIVER_VULKAN, + SDL_GPU_DRIVER_D3D11, + SDL_GPU_DRIVER_D3D12, + SDL_GPU_DRIVER_METAL +} SDL_GPUDriver; + +/* Structures */ + +typedef struct SDL_GPUDepthStencilValue +{ + float depth; + Uint8 stencil; +} SDL_GPUDepthStencilValue; + +typedef struct SDL_GPUViewport +{ + float x; + float y; + float w; + float h; + float minDepth; + float maxDepth; +} SDL_GPUViewport; + +typedef struct SDL_GPUTextureTransferInfo +{ + SDL_GPUTransferBuffer *transferBuffer; + Uint32 offset; /* starting location of the image data */ + Uint32 imagePitch; /* number of pixels from one row to the next */ + Uint32 imageHeight; /* number of rows from one layer/depth-slice to the next */ +} SDL_GPUTextureTransferInfo; + +typedef struct SDL_GPUTransferBufferLocation +{ + SDL_GPUTransferBuffer *transferBuffer; + Uint32 offset; +} SDL_GPUTransferBufferLocation; + +typedef struct SDL_GPUTextureLocation +{ + SDL_GPUTexture *texture; + Uint32 mipLevel; + Uint32 layer; + Uint32 x; + Uint32 y; + Uint32 z; +} SDL_GPUTextureLocation; + +typedef struct SDL_GPUTextureRegion +{ + SDL_GPUTexture *texture; + Uint32 mipLevel; + Uint32 layer; + Uint32 x; + Uint32 y; + Uint32 z; + Uint32 w; + Uint32 h; + Uint32 d; +} SDL_GPUTextureRegion; + +typedef struct SDL_GPUBlitRegion +{ + SDL_GPUTexture *texture; + Uint32 mipLevel; + Uint32 layerOrDepthPlane; + Uint32 x; + Uint32 y; + Uint32 w; + Uint32 h; +} SDL_GPUBlitRegion; + +typedef struct SDL_GPUBufferLocation +{ + SDL_GPUBuffer *buffer; + Uint32 offset; +} SDL_GPUBufferLocation; + +typedef struct SDL_GPUBufferRegion +{ + SDL_GPUBuffer *buffer; + Uint32 offset; + Uint32 size; +} SDL_GPUBufferRegion; + +/* Note that the `firstVertex` and `firstInstance` parameters are NOT compatible with + * built-in vertex/instance ID variables in shaders (for example, SV_VertexID). If + * your shader depends on these variables, the correlating draw call parameter MUST + * be 0. + */ +typedef struct SDL_GPUIndirectDrawCommand +{ + Uint32 vertexCount; /* number of vertices to draw */ + Uint32 instanceCount; /* number of instances to draw */ + Uint32 firstVertex; /* index of the first vertex to draw */ + Uint32 firstInstance; /* ID of the first instance to draw */ +} SDL_GPUIndirectDrawCommand; + +typedef struct SDL_GPUIndexedIndirectDrawCommand +{ + Uint32 indexCount; /* number of vertices to draw per instance */ + Uint32 instanceCount; /* number of instances to draw */ + Uint32 firstIndex; /* base index within the index buffer */ + Sint32 vertexOffset; /* value added to vertex index before indexing into the vertex buffer */ + Uint32 firstInstance; /* ID of the first instance to draw */ +} SDL_GPUIndexedIndirectDrawCommand; + +typedef struct SDL_GPUIndirectDispatchCommand +{ + Uint32 groupCountX; + Uint32 groupCountY; + Uint32 groupCountZ; +} SDL_GPUIndirectDispatchCommand; + +/* State structures */ + +typedef struct SDL_GPUSamplerCreateInfo +{ + SDL_GPUFilter minFilter; + SDL_GPUFilter magFilter; + SDL_GPUSamplerMipmapMode mipmapMode; + SDL_GPUSamplerAddressMode addressModeU; + SDL_GPUSamplerAddressMode addressModeV; + SDL_GPUSamplerAddressMode addressModeW; + float mipLodBias; + SDL_bool anisotropyEnable; + float maxAnisotropy; + SDL_bool compareEnable; + SDL_GPUCompareOp compareOp; + float minLod; + float maxLod; + + SDL_PropertiesID props; +} SDL_GPUSamplerCreateInfo; + +typedef struct SDL_GPUVertexBinding +{ + Uint32 binding; + Uint32 stride; + SDL_GPUVertexInputRate inputRate; + Uint32 instanceStepRate; /* ignored unless inputRate is INSTANCE */ +} SDL_GPUVertexBinding; + +typedef struct SDL_GPUVertexAttribute +{ + Uint32 location; + Uint32 binding; + SDL_GPUVertexElementFormat format; + Uint32 offset; +} SDL_GPUVertexAttribute; + +typedef struct SDL_GPUVertexInputState +{ + const SDL_GPUVertexBinding *vertexBindings; + Uint32 vertexBindingCount; + const SDL_GPUVertexAttribute *vertexAttributes; + Uint32 vertexAttributeCount; +} SDL_GPUVertexInputState; + +typedef struct SDL_GPUStencilOpState +{ + SDL_GPUStencilOp failOp; + SDL_GPUStencilOp passOp; + SDL_GPUStencilOp depthFailOp; + SDL_GPUCompareOp compareOp; +} SDL_GPUStencilOpState; + +typedef struct SDL_GPUColorAttachmentBlendState +{ + SDL_bool blendEnable; + SDL_GPUBlendFactor srcColorBlendFactor; + SDL_GPUBlendFactor dstColorBlendFactor; + SDL_GPUBlendOp colorBlendOp; + SDL_GPUBlendFactor srcAlphaBlendFactor; + SDL_GPUBlendFactor dstAlphaBlendFactor; + SDL_GPUBlendOp alphaBlendOp; + SDL_GPUColorComponentFlags colorWriteMask; +} SDL_GPUColorAttachmentBlendState; + +typedef struct SDL_GPUShaderCreateInfo +{ + size_t codeSize; + const Uint8 *code; + const char *entryPointName; + SDL_GPUShaderFormat format; + SDL_GPUShaderStage stage; + Uint32 samplerCount; + Uint32 storageTextureCount; + Uint32 storageBufferCount; + Uint32 uniformBufferCount; + + SDL_PropertiesID props; +} SDL_GPUShaderCreateInfo; + +typedef struct SDL_GPUTextureCreateInfo +{ + SDL_GPUTextureType type; + SDL_GPUTextureFormat format; + SDL_GPUTextureUsageFlags usageFlags; + Uint32 width; + Uint32 height; + Uint32 layerCountOrDepth; + Uint32 levelCount; + SDL_GPUSampleCount sampleCount; + + SDL_PropertiesID props; +} SDL_GPUTextureCreateInfo; + +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_R_FLOAT "SDL.gpu.createtexture.d3d12.clear.r" +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_G_FLOAT "SDL.gpu.createtexture.d3d12.clear.g" +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_B_FLOAT "SDL.gpu.createtexture.d3d12.clear.b" +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_A_FLOAT "SDL.gpu.createtexture.d3d12.clear.a" +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_DEPTH_FLOAT "SDL.gpu.createtexture.d3d12.clear.depth" +#define SDL_PROP_GPU_CREATETEXTURE_D3D12_CLEAR_STENCIL_UINT8 "SDL.gpu.createtexture.d3d12.clear.stencil" + +typedef struct SDL_GPUBufferCreateInfo +{ + SDL_GPUBufferUsageFlags usageFlags; + Uint32 sizeInBytes; + + SDL_PropertiesID props; +} SDL_GPUBufferCreateInfo; + +typedef struct SDL_GPUTransferBufferCreateInfo +{ + SDL_GPUTransferBufferUsage usage; + Uint32 sizeInBytes; + + SDL_PropertiesID props; +} SDL_GPUTransferBufferCreateInfo; + +/* Pipeline state structures */ + +typedef struct SDL_GPURasterizerState +{ + SDL_GPUFillMode fillMode; + SDL_GPUCullMode cullMode; + SDL_GPUFrontFace frontFace; + SDL_bool depthBiasEnable; + float depthBiasConstantFactor; + float depthBiasClamp; + float depthBiasSlopeFactor; +} SDL_GPURasterizerState; + +typedef struct SDL_GPUMultisampleState +{ + SDL_GPUSampleCount sampleCount; + Uint32 sampleMask; +} SDL_GPUMultisampleState; + +typedef struct SDL_GPUDepthStencilState +{ + SDL_bool depthTestEnable; + SDL_bool depthWriteEnable; + SDL_GPUCompareOp compareOp; + SDL_bool stencilTestEnable; + SDL_GPUStencilOpState backStencilState; + SDL_GPUStencilOpState frontStencilState; + Uint8 compareMask; + Uint8 writeMask; + Uint8 reference; +} SDL_GPUDepthStencilState; + +typedef struct SDL_GPUColorAttachmentDescription +{ + SDL_GPUTextureFormat format; + SDL_GPUColorAttachmentBlendState blendState; +} SDL_GPUColorAttachmentDescription; + +typedef struct SDL_GPUGraphicsPipelineAttachmentInfo +{ + SDL_GPUColorAttachmentDescription *colorAttachmentDescriptions; + Uint32 colorAttachmentCount; + SDL_bool hasDepthStencilAttachment; + SDL_GPUTextureFormat depthStencilFormat; +} SDL_GPUGraphicsPipelineAttachmentInfo; + +typedef struct SDL_GPUGraphicsPipelineCreateInfo +{ + SDL_GPUShader *vertexShader; + SDL_GPUShader *fragmentShader; + SDL_GPUVertexInputState vertexInputState; + SDL_GPUPrimitiveType primitiveType; + SDL_GPURasterizerState rasterizerState; + SDL_GPUMultisampleState multisampleState; + SDL_GPUDepthStencilState depthStencilState; + SDL_GPUGraphicsPipelineAttachmentInfo attachmentInfo; + float blendConstants[4]; + + SDL_PropertiesID props; +} SDL_GPUGraphicsPipelineCreateInfo; + +typedef struct SDL_GPUComputePipelineCreateInfo +{ + size_t codeSize; + const Uint8 *code; + const char *entryPointName; + SDL_GPUShaderFormat format; + Uint32 readOnlyStorageTextureCount; + Uint32 readOnlyStorageBufferCount; + Uint32 writeOnlyStorageTextureCount; + Uint32 writeOnlyStorageBufferCount; + Uint32 uniformBufferCount; + Uint32 threadCountX; + Uint32 threadCountY; + Uint32 threadCountZ; + + SDL_PropertiesID props; +} SDL_GPUComputePipelineCreateInfo; + +typedef struct SDL_GPUColorAttachmentInfo +{ + /* The texture that will be used as a color attachment by a render pass. */ + SDL_GPUTexture *texture; + Uint32 mipLevel; + Uint32 layerOrDepthPlane; /* For 3D textures, you can bind an individual depth plane as an attachment. */ + + /* Can be ignored by RenderPass if CLEAR is not used */ + SDL_FColor clearColor; + + /* Determines what is done with the texture at the beginning of the render pass. + * + * LOAD: + * Loads the data currently in the texture. + * + * CLEAR: + * Clears the texture to a single color. + * + * DONT_CARE: + * The driver will do whatever it wants with the texture memory. + * This is a good option if you know that every single pixel will be touched in the render pass. + */ + SDL_GPULoadOp loadOp; + + /* Determines what is done with the texture at the end of the render pass. + * + * STORE: + * Stores the results of the render pass in the texture. + * + * DONT_CARE: + * The driver will do whatever it wants with the texture memory. + * This is often a good option for depth/stencil textures. + */ + SDL_GPUStoreOp storeOp; + + /* if SDL_TRUE, cycles the texture if the texture is bound and loadOp is not LOAD */ + SDL_bool cycle; +} SDL_GPUColorAttachmentInfo; + +typedef struct SDL_GPUDepthStencilAttachmentInfo +{ + /* The texture that will be used as the depth stencil attachment by a render pass. */ + SDL_GPUTexture *texture; + + /* Can be ignored by the render pass if CLEAR is not used */ + SDL_GPUDepthStencilValue depthStencilClearValue; + + /* Determines what is done with the depth values at the beginning of the render pass. + * + * LOAD: + * Loads the depth values currently in the texture. + * + * CLEAR: + * Clears the texture to a single depth. + * + * DONT_CARE: + * The driver will do whatever it wants with the memory. + * This is a good option if you know that every single pixel will be touched in the render pass. + */ + SDL_GPULoadOp loadOp; + + /* Determines what is done with the depth values at the end of the render pass. + * + * STORE: + * Stores the depth results in the texture. + * + * DONT_CARE: + * The driver will do whatever it wants with the texture memory. + * This is often a good option for depth/stencil textures. + */ + SDL_GPUStoreOp storeOp; + + /* Determines what is done with the stencil values at the beginning of the render pass. + * + * LOAD: + * Loads the stencil values currently in the texture. + * + * CLEAR: + * Clears the texture to a single stencil value. + * + * DONT_CARE: + * The driver will do whatever it wants with the memory. + * This is a good option if you know that every single pixel will be touched in the render pass. + */ + SDL_GPULoadOp stencilLoadOp; + + /* Determines what is done with the stencil values at the end of the render pass. + * + * STORE: + * Stores the stencil results in the texture. + * + * DONT_CARE: + * The driver will do whatever it wants with the texture memory. + * This is often a good option for depth/stencil textures. + */ + SDL_GPUStoreOp stencilStoreOp; + + /* if SDL_TRUE, cycles the texture if the texture is bound and any load ops are not LOAD */ + SDL_bool cycle; +} SDL_GPUDepthStencilAttachmentInfo; + +/* Binding structs */ + +typedef struct SDL_GPUBufferBinding +{ + SDL_GPUBuffer *buffer; + Uint32 offset; +} SDL_GPUBufferBinding; + +typedef struct SDL_GPUTextureSamplerBinding +{ + SDL_GPUTexture *texture; + SDL_GPUSampler *sampler; +} SDL_GPUTextureSamplerBinding; + +typedef struct SDL_GPUStorageBufferWriteOnlyBinding +{ + SDL_GPUBuffer *buffer; + + /* if SDL_TRUE, cycles the buffer if it is bound. */ + SDL_bool cycle; +} SDL_GPUStorageBufferWriteOnlyBinding; + +typedef struct SDL_GPUStorageTextureWriteOnlyBinding +{ + SDL_GPUTexture *texture; + Uint32 mipLevel; + Uint32 layer; + + /* if SDL_TRUE, cycles the texture if the texture is bound. */ + SDL_bool cycle; +} SDL_GPUStorageTextureWriteOnlyBinding; + +/* Functions */ + +/* Device */ + +/** + * Creates a GPU context. + * + * \param formatFlags a bitflag indicating which shader formats the app is + * able to provide. + * \param debugMode enable debug mode properties and validations. + * \param name the preferred GPU driver, or NULL to let SDL pick the optimal + * driver. + * \returns a GPU context on success or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_GetGPUDriver + * \sa SDL_DestroyGPUDevice + */ +extern SDL_DECLSPEC SDL_GPUDevice *SDLCALL SDL_CreateGPUDevice( + SDL_GPUShaderFormat formatFlags, + SDL_bool debugMode, + const char *name); + +/** + * Creates a GPU context. + * + * These are the supported properties: + * + * - `SDL_PROP_GPU_DEVICE_CREATE_DEBUGMODE_BOOL`: enable debug mode properties + * and validations, defaults to SDL_TRUE. + * - `SDL_PROP_GPU_DEVICE_CREATE_PREFERLOWPOWER_BOOL`: enable to prefer energy + * efficiency over maximum GPU performance, defaults to SDL_FALSE. + * - `SDL_PROP_GPU_DEVICE_CREATE_NAME_STRING`: the name of the GPU driver to + * use, if a specific one is desired. + * + * These are the current shader format properties: + * + * - `SDL_PROP_GPU_DEVICE_CREATE_SHADERS_SECRET_BOOL`: The app is able to + * provide shaders for an NDA platform. + * - `SDL_PROP_GPU_DEVICE_CREATE_SHADERS_SPIRV_BOOL`: The app is able to + * provide SPIR-V shaders if applicable. + * - SDL_PROP_GPU_DEVICE_CREATE_SHADERS_DXBC_BOOL`: The app is able to provide + * DXBC shaders if applicable + * `SDL_PROP_GPU_DEVICE_CREATE_SHADERS_DXIL_BOOL`: The app is able to + * provide DXIL shaders if applicable. + * - `SDL_PROP_GPU_DEVICE_CREATE_SHADERS_MSL_BOOL`: The app is able to provide + * MSL shaders if applicable. + * - `SDL_PROP_GPU_DEVICE_CREATE_SHADERS_METALLIB_BOOL`: The app is able to + * provide Metal shader libraries if applicable. + * + * With the D3D12 renderer: + * + * - `SDL_PROP_GPU_DEVICE_CREATE_D3D12_SEMANTIC_NAME_STRING`: the prefix to + * use for all vertex semantics, default is "TEXCOORD". + * + * \param props the properties to use. + * \returns a GPU context on success or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_GetGPUDriver + * \sa SDL_DestroyGPUDevice + */ +extern SDL_DECLSPEC SDL_GPUDevice *SDLCALL SDL_CreateGPUDeviceWithProperties( + SDL_PropertiesID props); + +#define SDL_PROP_GPU_DEVICE_CREATE_DEBUGMODE_BOOL "SDL.gpu.device.create.debugmode" +#define SDL_PROP_GPU_DEVICE_CREATE_PREFERLOWPOWER_BOOL "SDL.gpu.device.create.preferlowpower" +#define SDL_PROP_GPU_DEVICE_CREATE_NAME_STRING "SDL.gpu.device.create.name" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_SECRET_BOOL "SDL.gpu.device.create.shaders.secret" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_SPIRV_BOOL "SDL.gpu.device.create.shaders.spirv" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_DXBC_BOOL "SDL.gpu.device.create.shaders.dxbc" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_DXIL_BOOL "SDL.gpu.device.create.shaders.dxil" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_MSL_BOOL "SDL.gpu.device.create.shaders.msl" +#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_METALLIB_BOOL "SDL.gpu.device.create.shaders.metallib" +#define SDL_PROP_GPU_DEVICE_CREATE_D3D12_SEMANTIC_NAME_STRING "SDL.gpu.device.create.d3d12.semantic" + +/** + * Destroys a GPU context previously returned by SDL_CreateGPUDevice. + * + * \param device a GPU Context to destroy. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_CreateGPUDevice + */ +extern SDL_DECLSPEC void SDLCALL SDL_DestroyGPUDevice(SDL_GPUDevice *device); + +/** + * Returns the backend used to create this GPU context. + * + * \param device a GPU context to query. + * \returns an SDL_GPUDriver value, or SDL_GPU_DRIVER_INVALID on error. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC SDL_GPUDriver SDLCALL SDL_GetGPUDriver(SDL_GPUDevice *device); + +/* State Creation */ + +/** + * Creates a pipeline object to be used in a compute workflow. + * + * Shader resource bindings must be authored to follow a particular order. For + * SPIR-V shaders, use the following resource sets: 0: Read-only storage + * textures, followed by read-only storage buffers 1: Write-only storage + * textures, followed by write-only storage buffers 2: Uniform buffers + * + * For DXBC Shader Model 5_0 shaders, use the following register order: For t + * registers: Read-only storage textures, followed by read-only storage + * buffers For u registers: Write-only storage textures, followed by + * write-only storage buffers For b registers: Uniform buffers + * + * For DXIL shaders, use the following register order: (t[n], space0): + * Read-only storage textures, followed by read-only storage buffers (u[n], + * space1): Write-only storage textures, followed by write-only storage + * buffers (b[n], space2): Uniform buffers + * + * For MSL/metallib, use the following order: For [[buffer]]: Uniform buffers, + * followed by write-only storage buffers, followed by write-only storage + * buffers For [[texture]]: Read-only storage textures, followed by write-only + * storage textures + * + * \param device a GPU Context. + * \param computePipelineCreateInfo a struct describing the state of the + * requested compute pipeline. + * \returns a compute pipeline object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_BindGPUComputePipeline + * \sa SDL_ReleaseGPUComputePipeline + */ +extern SDL_DECLSPEC SDL_GPUComputePipeline *SDLCALL SDL_CreateGPUComputePipeline( + SDL_GPUDevice *device, + SDL_GPUComputePipelineCreateInfo *computePipelineCreateInfo); + +/** + * Creates a pipeline object to be used in a graphics workflow. + * + * \param device a GPU Context. + * \param pipelineCreateInfo a struct describing the state of the desired + * graphics pipeline. + * \returns a graphics pipeline object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_CreateGPUShader + * \sa SDL_BindGPUGraphicsPipeline + * \sa SDL_ReleaseGPUGraphicsPipeline + */ +extern SDL_DECLSPEC SDL_GPUGraphicsPipeline *SDLCALL SDL_CreateGPUGraphicsPipeline( + SDL_GPUDevice *device, + SDL_GPUGraphicsPipelineCreateInfo *pipelineCreateInfo); + +/** + * Creates a sampler object to be used when binding textures in a graphics + * workflow. + * + * \param device a GPU Context. + * \param samplerCreateInfo a struct describing the state of the desired + * sampler. + * \returns a sampler object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_BindGPUVertexSamplers + * \sa SDL_BindGPUFragmentSamplers + * \sa SDL_ReleaseSampler + */ +extern SDL_DECLSPEC SDL_GPUSampler *SDLCALL SDL_CreateGPUSampler( + SDL_GPUDevice *device, + SDL_GPUSamplerCreateInfo *samplerCreateInfo); + +/** + * Creates a shader to be used when creating a graphics pipeline. + * + * Shader resource bindings must be authored to follow a particular order + * depending on the shader format. + * + * For SPIR-V shaders, use the following resource sets: For vertex shaders: 0: + * Sampled textures, followed by storage textures, followed by storage buffers + * 1: Uniform buffers For fragment shaders: 2: Sampled textures, followed by + * storage textures, followed by storage buffers 3: Uniform buffers + * + * For DXBC Shader Model 5_0 shaders, use the following register order: For t + * registers: Sampled textures, followed by storage textures, followed by + * storage buffers For s registers: Samplers with indices corresponding to the + * sampled textures For b registers: Uniform buffers + * + * For DXIL shaders, use the following register order: For vertex shaders: + * (t[n], space0): Sampled textures, followed by storage textures, followed by + * storage buffers (s[n], space0): Samplers with indices corresponding to the + * sampled textures (b[n], space1): Uniform buffers For pixel shaders: (t[n], + * space2): Sampled textures, followed by storage textures, followed by + * storage buffers (s[n], space2): Samplers with indices corresponding to the + * sampled textures (b[n], space3): Uniform buffers + * + * For MSL/metallib, use the following order: For [[texture]]: Sampled + * textures, followed by storage textures For [[sampler]]: Samplers with + * indices corresponding to the sampled textures For [[buffer]]: Uniform + * buffers, followed by storage buffers. Vertex buffer 0 is bound at + * [[buffer(30)]], vertex buffer 1 at [[buffer(29)]], and so on. Rather than + * manually authoring vertex buffer indices, use the [[stage_in]] attribute + * which will automatically use the vertex input information from the + * SDL_GPUPipeline. + * + * \param device a GPU Context. + * \param shaderCreateInfo a struct describing the state of the desired + * shader. + * \returns a shader object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_CreateGPUGraphicsPipeline + * \sa SDL_ReleaseGPUShader + */ +extern SDL_DECLSPEC SDL_GPUShader *SDLCALL SDL_CreateGPUShader( + SDL_GPUDevice *device, + SDL_GPUShaderCreateInfo *shaderCreateInfo); + +/** + * Creates a texture object to be used in graphics or compute workflows. + * + * The contents of this texture are undefined until data is written to the + * texture. + * + * Note that certain combinations of usage flags are invalid. For example, a + * texture cannot have both the SAMPLER and GRAPHICS_STORAGE_READ flags. + * + * If you request a sample count higher than the hardware supports, the + * implementation will automatically fall back to the highest available sample + * count. + * + * \param device a GPU Context. + * \param textureCreateInfo a struct describing the state of the texture to + * create. + * \returns a texture object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_UploadToGPUTexture + * \sa SDL_DownloadFromGPUTexture + * \sa SDL_BindGPUVertexSamplers + * \sa SDL_BindGPUVertexStorageTextures + * \sa SDL_BindGPUFragmentSamplers + * \sa SDL_BindGPUFragmentStorageTextures + * \sa SDL_BindGPUComputeStorageTextures + * \sa SDL_BlitGPUTexture + * \sa SDL_ReleaseGPUTexture + * \sa SDL_GPUTextureSupportsFormat + */ +extern SDL_DECLSPEC SDL_GPUTexture *SDLCALL SDL_CreateGPUTexture( + SDL_GPUDevice *device, + SDL_GPUTextureCreateInfo *textureCreateInfo); + +/** + * Creates a buffer object to be used in graphics or compute workflows. + * + * The contents of this buffer are undefined until data is written to the + * buffer. + * + * Note that certain combinations of usage flags are invalid. For example, a + * buffer cannot have both the VERTEX and INDEX flags. + * + * \param device a GPU Context. + * \param bufferCreateInfo a struct describing the state of the buffer to + * create. + * \returns a buffer object on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_UploadToGPUBuffer + * \sa SDL_BindGPUVertexBuffers + * \sa SDL_BindGPUIndexBuffer + * \sa SDL_BindGPUVertexStorageBuffers + * \sa SDL_BindGPUFragmentStorageBuffers + * \sa SDL_BindGPUComputeStorageBuffers + * \sa SDL_ReleaseGPUBuffer + */ +extern SDL_DECLSPEC SDL_GPUBuffer *SDLCALL SDL_CreateGPUBuffer( + SDL_GPUDevice *device, + SDL_GPUBufferCreateInfo *bufferCreateInfo); + +/** + * Creates a transfer buffer to be used when uploading to or downloading from + * graphics resources. + * + * \param device a GPU Context. + * \param transferBufferCreateInfo a struct describing the state of the + * transfer buffer to create. + * \returns a transfer buffer on success, or NULL on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_UploadToGPUBuffer + * \sa SDL_DownloadFromGPUBuffer + * \sa SDL_UploadToGPUTexture + * \sa SDL_DownloadFromGPUTexture + * \sa SDL_ReleaseGPUTransferBuffer + */ +extern SDL_DECLSPEC SDL_GPUTransferBuffer *SDLCALL SDL_CreateGPUTransferBuffer( + SDL_GPUDevice *device, + SDL_GPUTransferBufferCreateInfo *transferBufferCreateInfo); + +/* Debug Naming */ + +/** + * Sets an arbitrary string constant to label a buffer. + * + * Useful for debugging. + * + * \param device a GPU Context. + * \param buffer a buffer to attach the name to. + * \param text a UTF-8 string constant to mark as the name of the buffer. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_SetGPUBufferName( + SDL_GPUDevice *device, + SDL_GPUBuffer *buffer, + const char *text); + +/** + * Sets an arbitrary string constant to label a texture. + * + * Useful for debugging. + * + * \param device a GPU Context. + * \param texture a texture to attach the name to. + * \param text a UTF-8 string constant to mark as the name of the texture. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_SetGPUTextureName( + SDL_GPUDevice *device, + SDL_GPUTexture *texture, + const char *text); + +/** + * Inserts an arbitrary string label into the command buffer callstream. + * + * Useful for debugging. + * + * \param commandBuffer a command buffer. + * \param text a UTF-8 string constant to insert as the label. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_InsertGPUDebugLabel( + SDL_GPUCommandBuffer *commandBuffer, + const char *text); + +/** + * Begins a debug group with an arbitary name. + * + * Used for denoting groups of calls when viewing the command buffer + * callstream in a graphics debugging tool. + * + * Each call to SDL_PushGPUDebugGroup must have a corresponding call to + * SDL_PopGPUDebugGroup. + * + * On some backends (e.g. Metal), pushing a debug group during a + * render/blit/compute pass will create a group that is scoped to the native + * pass rather than the command buffer. For best results, if you push a debug + * group during a pass, always pop it in the same pass. + * + * \param commandBuffer a command buffer. + * \param name a UTF-8 string constant that names the group. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_PopGPUDebugGroup + */ +extern SDL_DECLSPEC void SDLCALL SDL_PushGPUDebugGroup( + SDL_GPUCommandBuffer *commandBuffer, + const char *name); + +/** + * Ends the most-recently pushed debug group. + * + * \param commandBuffer a command buffer. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_PushGPUDebugGroup + */ +extern SDL_DECLSPEC void SDLCALL SDL_PopGPUDebugGroup( + SDL_GPUCommandBuffer *commandBuffer); + +/* Disposal */ + +/** + * Frees the given texture as soon as it is safe to do so. + * + * You must not reference the texture after calling this function. + * + * \param device a GPU context. + * \param texture a texture to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUTexture( + SDL_GPUDevice *device, + SDL_GPUTexture *texture); + +/** + * Frees the given sampler as soon as it is safe to do so. + * + * You must not reference the texture after calling this function. + * + * \param device a GPU context. + * \param sampler a sampler to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUSampler( + SDL_GPUDevice *device, + SDL_GPUSampler *sampler); + +/** + * Frees the given buffer as soon as it is safe to do so. + * + * You must not reference the buffer after calling this function. + * + * \param device a GPU context. + * \param buffer a buffer to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUBuffer( + SDL_GPUDevice *device, + SDL_GPUBuffer *buffer); + +/** + * Frees the given transfer buffer as soon as it is safe to do so. + * + * You must not reference the transfer buffer after calling this function. + * + * \param device a GPU context. + * \param transferBuffer a transfer buffer to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUTransferBuffer( + SDL_GPUDevice *device, + SDL_GPUTransferBuffer *transferBuffer); + +/** + * Frees the given compute pipeline as soon as it is safe to do so. + * + * You must not reference the compute pipeline after calling this function. + * + * \param device a GPU context. + * \param computePipeline a compute pipeline to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUComputePipeline( + SDL_GPUDevice *device, + SDL_GPUComputePipeline *computePipeline); + +/** + * Frees the given shader as soon as it is safe to do so. + * + * You must not reference the shader after calling this function. + * + * \param device a GPU context. + * \param shader a shader to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUShader( + SDL_GPUDevice *device, + SDL_GPUShader *shader); + +/** + * Frees the given graphics pipeline as soon as it is safe to do so. + * + * You must not reference the graphics pipeline after calling this function. + * + * \param device a GPU context. + * \param graphicsPipeline a graphics pipeline to be destroyed. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUGraphicsPipeline( + SDL_GPUDevice *device, + SDL_GPUGraphicsPipeline *graphicsPipeline); + +/* + * COMMAND BUFFERS + * + * Render state is managed via command buffers. + * When setting render state, that state is always local to the command buffer. + * + * Commands only begin execution on the GPU once Submit is called. + * Once the command buffer is submitted, it is no longer valid to use it. + * + * Command buffers are executed in submission order. If you submit command buffer A and then command buffer B + * all commands in A will begin executing before any command in B begins executing. + * + * In multi-threading scenarios, you should acquire and submit a command buffer on the same thread. + * As long as you satisfy this requirement, all functionality related to command buffers is thread-safe. + */ + +/** + * Acquire a command buffer. + * + * This command buffer is managed by the implementation and should not be + * freed by the user. The command buffer may only be used on the thread it was + * acquired on. The command buffer should be submitted on the thread it was + * acquired on. + * + * \param device a GPU context. + * \returns a command buffer. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SubmitGPUCommandBuffer + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + */ +extern SDL_DECLSPEC SDL_GPUCommandBuffer *SDLCALL SDL_AcquireGPUCommandBuffer( + SDL_GPUDevice *device); + +/* + * UNIFORM DATA + * + * Uniforms are for passing data to shaders. + * The uniform data will be constant across all executions of the shader. + * + * There are 4 available uniform slots per shader stage (vertex, fragment, compute). + * Uniform data pushed to a slot on a stage keeps its value throughout the command buffer + * until you call the relevant Push function on that slot again. + * + * For example, you could write your vertex shaders to read a camera matrix from uniform binding slot 0, + * push the camera matrix at the start of the command buffer, and that data will be used for every + * subsequent draw call. + * + * It is valid to push uniform data during a render or compute pass. + * + * Uniforms are best for pushing small amounts of data. + * If you are pushing more than a matrix or two per call you should consider using a storage buffer instead. + */ + +/** + * Pushes data to a vertex uniform slot on the command buffer. + * + * Subsequent draw calls will use this uniform data. + * + * \param commandBuffer a command buffer. + * \param slotIndex the vertex uniform slot to push data to. + * \param data client data to write. + * \param dataLengthInBytes the length of the data to write. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_PushGPUVertexUniformData( + SDL_GPUCommandBuffer *commandBuffer, + Uint32 slotIndex, + const void *data, + Uint32 dataLengthInBytes); + +/** + * Pushes data to a fragment uniform slot on the command buffer. + * + * Subsequent draw calls will use this uniform data. + * + * \param commandBuffer a command buffer. + * \param slotIndex the fragment uniform slot to push data to. + * \param data client data to write. + * \param dataLengthInBytes the length of the data to write. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_PushGPUFragmentUniformData( + SDL_GPUCommandBuffer *commandBuffer, + Uint32 slotIndex, + const void *data, + Uint32 dataLengthInBytes); + +/** + * Pushes data to a uniform slot on the command buffer. + * + * Subsequent draw calls will use this uniform data. + * + * \param commandBuffer a command buffer. + * \param slotIndex the uniform slot to push data to. + * \param data client data to write. + * \param dataLengthInBytes the length of the data to write. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_PushGPUComputeUniformData( + SDL_GPUCommandBuffer *commandBuffer, + Uint32 slotIndex, + const void *data, + Uint32 dataLengthInBytes); + +/* + * A NOTE ON CYCLING + * + * When using a command buffer, operations do not occur immediately - + * they occur some time after the command buffer is submitted. + * + * When a resource is used in a pending or active command buffer, it is considered to be "bound". + * When a resource is no longer used in any pending or active command buffers, it is considered to be "unbound". + * + * If data resources are bound, it is unspecified when that data will be unbound + * unless you acquire a fence when submitting the command buffer and wait on it. + * However, this doesn't mean you need to track resource usage manually. + * + * All of the functions and structs that involve writing to a resource have a "cycle" bool. + * GPUTransferBuffer, GPUBuffer, and GPUTexture all effectively function as ring buffers on internal resources. + * When cycle is SDL_TRUE, if the resource is bound, the cycle rotates to the next unbound internal resource, + * or if none are available, a new one is created. + * This means you don't have to worry about complex state tracking and synchronization as long as cycling is correctly employed. + * + * For example: you can call MapTransferBuffer, write texture data, UnmapTransferBuffer, and then UploadToTexture. + * The next time you write texture data to the transfer buffer, if you set the cycle param to SDL_TRUE, you don't have + * to worry about overwriting any data that is not yet uploaded. + * + * Another example: If you are using a texture in a render pass every frame, this can cause a data dependency between frames. + * If you set cycle to SDL_TRUE in the ColorAttachmentInfo struct, you can prevent this data dependency. + * + * Cycling will never undefine already bound data. + * When cycling, all data in the resource is considered to be undefined for subsequent commands until that data is written again. + * You must take care not to read undefined data. + * + * Note that when cycling a texture, the entire texture will be cycled, + * even if only part of the texture is used in the call, + * so you must consider the entire texture to contain undefined data after cycling. + * + * You must also take care not to overwrite a section of data that has been referenced in a command without cycling first. + * It is OK to overwrite unreferenced data in a bound resource without cycling, + * but overwriting a section of data that has already been referenced will produce unexpected results. + */ + +/* Graphics State */ + +/** + * Begins a render pass on a command buffer. + * + * A render pass consists of a set of texture subresources (or depth slices in + * the 3D texture case) which will be rendered to during the render pass, + * along with corresponding clear values and load/store operations. All + * operations related to graphics pipelines must take place inside of a render + * pass. A default viewport and scissor state are automatically set when this + * is called. You cannot begin another render pass, or begin a compute pass or + * copy pass until you have ended the render pass. + * + * \param commandBuffer a command buffer. + * \param colorAttachmentInfos an array of texture subresources with + * corresponding clear values and load/store ops. + * \param colorAttachmentCount the number of color attachments in the + * colorAttachmentInfos array. + * \param depthStencilAttachmentInfo a texture subresource with corresponding + * clear value and load/store ops, may be + * NULL. + * \returns a render pass handle. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_EndGPURenderPass + */ +extern SDL_DECLSPEC SDL_GPURenderPass *SDLCALL SDL_BeginGPURenderPass( + SDL_GPUCommandBuffer *commandBuffer, + SDL_GPUColorAttachmentInfo *colorAttachmentInfos, + Uint32 colorAttachmentCount, + SDL_GPUDepthStencilAttachmentInfo *depthStencilAttachmentInfo); + +/** + * Binds a graphics pipeline on a render pass to be used in rendering. + * + * A graphics pipeline must be bound before making any draw calls. + * + * \param renderPass a render pass handle. + * \param graphicsPipeline the graphics pipeline to bind. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUGraphicsPipeline( + SDL_GPURenderPass *renderPass, + SDL_GPUGraphicsPipeline *graphicsPipeline); + +/** + * Sets the current viewport state on a command buffer. + * + * \param renderPass a render pass handle. + * \param viewport the viewport to set. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_SetGPUViewport( + SDL_GPURenderPass *renderPass, + SDL_GPUViewport *viewport); + +/** + * Sets the current scissor state on a command buffer. + * + * \param renderPass a render pass handle. + * \param scissor the scissor area to set. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_SetGPUScissor( + SDL_GPURenderPass *renderPass, + SDL_Rect *scissor); + +/** + * Binds vertex buffers on a command buffer for use with subsequent draw + * calls. + * + * \param renderPass a render pass handle. + * \param firstBinding the starting bind point for the vertex buffers. + * \param pBindings an array of SDL_GPUBufferBinding structs containing vertex + * buffers and offset values. + * \param bindingCount the number of bindings in the pBindings array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUVertexBuffers( + SDL_GPURenderPass *renderPass, + Uint32 firstBinding, + SDL_GPUBufferBinding *pBindings, + Uint32 bindingCount); + +/** + * Binds an index buffer on a command buffer for use with subsequent draw + * calls. + * + * \param renderPass a render pass handle. + * \param pBinding a pointer to a struct containing an index buffer and + * offset. + * \param indexElementSize whether the index values in the buffer are 16- or + * 32-bit. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUIndexBuffer( + SDL_GPURenderPass *renderPass, + SDL_GPUBufferBinding *pBinding, + SDL_GPUIndexElementSize indexElementSize); + +/** + * Binds texture-sampler pairs for use on the vertex shader. + * + * The textures must have been created with SDL_GPU_TEXTUREUSAGE_SAMPLER_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the vertex sampler slot to begin binding from. + * \param textureSamplerBindings an array of texture-sampler binding structs. + * \param bindingCount the number of texture-sampler pairs to bind from the + * array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUVertexSamplers( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUTextureSamplerBinding *textureSamplerBindings, + Uint32 bindingCount); + +/** + * Binds storage textures for use on the vertex shader. + * + * These textures must have been created with + * SDL_GPU_TEXTUREUSAGE_GRAPHICS_STORAGE_READ_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the vertex storage texture slot to begin binding from. + * \param storageTextures an array of storage textures. + * \param bindingCount the number of storage texture to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUVertexStorageTextures( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUTexture **storageTextures, + Uint32 bindingCount); + +/** + * Binds storage buffers for use on the vertex shader. + * + * These buffers must have been created with + * SDL_GPU_BUFFERUSAGE_GRAPHICS_STORAGE_READ_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the vertex storage buffer slot to begin binding from. + * \param storageBuffers an array of buffers. + * \param bindingCount the number of buffers to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUVertexStorageBuffers( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUBuffer **storageBuffers, + Uint32 bindingCount); + +/** + * Binds texture-sampler pairs for use on the fragment shader. + * + * The textures must have been created with SDL_GPU_TEXTUREUSAGE_SAMPLER_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the fragment sampler slot to begin binding from. + * \param textureSamplerBindings an array of texture-sampler binding structs. + * \param bindingCount the number of texture-sampler pairs to bind from the + * array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUFragmentSamplers( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUTextureSamplerBinding *textureSamplerBindings, + Uint32 bindingCount); + +/** + * Binds storage textures for use on the fragment shader. + * + * These textures must have been created with + * SDL_GPU_TEXTUREUSAGE_GRAPHICS_STORAGE_READ_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the fragment storage texture slot to begin binding from. + * \param storageTextures an array of storage textures. + * \param bindingCount the number of storage textures to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUFragmentStorageTextures( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUTexture **storageTextures, + Uint32 bindingCount); + +/** + * Binds storage buffers for use on the fragment shader. + * + * These buffers must have been created with + * SDL_GPU_BUFFERUSAGE_GRAPHICS_STORAGE_READ_BIT. + * + * \param renderPass a render pass handle. + * \param firstSlot the fragment storage buffer slot to begin binding from. + * \param storageBuffers an array of storage buffers. + * \param bindingCount the number of storage buffers to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUFragmentStorageBuffers( + SDL_GPURenderPass *renderPass, + Uint32 firstSlot, + SDL_GPUBuffer **storageBuffers, + Uint32 bindingCount); + +/* Drawing */ + +/** + * Draws data using bound graphics state with an index buffer and instancing + * enabled. + * + * You must not call this function before binding a graphics pipeline. + * + * Note that the `firstVertex` and `firstInstance` parameters are NOT + * compatible with built-in vertex/instance ID variables in shaders (for + * example, SV_VertexID). If your shader depends on these variables, the + * correlating draw call parameter MUST be 0. + * + * \param renderPass a render pass handle. + * \param indexCount the number of vertices to draw per instance. + * \param instanceCount the number of instances to draw. + * \param firstIndex the starting index within the index buffer. + * \param vertexOffset value added to vertex index before indexing into the + * vertex buffer. + * \param firstInstance the ID of the first instance to draw. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DrawGPUIndexedPrimitives( + SDL_GPURenderPass *renderPass, + Uint32 indexCount, + Uint32 instanceCount, + Uint32 firstIndex, + Sint32 vertexOffset, + Uint32 firstInstance); + +/** + * Draws data using bound graphics state. + * + * You must not call this function before binding a graphics pipeline. + * + * Note that the `firstVertex` and `firstInstance` parameters are NOT + * compatible with built-in vertex/instance ID variables in shaders (for + * example, SV_VertexID). If your shader depends on these variables, the + * correlating draw call parameter MUST be 0. + * + * \param renderPass a render pass handle. + * \param vertexCount the number of vertices to draw. + * \param instanceCount the number of instances that will be drawn. + * \param firstVertex the index of the first vertex to draw. + * \param firstInstance the ID of the first instance to draw. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DrawGPUPrimitives( + SDL_GPURenderPass *renderPass, + Uint32 vertexCount, + Uint32 instanceCount, + Uint32 firstVertex, + Uint32 firstInstance); + +/** + * Draws data using bound graphics state and with draw parameters set from a + * buffer. + * + * The buffer layout should match the layout of SDL_GPUIndirectDrawCommand. + * You must not call this function before binding a graphics pipeline. + * + * \param renderPass a render pass handle. + * \param buffer a buffer containing draw parameters. + * \param offsetInBytes the offset to start reading from the draw buffer. + * \param drawCount the number of draw parameter sets that should be read from + * the draw buffer. + * \param stride the byte stride between sets of draw parameters. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DrawGPUPrimitivesIndirect( + SDL_GPURenderPass *renderPass, + SDL_GPUBuffer *buffer, + Uint32 offsetInBytes, + Uint32 drawCount, + Uint32 stride); + +/** + * Draws data using bound graphics state with an index buffer enabled and with + * draw parameters set from a buffer. + * + * The buffer layout should match the layout of + * SDL_GPUIndexedIndirectDrawCommand. You must not call this function before + * binding a graphics pipeline. + * + * \param renderPass a render pass handle. + * \param buffer a buffer containing draw parameters. + * \param offsetInBytes the offset to start reading from the draw buffer. + * \param drawCount the number of draw parameter sets that should be read from + * the draw buffer. + * \param stride the byte stride between sets of draw parameters. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DrawGPUIndexedPrimitivesIndirect( + SDL_GPURenderPass *renderPass, + SDL_GPUBuffer *buffer, + Uint32 offsetInBytes, + Uint32 drawCount, + Uint32 stride); + +/** + * Ends the given render pass. + * + * All bound graphics state on the render pass command buffer is unset. The + * render pass handle is now invalid. + * + * \param renderPass a render pass handle. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_EndGPURenderPass( + SDL_GPURenderPass *renderPass); + +/* Compute Pass */ + +/** + * Begins a compute pass on a command buffer. + * + * A compute pass is defined by a set of texture subresources and buffers that + * will be written to by compute pipelines. These textures and buffers must + * have been created with the COMPUTE_STORAGE_WRITE bit. All operations + * related to compute pipelines must take place inside of a compute pass. You + * must not begin another compute pass, or a render pass or copy pass before + * ending the compute pass. + * + * A VERY IMPORTANT NOTE Textures and buffers bound as write-only MUST NOT be + * read from during the compute pass. Doing so will result in undefined + * behavior. If your compute work requires reading the output from a previous + * dispatch, you MUST end the current compute pass and begin a new one before + * you can safely access the data. + * + * \param commandBuffer a command buffer. + * \param storageTextureBindings an array of writeable storage texture binding + * structs. + * \param storageTextureBindingCount the number of storage textures to bind + * from the array. + * \param storageBufferBindings an array of writeable storage buffer binding + * structs. + * \param storageBufferBindingCount the number of storage buffers to bind from + * the array. + * \returns a compute pass handle. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_EndGPUComputePass + */ +extern SDL_DECLSPEC SDL_GPUComputePass *SDLCALL SDL_BeginGPUComputePass( + SDL_GPUCommandBuffer *commandBuffer, + SDL_GPUStorageTextureWriteOnlyBinding *storageTextureBindings, + Uint32 storageTextureBindingCount, + SDL_GPUStorageBufferWriteOnlyBinding *storageBufferBindings, + Uint32 storageBufferBindingCount); + +/** + * Binds a compute pipeline on a command buffer for use in compute dispatch. + * + * \param computePass a compute pass handle. + * \param computePipeline a compute pipeline to bind. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUComputePipeline( + SDL_GPUComputePass *computePass, + SDL_GPUComputePipeline *computePipeline); + +/** + * Binds storage textures as readonly for use on the compute pipeline. + * + * These textures must have been created with + * SDL_GPU_TEXTUREUSAGE_COMPUTE_STORAGE_READ_BIT. + * + * \param computePass a compute pass handle. + * \param firstSlot the compute storage texture slot to begin binding from. + * \param storageTextures an array of storage textures. + * \param bindingCount the number of storage textures to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUComputeStorageTextures( + SDL_GPUComputePass *computePass, + Uint32 firstSlot, + SDL_GPUTexture **storageTextures, + Uint32 bindingCount); + +/** + * Binds storage buffers as readonly for use on the compute pipeline. + * + * These buffers must have been created with + * SDL_GPU_BUFFERUSAGE_COMPUTE_STORAGE_READ_BIT. + * + * \param computePass a compute pass handle. + * \param firstSlot the compute storage buffer slot to begin binding from. + * \param storageBuffers an array of storage buffer binding structs. + * \param bindingCount the number of storage buffers to bind from the array. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BindGPUComputeStorageBuffers( + SDL_GPUComputePass *computePass, + Uint32 firstSlot, + SDL_GPUBuffer **storageBuffers, + Uint32 bindingCount); + +/** + * Dispatches compute work. + * + * You must not call this function before binding a compute pipeline. + * + * A VERY IMPORTANT NOTE If you dispatch multiple times in a compute pass, and + * the dispatches write to the same resource region as each other, there is no + * guarantee of which order the writes will occur. If the write order matters, + * you MUST end the compute pass and begin another one. + * + * \param computePass a compute pass handle. + * \param groupCountX number of local workgroups to dispatch in the X + * dimension. + * \param groupCountY number of local workgroups to dispatch in the Y + * dimension. + * \param groupCountZ number of local workgroups to dispatch in the Z + * dimension. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DispatchGPUCompute( + SDL_GPUComputePass *computePass, + Uint32 groupCountX, + Uint32 groupCountY, + Uint32 groupCountZ); + +/** + * Dispatches compute work with parameters set from a buffer. + * + * The buffer layout should match the layout of + * SDL_GPUIndirectDispatchCommand. You must not call this function before + * binding a compute pipeline. + * + * A VERY IMPORTANT NOTE If you dispatch multiple times in a compute pass, and + * the dispatches write to the same resource region as each other, there is no + * guarantee of which order the writes will occur. If the write order matters, + * you MUST end the compute pass and begin another one. + * + * \param computePass a compute pass handle. + * \param buffer a buffer containing dispatch parameters. + * \param offsetInBytes the offset to start reading from the dispatch buffer. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DispatchGPUComputeIndirect( + SDL_GPUComputePass *computePass, + SDL_GPUBuffer *buffer, + Uint32 offsetInBytes); + +/** + * Ends the current compute pass. + * + * All bound compute state on the command buffer is unset. The compute pass + * handle is now invalid. + * + * \param computePass a compute pass handle. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_EndGPUComputePass( + SDL_GPUComputePass *computePass); + +/* TransferBuffer Data */ + +/** + * Maps a transfer buffer into application address space. + * + * You must unmap the transfer buffer before encoding upload commands. + * + * \param device a GPU context. + * \param transferBuffer a transfer buffer. + * \param cycle if SDL_TRUE, cycles the transfer buffer if it is bound. + * \returns the address of the mapped transfer buffer memory. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void *SDLCALL SDL_MapGPUTransferBuffer( + SDL_GPUDevice *device, + SDL_GPUTransferBuffer *transferBuffer, + SDL_bool cycle); + +/** + * Unmaps a previously mapped transfer buffer. + * + * \param device a GPU context. + * \param transferBuffer a previously mapped transfer buffer. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_UnmapGPUTransferBuffer( + SDL_GPUDevice *device, + SDL_GPUTransferBuffer *transferBuffer); + +/* Copy Pass */ + +/** + * Begins a copy pass on a command buffer. + * + * All operations related to copying to or from buffers or textures take place + * inside a copy pass. You must not begin another copy pass, or a render pass + * or compute pass before ending the copy pass. + * + * \param commandBuffer a command buffer. + * \returns a copy pass handle. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC SDL_GPUCopyPass *SDLCALL SDL_BeginGPUCopyPass( + SDL_GPUCommandBuffer *commandBuffer); + +/** + * Uploads data from a transfer buffer to a texture. + * + * The upload occurs on the GPU timeline. You may assume that the upload has + * finished in subsequent commands. + * + * You must align the data in the transfer buffer to a multiple of the texel + * size of the texture format. + * + * \param copyPass a copy pass handle. + * \param source the source transfer buffer with image layout information. + * \param destination the destination texture region. + * \param cycle if SDL_TRUE, cycles the texture if the texture is bound, + * otherwise overwrites the data. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_UploadToGPUTexture( + SDL_GPUCopyPass *copyPass, + SDL_GPUTextureTransferInfo *source, + SDL_GPUTextureRegion *destination, + SDL_bool cycle); + +/* Uploads data from a TransferBuffer to a Buffer. */ + +/** + * Uploads data from a transfer buffer to a buffer. + * + * The upload occurs on the GPU timeline. You may assume that the upload has + * finished in subsequent commands. + * + * \param copyPass a copy pass handle. + * \param source the source transfer buffer with offset. + * \param destination the destination buffer with offset and size. + * \param cycle if SDL_TRUE, cycles the buffer if it is bound, otherwise + * overwrites the data. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_UploadToGPUBuffer( + SDL_GPUCopyPass *copyPass, + SDL_GPUTransferBufferLocation *source, + SDL_GPUBufferRegion *destination, + SDL_bool cycle); + +/** + * Performs a texture-to-texture copy. + * + * This copy occurs on the GPU timeline. You may assume the copy has finished + * in subsequent commands. + * + * \param copyPass a copy pass handle. + * \param source a source texture region. + * \param destination a destination texture region. + * \param w the width of the region to copy. + * \param h the height of the region to copy. + * \param d the depth of the region to copy. + * \param cycle if SDL_TRUE, cycles the destination texture if the destination + * texture is bound, otherwise overwrites the data. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_CopyGPUTextureToTexture( + SDL_GPUCopyPass *copyPass, + SDL_GPUTextureLocation *source, + SDL_GPUTextureLocation *destination, + Uint32 w, + Uint32 h, + Uint32 d, + SDL_bool cycle); + +/* Copies data from a buffer to a buffer. */ + +/** + * Performs a buffer-to-buffer copy. + * + * This copy occurs on the GPU timeline. You may assume the copy has finished + * in subsequent commands. + * + * \param copyPass a copy pass handle. + * \param source the buffer and offset to copy from. + * \param destination the buffer and offset to copy to. + * \param size the length of the buffer to copy. + * \param cycle if SDL_TRUE, cycles the destination buffer if it is bound, + * otherwise overwrites the data. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_CopyGPUBufferToBuffer( + SDL_GPUCopyPass *copyPass, + SDL_GPUBufferLocation *source, + SDL_GPUBufferLocation *destination, + Uint32 size, + SDL_bool cycle); + +/** + * Copies data from a texture to a transfer buffer on the GPU timeline. + * + * This data is not guaranteed to be copied until the command buffer fence is + * signaled. + * + * \param copyPass a copy pass handle. + * \param source the source texture region. + * \param destination the destination transfer buffer with image layout + * information. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DownloadFromGPUTexture( + SDL_GPUCopyPass *copyPass, + SDL_GPUTextureRegion *source, + SDL_GPUTextureTransferInfo *destination); + +/** + * Copies data from a buffer to a transfer buffer on the GPU timeline. + * + * This data is not guaranteed to be copied until the command buffer fence is + * signaled. + * + * \param copyPass a copy pass handle. + * \param source the source buffer with offset and size. + * \param destination the destination transfer buffer with offset. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_DownloadFromGPUBuffer( + SDL_GPUCopyPass *copyPass, + SDL_GPUBufferRegion *source, + SDL_GPUTransferBufferLocation *destination); + +/** + * Ends the current copy pass. + * + * \param copyPass a copy pass handle. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_EndGPUCopyPass( + SDL_GPUCopyPass *copyPass); + +/** + * Generates mipmaps for the given texture. + * + * This function must not be called inside of any pass. + * + * \param commandBuffer a commandBuffer. + * \param texture a texture with more than 1 mip level. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_GenerateMipmapsForGPUTexture( + SDL_GPUCommandBuffer *commandBuffer, + SDL_GPUTexture *texture); + +/** + * Blits from a source texture region to a destination texture region. + * + * This function must not be called inside of any pass. + * + * \param commandBuffer a command buffer. + * \param source the texture region to copy from. + * \param destination the texture region to copy to. + * \param flipMode the flip mode for the source texture region. + * \param filterMode the filter mode that will be used when blitting. + * \param cycle if SDL_TRUE, cycles the destination texture if the destination + * texture is bound, otherwise overwrites the data. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC void SDLCALL SDL_BlitGPUTexture( + SDL_GPUCommandBuffer *commandBuffer, + SDL_GPUBlitRegion *source, + SDL_GPUBlitRegion *destination, + SDL_FlipMode flipMode, + SDL_GPUFilter filterMode, + SDL_bool cycle); + +/* Submission/Presentation */ + +/** + * Determines whether a swapchain composition is supported by the window. + * + * The window must be claimed before calling this function. + * + * \param device a GPU context. + * \param window an SDL_Window. + * \param swapchainComposition the swapchain composition to check. + * \returns SDL_TRUE if supported, SDL_FALSE if unsupported (or on error). + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_ClaimWindowForGPUDevice + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WindowSupportsGPUSwapchainComposition( + SDL_GPUDevice *device, + SDL_Window *window, + SDL_GPUSwapchainComposition swapchainComposition); + +/** + * Determines whether a presentation mode is supported by the window. + * + * The window must be claimed before calling this function. + * + * \param device a GPU context. + * \param window an SDL_Window. + * \param presentMode the presentation mode to check. + * \returns SDL_TRUE if supported, SDL_FALSE if unsupported (or on error). + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_ClaimWindowForGPUDevice + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WindowSupportsGPUPresentMode( + SDL_GPUDevice *device, + SDL_Window *window, + SDL_GPUPresentMode presentMode); + +/** + * Claims a window, creating a swapchain structure for it. + * + * This must be called before SDL_AcquireGPUSwapchainTexture is called using + * the window. + * + * The swapchain will be created with SDL_GPU_SWAPCHAINCOMPOSITION_SDR and + * SDL_GPU_PRESENTMODE_VSYNC. If you want to have different swapchain + * parameters, you must call SetSwapchainParameters after claiming the window. + * + * \param device a GPU context. + * \param window an SDL_Window. + * \returns SDL_TRUE on success, otherwise SDL_FALSE. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_AcquireGPUSwapchainTexture + * \sa SDL_ReleaseWindowFromGPUDevice + * \sa SDL_WindowSupportsGPUPresentMode + * \sa SDL_WindowSupportsGPUSwapchainComposition + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClaimWindowForGPUDevice( + SDL_GPUDevice *device, + SDL_Window *window); + +/** + * Unclaims a window, destroying its swapchain structure. + * + * \param device a GPU context. + * \param window an SDL_Window that has been claimed. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_ClaimWindowForGPUDevice + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseWindowFromGPUDevice( + SDL_GPUDevice *device, + SDL_Window *window); + +/** + * Changes the swapchain parameters for the given claimed window. + * + * This function will fail if the requested present mode or swapchain + * composition are unsupported by the device. Check if the parameters are + * supported via SDL_WindowSupportsGPUPresentMode / + * SDL_WindowSupportsGPUSwapchainComposition prior to calling this function. + * + * SDL_GPU_PRESENTMODE_VSYNC and SDL_GPU_SWAPCHAINCOMPOSITION_SDR are always + * supported. + * + * \param device a GPU context. + * \param window an SDL_Window that has been claimed. + * \param swapchainComposition the desired composition of the swapchain. + * \param presentMode the desired present mode for the swapchain. + * \returns SDL_TRUE if successful, SDL_FALSE on error. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_WindowSupportsGPUPresentMode + * \sa SDL_WindowSupportsGPUSwapchainComposition + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetGPUSwapchainParameters( + SDL_GPUDevice *device, + SDL_Window *window, + SDL_GPUSwapchainComposition swapchainComposition, + SDL_GPUPresentMode presentMode); + +/** + * Obtains the texture format of the swapchain for the given window. + * + * \param device a GPU context. + * \param window an SDL_Window that has been claimed. + * \returns the texture format of the swapchain. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC SDL_GPUTextureFormat SDLCALL SDL_GetGPUSwapchainTextureFormat( + SDL_GPUDevice *device, + SDL_Window *window); + +/** + * Acquire a texture to use in presentation. + * + * When a swapchain texture is acquired on a command buffer, it will + * automatically be submitted for presentation when the command buffer is + * submitted. The swapchain texture should only be referenced by the command + * buffer used to acquire it. May return NULL under certain conditions. This + * is not necessarily an error. This texture is managed by the implementation + * and must not be freed by the user. You MUST NOT call this function from any + * thread other than the one that created the window. + * + * \param commandBuffer a command buffer. + * \param window a window that has been claimed. + * \param pWidth a pointer filled in with the swapchain width. + * \param pHeight a pointer filled in with the swapchain height. + * \returns a swapchain texture. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_ClaimWindowForGPUDevice + * \sa SDL_SubmitGPUCommandBuffer + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + */ +extern SDL_DECLSPEC SDL_GPUTexture *SDLCALL SDL_AcquireGPUSwapchainTexture( + SDL_GPUCommandBuffer *commandBuffer, + SDL_Window *window, + Uint32 *pWidth, + Uint32 *pHeight); + +/** + * Submits a command buffer so its commands can be processed on the GPU. + * + * It is invalid to use the command buffer after this is called. + * + * This must be called from the thread the command buffer was acquired on. + * + * All commands in the submission are guaranteed to begin executing before any + * command in a subsequent submission begins executing. + * + * \param commandBuffer a command buffer. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_AcquireGPUCommandBuffer + * \sa SDL_AcquireGPUSwapchainTexture + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + */ +extern SDL_DECLSPEC void SDLCALL SDL_SubmitGPUCommandBuffer( + SDL_GPUCommandBuffer *commandBuffer); + +/** + * Submits a command buffer so its commands can be processed on the GPU, and + * acquires a fence associated with the command buffer. + * + * You must release this fence when it is no longer needed or it will cause a + * leak. It is invalid to use the command buffer after this is called. + * + * This must be called from the thread the command buffer was acquired on. + * + * All commands in the submission are guaranteed to begin executing before any + * command in a subsequent submission begins executing. + * + * \param commandBuffer a command buffer. + * \returns a fence associated with the command buffer. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_AcquireGPUCommandBuffer + * \sa SDL_AcquireGPUSwapchainTexture + * \sa SDL_SubmitGPUCommandBuffer + * \sa SDL_ReleaseGPUFence + */ +extern SDL_DECLSPEC SDL_GPUFence *SDLCALL SDL_SubmitGPUCommandBufferAndAcquireFence( + SDL_GPUCommandBuffer *commandBuffer); + +/** + * Blocks the thread until the GPU is completely idle. + * + * \param device a GPU context. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_WaitForGPUFences + */ +extern SDL_DECLSPEC void SDLCALL SDL_WaitForGPUIdle( + SDL_GPUDevice *device); + +/** + * Blocks the thread until the given fences are signaled. + * + * \param device a GPU context. + * \param waitAll if 0, wait for any fence to be signaled, if 1, wait for all + * fences to be signaled. + * \param pFences an array of fences to wait on. + * \param fenceCount the number of fences in the pFences array. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + * \sa SDL_WaitForGPUIdle + */ +extern SDL_DECLSPEC void SDLCALL SDL_WaitForGPUFences( + SDL_GPUDevice *device, + SDL_bool waitAll, + SDL_GPUFence **pFences, + Uint32 fenceCount); + +/** + * Checks the status of a fence. + * + * \param device a GPU context. + * \param fence a fence. + * \returns SDL_TRUE if the fence is signaled, SDL_FALSE if it is not. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_QueryGPUFence( + SDL_GPUDevice *device, + SDL_GPUFence *fence); + +/** + * Releases a fence obtained from SDL_SubmitGPUCommandBufferAndAcquireFence. + * + * \param device a GPU context. + * \param fence a fence. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SubmitGPUCommandBufferAndAcquireFence + */ +extern SDL_DECLSPEC void SDLCALL SDL_ReleaseGPUFence( + SDL_GPUDevice *device, + SDL_GPUFence *fence); + +/* Format Info */ + +/** + * Obtains the texel block size for a texture format. + * + * \param textureFormat the texture format you want to know the texel size of. + * \returns the texel block size of the texture format. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_UploadToGPUTexture + */ +extern SDL_DECLSPEC Uint32 SDLCALL SDL_GPUTextureFormatTexelBlockSize( + SDL_GPUTextureFormat textureFormat); + +/** + * Determines whether a texture format is supported for a given type and + * usage. + * + * \param device a GPU context. + * \param format the texture format to check. + * \param type the type of texture (2D, 3D, Cube). + * \param usage a bitmask of all usage scenarios to check. + * \returns whether the texture format is supported for this type and usage. + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GPUTextureSupportsFormat( + SDL_GPUDevice *device, + SDL_GPUTextureFormat format, + SDL_GPUTextureType type, + SDL_GPUTextureUsageFlags usage); + +/** + * Determines if a sample count for a texture format is supported. + * + * \param device a GPU context. + * \param format the texture format to check. + * \param sampleCount the sample count to check. + * \returns a hardware-specific version of min(preferred, possible). + * + * \since This function is available since SDL 3.0.0. + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GPUTextureSupportsSampleCount( + SDL_GPUDevice *device, + SDL_GPUTextureFormat format, + SDL_GPUSampleCount sampleCount); + +#ifdef SDL_PLATFORM_GDK + +/** + * Call this to suspend GPU operation on Xbox when you receive the + * SDL_EVENT_DID_ENTER_BACKGROUND event. + * + * Do NOT call any SDL_GPU functions after calling this function! This must + * also be called before calling SDL_GDKSuspendComplete. + * + * \param device a GPU context. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_AddEventWatch + */ +extern SDL_DECLSPEC void SDLCALL SDL_GDKSuspendGPU(SDL_GPUDevice *device); + +/** + * Call this to resume GPU operation on Xbox when you receive the + * SDL_EVENT_WILL_ENTER_FOREGROUND event. + * + * When resuming, this function MUST be called before calling any other + * SDL_GPU functions. + * + * \param device a GPU context. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_AddEventWatch + */ +extern SDL_DECLSPEC void SDLCALL SDL_GDKResumeGPU(SDL_GPUDevice *device); + +#endif /* SDL_PLATFORM_GDK */ + +#ifdef __cplusplus +} +#endif /* __cplusplus */ +#include + +#endif /* SDL_gpu_h_ */ diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_haptic.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_haptic.h index 1d0a54e..95446fe 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_haptic.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_haptic.h @@ -48,15 +48,15 @@ * SDL_free(haptics); * } * if (haptic == NULL) - * return -1; + * return; * * // Initialize simple rumble - * if (SDL_InitHapticRumble(haptic) != 0) - * return -1; + * if (!SDL_InitHapticRumble(haptic)) + * return; * * // Play effect at 50% strength for 2 seconds - * if (SDL_PlayHapticRumble(haptic, 0.5, 2000) != 0) - * return -1; + * if (!SDL_PlayHapticRumble(haptic, 0.5, 2000)) + * return; * SDL_Delay(2000); * * // Clean up @@ -66,7 +66,7 @@ * Complete example: * * ```c - * int test_haptic(SDL_Joystick *joystick) + * SDL_bool test_haptic(SDL_Joystick *joystick) * { * SDL_Haptic *haptic; * SDL_HapticEffect effect; @@ -74,12 +74,12 @@ * * // Open the device * haptic = SDL_OpenHapticFromJoystick(joystick); - * if (haptic == NULL) return -1; // Most likely joystick isn't haptic + * if (haptic == NULL) return SDL_FALSE; // Most likely joystick isn't haptic * * // See if it can do sine waves * if ((SDL_GetHapticFeatures(haptic) & SDL_HAPTIC_SINE)==0) { * SDL_CloseHaptic(haptic); // No sine effect - * return -1; + * return SDL_FALSE; * } * * // Create the effect @@ -106,7 +106,7 @@ * // Close the device * SDL_CloseHaptic(haptic); * - * return 0; // Success + * return SDL_TRUE; // Success * } * ``` * @@ -919,8 +919,7 @@ typedef union SDL_HapticEffect * * If the haptic device is disconnected and reconnected, it will get a new ID. * - * The ID value starts at 1 and increments from there. The value 0 is an - * invalid ID. + * The value 0 is an invalid ID. * * \since This datatype is available since SDL 3.0.0. */ @@ -1117,8 +1116,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetMaxHapticEffects(SDL_Haptic *haptic); * * \param haptic the SDL_Haptic device to query maximum playing effects. * \returns the number of effects the haptic device can play at the same time - * or a negative error code on failure; call SDL_GetError() for more - * information. + * or -1 on failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -1148,8 +1146,8 @@ extern SDL_DECLSPEC Uint32 SDLCALL SDL_GetHapticFeatures(SDL_Haptic *haptic); * SDL_HapticDirection effect. * * \param haptic the SDL_Haptic device to query. - * \returns the number of axes on success or a negative error code on failure; - * call SDL_GetError() for more information. + * \returns the number of axes on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ @@ -1175,8 +1173,8 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HapticEffectSupported(SDL_Haptic *hapti * \param haptic an SDL_Haptic device to create the effect on. * \param effect an SDL_HapticEffect structure containing the properties of * the effect to create. - * \returns the ID of the effect on success or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the ID of the effect on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -1198,15 +1196,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_CreateHapticEffect(SDL_Haptic *haptic, const * \param effect the identifier of the effect to update. * \param data an SDL_HapticEffect structure containing the new effect * properties to use. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CreateHapticEffect * \sa SDL_RunHapticEffect */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateHapticEffect(SDL_Haptic *haptic, int effect, const SDL_HapticEffect *data); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateHapticEffect(SDL_Haptic *haptic, int effect, const SDL_HapticEffect *data); /** * Run the haptic effect on its associated haptic device. @@ -1221,8 +1219,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateHapticEffect(SDL_Haptic *haptic, int e * \param effect the ID of the haptic effect to run. * \param iterations the number of iterations to run the effect; use * `SDL_HAPTIC_INFINITY` to repeat forever. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1230,22 +1228,22 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateHapticEffect(SDL_Haptic *haptic, int e * \sa SDL_StopHapticEffect * \sa SDL_StopHapticEffects */ -extern SDL_DECLSPEC int SDLCALL SDL_RunHapticEffect(SDL_Haptic *haptic, int effect, Uint32 iterations); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RunHapticEffect(SDL_Haptic *haptic, int effect, Uint32 iterations); /** * Stop the haptic effect on its associated haptic device. * * \param haptic the SDL_Haptic device to stop the effect on. * \param effect the ID of the haptic effect to stop. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RunHapticEffect * \sa SDL_StopHapticEffects */ -extern SDL_DECLSPEC int SDLCALL SDL_StopHapticEffect(SDL_Haptic *haptic, int effect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StopHapticEffect(SDL_Haptic *haptic, int effect); /** * Destroy a haptic effect on the device. @@ -1269,12 +1267,14 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyHapticEffect(SDL_Haptic *haptic, int * * \param haptic the SDL_Haptic device to query for the effect status on. * \param effect the ID of the haptic effect to query its status. - * \returns 0 if it isn't playing, 1 if it is playing, or a negative error - * code on failure; call SDL_GetError() for more information. + * \returns SDL_TRUE if it is playing, SDL_FALSE if it isn't playing or haptic + * status isn't supported. * * \since This function is available since SDL 3.0.0. + * + * \sa SDL_GetHapticFeatures */ -extern SDL_DECLSPEC int SDLCALL SDL_GetHapticEffectStatus(SDL_Haptic *haptic, int effect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetHapticEffectStatus(SDL_Haptic *haptic, int effect); /** * Set the global gain of the specified haptic device. @@ -1289,14 +1289,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetHapticEffectStatus(SDL_Haptic *haptic, in * \param haptic the SDL_Haptic device to set the gain on. * \param gain value to set the gain to, should be between 0 and 100 (0 - * 100). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetHapticFeatures */ -extern SDL_DECLSPEC int SDLCALL SDL_SetHapticGain(SDL_Haptic *haptic, int gain); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHapticGain(SDL_Haptic *haptic, int gain); /** * Set the global autocenter of the device. @@ -1308,14 +1308,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetHapticGain(SDL_Haptic *haptic, int gain); * * \param haptic the SDL_Haptic device to set autocentering on. * \param autocenter value to set autocenter to (0-100). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetHapticFeatures */ -extern SDL_DECLSPEC int SDLCALL SDL_SetHapticAutocenter(SDL_Haptic *haptic, int autocenter); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHapticAutocenter(SDL_Haptic *haptic, int autocenter); /** * Pause a haptic device. @@ -1327,14 +1327,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetHapticAutocenter(SDL_Haptic *haptic, int * can cause all sorts of weird errors. * * \param haptic the SDL_Haptic device to pause. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ResumeHaptic */ -extern SDL_DECLSPEC int SDLCALL SDL_PauseHaptic(SDL_Haptic *haptic); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PauseHaptic(SDL_Haptic *haptic); /** * Resume a haptic device. @@ -1342,28 +1342,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_PauseHaptic(SDL_Haptic *haptic); * Call to unpause after SDL_PauseHaptic(). * * \param haptic the SDL_Haptic device to unpause. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_PauseHaptic */ -extern SDL_DECLSPEC int SDLCALL SDL_ResumeHaptic(SDL_Haptic *haptic); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ResumeHaptic(SDL_Haptic *haptic); /** * Stop all the currently playing effects on a haptic device. * * \param haptic the SDL_Haptic device to stop. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RunHapticEffect * \sa SDL_StopHapticEffects */ -extern SDL_DECLSPEC int SDLCALL SDL_StopHapticEffects(SDL_Haptic *haptic); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StopHapticEffects(SDL_Haptic *haptic); /** * Check whether rumble is supported on a haptic device. @@ -1381,8 +1381,8 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HapticRumbleSupported(SDL_Haptic *hapti * Initialize a haptic device for simple rumble playback. * * \param haptic the haptic device to initialize for simple rumble playback. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1390,7 +1390,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HapticRumbleSupported(SDL_Haptic *hapti * \sa SDL_StopHapticRumble * \sa SDL_HapticRumbleSupported */ -extern SDL_DECLSPEC int SDLCALL SDL_InitHapticRumble(SDL_Haptic *haptic); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_InitHapticRumble(SDL_Haptic *haptic); /** * Run a simple rumble effect on a haptic device. @@ -1398,28 +1398,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_InitHapticRumble(SDL_Haptic *haptic); * \param haptic the haptic device to play the rumble effect on. * \param strength strength of the rumble to play as a 0-1 float value. * \param length length of the rumble to play in milliseconds. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_InitHapticRumble * \sa SDL_StopHapticRumble */ -extern SDL_DECLSPEC int SDLCALL SDL_PlayHapticRumble(SDL_Haptic *haptic, float strength, Uint32 length); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PlayHapticRumble(SDL_Haptic *haptic, float strength, Uint32 length); /** * Stop the simple rumble on a haptic device. * * \param haptic the haptic device to stop the rumble effect on. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_PlayHapticRumble */ -extern SDL_DECLSPEC int SDLCALL SDL_StopHapticRumble(SDL_Haptic *haptic); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StopHapticRumble(SDL_Haptic *haptic); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_hints.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_hints.h index 79aa008..8433240 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_hints.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_hints.h @@ -39,8 +39,8 @@ #ifndef SDL_hints_h_ #define SDL_hints_h_ -#include #include +#include #include /* Set up for C function definitions, even when using C++ */ @@ -139,7 +139,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_APP_ID "SDL_APP_ID" +#define SDL_HINT_APP_ID "SDL_APP_ID" /** * A variable setting the application name. @@ -197,6 +197,20 @@ extern "C" { */ #define SDL_HINT_APPLE_TV_REMOTE_ALLOW_ROTATION "SDL_APPLE_TV_REMOTE_ALLOW_ROTATION" +/** + * Specify the default ALSA audio device name. + * + * This variable is a specific audio device to open when the "default" audio + * device is used. By default if 4 channel audio is requested, the + * "plug:surround40" device will be opened and if 6 channel audio is requested + * the "plug:surround51" device will be opened. + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_ALSA_DEFAULT_DEVICE "SDL_AUDIO_ALSA_DEFAULT_DEVICE" + /** * A variable controlling the audio category on iOS and macOS. * @@ -213,7 +227,20 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_AUDIO_CATEGORY "SDL_AUDIO_CATEGORY" +#define SDL_HINT_AUDIO_CATEGORY "SDL_AUDIO_CATEGORY" + +/** + * A variable controlling the default audio channel count. + * + * If the application doesn't specify the audio channel count when opening the + * device, this hint can be used to specify a default channel count that will + * be used. This defaults to "1" for recording and "2" for playback devices. + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_CHANNELS "SDL_AUDIO_CHANNELS" /** * Specify an application icon name for an audio device. @@ -313,6 +340,41 @@ extern "C" { */ #define SDL_HINT_AUDIO_DEVICE_STREAM_ROLE "SDL_AUDIO_DEVICE_STREAM_ROLE" +/** + * Specify the input file when recording audio using the disk audio driver. + * + * This defaults to "sdlaudio-in.raw" + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_DISK_INPUT_FILE "SDL_AUDIO_DISK_INPUT_FILE" + +/** + * Specify the output file when playing audio using the disk audio driver. + * + * This defaults to "sdlaudio.raw" + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_DISK_OUTPUT_FILE "SDL_AUDIO_DISK_OUTPUT_FILE" + +/** + * A variable controlling the audio rate when using the disk audio driver. + * + * The disk audio driver normally simulates real-time for the audio rate that + * was specified, but you can use this variable to adjust this rate higher or + * lower down to 0. The default value is "1.0". + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_DISK_TIMESCALE "SDL_AUDIO_DISK_TIMESCALE" + /** * A variable that specifies an audio backend to use. * @@ -327,6 +389,54 @@ extern "C" { */ #define SDL_HINT_AUDIO_DRIVER "SDL_AUDIO_DRIVER" +/** + * A variable controlling the audio rate when using the dummy audio driver. + * + * The dummy audio driver normally simulates real-time for the audio rate that + * was specified, but you can use this variable to adjust this rate higher or + * lower down to 0. The default value is "1.0". + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_DUMMY_TIMESCALE "SDL_AUDIO_DUMMY_TIMESCALE" + +/** + * A variable controlling the default audio format. + * + * If the application doesn't specify the audio format when opening the + * device, this hint can be used to specify a default format that will be + * used. + * + * The variable can be set to the following values: - "U8": Unsigned 8-bit + * audio - "S8": Signed 8-bit audio - "S16LE": Signed 16-bit little-endian + * audio - "S16BE": Signed 16-bit big-endian audio - "S16": Signed 16-bit + * native-endian audio (default) - "S32LE": Signed 32-bit little-endian audio + * - "S32BE": Signed 32-bit big-endian audio - "S32": Signed 32-bit + * native-endian audio - "F32LE": Floating point little-endian audio - + * "F32BE": Floating point big-endian audio - "F32": Floating point + * native-endian audio + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_FORMAT "SDL_AUDIO_FORMAT" + +/** + * A variable controlling the default audio frequency. + * + * If the application doesn't specify the audio frequency when opening the + * device, this hint can be used to specify a default frequency that will be + * used. This defaults to "44100". + * + * This hint should be set before an audio device is opened. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_AUDIO_FREQUENCY "SDL_AUDIO_FREQUENCY" + /** * A variable that causes SDL to not ignore audio "monitors". * @@ -363,7 +473,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_AUTO_UPDATE_JOYSTICKS "SDL_AUTO_UPDATE_JOYSTICKS" +#define SDL_HINT_AUTO_UPDATE_JOYSTICKS "SDL_AUTO_UPDATE_JOYSTICKS" /** * A variable controlling whether SDL updates sensor state when getting input @@ -378,7 +488,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_AUTO_UPDATE_SENSORS "SDL_AUTO_UPDATE_SENSORS" +#define SDL_HINT_AUTO_UPDATE_SENSORS "SDL_AUTO_UPDATE_SENSORS" /** * Prevent SDL from using version 4 of the bitmap header when saving BMPs. @@ -532,7 +642,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_EMSCRIPTEN_ASYNCIFY "SDL_EMSCRIPTEN_ASYNCIFY" +#define SDL_HINT_EMSCRIPTEN_ASYNCIFY "SDL_EMSCRIPTEN_ASYNCIFY" /** * Specify the CSS selector used for the "default" window/canvas. @@ -565,7 +675,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT "SDL_EMSCRIPTEN_KEYBOARD_ELEMENT" +#define SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT "SDL_EMSCRIPTEN_KEYBOARD_ELEMENT" /** * A variable that controls whether the on-screen keyboard should be shown @@ -584,6 +694,23 @@ extern "C" { */ #define SDL_HINT_ENABLE_SCREEN_KEYBOARD "SDL_ENABLE_SCREEN_KEYBOARD" +/** + * A variable containing a list of evdev devices to use if udev is not + * available. + * + * The list of devices is in the form: + * + * deviceclass:path[,deviceclass:path[,...]] + * + * where device class is an integer representing the SDL_UDEV_deviceclass and + * path is the full path to the event device. + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_EVDEV_DEVICES "SDL_EVDEV_DEVICES" + /** * A variable controlling verbosity of the logging of SDL events pushed onto * the internal queue. @@ -606,7 +733,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_EVENT_LOGGING "SDL_EVENT_LOGGING" +#define SDL_HINT_EVENT_LOGGING "SDL_EVENT_LOGGING" /** * A variable controlling whether raising the window should be done more @@ -626,7 +753,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_FORCE_RAISEWINDOW "SDL_FORCE_RAISEWINDOW" +#define SDL_HINT_FORCE_RAISEWINDOW "SDL_FORCE_RAISEWINDOW" /** * A variable controlling how 3D acceleration is used to accelerate the SDL @@ -647,7 +774,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_FRAMEBUFFER_ACCELERATION "SDL_FRAMEBUFFER_ACCELERATION" +#define SDL_HINT_FRAMEBUFFER_ACCELERATION "SDL_FRAMEBUFFER_ACCELERATION" /** * A variable that lets you manually hint extra gamecontroller db entries. @@ -773,7 +900,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_GDK_TEXTINPUT_DEFAULT_TEXT "SDL_GDK_TEXTINPUT_DEFAULT_TEXT" +#define SDL_HINT_GDK_TEXTINPUT_DEFAULT_TEXT "SDL_GDK_TEXTINPUT_DEFAULT_TEXT" /** * This variable sets the description of the TextInput window on GDK @@ -829,6 +956,70 @@ extern "C" { */ #define SDL_HINT_GDK_TEXTINPUT_TITLE "SDL_GDK_TEXTINPUT_TITLE" +/** + * A variable to control whether HIDAPI uses libusb for device access. + * + * By default libusb will only be used for a few devices that require direct + * USB access, and this can be controlled with + * SDL_HINT_HIDAPI_LIBUSB_WHITELIST. + * + * The variable can be set to the following values: + * + * - "0": HIDAPI will not use libusb for device access. + * - "1": HIDAPI will use libusb for device access if available. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_HIDAPI_LIBUSB "SDL_HIDAPI_LIBUSB" + +/** + * A variable to control whether HIDAPI uses libusb only for whitelisted + * devices. + * + * By default libusb will only be used for a few devices that require direct + * USB access. + * + * The variable can be set to the following values: + * + * - "0": HIDAPI will use libusb for all device access. + * - "1": HIDAPI will use libusb only for whitelisted devices. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_HIDAPI_LIBUSB_WHITELIST "SDL_HIDAPI_LIBUSB_WHITELIST" + +/** + * A variable to control whether HIDAPI uses udev for device detection. + * + * The variable can be set to the following values: + * + * - "0": HIDAPI will poll for device changes. + * - "1": HIDAPI will use udev for device detection. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_HIDAPI_UDEV "SDL_HIDAPI_UDEV" + +/** + * A variable that specifies a GPU backend to use. + * + * By default, SDL will try all available GPU backends in a reasonable order + * until it finds one that can work, but this hint allows the app or user to + * force a specific target, such as "d3d11" if, say, your hardware supports + * D3D12 but want to try using D3D11 instead. + * + * This hint should be set before SDL_GPUSelectBackend() is called. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_GPU_DRIVER "SDL_GPU_DRIVER" + /** * A variable to control whether SDL_hid_enumerate() enumerates all HID * devices or only controllers. @@ -1049,6 +1240,21 @@ extern "C" { */ #define SDL_HINT_JOYSTICK_FLIGHTSTICK_DEVICES_EXCLUDED "SDL_JOYSTICK_FLIGHTSTICK_DEVICES_EXCLUDED" +/** + * A variable controlling whether GameInput should be used for controller + * handling on Windows. + * + * The variable can be set to the following values: + * + * - "0": GameInput is not used. (default) + * - "1": GameInput is used. + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_JOYSTICK_GAMEINPUT "SDL_JOYSTICK_GAMEINPUT" + /** * A variable containing a list of devices known to have a GameCube form * factor. @@ -1564,7 +1770,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX "SDL_JOYSTICK_HIDAPI_XBOX" +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX "SDL_JOYSTICK_HIDAPI_XBOX" /** * A variable controlling whether the HIDAPI driver for XBox 360 controllers @@ -1581,7 +1787,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360 "SDL_JOYSTICK_HIDAPI_XBOX_360" +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360 "SDL_JOYSTICK_HIDAPI_XBOX_360" /** * A variable controlling whether the player LEDs should be lit to indicate @@ -1613,7 +1819,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360_WIRELESS "SDL_JOYSTICK_HIDAPI_XBOX_360_WIRELESS" +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_360_WIRELESS "SDL_JOYSTICK_HIDAPI_XBOX_360_WIRELESS" /** * A variable controlling whether the HIDAPI driver for XBox One controllers @@ -1630,7 +1836,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_ONE "SDL_JOYSTICK_HIDAPI_XBOX_ONE" +#define SDL_HINT_JOYSTICK_HIDAPI_XBOX_ONE "SDL_JOYSTICK_HIDAPI_XBOX_ONE" /** * A variable controlling whether the Home button LED should be turned on when @@ -1775,7 +1981,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_JOYSTICK_RAWINPUT_CORRELATE_XINPUT "SDL_JOYSTICK_RAWINPUT_CORRELATE_XINPUT" +#define SDL_HINT_JOYSTICK_RAWINPUT_CORRELATE_XINPUT "SDL_JOYSTICK_RAWINPUT_CORRELATE_XINPUT" /** * A variable controlling whether the ROG Chakram mice should show up as @@ -1935,7 +2141,7 @@ extern "C" { * layout. e.g. pressing the key associated with SDL_SCANCODE_A on a Russian * keyboard would yield 'a' instead of 'Ñ„'. * - * The default value for this hint is "french_numbers" + * The default value for this hint is "french_numbers,latin_letters" * * Some platforms like Emscripten only provide modified keycodes and the * options are not used. @@ -1990,7 +2196,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_KMSDRM_REQUIRE_DRM_MASTER "SDL_KMSDRM_REQUIRE_DRM_MASTER" +#define SDL_HINT_KMSDRM_REQUIRE_DRM_MASTER "SDL_KMSDRM_REQUIRE_DRM_MASTER" /** * A variable controlling the default SDL log levels. @@ -2016,7 +2222,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_LOGGING "SDL_LOGGING" +#define SDL_HINT_LOGGING "SDL_LOGGING" /** * A variable controlling whether to force the application to become the @@ -2032,7 +2238,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MAC_BACKGROUND_APP "SDL_MAC_BACKGROUND_APP" +#define SDL_HINT_MAC_BACKGROUND_APP "SDL_MAC_BACKGROUND_APP" /** * A variable that determines whether Ctrl+Click should generate a right-click @@ -2108,7 +2314,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_AUTO_CAPTURE "SDL_MOUSE_AUTO_CAPTURE" +#define SDL_HINT_MOUSE_AUTO_CAPTURE "SDL_MOUSE_AUTO_CAPTURE" /** * A variable setting the double click radius, in pixels. @@ -2117,7 +2323,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_DOUBLE_CLICK_RADIUS "SDL_MOUSE_DOUBLE_CLICK_RADIUS" +#define SDL_HINT_MOUSE_DOUBLE_CLICK_RADIUS "SDL_MOUSE_DOUBLE_CLICK_RADIUS" /** * A variable setting the double click time, in milliseconds. @@ -2126,14 +2332,15 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_DOUBLE_CLICK_TIME "SDL_MOUSE_DOUBLE_CLICK_TIME" +#define SDL_HINT_MOUSE_DOUBLE_CLICK_TIME "SDL_MOUSE_DOUBLE_CLICK_TIME" /** * A variable controlling whether warping a hidden mouse cursor will activate * relative mouse mode. * - * When this hint is set and the mouse cursor is hidden, SDL will emulate - * mouse warps using relative mouse mode. This can provide smoother and more + * When this hint is set, the mouse cursor is hidden, and multiple warps to + * the window center occur within a short time period, SDL will emulate mouse + * warps using relative mouse mode. This can provide smoother and more * reliable mouse motion for some older games, which continuously calculate * the distance travelled by the mouse pointer and warp it back to the center * of the window, rather than using relative mouse motion. @@ -2141,9 +2348,8 @@ extern "C" { * Note that relative mouse mode may have different mouse acceleration * behavior than pointer warps. * - * If your game or application needs to warp the mouse cursor while hidden for - * other purposes, such as drawing a software cursor, it should disable this - * hint. + * If your application needs to repeatedly warp the hidden mouse cursor at a + * high-frequency for other purposes, it should disable this hint. * * The variable can be set to the following values: * @@ -2182,7 +2388,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_NORMAL_SPEED_SCALE "SDL_MOUSE_NORMAL_SPEED_SCALE" +#define SDL_HINT_MOUSE_NORMAL_SPEED_SCALE "SDL_MOUSE_NORMAL_SPEED_SCALE" /** * A variable controlling whether relative mouse mode constrains the mouse to @@ -2203,7 +2409,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_MODE_CENTER "SDL_MOUSE_RELATIVE_MODE_CENTER" +#define SDL_HINT_MOUSE_RELATIVE_MODE_CENTER "SDL_MOUSE_RELATIVE_MODE_CENTER" /** * A variable controlling whether relative mouse mode is implemented using @@ -2218,7 +2424,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_MODE_WARP "SDL_MOUSE_RELATIVE_MODE_WARP" +#define SDL_HINT_MOUSE_RELATIVE_MODE_WARP "SDL_MOUSE_RELATIVE_MODE_WARP" /** * A variable setting the scale for mouse motion, in floating point, when the @@ -2228,7 +2434,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE "SDL_MOUSE_RELATIVE_SPEED_SCALE" +#define SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE "SDL_MOUSE_RELATIVE_SPEED_SCALE" /** * A variable controlling whether the system mouse acceleration curve is used @@ -2247,7 +2453,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_SYSTEM_SCALE "SDL_MOUSE_RELATIVE_SYSTEM_SCALE" +#define SDL_HINT_MOUSE_RELATIVE_SYSTEM_SCALE "SDL_MOUSE_RELATIVE_SYSTEM_SCALE" /** * A variable controlling whether a motion event should be generated for mouse @@ -2266,7 +2472,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_WARP_MOTION "SDL_MOUSE_RELATIVE_WARP_MOTION" +#define SDL_HINT_MOUSE_RELATIVE_WARP_MOTION "SDL_MOUSE_RELATIVE_WARP_MOTION" /** * A variable controlling whether the hardware cursor stays visible when @@ -2284,7 +2490,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_CURSOR_VISIBLE "SDL_MOUSE_RELATIVE_CURSOR_VISIBLE" +#define SDL_HINT_MOUSE_RELATIVE_CURSOR_VISIBLE "SDL_MOUSE_RELATIVE_CURSOR_VISIBLE" /** * Controls how often SDL issues cursor confinement commands to the operating @@ -2301,7 +2507,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_RELATIVE_CLIP_INTERVAL "SDL_MOUSE_RELATIVE_CLIP_INTERVAL" +#define SDL_HINT_MOUSE_RELATIVE_CLIP_INTERVAL "SDL_MOUSE_RELATIVE_CLIP_INTERVAL" /** * A variable controlling whether mouse events should generate synthetic touch @@ -2318,7 +2524,25 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_MOUSE_TOUCH_EVENTS "SDL_MOUSE_TOUCH_EVENTS" +#define SDL_HINT_MOUSE_TOUCH_EVENTS "SDL_MOUSE_TOUCH_EVENTS" + +/** + * A variable controlling whether the keyboard should be muted on the console. + * + * Normally the keyboard is muted while SDL applications are running so that + * keyboard input doesn't show up as key strokes on the console. This hint + * allows you to turn that off for debugging purposes. + * + * The variable can be set to the following values: + * + * - "0": Allow keystrokes to go through to the console. + * - "1": Mute keyboard input so it doesn't show up on the console. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_MUTE_CONSOLE_KEYBOARD "SDL_MUTE_CONSOLE_KEYBOARD" /** * Tell SDL not to catch the SIGINT or SIGTERM signals on POSIX platforms. @@ -2333,7 +2557,17 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_NO_SIGNAL_HANDLERS "SDL_NO_SIGNAL_HANDLERS" +#define SDL_HINT_NO_SIGNAL_HANDLERS "SDL_NO_SIGNAL_HANDLERS" + +/** + * Specify the OpenGL library to load. + * + * This hint should be set before creating an OpenGL window or creating an + * OpenGL context. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_OPENGL_LIBRARY "SDL_OPENGL_LIBRARY" /** * A variable controlling what driver to use for OpenGL ES contexts. @@ -2367,7 +2601,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_OPENGL_ES_DRIVER "SDL_OPENGL_ES_DRIVER" +#define SDL_HINT_OPENGL_ES_DRIVER "SDL_OPENGL_ES_DRIVER" /** * A variable controlling which orientations are allowed on iOS/Android. @@ -2388,54 +2622,6 @@ extern "C" { */ #define SDL_HINT_ORIENTATIONS "SDL_ORIENTATIONS" -/** - * A variable controlling whether pen mouse button emulation triggers only - * when the pen touches the tablet surface. - * - * The variable can be set to the following values: - * - * - "0": The pen reports mouse button press/release immediately when the pen - * button is pressed/released, and the pen tip touching the surface counts - * as left mouse button press. - * - "1": Mouse button presses are sent when the pen first touches the tablet - * (analogously for releases). Not pressing a pen button simulates mouse - * button 1, pressing the first pen button simulates mouse button 2 etc.; it - * is not possible to report multiple buttons as pressed at the same time. - * (default) - * - * This hint can be set anytime. - * - * \since This hint is available since SDL 3.0.0. - */ -#define SDL_HINT_PEN_DELAY_MOUSE_BUTTON "SDL_PEN_DELAY_MOUSE_BUTTON" - -/** - * A variable controlling whether to treat pen movement as separate from mouse - * movement. - * - * By default, pens report both SDL_MouseMotionEvent and SDL_PenMotionEvent - * updates (analogously for button presses). This hint allows decoupling mouse - * and pen updates. - * - * This variable toggles between the following behaviour: - * - * - "0": Pen acts as a mouse with mouse ID SDL_PEN_MOUSEID. (default) Use - * case: client application is not pen aware, user wants to use pen instead - * of mouse to interact. - * - "1": Pen reports mouse clicks and movement events but does not update - * SDL-internal mouse state (buttons pressed, current mouse location). Use - * case: client application is not pen aware, user frequently alternates - * between pen and "real" mouse. - * - "2": Pen reports no mouse events. Use case: pen-aware client application - * uses this hint to allow user to toggle between pen+mouse mode ("2") and - * pen-only mode ("1" or "0"). - * - * This hint can be set anytime. - * - * \since This hint is available since SDL 3.0.0. - */ -#define SDL_HINT_PEN_NOT_MOUSE "SDL_PEN_NOT_MOUSE" - /** * A variable controlling the use of a sentinel event when polling the event * queue. @@ -2522,7 +2708,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_RENDER_DIRECT3D11_DEBUG "SDL_RENDER_DIRECT3D11_DEBUG" +#define SDL_HINT_RENDER_DIRECT3D11_DEBUG "SDL_RENDER_DIRECT3D11_DEBUG" /** * A variable controlling whether to enable Vulkan Validation Layers. @@ -2536,7 +2722,36 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_RENDER_VULKAN_DEBUG "SDL_RENDER_VULKAN_DEBUG" +#define SDL_HINT_RENDER_VULKAN_DEBUG "SDL_RENDER_VULKAN_DEBUG" + +/** + * A variable controlling whether to create the GPU device in debug mode. + * + * This variable can be set to the following values: + * + * - "0": Disable debug mode use (default) + * - "1": Enable debug mode use + * + * This hint should be set before creating a renderer. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_RENDER_GPU_DEBUG "SDL_RENDER_GPU_DEBUG" + +/** + * A variable controlling whether to prefer a low-power GPU on multi-GPU + * systems. + * + * This variable can be set to the following values: + * + * - "0": Prefer high-performance GPU (default) + * - "1": Prefer low-power GPU + * + * This hint should be set before creating a renderer. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_RENDER_GPU_LOW_POWER "SDL_RENDER_GPU_LOW_POWER" /** * A variable specifying which render driver to use. @@ -2564,7 +2779,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_RENDER_DRIVER "SDL_RENDER_DRIVER" +#define SDL_HINT_RENDER_DRIVER "SDL_RENDER_DRIVER" /** * A variable controlling how the 2D render API renders lines. @@ -2614,7 +2829,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_RENDER_VSYNC "SDL_RENDER_VSYNC" +#define SDL_HINT_RENDER_VSYNC "SDL_RENDER_VSYNC" /** * A variable to control whether the return key on the soft keyboard should @@ -2682,7 +2897,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_RPI_VIDEO_LAYER "SDL_RPI_VIDEO_LAYER" +#define SDL_HINT_RPI_VIDEO_LAYER "SDL_RPI_VIDEO_LAYER" /** * Specify an "activity name" for screensaver inhibition. @@ -2803,7 +3018,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_THREAD_PRIORITY_POLICY "SDL_THREAD_PRIORITY_POLICY" +#define SDL_HINT_THREAD_PRIORITY_POLICY "SDL_THREAD_PRIORITY_POLICY" /** * A variable that controls the timer resolution, in milliseconds. @@ -2838,7 +3053,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_TOUCH_MOUSE_EVENTS "SDL_TOUCH_MOUSE_EVENTS" +#define SDL_HINT_TOUCH_MOUSE_EVENTS "SDL_TOUCH_MOUSE_EVENTS" /** * A variable controlling whether trackpads should be treated as touch @@ -2888,7 +3103,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_ALLOW_SCREENSAVER "SDL_VIDEO_ALLOW_SCREENSAVER" +#define SDL_HINT_VIDEO_ALLOW_SCREENSAVER "SDL_VIDEO_ALLOW_SCREENSAVER" /** * Tell the video driver that we only want a double buffer. @@ -2911,7 +3126,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_DOUBLE_BUFFER "SDL_VIDEO_DOUBLE_BUFFER" +#define SDL_HINT_VIDEO_DOUBLE_BUFFER "SDL_VIDEO_DOUBLE_BUFFER" /** * A variable that specifies a video backend to use. @@ -2927,6 +3142,19 @@ extern "C" { */ #define SDL_HINT_VIDEO_DRIVER "SDL_VIDEO_DRIVER" +/** + * A variable controlling whether the dummy video driver saves output frames. + * + * - "0": Video frames are not saved to disk. (default) + * - "1": Video frames are saved to files in the format "SDL_windowX-Y.bmp", + * where X is the window ID, and Y is the frame number. + * + * This hint can be set anytime. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VIDEO_DUMMY_SAVE_FRAMES "SDL_VIDEO_DUMMY_SAVE_FRAMES" + /** * If eglGetPlatformDisplay fails, fall back to calling eglGetDisplay. * @@ -2973,7 +3201,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_MAC_FULLSCREEN_SPACES "SDL_VIDEO_MAC_FULLSCREEN_SPACES" +#define SDL_HINT_VIDEO_MAC_FULLSCREEN_SPACES "SDL_VIDEO_MAC_FULLSCREEN_SPACES" /** * A variable controlling whether fullscreen windows are minimized when they @@ -2989,7 +3217,24 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS "SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS" +#define SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS "SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS" + +/** + * A variable controlling whether the offscreen video driver saves output + * frames. + * + * This only saves frames that are generated using software rendering, not + * accelerated OpenGL rendering. + * + * - "0": Video frames are not saved to disk. (default) + * - "1": Video frames are saved to files in the format "SDL_windowX-Y.bmp", + * where X is the window ID, and Y is the frame number. + * + * This hint can be set anytime. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VIDEO_OFFSCREEN_SAVE_FRAMES "SDL_VIDEO_OFFSCREEN_SAVE_FRAMES" /** * A variable controlling whether all window operations will block until @@ -3154,7 +3399,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_WIN_D3DCOMPILER "SDL_VIDEO_WIN_D3DCOMPILER" +#define SDL_HINT_VIDEO_WIN_D3DCOMPILER "SDL_VIDEO_WIN_D3DCOMPILER" /** * A variable controlling whether the X11 _NET_WM_BYPASS_COMPOSITOR hint @@ -3188,7 +3433,21 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_X11_NET_WM_PING "SDL_VIDEO_X11_NET_WM_PING" +#define SDL_HINT_VIDEO_X11_NET_WM_PING "SDL_VIDEO_X11_NET_WM_PING" + +/** + * A variable controlling whether SDL uses DirectColor visuals. + * + * The variable can be set to the following values: + * + * - "0": Disable DirectColor visuals. + * - "1": Enable DirectColor visuals. (default) + * + * This hint should be set before initializing the video subsystem. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VIDEO_X11_NODIRECTCOLOR "SDL_VIDEO_X11_NODIRECTCOLOR" /** * A variable forcing the content scaling factor for X11 displays. @@ -3199,7 +3458,16 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_X11_SCALING_FACTOR "SDL_VIDEO_X11_SCALING_FACTOR" +#define SDL_HINT_VIDEO_X11_SCALING_FACTOR "SDL_VIDEO_X11_SCALING_FACTOR" + +/** + * A variable forcing the visual ID used for X11 display modes. + * + * This hint should be set before initializing the video subsystem. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VIDEO_X11_VISUALID "SDL_VIDEO_X11_VISUALID" /** * A variable forcing the visual ID chosen for new X11 windows. @@ -3208,7 +3476,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_X11_WINDOW_VISUALID "SDL_VIDEO_X11_WINDOW_VISUALID" +#define SDL_HINT_VIDEO_X11_WINDOW_VISUALID "SDL_VIDEO_X11_WINDOW_VISUALID" /** * A variable controlling whether the X11 XRandR extension should be used. @@ -3222,7 +3490,91 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VIDEO_X11_XRANDR "SDL_VIDEO_X11_XRANDR" +#define SDL_HINT_VIDEO_X11_XRANDR "SDL_VIDEO_X11_XRANDR" + +/** + * A variable controlling whether touch should be enabled on the back panel of + * the PlayStation Vita. + * + * The variable can be set to the following values: + * + * - "0": Disable touch on the back panel. + * - "1": Enable touch on the back panel. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_ENABLE_BACK_TOUCH "SDL_VITA_ENABLE_BACK_TOUCH" + +/** + * A variable controlling whether touch should be enabled on the front panel + * of the PlayStation Vita. + * + * The variable can be set to the following values: + * + * - "0": Disable touch on the front panel. + * - "1": Enable touch on the front panel. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_ENABLE_FRONT_TOUCH "SDL_VITA_ENABLE_FRONT_TOUCH" + +/** + * A variable controlling the module path on the PlayStation Vita. + * + * This hint defaults to "app0:module" + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_MODULE_PATH "SDL_VITA_MODULE_PATH" + +/** + * A variable controlling whether to perform PVR initialization on the + * PlayStation Vita. + * + * - "0": Skip PVR initialization. + * - "1": Perform the normal PVR initialization. (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_PVR_INIT "SDL_VITA_PVR_INIT" + +/** + * A variable overriding the resolution reported on the PlayStation Vita. + * + * The variable can be set to the following values: + * + * - "544": 544p (default) + * - "720": 725p for PSTV + * - "1080": 1088i for PSTV + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_RESOLUTION "SDL_VITA_RESOLUTION" + +/** + * A variable controlling whether OpenGL should be used instead of OpenGL ES + * on the PlayStation Vita. + * + * The variable can be set to the following values: + * + * - "0": Use OpenGL ES. (default) + * - "1": Use OpenGL. + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VITA_PVR_OPENGL "SDL_VITA_PVR_OPENGL" /** * A variable controlling which touchpad should generate synthetic mouse @@ -3238,7 +3590,28 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_VITA_TOUCH_MOUSE_DEVICE "SDL_VITA_TOUCH_MOUSE_DEVICE" +#define SDL_HINT_VITA_TOUCH_MOUSE_DEVICE "SDL_VITA_TOUCH_MOUSE_DEVICE" + +/** + * A variable overriding the display index used in SDL_Vulkan_CreateSurface() + * + * The display index starts at 0, which is the default. + * + * This hint should be set before calling SDL_Vulkan_CreateSurface() + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VULKAN_DISPLAY "SDL_VULKAN_DISPLAY" + +/** + * Specify the Vulkan library to load. + * + * This hint should be set before creating a Vulkan window or calling + * SDL_Vulkan_LoadLibrary(). + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_VULKAN_LIBRARY "SDL_VULKAN_LIBRARY" /** * A variable controlling how the fact chunk affects the loading of a WAVE @@ -3270,7 +3643,19 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WAVE_FACT_CHUNK "SDL_WAVE_FACT_CHUNK" +#define SDL_HINT_WAVE_FACT_CHUNK "SDL_WAVE_FACT_CHUNK" + +/** + * A variable controlling the maximum number of chunks in a WAVE file. + * + * This sets an upper bound on the number of chunks in a WAVE file to avoid + * wasting time on malformed or corrupt WAVE files. This defaults to "10000". + * + * This hint should be set before calling SDL_LoadWAV() or SDL_LoadWAV_IO() + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_WAVE_CHUNK_LIMIT "SDL_WAVE_CHUNK_LIMIT" /** * A variable controlling how the size of the RIFF chunk affects the loading @@ -3283,7 +3668,7 @@ extern "C" { * Note that files that have trailing data unrelated to the WAVE file or * corrupt files may slow down the loading process without a reliable * boundary. By default, SDL stops after 10000 chunks to prevent wasting time. - * Use the environment variable SDL_WAVE_CHUNK_LIMIT to adjust this value. + * Use SDL_HINT_WAVE_CHUNK_LIMIT to adjust this value. * * The variable can be set to the following values: * @@ -3298,7 +3683,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WAVE_RIFF_CHUNK_SIZE "SDL_WAVE_RIFF_CHUNK_SIZE" +#define SDL_HINT_WAVE_RIFF_CHUNK_SIZE "SDL_WAVE_RIFF_CHUNK_SIZE" /** * A variable controlling how a truncated WAVE file is handled. @@ -3318,7 +3703,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WAVE_TRUNCATION "SDL_WAVE_TRUNCATION" +#define SDL_HINT_WAVE_TRUNCATION "SDL_WAVE_TRUNCATION" /** * A variable controlling whether the window is activated when the @@ -3335,7 +3720,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WINDOW_ACTIVATE_WHEN_RAISED "SDL_WINDOW_ACTIVATE_WHEN_RAISED" +#define SDL_HINT_WINDOW_ACTIVATE_WHEN_RAISED "SDL_WINDOW_ACTIVATE_WHEN_RAISED" /** * A variable controlling whether the window is activated when the @@ -3352,7 +3737,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WINDOW_ACTIVATE_WHEN_SHOWN "SDL_WINDOW_ACTIVATE_WHEN_SHOWN" +#define SDL_HINT_WINDOW_ACTIVATE_WHEN_SHOWN "SDL_WINDOW_ACTIVATE_WHEN_SHOWN" /** * If set to "0" then never set the top-most flag on an SDL Window even if the @@ -3386,7 +3771,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN "SDL_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN" +#define SDL_HINT_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN "SDL_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN" /** * A variable controlling whether SDL generates window-close events for Alt+F4 @@ -3448,6 +3833,22 @@ extern "C" { */ #define SDL_HINT_WINDOWS_ENABLE_MESSAGELOOP "SDL_WINDOWS_ENABLE_MESSAGELOOP" +/** + * A variable controlling whether GameInput is used for raw keyboard and mouse + * on Windows. + * + * The variable can be set to the following values: + * + * - "0": GameInput is not used for raw keyboard and mouse events. + * - "1": GameInput is used for raw keyboard and mouse events, if available. + * (default) + * + * This hint should be set before SDL is initialized. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_WINDOWS_GAMEINPUT "SDL_WINDOWS_GAMEINPUT" + /** * A variable controlling whether raw keyboard events are used on Windows. * @@ -3460,28 +3861,7 @@ extern "C" { * * \since This hint is available since SDL 3.0.0. */ -#define SDL_HINT_WINDOWS_RAW_KEYBOARD "SDL_WINDOWS_RAW_KEYBOARD" - -/** - * A variable controlling whether SDL uses Critical Sections for mutexes on - * Windows. - * - * On Windows 7 and newer, Slim Reader/Writer Locks are available. They offer - * better performance, allocate no kernel resources and use less memory. SDL - * will fall back to Critical Sections on older OS versions or if forced to by - * this hint. - * - * The variable can be set to the following values: - * - * - "0": Use SRW Locks when available, otherwise fall back to Critical - * Sections. (default) - * - "1": Force the use of Critical Sections in all cases. - * - * This hint should be set before SDL is initialized. - * - * \since This hint is available since SDL 3.0.0. - */ -#define SDL_HINT_WINDOWS_FORCE_MUTEX_CRITICAL_SECTIONS "SDL_WINDOWS_FORCE_MUTEX_CRITICAL_SECTIONS" +#define SDL_HINT_WINDOWS_RAW_KEYBOARD "SDL_WINDOWS_RAW_KEYBOARD" /** * A variable controlling whether SDL uses Kernel Semaphores on Windows. @@ -3709,6 +4089,17 @@ extern "C" { */ #define SDL_HINT_X11_WINDOW_TYPE "SDL_X11_WINDOW_TYPE" +/** + * Specify the XCB library to load for the X11 driver. + * + * This defaults to "libX11-xcb.so" + * + * This hint should be set before initializing the video subsystem. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_X11_XCB_LIBRARY "SDL_X11_XCB_LIBRARY" + /** * A variable controlling whether XInput should be used for controller * handling. @@ -3724,6 +4115,31 @@ extern "C" { */ #define SDL_HINT_XINPUT_ENABLED "SDL_XINPUT_ENABLED" +/** + * A variable controlling response to SDL_assert failures. + * + * The variable can be set to the following case-sensitive values: + * + * - "abort": Program terminates immediately. + * - "break": Program triggers a debugger breakpoint. + * - "retry": Program reruns the SDL_assert's test again. + * - "ignore": Program continues on, ignoring this assertion failure this + * time. + * - "always_ignore": Program continues on, ignoring this assertion failure + * for the rest of the run. + * + * Note that SDL_SetAssertionHandler offers a programmatic means to deal with + * assertion failures through a callback, and this hint is largely intended to + * be used via environment variables by end users and automated tools. + * + * This hint should be set before an assertion failure is triggered and can be + * changed at any time. + * + * \since This hint is available since SDL 3.0.0. + */ +#define SDL_HINT_ASSERT "SDL_ASSERT" + + /** * An enumeration of hint priorities. * @@ -3736,7 +4152,6 @@ typedef enum SDL_HintPriority SDL_HINT_OVERRIDE } SDL_HintPriority; - /** * Set a hint with a specific priority. * @@ -3747,7 +4162,10 @@ typedef enum SDL_HintPriority * \param name the hint to set. * \param value the value of the hint variable. * \param priority the SDL_HintPriority level for the hint. - * \returns SDL_TRUE if the hint was set, SDL_FALSE otherwise. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. + * + * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. * @@ -3755,9 +4173,7 @@ typedef enum SDL_HintPriority * \sa SDL_ResetHint * \sa SDL_SetHint */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHintWithPriority(const char *name, - const char *value, - SDL_HintPriority priority); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHintWithPriority(const char *name, const char *value, SDL_HintPriority priority); /** * Set a hint with normal priority. @@ -3768,7 +4184,10 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHintWithPriority(const char *name, * * \param name the hint to set. * \param value the value of the hint variable. - * \returns SDL_TRUE if the hint was set, SDL_FALSE otherwise. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. + * + * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. * @@ -3776,8 +4195,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHintWithPriority(const char *name, * \sa SDL_ResetHint * \sa SDL_SetHintWithPriority */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHint(const char *name, - const char *value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHint(const char *name, const char *value); /** * Reset a hint to the default value. @@ -3787,7 +4205,10 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetHint(const char *name, * change. * * \param name the hint to set. - * \returns SDL_TRUE if the hint was set, SDL_FALSE otherwise. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. + * + * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. * @@ -3803,6 +4224,8 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ResetHint(const char *name); * variable, or NULL if the environment isn't set. Callbacks will be called * normally with this change. * + * \threadsafety It is safe to call this function from any thread. + * * \since This function is available since SDL 3.0.0. * * \sa SDL_ResetHint @@ -3815,12 +4238,19 @@ extern SDL_DECLSPEC void SDLCALL SDL_ResetHints(void); * \param name the hint to query. * \returns the string value of a hint or NULL if the hint isn't set. * + * \threadsafety It is safe to call this function from any thread, however the + * return value only remains valid until the hint is changed; if + * another thread might do so, the app should supply locks + * and/or make a copy of the string. Note that using a hint + * callback instead is always thread-safe, as SDL holds a lock + * on the thread subsystem during the callback. + * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetHint * \sa SDL_SetHintWithPriority */ -extern SDL_DECLSPEC const char * SDLCALL SDL_GetHint(const char *name); +extern SDL_DECLSPEC const char *SDLCALL SDL_GetHint(const char *name); /** * Get the boolean value of a hint variable. @@ -3830,6 +4260,8 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetHint(const char *name); * \returns the boolean value of a hint or the provided default value if the * hint does not exist. * + * \threadsafety It is safe to call this function from any thread. + * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetHint @@ -3838,37 +4270,46 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetHint(const char *name); extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetHintBoolean(const char *name, SDL_bool default_value); /** - * Type definition of the hint callback function. + * A callback used to send notifications of hint value changes. + * + * This is called an initial time during SDL_AddHintCallback with the hint's + * current value, and then again each time the hint's value changes. * * \param userdata what was passed as `userdata` to SDL_AddHintCallback(). * \param name what was passed as `name` to SDL_AddHintCallback(). * \param oldValue the previous hint value. * \param newValue the new value hint is to be set to. * + * \threadsafety This callback is fired from whatever thread is setting a new + * hint value. SDL holds a lock on the hint subsystem when + * calling this callback. + * * \since This datatype is available since SDL 3.0.0. + * + * \sa SDL_AddHintCallback */ -typedef void (SDLCALL *SDL_HintCallback)(void *userdata, const char *name, const char *oldValue, const char *newValue); +typedef void(SDLCALL *SDL_HintCallback)(void *userdata, const char *name, const char *oldValue, const char *newValue); /** * Add a function to watch a particular hint. * + * The callback function is called _during_ this function, to provide it an + * initial value, and again each time the hint's value changes. + * * \param name the hint to watch. - * \param callback an SDL_HintCallback function that will be called when the + * \param callback An SDL_HintCallback function that will be called when the * hint value changes. * \param userdata a pointer to pass to the callback function. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * - * \threadsafety It is **NOT** safe to call this function from two threads at - * once. + * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. * - * \sa SDL_DelHintCallback + * \sa SDL_RemoveHintCallback */ -extern SDL_DECLSPEC int SDLCALL SDL_AddHintCallback(const char *name, - SDL_HintCallback callback, - void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AddHintCallback(const char *name, SDL_HintCallback callback, void *userdata); /** * Remove a function watching a particular hint. @@ -3878,13 +4319,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_AddHintCallback(const char *name, * hint value changes. * \param userdata a pointer being passed to the callback function. * + * \threadsafety It is safe to call this function from any thread. + * * \since This function is available since SDL 3.0.0. * * \sa SDL_AddHintCallback */ -extern SDL_DECLSPEC void SDLCALL SDL_DelHintCallback(const char *name, - SDL_HintCallback callback, - void *userdata); +extern SDL_DECLSPEC void SDLCALL SDL_RemoveHintCallback(const char *name, + SDL_HintCallback callback, + void *userdata); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_init.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_init.h index 6b51816..5a13947 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_init.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_init.h @@ -31,6 +31,7 @@ #include #include +#include #include /* Set up for C function definitions, even when using C++ */ @@ -66,6 +67,38 @@ typedef Uint32 SDL_InitFlags; #define SDL_INIT_SENSOR 0x00008000u /**< `SDL_INIT_SENSOR` implies `SDL_INIT_EVENTS` */ #define SDL_INIT_CAMERA 0x00010000u /**< `SDL_INIT_CAMERA` implies `SDL_INIT_EVENTS` */ +/** + * Return values for optional main callbacks. + * + * Returning SDL_APP_SUCCESS or SDL_APP_FAILURE from SDL_AppInit, + * SDL_AppEvent, or SDL_AppIterate will terminate the program and report + * success/failure to the operating system. What that means is + * platform-dependent. On Unix, for example, on success, the process error + * code will be zero, and on failure it will be 1. This interface doesn't + * allow you to return specific exit codes, just whether there was an error + * generally or not. + * + * Returning SDL_APP_CONTINUE from these functions will let the app continue + * to run. + * + * See + * [Main callbacks in SDL3](https://wiki.libsdl.org/SDL3/README/main-functions#main-callbacks-in-sdl3) + * for complete details. + * + * \since This enum is available since SDL 3.0.0. + */ +typedef enum SDL_AppResult +{ + SDL_APP_CONTINUE, /**< Value that requests that the app continue from the main callbacks. */ + SDL_APP_SUCCESS, /**< Value that requests termination with success from the main callbacks. */ + SDL_APP_FAILURE /**< Value that requests termination with error from the main callbacks. */ +} SDL_AppResult; + +typedef SDL_AppResult (SDLCALL *SDL_AppInit_func)(void **appstate, int argc, char *argv[]); +typedef SDL_AppResult (SDLCALL *SDL_AppIterate_func)(void *appstate); +typedef SDL_AppResult (SDLCALL *SDL_AppEvent_func)(void *appstate, const SDL_Event *event); +typedef void (SDLCALL *SDL_AppQuit_func)(void *appstate); + /** * Initialize the SDL library. * @@ -110,8 +143,8 @@ typedef Uint32 SDL_InitFlags; * SDL_SetAppMetadataProperty(). * * \param flags subsystem initialization flags. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -122,7 +155,7 @@ typedef Uint32 SDL_InitFlags; * \sa SDL_SetMainReady * \sa SDL_WasInit */ -extern SDL_DECLSPEC int SDLCALL SDL_Init(SDL_InitFlags flags); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_Init(SDL_InitFlags flags); /** * Compatibility function to initialize the SDL library. @@ -130,8 +163,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_Init(SDL_InitFlags flags); * This function and SDL_Init() are interchangeable. * * \param flags any of the flags used by SDL_Init(); see SDL_Init for details. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -139,7 +172,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_Init(SDL_InitFlags flags); * \sa SDL_Quit * \sa SDL_QuitSubSystem */ -extern SDL_DECLSPEC int SDLCALL SDL_InitSubSystem(SDL_InitFlags flags); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_InitSubSystem(SDL_InitFlags flags); /** * Shut down specific SDL subsystems. @@ -215,8 +248,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_Quit(void); * hash, or whatever makes sense). * \param appidentifier A unique string in reverse-domain format that * identifies this app ("com.example.mygame2"). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -224,7 +257,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_Quit(void); * * \sa SDL_SetAppMetadataProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadata(const char *appname, const char *appversion, const char *appidentifier); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAppMetadata(const char *appname, const char *appversion, const char *appidentifier); /** * Specify metadata about your app through a set of properties. @@ -250,7 +283,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadata(const char *appname, const ch * anywhere the OS shows the name of the application separately from window * titles, such as volume control applets, etc. This defaults to "SDL * Application". - * - SDL_PROP_APP_METADATA_VERSION_STRING`: The version of the app that is + * - `SDL_PROP_APP_METADATA_VERSION_STRING`: The version of the app that is * running; there are no rules on format, so "1.0.3beta2" and "April 22nd, * 2024" and a git hash are all valid options. This has no default. * - `SDL_PROP_APP_METADATA_IDENTIFIER_STRING`: A unique string that @@ -260,16 +293,16 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadata(const char *appname, const ch * associated desktop settings and icons. If you plan to package your * application in a container such as Flatpak, the app ID should match the * name of your Flatpak container as well. This has no default. - * - SDL_PROP_APP_METADATA_CREATOR_STRING`: The human-readable name of the + * - `SDL_PROP_APP_METADATA_CREATOR_STRING`: The human-readable name of the * creator/developer/maker of this app, like "MojoWorkshop, LLC" - * - SDL_PROP_APP_METADATA_COPYRIGHT_STRING`: The human-readable copyright + * - `SDL_PROP_APP_METADATA_COPYRIGHT_STRING`: The human-readable copyright * notice, like "Copyright (c) 2024 MojoWorkshop, LLC" or whatnot. Keep this * to one line, don't paste a copy of a whole software license in here. This * has no default. - * - SDL_PROP_APP_METADATA_URL_STRING`: A URL to the app on the web. Maybe a + * - `SDL_PROP_APP_METADATA_URL_STRING`: A URL to the app on the web. Maybe a * product page, or a storefront, or even a GitHub repository, for user's * further information This has no default. - * - SDL_PROP_APP_METADATA_TYPE_STRING`: The type of application this is. + * - `SDL_PROP_APP_METADATA_TYPE_STRING`: The type of application this is. * Currently this string can be "game" for a video game, "mediaplayer" for a * media player, or generically "application" if nothing else applies. * Future versions of SDL might add new types. This defaults to @@ -277,8 +310,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadata(const char *appname, const ch * * \param name the name of the metadata property to set. * \param value the value of the property, or NULL to remove that property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -287,7 +320,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadata(const char *appname, const ch * \sa SDL_GetAppMetadataProperty * \sa SDL_SetAppMetadata */ -extern SDL_DECLSPEC int SDLCALL SDL_SetAppMetadataProperty(const char *name, const char *value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetAppMetadataProperty(const char *name, const char *value); #define SDL_PROP_APP_METADATA_NAME_STRING "SDL.app.metadata.name" #define SDL_PROP_APP_METADATA_VERSION_STRING "SDL.app.metadata.version" diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_iostream.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_iostream.h index 430cd3e..a306deb 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_iostream.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_iostream.h @@ -132,9 +132,10 @@ typedef struct SDL_IOStreamInterface * The SDL_IOStream is still destroyed even if this fails, so clean up anything * even if flushing to disk returns an error. * - * \return 0 if successful or -1 on write error when flushing data. + * \return SDL_TRUE if successful or SDL_FALSE on write error when flushing data. */ - int (SDLCALL *close)(void *userdata); + SDL_bool (SDLCALL *close)(void *userdata); + } SDL_IOStreamInterface; @@ -371,21 +372,21 @@ extern SDL_DECLSPEC SDL_IOStream * SDLCALL SDL_OpenIO(const SDL_IOStreamInterfac * * SDL_CloseIO() closes and cleans up the SDL_IOStream stream. It releases any * resources used by the stream and frees the SDL_IOStream itself. This - * returns 0 on success, or -1 if the stream failed to flush to its output - * (e.g. to disk). + * returns SDL_TRUE on success, or SDL_FALSE if the stream failed to flush to + * its output (e.g. to disk). * * Note that if this fails to flush the stream to disk, this function reports * an error, but the SDL_IOStream is still invalid once this function returns. * * \param context SDL_IOStream structure to close. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_OpenIO */ -extern SDL_DECLSPEC int SDLCALL SDL_CloseIO(SDL_IOStream *context); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CloseIO(SDL_IOStream *context); /** * Get the properties associated with an SDL_IOStream. @@ -481,9 +482,9 @@ extern SDL_DECLSPEC Sint64 SDLCALL SDL_TellIO(SDL_IOStream *context); * * This function reads up `size` bytes from the data source to the area * pointed at by `ptr`. This function may read less bytes than requested. It - * will return zero when the data stream is completely read, or on error. To - * determine if there was an error or all data was read, call - * SDL_GetIOStatus(). + * will return zero when the data stream is completely read, and + * SDL_GetIOStatus() will return SDL_IO_STATUS_EOF, or on error, and + * SDL_GetIOStatus() will return SDL_IO_STATUS_ERROR. * * \param context a pointer to an SDL_IOStream structure. * \param ptr a pointer to a buffer to read data into. diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_joystick.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_joystick.h index 1a17076..43bc1e9 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_joystick.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_joystick.h @@ -91,8 +91,7 @@ typedef struct SDL_Joystick SDL_Joystick; * * If the joystick is disconnected and reconnected, it will get a new ID. * - * The ID value starts at 1 and increments from there. The value 0 is an - * invalid ID. + * The value 0 is an invalid ID. * * \since This datatype is available since SDL 3.0.0. */ @@ -447,11 +446,12 @@ typedef struct SDL_VirtualJoystickDesc void *userdata; /**< User data pointer passed to callbacks */ void (SDLCALL *Update)(void *userdata); /**< Called when the joystick state should be updated */ void (SDLCALL *SetPlayerIndex)(void *userdata, int player_index); /**< Called when the player index is set */ - int (SDLCALL *Rumble)(void *userdata, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble); /**< Implements SDL_RumbleJoystick() */ - int (SDLCALL *RumbleTriggers)(void *userdata, Uint16 left_rumble, Uint16 right_rumble); /**< Implements SDL_RumbleJoystickTriggers() */ - int (SDLCALL *SetLED)(void *userdata, Uint8 red, Uint8 green, Uint8 blue); /**< Implements SDL_SetJoystickLED() */ - int (SDLCALL *SendEffect)(void *userdata, const void *data, int size); /**< Implements SDL_SendJoystickEffect() */ - int (SDLCALL *SetSensorsEnabled)(void *userdata, SDL_bool enabled); /**< Implements SDL_SetGamepadSensorEnabled() */ + SDL_bool (SDLCALL *Rumble)(void *userdata, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble); /**< Implements SDL_RumbleJoystick() */ + SDL_bool (SDLCALL *RumbleTriggers)(void *userdata, Uint16 left_rumble, Uint16 right_rumble); /**< Implements SDL_RumbleJoystickTriggers() */ + SDL_bool (SDLCALL *SetLED)(void *userdata, Uint8 red, Uint8 green, Uint8 blue); /**< Implements SDL_SetJoystickLED() */ + SDL_bool (SDLCALL *SendEffect)(void *userdata, const void *data, int size); /**< Implements SDL_SendJoystickEffect() */ + SDL_bool (SDLCALL *SetSensorsEnabled)(void *userdata, SDL_bool enabled); /**< Implements SDL_SetGamepadSensorEnabled() */ + void (SDLCALL *Cleanup)(void *userdata); /**< Cleans up the userdata when the joystick is detached */ } SDL_VirtualJoystickDesc; /** @@ -472,14 +472,14 @@ extern SDL_DECLSPEC SDL_JoystickID SDLCALL SDL_AttachVirtualJoystick(const SDL_V * * \param instance_id the joystick instance ID, previously returned from * SDL_AttachVirtualJoystick(). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_AttachVirtualJoystick */ -extern SDL_DECLSPEC int SDLCALL SDL_DetachVirtualJoystick(SDL_JoystickID instance_id); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_DetachVirtualJoystick(SDL_JoystickID instance_id); /** * Query whether or not a joystick is virtual. @@ -507,12 +507,12 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_IsJoystickVirtual(SDL_JoystickID instan * \param joystick the virtual joystick on which to set state. * \param axis the index of the axis on the virtual joystick to update. * \param value the new value for the specified axis. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualAxis(SDL_Joystick *joystick, int axis, Sint16 value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickVirtualAxis(SDL_Joystick *joystick, int axis, Sint16 value); /** * Generate ball motion on an opened virtual joystick. @@ -527,12 +527,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualAxis(SDL_Joystick *joystic * \param ball the index of the ball on the virtual joystick to update. * \param xrel the relative motion on the X axis. * \param yrel the relative motion on the Y axis. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualBall(SDL_Joystick *joystick, int ball, Sint16 xrel, Sint16 yrel); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickVirtualBall(SDL_Joystick *joystick, int ball, Sint16 xrel, Sint16 yrel); /** * Set the state of a button on an opened virtual joystick. @@ -546,12 +546,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualBall(SDL_Joystick *joystic * \param joystick the virtual joystick on which to set state. * \param button the index of the button on the virtual joystick to update. * \param value the new value for the specified button. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualButton(SDL_Joystick *joystick, int button, Uint8 value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickVirtualButton(SDL_Joystick *joystick, int button, Uint8 value); /** * Set the state of a hat on an opened virtual joystick. @@ -565,12 +565,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualButton(SDL_Joystick *joyst * \param joystick the virtual joystick on which to set state. * \param hat the index of the hat on the virtual joystick to update. * \param value the new value for the specified hat. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualHat(SDL_Joystick *joystick, int hat, Uint8 value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickVirtualHat(SDL_Joystick *joystick, int hat, Uint8 value); /** * Set touchpad finger state on an opened virtual joystick. @@ -592,12 +592,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualHat(SDL_Joystick *joystick * \param y the y coordinate of the finger on the touchpad, normalized 0 to 1, * with the origin in the upper left. * \param pressure the pressure of the finger. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualTouchpad(SDL_Joystick *joystick, int touchpad, int finger, Uint8 state, float x, float y, float pressure); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickVirtualTouchpad(SDL_Joystick *joystick, int touchpad, int finger, Uint8 state, float x, float y, float pressure); /** * Send a sensor update for an opened virtual joystick. @@ -614,12 +614,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickVirtualTouchpad(SDL_Joystick *joy * the sensor reading. * \param data the data associated with the sensor reading. * \param num_values the number of values pointed to by `data`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SendJoystickVirtualSensorData(SDL_Joystick *joystick, SDL_SensorType type, Uint64 sensor_timestamp, const float *data, int num_values); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SendJoystickVirtualSensorData(SDL_Joystick *joystick, SDL_SensorType type, Uint64 sensor_timestamp, const float *data, int num_values); /** * Get the properties associated with a joystick. @@ -698,14 +698,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetJoystickPlayerIndex(SDL_Joystick *joystic * \param joystick the SDL_Joystick obtained from SDL_OpenJoystick(). * \param player_index player index to assign to this joystick, or -1 to clear * the player index and turn off player LEDs. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetJoystickPlayerIndex */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickPlayerIndex(SDL_Joystick *joystick, int player_index); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickPlayerIndex(SDL_Joystick *joystick, int player_index); /** * Get the implementation-dependent GUID for the joystick. @@ -853,9 +853,8 @@ extern SDL_DECLSPEC SDL_JoystickID SDLCALL SDL_GetJoystickID(SDL_Joystick *joyst * device and platform. * * \param joystick an SDL_Joystick structure containing joystick information. - * \returns the number of axis controls/number of axes on success or a - * negative error code on failure; call SDL_GetError() for more - * information. + * \returns the number of axis controls/number of axes on success or -1 on + * failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -875,8 +874,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetNumJoystickAxes(SDL_Joystick *joystick); * Most joysticks do not have trackballs. * * \param joystick an SDL_Joystick structure containing joystick information. - * \returns the number of trackballs on success or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the number of trackballs on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -891,8 +890,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetNumJoystickBalls(SDL_Joystick *joystick); * Get the number of POV hats on a joystick. * * \param joystick an SDL_Joystick structure containing joystick information. - * \returns the number of POV hats on success or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the number of POV hats on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -907,8 +906,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetNumJoystickHats(SDL_Joystick *joystick); * Get the number of buttons on a joystick. * * \param joystick an SDL_Joystick structure containing joystick information. - * \returns the number of buttons on success or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the number of buttons on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -1013,14 +1012,14 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetJoystickAxisInitialState(SDL_Joystic * \param ball the ball index to query; ball indices start at index 0. * \param dx stores the difference in the x axis position since the last poll. * \param dy stores the difference in the y axis position since the last poll. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetNumJoystickBalls */ -extern SDL_DECLSPEC int SDLCALL SDL_GetJoystickBall(SDL_Joystick *joystick, int ball, int *dx, int *dy); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetJoystickBall(SDL_Joystick *joystick, int ball, int *dx, int *dy); /** * Get the current state of a POV hat on a joystick. @@ -1076,11 +1075,11 @@ extern SDL_DECLSPEC Uint8 SDLCALL SDL_GetJoystickButton(SDL_Joystick *joystick, * \param high_frequency_rumble the intensity of the high frequency (right) * rumble motor, from 0 to 0xFFFF. * \param duration_ms the duration of the rumble effect, in milliseconds. - * \returns 0, or -1 if rumble isn't supported on this joystick. + * \returns SDL_TRUE, or SDL_FALSE if rumble isn't supported on this joystick. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RumbleJoystick(SDL_Joystick *joystick, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RumbleJoystick(SDL_Joystick *joystick, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); /** * Start a rumble effect in the joystick's triggers. @@ -1102,14 +1101,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RumbleJoystick(SDL_Joystick *joystick, Uint1 * \param right_rumble the intensity of the right trigger rumble motor, from 0 * to 0xFFFF. * \param duration_ms the duration of the rumble effect, in milliseconds. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RumbleJoystick */ -extern SDL_DECLSPEC int SDLCALL SDL_RumbleJoystickTriggers(SDL_Joystick *joystick, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RumbleJoystickTriggers(SDL_Joystick *joystick, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); /** * Update a joystick's LED color. @@ -1124,12 +1123,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_RumbleJoystickTriggers(SDL_Joystick *joystic * \param red the intensity of the red LED. * \param green the intensity of the green LED. * \param blue the intensity of the blue LED. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickLED(SDL_Joystick *joystick, Uint8 red, Uint8 green, Uint8 blue); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetJoystickLED(SDL_Joystick *joystick, Uint8 red, Uint8 green, Uint8 blue); /** * Send a joystick specific effect packet. @@ -1137,12 +1136,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetJoystickLED(SDL_Joystick *joystick, Uint8 * \param joystick the joystick to affect. * \param data the data to send to the joystick. * \param size the size of the data to send to the joystick. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SendJoystickEffect(SDL_Joystick *joystick, const void *data, int size); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SendJoystickEffect(SDL_Joystick *joystick, const void *data, int size); /** * Close a joystick previously opened with SDL_OpenJoystick(). diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_keyboard.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_keyboard.h index 07bce75..ec6c3f2 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_keyboard.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_keyboard.h @@ -45,8 +45,7 @@ extern "C" { * * If the keyboard is disconnected and reconnected, it will get a new ID. * - * The ID value starts at 1 and increments from there. The value 0 is an - * invalid ID. + * The value 0 is an invalid ID. * * \since This datatype is available since SDL 3.0.0. */ @@ -184,61 +183,27 @@ extern SDL_DECLSPEC SDL_Keymod SDLCALL SDL_GetModState(void); */ extern SDL_DECLSPEC void SDLCALL SDL_SetModState(SDL_Keymod modstate); -/** - * Get the key code corresponding to the given scancode according to a default - * en_US keyboard layout. - * - * See SDL_Keycode for details. - * - * \param scancode the desired SDL_Scancode to query. - * \param modstate the modifier state to use when translating the scancode to - * a keycode. - * \returns the SDL_Keycode that corresponds to the given SDL_Scancode. - * - * \since This function is available since SDL 3.0.0. - * - * \sa SDL_GetKeyName - * \sa SDL_GetScancodeFromKey - */ -extern SDL_DECLSPEC SDL_Keycode SDLCALL SDL_GetDefaultKeyFromScancode(SDL_Scancode scancode, SDL_Keymod modstate); - /** * Get the key code corresponding to the given scancode according to the * current keyboard layout. * - * See SDL_Keycode for details. + * If you want to get the keycode as it would be delivered in key events, + * including options specified in SDL_HINT_KEYCODE_OPTIONS, then you should + * pass `key_event` as SDL_TRUE. Otherwise this function simply translates the + * scancode based on the given modifier state. * * \param scancode the desired SDL_Scancode to query. * \param modstate the modifier state to use when translating the scancode to * a keycode. + * \param key_event SDL_TRUE if the keycode will be used in key events. * \returns the SDL_Keycode that corresponds to the given SDL_Scancode. * * \since This function is available since SDL 3.0.0. * - * \sa SDL_GetDefaultKeyFromScancode * \sa SDL_GetKeyName * \sa SDL_GetScancodeFromKey */ -extern SDL_DECLSPEC SDL_Keycode SDLCALL SDL_GetKeyFromScancode(SDL_Scancode scancode, SDL_Keymod modstate); - -/** - * Get the scancode corresponding to the given key code according to a default - * en_US keyboard layout. - * - * Note that there may be multiple scancode+modifier states that can generate - * this keycode, this will just return the first one found. - * - * \param key the desired SDL_Keycode to query. - * \param modstate a pointer to the modifier state that would be used when the - * scancode generates this key, may be NULL. - * \returns the SDL_Scancode that corresponds to the given SDL_Keycode. - * - * \since This function is available since SDL 3.0.0. - * - * \sa SDL_GetScancodeFromKey - * \sa SDL_GetScancodeName - */ -extern SDL_DECLSPEC SDL_Scancode SDLCALL SDL_GetDefaultScancodeFromKey(SDL_Keycode key, SDL_Keymod *modstate); +extern SDL_DECLSPEC SDL_Keycode SDLCALL SDL_GetKeyFromScancode(SDL_Scancode scancode, SDL_Keymod modstate, SDL_bool key_event); /** * Get the scancode corresponding to the given key code according to the @@ -254,7 +219,6 @@ extern SDL_DECLSPEC SDL_Scancode SDLCALL SDL_GetDefaultScancodeFromKey(SDL_Keyco * * \since This function is available since SDL 3.0.0. * - * \sa SDL_GetDefaultScancodeFromKey * \sa SDL_GetKeyFromScancode * \sa SDL_GetScancodeName */ @@ -267,14 +231,14 @@ extern SDL_DECLSPEC SDL_Scancode SDLCALL SDL_GetScancodeFromKey(SDL_Keycode key, * \param name the name to use for the scancode, encoded as UTF-8. The string * is not copied, so the pointer given to this function must stay * valid while SDL is being used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetScancodeName */ -extern SDL_DECLSPEC int SDLCALL SDL_SetScancodeName(SDL_Scancode scancode, const char *name); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetScancodeName(SDL_Scancode scancode, const char *name); /** * Get a human-readable name for a scancode. @@ -318,9 +282,6 @@ extern SDL_DECLSPEC SDL_Scancode SDLCALL SDL_GetScancodeFromName(const char *nam /** * Get a human-readable name for a key. * - * Both lowercase and uppercase alphabetic keycodes have uppercase names, e.g. - * SDL_Keycode 'a' and 'A' both have the name "A". - * * If the key doesn't have a name, this function returns an empty string (""). * * \param key the desired SDL_Keycode to query. @@ -361,8 +322,8 @@ extern SDL_DECLSPEC SDL_Keycode SDLCALL SDL_GetKeyFromName(const char *name); * On some platforms using this function shows the screen keyboard. * * \param window the window to enable text input. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -371,7 +332,7 @@ extern SDL_DECLSPEC SDL_Keycode SDLCALL SDL_GetKeyFromName(const char *name); * \sa SDL_StopTextInput * \sa SDL_TextInputActive */ -extern SDL_DECLSPEC int SDLCALL SDL_StartTextInput(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StartTextInput(SDL_Window *window); /** * Text input type. @@ -453,8 +414,8 @@ typedef enum SDL_Capitalization * * \param window the window to enable text input. * \param props the properties to use. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -463,7 +424,7 @@ typedef enum SDL_Capitalization * \sa SDL_StopTextInput * \sa SDL_TextInputActive */ -extern SDL_DECLSPEC int SDLCALL SDL_StartTextInputWithProperties(SDL_Window *window, SDL_PropertiesID props); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StartTextInputWithProperties(SDL_Window *window, SDL_PropertiesID props); #define SDL_PROP_TEXTINPUT_TYPE_NUMBER "SDL.textinput.type" #define SDL_PROP_TEXTINPUT_CAPITALIZATION_NUMBER "SDL.textinput.capitalization" @@ -490,28 +451,28 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TextInputActive(SDL_Window *window); * it. * * \param window the window to disable text input. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StartTextInput */ -extern SDL_DECLSPEC int SDLCALL SDL_StopTextInput(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StopTextInput(SDL_Window *window); /** * Dismiss the composition window/IME without disabling the subsystem. * * \param window the window to affect. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StartTextInput * \sa SDL_StopTextInput */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearComposition(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearComposition(SDL_Window *window); /** * Set the area used to type Unicode text input. @@ -524,15 +485,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_ClearComposition(SDL_Window *window); * coordinates, or NULL to clear it. * \param cursor the offset of the current cursor location relative to * `rect->x`, in window coordinates. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetTextInputArea * \sa SDL_StartTextInput */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextInputArea(SDL_Window *window, const SDL_Rect *rect, int cursor); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextInputArea(SDL_Window *window, const SDL_Rect *rect, int cursor); /** * Get the area used to type Unicode text input. @@ -544,14 +505,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextInputArea(SDL_Window *window, const S * may be NULL. * \param cursor a pointer to the offset of the current cursor location * relative to `rect->x`, may be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetTextInputArea */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextInputArea(SDL_Window *window, SDL_Rect *rect, int *cursor); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextInputArea(SDL_Window *window, SDL_Rect *rect, int *cursor); /** * Check whether the platform has screen keyboard support. diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_log.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_log.h index 171cce8..deda238 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_log.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_log.h @@ -29,9 +29,27 @@ * it will only be sent out if it has that minimum priority or higher. * * SDL's own logs are sent below the default priority threshold, so they are - * quiet by default. If you're debugging SDL you might want: + * quiet by default. * - * SDL_SetLogPriorities(SDL_LOG_PRIORITY_WARN); + * You can change the log verbosity programmatically using + * SDL_SetLogPriority() or with SDL_SetHint(SDL_HINT_LOGGING, ...), or with + * the "SDL_LOGGING" environment variable. This variable is a comma separated + * set of category=level tokens that define the default logging levels for SDL + * applications. + * + * The category can be a numeric category, one of "app", "error", "assert", + * "system", "audio", "video", "render", "input", "test", or `*` for any + * unspecified category. + * + * The level can be a numeric level, one of "verbose", "debug", "info", + * "warn", "error", "critical", or "quiet" to disable that category. + * + * You can omit the category if you want to set the logging level for all + * categories. + * + * If this hint isn't set, the default log levels are equivalent to: + * + * `app=info,assert=warn,test=verbose,*=error` * * Here's where the messages go on different platforms: * @@ -54,9 +72,9 @@ extern "C" { /** * The predefined log categories * - * By default the application category is enabled at the INFO level, the - * assert category is enabled at the WARN level, test is enabled at the - * VERBOSE level and all other categories are enabled at the ERROR level. + * By default the application and gpu categories are enabled at the INFO + * level, the assert category is enabled at the WARN level, test is enabled at + * the VERBOSE level and all other categories are enabled at the ERROR level. * * \since This enum is available since SDL 3.0.0. */ @@ -69,6 +87,7 @@ typedef enum SDL_LogCategory SDL_LOG_CATEGORY_AUDIO, SDL_LOG_CATEGORY_VIDEO, SDL_LOG_CATEGORY_RENDER, + SDL_LOG_CATEGORY_GPU, SDL_LOG_CATEGORY_INPUT, SDL_LOG_CATEGORY_TEST, @@ -163,6 +182,26 @@ extern SDL_DECLSPEC SDL_LogPriority SDLCALL SDL_GetLogPriority(int category); */ extern SDL_DECLSPEC void SDLCALL SDL_ResetLogPriorities(void); +/** + * Set the text prepended to log messages of a given priority. + * + * By default SDL_LOG_PRIORITY_INFO and below have no prefix, and + * SDL_LOG_PRIORITY_WARN and higher have a prefix showing their priority, e.g. + * "WARNING: ". + * + * \param priority the SDL_LogPriority to modify. + * \param prefix the prefix to use for that log priority, or NULL to use no + * prefix. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SetLogPriorities + * \sa SDL_SetLogPriority + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetLogPriorityPrefix(SDL_LogPriority priority, const char *prefix); + /** * Log a message with SDL_LOG_CATEGORY_APPLICATION and SDL_LOG_PRIORITY_INFO. * diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_main.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_main.h index 0985629..de3c187 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_main.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_main.h @@ -188,16 +188,12 @@ #define main SDL_main #endif +#include #include #ifdef __cplusplus extern "C" { #endif -typedef int (SDLCALL *SDL_AppInit_func)(void **appstate, int argc, char *argv[]); -typedef int (SDLCALL *SDL_AppIterate_func)(void *appstate); -typedef int (SDLCALL *SDL_AppEvent_func)(void *appstate, const SDL_Event *event); -typedef void (SDLCALL *SDL_AppQuit_func)(void *appstate); - /* * You can (optionally!) define SDL_MAIN_USE_CALLBACKS before including * SDL_main.h, and then your application will _not_ have a standard @@ -224,49 +220,6 @@ typedef void (SDLCALL *SDL_AppQuit_func)(void *appstate); */ #ifdef SDL_MAIN_USE_CALLBACKS -/** - * Value that requests that the app continue from the main callbacks. - * - * If SDL_AppInit, SDL_AppEvent, or SDL_AppIterate returns this value, the - * program will continue to run. This is the normal return value case. - * - * This is always 0; using this macro may be clearer, but is not required. - * - * \since This macro is available since SDL 3.0.0. - */ -#define SDL_APP_CONTINUE 0 - -/** - * Value that requests termination with error from the main callbacks. - * - * If SDL_AppInit, SDL_AppEvent, or SDL_AppIterate returns this value, the - * program will terminate and report failure to the operating system. - * - * What that failure looks like is platform-dependent. On Unix, for example, - * the process error code will be non-zero. - * - * This is always -1; using this macro may be clearer, but is not required. - * - * \since This macro is available since SDL 3.0.0. - */ -#define SDL_APP_FAILURE -1 - -/** - * Value that requests termination with success from the main callbacks. - * - * If SDL_AppInit, SDL_AppEvent, or SDL_AppIterate returns this value, the - * program will terminate and report success to the operating system. - * - * What that success looks like is platform-dependent. On Unix, for example, - * the process error code will be zero. - * - * This is always 1; using this macro may be clearer, but is not required. - * - * \since This macro is available since SDL 3.0.0. - */ -#define SDL_APP_SUCCESS 1 - - /** * App-implemented initial entry point for SDL_MAIN_USE_CALLBACKS apps. * @@ -311,7 +264,7 @@ typedef void (SDLCALL *SDL_AppQuit_func)(void *appstate); * \sa SDL_AppEvent * \sa SDL_AppQuit */ -extern SDLMAIN_DECLSPEC int SDLCALL SDL_AppInit(void **appstate, int argc, char *argv[]); +extern SDLMAIN_DECLSPEC SDL_AppResult SDLCALL SDL_AppInit(void **appstate, int argc, char *argv[]); /** * App-implemented iteration entry point for SDL_MAIN_USE_CALLBACKS apps. @@ -359,7 +312,7 @@ extern SDLMAIN_DECLSPEC int SDLCALL SDL_AppInit(void **appstate, int argc, char * \sa SDL_AppInit * \sa SDL_AppEvent */ -extern SDLMAIN_DECLSPEC int SDLCALL SDL_AppIterate(void *appstate); +extern SDLMAIN_DECLSPEC SDL_AppResult SDLCALL SDL_AppIterate(void *appstate); /** * App-implemented event entry point for SDL_MAIN_USE_CALLBACKS apps. @@ -406,7 +359,7 @@ extern SDLMAIN_DECLSPEC int SDLCALL SDL_AppIterate(void *appstate); * \sa SDL_AppInit * \sa SDL_AppIterate */ -extern SDLMAIN_DECLSPEC int SDLCALL SDL_AppEvent(void *appstate, const SDL_Event *event); +extern SDLMAIN_DECLSPEC SDL_AppResult SDLCALL SDL_AppEvent(void *appstate, const SDL_Event *event); /** * App-implemented deinit entry point for SDL_MAIN_USE_CALLBACKS apps. @@ -525,8 +478,9 @@ extern SDL_DECLSPEC void SDLCALL SDL_SetMainReady(void); * literally have to be `main`. * \param reserved should be NULL (reserved for future use, will probably be * platform-specific then). - * \returns the return value from mainFunction: 0 on success, -1 on failure; - * SDL_GetError() might have more information on the failure. + * \returns the return value from mainFunction: 0 on success, otherwise + * failure; SDL_GetError() might have more information on the + * failure. * * \threadsafety Generally this is called once, near startup, from the * process's initial thread. @@ -584,12 +538,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_EnterAppMainCallbacks(int argc, char *argv[] * what is specified here. * \param hInst the HINSTANCE to use in WNDCLASSEX::hInstance. If zero, SDL * will use `GetModuleHandle(NULL)` instead. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RegisterApp(const char *name, Uint32 style, void *hInst); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RegisterApp(const char *name, Uint32 style, void *hInst); /** * Deregister the win32 window class from an SDL_RegisterApp call. @@ -631,7 +585,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_GDKSuspendComplete(void); /* include header-only SDL_main implementations */ #if defined(SDL_MAIN_USE_CALLBACKS) \ || defined(SDL_PLATFORM_WIN32) || defined(SDL_PLATFORM_GDK) || defined(SDL_PLATFORM_IOS) || defined(SDL_PLATFORM_TVOS) \ - || defined(SDL_PLATFORM_3DS) || defined(SDL_PLATFORM_NGAGE) || defined(SDL_PLATFORM_PS2) || defined(SDL_PLATFORM_PSP) + || defined(SDL_PLATFORM_3DS) || defined(SDL_PLATFORM_NGAGE) || defined(SDL_PLATFORM_PS2) || defined(SDL_PLATFORM_PSP) \ + || defined(SDL_PLATFORM_EMSCRIPTEN) /* platforms which main (-equivalent) can be implemented in plain C */ #include diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_messagebox.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_messagebox.h index 6aa3853..c626b22 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_messagebox.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_messagebox.h @@ -154,14 +154,14 @@ typedef struct SDL_MessageBoxData * other options. * \param buttonid the pointer to which user id of hit button should be * copied. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ShowSimpleMessageBox */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid); /** * Display a simple modal message box. @@ -196,14 +196,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_ShowMessageBox(const SDL_MessageBoxData *mes * \param title uTF-8 title text. * \param message uTF-8 message text. * \param window the parent window, or NULL for no parent. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ShowMessageBox */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowSimpleMessageBox(SDL_MessageBoxFlags flags, const char *title, const char *message, SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowSimpleMessageBox(SDL_MessageBoxFlags flags, const char *title, const char *message, SDL_Window *window); /* Ends C function definitions when using C++ */ diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_misc.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_misc.h index 09dec9e..23317e0 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_misc.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_misc.h @@ -62,12 +62,12 @@ extern "C" { * * \param url a valid URL/URI to open. Use `file:///full/path/to/file` for * local files, if supported. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_OpenURL(const char *url); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_OpenURL(const char *url); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_mouse.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_mouse.h index 4284ecc..90c8560 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_mouse.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_mouse.h @@ -38,9 +38,26 @@ extern "C" { #endif +/** + * This is a unique ID for a mouse for the time it is connected to the system, + * and is never reused for the lifetime of the application. + * + * If the mouse is disconnected and reconnected, it will get a new ID. + * + * The value 0 is an invalid ID. + * + * \since This datatype is available since SDL 3.0.0. + */ typedef Uint32 SDL_MouseID; -typedef struct SDL_Cursor SDL_Cursor; /**< Implementation dependent */ +/** + * The structure used to identify an SDL cursor. + * + * This is opaque data. + * + * \since This struct is available since SDL 3.0.0. + */ +typedef struct SDL_Cursor SDL_Cursor; /** * Cursor types for SDL_CreateSystemCursor(). @@ -278,33 +295,48 @@ extern SDL_DECLSPEC void SDLCALL SDL_WarpMouseInWindow(SDL_Window * window, * * \param x the x coordinate. * \param y the y coordinate. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_WarpMouseInWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_WarpMouseGlobal(float x, float y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WarpMouseGlobal(float x, float y); /** - * Set relative mouse mode. + * Set relative mouse mode for a window. * - * While the mouse is in relative mode, the cursor is hidden, the mouse - * position is constrained to the window, and SDL will report continuous - * relative mouse motion even if the mouse is at the edge of the window. + * While the window has focus and relative mouse mode is enabled, the cursor + * is hidden, the mouse position is constrained to the window, and SDL will + * report continuous relative mouse motion even if the mouse is at the edge of + * the window. * - * This function will flush any pending mouse motion. + * This function will flush any pending mouse motion for this window. * + * \param window the window to change. * \param enabled SDL_TRUE to enable relative mode, SDL_FALSE to disable. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * - * \sa SDL_GetRelativeMouseMode + * \sa SDL_GetWindowRelativeMouseMode */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRelativeMouseMode(SDL_bool enabled); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowRelativeMouseMode(SDL_Window *window, SDL_bool enabled); + +/** + * Query whether relative mouse mode is enabled for a window. + * + * \param window the window to query. + * \returns SDL_TRUE if relative mode is enabled for a window or SDL_FALSE + * otherwise. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_SetWindowRelativeMouseMode + */ +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowRelativeMouseMode(SDL_Window *window); /** * Capture the mouse and to track input outside an SDL window. @@ -321,7 +353,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRelativeMouseMode(SDL_bool enabled); * mouse while the user is dragging something, until the user releases a mouse * button. It is not recommended that you capture the mouse for long periods * of time, such as the entire time your app is running. For that, you should - * probably use SDL_SetRelativeMouseMode() or SDL_SetWindowMouseGrab(), + * probably use SDL_SetWindowRelativeMouseMode() or SDL_SetWindowMouseGrab(), * depending on your goals. * * While captured, mouse events still report coordinates relative to the @@ -343,25 +375,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRelativeMouseMode(SDL_bool enabled); * `SDL_HINT_MOUSE_AUTO_CAPTURE` hint to zero. * * \param enabled SDL_TRUE to enable capturing, SDL_FALSE to disable. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetGlobalMouseState */ -extern SDL_DECLSPEC int SDLCALL SDL_CaptureMouse(SDL_bool enabled); - -/** - * Query whether relative mouse mode is enabled. - * - * \returns SDL_TRUE if relative mode is enabled or SDL_FALSE otherwise. - * - * \since This function is available since SDL 3.0.0. - * - * \sa SDL_SetRelativeMouseMode - */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRelativeMouseMode(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CaptureMouse(SDL_bool enabled); /** * Create a cursor using the specified bitmap data and mask (in MSB format). @@ -419,8 +440,9 @@ extern SDL_DECLSPEC SDL_Cursor * SDLCALL SDL_CreateCursor(const Uint8 * data, * situations. For example, if the original surface is 32x32, then on a 2x * macOS display or 200% display scale on Windows, a 64x64 version of the * image will be used, if available. If a matching version of the image isn't - * available, the closest size image will be scaled to the appropriate size - * and be used instead. + * available, the closest larger size image will be downscaled to the + * appropriate size and be used instead, if available. Otherwise, the closest + * smaller image will be upscaled and be used instead. * * \param surface an SDL_Surface structure representing the cursor image. * \param hot_x the x position of the cursor hot spot. @@ -461,14 +483,14 @@ extern SDL_DECLSPEC SDL_Cursor * SDLCALL SDL_CreateSystemCursor(SDL_SystemCursor * this is desired for any reason. * * \param cursor a cursor to make active. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetCursor */ -extern SDL_DECLSPEC int SDLCALL SDL_SetCursor(SDL_Cursor *cursor); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetCursor(SDL_Cursor *cursor); /** * Get the active cursor. @@ -516,28 +538,28 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyCursor(SDL_Cursor *cursor); /** * Show the cursor. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CursorVisible * \sa SDL_HideCursor */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowCursor(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowCursor(void); /** * Hide the cursor. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CursorVisible * \sa SDL_ShowCursor */ -extern SDL_DECLSPEC int SDLCALL SDL_HideCursor(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HideCursor(void); /** * Return whether the cursor is currently being shown. diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_mutex.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_mutex.h index eea0030..3a7ce56 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_mutex.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_mutex.h @@ -115,16 +115,6 @@ extern "C" { #endif -/** - * Synchronization functions return this value if they time out. - * - * Not all functions _can_ time out; some will block indefinitely. - * - * \since This macro is available since SDL 3.0.0. - */ -#define SDL_MUTEX_TIMEDOUT 1 - - /** * \name Mutex functions */ @@ -194,25 +184,22 @@ extern SDL_DECLSPEC void SDLCALL SDL_LockMutex(SDL_Mutex *mutex) SDL_ACQUIRE(mut * Try to lock a mutex without blocking. * * This works just like SDL_LockMutex(), but if the mutex is not available, - * this function returns `SDL_MUTEX_TIMEDOUT` immediately. + * this function returns SDL_FALSE immediately. * * This technique is useful if you need exclusive access to a resource but * don't want to wait for it, and will return to it to try again later. * - * This function does not fail; if mutex is NULL, it will return 0 immediately - * having locked nothing. If the mutex is valid, this function will always - * either lock the mutex and return 0, or return SDL_MUTEX_TIMEOUT and lock - * nothing. + * This function returns SDL_TRUE if passed a NULL mutex. * * \param mutex the mutex to try to lock. - * \returns 0 or `SDL_MUTEX_TIMEDOUT`. + * \returns SDL_TRUE on success, SDL_FALSE if the mutex would block. * * \since This function is available since SDL 3.0.0. * * \sa SDL_LockMutex * \sa SDL_UnlockMutex */ -extern SDL_DECLSPEC int SDLCALL SDL_TryLockMutex(SDL_Mutex *mutex) SDL_TRY_ACQUIRE(0, mutex); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TryLockMutex(SDL_Mutex *mutex) SDL_TRY_ACQUIRE(0, mutex); /** * Unlock the mutex. @@ -278,19 +265,6 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyMutex(SDL_Mutex *mutex); */ typedef struct SDL_RWLock SDL_RWLock; -/* - * Synchronization functions return this value if they time out. - * - * Not all functions _can_ time out; some will block indefinitely. - * - * This symbol is just for clarity when dealing with SDL_RWLock - * functions; its value is equivalent to SDL_MUTEX_TIMEOUT. - * - * \since This macro is available since SDL 3.0.0. - */ -#define SDL_RWLOCK_TIMEDOUT SDL_MUTEX_TIMEDOUT - - /** * Create a new read/write lock. * @@ -405,7 +379,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_LockRWLockForWriting(SDL_RWLock *rwlock) SD * Try to lock a read/write lock _for reading_ without blocking. * * This works just like SDL_LockRWLockForReading(), but if the rwlock is not - * available, then this function returns `SDL_RWLOCK_TIMEDOUT` immediately. + * available, then this function returns SDL_FALSE immediately. * * This technique is useful if you need access to a resource but don't want to * wait for it, and will return to it to try again later. @@ -413,13 +387,10 @@ extern SDL_DECLSPEC void SDLCALL SDL_LockRWLockForWriting(SDL_RWLock *rwlock) SD * Trying to lock for read-only access can succeed if other threads are * holding read-only locks, as this won't prevent access. * - * This function does not fail; if rwlock is NULL, it will return 0 - * immediately having locked nothing. If rwlock is valid, this function will - * always either lock the rwlock and return 0, or return SDL_RWLOCK_TIMEOUT - * and lock nothing. + * This function returns SDL_TRUE if passed a NULL rwlock. * * \param rwlock the rwlock to try to lock. - * \returns 0 or `SDL_RWLOCK_TIMEDOUT`. + * \returns SDL_TRUE on success, SDL_FALSE if the lock would block. * * \since This function is available since SDL 3.0.0. * @@ -427,13 +398,13 @@ extern SDL_DECLSPEC void SDLCALL SDL_LockRWLockForWriting(SDL_RWLock *rwlock) SD * \sa SDL_TryLockRWLockForWriting * \sa SDL_UnlockRWLock */ -extern SDL_DECLSPEC int SDLCALL SDL_TryLockRWLockForReading(SDL_RWLock *rwlock) SDL_TRY_ACQUIRE_SHARED(0, rwlock); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TryLockRWLockForReading(SDL_RWLock *rwlock) SDL_TRY_ACQUIRE_SHARED(0, rwlock); /** * Try to lock a read/write lock _for writing_ without blocking. * * This works just like SDL_LockRWLockForWriting(), but if the rwlock is not - * available, this function returns `SDL_RWLOCK_TIMEDOUT` immediately. + * available, then this function returns SDL_FALSE immediately. * * This technique is useful if you need exclusive access to a resource but * don't want to wait for it, and will return to it to try again later. @@ -446,13 +417,10 @@ extern SDL_DECLSPEC int SDLCALL SDL_TryLockRWLockForReading(SDL_RWLock *rwlock) * read-only lock. Doing so results in undefined behavior. Unlock the * read-only lock before requesting a write lock. * - * This function does not fail; if rwlock is NULL, it will return 0 - * immediately having locked nothing. If rwlock is valid, this function will - * always either lock the rwlock and return 0, or return SDL_RWLOCK_TIMEOUT - * and lock nothing. + * This function returns SDL_TRUE if passed a NULL rwlock. * * \param rwlock the rwlock to try to lock. - * \returns 0 or `SDL_RWLOCK_TIMEDOUT`. + * \returns SDL_TRUE on success, SDL_FALSE if the lock would block. * * \since This function is available since SDL 3.0.0. * @@ -460,7 +428,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_TryLockRWLockForReading(SDL_RWLock *rwlock) * \sa SDL_TryLockRWLockForReading * \sa SDL_UnlockRWLock */ -extern SDL_DECLSPEC int SDLCALL SDL_TryLockRWLockForWriting(SDL_RWLock *rwlock) SDL_TRY_ACQUIRE(0, rwlock); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TryLockRWLockForWriting(SDL_RWLock *rwlock) SDL_TRY_ACQUIRE(0, rwlock); /** * Unlock the read/write lock. @@ -569,17 +537,14 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroySemaphore(SDL_Semaphore *sem); /** * Wait until a semaphore has a positive value and then decrements it. * - * This function suspends the calling thread until either the semaphore - * pointed to by `sem` has a positive value or the call is interrupted by a - * signal or error. If the call is successful it will atomically decrement the - * semaphore value. + * This function suspends the calling thread until the semaphore pointed to by + * `sem` has a positive value, and then atomically decrement the semaphore + * value. * * This function is the equivalent of calling SDL_WaitSemaphoreTimeout() with * a time length of -1. * * \param sem the semaphore wait on. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -587,7 +552,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroySemaphore(SDL_Semaphore *sem); * \sa SDL_TryWaitSemaphore * \sa SDL_WaitSemaphoreTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_WaitSemaphore(SDL_Semaphore *sem); +extern SDL_DECLSPEC void SDLCALL SDL_WaitSemaphore(SDL_Semaphore *sem); /** * See if a semaphore has a positive value and decrement it if it does. @@ -595,12 +560,10 @@ extern SDL_DECLSPEC int SDLCALL SDL_WaitSemaphore(SDL_Semaphore *sem); * This function checks to see if the semaphore pointed to by `sem` has a * positive value and atomically decrements the semaphore value if it does. If * the semaphore doesn't have a positive value, the function immediately - * returns SDL_MUTEX_TIMEDOUT. + * returns SDL_FALSE. * * \param sem the semaphore to wait on. - * \returns 0 if the wait succeeds, `SDL_MUTEX_TIMEDOUT` if the wait would - * block, or a negative error code on failure; call SDL_GetError() - * for more information. + * \returns SDL_TRUE if the wait succeeds, SDL_FALSE if the wait would block. * * \since This function is available since SDL 3.0.0. * @@ -608,21 +571,19 @@ extern SDL_DECLSPEC int SDLCALL SDL_WaitSemaphore(SDL_Semaphore *sem); * \sa SDL_WaitSemaphore * \sa SDL_WaitSemaphoreTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_TryWaitSemaphore(SDL_Semaphore *sem); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TryWaitSemaphore(SDL_Semaphore *sem); /** * Wait until a semaphore has a positive value and then decrements it. * * This function suspends the calling thread until either the semaphore - * pointed to by `sem` has a positive value, the call is interrupted by a - * signal or error, or the specified time has elapsed. If the call is - * successful it will atomically decrement the semaphore value. + * pointed to by `sem` has a positive value or the specified time has elapsed. + * If the call is successful it will atomically decrement the semaphore value. * * \param sem the semaphore to wait on. - * \param timeoutMS the length of the timeout, in milliseconds. - * \returns 0 if the wait succeeds, `SDL_MUTEX_TIMEDOUT` if the wait does not - * succeed in the allotted time, or a negative error code on failure; - * call SDL_GetError() for more information. + * \param timeoutMS the length of the timeout, in milliseconds, or -1 to wait + * indefinitely. + * \returns SDL_TRUE if the wait succeeds or SDL_FALSE if the wait times out. * * \since This function is available since SDL 3.0.0. * @@ -630,14 +591,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_TryWaitSemaphore(SDL_Semaphore *sem); * \sa SDL_TryWaitSemaphore * \sa SDL_WaitSemaphore */ -extern SDL_DECLSPEC int SDLCALL SDL_WaitSemaphoreTimeout(SDL_Semaphore *sem, Sint32 timeoutMS); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WaitSemaphoreTimeout(SDL_Semaphore *sem, Sint32 timeoutMS); /** * Atomically increment a semaphore's value and wake waiting threads. * * \param sem the semaphore to increment. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -645,7 +604,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_WaitSemaphoreTimeout(SDL_Semaphore *sem, Sin * \sa SDL_WaitSemaphore * \sa SDL_WaitSemaphoreTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_SignalSemaphore(SDL_Semaphore *sem); +extern SDL_DECLSPEC void SDLCALL SDL_SignalSemaphore(SDL_Semaphore *sem); /** * Get the current value of a semaphore. @@ -711,8 +670,6 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyCondition(SDL_Condition *cond); * Restart one of the threads that are waiting on the condition variable. * * \param cond the condition variable to signal. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -722,14 +679,12 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyCondition(SDL_Condition *cond); * \sa SDL_WaitCondition * \sa SDL_WaitConditionTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_SignalCondition(SDL_Condition *cond); +extern SDL_DECLSPEC void SDLCALL SDL_SignalCondition(SDL_Condition *cond); /** * Restart all threads that are waiting on the condition variable. * * \param cond the condition variable to signal. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -739,7 +694,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SignalCondition(SDL_Condition *cond); * \sa SDL_WaitCondition * \sa SDL_WaitConditionTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_BroadcastCondition(SDL_Condition *cond); +extern SDL_DECLSPEC void SDLCALL SDL_BroadcastCondition(SDL_Condition *cond); /** * Wait until a condition variable is signaled. @@ -758,8 +713,6 @@ extern SDL_DECLSPEC int SDLCALL SDL_BroadcastCondition(SDL_Condition *cond); * * \param cond the condition variable to wait on. * \param mutex the mutex used to coordinate thread access. - * \returns 0 when it is signaled or a negative error code on failure; call - * SDL_GetError() for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -769,7 +722,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BroadcastCondition(SDL_Condition *cond); * \sa SDL_SignalCondition * \sa SDL_WaitConditionTimeout */ -extern SDL_DECLSPEC int SDLCALL SDL_WaitCondition(SDL_Condition *cond, SDL_Mutex *mutex); +extern SDL_DECLSPEC void SDLCALL SDL_WaitCondition(SDL_Condition *cond, SDL_Mutex *mutex); /** * Wait until a condition variable is signaled or a certain time has passed. @@ -788,9 +741,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_WaitCondition(SDL_Condition *cond, SDL_Mutex * \param mutex the mutex used to coordinate thread access. * \param timeoutMS the maximum time to wait, in milliseconds, or -1 to wait * indefinitely. - * \returns 0 if the condition variable is signaled, `SDL_MUTEX_TIMEDOUT` if - * the condition is not signaled in the allotted time, or a negative - * error code on failure; call SDL_GetError() for more information. + * \returns SDL_TRUE if the condition variable is signaled, SDL_FALSE if the + * condition is not signaled in the allotted time. * * \threadsafety It is safe to call this function from any thread. * @@ -800,7 +752,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_WaitCondition(SDL_Condition *cond, SDL_Mutex * \sa SDL_SignalCondition * \sa SDL_WaitCondition */ -extern SDL_DECLSPEC int SDLCALL SDL_WaitConditionTimeout(SDL_Condition *cond, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WaitConditionTimeout(SDL_Condition *cond, SDL_Mutex *mutex, Sint32 timeoutMS); /* @} *//* Condition variable functions */ diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_oldnames.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_oldnames.h index cd895d5..02c881c 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_oldnames.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_oldnames.h @@ -40,7 +40,9 @@ /* ##SDL_atomic.h */ #define SDL_AtomicCAS SDL_AtomicCompareAndSwap #define SDL_AtomicCASPtr SDL_AtomicCompareAndSwapPointer +#define SDL_AtomicGetPtr SDL_AtomicGetPointer #define SDL_AtomicLock SDL_LockSpinlock +#define SDL_AtomicSetPtr SDL_AtomicSetPointer #define SDL_AtomicTryLock SDL_TryLockSpinlock #define SDL_AtomicUnlock SDL_UnlockSpinlock #define SDL_atomic_t SDL_AtomicInt @@ -116,6 +118,7 @@ #define SDL_DROPCOMPLETE SDL_EVENT_DROP_COMPLETE #define SDL_DROPFILE SDL_EVENT_DROP_FILE #define SDL_DROPTEXT SDL_EVENT_DROP_TEXT +#define SDL_DelEventWatch SDL_RemoveEventWatch #define SDL_FINGERDOWN SDL_EVENT_FINGER_DOWN #define SDL_FINGERMOTION SDL_EVENT_FINGER_MOTION #define SDL_FINGERUP SDL_EVENT_FINGER_UP @@ -296,6 +299,7 @@ #define SDL_MouseIsHaptic SDL_IsMouseHaptic /* ##SDL_hints.h */ +#define SDL_DelHintCallback SDL_RemoveHintCallback #define SDL_HINT_ALLOW_TOPMOST SDL_HINT_WINDOW_ALLOW_TOPMOST #define SDL_HINT_DIRECTINPUT_ENABLED SDL_HINT_JOYSTICK_DIRECTINPUT #define SDL_HINT_GDK_TEXTINPUT_DEFAULT SDL_HINT_GDK_TEXTINPUT_DEFAULT_TEXT @@ -523,7 +527,6 @@ #define SDL_RenderSetVSync SDL_SetRenderVSync #define SDL_RenderSetViewport SDL_SetRenderViewport #define SDL_RenderWindowToLogical SDL_RenderCoordinatesFromWindow -#define SDL_ScaleModeBest SDL_SCALEMODE_BEST #define SDL_ScaleModeLinear SDL_SCALEMODE_LINEAR #define SDL_ScaleModeNearest SDL_SCALEMODE_NEAREST @@ -660,7 +663,9 @@ /* ##SDL_atomic.h */ #define SDL_AtomicCAS SDL_AtomicCAS_renamed_SDL_AtomicCompareAndSwap #define SDL_AtomicCASPtr SDL_AtomicCASPtr_renamed_SDL_AtomicCompareAndSwapPointer +#define SDL_AtomicGetPtr SDL_AtomicGetPtr_renamed_SDL_AtomicGetPointer #define SDL_AtomicLock SDL_AtomicLock_renamed_SDL_LockSpinlock +#define SDL_AtomicSetPtr SDL_AtomicSetPtr_renamed_SDL_AtomicSetPointer #define SDL_AtomicTryLock SDL_AtomicTryLock_renamed_SDL_TryLockSpinlock #define SDL_AtomicUnlock SDL_AtomicUnlock_renamed_SDL_UnlockSpinlock #define SDL_atomic_t SDL_atomic_t_renamed_SDL_AtomicInt @@ -736,6 +741,7 @@ #define SDL_DROPCOMPLETE SDL_DROPCOMPLETE_renamed_SDL_EVENT_DROP_COMPLETE #define SDL_DROPFILE SDL_DROPFILE_renamed_SDL_EVENT_DROP_FILE #define SDL_DROPTEXT SDL_DROPTEXT_renamed_SDL_EVENT_DROP_TEXT +#define SDL_DelEventWatch SDL_DelEventWatch_renamed_SDL_RemoveEventWatch #define SDL_FINGERDOWN SDL_FINGERDOWN_renamed_SDL_EVENT_FINGER_DOWN #define SDL_FINGERMOTION SDL_FINGERMOTION_renamed_SDL_EVENT_FINGER_MOTION #define SDL_FINGERUP SDL_FINGERUP_renamed_SDL_EVENT_FINGER_UP @@ -917,6 +923,7 @@ #define SDL_MouseIsHaptic SDL_MouseIsHaptic_renamed_SDL_IsMouseHaptic /* ##SDL_hints.h */ +#define SDL_DelHintCallback SDL_DelHintCallback_renamed_SDL_RemoveHintCallback #define SDL_HINT_ALLOW_TOPMOST SDL_HINT_ALLOW_TOPMOST_renamed_SDL_HINT_WINDOW_ALLOW_TOPMOST #define SDL_HINT_DIRECTINPUT_ENABLED SDL_HINT_DIRECTINPUT_ENABLED_renamed_SDL_HINT_JOYSTICK_DIRECTINPUT #define SDL_HINT_GDK_TEXTINPUT_DEFAULT SDL_HINT_GDK_TEXTINPUT_DEFAULT_renamed_SDL_HINT_GDK_TEXTINPUT_DEFAULT_TEXT @@ -1144,7 +1151,6 @@ #define SDL_RenderSetVSync SDL_RenderSetVSync_renamed_SDL_SetRenderVSync #define SDL_RenderSetViewport SDL_RenderSetViewport_renamed_SDL_SetRenderViewport #define SDL_RenderWindowToLogical SDL_RenderWindowToLogical_renamed_SDL_RenderCoordinatesFromWindow -#define SDL_ScaleModeBest SDL_ScaleModeBest_renamed_SDL_SCALEMODE_BEST #define SDL_ScaleModeLinear SDL_ScaleModeLinear_renamed_SDL_SCALEMODE_LINEAR #define SDL_ScaleModeNearest SDL_ScaleModeNearest_renamed_SDL_SCALEMODE_NEAREST diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_opengl_glext.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_opengl_glext.h index ff6ad12..fa0f6c2 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_opengl_glext.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_opengl_glext.h @@ -9807,15 +9807,15 @@ typedef void (APIENTRYP PFNGLUPLOADGPUMASKNVXPROC) (GLbitfield mask); typedef void (APIENTRYP PFNGLMULTICASTVIEWPORTARRAYVNVXPROC) (GLuint gpu, GLuint first, GLsizei count, const GLfloat *v); typedef void (APIENTRYP PFNGLMULTICASTVIEWPORTPOSITIONWSCALENVXPROC) (GLuint gpu, GLuint index, GLfloat xcoeff, GLfloat ycoeff); typedef void (APIENTRYP PFNGLMULTICASTSCISSORARRAYVNVXPROC) (GLuint gpu, GLuint first, GLsizei count, const GLint *v); -typedef GLuint (APIENTRYP PFNGLASYNCCOPYBUFFERSUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); -typedef GLuint (APIENTRYP PFNGLASYNCCOPYIMAGESUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); +typedef GLuint (APIENTRYP PFNGLASYNCCOPYBUFFERSUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGPU, GLbitfield writeGPUMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); +typedef GLuint (APIENTRYP PFNGLASYNCCOPYIMAGESUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGPU, GLbitfield dstGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); #ifdef GL_GLEXT_PROTOTYPES -GLAPI void APIENTRY glUploadGpuMaskNVX (GLbitfield mask); +GLAPI void APIENTRY glUploadGPUMaskNVX (GLbitfield mask); GLAPI void APIENTRY glMulticastViewportArrayvNVX (GLuint gpu, GLuint first, GLsizei count, const GLfloat *v); GLAPI void APIENTRY glMulticastViewportPositionWScaleNVX (GLuint gpu, GLuint index, GLfloat xcoeff, GLfloat ycoeff); GLAPI void APIENTRY glMulticastScissorArrayvNVX (GLuint gpu, GLuint first, GLsizei count, const GLint *v); -GLAPI GLuint APIENTRY glAsyncCopyBufferSubDataNVX (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); -GLAPI GLuint APIENTRY glAsyncCopyImageSubDataNVX (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); +GLAPI GLuint APIENTRY glAsyncCopyBufferSubDataNVX (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGPU, GLbitfield writeGPUMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); +GLAPI GLuint APIENTRY glAsyncCopyImageSubDataNVX (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGPU, GLbitfield dstGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray); #endif #endif /* GL_NVX_gpu_multicast2 */ @@ -9824,11 +9824,11 @@ GLAPI GLuint APIENTRY glAsyncCopyImageSubDataNVX (GLsizei waitSemaphoreCount, co #define GL_LGPU_SEPARATE_STORAGE_BIT_NVX 0x0800 #define GL_MAX_LGPU_GPUS_NVX 0x92BA typedef void (APIENTRYP PFNGLLGPUNAMEDBUFFERSUBDATANVXPROC) (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); -typedef void (APIENTRYP PFNGLLGPUCOPYIMAGESUBDATANVXPROC) (GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); +typedef void (APIENTRYP PFNGLLGPUCOPYIMAGESUBDATANVXPROC) (GLuint sourceGPU, GLbitfield destinationGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); typedef void (APIENTRYP PFNGLLGPUINTERLOCKNVXPROC) (void); #ifdef GL_GLEXT_PROTOTYPES GLAPI void APIENTRY glLGPUNamedBufferSubDataNVX (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); -GLAPI void APIENTRY glLGPUCopyImageSubDataNVX (GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); +GLAPI void APIENTRY glLGPUCopyImageSubDataNVX (GLuint sourceGPU, GLbitfield destinationGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); GLAPI void APIENTRY glLGPUInterlockNVX (void); #endif #endif /* GL_NVX_linked_gpu_multicast */ @@ -9836,13 +9836,13 @@ GLAPI void APIENTRY glLGPUInterlockNVX (void); #ifndef GL_NVX_progress_fence #define GL_NVX_progress_fence 1 typedef GLuint (APIENTRYP PFNGLCREATEPROGRESSFENCENVXPROC) (void); -typedef void (APIENTRYP PFNGLSIGNALSEMAPHOREUI64NVXPROC) (GLuint signalGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); -typedef void (APIENTRYP PFNGLWAITSEMAPHOREUI64NVXPROC) (GLuint waitGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); +typedef void (APIENTRYP PFNGLSIGNALSEMAPHOREUI64NVXPROC) (GLuint signalGPU, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); +typedef void (APIENTRYP PFNGLWAITSEMAPHOREUI64NVXPROC) (GLuint waitGPU, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); typedef void (APIENTRYP PFNGLCLIENTWAITSEMAPHOREUI64NVXPROC) (GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); #ifdef GL_GLEXT_PROTOTYPES GLAPI GLuint APIENTRY glCreateProgressFenceNVX (void); -GLAPI void APIENTRY glSignalSemaphoreui64NVX (GLuint signalGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); -GLAPI void APIENTRY glWaitSemaphoreui64NVX (GLuint waitGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); +GLAPI void APIENTRY glSignalSemaphoreui64NVX (GLuint signalGPU, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); +GLAPI void APIENTRY glWaitSemaphoreui64NVX (GLuint waitGPU, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); GLAPI void APIENTRY glClientWaitSemaphoreui64NVX (GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray); #endif #endif /* GL_NVX_progress_fence */ @@ -10433,25 +10433,25 @@ GLAPI void APIENTRY glFramebufferTextureFaceEXT (GLenum target, GLenum attachmen #define GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV 0x9549 typedef void (APIENTRYP PFNGLRENDERGPUMASKNVPROC) (GLbitfield mask); typedef void (APIENTRYP PFNGLMULTICASTBUFFERSUBDATANVPROC) (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); -typedef void (APIENTRYP PFNGLMULTICASTCOPYBUFFERSUBDATANVPROC) (GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); -typedef void (APIENTRYP PFNGLMULTICASTCOPYIMAGESUBDATANVPROC) (GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); -typedef void (APIENTRYP PFNGLMULTICASTBLITFRAMEBUFFERNVPROC) (GLuint srcGpu, GLuint dstGpu, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +typedef void (APIENTRYP PFNGLMULTICASTCOPYBUFFERSUBDATANVPROC) (GLuint readGPU, GLbitfield writeGPUMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); +typedef void (APIENTRYP PFNGLMULTICASTCOPYIMAGESUBDATANVPROC) (GLuint srcGPU, GLbitfield dstGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); +typedef void (APIENTRYP PFNGLMULTICASTBLITFRAMEBUFFERNVPROC) (GLuint srcGPU, GLuint dstGPU, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); typedef void (APIENTRYP PFNGLMULTICASTFRAMEBUFFERSAMPLELOCATIONSFVNVPROC) (GLuint gpu, GLuint framebuffer, GLuint start, GLsizei count, const GLfloat *v); typedef void (APIENTRYP PFNGLMULTICASTBARRIERNVPROC) (void); -typedef void (APIENTRYP PFNGLMULTICASTWAITSYNCNVPROC) (GLuint signalGpu, GLbitfield waitGpuMask); +typedef void (APIENTRYP PFNGLMULTICASTWAITSYNCNVPROC) (GLuint signalGPU, GLbitfield waitGPUMask); typedef void (APIENTRYP PFNGLMULTICASTGETQUERYOBJECTIVNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLint *params); typedef void (APIENTRYP PFNGLMULTICASTGETQUERYOBJECTUIVNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLuint *params); typedef void (APIENTRYP PFNGLMULTICASTGETQUERYOBJECTI64VNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLint64 *params); typedef void (APIENTRYP PFNGLMULTICASTGETQUERYOBJECTUI64VNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLuint64 *params); #ifdef GL_GLEXT_PROTOTYPES -GLAPI void APIENTRY glRenderGpuMaskNV (GLbitfield mask); +GLAPI void APIENTRY glRenderGPUMaskNV (GLbitfield mask); GLAPI void APIENTRY glMulticastBufferSubDataNV (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data); -GLAPI void APIENTRY glMulticastCopyBufferSubDataNV (GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); -GLAPI void APIENTRY glMulticastCopyImageSubDataNV (GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); -GLAPI void APIENTRY glMulticastBlitFramebufferNV (GLuint srcGpu, GLuint dstGpu, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +GLAPI void APIENTRY glMulticastCopyBufferSubDataNV (GLuint readGPU, GLbitfield writeGPUMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); +GLAPI void APIENTRY glMulticastCopyImageSubDataNV (GLuint srcGPU, GLbitfield dstGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); +GLAPI void APIENTRY glMulticastBlitFramebufferNV (GLuint srcGPU, GLuint dstGPU, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); GLAPI void APIENTRY glMulticastFramebufferSampleLocationsfvNV (GLuint gpu, GLuint framebuffer, GLuint start, GLsizei count, const GLfloat *v); GLAPI void APIENTRY glMulticastBarrierNV (void); -GLAPI void APIENTRY glMulticastWaitSyncNV (GLuint signalGpu, GLbitfield waitGpuMask); +GLAPI void APIENTRY glMulticastWaitSyncNV (GLuint signalGPU, GLbitfield waitGPUMask); GLAPI void APIENTRY glMulticastGetQueryObjectivNV (GLuint gpu, GLuint id, GLenum pname, GLint *params); GLAPI void APIENTRY glMulticastGetQueryObjectuivNV (GLuint gpu, GLuint id, GLenum pname, GLuint *params); GLAPI void APIENTRY glMulticastGetQueryObjecti64vNV (GLuint gpu, GLuint id, GLenum pname, GLint64 *params); diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_pen.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_pen.h index c02c008..cda4f0f 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_pen.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_pen.h @@ -22,56 +22,65 @@ /** * # CategoryPen * - * Include file for SDL pen event handling. + * SDL pen event handling. * - * This file describes operations for pressure-sensitive pen (stylus and/or - * eraser) handling, e.g., for input and drawing tablets or suitably equipped - * mobile / tablet devices. + * SDL provides an API for pressure-sensitive pen (stylus and/or eraser) + * handling, e.g., for input and drawing tablets or suitably equipped mobile / + * tablet devices. * - * To get started with pens: + * To get started with pens, simply handle SDL_EVENT_PEN_* events. When a pen + * starts providing input, SDL will assign it a unique SDL_PenID, which will + * remain for the life of the process, as long as the pen stays connected. * - * - Listen to SDL_PenMotionEvent and SDL_PenButtonEvent - * - To avoid treating pen events as mouse events, ignore SDL_MouseMotionEvent - * and SDL_MouseButtonEvent whenever `which` == SDL_PEN_MOUSEID. - * - * We primarily identify pens by SDL_PenID. The implementation makes a best - * effort to relate each SDL_PenID to the same physical device during a - * session. Formerly valid SDL_PenID values remain valid even if a device - * disappears. - * - * For identifying pens across sessions, the API provides the type SDL_GUID . + * Pens may provide more than simple touch input; they might have other axes, + * such as pressure, tilt, rotation, etc. */ #ifndef SDL_pen_h_ #define SDL_pen_h_ #include -#include -#include -#include /* Set up for C function definitions, even when using C++ */ #ifdef __cplusplus extern "C" { #endif -typedef Uint32 SDL_PenID; /**< SDL_PenIDs identify pens uniquely within a session */ +/** + * SDL pen instance IDs. + * + * Zero is used to signify an invalid/null device. + * + * These show up in pen events when SDL sees input from them. They remain + * consistent as long as SDL can recognize a tool to be the same pen; but if a + * pen physically leaves the area and returns, it might get a new ID. + * + * \since This datatype is available since SDL 3.0.0. + */ +typedef Uint32 SDL_PenID; -#define SDL_PEN_INVALID ((SDL_PenID)0) /**< Reserved invalid SDL_PenID is valid */ - -#define SDL_PEN_MOUSEID ((SDL_MouseID)-2) /**< Device ID for mouse events triggered by pen events */ - -#define SDL_PEN_INFO_UNKNOWN (-1) /**< Marks unknown information when querying the pen */ /** - * Pen axis indices + * Pen input flags, as reported by various pen events' `pen_state` field. * - * Below are the valid indices to the "axis" array from SDL_PenMotionEvent and - * SDL_PenButtonEvent. The axis indices form a contiguous range of ints from 0 - * to SDL_PEN_AXIS_LAST, inclusive. All "axis[]" entries are either normalised - * to 0..1 or report a (positive or negative) angle in degrees, with 0.0 - * representing the centre. Not all pens/backends support all axes: - * unsupported entries are always "0.0f". + * \since This datatype is available since SDL 3.0.0. + */ +typedef Uint32 SDL_PenInputFlags; +#define SDL_PEN_INPUT_DOWN (1u << 0) /**< & to see if pen is pressed down */ +#define SDL_PEN_INPUT_BUTTON_1 (1u << 1) /**< & to see if button 1 is pressed */ +#define SDL_PEN_INPUT_BUTTON_2 (1u << 2) /**< & to see if button 2 is pressed */ +#define SDL_PEN_INPUT_BUTTON_3 (1u << 3) /**< & to see if button 3 is pressed */ +#define SDL_PEN_INPUT_BUTTON_4 (1u << 4) /**< & to see if button 4 is pressed */ +#define SDL_PEN_INPUT_BUTTON_5 (1u << 5) /**< & to see if button 5 is pressed */ +#define SDL_PEN_INPUT_ERASER_TIP (1u << 30) /**< & to see if eraser tip is used */ + +/** + * Pen axis indices. + * + * These are the valid values for the `axis` field in SDL_PenAxisEvent. All + * axes are either normalised to 0..1 or report a (positive or negative) angle + * in degrees, with 0.0 representing the centre. Not all pens/backends support + * all axes: unsupported axes are always zero. * * To convert angles for tilt and rotation into vector representation, use * SDL_sinf on the XTILT, YTILT, or ROTATION component, for example: @@ -82,200 +91,18 @@ typedef Uint32 SDL_PenID; /**< SDL_PenIDs identify pens uniquely within a sessio */ typedef enum SDL_PenAxis { - SDL_PEN_AXIS_PRESSURE = 0, /**< Pen pressure. Unidirectional: 0..1.0 */ - SDL_PEN_AXIS_XTILT, /**< Pen horizontal tilt angle. Bidirectional: -90.0..90.0 (left-to-right). - The physical max/min tilt may be smaller than -90.0 / 90.0, cf. SDL_PenCapabilityInfo */ - SDL_PEN_AXIS_YTILT, /**< Pen vertical tilt angle. Bidirectional: -90.0..90.0 (top-to-down). - The physical max/min tilt may be smaller than -90.0 / 90.0, cf. SDL_PenCapabilityInfo */ - SDL_PEN_AXIS_DISTANCE, /**< Pen distance to drawing surface. Unidirectional: 0.0..1.0 */ - SDL_PEN_AXIS_ROTATION, /**< Pen barrel rotation. Bidirectional: -180..179.9 (clockwise, 0 is facing up, -180.0 is facing down). */ - SDL_PEN_AXIS_SLIDER, /**< Pen finger wheel or slider (e.g., Airbrush Pen). Unidirectional: 0..1.0 */ - SDL_PEN_NUM_AXES, /**< Last valid axis index */ - SDL_PEN_AXIS_LAST = SDL_PEN_NUM_AXES - 1 /**< Last axis index plus 1 */ + SDL_PEN_AXIS_PRESSURE, /**< Pen pressure. Unidirectional: 0 to 1.0 */ + SDL_PEN_AXIS_XTILT, /**< Pen horizontal tilt angle. Bidirectional: -90.0 to 90.0 (left-to-right). + The physical max/min tilt may be smaller than -90.0 / 90.0, check SDL_PenCapabilityInfo */ + SDL_PEN_AXIS_YTILT, /**< Pen vertical tilt angle. Bidirectional: -90.0 to 90.0 (top-to-down). + The physical max/min tilt may be smaller than -90.0 / 90.0 check SDL_PenCapabilityInfo */ + SDL_PEN_AXIS_DISTANCE, /**< Pen distance to drawing surface. Unidirectional: 0.0 to 1.0 */ + SDL_PEN_AXIS_ROTATION, /**< Pen barrel rotation. Bidirectional: -180 to 179.9 (clockwise, 0 is facing up, -180.0 is facing down). */ + SDL_PEN_AXIS_SLIDER, /**< Pen finger wheel or slider (e.g., Airbrush Pen). Unidirectional: 0 to 1.0 */ + SDL_PEN_AXIS_TANGENTIAL_PRESSURE, /**< Pressure from squeezing the pen ("barrel pressure"). */ + SDL_PEN_NUM_AXES /**< Total known pen axis types in this version of SDL. This number may grow in future releases! */ } SDL_PenAxis; -/* Pen flags. These share a bitmask space with SDL_BUTTON_LEFT and friends. */ -#define SDL_PEN_FLAG_DOWN_BIT_INDEX 13 /* Bit for storing that pen is touching the surface */ -#define SDL_PEN_FLAG_INK_BIT_INDEX 14 /* Bit for storing has-non-eraser-capability status */ -#define SDL_PEN_FLAG_ERASER_BIT_INDEX 15 /* Bit for storing is-eraser or has-eraser-capability property */ -#define SDL_PEN_FLAG_AXIS_BIT_OFFSET 16 /* Bit for storing has-axis-0 property */ - -#define SDL_PEN_CAPABILITY(capbit) (1ul << (capbit)) -#define SDL_PEN_AXIS_CAPABILITY(axis) SDL_PEN_CAPABILITY((axis) + SDL_PEN_FLAG_AXIS_BIT_OFFSET) - -/* Pen tips */ -#define SDL_PEN_TIP_INK SDL_PEN_FLAG_INK_BIT_INDEX /**< Regular pen tip (for drawing) touched the surface */ -#define SDL_PEN_TIP_ERASER SDL_PEN_FLAG_ERASER_BIT_INDEX /**< Eraser pen tip touched the surface */ - -/** - * Pen capabilities reported by SDL_GetPenCapabilities. - * - * \since This datatype is available since SDL 3.0.0. - */ -typedef Uint32 SDL_PenCapabilityFlags; - -#define SDL_PEN_DOWN_MASK SDL_PEN_CAPABILITY(SDL_PEN_FLAG_DOWN_BIT_INDEX) /**< Pen tip is currently touching the drawing surface. */ -#define SDL_PEN_INK_MASK SDL_PEN_CAPABILITY(SDL_PEN_FLAG_INK_BIT_INDEX) /**< Pen has a regular drawing tip (SDL_GetPenCapabilities). For events (SDL_PenButtonEvent, SDL_PenMotionEvent, SDL_GetPenStatus) this flag is mutually exclusive with SDL_PEN_ERASER_MASK . */ -#define SDL_PEN_ERASER_MASK SDL_PEN_CAPABILITY(SDL_PEN_FLAG_ERASER_BIT_INDEX) /**< Pen has an eraser tip (SDL_GetPenCapabilities) or is being used as eraser (SDL_PenButtonEvent , SDL_PenMotionEvent , SDL_GetPenStatus) */ -#define SDL_PEN_AXIS_PRESSURE_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_PRESSURE) /**< Pen provides pressure information in axis SDL_PEN_AXIS_PRESSURE */ -#define SDL_PEN_AXIS_XTILT_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_XTILT) /**< Pen provides horizontal tilt information in axis SDL_PEN_AXIS_XTILT */ -#define SDL_PEN_AXIS_YTILT_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_YTILT) /**< Pen provides vertical tilt information in axis SDL_PEN_AXIS_YTILT */ -#define SDL_PEN_AXIS_DISTANCE_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_DISTANCE) /**< Pen provides distance to drawing tablet in SDL_PEN_AXIS_DISTANCE */ -#define SDL_PEN_AXIS_ROTATION_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_ROTATION) /**< Pen provides barrel rotation information in axis SDL_PEN_AXIS_ROTATION */ -#define SDL_PEN_AXIS_SLIDER_MASK SDL_PEN_AXIS_CAPABILITY(SDL_PEN_AXIS_SLIDER) /**< Pen provides slider / finger wheel or similar in axis SDL_PEN_AXIS_SLIDER */ -#define SDL_PEN_AXIS_BIDIRECTIONAL_MASKS (SDL_PEN_AXIS_XTILT_MASK | SDL_PEN_AXIS_YTILT_MASK) - -/** - * Pen types - * - * Some pens identify as a particular type of drawing device (e.g., an - * airbrush or a pencil). - * - * \since This enum is available since SDL 3.0.0 - */ -typedef enum SDL_PenSubtype -{ - SDL_PEN_TYPE_UNKNOWN = 0, - SDL_PEN_TYPE_ERASER = 1, /**< Eraser */ - SDL_PEN_TYPE_PEN, /**< Generic pen; this is the default. */ - SDL_PEN_TYPE_PENCIL, /**< Pencil */ - SDL_PEN_TYPE_BRUSH, /**< Brush-like device */ - SDL_PEN_TYPE_AIRBRUSH, /**< Airbrush device that "sprays" ink */ - SDL_PEN_TYPE_LAST = SDL_PEN_TYPE_AIRBRUSH /**< Last valid pen type */ -} SDL_PenSubtype; - - -/* Function prototypes */ - -/** - * Retrieves all pens that are connected to the system. - * - * Yields an array of SDL_PenID values. These identify and track pens - * throughout a session. To track pens across sessions (program restart), use - * SDL_GUID . - * - * \param count the number of pens in the array (number of array elements - * minus 1, i.e., not counting the terminator 0). - * \returns a 0 terminated array of SDL_PenID values, or NULL on failure. The - * array must be freed with SDL_free(). On a NULL return, - * SDL_GetError() is set. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_PenID * SDLCALL SDL_GetPens(int *count); - -/** - * Retrieves the pen's current status. - * - * If the pen is detached (cf. SDL_PenConnected), this operation may return - * default values. - * - * \param instance_id the pen to query. - * \param x out-mode parameter for pen x coordinate. May be NULL. - * \param y out-mode parameter for pen y coordinate. May be NULL. - * \param axes out-mode parameter for axis information. May be null. The axes - * are in the same order as SDL_PenAxis. - * \param num_axes maximum number of axes to write to "axes". - * \returns a bit mask with the current pen button states (SDL_BUTTON_LMASK - * etc.), possibly SDL_PEN_DOWN_MASK, and exactly one of - * SDL_PEN_INK_MASK or SDL_PEN_ERASER_MASK , or 0 on error (see - * SDL_GetError()). - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC Uint32 SDLCALL SDL_GetPenStatus(SDL_PenID instance_id, float *x, float *y, float *axes, size_t num_axes); - -/** - * Retrieves an SDL_PenID for the given SDL_GUID. - * - * \param guid a pen GUID. - * \returns a valid SDL_PenID, or SDL_PEN_INVALID if there is no matching - * SDL_PenID. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_PenID SDLCALL SDL_GetPenFromGUID(SDL_GUID guid); - -/** - * Retrieves the SDL_GUID for a given SDL_PenID. - * - * \param instance_id the pen to query. - * \returns the corresponding pen GUID; persistent across multiple sessions. - * If "instance_id" is SDL_PEN_INVALID, returns an all-zeroes GUID. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_GUID SDLCALL SDL_GetPenGUID(SDL_PenID instance_id); - -/** - * Checks whether a pen is still attached. - * - * If a pen is detached, it will not show up for SDL_GetPens(). Other - * operations will still be available but may return default values. - * - * \param instance_id a pen ID. - * \returns SDL_TRUE if "instance_id" is valid and the corresponding pen is - * attached, or SDL_FALSE otherwise. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PenConnected(SDL_PenID instance_id); - -/** - * Retrieves a human-readable description for a SDL_PenID. - * - * \param instance_id the pen to query. - * \returns a string that contains the name of the pen, intended for human - * consumption. The string might or might not be localised, depending - * on platform settings. It is not guaranteed to be unique; use - * SDL_GetPenGUID() for (best-effort) unique identifiers. The pointer - * is managed by the SDL pen subsystem and must not be deallocated. - * The pointer remains valid until SDL is shut down. Returns NULL on - * error (cf. SDL_GetError()). - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC const char * SDLCALL SDL_GetPenName(SDL_PenID instance_id); - -/** - * Pen capabilities, as reported by SDL_GetPenCapabilities() - * - * \since This struct is available since SDL 3.0.0. - */ -typedef struct SDL_PenCapabilityInfo -{ - float max_tilt; /**< Physical maximum tilt angle, for XTILT and YTILT, or SDL_PEN_INFO_UNKNOWN . Pens cannot typically tilt all the way to 90 degrees, so this value is usually less than 90.0. */ - Uint32 wacom_id; /**< For Wacom devices: wacom tool type ID, otherwise 0 (useful e.g. with libwacom) */ - Sint8 num_buttons; /**< Number of pen buttons (not counting the pen tip), or SDL_PEN_INFO_UNKNOWN */ -} SDL_PenCapabilityInfo; - -/** - * Retrieves capability flags for a given SDL_PenID. - * - * \param instance_id the pen to query. - * \param capabilities detail information about pen capabilities, such as the - * number of buttons. - * \returns a set of capability flags, cf. SDL_PEN_CAPABILITIES. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_PenCapabilityFlags SDLCALL SDL_GetPenCapabilities(SDL_PenID instance_id, SDL_PenCapabilityInfo *capabilities); - -/** - * Retrieves the pen type for a given SDL_PenID. - * - * \param instance_id the pen to query. - * \returns the corresponding pen type (cf. SDL_PenSubtype) or 0 on error. - * Note that the pen type does not dictate whether the pen tip is - * SDL_PEN_TIP_INK or SDL_PEN_TIP_ERASER; to determine whether a pen - * is being used for drawing or in eraser mode, check either the pen - * tip on SDL_EVENT_PEN_DOWN, or the flag SDL_PEN_ERASER_MASK in the - * pen state. - * - * \since This function is available since SDL 3.0.0. - */ -extern SDL_DECLSPEC SDL_PenSubtype SDLCALL SDL_GetPenType(SDL_PenID instance_id); - /* Ends C function definitions when using C++ */ #ifdef __cplusplus } diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_pixels.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_pixels.h index 851d595..3825dd5 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_pixels.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_pixels.h @@ -742,8 +742,8 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetPixelFormatName(SDL_PixelFormat * \param Gmask a pointer filled in with the green mask for the format. * \param Bmask a pointer filled in with the blue mask for the format. * \param Amask a pointer filled in with the alpha mask for the format. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -751,7 +751,7 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetPixelFormatName(SDL_PixelFormat * * \sa SDL_GetPixelFormatForMasks */ -extern SDL_DECLSPEC int SDLCALL SDL_GetMasksForPixelFormat(SDL_PixelFormat format, int *bpp, Uint32 *Rmask, Uint32 *Gmask, Uint32 *Bmask, Uint32 *Amask); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetMasksForPixelFormat(SDL_PixelFormat format, int *bpp, Uint32 *Rmask, Uint32 *Gmask, Uint32 *Bmask, Uint32 *Amask); /** * Convert a bpp value and RGBA masks to an enumerated pixel format. @@ -819,15 +819,15 @@ extern SDL_DECLSPEC SDL_Palette * SDLCALL SDL_CreatePalette(int ncolors); * \param colors an array of SDL_Color structures to copy into the palette. * \param firstcolor the index of the first palette entry to modify. * \param ncolors the number of entries to modify. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, as long as * the palette is not modified or destroyed in another thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetPaletteColors(SDL_Palette *palette, const SDL_Color *colors, int firstcolor, int ncolors); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetPaletteColors(SDL_Palette *palette, const SDL_Color *colors, int firstcolor, int ncolors); /** * Free a palette created with SDL_CreatePalette(). @@ -874,6 +874,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyPalette(SDL_Palette *palette); * * \since This function is available since SDL 3.0.0. * + * \sa SDL_GetPixelFormatDetails * \sa SDL_GetRGB * \sa SDL_MapRGBA * \sa SDL_MapSurfaceRGB @@ -912,6 +913,7 @@ extern SDL_DECLSPEC Uint32 SDLCALL SDL_MapRGB(const SDL_PixelFormatDetails *form * * \since This function is available since SDL 3.0.0. * + * \sa SDL_GetPixelFormatDetails * \sa SDL_GetRGBA * \sa SDL_MapRGB * \sa SDL_MapSurfaceRGBA @@ -939,6 +941,7 @@ extern SDL_DECLSPEC Uint32 SDLCALL SDL_MapRGBA(const SDL_PixelFormatDetails *for * * \since This function is available since SDL 3.0.0. * + * \sa SDL_GetPixelFormatDetails * \sa SDL_GetRGBA * \sa SDL_MapRGB * \sa SDL_MapRGBA @@ -970,6 +973,7 @@ extern SDL_DECLSPEC void SDLCALL SDL_GetRGB(Uint32 pixel, const SDL_PixelFormatD * * \since This function is available since SDL 3.0.0. * + * \sa SDL_GetPixelFormatDetails * \sa SDL_GetRGB * \sa SDL_MapRGB * \sa SDL_MapRGBA diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_properties.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_properties.h index b3e061a..c3a2c82 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_properties.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_properties.h @@ -116,14 +116,14 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_CreateProperties(void); * * \param src the properties to copy. * \param dst the destination properties. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_CopyProperties(SDL_PropertiesID src, SDL_PropertiesID dst); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CopyProperties(SDL_PropertiesID src, SDL_PropertiesID dst); /** * Lock a group of properties. @@ -138,8 +138,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_CopyProperties(SDL_PropertiesID src, SDL_Pro * thread. * * \param props the properties to lock. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -147,7 +147,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_CopyProperties(SDL_PropertiesID src, SDL_Pro * * \sa SDL_UnlockProperties */ -extern SDL_DECLSPEC int SDLCALL SDL_LockProperties(SDL_PropertiesID props); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LockProperties(SDL_PropertiesID props); /** * Unlock a group of properties. @@ -204,8 +204,8 @@ typedef void (SDLCALL *SDL_CleanupPropertyCallback)(void *userdata, void *value) * \param cleanup the function to call when this property is deleted, or NULL * if no cleanup is necessary. * \param userdata a pointer that is passed to the cleanup function. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -215,7 +215,7 @@ typedef void (SDLCALL *SDL_CleanupPropertyCallback)(void *userdata, void *value) * \sa SDL_SetPointerProperty * \sa SDL_CleanupPropertyCallback */ -extern SDL_DECLSPEC int SDLCALL SDL_SetPointerPropertyWithCleanup(SDL_PropertiesID props, const char *name, void *value, SDL_CleanupPropertyCallback cleanup, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetPointerPropertyWithCleanup(SDL_PropertiesID props, const char *name, void *value, SDL_CleanupPropertyCallback cleanup, void *userdata); /** * Set a pointer property in a group of properties. @@ -223,8 +223,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetPointerPropertyWithCleanup(SDL_Properties * \param props the properties to modify. * \param name the name of the property to modify. * \param value the new value of the property, or NULL to delete the property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -238,7 +238,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetPointerPropertyWithCleanup(SDL_Properties * \sa SDL_SetPointerPropertyWithCleanup * \sa SDL_SetStringProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetPointerProperty(SDL_PropertiesID props, const char *name, void *value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetPointerProperty(SDL_PropertiesID props, const char *name, void *value); /** * Set a string property in a group of properties. @@ -249,8 +249,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetPointerProperty(SDL_PropertiesID props, c * \param props the properties to modify. * \param name the name of the property to modify. * \param value the new value of the property, or NULL to delete the property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -258,7 +258,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetPointerProperty(SDL_PropertiesID props, c * * \sa SDL_GetStringProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetStringProperty(SDL_PropertiesID props, const char *name, const char *value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetStringProperty(SDL_PropertiesID props, const char *name, const char *value); /** * Set an integer property in a group of properties. @@ -266,8 +266,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetStringProperty(SDL_PropertiesID props, co * \param props the properties to modify. * \param name the name of the property to modify. * \param value the new value of the property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -275,7 +275,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetStringProperty(SDL_PropertiesID props, co * * \sa SDL_GetNumberProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetNumberProperty(SDL_PropertiesID props, const char *name, Sint64 value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetNumberProperty(SDL_PropertiesID props, const char *name, Sint64 value); /** * Set a floating point property in a group of properties. @@ -283,8 +283,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetNumberProperty(SDL_PropertiesID props, co * \param props the properties to modify. * \param name the name of the property to modify. * \param value the new value of the property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -292,7 +292,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetNumberProperty(SDL_PropertiesID props, co * * \sa SDL_GetFloatProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetFloatProperty(SDL_PropertiesID props, const char *name, float value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetFloatProperty(SDL_PropertiesID props, const char *name, float value); /** * Set a boolean property in a group of properties. @@ -300,8 +300,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetFloatProperty(SDL_PropertiesID props, con * \param props the properties to modify. * \param name the name of the property to modify. * \param value the new value of the property. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -309,7 +309,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetFloatProperty(SDL_PropertiesID props, con * * \sa SDL_GetBooleanProperty */ -extern SDL_DECLSPEC int SDLCALL SDL_SetBooleanProperty(SDL_PropertiesID props, const char *name, SDL_bool value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetBooleanProperty(SDL_PropertiesID props, const char *name, SDL_bool value); /** * Return whether a property exists in a group of properties. @@ -470,14 +470,14 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetBooleanProperty(SDL_PropertiesID pro * * \param props the properties to modify. * \param name the name of the property to clear. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearProperty(SDL_PropertiesID props, const char *name); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearProperty(SDL_PropertiesID props, const char *name); /** * A callback used to enumerate all the properties in a group of properties. @@ -507,14 +507,14 @@ typedef void (SDLCALL *SDL_EnumeratePropertiesCallback)(void *userdata, SDL_Prop * \param props the properties to query. * \param callback the function to call for each property. * \param userdata a pointer that is passed to `callback`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_EnumerateProperties(SDL_PropertiesID props, SDL_EnumeratePropertiesCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_EnumerateProperties(SDL_PropertiesID props, SDL_EnumeratePropertiesCallback callback, void *userdata); /** * Destroy a group of properties. diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_rect.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_rect.h index 0583300..ea97df9 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_rect.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_rect.h @@ -221,8 +221,7 @@ SDL_FORCE_INLINE SDL_bool SDL_RectsEqual(const SDL_Rect *a, const SDL_Rect *b) * * \sa SDL_GetRectIntersection */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersection(const SDL_Rect * A, - const SDL_Rect * B); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersection(const SDL_Rect *A, const SDL_Rect *B); /** * Calculate the intersection of two rectangles. @@ -239,9 +238,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersection(const SDL_Rect * A, * * \sa SDL_HasRectIntersection */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersection(const SDL_Rect * A, - const SDL_Rect * B, - SDL_Rect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersection(const SDL_Rect *A, const SDL_Rect *B, SDL_Rect *result); /** * Calculate the union of two rectangles. @@ -250,14 +247,12 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersection(const SDL_Rect * A, * \param B an SDL_Rect structure representing the second rectangle. * \param result an SDL_Rect structure filled in with the union of rectangles * `A` and `B`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRectUnion(const SDL_Rect * A, - const SDL_Rect * B, - SDL_Rect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectUnion(const SDL_Rect *A, const SDL_Rect *B, SDL_Rect *result); /** * Calculate a minimal rectangle enclosing a set of points. @@ -276,10 +271,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRectUnion(const SDL_Rect * A, * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPoints(const SDL_Point * points, - int count, - const SDL_Rect * clip, - SDL_Rect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPoints(const SDL_Point *points, int count, const SDL_Rect *clip, SDL_Rect *result); /** * Calculate the intersection of a rectangle and line segment. @@ -299,10 +291,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPoints(const SDL_Point * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectAndLineIntersection(const SDL_Rect * - rect, int *X1, - int *Y1, int *X2, - int *Y2); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectAndLineIntersection(const SDL_Rect *rect, int *X1, int *Y1, int *X2, int *Y2); /* SDL_FRect versions... */ @@ -435,8 +424,7 @@ SDL_FORCE_INLINE SDL_bool SDL_RectsEqualFloat(const SDL_FRect *a, const SDL_FRec * * \sa SDL_GetRectIntersection */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersectionFloat(const SDL_FRect * A, - const SDL_FRect * B); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersectionFloat(const SDL_FRect *A, const SDL_FRect *B); /** * Calculate the intersection of two rectangles with float precision. @@ -453,9 +441,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HasRectIntersectionFloat(const SDL_FRec * * \sa SDL_HasRectIntersectionFloat */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersectionFloat(const SDL_FRect * A, - const SDL_FRect * B, - SDL_FRect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersectionFloat(const SDL_FRect *A, const SDL_FRect *B, SDL_FRect *result); /** * Calculate the union of two rectangles with float precision. @@ -464,14 +450,12 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectIntersectionFloat(const SDL_FRec * \param B an SDL_FRect structure representing the second rectangle. * \param result an SDL_FRect structure filled in with the union of rectangles * `A` and `B`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRectUnionFloat(const SDL_FRect * A, - const SDL_FRect * B, - SDL_FRect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectUnionFloat(const SDL_FRect *A, const SDL_FRect *B, SDL_FRect *result); /** * Calculate a minimal rectangle enclosing a set of points with float @@ -491,10 +475,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRectUnionFloat(const SDL_FRect * A, * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPointsFloat(const SDL_FPoint * points, - int count, - const SDL_FRect * clip, - SDL_FRect * result); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPointsFloat(const SDL_FPoint *points, int count, const SDL_FRect *clip, SDL_FRect *result); /** * Calculate the intersection of a rectangle and line segment with float @@ -515,10 +496,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectEnclosingPointsFloat(const SDL_F * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectAndLineIntersectionFloat(const SDL_FRect * - rect, float *X1, - float *Y1, float *X2, - float *Y2); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRectAndLineIntersectionFloat(const SDL_FRect *rect, float *X1, float *Y1, float *X2, float *Y2); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_render.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_render.h index 69bf515..706308c 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_render.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_render.h @@ -133,8 +133,7 @@ typedef struct SDL_Texture SDL_Texture; * * There may be none if SDL was compiled without render support. * - * \returns a number >= 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns the number of built in render drivers. * * \since This function is available since SDL 3.0.0. * @@ -175,15 +174,15 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetRenderDriver(int index); * SDL_CreateWindow()). * \param window a pointer filled with the window, or NULL on error. * \param renderer a pointer filled with the renderer, or NULL on error. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CreateRenderer * \sa SDL_CreateWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_CreateWindowAndRenderer(const char *title, int width, int height, SDL_WindowFlags window_flags, SDL_Window **window, SDL_Renderer **renderer); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CreateWindowAndRenderer(const char *title, int width, int height, SDL_WindowFlags window_flags, SDL_Window **window, SDL_Renderer **renderer); /** * Create a 2D rendering context for a window. @@ -266,17 +265,17 @@ extern SDL_DECLSPEC SDL_Renderer * SDLCALL SDL_CreateRenderer(SDL_Window *window */ extern SDL_DECLSPEC SDL_Renderer * SDLCALL SDL_CreateRendererWithProperties(SDL_PropertiesID props); -#define SDL_PROP_RENDERER_CREATE_NAME_STRING "name" -#define SDL_PROP_RENDERER_CREATE_WINDOW_POINTER "window" -#define SDL_PROP_RENDERER_CREATE_SURFACE_POINTER "surface" -#define SDL_PROP_RENDERER_CREATE_OUTPUT_COLORSPACE_NUMBER "output_colorspace" -#define SDL_PROP_RENDERER_CREATE_PRESENT_VSYNC_NUMBER "present_vsync" -#define SDL_PROP_RENDERER_CREATE_VULKAN_INSTANCE_POINTER "vulkan.instance" -#define SDL_PROP_RENDERER_CREATE_VULKAN_SURFACE_NUMBER "vulkan.surface" -#define SDL_PROP_RENDERER_CREATE_VULKAN_PHYSICAL_DEVICE_POINTER "vulkan.physical_device" -#define SDL_PROP_RENDERER_CREATE_VULKAN_DEVICE_POINTER "vulkan.device" -#define SDL_PROP_RENDERER_CREATE_VULKAN_GRAPHICS_QUEUE_FAMILY_INDEX_NUMBER "vulkan.graphics_queue_family_index" -#define SDL_PROP_RENDERER_CREATE_VULKAN_PRESENT_QUEUE_FAMILY_INDEX_NUMBER "vulkan.present_queue_family_index" +#define SDL_PROP_RENDERER_CREATE_NAME_STRING "SDL.renderer.create.name" +#define SDL_PROP_RENDERER_CREATE_WINDOW_POINTER "SDL.renderer.create.window" +#define SDL_PROP_RENDERER_CREATE_SURFACE_POINTER "SDL.renderer.create.surface" +#define SDL_PROP_RENDERER_CREATE_OUTPUT_COLORSPACE_NUMBER "SDL.renderer.create.output_colorspace" +#define SDL_PROP_RENDERER_CREATE_PRESENT_VSYNC_NUMBER "SDL.renderer.create.present_vsync" +#define SDL_PROP_RENDERER_CREATE_VULKAN_INSTANCE_POINTER "SDL.renderer.create.vulkan.instance" +#define SDL_PROP_RENDERER_CREATE_VULKAN_SURFACE_NUMBER "SDL.renderer.create.vulkan.surface" +#define SDL_PROP_RENDERER_CREATE_VULKAN_PHYSICAL_DEVICE_POINTER "SDL.renderer.create.vulkan.physical_device" +#define SDL_PROP_RENDERER_CREATE_VULKAN_DEVICE_POINTER "SDL.renderer.create.vulkan.device" +#define SDL_PROP_RENDERER_CREATE_VULKAN_GRAPHICS_QUEUE_FAMILY_INDEX_NUMBER "SDL.renderer.create.vulkan.graphics_queue_family_index" +#define SDL_PROP_RENDERER_CREATE_VULKAN_PRESENT_QUEUE_FAMILY_INDEX_NUMBER "SDL.renderer.create.vulkan.present_queue_family_index" /** * Create a 2D software rendering context for a surface. @@ -445,14 +444,14 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetRendererProperties(SDL_Rende * \param renderer the rendering context. * \param w a pointer filled in with the width in pixels. * \param h a pointer filled in with the height in pixels. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetCurrentRenderOutputSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderOutputSize(SDL_Renderer *renderer, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderOutputSize(SDL_Renderer *renderer, int *w, int *h); /** * Get the current output size in pixels of a rendering context. @@ -465,14 +464,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderOutputSize(SDL_Renderer *renderer, * \param renderer the rendering context. * \param w a pointer filled in with the current width. * \param h a pointer filled in with the current height. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderOutputSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetCurrentRenderOutputSize(SDL_Renderer *renderer, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetCurrentRenderOutputSize(SDL_Renderer *renderer, int *w, int *h); /** * Create a texture for a rendering context. @@ -633,29 +632,29 @@ extern SDL_DECLSPEC SDL_Texture * SDLCALL SDL_CreateTextureFromSurface(SDL_Rende */ extern SDL_DECLSPEC SDL_Texture * SDLCALL SDL_CreateTextureWithProperties(SDL_Renderer *renderer, SDL_PropertiesID props); -#define SDL_PROP_TEXTURE_CREATE_COLORSPACE_NUMBER "colorspace" -#define SDL_PROP_TEXTURE_CREATE_FORMAT_NUMBER "format" -#define SDL_PROP_TEXTURE_CREATE_ACCESS_NUMBER "access" -#define SDL_PROP_TEXTURE_CREATE_WIDTH_NUMBER "width" -#define SDL_PROP_TEXTURE_CREATE_HEIGHT_NUMBER "height" -#define SDL_PROP_TEXTURE_CREATE_SDR_WHITE_POINT_FLOAT "SDR_white_point" -#define SDL_PROP_TEXTURE_CREATE_HDR_HEADROOM_FLOAT "HDR_headroom" -#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_POINTER "d3d11.texture" -#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_U_POINTER "d3d11.texture_u" -#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_V_POINTER "d3d11.texture_v" -#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_POINTER "d3d12.texture" -#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_U_POINTER "d3d12.texture_u" -#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_V_POINTER "d3d12.texture_v" -#define SDL_PROP_TEXTURE_CREATE_METAL_PIXELBUFFER_POINTER "metal.pixelbuffer" -#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_NUMBER "opengl.texture" -#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_UV_NUMBER "opengl.texture_uv" -#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_U_NUMBER "opengl.texture_u" -#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_V_NUMBER "opengl.texture_v" -#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_NUMBER "opengles2.texture" -#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_UV_NUMBER "opengles2.texture_uv" -#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_U_NUMBER "opengles2.texture_u" -#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_V_NUMBER "opengles2.texture_v" -#define SDL_PROP_TEXTURE_CREATE_VULKAN_TEXTURE_NUMBER "vulkan.texture" +#define SDL_PROP_TEXTURE_CREATE_COLORSPACE_NUMBER "SDL.texture.create.colorspace" +#define SDL_PROP_TEXTURE_CREATE_FORMAT_NUMBER "SDL.texture.create.format" +#define SDL_PROP_TEXTURE_CREATE_ACCESS_NUMBER "SDL.texture.create.access" +#define SDL_PROP_TEXTURE_CREATE_WIDTH_NUMBER "SDL.texture.create.width" +#define SDL_PROP_TEXTURE_CREATE_HEIGHT_NUMBER "SDL.texture.create.height" +#define SDL_PROP_TEXTURE_CREATE_SDR_WHITE_POINT_FLOAT "SDL.texture.create.SDR_white_point" +#define SDL_PROP_TEXTURE_CREATE_HDR_HEADROOM_FLOAT "SDL.texture.create.HDR_headroom" +#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_POINTER "SDL.texture.create.d3d11.texture" +#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_U_POINTER "SDL.texture.create.d3d11.texture_u" +#define SDL_PROP_TEXTURE_CREATE_D3D11_TEXTURE_V_POINTER "SDL.texture.create.d3d11.texture_v" +#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_POINTER "SDL.texture.create.d3d12.texture" +#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_U_POINTER "SDL.texture.create.d3d12.texture_u" +#define SDL_PROP_TEXTURE_CREATE_D3D12_TEXTURE_V_POINTER "SDL.texture.create.d3d12.texture_v" +#define SDL_PROP_TEXTURE_CREATE_METAL_PIXELBUFFER_POINTER "SDL.texture.create.metal.pixelbuffer" +#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_NUMBER "SDL.texture.create.opengl.texture" +#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_UV_NUMBER "SDL.texture.create.opengl.texture_uv" +#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_U_NUMBER "SDL.texture.create.opengl.texture_u" +#define SDL_PROP_TEXTURE_CREATE_OPENGL_TEXTURE_V_NUMBER "SDL.texture.create.opengl.texture_v" +#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_NUMBER "SDL.texture.create.opengles2.texture" +#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_UV_NUMBER "SDL.texture.create.opengles2.texture_uv" +#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_U_NUMBER "SDL.texture.create.opengles2.texture_u" +#define SDL_PROP_TEXTURE_CREATE_OPENGLES2_TEXTURE_V_NUMBER "SDL.texture.create.opengles2.texture_v" +#define SDL_PROP_TEXTURE_CREATE_VULKAN_TEXTURE_NUMBER "SDL.texture.create.vulkan.texture" /** * Get the properties associated with a texture. @@ -802,12 +801,12 @@ extern SDL_DECLSPEC SDL_Renderer * SDLCALL SDL_GetRendererFromTexture(SDL_Textur * argument can be NULL if you don't need this information. * \param h a pointer filled in with the height of the texture in pixels. This * argument can be NULL if you don't need this information. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureSize(SDL_Texture *texture, float *w, float *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureSize(SDL_Texture *texture, float *w, float *h); /** * Set an additional color value multiplied into render copy operations. @@ -818,15 +817,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureSize(SDL_Texture *texture, float * * * `srcC = srcC * (color / 255)` * - * Color modulation is not always supported by the renderer; it will return -1 - * if color modulation is not supported. + * Color modulation is not always supported by the renderer; it will return + * SDL_FALSE if color modulation is not supported. * * \param texture the texture to update. * \param r the red color value multiplied into copy operations. * \param g the green color value multiplied into copy operations. * \param b the blue color value multiplied into copy operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -834,7 +833,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureSize(SDL_Texture *texture, float * * \sa SDL_SetTextureAlphaMod * \sa SDL_SetTextureColorModFloat */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorMod(SDL_Texture *texture, Uint8 r, Uint8 g, Uint8 b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureColorMod(SDL_Texture *texture, Uint8 r, Uint8 g, Uint8 b); /** @@ -846,15 +845,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorMod(SDL_Texture *texture, Uin * * `srcC = srcC * color` * - * Color modulation is not always supported by the renderer; it will return -1 - * if color modulation is not supported. + * Color modulation is not always supported by the renderer; it will return + * SDL_FALSE if color modulation is not supported. * * \param texture the texture to update. * \param r the red color value multiplied into copy operations. * \param g the green color value multiplied into copy operations. * \param b the blue color value multiplied into copy operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -862,7 +861,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorMod(SDL_Texture *texture, Uin * \sa SDL_SetTextureAlphaModFloat * \sa SDL_SetTextureColorMod */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorModFloat(SDL_Texture *texture, float r, float g, float b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureColorModFloat(SDL_Texture *texture, float r, float g, float b); /** @@ -872,8 +871,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorModFloat(SDL_Texture *texture * \param r a pointer filled in with the current red color value. * \param g a pointer filled in with the current green color value. * \param b a pointer filled in with the current blue color value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -881,7 +880,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureColorModFloat(SDL_Texture *texture * \sa SDL_GetTextureColorModFloat * \sa SDL_SetTextureColorMod */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorMod(SDL_Texture *texture, Uint8 *r, Uint8 *g, Uint8 *b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureColorMod(SDL_Texture *texture, Uint8 *r, Uint8 *g, Uint8 *b); /** * Get the additional color value multiplied into render copy operations. @@ -890,8 +889,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorMod(SDL_Texture *texture, Uin * \param r a pointer filled in with the current red color value. * \param g a pointer filled in with the current green color value. * \param b a pointer filled in with the current blue color value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -899,7 +898,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorMod(SDL_Texture *texture, Uin * \sa SDL_GetTextureColorMod * \sa SDL_SetTextureColorModFloat */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorModFloat(SDL_Texture *texture, float *r, float *g, float *b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureColorModFloat(SDL_Texture *texture, float *r, float *g, float *b); /** * Set an additional alpha value multiplied into render copy operations. @@ -909,13 +908,13 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorModFloat(SDL_Texture *texture * * `srcA = srcA * (alpha / 255)` * - * Alpha modulation is not always supported by the renderer; it will return -1 - * if alpha modulation is not supported. + * Alpha modulation is not always supported by the renderer; it will return + * SDL_FALSE if alpha modulation is not supported. * * \param texture the texture to update. * \param alpha the source alpha value multiplied into copy operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -923,7 +922,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureColorModFloat(SDL_Texture *texture * \sa SDL_SetTextureAlphaModFloat * \sa SDL_SetTextureColorMod */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureAlphaMod(SDL_Texture *texture, Uint8 alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureAlphaMod(SDL_Texture *texture, Uint8 alpha); /** * Set an additional alpha value multiplied into render copy operations. @@ -933,13 +932,13 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureAlphaMod(SDL_Texture *texture, Uin * * `srcA = srcA * alpha` * - * Alpha modulation is not always supported by the renderer; it will return -1 - * if alpha modulation is not supported. + * Alpha modulation is not always supported by the renderer; it will return + * SDL_FALSE if alpha modulation is not supported. * * \param texture the texture to update. * \param alpha the source alpha value multiplied into copy operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -947,15 +946,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureAlphaMod(SDL_Texture *texture, Uin * \sa SDL_SetTextureAlphaMod * \sa SDL_SetTextureColorModFloat */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureAlphaModFloat(SDL_Texture *texture, float alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureAlphaModFloat(SDL_Texture *texture, float alpha); /** * Get the additional alpha value multiplied into render copy operations. * * \param texture the texture to query. * \param alpha a pointer filled in with the current alpha value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -963,15 +962,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetTextureAlphaModFloat(SDL_Texture *texture * \sa SDL_GetTextureColorMod * \sa SDL_SetTextureAlphaMod */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureAlphaMod(SDL_Texture *texture, Uint8 *alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureAlphaMod(SDL_Texture *texture, Uint8 *alpha); /** * Get the additional alpha value multiplied into render copy operations. * * \param texture the texture to query. * \param alpha a pointer filled in with the current alpha value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -979,7 +978,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureAlphaMod(SDL_Texture *texture, Uin * \sa SDL_GetTextureColorModFloat * \sa SDL_SetTextureAlphaModFloat */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureAlphaModFloat(SDL_Texture *texture, float *alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureAlphaModFloat(SDL_Texture *texture, float *alpha); /** * Set the blend mode for a texture, used by SDL_RenderTexture(). @@ -989,28 +988,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureAlphaModFloat(SDL_Texture *texture * * \param texture the texture to update. * \param blendMode the SDL_BlendMode to use for texture blending. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetTextureBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureBlendMode(SDL_Texture *texture, SDL_BlendMode blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureBlendMode(SDL_Texture *texture, SDL_BlendMode blendMode); /** * Get the blend mode used for texture copy operations. * * \param texture the texture to query. * \param blendMode a pointer filled in with the current SDL_BlendMode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetTextureBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureBlendMode(SDL_Texture *texture, SDL_BlendMode *blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureBlendMode(SDL_Texture *texture, SDL_BlendMode *blendMode); /** * Set the scale mode used for texture scale operations. @@ -1021,28 +1020,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureBlendMode(SDL_Texture *texture, SD * * \param texture the texture to update. * \param scaleMode the SDL_ScaleMode to use for texture scaling. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetTextureScaleMode */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTextureScaleMode(SDL_Texture *texture, SDL_ScaleMode scaleMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTextureScaleMode(SDL_Texture *texture, SDL_ScaleMode scaleMode); /** * Get the scale mode used for texture scale operations. * * \param texture the texture to query. * \param scaleMode a pointer filled in with the current scale mode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetTextureScaleMode */ -extern SDL_DECLSPEC int SDLCALL SDL_GetTextureScaleMode(SDL_Texture *texture, SDL_ScaleMode *scaleMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetTextureScaleMode(SDL_Texture *texture, SDL_ScaleMode *scaleMode); /** * Update the given texture rectangle with new pixel data. @@ -1064,8 +1063,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureScaleMode(SDL_Texture *texture, SD * \param pixels the raw pixel data in the format of the texture. * \param pitch the number of bytes in a row of pixel data, including padding * between lines. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1074,7 +1073,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetTextureScaleMode(SDL_Texture *texture, SD * \sa SDL_UpdateNVTexture * \sa SDL_UpdateYUVTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateTexture(SDL_Texture *texture, const SDL_Rect *rect, const void *pixels, int pitch); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateTexture(SDL_Texture *texture, const SDL_Rect *rect, const void *pixels, int pitch); /** * Update a rectangle within a planar YV12 or IYUV texture with new pixel @@ -1096,15 +1095,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateTexture(SDL_Texture *texture, const SD * \param Vplane the raw pixel data for the V plane. * \param Vpitch the number of bytes between rows of pixel data for the V * plane. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_UpdateNVTexture * \sa SDL_UpdateTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateYUVTexture(SDL_Texture *texture, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateYUVTexture(SDL_Texture *texture, const SDL_Rect *rect, const Uint8 *Yplane, int Ypitch, const Uint8 *Uplane, int Upitch, @@ -1126,15 +1125,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateYUVTexture(SDL_Texture *texture, * \param UVplane the raw pixel data for the UV plane. * \param UVpitch the number of bytes between rows of pixel data for the UV * plane. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_UpdateTexture * \sa SDL_UpdateYUVTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateNVTexture(SDL_Texture *texture, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateNVTexture(SDL_Texture *texture, const SDL_Rect *rect, const Uint8 *Yplane, int Ypitch, const Uint8 *UVplane, int UVpitch); @@ -1158,8 +1157,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateNVTexture(SDL_Texture *texture, * appropriately offset by the locked area. * \param pitch this is filled in with the pitch of the locked pixels; the * pitch is the length of one row in bytes. - * \returns 0 on success or a negative error code if the texture is not valid - * or was not created with `SDL_TEXTUREACCESS_STREAMING`; call + * \returns SDL_TRUE on success or SDL_FALSE if the texture is not valid or + * was not created with `SDL_TEXTUREACCESS_STREAMING`; call * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. @@ -1167,7 +1166,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateNVTexture(SDL_Texture *texture, * \sa SDL_LockTextureToSurface * \sa SDL_UnlockTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_LockTexture(SDL_Texture *texture, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LockTexture(SDL_Texture *texture, const SDL_Rect *rect, void **pixels, int *pitch); @@ -1195,17 +1194,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_LockTexture(SDL_Texture *texture, * NULL, the entire texture will be locked. * \param surface this is filled in with an SDL surface representing the * locked area. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_LockTexture * \sa SDL_UnlockTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_LockTextureToSurface(SDL_Texture *texture, - const SDL_Rect *rect, - SDL_Surface **surface); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LockTextureToSurface(SDL_Texture *texture, const SDL_Rect *rect, SDL_Surface **surface); /** * Unlock a texture, uploading the changes to video memory, if needed. @@ -1237,14 +1234,14 @@ extern SDL_DECLSPEC void SDLCALL SDL_UnlockTexture(SDL_Texture *texture); * \param texture the targeted texture, which must be created with the * `SDL_TEXTUREACCESS_TARGET` flag, or NULL to render to the * window instead of a texture. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderTarget */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderTarget(SDL_Renderer *renderer, SDL_Texture *texture); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderTarget(SDL_Renderer *renderer, SDL_Texture *texture); /** * Get the current render target. @@ -1280,8 +1277,8 @@ extern SDL_DECLSPEC SDL_Texture * SDLCALL SDL_GetRenderTarget(SDL_Renderer *rend * \param h the height of the logical resolution. * \param mode the presentation mode used. * \param scale_mode the scale mode used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1289,7 +1286,7 @@ extern SDL_DECLSPEC SDL_Texture * SDLCALL SDL_GetRenderTarget(SDL_Renderer *rend * \sa SDL_GetRenderLogicalPresentation * \sa SDL_GetRenderLogicalPresentationRect */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderLogicalPresentation(SDL_Renderer *renderer, int w, int h, SDL_RendererLogicalPresentation mode, SDL_ScaleMode scale_mode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderLogicalPresentation(SDL_Renderer *renderer, int w, int h, SDL_RendererLogicalPresentation mode, SDL_ScaleMode scale_mode); /** * Get device independent resolution and presentation mode for rendering. @@ -1302,14 +1299,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderLogicalPresentation(SDL_Renderer *r * \param h an int to be filled with the height. * \param mode a pointer filled in with the presentation mode. * \param scale_mode a pointer filled in with the scale mode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderLogicalPresentation */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderLogicalPresentation(SDL_Renderer *renderer, int *w, int *h, SDL_RendererLogicalPresentation *mode, SDL_ScaleMode *scale_mode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderLogicalPresentation(SDL_Renderer *renderer, int *w, int *h, SDL_RendererLogicalPresentation *mode, SDL_ScaleMode *scale_mode); /** * Get the final presentation rectangle for rendering. @@ -1322,14 +1319,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderLogicalPresentation(SDL_Renderer *r * \param renderer the rendering context. * \param rect a pointer filled in with the final presentation rectangle, may * be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderLogicalPresentation */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderLogicalPresentationRect(SDL_Renderer *renderer, SDL_FRect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderLogicalPresentationRect(SDL_Renderer *renderer, SDL_FRect *rect); /** * Get a point in render coordinates when given a point in window coordinates. @@ -1339,15 +1336,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderLogicalPresentationRect(SDL_Rendere * \param window_y the y coordinate in window coordinates. * \param x a pointer filled with the x coordinate in render coordinates. * \param y a pointer filled with the y coordinate in render coordinates. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderLogicalPresentation * \sa SDL_SetRenderScale */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderCoordinatesFromWindow(SDL_Renderer *renderer, float window_x, float window_y, float *x, float *y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderCoordinatesFromWindow(SDL_Renderer *renderer, float window_x, float window_y, float *x, float *y); /** * Get a point in window coordinates when given a point in render coordinates. @@ -1359,15 +1356,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderCoordinatesFromWindow(SDL_Renderer *re * coordinates. * \param window_y a pointer filled with the y coordinate in window * coordinates. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderLogicalPresentation * \sa SDL_SetRenderScale */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderCoordinatesToWindow(SDL_Renderer *renderer, float x, float y, float *window_x, float *window_y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderCoordinatesToWindow(SDL_Renderer *renderer, float x, float y, float *window_x, float *window_y); /** * Convert the coordinates in an event to render coordinates. @@ -1379,14 +1376,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderCoordinatesToWindow(SDL_Renderer *rend * * \param renderer the rendering context. * \param event the event to modify. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderCoordinatesFromWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_ConvertEventToRenderCoordinates(SDL_Renderer *renderer, SDL_Event *event); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ConvertEventToRenderCoordinates(SDL_Renderer *renderer, SDL_Event *event); /** * Set the drawing area for rendering on the current target. @@ -1394,30 +1391,30 @@ extern SDL_DECLSPEC int SDLCALL SDL_ConvertEventToRenderCoordinates(SDL_Renderer * \param renderer the rendering context. * \param rect the SDL_Rect structure representing the drawing area, or NULL * to set the viewport to the entire target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderViewport * \sa SDL_RenderViewportSet */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderViewport(SDL_Renderer *renderer, const SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderViewport(SDL_Renderer *renderer, const SDL_Rect *rect); /** * Get the drawing area for the current target. * * \param renderer the rendering context. * \param rect an SDL_Rect structure filled in with the current drawing area. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderViewportSet * \sa SDL_SetRenderViewport */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderViewport(SDL_Renderer *renderer, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderViewport(SDL_Renderer *renderer, SDL_Rect *rect); /** * Return whether an explicit rectangle was set as the viewport. @@ -1450,12 +1447,12 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderViewportSet(SDL_Renderer *rendere * \param renderer the rendering context. * \param rect a pointer filled in with the area that is safe for interactive * content. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderSafeArea(SDL_Renderer *renderer, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderSafeArea(SDL_Renderer *renderer, SDL_Rect *rect); /** * Set the clip rectangle for rendering on the specified target. @@ -1463,15 +1460,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderSafeArea(SDL_Renderer *renderer, SD * \param renderer the rendering context. * \param rect an SDL_Rect structure representing the clip area, relative to * the viewport, or NULL to disable clipping. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderClipRect * \sa SDL_RenderClipEnabled */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderClipRect(SDL_Renderer *renderer, const SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderClipRect(SDL_Renderer *renderer, const SDL_Rect *rect); /** * Get the clip rectangle for the current target. @@ -1479,15 +1476,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderClipRect(SDL_Renderer *renderer, co * \param renderer the rendering context. * \param rect an SDL_Rect structure filled in with the current clipping area * or an empty rectangle if clipping is disabled. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderClipEnabled * \sa SDL_SetRenderClipRect */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderClipRect(SDL_Renderer *renderer, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderClipRect(SDL_Renderer *renderer, SDL_Rect *rect); /** * Get whether clipping is enabled on the given renderer. @@ -1517,14 +1514,14 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderClipEnabled(SDL_Renderer *rendere * \param renderer the rendering context. * \param scaleX the horizontal scaling factor. * \param scaleY the vertical scaling factor. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderScale */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderScale(SDL_Renderer *renderer, float scaleX, float scaleY); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderScale(SDL_Renderer *renderer, float scaleX, float scaleY); /** * Get the drawing scale for the current target. @@ -1532,14 +1529,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderScale(SDL_Renderer *renderer, float * \param renderer the rendering context. * \param scaleX a pointer filled in with the horizontal scaling factor. * \param scaleY a pointer filled in with the vertical scaling factor. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderScale */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderScale(SDL_Renderer *renderer, float *scaleX, float *scaleY); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderScale(SDL_Renderer *renderer, float *scaleX, float *scaleY); /** * Set the color used for drawing operations. @@ -1554,15 +1551,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderScale(SDL_Renderer *renderer, float * \param a the alpha value used to draw on the rendering target; usually * `SDL_ALPHA_OPAQUE` (255). Use SDL_SetRenderDrawBlendMode to * specify how the alpha channel is used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderDrawColor * \sa SDL_SetRenderDrawColorFloat */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderDrawColor(SDL_Renderer *renderer, Uint8 r, Uint8 g, Uint8 b, Uint8 a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderDrawColor(SDL_Renderer *renderer, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /** * Set the color used for drawing operations (Rect, Line and Clear). @@ -1577,15 +1574,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderDrawColor(SDL_Renderer *renderer, U * \param a the alpha value used to draw on the rendering target. Use * SDL_SetRenderDrawBlendMode to specify how the alpha channel is * used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderDrawColorFloat * \sa SDL_SetRenderDrawColor */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderDrawColorFloat(SDL_Renderer *renderer, float r, float g, float b, float a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderDrawColorFloat(SDL_Renderer *renderer, float r, float g, float b, float a); /** * Get the color used for drawing operations (Rect, Line and Clear). @@ -1599,15 +1596,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderDrawColorFloat(SDL_Renderer *render * rendering target. * \param a a pointer filled in with the alpha value used to draw on the * rendering target; usually `SDL_ALPHA_OPAQUE` (255). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderDrawColorFloat * \sa SDL_SetRenderDrawColor */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawColor(SDL_Renderer *renderer, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderDrawColor(SDL_Renderer *renderer, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a); /** * Get the color used for drawing operations (Rect, Line and Clear). @@ -1621,15 +1618,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawColor(SDL_Renderer *renderer, U * rendering target. * \param a a pointer filled in with the alpha value used to draw on the * rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderDrawColorFloat * \sa SDL_GetRenderDrawColor */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawColorFloat(SDL_Renderer *renderer, float *r, float *g, float *b, float *a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderDrawColorFloat(SDL_Renderer *renderer, float *r, float *g, float *b, float *a); /** * Set the color scale used for render operations. @@ -1644,28 +1641,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawColorFloat(SDL_Renderer *render * * \param renderer the rendering context. * \param scale the color scale value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderColorScale */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderColorScale(SDL_Renderer *renderer, float scale); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderColorScale(SDL_Renderer *renderer, float scale); /** * Get the color scale used for render operations. * * \param renderer the rendering context. * \param scale a pointer filled in with the current color scale value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderColorScale */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderColorScale(SDL_Renderer *renderer, float *scale); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderColorScale(SDL_Renderer *renderer, float *scale); /** * Set the blend mode used for drawing operations (Fill and Line). @@ -1674,28 +1671,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderColorScale(SDL_Renderer *renderer, * * \param renderer the rendering context. * \param blendMode the SDL_BlendMode to use for blending. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderDrawBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderDrawBlendMode(SDL_Renderer *renderer, SDL_BlendMode blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderDrawBlendMode(SDL_Renderer *renderer, SDL_BlendMode blendMode); /** * Get the blend mode used for drawing operations. * * \param renderer the rendering context. * \param blendMode a pointer filled in with the current SDL_BlendMode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderDrawBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawBlendMode(SDL_Renderer *renderer, SDL_BlendMode *blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderDrawBlendMode(SDL_Renderer *renderer, SDL_BlendMode *blendMode); /** * Clear the current rendering target with the drawing color. @@ -1706,14 +1703,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetRenderDrawBlendMode(SDL_Renderer *rendere * SDL_SetRenderDrawColor() when needed. * * \param renderer the rendering context. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderDrawColor */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderClear(SDL_Renderer *renderer); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderClear(SDL_Renderer *renderer); /** * Draw a point on the current rendering target at subpixel precision. @@ -1721,14 +1718,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderClear(SDL_Renderer *renderer); * \param renderer the renderer which should draw a point. * \param x the x coordinate of the point. * \param y the y coordinate of the point. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderPoints */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderPoint(SDL_Renderer *renderer, float x, float y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderPoint(SDL_Renderer *renderer, float x, float y); /** * Draw multiple points on the current rendering target at subpixel precision. @@ -1736,14 +1733,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderPoint(SDL_Renderer *renderer, float x, * \param renderer the renderer which should draw multiple points. * \param points the points to draw. * \param count the number of points to draw. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderPoint */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderPoints(SDL_Renderer *renderer, const SDL_FPoint *points, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderPoints(SDL_Renderer *renderer, const SDL_FPoint *points, int count); /** * Draw a line on the current rendering target at subpixel precision. @@ -1753,14 +1750,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderPoints(SDL_Renderer *renderer, const S * \param y1 the y coordinate of the start point. * \param x2 the x coordinate of the end point. * \param y2 the y coordinate of the end point. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderLines */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderLine(SDL_Renderer *renderer, float x1, float y1, float x2, float y2); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderLine(SDL_Renderer *renderer, float x1, float y1, float x2, float y2); /** * Draw a series of connected lines on the current rendering target at @@ -1769,14 +1766,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderLine(SDL_Renderer *renderer, float x1, * \param renderer the renderer which should draw multiple lines. * \param points the points along the lines. * \param count the number of points, drawing count-1 lines. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderLine */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderLines(SDL_Renderer *renderer, const SDL_FPoint *points, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderLines(SDL_Renderer *renderer, const SDL_FPoint *points, int count); /** * Draw a rectangle on the current rendering target at subpixel precision. @@ -1784,14 +1781,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderLines(SDL_Renderer *renderer, const SD * \param renderer the renderer which should draw a rectangle. * \param rect a pointer to the destination rectangle, or NULL to outline the * entire rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderRects */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderRect(SDL_Renderer *renderer, const SDL_FRect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderRect(SDL_Renderer *renderer, const SDL_FRect *rect); /** * Draw some number of rectangles on the current rendering target at subpixel @@ -1800,14 +1797,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderRect(SDL_Renderer *renderer, const SDL * \param renderer the renderer which should draw multiple rectangles. * \param rects a pointer to an array of destination rectangles. * \param count the number of rectangles. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderRect */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderRects(SDL_Renderer *renderer, const SDL_FRect *rects, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderRects(SDL_Renderer *renderer, const SDL_FRect *rects, int count); /** * Fill a rectangle on the current rendering target with the drawing color at @@ -1816,14 +1813,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderRects(SDL_Renderer *renderer, const SD * \param renderer the renderer which should fill a rectangle. * \param rect a pointer to the destination rectangle, or NULL for the entire * rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderFillRects */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderFillRect(SDL_Renderer *renderer, const SDL_FRect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderFillRect(SDL_Renderer *renderer, const SDL_FRect *rect); /** * Fill some number of rectangles on the current rendering target with the @@ -1832,14 +1829,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderFillRect(SDL_Renderer *renderer, const * \param renderer the renderer which should fill multiple rectangles. * \param rects a pointer to an array of destination rectangles. * \param count the number of rectangles. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderFillRect */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderFillRects(SDL_Renderer *renderer, const SDL_FRect *rects, int count); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderFillRects(SDL_Renderer *renderer, const SDL_FRect *rects, int count); /** * Copy a portion of the texture to the current rendering target at subpixel @@ -1851,15 +1848,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderFillRects(SDL_Renderer *renderer, cons * texture. * \param dstrect a pointer to the destination rectangle, or NULL for the * entire rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderTextureRotated * \sa SDL_RenderTextureTiled */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderTexture(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, const SDL_FRect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderTexture(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, const SDL_FRect *dstrect); /** * Copy a portion of the source texture to the current rendering target, with @@ -1878,14 +1875,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderTexture(SDL_Renderer *renderer, SDL_Te * around dstrect.w/2, dstrect.h/2). * \param flip an SDL_FlipMode value stating which flipping actions should be * performed on the texture. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderTextureRotated(SDL_Renderer *renderer, SDL_Texture *texture, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderTextureRotated(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, const SDL_FRect *dstrect, const double angle, const SDL_FPoint *center, const SDL_FlipMode flip); @@ -1906,14 +1903,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderTextureRotated(SDL_Renderer *renderer, * 64x64 tiles. * \param dstrect a pointer to the destination rectangle, or NULL for the * entire rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderTextureTiled(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, float scale, const SDL_FRect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderTextureTiled(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, float scale, const SDL_FRect *dstrect); /** * Perform a scaled copy using the 9-grid algorithm to the current rendering @@ -1938,14 +1935,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderTextureTiled(SDL_Renderer *renderer, S * corner of `dstrect`, or 0.0f for an unscaled copy. * \param dstrect a pointer to the destination rectangle, or NULL for the * entire rendering target. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderTexture */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderTexture9Grid(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, float left_width, float right_width, float top_height, float bottom_height, float scale, const SDL_FRect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderTexture9Grid(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_FRect *srcrect, float left_width, float right_width, float top_height, float bottom_height, float scale, const SDL_FRect *dstrect); /** * Render a list of triangles, optionally using a texture and indices into the @@ -1960,14 +1957,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderTexture9Grid(SDL_Renderer *renderer, S * array, if NULL all vertices will be rendered in sequential * order. * \param num_indices number of indices. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderGeometryRaw */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderGeometry(SDL_Renderer *renderer, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderGeometry(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_Vertex *vertices, int num_vertices, const int *indices, int num_indices); @@ -1990,14 +1987,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenderGeometry(SDL_Renderer *renderer, * if NULL all vertices will be rendered in sequential order. * \param num_indices number of indices. * \param size_indices index size: 1 (byte), 2 (short), 4 (int). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_RenderGeometry */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderGeometryRaw(SDL_Renderer *renderer, +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderGeometryRaw(SDL_Renderer *renderer, SDL_Texture *texture, const float *xy, int xy_stride, const SDL_FColor *color, int color_stride, @@ -2050,26 +2047,27 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_RenderReadPixels(SDL_Renderer *ren * do not have a concept of backbuffers. * * \param renderer the rendering context. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety You may only call this function on the main thread. * * \since This function is available since SDL 3.0.0. * + * \sa SDL_CreateRenderer * \sa SDL_RenderClear + * \sa SDL_RenderFillRect + * \sa SDL_RenderFillRects * \sa SDL_RenderLine * \sa SDL_RenderLines * \sa SDL_RenderPoint * \sa SDL_RenderPoints * \sa SDL_RenderRect * \sa SDL_RenderRects - * \sa SDL_RenderFillRect - * \sa SDL_RenderFillRects * \sa SDL_SetRenderDrawBlendMode * \sa SDL_SetRenderDrawColor */ -extern SDL_DECLSPEC int SDLCALL SDL_RenderPresent(SDL_Renderer *renderer); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenderPresent(SDL_Renderer *renderer); /** * Destroy the specified texture. @@ -2124,12 +2122,12 @@ extern SDL_DECLSPEC void SDLCALL SDL_DestroyRenderer(SDL_Renderer *renderer); * be prepared to make changes if specific state needs to be protected. * * \param renderer the rendering context. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_FlushRenderer(SDL_Renderer *renderer); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FlushRenderer(SDL_Renderer *renderer); /** * Get the CAMetalLayer associated with the given Metal renderer. @@ -2189,15 +2187,15 @@ extern SDL_DECLSPEC void * SDLCALL SDL_GetRenderMetalCommandEncoder(SDL_Renderer * \param signal_semaphore a VkSempahore that SDL will signal when rendering * for the current frame is complete, or 0 if not * needed. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is **NOT** safe to call this function from two threads at * once. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_AddVulkanRenderSemaphores(SDL_Renderer *renderer, Uint32 wait_stage_mask, Sint64 wait_semaphore, Sint64 signal_semaphore); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AddVulkanRenderSemaphores(SDL_Renderer *renderer, Uint32 wait_stage_mask, Sint64 wait_semaphore, Sint64 signal_semaphore); /** * Toggle VSync of the given renderer. @@ -2213,14 +2211,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_AddVulkanRenderSemaphores(SDL_Renderer *rend * * \param renderer the renderer to toggle. * \param vsync the vertical refresh sync interval. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetRenderVSync */ -extern SDL_DECLSPEC int SDLCALL SDL_SetRenderVSync(SDL_Renderer *renderer, int vsync); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetRenderVSync(SDL_Renderer *renderer, int vsync); #define SDL_RENDERER_VSYNC_DISABLED 0 #define SDL_RENDERER_VSYNC_ADAPTIVE (-1) @@ -2231,14 +2229,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetRenderVSync(SDL_Renderer *renderer, int v * \param renderer the renderer to toggle. * \param vsync an int filled with the current vertical refresh sync interval. * See SDL_SetRenderVSync() for the meaning of the value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetRenderVSync */ -extern SDL_DECLSPEC int SDLCALL SDL_GetRenderVSync(SDL_Renderer *renderer, int *vsync); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetRenderVSync(SDL_Renderer *renderer, int *vsync); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_sensor.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_sensor.h index 2d4aa46..3ae4856 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_sensor.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_sensor.h @@ -55,8 +55,7 @@ typedef struct SDL_Sensor SDL_Sensor; * This is a unique ID for a sensor for the time it is connected to the * system, and is never reused for the lifetime of the application. * - * The ID value starts at 1 and increments from there. The value 0 is an - * invalid ID. + * The value 0 is an invalid ID. * * \since This datatype is available since SDL 3.0.0. */ @@ -278,12 +277,12 @@ extern SDL_DECLSPEC SDL_SensorID SDLCALL SDL_GetSensorID(SDL_Sensor *sensor); * \param sensor the SDL_Sensor object to query. * \param data a pointer filled with the current sensor state. * \param num_values the number of values to write to data. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSensorData(SDL_Sensor *sensor, float *data, int num_values); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSensorData(SDL_Sensor *sensor, float *data, int num_values); /** * Close a sensor previously opened with SDL_OpenSensor(). diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_stdinc.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_stdinc.h index 14e0750..5539f2a 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_stdinc.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_stdinc.h @@ -36,6 +36,9 @@ #include #endif #include +#ifndef __cplusplus +#include +#endif #include #include #include @@ -191,7 +194,7 @@ void *alloca(size_t); * * \sa SDL_bool */ -#define SDL_FALSE 0 +#define SDL_FALSE false /** * A boolean true. @@ -200,7 +203,7 @@ void *alloca(size_t); * * \sa SDL_bool */ -#define SDL_TRUE 1 +#define SDL_TRUE true /** * A boolean type: true or false. @@ -210,7 +213,7 @@ void *alloca(size_t); * \sa SDL_TRUE * \sa SDL_FALSE */ -typedef int SDL_bool; +typedef bool SDL_bool; /** * A signed 8-bit integer type. @@ -482,6 +485,7 @@ typedef Sint64 SDL_Time; /** \cond */ #ifndef DOXYGEN_SHOULD_IGNORE_THIS +SDL_COMPILE_TIME_ASSERT(bool, sizeof(SDL_bool) == 1); SDL_COMPILE_TIME_ASSERT(uint8, sizeof(Uint8) == 1); SDL_COMPILE_TIME_ASSERT(sint8, sizeof(Sint8) == 1); SDL_COMPILE_TIME_ASSERT(uint16, sizeof(Uint16) == 2); @@ -595,8 +599,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_GetMemoryFunctions(SDL_malloc_func *malloc_ * \param calloc_func custom calloc function. * \param realloc_func custom realloc function. * \param free_func custom free function. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread, but one * should not replace the memory functions once any allocations @@ -607,10 +611,10 @@ extern SDL_DECLSPEC void SDLCALL SDL_GetMemoryFunctions(SDL_malloc_func *malloc_ * \sa SDL_GetMemoryFunctions * \sa SDL_GetOriginalMemoryFunctions */ -extern SDL_DECLSPEC int SDLCALL SDL_SetMemoryFunctions(SDL_malloc_func malloc_func, - SDL_calloc_func calloc_func, - SDL_realloc_func realloc_func, - SDL_free_func free_func); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetMemoryFunctions(SDL_malloc_func malloc_func, + SDL_calloc_func calloc_func, + SDL_realloc_func realloc_func, + SDL_free_func free_func); /** * Allocate memory aligned to a specific value. @@ -2899,14 +2903,78 @@ extern SDL_DECLSPEC float SDLCALL SDL_tanf(float x); #define SDL_ICONV_EILSEQ (size_t)-3 #define SDL_ICONV_EINVAL (size_t)-4 -/* SDL_iconv_* are now always real symbols/types, not macros or inlined. */ typedef struct SDL_iconv_data_t *SDL_iconv_t; + +/** + * This function allocates a context for the specified character set + * conversion. + * + * \param tocode The target character encoding, must not be NULL. + * \param fromcode The source character encoding, must not be NULL. + * \returns a handle that must be freed with SDL_iconv_close, or + * SDL_ICONV_ERROR on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_iconv + * \sa SDL_iconv_close + * \sa SDL_iconv_string + */ extern SDL_DECLSPEC SDL_iconv_t SDLCALL SDL_iconv_open(const char *tocode, const char *fromcode); + +/** + * This function frees a context used for character set conversion. + * + * \param cd The character set conversion handle. + * \returns 0 on success, or -1 on failure. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_iconv + * \sa SDL_iconv_open + * \sa SDL_iconv_string + */ extern SDL_DECLSPEC int SDLCALL SDL_iconv_close(SDL_iconv_t cd); + +/** + * This function converts text between encodings, reading from and writing to + * a buffer. + * + * It returns the number of succesful conversions. + * + * \param cd The character set conversion context, created in + * SDL_iconv_open(). + * \param inbuf Address of variable that points to the first character of the + * input sequence. + * \param inbytesleft The number of bytes in the input buffer. + * \param outbuf Address of variable that points to the output buffer. + * \param outbytesleft The number of bytes in the output buffer. + * \returns the number of conversions on success, else SDL_ICONV_E2BIG is + * returned when the output buffer is too small, or SDL_ICONV_EILSEQ + * is returned when an invalid input sequence is encountered, or + * SDL_ICONV_EINVAL is returned when an incomplete input sequence is + * encountered. + * + * On exit: + * + * - inbuf will point to the beginning of the next multibyte + * sequence. On error, this is the location of the problematic + * input sequence. On success, this is the end of the input + * sequence. - inbytesleft will be set to the number of bytes left + * to convert, which will be 0 on success. - outbuf will point to + * the location where to store the next output byte. - outbytesleft + * will be set to the number of bytes left in the output buffer. + * + * \since This function is available since SDL 3.0.0. + * + * \sa SDL_iconv_open + * \sa SDL_iconv_close + * \sa SDL_iconv_string + */ extern SDL_DECLSPEC size_t SDLCALL SDL_iconv(SDL_iconv_t cd, const char **inbuf, - size_t * inbytesleft, char **outbuf, - size_t * outbytesleft); + size_t *inbytesleft, char **outbuf, + size_t *outbytesleft); /** * Helper function to convert a string's encoding in one call. @@ -2928,6 +2996,10 @@ extern SDL_DECLSPEC size_t SDLCALL SDL_iconv(SDL_iconv_t cd, const char **inbuf, * \returns a new string, converted to the new encoding, or NULL on error. * * \since This function is available since SDL 3.0.0. + * + * \sa SDL_iconv_open + * \sa SDL_iconv_close + * \sa SDL_iconv */ extern SDL_DECLSPEC char * SDLCALL SDL_iconv_string(const char *tocode, const char *fromcode, diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_storage.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_storage.h index 7fc58a8..91a90bc 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_storage.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_storage.h @@ -57,34 +57,34 @@ extern "C" { typedef struct SDL_StorageInterface { /* Called when the storage is closed */ - int (SDLCALL *close)(void *userdata); + SDL_bool (SDLCALL *close)(void *userdata); /* Optional, returns whether the storage is currently ready for access */ SDL_bool (SDLCALL *ready)(void *userdata); /* Enumerate a directory, optional for write-only storage */ - int (SDLCALL *enumerate)(void *userdata, const char *path, SDL_EnumerateDirectoryCallback callback, void *callback_userdata); + SDL_bool (SDLCALL *enumerate)(void *userdata, const char *path, SDL_EnumerateDirectoryCallback callback, void *callback_userdata); /* Get path information, optional for write-only storage */ - int (SDLCALL *info)(void *userdata, const char *path, SDL_PathInfo *info); + SDL_bool (SDLCALL *info)(void *userdata, const char *path, SDL_PathInfo *info); /* Read a file from storage, optional for write-only storage */ - int (SDLCALL *read_file)(void *userdata, const char *path, void *destination, Uint64 length); + SDL_bool (SDLCALL *read_file)(void *userdata, const char *path, void *destination, Uint64 length); /* Write a file to storage, optional for read-only storage */ - int (SDLCALL *write_file)(void *userdata, const char *path, const void *source, Uint64 length); + SDL_bool (SDLCALL *write_file)(void *userdata, const char *path, const void *source, Uint64 length); /* Create a directory, optional for read-only storage */ - int (SDLCALL *mkdir)(void *userdata, const char *path); + SDL_bool (SDLCALL *mkdir)(void *userdata, const char *path); /* Remove a file or empty directory, optional for read-only storage */ - int (SDLCALL *remove)(void *userdata, const char *path); + SDL_bool (SDLCALL *remove)(void *userdata, const char *path); /* Rename a path, optional for read-only storage */ - int (SDLCALL *rename)(void *userdata, const char *oldpath, const char *newpath); + SDL_bool (SDLCALL *rename)(void *userdata, const char *oldpath, const char *newpath); /* Copy a file, optional for read-only storage */ - int (SDLCALL *copy)(void *userdata, const char *oldpath, const char *newpath); + SDL_bool (SDLCALL *copy)(void *userdata, const char *oldpath, const char *newpath); /* Get the space remaining, optional for read-only storage */ Uint64 (SDLCALL *space_remaining)(void *userdata); @@ -196,7 +196,7 @@ extern SDL_DECLSPEC SDL_Storage * SDLCALL SDL_OpenStorage(const SDL_StorageInter * Closes and frees a storage container. * * \param storage a storage container to close. - * \returns 0 if the container was freed with no errors, a negative value + * \returns SDL_TRUE if the container was freed with no errors, SDL_FALSE * otherwise; call SDL_GetError() for more information. Even if the * function returns an error, the container data will be freed; the * error is only for informational purposes. @@ -208,7 +208,7 @@ extern SDL_DECLSPEC SDL_Storage * SDLCALL SDL_OpenStorage(const SDL_StorageInter * \sa SDL_OpenTitleStorage * \sa SDL_OpenUserStorage */ -extern SDL_DECLSPEC int SDLCALL SDL_CloseStorage(SDL_Storage *storage); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CloseStorage(SDL_Storage *storage); /** * Checks if the storage container is ready to use. @@ -230,15 +230,15 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_StorageReady(SDL_Storage *storage); * \param storage a storage container to query. * \param path the relative path of the file to query. * \param length a pointer to be filled with the file's length. - * \returns 0 if the file could be queried or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns SDL_TRUE if the file could be queried or SDL_FALSE on failure; + * call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ReadStorageFile * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_GetStorageFileSize(SDL_Storage *storage, const char *path, Uint64 *length); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetStorageFileSize(SDL_Storage *storage, const char *path, Uint64 *length); /** * Synchronously read a file from a storage container into a client-provided @@ -248,7 +248,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetStorageFileSize(SDL_Storage *storage, con * \param path the relative path of the file to read. * \param destination a client-provided buffer to read the file into. * \param length the length of the destination buffer. - * \returns 0 if the file was read or a negative error code on failure; call + * \returns SDL_TRUE if the file was read or SDL_FALSE on failure; call * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. @@ -257,7 +257,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetStorageFileSize(SDL_Storage *storage, con * \sa SDL_StorageReady * \sa SDL_WriteStorageFile */ -extern SDL_DECLSPEC int SDLCALL SDL_ReadStorageFile(SDL_Storage *storage, const char *path, void *destination, Uint64 length); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ReadStorageFile(SDL_Storage *storage, const char *path, void *destination, Uint64 length); /** * Synchronously write a file from client memory into a storage container. @@ -266,8 +266,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_ReadStorageFile(SDL_Storage *storage, const * \param path the relative path of the file to write. * \param source a client-provided buffer to write from. * \param length the length of the source buffer. - * \returns 0 if the file was written or a negative error code on failure; - * call SDL_GetError() for more information. + * \returns SDL_TRUE if the file was written or SDL_FALSE on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -275,21 +275,21 @@ extern SDL_DECLSPEC int SDLCALL SDL_ReadStorageFile(SDL_Storage *storage, const * \sa SDL_ReadStorageFile * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_WriteStorageFile(SDL_Storage *storage, const char *path, const void *source, Uint64 length); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WriteStorageFile(SDL_Storage *storage, const char *path, const void *source, Uint64 length); /** * Create a directory in a writable storage container. * * \param storage a storage container. * \param path the path of the directory to create. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_CreateStorageDirectory(SDL_Storage *storage, const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CreateStorageDirectory(SDL_Storage *storage, const char *path); /** * Enumerate a directory in a storage container through a callback function. @@ -302,28 +302,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_CreateStorageDirectory(SDL_Storage *storage, * \param path the path of the directory to enumerate. * \param callback a function that is called for each entry in the directory. * \param userdata a pointer that is passed to `callback`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_EnumerateStorageDirectory(SDL_Storage *storage, const char *path, SDL_EnumerateDirectoryCallback callback, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_EnumerateStorageDirectory(SDL_Storage *storage, const char *path, SDL_EnumerateDirectoryCallback callback, void *userdata); /** * Remove a file or an empty directory in a writable storage container. * * \param storage a storage container. * \param path the path of the directory to enumerate. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_RemoveStoragePath(SDL_Storage *storage, const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RemoveStoragePath(SDL_Storage *storage, const char *path); /** * Rename a file or directory in a writable storage container. @@ -331,14 +331,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RemoveStoragePath(SDL_Storage *storage, cons * \param storage a storage container. * \param oldpath the old path. * \param newpath the new path. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_RenameStoragePath(SDL_Storage *storage, const char *oldpath, const char *newpath); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RenameStoragePath(SDL_Storage *storage, const char *oldpath, const char *newpath); /** * Copy a file in a writable storage container. @@ -346,14 +346,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RenameStoragePath(SDL_Storage *storage, cons * \param storage a storage container. * \param oldpath the old path. * \param newpath the new path. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_CopyStorageFile(SDL_Storage *storage, const char *oldpath, const char *newpath); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_CopyStorageFile(SDL_Storage *storage, const char *oldpath, const char *newpath); /** * Get information about a filesystem path in a storage container. @@ -362,14 +362,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_CopyStorageFile(SDL_Storage *storage, const * \param path the path to query. * \param info a pointer filled in with information about the path, or NULL to * check for the existence of a file. - * \returns 0 on success or a negative error code if the file doesn't exist, - * or another failure; call SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE if the file doesn't exist, or + * another failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_StorageReady */ -extern SDL_DECLSPEC int SDLCALL SDL_GetStoragePathInfo(SDL_Storage *storage, const char *path, SDL_PathInfo *info); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetStoragePathInfo(SDL_Storage *storage, const char *path, SDL_PathInfo *info); /** * Queries the remaining space in a storage container. diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_surface.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_surface.h index 57745ac..aafe574 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_surface.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_surface.h @@ -71,8 +71,7 @@ typedef Uint32 SDL_SurfaceFlags; typedef enum SDL_ScaleMode { SDL_SCALEMODE_NEAREST, /**< nearest pixel sampling */ - SDL_SCALEMODE_LINEAR, /**< linear filtering */ - SDL_SCALEMODE_BEST /**< anisotropic filtering */ + SDL_SCALEMODE_LINEAR /**< linear filtering */ } SDL_ScaleMode; /** @@ -125,6 +124,8 @@ typedef struct SDL_Surface /** * Allocate a new surface with a specific pixel format. * + * The pixels of the new surface are initialized to zero. + * * \param width the width of the surface. * \param height the height of the surface. * \param format the SDL_PixelFormat for the new surface's pixel format. @@ -222,14 +223,14 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetSurfaceProperties(SDL_Surfac * \param surface the SDL_Surface structure to update. * \param colorspace an SDL_ColorSpace value describing the surface * colorspace. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceColorspace */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceColorspace(SDL_Surface *surface, SDL_Colorspace colorspace); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceColorspace(SDL_Surface *surface, SDL_Colorspace colorspace); /** * Get the colorspace used by a surface. @@ -283,15 +284,15 @@ extern SDL_DECLSPEC SDL_Palette * SDLCALL SDL_CreateSurfacePalette(SDL_Surface * * * \param surface the SDL_Surface structure to update. * \param palette the SDL_Palette structure to use. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CreatePalette * \sa SDL_GetSurfacePalette */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfacePalette(SDL_Surface *surface, SDL_Palette *palette); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfacePalette(SDL_Surface *surface, SDL_Palette *palette); /** * Get the palette used by a surface. @@ -320,8 +321,8 @@ extern SDL_DECLSPEC SDL_Palette * SDLCALL SDL_GetSurfacePalette(SDL_Surface *sur * \param surface the SDL_Surface structure to update. * \param image a pointer to an alternate SDL_Surface to associate with this * surface. - * \returns SDL_TRUE if alternate versions are available or SDL_TRUE - * otherwise. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -329,7 +330,7 @@ extern SDL_DECLSPEC SDL_Palette * SDLCALL SDL_GetSurfacePalette(SDL_Surface *sur * \sa SDL_GetSurfaceImages * \sa SDL_SurfaceHasAlternateImages */ -extern SDL_DECLSPEC int SDLCALL SDL_AddSurfaceAlternateImage(SDL_Surface *surface, SDL_Surface *image); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_AddSurfaceAlternateImage(SDL_Surface *surface, SDL_Surface *image); /** * Return whether a surface has alternate versions available. @@ -400,15 +401,15 @@ extern SDL_DECLSPEC void SDLCALL SDL_RemoveSurfaceAlternateImages(SDL_Surface *s * format of the surface will not change. * * \param surface the SDL_Surface structure to be locked. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_MUSTLOCK * \sa SDL_UnlockSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_LockSurface(SDL_Surface *surface); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_LockSurface(SDL_Surface *surface); /** * Release a surface after directly accessing the pixels. @@ -472,15 +473,15 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_LoadBMP(const char *file); * \param dst a data stream to save to. * \param closeio if SDL_TRUE, calls SDL_CloseIO() on `dst` before returning, * even in the case of an error. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_LoadBMP_IO * \sa SDL_SaveBMP */ -extern SDL_DECLSPEC int SDLCALL SDL_SaveBMP_IO(SDL_Surface *surface, SDL_IOStream *dst, SDL_bool closeio); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SaveBMP_IO(SDL_Surface *surface, SDL_IOStream *dst, SDL_bool closeio); /** * Save a surface to a file. @@ -493,15 +494,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SaveBMP_IO(SDL_Surface *surface, SDL_IOStrea * * \param surface the SDL_Surface structure containing the image to be saved. * \param file a file to save to. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_LoadBMP * \sa SDL_SaveBMP_IO */ -extern SDL_DECLSPEC int SDLCALL SDL_SaveBMP(SDL_Surface *surface, const char *file); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SaveBMP(SDL_Surface *surface, const char *file); /** * Set the RLE acceleration hint for a surface. @@ -512,8 +513,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SaveBMP(SDL_Surface *surface, const char *fi * \param surface the SDL_Surface structure to optimize. * \param enabled SDL_TRUE to enable RLE acceleration, SDL_FALSE to disable * it. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -521,7 +522,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SaveBMP(SDL_Surface *surface, const char *fi * \sa SDL_LockSurface * \sa SDL_UnlockSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceRLE(SDL_Surface *surface, SDL_bool enabled); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceRLE(SDL_Surface *surface, SDL_bool enabled); /** * Returns whether the surface is RLE enabled. @@ -551,8 +552,8 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SurfaceHasRLE(SDL_Surface *surface); * \param enabled SDL_TRUE to enable color key, SDL_FALSE to disable color * key. * \param key the transparent pixel. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -560,7 +561,7 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SurfaceHasRLE(SDL_Surface *surface); * \sa SDL_SetSurfaceRLE * \sa SDL_SurfaceHasColorKey */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceColorKey(SDL_Surface *surface, SDL_bool enabled, Uint32 key); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceColorKey(SDL_Surface *surface, SDL_bool enabled, Uint32 key); /** * Returns whether the surface has a color key. @@ -587,15 +588,15 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SurfaceHasColorKey(SDL_Surface *surface * * \param surface the SDL_Surface structure to query. * \param key a pointer filled in with the transparent pixel. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetSurfaceColorKey * \sa SDL_SurfaceHasColorKey */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceColorKey(SDL_Surface *surface, Uint32 *key); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSurfaceColorKey(SDL_Surface *surface, Uint32 *key); /** * Set an additional color value multiplied into blit operations. @@ -610,15 +611,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceColorKey(SDL_Surface *surface, Uin * \param r the red color value multiplied into blit operations. * \param g the green color value multiplied into blit operations. * \param b the blue color value multiplied into blit operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceColorMod * \sa SDL_SetSurfaceAlphaMod */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceColorMod(SDL_Surface *surface, Uint8 r, Uint8 g, Uint8 b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceColorMod(SDL_Surface *surface, Uint8 r, Uint8 g, Uint8 b); /** @@ -628,15 +629,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceColorMod(SDL_Surface *surface, Uin * \param r a pointer filled in with the current red color value. * \param g a pointer filled in with the current green color value. * \param b a pointer filled in with the current blue color value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceAlphaMod * \sa SDL_SetSurfaceColorMod */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceColorMod(SDL_Surface *surface, Uint8 *r, Uint8 *g, Uint8 *b); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSurfaceColorMod(SDL_Surface *surface, Uint8 *r, Uint8 *g, Uint8 *b); /** * Set an additional alpha value used in blit operations. @@ -648,30 +649,30 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceColorMod(SDL_Surface *surface, Uin * * \param surface the SDL_Surface structure to update. * \param alpha the alpha value multiplied into blit operations. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceAlphaMod * \sa SDL_SetSurfaceColorMod */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceAlphaMod(SDL_Surface *surface, Uint8 alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceAlphaMod(SDL_Surface *surface, Uint8 alpha); /** * Get the additional alpha value used in blit operations. * * \param surface the SDL_Surface structure to query. * \param alpha a pointer filled in with the current alpha value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceColorMod * \sa SDL_SetSurfaceAlphaMod */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceAlphaMod(SDL_Surface *surface, Uint8 *alpha); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSurfaceAlphaMod(SDL_Surface *surface, Uint8 *alpha); /** * Set the blend mode used for blit operations. @@ -682,28 +683,28 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceAlphaMod(SDL_Surface *surface, Uin * * \param surface the SDL_Surface structure to update. * \param blendMode the SDL_BlendMode to use for blit blending. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetSurfaceBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_SetSurfaceBlendMode(SDL_Surface *surface, SDL_BlendMode blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceBlendMode(SDL_Surface *surface, SDL_BlendMode blendMode); /** * Get the blend mode used for blit operations. * * \param surface the SDL_Surface structure to query. * \param blendMode a pointer filled in with the current SDL_BlendMode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetSurfaceBlendMode */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceBlendMode(SDL_Surface *surface, SDL_BlendMode *blendMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSurfaceBlendMode(SDL_Surface *surface, SDL_BlendMode *blendMode); /** * Set the clipping rectangle for a surface. @@ -736,26 +737,26 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetSurfaceClipRect(SDL_Surface *surface * clipped. * \param rect an SDL_Rect structure filled in with the clipping rectangle for * the surface. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetSurfaceClipRect */ -extern SDL_DECLSPEC int SDLCALL SDL_GetSurfaceClipRect(SDL_Surface *surface, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetSurfaceClipRect(SDL_Surface *surface, SDL_Rect *rect); /** * Flip a surface vertically or horizontally. * * \param surface the surface to flip. * \param flip the direction to flip. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_FlipSurface(SDL_Surface *surface, SDL_FlipMode flip); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FlipSurface(SDL_Surface *surface, SDL_FlipMode flip); /** * Creates a new surface identical to the existing surface. @@ -858,14 +859,14 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_ConvertSurfaceAndColorspace(SDL_Su * \param dst_format an SDL_PixelFormat value of the `dst` pixels format. * \param dst a pointer to be filled in with new pixel data. * \param dst_pitch the pitch of the destination pixels, in bytes. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_FALSE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ConvertPixelsAndColorspace */ -extern SDL_DECLSPEC int SDLCALL SDL_ConvertPixels(int width, int height, SDL_PixelFormat src_format, const void *src, int src_pitch, SDL_PixelFormat dst_format, void *dst, int dst_pitch); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ConvertPixels(int width, int height, SDL_PixelFormat src_format, const void *src, int src_pitch, SDL_PixelFormat dst_format, void *dst, int dst_pitch); /** * Copy a block of pixels of one format and colorspace to another format and @@ -887,14 +888,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_ConvertPixels(int width, int height, SDL_Pix * properties, or 0. * \param dst a pointer to be filled in with new pixel data. * \param dst_pitch the pitch of the destination pixels, in bytes. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_FALSE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ConvertPixels */ -extern SDL_DECLSPEC int SDLCALL SDL_ConvertPixelsAndColorspace(int width, int height, SDL_PixelFormat src_format, SDL_Colorspace src_colorspace, SDL_PropertiesID src_properties, const void *src, int src_pitch, SDL_PixelFormat dst_format, SDL_Colorspace dst_colorspace, SDL_PropertiesID dst_properties, void *dst, int dst_pitch); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ConvertPixelsAndColorspace(int width, int height, SDL_PixelFormat src_format, SDL_Colorspace src_colorspace, SDL_PropertiesID src_properties, const void *src, int src_pitch, SDL_PixelFormat dst_format, SDL_Colorspace dst_colorspace, SDL_PropertiesID dst_properties, void *dst, int dst_pitch); /** * Premultiply the alpha on a block of pixels. @@ -911,12 +912,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_ConvertPixelsAndColorspace(int width, int he * \param dst_pitch the pitch of the destination pixels, in bytes. * \param linear SDL_TRUE to convert from sRGB to linear space for the alpha * multiplication, SDL_FALSE to do multiplication in sRGB space. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_PremultiplyAlpha(int width, int height, SDL_PixelFormat src_format, const void *src, int src_pitch, SDL_PixelFormat dst_format, void *dst, int dst_pitch, SDL_bool linear); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PremultiplyAlpha(int width, int height, SDL_PixelFormat src_format, const void *src, int src_pitch, SDL_PixelFormat dst_format, void *dst, int dst_pitch, SDL_bool linear); /** * Premultiply the alpha in a surface. @@ -926,12 +927,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_PremultiplyAlpha(int width, int height, SDL_ * \param surface the surface to modify. * \param linear SDL_TRUE to convert from sRGB to linear space for the alpha * multiplication, SDL_FALSE to do multiplication in sRGB space. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_PremultiplySurfaceAlpha(SDL_Surface *surface, SDL_bool linear); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_PremultiplySurfaceAlpha(SDL_Surface *surface, SDL_bool linear); /** * Clear a surface with a specific color, with floating point precision. @@ -946,12 +947,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_PremultiplySurfaceAlpha(SDL_Surface *surface * \param g the green component of the pixel, normally in the range 0-1. * \param b the blue component of the pixel, normally in the range 0-1. * \param a the alpha component of the pixel, normally in the range 0-1. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ClearSurface(SDL_Surface *surface, float r, float g, float b, float a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ClearSurface(SDL_Surface *surface, float r, float g, float b, float a); /** * Perform a fast fill of a rectangle with a specific color. @@ -969,14 +970,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_ClearSurface(SDL_Surface *surface, float r, * \param rect the SDL_Rect structure representing the rectangle to fill, or * NULL to fill the entire surface. * \param color the color to fill with. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_FillSurfaceRects */ -extern SDL_DECLSPEC int SDLCALL SDL_FillSurfaceRect(SDL_Surface *dst, const SDL_Rect *rect, Uint32 color); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FillSurfaceRect(SDL_Surface *dst, const SDL_Rect *rect, Uint32 color); /** * Perform a fast fill of a set of rectangles with a specific color. @@ -994,14 +995,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_FillSurfaceRect(SDL_Surface *dst, const SDL_ * \param rects an array of SDL_Rects representing the rectangles to fill. * \param count the number of rectangles in the array. * \param color the color to fill with. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_FillSurfaceRect */ -extern SDL_DECLSPEC int SDLCALL SDL_FillSurfaceRects(SDL_Surface *dst, const SDL_Rect *rects, int count, Uint32 color); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FillSurfaceRects(SDL_Surface *dst, const SDL_Rect *rects, int count, Uint32 color); /** * Performs a fast blit from the source surface to the destination surface. @@ -1065,8 +1066,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_FillSurfaceRects(SDL_Surface *dst, const SDL * height are ignored, and are copied from `srcrect`. If you * want a specific width and height, you should use * SDL_BlitSurfaceScaled(). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1076,7 +1077,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_FillSurfaceRects(SDL_Surface *dst, const SDL * * \sa SDL_BlitSurfaceScaled */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurface(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurface(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); /** * Perform low-level surface blitting only. @@ -1090,8 +1091,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurface(SDL_Surface *src, const SDL_Rect * \param dst the SDL_Surface structure that is the blit target. * \param dstrect the SDL_Rect structure representing the target rectangle in * the destination surface, may not be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1101,7 +1102,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurface(SDL_Surface *src, const SDL_Rect * * \sa SDL_BlitSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUnchecked(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurfaceUnchecked(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); /** * Perform a scaled blit to a destination surface, which may be of a different @@ -1115,8 +1116,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUnchecked(SDL_Surface *src, const * the destination surface, or NULL to fill the entire * destination surface. * \param scaleMode the SDL_ScaleMode to be used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1126,7 +1127,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUnchecked(SDL_Surface *src, const * * \sa SDL_BlitSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceScaled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect, SDL_ScaleMode scaleMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurfaceScaled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect, SDL_ScaleMode scaleMode); /** * Perform low-level surface scaled blitting only. @@ -1141,8 +1142,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceScaled(SDL_Surface *src, const SD * \param dstrect the SDL_Rect structure representing the target rectangle in * the destination surface, may not be NULL. * \param scaleMode the SDL_ScaleMode to be used. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1152,7 +1153,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceScaled(SDL_Surface *src, const SD * * \sa SDL_BlitSurfaceScaled */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUncheckedScaled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect, SDL_ScaleMode scaleMode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurfaceUncheckedScaled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect, SDL_ScaleMode scaleMode); /** * Perform a tiled blit to a destination surface, which may be of a different @@ -1167,8 +1168,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUncheckedScaled(SDL_Surface *src, * \param dst the SDL_Surface structure that is the blit target. * \param dstrect the SDL_Rect structure representing the target rectangle in * the destination surface, or NULL to fill the entire surface. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1178,7 +1179,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceUncheckedScaled(SDL_Surface *src, * * \sa SDL_BlitSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurfaceTiled(SDL_Surface *src, const SDL_Rect *srcrect, SDL_Surface *dst, const SDL_Rect *dstrect); /** * Perform a scaled and tiled blit to a destination surface, which may be of a @@ -1197,8 +1198,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiled(SDL_Surface *src, const SDL * \param dst the SDL_Surface structure that is the blit target. * \param dstrect the SDL_Rect structure representing the target rectangle in * the destination surface, or NULL to fill the entire surface. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1208,7 +1209,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiled(SDL_Surface *src, const SDL * * \sa SDL_BlitSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiledWithScale(SDL_Surface *src, const SDL_Rect *srcrect, float scale, SDL_ScaleMode scaleMode, SDL_Surface *dst, const SDL_Rect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurfaceTiledWithScale(SDL_Surface *src, const SDL_Rect *srcrect, float scale, SDL_ScaleMode scaleMode, SDL_Surface *dst, const SDL_Rect *dstrect); /** * Perform a scaled blit using the 9-grid algorithm to a destination surface, @@ -1234,8 +1235,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiledWithScale(SDL_Surface *src, * \param dst the SDL_Surface structure that is the blit target. * \param dstrect the SDL_Rect structure representing the target rectangle in * the destination surface, or NULL to fill the entire surface. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety The same destination surface should not be used from two * threads at once. It is safe to use the same source surface @@ -1245,7 +1246,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_BlitSurfaceTiledWithScale(SDL_Surface *src, * * \sa SDL_BlitSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_BlitSurface9Grid(SDL_Surface *src, const SDL_Rect *srcrect, int left_width, int right_width, int top_height, int bottom_height, float scale, SDL_ScaleMode scaleMode, SDL_Surface *dst, const SDL_Rect *dstrect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_BlitSurface9Grid(SDL_Surface *src, const SDL_Rect *srcrect, int left_width, int right_width, int top_height, int bottom_height, float scale, SDL_ScaleMode scaleMode, SDL_Surface *dst, const SDL_Rect *dstrect); /** * Map an RGB triple to an opaque pixel value for a surface. @@ -1328,12 +1329,12 @@ extern SDL_DECLSPEC Uint32 SDLCALL SDL_MapSurfaceRGBA(SDL_Surface *surface, Uint * ignore this channel. * \param a a pointer filled in with the alpha channel, 0-255, or NULL to * ignore this channel. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ReadSurfacePixel(SDL_Surface *surface, int x, int y, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ReadSurfacePixel(SDL_Surface *surface, int x, int y, Uint8 *r, Uint8 *g, Uint8 *b, Uint8 *a); /** * Retrieves a single pixel from a surface. @@ -1352,12 +1353,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_ReadSurfacePixel(SDL_Surface *surface, int x * 0-1, or NULL to ignore this channel. * \param a a pointer filled in with the alpha channel, normally in the range * 0-1, or NULL to ignore this channel. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ReadSurfacePixelFloat(SDL_Surface *surface, int x, int y, float *r, float *g, float *b, float *a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ReadSurfacePixelFloat(SDL_Surface *surface, int x, int y, float *r, float *g, float *b, float *a); /** * Writes a single pixel to a surface. @@ -1375,12 +1376,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_ReadSurfacePixelFloat(SDL_Surface *surface, * \param g the green channel value, 0-255. * \param b the blue channel value, 0-255. * \param a the alpha channel value, 0-255. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_WriteSurfacePixel(SDL_Surface *surface, int x, int y, Uint8 r, Uint8 g, Uint8 b, Uint8 a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WriteSurfacePixel(SDL_Surface *surface, int x, int y, Uint8 r, Uint8 g, Uint8 b, Uint8 a); /** * Writes a single pixel to a surface. @@ -1395,12 +1396,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_WriteSurfacePixel(SDL_Surface *surface, int * \param g the green channel value, normally in the range 0-1. * \param b the blue channel value, normally in the range 0-1. * \param a the alpha channel value, normally in the range 0-1. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_WriteSurfacePixelFloat(SDL_Surface *surface, int x, int y, float r, float g, float b, float a); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_WriteSurfacePixelFloat(SDL_Surface *surface, int x, int y, float r, float g, float b, float a); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_system.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_system.h index 9e79e79..17ac0a1 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_system.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_system.h @@ -101,8 +101,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_SetWindowsMessageHook(SDL_WindowsMessageHoo * controls on which monitor a full screen application will appear. * * \param displayID the instance of the display to query. - * \returns the D3D9 adapter index on success or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns the D3D9 adapter index on success or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ @@ -122,12 +122,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetDirect3D9AdapterIndex(SDL_DisplayID displ * \param displayID the instance of the display to query. * \param adapterIndex a pointer to be filled in with the adapter index. * \param outputIndex a pointer to be filled in with the output index. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetDXGIOutputInfo(SDL_DisplayID displayID, int *adapterIndex, int *outputIndex); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetDXGIOutputInfo(SDL_DisplayID displayID, int *adapterIndex, int *outputIndex); #endif /* defined(SDL_PLATFORM_WIN32) || defined(SDL_PLATFORM_WINGDK) */ @@ -162,12 +162,12 @@ extern SDL_DECLSPEC void SDLCALL SDL_SetX11EventHook(SDL_X11EventHook callback, * * \param threadID the Unix thread ID to change priority of. * \param priority the new, Unix-specific, priority value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetLinuxThreadPriority(Sint64 threadID, int priority); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetLinuxThreadPriority(Sint64 threadID, int priority); /** * Sets the priority (not nice level) and scheduling policy for a thread. @@ -178,12 +178,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetLinuxThreadPriority(Sint64 threadID, int * \param sdlPriority the new SDL_ThreadPriority value. * \param schedPolicy the new scheduling policy (SCHED_FIFO, SCHED_RR, * SCHED_OTHER, etc...). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetLinuxThreadPriorityAndPolicy(Sint64 threadID, int sdlPriority, int schedPolicy); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetLinuxThreadPriorityAndPolicy(Sint64 threadID, int sdlPriority, int schedPolicy); #endif /* SDL_PLATFORM_LINUX */ @@ -240,14 +240,14 @@ typedef void (SDLCALL *SDL_iOSAnimationCallback)(void *userdata); * called. * \param callback the function to call for every frame. * \param callbackParam a pointer that is passed to `callback`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetiOSEventPump */ -extern SDL_DECLSPEC int SDLCALL SDL_SetiOSAnimationCallback(SDL_Window *window, int interval, SDL_iOSAnimationCallback callback, void *callbackParam); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetiOSAnimationCallback(SDL_Window *window, int interval, SDL_iOSAnimationCallback callback, void *callbackParam); /** * Use this function to enable or disable the SDL event pump on Apple iOS. @@ -503,15 +503,15 @@ typedef void (SDLCALL *SDL_RequestAndroidPermissionCallback)(void *userdata, con * \param permission the permission to request. * \param cb the callback to trigger when the request has a response. * \param userdata an app-controlled pointer that is passed to the callback. - * \returns zero if the request was submitted, -1 if there was an error - * submitting. The result of the request is only ever reported + * \returns SDL_TRUE if the request was submitted, SDL_FALSE if there was an + * error submitting. The result of the request is only ever reported * through the callback, not this return value. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RequestAndroidPermission(const char *permission, SDL_RequestAndroidPermissionCallback cb, void *userdata); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RequestAndroidPermission(const char *permission, SDL_RequestAndroidPermissionCallback cb, void *userdata); /** * Shows an Android toast notification. @@ -532,14 +532,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_RequestAndroidPermission(const char *permiss * \param gravity where the notification should appear on the screen. * \param xoffset set this parameter only when gravity >=0. * \param yoffset set this parameter only when gravity >=0. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowAndroidToast(const char *message, int duration, int gravity, int xoffset, int yoffset); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowAndroidToast(const char *message, int duration, int gravity, int xoffset, int yoffset); /** * Send a user command to SDLActivity. @@ -548,14 +548,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_ShowAndroidToast(const char *message, int du * * \param command user command that must be greater or equal to 0x8000. * \param param user parameter. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SendAndroidMessage(Uint32 command, int param); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SendAndroidMessage(Uint32 command, int param); #endif /* SDL_PLATFORM_ANDROID */ @@ -794,12 +794,12 @@ typedef struct XUser *XUserHandle; * leak. * * \param outTaskQueue a pointer to be filled in with task queue handle. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetGDKTaskQueue(XTaskQueueHandle *outTaskQueue); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetGDKTaskQueue(XTaskQueueHandle *outTaskQueue); /** * Gets a reference to the default user handle for GDK. @@ -809,12 +809,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetGDKTaskQueue(XTaskQueueHandle *outTaskQue * * \param outUserHandle a pointer to be filled in with the default user * handle. - * \returns 0 if success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE if success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetGDKDefaultUser(XUserHandle *outUserHandle); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetGDKDefaultUser(XUserHandle *outUserHandle); #endif diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_thread.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_thread.h index f6ec760..0fdc8a0 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_thread.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_thread.h @@ -252,10 +252,10 @@ extern SDL_DECLSPEC SDL_Thread * SDLCALL SDL_CreateThread(SDL_ThreadFunction fn, */ extern SDL_DECLSPEC SDL_Thread * SDLCALL SDL_CreateThreadWithProperties(SDL_PropertiesID props); -#define SDL_PROP_THREAD_CREATE_ENTRY_FUNCTION_POINTER "entry_function" -#define SDL_PROP_THREAD_CREATE_NAME_STRING "name" -#define SDL_PROP_THREAD_CREATE_USERDATA_POINTER "userdata" -#define SDL_PROP_THREAD_CREATE_STACKSIZE_NUMBER "stacksize" +#define SDL_PROP_THREAD_CREATE_ENTRY_FUNCTION_POINTER "SDL.thread.create.entry_function" +#define SDL_PROP_THREAD_CREATE_NAME_STRING "SDL.thread.create.name" +#define SDL_PROP_THREAD_CREATE_USERDATA_POINTER "SDL.thread.create.userdata" +#define SDL_PROP_THREAD_CREATE_STACKSIZE_NUMBER "SDL.thread.create.stacksize" /* end wiki documentation for macros that are meant to look like functions. */ #endif @@ -320,10 +320,10 @@ extern SDL_DECLSPEC SDL_Thread * SDLCALL SDL_CreateThreadWithPropertiesRuntime(S #define SDL_CreateThread(fn, name, data) SDL_CreateThreadRuntime((fn), (name), (data), (SDL_FunctionPointer) (SDL_BeginThreadFunction), (SDL_FunctionPointer) (SDL_EndThreadFunction)) #define SDL_CreateThreadWithProperties(props) SDL_CreateThreadWithPropertiesRuntime((props), (SDL_FunctionPointer) (SDL_BeginThreadFunction), (SDL_FunctionPointer) (SDL_EndThreadFunction)) -#define SDL_PROP_THREAD_CREATE_ENTRY_FUNCTION_POINTER "entry_function" -#define SDL_PROP_THREAD_CREATE_NAME_STRING "name" -#define SDL_PROP_THREAD_CREATE_USERDATA_POINTER "userdata" -#define SDL_PROP_THREAD_CREATE_STACKSIZE_NUMBER "stacksize" +#define SDL_PROP_THREAD_CREATE_ENTRY_FUNCTION_POINTER "SDL.thread.create.entry_function" +#define SDL_PROP_THREAD_CREATE_NAME_STRING "SDL.thread.create.name" +#define SDL_PROP_THREAD_CREATE_USERDATA_POINTER "SDL.thread.create.userdata" +#define SDL_PROP_THREAD_CREATE_STACKSIZE_NUMBER "SDL.thread.create.stacksize" #endif @@ -381,12 +381,12 @@ extern SDL_DECLSPEC SDL_ThreadID SDLCALL SDL_GetThreadID(SDL_Thread *thread); * an administrator account. Be prepared for this to fail. * * \param priority the SDL_ThreadPriority to set. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetThreadPriority(SDL_ThreadPriority priority); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetThreadPriority(SDL_ThreadPriority priority); /** * Wait for a thread to finish. @@ -504,8 +504,8 @@ typedef void (SDLCALL *SDL_TLSDestructorCallback)(void *value); * \param value the value to associate with the ID for the current thread. * \param destructor a function called when the thread exits, to free the * value, may be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \threadsafety It is safe to call this function from any thread. * @@ -513,7 +513,7 @@ typedef void (SDLCALL *SDL_TLSDestructorCallback)(void *value); * * \sa SDL_GetTLS */ -extern SDL_DECLSPEC int SDLCALL SDL_SetTLS(SDL_TLSID *id, const void *value, SDL_TLSDestructorCallback destructor); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetTLS(SDL_TLSID *id, const void *value, SDL_TLSDestructorCallback destructor); /** * Cleanup all TLS data for this thread. diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_time.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_time.h index de71506..86c1fad 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_time.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_time.h @@ -95,24 +95,24 @@ typedef enum SDL_TimeFormat * format, may be NULL. * \param timeFormat a pointer to the SDL_TimeFormat to hold the returned time * format, may be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetDateTimeLocalePreferences(SDL_DateFormat *dateFormat, SDL_TimeFormat *timeFormat); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetDateTimeLocalePreferences(SDL_DateFormat *dateFormat, SDL_TimeFormat *timeFormat); /** * Gets the current value of the system realtime clock in nanoseconds since * Jan 1, 1970 in Universal Coordinated Time (UTC). * * \param ticks the SDL_Time to hold the returned tick count. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetCurrentTime(SDL_Time *ticks); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetCurrentTime(SDL_Time *ticks); /** * Converts an SDL_Time in nanoseconds since the epoch to a calendar time in @@ -123,12 +123,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetCurrentTime(SDL_Time *ticks); * \param localTime the resulting SDL_DateTime will be expressed in local time * if true, otherwise it will be in Universal Coordinated * Time (UTC). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_TimeToDateTime(SDL_Time ticks, SDL_DateTime *dt, SDL_bool localTime); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_TimeToDateTime(SDL_Time ticks, SDL_DateTime *dt, SDL_bool localTime); /** * Converts a calendar time to an SDL_Time in nanoseconds since the epoch. @@ -138,12 +138,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_TimeToDateTime(SDL_Time ticks, SDL_DateTime * * \param dt the source SDL_DateTime. * \param ticks the resulting SDL_Time. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_DateTimeToTime(const SDL_DateTime *dt, SDL_Time *ticks); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_DateTimeToTime(const SDL_DateTime *dt, SDL_Time *ticks); /** * Converts an SDL time into a Windows FILETIME (100-nanosecond intervals @@ -181,8 +181,8 @@ extern SDL_DECLSPEC SDL_Time SDLCALL SDL_TimeFromWindows(Uint32 dwLowDateTime, U * * \param year the year. * \param month the month [1-12]. - * \returns the number of days in the requested month or a negative error code - * on failure; call SDL_GetError() for more information. + * \returns the number of days in the requested month or -1 on failure; call + * SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ @@ -194,8 +194,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetDaysInMonth(int year, int month); * \param year the year component of the date. * \param month the month component of the date. * \param day the day component of the date. - * \returns the day of year [0-365] if the date is valid or a negative error - * code on failure; call SDL_GetError() for more information. + * \returns the day of year [0-365] if the date is valid or -1 on failure; + * call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ @@ -207,9 +207,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetDayOfYear(int year, int month, int day); * \param year the year component of the date. * \param month the month component of the date. * \param day the day component of the date. - * \returns a value between 0 and 6 (0 being Sunday) if the date is valid or a - * negative error code on failure; call SDL_GetError() for more - * information. + * \returns a value between 0 and 6 (0 being Sunday) if the date is valid or + * -1 on failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. */ diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_timer.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_timer.h index cd3cc3a..9d05161 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_timer.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_timer.h @@ -137,7 +137,8 @@ typedef Uint32 SDL_TimerID; * The callback function is passed the current timer interval and returns the * next timer interval, in milliseconds. If the returned value is the same as * the one passed in, the periodic alarm continues, otherwise a new alarm is - * scheduled. If the callback returns 0, the periodic alarm is cancelled. + * scheduled. If the callback returns 0, the periodic alarm is canceled and + * will be removed. * * \param userdata an arbitrary pointer provided by the app through * SDL_AddTimer, for its own use. @@ -164,7 +165,7 @@ typedef Uint32 (SDLCALL *SDL_TimerCallback)(void *userdata, SDL_TimerID timerID, * The callback function is passed the current timer interval and the user * supplied parameter from the SDL_AddTimer() call and should return the next * timer interval. If the value returned from the callback is 0, the timer is - * canceled. + * canceled and will be removed. * * The callback is run on a separate thread, and for short timeouts can * potentially be called before this function returns. @@ -200,7 +201,8 @@ extern SDL_DECLSPEC SDL_TimerID SDLCALL SDL_AddTimer(Uint32 interval, SDL_TimerC * The callback function is passed the current timer interval and returns the * next timer interval, in nanoseconds. If the returned value is the same as * the one passed in, the periodic alarm continues, otherwise a new alarm is - * scheduled. If the callback returns 0, the periodic alarm is cancelled. + * scheduled. If the callback returns 0, the periodic alarm is canceled and + * will be removed. * * \param userdata an arbitrary pointer provided by the app through * SDL_AddTimer, for its own use. @@ -227,7 +229,7 @@ typedef Uint64 (SDLCALL *SDL_NSTimerCallback)(void *userdata, SDL_TimerID timerI * The callback function is passed the current timer interval and the user * supplied parameter from the SDL_AddTimerNS() call and should return the * next timer interval. If the value returned from the callback is 0, the - * timer is canceled. + * timer is canceled and will be removed. * * The callback is run on a separate thread, and for short timeouts can * potentially be called before this function returns. @@ -261,14 +263,14 @@ extern SDL_DECLSPEC SDL_TimerID SDLCALL SDL_AddTimerNS(Uint64 interval, SDL_NSTi * Remove a timer created with SDL_AddTimer(). * * \param id the ID of the timer to remove. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_AddTimer */ -extern SDL_DECLSPEC int SDLCALL SDL_RemoveTimer(SDL_TimerID id); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RemoveTimer(SDL_TimerID id); /* Ends C function definitions when using C++ */ diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_video.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_video.h index f78a9c1..7cce828 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_video.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_video.h @@ -41,8 +41,25 @@ extern "C" { #endif - +/** + * This is a unique ID for a display for the time it is connected to the + * system, and is never reused for the lifetime of the application. + * + * If the display is disconnected and reconnected, it will get a new ID. + * + * The value 0 is an invalid ID. + * + * \since This datatype is available since SDL 3.0.0. + */ typedef Uint32 SDL_DisplayID; + +/** + * This is a unique ID for a window. + * + * The value 0 is an invalid ID. + * + * \since This datatype is available since SDL 3.0.0. + */ typedef Uint32 SDL_WindowID; /* Global video properties... */ @@ -155,7 +172,8 @@ typedef Uint64 SDL_WindowFlags; #define SDL_WINDOW_MODAL SDL_UINT64_C(0x0000000000001000) /**< window is modal */ #define SDL_WINDOW_HIGH_PIXEL_DENSITY SDL_UINT64_C(0x0000000000002000) /**< window uses high pixel density back buffer if possible */ #define SDL_WINDOW_MOUSE_CAPTURE SDL_UINT64_C(0x0000000000004000) /**< window has mouse captured (unrelated to MOUSE_GRABBED) */ -#define SDL_WINDOW_ALWAYS_ON_TOP SDL_UINT64_C(0x0000000000008000) /**< window should always be above others */ +#define SDL_WINDOW_MOUSE_RELATIVE_MODE SDL_UINT64_C(0x0000000000008000) /**< window has relative mode enabled */ +#define SDL_WINDOW_ALWAYS_ON_TOP SDL_UINT64_C(0x0000000000010000) /**< window should always be above others */ #define SDL_WINDOW_UTILITY SDL_UINT64_C(0x0000000000020000) /**< window should be treated as a utility window, not showing in the task bar and window list */ #define SDL_WINDOW_TOOLTIP SDL_UINT64_C(0x0000000000040000) /**< window should be treated as a tooltip and does not get mouse or keyboard focus, requires a parent window */ #define SDL_WINDOW_POPUP_MENU SDL_UINT64_C(0x0000000000080000) /**< window should be treated as a popup menu, requires a parent window */ @@ -247,31 +265,31 @@ typedef SDL_EGLint *(SDLCALL *SDL_EGLIntArrayCallback)(void); */ typedef enum SDL_GLattr { - SDL_GL_RED_SIZE, - SDL_GL_GREEN_SIZE, - SDL_GL_BLUE_SIZE, - SDL_GL_ALPHA_SIZE, - SDL_GL_BUFFER_SIZE, - SDL_GL_DOUBLEBUFFER, - SDL_GL_DEPTH_SIZE, - SDL_GL_STENCIL_SIZE, - SDL_GL_ACCUM_RED_SIZE, - SDL_GL_ACCUM_GREEN_SIZE, - SDL_GL_ACCUM_BLUE_SIZE, - SDL_GL_ACCUM_ALPHA_SIZE, - SDL_GL_STEREO, - SDL_GL_MULTISAMPLEBUFFERS, - SDL_GL_MULTISAMPLESAMPLES, - SDL_GL_ACCELERATED_VISUAL, - SDL_GL_RETAINED_BACKING, - SDL_GL_CONTEXT_MAJOR_VERSION, - SDL_GL_CONTEXT_MINOR_VERSION, - SDL_GL_CONTEXT_FLAGS, - SDL_GL_CONTEXT_PROFILE_MASK, - SDL_GL_SHARE_WITH_CURRENT_CONTEXT, - SDL_GL_FRAMEBUFFER_SRGB_CAPABLE, - SDL_GL_CONTEXT_RELEASE_BEHAVIOR, - SDL_GL_CONTEXT_RESET_NOTIFICATION, + SDL_GL_RED_SIZE, /**< the minimum number of bits for the red channel of the color buffer; defaults to 3. */ + SDL_GL_GREEN_SIZE, /**< the minimum number of bits for the green channel of the color buffer; defaults to 3. */ + SDL_GL_BLUE_SIZE, /**< the minimum number of bits for the blue channel of the color buffer; defaults to 2. */ + SDL_GL_ALPHA_SIZE, /**< the minimum number of bits for the alpha channel of the color buffer; defaults to 0. */ + SDL_GL_BUFFER_SIZE, /**< the minimum number of bits for frame buffer size; defaults to 0. */ + SDL_GL_DOUBLEBUFFER, /**< whether the output is single or double buffered; defaults to double buffering on. */ + SDL_GL_DEPTH_SIZE, /**< the minimum number of bits in the depth buffer; defaults to 16. */ + SDL_GL_STENCIL_SIZE, /**< the minimum number of bits in the stencil buffer; defaults to 0. */ + SDL_GL_ACCUM_RED_SIZE, /**< the minimum number of bits for the red channel of the accumulation buffer; defaults to 0. */ + SDL_GL_ACCUM_GREEN_SIZE, /**< the minimum number of bits for the green channel of the accumulation buffer; defaults to 0. */ + SDL_GL_ACCUM_BLUE_SIZE, /**< the minimum number of bits for the blue channel of the accumulation buffer; defaults to 0. */ + SDL_GL_ACCUM_ALPHA_SIZE, /**< the minimum number of bits for the alpha channel of the accumulation buffer; defaults to 0. */ + SDL_GL_STEREO, /**< whether the output is stereo 3D; defaults to off. */ + SDL_GL_MULTISAMPLEBUFFERS, /**< the number of buffers used for multisample anti-aliasing; defaults to 0. */ + SDL_GL_MULTISAMPLESAMPLES, /**< the number of samples used around the current pixel used for multisample anti-aliasing. */ + SDL_GL_ACCELERATED_VISUAL, /**< set to 1 to require hardware acceleration, set to 0 to force software rendering; defaults to allow either. */ + SDL_GL_RETAINED_BACKING, /**< not used (deprecated). */ + SDL_GL_CONTEXT_MAJOR_VERSION, /**< OpenGL context major version. */ + SDL_GL_CONTEXT_MINOR_VERSION, /**< OpenGL context minor version. */ + SDL_GL_CONTEXT_FLAGS, /**< some combination of 0 or more of elements of the SDL_GLcontextFlag enumeration; defaults to 0. */ + SDL_GL_CONTEXT_PROFILE_MASK, /**< type of GL context (Core, Compatibility, ES). See SDL_GLprofile; default value depends on platform. */ + SDL_GL_SHARE_WITH_CURRENT_CONTEXT, /**< OpenGL context sharing; defaults to 0. */ + SDL_GL_FRAMEBUFFER_SRGB_CAPABLE, /**< requests sRGB capable visual; defaults to 0. */ + SDL_GL_CONTEXT_RELEASE_BEHAVIOR, /**< sets context the release behavior. See SDL_GLcontextReleaseFlag; defaults to FLUSH. */ + SDL_GL_CONTEXT_RESET_NOTIFICATION, /**< set context reset notification. See SDL_GLContextResetNotification; defaults to NO_NOTIFICATION. */ SDL_GL_CONTEXT_NO_ERROR, SDL_GL_FLOATBUFFERS, SDL_GL_EGL_PLATFORM @@ -330,8 +348,7 @@ typedef enum SDL_GLContextResetNotification /** * Get the number of video drivers compiled into SDL. * - * \returns a number >= 1 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns the number of built in video drivers. * * \since This function is available since SDL 3.0.0. * @@ -458,15 +475,15 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetDisplayName(SDL_DisplayID displa * * \param displayID the instance ID of the display to query. * \param rect the SDL_Rect structure filled in with the display bounds. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetDisplayUsableBounds * \sa SDL_GetDisplays */ -extern SDL_DECLSPEC int SDLCALL SDL_GetDisplayBounds(SDL_DisplayID displayID, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetDisplayBounds(SDL_DisplayID displayID, SDL_Rect *rect); /** * Get the usable desktop area represented by a display, in screen @@ -482,15 +499,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetDisplayBounds(SDL_DisplayID displayID, SD * * \param displayID the instance ID of the display to query. * \param rect the SDL_Rect structure filled in with the display bounds. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetDisplayBounds * \sa SDL_GetDisplays */ -extern SDL_DECLSPEC int SDLCALL SDL_GetDisplayUsableBounds(SDL_DisplayID displayID, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetDisplayUsableBounds(SDL_DisplayID displayID, SDL_Rect *rect); /** * Get the orientation of a display when it is unrotated. @@ -581,15 +598,15 @@ extern SDL_DECLSPEC SDL_DisplayMode ** SDLCALL SDL_GetFullscreenDisplayModes(SDL * the search. * \param mode a pointer filled in with the closest display mode equal to or * larger than the desired mode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetDisplays * \sa SDL_GetFullscreenDisplayModes */ -extern SDL_DECLSPEC int SDLCALL SDL_GetClosestFullscreenDisplayMode(SDL_DisplayID displayID, int w, int h, float refresh_rate, SDL_bool include_high_density_modes, SDL_DisplayMode *mode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetClosestFullscreenDisplayMode(SDL_DisplayID displayID, int w, int h, float refresh_rate, SDL_bool include_high_density_modes, SDL_DisplayMode *mode); /** * Get information about the desktop's display mode. @@ -734,8 +751,8 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetWindowDisplayScale(SDL_Window *window); * borderless fullscreen desktop mode, or one of the fullscreen * modes returned by SDL_GetFullscreenDisplayModes() to set an * exclusive fullscreen mode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -743,7 +760,7 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetWindowDisplayScale(SDL_Window *window); * \sa SDL_SetWindowFullscreen * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFullscreenMode(SDL_Window *window, const SDL_DisplayMode *mode); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowFullscreenMode(SDL_Window *window, const SDL_DisplayMode *mode); /** * Query the display mode to use when a window is visible at fullscreen. @@ -1052,39 +1069,40 @@ extern SDL_DECLSPEC SDL_Window * SDLCALL SDL_CreatePopupWindow(SDL_Window *paren */ extern SDL_DECLSPEC SDL_Window * SDLCALL SDL_CreateWindowWithProperties(SDL_PropertiesID props); -#define SDL_PROP_WINDOW_CREATE_ALWAYS_ON_TOP_BOOLEAN "always_on_top" -#define SDL_PROP_WINDOW_CREATE_BORDERLESS_BOOLEAN "borderless" -#define SDL_PROP_WINDOW_CREATE_FOCUSABLE_BOOLEAN "focusable" -#define SDL_PROP_WINDOW_CREATE_EXTERNAL_GRAPHICS_CONTEXT_BOOLEAN "external_graphics_context" -#define SDL_PROP_WINDOW_CREATE_FULLSCREEN_BOOLEAN "fullscreen" -#define SDL_PROP_WINDOW_CREATE_HEIGHT_NUMBER "height" -#define SDL_PROP_WINDOW_CREATE_HIDDEN_BOOLEAN "hidden" -#define SDL_PROP_WINDOW_CREATE_HIGH_PIXEL_DENSITY_BOOLEAN "high_pixel_density" -#define SDL_PROP_WINDOW_CREATE_MAXIMIZED_BOOLEAN "maximized" -#define SDL_PROP_WINDOW_CREATE_MENU_BOOLEAN "menu" -#define SDL_PROP_WINDOW_CREATE_METAL_BOOLEAN "metal" -#define SDL_PROP_WINDOW_CREATE_MINIMIZED_BOOLEAN "minimized" -#define SDL_PROP_WINDOW_CREATE_MODAL_BOOLEAN "modal" -#define SDL_PROP_WINDOW_CREATE_MOUSE_GRABBED_BOOLEAN "mouse_grabbed" -#define SDL_PROP_WINDOW_CREATE_OPENGL_BOOLEAN "opengl" -#define SDL_PROP_WINDOW_CREATE_PARENT_POINTER "parent" -#define SDL_PROP_WINDOW_CREATE_RESIZABLE_BOOLEAN "resizable" -#define SDL_PROP_WINDOW_CREATE_TITLE_STRING "title" -#define SDL_PROP_WINDOW_CREATE_TRANSPARENT_BOOLEAN "transparent" -#define SDL_PROP_WINDOW_CREATE_TOOLTIP_BOOLEAN "tooltip" -#define SDL_PROP_WINDOW_CREATE_UTILITY_BOOLEAN "utility" -#define SDL_PROP_WINDOW_CREATE_VULKAN_BOOLEAN "vulkan" -#define SDL_PROP_WINDOW_CREATE_WIDTH_NUMBER "width" -#define SDL_PROP_WINDOW_CREATE_X_NUMBER "x" -#define SDL_PROP_WINDOW_CREATE_Y_NUMBER "y" -#define SDL_PROP_WINDOW_CREATE_COCOA_WINDOW_POINTER "cocoa.window" -#define SDL_PROP_WINDOW_CREATE_COCOA_VIEW_POINTER "cocoa.view" -#define SDL_PROP_WINDOW_CREATE_WAYLAND_SURFACE_ROLE_CUSTOM_BOOLEAN "wayland.surface_role_custom" -#define SDL_PROP_WINDOW_CREATE_WAYLAND_CREATE_EGL_WINDOW_BOOLEAN "wayland.create_egl_window" -#define SDL_PROP_WINDOW_CREATE_WAYLAND_WL_SURFACE_POINTER "wayland.wl_surface" -#define SDL_PROP_WINDOW_CREATE_WIN32_HWND_POINTER "win32.hwnd" -#define SDL_PROP_WINDOW_CREATE_WIN32_PIXEL_FORMAT_HWND_POINTER "win32.pixel_format_hwnd" -#define SDL_PROP_WINDOW_CREATE_X11_WINDOW_NUMBER "x11.window" +#define SDL_PROP_WINDOW_CREATE_ALWAYS_ON_TOP_BOOLEAN "SDL.window.create.always_on_top" +#define SDL_PROP_WINDOW_CREATE_BORDERLESS_BOOLEAN "SDL.window.create.borderless" +#define SDL_PROP_WINDOW_CREATE_FOCUSABLE_BOOLEAN "SDL.window.create.focusable" +#define SDL_PROP_WINDOW_CREATE_EXTERNAL_GRAPHICS_CONTEXT_BOOLEAN "SDL.window.create.external_graphics_context" +#define SDL_PROP_WINDOW_CREATE_FLAGS_NUMBER "SDL.window.create.flags" +#define SDL_PROP_WINDOW_CREATE_FULLSCREEN_BOOLEAN "SDL.window.create.fullscreen" +#define SDL_PROP_WINDOW_CREATE_HEIGHT_NUMBER "SDL.window.create.height" +#define SDL_PROP_WINDOW_CREATE_HIDDEN_BOOLEAN "SDL.window.create.hidden" +#define SDL_PROP_WINDOW_CREATE_HIGH_PIXEL_DENSITY_BOOLEAN "SDL.window.create.high_pixel_density" +#define SDL_PROP_WINDOW_CREATE_MAXIMIZED_BOOLEAN "SDL.window.create.maximized" +#define SDL_PROP_WINDOW_CREATE_MENU_BOOLEAN "SDL.window.create.menu" +#define SDL_PROP_WINDOW_CREATE_METAL_BOOLEAN "SDL.window.create.metal" +#define SDL_PROP_WINDOW_CREATE_MINIMIZED_BOOLEAN "SDL.window.create.minimized" +#define SDL_PROP_WINDOW_CREATE_MODAL_BOOLEAN "SDL.window.create.modal" +#define SDL_PROP_WINDOW_CREATE_MOUSE_GRABBED_BOOLEAN "SDL.window.create.mouse_grabbed" +#define SDL_PROP_WINDOW_CREATE_OPENGL_BOOLEAN "SDL.window.create.opengl" +#define SDL_PROP_WINDOW_CREATE_PARENT_POINTER "SDL.window.create.parent" +#define SDL_PROP_WINDOW_CREATE_RESIZABLE_BOOLEAN "SDL.window.create.resizable" +#define SDL_PROP_WINDOW_CREATE_TITLE_STRING "SDL.window.create.title" +#define SDL_PROP_WINDOW_CREATE_TRANSPARENT_BOOLEAN "SDL.window.create.transparent" +#define SDL_PROP_WINDOW_CREATE_TOOLTIP_BOOLEAN "SDL.window.create.tooltip" +#define SDL_PROP_WINDOW_CREATE_UTILITY_BOOLEAN "SDL.window.create.utility" +#define SDL_PROP_WINDOW_CREATE_VULKAN_BOOLEAN "SDL.window.create.vulkan" +#define SDL_PROP_WINDOW_CREATE_WIDTH_NUMBER "SDL.window.create.width" +#define SDL_PROP_WINDOW_CREATE_X_NUMBER "SDL.window.create.x" +#define SDL_PROP_WINDOW_CREATE_Y_NUMBER "SDL.window.create.y" +#define SDL_PROP_WINDOW_CREATE_COCOA_WINDOW_POINTER "SDL.window.create.cocoa.window" +#define SDL_PROP_WINDOW_CREATE_COCOA_VIEW_POINTER "SDL.window.create.cocoa.view" +#define SDL_PROP_WINDOW_CREATE_WAYLAND_SURFACE_ROLE_CUSTOM_BOOLEAN "SDL.window.create.wayland.surface_role_custom" +#define SDL_PROP_WINDOW_CREATE_WAYLAND_CREATE_EGL_WINDOW_BOOLEAN "SDL.window.create.wayland.create_egl_window" +#define SDL_PROP_WINDOW_CREATE_WAYLAND_WL_SURFACE_POINTER "SDL.window.create.wayland.wl_surface" +#define SDL_PROP_WINDOW_CREATE_WIN32_HWND_POINTER "SDL.window.create.win32.hwnd" +#define SDL_PROP_WINDOW_CREATE_WIN32_PIXEL_FORMAT_HWND_POINTER "SDL.window.create.win32.pixel_format_hwnd" +#define SDL_PROP_WINDOW_CREATE_X11_WINDOW_NUMBER "SDL.window.create.x11.window" /** * Get the numeric ID of a window. @@ -1309,14 +1327,14 @@ extern SDL_DECLSPEC SDL_WindowFlags SDLCALL SDL_GetWindowFlags(SDL_Window *windo * * \param window the window to change. * \param title the desired window title in UTF-8 format. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowTitle */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowTitle(SDL_Window *window, const char *title); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowTitle(SDL_Window *window, const char *title); /** * Get the title of a window. @@ -1340,17 +1358,18 @@ extern SDL_DECLSPEC const char * SDLCALL SDL_GetWindowTitle(SDL_Window *window); * situations. For example, if the original surface is 32x32, then on a 2x * macOS display or 200% display scale on Windows, a 64x64 version of the * image will be used, if available. If a matching version of the image isn't - * available, the closest size image will be scaled to the appropriate size - * and be used instead. + * available, the closest larger size image will be downscaled to the + * appropriate size and be used instead, if available. Otherwise, the closest + * smaller image will be upscaled and be used instead. * * \param window the window to change. * \param icon an SDL_Surface structure containing the icon for the window. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowIcon(SDL_Window *window, SDL_Surface *icon); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowIcon(SDL_Window *window, SDL_Surface *icon); /** * Request that the window's position be set. @@ -1382,15 +1401,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowIcon(SDL_Window *window, SDL_Surfac * `SDL_WINDOWPOS_UNDEFINED`. * \param y the y coordinate of the window, or `SDL_WINDOWPOS_CENTERED` or * `SDL_WINDOWPOS_UNDEFINED`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowPosition * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowPosition(SDL_Window *window, int x, int y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowPosition(SDL_Window *window, int x, int y); /** * Get the position of a window. @@ -1406,14 +1425,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowPosition(SDL_Window *window, int x, * NULL. * \param y a pointer filled in with the y position of the window, may be * NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetWindowPosition */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowPosition(SDL_Window *window, int *x, int *y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowPosition(SDL_Window *window, int *x, int *y); /** * Request that the size of a window's client area be set. @@ -1440,8 +1459,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowPosition(SDL_Window *window, int *x * \param window the window to change. * \param w the width of the window, must be > 0. * \param h the height of the window, must be > 0. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1449,7 +1468,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowPosition(SDL_Window *window, int *x * \sa SDL_SetWindowFullscreenMode * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowSize(SDL_Window *window, int w, int h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowSize(SDL_Window *window, int w, int h); /** * Get the size of a window's client area. @@ -1461,8 +1480,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowSize(SDL_Window *window, int w, int * \param window the window to query the width and height from. * \param w a pointer filled in with the width of the window, may be NULL. * \param h a pointer filled in with the height of the window, may be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1470,7 +1489,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowSize(SDL_Window *window, int w, int * \sa SDL_GetWindowSizeInPixels * \sa SDL_SetWindowSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSize(SDL_Window *window, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowSize(SDL_Window *window, int *w, int *h); /** * Get the safe area for this window. @@ -1485,12 +1504,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSize(SDL_Window *window, int *w, in * \param window the window to query. * \param rect a pointer filled in with the client area that is safe for * interactive content. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSafeArea(SDL_Window *window, SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowSafeArea(SDL_Window *window, SDL_Rect *rect); /** * Request that the aspect ratio of a window's client area be set. @@ -1521,15 +1540,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSafeArea(SDL_Window *window, SDL_Re * limit. * \param max_aspect the maximum aspect ratio of the window, or 0.0f for no * limit. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowAspectRatio * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowAspectRatio(SDL_Window *window, float min_aspect, float max_aspect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowAspectRatio(SDL_Window *window, float min_aspect, float max_aspect); /** * Get the size of a window's client area. @@ -1539,14 +1558,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowAspectRatio(SDL_Window *window, flo * window, may be NULL. * \param max_aspect a pointer filled in with the maximum aspect ratio of the * window, may be NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetWindowAspectRatio */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowAspectRatio(SDL_Window *window, float *min_aspect, float *max_aspect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowAspectRatio(SDL_Window *window, float *min_aspect, float *max_aspect); /** * Get the size of a window's borders (decorations) around the client area. @@ -1573,14 +1592,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowAspectRatio(SDL_Window *window, flo * border; NULL is permitted. * \param right pointer to variable for storing the size of the right border; * NULL is permitted. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowBordersSize(SDL_Window *window, int *top, int *left, int *bottom, int *right); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowBordersSize(SDL_Window *window, int *top, int *left, int *bottom, int *right); /** * Get the size of a window's client area, in pixels. @@ -1590,15 +1609,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowBordersSize(SDL_Window *window, int * NULL. * \param h a pointer to variable for storing the height in pixels, may be * NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_CreateWindow * \sa SDL_GetWindowSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSizeInPixels(SDL_Window *window, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowSizeInPixels(SDL_Window *window, int *w, int *h); /** * Set the minimum size of a window's client area. @@ -1606,15 +1625,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSizeInPixels(SDL_Window *window, in * \param window the window to change. * \param min_w the minimum width of the window, or 0 for no limit. * \param min_h the minimum height of the window, or 0 for no limit. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMinimumSize * \sa SDL_SetWindowMaximumSize */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMinimumSize(SDL_Window *window, int min_w, int min_h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowMinimumSize(SDL_Window *window, int min_w, int min_h); /** * Get the minimum size of a window's client area. @@ -1624,15 +1643,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMinimumSize(SDL_Window *window, int * NULL. * \param h a pointer filled in with the minimum height of the window, may be * NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMaximumSize * \sa SDL_SetWindowMinimumSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowMinimumSize(SDL_Window *window, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowMinimumSize(SDL_Window *window, int *w, int *h); /** * Set the maximum size of a window's client area. @@ -1640,15 +1659,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowMinimumSize(SDL_Window *window, int * \param window the window to change. * \param max_w the maximum width of the window, or 0 for no limit. * \param max_h the maximum height of the window, or 0 for no limit. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMaximumSize * \sa SDL_SetWindowMinimumSize */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMaximumSize(SDL_Window *window, int max_w, int max_h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowMaximumSize(SDL_Window *window, int max_w, int max_h); /** * Get the maximum size of a window's client area. @@ -1658,15 +1677,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMaximumSize(SDL_Window *window, int * NULL. * \param h a pointer filled in with the maximum height of the window, may be * NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMinimumSize * \sa SDL_SetWindowMaximumSize */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowMaximumSize(SDL_Window *window, int *w, int *h); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowMaximumSize(SDL_Window *window, int *w, int *h); /** * Set the border state of a window. @@ -1679,14 +1698,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowMaximumSize(SDL_Window *window, int * * \param window the window of which to change the border state. * \param bordered SDL_FALSE to remove border, SDL_TRUE to add border. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowFlags */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowBordered(SDL_Window *window, SDL_bool bordered); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowBordered(SDL_Window *window, SDL_bool bordered); /** * Set the user-resizable state of a window. @@ -1699,14 +1718,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowBordered(SDL_Window *window, SDL_bo * * \param window the window of which to change the resizable state. * \param resizable SDL_TRUE to allow resizing, SDL_FALSE to disallow. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowFlags */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowResizable(SDL_Window *window, SDL_bool resizable); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowResizable(SDL_Window *window, SDL_bool resizable); /** * Set the window to always be above the others. @@ -1717,41 +1736,41 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowResizable(SDL_Window *window, SDL_b * \param window the window of which to change the always on top state. * \param on_top SDL_TRUE to set the window always on top, SDL_FALSE to * disable. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowFlags */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowAlwaysOnTop(SDL_Window *window, SDL_bool on_top); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowAlwaysOnTop(SDL_Window *window, SDL_bool on_top); /** * Show a window. * * \param window the window to show. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_HideWindow * \sa SDL_RaiseWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowWindow(SDL_Window *window); /** * Hide a window. * * \param window the window to hide. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_ShowWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_HideWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_HideWindow(SDL_Window *window); /** * Request that a window be raised above other windows and gain the input @@ -1764,12 +1783,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_HideWindow(SDL_Window *window); * the window will have the SDL_WINDOW_INPUT_FOCUS flag set. * * \param window the window to raise. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_RaiseWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RaiseWindow(SDL_Window *window); /** * Request that the window be made as large as possible. @@ -1792,8 +1811,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_RaiseWindow(SDL_Window *window); * and Wayland window managers may vary. * * \param window the window to maximize. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1801,7 +1820,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_RaiseWindow(SDL_Window *window); * \sa SDL_RestoreWindow * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_MaximizeWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_MaximizeWindow(SDL_Window *window); /** * Request that the window be minimized to an iconic representation. @@ -1816,8 +1835,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_MaximizeWindow(SDL_Window *window); * deny the state change. * * \param window the window to minimize. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1825,7 +1844,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_MaximizeWindow(SDL_Window *window); * \sa SDL_RestoreWindow * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_MinimizeWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_MinimizeWindow(SDL_Window *window); /** * Request that the size and position of a minimized or maximized window be @@ -1841,8 +1860,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_MinimizeWindow(SDL_Window *window); * deny the state change. * * \param window the window to restore. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1850,7 +1869,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_MinimizeWindow(SDL_Window *window); * \sa SDL_MinimizeWindow * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_RestoreWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_RestoreWindow(SDL_Window *window); /** * Request that the window's fullscreen state be changed. @@ -1871,8 +1890,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_RestoreWindow(SDL_Window *window); * \param window the window to change. * \param fullscreen SDL_TRUE for fullscreen mode, SDL_FALSE for windowed * mode. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * @@ -1880,7 +1899,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_RestoreWindow(SDL_Window *window); * \sa SDL_SetWindowFullscreenMode * \sa SDL_SyncWindow */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFullscreen(SDL_Window *window, SDL_bool fullscreen); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowFullscreen(SDL_Window *window, SDL_bool fullscreen); /** * Block until any pending window state is finalized. @@ -1896,9 +1915,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFullscreen(SDL_Window *window, SDL_ * * \param window the window for which to wait for the pending state to be * applied. - * \returns 0 on success, a positive value if the operation timed out before - * the window was in the requested state, or a negative error code on - * failure; call SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE if the operation timed out before + * the window was in the requested state. * * \since This function is available since SDL 3.0.0. * @@ -1910,7 +1928,7 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFullscreen(SDL_Window *window, SDL_ * \sa SDL_RestoreWindow * \sa SDL_HINT_VIDEO_SYNC_WINDOW_OPERATIONS */ -extern SDL_DECLSPEC int SDLCALL SDL_SyncWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SyncWindow(SDL_Window *window); /** * Return whether the window has a surface associated with it. @@ -1967,14 +1985,14 @@ extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_GetWindowSurface(SDL_Window *windo * * \param window the window. * \param vsync the vertical refresh sync interval. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowSurfaceVSync */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowSurfaceVSync(SDL_Window *window, int vsync); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowSurfaceVSync(SDL_Window *window, int vsync); #define SDL_WINDOW_SURFACE_VSYNC_DISABLED 0 #define SDL_WINDOW_SURFACE_VSYNC_ADAPTIVE (-1) @@ -1985,14 +2003,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowSurfaceVSync(SDL_Window *window, in * \param window the window to query. * \param vsync an int filled with the current vertical refresh sync interval. * See SDL_SetWindowSurfaceVSync() for the meaning of the value. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_SetWindowSurfaceVSync */ -extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSurfaceVSync(SDL_Window *window, int *vsync); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GetWindowSurfaceVSync(SDL_Window *window, int *vsync); /** * Copy the window surface to the screen. @@ -2003,15 +2021,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GetWindowSurfaceVSync(SDL_Window *window, in * This function is equivalent to the SDL 1.2 API SDL_Flip(). * * \param window the window to update. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowSurface * \sa SDL_UpdateWindowSurfaceRects */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateWindowSurface(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateWindowSurface(SDL_Window *window); /** * Copy areas of the window surface to the screen. @@ -2030,29 +2048,29 @@ extern SDL_DECLSPEC int SDLCALL SDL_UpdateWindowSurface(SDL_Window *window); * \param rects an array of SDL_Rect structures representing areas of the * surface to copy, in pixels. * \param numrects the number of rectangles. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowSurface * \sa SDL_UpdateWindowSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_UpdateWindowSurfaceRects(SDL_Window *window, const SDL_Rect *rects, int numrects); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_UpdateWindowSurfaceRects(SDL_Window *window, const SDL_Rect *rects, int numrects); /** * Destroy the surface associated with the window. * * \param window the window to update. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowSurface * \sa SDL_WindowHasSurface */ -extern SDL_DECLSPEC int SDLCALL SDL_DestroyWindowSurface(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_DestroyWindowSurface(SDL_Window *window); /** * Set a window's keyboard grab mode. @@ -2075,15 +2093,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_DestroyWindowSurface(SDL_Window *window); * * \param window the window for which the keyboard grab mode should be set. * \param grabbed this is SDL_TRUE to grab keyboard, and SDL_FALSE to release. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowKeyboardGrab * \sa SDL_SetWindowMouseGrab */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowKeyboardGrab(SDL_Window *window, SDL_bool grabbed); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowKeyboardGrab(SDL_Window *window, SDL_bool grabbed); /** * Set a window's mouse grab mode. @@ -2092,15 +2110,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowKeyboardGrab(SDL_Window *window, SD * * \param window the window for which the mouse grab mode should be set. * \param grabbed this is SDL_TRUE to grab mouse, and SDL_FALSE to release. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMouseGrab * \sa SDL_SetWindowKeyboardGrab */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMouseGrab(SDL_Window *window, SDL_bool grabbed); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowMouseGrab(SDL_Window *window, SDL_bool grabbed); /** * Get a window's keyboard grab mode. @@ -2147,15 +2165,15 @@ extern SDL_DECLSPEC SDL_Window * SDLCALL SDL_GetGrabbedWindow(void); * \param window the window that will be associated with the barrier. * \param rect a rectangle area in window-relative coordinates. If NULL the * barrier for the specified window will be destroyed. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowMouseRect * \sa SDL_SetWindowMouseGrab */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowMouseRect(SDL_Window *window, const SDL_Rect *rect); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowMouseRect(SDL_Window *window, const SDL_Rect *rect); /** * Get the mouse confinement rectangle of a window. @@ -2180,14 +2198,14 @@ extern SDL_DECLSPEC const SDL_Rect * SDLCALL SDL_GetWindowMouseRect(SDL_Window * * * \param window the window which will be made transparent or opaque. * \param opacity the opacity value (0.0f - transparent, 1.0f - opaque). - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GetWindowOpacity */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowOpacity(SDL_Window *window, float opacity); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowOpacity(SDL_Window *window, float opacity); /** * Get the opacity of a window. @@ -2196,8 +2214,8 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowOpacity(SDL_Window *window, float o * as 1.0f without error. * * \param window the window to get the current opacity value from. - * \returns the opacity, (0.0f - transparent, 1.0f - opaque), or a negative - * error code on failure; call SDL_GetError() for more information. + * \returns the opacity, (0.0f - transparent, 1.0f - opaque), or -1.0f on + * failure; call SDL_GetError() for more information. * * \since This function is available since SDL 3.0.0. * @@ -2217,12 +2235,12 @@ extern SDL_DECLSPEC float SDLCALL SDL_GetWindowOpacity(SDL_Window *window); * * \param modal_window the window that should be set modal. * \param parent_window the parent window for the modal window. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowModalFor(SDL_Window *modal_window, SDL_Window *parent_window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowModalFor(SDL_Window *modal_window, SDL_Window *parent_window); /** * Set whether the window may have input focus. @@ -2230,12 +2248,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowModalFor(SDL_Window *modal_window, * \param window the window to set focusable state. * \param focusable SDL_TRUE to allow input focus, SDL_FALSE to not allow * input focus. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFocusable(SDL_Window *window, SDL_bool focusable); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowFocusable(SDL_Window *window, SDL_bool focusable); /** @@ -2254,12 +2272,12 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowFocusable(SDL_Window *window, SDL_b * the client area. * \param y the y coordinate of the menu, relative to the origin (top-left) of * the client area. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_ShowWindowSystemMenu(SDL_Window *window, int x, int y); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ShowWindowSystemMenu(SDL_Window *window, int x, int y); /** * Possible return values from the SDL_HitTest callback. @@ -2317,7 +2335,7 @@ typedef SDL_HitTestResult (SDLCALL *SDL_HitTest)(SDL_Window *win, * Specifying NULL for a callback disables hit-testing. Hit-testing is * disabled by default. * - * Platforms that don't support this functionality will return -1 + * Platforms that don't support this functionality will return SDL_FALSE * unconditionally, even if you're attempting to disable hit-testing. * * Your callback may fire at any time, and its firing does not indicate any @@ -2331,12 +2349,12 @@ typedef SDL_HitTestResult (SDLCALL *SDL_HitTest)(SDL_Window *win, * \param window the window to set hit-testing on. * \param callback the function to call when doing a hit-test. * \param callback_data an app-defined void pointer passed to **callback**. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowHitTest(SDL_Window *window, SDL_HitTest callback, void *callback_data); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowHitTest(SDL_Window *window, SDL_HitTest callback, void *callback_data); /** * Set the shape of a transparent window. @@ -2355,24 +2373,24 @@ extern SDL_DECLSPEC int SDLCALL SDL_SetWindowHitTest(SDL_Window *window, SDL_Hit * \param window the window. * \param shape the surface representing the shape of the window, or NULL to * remove any current shape. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_SetWindowShape(SDL_Window *window, SDL_Surface *shape); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_SetWindowShape(SDL_Window *window, SDL_Surface *shape); /** * Request a window to demand attention from the user. * * \param window the window to be flashed. * \param operation the operation to perform. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_FlashWindow(SDL_Window *window, SDL_FlashOperation operation); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_FlashWindow(SDL_Window *window, SDL_FlashOperation operation); /** * Destroy a window. @@ -2411,15 +2429,15 @@ extern SDL_DECLSPEC SDL_bool SDLCALL SDL_ScreenSaverEnabled(void); /** * Allow the screen to be blanked by a screen saver. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_DisableScreenSaver * \sa SDL_ScreenSaverEnabled */ -extern SDL_DECLSPEC int SDLCALL SDL_EnableScreenSaver(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_EnableScreenSaver(void); /** * Prevent the screen from being blanked by a screen saver. @@ -2430,15 +2448,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_EnableScreenSaver(void); * The screensaver is disabled by default, but this may by changed by * SDL_HINT_VIDEO_ALLOW_SCREENSAVER. * - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_EnableScreenSaver * \sa SDL_ScreenSaverEnabled */ -extern SDL_DECLSPEC int SDLCALL SDL_DisableScreenSaver(void); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_DisableScreenSaver(void); /** @@ -2458,15 +2476,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_DisableScreenSaver(void); * * \param path the platform dependent OpenGL library name, or NULL to open the * default OpenGL library. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_GetProcAddress * \sa SDL_GL_UnloadLibrary */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_LoadLibrary(const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_LoadLibrary(const char *path); /** * Get an OpenGL function by name. @@ -2589,15 +2607,15 @@ extern SDL_DECLSPEC void SDLCALL SDL_GL_ResetAttributes(void); * \param attr an SDL_GLattr enum value specifying the OpenGL attribute to * set. * \param value the desired value for the attribute. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_GetAttribute * \sa SDL_GL_ResetAttributes */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_SetAttribute(SDL_GLattr attr, int value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_SetAttribute(SDL_GLattr attr, int value); /** * Get the actual value for an attribute from the current context. @@ -2605,15 +2623,15 @@ extern SDL_DECLSPEC int SDLCALL SDL_GL_SetAttribute(SDL_GLattr attr, int value); * \param attr an SDL_GLattr enum value specifying the OpenGL attribute to * get. * \param value a pointer filled in with the current value of `attr`. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_ResetAttributes * \sa SDL_GL_SetAttribute */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_GetAttribute(SDL_GLattr attr, int *value); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_GetAttribute(SDL_GLattr attr, int *value); /** * Create an OpenGL context for an OpenGL window, and make it current. @@ -2644,14 +2662,14 @@ extern SDL_DECLSPEC SDL_GLContext SDLCALL SDL_GL_CreateContext(SDL_Window *windo * * \param window the window to associate with the context. * \param context the OpenGL context to associate with the window. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_CreateContext */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_MakeCurrent(SDL_Window *window, SDL_GLContext context); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_MakeCurrent(SDL_Window *window, SDL_GLContext context); /** * Get the currently active OpenGL window. @@ -2740,8 +2758,8 @@ extern SDL_DECLSPEC void SDLCALL SDL_EGL_SetAttributeCallbacks(SDL_EGLAttribArra * the vertical retrace for a given frame, it swaps buffers immediately, which * might be less jarring for the user during occasional framerate drops. If an * application requests adaptive vsync and the system does not support it, - * this function will fail and return -1. In such a case, you should probably - * retry the call with 1 for the interval. + * this function will fail and return SDL_FALSE. In such a case, you should + * probably retry the call with 1 for the interval. * * Adaptive vsync is implemented for some glX drivers with * GLX_EXT_swap_control_tear, and for some Windows drivers with @@ -2752,14 +2770,14 @@ extern SDL_DECLSPEC void SDLCALL SDL_EGL_SetAttributeCallbacks(SDL_EGLAttribArra * * \param interval 0 for immediate updates, 1 for updates synchronized with * the vertical retrace, -1 for adaptive vsync. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_GetSwapInterval */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_SetSwapInterval(int interval); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_SetSwapInterval(int interval); /** * Get the swap interval for the current OpenGL context. @@ -2771,14 +2789,14 @@ extern SDL_DECLSPEC int SDLCALL SDL_GL_SetSwapInterval(int interval); * synchronization, 1 if the buffer swap is synchronized with * the vertical retrace, and -1 if late swaps happen * immediately instead of waiting for the next retrace. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_SetSwapInterval */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_GetSwapInterval(int *interval); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_GetSwapInterval(int *interval); /** * Update a window with OpenGL rendering. @@ -2791,25 +2809,25 @@ extern SDL_DECLSPEC int SDLCALL SDL_GL_GetSwapInterval(int *interval); * extra. * * \param window the window to change. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_SwapWindow(SDL_Window *window); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_SwapWindow(SDL_Window *window); /** * Delete an OpenGL context. * * \param context the OpenGL context to be deleted. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_GL_CreateContext */ -extern SDL_DECLSPEC int SDLCALL SDL_GL_DestroyContext(SDL_GLContext context); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_GL_DestroyContext(SDL_GLContext context); /* @} *//* OpenGL support functions */ diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_vulkan.h b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_vulkan.h index 6dd0537..c31d33c 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_vulkan.h +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Headers/SDL_vulkan.h @@ -95,15 +95,15 @@ struct VkAllocationCallbacks; * library version. * * \param path the platform dependent Vulkan loader library name or NULL. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_Vulkan_GetVkGetInstanceProcAddr * \sa SDL_Vulkan_UnloadLibrary */ -extern SDL_DECLSPEC int SDLCALL SDL_Vulkan_LoadLibrary(const char *path); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_Vulkan_LoadLibrary(const char *path); /** * Get the address of the `vkGetInstanceProcAddr` function. @@ -175,18 +175,18 @@ extern SDL_DECLSPEC char const * const * SDLCALL SDL_Vulkan_GetInstanceExtension * allocator that creates the surface. Can be NULL. * \param surface a pointer to a VkSurfaceKHR handle to output the newly * created surface. - * \returns 0 on success or a negative error code on failure; call - * SDL_GetError() for more information. + * \returns SDL_TRUE on success or SDL_FALSE on failure; call SDL_GetError() + * for more information. * * \since This function is available since SDL 3.0.0. * * \sa SDL_Vulkan_GetInstanceExtensions * \sa SDL_Vulkan_DestroySurface */ -extern SDL_DECLSPEC int SDLCALL SDL_Vulkan_CreateSurface(SDL_Window *window, - VkInstance instance, - const struct VkAllocationCallbacks *allocator, - VkSurfaceKHR* surface); +extern SDL_DECLSPEC SDL_bool SDLCALL SDL_Vulkan_CreateSurface(SDL_Window *window, + VkInstance instance, + const struct VkAllocationCallbacks *allocator, + VkSurfaceKHR* surface); /** * Destroy the Vulkan rendering surface of a window. diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Resources/Info.plist b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Resources/Info.plist index e9b5cdc..f7d7959 100644 --- a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Resources/Info.plist +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Resources/Info.plist @@ -3,7 +3,7 @@ BuildMachineOSBuild - 24B5009l + 24B5035e CFBundleDevelopmentRegion English CFBundleExecutable @@ -31,19 +31,19 @@ DTCompiler com.apple.compilers.llvm.clang.1_0 DTPlatformBuild - 24A5298f + 24B5024b DTPlatformName macosx DTPlatformVersion - 15.0 + 15.1 DTSDKBuild - 24A5298f + 24B5024b DTSDKName - macosx15.0 + macosx15.1 DTXcode - 1600 + 1610 DTXcodeBuild - 16A5211f + 16B5001e LSMinimumSystemVersion 10.11 diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Resources/compile_shaders.sh b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Resources/compile_shaders.sh new file mode 100755 index 0000000..ef5e744 --- /dev/null +++ b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Resources/compile_shaders.sh @@ -0,0 +1,68 @@ +#!/bin/bash + +set -x +set -e +cd `dirname "$0"` + +shadernames=(FullscreenVert BlitFrom2D BlitFrom2DArray BlitFrom3D BlitFromCube) + +generate_shaders() +{ + fileplatform=$1 + compileplatform=$2 + sdkplatform=$3 + minversion=$4 + + for shadername in "${shadernames[@]}"; do + xcrun -sdk $sdkplatform metal -c -std=$compileplatform-metal1.1 -m$sdkplatform-version-min=$minversion -Wall -O3 -D COMPILE_$shadername -o ./$shadername.air ./Metal_Blit.metal || exit $? + xcrun -sdk $sdkplatform metallib -o $shadername.metallib $shadername.air || exit $? + xxd -i $shadername.metallib | perl -w -p -e 's/\Aunsigned /const unsigned /;' >./${shadername}_$fileplatform.h + rm -f $shadername.air $shadername.metallib + done +} + +generate_shaders macos macos macosx 10.11 +generate_shaders ios ios iphoneos 8.0 +generate_shaders iphonesimulator ios iphonesimulator 8.0 +generate_shaders tvos ios appletvos 9.0 +generate_shaders tvsimulator ios appletvsimulator 9.0 + +# Bundle together one mega-header +catShaders() +{ + target=$1 + for shadername in "${shadernames[@]}"; do + cat ${shadername}_$target.h >> Metal_Blit.h + done +} + +rm -f Metal_Blit.h +echo "#if defined(SDL_PLATFORM_IOS)" >> Metal_Blit.h + echo "#if TARGET_OS_SIMULATOR" >> Metal_Blit.h + catShaders iphonesimulator + echo "#else" >> Metal_Blit.h + catShaders ios + echo "#endif" >> Metal_Blit.h +echo "#elif defined(SDL_PLATFORM_TVOS)" >> Metal_Blit.h + echo "#if TARGET_OS_SIMULATOR" >> Metal_Blit.h + catShaders tvsimulator + echo "#else" >> Metal_Blit.h + catShaders tvos + echo "#endif" >> Metal_Blit.h +echo "#else" >> Metal_Blit.h + catShaders macos +echo "#endif" >> Metal_Blit.h + +# Clean up +cleanupShaders() +{ + target=$1 + for shadername in "${shadernames[@]}"; do + rm -f ${shadername}_$target.h + done +} +cleanupShaders iphonesimulator +cleanupShaders ios +cleanupShaders tvsimulator +cleanupShaders tvos +cleanupShaders macos \ No newline at end of file diff --git a/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Resources/default.metallib b/Frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Versions/A/Resources/default.metallib index 290123917056ffb3d8672e0d16fb903b4ca64f80..8eebed06d715f1dbdbe7eb813d76aa02cf90bada 100644 GIT binary patch delta 422 zcmZ2`m~ri4#tAJ70!Dc%=hoivG~K@2=8rFO2# zwwSuEcUj!c6GrRi6rKuf?EXD@BV)S4!5^#>rw2rRy}D*+qT8dCHV5|aS9i9@sBmrf zzpXj-3hQJGrfh{AA*Q8kjDm7quGzZSZa$wZYxH)B?T_+)0|(~^^#|`TZZ1X3M+1wy`5nS>jbGaFrCQnfC!=Yc{4oLrb9e?cdM!KK*8Rtz_ tvkk^B-)p-@0w`}47AUfk(J@ndF?X`DcJ|DPjT2`U&YZb&^ZYPAZUDPyyF&l~ delta 422 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 z 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

    9)k(R9{f{pAnq>T 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≀HZfEE`anfunlBdc`R+RgvwW3ObdbW3kBI;pHj#oj$Q z%}W+SB)2^mXH2EB-YI%w@qGD_Iv%YE)$y=+zQs4~#SW`wTvst$#MhwnMx1bE;E&Xw z#{lF3p7%Ev#a#IlzK>@q8BQkC_w2 z8yB*;$xYQlNVN!I&IZ6;5K=2OAc*MV5Lc;TsS;S)dTC(V_Omd4VLl7*0gQ+pyMRST z3SbTl>Eyk4g!L%axPT?A;6FKp|FVE3#Z{tZnC$J8{2d)HV;o7=*Z_3u(sLL7cZKxC ze-h!+n%0H){u(;Gds*iw(_#TvYFkod-}YVdo5G!4MI4DiP<69qO4% zGu}hQ`ZNh5Qbz|pOAWxVrgY zz7pFRdLAiy6sW0Qr=~ij(CprcP^YFBHBdRi-!63Ss?jtseTVRwi`ein_1;?)g_=VD z?iYnrmXmT(&qd5OuHLwJCHV=>rh6+$EfT4SBL-Cp zy3rVv=u9AL(TEeUmHNjGL3N8oH_L6vHF&3>pd`=0Ak|kbN!dO5a?i@YN-H3_72C%v~9bUwj z!0Z7xnKoiEvZHc0--~4DMoJ!sr`z(8Ooj$XE=$6BRG_r8tO(XWdR)4rV=Bd=ny$EP z805nQyX+RPxN$IrK^)mRZij7TA)2E4TK$637UL4g4tOtvQtBhXOj}S#*N8pRq>k8A z2=x)$j&E8#{)(^?8u!wfdFp7)lpDM;?bIRAJQw1@DV&te6?tD&^B#ufmB&v|{Rmz2vX!rABu&PGoFy}gH0|3)N5mN^~ zyEQdN!uB=ja2g7yJuQs{ai7|Ye6#rWYgm3@(>bhCt$p~+dKUTcwJbSSP_}cBYG&Ok z-UL#Ku8ikh%gjr1MyePu-30o<+2#Fc3!9}TsZzBnB@GR6xDeRDCcx9|5Off~#l|0& zP1W8*DmW#S19XkH)FX9ZC)trQg+K9Ga;&xNr@-tRfbpfE)5W04rLCQF|AF7d7dkT| zOg#H~s9g8)%dclc<>UOG>)CiG=%5R2Kf(xxN=-xD512W)PIqLGHWX)IxjQk&@jJzp z025?$5kU~*9wmu`*iKj3v86Zx&DAUD1zi#Bil=Qh;_E3M_0mjy=1marT4`oobAtLZ z-IIujI31W%jKv>pYbTUXRrd2HcRqY&z|?vd#UrlC9-QGGi#V8CLz86oTxA6T!o*sg zt;3JU#w7_1d9AdOebu#O?T6iKNmyULyp%;6-z55l?GwMhlto{?djVb?ou_)_rOIgx zXg2ua?{C2vhb6tI^}}f)-l)a(R$K$WUG3pScpY}$E_FD6p-pmC(JC&NF>}~xie884 z-__`4d|(-4eMtQ{WFVK*fK6C+|_Yyyr;Gbj?e zkVqK0=3umsk8j5FPiTEAM z@Oe_eM0#GK%8jt(fJGElet;^+xZi=wS80{g^;1-SbQ9`shQL+oRddyO`;ILt#SkS2uuuM+eq>K zv78vzz#$h9(x{OU)+uCQ;(eVa2RtGp3l}Qjeb%5`B zpU=FV4T!JzVxQuo(~%S*cXoAox?aO6BftUu>oqI^SaeW`v8>X?{n?14v0Q*qAImER z_!iGNgkpn`Mx&{V*5eWDLWx3z+cfk{5hcu?A-E5*jwSGeH?ibv#70{iIw#9Jybge62y(3I0})#S*6LmjhcQ7;%9ulM(HR0b4x^|v1y z8cKWtG~`zoHVG7t-3_ld9_v*!Rpv*ePCc=PwM19;sEyz85OZCucwh-)qYBjS2p6jX_8mQf|H z3+SmYai#TwD%z5WUXDU#k{5A3%foJA)<4r$XL3*4nyOcjK+t%hsR~f}($-qU5t=q2 z)X{XWfZpP{ks6HaL0HR>L|9slP{-13BD>kM;5{O&%-%868mMAsw#ckv=IcNeGwxn6 z^R>pty{BClWhHGXSBEnOFfmUiSGjW@IE0 zW`Yswm@$d$X3u{Pt5a_8t!(r}-zj$+V4*4ZLBZUV#rJpj zf}^g9b_J^No@fV9{iPJtEt3e#$=~;w2o@((;6YW8Sz7wq) zafGOC2z5j~Ci0s->kz6F4bK;cfg@PdOBeu&@Kx-xTl$y(H+=ovrzgG^q54bV>(!*5Gp-9?pP~|Pd=;P) zUwmaFj_{R-P{-Fed=tJDgueJnLmc5N3!#p$5hB0Y6OB+~Oy5CHwXJ6U{@1(*v31y^ zNw$1qhr0xGj}VyK0qAN#X+ffNguvY6h^y6@JG7m;0tI_a(vFHfCa+n|Y(dbf)O&3_ zdGl&0?Zh%aJ&E^Q!>obcQ+1logRY}CRb9GR(vQKsgdT18X4P*Yjxh2eLLDRT;hQk> z(jkc-|322rO>P$TCy6BwwY$)xIxRPeSY!H#y_NY#>Lr$^mDr7XgVx1G2BEMw7kP}& zxV<<2+BUG~Xm_pMp{T%{i&Ov#UoLVJ;;3)8Bh>r$7Y*905sI~&)M8z0_aem7c$Xp6 z$NPFw!t9yOhupz({)C2q2dHS6AhN0I%3}d48t&H70Hsi`Xm}fiz0r_;2{hd2gNCkU z#)AsH(GUkHe9>S+9HGI2P)9?U2JJasaVN7Tx9P%5`#}`}en{65Ac?$Y&vyrT`W+Bn zKF^6aSaH?KKh&D`m z6>9+p4byFaQvv%Ul8iUbgKsMe4k-jfOw+Q>k;a>xJKl~JvcE;nS8mEnOK`Q z5Bk(!dbR+^Z)6+Xq*!~^2q z#-@rNuMRST_|h;G4+c2ZK%NIRY54f%Y}m{ z*G(*75V}u8-*G@ig})anWDOPHBaQ0jE|f}Yds!<&(S+$=5vrJmn1FAp?i0S3S_oaq z7;E$1yIccM8o}-ki;Suewa8xxQ8xq=@<2kh0(q8lc$c1A3*>EB>)8A~poY-9#|6L2|_2(7CS>IA$}WVd*(LdYFX zmeZ3WTm4juoGr4c6#2EEph%;e1`*ta-?*MdC-g>l&#<1;t&8s7MYY~^HxkwNK#jxZ z-i*SRM9oX6z?<%vFKU8OBcUb=p^h4h=!DtxJAd(RmXPX=n&015Q4@eHI%*6eJMMCE z_g}$I-e<83{qT;q0dEbfx2Cb`x1ICaAKps60tJ47%5-7%Cd9S&*dIm+;cEbp=OT&( zYsSNNK}5fs;v0iqxV)Eiope9$^xCz#1-tk`Qdz6wC7qIB;mU2AiP zp#sv_c~5DlUdb?2;(++C^MviFBnB0Dv--awjAyi|6KdB~_3SyT?B>#)}4(46hgYRWj@_sATvI4HJ=J)xDP>!##t_h9Zej z6o*hpQMAZz@m%D4@1rCAO)QS}SUMjh7(jJrg}tY`bZ#&R`6ez0xUoURFI_UBi;sB^ zdRIqQp%Mw(X?@VY7p?WSgpT$>X4ewB097=4(an2+$9D;R4RO@Lw-M?c+^4}^OHF#= zt`6~pyPXJi+`TCB;_*MeYy%tB6Awum9v;-{BXQTR;=%kOA(2D~!zDzBP@n!+T(bY4 z*n1LFSO3q*J^Oz>;PCDLT*OiT7bDdBzfglWU-Z9Q(wl&I>i?J zW;u%+2q0*;(FgSr@L>pb;QNU-@cjDQ{K0aTmINlzgg(kdQVph;IWv$O@cy#I&g3whiIat>k#Ucv_xbzdkWsx6rK+s73S0QajI2LwrX8aMb-u5{|0Ti4adIK(1znSqR@t4 zLCYny;gpzT!!f#dBJQq|fsXh~bDy6{Bnoxt-$0MVgxErF*# z02PYi}cvz1RoY@p>grR3fR1rl_P1CVIShh=N<*-^B(yv4nNu{8Jg6BnPWB1N0ryVZ;&Qk0I0%e^lf*dm0e7AisJf4XqjMAmV_^;)t{}VYqh|YU=JVVFY3#h-wtK$i1 zTLIQkEj-T{%QM2Z&G#;mEln_u&aYE{v zL>T)8p^mYWBD=+N1R=@#xrtu-uVR85oce&sq>5Mz5I1W*i%2j5R}OH%3gCqroDFjm z-&xt!ktrx8dCkh*`+Mbn!9E!5;(mis-kbY94v2iY-$uky_Z~*5cW<+R+~QfYzX$ib z9nplidl2e~TPL!bJ*E3q?sxgaEZG^45z>ia4F>;q=$+=T4|XpA-@0S{ShrX*epR1b z8-u)OpmQY$MLVVT91`J|!SX0|D>{o(Sxr0EF=Caa zKJiyVg0pxbLhmR6UH)4q%n$Gg1zJp7bL(yoY&*ciVJ>VrS%KqD%6l4j^r|`|@p3DE z(3z$YVI_Jf$x=9P`wtxa-noTE^ZG}bzw-<>Q)jW6B2vO;s>ypZwfG`D%7Px>-A6R8 zYX0XVuC>QzO0|kIVoum_qq;OdZ%u+6SzdvWD4k5-5#=>FcQ1Vcx6FqV0?5Hzq;PWq ze(O92KPs7ZQ2iKT$c`SKGTyW8(bD-+$EtjJ&25wAHMNGwv|5mIHU73CUn|^wZ!;Ln zD@Rnu;%V89U1jD;9i$)VjlcS16toEs$xEo==cp1G|KMnHP}gFnpmW7u^Zy}qoJN8+ zZxlKK7r9GvUJRtTA7*qB-}5&IW9h)&;Bm<|1h+lUr>iOPgI}|?Z=4g zZD?txf-7d1-r_a1tJI+dNvT7d^{1g-c&rga2HN{*)h!sxRq~oT4CN2dwSSDi0lf@m z=@NC*P1x#f7}pQz8b%@P4b@TpB=yD%1<<5QVprqi=KhUNAWibXc`Z z9UbILF(1EkB$rY|>mhL5q|0b768vCC6|UmAUKgnCz_CEr2tYz}wUmAXT~7kaD0Dx8 zr#{Y@;U4HnA7=ybxCySP9Ript>$>(8?;XQA+@* zq$=u&0U+AS+C@Quh$9LLN2pU!e*v(?bEc6mhvrP*SDb|bDj`osvW~oqh$901rcqs4 zvuapmPuB}HhL(FKcVHs!tb{y4l;QwoRKswt8n@o4w128lWMv&_gd?}UaOVJjsg3x) z@kv-0!Y?@0VS>y?;drb}eL;0WnCyMAqr7p=(%suorwet$BoYRA&Y+VeSe~e-B&q)b z;bj}Fk*T2{Q=kFT+~$rSaFP2qIGY+o`fqVKH)WFhp6%G0_%vP!6EZXo$AhNwsU+QD zA%z8JWBpdMaJE=qO9@XkTMH_-33hB_y1O2ScHyp6YA8RyTNwlho2)kt%} za+7Ah3p(#t!=pBmdzR7s!gh9zJdT&_VDmD)JY>YTQ!kBg!+t$T${{dQ(8E=TJ8&o? z*9JONcXMK^m(0VTWD)*278RSjWd7g+7EXm!SH{@U-4RF5d*Gf9=*GB+d92Ia&kFNC z7i}Zzp%LI)pJX!%?!gl zLi&nN;WM{$eG&M4`C!Cl_(^N1tPy4Lq}>{`Nm@fBggSCtk)MvOVi(tKo%%P&$PFq> za@HGx)>g=Iv~=o)ac62xf;|H!;nG|xWJ00Tfp{ke)}pDXa4IVFu8dyfDBh7WZ3X~J zxVF!V=TNTpH7L9KHGedIukmCFSOo!6;8m_5S;}R8vm4iVTWi&JcJjqY&{2;I964)X z%t>Tcu!Xpsv{MI?diV;)JPHFR;cqC|giYr2>TqPf7{gM#e!dtIZ|^TH;7@$mz*yTt zy%r<7)e7*tew!NC5O+M}-SvRRHRBQYJeUrpErT=VuKY-&xWgTtbH4;3OrfE#dL3>E z+6v-BV-H|Hbia@o-|mD}Dv40P;gHP3B5wervHS(Vp990K#aSyY=XAS!OM;0VZ;Fro(UmFnkS5TNhw>2{2rSP{P%qTFfeQ zS&nG`3iOL+)gyqx2C}9;^3Z2lbnw9^Xm|u5O@dqaA4~_@KI;>g!WTZrLbG=Sx95ed&Ck!Xzi)d^?POdw0eaGYzVj%~4|gvHibDGG9nY~HPBLBo6mm<7 zId-EI;Milc+pIEB4*ybnBz$iNszh3dV~+#Bu~5%#KZIF=ttU-}1G1E3#IP6-yNV7X z9&U|Rj0~%c?Mg@2uhY7oiLPIPt~=26zks+=FAscyg$2f<&ko={;RR-opDMa57(|md zHI@J>-u!uNieXYZFM5GZ_74Fpyyn?BOIK?&0~EAIGvK#}fp7yq^a4u^_zYv|;HO?- zEI7~?o5nz3vva@S5q@(5JobSHg*)TgB?si=aClURmNHkOuionGXWAj_K}zbsN0lT< zX|n@yrP{`?6oxp9vpV_8{Ji!nvF(Y*79ER`u)k@BN6p{hl89rOe$V59iszeoNIeV8>M-M}D~KPh3@bZsKpcD=RYC;W42$(*#9Ieqse;3Y+wt8e zTX=@be2q`7XY`8U%6gU)A6st2@b1EH9iA>35#hIaet}qBm(!_plSa!WBT#Eb73c9Cy^5@qF!Y@ob{Kk_15iHBiAUSfmbYdrTQ78i)M zwn~?kGeLA!v?uxP+y!BuMa`3teeLV?YU=`GTs=s|t}!kP{~{pXI2odGl`a}jMiG(- z=OEN2!kPFcs4_26oejQ9_@^9(-fA1J*#5-SR@5?p({hchK zZ)g2D~Qv_m-3cgDX(ne?rg-!qBXI1^0i@}}rVyW%~=sCY2 z32CIjuy{P*bn-r+iXZT}36sR26}f?IW)+bHvjpfOTB&6G_L^q_5PZtws3uLLBuq7t^oyEwx0;kkNw}&al9CAL5%8fyh=MS7 z;Z-)F=m%KFq_(8FbJmo$Psh|w0U6jZ8U+Zg2=NY3{ki2S?ny{%gvi1@+Gs+Vclrvc zZXb>2bZXS>*^BfOU-M17S$>3CZ?Zcj%(yWUSH(#h8O49t&Eg_A4aU71L&U}sgJt7s zgXQo#sNJdt^VkM9BIKc?syh^0`Rb9I_*D(8-2Xac=dP8Cjkh+i%SP1Ox1^voiznf0 z5HaxB0toEisBy7~YX$;E-1JnDFM=<7jV%hVw^ymZPaOwNu&&t1?<%}0zQ*E^_@0{B zLW$UbNPPG|alL!kKiSOGz#LtaD%-7kdZf8xybJF~jFnatoW`X=;wpRlzWU5R*$|nH z|3ZD*LP9R`&|Uuf1-=*O4E7YoO*ctz!0&Ufv#Dl9%h-%e#2IEI;j%rbVji#9!=^aP z)8uM7T3SO>QubHF6o-^Hm39|(Q@ZXm7UFjy{9;VgF3}MyPu1=-QrQR1D zeJcEZ=oS2_vCn&C#$)!~dBK0X8spF19vdBScjCn;L3|c|;iKee2UPOj$IMUtrXKVJ zgV>19NoLrFxJpfCsD#Xrflcc?V8qL70IuZQOo*%Ux|KfcEv5vC9%A1*)65sWMV`>K z#WEJ%Y@@aEdQ@J6x4(-Q9Ci#rxSaIVXmPgy>tdH5W=EOJx^7A`bJp>;7&8vgRWCqZJS<22d_Vd z^IzU(S>4@@*1CJ~SEws#H%PzH-J7`m04}Uwj-M~1hs4OP1k|KAx(1=DH!^#QMNiD0 z$&@`gUY@b>@4!Q0H% z&%4uq3Foi9%ZC5C)A##y`U0=;?eurAsGUBAQ1A3F_$GvWEV2t{6QRQaaxwK>LC>)& z@W&3YxpELcb$~_re`~!6&y;XI%To?AN0i`96$OI(^uH7OB?L;FAU~PI^5y5K@nNN>p~(1<)>0 z&jiuNRG&2XLelGL#zP-H>dEzi-L7^_?X}$}F=8Tr`4GDj+E6)|_dm?$$SZltVV1A- zuy=Xtl)7OE)(|fyKjIcYz#_~uKu8Ygsy7$q*MX0BP2_RffyskZ7#b;1b`w!{=Ps#w z7}jv;HM-7xUBvI8p1v}ylcNqSTf*KW78~d$Vg{>GhYdOmy^bGH2VHEy?CbK@@+sno z8Js|^4j?o`+sT{XW8;+`MjMj= z3eBJAMOKxEI1ooC-U&pRHAdBH+-D<;X19^ETlGR3| zX0_28$}heT=Fx>79mVI{z&y~5j-F+JE$R{|ekZgiiot*cioZi0lGiX@!N-2cm=g@B z>xgO`swDjCH^mUMLgXYZvP3 zoFH?*_gQ?;0eBvO(f~w=n$!WPMVuIbc^CkfHUR8W1Au2Kdf>Rn07(C30A`2sMNMF2 ze;R=6dZf+p*+m zKK&CmNa;gi|4m<_rESNkEUM&TQ~Y(>&ut^jIG0nBWxW*sAKCWzKMJq zs7d%s(^u5j5Kq{88=;P^eIhUJv2*+9tdR8}nGCc~B(qh^L;X+xg+KT?i%j?eIB|et zUOwSyxD{L9+VAjMqe1Ew6|p|3*m!AF91rQ8a5{hPNjNtHBwxZ=gg8P)8A2Tu*9*`s zxEa?I6*CY|sJIfLj*81gUL4U8Ds24BzgR{#QBU`YL0mhrI8sZKA~+CNYKpM~I<^t0 zz$?%PH>p09PU1A--^>~WUpW>NUL3FUUGco>&KgjJQuXr@s_LcZiDR$7H>ETXX9V6{0W=GJ2@%-Yv7&<%7G^P&J6dx zIOd^aI|(|}!DuoPa*>|q)Y7nF+W9H+pL->P@Bf0O4!l`Q00r-CL8IhH=H`E?4_-Cn z_>Md<-@wDZgv#dzKJZJ%ERSplQQ?`}RTym2Y}Dg7Z~7-r)mDGWVxlEHw1Vx?X&ea< zH%VG#aAqqzcUNIea7%pU&2+yJSLpca^)*FNiRkx3FHz`!bvc8Svw1;*p%2l zXan66{%k9(j*dq(f3`NpPkhA|8KeFnr$$gOoqw4{<2@5;SK64HH;u=2B?r6#*^Ssk zBh@sfc+;VcjUVCFyOR~z`=yR?Y#N^%bjprz@>7!O59h}?qL6^No6mz0Vl1f-?w}j5F(wKTc9*0)C65n9iGrR2mO8#m13*B zlk}E5KUbY7MMHaX1)Ks?`bDIZCzie9&8kSx)A$XiNXQ@IsnznIi`*9b9aenmP+yEP z0Yre2^9=Pn7XFSPX8c^EdSCGmz-u&qQ9;08IIn*R<`{dLS;na3W8xLvA}JC2E-3wN zI0H{aT(KR$GbFbIzpeP)Y$LsDgy%Ei6eI$7*mzP49<7=C2@r%ld1!kMz9~QWLeWfo zA2_=N53oC5qH;T6bF04rNBz#f0{Yz_^BPP$F(8f|w&j8ik1QN z=6Glbf&Ahkxg*+U%1ua-@jOa>xUtyK5M5<*=0-YMiz590D@~-#qLpyHSFMdaO zJ^~V426!xrrh!u*OnUF=C_orRn6Y@?gAoOV^fb8xarD?lF|hGAFhPou)@vMe9+91b z-c=?_xxD6E79I8lsy`9uYN#O99^S*9!w-JT6sLQH+XPxn#ry5hf~&92Y|n8A!4Gud z@HBT>qD(K&G#U5$Q@*Cul1O*y-viaSIZTan4@8_%ja!kV##IbLoJoy4HAIaIOLvzh z8q~P$!`+~!CTIDa95kXmYxAN)8QW5~`@73`1W?8{qk9l#Y%9-0K2M)IkzOJIY%6RT z?Jj*GsIJV@w=M;pFt!A^OYxWtVcmZCz9ReNzu&S%!?HbfW6}0Qo?8~-_kn}=6%{1? z{T6wzvm}f%U!`T*i-bHRT#nzRC;GUj;yBcHuyL#;yT;pU z+wifbTMdWFy@?QqwfvEC3 zLqkbXUPm!)xj=qiyf>)R_s@ zdps=fpRgI7e}SteIyp1W&g)1;Croxsh*Y^F2ooZx#L!@Jn{rK$;O|@f4aa<#f%!01 zrl-A+)zTUAZFwDa2vgVOb$AdK-j&yZrzG0SH{^8~6}e92c|gnK&g%#oY^W3Ywu^ku zw(_Sbqo10wPRsZ_W%O4wzNl5Whw=re`Sxo0-llwg)O-iEeD71fKsDbHE#D`Uļ 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 Uj(lHclKG`Od@uhTx3&5I0DWK*$p8QV delta 1254244 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