added definition + design update