Why a factory here? Maybe just add the dailTimeout to the dialWithTimeout function args.