diff --git a/com.amd.aparapi/src/java/com/amd/aparapi/Instruction.java b/com.amd.aparapi/src/java/com/amd/aparapi/Instruction.java
index a2f0668cc3bf486c15430d785e9708b49570d113..2a74892c7bd22cea3e7d6ca51089d2b79844a0ce 100644
--- a/com.amd.aparapi/src/java/com/amd/aparapi/Instruction.java
+++ b/com.amd.aparapi/src/java/com/amd/aparapi/Instruction.java
@@ -161,7 +161,7 @@ abstract class Instruction{
       byteCode = _byteCode;
    }
 
-   protected Instruction(MethodModel _method, ByteCode _byteCode, ByteReader _byteReader) {
+   protected Instruction(MethodModel _method, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
       this(_method, _byteCode, _byteReader.getOffset() - 1);
    }
 
diff --git a/com.amd.aparapi/src/java/com/amd/aparapi/InstructionSet.java b/com.amd.aparapi/src/java/com/amd/aparapi/InstructionSet.java
index 80ad5b31fee06b8bd9d56562841b59436b7a8069..f4e2b0fad18b60d516dc4a42051604b5222604a6 100644
--- a/com.amd.aparapi/src/java/com/amd/aparapi/InstructionSet.java
+++ b/com.amd.aparapi/src/java/com/amd/aparapi/InstructionSet.java
@@ -680,14 +680,14 @@ class InstructionSet{
          return false;
       }
 
-      Instruction newInstruction(MethodModel _methodModel, ByteReader byteReader) {
+      Instruction newInstruction(MethodModel _methodModel, ByteReader byteReader, boolean _isWide) {
          Instruction newInstruction = null;
          if (clazz != null) {
 
             try {
 
-               Constructor<?> constructor = clazz.getDeclaredConstructor(MethodModel.class, ByteReader.class);
-               newInstruction = (Instruction) constructor.newInstance(_methodModel, byteReader);
+               Constructor<?> constructor = clazz.getDeclaredConstructor(MethodModel.class, ByteReader.class, boolean.class);
+               newInstruction = (Instruction) constructor.newInstance(_methodModel, byteReader, _isWide);
                newInstruction.setLength(byteReader.getOffset() - newInstruction.getThisPC());
             } catch (SecurityException e) {
                // TODO Auto-generated catch block
@@ -715,7 +715,14 @@ class InstructionSet{
 
       static Instruction create(MethodModel _methodModel, ByteReader _byteReader) {
          ByteCode byteCode = get(_byteReader.u1());
-         Instruction newInstruction = byteCode.newInstruction(_methodModel, _byteReader);
+         boolean isWide = false;
+         if (byteCode.equals(ByteCode.WIDE)){
+            // handle wide 
+            System.out.println("WIDE");
+            isWide = true;
+            byteCode = get(_byteReader.u1());
+         }
+         Instruction newInstruction = byteCode.newInstruction(_methodModel, _byteReader, isWide);
 
          return (newInstruction);
 
@@ -846,8 +853,8 @@ class InstructionSet{
 
    static abstract class OperatorInstruction extends Instruction{
 
-      protected OperatorInstruction(MethodModel _methodPoolEntry, ByteCode code, ByteReader reader) {
-         super(_methodPoolEntry, code, reader);
+      protected OperatorInstruction(MethodModel _methodPoolEntry, ByteCode code, ByteReader reader, boolean _wide) {
+         super(_methodPoolEntry, code, reader, _wide);
 
       }
 
@@ -867,8 +874,8 @@ class InstructionSet{
          return (getLastChild());
       }
 
-      protected BinaryOperator(MethodModel _methodPoolEntry, ByteCode code, ByteReader reader) {
-         super(_methodPoolEntry, code, reader);
+      protected BinaryOperator(MethodModel _methodPoolEntry, ByteCode code, ByteReader reader, boolean _wide) {
+         super(_methodPoolEntry, code, reader, _wide);
       }
 
    }
@@ -879,16 +886,16 @@ class InstructionSet{
          return (getFirstChild());
       }
 
-      protected UnaryOperator(MethodModel _methodPoolEntry, ByteCode code, ByteReader reader) {
-         super(_methodPoolEntry, code, reader);
+      protected UnaryOperator(MethodModel _methodPoolEntry, ByteCode code, ByteReader reader, boolean _wide) {
+         super(_methodPoolEntry, code, reader, _wide);
       }
 
    }
 
    static abstract class CastOperator extends UnaryOperator{
 
-      protected CastOperator(MethodModel _methodPoolEntry, ByteCode code, ByteReader reader) {
-         super(_methodPoolEntry, code, reader);
+      protected CastOperator(MethodModel _methodPoolEntry, ByteCode code, ByteReader reader, boolean _wide) {
+         super(_methodPoolEntry, code, reader, _wide);
       }
 
    }
@@ -908,8 +915,8 @@ class InstructionSet{
          return (offset);
       }
 
-      Branch(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      Branch(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
 
       }
 
@@ -989,8 +996,8 @@ class InstructionSet{
    static abstract class ConditionalBranch extends Branch{
       private BranchSet branchSet;
 
-      ConditionalBranch(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      ConditionalBranch(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
       }
 
       void setBranchSet(BranchSet _branchSet) {
@@ -1042,8 +1049,8 @@ class InstructionSet{
 
    static abstract class UnconditionalBranch extends Branch{
 
-      UnconditionalBranch(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      UnconditionalBranch(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
       }
 
       UnconditionalBranch(MethodModel _methodPoolEntry, ByteCode _byteCode, Instruction _target) {
@@ -1054,8 +1061,8 @@ class InstructionSet{
 
    static abstract class IfUnary extends ConditionalBranch16 implements Unary{
 
-      IfUnary(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      IfUnary(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
 
       }
 
@@ -1067,8 +1074,8 @@ class InstructionSet{
 
    static abstract class If extends ConditionalBranch16 implements Binary{
 
-      If(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      If(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
 
       }
 
@@ -1084,8 +1091,8 @@ class InstructionSet{
 
    static abstract class ConditionalBranch16 extends ConditionalBranch implements HasOperator{
 
-      ConditionalBranch16(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      ConditionalBranch16(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
          offset = _byteReader.s2();
 
       }
@@ -1097,8 +1104,8 @@ class InstructionSet{
 
    static abstract class UnconditionalBranch16 extends UnconditionalBranch{
 
-      UnconditionalBranch16(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      UnconditionalBranch16(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
          offset = _byteReader.s2();
 
       }
@@ -1106,8 +1113,8 @@ class InstructionSet{
    }
 
    static abstract class Branch32 extends UnconditionalBranch{
-      Branch32(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      Branch32(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
          offset = _byteReader.s4();
 
       }
@@ -1116,8 +1123,8 @@ class InstructionSet{
 
    static abstract class ArrayAccess extends Instruction{
 
-      protected ArrayAccess(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      protected ArrayAccess(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
 
       }
 
@@ -1132,14 +1139,14 @@ class InstructionSet{
    }
 
    static abstract class AccessArrayElement extends ArrayAccess{
-      protected AccessArrayElement(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      protected AccessArrayElement(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
       }
    }
 
    static class I_AALOAD extends AccessArrayElement{
-      I_AALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.AALOAD, _byteReader);
+      I_AALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.AALOAD, _byteReader, _wide);
 
       }
 
@@ -1155,16 +1162,16 @@ class InstructionSet{
          return (getFirstChild().getNextExpr().getNextExpr());
       }
 
-      protected AssignToArrayElement(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      protected AssignToArrayElement(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
 
       }
 
    }
 
    static class I_AASTORE extends AssignToArrayElement{
-      I_AASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.AASTORE, _byteReader);
+      I_AASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.AASTORE, _byteReader, _wide);
 
       }
 
@@ -1175,8 +1182,8 @@ class InstructionSet{
    }
 
    static class I_ACONST_NULL extends Instruction implements Constant<Object>{
-      I_ACONST_NULL(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ACONST_NULL, _byteReader);
+      I_ACONST_NULL(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ACONST_NULL, _byteReader, _wide);
 
       }
 
@@ -1191,8 +1198,8 @@ class InstructionSet{
    }
 
    static abstract class LocalVariableConstIndexAccessor extends IndexConst implements AccessLocalVariable{
-      LocalVariableConstIndexAccessor(MethodModel methodPoolEntry, ByteCode byteCode, ByteReader byteReader, int index) {
-         super(methodPoolEntry, byteCode, byteReader, index);
+      LocalVariableConstIndexAccessor(MethodModel methodPoolEntry, ByteCode byteCode, ByteReader byteReader, boolean _wide, int index) {
+         super(methodPoolEntry, byteCode, byteReader, _wide, index);
       }
 
       @Override public final int getLocalVariableTableIndex() {
@@ -1205,8 +1212,8 @@ class InstructionSet{
    }
 
    static abstract class LocalVariableConstIndexLoad extends LocalVariableConstIndexAccessor{
-      LocalVariableConstIndexLoad(MethodModel methodPoolEntry, ByteCode byteCode, ByteReader byteReader, int index) {
-         super(methodPoolEntry, byteCode, byteReader, index);
+      LocalVariableConstIndexLoad(MethodModel methodPoolEntry, ByteCode byteCode, ByteReader byteReader, boolean _wide, int index) {
+         super(methodPoolEntry, byteCode, byteReader, _wide, index);
       }
 
       @Override final String getDescription() {
@@ -1216,8 +1223,8 @@ class InstructionSet{
    }
 
    static abstract class LocalVariableConstIndexStore extends LocalVariableConstIndexAccessor implements AssignToLocalVariable{
-      LocalVariableConstIndexStore(MethodModel methodPoolEntry, ByteCode byteCode, ByteReader byteReader, int index) {
-         super(methodPoolEntry, byteCode, byteReader, index);
+      LocalVariableConstIndexStore(MethodModel methodPoolEntry, ByteCode byteCode, ByteReader byteReader, boolean _wide,int index) {
+         super(methodPoolEntry, byteCode, byteReader, _wide,index);
       }
 
       @Override public boolean isDeclaration() {
@@ -1231,8 +1238,8 @@ class InstructionSet{
    }
 
    static abstract class LocalVariableIndex08Accessor extends Index08 implements AccessLocalVariable{
-      LocalVariableIndex08Accessor(MethodModel methodPoolEntry, ByteCode byteCode, ByteReader byteReader) {
-         super(methodPoolEntry, byteCode, byteReader);
+      LocalVariableIndex08Accessor(MethodModel methodPoolEntry, ByteCode byteCode, ByteReader byteReader, boolean _wide) {
+         super(methodPoolEntry, byteCode, byteReader, _wide);
       }
 
       @Override public final int getLocalVariableTableIndex() {
@@ -1245,8 +1252,8 @@ class InstructionSet{
    }
 
    static abstract class LocalVariableIndex08Load extends LocalVariableIndex08Accessor{
-      LocalVariableIndex08Load(MethodModel methodPoolEntry, ByteCode byteCode, ByteReader byteReader) {
-         super(methodPoolEntry, byteCode, byteReader);
+      LocalVariableIndex08Load(MethodModel methodPoolEntry, ByteCode byteCode, ByteReader byteReader, boolean _wide) {
+         super(methodPoolEntry, byteCode, byteReader, _wide);
       }
 
       @Override final String getDescription() {
@@ -1256,8 +1263,8 @@ class InstructionSet{
    }
 
    static abstract class LocalVariableIndex08Store extends LocalVariableIndex08Accessor implements AssignToLocalVariable{
-      LocalVariableIndex08Store(MethodModel methodPoolEntry, ByteCode byteCode, ByteReader byteReader) {
-         super(methodPoolEntry, byteCode, byteReader);
+      LocalVariableIndex08Store(MethodModel methodPoolEntry, ByteCode byteCode, ByteReader byteReader, boolean _wide) {
+         super(methodPoolEntry, byteCode, byteReader, _wide);
       }
 
       @Override public boolean isDeclaration() {
@@ -1274,43 +1281,43 @@ class InstructionSet{
    }
 
    static class I_ALOAD extends LocalVariableIndex08Load{
-      I_ALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ALOAD, _byteReader);
+      I_ALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ALOAD, _byteReader, _wide);
 
       }
 
    }
 
    static class I_ALOAD_0 extends LocalVariableConstIndexLoad{
-      I_ALOAD_0(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ALOAD_0, _byteReader, 0);
+      I_ALOAD_0(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ALOAD_0, _byteReader, _wide, 0);
       }
    }
 
    static class I_ALOAD_1 extends LocalVariableConstIndexLoad{
-      I_ALOAD_1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ALOAD_1, _byteReader, 1);
+      I_ALOAD_1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ALOAD_1, _byteReader, _wide, 1);
 
       }
 
    }
 
    static class I_ALOAD_2 extends LocalVariableConstIndexLoad{
-      I_ALOAD_2(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ALOAD_2, _byteReader, 2);
+      I_ALOAD_2(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ALOAD_2, _byteReader, _wide, 2);
       }
    }
 
    static class I_ALOAD_3 extends LocalVariableConstIndexLoad{
-      I_ALOAD_3(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ALOAD_3, _byteReader, 3);
+      I_ALOAD_3(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ALOAD_3, _byteReader, _wide, 3);
       }
    }
 
    static class I_ANEWARRAY extends Index16 implements New{
 
-      I_ANEWARRAY(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ANEWARRAY, _byteReader);
+      I_ANEWARRAY(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ANEWARRAY, _byteReader, _wide);
 
       }
 
@@ -1321,8 +1328,8 @@ class InstructionSet{
    }
 
    static class I_ARETURN extends Return{
-      I_ARETURN(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ARETURN, _byteReader);
+      I_ARETURN(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ARETURN, _byteReader, _wide);
 
       }
 
@@ -1333,8 +1340,8 @@ class InstructionSet{
    }
 
    static class I_ARRAYLENGTH extends Instruction{
-      I_ARRAYLENGTH(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ARRAYLENGTH, _byteReader);
+      I_ARRAYLENGTH(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ARRAYLENGTH, _byteReader, _wide);
 
       }
 
@@ -1344,48 +1351,48 @@ class InstructionSet{
    }
 
    static class I_ASTORE extends LocalVariableIndex08Store{
-      I_ASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ASTORE, _byteReader);
+      I_ASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ASTORE, _byteReader, _wide);
 
       }
 
    }
 
    static class I_ASTORE_0 extends LocalVariableConstIndexStore{
-      I_ASTORE_0(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ASTORE_0, _byteReader, 0);
+      I_ASTORE_0(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ASTORE_0, _byteReader, _wide, 0);
 
       }
 
    }
 
    static class I_ASTORE_1 extends LocalVariableConstIndexStore{
-      I_ASTORE_1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ASTORE_1, _byteReader, 1);
+      I_ASTORE_1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ASTORE_1, _byteReader, _wide,1);
 
       }
 
    }
 
    static class I_ASTORE_2 extends LocalVariableConstIndexStore{
-      I_ASTORE_2(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ASTORE_2, _byteReader, 2);
+      I_ASTORE_2(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ASTORE_2, _byteReader, _wide, 2);
 
       }
 
    }
 
    static class I_ASTORE_3 extends LocalVariableConstIndexStore{
-      I_ASTORE_3(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ASTORE_3, _byteReader, 3);
+      I_ASTORE_3(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ASTORE_3, _byteReader, _wide,3);
 
       }
 
    }
 
    static class I_ATHROW extends Instruction{
-      I_ATHROW(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ATHROW, _byteReader);
+      I_ATHROW(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ATHROW, _byteReader, _wide);
 
       }
 
@@ -1396,8 +1403,8 @@ class InstructionSet{
    }
 
    static class I_BALOAD extends AccessArrayElement{
-      I_BALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.BALOAD, _byteReader);
+      I_BALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.BALOAD, _byteReader, _wide);
 
       }
 
@@ -1408,8 +1415,8 @@ class InstructionSet{
    }
 
    static class I_BASTORE extends AssignToArrayElement{
-      I_BASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.BASTORE, _byteReader);
+      I_BASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.BASTORE, _byteReader, _wide);
 
       }
 
@@ -1421,8 +1428,8 @@ class InstructionSet{
 
    static class I_BIPUSH extends ImmediateConstant<Integer>{
 
-      I_BIPUSH(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.BIPUSH, _byteReader);
+      I_BIPUSH(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.BIPUSH, _byteReader, _wide);
          value = _byteReader.u1();
 
       }
@@ -1441,8 +1448,8 @@ class InstructionSet{
    }
 
    static class I_CALOAD extends AccessArrayElement{
-      I_CALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.CALOAD, _byteReader);
+      I_CALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.CALOAD, _byteReader, _wide);
 
       }
 
@@ -1453,8 +1460,8 @@ class InstructionSet{
    }
 
    static class I_CASTORE extends AssignToArrayElement{
-      I_CASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.CASTORE, _byteReader);
+      I_CASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.CASTORE, _byteReader, _wide);
 
       }
 
@@ -1464,8 +1471,8 @@ class InstructionSet{
    }
 
    static class I_CHECKCAST extends Index16{
-      I_CHECKCAST(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.CHECKCAST, _byteReader);
+      I_CHECKCAST(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.CHECKCAST, _byteReader, _wide);
 
       }
 
@@ -1476,8 +1483,8 @@ class InstructionSet{
    }
 
    static class I_D2F extends CastOperator{
-      I_D2F(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.D2F, _byteReader);
+      I_D2F(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.D2F, _byteReader, _wide);
 
       }
 
@@ -1488,8 +1495,8 @@ class InstructionSet{
    }
 
    static class I_D2I extends CastOperator{
-      I_D2I(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.D2I, _byteReader);
+      I_D2I(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.D2I, _byteReader, _wide);
 
       }
 
@@ -1500,8 +1507,8 @@ class InstructionSet{
    }
 
    static class I_D2L extends CastOperator{
-      I_D2L(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.D2L, _byteReader);
+      I_D2L(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.D2L, _byteReader, _wide);
 
       }
 
@@ -1512,8 +1519,8 @@ class InstructionSet{
    }
 
    static class I_DADD extends BinaryOperator{
-      I_DADD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DADD, _byteReader);
+      I_DADD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DADD, _byteReader, _wide);
 
       }
 
@@ -1524,8 +1531,8 @@ class InstructionSet{
    }
 
    static class I_DALOAD extends AccessArrayElement{
-      I_DALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DALOAD, _byteReader);
+      I_DALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DALOAD, _byteReader, _wide);
 
       }
 
@@ -1536,8 +1543,8 @@ class InstructionSet{
    }
 
    static class I_DASTORE extends AssignToArrayElement{
-      I_DASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DASTORE, _byteReader);
+      I_DASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DASTORE, _byteReader, _wide);
 
       }
 
@@ -1548,8 +1555,8 @@ class InstructionSet{
    }
 
    static class I_DCMPG extends Instruction{
-      I_DCMPG(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DCMPG, _byteReader);
+      I_DCMPG(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DCMPG, _byteReader, _wide);
 
       }
 
@@ -1560,8 +1567,8 @@ class InstructionSet{
    }
 
    static class I_DCMPL extends Instruction{
-      I_DCMPL(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DCMPL, _byteReader);
+      I_DCMPL(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DCMPL, _byteReader, _wide);
 
       }
 
@@ -1574,8 +1581,8 @@ class InstructionSet{
    static abstract class BytecodeEncodedConstant<T> extends Instruction implements Constant<T>{
       private T value;
 
-      BytecodeEncodedConstant(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, T _value) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      BytecodeEncodedConstant(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide, T _value) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
          value = _value;
 
       }
@@ -1589,8 +1596,8 @@ class InstructionSet{
    static abstract class ImmediateConstant<T> extends Instruction implements Constant<T>{
       protected T value;
 
-      ImmediateConstant(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      ImmediateConstant(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
 
       }
 
@@ -1601,8 +1608,8 @@ class InstructionSet{
    }
 
    static class I_DCONST_0 extends BytecodeEncodedConstant<Double>{
-      I_DCONST_0(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DCONST_0, _byteReader, 0.0);
+      I_DCONST_0(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DCONST_0, _byteReader, _wide, 0.0);
 
       }
 
@@ -1613,8 +1620,8 @@ class InstructionSet{
    }
 
    static class I_DCONST_1 extends BytecodeEncodedConstant<Double>{
-      I_DCONST_1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DCONST_1, _byteReader, 1.0);
+      I_DCONST_1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DCONST_1, _byteReader, _wide,  1.0);
 
       }
 
@@ -1625,8 +1632,8 @@ class InstructionSet{
    }
 
    static class I_DDIV extends BinaryOperator{
-      I_DDIV(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DDIV, _byteReader);
+      I_DDIV(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DDIV, _byteReader, _wide);
 
       }
 
@@ -1637,48 +1644,48 @@ class InstructionSet{
    }
 
    static class I_DLOAD extends LocalVariableIndex08Load{
-      I_DLOAD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DLOAD, _byteReader);
+      I_DLOAD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DLOAD, _byteReader, _wide);
 
       }
 
    }
 
    static class I_DLOAD_0 extends LocalVariableConstIndexLoad{
-      I_DLOAD_0(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DLOAD_0, _byteReader, 0);
+      I_DLOAD_0(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DLOAD_0, _byteReader, _wide, 0);
 
       }
 
    }
 
    static class I_DLOAD_1 extends LocalVariableConstIndexLoad{
-      I_DLOAD_1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DLOAD_1, _byteReader, 1);
+      I_DLOAD_1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DLOAD_1, _byteReader, _wide, 1);
 
       }
 
    }
 
    static class I_DLOAD_2 extends LocalVariableConstIndexLoad{
-      I_DLOAD_2(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DLOAD_2, _byteReader, 2);
+      I_DLOAD_2(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DLOAD_2, _byteReader, _wide, 2);
 
       }
 
    }
 
    static class I_DLOAD_3 extends LocalVariableConstIndexLoad{
-      I_DLOAD_3(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DLOAD_3, _byteReader, 3);
+      I_DLOAD_3(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DLOAD_3, _byteReader, _wide, 3);
 
       }
 
    }
 
    static class I_DMUL extends BinaryOperator{
-      I_DMUL(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DMUL, _byteReader);
+      I_DMUL(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DMUL, _byteReader, _wide);
 
       }
 
@@ -1689,8 +1696,8 @@ class InstructionSet{
    }
 
    static class I_DNEG extends UnaryOperator{
-      I_DNEG(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DNEG, _byteReader);
+      I_DNEG(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DNEG, _byteReader, _wide);
 
       }
 
@@ -1701,8 +1708,8 @@ class InstructionSet{
    }
 
    static class I_DREM extends BinaryOperator{
-      I_DREM(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DREM, _byteReader);
+      I_DREM(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DREM, _byteReader, _wide);
 
       }
 
@@ -1713,8 +1720,8 @@ class InstructionSet{
    }
 
    static class I_DRETURN extends Return{
-      I_DRETURN(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DRETURN, _byteReader);
+      I_DRETURN(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DRETURN, _byteReader, _wide);
 
       }
 
@@ -1725,48 +1732,48 @@ class InstructionSet{
    }
 
    static class I_DSTORE extends LocalVariableIndex08Store{
-      I_DSTORE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DSTORE, _byteReader);
+      I_DSTORE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DSTORE, _byteReader, _wide);
 
       }
 
    }
 
    static class I_DSTORE_0 extends LocalVariableConstIndexStore{
-      I_DSTORE_0(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DSTORE_0, _byteReader, 0);
+      I_DSTORE_0(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DSTORE_0, _byteReader, _wide, 0);
 
       }
 
    }
 
    static class I_DSTORE_1 extends LocalVariableConstIndexStore{
-      I_DSTORE_1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DSTORE_1, _byteReader, 1);
+      I_DSTORE_1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DSTORE_1, _byteReader, _wide, 1);
 
       }
 
    }
 
    static class I_DSTORE_2 extends LocalVariableConstIndexStore{
-      I_DSTORE_2(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DSTORE_2, _byteReader, 2);
+      I_DSTORE_2(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DSTORE_2, _byteReader, _wide,2);
 
       }
 
    }
 
    static class I_DSTORE_3 extends LocalVariableConstIndexStore{
-      I_DSTORE_3(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DSTORE_3, _byteReader, 3);
+      I_DSTORE_3(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DSTORE_3, _byteReader, _wide,3);
 
       }
 
    }
 
    static class I_DSUB extends BinaryOperator{
-      I_DSUB(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DSUB, _byteReader);
+      I_DSUB(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DSUB, _byteReader, _wide);
 
       }
 
@@ -1777,15 +1784,15 @@ class InstructionSet{
    }
 
    static abstract class DUP extends Instruction{
-      DUP(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      DUP(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
 
       }
    }
 
    static class I_DUP extends DUP{
-      I_DUP(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DUP, _byteReader);
+      I_DUP(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DUP, _byteReader, _wide);
 
       }
 
@@ -1796,8 +1803,8 @@ class InstructionSet{
    }
 
    static class I_DUP_X1 extends DUP{
-      I_DUP_X1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DUP_X1, _byteReader);
+      I_DUP_X1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DUP_X1, _byteReader, _wide);
 
       }
 
@@ -1808,8 +1815,8 @@ class InstructionSet{
    }
 
    static class I_DUP_X2 extends DUP{
-      I_DUP_X2(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DUP_X2, _byteReader);
+      I_DUP_X2(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DUP_X2, _byteReader, _wide);
 
       }
 
@@ -1820,8 +1827,8 @@ class InstructionSet{
    }
 
    static class I_DUP2 extends DUP{
-      I_DUP2(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DUP2, _byteReader);
+      I_DUP2(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DUP2, _byteReader, _wide);
 
       }
 
@@ -1832,8 +1839,8 @@ class InstructionSet{
    }
 
    static class I_DUP2_X1 extends DUP{
-      I_DUP2_X1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DUP2_X1, _byteReader);
+      I_DUP2_X1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DUP2_X1, _byteReader, _wide);
 
       }
 
@@ -1844,8 +1851,8 @@ class InstructionSet{
    }
 
    static class I_DUP2_X2 extends DUP{
-      I_DUP2_X2(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.DUP_X2, _byteReader);
+      I_DUP2_X2(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.DUP_X2, _byteReader, _wide);
 
       }
 
@@ -1856,8 +1863,8 @@ class InstructionSet{
    }
 
    static class I_F2D extends CastOperator{
-      I_F2D(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.F2D, _byteReader);
+      I_F2D(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.F2D, _byteReader, _wide);
 
       }
 
@@ -1868,8 +1875,8 @@ class InstructionSet{
    }
 
    static class I_F2I extends CastOperator{
-      I_F2I(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.F2I, _byteReader);
+      I_F2I(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.F2I, _byteReader, _wide);
 
       }
 
@@ -1880,8 +1887,8 @@ class InstructionSet{
    }
 
    static class I_F2L extends CastOperator{
-      I_F2L(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.F2L, _byteReader);
+      I_F2L(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.F2L, _byteReader, _wide);
 
       }
 
@@ -1892,8 +1899,8 @@ class InstructionSet{
    }
 
    static class I_FADD extends BinaryOperator{
-      I_FADD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FADD, _byteReader);
+      I_FADD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FADD, _byteReader, _wide);
 
       }
 
