docs: def get_block_adjustments(crypto, points=None, intervals=None, **modes):
      """
      This utility is used to determine the actual block rate. The output can be
      directly copied to the `blocktime_adjustments` setting.
      """
      from moneywagon import get_block
      all_points = []
  
      if intervals:
          latest_block_height = get_block(crypto, latest=True, **modes)['block_number']
          interval = int(latest_block_height / float(intervals))
          all_points = [x * interval for x in range(1, intervals - 1)]
  
      if points:
          all_points.extend(points)
  
      all_points.sort()
  
      adjustments = []
      previous_point = 0
      previous_time = (crypto_data[crypto.lower()].get('genesis_date').replace(tzinfo=pytz.UTC)
          or get_block(crypto, block_number=0, **modes)['time']
      )
  
      for point in all_points:
          if point == 0:
              continue
          point_time = get_block(crypto, block_number=point, **modes)['time']
          length = point - previous_point
          minutes = (point_time - previous_time).total_seconds() / 60
          rate = minutes / length
          adjustments.append([previous_point, rate])
  
          previous_time = point_time
          previous_point = point
  
      return adjustments