design_patterns:start