Первый более менее рабочий вариант.Много багов, но буд