all server part is done