anchor.diff:          mv.visitMethodInsn(Opcodes.INVOKESTATIC, "java/lang/Math", "round", "(D)J", false);
           mv.visitInsn(Opcodes.L2I);
           mv.visitVarInsn(Opcodes.ISTORE, 11);	
  -        mv.visitFrame(Opcodes.F_APPEND, 3, new Object[] { Opcodes.INTEGER, Opcodes.INTEGER, Opcodes.INTEGER }, 0, null);	
   		mv.visitInsn(Opcodes.DCONST_0);
   		mv.visitVarInsn(Opcodes.DSTORE, 12);
  -		mv.visitFrame(Opcodes.F_APPEND, 1, new Object[] { Opcodes.DOUBLE }, 0, null);	
   		mv.visitVarInsn(Opcodes.ILOAD, 10);
   		mv.visitVarInsn(Opcodes.ILOAD, 11);
   		mv.visitInsn(Opcodes.IADD);
  
positive.code: 		super(tokens, new RecognizerSharedState());
  		
  		clz = clsName.replace('.', '/');
  		cw = new ClassWriter(ClassWriter.COMPUTE_MAXS);
  		cw.visit(Opcodes.V1_6, Opcodes.ACC_PUBLIC, clz, null, "java/lang/Object", new String[] {"com/mebigfatguy/pixelle/PixelleExpr"}); 
  
  		cw.visitField(Opcodes.ACC_PRIVATE, "width", "I", null, Integer.valueOf(0));
  		cw.visitField(Opcodes.ACC_PRIVATE, "height", "I", null, Integer.valueOf(0));
  
negative.code:         mv.visitVarInsn(Opcodes.ILOAD, 11);
          mv.visitInsn(Opcodes.ISUB);
          mv.visitVarInsn(Opcodes.ISTORE, 16);
          Label yBranchBottom = new Label();
          mv.visitJumpInsn(Opcodes.GOTO, yBranchBottom);
          Label yBranchTop = new Label();
          mv.visitLabel(yBranchTop);
          mv.visitVarInsn(Opcodes.ILOAD, 9);
          mv.visitVarInsn(Opcodes.ILOAD, 11);        
          mv.visitInsn(Opcodes.ISUB);
          mv.visitVarInsn(Opcodes.ISTORE, 17);        
          Label xBranchBottom = new Label();
          mv.visitJumpInsn(Opcodes.GOTO, xBranchBottom);
          Label xBranchTop = new Label();
          mv.visitLabel(xBranchTop);
          mv.visitVarInsn(Opcodes.DLOAD, 12);
          mv.visitVarInsn(Opcodes.ALOAD, 8);
          mv.visitVarInsn(Opcodes.ILOAD, 17);
  