*impl: simple client