Итоги голосования для комментария:
FoxWolf
Если есть навыки объектно-ориентированного программирования то можно попробовать.