improve retrieveAll