You can buy this project and download/modify it how often you want.
cancel() subscribe() subscribe() firstWithSignal cancel() firstWithSignal subscribe()