Jump to content
  • PKHeX 23.12.18


    ReignOfComputer

    PKHeX is a save editor for core-series Pokémon games. With it, users can manipulate various save files including: .sav, .dsv, .dat, .gci, .raw, and .bin types. PKHeX can also read and write: .pk files, which are individual Pokémon files, and .pgt, .pcd, .pgf, .wc, which are Mystery Gift files.

    Version 23.12.18 of PKHeX has been released, bringing support for Pokemon Scarlet and Violet's The Indigo Disk DLC. Additional legality updates will be addressed in the next release (crossovers, Minior, encounters), expect false negatives at this time.

    Please be reminded that as of Home 3.0.0, Home checks for a Pokemon's history. Pokemon who were not initialized in their correct games will not be transferrable to Home, even if PKHeX views them as Legal (as it has no way of validating a Home tracker).

    PKHeX requires the .NET Desktop Runtime 8.0.0 to run. If you receive an error when trying to run, ensure you have it installed.

    Take note that other related applications will still need time to update, and updated versions of ALM (PKHeX-Plugins) or SysBot may not be immediately available.

     

    Change log:

    Quote

    23/12/18 - New Update:
     - Changed: PKHeX now uses .NET 8 for its runtime (updated from .NET 7)!
     - - Requires Windows 64bit operating system, with the .NET Desktop Runtime 8.0.x
     - - https://dotnet.microsoft.com/en-us/download/dotnet/8.0
     - Added support for Scarlet & Violet 3.0.0 (Indigo Disk)
     - Legality: Added encounters / changes as per Teal Mask DLC adjustments. 
     - - Will still have issues with crossovers, Minior, and encounter locations. Will be addressed next release.
     - - Fixed: Gen4 Manaphy PID rerolling behavior updated. Thanks @Lincoln-LM!
     - Added: Hover preview now shows a custom preview tooltip. Old behavior can be reverted to via settings.
     - Added: Gen6-9 map position/rotation editing. Thanks @abcboy101!
     - Added: Gen6 XY Roamer editor. Thanks @foohyfooh!
     - Added: Gen5 Musical Prop editor. Thanks @foohyfooh!
     - Added: Gen4/5 Chatter editor. Thanks @abcboy101!
     - Added: Gen4 KOR<->INT/JPN converter for save files. Thanks @abcboy101!
     - Added: Gen2 Mystery Gift item / unlock flag editing. Thanks @RainingChain!
     - Fixed: String conversion has been rewritten for easier maintenance. Future updates will handle Farfetch'd and other cases better.
     - Fixed: Gen6/7 country/region names for the latest 3DS region manifest. Thanks @abcboy101!
     - Fixed: Gen4 Pokétch Unlock cheat updates the total count of apps now. Thanks @foohyfooh!
     - Fixed: Gen4 Complete Dex cheat updates female-only bitflags correctly now. Thanks @DeadSkullzJr!
     - Fixed: Gen3 Colosseum Fateful Encounter flags now read/write correctly based on Japanese/International save file context.
     - Fixed: Gen3 Mainline saves update party Mail indexes when lacking a mail held item (prevents invalid mail icon).
     - Fixed: Gen1 RBY saves that have not yet received a starter now differentiate correctly. Thanks @fattard!

     

    Download      |     FAQ     |     Support Forum


    User Feedback

    Recommended Comments

    I am really confused how we use this to import wondercards for items. I drag the .wc9 file over and get a warning that this isn't a pokemon, and the items aren't added to the game. It works fine importing the wondercards for mons, just not items.

    Link to comment
    Share on other sites

    27 minutes ago, GFalcon said:

    I am really confused how we use this to import wondercards for items. I drag the .wc9 file over and get a warning that this isn't a pokemon, and the items aren't added to the game. It works fine importing the wondercards for mons, just not items.


    PKHeX doesn’t support what you’re trying to do.

    What you can do is:
    1) inject the items directly into your bag (cause functionally not any different)
    2) perform BCAT manipulation to receive the gift in-game

    Link to comment
    Share on other sites

    51 minutes ago, theSLAYER said:


    PKHeX doesn’t support what you’re trying to do.

    What you can do is:
    1) inject the items directly into your bag (cause functionally not any different)
    2) perform BCAT manipulation to receive the gift in-game

    Omg! Thank you! This explains why I couldn't figure it out. Very helpful!

     

    edit: Oh, turns out this is STILL not what I am looking for BCAT is for real switches not emulators like RyuJinx, I believe. I am trying to find a way to get wondercard items into RyuJinx Scarlet. I'll just have to give myself the items I guess. I was hoping to be more legit than just giving myself things. But alas. Thanks anyway.

    Edited by GFalcon
    Link to comment
    Share on other sites

    The update seems to no longer be correctly reading Generation 2 pokemon. as a specific example I was able to verify in-game, before the update it detected my Gold Version Heracross as having Hidden Power Fighting and afterwards it now detects it as Hidden Power Electric. Fighting is correct, hitting Raticates for super-effective damage.

    Edited by Ikaros13
    Link to comment
    Share on other sites

    13 minutes ago, Ikaros13 said:

    The update seems to no longer be correctly reading Generation 2 pokemon. as a specific example I was able to verify in-game, before the update it detected my Gold Version Heracross as having Hidden Power Fighting and afterwards it now detects it as Hidden Power Electric. Fighting is correct, hitting Raticates for super-effective damage.

    Thanks, should be fixed on the latest commits now!

    https://github.com/kwsch/PKHeX/commit/6d0b4f77e4e231e8fa1d83386f326fc4ca872981

    Link to comment
    Share on other sites

    Hello ! I

    had some issue while trying to edit super secret base for ORAS, 

    here is the report 

    Spoiler

    Exception Details:
    System.ArgumentOutOfRangeException: InvalidArgument=La valeur '31' n'est pas valide pour 'SelectedIndex'. (Parameter 'value')
    Actual value was 31.
       at System.Windows.Forms.ComboBox.set_SelectedIndex(Int32 value)
       at PKHeX.WinForms.SAV_SecretBase.LoadPKM(SecretBase6PKM pk)
       at PKHeX.WinForms.SAV_SecretBase.LoadOtherData(SecretBase6Other full)
       at PKHeX.WinForms.SAV_SecretBase.LoadCurrent(SecretBase6 bdata)
       at PKHeX.WinForms.SAV_SecretBase.B_Import_Click(Object sender, EventArgs e)
       at System.Windows.Forms.Button.OnClick(EventArgs e)
       at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
       at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
       at System.Windows.Forms.Control.WndProc(Message& m)
       at System.Windows.Forms.ButtonBase.WndProc(Message& m)
       at System.Windows.Forms.NativeWindow.Callback(HWND hWnd, MessageId msg, WPARAM wparam, LPARAM lparam)

    Loaded Assemblies:
    --------------------
    System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Private.CoreLib.dll

    PKHeX, Version=23.12.22.0, Culture=neutral, PublicKeyToken=null
    C:\Users\House\AppData\Local\Temp\.net\PKHeX\RX8PP4zHcSyMoF6EPSE1Uq6U6EwtETY=\PKHeX.dll

    System.Runtime, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Runtime.dll

    System.Windows.Forms, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
    C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\8.0.0\System.Windows.Forms.dll

    System.ComponentModel.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.ComponentModel.Primitives.dll

    System.Windows.Forms.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
    C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\8.0.0\System.Windows.Forms.Primitives.dll

    System.Drawing.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Drawing.Primitives.dll

    System.Collections.Specialized, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Collections.Specialized.dll

    System.Threading.Thread, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Threading.Thread.dll

    System.Collections, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Collections.dll

    System.Runtime.InteropServices, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Runtime.InteropServices.dll

    System.Threading, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Threading.dll

    System.Diagnostics.TraceSource, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Diagnostics.TraceSource.dll

    System.Drawing.Common, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
    C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\8.0.0\System.Drawing.Common.dll

    Microsoft.Win32.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\Microsoft.Win32.Primitives.dll

    System.ComponentModel.EventBasedAsync, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.ComponentModel.EventBasedAsync.dll

    Accessibility, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
    C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\8.0.0\Accessibility.dll

    System.Resources.Extensions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
    C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\8.0.0\System.Resources.Extensions.dll

    System.Memory, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Memory.dll

    System.Drawing, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\8.0.0\System.Drawing.dll

    System.Numerics.Vectors, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Numerics.Vectors.dll

    PKHeX.Core, Version=23.12.22.0, Culture=neutral, PublicKeyToken=null
    C:\Users\House\AppData\Local\Temp\.net\PKHeX\RX8PP4zHcSyMoF6EPSE1Uq6U6EwtETY=\PKHeX.Core.dll

    System.Linq, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Linq.dll

    Microsoft.Win32.SystemEvents, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
    C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\8.0.0\Microsoft.Win32.SystemEvents.dll

    System.Collections.NonGeneric, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Collections.NonGeneric.dll

    System.Text.Json, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Text.Json.dll

    System.Text.Encodings.Web, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Text.Encodings.Web.dll

    System.Text.Encoding.Extensions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Text.Encoding.Extensions.dll

    System.ComponentModel.TypeConverter, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.ComponentModel.TypeConverter.dll

    System.Runtime.Intrinsics, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Runtime.Intrinsics.dll

    System.ComponentModel, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.ComponentModel.dll

    System.Collections.Concurrent, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Collections.Concurrent.dll

    PKHeX.Drawing.PokeSprite, Version=23.12.22.0, Culture=neutral, PublicKeyToken=null
    C:\Users\House\AppData\Local\Temp\.net\PKHeX\RX8PP4zHcSyMoF6EPSE1Uq6U6EwtETY=\PKHeX.Drawing.PokeSprite.dll

    System.ObjectModel, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.ObjectModel.dll

    System.Private.Uri, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Private.Uri.dll

    System.Runtime.Loader, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Runtime.Loader.dll

    System.Windows.Forms.resources, Version=8.0.0.0, Culture=fr, PublicKeyToken=b77a5c561934e089
    C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\8.0.0\fr\System.Windows.Forms.resources.dll

    System.Windows.Extensions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
    C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\8.0.0\System.Windows.Extensions.dll

    System.Net.Http, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Net.Http.dll

    System.Net.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Net.Primitives.dll

    System.Diagnostics.Tracing, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Diagnostics.Tracing.dll

    System.Diagnostics.DiagnosticSource, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Diagnostics.DiagnosticSource.dll

    System.Net.Security, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Net.Security.dll

    System.Security.Cryptography, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Security.Cryptography.dll

    PKHeX.Drawing, Version=23.12.22.0, Culture=neutral, PublicKeyToken=null
    C:\Users\House\AppData\Local\Temp\.net\PKHeX\RX8PP4zHcSyMoF6EPSE1Uq6U6EwtETY=\PKHeX.Drawing.dll

    System.Net.Sockets, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Net.Sockets.dll

    System.Threading.Overlapped, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Threading.Overlapped.dll

    System.Net.NameResolution, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Net.NameResolution.dll

    System.Threading.ThreadPool, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Threading.ThreadPool.dll

    PKHeX.Drawing.Misc, Version=23.12.22.0, Culture=neutral, PublicKeyToken=null
    C:\Users\House\AppData\Local\Temp\.net\PKHeX\RX8PP4zHcSyMoF6EPSE1Uq6U6EwtETY=\PKHeX.Drawing.Misc.dll

    System.Security.Principal.Windows, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Security.Principal.Windows.dll

    System.Security.Claims, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Security.Claims.dll

    System.Text.RegularExpressions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Text.RegularExpressions.dll

    System.Diagnostics.StackTrace, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Diagnostics.StackTrace.dll

    System.Reflection.Metadata, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Reflection.Metadata.dll

    System.Collections.Immutable, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
    C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.0\System.Collections.Immutable.dll

    --------------------
    User Message:
    An unhandled exception has occurred.
    You can continue running PKHeX, but please report this error.
     

     

    Link to comment
    Share on other sites

    5 hours ago, zephiross said:

    Hello ! I

    had some issue while trying to edit super secret base for ORAS, 

    here is the report 

    You need to provide more information. When did this pop up, when you clicked "Secret Base"? Or when you tried to make an edit?

    If it's popping up immediately when you clicked Secret Base, perhaps you could contribute the save file for developers to take a look.

    Link to comment
    Share on other sites

    Hello and Merry Christmas :3 I get the error when trying to edit, when importing the first Blissey secret base I found in the download section, but the others work fine, I guess it's the file that I loaded which is broken

    Link to comment
    Share on other sites

    Apologies if this isn't the right place to ask, but I have a question.

    With the return of the Walking Wake/Iron Leaves event, is it possible to edit the save file to allow me to catch them again if I have already caught them the first time the event was on?

    Link to comment
    Share on other sites

    Hello, i used this tool to complete the paldean dex in violet, but, seems like i got stuck on the dex complete message, it pop ups everytime and i cant seem to get out of the dex, i dont know if this is related to the tool or not, but, i would appreciate some help

    Link to comment
    Share on other sites

    5 hours ago, brynhildr said:

    hi, in pokemon scarlet, anyway to activate the mistery gift of pechorant to start the epilogue, with pkhex?

    Nah, it’s a free gift, just receive it on your Switch.

    Link to comment
    Share on other sites



    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now

  • Our picks

    • Since they released over a decade ago, the Pokémon Mystery Dungeon games for the Nintendo DS have not had much in the way of ROM editors. Over the past few years, hackers have slowly learned more and more about the inner workings of the games, culminating in the most advanced PMD editor to date: Sky Temple. 

      SkyTemple is a user-friendly level editor for Pokémon Mystery Dungeon: Explorers of Sky that gives the user full control over graphics, scripts, Pokémon data, and more, enabling a great amount of creative freedom to prospective ROM hackers to create not just edits of the game, but entirely new levels and plots.

      See the trailer for the version 1.0.0 release for quick samples of what can be accomplished:

      Additional reading:

      Download:

       
        • Amazed
        • Like
      • 10 replies
    • The #1 issue with Gates to Infinity is the super slow text speed. Luckily, @shutterbug2000 discovered how to fix it.
      • 39 replies
    • PKHeX 20.01.10
      PKHeX is a save editor for core-series Pokémon games. With it, users can manipulate various save files including: .sav, .dsv, .dat, .gci, .raw, and .bin types. PKHeX can also read and write: .pk files, which are individual Pokémon files, and .pgt, .pcd, .pgf, .wc, which are Mystery Gift files.

      Version 20.01.10 of PKHeX has been released! PKHeX now supports the latest patch (1.1.0) Full change log below!

       

       

      Change log:

      Download      |     FAQ     |     Support Forum
        • Thanks
        • Like
      • 1 reply
    • Website Updates
      After a few hours of being offline, we're finally back! Not only are we on a shiny new server, we have some new goodies.
        • Hahaha
        • Amazed
        • V-Wheeeeeel!!!
        • Thanks
        • Like
      • 7 replies
    • Following the success of his fan dub of Pokémon Super Mystery Dungeon, YouTuber TheGoldCrow has started a new project: a fan dub of Pokémon Mystery Dungeon: Explorers of Sky.
        • V-Wheeeeeel!!!
        • Like
      • 2 replies
×
×
  • Create New...