diff -u results/org.owasp.antisamy/antisamy/1.7.3/jnorm/reference/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AbstractAntiSamyScanner.jimple results/org.owasp.antisamy/antisamy/1.7.3/jnorm/rebuild/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AbstractAntiSamyScanner.jimple
--- results/org.owasp.antisamy/antisamy/1.7.3/jnorm/reference/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AbstractAntiSamyScanner.jimple	2025-03-13 07:38:15.080469445 +0000
+++ results/org.owasp.antisamy/antisamy/1.7.3/jnorm/rebuild/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AbstractAntiSamyScanner.jimple	2025-03-13 07:38:17.988423692 +0000
@@ -8,24 +8,6 @@
 protected boolean isNoopenerAndNoreferrerAnchors;
 protected boolean isValidateParamAsEmbed;
 static final boolean $assertionsDisabled;
-static void <clinit>()
-{
-java.util.ResourceBundle v;
-java.lang.Class v;
-boolean v, v;
-v = class "Lorg/owasp/validator/html/scan/AbstractAntiSamyScanner;";
-v = virtualinvoke v.<java.lang.Class: boolean desiredAssertionStatus()>();
-if v != 0 goto label;
-v = 1;
-goto label;
-label:
-v = 0;
-label:
-<org.owasp.validator.html.scan.AbstractAntiSamyScanner: boolean $assertionsDisabled> = v;
-v = staticinvoke <org.owasp.validator.html.scan.AbstractAntiSamyScanner: java.util.ResourceBundle getResourceBundle()>();
-<org.owasp.validator.html.scan.AbstractAntiSamyScanner: java.util.ResourceBundle messages> = v;
-return;
-}
 public abstract org.owasp.validator.html.CleanResults scan(java.lang.String) throws org.owasp.validator.html.ScanException;
 public abstract org.owasp.validator.html.CleanResults getResults();
 public void <init>(org.owasp.validator.html.Policy)
@@ -185,4 +167,22 @@
 label:
 return v;
 }
+static void <clinit>()
+{
+java.util.ResourceBundle v;
+java.lang.Class v;
+boolean v, v;
+v = class "Lorg/owasp/validator/html/scan/AbstractAntiSamyScanner;";
+v = virtualinvoke v.<java.lang.Class: boolean desiredAssertionStatus()>();
+if v != 0 goto label;
+v = 1;
+goto label;
+label:
+v = 0;
+label:
+<org.owasp.validator.html.scan.AbstractAntiSamyScanner: boolean $assertionsDisabled> = v;
+v = staticinvoke <org.owasp.validator.html.scan.AbstractAntiSamyScanner: java.util.ResourceBundle getResourceBundle()>();
+<org.owasp.validator.html.scan.AbstractAntiSamyScanner: java.util.ResourceBundle messages> = v;
+return;
+}
 }
