ты силен, хотелось бы слышать немного больше объяснений по ходу дела. Например, зачем создал конкретный интерфейс; как они все вместе отработают в системе; последние правки тоже интересные, в принципе понятно, но хотелось бы пару слов-таки услышать, почему так происходит и почему так вылечил) успехов, снимай еще