@@ -1904,8 +1911,8 @@ class InstructionSet{
    }
 
    static class I_FALOAD extends AccessArrayElement{
-      I_FALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FALOAD, _byteReader);
+      I_FALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FALOAD, _byteReader, _wide);
 
       }
 
@@ -1916,8 +1923,8 @@ class InstructionSet{
    }
 
    static class I_FASTORE extends AssignToArrayElement{
-      I_FASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FASTORE, _byteReader);
+      I_FASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FASTORE, _byteReader, _wide);
 
       }
 
@@ -1928,8 +1935,8 @@ class InstructionSet{
    }
 
    static class I_FCMPG extends BinaryOperator{
-      I_FCMPG(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FCMPG, _byteReader);
+      I_FCMPG(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FCMPG, _byteReader, _wide);
 
       }
 
@@ -1940,8 +1947,8 @@ class InstructionSet{
    }
 
    static class I_FCMPL extends BinaryOperator{
-      I_FCMPL(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FCMPL, _byteReader);
+      I_FCMPL(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FCMPL, _byteReader, _wide);
 
       }
 
@@ -1952,8 +1959,8 @@ class InstructionSet{
    }
 
    static class I_FCONST_0 extends BytecodeEncodedConstant<Float>{
-      I_FCONST_0(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FCONST_0, _byteReader, 0f);
+      I_FCONST_0(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FCONST_0, _byteReader, _wide,0f);
 
       }
 
