docs: public static long asLongExactly(Number number) {
          Class clazz = number.getClass();
  
          if (isLongRepresentable(clazz)) {
              return number.longValue();
          } else if (isDoubleRepresentable(clazz)) {
              long longValue = number.longValue();
              if (equalDoubles(number.doubleValue(), (double) longValue)) {
                  return longValue;
              }
          }
  
          throw new IllegalArgumentException("Can't represent " + number + " as long exactly");
      }