refactor design w/new layout type