Skip to content
This repository has been archived by the owner on Feb 29, 2024. It is now read-only.

Commit

Permalink
Merge TheCataclysmPreservationProject to ElunaCataPreservation [skip ci]
Browse files Browse the repository at this point in the history
  • Loading branch information
Niam5 committed Dec 9, 2023
2 parents ba387fd + 93d8ed4 commit d39c7d2
Show file tree
Hide file tree
Showing 386 changed files with 1,765 additions and 196 deletions.
24 changes: 24 additions & 0 deletions cmake/macros/FindMySQL.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -86,24 +86,30 @@ find_path(MYSQL_INCLUDE_DIR
/usr/local/include
/usr/local/include/mysql
/usr/local/mysql/include
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.2/include"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.1/include"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.0/include"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 5.7/include"
"${PROGRAM_FILES_64}/MySQL/include"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.2/include"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.1/include"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.0/include"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 5.7/include"
"${PROGRAM_FILES_32}/MySQL/include"
"C:/MySQL/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.2;Location]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.1;Location]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.0;Location]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.7;Location]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.2;Location]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.1;Location]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.0;Location]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.7;Location]/include"
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.2/include"
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.1/include"
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.0/include"
"$ENV{ProgramFiles}/MySQL/MySQL Server 5.7/include"
"$ENV{SystemDrive}/MySQL/MySQL Server 8.2/include"
"$ENV{SystemDrive}/MySQL/MySQL Server 8.1/include"
"$ENV{SystemDrive}/MySQL/MySQL Server 8.0/include"
"$ENV{SystemDrive}/MySQL/MySQL Server 5.7/include"
Expand Down Expand Up @@ -140,36 +146,45 @@ if(WIN32)
libmysql libmariadb
PATHS
${MYSQL_ADD_LIBRARIES_PATH}
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.2/lib"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.1/lib"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.0/lib"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 5.7/lib"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.2/lib/opt"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.1/lib/opt"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.0/lib/opt"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 5.7/lib/opt"
"${PROGRAM_FILES_64}/MySQL/lib"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.2/lib"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.1/lib"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.0/lib"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 5.7/lib"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.2/lib/opt"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.1/lib/opt"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.0/lib/opt"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 5.7/lib/opt"
"${PROGRAM_FILES_32}/MySQL/lib"
"C:/MySQL/lib/debug"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.2;Location]/lib"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.1;Location]/lib"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.0;Location]/lib"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.7;Location]/lib"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.1;Location]/lib/opt"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.0;Location]/lib/opt"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.7;Location]/lib/opt"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.2;Location]/lib"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.1;Location]/lib"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.0;Location]/lib"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.7;Location]/lib"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.2;Location]/lib/opt"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.1;Location]/lib/opt"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.0;Location]/lib/opt"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.7;Location]/lib/opt"
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.2/lib/opt"
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.1/lib/opt"
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.0/lib/opt"
"$ENV{ProgramFiles}/MySQL/MySQL Server 5.7/lib/opt"
"$ENV{SystemDrive}/MySQL/MySQL Server 8.2/lib/opt"
"$ENV{SystemDrive}/MySQL/MySQL Server 8.1/lib/opt"
"$ENV{SystemDrive}/MySQL/MySQL Server 8.0/lib/opt"
"$ENV{SystemDrive}/MySQL/MySQL Server 5.7/lib/opt"
Expand Down Expand Up @@ -215,33 +230,42 @@ endif(UNIX)
if(WIN32)
find_program(MYSQL_EXECUTABLE mysql
PATHS
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.2/bin"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.1/bin"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.0/bin"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 5.7/bin"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.2/bin/opt"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.1/bin/opt"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.0/bin/opt"
"${PROGRAM_FILES_64}/MySQL/MySQL Server 5.7/bin/opt"
"${PROGRAM_FILES_64}/MySQL/bin"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.2/bin"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.1/bin"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.0/bin"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 5.7/bin"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.2/bin/opt"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.1/bin/opt"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.0/bin/opt"
"${PROGRAM_FILES_32}/MySQL/MySQL Server 5.7/bin/opt"
"${PROGRAM_FILES_32}/MySQL/bin"
"C:/MySQL/bin/debug"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.2;Location]/bin"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.1;Location]/bin"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.0;Location]/bin"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.7;Location]/bin"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.2;Location]/bin/opt"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.1;Location]/bin/opt"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.0;Location]/bin/opt"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.7;Location]/bin/opt"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.2;Location]/bin"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.1;Location]/bin"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.0;Location]/bin"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.7;Location]/bin"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.2;Location]/bin/opt"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.1;Location]/bin/opt"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.0;Location]/bin/opt"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.7;Location]/bin/opt"
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.2/bin/opt"
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.1/bin/opt"
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.0/bin/opt"
"$ENV{ProgramFiles}/MySQL/MySQL Server 5.7/bin/opt"
Expand Down
9 changes: 0 additions & 9 deletions dep/MinHook/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -55,12 +55,3 @@ else()
set_target_properties(minhook PROPERTIES POSTFIX "")
set_target_properties(minhook PROPERTIES DEBUG_POSTFIX "d")
endif()

