Practice with Composite and
Interpreter Patterns