/// <summary>
        /// Loads the scores using the provided parameters.
        /// </summary>
        /// <param name="leaderboardId">Leaderboard identifier.</param>
        /// <param name="start">Start either top scores, or player centered.</param>
        /// <param name="rowCount">Row count. the number of rows to return.</param>
        /// <param name="collection">Collection. social or public</param>
        /// <param name="timeSpan">Time span. daily, weekly, all-time</param>
        /// <param name="callback">Callback to invoke when completed.</param>
        public void LoadScores(
            string leaderboardId,
            LeaderboardStart start,
            int rowCount,
            LeaderboardCollection collection,
            LeaderboardTimeSpan timeSpan,
            Action <LeaderboardScoreData> callback)
        {
            if (!IsAuthenticated())
            {
                GooglePlayGames.OurUtils.Logger.e("LoadScores can only be called after authentication.");
                callback(new LeaderboardScoreData(
                             leaderboardId,
                             ResponseStatus.NotAuthorized));
                return;
            }

            mClient.LoadScores(
                leaderboardId,
                start,
                rowCount,
                collection,
                timeSpan,
                callback);
        }
        public void LoadScores(ILeaderboard board, Action <bool> callback)
        {
            //IL_004e: Unknown result type (might be due to invalid IL or missing references)
            //IL_0053: Unknown result type (might be due to invalid IL or missing references)
            //IL_0054: Unknown result type (might be due to invalid IL or missing references)
            //IL_0055: Expected I4, but got Unknown
            //IL_00e2: Unknown result type (might be due to invalid IL or missing references)
            //IL_00e7: Unknown result type (might be due to invalid IL or missing references)
            //IL_00fb: Unknown result type (might be due to invalid IL or missing references)
            //IL_0100: Unknown result type (might be due to invalid IL or missing references)
            //IL_011f: Unknown result type (might be due to invalid IL or missing references)
            //IL_0125: Invalid comparison between Unknown and I4
            if (!IsAuthenticated())
            {
                Logger.e("LoadScores can only be called after authentication.");
                if (callback != null)
                {
                    callback(false);
                }
            }
            else
            {
                TimeScope           timeScope = board.get_timeScope();
                LeaderboardTimeSpan timeSpan;
                switch ((int)timeScope)
                {
                case 2:
                    timeSpan = LeaderboardTimeSpan.AllTime;
                    break;

                case 1:
                    timeSpan = LeaderboardTimeSpan.Weekly;
                    break;

                case 0:
                    timeSpan = LeaderboardTimeSpan.Daily;
                    break;

                default:
                    timeSpan = LeaderboardTimeSpan.AllTime;
                    break;
                }
                ((PlayGamesLeaderboard)board).loading = true;
                Logger.d("LoadScores, board=" + board + " callback is " + callback);
                IPlayGamesClient playGamesClient = mClient;
                string           id    = board.get_id();
                Range            range = board.get_range();
                int rowCount;
                if (range.count > 0)
                {
                    Range range2 = board.get_range();
                    rowCount = range2.count;
                }
                else
                {
                    rowCount = mClient.LeaderboardMaxResults();
                }
                playGamesClient.LoadScores(id, LeaderboardStart.PlayerCentered, rowCount, ((int)board.get_userScope() != 1) ? LeaderboardCollection.Public : LeaderboardCollection.Social, timeSpan, delegate(LeaderboardScoreData scoreData)
                {
                    HandleLoadingScores((PlayGamesLeaderboard)board, scoreData, callback);
                });
            }
        }