if(UNITY_BUILDS)
set_target_properties(minhook
PROPERTIES UNITY_BUILD ON)
set_target_properties(minhook
PROPERTIES
UNITY_BUILD_MODE BATCH
UNITY_BUILD_BATCH_SIZE 2)
endif()
9 changes: 0 additions & 9 deletions dep/bzip2/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -41,12 +41,3 @@ else()
FOLDER
"dep")
endif()

if(UNITY_BUILDS)
set_target_properties(bzip2
PROPERTIES UNITY_BUILD ON)
set_target_properties(bzip2
PROPERTIES
UNITY_BUILD_MODE BATCH
UNITY_BUILD_BATCH_SIZE 8)
endif()
9 changes: 0 additions & 9 deletions dep/efsw/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -88,12 +88,3 @@ if (BUILD_SHARED_LIBS)
else ()
add_library(efsw INTERFACE IMPORTED GLOBAL)
endif ()

if(UNITY_BUILDS)
set_target_properties(efsw
PROPERTIES UNITY_BUILD ON)
set_target_properties(efsw
PROPERTIES
UNITY_BUILD_MODE BATCH
UNITY_BUILD_BATCH_SIZE 8)
endif()
9 changes: 0 additions & 9 deletions dep/fmt/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -61,12 +61,3 @@ set_target_properties(fmt
PROPERTIES
FOLDER
"dep")

if(UNITY_BUILDS)
set_target_properties(fmt
PROPERTIES UNITY_BUILD ON)
set_target_properties(fmt
PROPERTIES
UNITY_BUILD_MODE BATCH
UNITY_BUILD_BATCH_SIZE 8)
endif()
9 changes: 0 additions & 9 deletions dep/g3dlite/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -71,12 +71,3 @@ set_target_properties(g3dlib
PROPERTIES
FOLDER
"dep")

if(UNITY_BUILDS)
set_target_properties(g3dlib
PROPERTIES UNITY_BUILD ON)
set_target_properties(g3dlib
PROPERTIES
UNITY_BUILD_MODE BATCH
UNITY_BUILD_BATCH_SIZE 8)
endif()
9 changes: 0 additions & 9 deletions dep/gsoap/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -27,15 +27,6 @@ set_target_properties(gsoap
FOLDER
"dep")

if(UNITY_BUILDS)
set_target_properties(gsoap
PROPERTIES UNITY_BUILD ON)
set_target_properties(gsoap
PROPERTIES
UNITY_BUILD_MODE BATCH
UNITY_BUILD_BATCH_SIZE 7)
endif()

if (MSVC)
# Little fix for MSVC / Windows platforms
target_compile_definitions(gsoap
Expand Down
9 changes: 0 additions & 9 deletions dep/jemalloc/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -117,12 +117,3 @@ else()
valgrind)

endif()

if(UNITY_BUILDS)
set_target_properties(jemalloc
PROPERTIES UNITY_BUILD ON)
set_target_properties(jemalloc
PROPERTIES
UNITY_BUILD_MODE BATCH
UNITY_BUILD_BATCH_SIZE 8)
endif()
9 changes: 0 additions & 9 deletions dep/libzmq/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -217,12 +217,3 @@ target_compile_definitions(libzmq
-DZMQ_STATIC
${ZMQ_PLATFORM}
${ADDITIONAL_DEFINES})

if(UNITY_BUILDS)
set_target_properties(libzmq
PROPERTIES UNITY_BUILD ON)
set_target_properties(libzmq
PROPERTIES
UNITY_BUILD_MODE BATCH
UNITY_BUILD_BATCH_SIZE 2)
endif()
9 changes: 0 additions & 9 deletions dep/recastnavigation/Detour/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,3 @@ set_target_properties(Detour
PROPERTIES
FOLDER
"dep")

if(UNITY_BUILDS)
set_target_properties(Detour
PROPERTIES UNITY_BUILD ON)
set_target_properties(Detour
PROPERTIES
UNITY_BUILD_MODE BATCH
UNITY_BUILD_BATCH_SIZE 7)
endif()
9 changes: 0 additions & 9 deletions dep/recastnavigation/Recast/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -38,12 +38,3 @@ set_target_properties(Recast
PROPERTIES
FOLDER
"dep")

if(UNITY_BUILDS)
set_target_properties(Recast
PROPERTIES UNITY_BUILD ON)
set_target_properties(Recast
PROPERTIES
UNITY_BUILD_MODE BATCH
UNITY_BUILD_BATCH_SIZE 2)
endif()
9 changes: 0 additions & 9 deletions dep/zmqpp/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -33,12 +33,3 @@ target_compile_definitions(zmqpp
-DBUILD_VERSION_MINOR=2
-DBUILD_VERSION_REVISION=0
-DBUILD_VERSION="3.2.0")

