docs: private List<TagRenderData> buildTagRenderDataList() {
          final List<TagRenderData> tagRenderData = new ArrayList<TagRenderData>();
          final Collection<TagCloudTag> tags = tagCollectionModel.getObject();
  
          int minWeight = Integer.MAX_VALUE;
          int maxWeight = Integer.MIN_VALUE;
  
          for (final TagCloudTag tag : tags) {
              minWeight = Math.min(minWeight, tag.getWeight());
              maxWeight = Math.max(maxWeight, tag.getWeight());
          }
  
          final int fontRange = maxFontSizeInPixels - minFontSizeInPixels;
  
          int weightRange = 1;
          if (minWeight != maxWeight) {
              weightRange = maxWeight - minWeight;
          }
  
          float weightIncrease = 0;
          if (fontRange >= weightRange) {
              weightIncrease = fontRange / weightRange;
          } else {
              weightIncrease = weightRange / fontRange;
          }
  
          for (final TagCloudTag tag : tags) {
  
              final int fontSize = Math.round(minFontSizeInPixels + (tag.getWeight() - minWeight) * weightIncrease);
              tagRenderData.add(new TagRenderData(tag, fontSize));
          }
          return tagRenderData;
      }