As a side node, the idiomatic go approach to naming here is to use 'c' instead of client since its assumed for the life of the function.