@Nonnull
	public static Number shiftRightU(@Nonnull Number value, @Nonnull Number shift) {
		// Check for widest types first, go down the type list to narrower types until reaching int.
		if (value instanceof Long) {
			return value.longValue() >>> shift.longValue();
		} else {
			return value.intValue() >>> shift.intValue();
		}
	}
@Test
	void testShiftRightU() {
		assertEquals(16 >> 1, NumberUtil.shiftRightU(16, 1));
		assertEquals(16L >> 1, NumberUtil.shiftRightU(16L, 1));
	}