\ No newline at end of file
diff -u results/org.owasp.antisamy/antisamy/1.7.3/jnorm/reference/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AntiSamyDOMScanner$1.jimple results/org.owasp.antisamy/antisamy/1.7.3/jnorm/rebuild/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AntiSamyDOMScanner$1.jimple
--- results/org.owasp.antisamy/antisamy/1.7.3/jnorm/reference/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AntiSamyDOMScanner$1.jimple	2025-03-13 07:38:15.092469257 +0000
+++ results/org.owasp.antisamy/antisamy/1.7.3/jnorm/rebuild/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AntiSamyDOMScanner$1.jimple	2025-03-13 07:38:18.000423504 +0000
@@ -1,7 +1,7 @@
 class org.owasp.validator.html.scan.AntiSamyDOMScanner$1 extends java.lang.Object implements java.util.concurrent.Callable
 {
+final java.lang.String val$trimmed;
 final org.owasp.validator.html.scan.AntiSamyDOMScanner this$0;
-private final java.lang.String val$trimmed;
 void <init>(org.owasp.validator.html.scan.AntiSamyDOMScanner, java.lang.String)
 {
 java.lang.String v;
diff -u results/org.owasp.antisamy/antisamy/1.7.3/jnorm/reference/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AntiSamyDOMScanner.jimple results/org.owasp.antisamy/antisamy/1.7.3/jnorm/rebuild/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AntiSamyDOMScanner.jimple
--- results/org.owasp.antisamy/antisamy/1.7.3/jnorm/reference/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AntiSamyDOMScanner.jimple	2025-03-13 07:38:15.080469445 +0000
+++ results/org.owasp.antisamy/antisamy/1.7.3/jnorm/rebuild/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AntiSamyDOMScanner.jimple	2025-03-13 07:38:17.988423692 +0000
@@ -7,19 +7,6 @@
 private static final java.util.regex.Pattern invalidXmlCharacters;
 private static final java.util.regex.Pattern conditionalDirectives;
 private static final java.util.Queue cachedItems;
-static void <clinit>()
-{
-java.util.regex.Pattern v, v;
-java.util.concurrent.ConcurrentLinkedQueue v;
-v = staticinvoke <java.util.regex.Pattern: java.util.regex.Pattern compile(java.lang.String)>("[\\u0000-\\u001F\\uD800-\\uDFFF\\uFFFE-\\uFFFF&&[^\\u0009\\u000A\\u000D]]");
-<org.owasp.validator.html.scan.AntiSamyDOMScanner: java.util.regex.Pattern invalidXmlCharacters> = v;
-v = staticinvoke <java.util.regex.Pattern: java.util.regex.Pattern compile(java.lang.String)>("<?!?\\[\\s*(?:end)?if[^]]*\\]>?");
-<org.owasp.validator.html.scan.AntiSamyDOMScanner: java.util.regex.Pattern conditionalDirectives> = v;
-v = new java.util.concurrent.ConcurrentLinkedQueue;
-specialinvoke v.<java.util.concurrent.ConcurrentLinkedQueue: void <init>()>();
-<org.owasp.validator.html.scan.AntiSamyDOMScanner: java.util.Queue cachedItems> = v;
-return;
-}
 public void <init>(org.owasp.validator.html.Policy)
 {
 org.w3c.dom.DocumentFragment v;
@@ -293,7 +280,7 @@
 org.owasp.validator.html.scan.AntiSamyDOMScanner v;
 java.lang.String v, v;
 org.owasp.validator.html.model.Tag v, v;
-boolean v, v, v;
+boolean v, v, v, v;
 v := @this: org.owasp.validator.html.scan.AntiSamyDOMScanner;
 v := @parameter: org.owasp.validator.html.model.Tag;
 v := @parameter: org.owasp.validator.html.model.Tag;
@@ -307,9 +294,12 @@
 if v == null goto label;
 v = virtualinvoke v.<org.owasp.validator.html.model.Tag: boolean isAction(java.lang.String)>("validate");
 if v == 0 goto label;
-return 1;
+v = 1;
+goto label;
 label:
-return 0;
+v = 0;
+label:
+return v;
 label:
 return 0;
 }
@@ -490,9 +480,11 @@
 v = new java.lang.StringBuffer;
 specialinvoke v.<java.lang.StringBuffer: void <init>()>();
 v = 0;
-goto label;
 label:
 v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NodeList getChildNodes()>();
+v = interfaceinvoke v.<org.w3c.dom.NodeList: int getLength()>();
+if v >= v goto label;
+v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NodeList getChildNodes()>();
 v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(v);
 v = virtualinvoke v.<java.lang.StringBuffer: int length()>();
 if v <= 0 goto label;
@@ -501,10 +493,8 @@
 v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getTextContent()>();
 virtualinvoke v.<java.lang.StringBuffer: java.lang.StringBuffer append(java.lang.String)>(v);
 v = v + 1;
+goto label;
 label:
-v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NodeList getChildNodes()>();
-v = interfaceinvoke v.<org.w3c.dom.NodeList: int getLength()>();
-if v < v goto label;
 v = virtualinvoke v.<java.lang.StringBuffer: java.lang.String toString()>();
 v = v.<org.owasp.validator.html.scan.AntiSamyDOMScanner: org.owasp.validator.html.InternalPolicy policy>;
 v = virtualinvoke v.<org.owasp.validator.html.InternalPolicy: int getMaxInputSize()>();
@@ -525,15 +515,12 @@
 v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.Node getFirstChild()>();
 interfaceinvoke v.<org.w3c.dom.Node: void setNodeValue(java.lang.String)>(v);
 v = v - 1;
-goto label;
 label:
+if v < 1 goto label;
 v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NodeList getChildNodes()>();
 v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(v);
 interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.Node removeChild(org.w3c.dom.Node)>(v);
 v = v - 1;
-label:
-if v >= 1 goto label;
-label:
 goto label;
 label:
 v := @caughtexception;
@@ -568,8 +555,9 @@
 v := @parameter: java.lang.String;
 v := @parameter: org.w3c.dom.NodeList;
 v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NamedNodeMap getAttributes()>();
-goto label;
 label:
+v = interfaceinvoke v.<org.w3c.dom.NamedNodeMap: int getLength()>();
+if v <= 0 goto label;
 v = newarray (java.lang.Object)[2];
 v[0] = v;
 v = interfaceinvoke v.<org.w3c.dom.NamedNodeMap: org.w3c.dom.Node item(int)>(0);
@@ -580,14 +568,13 @@
 v = interfaceinvoke v.<org.w3c.dom.NamedNodeMap: org.w3c.dom.Node item(int)>(0);
 v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getNodeName()>();
 interfaceinvoke v.<org.w3c.dom.Element: void removeAttribute(java.lang.String)>(v);
+goto label;
 label:
-v = interfaceinvoke v.<org.w3c.dom.NamedNodeMap: int getLength()>();
-if v > 0 goto label;
 v = 0;
 v = 0;
 v = interfaceinvoke v.<org.w3c.dom.NodeList: int getLength()>();
-goto label;
 label:
+if v >= v goto label;
 v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(v);
 v = interfaceinvoke v.<org.w3c.dom.Node: short getNodeType()>();
 if v == 3 goto label;
@@ -597,8 +584,8 @@
 v = v + 1;
 label:
 v = v + 1;
+goto label;
 label:
-if v < v goto label;
 return;
 }
 private boolean processAttributes(org.w3c.dom.Element, java.lang.String, org.owasp.validator.html.model.Tag, int) throws org.owasp.validator.html.ScanException
@@ -626,8 +613,9 @@
 v := @parameter: int;
 v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NamedNodeMap getAttributes()>();
 v = 0;
-goto label;
 label:
+v = interfaceinvoke v.<org.w3c.dom.NamedNodeMap: int getLength()>();
+if v >= v goto label;
 v = interfaceinvoke v.<org.w3c.dom.NamedNodeMap: org.w3c.dom.Node item(int)>(v);
 v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getNodeName()>();
 v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getNodeValue()>();
@@ -748,9 +736,8 @@
 v = v - 1;
 label:
 v = v + 1;
+goto label;
 label:
-v = interfaceinvoke v.<org.w3c.dom.NamedNodeMap: int getLength()>();
-if v < v goto label;
 return 0;
 catch org.w3c.dom.DOMException from label to label with label;
 catch org.owasp.validator.html.ScanException from label to label with label;
@@ -778,8 +765,9 @@
 v := @parameter: org.w3c.dom.NodeList;
 v := @parameter: int;
 v = 0;
-goto label;
 label:
+v = interfaceinvoke v.<org.w3c.dom.NodeList: int getLength()>();
+if v >= v goto label;
 v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(v);
 specialinvoke v.<org.owasp.validator.html.scan.AntiSamyDOMScanner: void recursiveValidateTag(org.w3c.dom.Node,int)>(v, v);
 v = interfaceinvoke v.<org.w3c.dom.Node: org.w3c.dom.Node getParentNode()>();
@@ -787,9 +775,8 @@
 v = v - 1;
 label:
 v = v + 1;
+goto label;
 label:
-v = interfaceinvoke v.<org.w3c.dom.NodeList: int getLength()>();
-if v < v goto label;
 return;
 }
 private void removePI(org.w3c.dom.Node)
