public static <X extends Throwable> void check(boolean expression, Supplier<? extends X> exceptionSupplier) throws X {
        if (!expression)
            throw exceptionSupplier.get();
    }
@Test
    public void check_true() {
        Preconditions.check(true, ArithmeticException::new);
    }