private float encodeArsenal(SheetGraphics graphics, ReportSession session, float distanceFromTop)
     throws DocumentException {
   EncodingMetrics metrics = EncodingMetrics.From(graphics, session);
   float contentWidth = BoxBoundsFactory.getContentWidth(pageConfiguration, 2);
   float height = encoderRegistry.getPreferredHeight(metrics, contentWidth, ARSENAL_LUNAR);
   ContentEncoder weaponryEncoder =
       encoderRegistry.createEncoder(resources, session, ARSENAL_LUNAR);
   Bounds bounds =
       pageConfiguration.getColumnRectangle(
           distanceFromTop, height, 2, PageConfiguration.Offset(0));
   boxEncoder.encodeBox(session, graphics, weaponryEncoder, bounds);
   return height;
 }
 @Override
 public float getValue(EncodingMetrics metrics, float width) {
   RegainEssenceContent essenceContent =
       metrics.getSession().createContent(RegainEssenceContent.class);
   return new RegainEssenceTableEncoder().getTableHeight(essenceContent);
 }