Паттерн не идеальный, но присмотритесь господа.
Harmonic Patterns

Отказ от ответственности