completed server class