changed from scan to a request/response scheme