public static void MultiplayerPlayerInfoLabel_RefreshVisuals_Postfix(ref MultiplayerPlayerInfoState ____playerInfoState, Text ___PlayerNameLabel)
            {
                if (____playerInfoState == null || ____playerInfoState.IsDetached())
                {
                    return;
                }

                MultiplayerPlayerInfoManager.Instance.TryGetDisplayName(____playerInfoState.state.PlayFabID, delegate(string displayName)
                {
                    ___PlayerNameLabel.supportRichText    = true; // allow custom colors
                    ___PlayerNameLabel.horizontalOverflow = HorizontalWrapMode.Overflow;
                    ___PlayerNameLabel.text = displayName;
                });
            }
            public static bool MultiplayerPlayerInfoState_GetOrPrepareSafeDisplayName_Prefix(MultiplayerPlayerInfoState __instance, Action <string> onSafeDisplayNameReceived, ref bool ____isSafeDisplayNameBeingPrepared)
            {
                if (string.IsNullOrEmpty(Accessor.GetPrivateProperty <MultiplayerPlayerInfoState, string>("SafeDisplayName", __instance)))
                {
                    Action <string> singleCallback = null;
                    singleCallback = delegate(string safeDisplayName)
                    {
                        __instance.OnSafeDisplayNamePrepared -= singleCallback;
                        Action <string> onSafeDisplayNameReceived3 = onSafeDisplayNameReceived;
                        if (onSafeDisplayNameReceived3 != null)
                        {
                            onSafeDisplayNameReceived3(MultiplayerPlayerNameManager.GetFullPrefixForPlayfabID(__instance.state.PlayFabID) + MultiplayerPlayerNameManager.GetNameForPlayfabID(__instance.state.PlayFabID, safeDisplayName));
                        }
                    };

                    __instance.OnSafeDisplayNamePrepared += singleCallback;

                    if (____isSafeDisplayNameBeingPrepared)
                    {
                        return(false);
                    }

                    ____isSafeDisplayNameBeingPrepared = true;
                    ProfanityChecker.FilterForProfanities(__instance.state.DisplayName, delegate(string preparedName)
                    {
                        Accessor.SetPrivateProperty("SafeDisplayName", __instance, preparedName);
                        Accessor.SetPrivateField("_isSafeDisplayNameBeingPrepared", __instance, false);

                        EventInfo safeDisplayNamePreparedEvent = typeof(MultiplayerPlayerInfoState).GetEvent("OnSafeDisplayNamePrepared", BindingFlags.Public | BindingFlags.Instance);
                        if (safeDisplayNamePreparedEvent.RaiseMethod != null)
                        {
                            safeDisplayNamePreparedEvent.RaiseMethod.Invoke(__instance, new object[] { Accessor.GetPrivateProperty <MultiplayerPlayerInfoState, string>("SafeDisplayName", __instance) });
                        }
                    });
                }
                else
                {
                    Action <string> onSafeDisplayNameReceived2 = onSafeDisplayNameReceived;
                    if (onSafeDisplayNameReceived2 != null)
                    {
                        onSafeDisplayNameReceived2(MultiplayerPlayerNameManager.GetFullPrefixForPlayfabID(__instance.state.PlayFabID) + MultiplayerPlayerNameManager.GetNameForPlayfabID(__instance.state.PlayFabID, Accessor.GetPrivateProperty <MultiplayerPlayerInfoState, string>("SafeDisplayName", __instance)));
                    }
                }

                return(false);
            }