Почти дописал, осталось останавливать поток, и допилить