} @Override public int evaluate() { return left.evaluate() + right.evaluate(); } } static class NumberExpression implements Expression { private final int value;