client-side: added layout routing