working on server-side structure