@@ -907,11 +894,11 @@
 }
 private boolean isAllowedEmptyTag(java.lang.String)
 {
-org.owasp.validator.html.TagMatcher v;
 org.owasp.validator.html.scan.AntiSamyDOMScanner v;
 org.owasp.validator.html.InternalPolicy v;
+org.owasp.validator.html.TagMatcher v;
 java.lang.String v, v;
-boolean v, v;
+boolean v, v, v;
 v := @this: org.owasp.validator.html.scan.AntiSamyDOMScanner;
 v := @parameter: java.lang.String;
 v = "head";
@@ -920,10 +907,14 @@
 v = v.<org.owasp.validator.html.scan.AntiSamyDOMScanner: org.owasp.validator.html.InternalPolicy policy>;
 v = virtualinvoke v.<org.owasp.validator.html.InternalPolicy: org.owasp.validator.html.TagMatcher getAllowedEmptyTags()>();
 v = virtualinvoke v.<org.owasp.validator.html.TagMatcher: boolean matches(java.lang.String)>(v);
-if v != 0 goto label;
-return 0;
+if v == 0 goto label;
 label:
-return 1;
+v = 1;
+goto label;
+label:
+v = 0;
+label:
+return v;
 }
 private void promoteChildren(org.w3c.dom.Element)
 {
@@ -947,14 +938,14 @@
 v := @parameter: org.w3c.dom.Element;
 v := @parameter: org.w3c.dom.NodeList;
 v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.Node getParentNode()>();
-goto label;
 label:
+v = interfaceinvoke v.<org.w3c.dom.NodeList: int getLength()>();
+if v <= 0 goto label;
 v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(0);
 v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.Node removeChild(org.w3c.dom.Node)>(v);
 interfaceinvoke v.<org.w3c.dom.Node: org.w3c.dom.Node insertBefore(org.w3c.dom.Node,org.w3c.dom.Node)>(v, v);
+goto label;
 label:
-v = interfaceinvoke v.<org.w3c.dom.NodeList: int getLength()>();
-if v > 0 goto label;
 if v == null goto label;
 specialinvoke v.<org.owasp.validator.html.scan.AntiSamyDOMScanner: void removeNode(org.w3c.dom.Node)>(v);
 label:
@@ -993,7 +984,6 @@
 org.w3c.dom.Element v;
 org.w3c.dom.Document v, v;
 org.w3c.dom.Node v, v;
-java.lang.StringBuilder v;
 java.lang.String v, v, v;
 boolean v;
 v := @this: org.owasp.validator.html.scan.AntiSamyDOMScanner;
@@ -1007,8 +997,7 @@
 v = interfaceinvoke v.<org.w3c.dom.Element: boolean hasChildNodes()>();
 if v == 0 goto label;
 v = interfaceinvoke v.<org.w3c.dom.Node: org.w3c.dom.Document getOwnerDocument()>();
-specialinvoke v.<java.lang.StringBuilder: void <init>(java.lang.String)>("</");
-v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001>");
+v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("</\u0001>");
 v = interfaceinvoke v.<org.w3c.dom.Document: org.w3c.dom.Text createTextNode(java.lang.String)>(v);
 v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.Node getNextSibling()>();
 interfaceinvoke v.<org.w3c.dom.Node: org.w3c.dom.Node insertBefore(org.w3c.dom.Node,org.w3c.dom.Node)>(v, v);
@@ -1018,25 +1007,25 @@
 }
 private java.lang.String toString(org.w3c.dom.Element)
 {
+org.owasp.validator.html.scan.AntiSamyDOMScanner v;
+org.w3c.dom.Element v;
 org.w3c.dom.Node v;
 int v, v;
+java.lang.StringBuilder v;
 org.w3c.dom.NamedNodeMap v;
 java.lang.String v, v, v, v, v, v, v;
 boolean v;
-org.owasp.validator.html.scan.AntiSamyDOMScanner v;
-org.w3c.dom.Element v;
-java.lang.StringBuilder v, v;
 v := @this: org.owasp.validator.html.scan.AntiSamyDOMScanner;
 v := @parameter: org.w3c.dom.Element;
 v = new java.lang.StringBuilder;
-specialinvoke v.<java.lang.StringBuilder: void <init>(java.lang.String)>("<");
 v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getNodeName()>();
-v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001");
+v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("<\u0001");
 specialinvoke v.<java.lang.StringBuilder: void <init>(java.lang.String)>(v);
 v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NamedNodeMap getAttributes()>();
 v = 0;
-goto label;
 label:
+v = interfaceinvoke v.<org.w3c.dom.NamedNodeMap: int getLength()>();
+if v >= v goto label;
 v = interfaceinvoke v.<org.w3c.dom.NamedNodeMap: org.w3c.dom.Node item(int)>(v);
 v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getNodeName()>();
 v = interfaceinvoke v.<org.w3c.dom.Node: java.lang.String getNodeValue()>();
@@ -1048,9 +1037,8 @@
 virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
 virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("\"");
 v = v + 1;
+goto label;
 label:
-v = interfaceinvoke v.<org.w3c.dom.NamedNodeMap: int getLength()>();
-if v < v goto label;
 v = interfaceinvoke v.<org.w3c.dom.Element: boolean hasChildNodes()>();
 if v == 0 goto label;
 virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(">");
@@ -1069,4 +1057,17 @@
 v = v.<org.owasp.validator.html.scan.AntiSamyDOMScanner: org.owasp.validator.html.CleanResults results>;
 return v;
 }
