implemented dynamic layout (salvattore)