Merging the strings work into the emulation attempt emul
authorJaroslav Tulach <jaroslav.tulach@apidesign.org>
Wed, 03 Oct 2012 08:19:44 -0700
branchemul
changeset 92bf4f95784c62
parent 89 a807cb53e181
parent 91 f3b685bd7243
child 93 a236a9f137ac
Merging the strings work into the emulation attempt
pom.xml
vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/core/pom.xml	Wed Oct 03 08:19:44 2012 -0700
     1.3 @@ -0,0 +1,26 @@
     1.4 +<?xml version="1.0"?>
     1.5 +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
     1.6 +    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
     1.7 +  <modelVersion>4.0.0</modelVersion>
     1.8 +  <parent>
     1.9 +    <groupId>org.apidesign</groupId>
    1.10 +    <artifactId>bck2brwsr</artifactId>
    1.11 +    <version>1.0-SNAPSHOT</version>
    1.12 +  </parent>
    1.13 +  <groupId>org.apidesign.bck2brwsr</groupId>
    1.14 +  <artifactId>core</artifactId>
    1.15 +  <version>1.0-SNAPSHOT</version>
    1.16 +  <name>core</name>
    1.17 +  <url>http://maven.apache.org</url>
    1.18 +  <properties>
    1.19 +    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    1.20 +  </properties>
    1.21 +  <dependencies>
    1.22 +    <dependency>
    1.23 +      <groupId>junit</groupId>
    1.24 +      <artifactId>junit</artifactId>
    1.25 +      <version>3.8.1</version>
    1.26 +      <scope>test</scope>
    1.27 +    </dependency>
    1.28 +  </dependencies>
    1.29 +</project>
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/core/src/main/java/org/apidesign/bck2brwsr/core/ExtraJavaScript.java	Wed Oct 03 08:19:44 2012 -0700
     2.3 @@ -0,0 +1,19 @@
     2.4 +package org.apidesign.bck2brwsr.core;
     2.5 +
     2.6 +import java.lang.annotation.ElementType;
     2.7 +import java.lang.annotation.Retention;
     2.8 +import java.lang.annotation.RetentionPolicy;
     2.9 +import java.lang.annotation.Target;
    2.10 +
    2.11 +/**
    2.12 + *
    2.13 + * @author Jaroslav Tulach <jtulach@netbeans.org>
    2.14 + */
    2.15 +@Retention(RetentionPolicy.CLASS)
    2.16 +@Target(ElementType.TYPE)
    2.17 +public @interface ExtraJavaScript {
    2.18 +    /** location of a script to load */
    2.19 +    String resource();
    2.20 +    /** should the class file still be processed or not? */
    2.21 +    boolean processByteCode() default true;
    2.22 +}
     3.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.2 +++ b/core/src/main/java/org/apidesign/bck2brwsr/core/NoJavaScript.java	Wed Oct 03 08:19:44 2012 -0700
     3.3 @@ -0,0 +1,16 @@
     3.4 +package org.apidesign.bck2brwsr.core;
     3.5 +
     3.6 +import java.lang.annotation.ElementType;
     3.7 +import java.lang.annotation.Retention;
     3.8 +import java.lang.annotation.RetentionPolicy;
     3.9 +import java.lang.annotation.Target;
    3.10 +
    3.11 +/** Don't include given field or method in generated JavaScript.
    3.12 + *
    3.13 + * @author Jaroslav Tulach <jtulach@netbeans.org>
    3.14 + */
    3.15 +@Retention(RetentionPolicy.CLASS)
    3.16 +@Target({ ElementType.METHOD, ElementType.FIELD })
    3.17 +public @interface NoJavaScript {
    3.18 +    
    3.19 +}
     4.1 --- a/pom.xml	Sun Sep 30 19:01:46 2012 -0700
     4.2 +++ b/pom.xml	Wed Oct 03 08:19:44 2012 -0700
     4.3 @@ -10,6 +10,7 @@
     4.4        <module>vm</module>
     4.5      <module>htmlpage</module>
     4.6      <module>emul</module>
     4.7 +    <module>core</module>
     4.8    </modules>
     4.9    <licenses>
    4.10        <license>
     5.1 --- a/vm/pom.xml	Sun Sep 30 19:01:46 2012 -0700
     5.2 +++ b/vm/pom.xml	Wed Oct 03 08:19:44 2012 -0700
     5.3 @@ -86,5 +86,11 @@
     5.4        <artifactId>org-netbeans-modules-classfile</artifactId>
     5.5        <type>jar</type>
     5.6      </dependency>
     5.7 +    <dependency>
     5.8 +      <groupId>org.apidesign.bck2brwsr</groupId>
     5.9 +      <artifactId>core</artifactId>
    5.10 +      <version>1.0-SNAPSHOT</version>
    5.11 +      <type>jar</type>
    5.12 +    </dependency>
    5.13    </dependencies>
    5.14  </project>
     6.1 --- a/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java	Sun Sep 30 19:01:46 2012 -0700
     6.2 +++ b/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java	Wed Oct 03 08:19:44 2012 -0700
     6.3 @@ -22,6 +22,9 @@
     6.4  import java.util.ArrayList;
     6.5  import java.util.Collection;
     6.6  import java.util.List;
     6.7 +import org.apidesign.bck2brwsr.core.ExtraJavaScript;
     6.8 +import org.netbeans.modules.classfile.Annotation;
     6.9 +import org.netbeans.modules.classfile.AnnotationComponent;
    6.10  import static org.netbeans.modules.classfile.ByteCodes.*;
    6.11  import org.netbeans.modules.classfile.CPClassInfo;
    6.12  import org.netbeans.modules.classfile.CPEntry;
    6.13 @@ -31,8 +34,10 @@
    6.14  import org.netbeans.modules.classfile.ClassFile;
    6.15  import org.netbeans.modules.classfile.ClassName;
    6.16  import org.netbeans.modules.classfile.Code;
    6.17 +import org.netbeans.modules.classfile.ElementValue;
    6.18  import org.netbeans.modules.classfile.Method;
    6.19  import org.netbeans.modules.classfile.Parameter;
    6.20 +import org.netbeans.modules.classfile.PrimitiveElementValue;
    6.21  import org.netbeans.modules.classfile.Variable;
    6.22  
    6.23  /** Translator of the code inside class files to JavaScript.
    6.24 @@ -62,14 +67,29 @@
    6.25       *   generated JavaScript code works properly. The names are in internal 
    6.26       *   JVM form so String is <code>java/lang/String</code>. Can be <code>null</code>
    6.27       *   if one is not interested in knowing references
    6.28 +     * @param scripts write only collection with names of resources to read
    6.29 +     * 
    6.30       * @throws IOException if something goes wrong during read or write or translating
    6.31       */
    6.32      
    6.33      public static void compile(
    6.34          InputStream classFile, Appendable out,
    6.35 -        Collection<? super String> references
    6.36 +        Collection<? super String> references,
    6.37 +        Collection<? super String> scripts
    6.38      ) throws IOException {
    6.39          ClassFile jc = new ClassFile(classFile, true);
    6.40 +        final ClassName extraAnn = ClassName.getClassName(ExtraJavaScript.class.getName().replace('.', '/'));
    6.41 +        Annotation a = jc.getAnnotation(extraAnn);
    6.42 +        if (a != null) {
    6.43 +            final ElementValue annVal = a.getComponent("resource").getValue();
    6.44 +            String res = ((PrimitiveElementValue)annVal).getValue().getValue().toString();
    6.45 +            scripts.add(res);
    6.46 +            final AnnotationComponent process = a.getComponent("processByteCode");
    6.47 +            if (process != null && "false".equals(process.getValue().toString())) {
    6.48 +                return;
    6.49 +            }
    6.50 +        }
    6.51 +        
    6.52          ByteCodeToJavaScript compiler = new ByteCodeToJavaScript(
    6.53              jc, out, references
    6.54          );
     7.1 --- a/vm/src/main/java/org/apidesign/vm4brwsr/GenJS.java	Sun Sep 30 19:01:46 2012 -0700
     7.2 +++ b/vm/src/main/java/org/apidesign/vm4brwsr/GenJS.java	Wed Oct 03 08:19:44 2012 -0700
     7.3 @@ -43,15 +43,23 @@
     7.4              }
     7.5              String name = toProcess.getFirst();
     7.6              processed.add(name);
     7.7 -            if (name.startsWith("java/") && !name.equals("java/lang/Object")) {
     7.8 +            if (name.startsWith("sun/")) {
     7.9 +                continue;
    7.10 +            }
    7.11 +            if (name.startsWith("java/") 
    7.12 +                && !name.equals("java/lang/Object")
    7.13 +                && !name.equals("java/lang/StringBuilder")
    7.14 +                && !name.equals("java/lang/AbstractStringBuilder")
    7.15 +            ) {
    7.16                  continue;
    7.17              }
    7.18              InputStream is = GenJS.class.getClassLoader().getResourceAsStream(name + ".class");
    7.19              if (is == null) {
    7.20                  throw new IOException("Can't find class " + name); 
    7.21              }
    7.22 +            LinkedList<String> scripts = new LinkedList<String>();
    7.23              try {
    7.24 -                ByteCodeToJavaScript.compile(is, out, toProcess);
    7.25 +                ByteCodeToJavaScript.compile(is, out, toProcess, scripts);
    7.26              } catch (RuntimeException ex) {
    7.27                  if (out instanceof CharSequence) {
    7.28                      CharSequence seq = (CharSequence)out;
    7.29 @@ -70,6 +78,58 @@
    7.30                      );
    7.31                  }
    7.32              }
    7.33 +            for (String resource : scripts) {
    7.34 +                InputStream emul = GenJS.class.getResourceAsStream(resource);
    7.35 +                if (emul == null) {
    7.36 +                    throw new IOException("Can't find " + resource);
    7.37 +                }
    7.38 +                readResource(emul, out);
    7.39 +            }
    7.40 +        }
    7.41 +    }
    7.42 +    private static void readResource(InputStream emul, Appendable out) throws IOException {
    7.43 +        try {
    7.44 +            int state = 0;
    7.45 +            for (;;) {
    7.46 +                int ch = emul.read();
    7.47 +                if (ch == -1) {
    7.48 +                    break;
    7.49 +                }
    7.50 +                if (ch < 0 || ch > 255) {
    7.51 +                    throw new IOException("Invalid char in emulation " + ch);
    7.52 +                }
    7.53 +                switch (state) {
    7.54 +                    case 0: 
    7.55 +                        if (ch == '/') {
    7.56 +                            state = 1;
    7.57 +                        } else {
    7.58 +                            out.append((char)ch);
    7.59 +                        }
    7.60 +                        break;
    7.61 +                    case 1:
    7.62 +                        if (ch == '*') {
    7.63 +                            state = 2;
    7.64 +                        } else {
    7.65 +                            out.append('/').append((char)ch);
    7.66 +                            state = 0;
    7.67 +                        }
    7.68 +                        break;
    7.69 +                    case 2:
    7.70 +                        if (ch == '*') {
    7.71 +                            state = 3;
    7.72 +                        }
    7.73 +                        break;
    7.74 +                    case 3:
    7.75 +                        if (ch == '/') {
    7.76 +                            state = 0;
    7.77 +                        } else {
    7.78 +                            state = 2;
    7.79 +                        }
    7.80 +                        break;
    7.81 +                }
    7.82 +            }
    7.83 +        } finally {
    7.84 +            emul.close();
    7.85          }
    7.86      }
    7.87      
     8.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     8.2 +++ b/vm/src/main/resources/org/apidesign/vm4brwsr/emulation/java_lang_String.js	Wed Oct 03 08:19:44 2012 -0700
     8.3 @@ -0,0 +1,3296 @@
     8.4 +/* */
     8.5 +
     8.6 +
     8.7 +/*
     8.8 +function java_lang_String_consV(arg0) {
     8.9 +  var arg1;
    8.10 +;
    8.11 +  var stack = new Array(2);
    8.12 +  var gt = 0;
    8.13 +  for(;;) switch(gt) {
    8.14 +    case 0: stack.push(arg0); // 42
    8.15 +    case 1: { java_lang_Object_consV(stack.pop()); } // 183 1 130
    8.16 +    case 4: stack.push(arg0); // 42
    8.17 +    case 5: stack.push(0); // 3
    8.18 +    case 6: { var v = stack.pop(); stack.pop().offset = v; } // 181 1 99
    8.19 +    case 9: stack.push(arg0); // 42
    8.20 +    case 10: stack.push(0); // 3
    8.21 +    case 11: { var v = stack.pop(); stack.pop().count = v; } // 181 1 97
    8.22 +    case 14: stack.push(arg0); // 42
    8.23 +    case 15: stack.push(0); // 3
    8.24 +    case 16: stack.push(new Array(stack.pop())); // 188 5
    8.25 +    case 18: { var v = stack.pop(); stack.pop().value = v; } // 181 1 100
    8.26 +    case 21: return; // 177
    8.27 +  }
    8.28 +}
    8.29 +function java_lang_String_consVLjava_lang_String(arg0,arg1) {
    8.30 +  var arg2;
    8.31 +  var arg3;
    8.32 +  var arg4;
    8.33 +  var arg5;
    8.34 +  var arg6;
    8.35 +;
    8.36 +  var stack = new Array(4);
    8.37 +  var gt = 0;
    8.38 +  for(;;) switch(gt) {
    8.39 +    case 0: stack.push(arg0); // 42
    8.40 +    case 1: { java_lang_Object_consV(stack.pop()); } // 183 1 130
    8.41 +    case 4: stack.push(arg1); // 43
    8.42 +    case 5: stack.push(stack.pop().count); // 180 1 97
    8.43 +    case 8: arg2 = stack.pop(); // 61
    8.44 +    case 9: stack.push(arg1); // 43
    8.45 +    case 10: stack.push(stack.pop().value); // 180 1 100
    8.46 +    case 13: arg3 = stack.pop(); // 78
    8.47 +    case 14: stack.push(arg3); // 45
    8.48 +    case 15: stack.push(stack.pop().length); // 190
    8.49 +    case 16: stack.push(arg2); // 28
    8.50 +    case 17: if (stack.pop() >= stack.pop()) { gt = 41; continue; } // 164 0 24
    8.51 +    case 20: stack.push(arg1); // 43
    8.52 +    case 21: stack.push(stack.pop().offset); // 180 1 99
    8.53 +    case 24: arg5 = stack.pop() // 54 5
    8.54 +    case 26: stack.push(arg3); // 45
    8.55 +    case 27: stack.push(arg5); // 21 5
    8.56 +    case 29: stack.push(arg5); // 21 5
    8.57 +    case 31: stack.push(arg2); // 28
    8.58 +    case 32: stack.push(stack.pop() + stack.pop()); // 96
    8.59 +    case 33: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_util_Arrays_copyOfRangeACACAIAI(v0, v1, v2)); } // 184 1 173
    8.60 +    case 36: arg4 = stack.pop() // 58 4
    8.61 +    case 38: gt = 44; continue; // 167 0 6
    8.62 +    case 41: stack.push(arg3); // 45
    8.63 +    case 42: arg4 = stack.pop() // 58 4
    8.64 +    case 44: stack.push(arg0); // 42
    8.65 +    case 45: stack.push(0); // 3
    8.66 +    case 46: { var v = stack.pop(); stack.pop().offset = v; } // 181 1 99
    8.67 +    case 49: stack.push(arg0); // 42
    8.68 +    case 50: stack.push(arg2); // 28
    8.69 +    case 51: { var v = stack.pop(); stack.pop().count = v; } // 181 1 97
    8.70 +    case 54: stack.push(arg0); // 42
    8.71 +    case 55: stack.push(arg4); // 25 4
    8.72 +    case 57: { var v = stack.pop(); stack.pop().value = v; } // 181 1 100
    8.73 +    case 60: return; // 177
    8.74 +  }
    8.75 +}
    8.76 +*/
    8.77 +function java_lang_String_consVAC(arg0,arg1) {
    8.78 +    arg0.r = arg1.join("");
    8.79 +}
    8.80 +/*
    8.81 +function java_lang_String_consVACII(arg0,arg1,arg2,arg3) {
    8.82 +  var arg4;
    8.83 +;
    8.84 +  var stack = new Array(5);
    8.85 +  var gt = 0;
    8.86 +  for(;;) switch(gt) {
    8.87 +    case 0: stack.push(arg0); // 42
    8.88 +    case 1: { java_lang_Object_consV(stack.pop()); } // 183 1 130
    8.89 +    case 4: stack.push(arg2); // 28
    8.90 +    case 5: if (stack.pop() >= 0) { gt = 17; continue; } // 156 0 12
    8.91 +    case 8: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
    8.92 +    case 11: stack.push(stack[stack.length - 1]); // 89
    8.93 +    case 12: stack.push(arg2); // 28
    8.94 +    case 13: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
    8.95 +    case 16:  // 191
    8.96 +    case 17: stack.push(arg3); // 29
    8.97 +    case 18: if (stack.pop() >= 0) { gt = 30; continue; } // 156 0 12
    8.98 +    case 21: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
    8.99 +    case 24: stack.push(stack[stack.length - 1]); // 89
   8.100 +    case 25: stack.push(arg3); // 29
   8.101 +    case 26: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
   8.102 +    case 29:  // 191
   8.103 +    case 30: stack.push(arg2); // 28
   8.104 +    case 31: stack.push(arg1); // 43
   8.105 +    case 32: stack.push(stack.pop().length); // 190
   8.106 +    case 33: stack.push(arg3); // 29
   8.107 +    case 34: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
   8.108 +    case 35: if (stack.pop() >= stack.pop()) { gt = 49; continue; } // 164 0 14
   8.109 +    case 38: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
   8.110 +    case 41: stack.push(stack[stack.length - 1]); // 89
   8.111 +    case 42: stack.push(arg2); // 28
   8.112 +    case 43: stack.push(arg3); // 29
   8.113 +    case 44: stack.push(stack.pop() + stack.pop()); // 96
   8.114 +    case 45: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
   8.115 +    case 48:  // 191
   8.116 +    case 49: stack.push(arg0); // 42
   8.117 +    case 50: stack.push(0); // 3
   8.118 +    case 51: { var v = stack.pop(); stack.pop().offset = v; } // 181 1 99
   8.119 +    case 54: stack.push(arg0); // 42
   8.120 +    case 55: stack.push(arg3); // 29
   8.121 +    case 56: { var v = stack.pop(); stack.pop().count = v; } // 181 1 97
   8.122 +    case 59: stack.push(arg0); // 42
   8.123 +    case 60: stack.push(arg1); // 43
   8.124 +    case 61: stack.push(arg2); // 28
   8.125 +    case 62: stack.push(arg2); // 28
   8.126 +    case 63: stack.push(arg3); // 29
   8.127 +    case 64: stack.push(stack.pop() + stack.pop()); // 96
   8.128 +    case 65: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_util_Arrays_copyOfRangeACACAIAI(v0, v1, v2)); } // 184 1 173
   8.129 +    case 68: { var v = stack.pop(); stack.pop().value = v; } // 181 1 100
   8.130 +    case 71: return; // 177
   8.131 +  }
   8.132 +}
   8.133 +function java_lang_String_consVAIII(arg0,arg1,arg2,arg3) {
   8.134 +  var arg4;
   8.135 +  var arg5;
   8.136 +  var arg6;
   8.137 +  var arg7;
   8.138 +  var arg8;
   8.139 +  var arg9;
   8.140 +  var arg10;
   8.141 +  var arg11;
   8.142 +  var arg12;
   8.143 +;
   8.144 +  var stack = new Array(4);
   8.145 +  var gt = 0;
   8.146 +  for(;;) switch(gt) {
   8.147 +    case 0: stack.push(arg0); // 42
   8.148 +    case 1: { java_lang_Object_consV(stack.pop()); } // 183 1 130
   8.149 +    case 4: stack.push(arg2); // 28
   8.150 +    case 5: if (stack.pop() >= 0) { gt = 17; continue; } // 156 0 12
   8.151 +    case 8: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
   8.152 +    case 11: stack.push(stack[stack.length - 1]); // 89
   8.153 +    case 12: stack.push(arg2); // 28
   8.154 +    case 13: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
   8.155 +    case 16:  // 191
   8.156 +    case 17: stack.push(arg3); // 29
   8.157 +    case 18: if (stack.pop() >= 0) { gt = 30; continue; } // 156 0 12
   8.158 +    case 21: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
   8.159 +    case 24: stack.push(stack[stack.length - 1]); // 89
   8.160 +    case 25: stack.push(arg3); // 29
   8.161 +    case 26: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
   8.162 +    case 29:  // 191
   8.163 +    case 30: stack.push(arg2); // 28
   8.164 +    case 31: stack.push(arg1); // 43
   8.165 +    case 32: stack.push(stack.pop().length); // 190
   8.166 +    case 33: stack.push(arg3); // 29
   8.167 +    case 34: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
   8.168 +    case 35: if (stack.pop() >= stack.pop()) { gt = 49; continue; } // 164 0 14
   8.169 +    case 38: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
   8.170 +    case 41: stack.push(stack[stack.length - 1]); // 89
   8.171 +    case 42: stack.push(arg2); // 28
   8.172 +    case 43: stack.push(arg3); // 29
   8.173 +    case 44: stack.push(stack.pop() + stack.pop()); // 96
   8.174 +    case 45: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
   8.175 +    case 48:  // 191
   8.176 +    case 49: stack.push(0); // 3
   8.177 +    case 50: arg4 = stack.pop() // 54 4
   8.178 +    case 52: stack.push(1); // 4
   8.179 +    case 53: arg5 = stack.pop() // 54 5
   8.180 +    case 55: stack.push(arg3); // 29
   8.181 +    case 56: stack.push(arg5); // 21 5
   8.182 +    case 58: stack.push(stack.pop() + stack.pop()); // 96
   8.183 +    case 59: stack.push(new Array(stack.pop())); // 188 5
   8.184 +    case 61: arg6 = stack.pop() // 58 6
   8.185 +    case 63: stack.push(arg2); // 28
   8.186 +    case 64: arg7 = stack.pop() // 54 7
   8.187 +    case 66: stack.push(0); // 3
   8.188 +    case 67: arg8 = stack.pop() // 54 8
   8.189 +    case 69: stack.push(0); // 3
   8.190 +    case 70: arg9 = stack.pop() // 54 9
   8.191 +    case 72: stack.push(arg9); // 21 9
   8.192 +    case 74: stack.push(arg3); // 29
   8.193 +    case 75: if (stack.pop() <= stack.pop()) { gt = 255; continue; } // 162 0 180
   8.194 +    case 78: stack.push(arg1); // 43
   8.195 +    case 79: stack.push(arg7); // 21 7
   8.196 +    case 81: arg7++; // 132 7 1
   8.197 +    case 84: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 46
   8.198 +    case 85: arg10 = stack.pop() // 54 10
   8.199 +    case 87: stack.push(arg10); // 21 10
   8.200 +    case 89: if (stack.pop() >= 0) { gt = 100; continue; } // 156 0 11
   8.201 +    case 92: stack.push(new java_lang_IllegalArgumentException); // 187 0 193
   8.202 +    case 95: stack.push(stack[stack.length - 1]); // 89
   8.203 +    case 96: { java_lang_IllegalArgumentException_consV(stack.pop()); } // 183 1 123
   8.204 +    case 99:  // 191
   8.205 +    case 100: stack.push(arg5); // 21 5
   8.206 +    case 102: if (stack.pop() > 0) { gt = 195; continue; } // 157 0 93
   8.207 +    case 105: stack.push(arg8); // 21 8
   8.208 +    case 107: stack.push(1); // 4
   8.209 +    case 108: stack.push(stack.pop() + stack.pop()); // 96
   8.210 +    case 109: stack.push(arg6); // 25 6
   8.211 +    case 111: stack.push(stack.pop().length); // 190
   8.212 +    case 112: if (stack.pop() > stack.pop()) { gt = 195; continue; } // 161 0 83
   8.213 +    case 115: stack.push(arg4); // 21 4
   8.214 +    case 117: if (stack.pop() != 0) { gt = 153; continue; } // 154 0 36
   8.215 +    case 120: stack.push(arg5); // 21 5
   8.216 +    case 122:  // 116
   8.217 +    case 123: stack.push(1); // 4
   8.218 +    case 124: stack.push(stack.pop() + stack.pop()); // 96
   8.219 +    case 125: stack.push(arg3); // 29
   8.220 +    case 126: stack.push(stack.pop() * stack.pop()); // 104
   8.221 +    case 127: stack.push(10); // 16 10
   8.222 +    case 129:  // 120
   8.223 +    case 130: stack.push(arg9); // 21 9
   8.224 +    case 132: { var tmp = stack.pop(); stack.push(Math.floor(stack.pop() / tmp)); } // 108
   8.225 +    case 133: arg4 = stack.pop() // 54 4
   8.226 +    case 135: stack.push(arg4); // 21 4
   8.227 +    case 137: stack.push(10); // 16 10
   8.228 +    case 139:  // 122
   8.229 +    case 140: arg4 = stack.pop() // 54 4
   8.230 +    case 142: stack.push(arg4); // 21 4
   8.231 +    case 144: if (stack.pop() > 0) { gt = 159; continue; } // 157 0 15
   8.232 +    case 147: stack.push(1); // 4
   8.233 +    case 148: arg4 = stack.pop() // 54 4
   8.234 +    case 150: gt = 159; continue; // 167 0 9
   8.235 +    case 153: stack.push(arg4); // 21 4
   8.236 +    case 155: stack.push(2); // 5
   8.237 +    case 156: stack.push(stack.pop() * stack.pop()); // 104
   8.238 +    case 157: arg4 = stack.pop() // 54 4
   8.239 +    case 159: stack.push(arg6); // 25 6
   8.240 +    case 161: stack.push(stack.pop().length); // 190
   8.241 +    case 162: stack.push(arg4); // 21 4
   8.242 +    case 164: stack.push(stack.pop() + stack.pop()); // 96
   8.243 +    case 165: stack.push(arg3); // 29
   8.244 +    case 166: stack.push(2); // 5
   8.245 +    case 167: stack.push(stack.pop() * stack.pop()); // 104
   8.246 +    case 168: { var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_Math_minIII(v0, v1)); } // 184 1 127
   8.247 +    case 171: arg11 = stack.pop() // 54 11
   8.248 +    case 173: stack.push(arg11); // 21 11
   8.249 +    case 175: stack.push(arg6); // 25 6
   8.250 +    case 177: stack.push(stack.pop().length); // 190
   8.251 +    case 178: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
   8.252 +    case 179: stack.push(arg3); // 29
   8.253 +    case 180: stack.push(arg9); // 21 9
   8.254 +    case 182: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
   8.255 +    case 183: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
   8.256 +    case 184: arg5 = stack.pop() // 54 5
   8.257 +    case 186: stack.push(arg6); // 25 6
   8.258 +    case 188: stack.push(arg11); // 21 11
   8.259 +    case 190: { var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_util_Arrays_copyOfACACAI(v0, v1)); } // 184 1 172
   8.260 +    case 193: arg6 = stack.pop() // 58 6
   8.261 +    case 195: stack.push(arg10); // 21 10
   8.262 +    case 197: stack.push(65536); // 18 3
   8.263 +    case 199: if (stack.pop() <= stack.pop()) { gt = 216; continue; } // 162 0 17
   8.264 +    case 202: stack.push(arg6); // 25 6
   8.265 +    case 204: stack.push(arg8); // 21 8
   8.266 +    case 206: arg8++; // 132 8 1
   8.267 +    case 209: stack.push(arg10); // 21 10
   8.268 +    case 211: // number conversion  // 146
   8.269 +    case 212: { var value = stack.pop(); var indx = stack.pop(); stack.pop()[indx] = value; } // 85
   8.270 +    case 213: gt = 249; continue; // 167 0 36
   8.271 +    case 216: stack.push(arg10); // 21 10
   8.272 +    case 218: stack.push(1114111); // 18 4
   8.273 +    case 220: if (stack.pop() < stack.pop()) { gt = 241; continue; } // 163 0 21
   8.274 +    case 223: stack.push(arg10); // 21 10
   8.275 +    case 225: stack.push(arg6); // 25 6
   8.276 +    case 227: stack.push(arg8); // 21 8
   8.277 +    case 229: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_Character_toSurrogatesVIACAI(v0, v1, v2); } // 184 1 112
   8.278 +    case 232: arg8 += 2; // 132 8 2
   8.279 +    case 235: arg5 += 255; // 132 5 255
   8.280 +    case 238: gt = 249; continue; // 167 0 11
   8.281 +    case 241: stack.push(new java_lang_IllegalArgumentException); // 187 0 193
   8.282 +    case 244: stack.push(stack[stack.length - 1]); // 89
   8.283 +    case 245: { java_lang_IllegalArgumentException_consV(stack.pop()); } // 183 1 123
   8.284 +    case 248:  // 191
   8.285 +    case 249: arg9++; // 132 9 1
   8.286 +    case 252: gt = 72; continue; // 167 255 76
   8.287 +    case 255: stack.push(arg0); // 42
   8.288 +    case 256: stack.push(0); // 3
   8.289 +    case 257: { var v = stack.pop(); stack.pop().offset = v; } // 181 1 99
   8.290 +    case 260: stack.push(arg0); // 42
   8.291 +    case 261: stack.push(arg6); // 25 6
   8.292 +    case 263: { var v = stack.pop(); stack.pop().value = v; } // 181 1 100
   8.293 +    case 266: stack.push(arg0); // 42
   8.294 +    case 267: stack.push(arg8); // 21 8
   8.295 +    case 269: { var v = stack.pop(); stack.pop().count = v; } // 181 1 97
   8.296 +    case 272: return; // 177
   8.297 +  }
   8.298 +}
   8.299 +function java_lang_String_consVABIII(arg0,arg1,arg2,arg3,arg4) {
   8.300 +  var arg5;
   8.301 +  var arg6;
   8.302 +  var arg7;
   8.303 +;
   8.304 +  var stack = new Array(6);
   8.305 +  var gt = 0;
   8.306 +  for(;;) switch(gt) {
   8.307 +    case 0: stack.push(arg0); // 42
   8.308 +    case 1: { java_lang_Object_consV(stack.pop()); } // 183 1 130
   8.309 +    case 4: stack.push(arg1); // 43
   8.310 +    case 5: stack.push(arg3); // 29
   8.311 +    case 6: stack.push(arg4); // 21 4
   8.312 +    case 8: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_checkBoundsVABAIAI(v0, v1, v2); } // 184 1 140
   8.313 +    case 11: stack.push(arg4); // 21 4
   8.314 +    case 13: stack.push(new Array(stack.pop())); // 188 5
   8.315 +    case 15: arg5 = stack.pop() // 58 5
   8.316 +    case 17: stack.push(arg2); // 28
   8.317 +    case 18: if (stack.pop() != 0) { gt = 55; continue; } // 154 0 37
   8.318 +    case 21: stack.push(arg4); // 21 4
   8.319 +    case 23: arg6 = stack.pop() // 54 6
   8.320 +    case 25: stack.push(arg6); // 21 6
   8.321 +    case 27: arg6 += 255; // 132 6 255
   8.322 +    case 30: if (stack.pop() <= 0) { gt = 52; continue; } // 158 0 22
   8.323 +    case 33: stack.push(arg5); // 25 5
   8.324 +    case 35: stack.push(arg6); // 21 6
   8.325 +    case 37: stack.push(arg1); // 43
   8.326 +    case 38: stack.push(arg6); // 21 6
   8.327 +    case 40: stack.push(arg3); // 29
   8.328 +    case 41: stack.push(stack.pop() + stack.pop()); // 96
   8.329 +    case 42: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 51
   8.330 +    case 43: stack.push(255); // 17 0 255
   8.331 +    case 46: stack.push(stack.pop() & stack.pop()); // 126
   8.332 +    case 47: // number conversion  // 146
   8.333 +    case 48: { var value = stack.pop(); var indx = stack.pop(); stack.pop()[indx] = value; } // 85
   8.334 +    case 49: gt = 25; continue; // 167 255 232
   8.335 +    case 52: gt = 93; continue; // 167 0 41
   8.336 +    case 55: stack.push(arg2); // 28
   8.337 +    case 56: stack.push(8); // 16 8
   8.338 +    case 58:  // 120
   8.339 +    case 59: arg2 = stack.pop(); // 61
   8.340 +    case 60: stack.push(arg4); // 21 4
   8.341 +    case 62: arg6 = stack.pop() // 54 6
   8.342 +    case 64: stack.push(arg6); // 21 6
   8.343 +    case 66: arg6 += 255; // 132 6 255
   8.344 +    case 69: if (stack.pop() <= 0) { gt = 93; continue; } // 158 0 24
   8.345 +    case 72: stack.push(arg5); // 25 5
   8.346 +    case 74: stack.push(arg6); // 21 6
   8.347 +    case 76: stack.push(arg2); // 28
   8.348 +    case 77: stack.push(arg1); // 43
   8.349 +    case 78: stack.push(arg6); // 21 6
   8.350 +    case 80: stack.push(arg3); // 29
   8.351 +    case 81: stack.push(stack.pop() + stack.pop()); // 96
   8.352 +    case 82: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 51
   8.353 +    case 83: stack.push(255); // 17 0 255
   8.354 +    case 86: stack.push(stack.pop() & stack.pop()); // 126
   8.355 +    case 87: stack.push(stack.pop() | stack.pop()); // 128
   8.356 +    case 88: // number conversion  // 146
   8.357 +    case 89: { var value = stack.pop(); var indx = stack.pop(); stack.pop()[indx] = value; } // 85
   8.358 +    case 90: gt = 64; continue; // 167 255 230
   8.359 +    case 93: stack.push(arg0); // 42
   8.360 +    case 94: stack.push(0); // 3
   8.361 +    case 95: { var v = stack.pop(); stack.pop().offset = v; } // 181 1 99
   8.362 +    case 98: stack.push(arg0); // 42
   8.363 +    case 99: stack.push(arg4); // 21 4
   8.364 +    case 101: { var v = stack.pop(); stack.pop().count = v; } // 181 1 97
   8.365 +    case 104: stack.push(arg0); // 42
   8.366 +    case 105: stack.push(arg5); // 25 5
   8.367 +    case 107: { var v = stack.pop(); stack.pop().value = v; } // 181 1 100
   8.368 +    case 110: return; // 177
   8.369 +  }
   8.370 +}
   8.371 +function java_lang_String_consVABI(arg0,arg1,arg2) {
   8.372 +  var arg3;
   8.373 +;
   8.374 +  var stack = new Array(5);
   8.375 +  var gt = 0;
   8.376 +  for(;;) switch(gt) {
   8.377 +    case 0: stack.push(arg0); // 42
   8.378 +    case 1: stack.push(arg1); // 43
   8.379 +    case 2: stack.push(arg2); // 28
   8.380 +    case 3: stack.push(0); // 3
   8.381 +    case 4: stack.push(arg1); // 43
   8.382 +    case 5: stack.push(stack.pop().length); // 190
   8.383 +    case 6: { var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_consVABAIAIAI(stack.pop(), v0, v1, v2, v3); } // 183 1 141
   8.384 +    case 9: return; // 177
   8.385 +  }
   8.386 +}
   8.387 +function java_lang_String_checkBoundsVABII(arg0,arg1,arg2) {
   8.388 +  var stack = new Array();
   8.389 +  var gt = 0;
   8.390 +  for(;;) switch(gt) {
   8.391 +    case 0: stack.push(arg2); // 28
   8.392 +    case 1: if (stack.pop() >= 0) { gt = 13; continue; } // 156 0 12
   8.393 +    case 4: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
   8.394 +    case 7: stack.push(stack[stack.length - 1]); // 89
   8.395 +    case 8: stack.push(arg2); // 28
   8.396 +    case 9: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
   8.397 +    case 12:  // 191
   8.398 +    case 13: stack.push(arg1); // 27
   8.399 +    case 14: if (stack.pop() >= 0) { gt = 26; continue; } // 156 0 12
   8.400 +    case 17: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
   8.401 +    case 20: stack.push(stack[stack.length - 1]); // 89
   8.402 +    case 21: stack.push(arg1); // 27
   8.403 +    case 22: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
   8.404 +    case 25:  // 191
   8.405 +    case 26: stack.push(arg1); // 27
   8.406 +    case 27: stack.push(arg0); // 42
   8.407 +    case 28: stack.push(stack.pop().length); // 190
   8.408 +    case 29: stack.push(arg2); // 28
   8.409 +    case 30: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
   8.410 +    case 31: if (stack.pop() >= stack.pop()) { gt = 45; continue; } // 164 0 14
   8.411 +    case 34: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
   8.412 +    case 37: stack.push(stack[stack.length - 1]); // 89
   8.413 +    case 38: stack.push(arg1); // 27
   8.414 +    case 39: stack.push(arg2); // 28
   8.415 +    case 40: stack.push(stack.pop() + stack.pop()); // 96
   8.416 +    case 41: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
   8.417 +    case 44:  // 191
   8.418 +    case 45: return; // 177
   8.419 +  }
   8.420 +}
   8.421 +function java_lang_String_consVABIILjava_lang_String(arg0,arg1,arg2,arg3,arg4) {
   8.422 +  var arg5;
   8.423 +  var arg6;
   8.424 +;
   8.425 +  var stack = new Array(4);
   8.426 +  var gt = 0;
   8.427 +  for(;;) switch(gt) {
   8.428 +    case 0: stack.push(arg0); // 42
   8.429 +    case 1: { java_lang_Object_consV(stack.pop()); } // 183 1 130
   8.430 +    case 4: stack.push(arg4); // 25 4
   8.431 +    case 6: if (stack.pop()) { gt = 19; continue; } // 199 0 13
   8.432 +    case 9: stack.push(new java_lang_NullPointerException); // 187 0 198
   8.433 +    case 12: stack.push(stack[stack.length - 1]); // 89
   8.434 +    case 13: stack.push("charsetName"); // 18 7
   8.435 +    case 15: { var v0 = stack.pop(); java_lang_NullPointerException_consVLjava_lang_String(stack.pop(), v0); } // 183 1 129
   8.436 +    case 18:  // 191
   8.437 +    case 19: stack.push(arg1); // 43
   8.438 +    case 20: stack.push(arg2); // 28
   8.439 +    case 21: stack.push(arg3); // 29
   8.440 +    case 22: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_checkBoundsVABAIAI(v0, v1, v2); } // 184 1 140
   8.441 +    case 25: stack.push(arg4); // 25 4
   8.442 +    case 27: stack.push(arg1); // 43
   8.443 +    case 28: stack.push(arg2); // 28
   8.444 +    case 29: stack.push(arg3); // 29
   8.445 +    case 30: { var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_StringCoding_decodeACLjava_lang_StringABAIAI(v0, v1, v2, v3)); } // 184 1 165
   8.446 +    case 33: arg5 = stack.pop() // 58 5
   8.447 +    case 35: stack.push(arg0); // 42
   8.448 +    case 36: stack.push(0); // 3
   8.449 +    case 37: { var v = stack.pop(); stack.pop().offset = v; } // 181 1 99
   8.450 +    case 40: stack.push(arg0); // 42
   8.451 +    case 41: stack.push(arg5); // 25 5
   8.452 +    case 43: stack.push(stack.pop().length); // 190
   8.453 +    case 44: { var v = stack.pop(); stack.pop().count = v; } // 181 1 97
   8.454 +    case 47: stack.push(arg0); // 42
   8.455 +    case 48: stack.push(arg5); // 25 5
   8.456 +    case 50: { var v = stack.pop(); stack.pop().value = v; } // 181 1 100
   8.457 +    case 53: return; // 177
   8.458 +  }
   8.459 +}
   8.460 +function java_lang_String_consVABIILjava_nio_charset_Charset(arg0,arg1,arg2,arg3,arg4) {
   8.461 +  var arg5;
   8.462 +  var arg6;
   8.463 +;
   8.464 +  var stack = new Array(4);
   8.465 +  var gt = 0;
   8.466 +  for(;;) switch(gt) {
   8.467 +    case 0: stack.push(arg0); // 42
   8.468 +    case 1: { java_lang_Object_consV(stack.pop()); } // 183 1 130
   8.469 +    case 4: stack.push(arg4); // 25 4
   8.470 +    case 6: if (stack.pop()) { gt = 19; continue; } // 199 0 13
   8.471 +    case 9: stack.push(new java_lang_NullPointerException); // 187 0 198
   8.472 +    case 12: stack.push(stack[stack.length - 1]); // 89
   8.473 +    case 13: stack.push("charset"); // 18 6
   8.474 +    case 15: { var v0 = stack.pop(); java_lang_NullPointerException_consVLjava_lang_String(stack.pop(), v0); } // 183 1 129
   8.475 +    case 18:  // 191
   8.476 +    case 19: stack.push(arg1); // 43
   8.477 +    case 20: stack.push(arg2); // 28
   8.478 +    case 21: stack.push(arg3); // 29
   8.479 +    case 22: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_checkBoundsVABAIAI(v0, v1, v2); } // 184 1 140
   8.480 +    case 25: stack.push(arg4); // 25 4
   8.481 +    case 27: stack.push(arg1); // 43
   8.482 +    case 28: stack.push(arg2); // 28
   8.483 +    case 29: stack.push(arg3); // 29
   8.484 +    case 30: { var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_StringCoding_decodeACLjava_nio_charset_CharsetABAIAI(v0, v1, v2, v3)); } // 184 1 167
   8.485 +    case 33: arg5 = stack.pop() // 58 5
   8.486 +    case 35: stack.push(arg0); // 42
   8.487 +    case 36: stack.push(0); // 3
   8.488 +    case 37: { var v = stack.pop(); stack.pop().offset = v; } // 181 1 99
   8.489 +    case 40: stack.push(arg0); // 42
   8.490 +    case 41: stack.push(arg5); // 25 5
   8.491 +    case 43: stack.push(stack.pop().length); // 190
   8.492 +    case 44: { var v = stack.pop(); stack.pop().count = v; } // 181 1 97
   8.493 +    case 47: stack.push(arg0); // 42
   8.494 +    case 48: stack.push(arg5); // 25 5
   8.495 +    case 50: { var v = stack.pop(); stack.pop().value = v; } // 181 1 100
   8.496 +    case 53: return; // 177
   8.497 +  }
   8.498 +}
   8.499 +function java_lang_String_consVABLjava_lang_String(arg0,arg1,arg2) {
   8.500 +  var arg3;
   8.501 +;
   8.502 +  var stack = new Array(5);
   8.503 +  var gt = 0;
   8.504 +  for(;;) switch(gt) {
   8.505 +    case 0: stack.push(arg0); // 42
   8.506 +    case 1: stack.push(arg1); // 43
   8.507 +    case 2: stack.push(0); // 3
   8.508 +    case 3: stack.push(arg1); // 43
   8.509 +    case 4: stack.push(stack.pop().length); // 190
   8.510 +    case 5: stack.push(arg2); // 44
   8.511 +    case 6: { var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_consVABAIAIALjava_lang_String(stack.pop(), v0, v1, v2, v3); } // 183 1 154
   8.512 +    case 9: return; // 177
   8.513 +  }
   8.514 +}
   8.515 +function java_lang_String_consVABLjava_nio_charset_Charset(arg0,arg1,arg2) {
   8.516 +  var arg3;
   8.517 +;
   8.518 +  var stack = new Array(5);
   8.519 +  var gt = 0;
   8.520 +  for(;;) switch(gt) {
   8.521 +    case 0: stack.push(arg0); // 42
   8.522 +    case 1: stack.push(arg1); // 43
   8.523 +    case 2: stack.push(0); // 3
   8.524 +    case 3: stack.push(arg1); // 43
   8.525 +    case 4: stack.push(stack.pop().length); // 190
   8.526 +    case 5: stack.push(arg2); // 44
   8.527 +    case 6: { var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_consVABAIAIALjava_nio_charset_Charset(stack.pop(), v0, v1, v2, v3); } // 183 1 156
   8.528 +    case 9: return; // 177
   8.529 +  }
   8.530 +}
   8.531 +function java_lang_String_consVABII(arg0,arg1,arg2,arg3) {
   8.532 +  var arg4;
   8.533 +  var arg5;
   8.534 +;
   8.535 +  var stack = new Array(3);
   8.536 +  var gt = 0;
   8.537 +  for(;;) switch(gt) {
   8.538 +    case 0: stack.push(arg0); // 42
   8.539 +    case 1: { java_lang_Object_consV(stack.pop()); } // 183 1 130
   8.540 +    case 4: stack.push(arg1); // 43
   8.541 +    case 5: stack.push(arg2); // 28
   8.542 +    case 6: stack.push(arg3); // 29
   8.543 +    case 7: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_checkBoundsVABAIAI(v0, v1, v2); } // 184 1 140
   8.544 +    case 10: stack.push(arg1); // 43
   8.545 +    case 11: stack.push(arg2); // 28
   8.546 +    case 12: stack.push(arg3); // 29
   8.547 +    case 13: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_StringCoding_decodeACABAIAI(v0, v1, v2)); } // 184 1 163
   8.548 +    case 16: arg4 = stack.pop() // 58 4
   8.549 +    case 18: stack.push(arg0); // 42
   8.550 +    case 19: stack.push(0); // 3
   8.551 +    case 20: { var v = stack.pop(); stack.pop().offset = v; } // 181 1 99
   8.552 +    case 23: stack.push(arg0); // 42
   8.553 +    case 24: stack.push(arg4); // 25 4
   8.554 +    case 26: stack.push(stack.pop().length); // 190
   8.555 +    case 27: { var v = stack.pop(); stack.pop().count = v; } // 181 1 97
   8.556 +    case 30: stack.push(arg0); // 42
   8.557 +    case 31: stack.push(arg4); // 25 4
   8.558 +    case 33: { var v = stack.pop(); stack.pop().value = v; } // 181 1 100
   8.559 +    case 36: return; // 177
   8.560 +  }
   8.561 +}
   8.562 +function java_lang_String_consVAB(arg0,arg1) {
   8.563 +  var arg2;
   8.564 +;
   8.565 +  var stack = new Array(4);
   8.566 +  var gt = 0;
   8.567 +  for(;;) switch(gt) {
   8.568 +    case 0: stack.push(arg0); // 42
   8.569 +    case 1: stack.push(arg1); // 43
   8.570 +    case 2: stack.push(0); // 3
   8.571 +    case 3: stack.push(arg1); // 43
   8.572 +    case 4: stack.push(stack.pop().length); // 190
   8.573 +    case 5: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_consVABAIAI(stack.pop(), v0, v1, v2); } // 183 1 139
   8.574 +    case 8: return; // 177
   8.575 +  }
   8.576 +}
   8.577 +function java_lang_String_consVLjava_lang_StringBuffer(arg0,arg1) {
   8.578 +  var arg2;
   8.579 +  var arg3;
   8.580 +;
   8.581 +  var stack = new Array(2);
   8.582 +  var gt = 0;
   8.583 +  for(;;) switch(gt) {
   8.584 +    case 0: stack.push(arg0); // 42
   8.585 +    case 1: { java_lang_Object_consV(stack.pop()); } // 183 1 130
   8.586 +    case 4: stack.push(arg1); // 43
   8.587 +    case 5: { var self = stack.pop(); stack.push(self.toStringLjava_lang_String(self)); } // 182 1 161
   8.588 +    case 8: arg2 = stack.pop(); // 77
   8.589 +    case 9: stack.push(arg0); // 42
   8.590 +    case 10: stack.push(arg2); // 44
   8.591 +    case 11: stack.push(stack.pop().value); // 180 1 100
   8.592 +    case 14: { var v = stack.pop(); stack.pop().value = v; } // 181 1 100
   8.593 +    case 17: stack.push(arg0); // 42
   8.594 +    case 18: stack.push(arg2); // 44
   8.595 +    case 19: stack.push(stack.pop().count); // 180 1 97
   8.596 +    case 22: { var v = stack.pop(); stack.pop().count = v; } // 181 1 97
   8.597 +    case 25: stack.push(arg0); // 42
   8.598 +    case 26: stack.push(arg2); // 44
   8.599 +    case 27: stack.push(stack.pop().offset); // 180 1 99
   8.600 +    case 30: { var v = stack.pop(); stack.pop().offset = v; } // 181 1 99
   8.601 +    case 33: return; // 177
   8.602 +  }
   8.603 +}
   8.604 +function java_lang_String_consVLjava_lang_StringBuilder(arg0,arg1) {
   8.605 +  var arg2;
   8.606 +  var arg3;
   8.607 +;
   8.608 +  var stack = new Array(2);
   8.609 +  var gt = 0;
   8.610 +  for(;;) switch(gt) {
   8.611 +    case 0: stack.push(arg0); // 42
   8.612 +    case 1: { java_lang_Object_consV(stack.pop()); } // 183 1 130
   8.613 +    case 4: stack.push(arg1); // 43
   8.614 +    case 5: { var self = stack.pop(); stack.push(self.toStringLjava_lang_String(self)); } // 182 1 162
   8.615 +    case 8: arg2 = stack.pop(); // 77
   8.616 +    case 9: stack.push(arg0); // 42
   8.617 +    case 10: stack.push(arg2); // 44
   8.618 +    case 11: stack.push(stack.pop().value); // 180 1 100
   8.619 +    case 14: { var v = stack.pop(); stack.pop().value = v; } // 181 1 100
   8.620 +    case 17: stack.push(arg0); // 42
   8.621 +    case 18: stack.push(arg2); // 44
   8.622 +    case 19: stack.push(stack.pop().count); // 180 1 97
   8.623 +    case 22: { var v = stack.pop(); stack.pop().count = v; } // 181 1 97
   8.624 +    case 25: stack.push(arg0); // 42
   8.625 +    case 26: stack.push(arg2); // 44
   8.626 +    case 27: stack.push(stack.pop().offset); // 180 1 99
   8.627 +    case 30: { var v = stack.pop(); stack.pop().offset = v; } // 181 1 99
   8.628 +    case 33: return; // 177
   8.629 +  }
   8.630 +}
   8.631 +function java_lang_String_consVIIAC(arg0,arg1,arg2,arg3) {
   8.632 +  var arg4;
   8.633 +;
   8.634 +  var stack = new Array(2);
   8.635 +  var gt = 0;
   8.636 +  for(;;) switch(gt) {
   8.637 +    case 0: stack.push(arg0); // 42
   8.638 +    case 1: { java_lang_Object_consV(stack.pop()); } // 183 1 130
   8.639 +    case 4: stack.push(arg0); // 42
   8.640 +    case 5: stack.push(arg3); // 45
   8.641 +    case 6: { var v = stack.pop(); stack.pop().value = v; } // 181 1 100
   8.642 +    case 9: stack.push(arg0); // 42
   8.643 +    case 10: stack.push(arg1); // 27
   8.644 +    case 11: { var v = stack.pop(); stack.pop().offset = v; } // 181 1 99
   8.645 +    case 14: stack.push(arg0); // 42
   8.646 +    case 15: stack.push(arg2); // 28
   8.647 +    case 16: { var v = stack.pop(); stack.pop().count = v; } // 181 1 97
   8.648 +    case 19: return; // 177
   8.649 +  }
   8.650 +}
   8.651 +*/
   8.652 +
   8.653 +function java_lang_String_charAtCI(arg0,arg1) {
   8.654 +    return arg0.toString().charAt(arg1);
   8.655 +}
   8.656 +function java_lang_String_lengthI(arg0) {
   8.657 +    return arg0.toString().length;
   8.658 +}
   8.659 +function java_lang_String_isEmptyZ(arg0) {
   8.660 +    return arg0.toString().length === 0;
   8.661 +}
   8.662 +
   8.663 +/*
   8.664 +function java_lang_String_codePointAtII(arg0,arg1) {
   8.665 +  var arg2;
   8.666 +;
   8.667 +  var stack = new Array(4);
   8.668 +  var gt = 0;
   8.669 +  for(;;) switch(gt) {
   8.670 +    case 0: stack.push(arg1); // 27
   8.671 +    case 1: if (stack.pop() < 0) { gt = 12; continue; } // 155 0 11
   8.672 +    case 4: stack.push(arg1); // 27
   8.673 +    case 5: stack.push(arg0); // 42
   8.674 +    case 6: stack.push(stack.pop().count); // 180 1 97
   8.675 +    case 9: if (stack.pop() > stack.pop()) { gt = 21; continue; } // 161 0 12
   8.676 +    case 12: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
   8.677 +    case 15: stack.push(stack[stack.length - 1]); // 89
   8.678 +    case 16: stack.push(arg1); // 27
   8.679 +    case 17: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
   8.680 +    case 20:  // 191
   8.681 +    case 21: stack.push(arg0); // 42
   8.682 +    case 22: stack.push(stack.pop().value); // 180 1 100
   8.683 +    case 25: stack.push(arg0); // 42
   8.684 +    case 26: stack.push(stack.pop().offset); // 180 1 99
   8.685 +    case 29: stack.push(arg1); // 27
   8.686 +    case 30: stack.push(stack.pop() + stack.pop()); // 96
   8.687 +    case 31: stack.push(arg0); // 42
   8.688 +    case 32: stack.push(stack.pop().offset); // 180 1 99
   8.689 +    case 35: stack.push(arg0); // 42
   8.690 +    case 36: stack.push(stack.pop().count); // 180 1 97
   8.691 +    case 39: stack.push(stack.pop() + stack.pop()); // 96
   8.692 +    case 40: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_Character_codePointAtImplAIACAIAI(v0, v1, v2)); } // 184 1 113
   8.693 +    case 43: return stack.pop(); // 172
   8.694 +  }
   8.695 +}
   8.696 +function java_lang_String_codePointBeforeII(arg0,arg1) {
   8.697 +  var arg2;
   8.698 +  var arg3;
   8.699 +;
   8.700 +  var stack = new Array(3);
   8.701 +  var gt = 0;
   8.702 +  for(;;) switch(gt) {
   8.703 +    case 0: stack.push(arg1); // 27
   8.704 +    case 1: stack.push(1); // 4
   8.705 +    case 2: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
   8.706 +    case 3: arg2 = stack.pop(); // 61
   8.707 +    case 4: stack.push(arg2); // 28
   8.708 +    case 5: if (stack.pop() < 0) { gt = 16; continue; } // 155 0 11
   8.709 +    case 8: stack.push(arg2); // 28
   8.710 +    case 9: stack.push(arg0); // 42
   8.711 +    case 10: stack.push(stack.pop().count); // 180 1 97
   8.712 +    case 13: if (stack.pop() > stack.pop()) { gt = 25; continue; } // 161 0 12
   8.713 +    case 16: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
   8.714 +    case 19: stack.push(stack[stack.length - 1]); // 89
   8.715 +    case 20: stack.push(arg1); // 27
   8.716 +    case 21: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
   8.717 +    case 24:  // 191
   8.718 +    case 25: stack.push(arg0); // 42
   8.719 +    case 26: stack.push(stack.pop().value); // 180 1 100
   8.720 +    case 29: stack.push(arg0); // 42
   8.721 +    case 30: stack.push(stack.pop().offset); // 180 1 99
   8.722 +    case 33: stack.push(arg1); // 27
   8.723 +    case 34: stack.push(stack.pop() + stack.pop()); // 96
   8.724 +    case 35: stack.push(arg0); // 42
   8.725 +    case 36: stack.push(stack.pop().offset); // 180 1 99
   8.726 +    case 39: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_Character_codePointBeforeImplAIACAIAI(v0, v1, v2)); } // 184 1 114
   8.727 +    case 42: return stack.pop(); // 172
   8.728 +  }
   8.729 +}
   8.730 +function java_lang_String_codePointCountIII(arg0,arg1,arg2) {
   8.731 +  var arg3;
   8.732 +;
   8.733 +  var stack = new Array(4);
   8.734 +  var gt = 0;
   8.735 +  for(;;) switch(gt) {
   8.736 +    case 0: stack.push(arg1); // 27
   8.737 +    case 1: if (stack.pop() < 0) { gt = 17; continue; } // 155 0 16
   8.738 +    case 4: stack.push(arg2); // 28
   8.739 +    case 5: stack.push(arg0); // 42
   8.740 +    case 6: stack.push(stack.pop().count); // 180 1 97
   8.741 +    case 9: if (stack.pop() < stack.pop()) { gt = 17; continue; } // 163 0 8
   8.742 +    case 12: stack.push(arg1); // 27
   8.743 +    case 13: stack.push(arg2); // 28
   8.744 +    case 14: if (stack.pop() >= stack.pop()) { gt = 25; continue; } // 164 0 11
   8.745 +    case 17: stack.push(new java_lang_IndexOutOfBoundsException); // 187 0 194
   8.746 +    case 20: stack.push(stack[stack.length - 1]); // 89
   8.747 +    case 21: { java_lang_IndexOutOfBoundsException_consV(stack.pop()); } // 183 1 124
   8.748 +    case 24:  // 191
   8.749 +    case 25: stack.push(arg0); // 42
   8.750 +    case 26: stack.push(stack.pop().value); // 180 1 100
   8.751 +    case 29: stack.push(arg0); // 42
   8.752 +    case 30: stack.push(stack.pop().offset); // 180 1 99
   8.753 +    case 33: stack.push(arg1); // 27
   8.754 +    case 34: stack.push(stack.pop() + stack.pop()); // 96
   8.755 +    case 35: stack.push(arg2); // 28
   8.756 +    case 36: stack.push(arg1); // 27
   8.757 +    case 37: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
   8.758 +    case 38: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_Character_codePointCountImplAIACAIAI(v0, v1, v2)); } // 184 1 115
   8.759 +    case 41: return stack.pop(); // 172
   8.760 +  }
   8.761 +}
   8.762 +function java_lang_String_offsetByCodePointsIII(arg0,arg1,arg2) {
   8.763 +  var arg3;
   8.764 +;
   8.765 +  var stack = new Array(5);
   8.766 +  var gt = 0;
   8.767 +  for(;;) switch(gt) {
   8.768 +    case 0: stack.push(arg1); // 27
   8.769 +    case 1: if (stack.pop() < 0) { gt = 12; continue; } // 155 0 11
   8.770 +    case 4: stack.push(arg1); // 27
   8.771 +    case 5: stack.push(arg0); // 42
   8.772 +    case 6: stack.push(stack.pop().count); // 180 1 97
   8.773 +    case 9: if (stack.pop() >= stack.pop()) { gt = 20; continue; } // 164 0 11
   8.774 +    case 12: stack.push(new java_lang_IndexOutOfBoundsException); // 187 0 194
   8.775 +    case 15: stack.push(stack[stack.length - 1]); // 89
   8.776 +    case 16: { java_lang_IndexOutOfBoundsException_consV(stack.pop()); } // 183 1 124
   8.777 +    case 19:  // 191
   8.778 +    case 20: stack.push(arg0); // 42
   8.779 +    case 21: stack.push(stack.pop().value); // 180 1 100
   8.780 +    case 24: stack.push(arg0); // 42
   8.781 +    case 25: stack.push(stack.pop().offset); // 180 1 99
   8.782 +    case 28: stack.push(arg0); // 42
   8.783 +    case 29: stack.push(stack.pop().count); // 180 1 97
   8.784 +    case 32: stack.push(arg0); // 42
   8.785 +    case 33: stack.push(stack.pop().offset); // 180 1 99
   8.786 +    case 36: stack.push(arg1); // 27
   8.787 +    case 37: stack.push(stack.pop() + stack.pop()); // 96
   8.788 +    case 38: stack.push(arg2); // 28
   8.789 +    case 39: { var v4 = stack.pop(); var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_Character_offsetByCodePointsImplAIACAIAIAIAI(v0, v1, v2, v3, v4)); } // 184 1 116
   8.790 +    case 42: stack.push(arg0); // 42
   8.791 +    case 43: stack.push(stack.pop().offset); // 180 1 99
   8.792 +    case 46: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
   8.793 +    case 47: return stack.pop(); // 172
   8.794 +  }
   8.795 +}
   8.796 +*/
   8.797 +
   8.798 +// public void getChars(int srcBegin, int srcEnd, char dst[], int dstBegin) {
   8.799 +function java_lang_String_getCharsVIIACAI(arg0,arg1,arg2,arg3,arg4) {
   8.800 +    var s = arg0.toString();
   8.801 +    while (arg1 < arg2) {
   8.802 +        arg3[arg4++] = s[arg1++];
   8.803 +    }
   8.804 +}
   8.805 +
   8.806 +/*
   8.807 +function java_lang_String_getBytesVIIABI(arg0,arg1,arg2,arg3,arg4) {
   8.808 +  var arg5;
   8.809 +  var arg6;
   8.810 +  var arg7;
   8.811 +  var arg8;
   8.812 +  var arg9;
   8.813 +;
   8.814 +  var stack = new Array(4);
   8.815 +  var gt = 0;
   8.816 +  for(;;) switch(gt) {
   8.817 +    case 0: stack.push(arg1); // 27
   8.818 +    case 1: if (stack.pop() >= 0) { gt = 13; continue; } // 156 0 12
   8.819 +    case 4: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
   8.820 +    case 7: stack.push(stack[stack.length - 1]); // 89
   8.821 +    case 8: stack.push(arg1); // 27
   8.822 +    case 9: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
   8.823 +    case 12:  // 191
   8.824 +    case 13: stack.push(arg2); // 28
   8.825 +    case 14: stack.push(arg0); // 42
   8.826 +    case 15: stack.push(stack.pop().count); // 180 1 97
   8.827 +    case 18: if (stack.pop() >= stack.pop()) { gt = 30; continue; } // 164 0 12
   8.828 +    case 21: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
   8.829 +    case 24: stack.push(stack[stack.length - 1]); // 89
   8.830 +    case 25: stack.push(arg2); // 28
   8.831 +    case 26: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
   8.832 +    case 29:  // 191
   8.833 +    case 30: stack.push(arg1); // 27
   8.834 +    case 31: stack.push(arg2); // 28
   8.835 +    case 32: if (stack.pop() >= stack.pop()) { gt = 46; continue; } // 164 0 14
   8.836 +    case 35: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
   8.837 +    case 38: stack.push(stack[stack.length - 1]); // 89
   8.838 +    case 39: stack.push(arg2); // 28
   8.839 +    case 40: stack.push(arg1); // 27
   8.840 +    case 41: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
   8.841 +    case 42: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
   8.842 +    case 45:  // 191
   8.843 +    case 46: stack.push(arg4); // 21 4
   8.844 +    case 48: arg5 = stack.pop() // 54 5
   8.845 +    case 50: stack.push(arg0); // 42
   8.846 +    case 51: stack.push(stack.pop().offset); // 180 1 99
   8.847 +    case 54: stack.push(arg2); // 28
   8.848 +    case 55: stack.push(stack.pop() + stack.pop()); // 96
   8.849 +    case 56: arg6 = stack.pop() // 54 6
   8.850 +    case 58: stack.push(arg0); // 42
   8.851 +    case 59: stack.push(stack.pop().offset); // 180 1 99
   8.852 +    case 62: stack.push(arg1); // 27
   8.853 +    case 63: stack.push(stack.pop() + stack.pop()); // 96
   8.854 +    case 64: arg7 = stack.pop() // 54 7
   8.855 +    case 66: stack.push(arg0); // 42
   8.856 +    case 67: stack.push(stack.pop().value); // 180 1 100
   8.857 +    case 70: arg8 = stack.pop() // 58 8
   8.858 +    case 72: stack.push(arg7); // 21 7
   8.859 +    case 74: stack.push(arg6); // 21 6
   8.860 +    case 76: if (stack.pop() <= stack.pop()) { gt = 98; continue; } // 162 0 22
   8.861 +    case 79: stack.push(arg3); // 45
   8.862 +    case 80: stack.push(arg5); // 21 5
   8.863 +    case 82: arg5++; // 132 5 1
   8.864 +    case 85: stack.push(arg8); // 25 8
   8.865 +    case 87: stack.push(arg7); // 21 7
   8.866 +    case 89: arg7++; // 132 7 1
   8.867 +    case 92: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
   8.868 +    case 93: // number conversion  // 145
   8.869 +    case 94: { var value = stack.pop(); var indx = stack.pop(); stack.pop()[indx] = value; } // 84
   8.870 +    case 95: gt = 72; continue; // 167 255 233
   8.871 +    case 98: return; // 177
   8.872 +  }
   8.873 +}
   8.874 +function java_lang_String_getBytesABLjava_lang_String(arg0,arg1) {
   8.875 +  var arg2;
   8.876 +;
   8.877 +  var stack = new Array(4);
   8.878 +  var gt = 0;
   8.879 +  for(;;) switch(gt) {
   8.880 +    case 0: stack.push(arg1); // 43
   8.881 +    case 1: if (stack.pop()) { gt = 12; continue; } // 199 0 11
   8.882 +    case 4: stack.push(new java_lang_NullPointerException); // 187 0 198
   8.883 +    case 7: stack.push(stack[stack.length - 1]); // 89
   8.884 +    case 8: { java_lang_NullPointerException_consV(stack.pop()); } // 183 1 128
   8.885 +    case 11:  // 191
   8.886 +    case 12: stack.push(arg1); // 43
   8.887 +    case 13: stack.push(arg0); // 42
   8.888 +    case 14: stack.push(stack.pop().value); // 180 1 100
   8.889 +    case 17: stack.push(arg0); // 42
   8.890 +    case 18: stack.push(stack.pop().offset); // 180 1 99
   8.891 +    case 21: stack.push(arg0); // 42
   8.892 +    case 22: stack.push(stack.pop().count); // 180 1 97
   8.893 +    case 25: { var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_StringCoding_encodeABLjava_lang_StringACAIAI(v0, v1, v2, v3)); } // 184 1 166
   8.894 +    case 28: return stack.pop(); // 176
   8.895 +  }
   8.896 +}
   8.897 +function java_lang_String_getBytesABLjava_nio_charset_Charset(arg0,arg1) {
   8.898 +  var arg2;
   8.899 +;
   8.900 +  var stack = new Array(4);
   8.901 +  var gt = 0;
   8.902 +  for(;;) switch(gt) {
   8.903 +    case 0: stack.push(arg1); // 43
   8.904 +    case 1: if (stack.pop()) { gt = 12; continue; } // 199 0 11
   8.905 +    case 4: stack.push(new java_lang_NullPointerException); // 187 0 198
   8.906 +    case 7: stack.push(stack[stack.length - 1]); // 89
   8.907 +    case 8: { java_lang_NullPointerException_consV(stack.pop()); } // 183 1 128
   8.908 +    case 11:  // 191
   8.909 +    case 12: stack.push(arg1); // 43
   8.910 +    case 13: stack.push(arg0); // 42
   8.911 +    case 14: stack.push(stack.pop().value); // 180 1 100
   8.912 +    case 17: stack.push(arg0); // 42
   8.913 +    case 18: stack.push(stack.pop().offset); // 180 1 99
   8.914 +    case 21: stack.push(arg0); // 42
   8.915 +    case 22: stack.push(stack.pop().count); // 180 1 97
   8.916 +    case 25: { var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_StringCoding_encodeABLjava_nio_charset_CharsetACAIAI(v0, v1, v2, v3)); } // 184 1 168
   8.917 +    case 28: return stack.pop(); // 176
   8.918 +  }
   8.919 +}
   8.920 +function java_lang_String_getBytesAB(arg0) {
   8.921 +  var arg1;
   8.922 +;
   8.923 +  var stack = new Array(3);
   8.924 +  var gt = 0;
   8.925 +  for(;;) switch(gt) {
   8.926 +    case 0: stack.push(arg0); // 42
   8.927 +    case 1: stack.push(stack.pop().value); // 180 1 100
   8.928 +    case 4: stack.push(arg0); // 42
   8.929 +    case 5: stack.push(stack.pop().offset); // 180 1 99
   8.930 +    case 8: stack.push(arg0); // 42
   8.931 +    case 9: stack.push(stack.pop().count); // 180 1 97
   8.932 +    case 12: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_StringCoding_encodeABACAIAI(v0, v1, v2)); } // 184 1 164
   8.933 +    case 15: return stack.pop(); // 176
   8.934 +  }
   8.935 +}
   8.936 +function java_lang_String_equalsZLjava_lang_Object(arg0,arg1) {
   8.937 +  var arg2;
   8.938 +  var arg3;
   8.939 +  var arg4;
   8.940 +  var arg5;
   8.941 +  var arg6;
   8.942 +  var arg7;
   8.943 +  var arg8;
   8.944 +;
   8.945 +  var stack = new Array(3);
   8.946 +  var gt = 0;
   8.947 +  for(;;) switch(gt) {
   8.948 +    case 0: stack.push(arg0); // 42
   8.949 +    case 1: stack.push(arg1); // 43
   8.950 +    case 2:  // 166
   8.951 +    case 3:  // 0
   8.952 +    case 4: stack.push(2); // 5
   8.953 +    case 5: stack.push(1); // 4
   8.954 +    case 6: return stack.pop(); // 172
   8.955 +    case 7: stack.push(arg1); // 43
   8.956 +    case 8: stack.push(stack.pop().$instOf_java_lang_String ? 1 : 0); // 193 0 200
   8.957 +    case 11: if (stack.pop() == 0) { gt = 86; continue; } // 153 0 75
   8.958 +    case 14: stack.push(arg1); // 43
   8.959 +    case 15: if(stack[stack.length - 1].$instOf_java_lang_String != 1) throw {}; // 192 0 200
   8.960 +    case 18: arg2 = stack.pop(); // 77
   8.961 +    case 19: stack.push(arg0); // 42
   8.962 +    case 20: stack.push(stack.pop().count); // 180 1 97
   8.963 +    case 23: arg3 = stack.pop(); // 62
   8.964 +    case 24: stack.push(arg3); // 29
   8.965 +    case 25: stack.push(arg2); // 44
   8.966 +    case 26: stack.push(stack.pop().count); // 180 1 97
   8.967 +    case 29: if (stack.pop() != stack.pop()) { gt = 86; continue; } // 160 0 57
   8.968 +    case 32: stack.push(arg0); // 42
   8.969 +    case 33: stack.push(stack.pop().value); // 180 1 100
   8.970 +    case 36: arg4 = stack.pop() // 58 4
   8.971 +    case 38: stack.push(arg2); // 44
   8.972 +    case 39: stack.push(stack.pop().value); // 180 1 100
   8.973 +    case 42: arg5 = stack.pop() // 58 5
   8.974 +    case 44: stack.push(arg0); // 42
   8.975 +    case 45: stack.push(stack.pop().offset); // 180 1 99
   8.976 +    case 48: arg6 = stack.pop() // 54 6
   8.977 +    case 50: stack.push(arg2); // 44
   8.978 +    case 51: stack.push(stack.pop().offset); // 180 1 99
   8.979 +    case 54: arg7 = stack.pop() // 54 7
   8.980 +    case 56: stack.push(arg3); // 29
   8.981 +    case 57: arg3 += 255; // 132 3 255
   8.982 +    case 60: if (stack.pop() == 0) { gt = 84; continue; } // 153 0 24
   8.983 +    case 63: stack.push(arg4); // 25 4
   8.984 +    case 65: stack.push(arg6); // 21 6
   8.985 +    case 67: arg6++; // 132 6 1
   8.986 +    case 70: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
   8.987 +    case 71: stack.push(arg5); // 25 5
   8.988 +    case 73: stack.push(arg7); // 21 7
   8.989 +    case 75: arg7++; // 132 7 1
   8.990 +    case 78: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
   8.991 +    case 79: if (stack.pop() == stack.pop()) { gt = 56; continue; } // 159 255 233
   8.992 +    case 82: stack.push(0); // 3
   8.993 +    case 83: return stack.pop(); // 172
   8.994 +    case 84: stack.push(1); // 4
   8.995 +    case 85: return stack.pop(); // 172
   8.996 +    case 86: stack.push(0); // 3
   8.997 +    case 87: return stack.pop(); // 172
   8.998 +  }
   8.999 +}
  8.1000 +function java_lang_String_contentEqualsZLjava_lang_StringBuffer(arg0,arg1) {
  8.1001 +  var arg2;
  8.1002 +  var arg3;
  8.1003 +  var arg4;
  8.1004 +;
  8.1005 +  var stack = new Array(2);
  8.1006 +  var gt = 0;
  8.1007 +  for(;;) switch(gt) {
  8.1008 +    case 0: stack.push(arg1); // 43
  8.1009 +    case 1: stack.push(stack[stack.length - 1]); // 89
  8.1010 +    case 2: arg2 = stack.pop(); // 77
  8.1011 +    case 3:  // 194
  8.1012 +    case 4: stack.push(arg0); // 42
  8.1013 +    case 5: stack.push(arg1); // 43
  8.1014 +    case 6: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.contentEqualsZLjava_lang_CharSequence(self, v0)); } // 182 1 146
  8.1015 +    case 9: stack.push(arg2); // 44
  8.1016 +    case 10:  // 195
  8.1017 +    case 11: return stack.pop(); // 172
  8.1018 +    case 12: arg3 = stack.pop(); // 78
  8.1019 +    case 13: stack.push(arg2); // 44
  8.1020 +    case 14:  // 195
  8.1021 +    case 15: stack.push(arg3); // 45
  8.1022 +    case 16:  // 191
  8.1023 +  }
  8.1024 +}
  8.1025 +function java_lang_String_contentEqualsZLjava_lang_CharSequence(arg0,arg1) {
  8.1026 +  var arg2;
  8.1027 +  var arg3;
  8.1028 +  var arg4;
  8.1029 +  var arg5;
  8.1030 +  var arg6;
  8.1031 +  var arg7;
  8.1032 +;
  8.1033 +  var stack = new Array(3);
  8.1034 +  var gt = 0;
  8.1035 +  for(;;) switch(gt) {
  8.1036 +    case 0: stack.push(arg0); // 42
  8.1037 +    case 1: stack.push(stack.pop().count); // 180 1 97
  8.1038 +    case 4: stack.push(arg1); // 43
  8.1039 +    case 5: { var self = stack.pop(); stack.push(self.lengthI(self)); } // 185 1 188
  8.1040 +    case 8:  // 1
  8.1041 +    case 9:  // 0
  8.1042 +    case 10: if (stack.pop() == stack.pop()) { gt = 15; continue; } // 159 0 5
  8.1043 +    case 13: stack.push(0); // 3
  8.1044 +    case 14: return stack.pop(); // 172
  8.1045 +    case 15: stack.push(arg1); // 43
  8.1046 +    case 16: stack.push(stack.pop().$instOf_java_lang_AbstractStringBuilder ? 1 : 0); // 193 0 186
  8.1047 +    case 19: if (stack.pop() == 0) { gt = 77; continue; } // 153 0 58
  8.1048 +    case 22: stack.push(arg0); // 42
  8.1049 +    case 23: stack.push(stack.pop().value); // 180 1 100
  8.1050 +    case 26: arg2 = stack.pop(); // 77
  8.1051 +    case 27: stack.push(arg1); // 43
  8.1052 +    case 28: if(stack[stack.length - 1].$instOf_java_lang_AbstractStringBuilder != 1) throw {}; // 192 0 186
  8.1053 +    case 31: { var self = stack.pop(); stack.push(self.getValueAC(self)); } // 182 1 103
  8.1054 +    case 34: arg3 = stack.pop(); // 78
  8.1055 +    case 35: stack.push(arg0); // 42
  8.1056 +    case 36: stack.push(stack.pop().offset); // 180 1 99
  8.1057 +    case 39: arg4 = stack.pop() // 54 4
  8.1058 +    case 41: stack.push(0); // 3
  8.1059 +    case 42: arg5 = stack.pop() // 54 5
  8.1060 +    case 44: stack.push(arg0); // 42
  8.1061 +    case 45: stack.push(stack.pop().count); // 180 1 97
  8.1062 +    case 48: arg6 = stack.pop() // 54 6
  8.1063 +    case 50: stack.push(arg6); // 21 6
  8.1064 +    case 52: arg6 += 255; // 132 6 255
  8.1065 +    case 55: if (stack.pop() == 0) { gt = 77; continue; } // 153 0 22
  8.1066 +    case 58: stack.push(arg2); // 44
  8.1067 +    case 59: stack.push(arg4); // 21 4
  8.1068 +    case 61: arg4++; // 132 4 1
  8.1069 +    case 64: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1070 +    case 65: stack.push(arg3); // 45
  8.1071 +    case 66: stack.push(arg5); // 21 5
  8.1072 +    case 68: arg5++; // 132 5 1
  8.1073 +    case 71: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1074 +    case 72: if (stack.pop() == stack.pop()) { gt = 50; continue; } // 159 255 234
  8.1075 +    case 75: stack.push(0); // 3
  8.1076 +    case 76: return stack.pop(); // 172
  8.1077 +    case 77: stack.push(arg1); // 43
  8.1078 +    case 78: stack.push(arg0); // 42
  8.1079 +    case 79: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.equalsZLjava_lang_Object(self, v0)); } // 182 1 131
  8.1080 +    case 82: if (stack.pop() == 0) { gt = 87; continue; } // 153 0 5
  8.1081 +    case 85: stack.push(1); // 4
  8.1082 +    case 86: return stack.pop(); // 172
  8.1083 +    case 87: stack.push(arg0); // 42
  8.1084 +    case 88: stack.push(stack.pop().value); // 180 1 100
  8.1085 +    case 91: arg2 = stack.pop(); // 77
  8.1086 +    case 92: stack.push(arg0); // 42
  8.1087 +    case 93: stack.push(stack.pop().offset); // 180 1 99
  8.1088 +    case 96: arg3 = stack.pop(); // 62
  8.1089 +    case 97: stack.push(0); // 3
  8.1090 +    case 98: arg4 = stack.pop() // 54 4
  8.1091 +    case 100: stack.push(arg0); // 42
  8.1092 +    case 101: stack.push(stack.pop().count); // 180 1 97
  8.1093 +    case 104: arg5 = stack.pop() // 54 5
  8.1094 +    case 106: stack.push(arg5); // 21 5
  8.1095 +    case 108: arg5 += 255; // 132 5 255
  8.1096 +    case 111: if (stack.pop() == 0) { gt = 136; continue; } // 153 0 25
  8.1097 +    case 114: stack.push(arg2); // 44
  8.1098 +    case 115: stack.push(arg3); // 29
  8.1099 +    case 116: arg3++; // 132 3 1
  8.1100 +    case 119: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1101 +    case 120: stack.push(arg1); // 43
  8.1102 +    case 121: stack.push(arg4); // 21 4
  8.1103 +    case 123: arg4++; // 132 4 1
  8.1104 +    case 126: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.charAtCI(self, v0)); } // 185 1 189
  8.1105 +    case 129:  // 2
  8.1106 +    case 130:  // 0
  8.1107 +    case 131: if (stack.pop() == stack.pop()) { gt = 106; continue; } // 159 255 231
  8.1108 +    case 134: stack.push(0); // 3
  8.1109 +    case 135: return stack.pop(); // 172
  8.1110 +    case 136: stack.push(1); // 4
  8.1111 +    case 137: return stack.pop(); // 172
  8.1112 +  }
  8.1113 +}
  8.1114 +function java_lang_String_equalsIgnoreCaseZLjava_lang_String(arg0,arg1) {
  8.1115 +  var arg2;
  8.1116 +;
  8.1117 +  var stack = new Array(6);
  8.1118 +  var gt = 0;
  8.1119 +  for(;;) switch(gt) {
  8.1120 +    case 0: stack.push(arg0); // 42
  8.1121 +    case 1: stack.push(arg1); // 43
  8.1122 +    case 2:  // 166
  8.1123 +    case 3:  // 0
  8.1124 +    case 4: stack.push(4); // 7
  8.1125 +    case 5: stack.push(1); // 4
  8.1126 +    case 6: gt = 44; continue; // 167 0 38
  8.1127 +    case 9: stack.push(arg1); // 43
  8.1128 +    case 10: if (!stack.pop()) { gt = 43; continue; } // 198 0 33
  8.1129 +    case 13: stack.push(arg1); // 43
  8.1130 +    case 14: stack.push(stack.pop().count); // 180 1 97
  8.1131 +    case 17: stack.push(arg0); // 42
  8.1132 +    case 18: stack.push(stack.pop().count); // 180 1 97
  8.1133 +    case 21: if (stack.pop() != stack.pop()) { gt = 43; continue; } // 160 0 22
  8.1134 +    case 24: stack.push(arg0); // 42
  8.1135 +    case 25: stack.push(1); // 4
  8.1136 +    case 26: stack.push(0); // 3
  8.1137 +    case 27: stack.push(arg1); // 43
  8.1138 +    case 28: stack.push(0); // 3
  8.1139 +    case 29: stack.push(arg0); // 42
  8.1140 +    case 30: stack.push(stack.pop().count); // 180 1 97
  8.1141 +    case 33: { var v4 = stack.pop(); var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); stack.push(self.regionMatchesZZILjava_lang_StringII(self, v0, v1, v2, v3, v4)); } // 182 1 153
  8.1142 +    case 36: if (stack.pop() == 0) { gt = 43; continue; } // 153 0 7
  8.1143 +    case 39: stack.push(1); // 4
  8.1144 +    case 40: gt = 44; continue; // 167 0 4
  8.1145 +    case 43: stack.push(0); // 3
  8.1146 +    case 44: return stack.pop(); // 172
  8.1147 +  }
  8.1148 +}
  8.1149 +function java_lang_String_compareToILjava_lang_String(arg0,arg1) {
  8.1150 +  var arg2;
  8.1151 +  var arg3;
  8.1152 +  var arg4;
  8.1153 +  var arg5;
  8.1154 +  var arg6;
  8.1155 +  var arg7;
  8.1156 +  var arg8;
  8.1157 +  var arg9;
  8.1158 +  var arg10;
  8.1159 +  var arg11;
  8.1160 +  var arg12;
  8.1161 +  var arg13;
  8.1162 +;
  8.1163 +  var stack = new Array(2);
  8.1164 +  var gt = 0;
  8.1165 +  for(;;) switch(gt) {
  8.1166 +    case 0: stack.push(arg0); // 42
  8.1167 +    case 1: stack.push(stack.pop().count); // 180 1 97
  8.1168 +    case 4: arg2 = stack.pop(); // 61
  8.1169 +    case 5: stack.push(arg1); // 43
  8.1170 +    case 6: stack.push(stack.pop().count); // 180 1 97
  8.1171 +    case 9: arg3 = stack.pop(); // 62
  8.1172 +    case 10: stack.push(arg2); // 28
  8.1173 +    case 11: stack.push(arg3); // 29
  8.1174 +    case 12: { var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_Math_minIII(v0, v1)); } // 184 1 127
  8.1175 +    case 15: arg4 = stack.pop() // 54 4
  8.1176 +    case 17: stack.push(arg0); // 42
  8.1177 +    case 18: stack.push(stack.pop().value); // 180 1 100
  8.1178 +    case 21: arg5 = stack.pop() // 58 5
  8.1179 +    case 23: stack.push(arg1); // 43
  8.1180 +    case 24: stack.push(stack.pop().value); // 180 1 100
  8.1181 +    case 27: arg6 = stack.pop() // 58 6
  8.1182 +    case 29: stack.push(arg0); // 42
  8.1183 +    case 30: stack.push(stack.pop().offset); // 180 1 99
  8.1184 +    case 33: arg7 = stack.pop() // 54 7
  8.1185 +    case 35: stack.push(arg1); // 43
  8.1186 +    case 36: stack.push(stack.pop().offset); // 180 1 99
  8.1187 +    case 39: arg8 = stack.pop() // 54 8
  8.1188 +    case 41: stack.push(arg7); // 21 7
  8.1189 +    case 43: stack.push(arg8); // 21 8
  8.1190 +    case 45: if (stack.pop() != stack.pop()) { gt = 102; continue; } // 160 0 57
  8.1191 +    case 48: stack.push(arg7); // 21 7
  8.1192 +    case 50: arg9 = stack.pop() // 54 9
  8.1193 +    case 52: stack.push(arg4); // 21 4
  8.1194 +    case 54: stack.push(arg7); // 21 7
  8.1195 +    case 56: stack.push(stack.pop() + stack.pop()); // 96
  8.1196 +    case 57: arg10 = stack.pop() // 54 10
  8.1197 +    case 59: stack.push(arg9); // 21 9
  8.1198 +    case 61: stack.push(arg10); // 21 10
  8.1199 +    case 63: if (stack.pop() <= stack.pop()) { gt = 99; continue; } // 162 0 36
  8.1200 +    case 66: stack.push(arg5); // 25 5
  8.1201 +    case 68: stack.push(arg9); // 21 9
  8.1202 +    case 70: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1203 +    case 71: arg11 = stack.pop() // 54 11
  8.1204 +    case 73: stack.push(arg6); // 25 6
  8.1205 +    case 75: stack.push(arg9); // 21 9
  8.1206 +    case 77: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1207 +    case 78: arg12 = stack.pop() // 54 12
  8.1208 +    case 80: stack.push(arg11); // 21 11
  8.1209 +    case 82: stack.push(arg12); // 21 12
  8.1210 +    case 84: if (stack.pop() == stack.pop()) { gt = 93; continue; } // 159 0 9
  8.1211 +    case 87: stack.push(arg11); // 21 11
  8.1212 +    case 89: stack.push(arg12); // 21 12
  8.1213 +    case 91: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.1214 +    case 92: return stack.pop(); // 172
  8.1215 +    case 93: arg9++; // 132 9 1
  8.1216 +    case 96: gt = 59; continue; // 167 255 219
  8.1217 +    case 99: gt = 146; continue; // 167 0 47
  8.1218 +    case 102: stack.push(arg4); // 21 4
  8.1219 +    case 104: arg4 += 255; // 132 4 255
  8.1220 +    case 107: if (stack.pop() == 0) { gt = 146; continue; } // 153 0 39
  8.1221 +    case 110: stack.push(arg5); // 25 5
  8.1222 +    case 112: stack.push(arg7); // 21 7
  8.1223 +    case 114: arg7++; // 132 7 1
  8.1224 +    case 117: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1225 +    case 118: arg9 = stack.pop() // 54 9
  8.1226 +    case 120: stack.push(arg6); // 25 6
  8.1227 +    case 122: stack.push(arg8); // 21 8
  8.1228 +    case 124: arg8++; // 132 8 1
  8.1229 +    case 127: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1230 +    case 128: arg10 = stack.pop() // 54 10
  8.1231 +    case 130: stack.push(arg9); // 21 9
  8.1232 +    case 132: stack.push(arg10); // 21 10
  8.1233 +    case 134: if (stack.pop() == stack.pop()) { gt = 143; continue; } // 159 0 9
  8.1234 +    case 137: stack.push(arg9); // 21 9
  8.1235 +    case 139: stack.push(arg10); // 21 10
  8.1236 +    case 141: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.1237 +    case 142: return stack.pop(); // 172
  8.1238 +    case 143: gt = 102; continue; // 167 255 215
  8.1239 +    case 146: stack.push(arg2); // 28
  8.1240 +    case 147: stack.push(arg3); // 29
  8.1241 +    case 148: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.1242 +    case 149: return stack.pop(); // 172
  8.1243 +  }
  8.1244 +}
  8.1245 +function java_lang_String_compareToIgnoreCaseILjava_lang_String(arg0,arg1) {
  8.1246 +  var arg2;
  8.1247 +;
  8.1248 +  var stack = new Array(3);
  8.1249 +  var gt = 0;
  8.1250 +  for(;;) switch(gt) {
  8.1251 +    case 0: stack.push(java_lang_String_CASE_INSENSITIVE_ORDER); // 178 1 102
  8.1252 +    case 3: stack.push(arg0); // 42
  8.1253 +    case 4: stack.push(arg1); // 43
  8.1254 +    case 5: { var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); stack.push(self.compareILjava_lang_ObjectLjava_lang_Object(self, v0, v1)); } // 185 1 190
  8.1255 +    case 8: stack.push(0); // 3
  8.1256 +    case 9:  // 0
  8.1257 +    case 10: return stack.pop(); // 172
  8.1258 +  }
  8.1259 +}
  8.1260 +function java_lang_String_regionMatchesZILjava_lang_StringII(arg0,arg1,arg2,arg3,arg4) {
  8.1261 +  var arg5;
  8.1262 +  var arg6;
  8.1263 +  var arg7;
  8.1264 +  var arg8;
  8.1265 +  var arg9;
  8.1266 +;
  8.1267 +  var stack = new Array(6);
  8.1268 +  var gt = 0;
  8.1269 +  for(;;) switch(gt) {
  8.1270 +    case 0: stack.push(arg0); // 42
  8.1271 +    case 1: stack.push(stack.pop().value); // 180 1 100
  8.1272 +    case 4: arg5 = stack.pop() // 58 5
  8.1273 +    case 6: stack.push(arg0); // 42
  8.1274 +    case 7: stack.push(stack.pop().offset); // 180 1 99
  8.1275 +    case 10: stack.push(arg1); // 27
  8.1276 +    case 11: stack.push(stack.pop() + stack.pop()); // 96
  8.1277 +    case 12: arg6 = stack.pop() // 54 6
  8.1278 +    case 14: stack.push(arg2); // 44
  8.1279 +    case 15: stack.push(stack.pop().value); // 180 1 100
  8.1280 +    case 18: arg7 = stack.pop() // 58 7
  8.1281 +    case 20: stack.push(arg2); // 44
  8.1282 +    case 21: stack.push(stack.pop().offset); // 180 1 99
  8.1283 +    case 24: stack.push(arg3); // 29
  8.1284 +    case 25: stack.push(stack.pop() + stack.pop()); // 96
  8.1285 +    case 26: arg8 = stack.pop() // 54 8
  8.1286 +    case 28: stack.push(arg3); // 29
  8.1287 +    case 29: if (stack.pop() < 0) { gt = 66; continue; } // 155 0 37
  8.1288 +    case 32: stack.push(arg1); // 27
  8.1289 +    case 33: if (stack.pop() < 0) { gt = 66; continue; } // 155 0 33
  8.1290 +    case 36: stack.push(arg1); // 27
  8.1291 +    case 37: // number conversion  // 133
  8.1292 +    case 38: stack.push(arg0); // 42
  8.1293 +    case 39: stack.push(stack.pop().count); // 180 1 97
  8.1294 +    case 42: // number conversion  // 133
  8.1295 +    case 43: stack.push(arg4); // 21 4
  8.1296 +    case 45: // number conversion  // 133
  8.1297 +    case 46: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 101
  8.1298 +    case 47: { var delta = stack.pop() - stack.pop(); stack.push(delta < 0 ?-1 : (delta == 0 ? 0 : 1)); } // 148
  8.1299 +    case 48: if (stack.pop() > 0) { gt = 66; continue; } // 157 0 18
  8.1300 +    case 51: stack.push(arg3); // 29
  8.1301 +    case 52: // number conversion  // 133
  8.1302 +    case 53: stack.push(arg2); // 44
  8.1303 +    case 54: stack.push(stack.pop().count); // 180 1 97
  8.1304 +    case 57: // number conversion  // 133
  8.1305 +    case 58: stack.push(arg4); // 21 4
  8.1306 +    case 60: // number conversion  // 133
  8.1307 +    case 61: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 101
  8.1308 +    case 62: { var delta = stack.pop() - stack.pop(); stack.push(delta < 0 ?-1 : (delta == 0 ? 0 : 1)); } // 148
  8.1309 +    case 63: if (stack.pop() <= 0) { gt = 68; continue; } // 158 0 5
  8.1310 +    case 66: stack.push(0); // 3
  8.1311 +    case 67: return stack.pop(); // 172
  8.1312 +    case 68: stack.push(arg4); // 21 4
  8.1313 +    case 70: arg4 += 255; // 132 4 255
  8.1314 +    case 73: if (stack.pop() <= 0) { gt = 97; continue; } // 158 0 24
  8.1315 +    case 76: stack.push(arg5); // 25 5
  8.1316 +    case 78: stack.push(arg6); // 21 6
  8.1317 +    case 80: arg6++; // 132 6 1
  8.1318 +    case 83: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1319 +    case 84: stack.push(arg7); // 25 7
  8.1320 +    case 86: stack.push(arg8); // 21 8
  8.1321 +    case 88: arg8++; // 132 8 1
  8.1322 +    case 91: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1323 +    case 92: if (stack.pop() == stack.pop()) { gt = 68; continue; } // 159 255 232
  8.1324 +    case 95: stack.push(0); // 3
  8.1325 +    case 96: return stack.pop(); // 172
  8.1326 +    case 97: stack.push(1); // 4
  8.1327 +    case 98: return stack.pop(); // 172
  8.1328 +  }
  8.1329 +}
  8.1330 +function java_lang_String_regionMatchesZZILjava_lang_StringII(arg0,arg1,arg2,arg3,arg4,arg5) {
  8.1331 +  var arg6;
  8.1332 +  var arg7;
  8.1333 +  var arg8;
  8.1334 +  var arg9;
  8.1335 +  var arg10;
  8.1336 +  var arg11;
  8.1337 +  var arg12;
  8.1338 +  var arg13;
  8.1339 +  var arg14;
  8.1340 +;
  8.1341 +  var stack = new Array(6);
  8.1342 +  var gt = 0;
  8.1343 +  for(;;) switch(gt) {
  8.1344 +    case 0: stack.push(arg0); // 42
  8.1345 +    case 1: stack.push(stack.pop().value); // 180 1 100
  8.1346 +    case 4: arg6 = stack.pop() // 58 6
  8.1347 +    case 6: stack.push(arg0); // 42
  8.1348 +    case 7: stack.push(stack.pop().offset); // 180 1 99
  8.1349 +    case 10: stack.push(arg2); // 28
  8.1350 +    case 11: stack.push(stack.pop() + stack.pop()); // 96
  8.1351 +    case 12: arg7 = stack.pop() // 54 7
  8.1352 +    case 14: stack.push(arg3); // 45
  8.1353 +    case 15: stack.push(stack.pop().value); // 180 1 100
  8.1354 +    case 18: arg8 = stack.pop() // 58 8
  8.1355 +    case 20: stack.push(arg3); // 45
  8.1356 +    case 21: stack.push(stack.pop().offset); // 180 1 99
  8.1357 +    case 24: stack.push(arg4); // 21 4
  8.1358 +    case 26: stack.push(stack.pop() + stack.pop()); // 96
  8.1359 +    case 27: arg9 = stack.pop() // 54 9
  8.1360 +    case 29: stack.push(arg4); // 21 4
  8.1361 +    case 31: if (stack.pop() < 0) { gt = 69; continue; } // 155 0 38
  8.1362 +    case 34: stack.push(arg2); // 28
  8.1363 +    case 35: if (stack.pop() < 0) { gt = 69; continue; } // 155 0 34
  8.1364 +    case 38: stack.push(arg2); // 28
  8.1365 +    case 39: // number conversion  // 133
  8.1366 +    case 40: stack.push(arg0); // 42
  8.1367 +    case 41: stack.push(stack.pop().count); // 180 1 97
  8.1368 +    case 44: // number conversion  // 133
  8.1369 +    case 45: stack.push(arg5); // 21 5
  8.1370 +    case 47: // number conversion  // 133
  8.1371 +    case 48: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 101
  8.1372 +    case 49: { var delta = stack.pop() - stack.pop(); stack.push(delta < 0 ?-1 : (delta == 0 ? 0 : 1)); } // 148
  8.1373 +    case 50: if (stack.pop() > 0) { gt = 69; continue; } // 157 0 19
  8.1374 +    case 53: stack.push(arg4); // 21 4
  8.1375 +    case 55: // number conversion  // 133
  8.1376 +    case 56: stack.push(arg3); // 45
  8.1377 +    case 57: stack.push(stack.pop().count); // 180 1 97
  8.1378 +    case 60: // number conversion  // 133
  8.1379 +    case 61: stack.push(arg5); // 21 5
  8.1380 +    case 63: // number conversion  // 133
  8.1381 +    case 64: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 101
  8.1382 +    case 65: { var delta = stack.pop() - stack.pop(); stack.push(delta < 0 ?-1 : (delta == 0 ? 0 : 1)); } // 148
  8.1383 +    case 66: if (stack.pop() <= 0) { gt = 71; continue; } // 158 0 5
  8.1384 +    case 69: stack.push(0); // 3
  8.1385 +    case 70: return stack.pop(); // 172
  8.1386 +    case 71: stack.push(arg5); // 21 5
  8.1387 +    case 73: arg5 += 255; // 132 5 255
  8.1388 +    case 76: if (stack.pop() <= 0) { gt = 155; continue; } // 158 0 79
  8.1389 +    case 79: stack.push(arg6); // 25 6
  8.1390 +    case 81: stack.push(arg7); // 21 7
  8.1391 +    case 83: arg7++; // 132 7 1
  8.1392 +    case 86: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1393 +    case 87: arg10 = stack.pop() // 54 10
  8.1394 +    case 89: stack.push(arg8); // 25 8
  8.1395 +    case 91: stack.push(arg9); // 21 9
  8.1396 +    case 93: arg9++; // 132 9 1
  8.1397 +    case 96: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1398 +    case 97: arg11 = stack.pop() // 54 11
  8.1399 +    case 99: stack.push(arg10); // 21 10
  8.1400 +    case 101: stack.push(arg11); // 21 11
  8.1401 +    case 103: if (stack.pop() != stack.pop()) { gt = 109; continue; } // 160 0 6
  8.1402 +    case 106: gt = 71; continue; // 167 255 221
  8.1403 +    case 109: stack.push(arg1); // 27
  8.1404 +    case 110: if (stack.pop() == 0) { gt = 153; continue; } // 153 0 43
  8.1405 +    case 113: stack.push(arg10); // 21 10
  8.1406 +    case 115: { var v0 = stack.pop(); stack.push(java_lang_Character_toUpperCaseCC(v0)); } // 184 1 105
  8.1407 +    case 118: arg12 = stack.pop() // 54 12
  8.1408 +    case 120: stack.push(arg11); // 21 11
  8.1409 +    case 122: { var v0 = stack.pop(); stack.push(java_lang_Character_toUpperCaseCC(v0)); } // 184 1 105
  8.1410 +    case 125: arg13 = stack.pop() // 54 13
  8.1411 +    case 127: stack.push(arg12); // 21 12
  8.1412 +    case 129: stack.push(arg13); // 21 13
  8.1413 +    case 131: if (stack.pop() != stack.pop()) { gt = 137; continue; } // 160 0 6
  8.1414 +    case 134: gt = 71; continue; // 167 255 193
  8.1415 +    case 137: stack.push(arg12); // 21 12
  8.1416 +    case 139: { var v0 = stack.pop(); stack.push(java_lang_Character_toLowerCaseCC(v0)); } // 184 1 104
  8.1417 +    case 142: stack.push(arg13); // 21 13
  8.1418 +    case 144: { var v0 = stack.pop(); stack.push(java_lang_Character_toLowerCaseCC(v0)); } // 184 1 104
  8.1419 +    case 147: if (stack.pop() != stack.pop()) { gt = 153; continue; } // 160 0 6
  8.1420 +    case 150: gt = 71; continue; // 167 255 177
  8.1421 +    case 153: stack.push(0); // 3
  8.1422 +    case 154: return stack.pop(); // 172
  8.1423 +    case 155: stack.push(1); // 4
  8.1424 +    case 156: return stack.pop(); // 172
  8.1425 +  }
  8.1426 +}
  8.1427 +function java_lang_String_startsWithZLjava_lang_StringI(arg0,arg1,arg2) {
  8.1428 +  var arg3;
  8.1429 +  var arg4;
  8.1430 +  var arg5;
  8.1431 +  var arg6;
  8.1432 +  var arg7;
  8.1433 +  var arg8;
  8.1434 +;
  8.1435 +  var stack = new Array(3);
  8.1436 +  var gt = 0;
  8.1437 +  for(;;) switch(gt) {
  8.1438 +    case 0: stack.push(arg0); // 42
  8.1439 +    case 1: stack.push(stack.pop().value); // 180 1 100
  8.1440 +    case 4: arg3 = stack.pop(); // 78
  8.1441 +    case 5: stack.push(arg0); // 42
  8.1442 +    case 6: stack.push(stack.pop().offset); // 180 1 99
  8.1443 +    case 9: stack.push(arg2); // 28
  8.1444 +    case 10: stack.push(stack.pop() + stack.pop()); // 96
  8.1445 +    case 11: arg4 = stack.pop() // 54 4
  8.1446 +    case 13: stack.push(arg1); // 43
  8.1447 +    case 14: stack.push(stack.pop().value); // 180 1 100
  8.1448 +    case 17: arg5 = stack.pop() // 58 5
  8.1449 +    case 19: stack.push(arg1); // 43
  8.1450 +    case 20: stack.push(stack.pop().offset); // 180 1 99
  8.1451 +    case 23: arg6 = stack.pop() // 54 6
  8.1452 +    case 25: stack.push(arg1); // 43
  8.1453 +    case 26: stack.push(stack.pop().count); // 180 1 97
  8.1454 +    case 29: arg7 = stack.pop() // 54 7
  8.1455 +    case 31: stack.push(arg2); // 28
  8.1456 +    case 32: if (stack.pop() < 0) { gt = 46; continue; } // 155 0 14
  8.1457 +    case 35: stack.push(arg2); // 28
  8.1458 +    case 36: stack.push(arg0); // 42
  8.1459 +    case 37: stack.push(stack.pop().count); // 180 1 97
  8.1460 +    case 40: stack.push(arg7); // 21 7
  8.1461 +    case 42: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.1462 +    case 43: if (stack.pop() >= stack.pop()) { gt = 48; continue; } // 164 0 5
  8.1463 +    case 46: stack.push(0); // 3
  8.1464 +    case 47: return stack.pop(); // 172
  8.1465 +    case 48: arg7 += 255; // 132 7 255
  8.1466 +    case 51: stack.push(arg7); // 21 7
  8.1467 +    case 53: if (stack.pop() < 0) { gt = 76; continue; } // 155 0 23
  8.1468 +    case 56: stack.push(arg3); // 45
  8.1469 +    case 57: stack.push(arg4); // 21 4
  8.1470 +    case 59: arg4++; // 132 4 1
  8.1471 +    case 62: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1472 +    case 63: stack.push(arg5); // 25 5
  8.1473 +    case 65: stack.push(arg6); // 21 6
  8.1474 +    case 67: arg6++; // 132 6 1
  8.1475 +    case 70: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1476 +    case 71: if (stack.pop() == stack.pop()) { gt = 48; continue; } // 159 255 233
  8.1477 +    case 74: stack.push(0); // 3
  8.1478 +    case 75: return stack.pop(); // 172
  8.1479 +    case 76: stack.push(1); // 4
  8.1480 +    case 77: return stack.pop(); // 172
  8.1481 +  }
  8.1482 +}
  8.1483 +function java_lang_String_startsWithZLjava_lang_String(arg0,arg1) {
  8.1484 +  var arg2;
  8.1485 +;
  8.1486 +  var stack = new Array(3);
  8.1487 +  var gt = 0;
  8.1488 +  for(;;) switch(gt) {
  8.1489 +    case 0: stack.push(arg0); // 42
  8.1490 +    case 1: stack.push(arg1); // 43
  8.1491 +    case 2: stack.push(0); // 3
  8.1492 +    case 3: { var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); stack.push(self.startsWithZLjava_lang_StringI(self, v0, v1)); } // 182 1 152
  8.1493 +    case 6: return stack.pop(); // 172
  8.1494 +  }
  8.1495 +}
  8.1496 +function java_lang_String_endsWithZLjava_lang_String(arg0,arg1) {
  8.1497 +  var arg2;
  8.1498 +;
  8.1499 +  var stack = new Array(4);
  8.1500 +  var gt = 0;
  8.1501 +  for(;;) switch(gt) {
  8.1502 +    case 0: stack.push(arg0); // 42
  8.1503 +    case 1: stack.push(arg1); // 43
  8.1504 +    case 2: stack.push(arg0); // 42
  8.1505 +    case 3: stack.push(stack.pop().count); // 180 1 97
  8.1506 +    case 6: stack.push(arg1); // 43
  8.1507 +    case 7: stack.push(stack.pop().count); // 180 1 97
  8.1508 +    case 10: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.1509 +    case 11: { var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); stack.push(self.startsWithZLjava_lang_StringI(self, v0, v1)); } // 182 1 152
  8.1510 +    case 14: return stack.pop(); // 172
  8.1511 +  }
  8.1512 +}
  8.1513 +function java_lang_String_hashCodeI(arg0) {
  8.1514 +  var arg1;
  8.1515 +  var arg2;
  8.1516 +  var arg3;
  8.1517 +  var arg4;
  8.1518 +  var arg5;
  8.1519 +  var arg6;
  8.1520 +;
  8.1521 +  var stack = new Array(3);
  8.1522 +  var gt = 0;
  8.1523 +  for(;;) switch(gt) {
  8.1524 +    case 0: stack.push(arg0); // 42
  8.1525 +    case 1: stack.push(stack.pop().hash); // 180 1 98
  8.1526 +    case 4: arg1 = stack.pop(); // 60
  8.1527 +    case 5: stack.push(arg0); // 42
  8.1528 +    case 6: stack.push(stack.pop().count); // 180 1 97
  8.1529 +    case 9: arg2 = stack.pop(); // 61
  8.1530 +    case 10: stack.push(arg1); // 27
  8.1531 +    case 11: if (stack.pop() != 0) { gt = 62; continue; } // 154 0 51
  8.1532 +    case 14: stack.push(arg2); // 28
  8.1533 +    case 15: if (stack.pop() <= 0) { gt = 62; continue; } // 158 0 47
  8.1534 +    case 18: stack.push(arg0); // 42
  8.1535 +    case 19: stack.push(stack.pop().offset); // 180 1 99
  8.1536 +    case 22: arg3 = stack.pop(); // 62
  8.1537 +    case 23: stack.push(arg0); // 42
  8.1538 +    case 24: stack.push(stack.pop().value); // 180 1 100
  8.1539 +    case 27: arg4 = stack.pop() // 58 4
  8.1540 +    case 29: stack.push(0); // 3
  8.1541 +    case 30: arg5 = stack.pop() // 54 5
  8.1542 +    case 32: stack.push(arg5); // 21 5
  8.1543 +    case 34: stack.push(arg2); // 28
  8.1544 +    case 35: if (stack.pop() <= stack.pop()) { gt = 57; continue; } // 162 0 22
  8.1545 +    case 38: stack.push(31); // 16 31
  8.1546 +    case 40: stack.push(arg1); // 27
  8.1547 +    case 41: stack.push(stack.pop() * stack.pop()); // 104
  8.1548 +    case 42: stack.push(arg4); // 25 4
  8.1549 +    case 44: stack.push(arg3); // 29
  8.1550 +    case 45: arg3++; // 132 3 1
  8.1551 +    case 48: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1552 +    case 49: stack.push(stack.pop() + stack.pop()); // 96
  8.1553 +    case 50: arg1 = stack.pop(); // 60
  8.1554 +    case 51: arg5++; // 132 5 1
  8.1555 +    case 54: gt = 32; continue; // 167 255 234
  8.1556 +    case 57: stack.push(arg0); // 42
  8.1557 +    case 58: stack.push(arg1); // 27
  8.1558 +    case 59: { var v = stack.pop(); stack.pop().hash = v; } // 181 1 98
  8.1559 +    case 62: stack.push(arg1); // 27
  8.1560 +    case 63: return stack.pop(); // 172
  8.1561 +  }
  8.1562 +}
  8.1563 +function java_lang_String_indexOfII(arg0,arg1) {
  8.1564 +  var arg2;
  8.1565 +;
  8.1566 +  var stack = new Array(3);
  8.1567 +  var gt = 0;
  8.1568 +  for(;;) switch(gt) {
  8.1569 +    case 0: stack.push(arg0); // 42
  8.1570 +    case 1: stack.push(arg1); // 27
  8.1571 +    case 2: stack.push(0); // 3
  8.1572 +    case 3: { var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); stack.push(self.indexOfIII(self, v0, v1)); } // 182 1 135
  8.1573 +    case 6: return stack.pop(); // 172
  8.1574 +  }
  8.1575 +}
  8.1576 +function java_lang_String_indexOfIII(arg0,arg1,arg2) {
  8.1577 +  var arg3;
  8.1578 +  var arg4;
  8.1579 +  var arg5;
  8.1580 +  var arg6;
  8.1581 +  var arg7;
  8.1582 +;
  8.1583 +  var stack = new Array(3);
  8.1584 +  var gt = 0;
  8.1585 +  for(;;) switch(gt) {
  8.1586 +    case 0: stack.push(arg0); // 42
  8.1587 +    case 1: stack.push(stack.pop().offset); // 180 1 99
  8.1588 +    case 4: stack.push(arg0); // 42
  8.1589 +    case 5: stack.push(stack.pop().count); // 180 1 97
  8.1590 +    case 8: stack.push(stack.pop() + stack.pop()); // 96
  8.1591 +    case 9: arg3 = stack.pop(); // 62
  8.1592 +    case 10: stack.push(arg0); // 42
  8.1593 +    case 11: stack.push(stack.pop().value); // 180 1 100
  8.1594 +    case 14: arg4 = stack.pop() // 58 4
  8.1595 +    case 16: stack.push(arg2); // 28
  8.1596 +    case 17: if (stack.pop() >= 0) { gt = 25; continue; } // 156 0 8
  8.1597 +    case 20: stack.push(0); // 3
  8.1598 +    case 21: arg2 = stack.pop(); // 61
  8.1599 +    case 22: gt = 35; continue; // 167 0 13
  8.1600 +    case 25: stack.push(arg2); // 28
  8.1601 +    case 26: stack.push(arg0); // 42
  8.1602 +    case 27: stack.push(stack.pop().count); // 180 1 97
  8.1603 +    case 30: if (stack.pop() > stack.pop()) { gt = 35; continue; } // 161 0 5
  8.1604 +    case 33:  // 2
  8.1605 +    case 34: return stack.pop(); // 172
  8.1606 +    case 35: stack.push(arg0); // 42
  8.1607 +    case 36: stack.push(stack.pop().offset); // 180 1 99
  8.1608 +    case 39: stack.push(arg2); // 28
  8.1609 +    case 40: stack.push(stack.pop() + stack.pop()); // 96
  8.1610 +    case 41: arg5 = stack.pop() // 54 5
  8.1611 +    case 43: stack.push(arg1); // 27
  8.1612 +    case 44: stack.push(65536); // 18 3
  8.1613 +    case 46: if (stack.pop() <= stack.pop()) { gt = 80; continue; } // 162 0 34
  8.1614 +    case 49: stack.push(arg5); // 21 5
  8.1615 +    case 51: stack.push(arg3); // 29
  8.1616 +    case 52: if (stack.pop() <= stack.pop()) { gt = 78; continue; } // 162 0 26
  8.1617 +    case 55: stack.push(arg4); // 25 4
  8.1618 +    case 57: stack.push(arg5); // 21 5
  8.1619 +    case 59: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1620 +    case 60: stack.push(arg1); // 27
  8.1621 +    case 61: if (stack.pop() != stack.pop()) { gt = 72; continue; } // 160 0 11
  8.1622 +    case 64: stack.push(arg5); // 21 5
  8.1623 +    case 66: stack.push(arg0); // 42
  8.1624 +    case 67: stack.push(stack.pop().offset); // 180 1 99
  8.1625 +    case 70: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.1626 +    case 71: return stack.pop(); // 172
  8.1627 +    case 72: arg5++; // 132 5 1
  8.1628 +    case 75: gt = 49; continue; // 167 255 230
  8.1629 +    case 78:  // 2
  8.1630 +    case 79: return stack.pop(); // 172
  8.1631 +    case 80: stack.push(arg1); // 27
  8.1632 +    case 81: stack.push(1114111); // 18 4
  8.1633 +    case 83: if (stack.pop() < stack.pop()) { gt = 149; continue; } // 163 0 66
  8.1634 +    case 86: stack.push(arg1); // 27
  8.1635 +    case 87: { var v0 = stack.pop(); stack.push(java_lang_Character_toCharsACI(v0)); } // 184 1 109
  8.1636 +    case 90: arg6 = stack.pop() // 58 6
  8.1637 +    case 92: stack.push(arg5); // 21 5
  8.1638 +    case 94: stack.push(arg3); // 29
  8.1639 +    case 95: if (stack.pop() <= stack.pop()) { gt = 149; continue; } // 162 0 54
  8.1640 +    case 98: stack.push(arg4); // 25 4
  8.1641 +    case 100: stack.push(arg5); // 21 5
  8.1642 +    case 102: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1643 +    case 103: stack.push(arg6); // 25 6
  8.1644 +    case 105: stack.push(0); // 3
  8.1645 +    case 106: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1646 +    case 107: if (stack.pop() != stack.pop()) { gt = 143; continue; } // 160 0 36
  8.1647 +    case 110: stack.push(arg5); // 21 5
  8.1648 +    case 112: stack.push(1); // 4
  8.1649 +    case 113: stack.push(stack.pop() + stack.pop()); // 96
  8.1650 +    case 114: stack.push(arg3); // 29
  8.1651 +    case 115: if (stack.pop() != stack.pop()) { gt = 121; continue; } // 160 0 6
  8.1652 +    case 118: gt = 149; continue; // 167 0 31
  8.1653 +    case 121: stack.push(arg4); // 25 4
  8.1654 +    case 123: stack.push(arg5); // 21 5
  8.1655 +    case 125: stack.push(1); // 4
  8.1656 +    case 126: stack.push(stack.pop() + stack.pop()); // 96
  8.1657 +    case 127: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1658 +    case 128: stack.push(arg6); // 25 6
  8.1659 +    case 130: stack.push(1); // 4
  8.1660 +    case 131: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1661 +    case 132: if (stack.pop() != stack.pop()) { gt = 143; continue; } // 160 0 11
  8.1662 +    case 135: stack.push(arg5); // 21 5
  8.1663 +    case 137: stack.push(arg0); // 42
  8.1664 +    case 138: stack.push(stack.pop().offset); // 180 1 99
  8.1665 +    case 141: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.1666 +    case 142: return stack.pop(); // 172
  8.1667 +    case 143: arg5++; // 132 5 1
  8.1668 +    case 146: gt = 92; continue; // 167 255 202
  8.1669 +    case 149:  // 2
  8.1670 +    case 150: return stack.pop(); // 172
  8.1671 +  }
  8.1672 +}
  8.1673 +function java_lang_String_lastIndexOfII(arg0,arg1) {
  8.1674 +  var arg2;
  8.1675 +;
  8.1676 +  var stack = new Array(4);
  8.1677 +  var gt = 0;
  8.1678 +  for(;;) switch(gt) {
  8.1679 +    case 0: stack.push(arg0); // 42
  8.1680 +    case 1: stack.push(arg1); // 27
  8.1681 +    case 2: stack.push(arg0); // 42
  8.1682 +    case 3: stack.push(stack.pop().count); // 180 1 97
  8.1683 +    case 6: stack.push(1); // 4
  8.1684 +    case 7: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.1685 +    case 8: { var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); stack.push(self.lastIndexOfIII(self, v0, v1)); } // 182 1 136
  8.1686 +    case 11: return stack.pop(); // 172
  8.1687 +  }
  8.1688 +}
  8.1689 +function java_lang_String_lastIndexOfIII(arg0,arg1,arg2) {
  8.1690 +  var arg3;
  8.1691 +  var arg4;
  8.1692 +  var arg5;
  8.1693 +  var arg6;
  8.1694 +  var arg7;
  8.1695 +  var arg8;
  8.1696 +;
  8.1697 +  var stack = new Array(3);
  8.1698 +  var gt = 0;
  8.1699 +  for(;;) switch(gt) {
  8.1700 +    case 0: stack.push(arg0); // 42
  8.1701 +    case 1: stack.push(stack.pop().offset); // 180 1 99
  8.1702 +    case 4: arg3 = stack.pop(); // 62
  8.1703 +    case 5: stack.push(arg0); // 42
  8.1704 +    case 6: stack.push(stack.pop().value); // 180 1 100
  8.1705 +    case 9: arg4 = stack.pop() // 58 4
  8.1706 +    case 11: stack.push(arg0); // 42
  8.1707 +    case 12: stack.push(stack.pop().offset); // 180 1 99
  8.1708 +    case 15: stack.push(arg2); // 28
  8.1709 +    case 16: stack.push(arg0); // 42
  8.1710 +    case 17: stack.push(stack.pop().count); // 180 1 97
  8.1711 +    case 20: if (stack.pop() > stack.pop()) { gt = 32; continue; } // 161 0 12
  8.1712 +    case 23: stack.push(arg0); // 42
  8.1713 +    case 24: stack.push(stack.pop().count); // 180 1 97
  8.1714 +    case 27: stack.push(1); // 4
  8.1715 +    case 28: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.1716 +    case 29: gt = 33; continue; // 167 0 4
  8.1717 +    case 32: stack.push(arg2); // 28
  8.1718 +    case 33: stack.push(stack.pop() + stack.pop()); // 96
  8.1719 +    case 34: arg5 = stack.pop() // 54 5
  8.1720 +    case 36: stack.push(arg1); // 27
  8.1721 +    case 37: stack.push(65536); // 18 3
  8.1722 +    case 39: if (stack.pop() <= stack.pop()) { gt = 73; continue; } // 162 0 34
  8.1723 +    case 42: stack.push(arg5); // 21 5
  8.1724 +    case 44: stack.push(arg3); // 29
  8.1725 +    case 45: if (stack.pop() > stack.pop()) { gt = 71; continue; } // 161 0 26
  8.1726 +    case 48: stack.push(arg4); // 25 4
  8.1727 +    case 50: stack.push(arg5); // 21 5
  8.1728 +    case 52: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1729 +    case 53: stack.push(arg1); // 27
  8.1730 +    case 54: if (stack.pop() != stack.pop()) { gt = 65; continue; } // 160 0 11
  8.1731 +    case 57: stack.push(arg5); // 21 5
  8.1732 +    case 59: stack.push(arg0); // 42
  8.1733 +    case 60: stack.push(stack.pop().offset); // 180 1 99
  8.1734 +    case 63: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.1735 +    case 64: return stack.pop(); // 172
  8.1736 +    case 65: arg5 += 255; // 132 5 255
  8.1737 +    case 68: gt = 42; continue; // 167 255 230
  8.1738 +    case 71:  // 2
  8.1739 +    case 72: return stack.pop(); // 172
  8.1740 +    case 73: stack.push(arg0); // 42
  8.1741 +    case 74: stack.push(stack.pop().offset); // 180 1 99
  8.1742 +    case 77: stack.push(arg0); // 42
  8.1743 +    case 78: stack.push(stack.pop().count); // 180 1 97
  8.1744 +    case 81: stack.push(stack.pop() + stack.pop()); // 96
  8.1745 +    case 82: arg6 = stack.pop() // 54 6
  8.1746 +    case 84: stack.push(arg1); // 27
  8.1747 +    case 85: stack.push(1114111); // 18 4
  8.1748 +    case 87: if (stack.pop() < stack.pop()) { gt = 154; continue; } // 163 0 67
  8.1749 +    case 90: stack.push(arg1); // 27
  8.1750 +    case 91: { var v0 = stack.pop(); stack.push(java_lang_Character_toCharsACI(v0)); } // 184 1 109
  8.1751 +    case 94: arg7 = stack.pop() // 58 7
  8.1752 +    case 96: stack.push(arg5); // 21 5
  8.1753 +    case 98: stack.push(arg3); // 29
  8.1754 +    case 99: if (stack.pop() > stack.pop()) { gt = 154; continue; } // 161 0 55
  8.1755 +    case 102: stack.push(arg4); // 25 4
  8.1756 +    case 104: stack.push(arg5); // 21 5
  8.1757 +    case 106: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1758 +    case 107: stack.push(arg7); // 25 7
  8.1759 +    case 109: stack.push(0); // 3
  8.1760 +    case 110: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1761 +    case 111: if (stack.pop() != stack.pop()) { gt = 148; continue; } // 160 0 37
  8.1762 +    case 114: stack.push(arg5); // 21 5
  8.1763 +    case 116: stack.push(1); // 4
  8.1764 +    case 117: stack.push(stack.pop() + stack.pop()); // 96
  8.1765 +    case 118: stack.push(arg6); // 21 6
  8.1766 +    case 120: if (stack.pop() != stack.pop()) { gt = 126; continue; } // 160 0 6
  8.1767 +    case 123: gt = 154; continue; // 167 0 31
  8.1768 +    case 126: stack.push(arg4); // 25 4
  8.1769 +    case 128: stack.push(arg5); // 21 5
  8.1770 +    case 130: stack.push(1); // 4
  8.1771 +    case 131: stack.push(stack.pop() + stack.pop()); // 96
  8.1772 +    case 132: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1773 +    case 133: stack.push(arg7); // 25 7
  8.1774 +    case 135: stack.push(1); // 4
  8.1775 +    case 136: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1776 +    case 137: if (stack.pop() != stack.pop()) { gt = 148; continue; } // 160 0 11
  8.1777 +    case 140: stack.push(arg5); // 21 5
  8.1778 +    case 142: stack.push(arg0); // 42
  8.1779 +    case 143: stack.push(stack.pop().offset); // 180 1 99
  8.1780 +    case 146: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.1781 +    case 147: return stack.pop(); // 172
  8.1782 +    case 148: arg5 += 255; // 132 5 255
  8.1783 +    case 151: gt = 96; continue; // 167 255 201
  8.1784 +    case 154:  // 2
  8.1785 +    case 155: return stack.pop(); // 172
  8.1786 +  }
  8.1787 +}
  8.1788 +function java_lang_String_indexOfILjava_lang_String(arg0,arg1) {
  8.1789 +  var arg2;
  8.1790 +;
  8.1791 +  var stack = new Array(3);
  8.1792 +  var gt = 0;
  8.1793 +  for(;;) switch(gt) {
  8.1794 +    case 0: stack.push(arg0); // 42
  8.1795 +    case 1: stack.push(arg1); // 43
  8.1796 +    case 2: stack.push(0); // 3
  8.1797 +    case 3: { var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); stack.push(self.indexOfILjava_lang_StringI(self, v0, v1)); } // 182 1 150
  8.1798 +    case 6: return stack.pop(); // 172
  8.1799 +  }
  8.1800 +}
  8.1801 +function java_lang_String_indexOfILjava_lang_StringI(arg0,arg1,arg2) {
  8.1802 +  var arg3;
  8.1803 +;
  8.1804 +  var stack = new Array(7);
  8.1805 +  var gt = 0;
  8.1806 +  for(;;) switch(gt) {
  8.1807 +    case 0: stack.push(arg0); // 42
  8.1808 +    case 1: stack.push(stack.pop().value); // 180 1 100
  8.1809 +    case 4: stack.push(arg0); // 42
  8.1810 +    case 5: stack.push(stack.pop().offset); // 180 1 99
  8.1811 +    case 8: stack.push(arg0); // 42
  8.1812 +    case 9: stack.push(stack.pop().count); // 180 1 97
  8.1813 +    case 12: stack.push(arg1); // 43
  8.1814 +    case 13: stack.push(stack.pop().value); // 180 1 100
  8.1815 +    case 16: stack.push(arg1); // 43
  8.1816 +    case 17: stack.push(stack.pop().offset); // 180 1 99
  8.1817 +    case 20: stack.push(arg1); // 43
  8.1818 +    case 21: stack.push(stack.pop().count); // 180 1 97
  8.1819 +    case 24: stack.push(arg2); // 28
  8.1820 +    case 25: { var v6 = stack.pop(); var v5 = stack.pop(); var v4 = stack.pop(); var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_String_indexOfAIACAIAIACAIAIAI(v0, v1, v2, v3, v4, v5, v6)); } // 184 1 144
  8.1821 +    case 28: return stack.pop(); // 172
  8.1822 +  }
  8.1823 +}
  8.1824 +function java_lang_String_indexOfIACIIACIII(arg0,arg1,arg2,arg3,arg4,arg5,arg6) {
  8.1825 +  var arg7;
  8.1826 +  var arg8;
  8.1827 +  var arg9;
  8.1828 +  var arg10;
  8.1829 +  var arg11;
  8.1830 +  var arg12;
  8.1831 +  var stack = new Array();
  8.1832 +  var gt = 0;
  8.1833 +  for(;;) switch(gt) {
  8.1834 +    case 0: stack.push(arg6); // 21 6
  8.1835 +    case 2: stack.push(arg2); // 28
  8.1836 +    case 3: if (stack.pop() > stack.pop()) { gt = 17; continue; } // 161 0 14
  8.1837 +    case 6: stack.push(arg5); // 21 5
  8.1838 +    case 8: if (stack.pop() != 0) { gt = 15; continue; } // 154 0 7
  8.1839 +    case 11: stack.push(arg2); // 28
  8.1840 +    case 12: gt = 16; continue; // 167 0 4
  8.1841 +    case 15:  // 2
  8.1842 +    case 16: return stack.pop(); // 172
  8.1843 +    case 17: stack.push(arg6); // 21 6
  8.1844 +    case 19: if (stack.pop() >= 0) { gt = 25; continue; } // 156 0 6
  8.1845 +    case 22: stack.push(0); // 3
  8.1846 +    case 23: arg6 = stack.pop() // 54 6
  8.1847 +    case 25: stack.push(arg5); // 21 5
  8.1848 +    case 27: if (stack.pop() != 0) { gt = 33; continue; } // 154 0 6
  8.1849 +    case 30: stack.push(arg6); // 21 6
  8.1850 +    case 32: return stack.pop(); // 172
  8.1851 +    case 33: stack.push(arg3); // 45
  8.1852 +    case 34: stack.push(arg4); // 21 4
  8.1853 +    case 36: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1854 +    case 37: arg7 = stack.pop() // 54 7
  8.1855 +    case 39: stack.push(arg1); // 27
  8.1856 +    case 40: stack.push(arg2); // 28
  8.1857 +    case 41: stack.push(arg5); // 21 5
  8.1858 +    case 43: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.1859 +    case 44: stack.push(stack.pop() + stack.pop()); // 96
  8.1860 +    case 45: arg8 = stack.pop() // 54 8
  8.1861 +    case 47: stack.push(arg1); // 27
  8.1862 +    case 48: stack.push(arg6); // 21 6
  8.1863 +    case 50: stack.push(stack.pop() + stack.pop()); // 96
  8.1864 +    case 51: arg9 = stack.pop() // 54 9
  8.1865 +    case 53: stack.push(arg9); // 21 9
  8.1866 +    case 55: stack.push(arg8); // 21 8
  8.1867 +    case 57: if (stack.pop() < stack.pop()) { gt = 164; continue; } // 163 0 107
  8.1868 +    case 60: stack.push(arg0); // 42
  8.1869 +    case 61: stack.push(arg9); // 21 9
  8.1870 +    case 63: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1871 +    case 64: stack.push(arg7); // 21 7
  8.1872 +    case 66: if (stack.pop() == stack.pop()) { gt = 91; continue; } // 159 0 25
  8.1873 +    case 69: arg9++; // 132 9 1
  8.1874 +    case 72: stack.push(arg9); // 21 9
  8.1875 +    case 74: stack.push(arg8); // 21 8
  8.1876 +    case 76: if (stack.pop() < stack.pop()) { gt = 91; continue; } // 163 0 15
  8.1877 +    case 79: stack.push(arg0); // 42
  8.1878 +    case 80: stack.push(arg9); // 21 9
  8.1879 +    case 82: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1880 +    case 83: stack.push(arg7); // 21 7
  8.1881 +    case 85: if (stack.pop() == stack.pop()) { gt = 91; continue; } // 159 0 6
  8.1882 +    case 88: gt = 69; continue; // 167 255 237
  8.1883 +    case 91: stack.push(arg9); // 21 9
  8.1884 +    case 93: stack.push(arg8); // 21 8
  8.1885 +    case 95: if (stack.pop() < stack.pop()) { gt = 158; continue; } // 163 0 63
  8.1886 +    case 98: stack.push(arg9); // 21 9
  8.1887 +    case 100: stack.push(1); // 4
  8.1888 +    case 101: stack.push(stack.pop() + stack.pop()); // 96
  8.1889 +    case 102: arg10 = stack.pop() // 54 10
  8.1890 +    case 104: stack.push(arg10); // 21 10
  8.1891 +    case 106: stack.push(arg5); // 21 5
  8.1892 +    case 108: stack.push(stack.pop() + stack.pop()); // 96
  8.1893 +    case 109: stack.push(1); // 4
  8.1894 +    case 110: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.1895 +    case 111: arg11 = stack.pop() // 54 11
  8.1896 +    case 113: stack.push(arg4); // 21 4
  8.1897 +    case 115: stack.push(1); // 4
  8.1898 +    case 116: stack.push(stack.pop() + stack.pop()); // 96
  8.1899 +    case 117: arg12 = stack.pop() // 54 12
  8.1900 +    case 119: stack.push(arg10); // 21 10
  8.1901 +    case 121: stack.push(arg11); // 21 11
  8.1902 +    case 123: if (stack.pop() <= stack.pop()) { gt = 146; continue; } // 162 0 23
  8.1903 +    case 126: stack.push(arg0); // 42
  8.1904 +    case 127: stack.push(arg10); // 21 10
  8.1905 +    case 129: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1906 +    case 130: stack.push(arg3); // 45
  8.1907 +    case 131: stack.push(arg12); // 21 12
  8.1908 +    case 133: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.1909 +    case 134: if (stack.pop() != stack.pop()) { gt = 146; continue; } // 160 0 12
  8.1910 +    case 137: arg10++; // 132 10 1
  8.1911 +    case 140: arg12++; // 132 12 1
  8.1912 +    case 143: gt = 119; continue; // 167 255 232
  8.1913 +    case 146: stack.push(arg10); // 21 10
  8.1914 +    case 148: stack.push(arg11); // 21 11
  8.1915 +    case 150: if (stack.pop() != stack.pop()) { gt = 158; continue; } // 160 0 8
  8.1916 +    case 153: stack.push(arg9); // 21 9
  8.1917 +    case 155: stack.push(arg1); // 27
  8.1918 +    case 156: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.1919 +    case 157: return stack.pop(); // 172
  8.1920 +    case 158: arg9++; // 132 9 1
  8.1921 +    case 161: gt = 53; continue; // 167 255 148
  8.1922 +    case 164:  // 2
  8.1923 +    case 165: return stack.pop(); // 172
  8.1924 +  }
  8.1925 +}
  8.1926 +function java_lang_String_lastIndexOfILjava_lang_String(arg0,arg1) {
  8.1927 +  var arg2;
  8.1928 +;
  8.1929 +  var stack = new Array(3);
  8.1930 +  var gt = 0;
  8.1931 +  for(;;) switch(gt) {
  8.1932 +    case 0: stack.push(arg0); // 42
  8.1933 +    case 1: stack.push(arg1); // 43
  8.1934 +    case 2: stack.push(arg0); // 42
  8.1935 +    case 3: stack.push(stack.pop().count); // 180 1 97
  8.1936 +    case 6: { var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); stack.push(self.lastIndexOfILjava_lang_StringI(self, v0, v1)); } // 182 1 151
  8.1937 +    case 9: return stack.pop(); // 172
  8.1938 +  }
  8.1939 +}
  8.1940 +function java_lang_String_lastIndexOfILjava_lang_StringI(arg0,arg1,arg2) {
  8.1941 +  var arg3;
  8.1942 +;
  8.1943 +  var stack = new Array(7);
  8.1944 +  var gt = 0;
  8.1945 +  for(;;) switch(gt) {
  8.1946 +    case 0: stack.push(arg0); // 42
  8.1947 +    case 1: stack.push(stack.pop().value); // 180 1 100
  8.1948 +    case 4: stack.push(arg0); // 42
  8.1949 +    case 5: stack.push(stack.pop().offset); // 180 1 99
  8.1950 +    case 8: stack.push(arg0); // 42
  8.1951 +    case 9: stack.push(stack.pop().count); // 180 1 97
  8.1952 +    case 12: stack.push(arg1); // 43
  8.1953 +    case 13: stack.push(stack.pop().value); // 180 1 100
  8.1954 +    case 16: stack.push(arg1); // 43
  8.1955 +    case 17: stack.push(stack.pop().offset); // 180 1 99
  8.1956 +    case 20: stack.push(arg1); // 43
  8.1957 +    case 21: stack.push(stack.pop().count); // 180 1 97
  8.1958 +    case 24: stack.push(arg2); // 28
  8.1959 +    case 25: { var v6 = stack.pop(); var v5 = stack.pop(); var v4 = stack.pop(); var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_String_lastIndexOfAIACAIAIACAIAIAI(v0, v1, v2, v3, v4, v5, v6)); } // 184 1 145
  8.1960 +    case 28: return stack.pop(); // 172
  8.1961 +  }
  8.1962 +}
  8.1963 +function java_lang_String_lastIndexOfIACIIACIII(arg0,arg1,arg2,arg3,arg4,arg5,arg6) {
  8.1964 +  var arg7;
  8.1965 +  var arg8;
  8.1966 +  var arg9;
  8.1967 +  var arg10;
  8.1968 +  var arg11;
  8.1969 +  var arg12;
  8.1970 +  var arg13;
  8.1971 +  var arg14;
  8.1972 +  var stack = new Array();
  8.1973 +  var gt = 0;
  8.1974 +  for(;;) switch(gt) {
  8.1975 +    case 0: stack.push(arg2); // 28
  8.1976 +    case 1: stack.push(arg5); // 21 5
  8.1977 +    case 3: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.1978 +    case 4: arg7 = stack.pop() // 54 7
  8.1979 +    case 6: stack.push(arg6); // 21 6
  8.1980 +    case 8: if (stack.pop() >= 0) { gt = 13; continue; } // 156 0 5
  8.1981 +    case 11:  // 2
  8.1982 +    case 12: return stack.pop(); // 172
  8.1983 +    case 13: stack.push(arg6); // 21 6
  8.1984 +    case 15: stack.push(arg7); // 21 7
  8.1985 +    case 17: if (stack.pop() >= stack.pop()) { gt = 24; continue; } // 164 0 7
  8.1986 +    case 20: stack.push(arg7); // 21 7
  8.1987 +    case 22: arg6 = stack.pop() // 54 6
  8.1988 +    case 24: stack.push(arg5); // 21 5
  8.1989 +    case 26: if (stack.pop() != 0) { gt = 32; continue; } // 154 0 6
  8.1990 +    case 29: stack.push(arg6); // 21 6
  8.1991 +    case 31: return stack.pop(); // 172
  8.1992 +    case 32: stack.push(arg4); // 21 4
  8.1993 +    case 34: stack.push(arg5); // 21 5
  8.1994 +    case 36: stack.push(stack.pop() + stack.pop()); // 96
  8.1995 +    case 37: stack.push(1); // 4
  8.1996 +    case 38: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.1997 +    case 39: arg8 = stack.pop() // 54 8
  8.1998 +    case 41: stack.push(arg3); // 45
  8.1999 +    case 42: stack.push(arg8); // 21 8
  8.2000 +    case 44: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.2001 +    case 45: arg9 = stack.pop() // 54 9
  8.2002 +    case 47: stack.push(arg1); // 27
  8.2003 +    case 48: stack.push(arg5); // 21 5
  8.2004 +    case 50: stack.push(stack.pop() + stack.pop()); // 96
  8.2005 +    case 51: stack.push(1); // 4
  8.2006 +    case 52: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.2007 +    case 53: arg10 = stack.pop() // 54 10
  8.2008 +    case 55: stack.push(arg10); // 21 10
  8.2009 +    case 57: stack.push(arg6); // 21 6
  8.2010 +    case 59: stack.push(stack.pop() + stack.pop()); // 96
  8.2011 +    case 60: arg11 = stack.pop() // 54 11
  8.2012 +    case 62: stack.push(arg11); // 21 11
  8.2013 +    case 64: stack.push(arg10); // 21 10
  8.2014 +    case 66: if (stack.pop() > stack.pop()) { gt = 84; continue; } // 161 0 18
  8.2015 +    case 69: stack.push(arg0); // 42
  8.2016 +    case 70: stack.push(arg11); // 21 11
  8.2017 +    case 72: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.2018 +    case 73: stack.push(arg9); // 21 9
  8.2019 +    case 75: if (stack.pop() == stack.pop()) { gt = 84; continue; } // 159 0 9
  8.2020 +    case 78: arg11 += 255; // 132 11 255
  8.2021 +    case 81: gt = 62; continue; // 167 255 237
  8.2022 +    case 84: stack.push(arg11); // 21 11
  8.2023 +    case 86: stack.push(arg10); // 21 10
  8.2024 +    case 88: if (stack.pop() <= stack.pop()) { gt = 93; continue; } // 162 0 5
  8.2025 +    case 91:  // 2
  8.2026 +    case 92: return stack.pop(); // 172
  8.2027 +    case 93: stack.push(arg11); // 21 11
  8.2028 +    case 95: stack.push(1); // 4
  8.2029 +    case 96: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.2030 +    case 97: arg12 = stack.pop() // 54 12
  8.2031 +    case 99: stack.push(arg12); // 21 12
  8.2032 +    case 101: stack.push(arg5); // 21 5
  8.2033 +    case 103: stack.push(1); // 4
  8.2034 +    case 104: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.2035 +    case 105: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.2036 +    case 106: arg13 = stack.pop() // 54 13
  8.2037 +    case 108: stack.push(arg8); // 21 8
  8.2038 +    case 110: stack.push(1); // 4
  8.2039 +    case 111: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.2040 +    case 112: arg14 = stack.pop() // 54 14
  8.2041 +    case 114: stack.push(arg12); // 21 12
  8.2042 +    case 116: stack.push(arg13); // 21 13
  8.2043 +    case 118: if (stack.pop() >= stack.pop()) { gt = 144; continue; } // 164 0 26
  8.2044 +    case 121: stack.push(arg0); // 42
  8.2045 +    case 122: stack.push(arg12); // 21 12
  8.2046 +    case 124: arg12 += 255; // 132 12 255
  8.2047 +    case 127: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.2048 +    case 128: stack.push(arg3); // 45
  8.2049 +    case 129: stack.push(arg14); // 21 14
  8.2050 +    case 131: arg14 += 255; // 132 14 255
  8.2051 +    case 134: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.2052 +    case 135: if (stack.pop() == stack.pop()) { gt = 114; continue; } // 159 255 235
  8.2053 +    case 138: arg11 += 255; // 132 11 255
  8.2054 +    case 141: gt = 62; continue; // 167 255 177
  8.2055 +    case 144: stack.push(arg13); // 21 13
  8.2056 +    case 146: stack.push(arg1); // 27
  8.2057 +    case 147: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.2058 +    case 148: stack.push(1); // 4
  8.2059 +    case 149: stack.push(stack.pop() + stack.pop()); // 96
  8.2060 +    case 150: return stack.pop(); // 172
  8.2061 +  }
  8.2062 +}
  8.2063 +function java_lang_String_substringLjava_lang_StringI(arg0,arg1) {
  8.2064 +  var arg2;
  8.2065 +;
  8.2066 +  var stack = new Array(3);
  8.2067 +  var gt = 0;
  8.2068 +  for(;;) switch(gt) {
  8.2069 +    case 0: stack.push(arg0); // 42
  8.2070 +    case 1: stack.push(arg1); // 27
  8.2071 +    case 2: stack.push(arg0); // 42
  8.2072 +    case 3: stack.push(stack.pop().count); // 180 1 97
  8.2073 +    case 6: { var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); stack.push(self.substringLjava_lang_StringII(self, v0, v1)); } // 182 1 147
  8.2074 +    case 9: return stack.pop(); // 176
  8.2075 +  }
  8.2076 +}
  8.2077 +function java_lang_String_substringLjava_lang_StringII(arg0,arg1,arg2) {
  8.2078 +  var arg3;
  8.2079 +;
  8.2080 +  var stack = new Array(5);
  8.2081 +  var gt = 0;
  8.2082 +  for(;;) switch(gt) {
  8.2083 +    case 0: stack.push(arg1); // 27
  8.2084 +    case 1: if (stack.pop() >= 0) { gt = 13; continue; } // 156 0 12
  8.2085 +    case 4: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
  8.2086 +    case 7: stack.push(stack[stack.length - 1]); // 89
  8.2087 +    case 8: stack.push(arg1); // 27
  8.2088 +    case 9: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
  8.2089 +    case 12:  // 191
  8.2090 +    case 13: stack.push(arg2); // 28
  8.2091 +    case 14: stack.push(arg0); // 42
  8.2092 +    case 15: stack.push(stack.pop().count); // 180 1 97
  8.2093 +    case 18: if (stack.pop() >= stack.pop()) { gt = 30; continue; } // 164 0 12
  8.2094 +    case 21: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
  8.2095 +    case 24: stack.push(stack[stack.length - 1]); // 89
  8.2096 +    case 25: stack.push(arg2); // 28
  8.2097 +    case 26: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
  8.2098 +    case 29:  // 191
  8.2099 +    case 30: stack.push(arg1); // 27
  8.2100 +    case 31: stack.push(arg2); // 28
  8.2101 +    case 32: if (stack.pop() >= stack.pop()) { gt = 46; continue; } // 164 0 14
  8.2102 +    case 35: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
  8.2103 +    case 38: stack.push(stack[stack.length - 1]); // 89
  8.2104 +    case 39: stack.push(arg2); // 28
  8.2105 +    case 40: stack.push(arg1); // 27
  8.2106 +    case 41: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.2107 +    case 42: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
  8.2108 +    case 45:  // 191
  8.2109 +    case 46: stack.push(arg1); // 27
  8.2110 +    case 47: if (stack.pop() != 0) { gt = 62; continue; } // 154 0 15
  8.2111 +    case 50: stack.push(arg2); // 28
  8.2112 +    case 51: stack.push(arg0); // 42
  8.2113 +    case 52: stack.push(stack.pop().count); // 180 1 97
  8.2114 +    case 55: if (stack.pop() != stack.pop()) { gt = 62; continue; } // 160 0 7
  8.2115 +    case 58: stack.push(arg0); // 42
  8.2116 +    case 59: gt = 82; continue; // 167 0 23
  8.2117 +    case 62: stack.push(new java_lang_String); // 187 0 200
  8.2118 +    case 65: stack.push(stack[stack.length - 1]); // 89
  8.2119 +    case 66: stack.push(arg0); // 42
  8.2120 +    case 67: stack.push(stack.pop().offset); // 180 1 99
  8.2121 +    case 70: stack.push(arg1); // 27
  8.2122 +    case 71: stack.push(stack.pop() + stack.pop()); // 96
  8.2123 +    case 72: stack.push(arg2); // 28
  8.2124 +    case 73: stack.push(arg1); // 27
  8.2125 +    case 74: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.2126 +    case 75: stack.push(arg0); // 42
  8.2127 +    case 76: stack.push(stack.pop().value); // 180 1 100
  8.2128 +    case 79: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_consVIIAC(stack.pop(), v0, v1, v2); } // 183 1 137
  8.2129 +    case 82: return stack.pop(); // 176
  8.2130 +  }
  8.2131 +}
  8.2132 +function java_lang_String_subSequenceLjava_lang_CharSequenceII(arg0,arg1,arg2) {
  8.2133 +  var arg3;
  8.2134 +;
  8.2135 +  var stack = new Array(3);
  8.2136 +  var gt = 0;
  8.2137 +  for(;;) switch(gt) {
  8.2138 +    case 0: stack.push(arg0); // 42
  8.2139 +    case 1: stack.push(arg1); // 27
  8.2140 +    case 2: stack.push(arg2); // 28
  8.2141 +    case 3: { var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); stack.push(self.substringLjava_lang_StringII(self, v0, v1)); } // 182 1 147
  8.2142 +    case 6: return stack.pop(); // 176
  8.2143 +  }
  8.2144 +}
  8.2145 +function java_lang_String_concatLjava_lang_StringLjava_lang_String(arg0,arg1) {
  8.2146 +  var arg2;
  8.2147 +  var arg3;
  8.2148 +  var arg4;
  8.2149 +;
  8.2150 +  var stack = new Array(5);
  8.2151 +  var gt = 0;
  8.2152 +  for(;;) switch(gt) {
  8.2153 +    case 0: stack.push(arg1); // 43
  8.2154 +    case 1: { var self = stack.pop(); stack.push(self.lengthI(self)); } // 182 1 133
  8.2155 +    case 4: arg2 = stack.pop(); // 61
  8.2156 +    case 5: stack.push(arg2); // 28
  8.2157 +    case 6: if (stack.pop() != 0) { gt = 11; continue; } // 154 0 5
  8.2158 +    case 9: stack.push(arg0); // 42
  8.2159 +    case 10: return stack.pop(); // 176
  8.2160 +    case 11: stack.push(arg0); // 42
  8.2161 +    case 12: stack.push(stack.pop().count); // 180 1 97
  8.2162 +    case 15: stack.push(arg2); // 28
  8.2163 +    case 16: stack.push(stack.pop() + stack.pop()); // 96
  8.2164 +    case 17: stack.push(new Array(stack.pop())); // 188 5
  8.2165 +    case 19: arg3 = stack.pop(); // 78
  8.2166 +    case 20: stack.push(arg0); // 42
  8.2167 +    case 21: stack.push(0); // 3
  8.2168 +    case 22: stack.push(arg0); // 42
  8.2169 +    case 23: stack.push(stack.pop().count); // 180 1 97
  8.2170 +    case 26: stack.push(arg3); // 45
  8.2171 +    case 27: stack.push(0); // 3
  8.2172 +    case 28: { var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); self.getCharsVIIACAI(self, v0, v1, v2, v3); } // 182 1 138
  8.2173 +    case 31: stack.push(arg1); // 43
  8.2174 +    case 32: stack.push(0); // 3
  8.2175 +    case 33: stack.push(arg2); // 28
  8.2176 +    case 34: stack.push(arg3); // 45
  8.2177 +    case 35: stack.push(arg0); // 42
  8.2178 +    case 36: stack.push(stack.pop().count); // 180 1 97
  8.2179 +    case 39: { var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); self.getCharsVIIACAI(self, v0, v1, v2, v3); } // 182 1 138
  8.2180 +    case 42: stack.push(new java_lang_String); // 187 0 200
  8.2181 +    case 45: stack.push(stack[stack.length - 1]); // 89
  8.2182 +    case 46: stack.push(0); // 3
  8.2183 +    case 47: stack.push(arg0); // 42
  8.2184 +    case 48: stack.push(stack.pop().count); // 180 1 97
  8.2185 +    case 51: stack.push(arg2); // 28
  8.2186 +    case 52: stack.push(stack.pop() + stack.pop()); // 96
  8.2187 +    case 53: stack.push(arg3); // 45
  8.2188 +    case 54: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_consVIIAC(stack.pop(), v0, v1, v2); } // 183 1 137
  8.2189 +    case 57: return stack.pop(); // 176
  8.2190 +  }
  8.2191 +}
  8.2192 +function java_lang_String_replaceLjava_lang_StringCC(arg0,arg1,arg2) {
  8.2193 +  var arg3;
  8.2194 +  var arg4;
  8.2195 +  var arg5;
  8.2196 +  var arg6;
  8.2197 +  var arg7;
  8.2198 +  var arg8;
  8.2199 +  var arg9;
  8.2200 +;
  8.2201 +  var stack = new Array(5);
  8.2202 +  var gt = 0;
  8.2203 +  for(;;) switch(gt) {
  8.2204 +    case 0: stack.push(arg1); // 27
  8.2205 +    case 1: stack.push(arg2); // 28
  8.2206 +    case 2: if (stack.pop() == stack.pop()) { gt = 140; continue; } // 159 0 138
  8.2207 +    case 5: stack.push(arg0); // 42
  8.2208 +    case 6: stack.push(stack.pop().count); // 180 1 97
  8.2209 +    case 9: arg3 = stack.pop(); // 62
  8.2210 +    case 10:  // 2
  8.2211 +    case 11: arg4 = stack.pop() // 54 4
  8.2212 +    case 13: stack.push(arg0); // 42
  8.2213 +    case 14: stack.push(stack.pop().value); // 180 1 100
  8.2214 +    case 17: arg5 = stack.pop() // 58 5
  8.2215 +    case 19: stack.push(arg0); // 42
  8.2216 +    case 20: stack.push(stack.pop().offset); // 180 1 99
  8.2217 +    case 23: arg6 = stack.pop() // 54 6
  8.2218 +    case 25: arg4++; // 132 4 1
  8.2219 +    case 28: stack.push(arg4); // 21 4
  8.2220 +    case 30: stack.push(arg3); // 29
  8.2221 +    case 31: if (stack.pop() <= stack.pop()) { gt = 49; continue; } // 162 0 18
  8.2222 +    case 34: stack.push(arg5); // 25 5
  8.2223 +    case 36: stack.push(arg6); // 21 6
  8.2224 +    case 38: stack.push(arg4); // 21 4
  8.2225 +    case 40: stack.push(stack.pop() + stack.pop()); // 96
  8.2226 +    case 41: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.2227 +    case 42: stack.push(arg1); // 27
  8.2228 +    case 43: if (stack.pop() != stack.pop()) { gt = 25; continue; } // 160 255 238
  8.2229 +    case 46: gt = 49; continue; // 167 0 3
  8.2230 +    case 49: stack.push(arg4); // 21 4
  8.2231 +    case 51: stack.push(arg3); // 29
  8.2232 +    case 52: if (stack.pop() <= stack.pop()) { gt = 140; continue; } // 162 0 88
  8.2233 +    case 55: stack.push(arg3); // 29
  8.2234 +    case 56: stack.push(new Array(stack.pop())); // 188 5
  8.2235 +    case 58: arg7 = stack.pop() // 58 7
  8.2236 +    case 60: stack.push(0); // 3
  8.2237 +    case 61: arg8 = stack.pop() // 54 8
  8.2238 +    case 63: stack.push(arg8); // 21 8
  8.2239 +    case 65: stack.push(arg4); // 21 4
  8.2240 +    case 67: if (stack.pop() <= stack.pop()) { gt = 89; continue; } // 162 0 22
  8.2241 +    case 70: stack.push(arg7); // 25 7
  8.2242 +    case 72: stack.push(arg8); // 21 8
  8.2243 +    case 74: stack.push(arg5); // 25 5
  8.2244 +    case 76: stack.push(arg6); // 21 6
  8.2245 +    case 78: stack.push(arg8); // 21 8
  8.2246 +    case 80: stack.push(stack.pop() + stack.pop()); // 96
  8.2247 +    case 81: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.2248 +    case 82: { var value = stack.pop(); var indx = stack.pop(); stack.pop()[indx] = value; } // 85
  8.2249 +    case 83: arg8++; // 132 8 1
  8.2250 +    case 86: gt = 63; continue; // 167 255 233
  8.2251 +    case 89: stack.push(arg4); // 21 4
  8.2252 +    case 91: stack.push(arg3); // 29
  8.2253 +    case 92: if (stack.pop() <= stack.pop()) { gt = 128; continue; } // 162 0 36
  8.2254 +    case 95: stack.push(arg5); // 25 5
  8.2255 +    case 97: stack.push(arg6); // 21 6
  8.2256 +    case 99: stack.push(arg4); // 21 4
  8.2257 +    case 101: stack.push(stack.pop() + stack.pop()); // 96
  8.2258 +    case 102: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.2259 +    case 103: arg8 = stack.pop() // 54 8
  8.2260 +    case 105: stack.push(arg7); // 25 7
  8.2261 +    case 107: stack.push(arg4); // 21 4
  8.2262 +    case 109: stack.push(arg8); // 21 8
  8.2263 +    case 111: stack.push(arg1); // 27
  8.2264 +    case 112: if (stack.pop() != stack.pop()) { gt = 119; continue; } // 160 0 7
  8.2265 +    case 115: stack.push(arg2); // 28
  8.2266 +    case 116: gt = 121; continue; // 167 0 5
  8.2267 +    case 119: stack.push(arg8); // 21 8
  8.2268 +    case 121: { var value = stack.pop(); var indx = stack.pop(); stack.pop()[indx] = value; } // 85
  8.2269 +    case 122: arg4++; // 132 4 1
  8.2270 +    case 125: gt = 89; continue; // 167 255 220
  8.2271 +    case 128: stack.push(new java_lang_String); // 187 0 200
  8.2272 +    case 131: stack.push(stack[stack.length - 1]); // 89
  8.2273 +    case 132: stack.push(0); // 3
  8.2274 +    case 133: stack.push(arg3); // 29
  8.2275 +    case 134: stack.push(arg7); // 25 7
  8.2276 +    case 136: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_consVIIAC(stack.pop(), v0, v1, v2); } // 183 1 137
  8.2277 +    case 139: return stack.pop(); // 176
  8.2278 +    case 140: stack.push(arg0); // 42
  8.2279 +    case 141: return stack.pop(); // 176
  8.2280 +  }
  8.2281 +}
  8.2282 +function java_lang_String_matchesZLjava_lang_String(arg0,arg1) {
  8.2283 +  var arg2;
  8.2284 +;
  8.2285 +  var stack = new Array(2);
  8.2286 +  var gt = 0;
  8.2287 +  for(;;) switch(gt) {
  8.2288 +    case 0: stack.push(arg1); // 43
  8.2289 +    case 1: stack.push(arg0); // 42
  8.2290 +    case 2: { var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_util_regex_Pattern_matchesZLjava_lang_StringLjava_lang_CharSequence(v0, v1)); } // 184 1 183
  8.2291 +    case 5: return stack.pop(); // 172
  8.2292 +  }
  8.2293 +}
  8.2294 +function java_lang_String_containsZLjava_lang_CharSequence(arg0,arg1) {
  8.2295 +  var arg2;
  8.2296 +;
  8.2297 +  var stack = new Array(2);
  8.2298 +  var gt = 0;
  8.2299 +  for(;;) switch(gt) {
  8.2300 +    case 0: stack.push(arg0); // 42
  8.2301 +    case 1: stack.push(arg1); // 43
  8.2302 +    case 2: { var self = stack.pop(); stack.push(self.toStringLjava_lang_String(self)); } // 182 1 132
  8.2303 +    case 5: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.indexOfILjava_lang_String(self, v0)); } // 182 1 149
  8.2304 +    case 8:  // 2
  8.2305 +    case 9: if (stack.pop() >= stack.pop()) { gt = 16; continue; } // 164 0 7
  8.2306 +    case 12: stack.push(1); // 4
  8.2307 +    case 13: gt = 17; continue; // 167 0 4
  8.2308 +    case 16: stack.push(0); // 3
  8.2309 +    case 17: return stack.pop(); // 172
  8.2310 +  }
  8.2311 +}
  8.2312 +function java_lang_String_replaceFirstLjava_lang_StringLjava_lang_StringLjava_lang_String(arg0,arg1,arg2) {
  8.2313 +  var arg3;
  8.2314 +;
  8.2315 +  var stack = new Array(2);
  8.2316 +  var gt = 0;
  8.2317 +  for(;;) switch(gt) {
  8.2318 +    case 0: stack.push(arg1); // 43
  8.2319 +    case 1: { var v0 = stack.pop(); stack.push(java_util_regex_Pattern_compileLjava_util_regex_PatternLjava_lang_String(v0)); } // 184 1 186
  8.2320 +    case 4: stack.push(arg0); // 42
  8.2321 +    case 5: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.matcherLjava_util_regex_MatcherLjava_lang_CharSequence(self, v0)); } // 182 1 185
  8.2322 +    case 8: stack.push(arg2); // 44
  8.2323 +    case 9: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.replaceFirstLjava_lang_StringLjava_lang_String(self, v0)); } // 182 1 182
  8.2324 +    case 12: return stack.pop(); // 176
  8.2325 +  }
  8.2326 +}
  8.2327 +function java_lang_String_replaceAllLjava_lang_StringLjava_lang_StringLjava_lang_String(arg0,arg1,arg2) {
  8.2328 +  var arg3;
  8.2329 +;
  8.2330 +  var stack = new Array(2);
  8.2331 +  var gt = 0;
  8.2332 +  for(;;) switch(gt) {
  8.2333 +    case 0: stack.push(arg1); // 43
  8.2334 +    case 1: { var v0 = stack.pop(); stack.push(java_util_regex_Pattern_compileLjava_util_regex_PatternLjava_lang_String(v0)); } // 184 1 186
  8.2335 +    case 4: stack.push(arg0); // 42
  8.2336 +    case 5: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.matcherLjava_util_regex_MatcherLjava_lang_CharSequence(self, v0)); } // 182 1 185
  8.2337 +    case 8: stack.push(arg2); // 44
  8.2338 +    case 9: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.replaceAllLjava_lang_StringLjava_lang_String(self, v0)); } // 182 1 181
  8.2339 +    case 12: return stack.pop(); // 176
  8.2340 +  }
  8.2341 +}
  8.2342 +function java_lang_String_replaceLjava_lang_StringLjava_lang_CharSequenceLjava_lang_CharSequence(arg0,arg1,arg2) {
  8.2343 +  var arg3;
  8.2344 +;
  8.2345 +  var stack = new Array(2);
  8.2346 +  var gt = 0;
  8.2347 +  for(;;) switch(gt) {
  8.2348 +    case 0: stack.push(arg1); // 43
  8.2349 +    case 1: { var self = stack.pop(); stack.push(self.toStringLjava_lang_String(self)); } // 182 1 132
  8.2350 +    case 4: stack.push(16); // 16 16
  8.2351 +    case 6: { var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_util_regex_Pattern_compileLjava_util_regex_PatternLjava_lang_StringI(v0, v1)); } // 184 1 187
  8.2352 +    case 9: stack.push(arg0); // 42
  8.2353 +    case 10: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.matcherLjava_util_regex_MatcherLjava_lang_CharSequence(self, v0)); } // 182 1 185
  8.2354 +    case 13: stack.push(arg2); // 44
  8.2355 +    case 14: { var self = stack.pop(); stack.push(self.toStringLjava_lang_String(self)); } // 182 1 132
  8.2356 +    case 17: { var v0 = stack.pop(); stack.push(java_util_regex_Matcher_quoteReplacementLjava_lang_StringLjava_lang_String(v0)); } // 184 1 180
  8.2357 +    case 20: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.replaceAllLjava_lang_StringLjava_lang_String(self, v0)); } // 182 1 181
  8.2358 +    case 23: return stack.pop(); // 176
  8.2359 +  }
  8.2360 +}
  8.2361 +function java_lang_String_splitALjava_lang_StringLjava_lang_StringI(arg0,arg1,arg2) {
  8.2362 +  var arg3;
  8.2363 +;
  8.2364 +  var stack = new Array(3);
  8.2365 +  var gt = 0;
  8.2366 +  for(;;) switch(gt) {
  8.2367 +    case 0: stack.push(arg1); // 43
  8.2368 +    case 1: { var v0 = stack.pop(); stack.push(java_util_regex_Pattern_compileLjava_util_regex_PatternLjava_lang_String(v0)); } // 184 1 186
  8.2369 +    case 4: stack.push(arg0); // 42
  8.2370 +    case 5: stack.push(arg2); // 28
  8.2371 +    case 6: { var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); stack.push(self.splitALjava_lang_StringLjava_lang_CharSequenceI(self, v0, v1)); } // 182 1 184
  8.2372 +    case 9: return stack.pop(); // 176
  8.2373 +  }
  8.2374 +}
  8.2375 +function java_lang_String_splitALjava_lang_StringLjava_lang_String(arg0,arg1) {
  8.2376 +  var arg2;
  8.2377 +;
  8.2378 +  var stack = new Array(3);
  8.2379 +  var gt = 0;
  8.2380 +  for(;;) switch(gt) {
  8.2381 +    case 0: stack.push(arg0); // 42
  8.2382 +    case 1: stack.push(arg1); // 43
  8.2383 +    case 2: stack.push(0); // 3
  8.2384 +    case 3: { var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); stack.push(self.splitALjava_lang_StringLjava_lang_StringI(self, v0, v1)); } // 182 1 157
  8.2385 +    case 6: return stack.pop(); // 176
  8.2386 +  }
  8.2387 +}
  8.2388 +function java_lang_String_toLowerCaseLjava_lang_StringLjava_util_Locale(arg0,arg1) {
  8.2389 +  var arg2;
  8.2390 +  var arg3;
  8.2391 +  var arg4;
  8.2392 +  var arg5;
  8.2393 +  var arg6;
  8.2394 +  var arg7;
  8.2395 +  var arg8;
  8.2396 +  var arg9;
  8.2397 +  var arg10;
  8.2398 +  var arg11;
  8.2399 +  var arg12;
  8.2400 +  var arg13;
  8.2401 +  var arg14;
  8.2402 +;
  8.2403 +  var stack = new Array(6);
  8.2404 +  var gt = 0;
  8.2405 +  for(;;) switch(gt) {
  8.2406 +    case 0: stack.push(arg1); // 43
  8.2407 +    case 1: if (stack.pop()) { gt = 12; continue; } // 199 0 11
  8.2408 +    case 4: stack.push(new java_lang_NullPointerException); // 187 0 198
  8.2409 +    case 7: stack.push(stack[stack.length - 1]); // 89
  8.2410 +    case 8: { java_lang_NullPointerException_consV(stack.pop()); } // 183 1 128
  8.2411 +    case 11:  // 191
  8.2412 +    case 12: stack.push(0); // 3
  8.2413 +    case 13: arg2 = stack.pop(); // 61
  8.2414 +    case 14: stack.push(arg2); // 28
  8.2415 +    case 15: stack.push(arg0); // 42
  8.2416 +    case 16: stack.push(stack.pop().count); // 180 1 97
  8.2417 +    case 19: if (stack.pop() <= stack.pop()) { gt = 94; continue; } // 162 0 75
  8.2418 +    case 22: stack.push(arg0); // 42
  8.2419 +    case 23: stack.push(stack.pop().value); // 180 1 100
  8.2420 +    case 26: stack.push(arg0); // 42
  8.2421 +    case 27: stack.push(stack.pop().offset); // 180 1 99
  8.2422 +    case 30: stack.push(arg2); // 28
  8.2423 +    case 31: stack.push(stack.pop() + stack.pop()); // 96
  8.2424 +    case 32: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.2425 +    case 33: arg3 = stack.pop(); // 62
  8.2426 +    case 34: stack.push(arg3); // 29
  8.2427 +    case 35: stack.push(55296); // 18 1
  8.2428 +    case 37: if (stack.pop() > stack.pop()) { gt = 77; continue; } // 161 0 40
  8.2429 +    case 40: stack.push(arg3); // 29
  8.2430 +    case 41: stack.push(56319); // 18 2
  8.2431 +    case 43: if (stack.pop() < stack.pop()) { gt = 77; continue; } // 163 0 34
  8.2432 +    case 46: stack.push(arg0); // 42
  8.2433 +    case 47: stack.push(arg2); // 28
  8.2434 +    case 48: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.codePointAtII(self, v0)); } // 182 1 134
  8.2435 +    case 51: arg4 = stack.pop() // 54 4
  8.2436 +    case 53: stack.push(arg4); // 21 4
  8.2437 +    case 55: stack.push(arg4); // 21 4
  8.2438 +    case 57: { var v0 = stack.pop(); stack.push(java_lang_Character_toLowerCaseII(v0)); } // 184 1 107
  8.2439 +    case 60: if (stack.pop() == stack.pop()) { gt = 66; continue; } // 159 0 6
  8.2440 +    case 63: gt = 96; continue; // 167 0 33
  8.2441 +    case 66: stack.push(arg2); // 28
  8.2442 +    case 67: stack.push(arg4); // 21 4
  8.2443 +    case 69: { var v0 = stack.pop(); stack.push(java_lang_Character_charCountII(v0)); } // 184 1 106
  8.2444 +    case 72: stack.push(stack.pop() + stack.pop()); // 96
  8.2445 +    case 73: arg2 = stack.pop(); // 61
  8.2446 +    case 74: gt = 91; continue; // 167 0 17
  8.2447 +    case 77: stack.push(arg3); // 29
  8.2448 +    case 78: stack.push(arg3); // 29
  8.2449 +    case 79: { var v0 = stack.pop(); stack.push(java_lang_Character_toLowerCaseCC(v0)); } // 184 1 104
  8.2450 +    case 82: if (stack.pop() == stack.pop()) { gt = 88; continue; } // 159 0 6
  8.2451 +    case 85: gt = 96; continue; // 167 0 11
  8.2452 +    case 88: arg2++; // 132 2 1
  8.2453 +    case 91: gt = 14; continue; // 167 255 179
  8.2454 +    case 94: stack.push(arg0); // 42
  8.2455 +    case 95: return stack.pop(); // 176
  8.2456 +    case 96: stack.push(arg0); // 42
  8.2457 +    case 97: stack.push(stack.pop().count); // 180 1 97
  8.2458 +    case 100: stack.push(new Array(stack.pop())); // 188 5
  8.2459 +    case 102: arg3 = stack.pop(); // 78
  8.2460 +    case 103: stack.push(0); // 3
  8.2461 +    case 104: arg4 = stack.pop() // 54 4
  8.2462 +    case 106: stack.push(arg0); // 42
  8.2463 +    case 107: stack.push(stack.pop().value); // 180 1 100
  8.2464 +    case 110: stack.push(arg0); // 42
  8.2465 +    case 111: stack.push(stack.pop().offset); // 180 1 99
  8.2466 +    case 114: stack.push(arg3); // 45
  8.2467 +    case 115: stack.push(0); // 3
  8.2468 +    case 116: stack.push(arg2); // 28
  8.2469 +    case 117: { var v4 = stack.pop(); var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_System_arraycopyVLjava_lang_ObjectILjava_lang_ObjectII(v0, v1, v2, v3, v4); } // 184 1 171
  8.2470 +    case 120: stack.push(arg1); // 43
  8.2471 +    case 121: { var self = stack.pop(); stack.push(self.getLanguageLjava_lang_String(self)); } // 182 1 178
  8.2472 +    case 124: arg5 = stack.pop() // 58 5
  8.2473 +    case 126: stack.push(arg5); // 25 5
  8.2474 +    case 128: stack.push("tr"); // 18 11
  8.2475 +    case 130:  // 165
  8.2476 +    case 131:  // 0
  8.2477 +    case 132: stack.push(6405); // 17 25 5
  8.2478 +    case 135: stack.push("az"); // 18 5
  8.2479 +    case 137:  // 165
  8.2480 +    case 138:  // 0
  8.2481 +    case 139: stack.push(1); // 10
  8.2482 +    case 140: stack.push(arg5); // 25 5
  8.2483 +    case 142: stack.push("lt"); // 18 9
  8.2484 +    case 144:  // 166
  8.2485 +    case 145:  // 0
  8.2486 +    case 146: stack.push(4); // 7
  8.2487 +    case 147: stack.push(1); // 4
  8.2488 +    case 148: gt = 152; continue; // 167 0 4
  8.2489 +    case 151: stack.push(0); // 3
  8.2490 +    case 152: arg6 = stack.pop() // 54 6
  8.2491 +    case 154: stack.push(arg2); // 28
  8.2492 +    case 155: arg11 = stack.pop() // 54 11
  8.2493 +    case 157: stack.push(arg11); // 21 11
  8.2494 +    case 159: stack.push(arg0); // 42
  8.2495 +    case 160: stack.push(stack.pop().count); // 180 1 97
  8.2496 +    case 163: if (stack.pop() <= stack.pop()) { gt = 419; continue; } // 162 1 0
  8.2497 +    case 166: stack.push(arg0); // 42
  8.2498 +    case 167: stack.push(stack.pop().value); // 180 1 100
  8.2499 +    case 170: stack.push(arg0); // 42
  8.2500 +    case 171: stack.push(stack.pop().offset); // 180 1 99
  8.2501 +    case 174: stack.push(arg11); // 21 11
  8.2502 +    case 176: stack.push(stack.pop() + stack.pop()); // 96
  8.2503 +    case 177: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.2504 +    case 178: arg9 = stack.pop() // 54 9
  8.2505 +    case 180: stack.push(arg9); // 21 9
  8.2506 +    case 182: // number conversion  // 146
  8.2507 +    case 183: stack.push(55296); // 18 1
  8.2508 +    case 185: if (stack.pop() > stack.pop()) { gt = 214; continue; } // 161 0 29
  8.2509 +    case 188: stack.push(arg9); // 21 9
  8.2510 +    case 190: // number conversion  // 146
  8.2511 +    case 191: stack.push(56319); // 18 2
  8.2512 +    case 193: if (stack.pop() < stack.pop()) { gt = 214; continue; } // 163 0 21
  8.2513 +    case 196: stack.push(arg0); // 42
  8.2514 +    case 197: stack.push(arg11); // 21 11
  8.2515 +    case 199: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.codePointAtII(self, v0)); } // 182 1 134
  8.2516 +    case 202: arg9 = stack.pop() // 54 9
  8.2517 +    case 204: stack.push(arg9); // 21 9
  8.2518 +    case 206: { var v0 = stack.pop(); stack.push(java_lang_Character_charCountII(v0)); } // 184 1 106
  8.2519 +    case 209: arg10 = stack.pop() // 54 10
  8.2520 +    case 211: gt = 217; continue; // 167 0 6
  8.2521 +    case 214: stack.push(1); // 4
  8.2522 +    case 215: arg10 = stack.pop() // 54 10
  8.2523 +    case 217: stack.push(arg6); // 21 6
  8.2524 +    case 219: if (stack.pop() != 0) { gt = 230; continue; } // 154 0 11
  8.2525 +    case 222: stack.push(arg9); // 21 9
  8.2526 +    case 224: stack.push(931); // 17 3 163
  8.2527 +    case 227: if (stack.pop() != stack.pop()) { gt = 242; continue; } // 160 0 15
  8.2528 +    case 230: stack.push(arg0); // 42
  8.2529 +    case 231: stack.push(arg11); // 21 11
  8.2530 +    case 233: stack.push(arg1); // 43
  8.2531 +    case 234: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_ConditionalSpecialCasing_toLowerCaseExILjava_lang_StringILjava_util_Locale(v0, v1, v2)); } // 184 1 117
  8.2532 +    case 237: arg8 = stack.pop() // 54 8
  8.2533 +    case 239: gt = 249; continue; // 167 0 10
  8.2534 +    case 242: stack.push(arg9); // 21 9
  8.2535 +    case 244: { var v0 = stack.pop(); stack.push(java_lang_Character_toLowerCaseII(v0)); } // 184 1 107
  8.2536 +    case 247: arg8 = stack.pop() // 54 8
  8.2537 +    case 249: stack.push(arg8); // 21 8
  8.2538 +    case 251:  // 2
  8.2539 +    case 252: if (stack.pop() == stack.pop()) { gt = 262; continue; } // 159 0 10
  8.2540 +    case 255: stack.push(arg8); // 21 8
  8.2541 +    case 257: stack.push(65536); // 18 3
  8.2542 +    case 259: if (stack.pop() > stack.pop()) { gt = 399; continue; } // 161 0 140
  8.2543 +    case 262: stack.push(arg8); // 21 8
  8.2544 +    case 264:  // 2
  8.2545 +    case 265: if (stack.pop() != stack.pop()) { gt = 280; continue; } // 160 0 15
  8.2546 +    case 268: stack.push(arg0); // 42
  8.2547 +    case 269: stack.push(arg11); // 21 11
  8.2548 +    case 271: stack.push(arg1); // 43
  8.2549 +    case 272: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_ConditionalSpecialCasing_toLowerCaseCharArrayACLjava_lang_StringILjava_util_Locale(v0, v1, v2)); } // 184 1 119
  8.2550 +    case 275: arg7 = stack.pop() // 58 7
  8.2551 +    case 277: gt = 315; continue; // 167 0 38
  8.2552 +    case 280: stack.push(arg10); // 21 10
  8.2553 +    case 282: stack.push(2); // 5
  8.2554 +    case 283: if (stack.pop() != stack.pop()) { gt = 308; continue; } // 160 0 25
  8.2555 +    case 286: stack.push(arg4); // 21 4
  8.2556 +    case 288: stack.push(arg8); // 21 8
  8.2557 +    case 290: stack.push(arg3); // 45
  8.2558 +    case 291: stack.push(arg11); // 21 11
  8.2559 +    case 293: stack.push(arg4); // 21 4
  8.2560 +    case 295: stack.push(stack.pop() + stack.pop()); // 96
  8.2561 +    case 296: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_Character_toCharsAIIACAI(v0, v1, v2)); } // 184 1 111
  8.2562 +    case 299: stack.push(arg10); // 21 10
  8.2563 +    case 301: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.2564 +    case 302: stack.push(stack.pop() + stack.pop()); // 96
  8.2565 +    case 303: arg4 = stack.pop() // 54 4
  8.2566 +    case 305: gt = 409; continue; // 167 0 104
  8.2567 +    case 308: stack.push(arg8); // 21 8
  8.2568 +    case 310: { var v0 = stack.pop(); stack.push(java_lang_Character_toCharsACI(v0)); } // 184 1 109
  8.2569 +    case 313: arg7 = stack.pop() // 58 7
  8.2570 +    case 315: stack.push(arg7); // 25 7
  8.2571 +    case 317: stack.push(stack.pop().length); // 190
  8.2572 +    case 318: arg12 = stack.pop() // 54 12
  8.2573 +    case 320: stack.push(arg12); // 21 12
  8.2574 +    case 322: stack.push(arg10); // 21 10
  8.2575 +    case 324: if (stack.pop() >= stack.pop()) { gt = 355; continue; } // 164 0 31
  8.2576 +    case 327: stack.push(arg3); // 45
  8.2577 +    case 328: stack.push(stack.pop().length); // 190
  8.2578 +    case 329: stack.push(arg12); // 21 12
  8.2579 +    case 331: stack.push(stack.pop() + stack.pop()); // 96
  8.2580 +    case 332: stack.push(arg10); // 21 10
  8.2581 +    case 334: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.2582 +    case 335: stack.push(new Array(stack.pop())); // 188 5
  8.2583 +    case 337: arg13 = stack.pop() // 58 13
  8.2584 +    case 339: stack.push(arg3); // 45
  8.2585 +    case 340: stack.push(0); // 3
  8.2586 +    case 341: stack.push(arg13); // 25 13
  8.2587 +    case 343: stack.push(0); // 3
  8.2588 +    case 344: stack.push(arg11); // 21 11
  8.2589 +    case 346: stack.push(arg4); // 21 4
  8.2590 +    case 348: stack.push(stack.pop() + stack.pop()); // 96
  8.2591 +    case 349: { var v4 = stack.pop(); var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_System_arraycopyVLjava_lang_ObjectILjava_lang_ObjectII(v0, v1, v2, v3, v4); } // 184 1 171
  8.2592 +    case 352: stack.push(arg13); // 25 13
  8.2593 +    case 354: arg3 = stack.pop(); // 78
  8.2594 +    case 355: stack.push(0); // 3
  8.2595 +    case 356: arg13 = stack.pop() // 54 13
  8.2596 +    case 358: stack.push(arg13); // 21 13
  8.2597 +    case 360: stack.push(arg12); // 21 12
  8.2598 +    case 362: if (stack.pop() <= stack.pop()) { gt = 386; continue; } // 162 0 24
  8.2599 +    case 365: stack.push(arg3); // 45
  8.2600 +    case 366: stack.push(arg11); // 21 11
  8.2601 +    case 368: stack.push(arg4); // 21 4
  8.2602 +    case 370: stack.push(stack.pop() + stack.pop()); // 96
  8.2603 +    case 371: stack.push(arg13); // 21 13
  8.2604 +    case 373: stack.push(stack.pop() + stack.pop()); // 96
  8.2605 +    case 374: stack.push(arg7); // 25 7
  8.2606 +    case 376: stack.push(arg13); // 21 13
  8.2607 +    case 378: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.2608 +    case 379: { var value = stack.pop(); var indx = stack.pop(); stack.pop()[indx] = value; } // 85
  8.2609 +    case 380: arg13++; // 132 13 1
  8.2610 +    case 383: gt = 358; continue; // 167 255 231
  8.2611 +    case 386: stack.push(arg4); // 21 4
  8.2612 +    case 388: stack.push(arg12); // 21 12
  8.2613 +    case 390: stack.push(arg10); // 21 10
  8.2614 +    case 392: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.2615 +    case 393: stack.push(stack.pop() + stack.pop()); // 96
  8.2616 +    case 394: arg4 = stack.pop() // 54 4
  8.2617 +    case 396: gt = 409; continue; // 167 0 13
  8.2618 +    case 399: stack.push(arg3); // 45
  8.2619 +    case 400: stack.push(arg11); // 21 11
  8.2620 +    case 402: stack.push(arg4); // 21 4
  8.2621 +    case 404: stack.push(stack.pop() + stack.pop()); // 96
  8.2622 +    case 405: stack.push(arg8); // 21 8
  8.2623 +    case 407: // number conversion  // 146
  8.2624 +    case 408: { var value = stack.pop(); var indx = stack.pop(); stack.pop()[indx] = value; } // 85
  8.2625 +    case 409: stack.push(arg11); // 21 11
  8.2626 +    case 411: stack.push(arg10); // 21 10
  8.2627 +    case 413: stack.push(stack.pop() + stack.pop()); // 96
  8.2628 +    case 414: arg11 = stack.pop() // 54 11
  8.2629 +    case 416: gt = 157; continue; // 167 254 253
  8.2630 +    case 419: stack.push(new java_lang_String); // 187 0 200
  8.2631 +    case 422: stack.push(stack[stack.length - 1]); // 89
  8.2632 +    case 423: stack.push(0); // 3
  8.2633 +    case 424: stack.push(arg0); // 42
  8.2634 +    case 425: stack.push(stack.pop().count); // 180 1 97
  8.2635 +    case 428: stack.push(arg4); // 21 4
  8.2636 +    case 430: stack.push(stack.pop() + stack.pop()); // 96
  8.2637 +    case 431: stack.push(arg3); // 45
  8.2638 +    case 432: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_consVIIAC(stack.pop(), v0, v1, v2); } // 183 1 137
  8.2639 +    case 435: return stack.pop(); // 176
  8.2640 +  }
  8.2641 +}
  8.2642 +function java_lang_String_toLowerCaseLjava_lang_String(arg0) {
  8.2643 +  var arg1;
  8.2644 +;
  8.2645 +  var stack = new Array(2);
  8.2646 +  var gt = 0;
  8.2647 +  for(;;) switch(gt) {
  8.2648 +    case 0: stack.push(arg0); // 42
  8.2649 +    case 1: { stack.push(java_util_Locale_getDefaultLjava_util_Locale()); } // 184 1 179
  8.2650 +    case 4: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.toLowerCaseLjava_lang_StringLjava_util_Locale(self, v0)); } // 182 1 158
  8.2651 +    case 7: return stack.pop(); // 176
  8.2652 +  }
  8.2653 +}
  8.2654 +function java_lang_String_toUpperCaseLjava_lang_StringLjava_util_Locale(arg0,arg1) {
  8.2655 +  var arg2;
  8.2656 +  var arg3;
  8.2657 +  var arg4;
  8.2658 +  var arg5;
  8.2659 +  var arg6;
  8.2660 +  var arg7;
  8.2661 +  var arg8;
  8.2662 +  var arg9;
  8.2663 +  var arg10;
  8.2664 +  var arg11;
  8.2665 +  var arg12;
  8.2666 +  var arg13;
  8.2667 +  var arg14;
  8.2668 +;
  8.2669 +  var stack = new Array(6);
  8.2670 +  var gt = 0;
  8.2671 +  for(;;) switch(gt) {
  8.2672 +    case 0: stack.push(arg1); // 43
  8.2673 +    case 1: if (stack.pop()) { gt = 12; continue; } // 199 0 11
  8.2674 +    case 4: stack.push(new java_lang_NullPointerException); // 187 0 198
  8.2675 +    case 7: stack.push(stack[stack.length - 1]); // 89
  8.2676 +    case 8: { java_lang_NullPointerException_consV(stack.pop()); } // 183 1 128
  8.2677 +    case 11:  // 191
  8.2678 +    case 12: stack.push(0); // 3
  8.2679 +    case 13: arg2 = stack.pop(); // 61
  8.2680 +    case 14: stack.push(arg2); // 28
  8.2681 +    case 15: stack.push(arg0); // 42
  8.2682 +    case 16: stack.push(stack.pop().count); // 180 1 97
  8.2683 +    case 19: if (stack.pop() <= stack.pop()) { gt = 93; continue; } // 162 0 74
  8.2684 +    case 22: stack.push(arg0); // 42
  8.2685 +    case 23: stack.push(stack.pop().value); // 180 1 100
  8.2686 +    case 26: stack.push(arg0); // 42
  8.2687 +    case 27: stack.push(stack.pop().offset); // 180 1 99
  8.2688 +    case 30: stack.push(arg2); // 28
  8.2689 +    case 31: stack.push(stack.pop() + stack.pop()); // 96
  8.2690 +    case 32: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.2691 +    case 33: arg3 = stack.pop(); // 62
  8.2692 +    case 34: stack.push(arg3); // 29
  8.2693 +    case 35: stack.push(55296); // 18 1
  8.2694 +    case 37: if (stack.pop() > stack.pop()) { gt = 61; continue; } // 161 0 24
  8.2695 +    case 40: stack.push(arg3); // 29
  8.2696 +    case 41: stack.push(56319); // 18 2
  8.2697 +    case 43: if (stack.pop() < stack.pop()) { gt = 61; continue; } // 163 0 18
  8.2698 +    case 46: stack.push(arg0); // 42
  8.2699 +    case 47: stack.push(arg2); // 28
  8.2700 +    case 48: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.codePointAtII(self, v0)); } // 182 1 134
  8.2701 +    case 51: arg3 = stack.pop(); // 62
  8.2702 +    case 52: stack.push(arg3); // 29
  8.2703 +    case 53: { var v0 = stack.pop(); stack.push(java_lang_Character_charCountII(v0)); } // 184 1 106
  8.2704 +    case 56: arg4 = stack.pop() // 54 4
  8.2705 +    case 58: gt = 64; continue; // 167 0 6
  8.2706 +    case 61: stack.push(1); // 4
  8.2707 +    case 62: arg4 = stack.pop() // 54 4
  8.2708 +    case 64: stack.push(arg3); // 29
  8.2709 +    case 65: { var v0 = stack.pop(); stack.push(java_lang_Character_toUpperCaseExII(v0)); } // 184 1 108
  8.2710 +    case 68: arg5 = stack.pop() // 54 5
  8.2711 +    case 70: stack.push(arg5); // 21 5
  8.2712 +    case 72:  // 2
  8.2713 +    case 73: if (stack.pop() == stack.pop()) { gt = 95; continue; } // 159 0 22
  8.2714 +    case 76: stack.push(arg3); // 29
  8.2715 +    case 77: stack.push(arg5); // 21 5
  8.2716 +    case 79: if (stack.pop() == stack.pop()) { gt = 85; continue; } // 159 0 6
  8.2717 +    case 82: gt = 95; continue; // 167 0 13
  8.2718 +    case 85: stack.push(arg2); // 28
  8.2719 +    case 86: stack.push(arg4); // 21 4
  8.2720 +    case 88: stack.push(stack.pop() + stack.pop()); // 96
  8.2721 +    case 89: arg2 = stack.pop(); // 61
  8.2722 +    case 90: gt = 14; continue; // 167 255 180
  8.2723 +    case 93: stack.push(arg0); // 42
  8.2724 +    case 94: return stack.pop(); // 176
  8.2725 +    case 95: stack.push(arg0); // 42
  8.2726 +    case 96: stack.push(stack.pop().count); // 180 1 97
  8.2727 +    case 99: stack.push(new Array(stack.pop())); // 188 5
  8.2728 +    case 101: arg3 = stack.pop(); // 78
  8.2729 +    case 102: stack.push(0); // 3
  8.2730 +    case 103: arg4 = stack.pop() // 54 4
  8.2731 +    case 105: stack.push(arg0); // 42
  8.2732 +    case 106: stack.push(stack.pop().value); // 180 1 100
  8.2733 +    case 109: stack.push(arg0); // 42
  8.2734 +    case 110: stack.push(stack.pop().offset); // 180 1 99
  8.2735 +    case 113: stack.push(arg3); // 45
  8.2736 +    case 114: stack.push(0); // 3
  8.2737 +    case 115: stack.push(arg2); // 28
  8.2738 +    case 116: { var v4 = stack.pop(); var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_System_arraycopyVLjava_lang_ObjectILjava_lang_ObjectII(v0, v1, v2, v3, v4); } // 184 1 171
  8.2739 +    case 119: stack.push(arg1); // 43
  8.2740 +    case 120: { var self = stack.pop(); stack.push(self.getLanguageLjava_lang_String(self)); } // 182 1 178
  8.2741 +    case 123: arg5 = stack.pop() // 58 5
  8.2742 +    case 125: stack.push(arg5); // 25 5
  8.2743 +    case 127: stack.push("tr"); // 18 11
  8.2744 +    case 129:  // 165
  8.2745 +    case 130:  // 0
  8.2746 +    case 131: stack.push(6405); // 17 25 5
  8.2747 +    case 134: stack.push("az"); // 18 5
  8.2748 +    case 136:  // 165
  8.2749 +    case 137:  // 0
  8.2750 +    case 138: stack.push(1); // 10
  8.2751 +    case 139: stack.push(arg5); // 25 5
  8.2752 +    case 141: stack.push("lt"); // 18 9
  8.2753 +    case 143:  // 166
  8.2754 +    case 144:  // 0
  8.2755 +    case 145: stack.push(4); // 7
  8.2756 +    case 146: stack.push(1); // 4
  8.2757 +    case 147: gt = 151; continue; // 167 0 4
  8.2758 +    case 150: stack.push(0); // 3
  8.2759 +    case 151: arg6 = stack.pop() // 54 6
  8.2760 +    case 153: stack.push(arg2); // 28
  8.2761 +    case 154: arg11 = stack.pop() // 54 11
  8.2762 +    case 156: stack.push(arg11); // 21 11
  8.2763 +    case 158: stack.push(arg0); // 42
  8.2764 +    case 159: stack.push(stack.pop().count); // 180 1 97
  8.2765 +    case 162: if (stack.pop() <= stack.pop()) { gt = 425; continue; } // 162 1 7
  8.2766 +    case 165: stack.push(arg0); // 42
  8.2767 +    case 166: stack.push(stack.pop().value); // 180 1 100
  8.2768 +    case 169: stack.push(arg0); // 42
  8.2769 +    case 170: stack.push(stack.pop().offset); // 180 1 99
  8.2770 +    case 173: stack.push(arg11); // 21 11
  8.2771 +    case 175: stack.push(stack.pop() + stack.pop()); // 96
  8.2772 +    case 176: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.2773 +    case 177: arg9 = stack.pop() // 54 9
  8.2774 +    case 179: stack.push(arg9); // 21 9
  8.2775 +    case 181: // number conversion  // 146
  8.2776 +    case 182: stack.push(55296); // 18 1
  8.2777 +    case 184: if (stack.pop() > stack.pop()) { gt = 213; continue; } // 161 0 29
  8.2778 +    case 187: stack.push(arg9); // 21 9
  8.2779 +    case 189: // number conversion  // 146
  8.2780 +    case 190: stack.push(56319); // 18 2
  8.2781 +    case 192: if (stack.pop() < stack.pop()) { gt = 213; continue; } // 163 0 21
  8.2782 +    case 195: stack.push(arg0); // 42
  8.2783 +    case 196: stack.push(arg11); // 21 11
  8.2784 +    case 198: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.codePointAtII(self, v0)); } // 182 1 134
  8.2785 +    case 201: arg9 = stack.pop() // 54 9
  8.2786 +    case 203: stack.push(arg9); // 21 9
  8.2787 +    case 205: { var v0 = stack.pop(); stack.push(java_lang_Character_charCountII(v0)); } // 184 1 106
  8.2788 +    case 208: arg10 = stack.pop() // 54 10
  8.2789 +    case 210: gt = 216; continue; // 167 0 6
  8.2790 +    case 213: stack.push(1); // 4
  8.2791 +    case 214: arg10 = stack.pop() // 54 10
  8.2792 +    case 216: stack.push(arg6); // 21 6
  8.2793 +    case 218: if (stack.pop() == 0) { gt = 233; continue; } // 153 0 15
  8.2794 +    case 221: stack.push(arg0); // 42
  8.2795 +    case 222: stack.push(arg11); // 21 11
  8.2796 +    case 224: stack.push(arg1); // 43
  8.2797 +    case 225: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_ConditionalSpecialCasing_toUpperCaseExILjava_lang_StringILjava_util_Locale(v0, v1, v2)); } // 184 1 118
  8.2798 +    case 228: arg8 = stack.pop() // 54 8
  8.2799 +    case 230: gt = 240; continue; // 167 0 10
  8.2800 +    case 233: stack.push(arg9); // 21 9
  8.2801 +    case 235: { var v0 = stack.pop(); stack.push(java_lang_Character_toUpperCaseExII(v0)); } // 184 1 108
  8.2802 +    case 238: arg8 = stack.pop() // 54 8
  8.2803 +    case 240: stack.push(arg8); // 21 8
  8.2804 +    case 242:  // 2
  8.2805 +    case 243: if (stack.pop() == stack.pop()) { gt = 253; continue; } // 159 0 10
  8.2806 +    case 246: stack.push(arg8); // 21 8
  8.2807 +    case 248: stack.push(65536); // 18 3
  8.2808 +    case 250: if (stack.pop() > stack.pop()) { gt = 405; continue; } // 161 0 155
  8.2809 +    case 253: stack.push(arg8); // 21 8
  8.2810 +    case 255:  // 2
  8.2811 +    case 256: if (stack.pop() != stack.pop()) { gt = 286; continue; } // 160 0 30
  8.2812 +    case 259: stack.push(arg6); // 21 6
  8.2813 +    case 261: if (stack.pop() == 0) { gt = 276; continue; } // 153 0 15
  8.2814 +    case 264: stack.push(arg0); // 42
  8.2815 +    case 265: stack.push(arg11); // 21 11
  8.2816 +    case 267: stack.push(arg1); // 43
  8.2817 +    case 268: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_ConditionalSpecialCasing_toUpperCaseCharArrayACLjava_lang_StringILjava_util_Locale(v0, v1, v2)); } // 184 1 120
  8.2818 +    case 271: arg7 = stack.pop() // 58 7
  8.2819 +    case 273: gt = 321; continue; // 167 0 48
  8.2820 +    case 276: stack.push(arg9); // 21 9
  8.2821 +    case 278: { var v0 = stack.pop(); stack.push(java_lang_Character_toUpperCaseCharArrayACI(v0)); } // 184 1 110
  8.2822 +    case 281: arg7 = stack.pop() // 58 7
  8.2823 +    case 283: gt = 321; continue; // 167 0 38
  8.2824 +    case 286: stack.push(arg10); // 21 10
  8.2825 +    case 288: stack.push(2); // 5
  8.2826 +    case 289: if (stack.pop() != stack.pop()) { gt = 314; continue; } // 160 0 25
  8.2827 +    case 292: stack.push(arg4); // 21 4
  8.2828 +    case 294: stack.push(arg8); // 21 8
  8.2829 +    case 296: stack.push(arg3); // 45
  8.2830 +    case 297: stack.push(arg11); // 21 11
  8.2831 +    case 299: stack.push(arg4); // 21 4
  8.2832 +    case 301: stack.push(stack.pop() + stack.pop()); // 96
  8.2833 +    case 302: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_Character_toCharsAIIACAI(v0, v1, v2)); } // 184 1 111
  8.2834 +    case 305: stack.push(arg10); // 21 10
  8.2835 +    case 307: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.2836 +    case 308: stack.push(stack.pop() + stack.pop()); // 96
  8.2837 +    case 309: arg4 = stack.pop() // 54 4
  8.2838 +    case 311: gt = 415; continue; // 167 0 104
  8.2839 +    case 314: stack.push(arg8); // 21 8
  8.2840 +    case 316: { var v0 = stack.pop(); stack.push(java_lang_Character_toCharsACI(v0)); } // 184 1 109
  8.2841 +    case 319: arg7 = stack.pop() // 58 7
  8.2842 +    case 321: stack.push(arg7); // 25 7
  8.2843 +    case 323: stack.push(stack.pop().length); // 190
  8.2844 +    case 324: arg12 = stack.pop() // 54 12
  8.2845 +    case 326: stack.push(arg12); // 21 12
  8.2846 +    case 328: stack.push(arg10); // 21 10
  8.2847 +    case 330: if (stack.pop() >= stack.pop()) { gt = 361; continue; } // 164 0 31
  8.2848 +    case 333: stack.push(arg3); // 45
  8.2849 +    case 334: stack.push(stack.pop().length); // 190
  8.2850 +    case 335: stack.push(arg12); // 21 12
  8.2851 +    case 337: stack.push(stack.pop() + stack.pop()); // 96
  8.2852 +    case 338: stack.push(arg10); // 21 10
  8.2853 +    case 340: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.2854 +    case 341: stack.push(new Array(stack.pop())); // 188 5
  8.2855 +    case 343: arg13 = stack.pop() // 58 13
  8.2856 +    case 345: stack.push(arg3); // 45
  8.2857 +    case 346: stack.push(0); // 3
  8.2858 +    case 347: stack.push(arg13); // 25 13
  8.2859 +    case 349: stack.push(0); // 3
  8.2860 +    case 350: stack.push(arg11); // 21 11
  8.2861 +    case 352: stack.push(arg4); // 21 4
  8.2862 +    case 354: stack.push(stack.pop() + stack.pop()); // 96
  8.2863 +    case 355: { var v4 = stack.pop(); var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_System_arraycopyVLjava_lang_ObjectILjava_lang_ObjectII(v0, v1, v2, v3, v4); } // 184 1 171
  8.2864 +    case 358: stack.push(arg13); // 25 13
  8.2865 +    case 360: arg3 = stack.pop(); // 78
  8.2866 +    case 361: stack.push(0); // 3
  8.2867 +    case 362: arg13 = stack.pop() // 54 13
  8.2868 +    case 364: stack.push(arg13); // 21 13
  8.2869 +    case 366: stack.push(arg12); // 21 12
  8.2870 +    case 368: if (stack.pop() <= stack.pop()) { gt = 392; continue; } // 162 0 24
  8.2871 +    case 371: stack.push(arg3); // 45
  8.2872 +    case 372: stack.push(arg11); // 21 11
  8.2873 +    case 374: stack.push(arg4); // 21 4
  8.2874 +    case 376: stack.push(stack.pop() + stack.pop()); // 96
  8.2875 +    case 377: stack.push(arg13); // 21 13
  8.2876 +    case 379: stack.push(stack.pop() + stack.pop()); // 96
  8.2877 +    case 380: stack.push(arg7); // 25 7
  8.2878 +    case 382: stack.push(arg13); // 21 13
  8.2879 +    case 384: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.2880 +    case 385: { var value = stack.pop(); var indx = stack.pop(); stack.pop()[indx] = value; } // 85
  8.2881 +    case 386: arg13++; // 132 13 1
  8.2882 +    case 389: gt = 364; continue; // 167 255 231
  8.2883 +    case 392: stack.push(arg4); // 21 4
  8.2884 +    case 394: stack.push(arg12); // 21 12
  8.2885 +    case 396: stack.push(arg10); // 21 10
  8.2886 +    case 398: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.2887 +    case 399: stack.push(stack.pop() + stack.pop()); // 96
  8.2888 +    case 400: arg4 = stack.pop() // 54 4
  8.2889 +    case 402: gt = 415; continue; // 167 0 13
  8.2890 +    case 405: stack.push(arg3); // 45
  8.2891 +    case 406: stack.push(arg11); // 21 11
  8.2892 +    case 408: stack.push(arg4); // 21 4
  8.2893 +    case 410: stack.push(stack.pop() + stack.pop()); // 96
  8.2894 +    case 411: stack.push(arg8); // 21 8
  8.2895 +    case 413: // number conversion  // 146
  8.2896 +    case 414: { var value = stack.pop(); var indx = stack.pop(); stack.pop()[indx] = value; } // 85
  8.2897 +    case 415: stack.push(arg11); // 21 11
  8.2898 +    case 417: stack.push(arg10); // 21 10
  8.2899 +    case 419: stack.push(stack.pop() + stack.pop()); // 96
  8.2900 +    case 420: arg11 = stack.pop() // 54 11
  8.2901 +    case 422: gt = 156; continue; // 167 254 246
  8.2902 +    case 425: stack.push(new java_lang_String); // 187 0 200
  8.2903 +    case 428: stack.push(stack[stack.length - 1]); // 89
  8.2904 +    case 429: stack.push(0); // 3
  8.2905 +    case 430: stack.push(arg0); // 42
  8.2906 +    case 431: stack.push(stack.pop().count); // 180 1 97
  8.2907 +    case 434: stack.push(arg4); // 21 4
  8.2908 +    case 436: stack.push(stack.pop() + stack.pop()); // 96
  8.2909 +    case 437: stack.push(arg3); // 45
  8.2910 +    case 438: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_consVIIAC(stack.pop(), v0, v1, v2); } // 183 1 137
  8.2911 +    case 441: return stack.pop(); // 176
  8.2912 +  }
  8.2913 +}
  8.2914 +function java_lang_String_toUpperCaseLjava_lang_String(arg0) {
  8.2915 +  var arg1;
  8.2916 +;
  8.2917 +  var stack = new Array(2);
  8.2918 +  var gt = 0;
  8.2919 +  for(;;) switch(gt) {
  8.2920 +    case 0: stack.push(arg0); // 42
  8.2921 +    case 1: { stack.push(java_util_Locale_getDefaultLjava_util_Locale()); } // 184 1 179
  8.2922 +    case 4: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.toUpperCaseLjava_lang_StringLjava_util_Locale(self, v0)); } // 182 1 159
  8.2923 +    case 7: return stack.pop(); // 176
  8.2924 +  }
  8.2925 +}
  8.2926 +function java_lang_String_trimLjava_lang_String(arg0) {
  8.2927 +  var arg1;
  8.2928 +  var arg2;
  8.2929 +  var arg3;
  8.2930 +  var arg4;
  8.2931 +  var arg5;
  8.2932 +;
  8.2933 +  var stack = new Array(3);
  8.2934 +  var gt = 0;
  8.2935 +  for(;;) switch(gt) {
  8.2936 +    case 0: stack.push(arg0); // 42
  8.2937 +    case 1: stack.push(stack.pop().count); // 180 1 97
  8.2938 +    case 4: arg1 = stack.pop(); // 60
  8.2939 +    case 5: stack.push(0); // 3
  8.2940 +    case 6: arg2 = stack.pop(); // 61
  8.2941 +    case 7: stack.push(arg0); // 42
  8.2942 +    case 8: stack.push(stack.pop().offset); // 180 1 99
  8.2943 +    case 11: arg3 = stack.pop(); // 62
  8.2944 +    case 12: stack.push(arg0); // 42
  8.2945 +    case 13: stack.push(stack.pop().value); // 180 1 100
  8.2946 +    case 16: arg4 = stack.pop() // 58 4
  8.2947 +    case 18: stack.push(arg2); // 28
  8.2948 +    case 19: stack.push(arg1); // 27
  8.2949 +    case 20: if (stack.pop() <= stack.pop()) { gt = 40; continue; } // 162 0 20
  8.2950 +    case 23: stack.push(arg4); // 25 4
  8.2951 +    case 25: stack.push(arg3); // 29
  8.2952 +    case 26: stack.push(arg2); // 28
  8.2953 +    case 27: stack.push(stack.pop() + stack.pop()); // 96
  8.2954 +    case 28: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.2955 +    case 29: stack.push(32); // 16 32
  8.2956 +    case 31: if (stack.pop() < stack.pop()) { gt = 40; continue; } // 163 0 9
  8.2957 +    case 34: arg2++; // 132 2 1
  8.2958 +    case 37: gt = 18; continue; // 167 255 237
  8.2959 +    case 40: stack.push(arg2); // 28
  8.2960 +    case 41: stack.push(arg1); // 27
  8.2961 +    case 42: if (stack.pop() <= stack.pop()) { gt = 64; continue; } // 162 0 22
  8.2962 +    case 45: stack.push(arg4); // 25 4
  8.2963 +    case 47: stack.push(arg3); // 29
  8.2964 +    case 48: stack.push(arg1); // 27
  8.2965 +    case 49: stack.push(stack.pop() + stack.pop()); // 96
  8.2966 +    case 50: stack.push(1); // 4
  8.2967 +    case 51: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
  8.2968 +    case 52: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
  8.2969 +    case 53: stack.push(32); // 16 32
  8.2970 +    case 55: if (stack.pop() < stack.pop()) { gt = 64; continue; } // 163 0 9
  8.2971 +    case 58: arg1 += 255; // 132 1 255
  8.2972 +    case 61: gt = 40; continue; // 167 255 235
  8.2973 +    case 64: stack.push(arg2); // 28
  8.2974 +    case 65: if (stack.pop() > 0) { gt = 76; continue; } // 157 0 11
  8.2975 +    case 68: stack.push(arg1); // 27
  8.2976 +    case 69: stack.push(arg0); // 42
  8.2977 +    case 70: stack.push(stack.pop().count); // 180 1 97
  8.2978 +    case 73: if (stack.pop() <= stack.pop()) { gt = 85; continue; } // 162 0 12
  8.2979 +    case 76: stack.push(arg0); // 42
  8.2980 +    case 77: stack.push(arg2); // 28
  8.2981 +    case 78: stack.push(arg1); // 27
  8.2982 +    case 79: { var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); stack.push(self.substringLjava_lang_StringII(self, v0, v1)); } // 182 1 147
  8.2983 +    case 82: gt = 86; continue; // 167 0 4
  8.2984 +    case 85: stack.push(arg0); // 42
  8.2985 +    case 86: return stack.pop(); // 176
  8.2986 +  }
  8.2987 +}
  8.2988 +*/
  8.2989 +function java_lang_String_toStringLjava_lang_String(arg0) {
  8.2990 +    return arg0.toString();
  8.2991 +}
  8.2992 +/*
  8.2993 +function java_lang_String_toCharArrayAC(arg0) {
  8.2994 +  var arg1;
  8.2995 +  var arg2;
  8.2996 +;
  8.2997 +  var stack = new Array(5);
  8.2998 +  var gt = 0;
  8.2999 +  for(;;) switch(gt) {
  8.3000 +    case 0: stack.push(arg0); // 42
  8.3001 +    case 1: stack.push(stack.pop().count); // 180 1 97
  8.3002 +    case 4: stack.push(new Array(stack.pop())); // 188 5
  8.3003 +    case 6: arg1 = stack.pop(); // 76
  8.3004 +    case 7: stack.push(arg0); // 42
  8.3005 +    case 8: stack.push(0); // 3
  8.3006 +    case 9: stack.push(arg0); // 42
  8.3007 +    case 10: stack.push(stack.pop().count); // 180 1 97
  8.3008 +    case 13: stack.push(arg1); // 43
  8.3009 +    case 14: stack.push(0); // 3
  8.3010 +    case 15: { var v3 = stack.pop(); var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); self.getCharsVIIACAI(self, v0, v1, v2, v3); } // 182 1 138
  8.3011 +    case 18: stack.push(arg1); // 43
  8.3012 +    case 19: return stack.pop(); // 176
  8.3013 +  }
  8.3014 +}
  8.3015 +function java_lang_String_formatLjava_lang_StringLjava_lang_StringLjava_lang_Object(arg0,arg1) {
  8.3016 +  var stack = new Array();
  8.3017 +  var gt = 0;
  8.3018 +  for(;;) switch(gt) {
  8.3019 +    case 0: stack.push(new java_util_Formatter); // 187 0 211
  8.3020 +    case 3: stack.push(stack[stack.length - 1]); // 89
  8.3021 +    case 4: { java_util_Formatter_consV(stack.pop()); } // 183 1 174
  8.3022 +    case 7: stack.push(arg0); // 42
  8.3023 +    case 8: stack.push(arg1); // 43
  8.3024 +    case 9: { var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); stack.push(self.formatALjava_util_FormatterLjava_lang_StringALjava_lang_Object(self, v0, v1)); } // 182 1 177
  8.3025 +    case 12: { var self = stack.pop(); stack.push(self.toStringLjava_lang_String(self)); } // 182 1 175
  8.3026 +    case 15: return stack.pop(); // 176
  8.3027 +  }
  8.3028 +}
  8.3029 +function java_lang_String_formatLjava_lang_StringLjava_util_LocaleLjava_lang_StringLjava_lang_Object(arg0,arg1,arg2) {
  8.3030 +  var stack = new Array();
  8.3031 +  var gt = 0;
  8.3032 +  for(;;) switch(gt) {
  8.3033 +    case 0: stack.push(new java_util_Formatter); // 187 0 211
  8.3034 +    case 3: stack.push(stack[stack.length - 1]); // 89
  8.3035 +    case 4: stack.push(arg0); // 42
  8.3036 +    case 5: { var v0 = stack.pop(); java_util_Formatter_consVLjava_util_Locale(stack.pop(), v0); } // 183 1 176
  8.3037 +    case 8: stack.push(arg1); // 43
  8.3038 +    case 9: stack.push(arg2); // 44
  8.3039 +    case 10: { var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); stack.push(self.formatALjava_util_FormatterLjava_lang_StringALjava_lang_Object(self, v0, v1)); } // 182 1 177
  8.3040 +    case 13: { var self = stack.pop(); stack.push(self.toStringLjava_lang_String(self)); } // 182 1 175
  8.3041 +    case 16: return stack.pop(); // 176
  8.3042 +  }
  8.3043 +}
  8.3044 +function java_lang_String_valueOfLjava_lang_StringLjava_lang_Object(arg0) {
  8.3045 +  var stack = new Array();
  8.3046 +  var gt = 0;
  8.3047 +  for(;;) switch(gt) {
  8.3048 +    case 0: stack.push(arg0); // 42
  8.3049 +    case 1: if (stack.pop()) { gt = 9; continue; } // 199 0 8
  8.3050 +    case 4: stack.push("null"); // 18 10
  8.3051 +    case 6: gt = 13; continue; // 167 0 7
  8.3052 +    case 9: stack.push(arg0); // 42
  8.3053 +    case 10: { var self = stack.pop(); stack.push(self.toStringLjava_lang_String(self)); } // 182 1 132
  8.3054 +    case 13: return stack.pop(); // 176
  8.3055 +  }
  8.3056 +}
  8.3057 +function java_lang_String_valueOfLjava_lang_StringAC(arg0) {
  8.3058 +  var stack = new Array();
  8.3059 +  var gt = 0;
  8.3060 +  for(;;) switch(gt) {
  8.3061 +    case 0: stack.push(new java_lang_String); // 187 0 200
  8.3062 +    case 3: stack.push(stack[stack.length - 1]); // 89
  8.3063 +    case 4: stack.push(arg0); // 42
  8.3064 +    case 5: { var v0 = stack.pop(); java_lang_String_consVAC(stack.pop(), v0); } // 183 1 142
  8.3065 +    case 8: return stack.pop(); // 176
  8.3066 +  }
  8.3067 +}
  8.3068 +function java_lang_String_valueOfLjava_lang_StringACII(arg0,arg1,arg2) {
  8.3069 +  var stack = new Array();
  8.3070 +  var gt = 0;
  8.3071 +  for(;;) switch(gt) {
  8.3072 +    case 0: stack.push(new java_lang_String); // 187 0 200
  8.3073 +    case 3: stack.push(stack[stack.length - 1]); // 89
  8.3074 +    case 4: stack.push(arg0); // 42
  8.3075 +    case 5: stack.push(arg1); // 27
  8.3076 +    case 6: stack.push(arg2); // 28
  8.3077 +    case 7: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_consVACAIAI(stack.pop(), v0, v1, v2); } // 183 1 143
  8.3078 +    case 10: return stack.pop(); // 176
  8.3079 +  }
  8.3080 +}
  8.3081 +function java_lang_String_copyValueOfLjava_lang_StringACII(arg0,arg1,arg2) {
  8.3082 +  var stack = new Array();
  8.3083 +  var gt = 0;
  8.3084 +  for(;;) switch(gt) {
  8.3085 +    case 0: stack.push(new java_lang_String); // 187 0 200
  8.3086 +    case 3: stack.push(stack[stack.length - 1]); // 89
  8.3087 +    case 4: stack.push(arg0); // 42
  8.3088 +    case 5: stack.push(arg1); // 27
  8.3089 +    case 6: stack.push(arg2); // 28
  8.3090 +    case 7: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_consVACAIAI(stack.pop(), v0, v1, v2); } // 183 1 143
  8.3091 +    case 10: return stack.pop(); // 176
  8.3092 +  }
  8.3093 +}
  8.3094 +function java_lang_String_copyValueOfLjava_lang_StringAC(arg0) {
  8.3095 +  var stack = new Array();
  8.3096 +  var gt = 0;
  8.3097 +  for(;;) switch(gt) {
  8.3098 +    case 0: stack.push(arg0); // 42
  8.3099 +    case 1: stack.push(0); // 3
  8.3100 +    case 2: stack.push(arg0); // 42
  8.3101 +    case 3: stack.push(stack.pop().length); // 190
  8.3102 +    case 4: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_String_copyValueOfALjava_lang_StringACAIAI(v0, v1, v2)); } // 184 1 155
  8.3103 +    case 7: return stack.pop(); // 176
  8.3104 +  }
  8.3105 +}
  8.3106 +function java_lang_String_valueOfLjava_lang_StringZ(arg0) {
  8.3107 +  var stack = new Array();
  8.3108 +  var gt = 0;
  8.3109 +  for(;;) switch(gt) {
  8.3110 +    case 0: stack.push(arg0); // 26
  8.3111 +    case 1: if (stack.pop() == 0) { gt = 9; continue; } // 153 0 8
  8.3112 +    case 4: stack.push("true"); // 18 12
  8.3113 +    case 6: gt = 11; continue; // 167 0 5
  8.3114 +    case 9: stack.push("false"); // 18 8
  8.3115 +    case 11: return stack.pop(); // 176
  8.3116 +  }
  8.3117 +}
  8.3118 +function java_lang_String_valueOfLjava_lang_StringC(arg0) {
  8.3119 +  var arg1;
  8.3120 +  var stack = new Array();
  8.3121 +  var gt = 0;
  8.3122 +  for(;;) switch(gt) {
  8.3123 +    case 0: stack.push(1); // 4
  8.3124 +    case 1: stack.push(new Array(stack.pop())); // 188 5
  8.3125 +    case 3: stack.push(stack[stack.length - 1]); // 89
  8.3126 +    case 4: stack.push(0); // 3
  8.3127 +    case 5: stack.push(arg0); // 26
  8.3128 +    case 6: { var value = stack.pop(); var indx = stack.pop(); stack.pop()[indx] = value; } // 85
  8.3129 +    case 7: arg1 = stack.pop(); // 76
  8.3130 +    case 8: stack.push(new java_lang_String); // 187 0 200
  8.3131 +    case 11: stack.push(stack[stack.length - 1]); // 89
  8.3132 +    case 12: stack.push(0); // 3
  8.3133 +    case 13: stack.push(1); // 4
  8.3134 +    case 14: stack.push(arg1); // 43
  8.3135 +    case 15: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_consVIIAC(stack.pop(), v0, v1, v2); } // 183 1 137
  8.3136 +    case 18: return stack.pop(); // 176
  8.3137 +  }
  8.3138 +}
  8.3139 +function java_lang_String_valueOfLjava_lang_StringI(arg0) {
  8.3140 +  var stack = new Array();
  8.3141 +  var gt = 0;
  8.3142 +  for(;;) switch(gt) {
  8.3143 +    case 0: stack.push(arg0); // 26
  8.3144 +    case 1: stack.push(10); // 16 10
  8.3145 +    case 3: { var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_Integer_toStringLjava_lang_StringII(v0, v1)); } // 184 1 125
  8.3146 +    case 6: return stack.pop(); // 176
  8.3147 +  }
  8.3148 +}
  8.3149 +function java_lang_String_valueOfLjava_lang_StringJ(arg0) {
  8.3150 +  var arg1;
  8.3151 +  var stack = new Array();
  8.3152 +  var gt = 0;
  8.3153 +  for(;;) switch(gt) {
  8.3154 +    case 0: stack.push(arg0); // 30
  8.3155 +    case 1: stack.push(10); // 16 10
  8.3156 +    case 3: { var v1 = stack.pop(); var v0 = stack.pop(); stack.push(java_lang_Long_toStringLjava_lang_StringJI(v0, v1)); } // 184 1 126
  8.3157 +    case 6: return stack.pop(); // 176
  8.3158 +  }
  8.3159 +}
  8.3160 +function java_lang_String_valueOfLjava_lang_StringF(arg0) {
  8.3161 +  var stack = new Array();
  8.3162 +  var gt = 0;
  8.3163 +  for(;;) switch(gt) {
  8.3164 +    case 0: stack.push(arg0); // 34
  8.3165 +    case 1: { var v0 = stack.pop(); stack.push(java_lang_Float_toStringLjava_lang_StringF(v0)); } // 184 1 122
  8.3166 +    case 4: return stack.pop(); // 176
  8.3167 +  }
  8.3168 +}
  8.3169 +function java_lang_String_valueOfLjava_lang_StringD(arg0) {
  8.3170 +  var arg1;
  8.3171 +  var stack = new Array();
  8.3172 +  var gt = 0;
  8.3173 +  for(;;) switch(gt) {
  8.3174 +    case 0: stack.push(arg0); // 38
  8.3175 +    case 1: { var v0 = stack.pop(); stack.push(java_lang_Double_toStringLjava_lang_StringD(v0)); } // 184 1 121
  8.3176 +    case 4: return stack.pop(); // 176
  8.3177 +  }
  8.3178 +}
  8.3179 +function java_lang_String_internLjava_lang_String(arg0) {
  8.3180 +  // no code found for null 
  8.3181 +}
  8.3182 +function java_lang_String_compareToILjava_lang_Object(arg0,arg1) {
  8.3183 +  var arg2;
  8.3184 +;
  8.3185 +  var stack = new Array(2);
  8.3186 +  var gt = 0;
  8.3187 +  for(;;) switch(gt) {
  8.3188 +    case 0: stack.push(arg0); // 42
  8.3189 +    case 1: stack.push(arg1); // 43
  8.3190 +    case 2: if(stack[stack.length - 1].$instOf_java_lang_String != 1) throw {}; // 192 0 200
  8.3191 +    case 5: { var v0 = stack.pop(); var self = stack.pop(); stack.push(self.compareToILjava_lang_String(self, v0)); } // 182 1 148
  8.3192 +    case 8: return stack.pop(); // 172
  8.3193 +  }
  8.3194 +}
  8.3195 +function java_lang_String_classV() {
  8.3196 +  var stack = new Array();
  8.3197 +  var gt = 0;
  8.3198 +  for(;;) switch(gt) {
  8.3199 +    case 0: stack.push(0); // 3
  8.3200 +    case 1: stack.push(new Array(stack.pop())); // 189 0 183
  8.3201 +    case 4: java_lang_String_serialPersistentFields = stack.pop(); // 179 1 101
  8.3202 +    case 7: stack.push(new java_lang_String$CaseInsensitiveComparator); // 187 0 202
  8.3203 +    case 10: stack.push(stack[stack.length - 1]); // 89
  8.3204 +    case 11:  // 1
  8.3205 +    case 12: { var v0 = stack.pop(); java_lang_String$CaseInsensitiveComparator_consVLjava_lang_String$1(stack.pop(), v0); } // 183 1 160
  8.3206 +    case 15: java_lang_String_CASE_INSENSITIVE_ORDER = stack.pop(); // 179 1 102
  8.3207 +    case 18: return; // 177
  8.3208 +  }
  8.3209 +}
  8.3210 +*/
  8.3211 +var java_lang_String_serialVersionUID = 0;
  8.3212 +var java_lang_String_serialPersistentFields = 0;
  8.3213 +var java_lang_String_CASE_INSENSITIVE_ORDER = 0;
  8.3214 +function java_lang_String() {
  8.3215 +  /** the real value of this 'string' we delegate to */
  8.3216 +  this.r = '';
  8.3217 +  
  8.3218 +  var self = this;
  8.3219 +    /*
  8.3220 +  this.value = 0;
  8.3221 +  this.offset = 0;
  8.3222 +  this.count = 0;
  8.3223 +  this.hash = 0;
  8.3224 +  */
  8.3225 +  this.toString = function() { return self.r; };
  8.3226 +}
  8.3227 +java_lang_String.prototype = new String;
  8.3228 +//java_lang_String_classV();
  8.3229 +
  8.3230 +/* new method for JavaScript String */
  8.3231 +String.prototype.charAtCI = java_lang_String_charAtCI;
  8.3232 +String.prototype.lengthI = java_lang_String_lengthI;
  8.3233 +String.prototype.isEmptyZ = java_lang_String_isEmptyZ;
  8.3234 +String.prototype.getCharsVIIACAI = java_lang_String_getCharsVIIACAI;
  8.3235 +String.prototype.toStringLjava_lang_String = java_lang_String_toStringLjava_lang_String;
  8.3236 +String.prototype.$instOf_java_lang_String = true;
  8.3237 +String.prototype.$instOf_java_io_Serializable = true;
  8.3238 +String.prototype.$instOf_java_lang_Comparable = true;
  8.3239 +String.prototype.$instOf_java_lang_CharSequence = true;
  8.3240 +
  8.3241 +/*
  8.3242 +  this.lengthI = java_lang_String_lengthI;
  8.3243 +  this.isEmptyZ = java_lang_String_isEmptyZ;
  8.3244 +  this.charAtCI = java_lang_String_charAtCI;
  8.3245 +  this.codePointAtII = java_lang_String_codePointAtII;
  8.3246 +  this.codePointBeforeII = java_lang_String_codePointBeforeII;
  8.3247 +  this.codePointCountIII = java_lang_String_codePointCountIII;
  8.3248 +  this.offsetByCodePointsIII = java_lang_String_offsetByCodePointsIII;
  8.3249 +  this.getCharsVACI = java_lang_String_getCharsVACI;
  8.3250 +  this.getCharsVIIACI = java_lang_String_getCharsVIIACI;
  8.3251 +  this.getBytesVIIABI = java_lang_String_getBytesVIIABI;
  8.3252 +  this.getBytesABLjava_lang_String = java_lang_String_getBytesABLjava_lang_String;
  8.3253 +  this.getBytesABLjava_nio_charset_Charset = java_lang_String_getBytesABLjava_nio_charset_Charset;
  8.3254 +  this.getBytesAB = java_lang_String_getBytesAB;
  8.3255 +  this.equalsZLjava_lang_Object = java_lang_String_equalsZLjava_lang_Object;
  8.3256 +  this.contentEqualsZLjava_lang_StringBuffer = java_lang_String_contentEqualsZLjava_lang_StringBuffer;
  8.3257 +  this.contentEqualsZLjava_lang_CharSequence = java_lang_String_contentEqualsZLjava_lang_CharSequence;
  8.3258 +  this.equalsIgnoreCaseZLjava_lang_String = java_lang_String_equalsIgnoreCaseZLjava_lang_String;
  8.3259 +  this.compareToILjava_lang_String = java_lang_String_compareToILjava_lang_String;
  8.3260 +  this.compareToIgnoreCaseILjava_lang_String = java_lang_String_compareToIgnoreCaseILjava_lang_String;
  8.3261 +  this.regionMatchesZILjava_lang_StringII = java_lang_String_regionMatchesZILjava_lang_StringII;
  8.3262 +  this.regionMatchesZZILjava_lang_StringII = java_lang_String_regionMatchesZZILjava_lang_StringII;
  8.3263 +  this.startsWithZLjava_lang_StringI = java_lang_String_startsWithZLjava_lang_StringI;
  8.3264 +  this.startsWithZLjava_lang_String = java_lang_String_startsWithZLjava_lang_String;
  8.3265 +  this.endsWithZLjava_lang_String = java_lang_String_endsWithZLjava_lang_String;
  8.3266 +  this.hashCodeI = java_lang_String_hashCodeI;
  8.3267 +  this.indexOfII = java_lang_String_indexOfII;
  8.3268 +  this.indexOfIII = java_lang_String_indexOfIII;
  8.3269 +  this.lastIndexOfII = java_lang_String_lastIndexOfII;
  8.3270 +  this.lastIndexOfIII = java_lang_String_lastIndexOfIII;
  8.3271 +  this.indexOfILjava_lang_String = java_lang_String_indexOfILjava_lang_String;
  8.3272 +  this.indexOfILjava_lang_StringI = java_lang_String_indexOfILjava_lang_StringI;
  8.3273 +  this.lastIndexOfILjava_lang_String = java_lang_String_lastIndexOfILjava_lang_String;
  8.3274 +  this.lastIndexOfILjava_lang_StringI = java_lang_String_lastIndexOfILjava_lang_StringI;
  8.3275 +  this.substringLjava_lang_StringI = java_lang_String_substringLjava_lang_StringI;
  8.3276 +  this.substringLjava_lang_StringII = java_lang_String_substringLjava_lang_StringII;
  8.3277 +  this.subSequenceLjava_lang_CharSequenceII = java_lang_String_subSequenceLjava_lang_CharSequenceII;
  8.3278 +  this.concatLjava_lang_StringLjava_lang_String = java_lang_String_concatLjava_lang_StringLjava_lang_String;
  8.3279 +  this.replaceLjava_lang_StringCC = java_lang_String_replaceLjava_lang_StringCC;
  8.3280 +  this.matchesZLjava_lang_String = java_lang_String_matchesZLjava_lang_String;
  8.3281 +  this.containsZLjava_lang_CharSequence = java_lang_String_containsZLjava_lang_CharSequence;
  8.3282 +  this.replaceFirstLjava_lang_StringLjava_lang_StringLjava_lang_String = java_lang_String_replaceFirstLjava_lang_StringLjava_lang_StringLjava_lang_String;
  8.3283 +  this.replaceAllLjava_lang_StringLjava_lang_StringLjava_lang_String = java_lang_String_replaceAllLjava_lang_StringLjava_lang_StringLjava_lang_String;
  8.3284 +  this.replaceLjava_lang_StringLjava_lang_CharSequenceLjava_lang_CharSequence = java_lang_String_replaceLjava_lang_StringLjava_lang_CharSequenceLjava_lang_CharSequence;
  8.3285 +  this.splitALjava_lang_StringLjava_lang_StringI = java_lang_String_splitALjava_lang_StringLjava_lang_StringI;
  8.3286 +  this.splitALjava_lang_StringLjava_lang_String = java_lang_String_splitALjava_lang_StringLjava_lang_String;
  8.3287 +  this.toLowerCaseLjava_lang_StringLjava_util_Locale = java_lang_String_toLowerCaseLjava_lang_StringLjava_util_Locale;
  8.3288 +  this.toLowerCaseLjava_lang_String = java_lang_String_toLowerCaseLjava_lang_String;
  8.3289 +  this.toUpperCaseLjava_lang_StringLjava_util_Locale = java_lang_String_toUpperCaseLjava_lang_StringLjava_util_Locale;
  8.3290 +  this.toUpperCaseLjava_lang_String = java_lang_String_toUpperCaseLjava_lang_String;
  8.3291 +  this.trimLjava_lang_String = java_lang_String_trimLjava_lang_String;
  8.3292 +  this.toStringLjava_lang_String = java_lang_String_toStringLjava_lang_String;
  8.3293 +  this.toCharArrayAC = java_lang_String_toCharArrayAC;
  8.3294 +  this.internLjava_lang_String = java_lang_String_internLjava_lang_String;
  8.3295 +  this.compareToILjava_lang_Object = java_lang_String_compareToILjava_lang_Object;
  8.3296 + */
  8.3297 +
  8.3298 +
  8.3299 +
     9.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     9.2 +++ b/vm/src/test/java/org/apidesign/vm4brwsr/StringSample.java	Wed Oct 03 08:19:44 2012 -0700
     9.3 @@ -0,0 +1,41 @@
     9.4 +package org.apidesign.vm4brwsr;
     9.5 +
     9.6 +import org.apidesign.bck2brwsr.core.ExtraJavaScript;
     9.7 +
     9.8 +/**
     9.9 + *
    9.10 + * @author Jaroslav Tulach <jtulach@netbeans.org>
    9.11 + */
    9.12 +@ExtraJavaScript(resource="/org/apidesign/vm4brwsr/emulation/java_lang_String.js")
    9.13 +public class StringSample {
    9.14 +    public static final String HELLO = "Hello World!";
    9.15 +    private static int counter;
    9.16 +    
    9.17 +    private final int cnt;
    9.18 +    public StringSample() {
    9.19 +        cnt = ++counter;
    9.20 +    }
    9.21 +    
    9.22 +    
    9.23 +    public static char sayHello(int indx) {
    9.24 +        return HELLO.charAt(indx);
    9.25 +    }
    9.26 +    
    9.27 +    public static String fromChars(char a, char b, char c) {
    9.28 +        char[] arr = { a, b, c };
    9.29 +        return new String(arr).toString();
    9.30 +    }
    9.31 +    
    9.32 +    public static String toStringTest(int howMuch) {
    9.33 +        StringSample ss = null;
    9.34 +        for (int i = 0; i < howMuch; i++) {
    9.35 +            ss = new StringSample();
    9.36 +        }
    9.37 +        return ss.toString();
    9.38 +    }
    9.39 +
    9.40 +    @Override
    9.41 +    public String toString() {
    9.42 +        return HELLO + cnt;
    9.43 +    }
    9.44 +}
    10.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.2 +++ b/vm/src/test/java/org/apidesign/vm4brwsr/StringTest.java	Wed Oct 03 08:19:44 2012 -0700
    10.3 @@ -0,0 +1,62 @@
    10.4 +package org.apidesign.vm4brwsr;
    10.5 +
    10.6 +import javax.script.Invocable;
    10.7 +import javax.script.ScriptException;
    10.8 +import org.testng.annotations.Test;
    10.9 +import static org.testng.Assert.*;
   10.10 +
   10.11 +/**
   10.12 + *
   10.13 + * @author Jaroslav Tulach <jtulach@netbeans.org>
   10.14 + */
   10.15 +public class StringTest {
   10.16 +    @Test public void firstChar() throws Exception {
   10.17 +        assertExec(
   10.18 +            "First char in Hello is H",
   10.19 +            "org_apidesign_vm4brwsr_StringSample_sayHelloCI",
   10.20 +            "H", 0
   10.21 +        );
   10.22 +    }
   10.23 +
   10.24 +    @Test public void fromChars() throws Exception {
   10.25 +        assertExec(
   10.26 +            "First char in Hello is ABC",
   10.27 +            "org_apidesign_vm4brwsr_StringSample_fromCharsLjava_lang_StringCCC",
   10.28 +            "ABC", 'A', 'B', 'C'
   10.29 +        );
   10.30 +    }
   10.31 +
   10.32 +    @Test public void toStringConcatenation() throws Exception {
   10.33 +        assertExec(
   10.34 +            "Five executions should generate 5Hello World!",
   10.35 +            "org_apidesign_vm4brwsr_StringSample_toStringTestLjava_lang_StringI",
   10.36 +            "5Hello World!", 5
   10.37 +        );
   10.38 +    }
   10.39 +    
   10.40 +    private static void assertExec(String msg, String methodName, Object expRes, Object... args) throws Exception {
   10.41 +        StringBuilder sb = new StringBuilder();
   10.42 +        Invocable i = StaticMethodTest.compileClass(sb, 
   10.43 +            "org/apidesign/vm4brwsr/StringSample",
   10.44 +            "java/lang/String"
   10.45 +        );
   10.46 +        
   10.47 +        Object ret = null;
   10.48 +        try {
   10.49 +            ret = i.invokeFunction(methodName, args);
   10.50 +        } catch (ScriptException ex) {
   10.51 +            fail("Execution failed in " + sb, ex);
   10.52 +        } catch (NoSuchMethodException ex) {
   10.53 +            fail("Cannot find method in " + sb, ex);
   10.54 +        }
   10.55 +        if (ret == null && expRes == null) {
   10.56 +            return;
   10.57 +        }
   10.58 +        if (expRes.equals(ret)) {
   10.59 +            return;
   10.60 +        }
   10.61 +        assertEquals(ret, expRes, msg + "was: " + ret + "\n" + sb);
   10.62 +        
   10.63 +    }
   10.64 +    
   10.65 +}