static void Postfix(CampaignChallengeLeaderboardViewController __instance, ref LeaderboardTableView ___table, ref Challenge ___lastClicked)
        {
            int maxScore = 0;

            try
            {
                var id           = ___lastClicked.FindSong().levelID;
                var beatmapLevel = Loader.BeatmapLevelsModelSO.GetBeatmapLevelIfLoaded(id);
                if (beatmapLevel == null)
                {
                    Logger.log.Debug("beatmap level null");
                    return;
                }
                var levelDifficultyBeatmapSets = beatmapLevel.beatmapLevelData.difficultyBeatmapSets;
                var missionData             = ___lastClicked.GetMissionData(new Campaign()); // campaign doesn't matter here
                var levelDifficultyBeatmaps = levelDifficultyBeatmapSets.First(x => x.beatmapCharacteristic.Equals(missionData.beatmapCharacteristic)).difficultyBeatmaps;
                foreach (var diff in levelDifficultyBeatmaps)
                {
                    if (diff.difficulty.Equals(___lastClicked.difficulty))
                    {
                        Logger.log.Debug("Found note count");
                        var noteCount = diff.beatmapData.notesCount;
                        maxScore = ScoreModel.MaxRawScoreForNumberOfNotes(noteCount);
                    }
                }

                LeaderboardAcc.GiveParams(ref ___table, maxScore);
                Logger.log.Debug($"Max Score: {maxScore}");
            }
            catch (Exception e)
            {
                Logger.log.Debug($"Could not load level data: {e}");
                return;
            }
        }
        protected override void DidActivate(bool firstActivation, bool addedToHierarchy, bool screenSystemEnabling)
        {
            if (firstActivation)
            {
                SetTitle("Custom Campaigns");
                showBackButton = true;

                _campaignFlowCoordinator           = Resources.FindObjectsOfTypeAll <CampaignFlowCoordinator>().First();
                _missionMapAnimationController     = Resources.FindObjectsOfTypeAll <MissionMapAnimationController>().First();
                _missionNodesManager               = Resources.FindObjectsOfTypeAll <MissionNodesManager>().First();
                _missionStagesManager              = Resources.FindObjectsOfTypeAll <MissionStagesManager>().First();
                _missionConnectionsGenerator       = Resources.FindObjectsOfTypeAll <MissionConnectionsGenerator>().First();
                _missionSelectionMapViewController = Resources.FindObjectsOfTypeAll <MissionSelectionMapViewController>().First();
                _missionNodeSelectionManager       = Resources.FindObjectsOfTypeAll <MissionNodeSelectionManager>().First();
                _missionLevelDetailViewController  = Resources.FindObjectsOfTypeAll <MissionLevelDetailViewController>().First();
                _missionResultsViewController      = Resources.FindObjectsOfTypeAll <MissionResultsViewController>().First();

                _playButton    = _missionLevelDetailViewController.GetPrivateField <Button>("_playButton");
                _mapScrollView = _missionSelectionMapViewController.GetPrivateField <ScrollView>("_mapScrollView");
                _mapScrollViewItemsVisibilityController = _mapScrollView.GetComponent <ScrollViewItemsVisibilityController>();
                _backgroundImage = _mapScrollView.GetComponentsInChildren <Image>().First(x => x.name == "Map");
                _missionSelectionNavigationController = _campaignFlowCoordinator.GetPrivateField <MissionSelectionNavigationController>("_missionSelectionNavigationController");
                _gameplayModifierInfoListItemsList    = _missionLevelDetailViewController.GetPrivateField <GameplayModifierInfoListItemsList>("_gameplayModifierInfoListItemsList");
                _modifiersPanelGO       = _missionLevelDetailViewController.GetPrivateField <GameObject>("_modifiersPanelGO");
                _gameplayModifiersModel = _missionLevelDetailViewController.GetPrivateField <GameplayModifiersModelSO>("_gameplayModifiersModel");

                BSMLParser.instance.Parse(Utilities.GetResourceContent(Assembly.GetExecutingAssembly(), "BeatSaberCustomCampaigns.Views.challenge-detail.bsml"), _missionLevelDetailViewController.gameObject, this);

                _campaignProgressModel = _campaignFlowCoordinator.GetPrivateField <CampaignProgressModel>("_campaignProgressModel");

                _campaignListViewController                  = BeatSaberUI.CreateViewController <CampaignListViewController>();
                _campaignDetailViewController                = BeatSaberUI.CreateViewController <CampaignDetailViewController>();
                _campaignTotalLeaderboardViewController      = BeatSaberUI.CreateViewController <CampaignTotalLeaderboardViewController>();
                _campaignListNavigationController            = BeatSaberUI.CreateViewController <NavigationController>();
                _campaignListViewController.clickedCampaign += ShowDetails;
                _campaignDetailViewController.clickedPlay   += OpenCampaign;

                _campaignChallengeLeaderbaordViewController = BeatSaberUI.CreateViewController <CampaignChallengeLeaderboardViewController>();
                _unlockedItemsViewController = BeatSaberUI.CreateViewController <UnlockedItemsViewController>();
            }
            if (addedToHierarchy)
            {
                SetBaseCampaignEnabled(false);

                SetViewControllerToNavigationController(_campaignListNavigationController, _campaignListViewController);
                ProvideInitialViewControllers(_campaignListNavigationController);
            }
        }