moved resultReceiver responsibility to ResultSinglton