layout modified --fully functional