вариация из моей книги (требует дополнения и переработки)
читать дальше

далее будет подборка материалов в тему