refine the interface for retrieval a bit