code: public String generateId() throws IOException {
          HashCode currentHash = this.getRawComponentHash();
          currentHash = AceFunctions.generateHCId(currentHash.asBytes(), this.ic.getRawComponentHash().asBytes());
          for(AceRecord r: this.ic.getSoilLayers()) {
              currentHash = AceFunctions.generateHCId(currentHash.asBytes(), r.getRawComponentHash().asBytes());
          }
          for(AceEvent e: this.events.asList()) {
              currentHash = AceFunctions.generateHCId(currentHash.asBytes(), e.getRawComponentHash().asBytes());
          }
          currentHash = AceFunctions.generateHCId(currentHash.asBytes(), this.observed.getRawComponentHash().asBytes());
          for(AceRecord r: this.observed.getTimeseries()) {
              currentHash = AceFunctions.generateHCId(currentHash.asBytes(), r.getRawComponentHash().asBytes());
          }
          return currentHash.toString();
      }
docs: able to trigger this method?