initial version of struct_layout