added high level comm. middlewares