Log

Author Commit Date CI Message
Sam Lantinga 3f1fd5ab 2023-05-23T10:59:03 Updated source to match SDL function prototype style
Sam Lantinga 92f72682 2023-05-23T08:44:49 Document the Android SDK versions checked in Java code (cherry picked from commit b48b1ce50042168c5b9b310fa495cb355903c241)
Frank Praznik 891c89ee 2023-05-23T11:15:48 Fix unused variable warnings
Frank Praznik e2b8d965 2023-05-23T10:25:36 wayland: Validate surfaces and window data before sending touch events Ensure that incoming touch events originate from valid surfaces owned by SDL and have proper window data before forwarding them to the touch subsystem, or the window focus pointer that is sent with the event may not be a pointer to an SDL window.
Sam Lantinga 78a92b4f 2023-05-22T13:54:15 Fixed duplicate Joy-Con controllers on macOS If both Apple and HIDAPI drivers see the controller, HIDAPI will be preferred. Fixes https://github.com/libsdl-org/SDL/issues/7479 (cherry picked from commit 61ef4efdfae7e384b0d24b1b171a9ee6203a3f0d)
Sam Lantinga 7b2b99a9 2023-05-22T12:41:03 Fixed handling the Saitek P3600, which doesn't use the Xbox 360 controller protocol (cherry picked from commit cf0abf99118f1ea5ba423ce62950e5840db2c649)
Sam Lantinga 0ad0347a 2023-05-22T11:51:09 Use numeric codes for Android versions, to avoid SDK dependencies (cherry picked from commit 3f6b2d1a61d0c0dcd6af7cc951c1d8c267ed1526)
Sam Lantinga b6d051e2 2023-05-22T11:54:46 Fixed reporting backspace key if there is no text in the edit buffer (thanks @312937!) This workaround isn't necessary at API 30 and above. Fixes https://github.com/libsdl-org/SDL/issues/7039 (cherry picked from commit c971795954bc85086cd20cfc71b45a311b7ba0d1)
Sam Lantinga a2f4783e 2023-05-22T11:30:42 Don't map the top keyboard row to numbers when using the one-handed DVORAK layouts (thanks @tormol!) Fixes https://github.com/libsdl-org/SDL/pull/5127
Caleb Cornett 2001a891 2023-05-20T13:09:46 Fix Xbox link error from IsRectEmpty (cherry picked from commit 376a3cd100a3d59e887496c75a1ac49ab4a2d8ec)
M. P. Halpin 1ee9a437 2022-12-31T20:45:35 Stop beep when running iOS apps on ARM-based Macs (cherry picked from commit bbf38bbbc334bc0ee90d3eec228a968d8fc1689e)
Sam Lantinga 69644346 2023-05-20T11:09:36 Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control whether the on-screen keyboard should be shown when text input is active Fixes https://github.com/libsdl-org/SDL/issues/7160
Sam Lantinga 00b87f1d 2023-05-20T10:27:48 Make sure the sentinel is at the end of the current event pump cycle If we're waiting, it's possible to not get any events, then add the sentinel, then pump again and then add another sentinel. We want to make sure we only have one sentinel and that it's at the end of the currently pumped events. Testing: * Verified test case in https://github.com/libsdl-org/SDL/issues/6539 * Verified test case in https://github.com/libsdl-org/SDL/issues/5350 Fixes https://github.com/libsdl-org/SDL/issues/6539
Sam Lantinga beca4148 2023-05-19T14:26:37 Undo name change for the controller list (cherry picked from commit f60622c5103e37f221aa8252acfa9073cfbafbc7)
Sam Lantinga e8ec8ba1 2023-04-27T17:10:44 Added support for the Astro C40 in Xbox 360 mode (cherry picked from commit a4b4dff4a2998699757f12d29fdd4c632db884fe)
Sam Lantinga 43b12fd9 2023-05-19T14:22:35 Moved the controller list out so it can be included elsewhere (cherry picked from commit 24007b00b2a5e9d09d953db79a24dd51b78e598b)
Ozkan Sezer feeec908 2023-05-19T17:00:24 test/testgles2_sdf.c: type fixes from commit e26e893daf, style clean-up.
Anonymous Maarten d361acdd 2023-05-19T15:24:52 testgles2_sdf: build with CMake + fix build errors/warnings
Ozkan Sezer 92a487f2 2023-05-19T14:10:02 style fixes for SDL_PROC macros.
Ryan C. Gordon df9d0fb3 2023-05-18T13:26:55 power: On Linux, compare status strings as case-insensitive. In case something reports "Device" when we expected "device", etc. Reference Issue #6835.
Ryan C. Gordon 4a0b9522 2023-05-17T20:06:58 audio: Load .WAV files with format->blockalign==0. In theory this is illegal, but legit wavefiles in the field do it, and it's easy to bump it to 1 for general purposes. Formats with more specific alignment requirements already check for them separately. Fixes #7714. (cherry picked from commit 2e646c7141b3009628abda2a964ba5f9d1702e1a)
Ryan C. Gordon 32999798 2023-05-17T19:53:36 dynapi: Accept a comma-separated list of libraries to attempt to load. First one to load and have the necessary symbol is the one we accept, if any. Once we accept one, we won't try loading others. Fixes #7613.
valid-ptr 424bc4bc 2023-05-17T20:07:22 SDL emscripten port: preventDefault should not be called on mousedown. Otherwise mouseup will not be fired outside iframe in Chrome-based browsers
Ryan C. Gordon 0eea92c8 2023-05-16T14:38:44 blit: Add a case for 8-bit blits that sdl12-compat exposed. sdl12-compat can get into a state where a color-keyed surface is marked for blending, but wants to blend with full alpha (which is the same as _not_ blending), so rather than fail to find a blitter in that case, it just selects the colorkey blitter. Reference https://github.com/libsdl-org/sdl12-compat/issues/233
Sam Lantinga d42c303b 2023-05-15T21:43:16 Check to make sure the Windows joystick device has buttons and axes This fixes incorrectly detecting the ROG CHAKRAM X mouse as a game controller on Windows 10 (cherry picked from commit 642504bc5993a6acd4d9c1d4c1314c6b1cf6e4e1)
Sam Lantinga 237348c7 2023-05-10T06:29:35 Changed all variadic macros into fixed (thanks @Wohlstand!)
Ryan C. Gordon 86786ed5 2023-05-08T14:25:01 coreaudio: Flush/stop the AudioQueue before disposing of it. Otherwise, a CoreAudio thread lingers forever, and coreaudiod eats CPU until the SDL process terminates. Fixes #7689.
Sam Lantinga de937286 2023-05-06T08:44:19 Removed redundant __powerpc__ check (cherry picked from commit b6df25c33497388f16a4ed2af896ef14277c8865)
Jeremy Rand 5e74365e 2023-05-06T03:24:02 SDL_blit_N.c: Move ppc64le swizzle outside of loop An in-place swizzle mutation was erroneously inside of a loop, which caused each consecutive 4-pixel vector to alternate between correct and incorrect endianness. The bug was introduced in 715e070d299fc547cce8c52915b75e6316af6bff. Thanks to RobbieAB for reporting the bug. Fixes https://github.com/libsdl-org/SDL/issues/3428 (cherry picked from commit 9142292f4ad6d9bc8a2bc7c874e2fde54befeb9b)
Loc(Elliot) 3e64fec9 2023-05-04T19:26:50 Fix bug memory acess Bitmap is not initialized before use, that cause segmentation fault on function use it. Fix by allocate memory before use.
Sam Lantinga 707e9397 2023-04-30T21:38:29 Removed memset_pattern4() from SDL headers This requires including string.h, which isn't always done, so this commit simplifies dependencies on macOS Fixes https://github.com/libsdl-org/SDL/issues/3657
Sam Lantinga f72213c4 2023-04-29T17:09:17 By default, OpenBSD uses Linux controller mappings Fixes https://github.com/libsdl-org/SDL/issues/7609 (cherry picked from commit 255c3b7c82968def667da860cbda01f267b4edf1)
Frank Praznik 132b8874 2023-04-27T13:06:00 wayland: Destroy proxy wrappers and callbacks before event queues Destroy any proxy wrappers and callbacks before the associated event queues to silence libwayland warnings about destroying the queues while proxies are still attached.
Linus Probert 8b39eb9b 2023-04-24T20:48:42 wayland: Fixes a memory leak wheere primary selection isn't freed (cherry picked from commit 43f65a6ef08a502485c6107b255a9b22c890acd5)
Ozkan Sezer 0f2322ac 2023-04-24T18:55:14 hidapi/mac: replace sprintf uses with snprintf. Reference issues: - https://github.com/libusb/hidapi/pull/509 - https://github.com/libusb/hidapi/pull/511 (cherry picked from commit ae9119c36bdcf2214d83c6d35c436d22b5fd03cb)
Ozkan Sezer 5f344c17 2023-04-24T18:47:04 hidapi/mac: import mainstream commit c1b9d2ad https://github.com/libusb/hidapi/commit/c1b9d2ad985c826f7916aa793d4728885a43a0f4 Properly handle the close of run loop on macOS (https://github.com/libusb/hidapi/pull/522) - as per documentation `kCFRunLoopRunStopped` should be handled once the runloop is closed via `CFRunLoopStop`; - if it is not handled - a race condition/crash may happen on the latest macOS when a device gets disconnected while being open; (cherry picked from commit 62d1a2c836c6176a6c76d54229eafa7d011bb9fb)
Mingjie Shen a688ecd6 2023-04-23T00:26:03 Check return value of SDL_malloc() (cherry picked from commit a4604cb0d616db97921a2674a63b45f3fdfb81bc)
Sam Lantinga 120bc77e 2023-04-19T13:10:39 Report PS3 accelerometer values in m/s2 instead of Gs (cherry picked from commit 0467301baf57389d96fafbe169fb07f4c10169bc)
Anonymous Maarten 535ec1a9 2023-04-18T18:46:35 cmake: allow users of sdl2-config.cmake to not add -mwindows to the link options
Sam Lantinga 7ec9a438 2023-04-06T11:33:27 More defensive coding against dangling device pointers (cherry picked from commit acadb6f873acaa0de094ad10a88f877d540ce0ec)
Sam Lantinga 6d726981 2023-04-06T09:54:39 Clarified the expected sensor value when a game controller is at rest (cherry picked from commit 1a20ccb2897fc9b12ad5242f9128cb6bb60368b1)
Sam Lantinga cb0cf141 2023-04-06T09:54:04 The latest Armor-X Pro firmware update fixes the sign on the Z axis of the sensors (cherry picked from commit 558bbbb07ae0afa0108c1560915351cfa13442b7)
Cyril Dubet 7914234b 2023-04-05T01:21:41 Fix key code names for ISO keyboard layouts (cherry picked from commit 60dcaff7eb25a01c9c87a5fed335b29a5625b95b)
Sam Lantinga 51dcc3bb 2023-04-05T11:37:27 The macOS minimum deployment target is now 10.11 Xcode 14.3 does not allow targeting 10.9, the minimum recommended version is 10.13 and the minimum possible version is 10.11. (cherry picked from commit 73b2faea4e39aa27b4142f9d4d39f5807a3b3688)
Sam Lantinga f6363fde 2023-04-05T11:23:28 Fixed crash if joystick->hwdata != NULL && device->driver == NULL This should never happen, but we're seeing it in the wild, so make sure that we can never call into a NULL device driver. (cherry picked from commit e13b74ccf0b20a20bd4baf1617bdc4f84c13feb7)
Ozkan Sezer f6339154 2023-04-05T02:10:56 fix build after commit 22685556e5d9fc2e2a7023075e51b69fe770e64a.
Sam Lantinga 57043825 2023-04-04T12:33:41 Fixed crash if dbus can't be initialized (cherry picked from commit cf2c6fa58dea02edb870cff7090fd69f3dfbd081)
Sam Lantinga 22685556 2023-03-30T07:36:40 Don't probe for PlayStation controllers when we already know the controller type Fixes https://github.com/libsdl-org/SDL/issues/7556 (cherry picked from commit 655a07bdd88d6bd19fe97c3abd39a2e2eef252ec)
Sam Lantinga f444eac5 2023-03-30T07:25:49 Fixed analog triggers on the DualSense controller (cherry picked from commit a67d41050164e447048fa55179cc31b23be9d9b7)
Jerome Duval eb0d214c 2023-03-29T21:28:21 Haiku: use a BLooper for events. only create a BApplication when it doesn't already exist.
Frank Praznik 55f74c32 2023-03-29T15:16:59 x11: Don't allow the changing of certain scancodes The X11 driver uses scancodes derived from keysyms to map the scancodes for extended keys to the physical keyboard, however, this can be incorrect when using certain XKB options (e.g. caps:swapescape), which changes the keysyms emitted by certain keys, but does not imply that their scancodes or positions should be altered. Mark selected scancodes as being non-remappable so that their scancodes aren't changed by toggling XKB mapping options.
Wohlstand 2aeac8de 2023-03-30T00:40:46 include: Fixed a C++-style single line comment. https://github.com/libsdl-org/SDL/commit/78725dc0cd8502a91d2565af44ff9e6e65f0f30d
Stephen Kitt 6d01ffcd 2023-03-19T13:45:36 Split up CFLAGS construction so it can be overridden CFLAGS currently takes care of two aspects of the build: optimisation and debug symbols on one hand, the include path on the other. The former should be overridable by users, the latter shouldn't. This patch moves the include path flag to CPPFLAGS, which is appropriate for pre-processor directives. This leaves CFLAGS with only overridable flags. Based on a patch by Roflcopter4: https://github.com/joncampbell123/dosbox-x/pull/3850 Signed-off-by: Stephen Kitt <steve@sk2.org>
Sam Lantinga c2ee45f5 2023-03-28T15:14:00 The Xinmotek Controller is used in multiple products with different mappings The mapping included here is for the Ultimate Atari Fight Stick (cherry picked from commit f1099f8e70a1284c2ee3031f2ea0cfc84f22110c)
Sam Lantinga 0bf63175 2023-03-28T14:44:28 Fixed gyro values for the Armor-X Pro controller (cherry picked from commit 8df7b4d8539338121b1e34e29f331b28f1f4ff05)
Sam Lantinga d043c853 2023-03-28T12:28:15 Fixed the accelerometer and gyro axes for the Armor-X Pro controller (cherry picked from commit 37517557ae076cd94acd9ca3b739e1f32c150a43)
Anonymous Maarten d2a27877 2023-03-28T19:24:33 Fix remaining -Wimplicit-fallthrough warnings
Anonymous Maarten 85fecbb1 2023-03-18T20:47:24 video: fix warnings about unused variables when building without duff's loop (cherry picked from commit 0c3777d5661dd0bf60ba3db634f79c2121371092)
Anonymous Maarten ec3e333f 2023-03-18T20:34:56 testautomation_audio: fix -Wimplicit-fallthrough warning (cherry picked from commit 11c70406c322b5686f35349acc9659c4d8d5a8f7)
Anonymous Maarten 1402d135 2023-03-18T20:34:38 video/blit: fix -Wimplicit-fallthrough warnings (cherry picked from commit f7961b7c9ad598b031cd033f19e93c6d882e8e41)
Anonymous Maarten 03c239de 2023-03-18T20:32:14 testsurround: fix channel names Used table in include/SDL3/SDL_audio.h as reference. (cherry picked from commit e1b8a032391f4b24453d5bcbe725a35b3894ea5d)
Sylvain 16c9bad7 2023-03-28T09:49:45 Safety fix: clear "_this->wakeup_window" when destroying the window (cherry picked from commit c838ccf0e3a330ebbcf433698b8f5370c6fa80d6)
Sylvain 6574e5eb 2023-03-28T09:48:58 Safety fix: clear "_this->current_glwin" when destroying the window (cherry picked from commit 0c048d98af449f1bc540e256c90eb792f1effff4)
Sylvain 4fa21ee5 2023-03-28T09:28:17 Fixed bug #7515 - Window still grabbed after destroying
Sam Lantinga 8bfbda1e 2023-03-27T14:27:22 Fixed the accelerometer sensitivity for the Armor-X Pro controller (cherry picked from commit 8029a767eef4147c07cde965bd5a2d2e11e237ee)
Sam Lantinga 93c289b4 2023-03-27T14:21:05 Increased precision for PS4 sensor data conversion (cherry picked from commit 3340864786314d77e04a0dd2bf1ebffbc43bfc31)
Pierre Wendling ed5a343d 2023-03-27T11:51:19 SDL_hidapi_steam.c: Fix compilation under c2x. When N2935 is implemented, the enum breaks compilation. Use a #define of the SDL booleans instead. (cherry picked from commit 975039ce0d3587c42e11f2922240957fc8f74166)
Pierre Wendling 00811746 2023-03-23T14:04:24 Fix clang-tidy error on LLVM 16. Starting LLVM 16, clang-diagnostic-implicit-function-declaration is treated as an error. (cherry picked from commit ea093378a29b786edbaa265045638f66d7f83d8b)
Anonymous Maarten cd64e0b6 2023-03-26T16:31:18 SDL_blit_copy: Don't call potentially FPU using SDL_memcpy in SDL_memcpyMMX
Anonymous Maarten 51c10bef 2023-03-23T06:56:44 cmake: disable warnings in libm + warning about EMMS instruction SDL_BlitCopyMMX ends with _mm_empty(), so the MMX state should be emptied. (_mm_empty is the intrinsic function for emms)
Anonymous Maarten d1dc1952 2023-03-23T06:45:19 Implement _intel_fast_(memcpy|memset) The classic Intel compiler generates calls to these functions when building the SDL library with SDL_LIBC=OFF.
Anonymous Maarten 5e5b029d 2023-03-23T06:08:25 cmake: add /Q_no-use-libirc flag when building a no-libc library The new Intel LLVM library needs this because when building SDL2 in release mode.
Anonymous Maarten b58285b7 2023-03-23T05:26:56 ci: test with (old) Intel compiler + (new) oneAPI compiler
Anonymous Maarten e5ebbdaf 2023-03-23T05:22:32 cmake: add support for building with Intel C compiler
Anonymous Maarten 977781d3 2023-03-21T22:03:42 testautomation_math: avoid equality tests with INFINITY Fixes this warning: warning: comparison with infinity always evaluates to false in fast floating point modes [-Wtautological-constant-compare]
Anonymous Maarten 984af1a7 2023-03-23T01:45:48 cmake: new LLVM based Intel compiler does not recognize MSVC's /MP
Anonymous Maarten 5aa76de3 2023-03-22T23:40:35 cpuinfo: use __cpuidex instead of __cpuid The classic Intel Compiler does not clear the ecx register prior to executing the cpuid opcode.
Anonymous Maarten 1158cff9 2023-03-23T04:38:47 cmake: increase threshold for stack probes The /Gs argument controls the number of bytes that local variables can occupy before a stack probe is initiated. By setting it to a huge value, no calls to __chkstk are inserted. This change is needed for the classic Intel C compiler to build SDL with -DSDL_LIBC=OFF.
Anonymous Maarten ae3a34a3 2023-03-23T00:06:22 byteswap: Don't use intrinsic byteswap functions with Intel C compiler It reroutes intrinsic _byteswap_u(short|long|int64) call to libc function.
Frank Praznik c0824cd4 2023-03-26T12:53:50 events: Increase the size of the name buffer when logging events Event names have grown in length and are occasionally truncated when being logged (e.g. SDL_EVENT_WINDOW_PIXEL_SIZE_CHA). Increase the event name buffer size to handle the longer names. (cherry picked from commit 203a2a76fc0af2094de84d75dbf959c7db73fe72)
capehill 6ed29f47 2023-03-26T22:13:09 testgles2_sdf: Call correct function to get shader info log (cherry picked from commit b8c88cc58423b7e654b18fdaf1aab5a343114586)
Karl Hedberg 9ed1b778 2023-03-25T23:10:04 Made the Android documentation more clear and understandable (#7535) (cherry picked from commit 11142ec2562cc3cce1ea2e09e9758d8b6cfc07bb)
Bartłomiej Dach b970dd1b 2023-03-25T20:52:15 Android: Fix mismatching JNI method signature Another regression from commit dca3fd8307c2c9ebda8d8ea623bbbf19649f5e22, which was a backport of commit de3909a190f6e1a3f11776ce42927f99b0381675 from SDL3 to SDL2. This time the regression is much less apparent, however, due to two reasons: - It only appears when the SDL project is ran on an actual device due to magic stringage. - More importantly, the regression was partially hidden due to the nature of de3909a190f6e1a3f11776ce42927f99b0381675. The commit which was backported added a single `I` to the JNI method signature in `SDL_android.c`, representing the added `int axis_mask` parameter. The parameter was added to both SDL2 and SDL3. However, notably, that `I` was added *after* commit fcafe40948fe308cc9552df5a3d625ee2725de5a, which removed the `int nballs` parameter from the joystick API, but only from the SDL3 branch. Therefore, in totality, what should really have been a merge conflict, was obscured by the fact that the SDL3 branch ended up having a net-identical JNI signature to the SDL2 branch, due to having one bool param removed and one added - while, in fact, the SDL2 branch needed one bool param added and none removed.
Bartłomiej Dach 576df872 2023-03-25T19:43:51 Android: Fix missing type in SDLControllerManager The missing type in question is causing compilation failures. The error was introduced in dca3fd8307c2c9ebda8d8ea623bbbf19649f5e22, which was a backport of commit de3909a190f6e1a3f11776ce42927f99b0381675 from SDL3 to SDL2. Because `int nballs` was removed as a parameter from the controller API in SDL3 in revision fcafe40948fe308cc9552df5a3d625ee2725de5a, this change is only applicable to the SDL2 branch.
Sylvain 2dddaa7d 2023-03-25T10:24:38 backport x11/sdl2 fixes 4b1378f X11: fix size/position (test video_setWindowCenteredOnDisplay) this fix x11 backend to correctly pass video_setWindowCenteredOnDisplay() get border values early (eg status bar) wait for size/position change to get valid values d4d26e0 testautomation_video: if SDL_SetWindowSize/Position isn't honored, we should check there is an event x11: send the events if various occasions
Ozkan Sezer 45a6ad8e 2023-03-24T11:56:40 wikiheaders.pl: make it work with older perl versions, e.g. 5.10.
Sam Lantinga b57a6a1a 2023-03-16T20:01:45 Added gamepad mapping for Flydigi Vader 2 with the latest firmware (6.0.4.9) (cherry picked from commit ed0937598e0a637a1033c90a1b31886537bb288c)
Ivan Mogilko d78072fc 2023-03-18T00:39:02 Fixed SDL_RenderSetVSync does not update flags if simulated vsync is on This lets the user to correctly detect current vsync state by reading SDL_RendererInfo. Also fixes SetVSync's return value check (it may be positive for error too).
Ryan C. Gordon 446e0943 2023-03-17T10:58:45 wasapi: Force WIN_CoInitialize duing device open. Otherwise this won't work if you open a device on a background thread. Fixes #7478.
Sylvain 23bce27b 2023-03-16T09:49:15 Change SDL_BLENDMODE_MUL for gl renderers Add FIXME for PSP and DirectFB
Sylvain c078dfcf 2023-03-16T09:47:43 Refresh generation of SDL_blit_auto.c after simplifying sdlgenblit.pl
Sylvain 18c4db67 2023-03-16T09:47:34 Simplify SDL_BLENDMODE_MUL in sdlgenblit.pl
Sylvain 7d26ba75 2023-03-16T09:46:44 Simplify SDL_BLENDMODE_MUL
Sylvain bd70ce7f 2023-03-16T09:43:38 Refresh generation of SDL_blit_auto.c
Anonymous Maarten ce4c54e2 2023-03-15T14:55:56 cmake: get_filename_component(EXT) retturns extension including leading dot
Sam Lantinga 57ae9f46 2023-03-13T19:56:42 Ignore the PS4 packet CRC if it's not being set correctly This fixes handling the 8BitDo SN30 Pro with the 2.00 firmware in PS4 mode Fixes https://github.com/libsdl-org/SDL/issues/7270 (cherry picked from commit 3951cae4a56fddcb42ce4141a6518c97fa9125cd)
Rudolf Polzer dca3fd83 2023-03-11T12:02:17 Android: indicate gamepaddb entries where axis order changed. Axis order was changed in 6f1f586086a18ab32ddccc05e4616aac02774a1b to improve default mappings. (cherry picked from commit de3909a190f6e1a3f11776ce42927f99b0381675)
Sam Lantinga ab167038 2023-03-10T15:28:22 Added support for the trigger buttons on the Victrix Pro FS for PS5 (cherry picked from commit 8d7e61ea42364c256b76e7f6f2b6d6f90742bcb7)
Sam Lantinga 76e9d64b 2023-03-10T08:13:51 Removed space between sizeof and parentheses
Sam Lantinga e9f9cb29 2023-03-10T08:09:44 Fixed build warning on Android (cherry picked from commit 2af6f4a3e4f0a82ccbb7ce142c914b5aa5df2000)