code: public void generate(Output out) throws IOException {
          for (Section section : sections) {
              section.generate(out);
              out.lineBreak();
              out.optionalLineBreak();
          }
      }
docs: Generates the final output into the given parameter.
  
  @param out the target for the generated output
  @throws IOException in case of an io error in the underlying writer