Charles Lombardo
67eeb05692
android: Set up signing config for release builds
2023-09-17 01:22:16 -04:00
Charles Lombardo
af0c1b0cb7
android: Use 1 worker for shader compilation for all devices
2023-09-16 21:38:28 -04:00
Liam
13a7a297bb
registered_cache: correct file deletion case
2023-09-16 18:25:17 -04:00
Charles Lombardo
c484a61515
android: Collect task state once view is created
...
Before the viewLifecycleOwner wasn't ready and would cause a crash
2023-09-16 17:15:20 -04:00
Fernando Sahmkow
b99f94a7ff
Vulkan: add temporary workaround for AMDVLK
2023-09-16 11:59:20 -04:00
Fernando Sahmkow
6a1ecab2dd
Vulkan: Implement Depth Bias Control
2023-09-16 11:58:55 -04:00
Kelebek1
67e2d5c28b
Reimplement HardwareOpus
2023-09-16 11:56:25 -04:00
liamwhite
9912704234
Merge pull request #11519 from german77/system-policy
...
service: hid: Implement ApplyNpadSystemCommonPolicy
2023-09-16 11:40:42 -04:00
liamwhite
fe771b59f4
Merge pull request #11518 from german77/bad-npad
...
service: hid: Implement last active Npad and fix some errors.
2023-09-16 11:40:35 -04:00
liamwhite
d26c76180d
Merge pull request #11517 from german77/amiibo-format
...
service: nfc: Fix amiibo formatting
2023-09-16 11:40:26 -04:00
liamwhite
62d473305d
Merge pull request #11500 from liamwhite/debug-stuff
...
core: improve debug workflow
2023-09-16 11:40:17 -04:00
liamwhite
13d551846a
Merge pull request #11499 from Squall-Leonhart/bitlockerfix
...
add std::error_code for std::filesystem exceptions
2023-09-16 11:40:10 -04:00
liamwhite
c05ea35f78
Merge pull request #11492 from lat9nq/c-numeric-conversions
...
general: Remove uncaught usages of C++ string number conversions
2023-09-16 11:40:03 -04:00
liamwhite
7f705870d2
Merge pull request #11483 from FearlessTobi/save-size-max
...
am: Stub GetSaveDataSizeMax
2023-09-16 11:39:56 -04:00
liamwhite
821037e18f
Merge pull request #11475 from GPUCode/renderdoc-hotkey
...
debug: Add renderdoc capture hotkey
2023-09-16 11:39:50 -04:00
german77
a3f235f8a2
service: hid: Implement ApplyNpadSystemCommonPolicy
2023-09-16 08:38:10 -06:00
german77
260bfc4bd2
hid: service: Remove outdated field from npad
2023-09-16 00:31:45 -06:00
german77
8950fe79ad
hid: service: Implement Last active Npad
2023-09-16 00:31:19 -06:00
german77
c8b9467f50
service: hid: Ensure state is correct
2023-09-16 00:31:09 -06:00
german77
0d4aa9125e
service: nfc: Fix amiibo formatting
2023-09-15 22:02:57 -06:00
Charles Lombardo
832a2fcc69
android: Remove settings interface specifically for audio mute
2023-09-14 23:46:19 -04:00
Charles Lombardo
958bed4545
Merge pull request #11507 from t895/emulation-stop-fix
...
android: Return the correct status code on emulation stop
2023-09-14 23:22:00 -04:00
Charles Lombardo
0c688b0bf5
Merge pull request #11506 from t895/icon-fix
...
android: Use resource as shortcut intermediary
2023-09-14 23:21:45 -04:00
Charles Lombardo
7e2bd395bc
android: Return the correct status code on emulation stop
2023-09-14 23:08:06 -04:00
Charles Lombardo
19053ab631
Merge pull request #11505 from t895/config-patch
...
android: Don't reinitialize settings on emulation start
2023-09-14 22:20:45 -04:00
Charles Lombardo
6481f4e937
android: Use resource as shortcut intermediary
...
Fixes issue where the shortcut icon would appear cropped on certain devices
2023-09-14 22:19:08 -04:00
Charles Lombardo
d1deff6b07
Merge pull request #11504 from t895/emu-args
...
android: Fix emulation to settings navigation args
2023-09-14 21:25:58 -04:00
Charles Lombardo
e8aaab2fc1
android: Don't reinitialize settings on emulation start
...
Config is already initialized on application start
2023-09-14 21:25:17 -04:00
Charles Lombardo
21b133de40
android: Fix emulation to settings navigation args
2023-09-14 20:24:43 -04:00
Charles Lombardo
b394389170
android: Delay collecting UI state in games fragment
2023-09-14 20:02:48 -04:00
Liam
3ef9673360
core: improve debug workflow
2023-09-14 16:44:15 -04:00
Charles Lombardo
8baed5d95d
android: Refactor menu tags to enum
2023-09-14 15:18:56 -04:00
Charles Lombardo
4a3cbf0021
android: Use StateFlow instead of LiveData
2023-09-14 15:18:56 -04:00
Squall-Leonhart
21ecf01a17
add std::error_code for std::filesystem exceptions
...
Resolves a case on Windows where an unmounted bitlocker protected volume containing an assigned game directory would crash Yuzu at start.
May also resolve cases where a disconnected SMB volume causes similar crashes (needs testing)
2023-09-15 04:47:15 +10:00
lat9nq
5d52d73c4b
shared_widget: Use default literals more
2023-09-14 11:31:26 -04:00
lat9nq
fea5b758bc
settings_common: Fix typo
2023-09-14 11:30:14 -04:00
GPUCode
c656105a6c
debug: Add renderdoc capture hotkey
2023-09-14 16:37:41 +03:00
liamwhite
04352a9aef
Merge pull request #11496 from liamwhite/ngc
...
ngc: implement service
2023-09-14 09:24:46 -04:00
liamwhite
48dec7e0c9
Merge pull request #11479 from Kelebek1/check_all_fbs
...
Look for the most recently modified image for present
2023-09-14 09:24:27 -04:00
liamwhite
b5f99164f1
Merge pull request #11433 from liamwhite/shutdown-oopsie
...
polyfill_thread: ensure mutex was locked before signaling stop
2023-09-14 09:24:20 -04:00
liamwhite
eb4ddb2868
shader_recompiler: skip sampler for buffer textures ( #11435 )
2023-09-14 15:23:50 +02:00
Liam
9d7eebde7b
ngc: implement service
2023-09-14 09:14:08 -04:00
lat9nq
fe70c6f481
settings_setting: Don't remove the AudioEngine workaround
2023-09-13 15:59:44 -04:00
liamwhite
8fb9f78e83
Merge pull request #11385 from liamwhite/acceptcancel
...
internal_network: cancel pending socket operations on application process termination
2023-09-13 15:40:58 -04:00
lat9nq
c2961454fe
cmd/yuzu: Remove uncaught usage of stoi
...
Also fixes a style inconsistency
2023-09-13 13:52:09 -04:00
lat9nq
5ffa1049ae
cmd/config: Remove uncaught usage of stoul
2023-09-13 13:52:09 -04:00
lat9nq
3ae3706c84
shared_widget: Forward-port Citra changes
...
Seemed like a good time to move these over.
Also remove usage of std::sto{l,ll,ul,f,d}
2023-09-13 13:52:09 -04:00
lat9nq
2d2c176f03
configure_ui: Remove unnecessary usage of stoul
2023-09-13 13:52:09 -04:00
lat9nq
0eef4a6c94
cheat_engine: Remove uncaught usage of stoul
2023-09-13 13:51:58 -04:00
lat9nq
22be3008f8
ips_layer: Remove uncaught usage of stoul/ll
2023-09-13 13:36:25 -04:00
lat9nq
7f98f4a38b
key_manager: Remove uncaught usage of stoul
2023-09-13 13:36:25 -04:00
lat9nq
0098ecb609
settings: Retro-port Citra Settings work
...
This has yet to be PR'd on Citra, but regressions on yuzu that have
been fixed in Citra needed to appear here.
2023-09-13 13:36:25 -04:00
lat9nq
85e1754728
android/config: Remove uncaught usage of stoul
2023-09-13 13:36:25 -04:00
liamwhite
3f52b5167b
Merge pull request #11486 from liamwhite/system-verification
...
qt: add verification for installed contents
2023-09-13 09:39:27 -04:00
liamwhite
5b5c69b8f6
Merge pull request #11480 from german77/mii_service
...
service: mii: Update implementation Part1
2023-09-13 09:39:16 -04:00
liamwhite
9a0ea90018
Merge pull request #11473 from liamwhite/fix-launch-param
...
am: Implement UserChannel parameters
2023-09-13 09:39:06 -04:00
Liam
f8985d1cc5
qt: add verification for installed contents
2023-09-12 09:20:50 -04:00
liamwhite
ce5320c49f
Merge pull request #11447 from xcfrg/portable-compile-out
...
common: add a compile time option to allow disabling portable mode
2023-09-12 09:17:50 -04:00
Narr the Reg
4d138b760b
service: mii: Remove most magic values
2023-09-11 22:07:55 -06:00
FearlessTobi
a2150e456c
am: Stub GetSaveDataSizeMax
...
Needed for Minecraft Legends.
2023-09-12 00:21:03 +02:00
FearlessTobi
1b6852a36c
bsd: Demote "Select" log to dehug
...
This is very spammy in Minecraft Legends.
2023-09-12 00:20:42 +02:00
liamwhite
66f2947854
ci: fix msvc when used with LTO ( #11459 )
2023-09-11 23:25:21 +02:00
german77
ec25f847d8
mii: service: Address review
2023-09-11 09:54:32 -06:00
german77
bd169f417f
mii: Prepare Interface for new implementation
2023-09-11 00:58:46 -06:00
german77
571399930c
service: mii: Fix ver3 inconsistencies
2023-09-11 00:23:46 -06:00
german77
36290f9a0a
service: mii: move char info operations
2023-09-10 23:18:08 -06:00
german77
d6037efe5e
service: mii: Move store data operations
2023-09-10 23:18:03 -06:00
german77
81f50d5132
service: mii: Move core data operations
2023-09-10 22:52:33 -06:00
german77
8d7d62dc24
service: mii: Move ver3 operations
2023-09-10 22:42:38 -06:00
german77
27929d7ca2
service: mii: separate mii types into their own file
2023-09-10 22:18:25 -06:00
german77
63b239f5c6
service: mii: Move all raw data to it's file
2023-09-10 22:14:37 -06:00
german77
0cdc8b13b7
service: mii: Add mii util and result
2023-09-10 20:43:26 -06:00
Kelebek1
baad1238c3
Look for the most recently modified image for present
2023-09-11 03:11:29 +01:00
FearlessTobi
87c0ba129c
am: Implement UserChannel parameters
...
Used by the Super Mairo 3D All-Stars collection.
2023-09-10 15:39:25 -04:00
liamwhite
eb9e847380
Merge pull request #11450 from lat9nq/no-vk-device-fix
...
configure_graphics: Fix handling of broken Vulkan
2023-09-10 13:41:10 -04:00
liamwhite
5b8fdedf4d
Merge pull request #11436 from liamwhite/bad-format
...
shader_recompiler: always declare image format for image buffers
2023-09-10 13:40:47 -04:00
liamwhite
64130d9f01
Merge pull request #11456 from liamwhite/worse-integrity-verification
...
core: implement basic integrity verification
2023-09-10 13:40:39 -04:00
liamwhite
3df56dc790
Merge pull request #11465 from Kelebek1/skip_remaining_reset
...
[Audio] Do not reset the remaining command count each time
2023-09-10 13:40:32 -04:00
liamwhite
3b7d112c83
Merge pull request #11467 from Kelebek1/fix_decode
...
[audio] Fix data source version 1 command looping
2023-09-10 13:40:25 -04:00
liamwhite
b011ce023d
Merge pull request #11470 from GPUCode/bundle-vvl
...
android: Add option to bundle validation layer
2023-09-10 13:40:18 -04:00
FearlessTobi
36917d8a8f
am: Remove bcat from PopLaunchParameter
...
This never belonged here and has no use anymore since the Boxcat backend was removed.
.
2023-09-09 20:44:05 -04:00
GPUCode
24ab10c2f6
vk_buffer_cache: Respect max vertex bindings in BindVertexBuffers ( #11471 )
2023-09-10 02:19:45 +02:00
GPUCode
cad28abe61
renderer_vulkan: Remove debug report
...
* VVL has implemented the more modern alternative, thus we don't need to support it anymore
2023-09-08 23:28:46 +03:00
Liam
7bec8d1c5b
internal_network: log error on interrupt pipe read failure
2023-09-08 14:00:07 -04:00
Kelebek1
800d6f7d0d
Fix data source version 1 command looping
2023-09-08 15:03:21 +01:00
Kelebek1
4baaaf6a99
Do not reset the command buffer command count each time
2023-09-07 20:53:48 +01:00
Narr the Reg
57e7eed54c
service: mii: Fix broken mii on MK8
2023-09-07 11:46:12 -06:00
xcfrg
a02d641042
add a compile time option to allow disabling portable mode
2023-09-06 18:53:39 -04:00
Liam
716e0a126a
core: implement basic integrity verification
2023-09-06 16:49:27 -04:00
liamwhite
69949e7964
Merge pull request #11428 from Kelebek1/adsp_rework
...
Rework ADSP into a wrapper for apps
2023-09-06 09:13:06 -04:00
liamwhite
5e424d791b
Merge pull request #11434 from danilaml/fix-warnings
...
msvc: set warning level to /W4 globally
2023-09-06 09:12:58 -04:00
liamwhite
70790711d2
Merge pull request #11437 from liamwhite/dump-shenanigans
...
qt: measure romfs dump completion by bytes read
2023-09-06 09:12:49 -04:00
liamwhite
d2e519494f
Merge pull request #11451 from german77/mob_mii
...
service: mii: Fix default mii database
2023-09-06 09:12:33 -04:00
lat9nq
d8943e5bac
yuzu-qt: Use Null when OpenGL is not compiled
2023-09-05 17:59:44 -04:00
lat9nq
e4ebabcd5b
yuzu-qt: Update API Text for broken Vulkan
...
Otherwise caused a blue Vulkan badge to appear in the status bar.
2023-09-05 17:59:10 -04:00
lat9nq
d078cff269
configure_graphics: Capture by reference
...
Small optimization.
2023-09-05 17:50:55 -04:00
Steveice10
0a51fe7854
core: Add support for loading NSPs with personalized tickets. ( #10048 )
...
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2023-09-05 21:09:42 +02:00
german77
ba4e5068bc
service: mii: Fix default mii database
2023-09-05 01:17:06 -06:00
lat9nq
ea46efd9a2
configure_graphics: Fix handling of broken Vulkan
...
The VSync combobox wouldn't populate if there was no Vulkan device,
which caused issues with trying to set VSync on other backends.
This also adds another layer to GetCurrentGraphicsBackend to check for
broken Vulkan and return OpenGL instead of Vulkan.
2023-09-04 20:21:14 -04:00
Kelebek1
ebd19dec99
Rework ADSP into a wrapper for apps
2023-09-04 17:12:16 +01:00
Danila Malyutin
785e480b62
msvc: set warning level to /W4 globally
...
And fix a bunch of warnings
2023-09-03 18:42:10 +04:00
Liam
8a9d4936d4
qt: measure romfs dump completion by bytes read
2023-09-02 22:04:37 -04:00
Liam
ba4b65e4bc
shader_recompiler: always declare image format for image buffers
2023-09-02 17:25:00 -04:00
liamwhite
1971403ab7
Merge pull request #11381 from liamwhite/romfs-dump
...
qt: fix romfs dumping for multiprogram applications
2023-09-02 14:42:48 -04:00
liamwhite
76bddd3673
Merge pull request #11383 from FernandoS27/are-you-a-wabbit
...
Fix regressions that damaged compute indirect & use reinterpret for copies with different byteblocksizes
2023-09-02 14:42:42 -04:00
liamwhite
2c5e8e6d40
Merge pull request #11384 from liamwhite/am-shutdown
...
am: shorten shutdown timeout when lock is not held
2023-09-02 14:42:35 -04:00
liamwhite
84eb1cdb65
Merge pull request #11393 from FernandoS27/bayo-got-busted-up
...
Maxwell3D: Improve Index buffer size estimation.
2023-09-02 14:42:28 -04:00
liamwhite
02e2aea50d
Merge pull request #11412 from liamwhite/key-area-keys
...
vfs: ensure key area keys are validated
2023-09-02 14:42:20 -04:00
liamwhite
32b2436f80
general: make -fwrapv generic to all architectures ( #11379 )
2023-09-02 20:41:21 +02:00
Liam
bdd09d6844
polyfill_thread: ensure mutex was locked before signaling stop
2023-09-02 11:51:40 -04:00
Liam
9245b426e3
shader_recompiler: fix emulation of 3D textureGrad
2023-09-01 22:41:01 -04:00
Charles Lombardo
50d4e0f4f7
android: Fix game content installer
...
Before this would run on the main thread and freeze the device. Additionally this fixes the result dialog not appearing if a config change happens during the installation by getting the activity's fragment manager when needed.
2023-08-30 19:05:33 -04:00
Charles Lombardo
d833fc383d
android: Combine LongMessageDialogFragment with MessageDialogFragment
2023-08-30 18:02:16 -04:00
Charles Lombardo
b48dbb18f2
android: Support dynamic app shortcuts
2023-08-30 16:26:10 -04:00
Charles Lombardo
a2f0caefd4
Merge pull request #11405 from t895/emulation-loading
...
android: Emulation loading UI and fixes
2023-08-30 16:24:46 -04:00
Charles Lombardo
5445e974e0
android: Separate emulation states from emulation mutex
...
Emulation states are repeatedly checked by input and performance stats. During startup and shutdown, this could lead to a long halt on the UI thread because the call to IsRunning will be waiting on the emulation mutex to be unlocked. Using atomics should replace the existing functionality without causing problems.
2023-08-30 15:19:23 -04:00
Charles Lombardo
b0a96d5216
android: Game loading/shutting down indicators
2023-08-30 15:19:23 -04:00
FearlessTobi
a7a5835ffb
hwopus: Implement GetWorkBufferSizeExEx
...
Allows Sea of Stars to boot.
Fixes https://github.com/yuzu-emu/yuzu/issues/11415 .
2023-08-30 18:29:43 +02:00
Charles Lombardo
270f430f70
android: Create custom game icon loader
2023-08-30 10:19:05 -04:00
Charles Lombardo
44bce11853
Merge pull request #11380 from t895/settings-integration
...
android: Settings rework
2023-08-29 22:20:59 -04:00
Charles Lombardo
4701eea646
android: Don't reload settings when stopping settings activity
2023-08-29 21:44:18 -04:00
Charles Lombardo
2f03fac9a0
Merge pull request #11413 from t895/intents
...
android: Support intents to emulation activity
2023-08-29 20:01:52 -04:00
Charles Lombardo
21ad5f5cc5
android: Add optional androidDefault property to settings
...
Certain settings have specific defaults for Android only. This lets us reflect them in the Kotlin side with very little code.
2023-08-29 19:42:42 -04:00
Charles Lombardo
45280a0342
android: Proper state restoration on settings dialogs
...
All dialog code (except for the Date/Time ones) has been extracted out into a generic settings dialog fragment that handles everything through a viewmodel. State for each dialog will now be retained and dialogs will stay shown through configuration changes.
I won't be changing the current state of the date and time dialog fragments until Google decides to make their classes non-final or if/when we migrate to Jetpack Compose.
2023-08-29 19:42:42 -04:00
Charles Lombardo
fd5c7b21dd
android: Add search for settings
2023-08-29 19:42:42 -04:00
Charles Lombardo
d786d19880
android: Implement paired settings
...
Enables and disables editing on settings that rely on other boolean settings.
2023-08-29 19:42:41 -04:00
Charles Lombardo
369d06292f
android: Prevent infinite switch toggle loop
...
If something like a lifecycle event happens when this switch is toggled (Ex. whenever the black backgrounds switch is toggled), this could move the switch from the default position and trigger the checked changed listener and restart the loop. Here I just removed the listener at the start so we recycle the view properly still, set the checked state and then add the new listener.
2023-08-29 19:42:41 -04:00
Charles Lombardo
95a939a49f
android: Migrate settings to navigation component
...
Consolidates all of the settings components to the fragment and activity with no interfaces and only the settings fragment presenter. This also includes new material animations and new viewmodel usage to prevent the fragment and activity directly interacting with one another.
2023-08-29 19:42:41 -04:00
Charles Lombardo
f5e6b12c74
android: Trim settings enums and items
...
Take advantage of the new settings interface to reduce the amount of code we need for each setting item. Additionally make all settings items non-null to improve brevity.
2023-08-29 19:40:18 -04:00
Charles Lombardo
6c8f2b355a
android: Expose interface for getting settings from native code
...
Completely removes code related to parsing the settings file on the java side. Now all settings are accessed via NativeConfig.kt and config.cpp has been modified to be closer to the core counterpart. Since the core currently uses QSettings, we can't remove reliance from Wini yet. This also includes simplifications to each settings interface to get closer to native code and prepare for per-game settings.
2023-08-29 19:40:17 -04:00
liamwhite
52c71e7eb6
Merge pull request #11408 from Kelebek1/fix_audio_node_id
...
[Audio] Fix node id index in DropVoices
2023-08-29 09:27:40 -04:00
liamwhite
1f04a3dd55
Merge pull request #11409 from liamwhite/splatoon-nsd-v2
...
sfdnsres: ensure lp1 is not resolved
2023-08-29 09:27:32 -04:00
liamwhite
d360abadba
Merge pull request #11112 from danilaml/nvdec-deinterlace
...
Use initial_frame to check interlaced flag
2023-08-29 09:27:22 -04:00
Charles Lombardo
2dbe067d74
android: Support intents to emulation activity
2023-08-29 02:57:20 -04:00
Charles Lombardo
2f18fa5cd1
Merge pull request #11392 from t895/layout-troubles
...
android: Emulation activity fixes
2023-08-29 02:11:13 -04:00
Liam
5a09ba7255
vfs: ensure key area keys are validated
2023-08-28 22:22:00 -04:00
Liam
9df3794a83
qt: ensure packed update nca is applied to the correct base
2023-08-28 21:14:35 -04:00
Liam
f260c74beb
qt: fix romfs dumping for multiprogram applications
2023-08-28 21:03:21 -04:00
liamwhite
1615a86375
Merge pull request #11390 from FearlessTobi/hwopus-multi
...
hwopus: Implement OpenHardwareOpusDecoderForMultiStreamEx and DecodeInterleavedForMultiStream
2023-08-28 19:14:44 -04:00
Liam
6c68b07a67
sfdnsres: ensure lp1 is not resolved
2023-08-28 11:55:53 -04:00
Kelebek1
1d201c71dc
Fix node id index in DropVoices
2023-08-28 10:35:30 +01:00
Danila Malyutin
164f880f23
Use initial_frame to check interlaced flag
...
If final frame was transferred from GPU, it won't carry the props.
Fixes #11089
2023-08-28 00:48:53 +04:00
Fernando Sahmkow
52544933d2
Maxwell3D: Improve Index buffer size estimation.
2023-08-27 22:14:37 +02:00
Liam
954144e22b
audio: allow more latency in cubeb initialization
2023-08-27 12:46:01 -04:00
FearlessTobi
c2f827b85e
hwopus: Implement OpenHardwareOpusDecoderForMultiStreamEx and DecodeInterleavedForMultiStream
...
Allows MLB The Show 22 to boot.
Fixes https://github.com/yuzu-emu/yuzu/issues/7911 .
2023-08-27 18:03:10 +02:00
Charles Lombardo
037f82025c
android: Don't set a default emulation orientation
...
Could cause unnecessary configuration change when setting an orientation other than "Landscape"
2023-08-27 00:19:03 -04:00
Charles Lombardo
338d6f29b1
android: Properly adjust emulation surface aspect ratio
...
Previously the emulation surface wouldn't respond properly to orientation changes. This would result in the screen appearing stretched when starting in one orientation and switching to another.
The code for calculating the bounds of the view have been changed to match the expected behavior now. Before the view would just match parent in height and width. Now instead of using setLeftTopRightBottom (which is intended to be used for animations) we pass newly calculated bounds for the view into super. Now the view bounds match the emulation output.
This also means that we don't need the overload for the SettingsActivity to launch it using an ActivityResultLauncher. We can just update the view in onResume.
2023-08-27 00:16:53 -04:00
Fernando S
ada4697300
Merge pull request #11389 from FernandoS27/discard-fix
...
Buffer Cache: fix discard writes.
2023-08-27 04:26:59 +02:00
Fernando Sahmkow
115792158d
VideoCore: Implement DispatchIndirect
2023-08-27 04:26:22 +02:00
Fernando Sahmkow
710ca3ca49
Shader Recompiler: Auto stub special registers and dump pipelines on exception.
2023-08-27 03:47:04 +02:00