override-design-pattern