completed networking lib