# P~2

# PlayFab::Boxed<PlayFab::ClientModels::GenericServiceId>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::GenericServiceId>
{
  PlayFab::ClientModels::GenericServiceId boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::GenericPlayFabIdPair

struct __cppobj PlayFab::ClientModels::GenericPlayFabIdPair : PlayFab::PlayFabBaseModel
{
  PlayFab::Boxed<PlayFab::ClientModels::GenericServiceId> GenericId;
  std::string PlayFabId;
};

# PlayFab::ClientModels::GenericPlayFabIdPair_vtbl

struct /*VFT*/ PlayFab::ClientModels::GenericPlayFabIdPair_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GameCenterPlayFabIdPair

struct __cppobj PlayFab::ClientModels::GameCenterPlayFabIdPair : PlayFab::PlayFabBaseModel
{
  std::string GameCenterId;
  std::string PlayFabId;
};

# PlayFab::ClientModels::GameCenterPlayFabIdPair_vtbl

struct /*VFT*/ PlayFab::ClientModels::GameCenterPlayFabIdPair_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromGenericIDsResult

const struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromGenericIDsResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::GenericPlayFabIdPair> Data;
};

# PlayFab::ClientModels::GetPlayFabIDsFromGenericIDsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromGenericIDsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::PlayerStatisticVersion

struct __cppobj __declspec(align(8)) PlayFab::ClientModels::PlayerStatisticVersion : PlayFab::PlayFabBaseModel
{
  __int64 ActivationTime;
  PlayFab::Boxed<__int64> DeactivationTime;
  PlayFab::Boxed<__int64> ScheduledActivationTime;
  PlayFab::Boxed<__int64> ScheduledDeactivationTime;
  std::string StatisticName;
  unsigned int Version;
};

# PlayFab::ClientModels::PlayerStatisticVersion_vtbl

struct /*VFT*/ PlayFab::ClientModels::PlayerStatisticVersion_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::PlayFabLoginResultCommon

struct __cppobj PlayFab::PlayFabLoginResultCommon : PlayFab::PlayFabResultCommon
{
  std::shared_ptr<PlayFab::PlayFabAuthenticationContext> authenticationContext;
};

# PlayFab::PlayFabLoginResultCommon_vtbl

struct /*VFT*/ PlayFab::PlayFabLoginResultCommon_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::EntityKey

struct __cppobj PlayFab::ClientModels::EntityKey : PlayFab::PlayFabBaseModel
{
  std::string Id;
  std::string Type;
};

# PlayFab::ClientModels::EntityKey_vtbl

struct /*VFT*/ PlayFab::ClientModels::EntityKey_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::EntityKey>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::EntityKey>
{
  PlayFab::ClientModels::EntityKey boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::EntityTokenResponse

struct __cppobj PlayFab::ClientModels::EntityTokenResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::ClientModels::EntityKey> Entity;
  std::string EntityToken;
  PlayFab::Boxed<__int64> TokenExpiration;
};

# PlayFab::ClientModels::EntityTokenResponse_vtbl

struct /*VFT*/ PlayFab::ClientModels::EntityTokenResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::EntityTokenResponse>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::EntityTokenResponse>
{
  PlayFab::ClientModels::EntityTokenResponse boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::UserAndroidDeviceInfo

struct __cppobj PlayFab::ClientModels::UserAndroidDeviceInfo : PlayFab::PlayFabBaseModel
{
  std::string AndroidDeviceId;
};

# PlayFab::ClientModels::UserAndroidDeviceInfo_vtbl

struct /*VFT*/ PlayFab::ClientModels::UserAndroidDeviceInfo_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::UserAndroidDeviceInfo>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::UserAndroidDeviceInfo>
{
  PlayFab::ClientModels::UserAndroidDeviceInfo boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::UserCustomIdInfo

struct __cppobj PlayFab::ClientModels::UserCustomIdInfo : PlayFab::PlayFabBaseModel
{
  std::string CustomId;
};

# PlayFab::ClientModels::UserCustomIdInfo_vtbl

struct /*VFT*/ PlayFab::ClientModels::UserCustomIdInfo_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::UserCustomIdInfo>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::UserCustomIdInfo>
{
  PlayFab::ClientModels::UserCustomIdInfo boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::UserFacebookInstantGamesIdInfo

struct __cppobj PlayFab::ClientModels::UserFacebookInstantGamesIdInfo : PlayFab::PlayFabBaseModel
{
  std::string FacebookInstantGamesId;
};

# PlayFab::ClientModels::UserFacebookInstantGamesIdInfo_vtbl

struct /*VFT*/ PlayFab::ClientModels::UserFacebookInstantGamesIdInfo_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::UserFacebookInstantGamesIdInfo>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::UserFacebookInstantGamesIdInfo>
{
  PlayFab::ClientModels::UserFacebookInstantGamesIdInfo boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::UserGoogleInfo

struct __cppobj PlayFab::ClientModels::UserGoogleInfo : PlayFab::PlayFabBaseModel
{
  std::string GoogleEmail;
  std::string GoogleGender;
  std::string GoogleId;
  std::string GoogleLocale;
};

# PlayFab::ClientModels::UserGoogleInfo_vtbl

struct /*VFT*/ PlayFab::ClientModels::UserGoogleInfo_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::UserGoogleInfo>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::UserGoogleInfo>
{
  PlayFab::ClientModels::UserGoogleInfo boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::UserIosDeviceInfo

struct __cppobj PlayFab::ClientModels::UserIosDeviceInfo : PlayFab::PlayFabBaseModel
{
  std::string IosDeviceId;
};

# PlayFab::ClientModels::UserIosDeviceInfo_vtbl

struct /*VFT*/ PlayFab::ClientModels::UserIosDeviceInfo_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::UserIosDeviceInfo>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::UserIosDeviceInfo>
{
  PlayFab::ClientModels::UserIosDeviceInfo boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::UserKongregateInfo

struct __cppobj PlayFab::ClientModels::UserKongregateInfo : PlayFab::PlayFabBaseModel
{
  std::string KongregateId;
  std::string KongregateName;
};

# PlayFab::ClientModels::UserKongregateInfo_vtbl

struct /*VFT*/ PlayFab::ClientModels::UserKongregateInfo_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::UserKongregateInfo>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::UserKongregateInfo>
{
  PlayFab::ClientModels::UserKongregateInfo boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::UserNintendoSwitchDeviceIdInfo

struct __cppobj PlayFab::ClientModels::UserNintendoSwitchDeviceIdInfo : PlayFab::PlayFabBaseModel
{
  std::string NintendoSwitchDeviceId;
};

# PlayFab::ClientModels::UserNintendoSwitchDeviceIdInfo_vtbl

struct /*VFT*/ PlayFab::ClientModels::UserNintendoSwitchDeviceIdInfo_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::UserNintendoSwitchDeviceIdInfo>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::UserNintendoSwitchDeviceIdInfo>
{
  PlayFab::ClientModels::UserNintendoSwitchDeviceIdInfo boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::UserPrivateAccountInfo

struct __cppobj PlayFab::ClientModels::UserPrivateAccountInfo : PlayFab::PlayFabBaseModel
{
  std::string Email;
};

# PlayFab::ClientModels::UserPrivateAccountInfo_vtbl

struct /*VFT*/ PlayFab::ClientModels::UserPrivateAccountInfo_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::UserPrivateAccountInfo>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::UserPrivateAccountInfo>
{
  PlayFab::ClientModels::UserPrivateAccountInfo boxedValue;
  bool isSet;
};

# PlayFab::Boxed<bool>

struct __cppobj PlayFab::Boxed<bool>
{
  bool boxedValue;
  bool isSet;
};

# PlayFab::Boxed<enum PlayFab::ClientModels::UserOrigination>

struct __cppobj __declspec(align(4)) PlayFab::Boxed<enum PlayFab::ClientModels::UserOrigination>
{
  PlayFab::ClientModels::UserOrigination boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::UserTitleInfo

struct __cppobj PlayFab::ClientModels::UserTitleInfo : PlayFab::PlayFabBaseModel
{
  std::string AvatarUrl;
  __int64 Created;
  std::string DisplayName;
  PlayFab::Boxed<__int64> FirstLogin;
  PlayFab::Boxed<bool> isBanned;
  PlayFab::Boxed<__int64> LastLogin;
  PlayFab::Boxed<enum PlayFab::ClientModels::UserOrigination> Origination;
  PlayFab::Boxed<PlayFab::ClientModels::EntityKey> TitlePlayerAccount;
};

# PlayFab::ClientModels::UserTitleInfo_vtbl

struct /*VFT*/ PlayFab::ClientModels::UserTitleInfo_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::UserTitleInfo>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::UserTitleInfo>
{
  PlayFab::ClientModels::UserTitleInfo boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::UserTwitchInfo

struct __cppobj PlayFab::ClientModels::UserTwitchInfo : PlayFab::PlayFabBaseModel
{
  std::string TwitchId;
  std::string TwitchUserName;
};

# PlayFab::ClientModels::UserTwitchInfo_vtbl

struct /*VFT*/ PlayFab::ClientModels::UserTwitchInfo_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::UserTwitchInfo>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::UserTwitchInfo>
{
  PlayFab::ClientModels::UserTwitchInfo boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::UserWindowsHelloInfo

struct __cppobj PlayFab::ClientModels::UserWindowsHelloInfo : PlayFab::PlayFabBaseModel
{
  std::string WindowsHelloDeviceName;
  std::string WindowsHelloPublicKeyHash;
};

# PlayFab::ClientModels::UserWindowsHelloInfo_vtbl

struct /*VFT*/ PlayFab::ClientModels::UserWindowsHelloInfo_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::UserWindowsHelloInfo>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::UserWindowsHelloInfo>
{
  PlayFab::ClientModels::UserWindowsHelloInfo boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::UserAccountInfo

struct __cppobj PlayFab::ClientModels::UserAccountInfo : PlayFab::PlayFabBaseModel
{
  PlayFab::Boxed<PlayFab::ClientModels::UserAndroidDeviceInfo> AndroidDeviceInfo;
  __int64 Created;
  PlayFab::Boxed<PlayFab::ClientModels::UserCustomIdInfo> CustomIdInfo;
  PlayFab::Boxed<PlayFab::ClientModels::UserFacebookInfo> FacebookInfo;
  PlayFab::Boxed<PlayFab::ClientModels::UserFacebookInstantGamesIdInfo> FacebookInstantGamesIdInfo;
  PlayFab::Boxed<PlayFab::ClientModels::UserGameCenterInfo> GameCenterInfo;
  PlayFab::Boxed<PlayFab::ClientModels::UserGoogleInfo> GoogleInfo;
  PlayFab::Boxed<PlayFab::ClientModels::UserIosDeviceInfo> IosDeviceInfo;
  PlayFab::Boxed<PlayFab::ClientModels::UserKongregateInfo> KongregateInfo;
  PlayFab::Boxed<PlayFab::ClientModels::UserNintendoSwitchDeviceIdInfo> NintendoSwitchDeviceIdInfo;
  std::list<PlayFab::ClientModels::UserOpenIdInfo> OpenIdInfo;
  std::string PlayFabId;
  PlayFab::Boxed<PlayFab::ClientModels::UserPrivateAccountInfo> PrivateInfo;
  PlayFab::Boxed<PlayFab::ClientModels::UserPsnInfo> PsnInfo;
  PlayFab::Boxed<PlayFab::ClientModels::UserSteamInfo> SteamInfo;
  PlayFab::Boxed<PlayFab::ClientModels::UserTitleInfo> TitleInfo;
  PlayFab::Boxed<PlayFab::ClientModels::UserTwitchInfo> TwitchInfo;
  std::string Username;
  PlayFab::Boxed<PlayFab::ClientModels::UserWindowsHelloInfo> WindowsHelloInfo;
  PlayFab::Boxed<PlayFab::ClientModels::UserXboxInfo> XboxInfo;
};

# PlayFab::ClientModels::UserAccountInfo_vtbl

struct /*VFT*/ PlayFab::ClientModels::UserAccountInfo_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::UserAccountInfo>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::UserAccountInfo>
{
  PlayFab::ClientModels::UserAccountInfo boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::GetPlayerCombinedInfoResultPayload

struct __cppobj PlayFab::ClientModels::GetPlayerCombinedInfoResultPayload : PlayFab::PlayFabBaseModel
{
  PlayFab::Boxed<PlayFab::ClientModels::UserAccountInfo> AccountInfo;
  std::list<PlayFab::ClientModels::CharacterInventory> CharacterInventories;
  std::list<PlayFab::ClientModels::CharacterResult> CharacterList;
  PlayFab::Boxed<PlayFab::ClientModels::PlayerProfileModel> PlayerProfile;
  std::list<PlayFab::ClientModels::StatisticValue> PlayerStatistics;
  std::map<std::string,std::string> TitleData;
  std::map<std::string,PlayFab::ClientModels::UserDataRecord> UserData;
  unsigned int UserDataVersion;
  std::list<PlayFab::ClientModels::ItemInstance> UserInventory;
  std::map<std::string,PlayFab::ClientModels::UserDataRecord> UserReadOnlyData;
  unsigned int UserReadOnlyDataVersion;
  std::map<std::string,int> UserVirtualCurrency;
  std::map<std::string,PlayFab::ClientModels::VirtualCurrencyRechargeTime> UserVirtualCurrencyRechargeTimes;
};

# PlayFab::ClientModels::GetPlayerCombinedInfoResultPayload_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayerCombinedInfoResultPayload_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoResultPayload>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoResultPayload>
{
  PlayFab::ClientModels::GetPlayerCombinedInfoResultPayload boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::UserSettings

struct __cppobj __declspec(align(8)) PlayFab::ClientModels::UserSettings : PlayFab::PlayFabBaseModel
{
  bool GatherDeviceInfo;
  bool GatherFocusInfo;
  bool NeedsAttribution;
};

# PlayFab::ClientModels::UserSettings_vtbl

struct /*VFT*/ PlayFab::ClientModels::UserSettings_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::UserSettings>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::UserSettings>
{
  PlayFab::ClientModels::UserSettings boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::LoginResult

const struct __cppobj PlayFab::ClientModels::LoginResult : PlayFab::PlayFabLoginResultCommon
{
  PlayFab::Boxed<PlayFab::ClientModels::EntityTokenResponse> EntityToken;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoResultPayload> InfoResultPayload;
  PlayFab::Boxed<__int64> LastLoginTime;
  bool NewlyCreated;
  std::string PlayFabId;
  std::string SessionTicket;
  PlayFab::Boxed<PlayFab::ClientModels::UserSettings> SettingsForUser;
};

# PlayFab::ClientModels::LoginResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::PlayerLeaderboardEntry

struct __cppobj __declspec(align(8)) PlayFab::ClientModels::PlayerLeaderboardEntry : PlayFab::PlayFabBaseModel
{
  std::string DisplayName;
  std::string PlayFabId;
  int Position;
  PlayFab::Boxed<PlayFab::ClientModels::PlayerProfileModel> Profile;
  int StatValue;
};

# PlayFab::ClientModels::PlayerLeaderboardEntry_vtbl

struct /*VFT*/ PlayFab::ClientModels::PlayerLeaderboardEntry_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetFriendLeaderboardAroundPlayerResult

const struct __cppobj __declspec(align(8)) PlayFab::ClientModels::GetFriendLeaderboardAroundPlayerResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::PlayerLeaderboardEntry> Leaderboard;
  PlayFab::Boxed<__int64> NextReset;
  int Version;
};

# PlayFab::ClientModels::GetFriendLeaderboardAroundPlayerResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetFriendLeaderboardAroundPlayerResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::CartItem

struct __cppobj PlayFab::ClientModels::CartItem : PlayFab::PlayFabBaseModel
{
  std::string Description;
  std::string DisplayName;
  std::string ItemClass;
  std::string ItemId;
  std::string ItemInstanceId;
  std::map<std::string,unsigned int> RealCurrencyPrices;
  std::map<std::string,unsigned int> VCAmount;
  std::map<std::string,unsigned int> VirtualCurrencyPrices;
};

# PlayFab::ClientModels::CartItem_vtbl

struct /*VFT*/ PlayFab::ClientModels::CartItem_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkGoogleAccountResult

const struct __cppobj PlayFab::ClientModels::LinkGoogleAccountResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::LinkGoogleAccountResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkGoogleAccountResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::TradeInfo>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::TradeInfo>
{
  PlayFab::ClientModels::TradeInfo boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::AcceptTradeResponse

const struct __cppobj PlayFab::ClientModels::AcceptTradeResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::ClientModels::TradeInfo> Trade;
};

# PlayFab::ClientModels::AcceptTradeResponse_vtbl

struct /*VFT*/ PlayFab::ClientModels::AcceptTradeResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::AttributeInstallResult

const struct __cppobj PlayFab::ClientModels::AttributeInstallResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::AttributeInstallResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::AttributeInstallResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetUserDataResult

const struct __cppobj __declspec(align(8)) PlayFab::ClientModels::GetUserDataResult : PlayFab::PlayFabResultCommon
{
  std::map<std::string,PlayFab::ClientModels::UserDataRecord> Data;
  unsigned int DataVersion;
};

# PlayFab::ClientModels::GetUserDataResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetUserDataResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetTradeStatusResponse

struct __cppobj PlayFab::ClientModels::GetTradeStatusResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::ClientModels::TradeInfo> Trade;
};

# PlayFab::ClientModels::GetTradeStatusResponse_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetTradeStatusResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkSteamAccountResult

struct __cppobj PlayFab::ClientModels::UnlinkSteamAccountResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::UnlinkSteamAccountResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkSteamAccountResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::SteamPlayFabIdPair

struct __cppobj PlayFab::ClientModels::SteamPlayFabIdPair : PlayFab::PlayFabBaseModel
{
  std::string PlayFabId;
  std::string SteamStringId;
};

# PlayFab::ClientModels::SteamPlayFabIdPair_vtbl

struct /*VFT*/ PlayFab::ClientModels::SteamPlayFabIdPair_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkXboxAccountResult

const struct __cppobj PlayFab::ClientModels::UnlinkXboxAccountResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::UnlinkXboxAccountResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkXboxAccountResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::EmptyResponse

const struct __cppobj PlayFab::ClientModels::EmptyResponse : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::EmptyResponse_vtbl

struct /*VFT*/ PlayFab::ClientModels::EmptyResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GooglePlayFabIdPair

struct __cppobj PlayFab::ClientModels::GooglePlayFabIdPair : PlayFab::PlayFabBaseModel
{
  std::string GoogleId;
  std::string PlayFabId;
};

# PlayFab::ClientModels::GooglePlayFabIdPair_vtbl

struct /*VFT*/ PlayFab::ClientModels::GooglePlayFabIdPair_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromGoogleIDsResult

const struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromGoogleIDsResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::GooglePlayFabIdPair> Data;
};

# PlayFab::ClientModels::GetPlayFabIDsFromGoogleIDsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromGoogleIDsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ReportPlayerClientResult

const struct __cppobj __declspec(align(8)) PlayFab::ClientModels::ReportPlayerClientResult : PlayFab::PlayFabResultCommon
{
  int SubmissionsRemaining;
};

# PlayFab::ClientModels::ReportPlayerClientResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::ReportPlayerClientResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::PaymentOption

struct __cppobj __declspec(align(8)) PlayFab::ClientModels::PaymentOption : PlayFab::PlayFabBaseModel
{
  std::string Currency;
  unsigned int Price;
  std::string ProviderName;
  unsigned int StoreCredit;
};

# PlayFab::ClientModels::PaymentOption_vtbl

struct /*VFT*/ PlayFab::ClientModels::PaymentOption_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ConsumePSNEntitlementsResult

const struct __cppobj PlayFab::ClientModels::ConsumePSNEntitlementsResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::ItemInstance> ItemsGranted;
};

# PlayFab::ClientModels::ConsumePSNEntitlementsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::ConsumePSNEntitlementsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkCustomIDResult

const struct __cppobj PlayFab::ClientModels::LinkCustomIDResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::LinkCustomIDResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkCustomIDResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetTitleNewsResult

const struct __cppobj PlayFab::ClientModels::GetTitleNewsResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::TitleNewsItem> News;
};

# PlayFab::ClientModels::GetTitleNewsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetTitleNewsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::OpenTradeResponse

const struct __cppobj PlayFab::ClientModels::OpenTradeResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::ClientModels::TradeInfo> Trade;
};

# PlayFab::ClientModels::OpenTradeResponse_vtbl

struct /*VFT*/ PlayFab::ClientModels::OpenTradeResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetTitlePublicKeyResult

const struct __cppobj PlayFab::ClientModels::GetTitlePublicKeyResult : PlayFab::PlayFabResultCommon
{
  std::string RSAPublicKey;
};

# PlayFab::ClientModels::GetTitlePublicKeyResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetTitlePublicKeyResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetAccountInfoResult

const struct __cppobj PlayFab::ClientModels::GetAccountInfoResult : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::ClientModels::UserAccountInfo> AccountInfo;
};

# PlayFab::ClientModels::GetAccountInfoResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetAccountInfoResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::CancelTradeResponse

const struct __cppobj PlayFab::ClientModels::CancelTradeResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::ClientModels::TradeInfo> Trade;
};

# PlayFab::ClientModels::CancelTradeResponse_vtbl

struct /*VFT*/ PlayFab::ClientModels::CancelTradeResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetFriendsListResult

const struct __cppobj PlayFab::ClientModels::GetFriendsListResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::FriendInfo> Friends;
};

# PlayFab::ClientModels::GetFriendsListResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetFriendsListResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkFacebookAccountResult

const struct __cppobj PlayFab::ClientModels::LinkFacebookAccountResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::LinkFacebookAccountResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkFacebookAccountResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkFacebookInstantGamesIdResult

const struct __cppobj PlayFab::ClientModels::UnlinkFacebookInstantGamesIdResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::UnlinkFacebookInstantGamesIdResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkFacebookInstantGamesIdResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::AddUsernamePasswordResult

struct __cppobj PlayFab::ClientModels::AddUsernamePasswordResult : PlayFab::PlayFabResultCommon
{
  std::string Username;
};

# PlayFab::ClientModels::AddUsernamePasswordResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::AddUsernamePasswordResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::CurrentGamesResult

const struct __cppobj __declspec(align(8)) PlayFab::ClientModels::CurrentGamesResult : PlayFab::PlayFabResultCommon
{
  int GameCount;
  std::list<PlayFab::ClientModels::GameInfo> Games;
  int PlayerCount;
};

# PlayFab::ClientModels::CurrentGamesResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::CurrentGamesResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<enum PlayFab::ClientModels::TransactionStatus>

struct __cppobj __declspec(align(4)) PlayFab::Boxed<enum PlayFab::ClientModels::TransactionStatus>
{
  PlayFab::ClientModels::TransactionStatus boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::PayForPurchaseResult

struct __cppobj PlayFab::ClientModels::PayForPurchaseResult : PlayFab::PlayFabResultCommon
{
  unsigned int CreditApplied;
  std::string OrderId;
  std::string ProviderData;
  std::string ProviderToken;
  std::string PurchaseConfirmationPageURL;
  std::string PurchaseCurrency;
  unsigned int PurchasePrice;
  PlayFab::Boxed<enum PlayFab::ClientModels::TransactionStatus> Status;
  std::map<std::string,int> VCAmount;
  std::map<std::string,int> VirtualCurrency;
};

# PlayFab::ClientModels::PayForPurchaseResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::PayForPurchaseResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetLeaderboardResult

const struct __cppobj __declspec(align(8)) PlayFab::ClientModels::GetLeaderboardResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::PlayerLeaderboardEntry> Leaderboard;
  PlayFab::Boxed<__int64> NextReset;
  int Version;
};

# PlayFab::ClientModels::GetLeaderboardResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetLeaderboardResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GrantCharacterToUserResult

const struct __cppobj __declspec(align(8)) PlayFab::ClientModels::GrantCharacterToUserResult : PlayFab::PlayFabResultCommon
{
  std::string CharacterId;
  std::string CharacterType;
  bool Result;
};

# PlayFab::ClientModels::GrantCharacterToUserResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GrantCharacterToUserResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlockContainerItemResult

const struct __cppobj PlayFab::ClientModels::UnlockContainerItemResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::ItemInstance> GrantedItems;
  std::string UnlockedItemInstanceId;
  std::string UnlockedWithItemInstanceId;
  std::map<std::string,unsigned int> VirtualCurrency;
};

# PlayFab::ClientModels::UnlockContainerItemResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlockContainerItemResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetUserInventoryResult

const struct __cppobj PlayFab::ClientModels::GetUserInventoryResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::ItemInstance> Inventory;
  std::map<std::string,int> VirtualCurrency;
  std::map<std::string,PlayFab::ClientModels::VirtualCurrencyRechargeTime> VirtualCurrencyRechargeTimes;
};

# PlayFab::ClientModels::GetUserInventoryResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetUserInventoryResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromSteamIDsResult

const struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromSteamIDsResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::SteamPlayFabIdPair> Data;
};

# PlayFab::ClientModels::GetPlayFabIDsFromSteamIDsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromSteamIDsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayerStatisticsResult

const struct __cppobj PlayFab::ClientModels::GetPlayerStatisticsResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::StatisticValue> Statistics;
};

# PlayFab::ClientModels::GetPlayerStatisticsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayerStatisticsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromXboxLiveIDsResult

const struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromXboxLiveIDsResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::XboxLiveAccountPlayFabIdPair> Data;
};

# PlayFab::ClientModels::GetPlayFabIDsFromXboxLiveIDsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromXboxLiveIDsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPhotonAuthenticationTokenResult

const struct __cppobj PlayFab::ClientModels::GetPhotonAuthenticationTokenResult : PlayFab::PlayFabResultCommon
{
  std::string PhotonCustomAuthenticationToken;
};

# PlayFab::ClientModels::GetPhotonAuthenticationTokenResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPhotonAuthenticationTokenResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetLeaderboardAroundPlayerResult

const struct __cppobj __declspec(align(8)) PlayFab::ClientModels::GetLeaderboardAroundPlayerResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::PlayerLeaderboardEntry> Leaderboard;
  PlayFab::Boxed<__int64> NextReset;
  int Version;
};

# PlayFab::ClientModels::GetLeaderboardAroundPlayerResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetLeaderboardAroundPlayerResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkCustomIDResult

struct __cppobj PlayFab::ClientModels::UnlinkCustomIDResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::UnlinkCustomIDResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkCustomIDResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkNintendoSwitchDeviceIdResult

struct __cppobj PlayFab::ClientModels::UnlinkNintendoSwitchDeviceIdResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::UnlinkNintendoSwitchDeviceIdResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkNintendoSwitchDeviceIdResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GameServerRegionsResult

struct __cppobj PlayFab::ClientModels::GameServerRegionsResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::RegionInfo> Regions;
};

# PlayFab::ClientModels::GameServerRegionsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GameServerRegionsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetLeaderboardAroundCharacterResult

const struct __cppobj PlayFab::ClientModels::GetLeaderboardAroundCharacterResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::CharacterLeaderboardEntry> Leaderboard;
};

# PlayFab::ClientModels::GetLeaderboardAroundCharacterResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetLeaderboardAroundCharacterResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetTitleDataResult

struct __cppobj PlayFab::ClientModels::GetTitleDataResult : PlayFab::PlayFabResultCommon
{
  std::map<std::string,std::string> Data;
};

# PlayFab::ClientModels::GetTitleDataResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetTitleDataResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::RemoveContactEmailResult

const struct __cppobj PlayFab::ClientModels::RemoveContactEmailResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::RemoveContactEmailResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::RemoveContactEmailResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkPSNAccountResult

struct __cppobj PlayFab::ClientModels::UnlinkPSNAccountResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::UnlinkPSNAccountResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkPSNAccountResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkAndroidDeviceIDResult

const struct __cppobj PlayFab::ClientModels::LinkAndroidDeviceIDResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::LinkAndroidDeviceIDResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkAndroidDeviceIDResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkFacebookInstantGamesIdResult

const struct __cppobj PlayFab::ClientModels::LinkFacebookInstantGamesIdResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::LinkFacebookInstantGamesIdResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkFacebookInstantGamesIdResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetCharacterLeaderboardResult

const struct __cppobj PlayFab::ClientModels::GetCharacterLeaderboardResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::CharacterLeaderboardEntry> Leaderboard;
};

# PlayFab::ClientModels::GetCharacterLeaderboardResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetCharacterLeaderboardResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ScriptExecutionError

struct __cppobj PlayFab::ClientModels::ScriptExecutionError : PlayFab::PlayFabBaseModel
{
  std::string Error;
  std::string Message;
  std::string StackTrace;
};

# PlayFab::ClientModels::ScriptExecutionError_vtbl

struct /*VFT*/ PlayFab::ClientModels::ScriptExecutionError_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::ScriptExecutionError>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::ScriptExecutionError>
{
  PlayFab::ClientModels::ScriptExecutionError boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::ExecuteCloudScriptResult

const struct __cppobj __declspec(align(8)) PlayFab::ClientModels::ExecuteCloudScriptResult : PlayFab::PlayFabResultCommon
{
  int APIRequestsIssued;
  PlayFab::Boxed<PlayFab::ClientModels::ScriptExecutionError> Error;
  long double ExecutionTimeSeconds;
  std::string FunctionName;
  Json::Value FunctionResult;
  PlayFab::Boxed<bool> FunctionResultTooLarge;
  int HttpRequestsIssued;
  std::list<PlayFab::ClientModels::LogStatement> Logs;
  PlayFab::Boxed<bool> LogsTooLarge;
  unsigned int MemoryConsumedBytes;
  long double ProcessorTimeSeconds;
  int Revision;
};

# PlayFab::ClientModels::ExecuteCloudScriptResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::ExecuteCloudScriptResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayerCombinedInfoResult

const struct __cppobj PlayFab::ClientModels::GetPlayerCombinedInfoResult : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoResultPayload> InfoResultPayload;
  std::string PlayFabId;
};

# PlayFab::ClientModels::GetPlayerCombinedInfoResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayerCombinedInfoResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::PurchaseItemResult

const struct __cppobj PlayFab::ClientModels::PurchaseItemResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::ItemInstance> Items;
};

# PlayFab::ClientModels::PurchaseItemResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::PurchaseItemResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ConfirmPurchaseResult

const struct __cppobj PlayFab::ClientModels::ConfirmPurchaseResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::ItemInstance> Items;
  std::string OrderId;
  __int64 PurchaseDate;
};

# PlayFab::ClientModels::ConfirmPurchaseResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::ConfirmPurchaseResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkPSNAccountResult

const struct __cppobj PlayFab::ClientModels::LinkPSNAccountResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::LinkPSNAccountResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkPSNAccountResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetCharacterDataResult

struct __cppobj __declspec(align(8)) PlayFab::ClientModels::GetCharacterDataResult : PlayFab::PlayFabResultCommon
{
  std::string CharacterId;
  std::map<std::string,PlayFab::ClientModels::UserDataRecord> Data;
  unsigned int DataVersion;
};

# PlayFab::ClientModels::GetCharacterDataResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetCharacterDataResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ListUsersCharactersResult

const struct __cppobj PlayFab::ClientModels::ListUsersCharactersResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::CharacterResult> Characters;
};

# PlayFab::ClientModels::ListUsersCharactersResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::ListUsersCharactersResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPaymentTokenResult

const struct __cppobj PlayFab::ClientModels::GetPaymentTokenResult : PlayFab::PlayFabResultCommon
{
  std::string OrderId;
  std::string ProviderToken;
};

# PlayFab::ClientModels::GetPaymentTokenResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPaymentTokenResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPublisherDataResult

const struct __cppobj PlayFab::ClientModels::GetPublisherDataResult : PlayFab::PlayFabResultCommon
{
  std::map<std::string,std::string> Data;
};

# PlayFab::ClientModels::GetPublisherDataResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPublisherDataResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetTimeResult

struct __cppobj PlayFab::ClientModels::GetTimeResult : PlayFab::PlayFabResultCommon
{
  __int64 Time;
};

# PlayFab::ClientModels::GetTimeResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetTimeResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkGameCenterAccountResult

struct __cppobj PlayFab::ClientModels::LinkGameCenterAccountResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::LinkGameCenterAccountResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkGameCenterAccountResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UpdateUserDataResult

const struct __cppobj __declspec(align(8)) PlayFab::ClientModels::UpdateUserDataResult : PlayFab::PlayFabResultCommon
{
  unsigned int DataVersion;
};

# PlayFab::ClientModels::UpdateUserDataResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UpdateUserDataResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkGoogleAccountResult

const struct __cppobj PlayFab::ClientModels::UnlinkGoogleAccountResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::UnlinkGoogleAccountResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkGoogleAccountResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayerSegmentsResult

struct __cppobj PlayFab::ClientModels::GetPlayerSegmentsResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::GetSegmentResult> Segments;
};

# PlayFab::ClientModels::GetPlayerSegmentsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayerSegmentsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UpdateCharacterStatisticsResult

const struct __cppobj PlayFab::ClientModels::UpdateCharacterStatisticsResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::UpdateCharacterStatisticsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UpdateCharacterStatisticsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetCharacterInventoryResult

const struct __cppobj PlayFab::ClientModels::GetCharacterInventoryResult : PlayFab::PlayFabResultCommon
{
  std::string CharacterId;
  std::list<PlayFab::ClientModels::ItemInstance> Inventory;
  std::map<std::string,int> VirtualCurrency;
  std::map<std::string,PlayFab::ClientModels::VirtualCurrencyRechargeTime> VirtualCurrencyRechargeTimes;
};

# PlayFab::ClientModels::GetCharacterInventoryResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetCharacterInventoryResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::RestoreIOSPurchasesResult

const struct __cppobj PlayFab::ClientModels::RestoreIOSPurchasesResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::RestoreIOSPurchasesResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::RestoreIOSPurchasesResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::AddSharedGroupMembersResult

struct __cppobj PlayFab::ClientModels::AddSharedGroupMembersResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::AddSharedGroupMembersResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::AddSharedGroupMembersResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::EmptyResult

const struct __cppobj PlayFab::ClientModels::EmptyResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::EmptyResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::EmptyResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::CreateSharedGroupResult

const struct __cppobj PlayFab::ClientModels::CreateSharedGroupResult : PlayFab::PlayFabResultCommon
{
  std::string SharedGroupId;
};

# PlayFab::ClientModels::CreateSharedGroupResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::CreateSharedGroupResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ConsumeXboxEntitlementsResult

const struct __cppobj PlayFab::ClientModels::ConsumeXboxEntitlementsResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::ItemInstance> Items;
};

# PlayFab::ClientModels::ConsumeXboxEntitlementsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::ConsumeXboxEntitlementsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::AddOrUpdateContactEmailResult

const struct __cppobj PlayFab::ClientModels::AddOrUpdateContactEmailResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::AddOrUpdateContactEmailResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::AddOrUpdateContactEmailResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::Container_Dictionary_String_String

struct __cppobj PlayFab::ClientModels::Container_Dictionary_String_String : PlayFab::PlayFabBaseModel
{
  std::map<std::string,std::string> Data;
};

# PlayFab::ClientModels::Container_Dictionary_String_String_vtbl

struct /*VFT*/ PlayFab::ClientModels::Container_Dictionary_String_String_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayerTagsResult

const struct __cppobj PlayFab::ClientModels::GetPlayerTagsResult : PlayFab::PlayFabResultCommon
{
  std::string PlayFabId;
  std::list<std::string> Tags;
};

# PlayFab::ClientModels::GetPlayerTagsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayerTagsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::StoreMarketingModel

struct __cppobj PlayFab::ClientModels::StoreMarketingModel : PlayFab::PlayFabBaseModel
{
  std::string Description;
  std::string DisplayName;
  Json::Value Metadata;
};

# PlayFab::ClientModels::StoreMarketingModel_vtbl

struct /*VFT*/ PlayFab::ClientModels::StoreMarketingModel_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::StoreMarketingModel>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::StoreMarketingModel>
{
  PlayFab::ClientModels::StoreMarketingModel boxedValue;
  bool isSet;
};

# PlayFab::Boxed<enum PlayFab::ClientModels::SourceType>

struct __cppobj __declspec(align(4)) PlayFab::Boxed<enum PlayFab::ClientModels::SourceType>
{
  PlayFab::ClientModels::SourceType boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::GetStoreItemsResult

const struct __cppobj PlayFab::ClientModels::GetStoreItemsResult : PlayFab::PlayFabResultCommon
{
  std::string CatalogVersion;
  PlayFab::Boxed<PlayFab::ClientModels::StoreMarketingModel> MarketingData;
  PlayFab::Boxed<enum PlayFab::ClientModels::SourceType> Source;
  std::list<PlayFab::ClientModels::StoreItem> Store;
  std::string StoreId;
};

# PlayFab::ClientModels::GetStoreItemsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetStoreItemsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetContentDownloadUrlResult

const struct __cppobj PlayFab::ClientModels::GetContentDownloadUrlResult : PlayFab::PlayFabResultCommon
{
  std::string URL;
};

# PlayFab::ClientModels::GetContentDownloadUrlResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetContentDownloadUrlResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ValidateGooglePlayPurchaseResult

const struct __cppobj PlayFab::ClientModels::ValidateGooglePlayPurchaseResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::ValidateGooglePlayPurchaseResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::ValidateGooglePlayPurchaseResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::SendAccountRecoveryEmailResult

struct __cppobj PlayFab::ClientModels::SendAccountRecoveryEmailResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::SendAccountRecoveryEmailResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::SendAccountRecoveryEmailResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetLeaderboardForUsersCharactersResult

const struct __cppobj PlayFab::ClientModels::GetLeaderboardForUsersCharactersResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::CharacterLeaderboardEntry> Leaderboard;
};

# PlayFab::ClientModels::GetLeaderboardForUsersCharactersResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetLeaderboardForUsersCharactersResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPurchaseResult

const struct __cppobj PlayFab::ClientModels::GetPurchaseResult : PlayFab::PlayFabResultCommon
{
  std::string OrderId;
  std::string PaymentProvider;
  __int64 PurchaseDate;
  std::string TransactionId;
  std::string TransactionStatus;
};

# PlayFab::ClientModels::GetPurchaseResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPurchaseResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::RegisterPlayFabUserResult

const struct __cppobj PlayFab::ClientModels::RegisterPlayFabUserResult : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::ClientModels::EntityTokenResponse> EntityToken;
  std::string PlayFabId;
  std::string SessionTicket;
  PlayFab::Boxed<PlayFab::ClientModels::UserSettings> SettingsForUser;
  std::string Username;
};

# PlayFab::ClientModels::RegisterPlayFabUserResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::RegisterPlayFabUserResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkIOSDeviceIDResult

const struct __cppobj PlayFab::ClientModels::LinkIOSDeviceIDResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::LinkIOSDeviceIDResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkIOSDeviceIDResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UpdateUserTitleDisplayNameResult

struct __cppobj PlayFab::ClientModels::UpdateUserTitleDisplayNameResult : PlayFab::PlayFabResultCommon
{
  std::string DisplayName;
};

# PlayFab::ClientModels::UpdateUserTitleDisplayNameResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UpdateUserTitleDisplayNameResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UpdateSharedGroupDataResult

struct __cppobj PlayFab::ClientModels::UpdateSharedGroupDataResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::UpdateSharedGroupDataResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UpdateSharedGroupDataResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkGameCenterAccountResult

const struct __cppobj PlayFab::ClientModels::UnlinkGameCenterAccountResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::UnlinkGameCenterAccountResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkGameCenterAccountResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::RemoveGenericIDResult

const struct __cppobj PlayFab::ClientModels::RemoveGenericIDResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::RemoveGenericIDResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::RemoveGenericIDResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetCharacterStatisticsResult

const struct __cppobj PlayFab::ClientModels::GetCharacterStatisticsResult : PlayFab::PlayFabResultCommon
{
  std::map<std::string,int> CharacterStatistics;
};

# PlayFab::ClientModels::GetCharacterStatisticsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetCharacterStatisticsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ConsumeItemResult

const struct __cppobj __declspec(align(8)) PlayFab::ClientModels::ConsumeItemResult : PlayFab::PlayFabResultCommon
{
  std::string ItemInstanceId;
  int RemainingUses;
};

# PlayFab::ClientModels::ConsumeItemResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::ConsumeItemResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::RegisterForIOSPushNotificationResult

const struct __cppobj PlayFab::ClientModels::RegisterForIOSPushNotificationResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::RegisterForIOSPushNotificationResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::RegisterForIOSPushNotificationResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ModifyUserVirtualCurrencyResult

struct __cppobj PlayFab::ClientModels::ModifyUserVirtualCurrencyResult : PlayFab::PlayFabResultCommon
{
  int Balance;
  int BalanceChange;
  std::string PlayFabId;
  std::string VirtualCurrency;
};

# PlayFab::ClientModels::ModifyUserVirtualCurrencyResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::ModifyUserVirtualCurrencyResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromFacebookIDsResult

struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromFacebookIDsResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::FacebookPlayFabIdPair> Data;
};

# PlayFab::ClientModels::GetPlayFabIDsFromFacebookIDsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromFacebookIDsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetWindowsHelloChallengeResponse

const struct __cppobj PlayFab::ClientModels::GetWindowsHelloChallengeResponse : PlayFab::PlayFabResultCommon
{
  std::string Challenge;
};

# PlayFab::ClientModels::GetWindowsHelloChallengeResponse_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetWindowsHelloChallengeResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkAndroidDeviceIDResult

const struct __cppobj PlayFab::ClientModels::UnlinkAndroidDeviceIDResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::UnlinkAndroidDeviceIDResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkAndroidDeviceIDResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkWindowsHelloAccountResponse

const struct __cppobj PlayFab::ClientModels::UnlinkWindowsHelloAccountResponse : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::UnlinkWindowsHelloAccountResponse_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkWindowsHelloAccountResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayerProfileResult

struct __cppobj PlayFab::ClientModels::GetPlayerProfileResult : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::ClientModels::PlayerProfileModel> PlayerProfile;
};

# PlayFab::ClientModels::GetPlayerProfileResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayerProfileResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkKongregateAccountResult

const struct __cppobj PlayFab::ClientModels::UnlinkKongregateAccountResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::UnlinkKongregateAccountResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkKongregateAccountResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkFacebookAccountResult

const struct __cppobj PlayFab::ClientModels::UnlinkFacebookAccountResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::UnlinkFacebookAccountResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkFacebookAccountResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkXboxAccountResult

const struct __cppobj PlayFab::ClientModels::LinkXboxAccountResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::LinkXboxAccountResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkXboxAccountResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkWindowsHelloAccountResponse

const struct __cppobj PlayFab::ClientModels::LinkWindowsHelloAccountResponse : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::LinkWindowsHelloAccountResponse_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkWindowsHelloAccountResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::WriteEventResponse

const struct __cppobj PlayFab::ClientModels::WriteEventResponse : PlayFab::PlayFabResultCommon
{
  std::string EventId;
};

# PlayFab::ClientModels::WriteEventResponse_vtbl

struct /*VFT*/ PlayFab::ClientModels::WriteEventResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::RedeemCouponResult

const struct __cppobj PlayFab::ClientModels::RedeemCouponResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::ItemInstance> GrantedItems;
};

# PlayFab::ClientModels::RedeemCouponResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::RedeemCouponResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayerStatisticVersionsResult

const struct __cppobj PlayFab::ClientModels::GetPlayerStatisticVersionsResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::PlayerStatisticVersion> StatisticVersions;
};

# PlayFab::ClientModels::GetPlayerStatisticVersionsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayerStatisticVersionsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::AddFriendResult

const struct __cppobj __declspec(align(8)) PlayFab::ClientModels::AddFriendResult : PlayFab::PlayFabResultCommon
{
  bool Created;
};

# PlayFab::ClientModels::AddFriendResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::AddFriendResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkIOSDeviceIDResult

const struct __cppobj PlayFab::ClientModels::UnlinkIOSDeviceIDResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::UnlinkIOSDeviceIDResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkIOSDeviceIDResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkTwitchAccountResult

const struct __cppobj PlayFab::ClientModels::LinkTwitchAccountResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::LinkTwitchAccountResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkTwitchAccountResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::NintendoSwitchPlayFabIdPair

struct __cppobj PlayFab::ClientModels::NintendoSwitchPlayFabIdPair : PlayFab::PlayFabBaseModel
{
  std::string NintendoSwitchDeviceId;
  std::string PlayFabId;
};

# PlayFab::ClientModels::NintendoSwitchPlayFabIdPair_vtbl

struct /*VFT*/ PlayFab::ClientModels::NintendoSwitchPlayFabIdPair_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::SetFriendTagsResult

const struct __cppobj PlayFab::ClientModels::SetFriendTagsResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::SetFriendTagsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::SetFriendTagsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::AndroidDevicePushNotificationRegistrationResult

const struct __cppobj PlayFab::ClientModels::AndroidDevicePushNotificationRegistrationResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::AndroidDevicePushNotificationRegistrationResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::AndroidDevicePushNotificationRegistrationResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::AddGenericIDResult

const struct __cppobj PlayFab::ClientModels::AddGenericIDResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::AddGenericIDResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::AddGenericIDResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromKongregateIDsResult

const struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromKongregateIDsResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::KongregatePlayFabIdPair> Data;
};

# PlayFab::ClientModels::GetPlayFabIDsFromKongregateIDsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromKongregateIDsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromGameCenterIDsResult

const struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromGameCenterIDsResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::GameCenterPlayFabIdPair> Data;
};

# PlayFab::ClientModels::GetPlayFabIDsFromGameCenterIDsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromGameCenterIDsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UpdatePlayerStatisticsResult

const struct __cppobj PlayFab::ClientModels::UpdatePlayerStatisticsResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::UpdatePlayerStatisticsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::UpdatePlayerStatisticsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::RemoveSharedGroupMembersResult

const struct __cppobj PlayFab::ClientModels::RemoveSharedGroupMembersResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::RemoveSharedGroupMembersResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::RemoveSharedGroupMembersResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ValidateIOSReceiptResult

struct __cppobj PlayFab::ClientModels::ValidateIOSReceiptResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::ValidateIOSReceiptResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::ValidateIOSReceiptResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::SetPlayerSecretResult

struct __cppobj PlayFab::ClientModels::SetPlayerSecretResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::SetPlayerSecretResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::SetPlayerSecretResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkNintendoSwitchDeviceIdResult

const struct __cppobj PlayFab::ClientModels::LinkNintendoSwitchDeviceIdResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::LinkNintendoSwitchDeviceIdResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkNintendoSwitchDeviceIdResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ValidateWindowsReceiptResult

struct __cppobj PlayFab::ClientModels::ValidateWindowsReceiptResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::ValidateWindowsReceiptResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::ValidateWindowsReceiptResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromNintendoSwitchDeviceIdsResult

const struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromNintendoSwitchDeviceIdsResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::NintendoSwitchPlayFabIdPair> Data;
};

# PlayFab::ClientModels::GetPlayFabIDsFromNintendoSwitchDeviceIdsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromNintendoSwitchDeviceIdsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ValidateAmazonReceiptResult

const struct __cppobj PlayFab::ClientModels::ValidateAmazonReceiptResult : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ClientModels::ValidateAmazonReceiptResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::ValidateAmazonReceiptResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::StartPurchaseResult

const struct __cppobj PlayFab::ClientModels::StartPurchaseResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::CartItem> Contents;
  std::string OrderId;
  std::list<PlayFab::ClientModels::PaymentOption> PaymentOptions;
  std::map<std::string,int> VirtualCurrencyBalances;
};

# PlayFab::ClientModels::StartPurchaseResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::StartPurchaseResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetSharedGroupDataResult

const struct __cppobj PlayFab::ClientModels::GetSharedGroupDataResult : PlayFab::PlayFabResultCommon
{
  std::map<std::string,PlayFab::ClientModels::SharedGroupDataRecord> Data;
  std::list<std::string> Members;
};

# PlayFab::ClientModels::GetSharedGroupDataResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetSharedGroupDataResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<enum PlayFab::ClientModels::MatchmakeStatus>

struct __cppobj __declspec(align(4)) PlayFab::Boxed<enum PlayFab::ClientModels::MatchmakeStatus>
{
  PlayFab::ClientModels::MatchmakeStatus boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::MatchmakeResult

const struct __cppobj PlayFab::ClientModels::MatchmakeResult : PlayFab::PlayFabResultCommon
{
  std::string Expires;
  std::string LobbyID;
  PlayFab::Boxed<int> PollWaitTimeMS;
  std::string ServerIPV4Address;
  std::string ServerIPV6Address;
  PlayFab::Boxed<int> ServerPort;
  std::string ServerPublicDNSName;
  PlayFab::Boxed<enum PlayFab::ClientModels::MatchmakeStatus> Status;
  std::string Ticket;
};

# PlayFab::ClientModels::MatchmakeResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::MatchmakeResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetCatalogItemsResult

const struct __cppobj PlayFab::ClientModels::GetCatalogItemsResult : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ClientModels::CatalogItem> Catalog;
};

# PlayFab::ClientModels::GetCatalogItemsResult_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetCatalogItemsResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::CancelTradeRequest

struct __cppobj PlayFab::ClientModels::CancelTradeRequest : PlayFab::PlayFabRequestCommon
{
  std::string TradeId;
};

# PlayFab::ClientModels::CancelTradeRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::CancelTradeRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromFacebookInstantGamesIdsRequest

struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromFacebookInstantGamesIdsRequest : PlayFab::PlayFabRequestCommon
{
  std::list<std::string> FacebookInstantGamesIds;
};

# PlayFab::ClientModels::GetPlayFabIDsFromFacebookInstantGamesIdsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromFacebookInstantGamesIdsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::PlayerProfileViewConstraints

struct __cppobj PlayFab::ClientModels::PlayerProfileViewConstraints : PlayFab::PlayFabBaseModel
{
  bool ShowAvatarUrl;
  bool ShowBannedUntil;
  bool ShowCampaignAttributions;
  bool ShowContactEmailAddresses;
  bool ShowCreated;
  bool ShowDisplayName;
  bool ShowLastLogin;
  bool ShowLinkedAccounts;
  bool ShowLocations;
  bool ShowMemberships;
  bool ShowOrigination;
  bool ShowPushNotificationRegistrations;
  bool ShowStatistics;
  bool ShowTags;
  bool ShowTotalValueToDateInUsd;
  bool ShowValuesToDate;
};

# PlayFab::ClientModels::PlayerProfileViewConstraints_vtbl

struct /*VFT*/ PlayFab::ClientModels::PlayerProfileViewConstraints_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::PlayerProfileViewConstraints>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::PlayerProfileViewConstraints>
{
  PlayFab::ClientModels::PlayerProfileViewConstraints boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::GetPlayerProfileRequest

struct __cppobj PlayFab::ClientModels::GetPlayerProfileRequest : PlayFab::PlayFabRequestCommon
{
  std::string PlayFabId;
  PlayFab::Boxed<PlayFab::ClientModels::PlayerProfileViewConstraints> ProfileConstraints;
};

# PlayFab::ClientModels::GetPlayerProfileRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayerProfileRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::RefreshPSNAuthTokenRequest

struct __cppobj PlayFab::ClientModels::RefreshPSNAuthTokenRequest : PlayFab::PlayFabRequestCommon
{
  std::string AuthCode;
  PlayFab::Boxed<int> IssuerId;
  std::string RedirectUri;
};

# PlayFab::ClientModels::RefreshPSNAuthTokenRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::RefreshPSNAuthTokenRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams

struct __cppobj PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams : PlayFab::PlayFabBaseModel
{
  bool GetCharacterInventories;
  bool GetCharacterList;
  bool GetPlayerProfile;
  bool GetPlayerStatistics;
  bool GetTitleData;
  bool GetUserAccountInfo;
  bool GetUserData;
  bool GetUserInventory;
  bool GetUserReadOnlyData;
  bool GetUserVirtualCurrency;
  std::list<std::string> PlayerStatisticNames;
  PlayFab::Boxed<PlayFab::ClientModels::PlayerProfileViewConstraints> ProfileConstraints;
  std::list<std::string> TitleDataKeys;
  std::list<std::string> UserDataKeys;
  std::list<std::string> UserReadOnlyDataKeys;
};

# PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams>
{
  PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::RegisterWithWindowsHelloRequest

struct __cppobj PlayFab::ClientModels::RegisterWithWindowsHelloRequest : PlayFab::PlayFabRequestCommon
{
  std::string DeviceName;
  std::string EncryptedRequest;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string PlayerSecret;
  std::string PublicKey;
  std::string TitleId;
  std::string UserName;
};

# PlayFab::ClientModels::RegisterWithWindowsHelloRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::RegisterWithWindowsHelloRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::AddGenericIDRequest

struct __cppobj PlayFab::ClientModels::AddGenericIDRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::ClientModels::GenericServiceId GenericId;
};

# PlayFab::ClientModels::AddGenericIDRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::AddGenericIDRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithKongregateRequest

struct __cppobj PlayFab::ClientModels::LoginWithKongregateRequest : PlayFab::PlayFabRequestCommon
{
  std::string AuthTicket;
  PlayFab::Boxed<bool> CreateAccount;
  std::string EncryptedRequest;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string KongregateId;
  std::string PlayerSecret;
  std::string TitleId;
};

# PlayFab::ClientModels::LoginWithKongregateRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithKongregateRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromGoogleIDsRequest

struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromGoogleIDsRequest : PlayFab::PlayFabRequestCommon
{
  std::list<std::string> GoogleIDs;
};

# PlayFab::ClientModels::GetPlayFabIDsFromGoogleIDsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromGoogleIDsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlockContainerItemRequest

struct __cppobj PlayFab::ClientModels::UnlockContainerItemRequest : PlayFab::PlayFabRequestCommon
{
  std::string CatalogVersion;
  std::string CharacterId;
  std::string ContainerItemId;
};

# PlayFab::ClientModels::UnlockContainerItemRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlockContainerItemRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkSteamAccountRequest

struct __cppobj PlayFab::ClientModels::UnlinkSteamAccountRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::ClientModels::UnlinkSteamAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkSteamAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkTwitchAccountRequest

struct __cppobj PlayFab::ClientModels::UnlinkTwitchAccountRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::ClientModels::UnlinkTwitchAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkTwitchAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithGoogleAccountRequest

struct __cppobj PlayFab::ClientModels::LoginWithGoogleAccountRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> CreateAccount;
  std::string EncryptedRequest;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string PlayerSecret;
  std::string ServerAuthCode;
  std::string TitleId;
};

# PlayFab::ClientModels::LoginWithGoogleAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithGoogleAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ListUsersCharactersRequest

struct __cppobj PlayFab::ClientModels::ListUsersCharactersRequest : PlayFab::PlayFabRequestCommon
{
  std::string PlayFabId;
};

# PlayFab::ClientModels::ListUsersCharactersRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::ListUsersCharactersRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkPSNAccountRequest

struct __cppobj PlayFab::ClientModels::UnlinkPSNAccountRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::ClientModels::UnlinkPSNAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkPSNAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkCustomIDRequest

struct __cppobj PlayFab::ClientModels::UnlinkCustomIDRequest : PlayFab::PlayFabRequestCommon
{
  std::string CustomId;
};

# PlayFab::ClientModels::UnlinkCustomIDRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkCustomIDRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlockContainerInstanceRequest

struct __cppobj PlayFab::ClientModels::UnlockContainerInstanceRequest : PlayFab::PlayFabRequestCommon
{
  std::string CatalogVersion;
  std::string CharacterId;
  std::string ContainerItemInstanceId;
  std::string KeyItemInstanceId;
};

# PlayFab::ClientModels::UnlockContainerInstanceRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlockContainerInstanceRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetFriendLeaderboardAroundPlayerRequest

struct __cppobj PlayFab::ClientModels::GetFriendLeaderboardAroundPlayerRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> IncludeFacebookFriends;
  PlayFab::Boxed<bool> IncludeSteamFriends;
  PlayFab::Boxed<int> MaxResultsCount;
  std::string PlayFabId;
  PlayFab::Boxed<PlayFab::ClientModels::PlayerProfileViewConstraints> ProfileConstraints;
  std::string StatisticName;
  PlayFab::Boxed<int> Version;
  std::string XboxToken;
};

# PlayFab::ClientModels::GetFriendLeaderboardAroundPlayerRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetFriendLeaderboardAroundPlayerRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetLeaderboardAroundCharacterRequest

struct __cppobj PlayFab::ClientModels::GetLeaderboardAroundCharacterRequest : PlayFab::PlayFabRequestCommon
{
  std::string CharacterId;
  std::string CharacterType;
  PlayFab::Boxed<int> MaxResultsCount;
  std::string StatisticName;
};

# PlayFab::ClientModels::GetLeaderboardAroundCharacterRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetLeaderboardAroundCharacterRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::AddOrUpdateContactEmailRequest

struct __cppobj PlayFab::ClientModels::AddOrUpdateContactEmailRequest : PlayFab::PlayFabRequestCommon
{
  std::string EmailAddress;
};

# PlayFab::ClientModels::AddOrUpdateContactEmailRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::AddOrUpdateContactEmailRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UninkOpenIdConnectRequest

struct __cppobj PlayFab::ClientModels::UninkOpenIdConnectRequest : PlayFab::PlayFabRequestCommon
{
  std::string ConnectionId;
};

# PlayFab::ClientModels::UninkOpenIdConnectRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UninkOpenIdConnectRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ValidateGooglePlayPurchaseRequest

struct __cppobj PlayFab::ClientModels::ValidateGooglePlayPurchaseRequest : PlayFab::PlayFabRequestCommon
{
  std::string CurrencyCode;
  PlayFab::Boxed<unsigned int> PurchasePrice;
  std::string ReceiptJson;
  std::string Signature;
};

# PlayFab::ClientModels::ValidateGooglePlayPurchaseRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::ValidateGooglePlayPurchaseRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkFacebookInstantGamesIdRequest

struct __cppobj __declspec(align(8)) PlayFab::ClientModels::LinkFacebookInstantGamesIdRequest : PlayFab::PlayFabRequestCommon
{
  std::string FacebookInstantGamesSignature;
  PlayFab::Boxed<bool> ForceLink;
};

# PlayFab::ClientModels::LinkFacebookInstantGamesIdRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkFacebookInstantGamesIdRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithFacebookRequest

struct __cppobj PlayFab::ClientModels::LoginWithFacebookRequest : PlayFab::PlayFabRequestCommon
{
  std::string AccessToken;
  PlayFab::Boxed<bool> CreateAccount;
  std::string EncryptedRequest;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string PlayerSecret;
  std::string TitleId;
};

# PlayFab::ClientModels::LoginWithFacebookRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithFacebookRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetTimeRequest

struct __cppobj PlayFab::ClientModels::GetTimeRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::ClientModels::GetTimeRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetTimeRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::RemoveContactEmailRequest

struct __cppobj PlayFab::ClientModels::RemoveContactEmailRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::ClientModels::RemoveContactEmailRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::RemoveContactEmailRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromGenericIDsRequest

struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromGenericIDsRequest : PlayFab::PlayFabRequestCommon
{
  std::list<PlayFab::ClientModels::GenericServiceId> GenericIDs;
};

# PlayFab::ClientModels::GetPlayFabIDsFromGenericIDsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromGenericIDsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromPSNAccountIDsRequest

struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromPSNAccountIDsRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<int> IssuerId;
  std::list<std::string> PSNAccountIDs;
};

# PlayFab::ClientModels::GetPlayFabIDsFromPSNAccountIDsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromPSNAccountIDsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithSteamRequest

struct __cppobj PlayFab::ClientModels::LoginWithSteamRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> CreateAccount;
  std::string EncryptedRequest;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string PlayerSecret;
  std::string SteamTicket;
  std::string TitleId;
};

# PlayFab::ClientModels::LoginWithSteamRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithSteamRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkGoogleAccountRequest

struct __cppobj PlayFab::ClientModels::LinkGoogleAccountRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> ForceLink;
  std::string ServerAuthCode;
};

# PlayFab::ClientModels::LinkGoogleAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkGoogleAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkNintendoSwitchDeviceIdRequest

struct __cppobj PlayFab::ClientModels::UnlinkNintendoSwitchDeviceIdRequest : PlayFab::PlayFabRequestCommon
{
  std::string NintendoSwitchDeviceId;
};

# PlayFab::ClientModels::UnlinkNintendoSwitchDeviceIdRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkNintendoSwitchDeviceIdRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::CollectionFilter

struct __cppobj PlayFab::ClientModels::CollectionFilter : PlayFab::PlayFabBaseModel
{
  std::list<PlayFab::ClientModels::Container_Dictionary_String_String> Excludes;
  std::list<PlayFab::ClientModels::Container_Dictionary_String_String> Includes;
};

# PlayFab::ClientModels::CollectionFilter_vtbl

struct /*VFT*/ PlayFab::ClientModels::CollectionFilter_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkKongregateAccountRequest

struct __cppobj PlayFab::ClientModels::LinkKongregateAccountRequest : PlayFab::PlayFabRequestCommon
{
  std::string AuthTicket;
  PlayFab::Boxed<bool> ForceLink;
  std::string KongregateId;
};

# PlayFab::ClientModels::LinkKongregateAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkKongregateAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromTwitchIDsRequest

struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromTwitchIDsRequest : PlayFab::PlayFabRequestCommon
{
  std::list<std::string> TwitchIds;
};

# PlayFab::ClientModels::GetPlayFabIDsFromTwitchIDsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromTwitchIDsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UpdateUserDataRequest

struct __cppobj PlayFab::ClientModels::UpdateUserDataRequest : PlayFab::PlayFabRequestCommon
{
  std::map<std::string,std::string> Data;
  std::list<std::string> KeysToRemove;
  PlayFab::Boxed<enum PlayFab::ClientModels::UserDataPermission> Permission;
};

# PlayFab::ClientModels::UpdateUserDataRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UpdateUserDataRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ClientModels::CollectionFilter>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ClientModels::CollectionFilter>
{
  PlayFab::ClientModels::CollectionFilter boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::CurrentGamesRequest

struct __cppobj PlayFab::ClientModels::CurrentGamesRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildVersion;
  std::string GameMode;
  PlayFab::Boxed<enum PlayFab::ClientModels::Region> pfRegion;
  std::string StatisticName;
  PlayFab::Boxed<PlayFab::ClientModels::CollectionFilter> TagFilter;
};

# PlayFab::ClientModels::CurrentGamesRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::CurrentGamesRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkGameCenterAccountRequest

struct __cppobj PlayFab::ClientModels::UnlinkGameCenterAccountRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::ClientModels::UnlinkGameCenterAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkGameCenterAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::RedeemCouponRequest

struct __cppobj PlayFab::ClientModels::RedeemCouponRequest : PlayFab::PlayFabRequestCommon
{
  std::string CatalogVersion;
  std::string CharacterId;
  std::string CouponCode;
};

# PlayFab::ClientModels::RedeemCouponRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::RedeemCouponRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithAndroidDeviceIDRequest

struct __cppobj PlayFab::ClientModels::LoginWithAndroidDeviceIDRequest : PlayFab::PlayFabRequestCommon
{
  std::string AndroidDevice;
  std::string AndroidDeviceId;
  PlayFab::Boxed<bool> CreateAccount;
  std::string EncryptedRequest;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string OS;
  std::string PlayerSecret;
  std::string TitleId;
};

# PlayFab::ClientModels::LoginWithAndroidDeviceIDRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithAndroidDeviceIDRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::MatchmakeRequest

struct __cppobj PlayFab::ClientModels::MatchmakeRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildVersion;
  std::string CharacterId;
  std::string GameMode;
  std::string LobbyId;
  PlayFab::Boxed<enum PlayFab::ClientModels::Region> pfRegion;
  PlayFab::Boxed<bool> StartNewIfNoneFound;
  std::string StatisticName;
  PlayFab::Boxed<PlayFab::ClientModels::CollectionFilter> TagFilter;
};

# PlayFab::ClientModels::MatchmakeRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::MatchmakeRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkWindowsHelloAccountRequest

struct __cppobj PlayFab::ClientModels::LinkWindowsHelloAccountRequest : PlayFab::PlayFabRequestCommon
{
  std::string DeviceName;
  PlayFab::Boxed<bool> ForceLink;
  std::string PublicKey;
  std::string UserName;
};

# PlayFab::ClientModels::LinkWindowsHelloAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkWindowsHelloAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayerStatisticsRequest

struct __cppobj PlayFab::ClientModels::GetPlayerStatisticsRequest : PlayFab::PlayFabRequestCommon
{
  std::list<std::string> StatisticNames;
  std::list<PlayFab::ClientModels::StatisticNameVersion> StatisticNameVersions;
};

# PlayFab::ClientModels::GetPlayerStatisticsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayerStatisticsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkIOSDeviceIDRequest

struct __cppobj PlayFab::ClientModels::UnlinkIOSDeviceIDRequest : PlayFab::PlayFabRequestCommon
{
  std::string DeviceId;
};

# PlayFab::ClientModels::UnlinkIOSDeviceIDRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkIOSDeviceIDRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::WriteClientCharacterEventRequest

struct __cppobj PlayFab::ClientModels::WriteClientCharacterEventRequest : PlayFab::PlayFabRequestCommon
{
  Json::Value Body;
  std::string CharacterId;
  std::string EventName;
  PlayFab::Boxed<__int64> Timestamp;
};

# PlayFab::ClientModels::WriteClientCharacterEventRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::WriteClientCharacterEventRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetTitleNewsRequest

struct __cppobj PlayFab::ClientModels::GetTitleNewsRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<int> Count;
};

# PlayFab::ClientModels::GetTitleNewsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetTitleNewsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetCatalogItemsRequest

struct __cppobj PlayFab::ClientModels::GetCatalogItemsRequest : PlayFab::PlayFabRequestCommon
{
  std::string CatalogVersion;
};

# PlayFab::ClientModels::GetCatalogItemsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetCatalogItemsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::StartGameRequest

struct __cppobj PlayFab::ClientModels::StartGameRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildVersion;
  std::string CharacterId;
  std::string CustomCommandLineData;
  std::string GameMode;
  PlayFab::ClientModels::Region pfRegion;
  std::string StatisticName;
};

# PlayFab::ClientModels::StartGameRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::StartGameRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkAndroidDeviceIDRequest

struct __cppobj PlayFab::ClientModels::UnlinkAndroidDeviceIDRequest : PlayFab::PlayFabRequestCommon
{
  std::string AndroidDeviceId;
};

# PlayFab::ClientModels::UnlinkAndroidDeviceIDRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkAndroidDeviceIDRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetSharedGroupDataRequest

struct __cppobj PlayFab::ClientModels::GetSharedGroupDataRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> GetMembers;
  std::list<std::string> Keys;
  std::string SharedGroupId;
};

# PlayFab::ClientModels::GetSharedGroupDataRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetSharedGroupDataRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithWindowsHelloRequest

struct __cppobj PlayFab::ClientModels::LoginWithWindowsHelloRequest : PlayFab::PlayFabRequestCommon
{
  std::string ChallengeSignature;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string PublicKeyHint;
  std::string TitleId;
};

# PlayFab::ClientModels::LoginWithWindowsHelloRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithWindowsHelloRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkXboxAccountRequest

struct __cppobj PlayFab::ClientModels::LinkXboxAccountRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> ForceLink;
  std::string XboxToken;
};

# PlayFab::ClientModels::LinkXboxAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkXboxAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ValidateWindowsReceiptRequest

struct __cppobj PlayFab::ClientModels::ValidateWindowsReceiptRequest : PlayFab::PlayFabRequestCommon
{
  std::string CatalogVersion;
  std::string CurrencyCode;
  unsigned int PurchasePrice;
  std::string Receipt;
};

# PlayFab::ClientModels::ValidateWindowsReceiptRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::ValidateWindowsReceiptRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetTradeStatusRequest

struct __cppobj PlayFab::ClientModels::GetTradeStatusRequest : PlayFab::PlayFabRequestCommon
{
  std::string OfferingPlayerId;
  std::string TradeId;
};

# PlayFab::ClientModels::GetTradeStatusRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetTradeStatusRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetCharacterDataRequest

struct __cppobj PlayFab::ClientModels::GetCharacterDataRequest : PlayFab::PlayFabRequestCommon
{
  std::string CharacterId;
  PlayFab::Boxed<unsigned int> IfChangedFromDataVersion;
  std::list<std::string> Keys;
  std::string PlayFabId;
};

# PlayFab::ClientModels::GetCharacterDataRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetCharacterDataRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithGameCenterRequest

struct __cppobj PlayFab::ClientModels::LoginWithGameCenterRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> CreateAccount;
  std::string EncryptedRequest;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string PlayerId;
  std::string PlayerSecret;
  std::string PublicKeyUrl;
  std::string Salt;
  std::string Signature;
  std::string Timestamp;
  std::string TitleId;
};

# PlayFab::ClientModels::LoginWithGameCenterRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithGameCenterRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayerSegmentsRequest

struct __cppobj PlayFab::ClientModels::GetPlayerSegmentsRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::ClientModels::GetPlayerSegmentsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayerSegmentsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::RestoreIOSPurchasesRequest

struct __cppobj PlayFab::ClientModels::RestoreIOSPurchasesRequest : PlayFab::PlayFabRequestCommon
{
  std::string ReceiptData;
};

# PlayFab::ClientModels::RestoreIOSPurchasesRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::RestoreIOSPurchasesRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayerStatisticVersionsRequest

struct __cppobj PlayFab::ClientModels::GetPlayerStatisticVersionsRequest : PlayFab::PlayFabRequestCommon
{
  std::string StatisticName;
};

# PlayFab::ClientModels::GetPlayerStatisticVersionsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayerStatisticVersionsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::CreateSharedGroupRequest

struct __cppobj PlayFab::ClientModels::CreateSharedGroupRequest : PlayFab::PlayFabRequestCommon
{
  std::string SharedGroupId;
};

# PlayFab::ClientModels::CreateSharedGroupRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::CreateSharedGroupRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UpdatePlayerStatisticsRequest

struct __cppobj PlayFab::ClientModels::UpdatePlayerStatisticsRequest : PlayFab::PlayFabRequestCommon
{
  std::list<PlayFab::ClientModels::StatisticUpdate> Statistics;
};

# PlayFab::ClientModels::UpdatePlayerStatisticsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UpdatePlayerStatisticsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetTitlePublicKeyRequest

struct __cppobj PlayFab::ClientModels::GetTitlePublicKeyRequest : PlayFab::PlayFabRequestCommon
{
  std::string TitleId;
  std::string TitleSharedSecret;
};

# PlayFab::ClientModels::GetTitlePublicKeyRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetTitlePublicKeyRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<enum PlayFab::ClientModels::CloudScriptRevisionOption>

struct __cppobj __declspec(align(4)) PlayFab::Boxed<enum PlayFab::ClientModels::CloudScriptRevisionOption>
{
  PlayFab::ClientModels::CloudScriptRevisionOption boxedValue;
  bool isSet;
};

# PlayFab::ClientModels::ExecuteCloudScriptRequest

struct __cppobj __declspec(align(8)) PlayFab::ClientModels::ExecuteCloudScriptRequest : PlayFab::PlayFabRequestCommon
{
  std::string FunctionName;
  Json::Value FunctionParameter;
  PlayFab::Boxed<bool> GeneratePlayStreamEvent;
  PlayFab::Boxed<enum PlayFab::ClientModels::CloudScriptRevisionOption> RevisionSelection;
  PlayFab::Boxed<int> SpecificRevision;
};

# PlayFab::ClientModels::ExecuteCloudScriptRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::ExecuteCloudScriptRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::RegisterPlayFabUserRequest

struct __cppobj PlayFab::ClientModels::RegisterPlayFabUserRequest : PlayFab::PlayFabRequestCommon
{
  std::string DisplayName;
  std::string Email;
  std::string EncryptedRequest;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string Password;
  std::string PlayerSecret;
  PlayFab::Boxed<bool> RequireBothUsernameAndEmail;
  std::string TitleId;
  std::string Username;
};

# PlayFab::ClientModels::RegisterPlayFabUserRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::RegisterPlayFabUserRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithPlayFabRequest

struct __cppobj PlayFab::ClientModels::LoginWithPlayFabRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string Password;
  std::string TitleId;
  std::string Username;
};

# PlayFab::ClientModels::LoginWithPlayFabRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithPlayFabRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::WriteClientPlayerEventRequest

struct __cppobj PlayFab::ClientModels::WriteClientPlayerEventRequest : PlayFab::PlayFabRequestCommon
{
  Json::Value Body;
  std::string EventName;
  PlayFab::Boxed<__int64> Timestamp;
};

# PlayFab::ClientModels::WriteClientPlayerEventRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::WriteClientPlayerEventRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::AndroidDevicePushNotificationRegistrationRequest

struct __cppobj __declspec(align(8)) PlayFab::ClientModels::AndroidDevicePushNotificationRegistrationRequest : PlayFab::PlayFabRequestCommon
{
  std::string ConfirmationMessage;
  std::string DeviceToken;
  PlayFab::Boxed<bool> SendPushNotificationConfirmation;
};

# PlayFab::ClientModels::AndroidDevicePushNotificationRegistrationRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::AndroidDevicePushNotificationRegistrationRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::AcceptTradeRequest

struct __cppobj PlayFab::ClientModels::AcceptTradeRequest : PlayFab::PlayFabRequestCommon
{
  std::list<std::string> AcceptedInventoryInstanceIds;
  std::string OfferingPlayerId;
  std::string TradeId;
};

# PlayFab::ClientModels::AcceptTradeRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::AcceptTradeRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UpdateAvatarUrlRequest

struct __cppobj PlayFab::ClientModels::UpdateAvatarUrlRequest : PlayFab::PlayFabRequestCommon
{
  std::string ImageUrl;
};

# PlayFab::ClientModels::UpdateAvatarUrlRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UpdateAvatarUrlRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetStoreItemsRequest

struct __cppobj PlayFab::ClientModels::GetStoreItemsRequest : PlayFab::PlayFabRequestCommon
{
  std::string CatalogVersion;
  std::string StoreId;
};

# PlayFab::ClientModels::GetStoreItemsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetStoreItemsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithTwitchRequest

struct __cppobj PlayFab::ClientModels::LoginWithTwitchRequest : PlayFab::PlayFabRequestCommon
{
  std::string AccessToken;
  PlayFab::Boxed<bool> CreateAccount;
  std::string EncryptedRequest;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string PlayerSecret;
  std::string TitleId;
};

# PlayFab::ClientModels::LoginWithTwitchRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithTwitchRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithCustomIDRequest

struct __cppobj PlayFab::ClientModels::LoginWithCustomIDRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> CreateAccount;
  std::string CustomId;
  std::string EncryptedRequest;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string PlayerSecret;
  std::string TitleId;
};

# PlayFab::ClientModels::LoginWithCustomIDRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithCustomIDRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkKongregateAccountRequest

struct __cppobj PlayFab::ClientModels::UnlinkKongregateAccountRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::ClientModels::UnlinkKongregateAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkKongregateAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::AttributeInstallRequest

struct __cppobj PlayFab::ClientModels::AttributeInstallRequest : PlayFab::PlayFabRequestCommon
{
  std::string Adid;
  std::string Idfa;
};

# PlayFab::ClientModels::AttributeInstallRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::AttributeInstallRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ReportPlayerClientRequest

struct __cppobj PlayFab::ClientModels::ReportPlayerClientRequest : PlayFab::PlayFabRequestCommon
{
  std::string Comment;
  std::string ReporteeId;
};

# PlayFab::ClientModels::ReportPlayerClientRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::ReportPlayerClientRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkFacebookAccountRequest

struct __cppobj __declspec(align(8)) PlayFab::ClientModels::LinkFacebookAccountRequest : PlayFab::PlayFabRequestCommon
{
  std::string AccessToken;
  PlayFab::Boxed<bool> ForceLink;
};

# PlayFab::ClientModels::LinkFacebookAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkFacebookAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkXboxAccountRequest

struct __cppobj PlayFab::ClientModels::UnlinkXboxAccountRequest : PlayFab::PlayFabRequestCommon
{
  std::string XboxToken;
};

# PlayFab::ClientModels::UnlinkXboxAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkXboxAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetLeaderboardRequest

struct __cppobj PlayFab::ClientModels::GetLeaderboardRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<int> MaxResultsCount;
  PlayFab::Boxed<PlayFab::ClientModels::PlayerProfileViewConstraints> ProfileConstraints;
  int StartPosition;
  std::string StatisticName;
  PlayFab::Boxed<int> Version;
};

# PlayFab::ClientModels::GetLeaderboardRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetLeaderboardRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkCustomIDRequest

struct __cppobj __declspec(align(8)) PlayFab::ClientModels::LinkCustomIDRequest : PlayFab::PlayFabRequestCommon
{
  std::string CustomId;
  PlayFab::Boxed<bool> ForceLink;
};

# PlayFab::ClientModels::LinkCustomIDRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkCustomIDRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest

struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest : PlayFab::PlayFabRequestCommon
{
  std::list<std::string> NintendoSwitchDeviceIds;
};

# PlayFab::ClientModels::GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromNintendoSwitchDeviceIdsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithPSNRequest

struct __cppobj PlayFab::ClientModels::LoginWithPSNRequest : PlayFab::PlayFabRequestCommon
{
  std::string AuthCode;
  PlayFab::Boxed<bool> CreateAccount;
  std::string EncryptedRequest;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  PlayFab::Boxed<int> IssuerId;
  std::string PlayerSecret;
  std::string RedirectUri;
  std::string TitleId;
};

# PlayFab::ClientModels::LoginWithPSNRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithPSNRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkIOSDeviceIDRequest

struct __cppobj PlayFab::ClientModels::LinkIOSDeviceIDRequest : PlayFab::PlayFabRequestCommon
{
  std::string DeviceId;
  std::string DeviceModel;
  PlayFab::Boxed<bool> ForceLink;
  std::string OS;
};

# PlayFab::ClientModels::LinkIOSDeviceIDRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkIOSDeviceIDRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetCharacterStatisticsRequest

struct __cppobj PlayFab::ClientModels::GetCharacterStatisticsRequest : PlayFab::PlayFabRequestCommon
{
  std::string CharacterId;
};

# PlayFab::ClientModels::GetCharacterStatisticsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetCharacterStatisticsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithNintendoSwitchDeviceIdRequest

struct __cppobj PlayFab::ClientModels::LoginWithNintendoSwitchDeviceIdRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> CreateAccount;
  std::string EncryptedRequest;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string NintendoSwitchDeviceId;
  std::string PlayerSecret;
  std::string TitleId;
};

# PlayFab::ClientModels::LoginWithNintendoSwitchDeviceIdRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithNintendoSwitchDeviceIdRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UpdateCharacterStatisticsRequest

struct __cppobj PlayFab::ClientModels::UpdateCharacterStatisticsRequest : PlayFab::PlayFabRequestCommon
{
  std::string CharacterId;
  std::map<std::string,int> CharacterStatistics;
};

# PlayFab::ClientModels::UpdateCharacterStatisticsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UpdateCharacterStatisticsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPublisherDataRequest

struct __cppobj PlayFab::ClientModels::GetPublisherDataRequest : PlayFab::PlayFabRequestCommon
{
  std::list<std::string> Keys;
};

# PlayFab::ClientModels::GetPublisherDataRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPublisherDataRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ConsumeItemRequest

struct __cppobj PlayFab::ClientModels::ConsumeItemRequest : PlayFab::PlayFabRequestCommon
{
  std::string CharacterId;
  int ConsumeCount;
  std::string ItemInstanceId;
};

# PlayFab::ClientModels::ConsumeItemRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::ConsumeItemRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetLeaderboardAroundPlayerRequest

struct __cppobj PlayFab::ClientModels::GetLeaderboardAroundPlayerRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<int> MaxResultsCount;
  std::string PlayFabId;
  PlayFab::Boxed<PlayFab::ClientModels::PlayerProfileViewConstraints> ProfileConstraints;
  std::string StatisticName;
  PlayFab::Boxed<int> Version;
};

# PlayFab::ClientModels::GetLeaderboardAroundPlayerRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetLeaderboardAroundPlayerRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetAccountInfoRequest

struct __cppobj PlayFab::ClientModels::GetAccountInfoRequest : PlayFab::PlayFabRequestCommon
{
  std::string Email;
  std::string PlayFabId;
  std::string TitleDisplayName;
  std::string Username;
};

# PlayFab::ClientModels::GetAccountInfoRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetAccountInfoRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetTitleDataRequest

struct __cppobj PlayFab::ClientModels::GetTitleDataRequest : PlayFab::PlayFabRequestCommon
{
  std::list<std::string> Keys;
};

# PlayFab::ClientModels::GetTitleDataRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetTitleDataRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkSteamAccountRequest

struct __cppobj PlayFab::ClientModels::LinkSteamAccountRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> ForceLink;
  std::string SteamTicket;
};

# PlayFab::ClientModels::LinkSteamAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkSteamAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkNintendoSwitchDeviceIdRequest

struct __cppobj PlayFab::ClientModels::LinkNintendoSwitchDeviceIdRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> ForceLink;
  std::string NintendoSwitchDeviceId;
};

# PlayFab::ClientModels::LinkNintendoSwitchDeviceIdRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkNintendoSwitchDeviceIdRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithEmailAddressRequest

struct __cppobj PlayFab::ClientModels::LoginWithEmailAddressRequest : PlayFab::PlayFabRequestCommon
{
  std::string Email;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string Password;
  std::string TitleId;
};

# PlayFab::ClientModels::LoginWithEmailAddressRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithEmailAddressRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithFacebookInstantGamesIdRequest

struct __cppobj PlayFab::ClientModels::LoginWithFacebookInstantGamesIdRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> CreateAccount;
  std::string EncryptedRequest;
  std::string FacebookInstantGamesSignature;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string PlayerSecret;
  std::string TitleId;
};

# PlayFab::ClientModels::LoginWithFacebookInstantGamesIdRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithFacebookInstantGamesIdRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithIOSDeviceIDRequest

struct __cppobj PlayFab::ClientModels::LoginWithIOSDeviceIDRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> CreateAccount;
  std::string DeviceId;
  std::string DeviceModel;
  std::string EncryptedRequest;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string OS;
  std::string PlayerSecret;
  std::string TitleId;
};

# PlayFab::ClientModels::LoginWithIOSDeviceIDRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithIOSDeviceIDRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetCharacterInventoryRequest

struct __cppobj PlayFab::ClientModels::GetCharacterInventoryRequest : PlayFab::PlayFabRequestCommon
{
  std::string CatalogVersion;
  std::string CharacterId;
};

# PlayFab::ClientModels::GetCharacterInventoryRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetCharacterInventoryRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromKongregateIDsRequest

struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromKongregateIDsRequest : PlayFab::PlayFabRequestCommon
{
  std::list<std::string> KongregateIDs;
};

# PlayFab::ClientModels::GetPlayFabIDsFromKongregateIDsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromKongregateIDsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ConfirmPurchaseRequest

struct __cppobj PlayFab::ClientModels::ConfirmPurchaseRequest : PlayFab::PlayFabRequestCommon
{
  std::string OrderId;
};

# PlayFab::ClientModels::ConfirmPurchaseRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::ConfirmPurchaseRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::DeviceInfoRequest

struct __cppobj PlayFab::ClientModels::DeviceInfoRequest : PlayFab::PlayFabRequestCommon
{
  Json::Value Info;
};

# PlayFab::ClientModels::DeviceInfoRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::DeviceInfoRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetFriendsListRequest

struct __cppobj PlayFab::ClientModels::GetFriendsListRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> IncludeFacebookFriends;
  PlayFab::Boxed<bool> IncludeSteamFriends;
  PlayFab::Boxed<PlayFab::ClientModels::PlayerProfileViewConstraints> ProfileConstraints;
  std::string XboxToken;
};

# PlayFab::ClientModels::GetFriendsListRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetFriendsListRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetUserDataRequest

struct __cppobj PlayFab::ClientModels::GetUserDataRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<unsigned int> IfChangedFromDataVersion;
  std::list<std::string> Keys;
  std::string PlayFabId;
};

# PlayFab::ClientModels::GetUserDataRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetUserDataRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GrantCharacterToUserRequest

struct __cppobj PlayFab::ClientModels::GrantCharacterToUserRequest : PlayFab::PlayFabRequestCommon
{
  std::string CatalogVersion;
  std::string CharacterName;
  std::string ItemId;
};

# PlayFab::ClientModels::GrantCharacterToUserRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GrantCharacterToUserRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPaymentTokenRequest

struct __cppobj PlayFab::ClientModels::GetPaymentTokenRequest : PlayFab::PlayFabRequestCommon
{
  std::string TokenProvider;
};

# PlayFab::ClientModels::GetPaymentTokenRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPaymentTokenRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::SendAccountRecoveryEmailRequest

struct __cppobj PlayFab::ClientModels::SendAccountRecoveryEmailRequest : PlayFab::PlayFabRequestCommon
{
  std::string Email;
  std::string EmailTemplateId;
  std::string TitleId;
};

# PlayFab::ClientModels::SendAccountRecoveryEmailRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::SendAccountRecoveryEmailRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetFriendLeaderboardRequest

struct __cppobj PlayFab::ClientModels::GetFriendLeaderboardRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> IncludeFacebookFriends;
  PlayFab::Boxed<bool> IncludeSteamFriends;
  PlayFab::Boxed<int> MaxResultsCount;
  PlayFab::Boxed<PlayFab::ClientModels::PlayerProfileViewConstraints> ProfileConstraints;
  int StartPosition;
  std::string StatisticName;
  PlayFab::Boxed<int> Version;
  std::string XboxToken;
};

# PlayFab::ClientModels::GetFriendLeaderboardRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetFriendLeaderboardRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ValidateIOSReceiptRequest

struct __cppobj PlayFab::ClientModels::ValidateIOSReceiptRequest : PlayFab::PlayFabRequestCommon
{
  std::string CurrencyCode;
  int PurchasePrice;
  std::string ReceiptData;
};

# PlayFab::ClientModels::ValidateIOSReceiptRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::ValidateIOSReceiptRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkFacebookInstantGamesIdRequest

struct __cppobj PlayFab::ClientModels::UnlinkFacebookInstantGamesIdRequest : PlayFab::PlayFabRequestCommon
{
  std::string FacebookInstantGamesId;
};

# PlayFab::ClientModels::UnlinkFacebookInstantGamesIdRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkFacebookInstantGamesIdRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkFacebookAccountRequest

struct __cppobj PlayFab::ClientModels::UnlinkFacebookAccountRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::ClientModels::UnlinkFacebookAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkFacebookAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkTwitchAccountRequest

struct __cppobj __declspec(align(8)) PlayFab::ClientModels::LinkTwitchAccountRequest : PlayFab::PlayFabRequestCommon
{
  std::string AccessToken;
  PlayFab::Boxed<bool> ForceLink;
};

# PlayFab::ClientModels::LinkTwitchAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkTwitchAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ConsumeXboxEntitlementsRequest

struct __cppobj PlayFab::ClientModels::ConsumeXboxEntitlementsRequest : PlayFab::PlayFabRequestCommon
{
  std::string CatalogVersion;
  std::string XboxToken;
};

# PlayFab::ClientModels::ConsumeXboxEntitlementsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::ConsumeXboxEntitlementsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkPSNAccountRequest

struct __cppobj PlayFab::ClientModels::LinkPSNAccountRequest : PlayFab::PlayFabRequestCommon
{
  std::string AuthCode;
  PlayFab::Boxed<bool> ForceLink;
  PlayFab::Boxed<int> IssuerId;
  std::string RedirectUri;
};

# PlayFab::ClientModels::LinkPSNAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkPSNAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::AddFriendRequest

struct __cppobj PlayFab::ClientModels::AddFriendRequest : PlayFab::PlayFabRequestCommon
{
  std::string FriendEmail;
  std::string FriendPlayFabId;
  std::string FriendTitleDisplayName;
  std::string FriendUsername;
};

# PlayFab::ClientModels::AddFriendRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::AddFriendRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetWindowsHelloChallengeRequest

struct __cppobj PlayFab::ClientModels::GetWindowsHelloChallengeRequest : PlayFab::PlayFabRequestCommon
{
  std::string PublicKeyHint;
  std::string TitleId;
};

# PlayFab::ClientModels::GetWindowsHelloChallengeRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetWindowsHelloChallengeRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetCharacterLeaderboardRequest

struct __cppobj PlayFab::ClientModels::GetCharacterLeaderboardRequest : PlayFab::PlayFabRequestCommon
{
  std::string CharacterType;
  PlayFab::Boxed<int> MaxResultsCount;
  int StartPosition;
  std::string StatisticName;
};

# PlayFab::ClientModels::GetCharacterLeaderboardRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetCharacterLeaderboardRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::AddSharedGroupMembersRequest

struct __cppobj PlayFab::ClientModels::AddSharedGroupMembersRequest : PlayFab::PlayFabRequestCommon
{
  std::list<std::string> PlayFabIds;
  std::string SharedGroupId;
};

# PlayFab::ClientModels::AddSharedGroupMembersRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::AddSharedGroupMembersRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ConsumePSNEntitlementsRequest

struct __cppobj __declspec(align(8)) PlayFab::ClientModels::ConsumePSNEntitlementsRequest : PlayFab::PlayFabRequestCommon
{
  std::string CatalogVersion;
  int ServiceLabel;
};

# PlayFab::ClientModels::ConsumePSNEntitlementsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::ConsumePSNEntitlementsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::SubtractUserVirtualCurrencyRequest

struct __cppobj PlayFab::ClientModels::SubtractUserVirtualCurrencyRequest : PlayFab::PlayFabRequestCommon
{
  int Amount;
  std::string VirtualCurrency;
};

# PlayFab::ClientModels::SubtractUserVirtualCurrencyRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::SubtractUserVirtualCurrencyRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithOpenIdConnectRequest

struct __cppobj PlayFab::ClientModels::LoginWithOpenIdConnectRequest : PlayFab::PlayFabRequestCommon
{
  std::string ConnectionId;
  PlayFab::Boxed<bool> CreateAccount;
  std::string EncryptedRequest;
  std::string IdToken;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string PlayerSecret;
  std::string TitleId;
};

# PlayFab::ClientModels::LoginWithOpenIdConnectRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithOpenIdConnectRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetLeaderboardForUsersCharactersRequest

struct __cppobj PlayFab::ClientModels::GetLeaderboardForUsersCharactersRequest : PlayFab::PlayFabRequestCommon
{
  int MaxResultsCount;
  std::string StatisticName;
};

# PlayFab::ClientModels::GetLeaderboardForUsersCharactersRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetLeaderboardForUsersCharactersRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::RemoveFriendRequest

struct __cppobj PlayFab::ClientModels::RemoveFriendRequest : PlayFab::PlayFabRequestCommon
{
  std::string FriendPlayFabId;
};

# PlayFab::ClientModels::RemoveFriendRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::RemoveFriendRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayerTagsRequest

struct __cppobj PlayFab::ClientModels::GetPlayerTagsRequest : PlayFab::PlayFabRequestCommon
{
  std::string Namespace;
  std::string PlayFabId;
};

# PlayFab::ClientModels::GetPlayerTagsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayerTagsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::RemoveSharedGroupMembersRequest

struct __cppobj PlayFab::ClientModels::RemoveSharedGroupMembersRequest : PlayFab::PlayFabRequestCommon
{
  std::list<std::string> PlayFabIds;
  std::string SharedGroupId;
};

# PlayFab::ClientModels::RemoveSharedGroupMembersRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::RemoveSharedGroupMembersRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::RegisterForIOSPushNotificationRequest

struct __cppobj __declspec(align(8)) PlayFab::ClientModels::RegisterForIOSPushNotificationRequest : PlayFab::PlayFabRequestCommon
{
  std::string ConfirmationMessage;
  std::string DeviceToken;
  PlayFab::Boxed<bool> SendPushNotificationConfirmation;
};

# PlayFab::ClientModels::RegisterForIOSPushNotificationRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::RegisterForIOSPushNotificationRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::OpenTradeRequest

struct __cppobj PlayFab::ClientModels::OpenTradeRequest : PlayFab::PlayFabRequestCommon
{
  std::list<std::string> AllowedPlayerIds;
  std::list<std::string> OfferedInventoryInstanceIds;
  std::list<std::string> RequestedCatalogItemIds;
};

# PlayFab::ClientModels::OpenTradeRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::OpenTradeRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkGameCenterAccountRequest

struct __cppobj PlayFab::ClientModels::LinkGameCenterAccountRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> ForceLink;
  std::string GameCenterId;
  std::string PublicKeyUrl;
  std::string Salt;
  std::string Signature;
  std::string Timestamp;
};

# PlayFab::ClientModels::LinkGameCenterAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkGameCenterAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromFacebookIDsRequest

struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromFacebookIDsRequest : PlayFab::PlayFabRequestCommon
{
  std::list<std::string> FacebookIDs;
};

# PlayFab::ClientModels::GetPlayFabIDsFromFacebookIDsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromFacebookIDsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::RemoveGenericIDRequest

struct __cppobj PlayFab::ClientModels::RemoveGenericIDRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::ClientModels::GenericServiceId GenericId;
};

# PlayFab::ClientModels::RemoveGenericIDRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::RemoveGenericIDRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkGoogleAccountRequest

struct __cppobj PlayFab::ClientModels::UnlinkGoogleAccountRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::ClientModels::UnlinkGoogleAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkGoogleAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::AddUserVirtualCurrencyRequest

struct __cppobj PlayFab::ClientModels::AddUserVirtualCurrencyRequest : PlayFab::PlayFabRequestCommon
{
  int Amount;
  std::string VirtualCurrency;
};

# PlayFab::ClientModels::AddUserVirtualCurrencyRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::AddUserVirtualCurrencyRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkOpenIdConnectRequest

struct __cppobj PlayFab::ClientModels::LinkOpenIdConnectRequest : PlayFab::PlayFabRequestCommon
{
  std::string ConnectionId;
  PlayFab::Boxed<bool> ForceLink;
  std::string IdToken;
};

# PlayFab::ClientModels::LinkOpenIdConnectRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkOpenIdConnectRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetUserInventoryRequest

struct __cppobj PlayFab::ClientModels::GetUserInventoryRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::ClientModels::GetUserInventoryRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetUserInventoryRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromGameCenterIDsRequest

struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromGameCenterIDsRequest : PlayFab::PlayFabRequestCommon
{
  std::list<std::string> GameCenterIDs;
};

# PlayFab::ClientModels::GetPlayFabIDsFromGameCenterIDsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromGameCenterIDsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::WriteTitleEventRequest

struct __cppobj PlayFab::ClientModels::WriteTitleEventRequest : PlayFab::PlayFabRequestCommon
{
  Json::Value Body;
  std::string EventName;
  PlayFab::Boxed<__int64> Timestamp;
};

# PlayFab::ClientModels::WriteTitleEventRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::WriteTitleEventRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetContentDownloadUrlRequest

struct __cppobj __declspec(align(8)) PlayFab::ClientModels::GetContentDownloadUrlRequest : PlayFab::PlayFabRequestCommon
{
  std::string HttpMethod;
  std::string Key;
  PlayFab::Boxed<bool> ThruCDN;
};

# PlayFab::ClientModels::GetContentDownloadUrlRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetContentDownloadUrlRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::PurchaseItemRequest

struct __cppobj PlayFab::ClientModels::PurchaseItemRequest : PlayFab::PlayFabRequestCommon
{
  std::string CatalogVersion;
  std::string CharacterId;
  std::string ItemId;
  int Price;
  std::string StoreId;
  std::string VirtualCurrency;
};

# PlayFab::ClientModels::PurchaseItemRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::PurchaseItemRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LinkAndroidDeviceIDRequest

struct __cppobj PlayFab::ClientModels::LinkAndroidDeviceIDRequest : PlayFab::PlayFabRequestCommon
{
  std::string AndroidDevice;
  std::string AndroidDeviceId;
  PlayFab::Boxed<bool> ForceLink;
  std::string OS;
};

# PlayFab::ClientModels::LinkAndroidDeviceIDRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LinkAndroidDeviceIDRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayerCombinedInfoRequest

struct __cppobj PlayFab::ClientModels::GetPlayerCombinedInfoRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams InfoRequestParameters;
  std::string PlayFabId;
};

# PlayFab::ClientModels::GetPlayerCombinedInfoRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayerCombinedInfoRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::SetFriendTagsRequest

struct __cppobj PlayFab::ClientModels::SetFriendTagsRequest : PlayFab::PlayFabRequestCommon
{
  std::string FriendPlayFabId;
  std::list<std::string> Tags;
};

# PlayFab::ClientModels::SetFriendTagsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::SetFriendTagsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UpdateCharacterDataRequest

struct __cppobj PlayFab::ClientModels::UpdateCharacterDataRequest : PlayFab::PlayFabRequestCommon
{
  std::string CharacterId;
  std::map<std::string,std::string> Data;
  std::list<std::string> KeysToRemove;
  PlayFab::Boxed<enum PlayFab::ClientModels::UserDataPermission> Permission;
};

# PlayFab::ClientModels::UpdateCharacterDataRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UpdateCharacterDataRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayerTradesRequest

struct __cppobj PlayFab::ClientModels::GetPlayerTradesRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<enum PlayFab::ClientModels::TradeStatus> StatusFilter;
};

# PlayFab::ClientModels::GetPlayerTradesRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayerTradesRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::LoginWithXboxRequest

struct __cppobj PlayFab::ClientModels::LoginWithXboxRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> CreateAccount;
  std::string EncryptedRequest;
  PlayFab::Boxed<PlayFab::ClientModels::GetPlayerCombinedInfoRequestParams> InfoRequestParameters;
  std::string PlayerSecret;
  std::string TitleId;
  std::string XboxToken;
};

# PlayFab::ClientModels::LoginWithXboxRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::LoginWithXboxRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromSteamIDsRequest

struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromSteamIDsRequest : PlayFab::PlayFabRequestCommon
{
  std::list<std::string> SteamStringIDs;
};

# PlayFab::ClientModels::GetPlayFabIDsFromSteamIDsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromSteamIDsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::AddUsernamePasswordRequest

struct __cppobj PlayFab::ClientModels::AddUsernamePasswordRequest : PlayFab::PlayFabRequestCommon
{
  std::string Email;
  std::string Password;
  std::string Username;
};

# PlayFab::ClientModels::AddUsernamePasswordRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::AddUsernamePasswordRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UpdateUserTitleDisplayNameRequest

struct __cppobj PlayFab::ClientModels::UpdateUserTitleDisplayNameRequest : PlayFab::PlayFabRequestCommon
{
  std::string DisplayName;
};

# PlayFab::ClientModels::UpdateUserTitleDisplayNameRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UpdateUserTitleDisplayNameRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UnlinkWindowsHelloAccountRequest

struct __cppobj PlayFab::ClientModels::UnlinkWindowsHelloAccountRequest : PlayFab::PlayFabRequestCommon
{
  std::string PublicKeyHint;
};

# PlayFab::ClientModels::UnlinkWindowsHelloAccountRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UnlinkWindowsHelloAccountRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::SetPlayerSecretRequest

struct __cppobj PlayFab::ClientModels::SetPlayerSecretRequest : PlayFab::PlayFabRequestCommon
{
  std::string EncryptedRequest;
  std::string PlayerSecret;
};

# PlayFab::ClientModels::SetPlayerSecretRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::SetPlayerSecretRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::PayForPurchaseRequest

struct __cppobj PlayFab::ClientModels::PayForPurchaseRequest : PlayFab::PlayFabRequestCommon
{
  std::string Currency;
  std::string OrderId;
  std::string ProviderName;
  std::string ProviderTransactionId;
};

# PlayFab::ClientModels::PayForPurchaseRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::PayForPurchaseRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GameServerRegionsRequest

struct __cppobj PlayFab::ClientModels::GameServerRegionsRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildVersion;
  std::string TitleId;
};

# PlayFab::ClientModels::GameServerRegionsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GameServerRegionsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPurchaseRequest

struct __cppobj PlayFab::ClientModels::GetPurchaseRequest : PlayFab::PlayFabRequestCommon
{
  std::string OrderId;
};

# PlayFab::ClientModels::GetPurchaseRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPurchaseRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::UpdateSharedGroupDataRequest

struct __cppobj PlayFab::ClientModels::UpdateSharedGroupDataRequest : PlayFab::PlayFabRequestCommon
{
  std::map<std::string,std::string> Data;
  std::list<std::string> KeysToRemove;
  PlayFab::Boxed<enum PlayFab::ClientModels::UserDataPermission> Permission;
  std::string SharedGroupId;
};

# PlayFab::ClientModels::UpdateSharedGroupDataRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::UpdateSharedGroupDataRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPhotonAuthenticationTokenRequest

struct __cppobj PlayFab::ClientModels::GetPhotonAuthenticationTokenRequest : PlayFab::PlayFabRequestCommon
{
  std::string PhotonApplicationId;
};

# PlayFab::ClientModels::GetPhotonAuthenticationTokenRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPhotonAuthenticationTokenRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::StartPurchaseRequest

struct __cppobj PlayFab::ClientModels::StartPurchaseRequest : PlayFab::PlayFabRequestCommon
{
  std::string CatalogVersion;
  std::list<PlayFab::ClientModels::ItemPurchaseRequest> Items;
  std::string StoreId;
};

# PlayFab::ClientModels::StartPurchaseRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::StartPurchaseRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::ValidateAmazonReceiptRequest

struct __cppobj PlayFab::ClientModels::ValidateAmazonReceiptRequest : PlayFab::PlayFabRequestCommon
{
  std::string CatalogVersion;
  std::string CurrencyCode;
  int PurchasePrice;
  std::string ReceiptId;
  std::string UserId;
};

# PlayFab::ClientModels::ValidateAmazonReceiptRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::ValidateAmazonReceiptRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ClientModels::GetPlayFabIDsFromXboxLiveIDsRequest

struct __cppobj PlayFab::ClientModels::GetPlayFabIDsFromXboxLiveIDsRequest : PlayFab::PlayFabRequestCommon
{
  std::string Sandbox;
  std::list<std::string> XboxLiveAccountIDs;
};

# PlayFab::ClientModels::GetPlayFabIDsFromXboxLiveIDsRequest_vtbl

struct /*VFT*/ PlayFab::ClientModels::GetPlayFabIDsFromXboxLiveIDsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::PlayFabClientAPI

struct __cppobj PlayFab::PlayFabClientAPI
{
};

# PlayFab::PlayFabClientInstanceAPI

struct __cppobj PlayFab::PlayFabClientInstanceAPI
{
  std::shared_ptr<PlayFab::PlayFabApiSettings> settings;
  std::shared_ptr<PlayFab::PlayFabAuthenticationContext> authContext;
};

# PlayFab::PlayFabClientInstanceAPI::AttributeInstall::__l2::<lambda_20a7fc46db8bcf6a9888fe851a6e4b09>

struct __cppobj PlayFab::PlayFabClientInstanceAPI::AttributeInstall::__l2::<lambda_20a7fc46db8bcf6a9888fe851a6e4b09>
{
  PlayFab::PlayFabClientInstanceAPI *const __this;
};

# PlayFab::CloudScriptModels::LogStatement

struct __cppobj PlayFab::CloudScriptModels::LogStatement : PlayFab::PlayFabBaseModel
{
  Json::Value Data;
  std::string Level;
  std::string Message;
};

# PlayFab::CloudScriptModels::LogStatement_vtbl

struct /*VFT*/ PlayFab::CloudScriptModels::LogStatement_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::CloudScriptModels::ScriptExecutionError

struct __cppobj PlayFab::CloudScriptModels::ScriptExecutionError : PlayFab::PlayFabBaseModel
{
  std::string Error;
  std::string Message;
  std::string StackTrace;
};

# PlayFab::CloudScriptModels::ScriptExecutionError_vtbl

struct /*VFT*/ PlayFab::CloudScriptModels::ScriptExecutionError_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::CloudScriptModels::ScriptExecutionError>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::CloudScriptModels::ScriptExecutionError>
{
  PlayFab::CloudScriptModels::ScriptExecutionError boxedValue;
  bool isSet;
};

# PlayFab::CloudScriptModels::ExecuteCloudScriptResult

struct __cppobj __declspec(align(8)) PlayFab::CloudScriptModels::ExecuteCloudScriptResult : PlayFab::PlayFabResultCommon
{
  int APIRequestsIssued;
  PlayFab::Boxed<PlayFab::CloudScriptModels::ScriptExecutionError> Error;
  long double ExecutionTimeSeconds;
  std::string FunctionName;
  Json::Value FunctionResult;
  PlayFab::Boxed<bool> FunctionResultTooLarge;
  int HttpRequestsIssued;
  std::list<PlayFab::CloudScriptModels::LogStatement> Logs;
  PlayFab::Boxed<bool> LogsTooLarge;
  unsigned int MemoryConsumedBytes;
  long double ProcessorTimeSeconds;
  int Revision;
};

# PlayFab::CloudScriptModels::ExecuteCloudScriptResult_vtbl

struct /*VFT*/ PlayFab::CloudScriptModels::ExecuteCloudScriptResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::PlayFabCloudScriptAPI

struct __cppobj PlayFab::PlayFabCloudScriptAPI
{
};

# PlayFab::CloudScriptModels::EntityKey

struct __cppobj PlayFab::CloudScriptModels::EntityKey : PlayFab::PlayFabBaseModel
{
  std::string Id;
  std::string Type;
};

# PlayFab::CloudScriptModels::EntityKey_vtbl

struct /*VFT*/ PlayFab::CloudScriptModels::EntityKey_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::CloudScriptModels::EntityKey>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::CloudScriptModels::EntityKey>
{
  PlayFab::CloudScriptModels::EntityKey boxedValue;
  bool isSet;
};

# PlayFab::Boxed<enum PlayFab::CloudScriptModels::CloudScriptRevisionOption>

struct __cppobj __declspec(align(4)) PlayFab::Boxed<enum PlayFab::CloudScriptModels::CloudScriptRevisionOption>
{
  PlayFab::CloudScriptModels::CloudScriptRevisionOption boxedValue;
  bool isSet;
};

# PlayFab::CloudScriptModels::ExecuteEntityCloudScriptRequest

struct __cppobj __declspec(align(8)) PlayFab::CloudScriptModels::ExecuteEntityCloudScriptRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<PlayFab::CloudScriptModels::EntityKey> Entity;
  std::string FunctionName;
  Json::Value FunctionParameter;
  PlayFab::Boxed<bool> GeneratePlayStreamEvent;
  PlayFab::Boxed<enum PlayFab::CloudScriptModels::CloudScriptRevisionOption> RevisionSelection;
  PlayFab::Boxed<int> SpecificRevision;
};

# PlayFab::CloudScriptModels::ExecuteEntityCloudScriptRequest_vtbl

struct /*VFT*/ PlayFab::CloudScriptModels::ExecuteEntityCloudScriptRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::PlayFabCloudScriptInstanceAPI

struct __cppobj PlayFab::PlayFabCloudScriptInstanceAPI
{
  std::shared_ptr<PlayFab::PlayFabApiSettings> settings;
  std::shared_ptr<PlayFab::PlayFabAuthenticationContext> authContext;
};

# PlayFab::DataModels::GetFileMetadata

struct __cppobj __declspec(align(8)) PlayFab::DataModels::GetFileMetadata : PlayFab::PlayFabBaseModel
{
  std::string Checksum;
  std::string DownloadUrl;
  std::string FileName;
  __int64 LastModified;
  int Size;
};

# PlayFab::DataModels::GetFileMetadata_vtbl

struct /*VFT*/ PlayFab::DataModels::GetFileMetadata_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::DataModels::ObjectResult

struct __cppobj PlayFab::DataModels::ObjectResult : PlayFab::PlayFabResultCommon
{
  Json::Value DataObject;
  std::string EscapedDataObject;
  std::string ObjectName;
};

# PlayFab::DataModels::ObjectResult_vtbl

struct /*VFT*/ PlayFab::DataModels::ObjectResult_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::DataModels::InitiateFileUploadMetadata

struct __cppobj PlayFab::DataModels::InitiateFileUploadMetadata : PlayFab::PlayFabBaseModel
{
  std::string FileName;
  std::string UploadUrl;
};

# PlayFab::DataModels::InitiateFileUploadMetadata_vtbl

struct /*VFT*/ PlayFab::DataModels::InitiateFileUploadMetadata_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::DataModels::SetObject

struct __cppobj PlayFab::DataModels::SetObject : PlayFab::PlayFabBaseModel
{
  Json::Value DataObject;
  PlayFab::Boxed<bool> DeleteObject;
  std::string EscapedDataObject;
  std::string ObjectName;
};

# PlayFab::DataModels::SetObject_vtbl

struct /*VFT*/ PlayFab::DataModels::SetObject_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<enum PlayFab::DataModels::OperationTypes>

struct __cppobj __declspec(align(4)) PlayFab::Boxed<enum PlayFab::DataModels::OperationTypes>
{
  PlayFab::DataModels::OperationTypes boxedValue;
  bool isSet;
};

# PlayFab::DataModels::SetObjectInfo

struct __cppobj PlayFab::DataModels::SetObjectInfo : PlayFab::PlayFabBaseModel
{
  std::string ObjectName;
  std::string OperationReason;
  PlayFab::Boxed<enum PlayFab::DataModels::OperationTypes> SetResult;
};

# PlayFab::DataModels::SetObjectInfo_vtbl

struct /*VFT*/ PlayFab::DataModels::SetObjectInfo_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::DataModels::EntityKey

struct __cppobj PlayFab::DataModels::EntityKey : PlayFab::PlayFabBaseModel
{
  std::string Id;
  std::string Type;
};

# PlayFab::DataModels::EntityKey_vtbl

struct /*VFT*/ PlayFab::DataModels::EntityKey_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::DataModels::EntityKey>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::DataModels::EntityKey>
{
  PlayFab::DataModels::EntityKey boxedValue;
  bool isSet;
};

# PlayFab::DataModels::GetFilesResponse

const struct __cppobj __declspec(align(8)) PlayFab::DataModels::GetFilesResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::DataModels::EntityKey> Entity;
  std::map<std::string,PlayFab::DataModels::GetFileMetadata> Metadata;
  int ProfileVersion;
};

# PlayFab::DataModels::GetFilesResponse_vtbl

struct /*VFT*/ PlayFab::DataModels::GetFilesResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::DataModels::SetObjectsResponse

const struct __cppobj PlayFab::DataModels::SetObjectsResponse : PlayFab::PlayFabResultCommon
{
  int ProfileVersion;
  std::list<PlayFab::DataModels::SetObjectInfo> SetResults;
};

# PlayFab::DataModels::SetObjectsResponse_vtbl

struct /*VFT*/ PlayFab::DataModels::SetObjectsResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::DataModels::DeleteFilesResponse

const struct __cppobj __declspec(align(8)) PlayFab::DataModels::DeleteFilesResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::DataModels::EntityKey> Entity;
  int ProfileVersion;
};

# PlayFab::DataModels::DeleteFilesResponse_vtbl

struct /*VFT*/ PlayFab::DataModels::DeleteFilesResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::DataModels::AbortFileUploadsResponse

const struct __cppobj __declspec(align(8)) PlayFab::DataModels::AbortFileUploadsResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::DataModels::EntityKey> Entity;
  int ProfileVersion;
};

# PlayFab::DataModels::AbortFileUploadsResponse_vtbl

struct /*VFT*/ PlayFab::DataModels::AbortFileUploadsResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::DataModels::FinalizeFileUploadsResponse

const struct __cppobj __declspec(align(8)) PlayFab::DataModels::FinalizeFileUploadsResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::DataModels::EntityKey> Entity;
  std::map<std::string,PlayFab::DataModels::GetFileMetadata> Metadata;
  int ProfileVersion;
};

# PlayFab::DataModels::FinalizeFileUploadsResponse_vtbl

struct /*VFT*/ PlayFab::DataModels::FinalizeFileUploadsResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::DataModels::GetObjectsResponse

const struct __cppobj __declspec(align(8)) PlayFab::DataModels::GetObjectsResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::DataModels::EntityKey> Entity;
  std::map<std::string,PlayFab::DataModels::ObjectResult> Objects;
  int ProfileVersion;
};

# PlayFab::DataModels::GetObjectsResponse_vtbl

struct /*VFT*/ PlayFab::DataModels::GetObjectsResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::DataModels::InitiateFileUploadsResponse

const struct __cppobj PlayFab::DataModels::InitiateFileUploadsResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::DataModels::EntityKey> Entity;
  int ProfileVersion;
  std::list<PlayFab::DataModels::InitiateFileUploadMetadata> UploadDetails;
};

# PlayFab::DataModels::InitiateFileUploadsResponse_vtbl

struct /*VFT*/ PlayFab::DataModels::InitiateFileUploadsResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::PlayFabDataAPI

struct __cppobj PlayFab::PlayFabDataAPI
{
};

# PlayFab::DataModels::AbortFileUploadsRequest

struct __cppobj PlayFab::DataModels::AbortFileUploadsRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::DataModels::EntityKey Entity;
  std::list<std::string> FileNames;
  PlayFab::Boxed<int> ProfileVersion;
};

# PlayFab::DataModels::AbortFileUploadsRequest_vtbl

struct /*VFT*/ PlayFab::DataModels::AbortFileUploadsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::DataModels::DeleteFilesRequest

struct __cppobj PlayFab::DataModels::DeleteFilesRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::DataModels::EntityKey Entity;
  std::list<std::string> FileNames;
  PlayFab::Boxed<int> ProfileVersion;
};

# PlayFab::DataModels::DeleteFilesRequest_vtbl

struct /*VFT*/ PlayFab::DataModels::DeleteFilesRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::DataModels::FinalizeFileUploadsRequest

struct __cppobj PlayFab::DataModels::FinalizeFileUploadsRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::DataModels::EntityKey Entity;
  std::list<std::string> FileNames;
};

# PlayFab::DataModels::FinalizeFileUploadsRequest_vtbl

struct /*VFT*/ PlayFab::DataModels::FinalizeFileUploadsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::DataModels::GetFilesRequest

struct __cppobj PlayFab::DataModels::GetFilesRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::DataModels::EntityKey Entity;
};

# PlayFab::DataModels::GetFilesRequest_vtbl

struct /*VFT*/ PlayFab::DataModels::GetFilesRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::DataModels::GetObjectsRequest

struct __cppobj __declspec(align(8)) PlayFab::DataModels::GetObjectsRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::DataModels::EntityKey Entity;
  PlayFab::Boxed<bool> EscapeObject;
};

# PlayFab::DataModels::GetObjectsRequest_vtbl

struct /*VFT*/ PlayFab::DataModels::GetObjectsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::DataModels::InitiateFileUploadsRequest

struct __cppobj PlayFab::DataModels::InitiateFileUploadsRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::DataModels::EntityKey Entity;
  std::list<std::string> FileNames;
  PlayFab::Boxed<int> ProfileVersion;
};

# PlayFab::DataModels::InitiateFileUploadsRequest_vtbl

struct /*VFT*/ PlayFab::DataModels::InitiateFileUploadsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::DataModels::SetObjectsRequest

struct __cppobj PlayFab::DataModels::SetObjectsRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::DataModels::EntityKey Entity;
  PlayFab::Boxed<int> ExpectedProfileVersion;
  std::list<PlayFab::DataModels::SetObject> Objects;
};

# PlayFab::DataModels::SetObjectsRequest_vtbl

struct /*VFT*/ PlayFab::DataModels::SetObjectsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::PlayFabDataInstanceAPI

struct __cppobj PlayFab::PlayFabDataInstanceAPI
{
  std::shared_ptr<PlayFab::PlayFabApiSettings> settings;
  std::shared_ptr<PlayFab::PlayFabAuthenticationContext> authContext;
};

# PlayFab::IPlayFabEventRouter

struct __cppobj PlayFab::IPlayFabEventRouter
{
  PlayFab::IPlayFabEventRouter_vtbl *__vftable /*VFT*/;
  std::unordered_map<enum PlayFab::EventPipelineKey,std::shared_ptr<PlayFab::IPlayFabEventPipeline>> pipelines;
};

# PlayFab::IPlayFabEventRouter_vtbl

struct /*VFT*/ PlayFab::IPlayFabEventRouter_vtbl
{
  void (__fastcall *~IPlayFabEventRouter)(PlayFab::IPlayFabEventRouter *this);
  void (__fastcall *RouteEvent)(PlayFab::IPlayFabEventRouter *this, std::shared_ptr<PlayFab::IPlayFabEmitEventRequest const >);
};

# PlayFab::PlayFabEventRouter

struct __cppobj PlayFab::PlayFabEventRouter : PlayFab::IPlayFabEventRouter
{
};

# PlayFab::PlayFabEventRouter_vtbl

struct /*VFT*/ PlayFab::PlayFabEventRouter_vtbl
{
  void (__fastcall *~IPlayFabEventRouter)(PlayFab::IPlayFabEventRouter *this);
  void (__fastcall *RouteEvent)(PlayFab::IPlayFabEventRouter *this, std::shared_ptr<PlayFab::IPlayFabEmitEventRequest const >);
};

# PlayFab::PlayFabEventAPI

struct __cppobj PlayFab::PlayFabEventAPI
{
  std::shared_ptr<PlayFab::IPlayFabEventRouter> eventRouter;
};

# PlayFab::SpinLock

struct __cppobj PlayFab::SpinLock
{
  PlayFab::AtomicSpin *spin;
};

# PlayFab::PlayFabEventsAPI

struct __cppobj PlayFab::PlayFabEventsAPI
{
};

# PlayFab::PlayFabEventsInstanceAPI

struct __cppobj PlayFab::PlayFabEventsInstanceAPI
{
  std::shared_ptr<PlayFab::PlayFabApiSettings> settings;
  std::shared_ptr<PlayFab::PlayFabAuthenticationContext> authContext;
};

# PlayFab::GroupsModels::EntityKey

struct __cppobj PlayFab::GroupsModels::EntityKey : PlayFab::PlayFabBaseModel
{
  std::string Id;
  std::string Type;
};

# PlayFab::GroupsModels::EntityKey_vtbl

struct /*VFT*/ PlayFab::GroupsModels::EntityKey_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::GroupsModels::EntityKey>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::GroupsModels::EntityKey>
{
  PlayFab::GroupsModels::EntityKey boxedValue;
  bool isSet;
};

# PlayFab::GroupsModels::EntityWithLineage

struct __cppobj PlayFab::GroupsModels::EntityWithLineage : PlayFab::PlayFabBaseModel
{
  PlayFab::Boxed<PlayFab::GroupsModels::EntityKey> Key;
  std::map<std::string,PlayFab::GroupsModels::EntityKey> Lineage;
};

# PlayFab::GroupsModels::EntityWithLineage_vtbl

struct /*VFT*/ PlayFab::GroupsModels::EntityWithLineage_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::GroupsModels::EntityWithLineage>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::GroupsModels::EntityWithLineage>
{
  PlayFab::GroupsModels::EntityWithLineage boxedValue;
  bool isSet;
};

# PlayFab::GroupsModels::GroupApplication

struct __cppobj PlayFab::GroupsModels::GroupApplication : PlayFab::PlayFabBaseModel
{
  PlayFab::Boxed<PlayFab::GroupsModels::EntityWithLineage> Entity;
  __int64 Expires;
  PlayFab::Boxed<PlayFab::GroupsModels::EntityKey> Group;
};

# PlayFab::GroupsModels::GroupApplication_vtbl

struct /*VFT*/ PlayFab::GroupsModels::GroupApplication_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::EntityMemberRole

struct __cppobj PlayFab::GroupsModels::EntityMemberRole : PlayFab::PlayFabBaseModel
{
  std::list<PlayFab::GroupsModels::EntityWithLineage> Members;
  std::string RoleId;
  std::string RoleName;
};

# PlayFab::GroupsModels::EntityMemberRole_vtbl

struct /*VFT*/ PlayFab::GroupsModels::EntityMemberRole_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::GroupBlock

struct __cppobj PlayFab::GroupsModels::GroupBlock : PlayFab::PlayFabBaseModel
{
  PlayFab::Boxed<PlayFab::GroupsModels::EntityWithLineage> Entity;
  PlayFab::GroupsModels::EntityKey Group;
};

# PlayFab::GroupsModels::GroupBlock_vtbl

struct /*VFT*/ PlayFab::GroupsModels::GroupBlock_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::GroupInvitation

struct __cppobj PlayFab::GroupsModels::GroupInvitation : PlayFab::PlayFabBaseModel
{
  __int64 Expires;
  PlayFab::Boxed<PlayFab::GroupsModels::EntityKey> Group;
  PlayFab::Boxed<PlayFab::GroupsModels::EntityWithLineage> InvitedByEntity;
  PlayFab::Boxed<PlayFab::GroupsModels::EntityWithLineage> InvitedEntity;
  std::string RoleId;
};

# PlayFab::GroupsModels::GroupInvitation_vtbl

struct /*VFT*/ PlayFab::GroupsModels::GroupInvitation_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::EmptyResponse

const struct __cppobj PlayFab::GroupsModels::EmptyResponse : PlayFab::PlayFabResultCommon
{
};

# PlayFab::GroupsModels::EmptyResponse_vtbl

struct /*VFT*/ PlayFab::GroupsModels::EmptyResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::GroupRole

struct __cppobj PlayFab::GroupsModels::GroupRole : PlayFab::PlayFabBaseModel
{
  std::string RoleId;
  std::string RoleName;
};

# PlayFab::GroupsModels::GroupRole_vtbl

struct /*VFT*/ PlayFab::GroupsModels::GroupRole_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::ListGroupMembersResponse

const struct __cppobj PlayFab::GroupsModels::ListGroupMembersResponse : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::GroupsModels::EntityMemberRole> Members;
};

# PlayFab::GroupsModels::ListGroupMembersResponse_vtbl

struct /*VFT*/ PlayFab::GroupsModels::ListGroupMembersResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::IsMemberResponse

const struct __cppobj __declspec(align(8)) PlayFab::GroupsModels::IsMemberResponse : PlayFab::PlayFabResultCommon
{
  bool IsMember;
};

# PlayFab::GroupsModels::IsMemberResponse_vtbl

struct /*VFT*/ PlayFab::GroupsModels::IsMemberResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::CreateGroupResponse

const struct __cppobj PlayFab::GroupsModels::CreateGroupResponse : PlayFab::PlayFabResultCommon
{
  std::string AdminRoleId;
  __int64 Created;
  PlayFab::GroupsModels::EntityKey Group;
  std::string GroupName;
  std::string MemberRoleId;
  int ProfileVersion;
  std::map<std::string,std::string> Roles;
};

# PlayFab::GroupsModels::CreateGroupResponse_vtbl

struct /*VFT*/ PlayFab::GroupsModels::CreateGroupResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::GroupWithRoles

struct __cppobj PlayFab::GroupsModels::GroupWithRoles : PlayFab::PlayFabBaseModel
{
  PlayFab::Boxed<PlayFab::GroupsModels::EntityKey> Group;
  std::string GroupName;
  int ProfileVersion;
  std::list<PlayFab::GroupsModels::GroupRole> Roles;
};

# PlayFab::GroupsModels::GroupWithRoles_vtbl

struct /*VFT*/ PlayFab::GroupsModels::GroupWithRoles_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::ListMembershipResponse

const struct __cppobj PlayFab::GroupsModels::ListMembershipResponse : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::GroupsModels::GroupWithRoles> Groups;
};

# PlayFab::GroupsModels::ListMembershipResponse_vtbl

struct /*VFT*/ PlayFab::GroupsModels::ListMembershipResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::ListGroupApplicationsResponse

const struct __cppobj PlayFab::GroupsModels::ListGroupApplicationsResponse : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::GroupsModels::GroupApplication> Applications;
};

# PlayFab::GroupsModels::ListGroupApplicationsResponse_vtbl

struct /*VFT*/ PlayFab::GroupsModels::ListGroupApplicationsResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::ListGroupInvitationsResponse

const struct __cppobj PlayFab::GroupsModels::ListGroupInvitationsResponse : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::GroupsModels::GroupInvitation> Invitations;
};

# PlayFab::GroupsModels::ListGroupInvitationsResponse_vtbl

struct /*VFT*/ PlayFab::GroupsModels::ListGroupInvitationsResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::GetGroupResponse

struct __cppobj PlayFab::GroupsModels::GetGroupResponse : PlayFab::PlayFabResultCommon
{
  std::string AdminRoleId;
  __int64 Created;
  PlayFab::GroupsModels::EntityKey Group;
  std::string GroupName;
  std::string MemberRoleId;
  int ProfileVersion;
  std::map<std::string,std::string> Roles;
};

# PlayFab::GroupsModels::GetGroupResponse_vtbl

struct /*VFT*/ PlayFab::GroupsModels::GetGroupResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<enum PlayFab::GroupsModels::OperationTypes>

struct __cppobj __declspec(align(4)) PlayFab::Boxed<enum PlayFab::GroupsModels::OperationTypes>
{
  PlayFab::GroupsModels::OperationTypes boxedValue;
  bool isSet;
};

# PlayFab::GroupsModels::UpdateGroupResponse

const struct __cppobj __declspec(align(8)) PlayFab::GroupsModels::UpdateGroupResponse : PlayFab::PlayFabResultCommon
{
  std::string OperationReason;
  int ProfileVersion;
  PlayFab::Boxed<enum PlayFab::GroupsModels::OperationTypes> SetResult;
};

# PlayFab::GroupsModels::UpdateGroupResponse_vtbl

struct /*VFT*/ PlayFab::GroupsModels::UpdateGroupResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::UpdateGroupRoleResponse

const struct __cppobj __declspec(align(8)) PlayFab::GroupsModels::UpdateGroupRoleResponse : PlayFab::PlayFabResultCommon
{
  std::string OperationReason;
  int ProfileVersion;
  PlayFab::Boxed<enum PlayFab::GroupsModels::OperationTypes> SetResult;
};

# PlayFab::GroupsModels::UpdateGroupRoleResponse_vtbl

struct /*VFT*/ PlayFab::GroupsModels::UpdateGroupRoleResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::ListMembershipOpportunitiesResponse

const struct __cppobj PlayFab::GroupsModels::ListMembershipOpportunitiesResponse : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::GroupsModels::GroupApplication> Applications;
  std::list<PlayFab::GroupsModels::GroupInvitation> Invitations;
};

# PlayFab::GroupsModels::ListMembershipOpportunitiesResponse_vtbl

struct /*VFT*/ PlayFab::GroupsModels::ListMembershipOpportunitiesResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::ApplyToGroupResponse

const struct __cppobj PlayFab::GroupsModels::ApplyToGroupResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::GroupsModels::EntityWithLineage> Entity;
  __int64 Expires;
  PlayFab::Boxed<PlayFab::GroupsModels::EntityKey> Group;
};

# PlayFab::GroupsModels::ApplyToGroupResponse_vtbl

struct /*VFT*/ PlayFab::GroupsModels::ApplyToGroupResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::InviteToGroupResponse

struct __cppobj PlayFab::GroupsModels::InviteToGroupResponse : PlayFab::PlayFabResultCommon
{
  __int64 Expires;
  PlayFab::Boxed<PlayFab::GroupsModels::EntityKey> Group;
  PlayFab::Boxed<PlayFab::GroupsModels::EntityWithLineage> InvitedByEntity;
  PlayFab::Boxed<PlayFab::GroupsModels::EntityWithLineage> InvitedEntity;
  std::string RoleId;
};

# PlayFab::GroupsModels::InviteToGroupResponse_vtbl

struct /*VFT*/ PlayFab::GroupsModels::InviteToGroupResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::ListGroupBlocksResponse

const struct __cppobj PlayFab::GroupsModels::ListGroupBlocksResponse : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::GroupsModels::GroupBlock> BlockedEntities;
};

# PlayFab::GroupsModels::ListGroupBlocksResponse_vtbl

struct /*VFT*/ PlayFab::GroupsModels::ListGroupBlocksResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::CreateGroupRoleResponse

struct __cppobj PlayFab::GroupsModels::CreateGroupRoleResponse : PlayFab::PlayFabResultCommon
{
  int ProfileVersion;
  std::string RoleId;
  std::string RoleName;
};

# PlayFab::GroupsModels::CreateGroupRoleResponse_vtbl

struct /*VFT*/ PlayFab::GroupsModels::CreateGroupRoleResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::PlayFabGroupsAPI

struct __cppobj PlayFab::PlayFabGroupsAPI
{
};

# PlayFab::GroupsModels::AcceptGroupApplicationRequest

struct __cppobj PlayFab::GroupsModels::AcceptGroupApplicationRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::GroupsModels::EntityKey Entity;
  PlayFab::GroupsModels::EntityKey Group;
};

# PlayFab::GroupsModels::AcceptGroupApplicationRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::AcceptGroupApplicationRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::AcceptGroupInvitationRequest

struct __cppobj PlayFab::GroupsModels::AcceptGroupInvitationRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<PlayFab::GroupsModels::EntityKey> Entity;
  PlayFab::GroupsModels::EntityKey Group;
};

# PlayFab::GroupsModels::AcceptGroupInvitationRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::AcceptGroupInvitationRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::AddMembersRequest

struct __cppobj PlayFab::GroupsModels::AddMembersRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::GroupsModels::EntityKey Group;
  std::list<PlayFab::GroupsModels::EntityKey> Members;
  std::string RoleId;
};

# PlayFab::GroupsModels::AddMembersRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::AddMembersRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::ApplyToGroupRequest

struct __cppobj PlayFab::GroupsModels::ApplyToGroupRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> AutoAcceptOutstandingInvite;
  PlayFab::Boxed<PlayFab::GroupsModels::EntityKey> Entity;
  PlayFab::GroupsModels::EntityKey Group;
};

# PlayFab::GroupsModels::ApplyToGroupRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::ApplyToGroupRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::BlockEntityRequest

struct __cppobj PlayFab::GroupsModels::BlockEntityRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::GroupsModels::EntityKey Entity;
  PlayFab::GroupsModels::EntityKey Group;
};

# PlayFab::GroupsModels::BlockEntityRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::BlockEntityRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::ChangeMemberRoleRequest

struct __cppobj PlayFab::GroupsModels::ChangeMemberRoleRequest : PlayFab::PlayFabRequestCommon
{
  std::string DestinationRoleId;
  PlayFab::GroupsModels::EntityKey Group;
  std::list<PlayFab::GroupsModels::EntityKey> Members;
  std::string OriginRoleId;
};

# PlayFab::GroupsModels::ChangeMemberRoleRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::ChangeMemberRoleRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::CreateGroupRequest

struct __cppobj PlayFab::GroupsModels::CreateGroupRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<PlayFab::GroupsModels::EntityKey> Entity;
  std::string GroupName;
};

# PlayFab::GroupsModels::CreateGroupRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::CreateGroupRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::CreateGroupRoleRequest

struct __cppobj PlayFab::GroupsModels::CreateGroupRoleRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::GroupsModels::EntityKey Group;
  std::string RoleId;
  std::string RoleName;
};

# PlayFab::GroupsModels::CreateGroupRoleRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::CreateGroupRoleRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::DeleteGroupRequest

struct __cppobj PlayFab::GroupsModels::DeleteGroupRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::GroupsModels::EntityKey Group;
};

# PlayFab::GroupsModels::DeleteGroupRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::DeleteGroupRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::DeleteRoleRequest

struct __cppobj PlayFab::GroupsModels::DeleteRoleRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::GroupsModels::EntityKey Group;
  std::string RoleId;
};

# PlayFab::GroupsModels::DeleteRoleRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::DeleteRoleRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::GetGroupRequest

struct __cppobj PlayFab::GroupsModels::GetGroupRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<PlayFab::GroupsModels::EntityKey> Group;
  std::string GroupName;
};

# PlayFab::GroupsModels::GetGroupRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::GetGroupRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::InviteToGroupRequest

struct __cppobj PlayFab::GroupsModels::InviteToGroupRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> AutoAcceptOutstandingApplication;
  PlayFab::GroupsModels::EntityKey Entity;
  PlayFab::GroupsModels::EntityKey Group;
  std::string RoleId;
};

# PlayFab::GroupsModels::InviteToGroupRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::InviteToGroupRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::IsMemberRequest

struct __cppobj PlayFab::GroupsModels::IsMemberRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::GroupsModels::EntityKey Entity;
  PlayFab::GroupsModels::EntityKey Group;
  std::string RoleId;
};

# PlayFab::GroupsModels::IsMemberRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::IsMemberRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::ListGroupApplicationsRequest

struct __cppobj PlayFab::GroupsModels::ListGroupApplicationsRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::GroupsModels::EntityKey Group;
};

# PlayFab::GroupsModels::ListGroupApplicationsRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::ListGroupApplicationsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::ListGroupBlocksRequest

struct __cppobj PlayFab::GroupsModels::ListGroupBlocksRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::GroupsModels::EntityKey Group;
};

# PlayFab::GroupsModels::ListGroupBlocksRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::ListGroupBlocksRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::ListGroupInvitationsRequest

struct __cppobj PlayFab::GroupsModels::ListGroupInvitationsRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::GroupsModels::EntityKey Group;
};

# PlayFab::GroupsModels::ListGroupInvitationsRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::ListGroupInvitationsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::ListGroupMembersRequest

struct __cppobj PlayFab::GroupsModels::ListGroupMembersRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::GroupsModels::EntityKey Group;
};

# PlayFab::GroupsModels::ListGroupMembersRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::ListGroupMembersRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::ListMembershipRequest

struct __cppobj PlayFab::GroupsModels::ListMembershipRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<PlayFab::GroupsModels::EntityKey> Entity;
};

# PlayFab::GroupsModels::ListMembershipRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::ListMembershipRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::ListMembershipOpportunitiesRequest

struct __cppobj PlayFab::GroupsModels::ListMembershipOpportunitiesRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<PlayFab::GroupsModels::EntityKey> Entity;
};

# PlayFab::GroupsModels::ListMembershipOpportunitiesRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::ListMembershipOpportunitiesRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::RemoveGroupApplicationRequest

struct __cppobj PlayFab::GroupsModels::RemoveGroupApplicationRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::GroupsModels::EntityKey Entity;
  PlayFab::GroupsModels::EntityKey Group;
};

# PlayFab::GroupsModels::RemoveGroupApplicationRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::RemoveGroupApplicationRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::RemoveGroupInvitationRequest

struct __cppobj PlayFab::GroupsModels::RemoveGroupInvitationRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::GroupsModels::EntityKey Entity;
  PlayFab::GroupsModels::EntityKey Group;
};

# PlayFab::GroupsModels::RemoveGroupInvitationRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::RemoveGroupInvitationRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::RemoveMembersRequest

struct __cppobj PlayFab::GroupsModels::RemoveMembersRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::GroupsModels::EntityKey Group;
  std::list<PlayFab::GroupsModels::EntityKey> Members;
  std::string RoleId;
};

# PlayFab::GroupsModels::RemoveMembersRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::RemoveMembersRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::UnblockEntityRequest

struct __cppobj PlayFab::GroupsModels::UnblockEntityRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::GroupsModels::EntityKey Entity;
  PlayFab::GroupsModels::EntityKey Group;
};

# PlayFab::GroupsModels::UnblockEntityRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::UnblockEntityRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::UpdateGroupRequest

struct __cppobj PlayFab::GroupsModels::UpdateGroupRequest : PlayFab::PlayFabRequestCommon
{
  std::string AdminRoleId;
  PlayFab::Boxed<int> ExpectedProfileVersion;
  PlayFab::GroupsModels::EntityKey Group;
  std::string GroupName;
  std::string MemberRoleId;
};

# PlayFab::GroupsModels::UpdateGroupRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::UpdateGroupRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::GroupsModels::UpdateGroupRoleRequest

struct __cppobj PlayFab::GroupsModels::UpdateGroupRoleRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<int> ExpectedProfileVersion;
  PlayFab::GroupsModels::EntityKey Group;
  std::string RoleId;
  std::string RoleName;
};

# PlayFab::GroupsModels::UpdateGroupRoleRequest_vtbl

struct /*VFT*/ PlayFab::GroupsModels::UpdateGroupRoleRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::PlayFabGroupsInstanceAPI

struct __cppobj PlayFab::PlayFabGroupsInstanceAPI
{
  std::shared_ptr<PlayFab::PlayFabApiSettings> settings;
  std::shared_ptr<PlayFab::PlayFabAuthenticationContext> authContext;
};

# PlayFab::LocalizationModels::GetLanguageListResponse

const struct __cppobj PlayFab::LocalizationModels::GetLanguageListResponse : PlayFab::PlayFabResultCommon
{
  std::list<std::string> LanguageList;
};

# PlayFab::LocalizationModels::GetLanguageListResponse_vtbl

struct /*VFT*/ PlayFab::LocalizationModels::GetLanguageListResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::LocalizationModels::GetLanguageListRequest

struct __cppobj PlayFab::LocalizationModels::GetLanguageListRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::LocalizationModels::GetLanguageListRequest_vtbl

struct /*VFT*/ PlayFab::LocalizationModels::GetLanguageListRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::PlayFabLocalizationAPI

struct __cppobj PlayFab::PlayFabLocalizationAPI
{
};

# PlayFab::PlayFabLocalizationInstanceAPI

struct __cppobj PlayFab::PlayFabLocalizationInstanceAPI
{
  std::shared_ptr<PlayFab::PlayFabApiSettings> settings;
  std::shared_ptr<PlayFab::PlayFabAuthenticationContext> authContext;
};

# PlayFab::MultiplayerModels::VirtualMachineSummary

struct __cppobj PlayFab::MultiplayerModels::VirtualMachineSummary : PlayFab::PlayFabBaseModel
{
  std::string HealthStatus;
  std::string State;
  std::string VmId;
};

# PlayFab::MultiplayerModels::VirtualMachineSummary_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::VirtualMachineSummary_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<enum PlayFab::MultiplayerModels::AzureRegion>

struct __cppobj __declspec(align(4)) PlayFab::Boxed<enum PlayFab::MultiplayerModels::AzureRegion>
{
  PlayFab::MultiplayerModels::AzureRegion boxedValue;
  bool isSet;
};

# PlayFab::MultiplayerModels::QosServer

struct __cppobj PlayFab::MultiplayerModels::QosServer : PlayFab::PlayFabBaseModel
{
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::AzureRegion> Region;
  std::string ServerUrl;
};

# PlayFab::MultiplayerModels::QosServer_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::QosServer_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ConnectedPlayer

struct __cppobj PlayFab::MultiplayerModels::ConnectedPlayer : PlayFab::PlayFabBaseModel
{
  std::string PlayerId;
};

# PlayFab::MultiplayerModels::ConnectedPlayer_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ConnectedPlayer_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::MultiplayerServerSummary

struct __cppobj PlayFab::MultiplayerModels::MultiplayerServerSummary : PlayFab::PlayFabBaseModel
{
  std::list<PlayFab::MultiplayerModels::ConnectedPlayer> ConnectedPlayers;
  PlayFab::Boxed<__int64> LastStateTransitionTime;
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::AzureRegion> Region;
  std::string ServerId;
  std::string SessionId;
  std::string State;
  std::string VmId;
};

# PlayFab::MultiplayerModels::MultiplayerServerSummary_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::MultiplayerServerSummary_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::CurrentServerStats

struct __cppobj PlayFab::MultiplayerModels::CurrentServerStats : PlayFab::PlayFabBaseModel
{
  int Active;
  int Propping;
  int StandingBy;
  int Total;
};

# PlayFab::MultiplayerModels::CurrentServerStats_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::CurrentServerStats_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::MultiplayerModels::CurrentServerStats>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::MultiplayerModels::CurrentServerStats>
{
  PlayFab::MultiplayerModels::CurrentServerStats boxedValue;
  bool isSet;
};

# PlayFab::MultiplayerModels::BuildRegion

struct __cppobj PlayFab::MultiplayerModels::BuildRegion : PlayFab::PlayFabBaseModel
{
  PlayFab::Boxed<PlayFab::MultiplayerModels::CurrentServerStats> pfCurrentServerStats;
  int MaxServers;
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::AzureRegion> Region;
  int StandbyServers;
  std::string Status;
};

# PlayFab::MultiplayerModels::BuildRegion_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::BuildRegion_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::GameCertificateReferenceParams

struct __cppobj PlayFab::MultiplayerModels::GameCertificateReferenceParams : PlayFab::PlayFabBaseModel
{
  std::string GsdkAlias;
  std::string Name;
};

# PlayFab::MultiplayerModels::GameCertificateReferenceParams_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::GameCertificateReferenceParams_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::CertificateSummary

struct __cppobj PlayFab::MultiplayerModels::CertificateSummary : PlayFab::PlayFabBaseModel
{
  std::string Name;
  std::string Thumbprint;
};

# PlayFab::MultiplayerModels::CertificateSummary_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::CertificateSummary_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::BuildRegionParams

struct __cppobj __declspec(align(8)) PlayFab::MultiplayerModels::BuildRegionParams : PlayFab::PlayFabBaseModel
{
  int MaxServers;
  PlayFab::MultiplayerModels::AzureRegion Region;
  int StandbyServers;
};

# PlayFab::MultiplayerModels::BuildRegionParams_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::BuildRegionParams_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::AssetSummary

struct __cppobj PlayFab::MultiplayerModels::AssetSummary : PlayFab::PlayFabBaseModel
{
  std::string FileName;
  std::map<std::string,std::string> Metadata;
};

# PlayFab::MultiplayerModels::AssetSummary_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::AssetSummary_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ListContainerImageTagsResponse

struct __cppobj PlayFab::MultiplayerModels::ListContainerImageTagsResponse : PlayFab::PlayFabResultCommon
{
  std::list<std::string> Tags;
};

# PlayFab::MultiplayerModels::ListContainerImageTagsResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ListContainerImageTagsResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::BuildSummary

struct __cppobj PlayFab::MultiplayerModels::BuildSummary : PlayFab::PlayFabBaseModel
{
  std::string BuildId;
  std::string BuildName;
  PlayFab::Boxed<__int64> CreationTime;
  std::map<std::string,std::string> Metadata;
};

# PlayFab::MultiplayerModels::BuildSummary_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::BuildSummary_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<enum PlayFab::MultiplayerModels::TitleMultiplayerServerEnabledStatus>

struct __cppobj __declspec(align(4)) PlayFab::Boxed<enum PlayFab::MultiplayerModels::TitleMultiplayerServerEnabledStatus>
{
  PlayFab::MultiplayerModels::TitleMultiplayerServerEnabledStatus boxedValue;
  bool isSet;
};

# PlayFab::MultiplayerModels::GetTitleEnabledForMultiplayerServersStatusResponse

const struct __cppobj PlayFab::MultiplayerModels::GetTitleEnabledForMultiplayerServersStatusResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::TitleMultiplayerServerEnabledStatus> Status;
};

# PlayFab::MultiplayerModels::GetTitleEnabledForMultiplayerServersStatusResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::GetTitleEnabledForMultiplayerServersStatusResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<enum PlayFab::MultiplayerModels::ContainerFlavor>

struct __cppobj __declspec(align(4)) PlayFab::Boxed<enum PlayFab::MultiplayerModels::ContainerFlavor>
{
  PlayFab::MultiplayerModels::ContainerFlavor boxedValue;
  bool isSet;
};

# PlayFab::MultiplayerModels::ContainerImageReference

struct __cppobj PlayFab::MultiplayerModels::ContainerImageReference : PlayFab::PlayFabBaseModel
{
  std::string ImageName;
  std::string Tag;
};

# PlayFab::MultiplayerModels::ContainerImageReference_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ContainerImageReference_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::MultiplayerModels::ContainerImageReference>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::MultiplayerModels::ContainerImageReference>
{
  PlayFab::MultiplayerModels::ContainerImageReference boxedValue;
  bool isSet;
};

# PlayFab::MultiplayerModels::AssetReference

struct __cppobj PlayFab::MultiplayerModels::AssetReference : PlayFab::PlayFabBaseModel
{
  std::string FileName;
  std::string MountPath;
};

# PlayFab::MultiplayerModels::AssetReference_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::AssetReference_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::GameCertificateReference

struct __cppobj PlayFab::MultiplayerModels::GameCertificateReference : PlayFab::PlayFabBaseModel
{
  std::string GsdkAlias;
  std::string Name;
};

# PlayFab::MultiplayerModels::GameCertificateReference_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::GameCertificateReference_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::Port

struct __cppobj PlayFab::MultiplayerModels::Port : PlayFab::PlayFabBaseModel
{
  std::string Name;
  int Num;
  PlayFab::MultiplayerModels::ProtocolType Protocol;
};

# PlayFab::MultiplayerModels::Port_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::Port_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<enum PlayFab::MultiplayerModels::AzureVmSize>

struct __cppobj __declspec(align(4)) PlayFab::Boxed<enum PlayFab::MultiplayerModels::AzureVmSize>
{
  PlayFab::MultiplayerModels::AzureVmSize boxedValue;
  bool isSet;
};

# PlayFab::MultiplayerModels::CreateBuildWithCustomContainerResponse

const struct __cppobj PlayFab::MultiplayerModels::CreateBuildWithCustomContainerResponse : PlayFab::PlayFabResultCommon
{
  std::string BuildId;
  std::string BuildName;
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::ContainerFlavor> pfContainerFlavor;
  std::string ContainerRunCommand;
  PlayFab::Boxed<__int64> CreationTime;
  PlayFab::Boxed<PlayFab::MultiplayerModels::ContainerImageReference> CustomGameContainerImage;
  std::list<PlayFab::MultiplayerModels::AssetReference> GameAssetReferences;
  std::list<PlayFab::MultiplayerModels::GameCertificateReference> GameCertificateReferences;
  std::map<std::string,std::string> Metadata;
  int MultiplayerServerCountPerVm;
  std::list<PlayFab::MultiplayerModels::Port> Ports;
  std::list<PlayFab::MultiplayerModels::BuildRegion> RegionConfigurations;
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::AzureVmSize> VmSize;
};

# PlayFab::MultiplayerModels::CreateBuildWithCustomContainerResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::CreateBuildWithCustomContainerResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::AssetReferenceParams

struct __cppobj PlayFab::MultiplayerModels::AssetReferenceParams : PlayFab::PlayFabBaseModel
{
  std::string FileName;
  std::string MountPath;
};

# PlayFab::MultiplayerModels::AssetReferenceParams_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::AssetReferenceParams_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::RequestMultiplayerServerResponse

const struct __cppobj PlayFab::MultiplayerModels::RequestMultiplayerServerResponse : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::MultiplayerModels::ConnectedPlayer> ConnectedPlayers;
  std::string FQDN;
  std::string IPV4Address;
  PlayFab::Boxed<__int64> LastStateTransitionTime;
  std::list<PlayFab::MultiplayerModels::Port> Ports;
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::AzureRegion> Region;
  std::string ServerId;
  std::string SessionId;
  std::string State;
  std::string VmId;
};

# PlayFab::MultiplayerModels::RequestMultiplayerServerResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::RequestMultiplayerServerResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ListAssetSummariesResponse

struct __cppobj PlayFab::MultiplayerModels::ListAssetSummariesResponse : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::MultiplayerModels::AssetSummary> AssetSummaries;
  int PageSize;
  std::string SkipToken;
};

# PlayFab::MultiplayerModels::ListAssetSummariesResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ListAssetSummariesResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::GetAssetUploadUrlResponse

const struct __cppobj PlayFab::MultiplayerModels::GetAssetUploadUrlResponse : PlayFab::PlayFabResultCommon
{
  std::string AssetUploadUrl;
  std::string FileName;
};

# PlayFab::MultiplayerModels::GetAssetUploadUrlResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::GetAssetUploadUrlResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::GetMultiplayerServerDetailsResponse

const struct __cppobj PlayFab::MultiplayerModels::GetMultiplayerServerDetailsResponse : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::MultiplayerModels::ConnectedPlayer> ConnectedPlayers;
  std::string FQDN;
  std::string IPV4Address;
  PlayFab::Boxed<__int64> LastStateTransitionTime;
  std::list<PlayFab::MultiplayerModels::Port> Ports;
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::AzureRegion> Region;
  std::string ServerId;
  std::string SessionId;
  std::string State;
  std::string VmId;
};

# PlayFab::MultiplayerModels::GetMultiplayerServerDetailsResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::GetMultiplayerServerDetailsResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::GetRemoteLoginEndpointResponse

const struct __cppobj __declspec(align(8)) PlayFab::MultiplayerModels::GetRemoteLoginEndpointResponse : PlayFab::PlayFabResultCommon
{
  std::string IPV4Address;
  int Port;
};

# PlayFab::MultiplayerModels::GetRemoteLoginEndpointResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::GetRemoteLoginEndpointResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ListContainerImagesResponse

struct __cppobj PlayFab::MultiplayerModels::ListContainerImagesResponse : PlayFab::PlayFabResultCommon
{
  std::list<std::string> Images;
  int PageSize;
  std::string SkipToken;
};

# PlayFab::MultiplayerModels::ListContainerImagesResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ListContainerImagesResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::RolloverContainerRegistryCredentialsResponse

const struct __cppobj PlayFab::MultiplayerModels::RolloverContainerRegistryCredentialsResponse : PlayFab::PlayFabResultCommon
{
  std::string DnsName;
  std::string Password;
  std::string Username;
};

# PlayFab::MultiplayerModels::RolloverContainerRegistryCredentialsResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::RolloverContainerRegistryCredentialsResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ListCertificateSummariesResponse

const struct __cppobj PlayFab::MultiplayerModels::ListCertificateSummariesResponse : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::MultiplayerModels::CertificateSummary> CertificateSummaries;
  int PageSize;
  std::string SkipToken;
};

# PlayFab::MultiplayerModels::ListCertificateSummariesResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ListCertificateSummariesResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ListBuildSummariesResponse

const struct __cppobj PlayFab::MultiplayerModels::ListBuildSummariesResponse : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::MultiplayerModels::BuildSummary> BuildSummaries;
  int PageSize;
  std::string SkipToken;
};

# PlayFab::MultiplayerModels::ListBuildSummariesResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ListBuildSummariesResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::GetContainerRegistryCredentialsResponse

const struct __cppobj PlayFab::MultiplayerModels::GetContainerRegistryCredentialsResponse : PlayFab::PlayFabResultCommon
{
  std::string DnsName;
  std::string Password;
  std::string Username;
};

# PlayFab::MultiplayerModels::GetContainerRegistryCredentialsResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::GetContainerRegistryCredentialsResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::EmptyResponse

const struct __cppobj PlayFab::MultiplayerModels::EmptyResponse : PlayFab::PlayFabResultCommon
{
};

# PlayFab::MultiplayerModels::EmptyResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::EmptyResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::EnableMultiplayerServersForTitleResponse

const struct __cppobj PlayFab::MultiplayerModels::EnableMultiplayerServersForTitleResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::TitleMultiplayerServerEnabledStatus> Status;
};

# PlayFab::MultiplayerModels::EnableMultiplayerServersForTitleResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::EnableMultiplayerServersForTitleResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::CreateRemoteUserResponse

const struct __cppobj PlayFab::MultiplayerModels::CreateRemoteUserResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<__int64> ExpirationTime;
  std::string Password;
  std::string Username;
};

# PlayFab::MultiplayerModels::CreateRemoteUserResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::CreateRemoteUserResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ListVirtualMachineSummariesResponse

const struct __cppobj PlayFab::MultiplayerModels::ListVirtualMachineSummariesResponse : PlayFab::PlayFabResultCommon
{
  int PageSize;
  std::string SkipToken;
  std::list<PlayFab::MultiplayerModels::VirtualMachineSummary> VirtualMachines;
};

# PlayFab::MultiplayerModels::ListVirtualMachineSummariesResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ListVirtualMachineSummariesResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::GetBuildResponse

const struct __cppobj PlayFab::MultiplayerModels::GetBuildResponse : PlayFab::PlayFabResultCommon
{
  std::string BuildId;
  std::string BuildName;
  std::string BuildStatus;
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::ContainerFlavor> pfContainerFlavor;
  std::string ContainerRunCommand;
  PlayFab::Boxed<__int64> CreationTime;
  PlayFab::Boxed<PlayFab::MultiplayerModels::ContainerImageReference> CustomGameContainerImage;
  std::list<PlayFab::MultiplayerModels::AssetReference> GameAssetReferences;
  std::list<PlayFab::MultiplayerModels::GameCertificateReference> GameCertificateReferences;
  std::map<std::string,std::string> Metadata;
  int MultiplayerServerCountPerVm;
  std::list<PlayFab::MultiplayerModels::Port> Ports;
  std::list<PlayFab::MultiplayerModels::BuildRegion> RegionConfigurations;
  std::string StartMultiplayerServerCommand;
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::AzureVmSize> VmSize;
};

# PlayFab::MultiplayerModels::GetBuildResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::GetBuildResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::CreateBuildWithManagedContainerResponse

const struct __cppobj PlayFab::MultiplayerModels::CreateBuildWithManagedContainerResponse : PlayFab::PlayFabResultCommon
{
  std::string BuildId;
  std::string BuildName;
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::ContainerFlavor> pfContainerFlavor;
  PlayFab::Boxed<__int64> CreationTime;
  std::list<PlayFab::MultiplayerModels::AssetReference> GameAssetReferences;
  std::list<PlayFab::MultiplayerModels::GameCertificateReference> GameCertificateReferences;
  std::map<std::string,std::string> Metadata;
  int MultiplayerServerCountPerVm;
  std::list<PlayFab::MultiplayerModels::Port> Ports;
  std::list<PlayFab::MultiplayerModels::BuildRegion> RegionConfigurations;
  std::string StartMultiplayerServerCommand;
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::AzureVmSize> VmSize;
};

# PlayFab::MultiplayerModels::CreateBuildWithManagedContainerResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::CreateBuildWithManagedContainerResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ListQosServersResponse

const struct __cppobj PlayFab::MultiplayerModels::ListQosServersResponse : PlayFab::PlayFabResultCommon
{
  int PageSize;
  std::list<PlayFab::MultiplayerModels::QosServer> QosServers;
  std::string SkipToken;
};

# PlayFab::MultiplayerModels::ListQosServersResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ListQosServersResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ListMultiplayerServersResponse

const struct __cppobj PlayFab::MultiplayerModels::ListMultiplayerServersResponse : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::MultiplayerModels::MultiplayerServerSummary> MultiplayerServerSummaries;
  int PageSize;
  std::string SkipToken;
};

# PlayFab::MultiplayerModels::ListMultiplayerServersResponse_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ListMultiplayerServersResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::PlayFabMultiplayerAPI

struct __cppobj PlayFab::PlayFabMultiplayerAPI
{
};

# PlayFab::MultiplayerModels::CreateBuildWithCustomContainerRequest

struct __cppobj PlayFab::MultiplayerModels::CreateBuildWithCustomContainerRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildName;
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::ContainerFlavor> pfContainerFlavor;
  std::string ContainerRepositoryName;
  std::string ContainerRunCommand;
  std::string ContainerTag;
  std::list<PlayFab::MultiplayerModels::AssetReferenceParams> GameAssetReferences;
  std::list<PlayFab::MultiplayerModels::GameCertificateReferenceParams> GameCertificateReferences;
  std::map<std::string,std::string> Metadata;
  int MultiplayerServerCountPerVm;
  std::list<PlayFab::MultiplayerModels::Port> Ports;
  std::list<PlayFab::MultiplayerModels::BuildRegionParams> RegionConfigurations;
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::AzureVmSize> VmSize;
};

# PlayFab::MultiplayerModels::CreateBuildWithCustomContainerRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::CreateBuildWithCustomContainerRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::CreateBuildWithManagedContainerRequest

struct __cppobj PlayFab::MultiplayerModels::CreateBuildWithManagedContainerRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildName;
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::ContainerFlavor> pfContainerFlavor;
  std::list<PlayFab::MultiplayerModels::AssetReferenceParams> GameAssetReferences;
  std::list<PlayFab::MultiplayerModels::GameCertificateReferenceParams> GameCertificateReferences;
  std::map<std::string,std::string> Metadata;
  int MultiplayerServerCountPerVm;
  std::list<PlayFab::MultiplayerModels::Port> Ports;
  std::list<PlayFab::MultiplayerModels::BuildRegionParams> RegionConfigurations;
  std::string StartMultiplayerServerCommand;
  PlayFab::Boxed<enum PlayFab::MultiplayerModels::AzureVmSize> VmSize;
};

# PlayFab::MultiplayerModels::CreateBuildWithManagedContainerRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::CreateBuildWithManagedContainerRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::CreateRemoteUserRequest

struct __cppobj PlayFab::MultiplayerModels::CreateRemoteUserRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildId;
  PlayFab::Boxed<__int64> ExpirationTime;
  PlayFab::MultiplayerModels::AzureRegion Region;
  std::string Username;
  std::string VmId;
};

# PlayFab::MultiplayerModels::CreateRemoteUserRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::CreateRemoteUserRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::DeleteAssetRequest

struct __cppobj PlayFab::MultiplayerModels::DeleteAssetRequest : PlayFab::PlayFabRequestCommon
{
  std::string FileName;
};

# PlayFab::MultiplayerModels::DeleteAssetRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::DeleteAssetRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::DeleteBuildRequest

struct __cppobj PlayFab::MultiplayerModels::DeleteBuildRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildId;
};

# PlayFab::MultiplayerModels::DeleteBuildRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::DeleteBuildRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::DeleteCertificateRequest

struct __cppobj PlayFab::MultiplayerModels::DeleteCertificateRequest : PlayFab::PlayFabRequestCommon
{
  std::string Name;
};

# PlayFab::MultiplayerModels::DeleteCertificateRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::DeleteCertificateRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::DeleteRemoteUserRequest

struct __cppobj PlayFab::MultiplayerModels::DeleteRemoteUserRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildId;
  PlayFab::MultiplayerModels::AzureRegion Region;
  std::string Username;
  std::string VmId;
};

# PlayFab::MultiplayerModels::DeleteRemoteUserRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::DeleteRemoteUserRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::EnableMultiplayerServersForTitleRequest

struct __cppobj PlayFab::MultiplayerModels::EnableMultiplayerServersForTitleRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::MultiplayerModels::EnableMultiplayerServersForTitleRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::EnableMultiplayerServersForTitleRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::GetAssetUploadUrlRequest

struct __cppobj PlayFab::MultiplayerModels::GetAssetUploadUrlRequest : PlayFab::PlayFabRequestCommon
{
  std::string FileName;
};

# PlayFab::MultiplayerModels::GetAssetUploadUrlRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::GetAssetUploadUrlRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::GetBuildRequest

struct __cppobj PlayFab::MultiplayerModels::GetBuildRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildId;
};

# PlayFab::MultiplayerModels::GetBuildRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::GetBuildRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::GetContainerRegistryCredentialsRequest

struct __cppobj PlayFab::MultiplayerModels::GetContainerRegistryCredentialsRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::MultiplayerModels::GetContainerRegistryCredentialsRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::GetContainerRegistryCredentialsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::GetMultiplayerServerDetailsRequest

struct __cppobj PlayFab::MultiplayerModels::GetMultiplayerServerDetailsRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildId;
  PlayFab::MultiplayerModels::AzureRegion Region;
  std::string SessionId;
};

# PlayFab::MultiplayerModels::GetMultiplayerServerDetailsRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::GetMultiplayerServerDetailsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::GetRemoteLoginEndpointRequest

struct __cppobj PlayFab::MultiplayerModels::GetRemoteLoginEndpointRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildId;
  PlayFab::MultiplayerModels::AzureRegion Region;
  std::string VmId;
};

# PlayFab::MultiplayerModels::GetRemoteLoginEndpointRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::GetRemoteLoginEndpointRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::GetTitleEnabledForMultiplayerServersStatusRequest

struct __cppobj PlayFab::MultiplayerModels::GetTitleEnabledForMultiplayerServersStatusRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::MultiplayerModels::GetTitleEnabledForMultiplayerServersStatusRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::GetTitleEnabledForMultiplayerServersStatusRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ListMultiplayerServersRequest

struct __cppobj PlayFab::MultiplayerModels::ListMultiplayerServersRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildId;
  PlayFab::Boxed<int> PageSize;
  PlayFab::MultiplayerModels::AzureRegion Region;
  std::string SkipToken;
};

# PlayFab::MultiplayerModels::ListMultiplayerServersRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ListMultiplayerServersRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ListAssetSummariesRequest

struct __cppobj PlayFab::MultiplayerModels::ListAssetSummariesRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<int> PageSize;
  std::string SkipToken;
};

# PlayFab::MultiplayerModels::ListAssetSummariesRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ListAssetSummariesRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ListBuildSummariesRequest

struct __cppobj PlayFab::MultiplayerModels::ListBuildSummariesRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<int> PageSize;
  std::string SkipToken;
};

# PlayFab::MultiplayerModels::ListBuildSummariesRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ListBuildSummariesRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ListCertificateSummariesRequest

struct __cppobj PlayFab::MultiplayerModels::ListCertificateSummariesRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<int> PageSize;
  std::string SkipToken;
};

# PlayFab::MultiplayerModels::ListCertificateSummariesRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ListCertificateSummariesRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ListContainerImagesRequest

struct __cppobj PlayFab::MultiplayerModels::ListContainerImagesRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<int> PageSize;
  std::string SkipToken;
};

# PlayFab::MultiplayerModels::ListContainerImagesRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ListContainerImagesRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ListContainerImageTagsRequest

struct __cppobj PlayFab::MultiplayerModels::ListContainerImageTagsRequest : PlayFab::PlayFabRequestCommon
{
  std::string ImageName;
};

# PlayFab::MultiplayerModels::ListContainerImageTagsRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ListContainerImageTagsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ListQosServersRequest

struct __cppobj PlayFab::MultiplayerModels::ListQosServersRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::MultiplayerModels::ListQosServersRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ListQosServersRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ListVirtualMachineSummariesRequest

struct __cppobj PlayFab::MultiplayerModels::ListVirtualMachineSummariesRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildId;
  PlayFab::Boxed<int> PageSize;
  PlayFab::MultiplayerModels::AzureRegion Region;
  std::string SkipToken;
};

# PlayFab::MultiplayerModels::ListVirtualMachineSummariesRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ListVirtualMachineSummariesRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::RequestMultiplayerServerRequest

struct __cppobj PlayFab::MultiplayerModels::RequestMultiplayerServerRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildId;
  std::list<std::string> InitialPlayers;
  std::list<enum PlayFab::MultiplayerModels::AzureRegion> PreferredRegions;
  std::string SessionCookie;
  std::string SessionId;
};

# PlayFab::MultiplayerModels::RequestMultiplayerServerRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::RequestMultiplayerServerRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::RolloverContainerRegistryCredentialsRequest

struct __cppobj PlayFab::MultiplayerModels::RolloverContainerRegistryCredentialsRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::MultiplayerModels::RolloverContainerRegistryCredentialsRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::RolloverContainerRegistryCredentialsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::ShutdownMultiplayerServerRequest

struct __cppobj PlayFab::MultiplayerModels::ShutdownMultiplayerServerRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildId;
  PlayFab::MultiplayerModels::AzureRegion Region;
  std::string SessionId;
};

# PlayFab::MultiplayerModels::ShutdownMultiplayerServerRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::ShutdownMultiplayerServerRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::UpdateBuildRegionsRequest

struct __cppobj PlayFab::MultiplayerModels::UpdateBuildRegionsRequest : PlayFab::PlayFabRequestCommon
{
  std::string BuildId;
  std::list<PlayFab::MultiplayerModels::BuildRegionParams> BuildRegions;
};

# PlayFab::MultiplayerModels::UpdateBuildRegionsRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::UpdateBuildRegionsRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::Certificate

struct __cppobj PlayFab::MultiplayerModels::Certificate : PlayFab::PlayFabBaseModel
{
  std::string Base64EncodedValue;
  std::string Name;
  std::string Password;
};

# PlayFab::MultiplayerModels::Certificate_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::Certificate_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::MultiplayerModels::UploadCertificateRequest

struct __cppobj PlayFab::MultiplayerModels::UploadCertificateRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::MultiplayerModels::Certificate GameCertificate;
};

# PlayFab::MultiplayerModels::UploadCertificateRequest_vtbl

struct /*VFT*/ PlayFab::MultiplayerModels::UploadCertificateRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::PlayFabMultiplayerInstanceAPI

struct __cppobj PlayFab::PlayFabMultiplayerInstanceAPI
{
  std::shared_ptr<PlayFab::PlayFabApiSettings> settings;
  std::shared_ptr<PlayFab::PlayFabAuthenticationContext> authContext;
};

# PlayFab::IPlayFabSerializerPlugin

struct __cppobj PlayFab::IPlayFabSerializerPlugin : PlayFab::IPlayFabPlugin
{
};

# PlayFab::ProfilesModels::EntityDataObject

struct __cppobj PlayFab::ProfilesModels::EntityDataObject : PlayFab::PlayFabBaseModel
{
  Json::Value DataObject;
  std::string EscapedDataObject;
  std::string ObjectName;
};

# PlayFab::ProfilesModels::EntityDataObject_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::EntityDataObject_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ProfilesModels::EntityKey

struct __cppobj PlayFab::ProfilesModels::EntityKey : PlayFab::PlayFabBaseModel
{
  std::string Id;
  std::string Type;
};

# PlayFab::ProfilesModels::EntityKey_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::EntityKey_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ProfilesModels::EntityKey>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ProfilesModels::EntityKey>
{
  PlayFab::ProfilesModels::EntityKey boxedValue;
  bool isSet;
};

# PlayFab::ProfilesModels::EntityProfileFileMetadata

struct __cppobj __declspec(align(8)) PlayFab::ProfilesModels::EntityProfileFileMetadata : PlayFab::PlayFabBaseModel
{
  std::string Checksum;
  std::string FileName;
  __int64 LastModified;
  int Size;
};

# PlayFab::ProfilesModels::EntityProfileFileMetadata_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::EntityProfileFileMetadata_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ProfilesModels::EntityLineage

struct __cppobj PlayFab::ProfilesModels::EntityLineage : PlayFab::PlayFabBaseModel
{
  std::string CharacterId;
  std::string GroupId;
  std::string MasterPlayerAccountId;
  std::string NamespaceId;
  std::string TitleId;
  std::string TitlePlayerAccountId;
};

# PlayFab::ProfilesModels::EntityLineage_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::EntityLineage_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ProfilesModels::EntityLineage>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ProfilesModels::EntityLineage>
{
  PlayFab::ProfilesModels::EntityLineage boxedValue;
  bool isSet;
};

# PlayFab::ProfilesModels::EntityPermissionStatement

struct __cppobj PlayFab::ProfilesModels::EntityPermissionStatement : PlayFab::PlayFabBaseModel
{
  std::string Action;
  std::string Comment;
  Json::Value Condition;
  PlayFab::ProfilesModels::EffectType Effect;
  Json::Value Principal;
  std::string Resource;
};

# PlayFab::ProfilesModels::EntityPermissionStatement_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::EntityPermissionStatement_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ProfilesModels::EntityProfileBody

struct __cppobj __declspec(align(8)) PlayFab::ProfilesModels::EntityProfileBody : PlayFab::PlayFabBaseModel
{
  __int64 Created;
  std::string DisplayName;
  PlayFab::Boxed<PlayFab::ProfilesModels::EntityKey> Entity;
  std::string EntityChain;
  std::map<std::string,PlayFab::ProfilesModels::EntityProfileFileMetadata> Files;
  std::string Language;
  PlayFab::Boxed<PlayFab::ProfilesModels::EntityLineage> Lineage;
  std::map<std::string,PlayFab::ProfilesModels::EntityDataObject> Objects;
  std::list<PlayFab::ProfilesModels::EntityPermissionStatement> Permissions;
  int VersionNumber;
};

# PlayFab::ProfilesModels::EntityProfileBody_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::EntityProfileBody_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ProfilesModels::SetEntityProfilePolicyResponse

struct __cppobj PlayFab::ProfilesModels::SetEntityProfilePolicyResponse : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ProfilesModels::EntityPermissionStatement> Permissions;
};

# PlayFab::ProfilesModels::SetEntityProfilePolicyResponse_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::SetEntityProfilePolicyResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<PlayFab::ProfilesModels::EntityProfileBody>

struct __cppobj __declspec(align(8)) PlayFab::Boxed<PlayFab::ProfilesModels::EntityProfileBody>
{
  PlayFab::ProfilesModels::EntityProfileBody boxedValue;
  bool isSet;
};

# PlayFab::ProfilesModels::GetEntityProfileResponse

struct __cppobj PlayFab::ProfilesModels::GetEntityProfileResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<PlayFab::ProfilesModels::EntityProfileBody> Profile;
};

# PlayFab::ProfilesModels::GetEntityProfileResponse_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::GetEntityProfileResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ProfilesModels::SetGlobalPolicyResponse

const struct __cppobj PlayFab::ProfilesModels::SetGlobalPolicyResponse : PlayFab::PlayFabResultCommon
{
};

# PlayFab::ProfilesModels::SetGlobalPolicyResponse_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::SetGlobalPolicyResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::Boxed<enum PlayFab::ProfilesModels::OperationTypes>

struct __cppobj __declspec(align(4)) PlayFab::Boxed<enum PlayFab::ProfilesModels::OperationTypes>
{
  PlayFab::ProfilesModels::OperationTypes boxedValue;
  bool isSet;
};

# PlayFab::ProfilesModels::SetProfileLanguageResponse

const struct __cppobj PlayFab::ProfilesModels::SetProfileLanguageResponse : PlayFab::PlayFabResultCommon
{
  PlayFab::Boxed<enum PlayFab::ProfilesModels::OperationTypes> OperationResult;
  PlayFab::Boxed<int> VersionNumber;
};

# PlayFab::ProfilesModels::SetProfileLanguageResponse_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::SetProfileLanguageResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ProfilesModels::GetEntityProfilesResponse

const struct __cppobj PlayFab::ProfilesModels::GetEntityProfilesResponse : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ProfilesModels::EntityProfileBody> Profiles;
};

# PlayFab::ProfilesModels::GetEntityProfilesResponse_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::GetEntityProfilesResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ProfilesModels::GetGlobalPolicyResponse

const struct __cppobj PlayFab::ProfilesModels::GetGlobalPolicyResponse : PlayFab::PlayFabResultCommon
{
  std::list<PlayFab::ProfilesModels::EntityPermissionStatement> Permissions;
};

# PlayFab::ProfilesModels::GetGlobalPolicyResponse_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::GetGlobalPolicyResponse_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ProfilesModels::GetEntityProfilesRequest

struct __cppobj PlayFab::ProfilesModels::GetEntityProfilesRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> DataAsObject;
  std::list<PlayFab::ProfilesModels::EntityKey> Entities;
};

# PlayFab::ProfilesModels::GetEntityProfilesRequest_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::GetEntityProfilesRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ProfilesModels::SetEntityProfilePolicyRequest

struct __cppobj PlayFab::ProfilesModels::SetEntityProfilePolicyRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::ProfilesModels::EntityKey Entity;
  std::list<PlayFab::ProfilesModels::EntityPermissionStatement> Statements;
};

# PlayFab::ProfilesModels::SetEntityProfilePolicyRequest_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::SetEntityProfilePolicyRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ProfilesModels::SetGlobalPolicyRequest

struct __cppobj PlayFab::ProfilesModels::SetGlobalPolicyRequest : PlayFab::PlayFabRequestCommon
{
  std::list<PlayFab::ProfilesModels::EntityPermissionStatement> Permissions;
};

# PlayFab::ProfilesModels::SetGlobalPolicyRequest_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::SetGlobalPolicyRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ProfilesModels::SetProfileLanguageRequest

struct __cppobj PlayFab::ProfilesModels::SetProfileLanguageRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<PlayFab::ProfilesModels::EntityKey> Entity;
  int ExpectedVersion;
  std::string Language;
};

# PlayFab::ProfilesModels::SetProfileLanguageRequest_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::SetProfileLanguageRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ProfilesModels::GetGlobalPolicyRequest

struct __cppobj PlayFab::ProfilesModels::GetGlobalPolicyRequest : PlayFab::PlayFabRequestCommon
{
};

# PlayFab::ProfilesModels::GetGlobalPolicyRequest_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::GetGlobalPolicyRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::ProfilesModels::GetEntityProfileRequest

struct __cppobj PlayFab::ProfilesModels::GetEntityProfileRequest : PlayFab::PlayFabRequestCommon
{
  PlayFab::Boxed<bool> DataAsObject;
  PlayFab::Boxed<PlayFab::ProfilesModels::EntityKey> Entity;
};

# PlayFab::ProfilesModels::GetEntityProfileRequest_vtbl

struct /*VFT*/ PlayFab::ProfilesModels::GetEntityProfileRequest_vtbl
{
  void (__fastcall *~PlayFabBaseModel)(PlayFab::PlayFabBaseModel *this);
  void (__fastcall *FromJson)(PlayFab::PlayFabBaseModel *this, Json::Value *);
  Json::Value *(__fastcall *ToJson)(PlayFab::PlayFabBaseModel *this, Json::Value *result);
};

# PlayFab::PlayFabProfilesAPI

struct __cppobj PlayFab::PlayFabProfilesAPI
{
};

# PlayFab::PlayFabProfilesInstanceAPI

struct __cppobj PlayFab::PlayFabProfilesInstanceAPI
{
  std::shared_ptr<PlayFab::PlayFabApiSettings> settings;
  std::shared_ptr<PlayFab::PlayFabAuthenticationContext> authContext;
};

# PlayFab::QoS::DataCenterResult

struct __cppobj PlayFab::QoS::DataCenterResult
{
  PlayFab::MultiplayerModels::AzureRegion region;
  std::string dataCenterName;
  int latencyMs;
  int lastErrorCode;
};

# PS_DriverRec_

struct __declspec(align(8)) PS_DriverRec_
{
  FT_DriverRec_ root;
  unsigned int hinting_engine;
  unsigned __int8 no_stem_darkening;
  int darken_params[8];
  int random_seed;
};

# PS_FontInfoRec_

struct __declspec(align(8)) PS_FontInfoRec_
{
  char *version;
  char *notice;
  char *full_name;
  char *family_name;
  char *weight;
  int italic_angle;
  unsigned __int8 is_fixed_pitch;
  __int16 underline_position;
  unsigned __int16 underline_thickness;
};

# PS_FontExtraRec_

struct PS_FontExtraRec_
{
  unsigned __int16 fs_type;
};

# PSH_WidthRec_

struct PSH_WidthRec_
{
  int org;
  int cur;
  int fit;
};

# PSH_WidthsRec_

struct PSH_WidthsRec_
{
  unsigned int count;
  PSH_WidthRec_ widths[16];
};

# PSH_DimensionRec_

struct PSH_DimensionRec_
{
  PSH_WidthsRec_ stdw;
  int scale_mult;
  int scale_delta;
};

# PSH_Blue_ZoneRec_

struct PSH_Blue_ZoneRec_
{
  int org_ref;
  int org_delta;
  int org_top;
  int org_bottom;
  int cur_ref;
  int cur_delta;
  int cur_bottom;
  int cur_top;
};

# PSH_Blue_TableRec_

struct PSH_Blue_TableRec_
{
  unsigned int count;
  PSH_Blue_ZoneRec_ zones[16];
};

# PSH_BluesRec_

struct __declspec(align(4)) PSH_BluesRec_
{
  PSH_Blue_TableRec_ normal_top;
  PSH_Blue_TableRec_ normal_bottom;
  PSH_Blue_TableRec_ family_top;
  PSH_Blue_TableRec_ family_bottom;
  int blue_scale;
  int blue_shift;
  int blue_threshold;
  int blue_fuzz;
  unsigned __int8 no_overshoots;
};

# PSH_GlobalsRec_

struct __declspec(align(8)) PSH_GlobalsRec_
{
  FT_MemoryRec_ *memory;
  PSH_DimensionRec_ dimension[2];
  PSH_BluesRec_ blues;
};

# PSH_Globals_FuncsRec_

struct PSH_Globals_FuncsRec_
{
  int (__fastcall *create)(FT_MemoryRec_ *, PS_PrivateRec_ *, PSH_GlobalsRec_ **);
  void (__fastcall *set_scale)(PSH_GlobalsRec_ *, int, int, int, int);
  void (__fastcall *destroy)(PSH_GlobalsRec_ *);
};

# PS_UniMap_

struct PS_UniMap_
{
  unsigned int unicode;
  unsigned int glyph_index;
};

# PS_UnicodesRec_

struct PS_UnicodesRec_
{
  FT_CMapRec_ cmap;
  unsigned int num_maps;
  PS_UniMap_ *maps;
};

# PS_DesignMap_

struct PS_DesignMap_
{
  unsigned __int8 num_points;
  int *design_points;
  int *blend_points;
};

# PS_BlendRec_

struct __declspec(align(8)) PS_BlendRec_
{
  unsigned int num_designs;
  unsigned int num_axis;
  char *axis_names[4];
  int *design_pos[16];
  PS_DesignMap_ design_map[4];
  int *weight_vector;
  int *default_weight_vector;
  PS_FontInfoRec_ *font_infos[17];
  PS_PrivateRec_ *privates[17];
  unsigned int blend_bitflags;
  FT_BBox_ *bboxes[17];
  unsigned int default_design_vector[16];
  unsigned int num_default_design_vector;
};

# PS_Builder_

struct PS_Builder_
{
  FT_MemoryRec_ *memory;
  FT_FaceRec_ *face;
  CFF_GlyphSlotRec_ *glyph;
  FT_GlyphLoaderRec_ *loader;
  FT_Outline_ *base;
  FT_Outline_ *current;
  int *pos_x;
  int *pos_y;
  FT_Vector_ *left_bearing;
  FT_Vector_ *advance;
  FT_BBox_ *bbox;
  unsigned __int8 path_begun;
  unsigned __int8 load_points;
  unsigned __int8 no_recurse;
  unsigned __int8 metrics_only;
  unsigned __int8 is_t1;
  PS_Builder_FuncsRec_ funcs;
};

# PS_Decoder_Zone_

struct PS_Decoder_Zone_
{
  unsigned __int8 *base;
  unsigned __int8 *limit;
  unsigned __int8 *cursor;
};

# PS_Decoder_

struct __declspec(align(8)) PS_Decoder_
{
  PS_Builder_ builder;
  int stack[49];
  int *top;
  PS_Decoder_Zone_ zones[17];
  PS_Decoder_Zone_ *zone;
  int flex_state;
  int num_flex_vectors;
  FT_Vector_ flex_vectors[7];
  CFF_FontRec_ *cff;
  CFF_SubFontRec_ *current_subfont;
  FT_Generic_ *cf2_instance;
  int *glyph_width;
  unsigned __int8 width_only;
  int num_hints;
  unsigned int num_locals;
  unsigned int num_globals;
  int locals_bias;
  int globals_bias;
  unsigned __int8 **locals;
  unsigned __int8 **globals;
  unsigned __int8 **glyph_names;
  unsigned int num_glyphs;
  FT_Render_Mode_ hint_mode;
  unsigned __int8 seac;
  int (__fastcall *get_glyph_callback)(TT_FaceRec_ *, unsigned int, unsigned __int8 **, unsigned int *);
  void (__fastcall *free_glyph_callback)(TT_FaceRec_ *, unsigned __int8 **, unsigned int);
  const FT_Service_PsCMapsRec_ *psnames;
  int lenIV;
  unsigned int *locals_len;
  FT_HashRec_ *locals_hash;
  FT_Matrix_ font_matrix;
  FT_Vector_ font_offset;
  PS_BlendRec_ *blend;
  int *buildchar;
  unsigned int len_buildchar;
};

# PS_TableRec_

struct PS_TableRec_
{
  unsigned __int8 *block;
  unsigned __int64 cursor;
  unsigned __int64 capacity;
  unsigned int init;
  int max_elems;
  int num_elems;
  unsigned __int8 **elements;
  unsigned int *lengths;
  FT_MemoryRec_ *memory;
  PS_Table_FuncsRec_ funcs;
};

# PCF_EncRec_

struct PCF_EncRec_
{
  unsigned __int16 firstCol;
  unsigned __int16 lastCol;
  unsigned __int16 firstRow;
  unsigned __int16 lastRow;
  unsigned __int16 defaultChar;
  wchar_t *offset;
};

# PCF_TableRec_

struct PCF_TableRec_
{
  unsigned int type;
  unsigned int format;
  unsigned int size;
  unsigned int offset;
};

# PCF_TocRec_

struct PCF_TocRec_
{
  unsigned int version;
  unsigned int count;
  PCF_TableRec_ *tables;
};

# PCF_MetricRec_

struct PCF_MetricRec_
{
  __int16 leftSideBearing;
  __int16 rightSideBearing;
  __int16 characterWidth;
  __int16 ascent;
  __int16 descent;
  __int16 attributes;
  unsigned int bits;
};

# PCF_AccelRec_

struct PCF_AccelRec_
{
  unsigned __int8 noOverlap;
  unsigned __int8 constantMetrics;
  unsigned __int8 terminalFont;
  unsigned __int8 constantWidth;
  unsigned __int8 inkInside;
  unsigned __int8 inkMetrics;
  unsigned __int8 drawDirection;
  int fontAscent;
  int fontDescent;
  int maxOverlap;
  PCF_MetricRec_ minbounds;
  PCF_MetricRec_ maxbounds;
  PCF_MetricRec_ ink_minbounds;
  PCF_MetricRec_ ink_maxbounds;
};

# PCF_PropertyRec_

struct PCF_PropertyRec_
{
  char *name;
  unsigned __int8 isString;
  union
  {
    char *atom;
    int l;
    unsigned int ul;
  } value;
};

# PCF_FaceRec_

struct __declspec(align(8)) PCF_FaceRec_
{
  FT_FaceRec_ root;
  FT_StreamRec_ comp_stream;
  FT_StreamRec_ *comp_source;
  char *charset_encoding;
  char *charset_registry;
  PCF_TocRec_ toc;
  PCF_AccelRec_ accel;
  int nprops;
  PCF_PropertyRec_ *properties;
  unsigned int nmetrics;
  PCF_MetricRec_ *metrics;
  PCF_EncRec_ enc;
  unsigned int bitmapsFormat;
};

# PCF_ParsePropertyRec_

struct PCF_ParsePropertyRec_
{
  int name;
  unsigned __int8 isString;
  int value;
};

# PCF_Compressed_MetricRec_

struct PCF_Compressed_MetricRec_
{
  unsigned __int8 leftSideBearing;
  unsigned __int8 rightSideBearing;
  unsigned __int8 characterWidth;
  unsigned __int8 ascent;
  unsigned __int8 descent;
};

# PCF_CMapRec_

struct PCF_CMapRec_
{
  FT_CMapRec_ root;
  PCF_EncRec_ *enc;
};

# PFR_HeaderRec_

struct PFR_HeaderRec_
{
  unsigned int signature;
  unsigned int version;
  unsigned int signature2;
  unsigned int header_size;
  unsigned int log_dir_size;
  unsigned int log_dir_offset;
  unsigned int log_font_max_size;
  unsigned int log_font_section_size;
  unsigned int log_font_section_offset;
  unsigned int phy_font_max_size;
  unsigned int phy_font_section_size;
  unsigned int phy_font_section_offset;
  unsigned int gps_max_size;
  unsigned int gps_section_size;
  unsigned int gps_section_offset;
  unsigned int max_blue_values;
  unsigned int max_x_orus;
  unsigned int max_y_orus;
  unsigned int phy_font_max_size_high;
  unsigned int color_flags;
  unsigned int bct_max_size;
  unsigned int bct_set_max_size;
  unsigned int phy_bct_set_max_size;
  unsigned int num_phy_fonts;
  unsigned int max_vert_stem_snap;
  unsigned int max_horz_stem_snap;
  unsigned int max_chars;
};

# PFR_DimensionRec_

struct PFR_DimensionRec_
{
  unsigned int standard;
  unsigned int num_stem_snaps;
  int *stem_snaps;
};

# PFR_BitmapCharRec_

struct PFR_BitmapCharRec_
{
  unsigned int char_code;
  unsigned int gps_size;
  unsigned int gps_offset;
};

# PFR_StrikeRec_

struct PFR_StrikeRec_
{
  unsigned int x_ppm;
  unsigned int y_ppm;
  unsigned int flags;
  unsigned int gps_size;
  unsigned int gps_offset;
  unsigned int bct_size;
  unsigned int bct_offset;
  unsigned int num_bitmaps;
  PFR_BitmapCharRec_ *bitmaps;
};

# PFR_SubGlyphRec_

struct PFR_SubGlyphRec_
{
  int x_scale;
  int y_scale;
  int x_delta;
  int y_delta;
  unsigned int gps_offset;
  unsigned int gps_size;
};

# PFR_GlyphRec_

struct __declspec(align(8)) PFR_GlyphRec_
{
  unsigned __int8 format;
  unsigned int max_xy_control;
  int *x_control;
  int *y_control;
  unsigned int num_subs;
  unsigned int max_subs;
  PFR_SubGlyphRec_ *subs;
  FT_GlyphLoaderRec_ *loader;
  unsigned __int8 path_begun;
};

# PFR_LogFontRec_

struct PFR_LogFontRec_
{
  unsigned int size;
  unsigned int offset;
  int matrix[4];
  unsigned int stroke_flags;
  int stroke_thickness;
  int bold_thickness;
  int miter_limit;
  unsigned int phys_size;
  unsigned int phys_offset;
};

# PFR_CharRec_

struct PFR_CharRec_
{
  unsigned int char_code;
  int advance;
  unsigned int gps_size;
  unsigned int gps_offset;
};

# PFR_KernItemRec_

struct PFR_KernItemRec_
{
  PFR_KernItemRec_ *next;
  unsigned __int8 pair_count;
  unsigned __int8 flags;
  __int16 base_adj;
  unsigned int pair_size;
  unsigned __int64 offset;
  unsigned int pair1;
  unsigned int pair2;
};

# PFR_PhyFontRec_

struct PFR_PhyFontRec_
{
  FT_MemoryRec_ *memory;
  unsigned int offset;
  unsigned int font_ref_number;
  unsigned int outline_resolution;
  unsigned int metrics_resolution;
  FT_BBox_ bbox;
  unsigned int flags;
  int standard_advance;
  int ascent;
  int descent;
  int leading;
  PFR_DimensionRec_ horizontal;
  PFR_DimensionRec_ vertical;
  char *font_id;
  char *family_name;
  char *style_name;
  unsigned int num_strikes;
  unsigned int max_strikes;
  PFR_StrikeRec_ *strikes;
  unsigned int num_blue_values;
  int *blue_values;
  unsigned int blue_fuzz;
  unsigned int blue_scale;
  unsigned int num_chars;
  unsigned __int64 chars_offset;
  PFR_CharRec_ *chars;
  unsigned int num_kern_pairs;
  PFR_KernItemRec_ *kern_items;
  PFR_KernItemRec_ **kern_items_tail;
  unsigned int bct_offset;
  unsigned __int8 *cursor;
};

# PFR_FaceRec_

struct PFR_FaceRec_
{
  FT_FaceRec_ root;
  PFR_HeaderRec_ header;
  PFR_LogFontRec_ log_font;
  PFR_PhyFontRec_ phy_font;
};

# PFR_CMapRec_

struct PFR_CMapRec_
{
  FT_CMapRec_ cmap;
  unsigned int num_chars;
  PFR_CharRec_ *chars;
};

# PFR_BitWriter_

struct PFR_BitWriter_
{
  unsigned __int8 *line;
  int pitch;
  unsigned int width;
  unsigned int rows;
  unsigned int total;
};

# PFR_SizeRec_

struct PFR_SizeRec_
{
  FT_SizeRec_ root;
};

# PFR_SlotRec_

struct PFR_SlotRec_
{
  FT_GlyphSlotRec_ root;
  PFR_GlyphRec_ glyph;
};

# PS_HintRec_

struct PS_HintRec_
{
  int pos;
  int len;
  unsigned int flags;
};

# PS_Hint_TableRec_

struct PS_Hint_TableRec_
{
  unsigned int num_hints;
  unsigned int max_hints;
  PS_HintRec_ *hints;
};

# PSH_PointRec_

struct __declspec(align(8)) PSH_PointRec_
{
  PSH_PointRec_ *prev;
  PSH_PointRec_ *next;
  PSH_ContourRec_ *contour;
  unsigned int flags;
  unsigned int flags2;
  char dir_in;
  char dir_out;
  PSH_HintRec_ *hint;
  int org_u;
  int org_v;
  int cur_u;
};

# PSH_ContourRec_

struct __declspec(align(8)) PSH_ContourRec_
{
  PSH_PointRec_ *start;
  unsigned int count;
};

# PSH_HintRec_

struct __declspec(align(8)) PSH_HintRec_
{
  int org_pos;
  int org_len;
  int cur_pos;
  int cur_len;
  unsigned int flags;
  PSH_HintRec_ *parent;
  int order;
};

# PS_MaskRec_

struct __declspec(align(8)) PS_MaskRec_
{
  unsigned int num_bits;
  unsigned int max_bits;
  unsigned __int8 *bytes;
  unsigned int end_point;
};

# PSH_ZoneRec_

struct PSH_ZoneRec_
{
  int scale;
  int delta;
  int min;
  int max;
};

# PS_Mask_TableRec_

struct PS_Mask_TableRec_
{
  unsigned int num_masks;
  unsigned int max_masks;
  PS_MaskRec_ *masks;
};

# PSH_AlignmentRec_

struct PSH_AlignmentRec_
{
  int align;
  int align_top;
  int align_bot;
};

# PS_DimensionRec_

struct PS_DimensionRec_
{
  PS_Hint_TableRec_ hints;
  PS_Mask_TableRec_ masks;
  PS_Mask_TableRec_ counters;
};

# PS_HintsRec_

struct PS_HintsRec_
{
  FT_MemoryRec_ *memory;
  int error;
  unsigned int magic;
  PS_Hint_Type_ hint_type;
  PS_DimensionRec_ dimension[2];
};

# PS_Hinter_Module_Rec_

struct PS_Hinter_Module_Rec_
{
  FT_ModuleRec_ root;
  PS_HintsRec_ ps_hints;
  PSH_Globals_FuncsRec_ globals_funcs;
  T1_Hints_FuncsRec_ t1_funcs;
  T2_Hints_FuncsRec_ t2_funcs;
};

# Picklerobject

struct Picklerobject
{
  __int64 ob_refcnt;
  _typeobject *ob_type;
  _iobuf *fp;
  _object *write;
  _object *file;
  _object *memo;
  _object *arg;
  _object *pers_func;
  _object *inst_pers_func;
  int proto;
  int bin;
  int fast;
  __int64 (__fastcall *write_func)(Picklerobject *, const char *, __int64);
  char *write_buf;
  __int64 buf_size;
  _object *dispatch_table;
  int fast_container;
  _object *fast_memo;
};

# Pdata

struct Pdata
{
  __int64 ob_refcnt;
  _typeobject *ob_type;
  __int64 length;
  __int64 size;
  _object **data;
};

# productobject

struct __declspec(align(8)) productobject
{
  __int64 ob_refcnt;
  _typeobject *ob_type;
  _object *pools;
  __int64 *indices;
  _object *result;
  int stopped;
};

# permutationsobject

struct __declspec(align(8)) permutationsobject
{
  __int64 ob_refcnt;
  _typeobject *ob_type;
  _object *pool;
  __int64 *indices;
  __int64 *cycles;
  _object *result;
  __int64 r;
  int stopped;
};

# partialobject

struct partialobject
{
  __int64 ob_refcnt;
  _typeobject *ob_type;
  _object *fn;
  _object *args;
  _object *kw;
  _object *dict;
  _object *weakreflist;
};

# PyBlockingIOErrorObject

struct PyBlockingIOErrorObject
{
  __int64 ob_refcnt;
  _typeobject *ob_type;
  _object *dict;
  _object *args;
  _object *message;
  _object *myerrno;
  _object *strerror;
  _object *filename;
  __int64 written;
};

# PatternObject

struct __declspec(align(8)) PatternObject
{
  __int64 ob_refcnt;
  _typeobject *ob_type;
  __int64 ob_size;
  __int64 groups;
  _object *groupindex;
  _object *indexgroup;
  _object *pattern;
  int flags;
  _object *weakreflist;
  __int64 codesize;
  unsigned int code[1];
};

# PyCapsule

struct PyCapsule
{
  __int64 ob_refcnt;
  _typeobject *ob_type;
  void *pointer;
  const char *name;
  void *context;
  void (__fastcall *destructor)(_object *);
};

# propertyobject

struct __declspec(align(8)) propertyobject
{
  __int64 ob_refcnt;
  _typeobject *ob_type;
  _object *prop_get;
  _object *prop_set;
  _object *prop_del;
  _object *prop_doc;
  int getter_doc;
};

# proxyobject

struct proxyobject
{
  __int64 ob_refcnt;
  _typeobject *ob_type;
  _object *dict;
};

# pool_header

struct pool_header
{
  union
  {
    unsigned __int8 *_padding;
    unsigned int count;
  } ref;
  unsigned __int8 *freeblock;
  pool_header *nextpool;
  pool_header *prevpool;
  unsigned int arenaindex;
  unsigned int szidx;
  unsigned int nextoffset;
  unsigned int maxnextoffset;
};

# parser_state

struct __declspec(align(8)) parser_state
{
  stack p_stack;
  grammar *p_grammar;
  _node *p_tree;
  unsigned int p_flags;
};

# ParticleTrackingSystem::tick::__l5::<lambda_3cc4b48ff288cd6f9db2687a9ef2178d>

struct __cppobj ParticleTrackingSystem::tick::__l5::<lambda_3cc4b48ff288cd6f9db2687a9ef2178d>
{
  ParticleSystemEngine *engine;
};

# PaperDollRenderer::update::__l2::<lambda_241b100ba2f05802b67184610565cca8>::()::__l2::Literal

struct __cppobj PaperDollRenderer::update::__l2::<lambda_241b100ba2f05802b67184610565cca8>::()::__l2::Literal
{
};

# PaperDollRenderer::{ctor}::__l2::<lambda_45e9068edea170a4db548e808cc1c6d7>::()::__l2::Literal

struct __cppobj PaperDollRenderer::{ctor}::__l2::<lambda_45e9068edea170a4db548e808cc1c6d7>::()::__l2::Literal
{
};

# PaperDollRenderer::{ctor}::__l2::<lambda_0a94b95a0b5cd0743d2722d7c6643831>::()::__l2::Literal

struct __cppobj PaperDollRenderer::{ctor}::__l2::<lambda_0a94b95a0b5cd0743d2722d7c6643831>::()::__l2::Literal
{
};

# PaperDollRenderer::{ctor}::__l2::<lambda_705417112adcbbe143f23126db5b2911>::()::__l2::Literal

struct __cppobj PaperDollRenderer::{ctor}::__l2::<lambda_705417112adcbbe143f23126db5b2911>::()::__l2::Literal
{
};

# PaperDollRenderer::{ctor}::__l2::<lambda_4d46e761c1a10857089cb93acaff665f>::()::__l2::Literal

struct __cppobj PaperDollRenderer::{ctor}::__l2::<lambda_4d46e761c1a10857089cb93acaff665f>::()::__l2::Literal
{
};

# PaperDollRenderer::{ctor}::__l2::<lambda_2a4cc884da57c7715e9a619182e27522>::()::__l2::Literal

struct __cppobj PaperDollRenderer::{ctor}::__l2::<lambda_2a4cc884da57c7715e9a619182e27522>::()::__l2::Literal
{
};

# PaperDollRenderer::{ctor}::__l2::<lambda_aace4f84a3b5bd5a8b4b2d706f2c6123>::()::__l2::Literal

struct __cppobj PaperDollRenderer::{ctor}::__l2::<lambda_aace4f84a3b5bd5a8b4b2d706f2c6123>::()::__l2::Literal
{
};

# PaperDollRenderer::render::__l67::<lambda_c793c7c7a8f5152e0133d51536be06e4>::()::__l2::Literal

struct __cppobj PaperDollRenderer::render::__l67::<lambda_c793c7c7a8f5152e0133d51536be06e4>::()::__l2::Literal
{
};

# PaperDollRenderer::render::__l78::<lambda_52f0764e31cdb34ba7186515cba3c61b>::()::__l2::Literal

struct __cppobj PaperDollRenderer::render::__l78::<lambda_52f0764e31cdb34ba7186515cba3c61b>::()::__l2::Literal
{
};

# PaperDollRenderer::render::__l78::<lambda_a01e697ca3535b0bf4104ef3ab205f58>::()::__l2::Literal

struct __cppobj PaperDollRenderer::render::__l78::<lambda_a01e697ca3535b0bf4104ef3ab205f58>::()::__l2::Literal
{
};

# PaperDollRenderer::render::__l78::<lambda_44ce01a135a93ffeafce431fd9275afc>::()::__l2::Literal

struct __cppobj PaperDollRenderer::render::__l78::<lambda_44ce01a135a93ffeafce431fd9275afc>::()::__l2::Literal
{
};

# PaperDollRenderer::{ctor}::__l2::<lambda_4d46e761c1a10857089cb93acaff665f>

struct __cppobj PaperDollRenderer::{ctor}::__l2::<lambda_4d46e761c1a10857089cb93acaff665f>
{
};

# PaperDollRenderer::{ctor}::__l2::<lambda_aace4f84a3b5bd5a8b4b2d706f2c6123>

struct __cppobj PaperDollRenderer::{ctor}::__l2::<lambda_aace4f84a3b5bd5a8b4b2d706f2c6123>
{
};

# PaperDollRenderer::{ctor}::__l2::<lambda_705417112adcbbe143f23126db5b2911>

struct __cppobj PaperDollRenderer::{ctor}::__l2::<lambda_705417112adcbbe143f23126db5b2911>
{
};

# PaperDollRenderer::{ctor}::__l2::<lambda_0a94b95a0b5cd0743d2722d7c6643831>

struct __cppobj PaperDollRenderer::{ctor}::__l2::<lambda_0a94b95a0b5cd0743d2722d7c6643831>
{
};

# PaperDollRenderer::{ctor}::__l2::<lambda_2a4cc884da57c7715e9a619182e27522>

struct __cppobj PaperDollRenderer::{ctor}::__l2::<lambda_2a4cc884da57c7715e9a619182e27522>
{
};

# PaperDollRenderer::{ctor}::__l2::<lambda_45e9068edea170a4db548e808cc1c6d7>

struct __cppobj PaperDollRenderer::{ctor}::__l2::<lambda_45e9068edea170a4db548e808cc1c6d7>
{
};

# PaperDollRenderer::update::__l2::<lambda_241b100ba2f05802b67184610565cca8>

struct __cppobj PaperDollRenderer::update::__l2::<lambda_241b100ba2f05802b67184610565cca8>
{
};

# PaperDollRenderer::render::__l78::<lambda_44ce01a135a93ffeafce431fd9275afc>

struct __cppobj PaperDollRenderer::render::__l78::<lambda_44ce01a135a93ffeafce431fd9275afc>
{
};

# PaperDollRenderer::render::__l78::<lambda_52f0764e31cdb34ba7186515cba3c61b>

struct __cppobj PaperDollRenderer::render::__l78::<lambda_52f0764e31cdb34ba7186515cba3c61b>
{
};

# PaperDollRenderer::render::__l78::<lambda_a01e697ca3535b0bf4104ef3ab205f58>

struct __cppobj PaperDollRenderer::render::__l78::<lambda_a01e697ca3535b0bf4104ef3ab205f58>
{
};

# PaperDollRenderer::render::__l67::<lambda_c793c7c7a8f5152e0133d51536be06e4>

struct __cppobj PaperDollRenderer::render::__l67::<lambda_c793c7c7a8f5152e0133d51536be06e4>
{
};

# ProgressScreenController::_openConfirmationDialog::__l23::<lambda_c64032552a7df6c3238b89201197c493>

struct __cppobj ProgressScreenController::_openConfirmationDialog::__l23::<lambda_c64032552a7df6c3238b89201197c493>
{
};

# PersonaScreenController::{ctor}::__l2::<lambda_c83d5461d7affdc9c9cc694c378215ba>

struct __cppobj PersonaScreenController::{ctor}::__l2::<lambda_c83d5461d7affdc9c9cc694c378215ba>
{
};

# PortfolioScreenController::_handlePortfolioExport::__l9::<lambda_ea6dce30f0eb8b2ad6f81d2b6faaa2fd>

struct __cppobj PortfolioScreenController::_handlePortfolioExport::__l9::<lambda_ea6dce30f0eb8b2ad6f81d2b6faaa2fd>
{
};

# PackManagerContentSource::load::__l6::<lambda_2f87478f012e5f0af21103f5204160fe>

struct __cppobj PackManagerContentSource::load::__l6::<lambda_2f87478f012e5f0af21103f5204160fe>
{
  PackManagerContentSource *const __this;
  PackManagerContentSource::PackData *packData;
};

# PacksModelFactory::loadPacks::__l2::<lambda_53d14b67f6833d8dc2b9a2ea3b413111>::()::__l2::<lambda_f47fe8d56ae3647be42b09d47a44bb44>

struct __cppobj PacksModelFactory::loadPacks::__l2::<lambda_53d14b67f6833d8dc2b9a2ea3b413111>::()::__l2::<lambda_f47fe8d56ae3647be42b09d47a44bb44>
{
  const Pack *pack;
};

# PacksModelFactory::loadPacks::__l12::<lambda_a22f1a487ceb2cc5c9865a0da1e129c7>

struct __cppobj PacksModelFactory::loadPacks::__l12::<lambda_a22f1a487ceb2cc5c9865a0da1e129c7>
{
  const Pack *foundPack;
};

# ParticleEngine::_emitParticleNew::__l27::<lambda_1432bf980f5a9a8d2c6cf36182d1fa9b>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l27::<lambda_1432bf980f5a9a8d2c6cf36182d1fa9b>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l27::<lambda_a487607d4b8bb952d13605bf575149b4>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l27::<lambda_a487607d4b8bb952d13605bf575149b4>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l27::<lambda_5c7e62e9a79a088f189408d3d7956a9a>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l27::<lambda_5c7e62e9a79a088f189408d3d7956a9a>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l27::<lambda_80f3f261ee66b2170bd517c8b082c12d>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l27::<lambda_80f3f261ee66b2170bd517c8b082c12d>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l27::<lambda_c51dce9ec35b546a34d84ebd662c412e>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l27::<lambda_c51dce9ec35b546a34d84ebd662c412e>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l60::<lambda_812da3998ce87dc88fe345b79793bc0c>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l60::<lambda_812da3998ce87dc88fe345b79793bc0c>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l58::<lambda_8a1b6fe796177234ce16859825c99763>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l58::<lambda_8a1b6fe796177234ce16859825c99763>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l58::<lambda_99e7b679e7679cfaf843f41809039b66>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l58::<lambda_99e7b679e7679cfaf843f41809039b66>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l58::<lambda_b7465fb051fdc501f9a559a2a2a6a9e4>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l58::<lambda_b7465fb051fdc501f9a559a2a2a6a9e4>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l60::<lambda_b95f6ec4b345d31368468880c2965711>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l60::<lambda_b95f6ec4b345d31368468880c2965711>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l60::<lambda_da072d0dab2367edad9ca0ba175d4701>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l60::<lambda_da072d0dab2367edad9ca0ba175d4701>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l28::<lambda_ce22494f2db998d54ebb72e36486e8a3>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l28::<lambda_ce22494f2db998d54ebb72e36486e8a3>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l46::<lambda_09a0080d7e4544c1f2659e46a04fdc95>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l46::<lambda_09a0080d7e4544c1f2659e46a04fdc95>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l50::<lambda_5781a82391fd9fe8d31b94b81c2cad2f>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l50::<lambda_5781a82391fd9fe8d31b94b81c2cad2f>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l34::<lambda_626d1c767fbea690aebcfa7f6a0272fc>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l34::<lambda_626d1c767fbea690aebcfa7f6a0272fc>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l33::<lambda_b4a9a82543f121b4a92f434c87992da6>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l33::<lambda_b4a9a82543f121b4a92f434c87992da6>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l32::<lambda_c3875d830fbdcbd6ff6e4a939939d547>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l32::<lambda_c3875d830fbdcbd6ff6e4a939939d547>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l24::<lambda_e08a81f77435610028b8a5723b031136>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l24::<lambda_e08a81f77435610028b8a5723b031136>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l35::<lambda_e9406fdea39e71ba92763fe3c22b8657>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l35::<lambda_e9406fdea39e71ba92763fe3c22b8657>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l42::<lambda_1e3cddd021cc74b0d42c8bb66db3bcd8>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l42::<lambda_1e3cddd021cc74b0d42c8bb66db3bcd8>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l39::<lambda_1fc5afc34ddf5c3a1ad3ba9cd421a1f3>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l39::<lambda_1fc5afc34ddf5c3a1ad3ba9cd421a1f3>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l54::<lambda_65df030d7af299dbf9ede876d4f2cac4>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l54::<lambda_65df030d7af299dbf9ede876d4f2cac4>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l22::<lambda_91101aca3e89d42c84866755b96633dc>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l22::<lambda_91101aca3e89d42c84866755b96633dc>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l25::<lambda_b73da3b19f0f4c89f0bde1f550e47da7>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l25::<lambda_b73da3b19f0f4c89f0bde1f550e47da7>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l41::<lambda_f99838e52dde80bef362b712659ca87e>::()::__l2::Literal

struct __cppobj ParticleEngine::_emitParticleNew::__l41::<lambda_f99838e52dde80bef362b712659ca87e>::()::__l2::Literal
{
};

# ParticleEngine::_emitParticleNew::__l46::<lambda_09a0080d7e4544c1f2659e46a04fdc95>

struct __cppobj ParticleEngine::_emitParticleNew::__l46::<lambda_09a0080d7e4544c1f2659e46a04fdc95>
{
};

# ParticleEngine::_emitParticleNew::__l27::<lambda_1432bf980f5a9a8d2c6cf36182d1fa9b>

struct __cppobj ParticleEngine::_emitParticleNew::__l27::<lambda_1432bf980f5a9a8d2c6cf36182d1fa9b>
{
};

# ParticleEngine::_emitParticleNew::__l42::<lambda_1e3cddd021cc74b0d42c8bb66db3bcd8>

struct __cppobj ParticleEngine::_emitParticleNew::__l42::<lambda_1e3cddd021cc74b0d42c8bb66db3bcd8>
{
};

# ParticleEngine::_emitParticleNew::__l39::<lambda_1fc5afc34ddf5c3a1ad3ba9cd421a1f3>

struct __cppobj ParticleEngine::_emitParticleNew::__l39::<lambda_1fc5afc34ddf5c3a1ad3ba9cd421a1f3>
{
};

# ParticleEngine::_emitParticleNew::__l50::<lambda_5781a82391fd9fe8d31b94b81c2cad2f>

struct __cppobj ParticleEngine::_emitParticleNew::__l50::<lambda_5781a82391fd9fe8d31b94b81c2cad2f>
{
};

# ParticleEngine::_emitParticleNew::__l27::<lambda_5c7e62e9a79a088f189408d3d7956a9a>

struct __cppobj ParticleEngine::_emitParticleNew::__l27::<lambda_5c7e62e9a79a088f189408d3d7956a9a>
{
};

# ParticleEngine::_emitParticleNew::__l34::<lambda_626d1c767fbea690aebcfa7f6a0272fc>

struct __cppobj ParticleEngine::_emitParticleNew::__l34::<lambda_626d1c767fbea690aebcfa7f6a0272fc>
{
};

# ParticleEngine::_emitParticleNew::__l54::<lambda_65df030d7af299dbf9ede876d4f2cac4>

struct __cppobj ParticleEngine::_emitParticleNew::__l54::<lambda_65df030d7af299dbf9ede876d4f2cac4>
{
};

# ParticleEngine::_emitParticleNew::__l27::<lambda_80f3f261ee66b2170bd517c8b082c12d>

struct __cppobj ParticleEngine::_emitParticleNew::__l27::<lambda_80f3f261ee66b2170bd517c8b082c12d>
{
};

# ParticleEngine::_emitParticleNew::__l60::<lambda_812da3998ce87dc88fe345b79793bc0c>

struct __cppobj ParticleEngine::_emitParticleNew::__l60::<lambda_812da3998ce87dc88fe345b79793bc0c>
{
};

# ParticleEngine::_emitParticleNew::__l58::<lambda_8a1b6fe796177234ce16859825c99763>

struct __cppobj ParticleEngine::_emitParticleNew::__l58::<lambda_8a1b6fe796177234ce16859825c99763>
{
};

# ParticleEngine::_emitParticleNew::__l22::<lambda_91101aca3e89d42c84866755b96633dc>

struct __cppobj ParticleEngine::_emitParticleNew::__l22::<lambda_91101aca3e89d42c84866755b96633dc>
{
};

# ParticleEngine::_emitParticleNew::__l58::<lambda_99e7b679e7679cfaf843f41809039b66>

struct __cppobj ParticleEngine::_emitParticleNew::__l58::<lambda_99e7b679e7679cfaf843f41809039b66>
{
};

# ParticleEngine::_emitParticleNew::__l27::<lambda_a487607d4b8bb952d13605bf575149b4>

struct __cppobj ParticleEngine::_emitParticleNew::__l27::<lambda_a487607d4b8bb952d13605bf575149b4>
{
};

# ParticleEngine::_emitParticleNew::__l33::<lambda_b4a9a82543f121b4a92f434c87992da6>

struct __cppobj ParticleEngine::_emitParticleNew::__l33::<lambda_b4a9a82543f121b4a92f434c87992da6>
{
};

# ParticleEngine::_emitParticleNew::__l25::<lambda_b73da3b19f0f4c89f0bde1f550e47da7>

struct __cppobj ParticleEngine::_emitParticleNew::__l25::<lambda_b73da3b19f0f4c89f0bde1f550e47da7>
{
};

# ParticleEngine::_emitParticleNew::__l58::<lambda_b7465fb051fdc501f9a559a2a2a6a9e4>

struct __cppobj ParticleEngine::_emitParticleNew::__l58::<lambda_b7465fb051fdc501f9a559a2a2a6a9e4>
{
};

# ParticleEngine::_emitParticleNew::__l60::<lambda_b95f6ec4b345d31368468880c2965711>

struct __cppobj ParticleEngine::_emitParticleNew::__l60::<lambda_b95f6ec4b345d31368468880c2965711>
{
};

# ParticleEngine::_emitParticleNew::__l32::<lambda_c3875d830fbdcbd6ff6e4a939939d547>

struct __cppobj ParticleEngine::_emitParticleNew::__l32::<lambda_c3875d830fbdcbd6ff6e4a939939d547>
{
};

# ParticleEngine::_emitParticleNew::__l27::<lambda_c51dce9ec35b546a34d84ebd662c412e>

struct __cppobj ParticleEngine::_emitParticleNew::__l27::<lambda_c51dce9ec35b546a34d84ebd662c412e>
{
};

# ParticleEngine::_emitParticleNew::__l28::<lambda_ce22494f2db998d54ebb72e36486e8a3>

struct __cppobj ParticleEngine::_emitParticleNew::__l28::<lambda_ce22494f2db998d54ebb72e36486e8a3>
{
};

# ParticleEngine::_emitParticleNew::__l60::<lambda_da072d0dab2367edad9ca0ba175d4701>

struct __cppobj ParticleEngine::_emitParticleNew::__l60::<lambda_da072d0dab2367edad9ca0ba175d4701>
{
};

# ParticleEngine::_emitParticleNew::__l24::<lambda_e08a81f77435610028b8a5723b031136>

struct __cppobj ParticleEngine::_emitParticleNew::__l24::<lambda_e08a81f77435610028b8a5723b031136>
{
};

# ParticleEngine::_emitParticleNew::__l35::<lambda_e9406fdea39e71ba92763fe3c22b8657>

struct __cppobj ParticleEngine::_emitParticleNew::__l35::<lambda_e9406fdea39e71ba92763fe3c22b8657>
{
};

# ParticleEngine::_emitParticleNew::__l41::<lambda_f99838e52dde80bef362b712659ca87e>

struct __cppobj ParticleEngine::_emitParticleNew::__l41::<lambda_f99838e52dde80bef362b712659ca87e>
{
};

# ParticleSystem::ParticleAppearanceBillboardComponent::updateParticleAppearance::__l8::<lambda_2d342e1d5bebdbd6419f8900934127ba>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleAppearanceBillboardComponent::updateParticleAppearance::__l8::<lambda_2d342e1d5bebdbd6419f8900934127ba>::()::__l2::Literal
{
};

# ParticleSystem::ParticleAppearanceBillboardComponent::updateParticleAppearance::__l5::<lambda_d29e73ba5b8780ae1bb7152860155c7e>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleAppearanceBillboardComponent::updateParticleAppearance::__l5::<lambda_d29e73ba5b8780ae1bb7152860155c7e>::()::__l2::Literal
{
};

# ParticleSystem::ParticleAppearanceBillboardComponent::updateParticleAppearance::__l8::<lambda_2d342e1d5bebdbd6419f8900934127ba>

struct __cppobj ParticleSystem::ParticleAppearanceBillboardComponent::updateParticleAppearance::__l8::<lambda_2d342e1d5bebdbd6419f8900934127ba>
{
};

# ParticleSystem::ParticleAppearanceBillboardComponent::updateParticleAppearance::__l5::<lambda_d29e73ba5b8780ae1bb7152860155c7e>

struct __cppobj ParticleSystem::ParticleAppearanceBillboardComponent::updateParticleAppearance::__l5::<lambda_d29e73ba5b8780ae1bb7152860155c7e>
{
};

# ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_6ffc22ff16875a634cba6c631cd13517>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_6ffc22ff16875a634cba6c631cd13517>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_7203731e5e548f020f651f8f4f38f107>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_7203731e5e548f020f651f8f4f38f107>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_bf5bd9f93322971f624c88bb560682da>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_bf5bd9f93322971f624c88bb560682da>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_ce8e7c36bb252c8bfa1c2ab10f5ec12a>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_ce8e7c36bb252c8bfa1c2ab10f5ec12a>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_fd904fd2d4e1ea7baf726f27c0a2039d>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_fd904fd2d4e1ea7baf726f27c0a2039d>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::_resetParticleEffectProperties::__l2::<lambda_2a740cae14cb39de6962c5f1716da408>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::_resetParticleEffectProperties::__l2::<lambda_2a740cae14cb39de6962c5f1716da408>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::_prepareEmitterRenderParams::__l2::<lambda_3487d569ef8839dd30cadfeb12d99c42>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::_prepareEmitterRenderParams::__l2::<lambda_3487d569ef8839dd30cadfeb12d99c42>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::_resetParticleEffectProperties::__l2::<lambda_8375c2f30ee07e7e3f627331ba7780cf>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::_resetParticleEffectProperties::__l2::<lambda_8375c2f30ee07e7e3f627331ba7780cf>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::_resetParticleEffectProperties::__l2::<lambda_8fa64abc6e98b931c1f5e30ca8148499>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::_resetParticleEffectProperties::__l2::<lambda_8fa64abc6e98b931c1f5e30ca8148499>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::_resetParticleEffectProperties::__l2::<lambda_91ba991bf29916383045e6859cb88c36>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::_resetParticleEffectProperties::__l2::<lambda_91ba991bf29916383045e6859cb88c36>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_22b0db4a01374b6246febd986d7201c6>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_22b0db4a01374b6246febd986d7201c6>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::_prepareEmitterRenderParams::__l2::<lambda_57ba4b4b630da2126246d29769989fa4>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::_prepareEmitterRenderParams::__l2::<lambda_57ba4b4b630da2126246d29769989fa4>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_1d02f95e26d425aecb3c881de370bbeb>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_1d02f95e26d425aecb3c881de370bbeb>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_c6033d41a8d99ea88ce4f33fd4d1ef3a>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_c6033d41a8d99ea88ce4f33fd4d1ef3a>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_ca0ddd3b9be822b96d1bdb7885f19e0f>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_ca0ddd3b9be822b96d1bdb7885f19e0f>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::_prepareEmitterRenderParams::__l2::<lambda_eb50c34165bf6828d9d335a3cd2dc308>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::_prepareEmitterRenderParams::__l2::<lambda_eb50c34165bf6828d9d335a3cd2dc308>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_7d49f50f344504a7c94da977707480cf>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_7d49f50f344504a7c94da977707480cf>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_aec0c74cf16fa83e02777bde41943cc4>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_aec0c74cf16fa83e02777bde41943cc4>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_d0c5da8cda7658f92ff2ed4d6005e56b>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_d0c5da8cda7658f92ff2ed4d6005e56b>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_f4232a00cca318e6f496803c2c41859b>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_f4232a00cca318e6f496803c2c41859b>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_18525f7c6666cdad8d3f37af7f5797ec>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_18525f7c6666cdad8d3f37af7f5797ec>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_a729f794721d8974a0bbf3911549b9fc>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_a729f794721d8974a0bbf3911549b9fc>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_071773b9073a62e1ac56a78a51353838>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_071773b9073a62e1ac56a78a51353838>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_65ef305528027debe3ba3deb02574794>::()::__l2::Literal

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_65ef305528027debe3ba3deb02574794>::()::__l2::Literal
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_071773b9073a62e1ac56a78a51353838>

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_071773b9073a62e1ac56a78a51353838>
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_18525f7c6666cdad8d3f37af7f5797ec>

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_18525f7c6666cdad8d3f37af7f5797ec>
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_1d02f95e26d425aecb3c881de370bbeb>

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_1d02f95e26d425aecb3c881de370bbeb>
{
};

# ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_22b0db4a01374b6246febd986d7201c6>

struct __cppobj ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_22b0db4a01374b6246febd986d7201c6>
{
};

# ParticleSystem::ParticleEmitterActual::_resetParticleEffectProperties::__l2::<lambda_2a740cae14cb39de6962c5f1716da408>

struct __cppobj ParticleSystem::ParticleEmitterActual::_resetParticleEffectProperties::__l2::<lambda_2a740cae14cb39de6962c5f1716da408>
{
};

# ParticleSystem::ParticleEmitterActual::_prepareEmitterRenderParams::__l2::<lambda_3487d569ef8839dd30cadfeb12d99c42>

struct __cppobj ParticleSystem::ParticleEmitterActual::_prepareEmitterRenderParams::__l2::<lambda_3487d569ef8839dd30cadfeb12d99c42>
{
};

# ParticleSystem::ParticleEmitterActual::_prepareEmitterRenderParams::__l2::<lambda_57ba4b4b630da2126246d29769989fa4>

struct __cppobj ParticleSystem::ParticleEmitterActual::_prepareEmitterRenderParams::__l2::<lambda_57ba4b4b630da2126246d29769989fa4>
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_65ef305528027debe3ba3deb02574794>

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_65ef305528027debe3ba3deb02574794>
{
};

# ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_6ffc22ff16875a634cba6c631cd13517>

struct __cppobj ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_6ffc22ff16875a634cba6c631cd13517>
{
};

# ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_7203731e5e548f020f651f8f4f38f107>

struct __cppobj ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_7203731e5e548f020f651f8f4f38f107>
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_7d49f50f344504a7c94da977707480cf>

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_7d49f50f344504a7c94da977707480cf>
{
};

# ParticleSystem::ParticleEmitterActual::_resetParticleEffectProperties::__l2::<lambda_8375c2f30ee07e7e3f627331ba7780cf>

struct __cppobj ParticleSystem::ParticleEmitterActual::_resetParticleEffectProperties::__l2::<lambda_8375c2f30ee07e7e3f627331ba7780cf>
{
};

# ParticleSystem::ParticleEmitterActual::_resetParticleEffectProperties::__l2::<lambda_8fa64abc6e98b931c1f5e30ca8148499>

struct __cppobj ParticleSystem::ParticleEmitterActual::_resetParticleEffectProperties::__l2::<lambda_8fa64abc6e98b931c1f5e30ca8148499>
{
};

# ParticleSystem::ParticleEmitterActual::_resetParticleEffectProperties::__l2::<lambda_91ba991bf29916383045e6859cb88c36>

struct __cppobj ParticleSystem::ParticleEmitterActual::_resetParticleEffectProperties::__l2::<lambda_91ba991bf29916383045e6859cb88c36>
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_a729f794721d8974a0bbf3911549b9fc>

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_a729f794721d8974a0bbf3911549b9fc>
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_aec0c74cf16fa83e02777bde41943cc4>

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_aec0c74cf16fa83e02777bde41943cc4>
{
};

# ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_bf5bd9f93322971f624c88bb560682da>

struct __cppobj ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_bf5bd9f93322971f624c88bb560682da>
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_c6033d41a8d99ea88ce4f33fd4d1ef3a>

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_c6033d41a8d99ea88ce4f33fd4d1ef3a>
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_ca0ddd3b9be822b96d1bdb7885f19e0f>

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_ca0ddd3b9be822b96d1bdb7885f19e0f>
{
};

# ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_ce8e7c36bb252c8bfa1c2ab10f5ec12a>

struct __cppobj ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_ce8e7c36bb252c8bfa1c2ab10f5ec12a>
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_d0c5da8cda7658f92ff2ed4d6005e56b>

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_d0c5da8cda7658f92ff2ed4d6005e56b>
{
};

# ParticleSystem::ParticleEmitterActual::_prepareEmitterRenderParams::__l2::<lambda_eb50c34165bf6828d9d335a3cd2dc308>

struct __cppobj ParticleSystem::ParticleEmitterActual::_prepareEmitterRenderParams::__l2::<lambda_eb50c34165bf6828d9d335a3cd2dc308>
{
};

# ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_f4232a00cca318e6f496803c2c41859b>

struct __cppobj ParticleSystem::ParticleEmitterActual::setFacing::__l2::<lambda_f4232a00cca318e6f496803c2c41859b>
{
};

# ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_fd904fd2d4e1ea7baf726f27c0a2039d>

struct __cppobj ParticleSystem::ParticleEmitterActual::_updateRenderParamsForParticle::__l2::<lambda_fd904fd2d4e1ea7baf726f27c0a2039d>
{
};

# ParticleSystem::ParticleEffect::_extractCurves::__l51::<lambda_ae590bb28f9bc82aa1159fb08812ceb2>

struct __cppobj ParticleSystem::ParticleEffect::_extractCurves::__l51::<lambda_ae590bb28f9bc82aa1159fb08812ceb2>
{
};

# ParticleSystem::ParticleEffect::_extractCurves::__l51::<lambda_f5adaf9b2a293194dac4b9abde146f62>

struct __cppobj ParticleSystem::ParticleEffect::_extractCurves::__l51::<lambda_f5adaf9b2a293194dac4b9abde146f62>
{
};

# ParticleSystem::ParticleEffect::_extractCurves::__l51::<lambda_d9f9f6b2d76a219dc92baaa69a89c1b0>

struct __cppobj ParticleSystem::ParticleEffect::_extractCurves::__l51::<lambda_d9f9f6b2d76a219dc92baaa69a89c1b0>
{
};

# ParticleSystem::ParticleEffect::_extractCurves::__l51::<lambda_6b5918cfd8d7cd0e6a8f30e1de167066>

struct __cppobj ParticleSystem::ParticleEffect::_extractCurves::__l51::<lambda_6b5918cfd8d7cd0e6a8f30e1de167066>
{
};

# PersonaRepository::isAppearanceDefault::__l2::<lambda_01dd5879523dae8be96d4ea5de039fb4>

struct __cppobj PersonaRepository::isAppearanceDefault::__l2::<lambda_01dd5879523dae8be96d4ea5de039fb4>
{
  const PersonaAppearance appearance;
};

# PlayerRenderView::_declarePasses::__l2::<lambda_c9c4b4b4e2b81b3c63c1f52799fd391a>

struct __cppobj PlayerRenderView::_declarePasses::__l2::<lambda_c9c4b4b4e2b81b3c63c1f52799fd391a>
{
  int *gameplayColorIndex;
  int *gameplayDepthIndex;
  PlayerRenderView *const __this;
};

# PostprocessRenderModule::declareFullscreenPass::__l2::<lambda_4c6fd67987ffddcd0e5427cc5efa7fec>

struct __cppobj PostprocessRenderModule::declareFullscreenPass::__l2::<lambda_4c6fd67987ffddcd0e5427cc5efa7fec>
{
  int *result;
  int *outputColor;
  int *inputColor;
  const mce::MaterialPtr *fullscreenMaterial;
  const glm::tvec2<float,0> *inputDimensions;
  std::function<void __cdecl(mce::RenderContext &,IClientInstance &)> *preRender;
  IClientInstance *client;
};

# PlayerRenderView::_declarePasses::__l16::<lambda_f923d2e3a44c5ec86a37d1cbc66192b3>

struct __cppobj PlayerRenderView::_declarePasses::__l16::<lambda_f923d2e3a44c5ec86a37d1cbc66192b3>
{
  int *gameplayColorIndex;
  int *resolveColorIndex;
};

# PlayerBlockActions::addCrackBlock::__l3::<lambda_13f2e525364d729c064c056ed680f5eb>

struct __cppobj PlayerBlockActions::addCrackBlock::__l3::<lambda_13f2e525364d729c064c056ed680f5eb>
{
};

# PlayerBlockActions::findFirstOfType::__l2::<lambda_ff82af8f003112c63cfed94b5991cf91>

struct __cppobj PlayerBlockActions::findFirstOfType::__l2::<lambda_ff82af8f003112c63cfed94b5991cf91>
{
  _BYTE type[4];
};

# PackStackStorage::_tryDiscardPacks::__l2::<lambda_2686676582d8406f77cb42c64a340e5f>

struct __cppobj PackStackStorage::_tryDiscardPacks::__l2::<lambda_2686676582d8406f77cb42c64a340e5f>
{
};

# PackStackStorage::onLoadSessionEnd::__l9::<lambda_a5493a56c7cf466b0f6972ebc111fab1>

struct __cppobj PackStackStorage::onLoadSessionEnd::__l9::<lambda_a5493a56c7cf466b0f6972ebc111fab1>
{
  PackStackStorage::PackEntry *pack;
};

# PackStackStorage::getStorageForPack::__l2::<lambda_08508030494ad41414f919c539d3caca>

struct __cppobj PackStackStorage::getStorageForPack::__l2::<lambda_08508030494ad41414f919c539d3caca>
{
  const PackIdVersion packID;
};

# PackStorage::createPackStorage::__l2::<lambda_3e805b05ecb78d23a55c8175b9e81d70>

struct __cppobj PackStorage::createPackStorage::__l2::<lambda_3e805b05ecb78d23a55c8175b9e81d70>
{
};

# PlayerMovementSettings::getDefault::__l2::<lambda_dc3f05866b2c1c7c53cedf1717fb82d8>

struct __cppobj PlayerMovementSettings::getDefault::__l2::<lambda_dc3f05866b2c1c7c53cedf1717fb82d8>
{
  const bool usingServerAuthWithRewind;
};

# PlayerAuthInputPacket::setFromComponent::__l2::<lambda_8f838baf3a6d8e3b9c43d6862076305c>

struct __cppobj PlayerAuthInputPacket::setFromComponent::__l2::<lambda_8f838baf3a6d8e3b9c43d6862076305c>
{
  PlayerAuthInputPacket *const __this;
  PlayerActionComponent *input;
};

# PlayerAuthInputPacket::getPacketDebugText::__l6::<lambda_99d1d8fb4f2158c6890b400fdb246e3b>

struct __cppobj PlayerAuthInputPacket::getPacketDebugText::__l6::<lambda_99d1d8fb4f2158c6890b400fdb246e3b>
{
  const PlayerBlockActionData *a;
};

# PackReport::hasErrors::__l2::<lambda_3a84fae3e2fd3269e5cfe4c28283d0b5>

struct __cppobj PackReport::hasErrors::__l2::<lambda_3a84fae3e2fd3269e5cfe4c28283d0b5>
{
  _BYTE packErrorType[4];
};

# PackSourceFactory::getDirectoryPackSource::__l2::<lambda_c9fe232c0558ad51d3e7875937a9ecd9>

struct __cppobj PackSourceFactory::getDirectoryPackSource::__l2::<lambda_c9fe232c0558ad51d3e7875937a9ecd9>
{
  _BYTE packType[1];
  const Core::Path path;
};

# PackSourceFactory::getTreatmentPackSource::__l2::<lambda_e4db0defbe55c21f66fba857845409a5>

struct __cppobj PackSourceFactory::getTreatmentPackSource::__l2::<lambda_e4db0defbe55c21f66fba857845409a5>
{
  _BYTE packType[1];
  const Core::Path path;
};

# PackSourceFactory::getWorldHistoryPackSource::__l2::<lambda_c957269f26b0ad7198edb5182e3c3e9a>

struct __cppobj PackSourceFactory::getWorldHistoryPackSource::__l2::<lambda_c957269f26b0ad7198edb5182e3c3e9a>
{
  _BYTE packType[1];
  const Core::PathBuffer<std::string > pathToFile;
};

# PackSourceFactory::getWorldTemplatePackSource::__l2::<lambda_66e24b5a039e6a98370369f7425bca3b>

struct __cppobj __declspec(align(8)) PackSourceFactory::getWorldTemplatePackSource::__l2::<lambda_66e24b5a039e6a98370369f7425bca3b>
{
  const mce::UUID *worldTemplateId;
  _BYTE packType[1];
};

# PackSourceFactory::getInPackagePackSource::__l2::<lambda_1e55e9c66318fdd4fd4c10c736ca92eb>

struct __cppobj PackSourceFactory::getInPackagePackSource::__l2::<lambda_1e55e9c66318fdd4fd4c10c736ca92eb>
{
  _BYTE packType[1];
};

# PackSourceFactory::getDynamicPackagePackSource::__l2::<lambda_e6b01e11cbf76f6d6c440106f70558ab>

struct __cppobj PackSourceFactory::getDynamicPackagePackSource::__l2::<lambda_e6b01e11cbf76f6d6c440106f70558ab>
{
  _BYTE packType[1];
};

# PackSettingsJsonValidator::getValidator::__l2::<lambda_c86ae69ace9b6045f4aa8ba412b50a02>

struct __cppobj PackSettingsJsonValidator::getValidator::__l2::<lambda_c86ae69ace9b6045f4aa8ba412b50a02>
{
};

# Pufferfish::updateEntitySpecificMolangVariables::__l2::<lambda_12d124012542d1302689d0792a7be7ce>::()::__l2::Literal

struct __cppobj Pufferfish::updateEntitySpecificMolangVariables::__l2::<lambda_12d124012542d1302689d0792a7be7ce>::()::__l2::Literal
{
};

# Pufferfish::updateEntitySpecificMolangVariables::__l2::<lambda_12d124012542d1302689d0792a7be7ce>

struct __cppobj Pufferfish::updateEntitySpecificMolangVariables::__l2::<lambda_12d124012542d1302689d0792a7be7ce>
{
};

# Piglin::updateEntitySpecificMolangVariables::__l2::<lambda_09536d50b31dff5a4bd465471fff73ad>::()::__l2::Literal

struct __cppobj Piglin::updateEntitySpecificMolangVariables::__l2::<lambda_09536d50b31dff5a4bd465471fff73ad>::()::__l2::Literal
{
};

# Pillager::updateEntitySpecificMolangVariables::__l2::<lambda_916e6361a89d811438b251d970753835>::()::__l2::Literal

struct __cppobj Pillager::updateEntitySpecificMolangVariables::__l2::<lambda_916e6361a89d811438b251d970753835>::()::__l2::Literal
{
};

# Pillager::updateEntitySpecificMolangVariables::__l2::<lambda_8ba8fb6144fcb88933dd6c7efe084407>::()::__l2::Literal

struct __cppobj Pillager::updateEntitySpecificMolangVariables::__l2::<lambda_8ba8fb6144fcb88933dd6c7efe084407>::()::__l2::Literal
{
};

# Piglin::updateEntitySpecificMolangVariables::__l2::<lambda_db7002569ba4b15f428074e54ebf6701>::()::__l2::Literal

struct __cppobj Piglin::updateEntitySpecificMolangVariables::__l2::<lambda_db7002569ba4b15f428074e54ebf6701>::()::__l2::Literal
{
};

# Phantom::{ctor}::__l2::<lambda_a58cf0c0c47921b656a6a7090f43a962>::()::__l2::Literal

struct __cppobj Phantom::{ctor}::__l2::<lambda_a58cf0c0c47921b656a6a7090f43a962>::()::__l2::Literal
{
};

# Phantom::{ctor}::__l2::<lambda_a58cf0c0c47921b656a6a7090f43a962>

struct __cppobj Phantom::{ctor}::__l2::<lambda_a58cf0c0c47921b656a6a7090f43a962>
{
};

# Piglin::updateEntitySpecificMolangVariables::__l2::<lambda_09536d50b31dff5a4bd465471fff73ad>

struct __cppobj Piglin::updateEntitySpecificMolangVariables::__l2::<lambda_09536d50b31dff5a4bd465471fff73ad>
{
};

# Pillager::updateEntitySpecificMolangVariables::__l2::<lambda_8ba8fb6144fcb88933dd6c7efe084407>

struct __cppobj Pillager::updateEntitySpecificMolangVariables::__l2::<lambda_8ba8fb6144fcb88933dd6c7efe084407>
{
};

# Pillager::updateEntitySpecificMolangVariables::__l2::<lambda_916e6361a89d811438b251d970753835>

struct __cppobj Pillager::updateEntitySpecificMolangVariables::__l2::<lambda_916e6361a89d811438b251d970753835>
{
};

# Piglin::updateEntitySpecificMolangVariables::__l2::<lambda_db7002569ba4b15f428074e54ebf6701>

struct __cppobj Piglin::updateEntitySpecificMolangVariables::__l2::<lambda_db7002569ba4b15f428074e54ebf6701>
{
};

# Player::{ctor}::__l2::<lambda_313a1128851da43f69be8e63b000b96e>::()::__l2::Literal

struct __cppobj Player::{ctor}::__l2::<lambda_313a1128851da43f69be8e63b000b96e>::()::__l2::Literal
{
};

# Player::{ctor}::__l2::<lambda_89f56fbdc789b63650d1d5ee34d040d5>::()::__l2::Literal

struct __cppobj Player::{ctor}::__l2::<lambda_89f56fbdc789b63650d1d5ee34d040d5>::()::__l2::Literal
{
};

# Player::updateSkin::__l2::<lambda_a736d2b1d016d1ff5af23cb5a4a17b1e>::()::__l2::Literal

struct __cppobj Player::updateSkin::__l2::<lambda_a736d2b1d016d1ff5af23cb5a4a17b1e>::()::__l2::Literal
{
};

# Player::{ctor}::__l2::<lambda_134a49741ff5c32b747bb91b862b3598>::()::__l2::Literal

struct __cppobj Player::{ctor}::__l2::<lambda_134a49741ff5c32b747bb91b862b3598>::()::__l2::Literal
{
};

# Player::{ctor}::__l2::<lambda_1d3421c5699c3633a2c26a62f361ccbf>::()::__l2::Literal

struct __cppobj Player::{ctor}::__l2::<lambda_1d3421c5699c3633a2c26a62f361ccbf>::()::__l2::Literal
{
};

# Player::updateSkin::__l2::<lambda_651b47c811e9d8eb1a5b3c0063b0aa3e>::()::__l2::Literal

struct __cppobj Player::updateSkin::__l2::<lambda_651b47c811e9d8eb1a5b3c0063b0aa3e>::()::__l2::Literal
{
};

# Player::{ctor}::__l2::<lambda_a1ea26293571e3cfed972ec934bf6ce2>::()::__l2::Literal

struct __cppobj Player::{ctor}::__l2::<lambda_a1ea26293571e3cfed972ec934bf6ce2>::()::__l2::Literal
{
};

# Player::updateSkin::__l2::<lambda_c11dcd20abcc0a7f94a24d27097ce26c>::()::__l2::Literal

struct __cppobj Player::updateSkin::__l2::<lambda_c11dcd20abcc0a7f94a24d27097ce26c>::()::__l2::Literal
{
};

# Player::{ctor}::__l2::<lambda_e535cd7a64a3525efdd656e62ee9817d>::()::__l2::Literal

struct __cppobj Player::{ctor}::__l2::<lambda_e535cd7a64a3525efdd656e62ee9817d>::()::__l2::Literal
{
};

# Player::{ctor}::__l2::<lambda_1a2d1b430d59273ac39720f299cb56a8>::()::__l2::Literal

struct __cppobj Player::{ctor}::__l2::<lambda_1a2d1b430d59273ac39720f299cb56a8>::()::__l2::Literal
{
};

# Player::updateSkin::__l2::<lambda_284d806d8c7269b9a8c1e6224ad0aa42>::()::__l2::Literal

struct __cppobj Player::updateSkin::__l2::<lambda_284d806d8c7269b9a8c1e6224ad0aa42>::()::__l2::Literal
{
};

# Player::{ctor}::__l2::<lambda_4aa46628f363af1e4dd7ed7143ecf605>::()::__l2::Literal

struct __cppobj Player::{ctor}::__l2::<lambda_4aa46628f363af1e4dd7ed7143ecf605>::()::__l2::Literal
{
};

# Player::{ctor}::__l2::<lambda_041df181f4e1ce045407641e2b1592f9>::()::__l2::Literal

struct __cppobj Player::{ctor}::__l2::<lambda_041df181f4e1ce045407641e2b1592f9>::()::__l2::Literal
{
};

# Player::{ctor}::__l2::<lambda_da914e229c2b0863deb0725ec5e61433>::()::__l2::Literal

struct __cppobj Player::{ctor}::__l2::<lambda_da914e229c2b0863deb0725ec5e61433>::()::__l2::Literal
{
};

# Player::{ctor}::__l2::<lambda_e2a50d57a376a276d4d65ba75ae1429a>::()::__l2::Literal

struct __cppobj Player::{ctor}::__l2::<lambda_e2a50d57a376a276d4d65ba75ae1429a>::()::__l2::Literal
{
};

# Player::{ctor}::__l2::<lambda_e19d180edfc17488096042bc5aaf3bbb>::()::__l2::Literal

struct __cppobj Player::{ctor}::__l2::<lambda_e19d180edfc17488096042bc5aaf3bbb>::()::__l2::Literal
{
};

# Player::{ctor}::__l2::<lambda_644eb42138a37428601a9e4e4a46bc19>::()::__l2::Literal

struct __cppobj Player::{ctor}::__l2::<lambda_644eb42138a37428601a9e4e4a46bc19>::()::__l2::Literal
{
};

# Player::{ctor}::__l2::<lambda_37e16aeac7c2a13e649a4b26fa63f3cb>::()::__l2::Literal

struct __cppobj Player::{ctor}::__l2::<lambda_37e16aeac7c2a13e649a4b26fa63f3cb>::()::__l2::Literal
{
};

# Player::{ctor}::__l2::<lambda_1259335f69210eab69956e2c1a442e94>::()::__l2::Literal

struct __cppobj Player::{ctor}::__l2::<lambda_1259335f69210eab69956e2c1a442e94>::()::__l2::Literal
{
};

# Player::{ctor}::__l2::<lambda_c8ab0cab860e3717c35a78cf77a32d67>::()::__l2::Literal

struct __cppobj Player::{ctor}::__l2::<lambda_c8ab0cab860e3717c35a78cf77a32d67>::()::__l2::Literal
{
};

# Player::take::__l2::<lambda_9709c5c60375a4a9b94bc35bca78dc40>

struct __cppobj Player::take::__l2::<lambda_9709c5c60375a4a9b94bc35bca78dc40>
{
  Player *const __this;
};

# Player::checkNeedAutoJump::__l16::<lambda_a4a6e24137842539e4dc9dc96b7bb6c6>

struct __cppobj Player::checkNeedAutoJump::__l16::<lambda_a4a6e24137842539e4dc9dc96b7bb6c6>
{
  BlockPos *obstacleBlockPos;
  BlockSource *region;
  AABB *bufferAABB;
  Player *const __this;
  float *obstacleHeight;
  const AABB *playerAABB;
  const float *playerJumpHeight;
};

# Player::checkNeedAutoJump::__l2::<lambda_cb7ae7c91440d6f3ed102a77ee00fa76>

struct __cppobj Player::checkNeedAutoJump::__l2::<lambda_cb7ae7c91440d6f3ed102a77ee00fa76>
{
  BlockSource *region;
  AABB *bufferAABB;
  Player *const __this;
};

# Player::{ctor}::__l2::<lambda_e19d180edfc17488096042bc5aaf3bbb>

struct __cppobj Player::{ctor}::__l2::<lambda_e19d180edfc17488096042bc5aaf3bbb>
{
};

# Player::{ctor}::__l2::<lambda_e2a50d57a376a276d4d65ba75ae1429a>

struct __cppobj Player::{ctor}::__l2::<lambda_e2a50d57a376a276d4d65ba75ae1429a>
{
};

# Player::{ctor}::__l2::<lambda_1259335f69210eab69956e2c1a442e94>

struct __cppobj Player::{ctor}::__l2::<lambda_1259335f69210eab69956e2c1a442e94>
{
};

# Player::{ctor}::__l2::<lambda_37e16aeac7c2a13e649a4b26fa63f3cb>

struct __cppobj Player::{ctor}::__l2::<lambda_37e16aeac7c2a13e649a4b26fa63f3cb>
{
};

# Player::{ctor}::__l2::<lambda_644eb42138a37428601a9e4e4a46bc19>

struct __cppobj Player::{ctor}::__l2::<lambda_644eb42138a37428601a9e4e4a46bc19>
{
};

# Player::{ctor}::__l2::<lambda_134a49741ff5c32b747bb91b862b3598>

struct __cppobj Player::{ctor}::__l2::<lambda_134a49741ff5c32b747bb91b862b3598>
{
};

# Player::{ctor}::__l2::<lambda_313a1128851da43f69be8e63b000b96e>

struct __cppobj Player::{ctor}::__l2::<lambda_313a1128851da43f69be8e63b000b96e>
{
};

# Player::{ctor}::__l2::<lambda_1a2d1b430d59273ac39720f299cb56a8>

struct __cppobj Player::{ctor}::__l2::<lambda_1a2d1b430d59273ac39720f299cb56a8>
{
};

# Player::{ctor}::__l2::<lambda_1d3421c5699c3633a2c26a62f361ccbf>

struct __cppobj Player::{ctor}::__l2::<lambda_1d3421c5699c3633a2c26a62f361ccbf>
{
};

# Player::{ctor}::__l2::<lambda_da914e229c2b0863deb0725ec5e61433>

struct __cppobj Player::{ctor}::__l2::<lambda_da914e229c2b0863deb0725ec5e61433>
{
};

# Player::{ctor}::__l2::<lambda_041df181f4e1ce045407641e2b1592f9>

struct __cppobj Player::{ctor}::__l2::<lambda_041df181f4e1ce045407641e2b1592f9>
{
};

# Player::{ctor}::__l2::<lambda_c8ab0cab860e3717c35a78cf77a32d67>

struct __cppobj Player::{ctor}::__l2::<lambda_c8ab0cab860e3717c35a78cf77a32d67>
{
};

# Player::{ctor}::__l2::<lambda_a1ea26293571e3cfed972ec934bf6ce2>

struct __cppobj Player::{ctor}::__l2::<lambda_a1ea26293571e3cfed972ec934bf6ce2>
{
};

# Player::{ctor}::__l2::<lambda_4aa46628f363af1e4dd7ed7143ecf605>

struct __cppobj Player::{ctor}::__l2::<lambda_4aa46628f363af1e4dd7ed7143ecf605>
{
};

# Player::{ctor}::__l2::<lambda_e535cd7a64a3525efdd656e62ee9817d>

struct __cppobj Player::{ctor}::__l2::<lambda_e535cd7a64a3525efdd656e62ee9817d>
{
};

# Player::{ctor}::__l2::<lambda_89f56fbdc789b63650d1d5ee34d040d5>

struct __cppobj Player::{ctor}::__l2::<lambda_89f56fbdc789b63650d1d5ee34d040d5>
{
};

# Player::updateSkin::__l2::<lambda_284d806d8c7269b9a8c1e6224ad0aa42>

struct __cppobj Player::updateSkin::__l2::<lambda_284d806d8c7269b9a8c1e6224ad0aa42>
{
};

# Player::updateSkin::__l2::<lambda_651b47c811e9d8eb1a5b3c0063b0aa3e>

struct __cppobj Player::updateSkin::__l2::<lambda_651b47c811e9d8eb1a5b3c0063b0aa3e>
{
};

# Player::updateSkin::__l2::<lambda_a736d2b1d016d1ff5af23cb5a4a17b1e>

struct __cppobj Player::updateSkin::__l2::<lambda_a736d2b1d016d1ff5af23cb5a4a17b1e>
{
};

# Player::updateSkin::__l2::<lambda_c11dcd20abcc0a7f94a24d27097ce26c>

struct __cppobj Player::updateSkin::__l2::<lambda_c11dcd20abcc0a7f94a24d27097ce26c>
{
};

# PortalBlock::animateTick::__l32::<lambda_0b5314f6ef458af78aaaab2f355d9a97>::()::__l2::Literal

struct __cppobj PortalBlock::animateTick::__l32::<lambda_0b5314f6ef458af78aaaab2f355d9a97>::()::__l2::Literal
{
};

# PortalBlock::animateTick::__l22::<lambda_c5a025b5a5fc4b6bc3052d53f2f34cb8>::()::__l2::Literal

struct __cppobj PortalBlock::animateTick::__l22::<lambda_c5a025b5a5fc4b6bc3052d53f2f34cb8>::()::__l2::Literal
{
};

# PortalBlock::animateTick::__l27::<lambda_c85f3a94b95020812b3af79d2ba04c23>::()::__l2::Literal

struct __cppobj PortalBlock::animateTick::__l27::<lambda_c85f3a94b95020812b3af79d2ba04c23>::()::__l2::Literal
{
};

# PortalBlock::animateTick::__l30::<lambda_cb235e7508f90de76c88fb9a077fc936>::()::__l2::Literal

struct __cppobj PortalBlock::animateTick::__l30::<lambda_cb235e7508f90de76c88fb9a077fc936>::()::__l2::Literal
{
};

# PortalBlock::animateTick::__l32::<lambda_0b5314f6ef458af78aaaab2f355d9a97>

struct __cppobj PortalBlock::animateTick::__l32::<lambda_0b5314f6ef458af78aaaab2f355d9a97>
{
};

# PortalBlock::animateTick::__l22::<lambda_c5a025b5a5fc4b6bc3052d53f2f34cb8>

struct __cppobj PortalBlock::animateTick::__l22::<lambda_c5a025b5a5fc4b6bc3052d53f2f34cb8>
{
};

# PortalBlock::animateTick::__l27::<lambda_c85f3a94b95020812b3af79d2ba04c23>

struct __cppobj PortalBlock::animateTick::__l27::<lambda_c85f3a94b95020812b3af79d2ba04c23>
{
};

# PortalBlock::animateTick::__l30::<lambda_cb235e7508f90de76c88fb9a077fc936>

struct __cppobj PortalBlock::animateTick::__l30::<lambda_cb235e7508f90de76c88fb9a077fc936>
{
};

# PortalForcer::createPortal::__l17::<lambda_9e9a5d8f4ce61c5f32244541a5e5ea55>

struct __cppobj PortalForcer::createPortal::__l17::<lambda_9e9a5d8f4ce61c5f32244541a5e5ea55>
{
  BlockSource *region;
  int *x;
  int *y;
  int *z;
  int *dirOffs;
  Vec3 *distVec;
  const Vec3 *entityPos;
  float *closest;
  BlockPos *targetPos;
  int *dirTarget;
};

# PortalForcer::createPortal::__l8::<lambda_ba2eb704b18f98069eff6937416d8da4>

struct __cppobj PortalForcer::createPortal::__l8::<lambda_ba2eb704b18f98069eff6937416d8da4>
{
  BlockSource *region;
  int *x;
  int *y;
  int *z;
  int *dirOffs;
  Vec3 *distVec;
  const Vec3 *entityPos;
  float *closest;
  BlockPos *targetPos;
  int *dirTarget;
};

# PineTreeCanopy::_buildSchema::__l2::<lambda_07df1fe9247fb00aba7d93d7835f4142>::()::__l2::Literal

struct __cppobj PineTreeCanopy::_buildSchema::__l2::<lambda_07df1fe9247fb00aba7d93d7835f4142>::()::__l2::Literal
{
};

# PineTreeCanopy::_buildSchema::__l2::<lambda_07df1fe9247fb00aba7d93d7835f4142>

struct __cppobj PineTreeCanopy::_buildSchema::__l2::<lambda_07df1fe9247fb00aba7d93d7835f4142>
{
};

# PineTreeCanopy::_buildSchema::__l2::<lambda_ccba98c0d521e360eff54ec91c7226b3>::()::__l2::Literal

struct __cppobj PineTreeCanopy::_buildSchema::__l2::<lambda_ccba98c0d521e360eff54ec91c7226b3>::()::__l2::Literal
{
};

# PineTreeCanopy::_buildSchema::__l2::<lambda_ccba98c0d521e360eff54ec91c7226b3>

struct __cppobj PineTreeCanopy::_buildSchema::__l2::<lambda_ccba98c0d521e360eff54ec91c7226b3>
{
};

# PineTreeCanopy::_buildSchema::__l2::<lambda_ee4c53f66e6b123be67c23ee3a8b8e2b>::()::__l2::Literal

struct __cppobj PineTreeCanopy::_buildSchema::__l2::<lambda_ee4c53f66e6b123be67c23ee3a8b8e2b>::()::__l2::Literal
{
};

# PineTreeCanopy::_buildSchema::__l2::<lambda_ee4c53f66e6b123be67c23ee3a8b8e2b>

struct __cppobj PineTreeCanopy::_buildSchema::__l2::<lambda_ee4c53f66e6b123be67c23ee3a8b8e2b>
{
};

# Phantom_vtbl

struct /*VFT*/ Phantom_vtbl
{
  bool (__fastcall *hasComponent)(Actor *this, const HashedString *);
  void (__fastcall *reloadHardcoded)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *reloadHardcodedClient)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *initializeComponents)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *reloadComponents)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *_serverInitItemStackIds)(Actor *this);
  void (__fastcall *_doInitialMove)(Actor *this);
  bool (__fastcall *checkAllSensitiveWords)(Actor *this);
  bool (__fastcall *checkNameTag)(Actor *this);
  void (__fastcall *~Actor)(Actor *this);
  void (__fastcall *reset)(Actor *this);
  int (__fastcall *getOnDeathExperience)(Actor *this);
  ActorType (__fastcall *getOwnerEntityType)(Actor *this);
  void (__fastcall *remove)(Actor *this);
  void (__fastcall *setPos)(Actor *this, const Vec3 *);
  const PredictedMovementValues *(__fastcall *getPredictedMovementValues)(Actor *this);
  const Vec3 *(__fastcall *getPos)(Actor *this);
  const Vec3 *(__fastcall *getPosOld)(Actor *this);
  const Vec3 *(__fastcall *getPosExtrapolated)(Actor *this, const Vec3 *result, float);
  Vec3 *(__fastcall *getAttachPos)(Actor *this, Vec3 *result, ActorLocation, float);
  Vec3 *(__fastcall *getFiringPos)(Actor *this, Vec3 *result);
  void (__fastcall *setRot)(Actor *this, const Vec2 *);
  void (__fastcall *move)(Actor *this, IActorMovementProxy *, const Vec3 *);
  void (__fastcall *move)(Actor *this, const Vec3 *);
  Vec3 *(__fastcall *getInterpolatedRidingPosition)(Actor *this, Vec3 *result, float);
  float (__fastcall *getInterpolatedBodyRot)(Actor *this, float);
  float (__fastcall *getInterpolatedHeadRot)(Actor *this, float);
  float (__fastcall *getInterpolatedBodyYaw)(Actor *this, float);
  float (__fastcall *getYawSpeedInDegreesPerSecond)(Actor *this);
  float (__fastcall *getInterpolatedWalkAnimSpeed)(Actor *this, float);
  Vec3 *(__fastcall *getInterpolatedRidingOffset)(Actor *this, Vec3 *result, float);
  void (__fastcall *checkBlockCollisions)(Actor *this);
  void (__fastcall *checkBlockCollisions)(Actor *this, const AABB *, std::function<void __cdecl(BlockSource &,Block const &,BlockPos const &,Actor &)>);
  bool (__fastcall *isFireImmune)(Actor *this);
  bool (__fastcall *breaksFallingBlocks)(Actor *this);
  void (__fastcall *blockedByShield)(Actor *this, const ActorDamageSource *, Actor *);
  void (__fastcall *teleportTo)(Actor *this, const Vec3 *, bool, int, int, const ActorUniqueID *);
  bool (__fastcall *tryTeleportTo)(Actor *this, const Vec3 *, bool, bool, int, int);
  void (__fastcall *chorusFruitTeleport)(Actor *this, Vec3 *);
  void (__fastcall *lerpTo)(Actor *this, const Vec3 *, const Vec2 *, int);
  void (__fastcall *lerpMotion)(Actor *this, const Vec3 *);
  std::unique_ptr<AddActorBasePacket> *(__fastcall *getAddPacket)(Actor *this, std::unique_ptr<AddActorBasePacket> *result);
  void (__fastcall *normalTick)(Actor *this);
  void (__fastcall *baseTick)(Actor *this);
  void (__fastcall *rideTick)(Actor *this);
  void (__fastcall *positionRider)(Actor *this, Actor *, float);
  float (__fastcall *getRidingHeight)(Actor *this);
  bool (__fastcall *startRiding)(Actor *this, Actor *);
  void (__fastcall *addRider)(Actor *this, Actor *);
  void (__fastcall *flagRiderToRemove)(Actor *this, Actor *);
  std::string *(__fastcall *getExitTip)(Actor *this, std::string *result, const std::string *, InputMode);
  bool (__fastcall *intersects)(Actor *this, const Vec3 *, const Vec3 *);
  bool (__fastcall *isFree)(Actor *this, const Vec3 *);
  bool (__fastcall *isFree)(Actor *this, const Vec3 *, float);
  bool (__fastcall *isInWall)(Actor *this);
  bool (__fastcall *isInvisible)(Actor *this);
  bool (__fastcall *canShowNameTag)(Actor *this);
  bool (__fastcall *canExistInPeaceful)(Actor *this);
  void (__fastcall *setNameTagVisible)(Actor *this, bool);
  const std::string *(__fastcall *getNameTag)(Actor *this);
  unsigned __int64 (__fastcall *getNameTagAsHash)(Actor *this);
  std::string *(__fastcall *getFormattedNameTag)(Actor *this, std::string *result);
  void (__fastcall *filterFormattedNameTag)(Actor *this, const UIProfanityContext *);
  void (__fastcall *setNameTag)(Actor *this, const std::string *);
  bool (__fastcall *getAlwaysShowNameTag)(Actor *this);
  void (__fastcall *setScoreTag)(Actor *this, const std::string *);
  const std::string *(__fastcall *getScoreTag)(Actor *this);
  bool (__fastcall *isInWater)(Actor *this);
  bool (__fastcall *hasEnteredWater)(Actor *this);
  bool (__fastcall *isImmersedInWater)(Actor *this);
  bool (__fastcall *isInWaterOrRain)(Actor *this);
  bool (__fastcall *isInLava)(Actor *this);
  bool (__fastcall *isUnderLiquid)(Actor *this, MaterialType);
  bool (__fastcall *isOverWater)(Actor *this);
  void (__fastcall *makeStuckInBlock)(Actor *this, const Vec3 *);
  float (__fastcall *getCameraOffset)(Actor *this);
  float (__fastcall *getShadowHeightOffs)(Actor *this);
  float (__fastcall *getShadowRadius)(Actor *this);
  Vec3 *(__fastcall *getHeadLookVector)(Actor *this, Vec3 *result, float);
  bool (__fastcall *canSeeInvisible)(Actor *this);
  bool (__fastcall *canSee)(Actor *this, const Vec3 *);
  bool (__fastcall *canSee)(Actor *this, const Actor *);
  bool (__fastcall *isSkyLit)(Actor *this, float);
  float (__fastcall *getBrightness)(Actor *this, float);
  bool (__fastcall *interactPreventDefault)(Actor *this);
  void (__fastcall *playerTouch)(Actor *this, Player *);
  void (__fastcall *onAboveBubbleColumn)(Actor *this, const bool);
  void (__fastcall *onInsideBubbleColumn)(Actor *this, const bool);
  bool (__fastcall *isImmobile)(Actor *this);
  bool (__fastcall *isSilent)(Actor *this);
  bool (__fastcall *isPickable)(Actor *this);
  bool (__fastcall *isFishable)(Actor *this);
  bool (__fastcall *isSleeping)(Actor *this);
  bool (__fastcall *isShootable)(Actor *this);
  void (__fastcall *setSneaking)(Actor *this, bool);
  bool (__fastcall *isBlocking)(Actor *this);
  bool (__fastcall *isDamageBlocked)(Actor *this, const ActorDamageSource *);
  bool (__fastcall *isAlive)(Actor *this);
  bool (__fastcall *isOnFire)(Actor *this);
  bool (__fastcall *isOnHotBlock)(Actor *this);
  bool (__fastcall *isCreativeModeAllowed)(Actor *this);
  bool (__fastcall *isSurfaceMob)(Actor *this);
  bool (__fastcall *isTargetable)(Actor *this);
  bool (__fastcall *isLocalPlayer)(Actor *this);
  bool (__fastcall *isPlayer)(Actor *this);
  bool (__fastcall *canAttack)(Actor *this, Actor *, bool);
  void (__fastcall *setTarget)(Actor *this, Actor *);
  Actor *(__fastcall *findAttackTarget)(Actor *this);
  bool (__fastcall *isValidTarget)(Actor *this, Actor *);
  bool (__fastcall *attack)(Actor *this, Actor *);
  void (__fastcall *performRangedAttack)(Actor *this, Actor *, float);
  void (__fastcall *adjustDamageAmount)(Actor *this, int *);
  int (__fastcall *getEquipmentCount)(Actor *this);
  void (__fastcall *setOwner)(Actor *this, const ActorUniqueID);
  void (__fastcall *setSitting)(Actor *this, bool);
  void (__fastcall *onTame)(Actor *this);
  void (__fastcall *onFailedTame)(Actor *this);
  int (__fastcall *getInventorySize)(Actor *this);
  int (__fastcall *getEquipSlots)(Actor *this);
  int (__fastcall *getChestSlots)(Actor *this);
  void (__fastcall *setStanding)(Actor *this, bool);
  bool (__fastcall *canPowerJump)(Actor *this);
  void (__fastcall *setCanPowerJump)(Actor *this, bool);
  bool (__fastcall *isJumping)(Actor *this);
  bool (__fastcall *isEnchanted)(Actor *this);
  void (__fastcall *rideJumped)(Actor *this);
  void (__fastcall *rideLanded)(Actor *this, const Vec3 *, const Vec3 *);
  bool (__fastcall *shouldRender)(Actor *this);
  bool (__fastcall *isInvulnerableTo)(Actor *this, const ActorDamageSource *);
  ActorDamageCause (__fastcall *getBlockDamageCause)(Actor *this, const Block *);
  void (__fastcall *actuallyHurt)(Actor *this, int, const ActorDamageSource *, bool);
  void (__fastcall *animateHurt)(Actor *this);
  bool (__fastcall *doFireHurt)(Actor *this, int);
  void (__fastcall *onLightningHit)(Actor *this);
  void (__fastcall *onBounceStarted)(Actor *this, const BlockPos *, const Block *);
  void (__fastcall *feed)(Actor *this, int);
  void (__fastcall *handleEntityEvent)(Actor *this, ActorEvent, int);
  float (__fastcall *getPickRadius)(Actor *this);
  const HashedString *(__fastcall *getActorRendererId)(Actor *this);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const ItemStack *, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const Block *, int, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const Block *, int);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, int, int, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, int, int);
  void (__fastcall *despawn)(Actor *this);
  void (__fastcall *killed)(Actor *this, Actor *);
  void (__fastcall *awardKillScore)(Actor *this, Actor *, int);
  void (__fastcall *setArmor)(Actor *this, ArmorSlot, const ItemStack *);
  const ItemStack *(__fastcall *getArmor)(Actor *this, ArmorSlot);
  ArmorMaterialType (__fastcall *getArmorMaterialTypeInSlot)(Actor *this, ArmorSlot);
  ArmorTextureType (__fastcall *getArmorMaterialTextureTypeInSlot)(Actor *this, ArmorSlot);
  float (__fastcall *getArmorColorInSlot)(Actor *this, ArmorSlot, int);
  const ItemStack *(__fastcall *getEquippedSlot)(Actor *this, EquipmentSlot);
  void (__fastcall *setEquippedSlot)(Actor *this, EquipmentSlot, const ItemStack *);
  const ItemStack *(__fastcall *getCarriedItem)(Actor *this);
  void (__fastcall *setCarriedItem)(Actor *this, const ItemStack *);
  void (__fastcall *setOffhandSlot)(Actor *this, const ItemStack *);
  const ItemStack *(__fastcall *getEquippedTotem)(Actor *this);
  bool (__fastcall *consumeTotem)(Actor *this);
  bool (__fastcall *save)(Actor *this, CompoundTag *);
  void (__fastcall *saveWithoutId)(Actor *this, CompoundTag *);
  bool (__fastcall *load)(Actor *this, const CompoundTag *, DataLoadHelper *);
  void (__fastcall *loadLinks)(Actor *this, const CompoundTag *, std::vector<ActorLink> *, DataLoadHelper *);
  ActorType (__fastcall *getEntityTypeId)(Actor *this);
  const HashedString *(__fastcall *queryEntityRenderer)(Actor *this);
  ActorUniqueID *(__fastcall *getSourceUniqueID)(Actor *this, ActorUniqueID *result);
  void (__fastcall *setOnFire)(Actor *this, int);
  AABB *(__fastcall *getHandleWaterAABB)(Actor *this, AABB *result);
  void (__fastcall *handleInsidePortal)(Actor *this, const BlockPos *);
  int (__fastcall *getPortalCooldown)(Actor *this);
  int (__fastcall *getPortalWaitTime)(Actor *this);
  AutomaticID<Dimension,int> *(__fastcall *getDimensionId)(Actor *this, AutomaticID<Dimension,int> *result);
  bool (__fastcall *canChangeDimensions)(Actor *this);
  void (__fastcall *changeDimension)(Actor *this, const ChangeDimensionPacket *);
  void (__fastcall *changeDimension)(Actor *this, AutomaticID<Dimension,int>, bool);
  ActorUniqueID *(__fastcall *getControllingPlayer)(Actor *this, ActorUniqueID *result);
  void (__fastcall *checkFallDamage)(Actor *this, float, bool);
  void (__fastcall *causeFallDamage)(Actor *this, float);
  void (__fastcall *handleFallDistanceOnServer)(Actor *this, float, bool);
  void (__fastcall *playSynchronizedSound)(Actor *this, LevelSoundEvent, const Vec3 *, int, bool);
  void (__fastcall *playSynchronizedSound)(Actor *this, LevelSoundEvent, const Vec3 *, const Block *, bool);
  void (__fastcall *onSynchedDataUpdate)(Actor *this, int);
  bool (__fastcall *canAddRider)(Actor *this, Actor *);
  bool (__fastcall *canPickupItem)(Actor *this, const ItemStack *);
  bool (__fastcall *canBePulledIntoVehicle)(Actor *this);
  bool (__fastcall *inCaravan)(Actor *this);
  bool (__fastcall *isLeashableType)(Actor *this);
  void (__fastcall *tickLeash)(Actor *this);
  void (__fastcall *sendMotionPacketIfNeeded)(Actor *this);
  bool (__fastcall *canSynchronizeNewEntity)(Actor *this);
  bool (__fastcall *stopRiding)(Actor *this, bool, bool, bool, bool);
  void (__fastcall *startSwimming)(Actor *this);
  void (__fastcall *stopSwimming)(Actor *this);
  void (__fastcall *buildDebugInfo)(Actor *this, std::string *);
  CommandPermissionLevel (__fastcall *getCommandPermissionLevel)(Actor *this);
  AttributeInstance *(__fastcall *getMutableAttribute)(Actor *this, const Attribute *);
  const AttributeInstance *(__fastcall *getAttribute)(Actor *this, const Attribute *);
  int (__fastcall *getDeathTime)(Actor *this);
  void (__fastcall *heal)(Actor *this, int);
  bool (__fastcall *isInvertedHealAndHarm)(Actor *this);
  bool (__fastcall *canBeAffected)(Actor *this, const MobEffectInstance *);
  bool (__fastcall *canBeAffected)(Actor *this, int);
  bool (__fastcall *canBeAffectedByArrow)(Actor *this, const MobEffectInstance *);
  void (__fastcall *onEffectAdded)(Actor *this, MobEffectInstance *);
  void (__fastcall *onEffectUpdated)(Actor *this, const MobEffectInstance *);
  void (__fastcall *onEffectRemoved)(Actor *this, MobEffectInstance *);
  AnimationComponent *(__fastcall *getAnimationComponent)(Actor *this);
  void (__fastcall *openContainerComponent)(Actor *this, Player *);
  void (__fastcall *swing)(Actor *this);
  void (__fastcall *useItem)(Actor *this, ItemStackBase *, ItemUseMethod, bool);
  bool (__fastcall *hasOutputSignal)(Actor *this, unsigned __int8);
  int (__fastcall *getOutputSignal)(Actor *this);
  void (__fastcall *getDebugText)(Actor *this, std::vector<std::string> *);
  float (__fastcall *getMapDecorationRotation)(Actor *this);
  float (__fastcall *getRiderYRotation)(Actor *this, const Actor *);
  float (__fastcall *getYHeadRot)(Actor *this);
  bool (__fastcall *isWorldBuilder)(Actor *this);
  bool (__fastcall *isCreative)(Actor *this);
  bool (__fastcall *isAdventure)(Actor *this);
  bool (__fastcall *add)(Actor *this, ItemStack *);
  bool (__fastcall *drop)(Actor *this, const ItemStack *, bool);
  bool (__fastcall *getInteraction)(Actor *this, Player *, ActorInteraction *, const Vec3 *);
  bool (__fastcall *canDestroyBlock)(Actor *this, const Block *);
  void (__fastcall *setAuxValue)(Actor *this, int);
  void (__fastcall *setSize)(Actor *this, float, float);
  int (__fastcall *getLifeSpan)(Actor *this);
  void (__fastcall *onOrphan)(Actor *this);
  void (__fastcall *wobble)(Actor *this);
  bool (__fastcall *wasHurt)(Actor *this);
  void (__fastcall *startSpinAttack)(Actor *this);
  void (__fastcall *stopSpinAttack)(Actor *this);
  void (__fastcall *setDamageNearbyMobs)(Actor *this, bool);
  bool (__fastcall *hasCritBox)(Actor *this);
  bool (__fastcall *isCritHit)(Actor *this);
  void (__fastcall *renderDebugServerState)(Actor *this, const Options *);
  void (__fastcall *reloadLootTable)(Actor *this, const EquipmentTableDefinition *);
  void (__fastcall *reloadLootTable)(Actor *this);
  float (__fastcall *getDeletionDelayTimeSeconds)(Actor *this);
  void (__fastcall *kill)(Actor *this);
  void (__fastcall *die)(Actor *this, const ActorDamageSource *);
  bool (__fastcall *shouldTick)(Actor *this);
  std::shared_ptr<IActorMovementProxy> *(__fastcall *createMovementProxy)(Actor *this, std::shared_ptr<IActorMovementProxy> *result);
  void (__fastcall *updateEntitySpecificMolangVariables)(Actor *this, RenderParams *);
  bool (__fastcall *shouldTryMakeStepSound)(Actor *this);
  float (__fastcall *getNextStep)(Actor *this, const float);
  bool (__fastcall *canMakeStepSound)(Actor *this);
  void (__fastcall *outOfWorld)(Actor *this);
  bool (__fastcall *_hurt)(Actor *this, const ActorDamageSource *, int, bool, bool);
  void (__fastcall *markHurt)(Actor *this);
  void (__fastcall *readAdditionalSaveData)(Actor *this, const CompoundTag *, DataLoadHelper *);
  void (__fastcall *addAdditionalSaveData)(Actor *this, CompoundTag *);
  void (__fastcall *_playStepSound)(Actor *this, const BlockPos *, const Block *);
  void (__fastcall *_playFlySound)(Actor *this, const BlockPos *, const Block *);
  bool (__fastcall *_makeFlySound)(Actor *this);
  void (__fastcall *checkInsideBlocks)(Actor *this, float);
  void (__fastcall *pushOutOfBlocks)(Actor *this, const Vec3 *);
  bool (__fastcall *updateWaterState)(Actor *this);
  void (__fastcall *doWaterSplashEffect)(Actor *this);
  void (__fastcall *spawnTrailBubbles)(Actor *this);
  void (__fastcall *updateInsideBlock)(Actor *this);
  LootTable *(__fastcall *getLootTable)(Actor *this);
  LootTable *(__fastcall *getDefaultLootTable)(Actor *this);
  void (__fastcall *_removeRider)(Actor *this, const ActorUniqueID *, bool, bool, bool);
  void (__fastcall *_onSizeUpdated)(Actor *this);
  void (__fastcall *_doAutoAttackOnTouch)(Actor *this, Actor *);
  void (__fastcall *knockback)(Mob *this, Actor *, int, float, float, float, float, float);
  void (__fastcall *resolveDeathLoot)(Mob *this, int, const ActorDamageSource *);
  void (__fastcall *spawnAnim)(Mob *this);
  void (__fastcall *setSleeping)(Mob *this, bool);
  void (__fastcall *setSprinting)(Mob *this, bool);
  void (__fastcall *playAmbientSound)(Mob *this);
  LevelSoundEvent (__fastcall *getAmbientSound)(Mob *this);
  int (__fastcall *getAmbientSoundPostponeTicks)(Mob *this);
  int (__fastcall *getAmbientSoundPostponeTicksRange)(Mob *this);
  const TextureUVCoordinateSet *(__fastcall *getItemInHandIcon)(Mob *this, const ItemStack *, int);
  float (__fastcall *getSpeed)(Mob *this);
  void (__fastcall *setSpeed)(Mob *this, float);
  float (__fastcall *getJumpPower)(Mob *this);
  bool (__fastcall *hurtEffects)(Mob *this, const ActorDamageSource *, int, bool, bool);
  int (__fastcall *getMeleeWeaponDamageBonus)(Mob *this, Mob *);
  int (__fastcall *getMeleeKnockbackBonus)(Mob *this);
  void (__fastcall *travel)(Mob *this, IMobMovementProxy *, float, float, float);
  void (__fastcall *travel)(Mob *this, float, float, float);
  void (__fastcall *applyFinalFriction)(Mob *this, float, bool);
  void (__fastcall *updateWalkAnim)(Mob *this);
  void (__fastcall *aiStep)(Mob *this, IMobMovementProxy *);
  void (__fastcall *aiStep)(Mob *this);
  void (__fastcall *pushActors)(Mob *this);
  void (__fastcall *lookAt)(Mob *this, Actor *, float, float);
  bool (__fastcall *isLookingAtAnEntity)(Mob *this);
  bool (__fastcall *checkSpawnRules)(Mob *this, bool);
  bool (__fastcall *checkSpawnObstruction)(Mob *this);
  float (__fastcall *getAttackAnim)(Mob *this, float);
  int (__fastcall *getItemUseDuration)(Mob *this);
  float (__fastcall *getItemUseStartupProgress)(Mob *this);
  float (__fastcall *getItemUseIntervalProgress)(Mob *this);
  int (__fastcall *getItemuseIntervalAxis)(Mob *this);
  int (__fastcall *getTimeAlongSwing)(Mob *this);
  void (__fastcall *ate)(Mob *this);
  float (__fastcall *getMaxHeadXRot)(Mob *this);
  Mob *(__fastcall *getLastHurtByMob)(Mob *this);
  void (__fastcall *setLastHurtByMob)(Mob *this, Mob *);
  Player *(__fastcall *getLastHurtByPlayer)(Mob *this);
  void (__fastcall *setLastHurtByPlayer)(Mob *this, Player *);
  Mob *(__fastcall *getLastHurtMob)(Mob *this);
  void (__fastcall *setLastHurtMob)(Mob *this, Actor *);
  bool (__fastcall *isAlliedTo)(Mob *this, Mob *);
  bool (__fastcall *doHurtTarget)(Mob *this, Actor *);
  bool (__fastcall *canBeControlledByRider)(Mob *this);
  void (__fastcall *leaveCaravan)(Mob *this);
  void (__fastcall *joinCaravan)(Mob *this, Mob *);
  bool (__fastcall *hasCaravanTail)(Mob *this);
  ActorUniqueID *(__fastcall *getCaravanHead)(Mob *this, ActorUniqueID *result);
  int (__fastcall *getArmorValue)(Mob *this);
  float (__fastcall *getArmorCoverPercentage)(Mob *this);
  void (__fastcall *hurtArmor)(Mob *this, const ActorDamageSource *, int, const std::bitset<4> *);
  void (__fastcall *hurtArmor)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *hurtArmorSlot)(Mob *this, const ActorDamageSource *, int, ArmorSlot);
  void (__fastcall *setDamagedArmor)(Mob *this, ArmorSlot, const ItemStack *);
  void (__fastcall *sendArmorDamage)(Mob *this, const std::bitset<4> *);
  void (__fastcall *sendArmor)(Mob *this, const std::bitset<4> *);
  void (__fastcall *containerChanged)(Mob *this, int);
  void (__fastcall *updateEquipment)(Mob *this);
  int (__fastcall *clearEquipment)(Mob *this);
  std::vector<ItemStack const *> *(__fastcall *getAllArmor)(Mob *this, std::vector<ItemStack const *> *result);
  std::vector<int> *(__fastcall *getAllArmorID)(Mob *this, std::vector<int> *result);
  std::vector<ItemStack const *> *(__fastcall *getAllHand)(Mob *this, std::vector<ItemStack const *> *result);
  std::vector<ItemStack const *> *(__fastcall *getAllEquipment)(Mob *this, std::vector<ItemStack const *> *result);
  int (__fastcall *getArmorTypeHash)(Mob *this);
  void (__fastcall *dropEquipmentOnDeath)(Mob *this);
  void (__fastcall *dropEquipmentOnDeath)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *clearVanishEnchantedItemsOnDeath)(Mob *this);
  void (__fastcall *sendInventory)(Mob *this, bool);
  int (__fastcall *getDamageAfterMagicAbsorb)(Mob *this, const ActorDamageSource *, int);
  bool (__fastcall *createAIGoals)(Mob *this);
  void (__fastcall *onBorn)(Mob *this, Actor *, Actor *);
  bool (__fastcall *setItemSlot)(Mob *this, EquipmentSlot, const ItemStack *);
  void (__fastcall *setTransitioningSitting)(Mob *this, bool);
  void (__fastcall *attackAnimation)(Mob *this, Actor *, float);
  int (__fastcall *getAttackTime)(Mob *this);
  float (__fastcall *_getWalkTargetValue)(Mob *this, const BlockPos *);
  bool (__fastcall *canExistWhenDisallowMob)(Mob *this);
  bool (__fastcall *useNewAi)(Mob *this);
  void (__fastcall *ascendLadder)(Mob *this);
  void (__fastcall *ascendScaffolding)(Mob *this);
  void (__fastcall *descendScaffolding)(Mob *this);
  void (__fastcall *dropContainer)(Mob *this);
  std::unique_ptr<BodyControl> *(__fastcall *initBodyControl)(Mob *this, std::unique_ptr<BodyControl> *result);
  void (__fastcall *jumpFromGround)(Mob *this, IMobMovementProxy *);
  void (__fastcall *jumpFromGround)(Mob *this);
  void (__fastcall *updateAi)(Mob *this);
  void (__fastcall *newServerAiStep)(Mob *this);
  void (__fastcall *_serverAiMobStep)(Mob *this);
  int (__fastcall *getDamageAfterEnchantReduction)(Mob *this, const ActorDamageSource *, int);
  int (__fastcall *getDamageAfterArmorAbsorb)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *dropBags)(Mob *this);
  void (__fastcall *tickDeath)(Mob *this);
  void (__fastcall *updateGliding)(Mob *this);
  bool (__fastcall *_allowAscendingScaffolding)(Mob *this);
  bool (__fastcall *isDarkEnoughToSpawn)(Monster *this);
};

# PistonBlockActor_vtbl

struct /*VFT*/ PistonBlockActor_vtbl
{
  void (__fastcall *~BlockActor)(BlockActor *this);
  void (__fastcall *load)(BlockActor *this, Level *, const CompoundTag *, DataLoadHelper *);
  bool (__fastcall *save)(BlockActor *this, CompoundTag *);
  bool (__fastcall *saveItemInstanceData)(BlockActor *this, CompoundTag *);
  void (__fastcall *saveBlockData)(BlockActor *this, CompoundTag *, BlockSource *);
  void (__fastcall *loadBlockData)(BlockActor *this, const CompoundTag *, BlockSource *, DataLoadHelper *);
  void (__fastcall *onCustomTagLoadDone)(BlockActor *this, BlockSource *);
  void (__fastcall *tick)(BlockActor *this, BlockSource *);
  bool (__fastcall *isFinished)(BlockActor *this);
  void (__fastcall *onChanged)(BlockActor *this, BlockSource *);
  bool (__fastcall *isMovable)(BlockActor *this, BlockSource *);
  bool (__fastcall *isCustomNameSaved)(BlockActor *this);
  bool (__fastcall *onUpdatePacket)(BlockActor *this, const CompoundTag *, BlockSource *, const Player *);
  void (__fastcall *onPlace)(BlockActor *this, BlockSource *);
  void (__fastcall *onMove)(BlockActor *this);
  void (__fastcall *onRemoved)(BlockActor *this, BlockSource *);
  void (__fastcall *triggerEvent)(BlockActor *this, int, int);
  void (__fastcall *clearCache)(BlockActor *this);
  void (__fastcall *onNeighborChanged)(BlockActor *this, BlockSource *, const BlockPos *);
  float (__fastcall *getShadowRadius)(BlockActor *this, BlockSource *);
  bool (__fastcall *hasAlphaLayer)(BlockActor *this);
  BlockActor *(__fastcall *getCrackEntity)(BlockActor *this, BlockSource *, const BlockPos *);
  void (__fastcall *getDebugText)(BlockActor *this, std::vector<std::string> *, const BlockPos *);
  const std::string *(__fastcall *getCustomName)(BlockActor *this);
  const std::string *(__fastcall *getFilteredCustomName)(BlockActor *this, const UIProfanityContext *);
  std::string *(__fastcall *getName)(BlockActor *this, std::string *result);
  void (__fastcall *setCustomName)(BlockActor *this, const std::string *);
  std::string *(__fastcall *getImmersiveReaderText)(BlockActor *this, std::string *result, BlockSource *);
  int (__fastcall *getRepairCost)(BlockActor *this);
  PistonBlockActor *(__fastcall *getOwningPiston)(BlockActor *this, BlockSource *);
  const Container *(__fastcall *getContainer)(BlockActor *this);
  Container *(__fastcall *getContainer)(BlockActor *this);
  float (__fastcall *getDeletionDelayTimeSeconds)(BlockActor *this);
  void (__fastcall *checkWordsOnChunkLoad)(BlockActor *this, LevelChunk *);
  void (__fastcall *checkWordsOnUpdate)(BlockActor *this, Player *);
  void (__fastcall *onChunkLoaded)(BlockActor *this, LevelChunk *);
  void (__fastcall *onChunkUnloaded)(BlockActor *this, LevelChunk *);
  std::unique_ptr<BlockActorDataPacket> *(__fastcall *_getUpdatePacket)(BlockActor *this, std::unique_ptr<BlockActorDataPacket> *result, BlockSource *);
  void (__fastcall *_onUpdatePacket)(BlockActor *this, const CompoundTag *, BlockSource *);
  bool (__fastcall *_playerCanUpdate)(BlockActor *this, const Player *);
};

# PlayerCommandOrigin_vtbl

struct /*VFT*/ PlayerCommandOrigin_vtbl
{
  void (__fastcall *~CommandOrigin)(CommandOrigin *this);
  const std::string *(__fastcall *getRequestId)(CommandOrigin *this);
  std::string *(__fastcall *getName)(CommandOrigin *this, std::string *result);
  BlockPos *(__fastcall *getBlockPosition)(CommandOrigin *this, BlockPos *result);
  Vec3 *(__fastcall *getWorldPosition)(CommandOrigin *this, Vec3 *result);
  Level *(__fastcall *getLevel)(CommandOrigin *this);
  Dimension *(__fastcall *getDimension)(CommandOrigin *this);
  Actor *(__fastcall *getEntity)(CommandOrigin *this);
  CommandPermissionLevel (__fastcall *getPermissionsLevel)(CommandOrigin *this);
  std::unique_ptr<CommandOrigin> *(__fastcall *clone)(CommandOrigin *this, std::unique_ptr<CommandOrigin> *result);
  std::optional<BlockPos> *(__fastcall *getCursorHitBlockPos)(CommandOrigin *this, std::optional<BlockPos> *result);
  std::optional<Vec3> *(__fastcall *getCursorHitPos)(CommandOrigin *this, std::optional<Vec3> *result);
  bool (__fastcall *hasChatPerms)(CommandOrigin *this);
  bool (__fastcall *hasTellPerms)(CommandOrigin *this);
  bool (__fastcall *canUseAbility)(CommandOrigin *this, AbilitiesIndex);
  bool (__fastcall *isWorldBuilder)(CommandOrigin *this);
  bool (__fastcall *canUseCommandsWithoutCheatsEnabled)(CommandOrigin *this);
  bool (__fastcall *isSelectorExpansionAllowed)(CommandOrigin *this);
  const NetworkIdentifier *(__fastcall *getSourceId)(CommandOrigin *this);
  unsigned __int8 (__fastcall *getSourceSubId)(CommandOrigin *this);
  const CommandOrigin *(__fastcall *getOutputReceiver)(CommandOrigin *this);
  CommandOriginType (__fastcall *getOriginType)(CommandOrigin *this);
  CommandOriginData *(__fastcall *toCommandOriginData)(CommandOrigin *this, CommandOriginData *result);
  const mce::UUID *(__fastcall *getUUID)(CommandOrigin *this);
  void (__fastcall *handleCommandOutputCallback)(CommandOrigin *this, Json::Value *);
  void (__fastcall *_setUUID)(CommandOrigin *this, const mce::UUID *);
};

# PlayerRewindContext_vtbl

struct /*VFT*/ PlayerRewindContext_vtbl
{
  void (__fastcall *~IActorMovementProxy)(IActorMovementProxy *this);
  float (__fastcall *getGravity)(IActorMovementProxy *this);
  float (__fastcall *getLevelGravity)(IActorMovementProxy *this);
  bool (__fastcall *isRiding)(IActorMovementProxy *this);
  bool (__fastcall *isClientSide)(IActorMovementProxy *this);
  bool (__fastcall *isCreative)(IActorMovementProxy *this);
  bool (__fastcall *isInWater)(IActorMovementProxy *this);
  bool (__fastcall *isInLava)(IActorMovementProxy *this);
  bool (__fastcall *isInScaffolding)(IActorMovementProxy *this);
  bool (__fastcall *isOverScaffolding)(IActorMovementProxy *this);
  bool (__fastcall *isSwimming)(IActorMovementProxy *this);
  bool (__fastcall *isImmersedInWater)(IActorMovementProxy *this);
  bool (__fastcall *onClimbableBlock)(IActorMovementProxy *this);
  bool (__fastcall *onHoverableBlock)(IActorMovementProxy *this);
  bool (__fastcall *isHeadInWater)(IActorMovementProxy *this);
  bool (__fastcall *canBeginOrContinueClimbingLadder)(IActorMovementProxy *this);
  bool (__fastcall *isSwimmer)(IActorMovementProxy *this);
  bool (__fastcall *isImmobile)(IActorMovementProxy *this);
  bool (__fastcall *isControlledByLocalInstance)(IActorMovementProxy *this);
  bool (__fastcall *hasTeleported)(IActorMovementProxy *this);
  bool (__fastcall *usesOneWayCollision)(IActorMovementProxy *this);
  bool (__fastcall *isStuckInCollider)(IActorMovementProxy *this);
  void (__fastcall *setStuckInCollider)(IActorMovementProxy *this, bool);
  bool (__fastcall *isStuckItem)(IActorMovementProxy *this);
  const std::vector<AABB> *(__fastcall *getOnewayPhysicsBlocks)(IActorMovementProxy *this);
  bool (__fastcall *wasPenetratingLastFrame)(IActorMovementProxy *this);
  void (__fastcall *setWasPenetratingLastFrame)(IActorMovementProxy *this, bool);
  bool (__fastcall *isPrimaryLocalPlayer)(IActorMovementProxy *this);
  const std::vector<AABB> *(__fastcall *getSubAABBs)(IActorMovementProxy *this);
  void (__fastcall *setSubAABBs)(IActorMovementProxy *this, const std::vector<AABB> *);
  bool (__fastcall *isStackable)(IActorMovementProxy *this);
  void (__fastcall *testForEntityStacking)(IActorMovementProxy *this, const AABB *, std::vector<AABB> *);
  bool (__fastcall *getCollidableMobNear)(IActorMovementProxy *this);
  void (__fastcall *setCollidableMobNear)(IActorMovementProxy *this, bool);
  void (__fastcall *testForCollidableMobs)(IActorMovementProxy *this, const AABB *, std::vector<AABB> *);
  float (__fastcall *getWalkDist)(IActorMovementProxy *this);
  void (__fastcall *setWalkDist)(IActorMovementProxy *this, float);
  bool (__fastcall *isOnGround)(IActorMovementProxy *this);
  void (__fastcall *setOnGround)(IActorMovementProxy *this, bool);
  bool (__fastcall *wasOnGround)(IActorMovementProxy *this);
  void (__fastcall *setWasOnGround)(IActorMovementProxy *this, bool);
  int (__fastcall *getHealth)(IActorMovementProxy *this);
  bool (__fastcall *getHorizontalCollision)(IActorMovementProxy *this);
  void (__fastcall *setHorizontalCollision)(IActorMovementProxy *this, bool);
  bool (__fastcall *getVerticalCollision)(IActorMovementProxy *this);
  void (__fastcall *setVerticalCollision)(IActorMovementProxy *this, bool);
  bool (__fastcall *getCollision)(IActorMovementProxy *this);
  void (__fastcall *setCollision)(IActorMovementProxy *this, bool);
  float (__fastcall *getUserDefineMaxAutoStep)(IActorMovementProxy *this);
  float (__fastcall *getMaxAutoStep)(IActorMovementProxy *this);
  bool (__fastcall *isFree)(IActorMovementProxy *this, const Vec3 *);
  float (__fastcall *getHeightOffset)(IActorMovementProxy *this);
  Vec2 *(__fastcall *getSlideOffset)(IActorMovementProxy *this, Vec2 *result);
  void (__fastcall *setSlideOffset)(IActorMovementProxy *this, const Vec2 *);
  void (__fastcall *setTerrainSurfaceOffset)(IActorMovementProxy *this, float);
  const Vec3 *(__fastcall *getBlockMovementSlowdownMultiplier)(IActorMovementProxy *this);
  void (__fastcall *setBlockMovementSlowdownMultiplier)(IActorMovementProxy *this, const Vec3 *);
  float (__fastcall *getCurrentSwimAmount)(IActorMovementProxy *this);
  const WaterMovementComponent *(__fastcall *tryGetWaterMovementComponent)(IActorMovementProxy *this);
  const AttributeInstance *(__fastcall *getAttribute)(IActorMovementProxy *this, const Attribute *);
  bool (__fastcall *hasEffect)(IActorMovementProxy *this, const MobEffect *);
  const MobEffectInstance *(__fastcall *getEffect)(IActorMovementProxy *this, const MobEffect *);
  int (__fastcall *getActiveEffectCount)(IActorMovementProxy *this);
  const SynchedActorData *(__fastcall *getEntityData)(IActorMovementProxy *this);
  void (__fastcall *setStatusFlag)(IActorMovementProxy *this, ActorFlags, bool);
  bool (__fastcall *getStatusFlag)(IActorMovementProxy *this, ActorFlags);
  bool (__fastcall *hasCategory)(IActorMovementProxy *this, ActorCategory);
  bool (__fastcall *isType)(IActorMovementProxy *this, ActorType);
  Vec3 *(__fastcall *getPosition)(IActorMovementProxy *this, Vec3 *result);
  void (__fastcall *setPosition)(IActorMovementProxy *this, const Vec3 *);
  Vec2 *(__fastcall *getRotation)(IActorMovementProxy *this, Vec2 *result);
  void (__fastcall *setRotation)(IActorMovementProxy *this, const Vec2 *);
  const StateVectorComponent *(__fastcall *getStateVectorComponent)(IActorMovementProxy *this);
  StateVectorComponent *(__fastcall *getStateVectorComponentNonConst)(IActorMovementProxy *this);
  const AABBShapeComponent *(__fastcall *getAABBShapeComponent)(IActorMovementProxy *this);
  AABBShapeComponent *(__fastcall *getAABBShapeComponentNonConst)(IActorMovementProxy *this);
  void (__fastcall *setFallDistance)(IActorMovementProxy *this, float);
  bool (__fastcall *isSneaking)(IActorMovementProxy *this);
  void (__fastcall *setSneaking)(IActorMovementProxy *this, bool);
  Vec3 *(__fastcall *getHeadLookVector)(IActorMovementProxy *this, Vec3 *result, float);
  Vec3 *(__fastcall *getViewVector)(IActorMovementProxy *this, Vec3 *result, float);
  const BlockSource *(__fastcall *getRegion)(IActorMovementProxy *this);
  BlockSource *(__fastcall *getRegion)(IActorMovementProxy *this);
  std::vector<AABB> *(__fastcall *fetchCollisionShapes)(IActorMovementProxy *this, const AABB *, float *, bool, IActorMovementProxy *);
  const std::vector<std::shared_ptr<IActorMovementProxy>> *(__fastcall *fetchEntities)(IActorMovementProxy *this, const IActorMovementProxy *, const AABB *);
  bool (__fastcall *hasRegion)(IActorMovementProxy *this);
  IActorMovementProxy *(__fastcall *getRide)(IActorMovementProxy *this);
  bool (__fastcall *isWASDControlled)(IActorMovementProxy *this);
  int (__fastcall *getControllingSeat)(IActorMovementProxy *this);
  int (__fastcall *getRiderIndex)(IActorMovementProxy *this, const IActorMovementProxy *);
  IBoatMovementProxy *(__fastcall *tryAsBoat)(IActorMovementProxy *this);
  IMobMovementProxy *(__fastcall *tryAsMob)(IActorMovementProxy *this);
  IPlayerMovementProxy *(__fastcall *tryAsPlayer)(IActorMovementProxy *this);
  const std::vector<ActorUniqueID> *(__fastcall *getRiderIDs)(IActorMovementProxy *this);
  const ActorUniqueID *(__fastcall *getUniqueID)(IActorMovementProxy *this);
  ActorRuntimeID *(__fastcall *getRuntimeID)(IActorMovementProxy *this, ActorRuntimeID *result);
  AABB *(__fastcall *getHandleWaterAABB)(IActorMovementProxy *this, AABB *result);
  BlockPos *(__fastcall *getBlockPosCurrentlyStandingOn)(IActorMovementProxy *this, BlockPos *result, IActorMovementProxy *);
  void (__fastcall *blockOnStandOn)(IActorMovementProxy *this, const Block *, const BlockPos *);
  bool (__fastcall *_containsSneakCollisionShapes)(IActorMovementProxy *this, const AABB *);
  void (__fastcall *move)(IActorMovementProxy *this, const Vec3 *);
  void (__fastcall *moveBBs)(IActorMovementProxy *this, const Vec3 *);
  void (__fastcall *checkFallDamage)(IActorMovementProxy *this, float, bool);
  void (__fastcall *onBounceStarted)(IActorMovementProxy *this, const BlockPos *, const Block *);
  void (__fastcall *updatePrevPosRot)(IActorMovementProxy *this);
  void (__fastcall *sendActorMove)(IActorMovementProxy *this, const Vec3 *);
  void (__fastcall *_teleportTo)(IActorMovementProxy *this, const Vec3 *, bool, int, int);
  Actor *(__fastcall *_getActor)(IActorMovementProxy *this);
  const Actor *(__fastcall *_getRawActor)(IActorMovementProxy *this);
  Actor *(__fastcall *_getRawActor)(IActorMovementProxy *this);
  SynchedActorData *(__fastcall *_getEntityData)(IActorMovementProxy *this);
  const Vec2 *(__fastcall *_getRotPrev)(IActorMovementProxy *this);
  void (__fastcall *_setRotPrev)(IActorMovementProxy *this, const Vec2 *);
  void (__fastcall *_setPreviousPosRot)(IActorMovementProxy *this, const Vec3 *, const Vec2 *);
  void (__fastcall *_setHasTeleported)(IActorMovementProxy *this, bool);
  gsl::not_null<BaseAttributeMap *> *(__fastcall *_getAttributes)(IActorMovementProxy *this, gsl::not_null<BaseAttributeMap *> *result);
  void (__fastcall *_applySnapshot)(IActorMovementProxy *this, const PlayerSnapshot *);
  std::unique_ptr<PlayerSnapshot> *(__fastcall *_createSnapshot)(IActorMovementProxy *this, std::unique_ptr<PlayerSnapshot> *result);
  AdvanceFrameResult (__fastcall *_advanceLiveFrame)(IActorMovementProxy *this, const IReplayableActorInput *);
  bool (__fastcall *isSetWaterSpeed)(IMobMovementProxy *this);
  float (__fastcall *getWaterSpeed)(IMobMovementProxy *this);
  bool (__fastcall *isDisableGravityInLiquid)(IMobMovementProxy *this);
  int (__fastcall *getNoJumpDelay)(IMobMovementProxy *this);
  void (__fastcall *setNoJumpDelay)(IMobMovementProxy *this, int);
  bool (__fastcall *isJumping)(IMobMovementProxy *this);
  void (__fastcall *setJumping)(IMobMovementProxy *this, bool);
  bool (__fastcall *getJumpVelRedux)(IMobMovementProxy *this);
  void (__fastcall *setJumpVelRedux)(IMobMovementProxy *this, bool);
  Vec3 *(__fastcall *getJumpStartPos)(IMobMovementProxy *this, Vec3 *result);
  void (__fastcall *setJumpStartPos)(IMobMovementProxy *this, const Vec3 *);
  float (__fastcall *getJumpPower)(IMobMovementProxy *this);
  int (__fastcall *getJumpTicks)(IMobMovementProxy *this);
  void (__fastcall *setJumpTicks)(IMobMovementProxy *this, int);
  void (__fastcall *_endJump)(IMobMovementProxy *this);
  void (__fastcall *onPlayerJump)(IMobMovementProxy *this, int);
  float (__fastcall *getSpeed)(IMobMovementProxy *this);
  void (__fastcall *setSpeed)(IMobMovementProxy *this, float);
  bool (__fastcall *isSprinting)(IMobMovementProxy *this);
  void (__fastcall *setSprinting)(IMobMovementProxy *this, bool);
  bool (__fastcall *discardFriction)(IMobMovementProxy *this);
  const NavigationComponent *(__fastcall *tryGetNavigationComponent)(IMobMovementProxy *this);
  float (__fastcall *getTilt)(IMobMovementProxy *this);
  void (__fastcall *setTilt)(IMobMovementProxy *this, float);
  bool (__fastcall *_allowAscendingScaffolding)(IMobMovementProxy *this);
  void (__fastcall *ascendScaffolding)(IMobMovementProxy *this);
  void (__fastcall *descendScaffolding)(IMobMovementProxy *this);
  void (__fastcall *ascendLadder)(IMobMovementProxy *this);
  void (__fastcall *jumpFromGround)(IMobMovementProxy *this);
  bool (__fastcall *isGliding)(IMobMovementProxy *this);
  Vec3 *(__fastcall *getLocalMoveVelocity)(IMobMovementProxy *this, Vec3 *result);
  void (__fastcall *setLocalMoveVelocity)(IMobMovementProxy *this, const Vec3 *);
  float (__fastcall *getYRotA)(IMobMovementProxy *this);
  void (__fastcall *setYRotA)(IMobMovementProxy *this, float);
  bool (__fastcall *useNewAi)(IMobMovementProxy *this);
  void (__fastcall *newServerAiStep)(IMobMovementProxy *this);
  void (__fastcall *updateAi)(IMobMovementProxy *this);
  void (__fastcall *aiStep)(IMobMovementProxy *this);
  void (__fastcall *updateAttackAnim)(IMobMovementProxy *this);
  int (__fastcall *getNoActionTime)(IMobMovementProxy *this);
  void (__fastcall *setNoActionTime)(IMobMovementProxy *this, int);
  float (__fastcall *getYHeadRot)(IMobMovementProxy *this);
  void (__fastcall *setYHeadRot)(IMobMovementProxy *this, float);
  float (__fastcall *getSwimSpeedMultiplier)(IMobMovementProxy *this);
  void (__fastcall *setSwimSpeedMultiplier)(IMobMovementProxy *this, float);
  void (__fastcall *pushActors)(IMobMovementProxy *this);
  void (__fastcall *updateGliding)(IMobMovementProxy *this);
  void (__fastcall *travel)(IMobMovementProxy *this, float, float, float);
  void (__fastcall *playJumpSound)(IMobMovementProxy *this);
  void (__fastcall *emitJumpPreventedEvent)(IMobMovementProxy *this, const BlockPos *);
  float (__fastcall *getWaterWalkerEnchant)(IMobMovementProxy *this);
  float (__fastcall *calcGroundFriction)(IMobMovementProxy *this, const Block *, const BlockPos *);
  float (__fastcall *getFlyingSpeed)(IMobMovementProxy *this);
  void (__fastcall *setFlyingSpeed)(IMobMovementProxy *this, float);
  void (__fastcall *applyFinalFriction)(IMobMovementProxy *this, float, bool);
  bool (__fastcall *shouldApplyWaterGravity)(IMobMovementProxy *this);
  float (__fastcall *getFrictionModifier)(IMobMovementProxy *this);
  void (__fastcall *setFrictionModifier)(IMobMovementProxy *this, float);
  Mob *(__fastcall *_getMob)(IMobMovementProxy *this);
  float (__fastcall *_getYHeadRotOld)(IMobMovementProxy *this);
  void (__fastcall *_setYHeadRotOld)(IMobMovementProxy *this, float);
  MovementInterpolator *(__fastcall *_getInterpolation)(IMobMovementProxy *this);
  bool (__fastcall *canJump)(IPlayerMovementProxy *this);
  std::optional<AABB> *(__fastcall *getHead)(IPlayerMovementProxy *this, std::optional<AABB> *result);
  void (__fastcall *setHead)(IPlayerMovementProxy *this, std::optional<AABB>);
  std::optional<AABB> *(__fastcall *getOther)(IPlayerMovementProxy *this, std::optional<AABB> *result);
  void (__fastcall *setOther)(IPlayerMovementProxy *this, std::optional<AABB>);
  bool (__fastcall *getCamereDeparted)(IPlayerMovementProxy *this);
  bool (__fastcall *getThirdPersonPerspective)(IPlayerMovementProxy *this);
  Vec2 *(__fastcall *getRotationToCamera)(IPlayerMovementProxy *this, Vec2 *result);
  bool (__fastcall *canMove)(IPlayerMovementProxy *this);
  bool (__fastcall *canButtonJump)(IPlayerMovementProxy *this);
  bool (__fastcall *canButtonInAir)(IPlayerMovementProxy *this);
  bool (__fastcall *isSlowedByItemUse)(IPlayerMovementProxy *this);
  void (__fastcall *startGliding)(IPlayerMovementProxy *this);
  void (__fastcall *stopGliding)(IPlayerMovementProxy *this);
  bool (__fastcall *isFlying)(IPlayerMovementProxy *this);
  bool (__fastcall *isUsingItem)(IPlayerMovementProxy *this);
  bool (__fastcall *isSleeping)(IPlayerMovementProxy *this);
  bool (__fastcall *isServerAuthoritativeMovement)(IPlayerMovementProxy *this);
  bool (__fastcall *isAutoJumping)(IPlayerMovementProxy *this);
  void (__fastcall *setAutoJumping)(IPlayerMovementProxy *this, bool);
  bool (__fastcall *isAutoJumpEnabled)(IPlayerMovementProxy *this);
  bool (__fastcall *wasAutoJumping)(IPlayerMovementProxy *this);
  void (__fastcall *setWasAutoJumping)(IPlayerMovementProxy *this, bool);
  bool (__fastcall *isAdventureSettingsAutoJump)(IPlayerMovementProxy *this);
  void (__fastcall *setHasMoveInput)(IPlayerMovementProxy *this, bool);
  bool (__fastcall *hasMoveInput)(IPlayerMovementProxy *this);
  bool (__fastcall *isLocalPlayer)(IPlayerMovementProxy *this);
  float (__fastcall *getBob)(IPlayerMovementProxy *this);
  void (__fastcall *setBob)(IPlayerMovementProxy *this, float);
  float (__fastcall *getLastBob)(IPlayerMovementProxy *this);
  void (__fastcall *setLastBob)(IPlayerMovementProxy *this, float);
  void (__fastcall *setLastLookBob)(IPlayerMovementProxy *this, const Vec2 *);
  Vec2 *(__fastcall *getLookBob)(IPlayerMovementProxy *this, Vec2 *result);
  void (__fastcall *setLookBob)(IPlayerMovementProxy *this, const Vec2 *);
  ReplayStateComponent *(__fastcall *tryGetReplayComponent)(IPlayerMovementProxy *this);
  PlayerActionComponent *(__fastcall *tryGetPlayerActionComponent)(IPlayerMovementProxy *this);
  const Tick *(__fastcall *getCurrentTick)(IPlayerMovementProxy *this);
  const IClientInstanceProxy *(__fastcall *getClientInstance)(IPlayerMovementProxy *this);
  IClientInstanceProxy *(__fastcall *getClientInstance)(IPlayerMovementProxy *this);
  MoveInputHandler *(__fastcall *getMoveInputHandler)(IPlayerMovementProxy *this);
  int (__fastcall *getGlidingTicks)(IPlayerMovementProxy *this);
  InputMode (__fastcall *getInputMode)(IPlayerMovementProxy *this);
  ClientPlayMode (__fastcall *getPlayMode)(IPlayerMovementProxy *this);
  float (__fastcall *getVRMoveAdjustAngle)(IPlayerMovementProxy *this);
  float (__fastcall *getPlayerPaddleForce)(IPlayerMovementProxy *this, Side);
  void (__fastcall *setPlayerPaddleForce)(IPlayerMovementProxy *this, Side, float);
  bool (__fastcall *isPaddling)(IPlayerMovementProxy *this, Side);
  bool (__fastcall *areHandsBusy)(IPlayerMovementProxy *this);
  void (__fastcall *setHandsBusy)(IPlayerMovementProxy *this, bool);
  bool (__fastcall *getAbilityBool)(IPlayerMovementProxy *this, AbilitiesIndex);
  void (__fastcall *setAbilityBool)(IPlayerMovementProxy *this, AbilitiesIndex, bool);
  float (__fastcall *getAbilityFloat)(IPlayerMovementProxy *this, AbilitiesIndex);
  void (__fastcall *setAbilityFloat)(IPlayerMovementProxy *this, AbilitiesIndex, float);
  void (__fastcall *updateClientPlayerInputState)(IPlayerMovementProxy *this);
  bool (__fastcall *isEmoting)(IPlayerMovementProxy *this);
  void (__fastcall *setEmotingStatus)(IPlayerMovementProxy *this, bool);
  void (__fastcall *setEmotePlayedEndedEarly)(IPlayerMovementProxy *this, bool);
  void (__fastcall *fireEventPersonaEmotePlayed)(IPlayerMovementProxy *this);
  void (__fastcall *sendPacket)(IPlayerMovementProxy *this, RiderJumpPacket *);
  void (__fastcall *sendPacket)(IPlayerMovementProxy *this, PlayerActionPacket *);
  void (__fastcall *sendAdventureSettingsPacket)(IPlayerMovementProxy *this);
  bool (__fastcall *isArmorFlyEnabled)(IPlayerMovementProxy *this);
  void (__fastcall *setJumpRidingScale)(IPlayerMovementProxy *this, float);
  float (__fastcall *getJumpRidingScale)(IPlayerMovementProxy *this);
  void (__fastcall *registerFramewiseActionOrStop)(IPlayerMovementProxy *this);
  LoadingState (__fastcall *getLoadingState)(IPlayerMovementProxy *this);
  void (__fastcall *setCurrentLocalMoveVelocity)(IPlayerMovementProxy *this, const Vec2 *);
  void (__fastcall *setLastPos)(IPlayerMovementProxy *this, const Vec3 *);
  Vec3 *(__fastcall *getLastPos)(IPlayerMovementProxy *this, Vec3 *result);
  void (__fastcall *setLastDelta)(IPlayerMovementProxy *this, const Vec3 *);
  Vec3 *(__fastcall *getLastDelta)(IPlayerMovementProxy *this, Vec3 *result);
  void (__fastcall *sendPlayerInput)(IPlayerMovementProxy *this);
  void (__fastcall *sendInput)(IPlayerMovementProxy *this);
  void (__fastcall *sendClientAuthInput)(IPlayerMovementProxy *this);
  bool (__fastcall *shouldSendPosition)(IPlayerMovementProxy *this);
  void (__fastcall *sendPosition)(IPlayerMovementProxy *this);
  void (__fastcall *checkMovementStats)(IPlayerMovementProxy *this, const Vec3 *);
  void (__fastcall *sendPlayerMove)(IPlayerMovementProxy *this);
  bool (__fastcall *checkMaterial)(IPlayerMovementProxy *this, const AABB *, MaterialType);
  bool (__fastcall *checkNeedAutoJump)(IPlayerMovementProxy *this, float, float);
  Player *(__fastcall *_getPlayer)(IPlayerMovementProxy *this);
  void (__fastcall *_setPositionMode)(IPlayerMovementProxy *this, int);
  void (__fastcall *_onMovePlayerPacketNormal)(IPlayerMovementProxy *this, const Vec3 *, const Vec2 *, float);
  void (__fastcall *_resetPos)(IPlayerMovementProxy *this, bool);
  const std::vector<MobEffectInstance> *(__fastcall *_getAllEffects)(IPlayerMovementProxy *this);
  Vec2 *(__fastcall *_getCurrentLocalMoveVelocity)(IPlayerMovementProxy *this, Vec2 *result);
  const Abilities *(__fastcall *_getAbilities)(IPlayerMovementProxy *this);
  const AdventureSettings *(__fastcall *_getAdventureSettings)(IPlayerMovementProxy *this);
};

# Player_vtbl

struct /*VFT*/ Player_vtbl
{
  bool (__fastcall *hasComponent)(Actor *this, const HashedString *);
  void (__fastcall *reloadHardcoded)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *reloadHardcodedClient)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *initializeComponents)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *reloadComponents)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *_serverInitItemStackIds)(Actor *this);
  void (__fastcall *_doInitialMove)(Actor *this);
  bool (__fastcall *checkAllSensitiveWords)(Actor *this);
  bool (__fastcall *checkNameTag)(Actor *this);
  void (__fastcall *~Actor)(Actor *this);
  void (__fastcall *reset)(Actor *this);
  int (__fastcall *getOnDeathExperience)(Actor *this);
  ActorType (__fastcall *getOwnerEntityType)(Actor *this);
  void (__fastcall *remove)(Actor *this);
  void (__fastcall *setPos)(Actor *this, const Vec3 *);
  const PredictedMovementValues *(__fastcall *getPredictedMovementValues)(Actor *this);
  const Vec3 *(__fastcall *getPos)(Actor *this);
  const Vec3 *(__fastcall *getPosOld)(Actor *this);
  const Vec3 *(__fastcall *getPosExtrapolated)(Actor *this, const Vec3 *result, float);
  Vec3 *(__fastcall *getAttachPos)(Actor *this, Vec3 *result, ActorLocation, float);
  Vec3 *(__fastcall *getFiringPos)(Actor *this, Vec3 *result);
  void (__fastcall *setRot)(Actor *this, const Vec2 *);
  void (__fastcall *move)(Actor *this, IActorMovementProxy *, const Vec3 *);
  void (__fastcall *move)(Actor *this, const Vec3 *);
  Vec3 *(__fastcall *getInterpolatedRidingPosition)(Actor *this, Vec3 *result, float);
  float (__fastcall *getInterpolatedBodyRot)(Actor *this, float);
  float (__fastcall *getInterpolatedHeadRot)(Actor *this, float);
  float (__fastcall *getInterpolatedBodyYaw)(Actor *this, float);
  float (__fastcall *getYawSpeedInDegreesPerSecond)(Actor *this);
  float (__fastcall *getInterpolatedWalkAnimSpeed)(Actor *this, float);
  Vec3 *(__fastcall *getInterpolatedRidingOffset)(Actor *this, Vec3 *result, float);
  void (__fastcall *checkBlockCollisions)(Actor *this);
  void (__fastcall *checkBlockCollisions)(Actor *this, const AABB *, std::function<void __cdecl(BlockSource &,Block const &,BlockPos const &,Actor &)>);
  bool (__fastcall *isFireImmune)(Actor *this);
  bool (__fastcall *breaksFallingBlocks)(Actor *this);
  void (__fastcall *blockedByShield)(Actor *this, const ActorDamageSource *, Actor *);
  void (__fastcall *teleportTo)(Actor *this, const Vec3 *, bool, int, int, const ActorUniqueID *);
  bool (__fastcall *tryTeleportTo)(Actor *this, const Vec3 *, bool, bool, int, int);
  void (__fastcall *chorusFruitTeleport)(Actor *this, Vec3 *);
  void (__fastcall *lerpTo)(Actor *this, const Vec3 *, const Vec2 *, int);
  void (__fastcall *lerpMotion)(Actor *this, const Vec3 *);
  std::unique_ptr<AddActorBasePacket> *(__fastcall *getAddPacket)(Actor *this, std::unique_ptr<AddActorBasePacket> *result);
  void (__fastcall *normalTick)(Actor *this);
  void (__fastcall *baseTick)(Actor *this);
  void (__fastcall *rideTick)(Actor *this);
  void (__fastcall *positionRider)(Actor *this, Actor *, float);
  float (__fastcall *getRidingHeight)(Actor *this);
  bool (__fastcall *startRiding)(Actor *this, Actor *);
  void (__fastcall *addRider)(Actor *this, Actor *);
  void (__fastcall *flagRiderToRemove)(Actor *this, Actor *);
  std::string *(__fastcall *getExitTip)(Actor *this, std::string *result, const std::string *, InputMode);
  bool (__fastcall *intersects)(Actor *this, const Vec3 *, const Vec3 *);
  bool (__fastcall *isFree)(Actor *this, const Vec3 *);
  bool (__fastcall *isFree)(Actor *this, const Vec3 *, float);
  bool (__fastcall *isInWall)(Actor *this);
  bool (__fastcall *isInvisible)(Actor *this);
  bool (__fastcall *canShowNameTag)(Actor *this);
  bool (__fastcall *canExistInPeaceful)(Actor *this);
  void (__fastcall *setNameTagVisible)(Actor *this, bool);
  const std::string *(__fastcall *getNameTag)(Actor *this);
  unsigned __int64 (__fastcall *getNameTagAsHash)(Actor *this);
  std::string *(__fastcall *getFormattedNameTag)(Actor *this, std::string *result);
  void (__fastcall *filterFormattedNameTag)(Actor *this, const UIProfanityContext *);
  void (__fastcall *setNameTag)(Actor *this, const std::string *);
  bool (__fastcall *getAlwaysShowNameTag)(Actor *this);
  void (__fastcall *setScoreTag)(Actor *this, const std::string *);
  const std::string *(__fastcall *getScoreTag)(Actor *this);
  bool (__fastcall *isInWater)(Actor *this);
  bool (__fastcall *hasEnteredWater)(Actor *this);
  bool (__fastcall *isImmersedInWater)(Actor *this);
  bool (__fastcall *isInWaterOrRain)(Actor *this);
  bool (__fastcall *isInLava)(Actor *this);
  bool (__fastcall *isUnderLiquid)(Actor *this, MaterialType);
  bool (__fastcall *isOverWater)(Actor *this);
  void (__fastcall *makeStuckInBlock)(Actor *this, const Vec3 *);
  float (__fastcall *getCameraOffset)(Actor *this);
  float (__fastcall *getShadowHeightOffs)(Actor *this);
  float (__fastcall *getShadowRadius)(Actor *this);
  Vec3 *(__fastcall *getHeadLookVector)(Actor *this, Vec3 *result, float);
  bool (__fastcall *canSeeInvisible)(Actor *this);
  bool (__fastcall *canSee)(Actor *this, const Vec3 *);
  bool (__fastcall *canSee)(Actor *this, const Actor *);
  bool (__fastcall *isSkyLit)(Actor *this, float);
  float (__fastcall *getBrightness)(Actor *this, float);
  bool (__fastcall *interactPreventDefault)(Actor *this);
  void (__fastcall *playerTouch)(Actor *this, Player *);
  void (__fastcall *onAboveBubbleColumn)(Actor *this, const bool);
  void (__fastcall *onInsideBubbleColumn)(Actor *this, const bool);
  bool (__fastcall *isImmobile)(Actor *this);
  bool (__fastcall *isSilent)(Actor *this);
  bool (__fastcall *isPickable)(Actor *this);
  bool (__fastcall *isFishable)(Actor *this);
  bool (__fastcall *isSleeping)(Actor *this);
  bool (__fastcall *isShootable)(Actor *this);
  void (__fastcall *setSneaking)(Actor *this, bool);
  bool (__fastcall *isBlocking)(Actor *this);
  bool (__fastcall *isDamageBlocked)(Actor *this, const ActorDamageSource *);
  bool (__fastcall *isAlive)(Actor *this);
  bool (__fastcall *isOnFire)(Actor *this);
  bool (__fastcall *isOnHotBlock)(Actor *this);
  bool (__fastcall *isCreativeModeAllowed)(Actor *this);
  bool (__fastcall *isSurfaceMob)(Actor *this);
  bool (__fastcall *isTargetable)(Actor *this);
  bool (__fastcall *isLocalPlayer)(Actor *this);
  bool (__fastcall *isPlayer)(Actor *this);
  bool (__fastcall *canAttack)(Actor *this, Actor *, bool);
  void (__fastcall *setTarget)(Actor *this, Actor *);
  Actor *(__fastcall *findAttackTarget)(Actor *this);
  bool (__fastcall *isValidTarget)(Actor *this, Actor *);
  bool (__fastcall *attack)(Actor *this, Actor *);
  void (__fastcall *performRangedAttack)(Actor *this, Actor *, float);
  void (__fastcall *adjustDamageAmount)(Actor *this, int *);
  int (__fastcall *getEquipmentCount)(Actor *this);
  void (__fastcall *setOwner)(Actor *this, const ActorUniqueID);
  void (__fastcall *setSitting)(Actor *this, bool);
  void (__fastcall *onTame)(Actor *this);
  void (__fastcall *onFailedTame)(Actor *this);
  int (__fastcall *getInventorySize)(Actor *this);
  int (__fastcall *getEquipSlots)(Actor *this);
  int (__fastcall *getChestSlots)(Actor *this);
  void (__fastcall *setStanding)(Actor *this, bool);
  bool (__fastcall *canPowerJump)(Actor *this);
  void (__fastcall *setCanPowerJump)(Actor *this, bool);
  bool (__fastcall *isJumping)(Actor *this);
  bool (__fastcall *isEnchanted)(Actor *this);
  void (__fastcall *rideJumped)(Actor *this);
  void (__fastcall *rideLanded)(Actor *this, const Vec3 *, const Vec3 *);
  bool (__fastcall *shouldRender)(Actor *this);
  bool (__fastcall *isInvulnerableTo)(Actor *this, const ActorDamageSource *);
  ActorDamageCause (__fastcall *getBlockDamageCause)(Actor *this, const Block *);
  void (__fastcall *actuallyHurt)(Actor *this, int, const ActorDamageSource *, bool);
  void (__fastcall *animateHurt)(Actor *this);
  bool (__fastcall *doFireHurt)(Actor *this, int);
  void (__fastcall *onLightningHit)(Actor *this);
  void (__fastcall *onBounceStarted)(Actor *this, const BlockPos *, const Block *);
  void (__fastcall *feed)(Actor *this, int);
  void (__fastcall *handleEntityEvent)(Actor *this, ActorEvent, int);
  float (__fastcall *getPickRadius)(Actor *this);
  const HashedString *(__fastcall *getActorRendererId)(Actor *this);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const ItemStack *, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const Block *, int, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const Block *, int);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, int, int, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, int, int);
  void (__fastcall *despawn)(Actor *this);
  void (__fastcall *killed)(Actor *this, Actor *);
  void (__fastcall *awardKillScore)(Actor *this, Actor *, int);
  void (__fastcall *setArmor)(Actor *this, ArmorSlot, const ItemStack *);
  const ItemStack *(__fastcall *getArmor)(Actor *this, ArmorSlot);
  ArmorMaterialType (__fastcall *getArmorMaterialTypeInSlot)(Actor *this, ArmorSlot);
  ArmorTextureType (__fastcall *getArmorMaterialTextureTypeInSlot)(Actor *this, ArmorSlot);
  float (__fastcall *getArmorColorInSlot)(Actor *this, ArmorSlot, int);
  const ItemStack *(__fastcall *getEquippedSlot)(Actor *this, EquipmentSlot);
  void (__fastcall *setEquippedSlot)(Actor *this, EquipmentSlot, const ItemStack *);
  const ItemStack *(__fastcall *getCarriedItem)(Actor *this);
  void (__fastcall *setCarriedItem)(Actor *this, const ItemStack *);
  void (__fastcall *setOffhandSlot)(Actor *this, const ItemStack *);
  const ItemStack *(__fastcall *getEquippedTotem)(Actor *this);
  bool (__fastcall *consumeTotem)(Actor *this);
  bool (__fastcall *save)(Actor *this, CompoundTag *);
  void (__fastcall *saveWithoutId)(Actor *this, CompoundTag *);
  bool (__fastcall *load)(Actor *this, const CompoundTag *, DataLoadHelper *);
  void (__fastcall *loadLinks)(Actor *this, const CompoundTag *, std::vector<ActorLink> *, DataLoadHelper *);
  ActorType (__fastcall *getEntityTypeId)(Actor *this);
  const HashedString *(__fastcall *queryEntityRenderer)(Actor *this);
  ActorUniqueID *(__fastcall *getSourceUniqueID)(Actor *this, ActorUniqueID *result);
  void (__fastcall *setOnFire)(Actor *this, int);
  AABB *(__fastcall *getHandleWaterAABB)(Actor *this, AABB *result);
  void (__fastcall *handleInsidePortal)(Actor *this, const BlockPos *);
  int (__fastcall *getPortalCooldown)(Actor *this);
  int (__fastcall *getPortalWaitTime)(Actor *this);
  AutomaticID<Dimension,int> *(__fastcall *getDimensionId)(Actor *this, AutomaticID<Dimension,int> *result);
  bool (__fastcall *canChangeDimensions)(Actor *this);
  void (__fastcall *changeDimension)(Actor *this, const ChangeDimensionPacket *);
  void (__fastcall *changeDimension)(Actor *this, AutomaticID<Dimension,int>, bool);
  ActorUniqueID *(__fastcall *getControllingPlayer)(Actor *this, ActorUniqueID *result);
  void (__fastcall *checkFallDamage)(Actor *this, float, bool);
  void (__fastcall *causeFallDamage)(Actor *this, float);
  void (__fastcall *handleFallDistanceOnServer)(Actor *this, float, bool);
  void (__fastcall *playSynchronizedSound)(Actor *this, LevelSoundEvent, const Vec3 *, int, bool);
  void (__fastcall *playSynchronizedSound)(Actor *this, LevelSoundEvent, const Vec3 *, const Block *, bool);
  void (__fastcall *onSynchedDataUpdate)(Actor *this, int);
  bool (__fastcall *canAddRider)(Actor *this, Actor *);
  bool (__fastcall *canPickupItem)(Actor *this, const ItemStack *);
  bool (__fastcall *canBePulledIntoVehicle)(Actor *this);
  bool (__fastcall *inCaravan)(Actor *this);
  bool (__fastcall *isLeashableType)(Actor *this);
  void (__fastcall *tickLeash)(Actor *this);
  void (__fastcall *sendMotionPacketIfNeeded)(Actor *this);
  bool (__fastcall *canSynchronizeNewEntity)(Actor *this);
  bool (__fastcall *stopRiding)(Actor *this, bool, bool, bool, bool);
  void (__fastcall *startSwimming)(Actor *this);
  void (__fastcall *stopSwimming)(Actor *this);
  void (__fastcall *buildDebugInfo)(Actor *this, std::string *);
  CommandPermissionLevel (__fastcall *getCommandPermissionLevel)(Actor *this);
  AttributeInstance *(__fastcall *getMutableAttribute)(Actor *this, const Attribute *);
  const AttributeInstance *(__fastcall *getAttribute)(Actor *this, const Attribute *);
  int (__fastcall *getDeathTime)(Actor *this);
  void (__fastcall *heal)(Actor *this, int);
  bool (__fastcall *isInvertedHealAndHarm)(Actor *this);
  bool (__fastcall *canBeAffected)(Actor *this, const MobEffectInstance *);
  bool (__fastcall *canBeAffected)(Actor *this, int);
  bool (__fastcall *canBeAffectedByArrow)(Actor *this, const MobEffectInstance *);
  void (__fastcall *onEffectAdded)(Actor *this, MobEffectInstance *);
  void (__fastcall *onEffectUpdated)(Actor *this, const MobEffectInstance *);
  void (__fastcall *onEffectRemoved)(Actor *this, MobEffectInstance *);
  AnimationComponent *(__fastcall *getAnimationComponent)(Actor *this);
  void (__fastcall *openContainerComponent)(Actor *this, Player *);
  void (__fastcall *swing)(Actor *this);
  void (__fastcall *useItem)(Actor *this, ItemStackBase *, ItemUseMethod, bool);
  bool (__fastcall *hasOutputSignal)(Actor *this, unsigned __int8);
  int (__fastcall *getOutputSignal)(Actor *this);
  void (__fastcall *getDebugText)(Actor *this, std::vector<std::string> *);
  float (__fastcall *getMapDecorationRotation)(Actor *this);
  float (__fastcall *getRiderYRotation)(Actor *this, const Actor *);
  float (__fastcall *getYHeadRot)(Actor *this);
  bool (__fastcall *isWorldBuilder)(Actor *this);
  bool (__fastcall *isCreative)(Actor *this);
  bool (__fastcall *isAdventure)(Actor *this);
  bool (__fastcall *add)(Actor *this, ItemStack *);
  bool (__fastcall *drop)(Actor *this, const ItemStack *, bool);
  bool (__fastcall *getInteraction)(Actor *this, Player *, ActorInteraction *, const Vec3 *);
  bool (__fastcall *canDestroyBlock)(Actor *this, const Block *);
  void (__fastcall *setAuxValue)(Actor *this, int);
  void (__fastcall *setSize)(Actor *this, float, float);
  int (__fastcall *getLifeSpan)(Actor *this);
  void (__fastcall *onOrphan)(Actor *this);
  void (__fastcall *wobble)(Actor *this);
  bool (__fastcall *wasHurt)(Actor *this);
  void (__fastcall *startSpinAttack)(Actor *this);
  void (__fastcall *stopSpinAttack)(Actor *this);
  void (__fastcall *setDamageNearbyMobs)(Actor *this, bool);
  bool (__fastcall *hasCritBox)(Actor *this);
  bool (__fastcall *isCritHit)(Actor *this);
  void (__fastcall *renderDebugServerState)(Actor *this, const Options *);
  void (__fastcall *reloadLootTable)(Actor *this, const EquipmentTableDefinition *);
  void (__fastcall *reloadLootTable)(Actor *this);
  float (__fastcall *getDeletionDelayTimeSeconds)(Actor *this);
  void (__fastcall *kill)(Actor *this);
  void (__fastcall *die)(Actor *this, const ActorDamageSource *);
  bool (__fastcall *shouldTick)(Actor *this);
  std::shared_ptr<IActorMovementProxy> *(__fastcall *createMovementProxy)(Actor *this, std::shared_ptr<IActorMovementProxy> *result);
  void (__fastcall *updateEntitySpecificMolangVariables)(Actor *this, RenderParams *);
  bool (__fastcall *shouldTryMakeStepSound)(Actor *this);
  float (__fastcall *getNextStep)(Actor *this, const float);
  bool (__fastcall *canMakeStepSound)(Actor *this);
  void (__fastcall *outOfWorld)(Actor *this);
  bool (__fastcall *_hurt)(Actor *this, const ActorDamageSource *, int, bool, bool);
  void (__fastcall *markHurt)(Actor *this);
  void (__fastcall *readAdditionalSaveData)(Actor *this, const CompoundTag *, DataLoadHelper *);
  void (__fastcall *addAdditionalSaveData)(Actor *this, CompoundTag *);
  void (__fastcall *_playStepSound)(Actor *this, const BlockPos *, const Block *);
  void (__fastcall *_playFlySound)(Actor *this, const BlockPos *, const Block *);
  bool (__fastcall *_makeFlySound)(Actor *this);
  void (__fastcall *checkInsideBlocks)(Actor *this, float);
  void (__fastcall *pushOutOfBlocks)(Actor *this, const Vec3 *);
  bool (__fastcall *updateWaterState)(Actor *this);
  void (__fastcall *doWaterSplashEffect)(Actor *this);
  void (__fastcall *spawnTrailBubbles)(Actor *this);
  void (__fastcall *updateInsideBlock)(Actor *this);
  LootTable *(__fastcall *getLootTable)(Actor *this);
  LootTable *(__fastcall *getDefaultLootTable)(Actor *this);
  void (__fastcall *_removeRider)(Actor *this, const ActorUniqueID *, bool, bool, bool);
  void (__fastcall *_onSizeUpdated)(Actor *this);
  void (__fastcall *_doAutoAttackOnTouch)(Actor *this, Actor *);
  void (__fastcall *knockback)(Mob *this, Actor *, int, float, float, float, float, float);
  void (__fastcall *resolveDeathLoot)(Mob *this, int, const ActorDamageSource *);
  void (__fastcall *spawnAnim)(Mob *this);
  void (__fastcall *setSleeping)(Mob *this, bool);
  void (__fastcall *setSprinting)(Mob *this, bool);
  void (__fastcall *playAmbientSound)(Mob *this);
  LevelSoundEvent (__fastcall *getAmbientSound)(Mob *this);
  int (__fastcall *getAmbientSoundPostponeTicks)(Mob *this);
  int (__fastcall *getAmbientSoundPostponeTicksRange)(Mob *this);
  const TextureUVCoordinateSet *(__fastcall *getItemInHandIcon)(Mob *this, const ItemStack *, int);
  float (__fastcall *getSpeed)(Mob *this);
  void (__fastcall *setSpeed)(Mob *this, float);
  float (__fastcall *getJumpPower)(Mob *this);
  bool (__fastcall *hurtEffects)(Mob *this, const ActorDamageSource *, int, bool, bool);
  int (__fastcall *getMeleeWeaponDamageBonus)(Mob *this, Mob *);
  int (__fastcall *getMeleeKnockbackBonus)(Mob *this);
  void (__fastcall *travel)(Mob *this, IMobMovementProxy *, float, float, float);
  void (__fastcall *travel)(Mob *this, float, float, float);
  void (__fastcall *applyFinalFriction)(Mob *this, float, bool);
  void (__fastcall *updateWalkAnim)(Mob *this);
  void (__fastcall *aiStep)(Mob *this, IMobMovementProxy *);
  void (__fastcall *aiStep)(Mob *this);
  void (__fastcall *pushActors)(Mob *this);
  void (__fastcall *lookAt)(Mob *this, Actor *, float, float);
  bool (__fastcall *isLookingAtAnEntity)(Mob *this);
  bool (__fastcall *checkSpawnRules)(Mob *this, bool);
  bool (__fastcall *checkSpawnObstruction)(Mob *this);
  float (__fastcall *getAttackAnim)(Mob *this, float);
  int (__fastcall *getItemUseDuration)(Mob *this);
  float (__fastcall *getItemUseStartupProgress)(Mob *this);
  float (__fastcall *getItemUseIntervalProgress)(Mob *this);
  int (__fastcall *getItemuseIntervalAxis)(Mob *this);
  int (__fastcall *getTimeAlongSwing)(Mob *this);
  void (__fastcall *ate)(Mob *this);
  float (__fastcall *getMaxHeadXRot)(Mob *this);
  Mob *(__fastcall *getLastHurtByMob)(Mob *this);
  void (__fastcall *setLastHurtByMob)(Mob *this, Mob *);
  Player *(__fastcall *getLastHurtByPlayer)(Mob *this);
  void (__fastcall *setLastHurtByPlayer)(Mob *this, Player *);
  Mob *(__fastcall *getLastHurtMob)(Mob *this);
  void (__fastcall *setLastHurtMob)(Mob *this, Actor *);
  bool (__fastcall *isAlliedTo)(Mob *this, Mob *);
  bool (__fastcall *doHurtTarget)(Mob *this, Actor *);
  bool (__fastcall *canBeControlledByRider)(Mob *this);
  void (__fastcall *leaveCaravan)(Mob *this);
  void (__fastcall *joinCaravan)(Mob *this, Mob *);
  bool (__fastcall *hasCaravanTail)(Mob *this);
  ActorUniqueID *(__fastcall *getCaravanHead)(Mob *this, ActorUniqueID *result);
  int (__fastcall *getArmorValue)(Mob *this);
  float (__fastcall *getArmorCoverPercentage)(Mob *this);
  void (__fastcall *hurtArmor)(Mob *this, const ActorDamageSource *, int, const std::bitset<4> *);
  void (__fastcall *hurtArmor)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *hurtArmorSlot)(Mob *this, const ActorDamageSource *, int, ArmorSlot);
  void (__fastcall *setDamagedArmor)(Mob *this, ArmorSlot, const ItemStack *);
  void (__fastcall *sendArmorDamage)(Mob *this, const std::bitset<4> *);
  void (__fastcall *sendArmor)(Mob *this, const std::bitset<4> *);
  void (__fastcall *containerChanged)(Mob *this, int);
  void (__fastcall *updateEquipment)(Mob *this);
  int (__fastcall *clearEquipment)(Mob *this);
  std::vector<ItemStack const *> *(__fastcall *getAllArmor)(Mob *this, std::vector<ItemStack const *> *result);
  std::vector<int> *(__fastcall *getAllArmorID)(Mob *this, std::vector<int> *result);
  std::vector<ItemStack const *> *(__fastcall *getAllHand)(Mob *this, std::vector<ItemStack const *> *result);
  std::vector<ItemStack const *> *(__fastcall *getAllEquipment)(Mob *this, std::vector<ItemStack const *> *result);
  int (__fastcall *getArmorTypeHash)(Mob *this);
  void (__fastcall *dropEquipmentOnDeath)(Mob *this);
  void (__fastcall *dropEquipmentOnDeath)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *clearVanishEnchantedItemsOnDeath)(Mob *this);
  void (__fastcall *sendInventory)(Mob *this, bool);
  int (__fastcall *getDamageAfterMagicAbsorb)(Mob *this, const ActorDamageSource *, int);
  bool (__fastcall *createAIGoals)(Mob *this);
  void (__fastcall *onBorn)(Mob *this, Actor *, Actor *);
  bool (__fastcall *setItemSlot)(Mob *this, EquipmentSlot, const ItemStack *);
  void (__fastcall *setTransitioningSitting)(Mob *this, bool);
  void (__fastcall *attackAnimation)(Mob *this, Actor *, float);
  int (__fastcall *getAttackTime)(Mob *this);
  float (__fastcall *_getWalkTargetValue)(Mob *this, const BlockPos *);
  bool (__fastcall *canExistWhenDisallowMob)(Mob *this);
  bool (__fastcall *useNewAi)(Mob *this);
  void (__fastcall *ascendLadder)(Mob *this);
  void (__fastcall *ascendScaffolding)(Mob *this);
  void (__fastcall *descendScaffolding)(Mob *this);
  void (__fastcall *dropContainer)(Mob *this);
  std::unique_ptr<BodyControl> *(__fastcall *initBodyControl)(Mob *this, std::unique_ptr<BodyControl> *result);
  void (__fastcall *jumpFromGround)(Mob *this, IMobMovementProxy *);
  void (__fastcall *jumpFromGround)(Mob *this);
  void (__fastcall *updateAi)(Mob *this);
  void (__fastcall *newServerAiStep)(Mob *this);
  void (__fastcall *_serverAiMobStep)(Mob *this);
  int (__fastcall *getDamageAfterEnchantReduction)(Mob *this, const ActorDamageSource *, int);
  int (__fastcall *getDamageAfterArmorAbsorb)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *dropBags)(Mob *this);
  void (__fastcall *tickDeath)(Mob *this);
  void (__fastcall *updateGliding)(Mob *this);
  bool (__fastcall *_allowAscendingScaffolding)(Mob *this);
  void (__fastcall *prepareRegion)(Player *this, ChunkSource *);
  void (__fastcall *destroyRegion)(Player *this);
  void (__fastcall *suspendRegion)(Player *this);
  void (__fastcall *resendAllChunks)(Player *this);
  void (__fastcall *_fireWillChangeDimension)(Player *this);
  void (__fastcall *_fireDimensionChanged)(Player *this);
  void (__fastcall *changeDimensionWithCredits)(Player *this, AutomaticID<Dimension,int>);
  int (__fastcall *tickWorld)(Player *this, const Tick *);
  void (__fastcall *frameUpdate)(Player *this, FrameUpdateContextBase *);
  const std::vector<ChunkPos> *(__fastcall *getTickingOffsets)(Player *this);
  void (__fastcall *moveView)(Player *this);
  void (__fastcall *setName)(Player *this, const std::string *);
  void (__fastcall *checkMovementStats)(Player *this, const Vec3 *);
  StructureFeatureType (__fastcall *getCurrentStructureFeature)(Player *this);
  bool (__fastcall *isAutoJumpEnabled)(Player *this);
  void (__fastcall *respawn)(Player *this);
  void (__fastcall *resetRot)(Player *this);
  void (__fastcall *resetPos)(Player *this, bool);
  bool (__fastcall *isInTrialMode)(Player *this);
  bool (__fastcall *hasResource)(Player *this, int);
  void (__fastcall *completeUsingItem)(Player *this);
  void (__fastcall *setPermissions)(Player *this, CommandPermissionLevel);
  void (__fastcall *startDestroying)(Player *this);
  void (__fastcall *stopDestroying)(Player *this);
  void (__fastcall *openPortfolio)(Player *this);
  void (__fastcall *openBook)(Player *this, int, bool, int, BlockActor *);
  void (__fastcall *openTrading)(Player *this, const ActorUniqueID *, bool);
  bool (__fastcall *canOpenContainerScreen)(Player *this);
  void (__fastcall *openChalkboard)(Player *this, ChalkboardBlockActor *, bool);
  void (__fastcall *openNpcInteractScreen)(Player *this, Actor *);
  bool (__fastcall *openInventory)(Player *this);
  void (__fastcall *displayChatMessage)(Player *this, const std::string *, const std::string *);
  void (__fastcall *displayClientMessage)(Player *this, const std::string *);
  void (__fastcall *displayTextObjectMessage)(Player *this, const TextObjectRoot *);
  void (__fastcall *displayTextObjectWhisperMessage)(Player *this, const ResolvedTextObject *, const std::string *, const std::string *);
  void (__fastcall *displayWhisperMessage)(Player *this, const std::string *, const std::string *, const std::string *, const std::string *);
  BedSleepingResult (__fastcall *startSleepInBed)(Player *this, const BlockPos *);
  void (__fastcall *stopSleepInBed)(Player *this, bool, bool);
  bool (__fastcall *canStartSleepInBed)(Player *this);
  int (__fastcall *getSleepTimer)(Player *this);
  int (__fastcall *getPreviousTickSleepTimer)(Player *this);
  void (__fastcall *openSign)(Player *this, const BlockPos *);
  void (__fastcall *playEmote)(Player *this, const std::string *);
  bool (__fastcall *isHostingPlayer)(Player *this);
  bool (__fastcall *isLoading)(Player *this);
  bool (__fastcall *isPlayerInitialized)(Player *this);
  void (__fastcall *stopLoading)(Player *this);
  void (__fastcall *registerTrackedBoss)(Player *this, ActorUniqueID);
  void (__fastcall *unRegisterTrackedBoss)(Player *this, ActorUniqueID);
  void (__fastcall *setPlayerGameType)(Player *this, GameType);
  void (__fastcall *initHUDContainerManager)(Player *this);
  void (__fastcall *_crit)(Player *this, Actor *);
  IMinecraftEventing *(__fastcall *getEventing)(Player *this);
  unsigned int (__fastcall *getUserId)(Player *this);
  void (__fastcall *sendEventPacket)(Player *this, EventPacket *);
  void (__fastcall *addExperience)(Player *this, int);
  void (__fastcall *addLevels)(Player *this, int);
  void (__fastcall *setContainerData)(Player *this, IContainerManager *, int, int);
  void (__fastcall *slotChanged)(Player *this, IContainerManager *, Container *, int, const ItemStack *, const ItemStack *, bool);
  void (__fastcall *inventoryChanged)(Player *this, Container *, int, const ItemStack *, const ItemStack *, bool);
  void (__fastcall *refreshContainer)(Player *this, IContainerManager *);
  void (__fastcall *deleteContainerManager)(Player *this);
  void (__fastcall *setFieldOfViewModifier)(Player *this, float);
  bool (__fastcall *is2DPositionRelevant)(Player *this, AutomaticID<Dimension,int>, const BlockPos *);
  bool (__fastcall *isEntityRelevant)(Player *this, const Actor *);
  bool (__fastcall *isTeacher)(Player *this);
  void (__fastcall *onSuspension)(Player *this);
  void (__fastcall *onLinkedSlotsChanged)(Player *this);
  void (__fastcall *startCooldown)(Player *this, const Item *);
  int (__fastcall *getItemCooldownLeft)(Player *this, const std::string *);
  bool (__fastcall *isItemInCooldown)(Player *this, const std::string *);
  void (__fastcall *sendInventoryTransaction)(Player *this, const InventoryTransaction *);
  void (__fastcall *sendComplexInventoryTransaction)(Player *this, std::unique_ptr<ComplexInventoryTransaction>);
  void (__fastcall *sendNetworkPacket)(Player *this, Packet *);
  PlayerEventCoordinator *(__fastcall *getPlayerEventCoordinator)(Player *this);
  MoveInputHandler *(__fastcall *getMoveInputHandler)(Player *this);
  InputMode (__fastcall *getInputMode)(Player *this);
  ClientPlayMode (__fastcall *getPlayMode)(Player *this);
  void (__fastcall *reportMovementTelemetry)(Player *this, const MovementEventType);
  bool (__fastcall *getCamereDeparted)(Player *this);
  bool (__fastcall *getThirdPersonPerspective)(Player *this);
  Vec2 *(__fastcall *getRotationToCamera)(Player *this, Vec2 *result);
  void (__fastcall *onMovePlayerPacketNormal)(Player *this, const Vec3 *, const Vec2 *, float);
};

# PoolElementStructurePiece_vtbl

struct /*VFT*/ PoolElementStructurePiece_vtbl
{
  void (__fastcall *~StructurePiece)(StructurePiece *this);
  void (__fastcall *moveBoundingBox)(StructurePiece *this, int, int, int);
  PoolElementStructurePiece *(__fastcall *asPoolElement)(StructurePiece *this);
  StructurePieceType (__fastcall *getType)(StructurePiece *this);
  void (__fastcall *addChildren)(StructurePiece *this, StructurePiece *, std::vector<std::unique_ptr<StructurePiece>> *, Random *);
  bool (__fastcall *postProcess)(StructurePiece *this, BlockSource *, Random *, const BoundingBox *);
  void (__fastcall *postProcessMobsAt)(StructurePiece *this, BlockSource *, Random *, const BoundingBox *);
  int (__fastcall *getWorldX)(StructurePiece *this, int, int);
  int (__fastcall *getWorldZ)(StructurePiece *this, int, int);
  void (__fastcall *placeBlock)(StructurePiece *this, BlockSource *, const Block *, int, int, int, const BoundingBox *);
  void (__fastcall *generateBox)(StructurePiece *this, BlockSource *, const BoundingBox *, int, int, int, int, int, int, const Block *, const Block *, bool);
  void (__fastcall *addHardcodedSpawnAreas)(StructurePiece *this, LevelChunk *);
  int (__fastcall *generateHeightAtPosition)(PoolElementStructurePiece *this, const BlockPos *, Dimension *, BlockVolume *, std::unordered_map<ChunkPos,std::unique_ptr<std::vector<short>>> *);
  const Block *(__fastcall *getSupportBlock)(PoolElementStructurePiece *this, BlockSource *, const BlockPos *, const Block *);
  const Block *(__fastcall *getBeardStabilizeBlock)(PoolElementStructurePiece *this, const Block *);
  bool (__fastcall *_needsPostProcessing)(PoolElementStructurePiece *this, BlockSource *);
};

# Panda_vtbl

struct /*VFT*/ Panda_vtbl
{
  bool (__fastcall *hasComponent)(Actor *this, const HashedString *);
  void (__fastcall *reloadHardcoded)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *reloadHardcodedClient)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *initializeComponents)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *reloadComponents)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *_serverInitItemStackIds)(Actor *this);
  void (__fastcall *_doInitialMove)(Actor *this);
  bool (__fastcall *checkAllSensitiveWords)(Actor *this);
  bool (__fastcall *checkNameTag)(Actor *this);
  void (__fastcall *~Actor)(Actor *this);
  void (__fastcall *reset)(Actor *this);
  int (__fastcall *getOnDeathExperience)(Actor *this);
  ActorType (__fastcall *getOwnerEntityType)(Actor *this);
  void (__fastcall *remove)(Actor *this);
  void (__fastcall *setPos)(Actor *this, const Vec3 *);
  const PredictedMovementValues *(__fastcall *getPredictedMovementValues)(Actor *this);
  const Vec3 *(__fastcall *getPos)(Actor *this);
  const Vec3 *(__fastcall *getPosOld)(Actor *this);
  const Vec3 *(__fastcall *getPosExtrapolated)(Actor *this, const Vec3 *result, float);
  Vec3 *(__fastcall *getAttachPos)(Actor *this, Vec3 *result, ActorLocation, float);
  Vec3 *(__fastcall *getFiringPos)(Actor *this, Vec3 *result);
  void (__fastcall *setRot)(Actor *this, const Vec2 *);
  void (__fastcall *move)(Actor *this, IActorMovementProxy *, const Vec3 *);
  void (__fastcall *move)(Actor *this, const Vec3 *);
  Vec3 *(__fastcall *getInterpolatedRidingPosition)(Actor *this, Vec3 *result, float);
  float (__fastcall *getInterpolatedBodyRot)(Actor *this, float);
  float (__fastcall *getInterpolatedHeadRot)(Actor *this, float);
  float (__fastcall *getInterpolatedBodyYaw)(Actor *this, float);
  float (__fastcall *getYawSpeedInDegreesPerSecond)(Actor *this);
  float (__fastcall *getInterpolatedWalkAnimSpeed)(Actor *this, float);
  Vec3 *(__fastcall *getInterpolatedRidingOffset)(Actor *this, Vec3 *result, float);
  void (__fastcall *checkBlockCollisions)(Actor *this);
  void (__fastcall *checkBlockCollisions)(Actor *this, const AABB *, std::function<void __cdecl(BlockSource &,Block const &,BlockPos const &,Actor &)>);
  bool (__fastcall *isFireImmune)(Actor *this);
  bool (__fastcall *breaksFallingBlocks)(Actor *this);
  void (__fastcall *blockedByShield)(Actor *this, const ActorDamageSource *, Actor *);
  void (__fastcall *teleportTo)(Actor *this, const Vec3 *, bool, int, int, const ActorUniqueID *);
  bool (__fastcall *tryTeleportTo)(Actor *this, const Vec3 *, bool, bool, int, int);
  void (__fastcall *chorusFruitTeleport)(Actor *this, Vec3 *);
  void (__fastcall *lerpTo)(Actor *this, const Vec3 *, const Vec2 *, int);
  void (__fastcall *lerpMotion)(Actor *this, const Vec3 *);
  std::unique_ptr<AddActorBasePacket> *(__fastcall *getAddPacket)(Actor *this, std::unique_ptr<AddActorBasePacket> *result);
  void (__fastcall *normalTick)(Actor *this);
  void (__fastcall *baseTick)(Actor *this);
  void (__fastcall *rideTick)(Actor *this);
  void (__fastcall *positionRider)(Actor *this, Actor *, float);
  float (__fastcall *getRidingHeight)(Actor *this);
  bool (__fastcall *startRiding)(Actor *this, Actor *);
  void (__fastcall *addRider)(Actor *this, Actor *);
  void (__fastcall *flagRiderToRemove)(Actor *this, Actor *);
  std::string *(__fastcall *getExitTip)(Actor *this, std::string *result, const std::string *, InputMode);
  bool (__fastcall *intersects)(Actor *this, const Vec3 *, const Vec3 *);
  bool (__fastcall *isFree)(Actor *this, const Vec3 *);
  bool (__fastcall *isFree)(Actor *this, const Vec3 *, float);
  bool (__fastcall *isInWall)(Actor *this);
  bool (__fastcall *isInvisible)(Actor *this);
  bool (__fastcall *canShowNameTag)(Actor *this);
  bool (__fastcall *canExistInPeaceful)(Actor *this);
  void (__fastcall *setNameTagVisible)(Actor *this, bool);
  const std::string *(__fastcall *getNameTag)(Actor *this);
  unsigned __int64 (__fastcall *getNameTagAsHash)(Actor *this);
  std::string *(__fastcall *getFormattedNameTag)(Actor *this, std::string *result);
  void (__fastcall *filterFormattedNameTag)(Actor *this, const UIProfanityContext *);
  void (__fastcall *setNameTag)(Actor *this, const std::string *);
  bool (__fastcall *getAlwaysShowNameTag)(Actor *this);
  void (__fastcall *setScoreTag)(Actor *this, const std::string *);
  const std::string *(__fastcall *getScoreTag)(Actor *this);
  bool (__fastcall *isInWater)(Actor *this);
  bool (__fastcall *hasEnteredWater)(Actor *this);
  bool (__fastcall *isImmersedInWater)(Actor *this);
  bool (__fastcall *isInWaterOrRain)(Actor *this);
  bool (__fastcall *isInLava)(Actor *this);
  bool (__fastcall *isUnderLiquid)(Actor *this, MaterialType);
  bool (__fastcall *isOverWater)(Actor *this);
  void (__fastcall *makeStuckInBlock)(Actor *this, const Vec3 *);
  float (__fastcall *getCameraOffset)(Actor *this);
  float (__fastcall *getShadowHeightOffs)(Actor *this);
  float (__fastcall *getShadowRadius)(Actor *this);
  Vec3 *(__fastcall *getHeadLookVector)(Actor *this, Vec3 *result, float);
  bool (__fastcall *canSeeInvisible)(Actor *this);
  bool (__fastcall *canSee)(Actor *this, const Vec3 *);
  bool (__fastcall *canSee)(Actor *this, const Actor *);
  bool (__fastcall *isSkyLit)(Actor *this, float);
  float (__fastcall *getBrightness)(Actor *this, float);
  bool (__fastcall *interactPreventDefault)(Actor *this);
  void (__fastcall *playerTouch)(Actor *this, Player *);
  void (__fastcall *onAboveBubbleColumn)(Actor *this, const bool);
  void (__fastcall *onInsideBubbleColumn)(Actor *this, const bool);
  bool (__fastcall *isImmobile)(Actor *this);
  bool (__fastcall *isSilent)(Actor *this);
  bool (__fastcall *isPickable)(Actor *this);
  bool (__fastcall *isFishable)(Actor *this);
  bool (__fastcall *isSleeping)(Actor *this);
  bool (__fastcall *isShootable)(Actor *this);
  void (__fastcall *setSneaking)(Actor *this, bool);
  bool (__fastcall *isBlocking)(Actor *this);
  bool (__fastcall *isDamageBlocked)(Actor *this, const ActorDamageSource *);
  bool (__fastcall *isAlive)(Actor *this);
  bool (__fastcall *isOnFire)(Actor *this);
  bool (__fastcall *isOnHotBlock)(Actor *this);
  bool (__fastcall *isCreativeModeAllowed)(Actor *this);
  bool (__fastcall *isSurfaceMob)(Actor *this);
  bool (__fastcall *isTargetable)(Actor *this);
  bool (__fastcall *isLocalPlayer)(Actor *this);
  bool (__fastcall *isPlayer)(Actor *this);
  bool (__fastcall *canAttack)(Actor *this, Actor *, bool);
  void (__fastcall *setTarget)(Actor *this, Actor *);
  Actor *(__fastcall *findAttackTarget)(Actor *this);
  bool (__fastcall *isValidTarget)(Actor *this, Actor *);
  bool (__fastcall *attack)(Actor *this, Actor *);
  void (__fastcall *performRangedAttack)(Actor *this, Actor *, float);
  void (__fastcall *adjustDamageAmount)(Actor *this, int *);
  int (__fastcall *getEquipmentCount)(Actor *this);
  void (__fastcall *setOwner)(Actor *this, const ActorUniqueID);
  void (__fastcall *setSitting)(Actor *this, bool);
  void (__fastcall *onTame)(Actor *this);
  void (__fastcall *onFailedTame)(Actor *this);
  int (__fastcall *getInventorySize)(Actor *this);
  int (__fastcall *getEquipSlots)(Actor *this);
  int (__fastcall *getChestSlots)(Actor *this);
  void (__fastcall *setStanding)(Actor *this, bool);
  bool (__fastcall *canPowerJump)(Actor *this);
  void (__fastcall *setCanPowerJump)(Actor *this, bool);
  bool (__fastcall *isJumping)(Actor *this);
  bool (__fastcall *isEnchanted)(Actor *this);
  void (__fastcall *rideJumped)(Actor *this);
  void (__fastcall *rideLanded)(Actor *this, const Vec3 *, const Vec3 *);
  bool (__fastcall *shouldRender)(Actor *this);
  bool (__fastcall *isInvulnerableTo)(Actor *this, const ActorDamageSource *);
  ActorDamageCause (__fastcall *getBlockDamageCause)(Actor *this, const Block *);
  void (__fastcall *actuallyHurt)(Actor *this, int, const ActorDamageSource *, bool);
  void (__fastcall *animateHurt)(Actor *this);
  bool (__fastcall *doFireHurt)(Actor *this, int);
  void (__fastcall *onLightningHit)(Actor *this);
  void (__fastcall *onBounceStarted)(Actor *this, const BlockPos *, const Block *);
  void (__fastcall *feed)(Actor *this, int);
  void (__fastcall *handleEntityEvent)(Actor *this, ActorEvent, int);
  float (__fastcall *getPickRadius)(Actor *this);
  const HashedString *(__fastcall *getActorRendererId)(Actor *this);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const ItemStack *, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const Block *, int, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const Block *, int);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, int, int, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, int, int);
  void (__fastcall *despawn)(Actor *this);
  void (__fastcall *killed)(Actor *this, Actor *);
  void (__fastcall *awardKillScore)(Actor *this, Actor *, int);
  void (__fastcall *setArmor)(Actor *this, ArmorSlot, const ItemStack *);
  const ItemStack *(__fastcall *getArmor)(Actor *this, ArmorSlot);
  ArmorMaterialType (__fastcall *getArmorMaterialTypeInSlot)(Actor *this, ArmorSlot);
  ArmorTextureType (__fastcall *getArmorMaterialTextureTypeInSlot)(Actor *this, ArmorSlot);
  float (__fastcall *getArmorColorInSlot)(Actor *this, ArmorSlot, int);
  const ItemStack *(__fastcall *getEquippedSlot)(Actor *this, EquipmentSlot);
  void (__fastcall *setEquippedSlot)(Actor *this, EquipmentSlot, const ItemStack *);
  const ItemStack *(__fastcall *getCarriedItem)(Actor *this);
  void (__fastcall *setCarriedItem)(Actor *this, const ItemStack *);
  void (__fastcall *setOffhandSlot)(Actor *this, const ItemStack *);
  const ItemStack *(__fastcall *getEquippedTotem)(Actor *this);
  bool (__fastcall *consumeTotem)(Actor *this);
  bool (__fastcall *save)(Actor *this, CompoundTag *);
  void (__fastcall *saveWithoutId)(Actor *this, CompoundTag *);
  bool (__fastcall *load)(Actor *this, const CompoundTag *, DataLoadHelper *);
  void (__fastcall *loadLinks)(Actor *this, const CompoundTag *, std::vector<ActorLink> *, DataLoadHelper *);
  ActorType (__fastcall *getEntityTypeId)(Actor *this);
  const HashedString *(__fastcall *queryEntityRenderer)(Actor *this);
  ActorUniqueID *(__fastcall *getSourceUniqueID)(Actor *this, ActorUniqueID *result);
  void (__fastcall *setOnFire)(Actor *this, int);
  AABB *(__fastcall *getHandleWaterAABB)(Actor *this, AABB *result);
  void (__fastcall *handleInsidePortal)(Actor *this, const BlockPos *);
  int (__fastcall *getPortalCooldown)(Actor *this);
  int (__fastcall *getPortalWaitTime)(Actor *this);
  AutomaticID<Dimension,int> *(__fastcall *getDimensionId)(Actor *this, AutomaticID<Dimension,int> *result);
  bool (__fastcall *canChangeDimensions)(Actor *this);
  void (__fastcall *changeDimension)(Actor *this, const ChangeDimensionPacket *);
  void (__fastcall *changeDimension)(Actor *this, AutomaticID<Dimension,int>, bool);
  ActorUniqueID *(__fastcall *getControllingPlayer)(Actor *this, ActorUniqueID *result);
  void (__fastcall *checkFallDamage)(Actor *this, float, bool);
  void (__fastcall *causeFallDamage)(Actor *this, float);
  void (__fastcall *handleFallDistanceOnServer)(Actor *this, float, bool);
  void (__fastcall *playSynchronizedSound)(Actor *this, LevelSoundEvent, const Vec3 *, int, bool);
  void (__fastcall *playSynchronizedSound)(Actor *this, LevelSoundEvent, const Vec3 *, const Block *, bool);
  void (__fastcall *onSynchedDataUpdate)(Actor *this, int);
  bool (__fastcall *canAddRider)(Actor *this, Actor *);
  bool (__fastcall *canPickupItem)(Actor *this, const ItemStack *);
  bool (__fastcall *canBePulledIntoVehicle)(Actor *this);
  bool (__fastcall *inCaravan)(Actor *this);
  bool (__fastcall *isLeashableType)(Actor *this);
  void (__fastcall *tickLeash)(Actor *this);
  void (__fastcall *sendMotionPacketIfNeeded)(Actor *this);
  bool (__fastcall *canSynchronizeNewEntity)(Actor *this);
  bool (__fastcall *stopRiding)(Actor *this, bool, bool, bool, bool);
  void (__fastcall *startSwimming)(Actor *this);
  void (__fastcall *stopSwimming)(Actor *this);
  void (__fastcall *buildDebugInfo)(Actor *this, std::string *);
  CommandPermissionLevel (__fastcall *getCommandPermissionLevel)(Actor *this);
  AttributeInstance *(__fastcall *getMutableAttribute)(Actor *this, const Attribute *);
  const AttributeInstance *(__fastcall *getAttribute)(Actor *this, const Attribute *);
  int (__fastcall *getDeathTime)(Actor *this);
  void (__fastcall *heal)(Actor *this, int);
  bool (__fastcall *isInvertedHealAndHarm)(Actor *this);
  bool (__fastcall *canBeAffected)(Actor *this, const MobEffectInstance *);
  bool (__fastcall *canBeAffected)(Actor *this, int);
  bool (__fastcall *canBeAffectedByArrow)(Actor *this, const MobEffectInstance *);
  void (__fastcall *onEffectAdded)(Actor *this, MobEffectInstance *);
  void (__fastcall *onEffectUpdated)(Actor *this, const MobEffectInstance *);
  void (__fastcall *onEffectRemoved)(Actor *this, MobEffectInstance *);
  AnimationComponent *(__fastcall *getAnimationComponent)(Actor *this);
  void (__fastcall *openContainerComponent)(Actor *this, Player *);
  void (__fastcall *swing)(Actor *this);
  void (__fastcall *useItem)(Actor *this, ItemStackBase *, ItemUseMethod, bool);
  bool (__fastcall *hasOutputSignal)(Actor *this, unsigned __int8);
  int (__fastcall *getOutputSignal)(Actor *this);
  void (__fastcall *getDebugText)(Actor *this, std::vector<std::string> *);
  float (__fastcall *getMapDecorationRotation)(Actor *this);
  float (__fastcall *getRiderYRotation)(Actor *this, const Actor *);
  float (__fastcall *getYHeadRot)(Actor *this);
  bool (__fastcall *isWorldBuilder)(Actor *this);
  bool (__fastcall *isCreative)(Actor *this);
  bool (__fastcall *isAdventure)(Actor *this);
  bool (__fastcall *add)(Actor *this, ItemStack *);
  bool (__fastcall *drop)(Actor *this, const ItemStack *, bool);
  bool (__fastcall *getInteraction)(Actor *this, Player *, ActorInteraction *, const Vec3 *);
  bool (__fastcall *canDestroyBlock)(Actor *this, const Block *);
  void (__fastcall *setAuxValue)(Actor *this, int);
  void (__fastcall *setSize)(Actor *this, float, float);
  int (__fastcall *getLifeSpan)(Actor *this);
  void (__fastcall *onOrphan)(Actor *this);
  void (__fastcall *wobble)(Actor *this);
  bool (__fastcall *wasHurt)(Actor *this);
  void (__fastcall *startSpinAttack)(Actor *this);
  void (__fastcall *stopSpinAttack)(Actor *this);
  void (__fastcall *setDamageNearbyMobs)(Actor *this, bool);
  bool (__fastcall *hasCritBox)(Actor *this);
  bool (__fastcall *isCritHit)(Actor *this);
  void (__fastcall *renderDebugServerState)(Actor *this, const Options *);
  void (__fastcall *reloadLootTable)(Actor *this, const EquipmentTableDefinition *);
  void (__fastcall *reloadLootTable)(Actor *this);
  float (__fastcall *getDeletionDelayTimeSeconds)(Actor *this);
  void (__fastcall *kill)(Actor *this);
  void (__fastcall *die)(Actor *this, const ActorDamageSource *);
  bool (__fastcall *shouldTick)(Actor *this);
  std::shared_ptr<IActorMovementProxy> *(__fastcall *createMovementProxy)(Actor *this, std::shared_ptr<IActorMovementProxy> *result);
  void (__fastcall *updateEntitySpecificMolangVariables)(Actor *this, RenderParams *);
  bool (__fastcall *shouldTryMakeStepSound)(Actor *this);
  float (__fastcall *getNextStep)(Actor *this, const float);
  bool (__fastcall *canMakeStepSound)(Actor *this);
  void (__fastcall *outOfWorld)(Actor *this);
  bool (__fastcall *_hurt)(Actor *this, const ActorDamageSource *, int, bool, bool);
  void (__fastcall *markHurt)(Actor *this);
  void (__fastcall *readAdditionalSaveData)(Actor *this, const CompoundTag *, DataLoadHelper *);
  void (__fastcall *addAdditionalSaveData)(Actor *this, CompoundTag *);
  void (__fastcall *_playStepSound)(Actor *this, const BlockPos *, const Block *);
  void (__fastcall *_playFlySound)(Actor *this, const BlockPos *, const Block *);
  bool (__fastcall *_makeFlySound)(Actor *this);
  void (__fastcall *checkInsideBlocks)(Actor *this, float);
  void (__fastcall *pushOutOfBlocks)(Actor *this, const Vec3 *);
  bool (__fastcall *updateWaterState)(Actor *this);
  void (__fastcall *doWaterSplashEffect)(Actor *this);
  void (__fastcall *spawnTrailBubbles)(Actor *this);
  void (__fastcall *updateInsideBlock)(Actor *this);
  LootTable *(__fastcall *getLootTable)(Actor *this);
  LootTable *(__fastcall *getDefaultLootTable)(Actor *this);
  void (__fastcall *_removeRider)(Actor *this, const ActorUniqueID *, bool, bool, bool);
  void (__fastcall *_onSizeUpdated)(Actor *this);
  void (__fastcall *_doAutoAttackOnTouch)(Actor *this, Actor *);
  void (__fastcall *knockback)(Mob *this, Actor *, int, float, float, float, float, float);
  void (__fastcall *resolveDeathLoot)(Mob *this, int, const ActorDamageSource *);
  void (__fastcall *spawnAnim)(Mob *this);
  void (__fastcall *setSleeping)(Mob *this, bool);
  void (__fastcall *setSprinting)(Mob *this, bool);
  void (__fastcall *playAmbientSound)(Mob *this);
  LevelSoundEvent (__fastcall *getAmbientSound)(Mob *this);
  int (__fastcall *getAmbientSoundPostponeTicks)(Mob *this);
  int (__fastcall *getAmbientSoundPostponeTicksRange)(Mob *this);
  const TextureUVCoordinateSet *(__fastcall *getItemInHandIcon)(Mob *this, const ItemStack *, int);
  float (__fastcall *getSpeed)(Mob *this);
  void (__fastcall *setSpeed)(Mob *this, float);
  float (__fastcall *getJumpPower)(Mob *this);
  bool (__fastcall *hurtEffects)(Mob *this, const ActorDamageSource *, int, bool, bool);
  int (__fastcall *getMeleeWeaponDamageBonus)(Mob *this, Mob *);
  int (__fastcall *getMeleeKnockbackBonus)(Mob *this);
  void (__fastcall *travel)(Mob *this, IMobMovementProxy *, float, float, float);
  void (__fastcall *travel)(Mob *this, float, float, float);
  void (__fastcall *applyFinalFriction)(Mob *this, float, bool);
  void (__fastcall *updateWalkAnim)(Mob *this);
  void (__fastcall *aiStep)(Mob *this, IMobMovementProxy *);
  void (__fastcall *aiStep)(Mob *this);
  void (__fastcall *pushActors)(Mob *this);
  void (__fastcall *lookAt)(Mob *this, Actor *, float, float);
  bool (__fastcall *isLookingAtAnEntity)(Mob *this);
  bool (__fastcall *checkSpawnRules)(Mob *this, bool);
  bool (__fastcall *checkSpawnObstruction)(Mob *this);
  float (__fastcall *getAttackAnim)(Mob *this, float);
  int (__fastcall *getItemUseDuration)(Mob *this);
  float (__fastcall *getItemUseStartupProgress)(Mob *this);
  float (__fastcall *getItemUseIntervalProgress)(Mob *this);
  int (__fastcall *getItemuseIntervalAxis)(Mob *this);
  int (__fastcall *getTimeAlongSwing)(Mob *this);
  void (__fastcall *ate)(Mob *this);
  float (__fastcall *getMaxHeadXRot)(Mob *this);
  Mob *(__fastcall *getLastHurtByMob)(Mob *this);
  void (__fastcall *setLastHurtByMob)(Mob *this, Mob *);
  Player *(__fastcall *getLastHurtByPlayer)(Mob *this);
  void (__fastcall *setLastHurtByPlayer)(Mob *this, Player *);
  Mob *(__fastcall *getLastHurtMob)(Mob *this);
  void (__fastcall *setLastHurtMob)(Mob *this, Actor *);
  bool (__fastcall *isAlliedTo)(Mob *this, Mob *);
  bool (__fastcall *doHurtTarget)(Mob *this, Actor *);
  bool (__fastcall *canBeControlledByRider)(Mob *this);
  void (__fastcall *leaveCaravan)(Mob *this);
  void (__fastcall *joinCaravan)(Mob *this, Mob *);
  bool (__fastcall *hasCaravanTail)(Mob *this);
  ActorUniqueID *(__fastcall *getCaravanHead)(Mob *this, ActorUniqueID *result);
  int (__fastcall *getArmorValue)(Mob *this);
  float (__fastcall *getArmorCoverPercentage)(Mob *this);
  void (__fastcall *hurtArmor)(Mob *this, const ActorDamageSource *, int, const std::bitset<4> *);
  void (__fastcall *hurtArmor)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *hurtArmorSlot)(Mob *this, const ActorDamageSource *, int, ArmorSlot);
  void (__fastcall *setDamagedArmor)(Mob *this, ArmorSlot, const ItemStack *);
  void (__fastcall *sendArmorDamage)(Mob *this, const std::bitset<4> *);
  void (__fastcall *sendArmor)(Mob *this, const std::bitset<4> *);
  void (__fastcall *containerChanged)(Mob *this, int);
  void (__fastcall *updateEquipment)(Mob *this);
  int (__fastcall *clearEquipment)(Mob *this);
  std::vector<ItemStack const *> *(__fastcall *getAllArmor)(Mob *this, std::vector<ItemStack const *> *result);
  std::vector<int> *(__fastcall *getAllArmorID)(Mob *this, std::vector<int> *result);
  std::vector<ItemStack const *> *(__fastcall *getAllHand)(Mob *this, std::vector<ItemStack const *> *result);
  std::vector<ItemStack const *> *(__fastcall *getAllEquipment)(Mob *this, std::vector<ItemStack const *> *result);
  int (__fastcall *getArmorTypeHash)(Mob *this);
  void (__fastcall *dropEquipmentOnDeath)(Mob *this);
  void (__fastcall *dropEquipmentOnDeath)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *clearVanishEnchantedItemsOnDeath)(Mob *this);
  void (__fastcall *sendInventory)(Mob *this, bool);
  int (__fastcall *getDamageAfterMagicAbsorb)(Mob *this, const ActorDamageSource *, int);
  bool (__fastcall *createAIGoals)(Mob *this);
  void (__fastcall *onBorn)(Mob *this, Actor *, Actor *);
  bool (__fastcall *setItemSlot)(Mob *this, EquipmentSlot, const ItemStack *);
  void (__fastcall *setTransitioningSitting)(Mob *this, bool);
  void (__fastcall *attackAnimation)(Mob *this, Actor *, float);
  int (__fastcall *getAttackTime)(Mob *this);
  float (__fastcall *_getWalkTargetValue)(Mob *this, const BlockPos *);
  bool (__fastcall *canExistWhenDisallowMob)(Mob *this);
  bool (__fastcall *useNewAi)(Mob *this);
  void (__fastcall *ascendLadder)(Mob *this);
  void (__fastcall *ascendScaffolding)(Mob *this);
  void (__fastcall *descendScaffolding)(Mob *this);
  void (__fastcall *dropContainer)(Mob *this);
  std::unique_ptr<BodyControl> *(__fastcall *initBodyControl)(Mob *this, std::unique_ptr<BodyControl> *result);
  void (__fastcall *jumpFromGround)(Mob *this, IMobMovementProxy *);
  void (__fastcall *jumpFromGround)(Mob *this);
  void (__fastcall *updateAi)(Mob *this);
  void (__fastcall *newServerAiStep)(Mob *this);
  void (__fastcall *_serverAiMobStep)(Mob *this);
  int (__fastcall *getDamageAfterEnchantReduction)(Mob *this, const ActorDamageSource *, int);
  int (__fastcall *getDamageAfterArmorAbsorb)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *dropBags)(Mob *this);
  void (__fastcall *tickDeath)(Mob *this);
  void (__fastcall *updateGliding)(Mob *this);
  bool (__fastcall *_allowAscendingScaffolding)(Mob *this);
};

# Parrot_vtbl

struct /*VFT*/ Parrot_vtbl
{
  bool (__fastcall *hasComponent)(Actor *this, const HashedString *);
  void (__fastcall *reloadHardcoded)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *reloadHardcodedClient)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *initializeComponents)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *reloadComponents)(Actor *this, Actor::InitializationMethod, const VariantParameterList *);
  void (__fastcall *_serverInitItemStackIds)(Actor *this);
  void (__fastcall *_doInitialMove)(Actor *this);
  bool (__fastcall *checkAllSensitiveWords)(Actor *this);
  bool (__fastcall *checkNameTag)(Actor *this);
  void (__fastcall *~Actor)(Actor *this);
  void (__fastcall *reset)(Actor *this);
  int (__fastcall *getOnDeathExperience)(Actor *this);
  ActorType (__fastcall *getOwnerEntityType)(Actor *this);
  void (__fastcall *remove)(Actor *this);
  void (__fastcall *setPos)(Actor *this, const Vec3 *);
  const PredictedMovementValues *(__fastcall *getPredictedMovementValues)(Actor *this);
  const Vec3 *(__fastcall *getPos)(Actor *this);
  const Vec3 *(__fastcall *getPosOld)(Actor *this);
  const Vec3 *(__fastcall *getPosExtrapolated)(Actor *this, const Vec3 *result, float);
  Vec3 *(__fastcall *getAttachPos)(Actor *this, Vec3 *result, ActorLocation, float);
  Vec3 *(__fastcall *getFiringPos)(Actor *this, Vec3 *result);
  void (__fastcall *setRot)(Actor *this, const Vec2 *);
  void (__fastcall *move)(Actor *this, IActorMovementProxy *, const Vec3 *);
  void (__fastcall *move)(Actor *this, const Vec3 *);
  Vec3 *(__fastcall *getInterpolatedRidingPosition)(Actor *this, Vec3 *result, float);
  float (__fastcall *getInterpolatedBodyRot)(Actor *this, float);
  float (__fastcall *getInterpolatedHeadRot)(Actor *this, float);
  float (__fastcall *getInterpolatedBodyYaw)(Actor *this, float);
  float (__fastcall *getYawSpeedInDegreesPerSecond)(Actor *this);
  float (__fastcall *getInterpolatedWalkAnimSpeed)(Actor *this, float);
  Vec3 *(__fastcall *getInterpolatedRidingOffset)(Actor *this, Vec3 *result, float);
  void (__fastcall *checkBlockCollisions)(Actor *this);
  void (__fastcall *checkBlockCollisions)(Actor *this, const AABB *, std::function<void __cdecl(BlockSource &,Block const &,BlockPos const &,Actor &)>);
  bool (__fastcall *isFireImmune)(Actor *this);
  bool (__fastcall *breaksFallingBlocks)(Actor *this);
  void (__fastcall *blockedByShield)(Actor *this, const ActorDamageSource *, Actor *);
  void (__fastcall *teleportTo)(Actor *this, const Vec3 *, bool, int, int, const ActorUniqueID *);
  bool (__fastcall *tryTeleportTo)(Actor *this, const Vec3 *, bool, bool, int, int);
  void (__fastcall *chorusFruitTeleport)(Actor *this, Vec3 *);
  void (__fastcall *lerpTo)(Actor *this, const Vec3 *, const Vec2 *, int);
  void (__fastcall *lerpMotion)(Actor *this, const Vec3 *);
  std::unique_ptr<AddActorBasePacket> *(__fastcall *getAddPacket)(Actor *this, std::unique_ptr<AddActorBasePacket> *result);
  void (__fastcall *normalTick)(Actor *this);
  void (__fastcall *baseTick)(Actor *this);
  void (__fastcall *rideTick)(Actor *this);
  void (__fastcall *positionRider)(Actor *this, Actor *, float);
  float (__fastcall *getRidingHeight)(Actor *this);
  bool (__fastcall *startRiding)(Actor *this, Actor *);
  void (__fastcall *addRider)(Actor *this, Actor *);
  void (__fastcall *flagRiderToRemove)(Actor *this, Actor *);
  std::string *(__fastcall *getExitTip)(Actor *this, std::string *result, const std::string *, InputMode);
  bool (__fastcall *intersects)(Actor *this, const Vec3 *, const Vec3 *);
  bool (__fastcall *isFree)(Actor *this, const Vec3 *);
  bool (__fastcall *isFree)(Actor *this, const Vec3 *, float);
  bool (__fastcall *isInWall)(Actor *this);
  bool (__fastcall *isInvisible)(Actor *this);
  bool (__fastcall *canShowNameTag)(Actor *this);
  bool (__fastcall *canExistInPeaceful)(Actor *this);
  void (__fastcall *setNameTagVisible)(Actor *this, bool);
  const std::string *(__fastcall *getNameTag)(Actor *this);
  unsigned __int64 (__fastcall *getNameTagAsHash)(Actor *this);
  std::string *(__fastcall *getFormattedNameTag)(Actor *this, std::string *result);
  void (__fastcall *filterFormattedNameTag)(Actor *this, const UIProfanityContext *);
  void (__fastcall *setNameTag)(Actor *this, const std::string *);
  bool (__fastcall *getAlwaysShowNameTag)(Actor *this);
  void (__fastcall *setScoreTag)(Actor *this, const std::string *);
  const std::string *(__fastcall *getScoreTag)(Actor *this);
  bool (__fastcall *isInWater)(Actor *this);
  bool (__fastcall *hasEnteredWater)(Actor *this);
  bool (__fastcall *isImmersedInWater)(Actor *this);
  bool (__fastcall *isInWaterOrRain)(Actor *this);
  bool (__fastcall *isInLava)(Actor *this);
  bool (__fastcall *isUnderLiquid)(Actor *this, MaterialType);
  bool (__fastcall *isOverWater)(Actor *this);
  void (__fastcall *makeStuckInBlock)(Actor *this, const Vec3 *);
  float (__fastcall *getCameraOffset)(Actor *this);
  float (__fastcall *getShadowHeightOffs)(Actor *this);
  float (__fastcall *getShadowRadius)(Actor *this);
  Vec3 *(__fastcall *getHeadLookVector)(Actor *this, Vec3 *result, float);
  bool (__fastcall *canSeeInvisible)(Actor *this);
  bool (__fastcall *canSee)(Actor *this, const Vec3 *);
  bool (__fastcall *canSee)(Actor *this, const Actor *);
  bool (__fastcall *isSkyLit)(Actor *this, float);
  float (__fastcall *getBrightness)(Actor *this, float);
  bool (__fastcall *interactPreventDefault)(Actor *this);
  void (__fastcall *playerTouch)(Actor *this, Player *);
  void (__fastcall *onAboveBubbleColumn)(Actor *this, const bool);
  void (__fastcall *onInsideBubbleColumn)(Actor *this, const bool);
  bool (__fastcall *isImmobile)(Actor *this);
  bool (__fastcall *isSilent)(Actor *this);
  bool (__fastcall *isPickable)(Actor *this);
  bool (__fastcall *isFishable)(Actor *this);
  bool (__fastcall *isSleeping)(Actor *this);
  bool (__fastcall *isShootable)(Actor *this);
  void (__fastcall *setSneaking)(Actor *this, bool);
  bool (__fastcall *isBlocking)(Actor *this);
  bool (__fastcall *isDamageBlocked)(Actor *this, const ActorDamageSource *);
  bool (__fastcall *isAlive)(Actor *this);
  bool (__fastcall *isOnFire)(Actor *this);
  bool (__fastcall *isOnHotBlock)(Actor *this);
  bool (__fastcall *isCreativeModeAllowed)(Actor *this);
  bool (__fastcall *isSurfaceMob)(Actor *this);
  bool (__fastcall *isTargetable)(Actor *this);
  bool (__fastcall *isLocalPlayer)(Actor *this);
  bool (__fastcall *isPlayer)(Actor *this);
  bool (__fastcall *canAttack)(Actor *this, Actor *, bool);
  void (__fastcall *setTarget)(Actor *this, Actor *);
  Actor *(__fastcall *findAttackTarget)(Actor *this);
  bool (__fastcall *isValidTarget)(Actor *this, Actor *);
  bool (__fastcall *attack)(Actor *this, Actor *);
  void (__fastcall *performRangedAttack)(Actor *this, Actor *, float);
  void (__fastcall *adjustDamageAmount)(Actor *this, int *);
  int (__fastcall *getEquipmentCount)(Actor *this);
  void (__fastcall *setOwner)(Actor *this, const ActorUniqueID);
  void (__fastcall *setSitting)(Actor *this, bool);
  void (__fastcall *onTame)(Actor *this);
  void (__fastcall *onFailedTame)(Actor *this);
  int (__fastcall *getInventorySize)(Actor *this);
  int (__fastcall *getEquipSlots)(Actor *this);
  int (__fastcall *getChestSlots)(Actor *this);
  void (__fastcall *setStanding)(Actor *this, bool);
  bool (__fastcall *canPowerJump)(Actor *this);
  void (__fastcall *setCanPowerJump)(Actor *this, bool);
  bool (__fastcall *isJumping)(Actor *this);
  bool (__fastcall *isEnchanted)(Actor *this);
  void (__fastcall *rideJumped)(Actor *this);
  void (__fastcall *rideLanded)(Actor *this, const Vec3 *, const Vec3 *);
  bool (__fastcall *shouldRender)(Actor *this);
  bool (__fastcall *isInvulnerableTo)(Actor *this, const ActorDamageSource *);
  ActorDamageCause (__fastcall *getBlockDamageCause)(Actor *this, const Block *);
  void (__fastcall *actuallyHurt)(Actor *this, int, const ActorDamageSource *, bool);
  void (__fastcall *animateHurt)(Actor *this);
  bool (__fastcall *doFireHurt)(Actor *this, int);
  void (__fastcall *onLightningHit)(Actor *this);
  void (__fastcall *onBounceStarted)(Actor *this, const BlockPos *, const Block *);
  void (__fastcall *feed)(Actor *this, int);
  void (__fastcall *handleEntityEvent)(Actor *this, ActorEvent, int);
  float (__fastcall *getPickRadius)(Actor *this);
  const HashedString *(__fastcall *getActorRendererId)(Actor *this);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const ItemStack *, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const Block *, int, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, const Block *, int);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, int, int, float);
  ItemActor *(__fastcall *spawnAtLocation)(Actor *this, int, int);
  void (__fastcall *despawn)(Actor *this);
  void (__fastcall *killed)(Actor *this, Actor *);
  void (__fastcall *awardKillScore)(Actor *this, Actor *, int);
  void (__fastcall *setArmor)(Actor *this, ArmorSlot, const ItemStack *);
  const ItemStack *(__fastcall *getArmor)(Actor *this, ArmorSlot);
  ArmorMaterialType (__fastcall *getArmorMaterialTypeInSlot)(Actor *this, ArmorSlot);
  ArmorTextureType (__fastcall *getArmorMaterialTextureTypeInSlot)(Actor *this, ArmorSlot);
  float (__fastcall *getArmorColorInSlot)(Actor *this, ArmorSlot, int);
  const ItemStack *(__fastcall *getEquippedSlot)(Actor *this, EquipmentSlot);
  void (__fastcall *setEquippedSlot)(Actor *this, EquipmentSlot, const ItemStack *);
  const ItemStack *(__fastcall *getCarriedItem)(Actor *this);
  void (__fastcall *setCarriedItem)(Actor *this, const ItemStack *);
  void (__fastcall *setOffhandSlot)(Actor *this, const ItemStack *);
  const ItemStack *(__fastcall *getEquippedTotem)(Actor *this);
  bool (__fastcall *consumeTotem)(Actor *this);
  bool (__fastcall *save)(Actor *this, CompoundTag *);
  void (__fastcall *saveWithoutId)(Actor *this, CompoundTag *);
  bool (__fastcall *load)(Actor *this, const CompoundTag *, DataLoadHelper *);
  void (__fastcall *loadLinks)(Actor *this, const CompoundTag *, std::vector<ActorLink> *, DataLoadHelper *);
  ActorType (__fastcall *getEntityTypeId)(Actor *this);
  const HashedString *(__fastcall *queryEntityRenderer)(Actor *this);
  ActorUniqueID *(__fastcall *getSourceUniqueID)(Actor *this, ActorUniqueID *result);
  void (__fastcall *setOnFire)(Actor *this, int);
  AABB *(__fastcall *getHandleWaterAABB)(Actor *this, AABB *result);
  void (__fastcall *handleInsidePortal)(Actor *this, const BlockPos *);
  int (__fastcall *getPortalCooldown)(Actor *this);
  int (__fastcall *getPortalWaitTime)(Actor *this);
  AutomaticID<Dimension,int> *(__fastcall *getDimensionId)(Actor *this, AutomaticID<Dimension,int> *result);
  bool (__fastcall *canChangeDimensions)(Actor *this);
  void (__fastcall *changeDimension)(Actor *this, const ChangeDimensionPacket *);
  void (__fastcall *changeDimension)(Actor *this, AutomaticID<Dimension,int>, bool);
  ActorUniqueID *(__fastcall *getControllingPlayer)(Actor *this, ActorUniqueID *result);
  void (__fastcall *checkFallDamage)(Actor *this, float, bool);
  void (__fastcall *causeFallDamage)(Actor *this, float);
  void (__fastcall *handleFallDistanceOnServer)(Actor *this, float, bool);
  void (__fastcall *playSynchronizedSound)(Actor *this, LevelSoundEvent, const Vec3 *, int, bool);
  void (__fastcall *playSynchronizedSound)(Actor *this, LevelSoundEvent, const Vec3 *, const Block *, bool);
  void (__fastcall *onSynchedDataUpdate)(Actor *this, int);
  bool (__fastcall *canAddRider)(Actor *this, Actor *);
  bool (__fastcall *canPickupItem)(Actor *this, const ItemStack *);
  bool (__fastcall *canBePulledIntoVehicle)(Actor *this);
  bool (__fastcall *inCaravan)(Actor *this);
  bool (__fastcall *isLeashableType)(Actor *this);
  void (__fastcall *tickLeash)(Actor *this);
  void (__fastcall *sendMotionPacketIfNeeded)(Actor *this);
  bool (__fastcall *canSynchronizeNewEntity)(Actor *this);
  bool (__fastcall *stopRiding)(Actor *this, bool, bool, bool, bool);
  void (__fastcall *startSwimming)(Actor *this);
  void (__fastcall *stopSwimming)(Actor *this);
  void (__fastcall *buildDebugInfo)(Actor *this, std::string *);
  CommandPermissionLevel (__fastcall *getCommandPermissionLevel)(Actor *this);
  AttributeInstance *(__fastcall *getMutableAttribute)(Actor *this, const Attribute *);
  const AttributeInstance *(__fastcall *getAttribute)(Actor *this, const Attribute *);
  int (__fastcall *getDeathTime)(Actor *this);
  void (__fastcall *heal)(Actor *this, int);
  bool (__fastcall *isInvertedHealAndHarm)(Actor *this);
  bool (__fastcall *canBeAffected)(Actor *this, const MobEffectInstance *);
  bool (__fastcall *canBeAffected)(Actor *this, int);
  bool (__fastcall *canBeAffectedByArrow)(Actor *this, const MobEffectInstance *);
  void (__fastcall *onEffectAdded)(Actor *this, MobEffectInstance *);
  void (__fastcall *onEffectUpdated)(Actor *this, const MobEffectInstance *);
  void (__fastcall *onEffectRemoved)(Actor *this, MobEffectInstance *);
  AnimationComponent *(__fastcall *getAnimationComponent)(Actor *this);
  void (__fastcall *openContainerComponent)(Actor *this, Player *);
  void (__fastcall *swing)(Actor *this);
  void (__fastcall *useItem)(Actor *this, ItemStackBase *, ItemUseMethod, bool);
  bool (__fastcall *hasOutputSignal)(Actor *this, unsigned __int8);
  int (__fastcall *getOutputSignal)(Actor *this);
  void (__fastcall *getDebugText)(Actor *this, std::vector<std::string> *);
  float (__fastcall *getMapDecorationRotation)(Actor *this);
  float (__fastcall *getRiderYRotation)(Actor *this, const Actor *);
  float (__fastcall *getYHeadRot)(Actor *this);
  bool (__fastcall *isWorldBuilder)(Actor *this);
  bool (__fastcall *isCreative)(Actor *this);
  bool (__fastcall *isAdventure)(Actor *this);
  bool (__fastcall *add)(Actor *this, ItemStack *);
  bool (__fastcall *drop)(Actor *this, const ItemStack *, bool);
  bool (__fastcall *getInteraction)(Actor *this, Player *, ActorInteraction *, const Vec3 *);
  bool (__fastcall *canDestroyBlock)(Actor *this, const Block *);
  void (__fastcall *setAuxValue)(Actor *this, int);
  void (__fastcall *setSize)(Actor *this, float, float);
  int (__fastcall *getLifeSpan)(Actor *this);
  void (__fastcall *onOrphan)(Actor *this);
  void (__fastcall *wobble)(Actor *this);
  bool (__fastcall *wasHurt)(Actor *this);
  void (__fastcall *startSpinAttack)(Actor *this);
  void (__fastcall *stopSpinAttack)(Actor *this);
  void (__fastcall *setDamageNearbyMobs)(Actor *this, bool);
  bool (__fastcall *hasCritBox)(Actor *this);
  bool (__fastcall *isCritHit)(Actor *this);
  void (__fastcall *renderDebugServerState)(Actor *this, const Options *);
  void (__fastcall *reloadLootTable)(Actor *this, const EquipmentTableDefinition *);
  void (__fastcall *reloadLootTable)(Actor *this);
  float (__fastcall *getDeletionDelayTimeSeconds)(Actor *this);
  void (__fastcall *kill)(Actor *this);
  void (__fastcall *die)(Actor *this, const ActorDamageSource *);
  bool (__fastcall *shouldTick)(Actor *this);
  std::shared_ptr<IActorMovementProxy> *(__fastcall *createMovementProxy)(Actor *this, std::shared_ptr<IActorMovementProxy> *result);
  void (__fastcall *updateEntitySpecificMolangVariables)(Actor *this, RenderParams *);
  bool (__fastcall *shouldTryMakeStepSound)(Actor *this);
  float (__fastcall *getNextStep)(Actor *this, const float);
  bool (__fastcall *canMakeStepSound)(Actor *this);
  void (__fastcall *outOfWorld)(Actor *this);
  bool (__fastcall *_hurt)(Actor *this, const ActorDamageSource *, int, bool, bool);
  void (__fastcall *markHurt)(Actor *this);
  void (__fastcall *readAdditionalSaveData)(Actor *this, const CompoundTag *, DataLoadHelper *);
  void (__fastcall *addAdditionalSaveData)(Actor *this, CompoundTag *);
  void (__fastcall *_playStepSound)(Actor *this, const BlockPos *, const Block *);
  void (__fastcall *_playFlySound)(Actor *this, const BlockPos *, const Block *);
  bool (__fastcall *_makeFlySound)(Actor *this);
  void (__fastcall *checkInsideBlocks)(Actor *this, float);
  void (__fastcall *pushOutOfBlocks)(Actor *this, const Vec3 *);
  bool (__fastcall *updateWaterState)(Actor *this);
  void (__fastcall *doWaterSplashEffect)(Actor *this);
  void (__fastcall *spawnTrailBubbles)(Actor *this);
  void (__fastcall *updateInsideBlock)(Actor *this);
  LootTable *(__fastcall *getLootTable)(Actor *this);
  LootTable *(__fastcall *getDefaultLootTable)(Actor *this);
  void (__fastcall *_removeRider)(Actor *this, const ActorUniqueID *, bool, bool, bool);
  void (__fastcall *_onSizeUpdated)(Actor *this);
  void (__fastcall *_doAutoAttackOnTouch)(Actor *this, Actor *);
  void (__fastcall *knockback)(Mob *this, Actor *, int, float, float, float, float, float);
  void (__fastcall *resolveDeathLoot)(Mob *this, int, const ActorDamageSource *);
  void (__fastcall *spawnAnim)(Mob *this);
  void (__fastcall *setSleeping)(Mob *this, bool);
  void (__fastcall *setSprinting)(Mob *this, bool);
  void (__fastcall *playAmbientSound)(Mob *this);
  LevelSoundEvent (__fastcall *getAmbientSound)(Mob *this);
  int (__fastcall *getAmbientSoundPostponeTicks)(Mob *this);
  int (__fastcall *getAmbientSoundPostponeTicksRange)(Mob *this);
  const TextureUVCoordinateSet *(__fastcall *getItemInHandIcon)(Mob *this, const ItemStack *, int);
  float (__fastcall *getSpeed)(Mob *this);
  void (__fastcall *setSpeed)(Mob *this, float);
  float (__fastcall *getJumpPower)(Mob *this);
  bool (__fastcall *hurtEffects)(Mob *this, const ActorDamageSource *, int, bool, bool);
  int (__fastcall *getMeleeWeaponDamageBonus)(Mob *this, Mob *);
  int (__fastcall *getMeleeKnockbackBonus)(Mob *this);
  void (__fastcall *travel)(Mob *this, IMobMovementProxy *, float, float, float);
  void (__fastcall *travel)(Mob *this, float, float, float);
  void (__fastcall *applyFinalFriction)(Mob *this, float, bool);
  void (__fastcall *updateWalkAnim)(Mob *this);
  void (__fastcall *aiStep)(Mob *this, IMobMovementProxy *);
  void (__fastcall *aiStep)(Mob *this);
  void (__fastcall *pushActors)(Mob *this);
  void (__fastcall *lookAt)(Mob *this, Actor *, float, float);
  bool (__fastcall *isLookingAtAnEntity)(Mob *this);
  bool (__fastcall *checkSpawnRules)(Mob *this, bool);
  bool (__fastcall *checkSpawnObstruction)(Mob *this);
  float (__fastcall *getAttackAnim)(Mob *this, float);
  int (__fastcall *getItemUseDuration)(Mob *this);
  float (__fastcall *getItemUseStartupProgress)(Mob *this);
  float (__fastcall *getItemUseIntervalProgress)(Mob *this);
  int (__fastcall *getItemuseIntervalAxis)(Mob *this);
  int (__fastcall *getTimeAlongSwing)(Mob *this);
  void (__fastcall *ate)(Mob *this);
  float (__fastcall *getMaxHeadXRot)(Mob *this);
  Mob *(__fastcall *getLastHurtByMob)(Mob *this);
  void (__fastcall *setLastHurtByMob)(Mob *this, Mob *);
  Player *(__fastcall *getLastHurtByPlayer)(Mob *this);
  void (__fastcall *setLastHurtByPlayer)(Mob *this, Player *);
  Mob *(__fastcall *getLastHurtMob)(Mob *this);
  void (__fastcall *setLastHurtMob)(Mob *this, Actor *);
  bool (__fastcall *isAlliedTo)(Mob *this, Mob *);
  bool (__fastcall *doHurtTarget)(Mob *this, Actor *);
  bool (__fastcall *canBeControlledByRider)(Mob *this);
  void (__fastcall *leaveCaravan)(Mob *this);
  void (__fastcall *joinCaravan)(Mob *this, Mob *);
  bool (__fastcall *hasCaravanTail)(Mob *this);
  ActorUniqueID *(__fastcall *getCaravanHead)(Mob *this, ActorUniqueID *result);
  int (__fastcall *getArmorValue)(Mob *this);
  float (__fastcall *getArmorCoverPercentage)(Mob *this);
  void (__fastcall *hurtArmor)(Mob *this, const ActorDamageSource *, int, const std::bitset<4> *);
  void (__fastcall *hurtArmor)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *hurtArmorSlot)(Mob *this, const ActorDamageSource *, int, ArmorSlot);
  void (__fastcall *setDamagedArmor)(Mob *this, ArmorSlot, const ItemStack *);
  void (__fastcall *sendArmorDamage)(Mob *this, const std::bitset<4> *);
  void (__fastcall *sendArmor)(Mob *this, const std::bitset<4> *);
  void (__fastcall *containerChanged)(Mob *this, int);
  void (__fastcall *updateEquipment)(Mob *this);
  int (__fastcall *clearEquipment)(Mob *this);
  std::vector<ItemStack const *> *(__fastcall *getAllArmor)(Mob *this, std::vector<ItemStack const *> *result);
  std::vector<int> *(__fastcall *getAllArmorID)(Mob *this, std::vector<int> *result);
  std::vector<ItemStack const *> *(__fastcall *getAllHand)(Mob *this, std::vector<ItemStack const *> *result);
  std::vector<ItemStack const *> *(__fastcall *getAllEquipment)(Mob *this, std::vector<ItemStack const *> *result);
  int (__fastcall *getArmorTypeHash)(Mob *this);
  void (__fastcall *dropEquipmentOnDeath)(Mob *this);
  void (__fastcall *dropEquipmentOnDeath)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *clearVanishEnchantedItemsOnDeath)(Mob *this);
  void (__fastcall *sendInventory)(Mob *this, bool);
  int (__fastcall *getDamageAfterMagicAbsorb)(Mob *this, const ActorDamageSource *, int);
  bool (__fastcall *createAIGoals)(Mob *this);
  void (__fastcall *onBorn)(Mob *this, Actor *, Actor *);
  bool (__fastcall *setItemSlot)(Mob *this, EquipmentSlot, const ItemStack *);
  void (__fastcall *setTransitioningSitting)(Mob *this, bool);
  void (__fastcall *attackAnimation)(Mob *this, Actor *, float);
  int (__fastcall *getAttackTime)(Mob *this);
  float (__fastcall *_getWalkTargetValue)(Mob *this, const BlockPos *);
  bool (__fastcall *canExistWhenDisallowMob)(Mob *this);
  bool (__fastcall *useNewAi)(Mob *this);
  void (__fastcall *ascendLadder)(Mob *this);
  void (__fastcall *ascendScaffolding)(Mob *this);
  void (__fastcall *descendScaffolding)(Mob *this);
  void (__fastcall *dropContainer)(Mob *this);
  std::unique_ptr<BodyControl> *(__fastcall *initBodyControl)(Mob *this, std::unique_ptr<BodyControl> *result);
  void (__fastcall *jumpFromGround)(Mob *this, IMobMovementProxy *);
  void (__fastcall *jumpFromGround)(Mob *this);
  void (__fastcall *updateAi)(Mob *this);
  void (__fastcall *newServerAiStep)(Mob *this);
  void (__fastcall *_serverAiMobStep)(Mob *this);
  int (__fastcall *getDamageAfterEnchantReduction)(Mob *this, const ActorDamageSource *, int);
  int (__fastcall *getDamageAfterArmorAbsorb)(Mob *this, const ActorDamageSource *, int);
  void (__fastcall *dropBags)(Mob *this);
  void (__fastcall *tickDeath)(Mob *this);
  void (__fastcall *updateGliding)(Mob *this);
  bool (__fastcall *_allowAscendingScaffolding)(Mob *this);
};