small refactor + server/client efficency!