writing router-retrieve2