
error_names = {
	0x00010001: "Core::Unknown",
	0x00010002: "Core::NotImplemented",
	0x00010003: "Core::InvalidPointer",
	0x00010004: "Core::OperationAborted",
	0x00010005: "Core::Exception",
	0x00010006: "Core::AccessDenied",
	0x00010007: "Core::InvalidHandle",
	0x00010008: "Core::InvalidIndex",
	0x00010009: "Core::OutOfMemory",
	0x0001000A: "Core::InvalidArgument",
	0x0001000B: "Core::Timeout",
	0x0001000C: "Core::InitializationFailure",
	0x0001000D: "Core::CallInitiationFailure",
	0x0001000E: "Core::RegistrationError",
	0x0001000F: "Core::BufferOverflow",
	0x00010010: "Core::InvalidLockState",
	0x00010011: "Core::InvalidSequence",
	0x00010012: "Core::SystemError",
	0x00010013: "Core::Cancelled",
	
	0x00020001: "DDL::InvalidSignature",
	0x00020002: "DDL::IncorrectVersion",
	
	0x00030001: "RendezVous::ConnectionFailure",
	0x00030002: "RendezVous::NotAuthenticated",

	0x00030064: "RendezVous::InvalidUsername",
	0x00030065: "RendezVous::InvalidPassword",
	0x00030066: "RendezVous::UsernameAlreadyExists",
	0x00030067: "RendezVous::AccountDisabled",
	0x00030068: "RendezVous::AccountExpired",
	0x00030069: "RendezVous::ConcurrentLoginDenied",
	0x0003006A: "RendezVous::EncryptionFailure",
	0x0003006B: "RendezVous::InvalidPID",
	0x0003006C: "RendezVous::MaxConnectionsReached",
	0x0003006D: "RendezVous::InvalidGID",
	0x0003006E: "RendezVous::InvalidControlScriptID",
	0x0003006F: "RendezVous::InvalidOperationInLiveEnvironment",
	0x00030070: "RendezVous::DuplicateEntry",
	0x00030071: "RendezVous::ControlScriptFailure",
	0x00030072: "RendezVous::ClassNotFound",
	0x00030073: "RendezVous::SessionVoid",
	0x00030075: "RendezVous::DDLMismatch",
	0x00030076: "RendezVous::InvalidConfiguration",
	
	0x000300C8: "RendezVous::SessionFull",
	0x000300C9: "RendezVous::InvalidGatheringPassword",
	0x000300CA: "RendezVous::WithoutParticipationPeriod",
	0x000300CB: "RendezVous::PersistentGatheringCreationMax",
	0x000300CC: "RendezVous::PersistentGatheringParticipationMax",
	0x000300CD: "RendezVous::DeniedByParticipants",
	0x000300CE: "RendezVous::ParticipantInBlackList",
	0x000300CF: "RendezVous::GameServerMaintenance",
	0x000300D0: "RendezVous::OperationPostpone",
	0x000300D1: "RendezVous::OutOfRatingRange",
	0x000300D2: "RendezVous::ConnectionDisconnected",
	0x000300D3: "RendezVous::InvalidOperation",
	0x000300D4: "RendezVous::NotParticipatedGathering",
	0x000300D5: "RendezVous::MatchmakeSessionUserPasswordUnmatch",
	0x000300D6: "RendezVous::MatchmakeSessionSystemPasswordUnmatch",
	0x000300D7: "RendezVous::UserIsOffline",
	0x000300D8: "RendezVous::AlreadyParticipatedGathering",
	0x000300D9: "RendezVous::PermissionDenied",
	0x000300DA: "RendezVous::NotFriend",
	0x000300DB: "RendezVous::SessionClosed",
	0x000300DC: "RendezVous::DatabaseTemporarilyUnavailable",
	0x000300DD: "RendezVous::InvalidUniqueId",
	0x000300DE: "RendezVous::MatchmakingWithdrawn",
	0x000300DF: "RendezVous::LimitExceeded",
	0x000300E0: "RendezVous::AccountTemporarilyDisabled",
	0x000300E1: "RendezVous::PartiallyServiceClosed",
	0x000300E2: "RendezVous::ConnectionDisconnectedForConcurrentLogin",
	
	0x00040001: "PythonCore::Exception",
	0x00040002: "PythonCore::TypeError",
	0x00040003: "PythonCore::IndexError",
	0x00040004: "PythonCore::InvalidReference",
	0x00040005: "PythonCore::CallFailure",
	0x00040006: "PythonCore::MemoryError",
	0x00040007: "PythonCore::KeyError",
	0x00040008: "PythonCore::OperationError",
	0x00040009: "PythonCore::ConversionError",
	0x0004000A: "PythonCore::ValidationError",
	
	0x00050001: "Transport::Unknown",
	0x00050002: "Transport::ConnectionFailure",
	0x00050003: "Transport::InvalidUrl",
	0x00050004: "Transport::InvalidKey",
	0x00050005: "Transport::InvalidURLType",
	0x00050006: "Transport::DuplicateEndpoint",
	0x00050007: "Transport::IOError",
	0x00050008: "Transport::Timeout",
	0x00050009: "Transport::ConnectionReset",
	0x0005000A: "Transport::IncorrectRemoteAuthentication",
	0x0005000B: "Transport::ServerRequestError",
	0x0005000C: "Transport::DecompressionFailure",
	0x0005000D: "Transport::ReliableSendBufferFullFatal",
	0x0005000E: "Transport::UPnPCannotInit",
	0x0005000F: "Transport::UPnPCannotAddMapping",
	0x00050010: "Transport::NatPMPCannotInit",
	0x00050011: "Transport::NatPMPCannotAddMapping",
	0x00050013: "Transport::UnsupportedNAT",
	0x00050014: "Transport::DnsError",
	0x00050015: "Transport::ProxyError",
	0x00050016: "Transport::DataRemaining",
	0x00050017: "Transport::NoBuffer",
	0x00050018: "Transport::NotFound",
	0x00050019: "Transport::TemporaryServerError",
	0x0005001A: "Transport::PermanentServerError",
	0x0005001B: "Transport::ServiceUnavailable",
	0x0005001C: "Transport::ReliableSendBufferFull",
	0x0005001D: "Transport::InvalidStation",
	0x0005001E: "Transport::InvalidSubStreamID",
	0x0005001F: "Transport::PacketBufferFull",
	0x00050020: "Transport::NatTraversalError",
	0x00050021: "Transport::NatCheckError",
	
	0x00060001: "DOCore::StationNotReached",
	0x00060002: "DOCore::TargetStationDisconnect",
	0x00060003: "DOCore::LocalStationLeaving",
	0x00060004: "DOCore::ObjectNotFound",
	0x00060005: "DOCore::InvalidRole",
	0x00060006: "DOCore::CallTimeout",
	0x00060007: "DOCore::RMCDispatchFailed",
	0x00060008: "DOCore::MigrationInProgress",
	0x00060009: "DOCore::NoAuthority",
	0x0006000A: "DOCore::NoTargetStationSpecified",
	0x0006000B: "DOCore::JoinFailed",
	0x0006000C: "DOCore::JoinDenied",
	0x0006000D: "DOCore::ConnectivityTestFailed",
	0x0006000E: "DOCore::Unknown",
	0x0006000F: "DOCore::UnfreedReferences",
	0x00060010: "DOCore::JobTerminationFailed",
	0x00060011: "DOCore::InvalidState",
	0x00060012: "DOCore::FaultRecoveryFatal",
	0x00060013: "DOCore::FaultRecoveryJobProcessFailed",
	0x00060014: "DOCore::StationInconsitency",
	0x00060015: "DOCore::AbnormalMasterState",
	0x00060016: "DOCore::VersionMismatch",
	
	0x00650000: "FPD::NotInitialized",
	0x00650001: "FPD::AlreadyInitialized",
	0x00650002: "FPD::NotConnected",
	0x00650003: "FPD::Connected",
	0x00650004: "FPD::InitializationFailure",
	0x00650005: "FPD::OutOfMemory",
	0x00650006: "FPD::RmcFailed",
	0x00650007: "FPD::InvalidArgument",
	0x00650008: "FPD::InvalidLocalAccountID",
	0x00650009: "FPD::InvalidPrincipalID",
	0x0065000A: "FPD::InvalidLocalFriendCode",
	0x0065000B: "FPD::LocalAccountNotExists",
	0x0065000C: "FPD::LocalAccountNotLoaded",
	0x0065000D: "FPD::LocalAccountAlreadyLoaded",
	0x0065000E: "FPD::FriendAlreadyExists",
	0x0065000F: "FPD::FriendNotExists",
	0x00650010: "FPD::FriendNumMax",
	0x00650011: "FPD::NotFriend",
	0x00650012: "FPD::FileIO",
	0x00650013: "FPD::P2PInternetProhibited",
	0x00650014: "FPD::Unknown",
	0x00650015: "FPD::InvalidState",
	0x00650017: "FPD::AddFriendProhibited",
	0x00650019: "FPD::InvalidAccount",
	0x0065001A: "FPD::BlacklistedByMe",
	0x0065001C: "FPD::FriendAlreadyAdded",
	0x0065001D: "FPD::MyFriendListLimitExceed",
	0x0065001E: "FPD::RequestLimitExceed",
	0x0065001F: "FPD::InvalidMessageID",
	0x00650020: "FPD::MessageIsNotMine",
	0x00650021: "FPD::MessageIsNotForMe",
	0x00650022: "FPD::FriendRequestBlocked",
	0x00650023: "FPD::NotInMyFriendList",
	0x00650024: "FPD::FriendListedByMe",
	0x00650025: "FPD::NotInMyBlacklist",
	0x00650026: "FPD::IncompatibleAccount",
	0x00650027: "FPD::BlockSettingChangeNotAllowed",
	0x00650028: "FPD::SizeLimitExceeded",
	0x00650029: "FPD::OperationNotAllowed",
	0x0065002A: "FPD::NotNetworkAccount",
	0x0065002B: "FPD::NotificationNotFound",
	0x0065002C: "FPD::PreferenceNotInitialized",
	0x0065002D: "FPD::FriendRequestNotAllowed",
	
	0x00670001: "Ranking::NotInitialized",
	0x00670002: "Ranking::InvalidArgument",
	0x00670003: "Ranking::RegistrationError",
	0x00670005: "Ranking::NotFound",
	0x00670006: "Ranking::InvalidScore",
	0x00670007: "Ranking::InvalidDataSize",
	0x00670009: "Ranking::PermissionDenied",
	0x0067000A: "Ranking::Unknown",
	0x0067000B: "Ranking::NotImplemented",
	
	0x00680001: "Authentication::NASAuthenticateError",
	0x00680002: "Authentication::TokenParseError",
	0x00680003: "Authentication::HttpConnectionError",
	0x00680004: "Authentication::HttpDNSError",
	0x00680005: "Authentication::HttpGetProxySetting",
	0x00680006: "Authentication::TokenExpired",
	0x00680007: "Authentication::ValidationFailed",
	0x00680008: "Authentication::InvalidParam",
	0x00680009: "Authentication::PrincipalIdUnmatched",
	0x0068000A: "Authentication::MoveCountUnmatch",
	0x0068000B: "Authentication::UnderMaintenance",
	0x0068000C: "Authentication::UnsupportedVersion",
	0x0068000D: "Authentication::ServerVersionIsOld",
	0x0068000E: "Authentication::Unknown",
	0x0068000F: "Authentication::ClientVersionIsOld",
	0x00680010: "Authentication::AccountLibraryError",
	0x00680011: "Authentication::ServiceNoLongerAvailable",
	0x00680012: "Authentication::UnknownApplication",
	0x00680013: "Authentication::ApplicationVersionIsOld",
	0x00680014: "Authentication::OutOfService",
	0x00680015: "Authentication::NetworkServiceLicenseRequired",
	0x00680016: "Authentication::NetworkServiceLicenseSystemError",
	0x00680017: "Authentication::NetworkServiceLicenseError3",
	0x00680018: "Authentication::NetworkServiceLicenseError4",
	
	0x00690001: "DataStore::Unknown",
	0x00690002: "DataStore::InvalidArgument",
	0x00690003: "DataStore::PermissionDenied",
	0x00690004: "DataStore::NotFound",
	0x00690005: "DataStore::AlreadyLocked",
	0x00690006: "DataStore::UnderReviewing",
	0x00690007: "DataStore::Expired",
	0x00690008: "DataStore::InvalidCheckToken",
	0x00690009: "DataStore::SystemFileError",
	0x0069000A: "DataStore::OverCapacity",
	0x0069000B: "DataStore::OperationNotAllowed",
	0x0069000C: "DataStore::InvalidPassword",
	0x0069000D: "DataStore::ValueNotEqual",
	
	0x006C0001: "ServiceItem::Unknown",
	0x006C0002: "ServiceItem::InvalidArgument",
	0x006C0003: "ServiceItem::EShopUnknownHttpError",
	0x006C0004: "ServiceItem::EShopResponseParseError",
	0x006C0005: "ServiceItem::NotOwned",
	0x006C0006: "ServiceItem::InvalidLimitationType",
	0x006C0007: "ServiceItem::ConsumptionRightShortage",
	
	0x006F0001: "MatchmakeReferee::Unknown",
	0x006F0002: "MatchmakeReferee::InvalidArgument",
	0x006F0003: "MatchmakeReferee::AlreadyExists",
	0x006F0004: "MatchmakeReferee::NotParticipatedGathering",
	0x006F0005: "MatchmakeReferee::NotParticipatedRound",
	0x006F0006: "MatchmakeReferee::StatsNotFound",
	0x006F0007: "MatchmakeReferee::RoundNotFound",
	0x006F0008: "MatchmakeReferee::RoundArbitrated",
	0x006F0009: "MatchmakeReferee::RoundNotArbitrated",
	
	0x00700001: "Subscriber::Unknown",
	0x00700002: "Subscriber::InvalidArgument",
	0x00700003: "Subscriber::OverLimit",
	0x00700004: "Subscriber::PermissionDenied",
	
	0x00710001: "Ranking2::Unknown",
	0x00710002: "Ranking2::InvalidArgument",
	0x00710003: "Ranking2::InvalidScore",
	
	0x00720001: "SmartDeviceVoiceChat::Unknown",
	0x00720002: "SmartDeviceVoiceChat::InvalidArgument",
	0x00720003: "SmartDeviceVoiceChat::InvalidResponse",
	0x00720004: "SmartDeviceVoiceChat::InvalidAccessToken",
	0x00720005: "SmartDeviceVoiceChat::Unauthorized",
	0x00720006: "SmartDeviceVoiceChat::AccessError",
	0x00720007: "SmartDeviceVoiceChat::UserNotFound",
	0x00720008: "SmartDeviceVoiceChat::RoomNotFound",
	0x00720009: "SmartDeviceVoiceChat::RoomNotActivated",
	0x0072000A: "SmartDeviceVoiceChat::ApplicationNotSupported",
	0x0072000B: "SmartDeviceVoiceChat::InternalServerError",
	0x0072000C: "SmartDeviceVoiceChat::ServiceUnavailable",
	0x0072000D: "SmartDeviceVoiceChat::UnexpectedError",
	0x0072000E: "SmartDeviceVoiceChat::UnderMaintenance",
	0x0072000F: "SmartDeviceVoiceChat::ServiceNoLongerAvailable",
	0x00720010: "SmartDeviceVoiceChat::AccountTemporarilyDisabled",
	0x00720011: "SmartDeviceVoiceChat::PermissionDenied",
	0x00720012: "SmartDeviceVoiceChat::NetworkServiceLicenseRequired",
	0x00720013: "SmartDeviceVoiceChat::AccountLibraryError",
	0x00720014: "SmartDeviceVoiceChat::GameModeNotFound",
	
	0x00730001: "Screening::Unknown",
	0x00730002: "Screening::InvalidArgument",
	0x00730003: "Screening::NotFound",
	
	0x00740001: "Custom::Unknown",

	0x00750001: "Ess::Unknown",
	0x00750002: "Ess::GameSessionError",
	0x00750003: "Ess::GameSessionMaintenance"
}

error_codes = {name: code for code, name in error_names.items()}