@@ -1964,8 +1971,8 @@ class InstructionSet{
    }
 
    static class I_FCONST_1 extends BytecodeEncodedConstant<Float>{
-      I_FCONST_1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FCONST_1, _byteReader, 1f);
+      I_FCONST_1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FCONST_1, _byteReader, _wide,  1f);
 
       }
 
@@ -1976,8 +1983,8 @@ class InstructionSet{
    }
 
    static class I_FCONST_2 extends BytecodeEncodedConstant<Float>{
-      I_FCONST_2(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FCONST_2, _byteReader, 2f);
+      I_FCONST_2(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FCONST_2, _byteReader, _wide, 2f);
 
       }
 
@@ -1988,8 +1995,8 @@ class InstructionSet{
    }
 
    static class I_FDIV extends BinaryOperator{
-      I_FDIV(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FDIV, _byteReader);
+      I_FDIV(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FDIV, _byteReader, _wide);
 
       }
 
@@ -2000,48 +2007,48 @@ class InstructionSet{
    }
 
    static class I_FLOAD extends LocalVariableIndex08Load{
-      I_FLOAD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FLOAD, _byteReader);
+      I_FLOAD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FLOAD, _byteReader, _wide);
 
       }
 
    }
 
    static class I_FLOAD_0 extends LocalVariableConstIndexLoad{
-      I_FLOAD_0(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FLOAD_0, _byteReader, 0);
+      I_FLOAD_0(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FLOAD_0, _byteReader, _wide, 0);
 
       }
 
    }
 
    static class I_FLOAD_1 extends LocalVariableConstIndexLoad{
-      I_FLOAD_1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FLOAD_1, _byteReader, 1);
+      I_FLOAD_1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FLOAD_1, _byteReader, _wide,  1);
 
       }
 
    }
 
    static class I_FLOAD_2 extends LocalVariableConstIndexLoad{
-      I_FLOAD_2(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FLOAD_2, _byteReader, 2);
+      I_FLOAD_2(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FLOAD_2, _byteReader, _wide, 2);
 
       }
 
    }
 
    static class I_FLOAD_3 extends LocalVariableConstIndexLoad{
-      I_FLOAD_3(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FLOAD_3, _byteReader, 3);
+      I_FLOAD_3(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FLOAD_3, _byteReader, _wide, 3);
 
       }
 
    }
 
    static class I_FMUL extends BinaryOperator{
-      I_FMUL(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FMUL, _byteReader);
+      I_FMUL(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FMUL, _byteReader, _wide);
 
       }
 
