updated layout and data structure