calling leave() on unsubscribe
merge back from master #4767119303168
adding leave on unsub