class ELExpressionParser extends UserExpressionParser {

  @Override
  public UserExpression parse(final String source) {
    Pair<UserExpression, String> parsed = ueParse(source.trim());
    if (parsed.getSecond().length() == 0) {
      return parsed.getFirst();
    }
    List<UserExpression> exprs = new LinkedList<UserExpression>();
    exprs.add(parsed.getFirst());
    do {
      parsed = ueParse(parsed.getSecond());
      exprs.add(parsed.getFirst());
    } while (parsed.getSecond().length() > 0);
    return new FirstValidExpression(exprs);
  }

  public  ELExpressionParser();

}