use Adapter instead of Client