code: @Override
      public Rectangle paint(IReaction reaction, IDrawVisitor drawVisitor) {
  
          // calculate the bounds
          Rectangle2D modelBounds = BoundsCalculator.calculateBounds(reaction);
  
          // setup and draw
          this.setupTransformNatural(modelBounds);
          IRenderingElement diagram = this.generateDiagram(reaction);
          this.paint(drawVisitor, diagram);
  
          return this.convertToDiagramBounds(modelBounds);
      }
docs: {@inheritDoc}