patterns: