Супер, спасибо за ответы и советы. Знаю что велосипедировать плохо, но для лучшего понимания процесса можно разобрать чужой подход или изучить чужой и свелосипедить свой. Пока мне проще второй вариант, поскольку многие готовые решение не раз выдавали неочевидные ошибки которые к тому же не гуглятся, а по шагам слепить свое приносит удовольствие и результат.