extensive client end -- a little bit changes