+static void <clinit>()
+{
+java.util.regex.Pattern v, v;
+java.util.concurrent.ConcurrentLinkedQueue v;
+v = staticinvoke <java.util.regex.Pattern: java.util.regex.Pattern compile(java.lang.String)>("[\\u0000-\\u001F\\uD800-\\uDFFF\\uFFFE-\\uFFFF&&[^\\u0009\\u000A\\u000D]]");
+<org.owasp.validator.html.scan.AntiSamyDOMScanner: java.util.regex.Pattern invalidXmlCharacters> = v;
+v = staticinvoke <java.util.regex.Pattern: java.util.regex.Pattern compile(java.lang.String)>("<?!?\\[\\s*(?:end)?if[^]]*\\]>?");
+<org.owasp.validator.html.scan.AntiSamyDOMScanner: java.util.regex.Pattern conditionalDirectives> = v;
+v = new java.util.concurrent.ConcurrentLinkedQueue;
+specialinvoke v.<java.util.concurrent.ConcurrentLinkedQueue: void <init>()>();
+<org.owasp.validator.html.scan.AntiSamyDOMScanner: java.util.Queue cachedItems> = v;
+return;
+}
 }
\ No newline at end of file
diff -u results/org.owasp.antisamy/antisamy/1.7.3/jnorm/reference/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AntiSamySAXScanner$1.jimple results/org.owasp.antisamy/antisamy/1.7.3/jnorm/rebuild/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AntiSamySAXScanner$1.jimple
--- results/org.owasp.antisamy/antisamy/1.7.3/jnorm/reference/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AntiSamySAXScanner$1.jimple	2025-03-13 07:38:15.092469257 +0000
+++ results/org.owasp.antisamy/antisamy/1.7.3/jnorm/rebuild/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AntiSamySAXScanner$1.jimple	2025-03-13 07:38:18.000423504 +0000
@@ -1,8 +1,8 @@
 class org.owasp.validator.html.scan.AntiSamySAXScanner$1 extends java.lang.Object implements java.util.concurrent.Callable
 {
+final java.lang.String val$tainted;
+final java.io.StringWriter val$out;
 final org.owasp.validator.html.scan.AntiSamySAXScanner this$0;
-private final java.lang.String val$tainted;
-private final java.io.StringWriter val$out;
 void <init>(org.owasp.validator.html.scan.AntiSamySAXScanner, java.lang.String, java.io.StringWriter)
 {
 org.owasp.validator.html.scan.AntiSamySAXScanner v;
diff -u results/org.owasp.antisamy/antisamy/1.7.3/jnorm/reference/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AntiSamySAXScanner.jimple results/org.owasp.antisamy/antisamy/1.7.3/jnorm/rebuild/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AntiSamySAXScanner.jimple
--- results/org.owasp.antisamy/antisamy/1.7.3/jnorm/reference/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AntiSamySAXScanner.jimple	2025-03-13 07:38:15.068469635 +0000
+++ results/org.owasp.antisamy/antisamy/1.7.3/jnorm/rebuild/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.AntiSamySAXScanner.jimple	2025-03-13 07:38:17.976423882 +0000
@@ -2,23 +2,6 @@
 {
 private static final java.util.Queue cachedItems;
 private static final javax.xml.transform.TransformerFactory sTransformerFactory;
-static void <clinit>()
-{
-java.lang.String v;
-javax.xml.transform.TransformerFactory v, v, v;
-java.util.concurrent.ConcurrentLinkedQueue v;
-v = new java.util.concurrent.ConcurrentLinkedQueue;
-specialinvoke v.<java.util.concurrent.ConcurrentLinkedQueue: void <init>()>();
-<org.owasp.validator.html.scan.AntiSamySAXScanner: java.util.Queue cachedItems> = v;
-v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String,java.lang.String)>("antisamy.transformerfactory.impl", "com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl");
-v = staticinvoke <javax.xml.transform.TransformerFactory: javax.xml.transform.TransformerFactory newInstance(java.lang.String,java.lang.ClassLoader)>(v, null);
-<org.owasp.validator.html.scan.AntiSamySAXScanner: javax.xml.transform.TransformerFactory sTransformerFactory> = v;
-v = <org.owasp.validator.html.scan.AntiSamySAXScanner: javax.xml.transform.TransformerFactory sTransformerFactory>;
-virtualinvoke v.<javax.xml.transform.TransformerFactory: void setAttribute(java.lang.String,java.lang.Object)>("http://javax.xml.XMLConstants/property/accessExternalDTD", "");
-v = <org.owasp.validator.html.scan.AntiSamySAXScanner: javax.xml.transform.TransformerFactory sTransformerFactory>;
-virtualinvoke v.<javax.xml.transform.TransformerFactory: void setAttribute(java.lang.String,java.lang.Object)>("http://javax.xml.XMLConstants/property/accessExternalStylesheet", "");
-return;
-}
 public void <init>(org.owasp.validator.html.Policy)
 {
 org.owasp.validator.html.Policy v;
@@ -124,7 +107,7 @@
 org.htmlunit.cyberneko.parsers.SAXParser v, v;
 java.util.ResourceBundle v;
 org.owasp.validator.html.ScanException v;
-java.lang.String v, v;
+java.lang.String v, v, v;
 org.xml.sax.InputSource v;
 org.apache.xml.serialize.OutputFormat v;
 javax.xml.transform.sax.SAXSource v;
@@ -189,8 +172,9 @@
 v = <org.owasp.validator.html.scan.AntiSamySAXScanner: java.util.Queue cachedItems>;
 interfaceinvoke v.<java.util.Queue: boolean add(java.lang.Object)>(v);
 v = new org.owasp.validator.html.CleanResults;
+v = null;
 v = v.<org.owasp.validator.html.scan.AntiSamySAXScanner: java.util.List errorMessages>;
-specialinvoke v.<org.owasp.validator.html.CleanResults: void <init>(long,java.lang.String,org.w3c.dom.DocumentFragment,java.util.List)>(v, null, null, v);
+specialinvoke v.<org.owasp.validator.html.CleanResults: void <init>(long,java.lang.String,org.w3c.dom.DocumentFragment,java.util.List)>(v, v, null, v);
 label:
 return v;
 label:
@@ -240,4 +224,21 @@
 catch org.xml.sax.SAXNotRecognizedException from label to label with label;
 catch org.xml.sax.SAXNotSupportedException from label to label with label;
 }
+static void <clinit>()
+{
+java.lang.String v;
+javax.xml.transform.TransformerFactory v, v, v;
+java.util.concurrent.ConcurrentLinkedQueue v;
+v = new java.util.concurrent.ConcurrentLinkedQueue;
+specialinvoke v.<java.util.concurrent.ConcurrentLinkedQueue: void <init>()>();
+<org.owasp.validator.html.scan.AntiSamySAXScanner: java.util.Queue cachedItems> = v;
+v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String,java.lang.String)>("antisamy.transformerfactory.impl", "com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl");
+v = staticinvoke <javax.xml.transform.TransformerFactory: javax.xml.transform.TransformerFactory newInstance(java.lang.String,java.lang.ClassLoader)>(v, null);
+<org.owasp.validator.html.scan.AntiSamySAXScanner: javax.xml.transform.TransformerFactory sTransformerFactory> = v;
+v = <org.owasp.validator.html.scan.AntiSamySAXScanner: javax.xml.transform.TransformerFactory sTransformerFactory>;
+virtualinvoke v.<javax.xml.transform.TransformerFactory: void setAttribute(java.lang.String,java.lang.Object)>("http://javax.xml.XMLConstants/property/accessExternalDTD", "");
+v = <org.owasp.validator.html.scan.AntiSamySAXScanner: javax.xml.transform.TransformerFactory sTransformerFactory>;
+virtualinvoke v.<javax.xml.transform.TransformerFactory: void setAttribute(java.lang.String,java.lang.Object)>("http://javax.xml.XMLConstants/property/accessExternalStylesheet", "");
+return;
+}
 }
