docs: public static CounterConfiguration decodeConfiguration(Supplier<Byte> byteSupplier, LongSupplier longSupplier,
           IntSupplier intSupplier) {
        byte flags = byteSupplier.get();
        CounterType type = decodeType(flags);
        CounterConfiguration.Builder builder = CounterConfiguration.builder(type);
        builder.storage(decodeStorage(flags));
        switch (type) {
           case WEAK:
              builder.concurrencyLevel(intSupplier.getAsInt());
              break;
           case BOUNDED_STRONG:
              builder.lowerBound(longSupplier.getAsLong());
              builder.upperBound(longSupplier.getAsLong());
              break;
           case UNBOUNDED_STRONG:
           default:
              break;
        }
        builder.initialValue(longSupplier.getAsLong());
        return builder.build();
     }