code: private Environment checkAssign(Stmt.Assign stmt, Environment environment, EnclosingScope scope)
  			throws IOException {
  		Tuple<LVal> lvals = stmt.getLeftHandSide();
  		Type[] types = new Type[lvals.size()];
  		for (int i = 0; i != lvals.size(); ++i) {
  			types[i] = checkLVal(lvals.get(i), environment);
  		}
  		checkMultiExpressions(stmt.getRightHandSide(), environment, new Tuple<>(types));
  		return environment;
  	}
docs: Type check an assignment statement.
  
  @param stmt
  Statement to type check
  @param environment
  Determines the type of all variables immediately going into this
  block
  @return