@@ -2052,8 +2059,8 @@ class InstructionSet{
    }
 
    static class I_FNEG extends UnaryOperator{
-      I_FNEG(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FNEG, _byteReader);
+      I_FNEG(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FNEG, _byteReader, _wide);
 
       }
 
@@ -2064,8 +2071,8 @@ class InstructionSet{
    }
 
    static class I_FREM extends BinaryOperator{
-      I_FREM(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FREM, _byteReader);
+      I_FREM(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FREM, _byteReader, _wide);
 
       }
 
@@ -2076,8 +2083,8 @@ class InstructionSet{
    }
 
    static class I_FRETURN extends Return{
-      I_FRETURN(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FRETURN, _byteReader);
+      I_FRETURN(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FRETURN, _byteReader, _wide);
 
       }
 
@@ -2088,48 +2095,48 @@ class InstructionSet{
    }
 
    static class I_FSTORE extends LocalVariableIndex08Store{
-      I_FSTORE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FSTORE, _byteReader);
+      I_FSTORE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FSTORE, _byteReader, _wide);
 
       }
 
    }
 
    static class I_FSTORE_0 extends LocalVariableConstIndexStore{
-      I_FSTORE_0(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FSTORE_0, _byteReader, 0);
+      I_FSTORE_0(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FSTORE_0, _byteReader, _wide,  0);
 
       }
 
    }
 
    static class I_FSTORE_1 extends LocalVariableConstIndexStore{
-      I_FSTORE_1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FSTORE_1, _byteReader, 1);
+      I_FSTORE_1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FSTORE_1, _byteReader, _wide, 1);
 
       }
 
    }
 
    static class I_FSTORE_2 extends LocalVariableConstIndexStore{
-      I_FSTORE_2(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FSTORE_2, _byteReader, 2);
+      I_FSTORE_2(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FSTORE_2, _byteReader, _wide, 2);
 
       }
 
    }
 
    static class I_FSTORE_3 extends LocalVariableConstIndexStore{
-      I_FSTORE_3(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FSTORE_3, _byteReader, 3);
+      I_FSTORE_3(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FSTORE_3, _byteReader, _wide,3);
 
       }
 
    }
 
    static class I_FSUB extends BinaryOperator{
-      I_FSUB(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.FSUB, _byteReader);
+      I_FSUB(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.FSUB, _byteReader, _wide);
 
       }
 
@@ -2140,8 +2147,8 @@ class InstructionSet{
    }
 
    static class I_GETFIELD extends Index16 implements AccessInstanceField{
-      I_GETFIELD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.GETFIELD, _byteReader);
+      I_GETFIELD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.GETFIELD, _byteReader, _wide);
 
       }
 
@@ -2172,8 +2179,8 @@ class InstructionSet{
    }
 
    static class I_GETSTATIC extends Index16 implements AccessField{
-      I_GETSTATIC(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.GETSTATIC, _byteReader);
+      I_GETSTATIC(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.GETSTATIC, _byteReader, _wide);
 
       }
 
@@ -2199,8 +2206,8 @@ class InstructionSet{
    }
 
    static class I_GOTO extends UnconditionalBranch16{
-      I_GOTO(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.GOTO, _byteReader);
+      I_GOTO(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.GOTO, _byteReader, _wide);
 
       }
 
@@ -2211,8 +2218,8 @@ class InstructionSet{
    }
 
    static class I_GOTO_W extends Branch32{
-      I_GOTO_W(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.GOTO_W, _byteReader);
+      I_GOTO_W(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.GOTO_W, _byteReader, _wide);
 
       }
 
@@ -2223,8 +2230,8 @@ class InstructionSet{
    }
 
    static class I_I2B extends CastOperator{
-      I_I2B(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.I2B, _byteReader);
+      I_I2B(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.I2B, _byteReader, _wide);
 
       }
 
@@ -2235,8 +2242,8 @@ class InstructionSet{
    }
 
    static class I_I2C extends CastOperator{
-      I_I2C(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.I2C, _byteReader);
+      I_I2C(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.I2C, _byteReader, _wide);
 
       }
 
