src/vs/base/common/event.ts/EmitterObserver/constructor
class EmitterObserver:		constructor(readonly obs: IObservable<T, any>, store: DisposableStore | undefined) {
			const options: EmitterOptions = {
				onWillAddFirstListener: () => {
					obs.addObserver(this);
				},
				onDidRemoveLastListener: () => {
					obs.removeObserver(this);
				}
			};
			if (!store) {
				_addLeakageTraceLogic(options);
			}
			this.emitter = new Emitter<T>(options);
			if (store) {
				store.add(this.emitter);
			}
		}