docs: private <T> Observable<T> bluetoothAdapterOffExceptionObservable() {
          return rxBleAdapterStateObservable
                  .filter(new Predicate<BleAdapterState>() {
                      @Override
                      public boolean test(BleAdapterState state) throws Exception {
                          return state != BleAdapterState.STATE_ON;
                      }
                  })
                  .firstElement()
                  .flatMap(new Function<BleAdapterState, MaybeSource<T>>() {
                      @Override
                      public MaybeSource<T> apply(BleAdapterState bleAdapterState) throws Exception {
                          return Maybe.error(new BleScanException(BleScanException.BLUETOOTH_DISABLED));
                      }
                  })
                  .toObservable();
      }