\ No newline at end of file
diff -u results/org.owasp.antisamy/antisamy/1.7.3/jnorm/reference/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.MagicSAXFilter$Ops.jimple results/org.owasp.antisamy/antisamy/1.7.3/jnorm/rebuild/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.MagicSAXFilter$Ops.jimple
--- results/org.owasp.antisamy/antisamy/1.7.3/jnorm/reference/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.MagicSAXFilter$Ops.jimple	2025-03-13 07:38:15.100469130 +0000
+++ results/org.owasp.antisamy/antisamy/1.7.3/jnorm/rebuild/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.MagicSAXFilter$Ops.jimple	2025-03-13 07:38:18.012423316 +0000
@@ -6,10 +6,56 @@
 public static final enum org.owasp.validator.html.scan.MagicSAXFilter$Ops TRUNCATE;
 public static final enum org.owasp.validator.html.scan.MagicSAXFilter$Ops KEEP;
 public static final enum org.owasp.validator.html.scan.MagicSAXFilter$Ops ENCODE;
-private static final org.owasp.validator.html.scan.MagicSAXFilter$Ops[] ENUM$VALUES;
+private static final org.owasp.validator.html.scan.MagicSAXFilter$Ops[] $VALUES;
+public static org.owasp.validator.html.scan.MagicSAXFilter$Ops[] values()
+{
+java.lang.Object v;
+org.owasp.validator.html.scan.MagicSAXFilter$Ops[] v;
+v = <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops[] $VALUES>;
+v = virtualinvoke v.<java.lang.Object: java.lang.Object clone()>();
+return v;
+}
+public static org.owasp.validator.html.scan.MagicSAXFilter$Ops valueOf(java.lang.String)
+{
+java.lang.String v;
+java.lang.Enum v;
+v := @parameter: java.lang.String;
+v = staticinvoke <java.lang.Enum: java.lang.Enum valueOf(java.lang.Class,java.lang.String)>(class "Lorg/owasp/validator/html/scan/MagicSAXFilter$Ops;", v);
+return v;
+}
+private void <init>(java.lang.String, int)
+{
+int v;
+org.owasp.validator.html.scan.MagicSAXFilter$Ops v;
+java.lang.String v;
+v := @this: org.owasp.validator.html.scan.MagicSAXFilter$Ops;
+v := @parameter: java.lang.String;
+v := @parameter: int;
+specialinvoke v.<java.lang.Enum: void <init>(java.lang.String,int)>(v, v);
+return;
+}
+private static org.owasp.validator.html.scan.MagicSAXFilter$Ops[] $values()
+{
+org.owasp.validator.html.scan.MagicSAXFilter$Ops v, v, v, v, v, v;
+org.owasp.validator.html.scan.MagicSAXFilter$Ops[] v;
+v = newarray (org.owasp.validator.html.scan.MagicSAXFilter$Ops)[6];
+v = <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops CSS>;
+v[0] = v;
+v = <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops FILTER>;
+v[1] = v;
+v = <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops REMOVE>;
+v[2] = v;
+v = <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops TRUNCATE>;
+v[3] = v;
+v = <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops KEEP>;
+v[4] = v;
+v = <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops ENCODE>;
+v[5] = v;
+return v;
+}
 static void <clinit>()
 {
-org.owasp.validator.html.scan.MagicSAXFilter$Ops v, v, v, v, v, v, v, v, v, v, v, v;
+org.owasp.validator.html.scan.MagicSAXFilter$Ops v, v, v, v, v, v;
 org.owasp.validator.html.scan.MagicSAXFilter$Ops[] v;
 v = new org.owasp.validator.html.scan.MagicSAXFilter$Ops;
 specialinvoke v.<org.owasp.validator.html.scan.MagicSAXFilter$Ops: void <init>(java.lang.String,int)>("CSS", 0);
@@ -29,49 +75,8 @@
 v = new org.owasp.validator.html.scan.MagicSAXFilter$Ops;
 specialinvoke v.<org.owasp.validator.html.scan.MagicSAXFilter$Ops: void <init>(java.lang.String,int)>("ENCODE", 5);
 <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops ENCODE> = v;
-v = newarray (org.owasp.validator.html.scan.MagicSAXFilter$Ops)[6];
-v = <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops CSS>;
-v[0] = v;
-v = <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops FILTER>;
-v[1] = v;
-v = <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops REMOVE>;
-v[2] = v;
-v = <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops TRUNCATE>;
-v[3] = v;
-v = <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops KEEP>;
-v[4] = v;
-v = <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops ENCODE>;
-v[5] = v;
-<org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops[] ENUM$VALUES> = v;
+v = staticinvoke <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops[] $values()>();
+<org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops[] $VALUES> = v;
 return;
 }