@@ -2247,8 +2254,8 @@ class InstructionSet{
    }
 
    static class I_I2D extends CastOperator{
-      I_I2D(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.I2D, _byteReader);
+      I_I2D(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.I2D, _byteReader, _wide);
 
       }
 
@@ -2259,8 +2266,8 @@ class InstructionSet{
    }
 
    static class I_I2F extends CastOperator{
-      I_I2F(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.I2F, _byteReader);
+      I_I2F(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.I2F, _byteReader, _wide);
 
       }
 
@@ -2271,8 +2278,8 @@ class InstructionSet{
    }
 
    static class I_I2L extends CastOperator{
-      I_I2L(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.I2L, _byteReader);
+      I_I2L(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.I2L, _byteReader, _wide);
 
       }
 
@@ -2283,8 +2290,8 @@ class InstructionSet{
    }
 
    static class I_I2S extends CastOperator{
-      I_I2S(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.I2S, _byteReader);
+      I_I2S(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.I2S, _byteReader, _wide);
 
       }
 
@@ -2295,8 +2302,8 @@ class InstructionSet{
    }
 
    static class I_IADD extends BinaryOperator{
-      I_IADD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IADD, _byteReader);
+      I_IADD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IADD, _byteReader, _wide);
 
       }
 
@@ -2307,8 +2314,8 @@ class InstructionSet{
    }
 
    static class I_IALOAD extends AccessArrayElement{
-      I_IALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IALOAD, _byteReader);
+      I_IALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IALOAD, _byteReader, _wide);
 
       }
 
@@ -2319,8 +2326,8 @@ class InstructionSet{
    }
 
    static class I_IAND extends BinaryOperator{
-      I_IAND(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IAND, _byteReader);
+      I_IAND(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IAND, _byteReader, _wide);
 
       }
 
@@ -2331,8 +2338,8 @@ class InstructionSet{
    }
 
    static class I_IASTORE extends AssignToArrayElement{
-      I_IASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IASTORE, _byteReader);
+      I_IASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IASTORE, _byteReader, _wide);
 
       }
 
@@ -2343,8 +2350,8 @@ class InstructionSet{
    }
 
    static class I_ICONST_0 extends BytecodeEncodedConstant<Integer>{
-      I_ICONST_0(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ICONST_0, _byteReader, 0);
+      I_ICONST_0(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ICONST_0, _byteReader, _wide, 0);
 
       }
 
@@ -2355,8 +2362,8 @@ class InstructionSet{
    }
 
    static class I_ICONST_1 extends BytecodeEncodedConstant<Integer>{
-      I_ICONST_1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ICONST_1, _byteReader, 1);
+      I_ICONST_1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ICONST_1, _byteReader, _wide, 1);
 
       }
 
@@ -2367,8 +2374,8 @@ class InstructionSet{
    }
 
    static class I_ICONST_2 extends BytecodeEncodedConstant<Integer>{
-      I_ICONST_2(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ICONST_2, _byteReader, 2);
+      I_ICONST_2(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ICONST_2, _byteReader, _wide, 2);
 
       }
 
@@ -2379,8 +2386,8 @@ class InstructionSet{
    }
 
    static class I_ICONST_3 extends BytecodeEncodedConstant<Integer>{
-      I_ICONST_3(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ICONST_3, _byteReader, 3);
+      I_ICONST_3(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ICONST_3, _byteReader, _wide, 3);
 
       }
 
@@ -2391,8 +2398,8 @@ class InstructionSet{
    }
 
    static class I_ICONST_4 extends BytecodeEncodedConstant<Integer>{
-      I_ICONST_4(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ICONST_4, _byteReader, 4);
+      I_ICONST_4(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ICONST_4, _byteReader, _wide, 4);
 
       }
 
@@ -2403,8 +2410,8 @@ class InstructionSet{
    }
 
    static class I_ICONST_5 extends BytecodeEncodedConstant<Integer>{
-      I_ICONST_5(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ICONST_5, _byteReader, 5);
+      I_ICONST_5(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ICONST_5, _byteReader, _wide, 5);
 
       }
 
@@ -2415,8 +2422,8 @@ class InstructionSet{
    }
 
    static class I_ICONST_M1 extends BytecodeEncodedConstant<Integer>{
-      I_ICONST_M1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ICONST_M1, _byteReader, -1);
+      I_ICONST_M1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ICONST_M1, _byteReader, _wide, -1);
 
       }
 
@@ -2427,8 +2434,8 @@ class InstructionSet{
    }
 
    static class I_IDIV extends BinaryOperator{
-      I_IDIV(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IDIV, _byteReader);
+      I_IDIV(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IDIV, _byteReader, _wide);
 
       }
 
@@ -2439,8 +2446,8 @@ class InstructionSet{
    }
 
    static class I_IF_ACMPEQ extends If{
-      I_IF_ACMPEQ(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IF_ACMPEQ, _byteReader);
+      I_IF_ACMPEQ(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IF_ACMPEQ, _byteReader, _wide);
 
       }
 
@@ -2451,8 +2458,8 @@ class InstructionSet{
    }
 
    static class I_IF_ACMPNE extends If{
-      I_IF_ACMPNE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IF_ACMPNE, _byteReader);
+      I_IF_ACMPNE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IF_ACMPNE, _byteReader, _wide);
 
       }
 
@@ -2463,8 +2470,8 @@ class InstructionSet{
    }
 
    static class I_IF_ICMPEQ extends If{
-      I_IF_ICMPEQ(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IF_ICMPEQ, _byteReader);
+      I_IF_ICMPEQ(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IF_ICMPEQ, _byteReader, _wide);
 
       }
 
@@ -2475,8 +2482,8 @@ class InstructionSet{
    }
 
    static class I_IF_ICMPGE extends If{
-      I_IF_ICMPGE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IF_ICMPGE, _byteReader);
+      I_IF_ICMPGE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IF_ICMPGE, _byteReader, _wide);
 
       }
 
@@ -2487,8 +2494,8 @@ class InstructionSet{
    }
 
    static class I_IF_ICMPGT extends If{
-      I_IF_ICMPGT(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IF_ICMPGT, _byteReader);
+      I_IF_ICMPGT(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IF_ICMPGT, _byteReader, _wide);
 
       }
 
@@ -2499,8 +2506,8 @@ class InstructionSet{
    }
 
    static class I_IF_ICMPLE extends If{
-      I_IF_ICMPLE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IF_ICMPLE, _byteReader);
+      I_IF_ICMPLE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IF_ICMPLE, _byteReader, _wide);
 
       }
 
@@ -2511,8 +2518,8 @@ class InstructionSet{
    }
 
    static class I_IF_ICMPLT extends If{
-      I_IF_ICMPLT(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IF_ICMPLT, _byteReader);
+      I_IF_ICMPLT(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IF_ICMPLT, _byteReader, _wide);
 
       }
 
@@ -2523,8 +2530,8 @@ class InstructionSet{
    }
 
    static class I_IF_ICMPNE extends If{
-      I_IF_ICMPNE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IF_ICMPNE, _byteReader);
+      I_IF_ICMPNE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IF_ICMPNE, _byteReader, _wide);
 
       }
 
@@ -2535,8 +2542,8 @@ class InstructionSet{
    }
 
    static class I_IFEQ extends IfUnary{
-      I_IFEQ(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IFEQ, _byteReader);
+      I_IFEQ(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IFEQ, _byteReader, _wide);
 
       }
 
@@ -2547,8 +2554,8 @@ class InstructionSet{
    }
 
    static class I_IFGE extends IfUnary{
-      I_IFGE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IFGE, _byteReader);
+      I_IFGE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IFGE, _byteReader, _wide);
 
       }
 
@@ -2559,8 +2566,8 @@ class InstructionSet{
    }
 
    static class I_IFGT extends IfUnary{
-      I_IFGT(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IFGT, _byteReader);
+      I_IFGT(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IFGT, _byteReader, _wide);
 
       }
 
@@ -2571,8 +2578,8 @@ class InstructionSet{
    }
 
    static class I_IFLE extends IfUnary{
-      I_IFLE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IFLE, _byteReader);
+      I_IFLE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IFLE, _byteReader, _wide);
 
       }
 
@@ -2583,8 +2590,8 @@ class InstructionSet{
    }
 
    static class I_IFLT extends IfUnary{
-      I_IFLT(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IFLT, _byteReader);
+      I_IFLT(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IFLT, _byteReader, _wide);
 
       }
 
@@ -2595,8 +2602,8 @@ class InstructionSet{
    }
 
    static class I_IFNE extends IfUnary{
-      I_IFNE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IFNE, _byteReader);
+      I_IFNE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IFNE, _byteReader, _wide);
 
       }
 
