worked on server structure