public int dump(DumpContext dc) throws IOException {
   dc.indent();
   dc.getPs().print("code_version_table2_\n");
   dc.increaseIndent();
   int retVal = 0;
   // write header
   if (header != null) {
     dc.indent();
     dc.getPs().println("header");
     retVal += header.dump(dc);
   }
   // write protocol_version
   dc.indent();
   dc.getPs()
       .println(
           "protocol_version="
               + protocol_version
               + "(0x"
               + Integer.toHexString(protocol_version)
               + ")");
   // write configuration_count_change
   dc.indent();
   dc.getPs()
       .println(
           "configuration_count_change="
               + configuration_count_change
               + "(0x"
               + Integer.toHexString(configuration_count_change)
               + ")");
   // write resources
   if (resources != null) {
     dc.indent();
     dc.getPs().println("resources");
     retVal += resources.dump(dc);
   }
   // write pvData
   if (pvData != null) {
     dc.indent();
     dc.getPs().println("pvData");
     retVal += pvData.dump(dc);
   }
   // write certificateCount
   dc.indent();
   dc.getPs()
       .println(
           "certificateCount="
               + certificateCount
               + "(0x"
               + Integer.toHexString(certificateCount)
               + ")");
   // write cvCertificates
   {
     ArrayList<CVCertificate> temp1 = cvCertificates;
     for (int iIdx = 0; iIdx < temp1.getCount(); iIdx++) {
       CVCertificate element = temp1.get(iIdx);
       dc.indent();
       dc.getPs().println(iIdx);
       if (element != null) {
         dc.indent();
         dc.getPs().println("element");
         retVal += element.dump(dc);
       }
     }
   }
   dc.decreaseIndent();
   return retVal;
 }