class GUshrExpr extends AbstractGrimpIntLongBinopExpr implements UshrExpr {

  public GUshrExpr(Value op1, Value op2) {
    super(op1, op2);
  }

  @Override
  public String getSymbol() {
    return " >>> ";
  }

  @Override
  public int getPrecedence() {
    return 650;
  }

  @Override
  public void apply(Switch sw) {
    ((ExprSwitch) sw).caseUshrExpr(this);
  }

  @Override
  public Type getType() {<FILL_FUNCTION_BODY>}

  @Override
  public Object clone() {
    return new GUshrExpr(Grimp.cloneIfNecessary(getOp1()), Grimp.cloneIfNecessary(getOp2()));
  }
}

    if (isIntLikeType(op2Box.getValue().getType())) {
      final Type t1 = op1Box.getValue().getType();
      if (isIntLikeType(t1)) {
        return IntType.v();
      }
      final LongType tyLong = LongType.v();
      if (tyLong.equals(t1)) {
        return LongType.v();
      }
    }
    return UnknownType.v();
  
<methods>public abstract int getPrecedence() ,public java.lang.String toString() <variables>