code: protected Patch createProcessedPatch(final Patch original) {
  
          // Process elements
          final List<PatchElement> elements = new ArrayList<PatchElement>();
          // Process layers
          for (final PatchEntry entry : getLayers()) {
              final PatchElement element = createPatchElement(entry, entry.element.getId(), entry.modifications);
              elements.add(element);
          }
          // Process add-ons
          for (final PatchEntry entry : getAddOns()) {
              final PatchElement element = createPatchElement(entry, entry.element.getId(), entry.modifications);
              elements.add(element);
          }
  
          // Swap the patch element modifications, keep the identity ones since we don't need to fix the misc modifications
          return new PatchImpl(original.getPatchId(), original.getDescription(), original.getLink(), original.getIdentity(), elements, identityEntry.modifications);
      }
docs: Create a patch representing what we actually processed. This may contain some fixed content hashes for removed
  modules.
  
  @param original the original
  @return the processed patch