added client-side routing structure