added single result type to be switched on completion block