currentThreadScheduler.schedule(function () {
            try {
              autoDetachObserver.setDisposable(fixSubscriber(subscribe(autoDetachObserver)));
            } catch (e) {
              if (!autoDetachObserver.fail(e)) {