client+server lib