static Token get(Token condition, Token ifTrue, Token ifFalse) {
		if ("0".equals(ifTrue.toString()) && "1".equals(ifFalse.toString())) {
			return Not.get(condition);
		} else if ("1".equals(ifTrue.toString()) && "0".equals(ifFalse.toString())) {
			return condition;
		} else if ("0".equals(ifTrue.toString())) {
			return And.get(Not.get(condition), ifFalse);
		}
		return new CaseWhen(condition, ifTrue, ifFalse);
	}