-private void <init>(java.lang.String, int)
-{
-int v;
-org.owasp.validator.html.scan.MagicSAXFilter$Ops v;
-java.lang.String v;
-v := @this: org.owasp.validator.html.scan.MagicSAXFilter$Ops;
-v := @parameter: java.lang.String;
-v := @parameter: int;
-specialinvoke v.<java.lang.Enum: void <init>(java.lang.String,int)>(v, v);
-return;
-}
-public static org.owasp.validator.html.scan.MagicSAXFilter$Ops[] values()
-{
-int v;
-org.owasp.validator.html.scan.MagicSAXFilter$Ops[] v, v;
-v = <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops[] ENUM$VALUES>;
-v = lengthof v;
-v = newarray (org.owasp.validator.html.scan.MagicSAXFilter$Ops)[v];
-staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
-return v;
-}
-public static org.owasp.validator.html.scan.MagicSAXFilter$Ops valueOf(java.lang.String)
-{
-java.lang.String v;
-java.lang.Enum v;
-v := @parameter: java.lang.String;
-v = staticinvoke <java.lang.Enum: java.lang.Enum valueOf(java.lang.Class,java.lang.String)>(class "Lorg/owasp/validator/html/scan/MagicSAXFilter$Ops;", v);
-return v;
-}
 }
