Abstract Patterns