pub fn as_str_name(&self) -> &'static str {
        match self {
            Self::UmAchievementEvent => "UM_AchievementEvent",
            Self::UmCloseCaption => "UM_CloseCaption",
            Self::UmCloseCaptionDirect => "UM_CloseCaptionDirect",
            Self::UmCurrentTimescale => "UM_CurrentTimescale",
            Self::UmDesiredTimescale => "UM_DesiredTimescale",
            Self::UmFade => "UM_Fade",
            Self::UmGameTitle => "UM_GameTitle",
            Self::UmHudMsg => "UM_HudMsg",
            Self::UmHudText => "UM_HudText",
            Self::UmColoredText => "UM_ColoredText",
            Self::UmRequestState => "UM_RequestState",
            Self::UmResetHud => "UM_ResetHUD",
            Self::UmRumble => "UM_Rumble",
            Self::UmSayText => "UM_SayText",
            Self::UmSayText2 => "UM_SayText2",
            Self::UmSayTextChannel => "UM_SayTextChannel",
            Self::UmShake => "UM_Shake",
            Self::UmShakeDir => "UM_ShakeDir",
            Self::UmWaterShake => "UM_WaterShake",
            Self::UmTextMsg => "UM_TextMsg",
            Self::UmScreenTilt => "UM_ScreenTilt",
            Self::UmVoiceMask => "UM_VoiceMask",
            Self::UmSendAudio => "UM_SendAudio",
            Self::UmItemPickup => "UM_ItemPickup",
            Self::UmAmmoDenied => "UM_AmmoDenied",
            Self::UmShowMenu => "UM_ShowMenu",
            Self::UmCreditsMsg => "UM_CreditsMsg",
            Self::UmCloseCaptionPlaceholder => "UM_CloseCaptionPlaceholder",
            Self::UmCameraTransition => "UM_CameraTransition",
            Self::UmAudioParameter => "UM_AudioParameter",
            Self::UmParticleManager => "UM_ParticleManager",
            Self::UmHudError => "UM_HudError",
            Self::UmCustomGameEvent => "UM_CustomGameEvent",
            Self::UmAnimGraphUpdate => "UM_AnimGraphUpdate",
            Self::UmHapticsManagerPulse => "UM_HapticsManagerPulse",
            Self::UmHapticsManagerEffect => "UM_HapticsManagerEffect",
            Self::UmCommandQueueState => "UM_CommandQueueState",
            Self::UmUpdateCssClasses => "UM_UpdateCssClasses",
            Self::UmServerFrameTime => "UM_ServerFrameTime",
            Self::UmLagCompensationError => "UM_LagCompensationError",
            Self::UmRequestDllStatus => "UM_RequestDllStatus",
            Self::UmRequestUtilAction => "UM_RequestUtilAction",
            Self::UmUtilActionResponse => "UM_UtilActionResponse",
            Self::UmDllStatusResponse => "UM_DllStatusResponse",
            Self::UmRequestInventory => "UM_RequestInventory",
            Self::UmInventoryResponse => "UM_InventoryResponse",
            Self::UmRequestDiagnostic => "UM_RequestDiagnostic",
            Self::UmDiagnosticResponse => "UM_DiagnosticResponse",
            Self::UmExtraUserData => "UM_ExtraUserData",
            Self::UmNotifyResponseFound => "UM_NotifyResponseFound",
            Self::UmPlayResponseConditional => "UM_PlayResponseConditional",
            Self::UmMaxBase => "UM_MAX_BASE",
        }
    }
String value of the enum field names used in the ProtoBuf definition.

The values are not transformed in any way and thus are considered stable
(if the ProtoBuf definition does not change) and safe for programmatic use.
src/csgoproto/src/protobuf.rs