### Question:
PredicateTemplate extends TemplateExpressionImpl<Boolean> implements Predicate { @Override public Predicate not() { if (not == null) { not = ExpressionUtils.predicate(Ops.NOT, this); } return not; } protected  PredicateTemplate(Template template, ImmutableList<?> args); @Override Predicate not();  }### Answer:
@Test public void not() { PredicateTemplate template = ExpressionUtils.predicateTemplate("XXX"); assertEquals("!XXX", template.not().toString()); }