very basic client completed