\ No newline at end of file
diff -u results/org.owasp.antisamy/antisamy/1.7.3/jnorm/reference/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.MagicSAXFilter.jimple results/org.owasp.antisamy/antisamy/1.7.3/jnorm/rebuild/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.MagicSAXFilter.jimple
--- results/org.owasp.antisamy/antisamy/1.7.3/jnorm/reference/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.MagicSAXFilter.jimple	2025-03-13 07:38:15.100469130 +0000
+++ results/org.owasp.antisamy/antisamy/1.7.3/jnorm/rebuild/antisamy-1.7.3.jar:antisamy-1.7.3.jar/org.owasp.validator.html.scan.MagicSAXFilter.jimple	2025-03-13 07:38:18.012423316 +0000
@@ -15,13 +15,6 @@
 private int maxInputSize;
 private boolean shouldParseImportedStyles;
 private static final java.util.regex.Pattern conditionalDirectives;
-static void <clinit>()
-{
-java.util.regex.Pattern v;
-v = staticinvoke <java.util.regex.Pattern: java.util.regex.Pattern compile(java.lang.String)>("<?!?\\[\\s*(?:end)?if[^]]*\\]>?");
-<org.owasp.validator.html.scan.MagicSAXFilter: java.util.regex.Pattern conditionalDirectives> = v;
-return;
-}
 public void <init>(java.util.ResourceBundle)
 {
 java.util.ResourceBundle v;
@@ -194,15 +187,13 @@
 }
 private org.htmlunit.cyberneko.xerces.util.XMLStringBuffer makeEndTag(java.lang.String)
 {
-java.lang.StringBuilder v;
 java.lang.String v, v;
 org.htmlunit.cyberneko.xerces.util.XMLStringBuffer v;
 org.owasp.validator.html.scan.MagicSAXFilter v;
 v := @this: org.owasp.validator.html.scan.MagicSAXFilter;
 v := @parameter: java.lang.String;
 v = new org.htmlunit.cyberneko.xerces.util.XMLStringBuffer;
-specialinvoke v.<java.lang.StringBuilder: void <init>(java.lang.String)>("</");
-v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001>");
+v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("</\u0001>");
 specialinvoke v.<org.htmlunit.cyberneko.xerces.util.XMLStringBuffer: void <init>(java.lang.String)>(v);
 return v;
 }
@@ -276,6 +267,8 @@
 specialinvoke v.<org.htmlunit.cyberneko.filters.DefaultFilter: void characters(org.htmlunit.cyberneko.xerces.xni.XMLString,org.htmlunit.cyberneko.xerces.xni.Augmentations)>(v, v);
 specialinvoke v.<org.htmlunit.cyberneko.filters.DefaultFilter: void endElement(org.htmlunit.cyberneko.xerces.xni.QName,org.htmlunit.cyberneko.xerces.xni.Augmentations)>(v, v);
 label:
