client library