Less coupling between ClientHook and Endpoint