docs: public static Object shiftSignedRight(Object arg1, Object arg2) throws NoSuchMethodException {
          int code1 = typeCode(arg1);
          int code2 = typeCode(arg2);
          if (code1 <= INT) {
              int val1 = unboxCharOrInt(arg1, code1);
              if (code2 <= INT) {
                  int val2 = unboxCharOrInt(arg2, code2);
                  return boxToInteger(val1 >> val2);
              }
              if (code2 <= LONG) {
                  long val2 = unboxCharOrLong(arg2, code2);
                  return boxToInteger(val1 >> val2);
              }
          }
          if (code1 <= LONG) {
              long val1 = unboxCharOrLong(arg1, code1);
              if (code2 <= INT) {
                  int val2 = unboxCharOrInt(arg2, code2);
                  return boxToLong(val1 >> val2);
              }
              if (code2 <= LONG) {
                  long val2 = unboxCharOrLong(arg2, code2);
                  return boxToLong(val1 >> val2);
              }
          }
          throw new NoSuchMethodException();
      }