some work on the retreive products method