@@ -2607,8 +2614,8 @@ class InstructionSet{
    }
 
    static class I_IFNONNULL extends ConditionalBranch16{
-      I_IFNONNULL(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IFNONNULL, _byteReader);
+      I_IFNONNULL(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IFNONNULL, _byteReader, _wide);
 
       }
 
@@ -2619,8 +2626,8 @@ class InstructionSet{
    }
 
    static class I_IFNULL extends ConditionalBranch16{
-      I_IFNULL(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IFNULL, _byteReader);
+      I_IFNULL(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IFNULL, _byteReader, _wide);
 
       }
 
@@ -2632,10 +2639,16 @@ class InstructionSet{
 
    static class I_IINC extends Index08{
       private int delta;
-
-      I_IINC(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IINC, _byteReader);
-         delta = _byteReader.u1();
+      private boolean wide;
+
+      I_IINC(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IINC, _byteReader, _wide);
+         wide = _wide;
+         if (wide){
+            delta = _byteReader.u2();
+         }else{
+            delta = _byteReader.u1();
+         }
 
       }
 
@@ -2661,56 +2674,62 @@ class InstructionSet{
 
       int getAdjust() {
          int adjust = delta;
-         if (adjust > 127) {
-            adjust = -256 + adjust;
+         if (wide){
+            if (adjust > 0x7fff) {
+               adjust = -0x10000 + adjust;
+            }
+         }else{
+            if (adjust > 0x7f) {
+               adjust = -0x100 + adjust;
+            }
          }
          return (adjust);
       }
    }
 
    static class I_ILOAD extends LocalVariableIndex08Load{
-      I_ILOAD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ILOAD, _byteReader);
+      I_ILOAD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ILOAD, _byteReader, _wide);
 
       }
 
    }
 
    static class I_ILOAD_0 extends LocalVariableConstIndexLoad{
-      I_ILOAD_0(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ILOAD_0, _byteReader, 0);
+      I_ILOAD_0(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ILOAD_0, _byteReader, _wide, 0);
 
       }
 
    }
 
    static class I_ILOAD_1 extends LocalVariableConstIndexLoad{
-      I_ILOAD_1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ILOAD_1, _byteReader, 1);
+      I_ILOAD_1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ILOAD_1, _byteReader, _wide, 1);
 
       }
 
    }
 
    static class I_ILOAD_2 extends LocalVariableConstIndexLoad{
-      I_ILOAD_2(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ILOAD_2, _byteReader, 2);
+      I_ILOAD_2(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ILOAD_2, _byteReader, _wide, 2);
 
       }
 
    }
 
    static class I_ILOAD_3 extends LocalVariableConstIndexLoad{
-      I_ILOAD_3(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ILOAD_3, _byteReader, 3);
+      I_ILOAD_3(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ILOAD_3, _byteReader, _wide, 3);
 
       }
 
    }
 
    static class I_IMUL extends BinaryOperator{
-      I_IMUL(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IMUL, _byteReader);
+      I_IMUL(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IMUL, _byteReader, _wide);
 
       }
 
@@ -2721,8 +2740,8 @@ class InstructionSet{
    }
 
    static class I_INEG extends UnaryOperator{
-      I_INEG(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.INEG, _byteReader);
+      I_INEG(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.INEG, _byteReader, _wide);
 
       }
 
@@ -2733,8 +2752,8 @@ class InstructionSet{
    }
 
    static class I_INSTANCEOF extends Index16{
-      I_INSTANCEOF(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.INSTANCEOF, _byteReader);
+      I_INSTANCEOF(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.INSTANCEOF, _byteReader, _wide);
 
       }
 
@@ -2747,8 +2766,8 @@ class InstructionSet{
    static class I_INVOKEINTERFACE extends Index16 implements InterfaceConstantPoolMethodIndexAccessor{
       private int args;
 
-      I_INVOKEINTERFACE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.INVOKEINTERFACE, _byteReader);
+      I_INVOKEINTERFACE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.INVOKEINTERFACE, _byteReader, _wide);
          args = _byteReader.u1();
          @SuppressWarnings("unused") int zeroByte = _byteReader.u1();
 
@@ -2796,8 +2815,8 @@ class InstructionSet{
    static class I_INVOKEDYNAMIC extends Index16 implements InterfaceConstantPoolMethodIndexAccessor{
       private int args;
 
-      I_INVOKEDYNAMIC(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.INVOKEDYNAMIC, _byteReader);
+      I_INVOKEDYNAMIC(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.INVOKEDYNAMIC, _byteReader, _wide);
          args = _byteReader.u1();
          @SuppressWarnings("unused") int zeroByte = _byteReader.u1();
 
@@ -2844,8 +2863,8 @@ class InstructionSet{
 
    static class I_INVOKESPECIAL extends Index16 implements VirtualMethodCall{
 
-      I_INVOKESPECIAL(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.INVOKESPECIAL, _byteReader);
+      I_INVOKESPECIAL(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.INVOKESPECIAL, _byteReader, _wide);
 
       }
 
@@ -2885,8 +2904,8 @@ class InstructionSet{
    }
 
    static class I_INVOKESTATIC extends Index16 implements MethodCall{
-      I_INVOKESTATIC(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.INVOKESTATIC, _byteReader);
+      I_INVOKESTATIC(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.INVOKESTATIC, _byteReader, _wide);
 
       }
 
@@ -2922,8 +2941,8 @@ class InstructionSet{
    }
 
    static class I_INVOKEVIRTUAL extends Index16 implements VirtualMethodCall{
-      I_INVOKEVIRTUAL(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.INVOKEVIRTUAL, _byteReader);
+      I_INVOKEVIRTUAL(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.INVOKEVIRTUAL, _byteReader, _wide);
 
       }
 
@@ -2962,8 +2981,8 @@ class InstructionSet{
    }
 
    static class I_IOR extends BinaryOperator{
-      I_IOR(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IOR, _byteReader);
+      I_IOR(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IOR, _byteReader, _wide);
 
       }
 
@@ -2974,8 +2993,8 @@ class InstructionSet{
    }
 
    static class I_IREM extends BinaryOperator{
-      I_IREM(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IREM, _byteReader);
+      I_IREM(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IREM, _byteReader, _wide);
 
       }
 
@@ -2986,8 +3005,8 @@ class InstructionSet{
    }
 
    static class I_IRETURN extends Return{
-      I_IRETURN(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IRETURN, _byteReader);
+      I_IRETURN(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IRETURN, _byteReader, _wide);
 
       }
 
@@ -2998,8 +3017,8 @@ class InstructionSet{
    }
 
    static class I_ISHL extends BinaryOperator{
-      I_ISHL(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ISHL, _byteReader);
+      I_ISHL(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ISHL, _byteReader, _wide);
 
       }
 
@@ -3010,8 +3029,8 @@ class InstructionSet{
    }
 
    static class I_ISHR extends BinaryOperator{
-      I_ISHR(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ISHR, _byteReader);
+      I_ISHR(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ISHR, _byteReader, _wide);
 
       }
 
@@ -3022,48 +3041,48 @@ class InstructionSet{
    }
 
    static class I_ISTORE extends LocalVariableIndex08Store{
-      I_ISTORE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ISTORE, _byteReader);
+      I_ISTORE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ISTORE, _byteReader, _wide);
 
       }
 
    }
 
    static class I_ISTORE_0 extends LocalVariableConstIndexStore{
-      I_ISTORE_0(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ISTORE_0, _byteReader, 0);
+      I_ISTORE_0(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ISTORE_0, _byteReader, _wide, 0);
 
       }
 
    }
 
    static class I_ISTORE_1 extends LocalVariableConstIndexStore{
-      I_ISTORE_1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ISTORE_1, _byteReader, 1);
+      I_ISTORE_1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ISTORE_1, _byteReader, _wide,  1);
 
       }
 
    }
 
    static class I_ISTORE_2 extends LocalVariableConstIndexStore{
-      I_ISTORE_2(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ISTORE_2, _byteReader, 2);
+      I_ISTORE_2(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ISTORE_2, _byteReader, _wide, 2);
 
       }
 
    }
 
    static class I_ISTORE_3 extends LocalVariableConstIndexStore{
-      I_ISTORE_3(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ISTORE_3, _byteReader, 3);
+      I_ISTORE_3(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ISTORE_3, _byteReader, _wide, 3);
 
       }
 
    }
 
    static class I_ISUB extends BinaryOperator{
-      I_ISUB(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.ISUB, _byteReader);
+      I_ISUB(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.ISUB, _byteReader, _wide);
 
       }
 
@@ -3074,8 +3093,8 @@ class InstructionSet{
    }
 
    static class I_IUSHR extends BinaryOperator{
-      I_IUSHR(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IUSHR, _byteReader);
+      I_IUSHR(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IUSHR, _byteReader, _wide);
 
       }
 