+v.<org.owasp.validator.html.scan.MagicSAXFilter: java.lang.StringBuffer cssContent> = null;
+v.<org.owasp.validator.html.scan.MagicSAXFilter: org.htmlunit.cyberneko.xerces.xni.XMLAttributes cssAttributes> = null;
 goto label;
 label:
 v := @caughtexception;
@@ -295,10 +288,6 @@
 v.<org.owasp.validator.html.scan.MagicSAXFilter: org.htmlunit.cyberneko.xerces.xni.XMLAttributes cssAttributes> = null;
 throw v;
 label:
-v.<org.owasp.validator.html.scan.MagicSAXFilter: java.lang.StringBuffer cssContent> = null;
-v.<org.owasp.validator.html.scan.MagicSAXFilter: org.htmlunit.cyberneko.xerces.xni.XMLAttributes cssAttributes> = null;
-goto label;
-label:
 v = v.<org.owasp.validator.html.scan.MagicSAXFilter: java.util.Stack operations>;
 virtualinvoke v.<java.util.Stack: java.lang.Object pop()>();
 specialinvoke v.<org.htmlunit.cyberneko.filters.DefaultFilter: void endElement(org.htmlunit.cyberneko.xerces.xni.QName,org.htmlunit.cyberneko.xerces.xni.Augmentations)>(v, v);
@@ -306,6 +295,7 @@
 return;
 catch org.owasp.validator.html.ScanException from label to label with label;
 catch java.lang.Throwable from label to label with label;
+catch java.lang.Throwable from label to label with label;
 }
 private org.owasp.validator.css.CssScanner makeCssScanner()
 {
@@ -362,7 +352,6 @@
 public void startElement(org.htmlunit.cyberneko.xerces.xni.QName, org.htmlunit.cyberneko.xerces.xni.XMLAttributes, org.htmlunit.cyberneko.xerces.xni.Augmentations) throws org.htmlunit.cyberneko.xerces.xni.XNIException
 {
 org.owasp.validator.html.scan.MagicSAXFilter v;
-java.lang.StringBuilder v;
 java.lang.Object[] v, v, v, v, v, v, v, v;
 java.lang.StringBuffer v;
 org.owasp.validator.html.model.Tag v, v;
@@ -438,9 +427,8 @@
 v = virtualinvoke v.<org.owasp.validator.html.model.Tag: boolean isAction(java.lang.String)>("encode");
 if v == 0 goto label;
 label:
-specialinvoke v.<java.lang.StringBuilder: void <init>(java.lang.String)>("<");
 v = v.<org.htmlunit.cyberneko.xerces.xni.QName: java.lang.String localpart>;
-v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001>");
+v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("<\u0001>");
 v = new org.htmlunit.cyberneko.xerces.xni.XMLString;
 v = virtualinvoke v.<java.lang.String: char[] toCharArray()>();
 v = virtualinvoke v.<java.lang.String: int length()>();
@@ -482,8 +470,9 @@
 v = 0;
 v = 0;
 v = 0;
-goto label;
 label:
+v = interfaceinvoke v.<org.htmlunit.cyberneko.xerces.xni.XMLAttributes: int getLength()>();
+if v >= v goto label;
 v = interfaceinvoke v.<org.htmlunit.cyberneko.xerces.xni.XMLAttributes: java.lang.String getQName(int)>(v);
 v = interfaceinvoke v.<org.htmlunit.cyberneko.xerces.xni.XMLAttributes: java.lang.String getValue(int)>(v);
 v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
@@ -601,9 +590,8 @@
 v = 1;
 label:
 v = v + 1;
+goto label;
 label:
-v = interfaceinvoke v.<org.htmlunit.cyberneko.xerces.xni.XMLAttributes: int getLength()>();
-if v < v goto label;
 if v == 0 goto label;
 v = v.<org.owasp.validator.html.scan.MagicSAXFilter: java.util.Stack operations>;
 v = <org.owasp.validator.html.scan.MagicSAXFilter$Ops: org.owasp.validator.html.scan.MagicSAXFilter$Ops REMOVE>;
@@ -749,4 +737,11 @@
 specialinvoke v.<java.util.ArrayList: void <init>(java.util.Collection)>(v);
 return v;
 }
+static void <clinit>()
+{
+java.util.regex.Pattern v;
+v = staticinvoke <java.util.regex.Pattern: java.util.regex.Pattern compile(java.lang.String)>("<?!?\\[\\s*(?:end)?if[^]]*\\]>?");
+<org.owasp.validator.html.scan.MagicSAXFilter: java.util.regex.Pattern conditionalDirectives> = v;
+return;
+}
 }
\ No newline at end of file
