Patterns

Work in progress.