@@ -3086,8 +3105,8 @@ class InstructionSet{
    }
 
    static class I_IXOR extends BinaryOperator{
-      I_IXOR(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.IXOR, _byteReader);
+      I_IXOR(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.IXOR, _byteReader, _wide);
 
       }
 
@@ -3098,8 +3117,8 @@ class InstructionSet{
    }
 
    static class I_JSR extends UnconditionalBranch16{
-      I_JSR(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.JSR, _byteReader);
+      I_JSR(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.JSR, _byteReader, _wide);
 
       }
 
@@ -3110,8 +3129,8 @@ class InstructionSet{
    }
 
    static class I_JSR_W extends Branch32{
-      I_JSR_W(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.JSR_W, _byteReader);
+      I_JSR_W(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.JSR_W, _byteReader, _wide);
 
       }
 
@@ -3122,8 +3141,8 @@ class InstructionSet{
    }
 
    static class I_L2D extends CastOperator{
-      I_L2D(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.L2D, _byteReader);
+      I_L2D(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.L2D, _byteReader, _wide);
 
       }
 
@@ -3134,8 +3153,8 @@ class InstructionSet{
    }
 
    static class I_L2F extends CastOperator{
-      I_L2F(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.L2F, _byteReader);
+      I_L2F(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.L2F, _byteReader, _wide);
 
       }
 
@@ -3146,8 +3165,8 @@ class InstructionSet{
    }
 
    static class I_L2I extends CastOperator{
-      I_L2I(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.L2I, _byteReader);
+      I_L2I(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.L2I, _byteReader, _wide);
 
       }
 
@@ -3158,8 +3177,8 @@ class InstructionSet{
    }
 
    static class I_LADD extends BinaryOperator{
-      I_LADD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LADD, _byteReader);
+      I_LADD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LADD, _byteReader, _wide);
 
       }
 
@@ -3170,8 +3189,8 @@ class InstructionSet{
    }
 
    static class I_LALOAD extends AccessArrayElement{
-      I_LALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LALOAD, _byteReader);
+      I_LALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LALOAD, _byteReader, _wide);
 
       }
 
@@ -3182,8 +3201,8 @@ class InstructionSet{
    }
 
    static class I_LAND extends BinaryOperator{
-      I_LAND(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LAND, _byteReader);
+      I_LAND(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LAND, _byteReader, _wide);
 
       }
 
@@ -3194,8 +3213,8 @@ class InstructionSet{
    }
 
    static class I_LASTORE extends AssignToArrayElement{
-      I_LASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LASTORE, _byteReader);
+      I_LASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LASTORE, _byteReader, _wide);
 
       }
 
@@ -3206,8 +3225,8 @@ class InstructionSet{
    }
 
    static class I_LCMP extends BinaryOperator{
-      I_LCMP(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LCMP, _byteReader);
+      I_LCMP(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LCMP, _byteReader, _wide);
 
       }
 
@@ -3218,8 +3237,8 @@ class InstructionSet{
    }
 
    static class I_LCONST_0 extends BytecodeEncodedConstant<Long>{
-      I_LCONST_0(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LCONST_0, _byteReader, 0L);
+      I_LCONST_0(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LCONST_0, _byteReader, _wide,  0L);
 
       }
 
@@ -3230,8 +3249,8 @@ class InstructionSet{
    }
 
    static class I_LCONST_1 extends BytecodeEncodedConstant<Long>{
-      I_LCONST_1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LCONST_1, _byteReader, 1L);
+      I_LCONST_1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LCONST_1, _byteReader, _wide, 1L);
 
       }
 
@@ -3242,8 +3261,8 @@ class InstructionSet{
    }
 
    static class I_LDC extends Index08 implements ConstantPoolEntryConstant{
-      I_LDC(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LDC, _byteReader);
+      I_LDC(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LDC, _byteReader, _wide);
 
       }
 
@@ -3267,8 +3286,8 @@ class InstructionSet{
    }
 
    static class I_LDC_W extends Index16 implements ConstantPoolEntryConstant{
-      I_LDC_W(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LDC_W, _byteReader);
+      I_LDC_W(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LDC_W, _byteReader, _wide);
 
       }
 
@@ -3292,8 +3311,8 @@ class InstructionSet{
    }
 
    static class I_LDC2_W extends Index16 implements ConstantPoolEntryConstant{
-      I_LDC2_W(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LDC2_W, _byteReader);
+      I_LDC2_W(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LDC2_W, _byteReader, _wide);
 
       }
 
@@ -3316,8 +3335,8 @@ class InstructionSet{
    }
 
    static class I_LDIV extends BinaryOperator{
-      I_LDIV(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LDIV, _byteReader);
+      I_LDIV(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LDIV, _byteReader, _wide);
 
       }
 
@@ -3328,48 +3347,48 @@ class InstructionSet{
    }
 
    static class I_LLOAD extends LocalVariableIndex08Load{
-      I_LLOAD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LLOAD, _byteReader);
+      I_LLOAD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LLOAD, _byteReader, _wide);
 
       }
 
    }
 
    static class I_LLOAD_0 extends LocalVariableConstIndexLoad{
-      I_LLOAD_0(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LLOAD_0, _byteReader, 0);
+      I_LLOAD_0(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LLOAD_0, _byteReader, _wide, 0);
 
       }
 
    }
 
    static class I_LLOAD_1 extends LocalVariableConstIndexLoad{
-      I_LLOAD_1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LLOAD_1, _byteReader, 1);
+      I_LLOAD_1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LLOAD_1, _byteReader, _wide, 1);
 
       }
 
    }
 
    static class I_LLOAD_2 extends LocalVariableConstIndexLoad{
-      I_LLOAD_2(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LLOAD_2, _byteReader, 2);
+      I_LLOAD_2(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LLOAD_2, _byteReader, _wide, 2);
 
       }
 
    }
 
    static class I_LLOAD_3 extends LocalVariableConstIndexLoad{
-      I_LLOAD_3(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LLOAD_3, _byteReader, 3);
+      I_LLOAD_3(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LLOAD_3, _byteReader, _wide, 3);
 
       }
 
    }
 
    static class I_LMUL extends BinaryOperator{
-      I_LMUL(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LMUL, _byteReader);
+      I_LMUL(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LMUL, _byteReader, _wide);
 
       }
 
@@ -3380,8 +3399,8 @@ class InstructionSet{
    }
 
    static class I_LNEG extends UnaryOperator{
-      I_LNEG(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LNEG, _byteReader);
+      I_LNEG(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LNEG, _byteReader, _wide);
 
       }
 
@@ -3396,8 +3415,8 @@ class InstructionSet{
 
       private int npairs;
 
-      I_LOOKUPSWITCH(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LOOKUPSWITCH, _byteReader);
+      I_LOOKUPSWITCH(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LOOKUPSWITCH, _byteReader, _wide);
          int operandStart = _byteReader.getOffset();
          int padLength = ((operandStart % 4) == 0) ? 0 : 4 - (operandStart % 4);
          _byteReader.bytes(padLength);
@@ -3427,8 +3446,8 @@ class InstructionSet{
    }
 
    static class I_LOR extends BinaryOperator{
-      I_LOR(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LOR, _byteReader);
+      I_LOR(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LOR, _byteReader, _wide);
 
       }
 
@@ -3439,8 +3458,8 @@ class InstructionSet{
    }
 
    static class I_LREM extends BinaryOperator{
-      I_LREM(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LREM, _byteReader);
+      I_LREM(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LREM, _byteReader, _wide);
 
       }
 
@@ -3451,8 +3470,8 @@ class InstructionSet{
    }
 
    static class I_LRETURN extends Return{
-      I_LRETURN(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LRETURN, _byteReader);
+      I_LRETURN(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LRETURN, _byteReader, _wide);
 
       }
 
@@ -3463,8 +3482,8 @@ class InstructionSet{
    }
 
    static class I_LSHL extends BinaryOperator{
-      I_LSHL(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LSHL, _byteReader);
+      I_LSHL(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LSHL, _byteReader, _wide);
 
       }
 
@@ -3475,8 +3494,8 @@ class InstructionSet{
    }
 
    static class I_LSHR extends BinaryOperator{
-      I_LSHR(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LSHR, _byteReader);
+      I_LSHR(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LSHR, _byteReader, _wide);
 
       }
 
@@ -3487,48 +3506,48 @@ class InstructionSet{
    }
 
    static class I_LSTORE extends LocalVariableIndex08Store{
-      I_LSTORE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LSTORE, _byteReader);
+      I_LSTORE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LSTORE, _byteReader, _wide);
 
       }
 
    }
 
    static class I_LSTORE_0 extends LocalVariableConstIndexStore{
-      I_LSTORE_0(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LSTORE_0, _byteReader, 0);
+      I_LSTORE_0(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LSTORE_0, _byteReader, _wide, 0);
 
       }
 
    }
 
    static class I_LSTORE_1 extends LocalVariableConstIndexStore{
-      I_LSTORE_1(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LSTORE_1, _byteReader, 1);
+      I_LSTORE_1(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LSTORE_1, _byteReader, _wide, 1);
 
       }
 
    }
 
    static class I_LSTORE_2 extends LocalVariableConstIndexStore{
-      I_LSTORE_2(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LSTORE_2, _byteReader, 2);
+      I_LSTORE_2(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LSTORE_2, _byteReader, _wide, 2);
 
       }
 
    }
 
    static class I_LSTORE_3 extends LocalVariableConstIndexStore{
-      I_LSTORE_3(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LSTORE_3, _byteReader, 3);
+      I_LSTORE_3(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LSTORE_3, _byteReader, _wide, 3);
 
       }
 
    }
 
    static class I_LSUB extends BinaryOperator{
-      I_LSUB(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LSUB, _byteReader);
+      I_LSUB(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LSUB, _byteReader, _wide);
 
       }
 
