System.out.println("Didn't unroll because:"); e.printStackTrace();
    private UnrollInfo getUnrollInfo(JStatement init,				     JExpression cond,				     JStatement incr,				     JStatement body) {	try {	    // inspect initialization...	    JAssignmentExpression initExpr 		= (JAssignmentExpression)		((JExpressionListStatement)init).getExpression(0);	    JLocalVariable var 		= ((JLocalVariableExpression)initExpr.getLeft()).getVariable();	    int initVal 		= ((JIntLiteral)initExpr.getRight()).intValue();	    // inspect condition...	    JRelationalExpression condExpr = (JRelationalExpression)cond;	    // make sure variable is the same	    if (var != 		((JLocalVariableExpression)condExpr.getLeft()).getVariable()) {		return null;	    }	    // get the upper limit	    int finalVal = ((JIntLiteral)condExpr.getRight()).intValue();	    // inspect increment...	    JCompoundAssignmentExpression incrExpr		= (JCompoundAssignmentExpression)		((JExpressionListStatement)incr).getExpression(0);	    // make sure the variable is the same	    if (var != 		((JLocalVariableExpression)incrExpr.getLeft()).getVariable()) {		return null;	    }	    // get the operation	    int oper = incrExpr.getOperation();	    // get the increment amount	    int incrVal = ((JIntLiteral)incrExpr.getRight()).intValue();	    	    // return result	    return new UnrollInfo(var, initVal, finalVal, oper, incrVal);	} catch (ClassCastException e) {	    System.out.println("Didn't unroll because:");	    e.printStackTrace();	    // assume we failed 'cause assumptions violated -- return null	    return null;	}    }