if(UNITY_BUILDS)
set_target_properties(zmqpp
PROPERTIES UNITY_BUILD ON)
set_target_properties(zmqpp
PROPERTIES
UNITY_BUILD_MODE BATCH
UNITY_BUILD_BATCH_SIZE 6)
endif()
16 changes: 8 additions & 8 deletions src/common/Debugging/WheatyExceptionReport.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -489,14 +489,14 @@ BOOL WheatyExceptionReport::_GetWindowsVersionFromWMI(TCHAR* szVersion, DWORD cn
{
IWbemServices* tmp = nullptr;
HRESULT hres = loc->ConnectServer(
bstr_t(L"ROOT\\CIMV2"), // Object path of WMI namespace
nullptr, // User name. NULL = current user
nullptr, // User password. NULL = current
nullptr, // Locale. NULL indicates current
0, // Security flags.
nullptr, // Authority (for example, Kerberos)
nullptr, // Context object
&tmp // pointer to IWbemServices proxy
bstr_t(L"ROOT\\CIMV2"), // Object path of WMI namespace
nullptr, // User name. NULL = current user
nullptr, // User password. NULL = current
nullptr, // Locale. NULL indicates current
WBEM_FLAG_CONNECT_USE_MAX_WAIT, // Security flags.
nullptr, // Authority (for example, Kerberos)
nullptr, // Context object
&tmp // pointer to IWbemServices proxy
);

if (FAILED(hres))
Expand Down
5 changes: 1 addition & 4 deletions src/server/game/Battlefield/Battlefield.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -264,11 +264,8 @@ void Battlefield::InvitePlayerToWar(Player* player)
if (player->IsInFlight())
return;

if (player->InArena() || player->GetBattleground())
{
m_PlayersInQueue[player->GetTeamId()].erase(player->GetGUID());
if (player->GetBattleground())
return;
}

// If the player does not match minimal level requirements for the battlefield, kick him
if (player->GetLevel() < m_MinLevel)
Expand Down
2 changes: 1 addition & 1 deletion src/server/game/Entities/Object/Object.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ constexpr float VisibilityDistances[AsUnderlyingType(VisibilityDistanceType::Max
MAX_VISIBILITY_DISTANCE
};

Object::Object() : m_PackGUID(sizeof(uint64)+1)
Object::Object()
{
m_objectTypeId = TYPEID_OBJECT;
m_objectType = TYPEMASK_OBJECT;
Expand Down
20 changes: 18 additions & 2 deletions src/server/game/Entities/Object/ObjectGuid.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@

#include "ObjectGuid.h"
#include "Errors.h"
#include "Hash.h"
#include "ByteBuffer.h"
#include "Log.h"
#include "World.h"
#include <iomanip>
Expand Down Expand Up @@ -83,6 +83,22 @@ ObjectGuid ObjectGuid::MapSpecific(HighGuid type, uint32 entry, LowType counter)
return ObjectGuid(type, entry, counter);
}

void PackedGuid::Set(ObjectGuid guid)
{
_packedSize = 1;
uint64 raw = guid.GetRawValue();
for (uint8 i = 0; i < 8; ++i)
{
uint8 byte = (raw >> (i * 8)) & 0xFF;
_packedGuid[_packedSize] = byte;
if (byte)
{
_packedGuid[0] |= uint8(1 << i);
++_packedSize;
}
}
}

ByteBuffer& operator<<(ByteBuffer& buf, ObjectGuid const& guid)
{
buf << uint64(guid.GetRawValue());
Expand All @@ -97,7 +113,7 @@ ByteBuffer& operator>>(ByteBuffer& buf, ObjectGuid& guid)

ByteBuffer& operator<<(ByteBuffer& buf, PackedGuid const& guid)
{
buf.append(guid._packedGuid);
buf.append(guid._packedGuid.data(), guid._packedSize);
return buf;
}

Expand Down
17 changes: 9 additions & 8 deletions src/server/game/Entities/Object/ObjectGuid.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,12 @@
#define ObjectGuid_h__

#include "Define.h"
#include "ByteBuffer.h"
#include <array>
#include <deque>
#include <functional>
#include <list>
#include <set>
#include <string>
#include <type_traits>
#include <unordered_set>
#include <vector>
Expand Down Expand Up @@ -118,6 +119,7 @@ GUID_TRAIT_MAP_SPECIFIC(HighGuid::AreaTrigger);
#undef GUID_TRAIT_REALM_SPECIFIC
#undef GUID_TRAIT_MAP_SPECIFIC

class ByteBuffer;
class ObjectGuid;
class PackedGuid;

Expand Down Expand Up @@ -291,17 +293,16 @@ class TC_GAME_API PackedGuid
friend TC_GAME_API ByteBuffer& operator<<(ByteBuffer& buf, PackedGuid const& guid);

public:
explicit PackedGuid() : _packedGuid(PACKED_GUID_MIN_BUFFER_SIZE) { _packedGuid.appendPackGUID(0); }
explicit PackedGuid(uint64 guid) : _packedGuid(PACKED_GUID_MIN_BUFFER_SIZE) { _packedGuid.appendPackGUID(guid); }
explicit PackedGuid(ObjectGuid guid) : _packedGuid(PACKED_GUID_MIN_BUFFER_SIZE) { _packedGuid.appendPackGUID(guid.GetRawValue()); }
explicit PackedGuid() : _packedSize(1), _packedGuid() { }
explicit PackedGuid(ObjectGuid guid) { Set(guid); }

void Set(uint64 guid) { _packedGuid.wpos(0); _packedGuid.appendPackGUID(guid); }
void Set(ObjectGuid guid) { _packedGuid.wpos(0); _packedGuid.appendPackGUID(guid.GetRawValue()); }
void Set(ObjectGuid guid);

std::size_t size() const { return _packedGuid.size(); }
std::size_t size() const { return _packedSize; }

private:
ByteBuffer _packedGuid;
uint8 _packedSize;
std::array<uint8, PACKED_GUID_MIN_BUFFER_SIZE> _packedGuid;
};

class TC_GAME_API ObjectGuidGeneratorBase
Expand Down
Loading

0 comments on commit d39c7d2

Please sign in to comment.