|  | @@ -396,7 +396,7 @@ namespace System.Reactive.Linq.ObservableImpl
 | 
	
		
			
				|  |  |                          if (shouldWait)
 | 
	
		
			
				|  |  |                          {
 | 
	
		
			
				|  |  |                              var timer = new ManualResetEventSlim();
 | 
	
		
			
				|  |  | -                            _scheduler.Schedule(timer, waitTime, (_, slimTimer) => { slimTimer.Set(); return Disposable.Empty; });
 | 
	
		
			
				|  |  | +                            _scheduler.ScheduleAction(timer, waitTime, slimTimer => { slimTimer.Set(); });
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                              try
 | 
	
		
			
				|  |  |                              {
 | 
	
	
		
			
				|  | @@ -455,10 +455,10 @@ namespace System.Reactive.Linq.ObservableImpl
 | 
	
		
			
				|  |  |                  {
 | 
	
		
			
				|  |  |                      _ready = false;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                    Disposable.TrySetSingle(ref _cancelable, parent._scheduler.Schedule(this, parent._dueTime, (_, @this) => @this.Start()));
 | 
	
		
			
				|  |  | +                    Disposable.TrySetSingle(ref _cancelable, parent._scheduler.ScheduleAction(this, parent._dueTime, @this => @this.Start()));
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                private IDisposable Start()
 | 
	
		
			
				|  |  | +                private void Start()
 | 
	
		
			
				|  |  |                  {
 | 
	
		
			
				|  |  |                      var next = default(TimeSpan);
 | 
	
		
			
				|  |  |                      var shouldRun = false;
 | 
	
	
		
			
				|  | @@ -491,8 +491,6 @@ namespace System.Reactive.Linq.ObservableImpl
 | 
	
		
			
				|  |  |                      {
 | 
	
		
			
				|  |  |                          Disposable.TrySetSerial(ref _cancelable, _scheduler.Schedule((Base<Absolute>.S)this, next, (@this, a) => DrainQueue(a)));
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                    return Disposable.Empty;
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -508,10 +506,10 @@ namespace System.Reactive.Linq.ObservableImpl
 | 
	
		
			
				|  |  |                      // ScheduleDrain might have already set a newer disposable
 | 
	
		
			
				|  |  |                      // using TrySetSerial would cancel it, stopping the emission
 | 
	
		
			
				|  |  |                      // and hang the consumer
 | 
	
		
			
				|  |  | -                    Disposable.TrySetSingle(ref _cancelable, parent._scheduler.Schedule(this, parent._dueTime, (_, @this) => @this.Start()));
 | 
	
		
			
				|  |  | +                    Disposable.TrySetSingle(ref _cancelable, parent._scheduler.ScheduleAction(this, parent._dueTime, @this => @this.Start()));
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                private IDisposable Start()
 | 
	
		
			
				|  |  | +                private void Start()
 | 
	
		
			
				|  |  |                  {
 | 
	
		
			
				|  |  |                      lock (_gate)
 | 
	
		
			
				|  |  |                      {
 | 
	
	
		
			
				|  | @@ -528,8 +526,6 @@ namespace System.Reactive.Linq.ObservableImpl
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                      ScheduleDrain();
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                    return Disposable.Empty;
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 |