@@ -3539,8 +3558,8 @@ class InstructionSet{
    }
 
    static class I_LUSHR extends BinaryOperator{
-      I_LUSHR(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LUSHR, _byteReader);
+      I_LUSHR(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LUSHR, _byteReader, _wide);
 
       }
 
@@ -3551,8 +3570,8 @@ class InstructionSet{
    }
 
    static class I_LXOR extends BinaryOperator{
-      I_LXOR(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.LXOR, _byteReader);
+      I_LXOR(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.LXOR, _byteReader, _wide);
 
       }
 
@@ -3563,8 +3582,8 @@ class InstructionSet{
    }
 
    static class I_MONITORENTER extends Instruction{
-      I_MONITORENTER(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.MONITORENTER, _byteReader);
+      I_MONITORENTER(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.MONITORENTER, _byteReader, _wide);
 
       }
 
@@ -3575,8 +3594,8 @@ class InstructionSet{
    }
 
    static class I_MONITOREXIT extends Instruction{
-      I_MONITOREXIT(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.MONITOREXIT, _byteReader);
+      I_MONITOREXIT(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.MONITOREXIT, _byteReader, _wide);
 
       }
 
@@ -3589,8 +3608,8 @@ class InstructionSet{
    static class I_MULTIANEWARRAY extends Index16 implements New{
       private int dimensions;
 
-      I_MULTIANEWARRAY(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.MULTIANEWARRAY, _byteReader);
+      I_MULTIANEWARRAY(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.MULTIANEWARRAY, _byteReader, _wide);
          dimensions = _byteReader.u1();
 
       }
@@ -3606,8 +3625,8 @@ class InstructionSet{
    }
 
    static class I_NEW extends Index16 implements New{
-      I_NEW(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.NEW, _byteReader);
+      I_NEW(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.NEW, _byteReader, _wide);
 
       }
 
@@ -3620,8 +3639,8 @@ class InstructionSet{
    static class I_NEWARRAY extends Instruction implements New{
       private int type;
 
-      I_NEWARRAY(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.NEWARRAY, _byteReader);
+      I_NEWARRAY(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.NEWARRAY, _byteReader, _wide);
          type = _byteReader.u1();
 
       }
@@ -3637,8 +3656,8 @@ class InstructionSet{
    }
 
    static class I_NOP extends Instruction{
-      I_NOP(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.NOP, _byteReader);
+      I_NOP(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.NOP, _byteReader, _wide);
 
       }
 
@@ -3649,8 +3668,8 @@ class InstructionSet{
    }
 
    static class I_POP extends Instruction{
-      I_POP(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.POP, _byteReader);
+      I_POP(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.POP, _byteReader, _wide);
 
       }
 
@@ -3661,8 +3680,8 @@ class InstructionSet{
    }
 
    static class I_POP2 extends Instruction{
-      I_POP2(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.POP2, _byteReader);
+      I_POP2(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.POP2, _byteReader, _wide);
 
       }
 
@@ -3673,8 +3692,8 @@ class InstructionSet{
    }
 
    static class I_PUTFIELD extends Index16 implements AssignToInstanceField{
-      I_PUTFIELD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.PUTFIELD, _byteReader);
+      I_PUTFIELD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.PUTFIELD, _byteReader, _wide);
 
       }
 
@@ -3709,8 +3728,8 @@ class InstructionSet{
    }
 
    static class I_PUTSTATIC extends Index16 implements AssignToField{
-      I_PUTSTATIC(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.PUTSTATIC, _byteReader);
+      I_PUTSTATIC(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.PUTSTATIC, _byteReader, _wide);
 
       }
 
@@ -3740,8 +3759,8 @@ class InstructionSet{
    }
 
    static class I_RET extends Index08 implements AssignToLocalVariable{
-      I_RET(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.RET, _byteReader);
+      I_RET(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.RET, _byteReader, _wide);
 
       }
 
@@ -3768,8 +3787,8 @@ class InstructionSet{
    }
 
    static class I_RETURN extends Return{
-      I_RETURN(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.RETURN, _byteReader);
+      I_RETURN(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.RETURN, _byteReader, _wide);
 
       }
 
@@ -3780,8 +3799,8 @@ class InstructionSet{
    }
 
    static class I_SALOAD extends AccessArrayElement{
-      I_SALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.SALOAD, _byteReader);
+      I_SALOAD(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.SALOAD, _byteReader, _wide);
 
       }
 
@@ -3792,8 +3811,8 @@ class InstructionSet{
    }
 
    static class I_SASTORE extends AssignToArrayElement{
-      I_SASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.SASTORE, _byteReader);
+      I_SASTORE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.SASTORE, _byteReader, _wide);
 
       }
 
@@ -3804,8 +3823,8 @@ class InstructionSet{
    }
 
    static class I_SIPUSH extends ImmediateConstant<Integer>{
-      I_SIPUSH(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.SIPUSH, _byteReader);
+      I_SIPUSH(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.SIPUSH, _byteReader, _wide);
          value = _byteReader.u2();
 
       }
@@ -3816,8 +3835,8 @@ class InstructionSet{
    }
 
    static class I_SWAP extends Instruction{
-      I_SWAP(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.SWAP, _byteReader);
+      I_SWAP(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.SWAP, _byteReader, _wide);
 
       }
 
@@ -3832,8 +3851,8 @@ class InstructionSet{
 
       private int low;
 
-      I_TABLESWITCH(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.TABLESWITCH, _byteReader);
+      I_TABLESWITCH(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.TABLESWITCH, _byteReader, _wide);
          int operandStart = _byteReader.getOffset();
          int padLength = ((operandStart % 4) == 0) ? 0 : 4 - (operandStart % 4);
          _byteReader.bytes(padLength);
@@ -3870,8 +3889,8 @@ class InstructionSet{
 
       private int wideopcode;
 
-      I_WIDE(MethodModel _methodPoolEntry, ByteReader _byteReader) {
-         super(_methodPoolEntry, ByteCode.WIDE, _byteReader);
+      I_WIDE(MethodModel _methodPoolEntry, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, ByteCode.WIDE, _byteReader, _wide);
          wideopcode = _byteReader.u1();
          index = _byteReader.u2();
          if (((wideopcode >= 0x15 && wideopcode <= 0x19) || (wideopcode >= 0x36 && wideopcode <= 0x3a) || (wideopcode == 0xa9))) {
@@ -3919,8 +3938,8 @@ class InstructionSet{
    static abstract class Index extends Instruction{
       protected int index;
 
-      Index(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      Index(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
 
       }
 
@@ -3928,8 +3947,8 @@ class InstructionSet{
 
    static abstract class IndexConst extends Index{
 
-      IndexConst(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, int _index) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      IndexConst(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide, int _index) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
          index = _index;
 
       }
@@ -3937,16 +3956,20 @@ class InstructionSet{
    }
 
    static abstract class Index08 extends Index{
-      Index08(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      Index08(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
+         if (_wide){
+          index = _byteReader.u2();  
+         }else{
          index = _byteReader.u1();
+         }
 
       }
    }
 
    static abstract class Index16 extends Index{
-      Index16(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      Index16(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
          index = _byteReader.u2();
 
       }
@@ -3955,8 +3978,8 @@ class InstructionSet{
 
    static abstract class Return extends Instruction{
 
-      Return(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader) {
-         super(_methodPoolEntry, _byteCode, _byteReader);
+      Return(MethodModel _methodPoolEntry, ByteCode _byteCode, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _byteCode, _byteReader, _wide);
 
       }
 
@@ -3964,8 +3987,8 @@ class InstructionSet{
 
    static abstract class Switch extends Branch{
 
-      Switch(MethodModel _methodPoolEntry, ByteCode _code, ByteReader _byteReader) {
-         super(_methodPoolEntry, _code, _byteReader);
+      Switch(MethodModel _methodPoolEntry, ByteCode _code, ByteReader _byteReader, boolean _wide) {
+         super(_methodPoolEntry, _code, _byteReader, _wide);
       }
 
       protected int[] offsets;