static void Postfix(SGNavigationList __instance, HBSRadioSet ___radioSet, SGNavigationButton ___argoButton)
            {
                if (__instance.navParent != null)
                {
                    Mod.Log.Info?.Write($"SGNL:Start - adding new button.");
                    SimGameState simulation = UnityGameInstance.BattleTechGame.Simulation;

                    try {
                        // Create the store button
                        Mod.Log.Info?.Write(" - Creating store button");
                        GameObject storeButtonGO = GameObject.Instantiate(___argoButton.gameObject);
                        storeButtonGO.SetActive(true);
                        storeButtonGO.transform.position = ___argoButton.gameObject.transform.position;
                        storeButtonGO.transform.SetParent(___argoButton.gameObject.transform.parent);
                        storeButtonGO.transform.localScale = Vector3.one;
                        storeButtonGO.transform.SetSiblingIndex(1);

                        storeButton = storeButtonGO.GetComponent <SGNavigationButton>();
                        Traverse storeButtonT = Traverse.Create(storeButton).Field("id");
                        storeButtonT.SetValue(DropshipLocation.SHIP);
                        storeButton.SetupElement(__instance, ___radioSet, "Store",
                                                 LazySingletonBehavior <UIManager> .Instance.UILookAndColorConstants.DropshipRoomCaptainsQuartersIcon, simulation);

                        // Create the staff button
                        Mod.Log.Info?.Write(" - Creating staff button");
                        GameObject staffButtonGO = GameObject.Instantiate(___argoButton.gameObject);
                        staffButtonGO.SetActive(true);
                        staffButtonGO.transform.position = ___argoButton.gameObject.transform.position;
                        staffButtonGO.transform.SetParent(___argoButton.gameObject.transform.parent);
                        staffButtonGO.transform.localScale = Vector3.one;
                        staffButtonGO.transform.SetSiblingIndex(7);

                        staffButton = staffButtonGO.GetComponent <SGNavigationButton>();
                        Traverse staffButtonT = Traverse.Create(staffButton).Field("id");
                        staffButtonT.SetValue(DropshipLocation.CMD_CENTER);

                        staffButton.SetupElement(__instance, ___radioSet, "CMD Staff",
                                                 LazySingletonBehavior <UIManager> .Instance.UILookAndColorConstants.DropshipRoomCommandCenterIcon, simulation);
                        staffButton.AddFlyoutButton("Darius", DropshipMenuType.Darius);
                        staffButton.AddFlyoutButton("Yang", DropshipMenuType.Yang);
                        staffButton.AddFlyoutButton("Sumire", DropshipMenuType.Sumire);
                        staffButton.AddFlyoutButton("Farah", DropshipMenuType.Farah);
                        if (simulation.GetCharacterStatus(SimGameState.SimGameCharacterType.ALEXANDER))
                        {
                            staffButton.AddFlyoutButton("Alexander", DropshipMenuType.Alexander);
                        }

                        // Create the memorial button
                        Mod.Log.Info?.Write(" - Creating memorial button");
                        GameObject memorialButtonGO = GameObject.Instantiate(___argoButton.gameObject);
                        memorialButtonGO.SetActive(true);
                        memorialButtonGO.transform.position = ___argoButton.gameObject.transform.position;
                        memorialButtonGO.transform.SetParent(___argoButton.gameObject.transform.parent);
                        memorialButtonGO.transform.localScale = Vector3.one;
                        memorialButtonGO.transform.SetSiblingIndex(9);

                        memorialButton = memorialButtonGO.GetComponent <SGNavigationButton>();
                        Traverse memorialButtonT = Traverse.Create(memorialButton).Field("id");
                        memorialButtonT.SetValue(DropshipLocation.BARRACKS);

                        memorialButton.SetupElement(__instance, ___radioSet, "Memorial",
                                                    LazySingletonBehavior <UIManager> .Instance.UILookAndColorConstants.DropshipRoomBarracksIcon, simulation);
                        //memorialButton.AddFlyoutButton("Memorial Wall", DropshipMenuType.MemorialWall);
                    } catch (Exception e) {
                        Mod.Log.Info?.Write("Error: " + e.Message);
                    }
                }
            }