docs: def get_leaderboard(self, round_num=0, tournament=1):
          """Retrieves the leaderboard for the given round.
  
          Args:
              round_num (int, optional): The round you are interested in,
                  defaults to current round.
              tournament (int, optional): ID of the tournament, defaults to 1
  
          Returns:
              list of dicts: list of participants
  
              For each user in the list, there is a dict with the following
              content:
  
                  * concordance (`dict`)
                   * pending (`bool`)
                   * value (`bool`)
                  * consistency (`float`)
                  * liveLogloss (`float` or `None`)
                  * liveAuroc (`float` or `None`)
                  * validationLogloss (`float`)
                  * validationAuroc (`float` or `None`)
                  * paymentGeneral (`dict` or `None`)
                   * nmrAmount (`decimal.Decimal`)
                   * usdAmount (`decimal.Decimal`)
                  * paymentStaking (`dict` or `None`)
                   * nmrAmount (`decimal.Decimal`)
                   * usdAmount (`decimal.Decimal`)
                  * submissionId (`str`)
                  * username (`str`)
                  * stakeResolution (`dict`)
                   * destroyed (`bool`)
                   * paid (`decimal.Decimal`)
                   * successful ('bool')
  
          Example:
              >>> NumerAPI().get_leaderboard(99)
              [{'concordance': {'pending': False, 'value': True},
                'consistency': 83.33333333333334,
                'liveLogloss': 0.6941153941722517,
                'liveAuroc': 0.5368847103148798,
                'paymentGeneral': None,
                'paymentStaking': None,
                'submissionId': '4459d3df-0a4b-4996-ad44-41abb7c45336',
                'stakeResolution': {'destroyed': False,
                                    'paid': Decimal('19.86'),
                                    'successful': True},
                'username': 'ci_wp',
                'validationLogloss': 0.692269984475575},
                'validationAuroc': 0.6368847103148798,
               ...
              ]
          """
          msg = "getting leaderboard for tournament {} round {}"
          self.logger.info(msg.format(tournament, round_num))
          query = '''
              query($number: Int!
                    $tournament: Int!) {
                rounds(number: $number
                       tournament: $tournament) {
                  leaderboard {
                    consistency
                    concordance {
                      pending
                      value
                    }
                    liveLogloss
                    liveAuroc
                    submissionId
                    username
                    validationLogloss
                    validationAuroc
                    paymentGeneral {
                      nmrAmount
                      usdAmount
                    }
                    paymentStaking {
                      nmrAmount
                      usdAmount
                    }
                    stakeResolution {
                      destroyed
                      paid
                      successful
                    }
                  }
                }
              }
          '''
          arguments = {'number': round_num, 'tournament': tournament}
          result = self.raw_query(query, arguments)['data']['rounds'][0]
          # happens for non-existent tournament IDs
          if result is None:
              return None
          leaderboard = result['leaderboard']
          # parse to correct data types
          for item in leaderboard:
              for p in ["paymentGeneral", "paymentStaking"]:
                  utils.replace(item[p], "nmrAmount", utils.parse_float_string)
                  utils.replace(item[p], "usdAmount", utils.parse_float_string)
              utils.replace(item['stakeResolution'], "paid",
                            utils.parse_float_string)
          return leaderboard