как улучшить этот код
private IEnumerable<KeyValuePair<string, string>> BeatmapQuery(GetBeatmapOptions options) {
            return new Dictionary<string, string>() {
                { "k", AccessToken },
                { "since", options.Since?.ToUniversalTime().ToString("yyyy-MM-dd HH:mm:ss") },
                { "s", options.BeatmapSetId?.ToString() },
                { "b", options.BeatmapId?.ToString() },
                { "u", options.User },
                { "type", options.Type },
                { "m", ((int?)options.Mode)?.ToString() },
                { "a", options.ConvertedBeatmaps == true ? "1" : "0" },
                { "h", options.Hash },
                { "limit", options.Limit?.ToString() },
                { "mods", options.Mods?.ToString() }
            }.Where(kv => kv.Value != null);
        }

        private IEnumerable<KeyValuePair<string, string>> UserQuery(GetUserOptions options) {
            return new Dictionary<string, string>() {
                { "k", AccessToken },
                { "u", options.User.ToString() },
                { "m", ((int)options.Mode).ToString() },
                { "type", options.Type },
                { "event_days", options.EventDays?.ToString() }
            }.Where(kv => kv.Value != null);
        }

        private IEnumerable<KeyValuePair<string, string>> UserBestQuery(GetUserBestOptions options) {
            return new Dictionary<string, string>() {
                { "k", AccessToken },
                { "u", options.User },
                { "m", ((int?)options.Mode)?.ToString() },
                { "limit", options.Limit?.ToString() },
                { "type", options.Type }
            }.Where(kv => kv.Value != null);
        }

        private IEnumerable<KeyValuePair<string, string>> UserRecentQuery(GetUserRecentOptions options) {
            return new Dictionary<string, string>() {
                { "k", AccessToken },
                { "u", options.User },
                { "m", ((int?)options.Mode)?.ToString() },
                { "limit", options.Limit?.ToString() },
                { "type", options.Type}
            }.Where(kv => kv.Value != null);
        }

        private IEnumerable<KeyValuePair<string, string>> ScoresQuery(GetScoresOptions options) {
            return new Dictionary<string, string>() {
                { "k", AccessToken },
                { "b", options.BeatmapId?.ToString() },
                { "u", options.User },
                { "m", ((int)options.Mode).ToString() },
                { "mods", options.Mods?.ToString() },
                { "type", options.Type},
                { "limit", options.Limit?.ToString() }
            }.Where(kv => kv.Value != null);
        }

        private IEnumerable<KeyValuePair<string, string>> MultiplayerQuery(GetMultiplayerOptions options) {
            return new Dictionary<string, string>() {
                { "k", AccessToken },
                { "mp", options.MatchId.ToString() }
            }.Where(kv => kv.Value != null);
        }

        private IEnumerable<KeyValuePair<string, string>> ReplayQuery(GetReplayOptions options) {
            return new Dictionary<string, string>() {
                { "k", AccessToken },
                { "b", options.BeatmapId.ToString() },
                { "u", options.User },
                { "m", ((int?)options.Mode)?.ToString() },
                { "s", options.ScoreId },
                { "type", options.Type },
                { "mods", ((int?)options.Mods)?.ToString() }
            }.Where(kv => kv.Value != null);
        }