private Expr parseShiftExpression(WhileyFile wf,
HashSet<String> environment, boolean terminated) {
int start = index;
Expr lhs = parseAdditiveExpression(wf, environment, terminated);
Token lookahead;
while ((lookahead = tryAndMatch(terminated, LeftAngleLeftAngle,
RightAngleRightAngle)) != null) {
Expr rhs = parseAdditiveExpression(wf, environment, terminated);
Expr.BOp bop = null;
switch (lookahead.kind) {