adapting protocol